@db-ux/core-components 2.0.9 → 2.0.10-popover-d7e8b9a

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 (49) hide show
  1. package/build/components/accordion/accordion.css +4 -0
  2. package/build/components/accordion-item/accordion-item.css +30 -31
  3. package/build/components/accordion-item/accordion-item.scss +35 -39
  4. package/build/components/badge/badge.css +4 -0
  5. package/build/components/brand/brand.css +4 -0
  6. package/build/components/button/button.css +4 -0
  7. package/build/components/card/card.css +4 -0
  8. package/build/components/checkbox/checkbox.css +4 -0
  9. package/build/components/custom-select/custom-select.css +4 -34
  10. package/build/components/custom-select/custom-select.scss +0 -48
  11. package/build/components/custom-select-dropdown/custom-select-dropdown.css +4 -0
  12. package/build/components/custom-select-form-field/custom-select-form-field.css +4 -0
  13. package/build/components/custom-select-list/custom-select-list.css +4 -0
  14. package/build/components/custom-select-list-item/custom-select-list-item.css +7 -21
  15. package/build/components/custom-select-list-item/custom-select-list-item.scss +5 -9
  16. package/build/components/divider/divider.css +4 -0
  17. package/build/components/drawer/drawer.css +4 -0
  18. package/build/components/header/header.css +4 -0
  19. package/build/components/icon/icon.css +4 -0
  20. package/build/components/infotext/infotext.css +4 -0
  21. package/build/components/input/input.css +4 -0
  22. package/build/components/link/link.css +4 -0
  23. package/build/components/navigation/navigation.css +4 -0
  24. package/build/components/navigation-item/navigation-item.css +4 -0
  25. package/build/components/notification/notification.css +4 -0
  26. package/build/components/popover/popover.css +83 -82
  27. package/build/components/popover/popover.scss +0 -1
  28. package/build/components/radio/radio.css +4 -0
  29. package/build/components/section/section.css +4 -0
  30. package/build/components/select/select.css +4 -0
  31. package/build/components/stack/stack-web-component.css +4 -0
  32. package/build/components/stack/stack.css +4 -0
  33. package/build/components/switch/switch.css +4 -0
  34. package/build/components/tab-item/tab-item.css +4 -0
  35. package/build/components/tab-list/tab-list.css +4 -0
  36. package/build/components/tabs/tabs.css +4 -0
  37. package/build/components/tag/tag.css +4 -0
  38. package/build/components/textarea/textarea.css +4 -0
  39. package/build/components/tooltip/tooltip.css +92 -90
  40. package/build/components/tooltip/tooltip.scss +14 -14
  41. package/build/styles/absolute.css +188 -4
  42. package/build/styles/dialog-init.css +1 -1
  43. package/build/styles/index.css +3 -3
  44. package/build/styles/internal/_popover-component.scss +69 -106
  45. package/build/styles/relative.css +188 -4
  46. package/build/styles/rollup.css +188 -4
  47. package/build/styles/visually-hidden.css +1 -1
  48. package/build/styles/webpack.css +188 -4
  49. package/package.json +2 -2
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  /**
40
44
  * @mixin screen-min-max
41
45
  * @param $data an object like (min:"sm", max:"lg") or (min: "sm")
@@ -55,6 +55,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
55
55
 
56
56
  @layer variables {}
57
57
 
58
+ @layer variables {}
59
+
60
+ @layer variables {}
61
+
58
62
  @keyframes show-right-to-left {
59
63
  from {
60
64
  transform: translateX(110%);
@@ -134,7 +138,7 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
134
138
  transform: rotate(1turn);
135
139
  }
136
140
  }
137
- .db-accordion-item summary:not([data-hide-icon-after=true])::after {
141
+ .db-accordion-item > details > summary:not([data-hide-icon-after=true])::after {
138
142
  color: var(--db-icon-color, inherit);
139
143
  display: inline-block;
140
144
  /*** icon - placeholder ***/
@@ -157,17 +161,17 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
157
161
  content: var(--db-icon, attr(data-icon));
158
162
  }
159
163
  @supports (content: ""/"") {
160
- .db-accordion-item summary:not([data-hide-icon-after=true])::after {
164
+ .db-accordion-item > details > summary:not([data-hide-icon-after=true])::after {
161
165
  content: var(--db-icon, attr(data-icon))/"";
162
166
  }
163
167
  }
164
168
  @media aural {
165
- .db-accordion-item summary:not([data-hide-icon-after=true])::after {
169
+ .db-accordion-item > details > summary:not([data-hide-icon-after=true])::after {
166
170
  content: none;
167
171
  }
168
172
  }
169
173
  @media speech {
170
- .db-accordion-item summary:not([data-hide-icon-after=true])::after {
174
+ .db-accordion-item > details > summary:not([data-hide-icon-after=true])::after {
171
175
  content: none;
172
176
  }
173
177
  }
@@ -204,12 +208,12 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
204
208
 
205
209
  @layer variables {}
206
210
 
207
- .db-accordion-item summary {
211
+ .db-accordion-item > details > summary {
208
212
  font: var(--db-type-body-md);
209
213
  /* stylelint-disable-next-line at-rule-prelude-no-invalid,layer-name-pattern */
210
214
  }
211
215
  @layer variables {
212
- .db-accordion-item summary {
216
+ .db-accordion-item > details > summary {
213
217
  /* Those variables are only for components to calculate heights and change icons */
214
218
  --db-icon-font-weight: var(--db-base-body-icon-weight-md);
215
219
  --db-icon-font-size: var(--db-base-body-icon-font-size-md);
@@ -246,21 +250,21 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
246
250
  * @mixin screen-min-max
247
251
  * @param $data an object like (min:"sm", max:"lg") or (min: "sm")
248
252
  */
249
- .db-accordion-item summary:not([data-hide-icon-after=true])::after {
253
+ .db-accordion-item > details > summary:not([data-hide-icon-after=true])::after {
250
254
  --db-icon-after: "chevron_down";
251
255
  margin-inline-start: var(--db-icon-margin-start, var(--db-spacing-fixed-xs));
252
256
  content: var(--db-icon-after, attr(data-icon-after));
253
257
  }
254
258
  @supports (content: ""/"") {
255
- .db-accordion-item summary:not([data-hide-icon-after=true])::after {
259
+ .db-accordion-item > details > summary:not([data-hide-icon-after=true])::after {
256
260
  content: var(--db-icon-after, attr(data-icon-after))/"";
257
261
  }
258
262
  }
259
- .db-accordion-item summary::after {
263
+ .db-accordion-item > details > summary::after {
260
264
  pointer-events: none;
261
265
  }
262
266
  @media screen and (prefers-reduced-motion: no-preference) {
263
- .db-accordion-item summary::after {
267
+ .db-accordion-item > details > summary::after {
264
268
  transition: transform var(--db-transition-straight-emotional);
265
269
  }
266
270
  }
@@ -271,35 +275,30 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
271
275
  border-radius: var(--db-border-radius-sm);
272
276
  list-style-type: "";
273
277
  }
274
- .db-accordion-item > details[open] summary + div {
278
+ .db-accordion-item > details[open] > summary + div {
275
279
  block-size: auto;
276
280
  /* stylelint-disable-next-line declaration-property-value-no-unknown */
277
281
  block-size: calc-size(auto, size);
278
282
  }
279
- .db-accordion-item > details[open] summary::after {
283
+ .db-accordion-item > details[open] > summary::after {
280
284
  transform: rotate(-180deg);
281
285
  }
282
286
  .db-accordion-item > details[aria-disabled=true] {
283
287
  pointer-events: none;
284
288
  opacity: 0.4;
285
289
  }
286
- @media screen and (prefers-reduced-motion: reduce) {
287
- .db-accordion-item summary + div {
288
- block-size: 0;
289
- overflow: hidden;
290
- transition: none;
291
- padding: var(--db-spacing-fixed-md);
292
- padding-block-end: var(--db-spacing-fixed-lg);
290
+ @media screen and (prefers-reduced-motion: no-preference) {
291
+ .db-accordion-item > details > summary + div {
292
+ transition: block-size var(--db-transition-straight-emotional);
293
293
  }
294
294
  }
295
- .db-accordion-item summary + div {
295
+ .db-accordion-item > details > summary + div {
296
296
  block-size: 0;
297
297
  overflow: hidden;
298
- transition: block-size var(--db-transition-straight-emotional);
299
298
  padding: var(--db-spacing-fixed-md);
300
299
  padding-block-end: var(--db-spacing-fixed-lg);
301
300
  }
302
- .db-accordion-item summary {
301
+ .db-accordion-item > details > summary {
303
302
  background-color: var(--db-adaptive-bg-basic-level-1-default);
304
303
  list-style: none;
305
304
  display: flex;
@@ -309,32 +308,32 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
309
308
  border-radius: var(--db-border-radius-sm);
310
309
  /* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
311
310
  }
312
- .db-accordion-item summary:hover:not(:disabled, [aria-disabled=true]) {
311
+ .db-accordion-item > details > summary:hover:not(:disabled, [aria-disabled=true]) {
313
312
  cursor: var(--db-overwrite-cursor, pointer);
314
313
  background-color: var(--db-adaptive-bg-basic-level-1-hovered);
315
314
  }
316
- .db-accordion-item summary:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-accordion-item summary:hover:not(:disabled, [aria-disabled=true]):is(input) {
315
+ .db-accordion-item > details > summary:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-accordion-item > details > summary:hover:not(:disabled, [aria-disabled=true]):is(input) {
317
316
  cursor: initial;
318
317
  }
319
- .db-accordion-item summary:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-accordion-item summary:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
318
+ .db-accordion-item > details > summary:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-accordion-item > details > summary:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
320
319
  cursor: pointer;
321
320
  }
322
- .db-accordion-item summary:active:not(:disabled, [aria-disabled=true]) {
321
+ .db-accordion-item > details > summary:active:not(:disabled, [aria-disabled=true]) {
323
322
  cursor: var(--db-overwrite-cursor, pointer);
324
323
  background-color: var(--db-adaptive-bg-basic-level-1-pressed);
325
324
  }
326
- .db-accordion-item summary:active:not(:disabled, [aria-disabled=true]):is(textarea), .db-accordion-item summary:active:not(:disabled, [aria-disabled=true]):is(input) {
325
+ .db-accordion-item > details > summary:active:not(:disabled, [aria-disabled=true]):is(textarea), .db-accordion-item > details > summary:active:not(:disabled, [aria-disabled=true]):is(input) {
327
326
  cursor: initial;
328
327
  }
329
- .db-accordion-item summary:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-accordion-item summary:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
328
+ .db-accordion-item > details > summary:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-accordion-item > details > summary:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
330
329
  cursor: pointer;
331
330
  }
332
- .db-accordion-item summary::-webkit-details-marker {
331
+ .db-accordion-item > details > summary::-webkit-details-marker {
333
332
  display: none;
334
333
  }
335
- .db-accordion-item summary::after {
334
+ .db-accordion-item > details > summary::after {
336
335
  inset-inline-end: var(--db-spacing-fixed-sm);
337
336
  }
338
- .db-accordion-item summary:focus-visible {
337
+ .db-accordion-item > details > summary:focus-visible {
339
338
  border-radius: var(--db-border-radius-xs);
340
339
  }
@@ -13,13 +13,13 @@
13
13
 
14
14
  > details {
15
15
  &[open] {
16
- summary + div {
16
+ > summary + div {
17
17
  block-size: auto;
18
18
  /* stylelint-disable-next-line declaration-property-value-no-unknown */
19
19
  block-size: calc-size(auto, size);
20
20
  }
21
21
 
22
- summary::after {
22
+ > summary::after {
23
23
  transform: form-components.$dropdown-icon-transform;
24
24
  }
25
25
  }
@@ -28,56 +28,52 @@
28
28
  pointer-events: none;
29
29
  opacity: component.$default-disabled;
30
30
  }
31
- }
32
31
 
33
- @media screen and (prefers-reduced-motion: reduce) {
34
- summary + div {
32
+ @media screen and (prefers-reduced-motion: no-preference) {
33
+ > summary + div {
34
+ transition: block-size
35
+ #{variables.$db-transition-straight-emotional};
36
+ }
37
+ }
38
+
39
+ > summary + div {
35
40
  block-size: 0;
36
41
  overflow: hidden;
37
- transition: none;
38
42
  padding: variables.$db-spacing-fixed-md;
39
43
  padding-block-end: variables.$db-spacing-fixed-lg;
40
44
  }
41
- }
42
45
 
43
- summary + div {
44
- block-size: 0;
45
- overflow: hidden;
46
- transition: block-size #{variables.$db-transition-straight-emotional};
47
- padding: variables.$db-spacing-fixed-md;
48
- padding-block-end: variables.$db-spacing-fixed-lg;
49
- }
50
-
51
- summary {
52
- @extend %dropdown-icon;
53
- @extend %db-overwrite-font-size-md;
46
+ > summary {
47
+ @extend %dropdown-icon;
48
+ @extend %db-overwrite-font-size-md;
54
49
 
55
- background-color: colors.$db-adaptive-bg-basic-level-1-default;
56
- list-style: none;
57
- display: flex;
58
- justify-content: space-between;
59
- padding: variables.$db-spacing-fixed-md;
60
- gap: variables.$db-spacing-fixed-md;
61
- border-radius: variables.$db-border-radius-sm;
50
+ background-color: colors.$db-adaptive-bg-basic-level-1-default;
51
+ list-style: none;
52
+ display: flex;
53
+ justify-content: space-between;
54
+ padding: variables.$db-spacing-fixed-md;
55
+ gap: variables.$db-spacing-fixed-md;
56
+ border-radius: variables.$db-border-radius-sm;
62
57
 
63
- @include helpers.hover {
64
- background-color: colors.$db-adaptive-bg-basic-level-1-hovered;
65
- }
58
+ @include helpers.hover {
59
+ background-color: colors.$db-adaptive-bg-basic-level-1-hovered;
60
+ }
66
61
 
67
- @include helpers.active {
68
- background-color: colors.$db-adaptive-bg-basic-level-1-pressed;
69
- }
62
+ @include helpers.active {
63
+ background-color: colors.$db-adaptive-bg-basic-level-1-pressed;
64
+ }
70
65
 
71
- &::-webkit-details-marker {
72
- display: none;
73
- }
66
+ &::-webkit-details-marker {
67
+ display: none;
68
+ }
74
69
 
75
- &::after {
76
- inset-inline-end: variables.$db-spacing-fixed-sm;
77
- }
70
+ &::after {
71
+ inset-inline-end: variables.$db-spacing-fixed-sm;
72
+ }
78
73
 
79
- &:focus-visible {
80
- border-radius: variables.$db-border-radius-xs;
74
+ &:focus-visible {
75
+ border-radius: variables.$db-border-radius-xs;
76
+ }
81
77
  }
82
78
  }
83
79
  }
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  /**
40
44
  Generates 3 types of placeholders, e.g:
41
45
  - %db-component-variables-md
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  /**
40
44
  Generates 3 types of placeholders, e.g:
41
45
  - %db-component-variables-md
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  /**
40
44
  Generates 3 types of placeholders, e.g:
41
45
  - %db-component-variables-md
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  /**
40
44
  * @mixin screen-min-max
41
45
  * @param $data an object like (min:"sm", max:"lg") or (min: "sm")
@@ -55,6 +55,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
55
55
 
56
56
  @layer variables {}
57
57
 
58
+ @layer variables {}
59
+
60
+ @layer variables {}
61
+
58
62
  .db-checkbox input:checked:not([data-hide-icon-before=true])::before, .db-checkbox input:indeterminate:not([data-hide-icon-before=true])::before {
59
63
  color: var(--db-icon-color, inherit);
60
64
  display: inline-block;
@@ -502,6 +502,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
502
502
 
503
503
  @layer variables {}
504
504
 
505
+ @layer variables {}
506
+
507
+ @layer variables {}
508
+
505
509
  /**
506
510
  * @mixin screen-min-max
507
511
  * @param $data an object like (min:"sm", max:"lg") or (min: "sm")
@@ -774,40 +778,6 @@ dialog:not([data-backdrop=none])[data-backdrop=weak]::backdrop, dialog:not([data
774
778
  opacity: 0.32;
775
779
  }
776
780
 
777
- [data-placement^=top].db-custom-select .db-custom-select-dropdown:not([data-outside-vy=top]), .db-custom-select:not([data-placement]) .db-custom-select-dropdown[data-outside-vy=bottom], [data-placement^=bottom].db-custom-select .db-custom-select-dropdown[data-outside-vy=bottom] {
778
- /* stylelint-disable-next-line media-query-no-invalid */
779
- /* stylelint-disable-next-line at-rule-empty-line-before */
780
- }
781
- @media screen and (min-width: 45em) {
782
- [data-placement^=top].db-custom-select .db-custom-select-dropdown:not([data-force-mobile]):not([data-outside-vy=top]), .db-custom-select:not([data-placement]) .db-custom-select-dropdown[data-outside-vy=bottom]:not([data-force-mobile]), [data-placement^=bottom].db-custom-select .db-custom-select-dropdown[data-outside-vy=bottom]:not([data-force-mobile]), [data-placement^=top].db-custom-select [data-force-mobile=false].db-custom-select-dropdown:not([data-outside-vy=top]), .db-custom-select:not([data-placement]) [data-force-mobile=false].db-custom-select-dropdown[data-outside-vy=bottom], [data-placement^=bottom].db-custom-select [data-force-mobile=false].db-custom-select-dropdown[data-outside-vy=bottom] {
783
- inset-block-end: 100%;
784
- margin-block-start: var(--db-spacing-fixed-md);
785
- }
786
- }
787
-
788
- [data-placement^=top].db-custom-select, .db-custom-select:not([data-placement]), [data-placement^=bottom].db-custom-select {
789
- /* stylelint-disable-next-line media-query-no-invalid */
790
- /* stylelint-disable-next-line at-rule-empty-line-before */
791
- }
792
- @media screen and (min-width: 45em) {
793
- [data-placement^=top].db-custom-select:not([data-force-mobile])[data-placement$=end] .db-custom-select-dropdown:not([data-outside-vx=right]), .db-custom-select:not([data-force-mobile])[data-placement$=end]:not([data-placement]) .db-custom-select-dropdown:not([data-outside-vx=right]), [data-placement^=bottom].db-custom-select:not([data-force-mobile])[data-placement$=end] .db-custom-select-dropdown:not([data-outside-vx=right]), [data-force-mobile=false][data-placement$=end][data-placement^=top].db-custom-select .db-custom-select-dropdown:not([data-outside-vx=right]), [data-force-mobile=false][data-placement$=end].db-custom-select:not([data-placement]) .db-custom-select-dropdown:not([data-outside-vx=right]), [data-force-mobile=false][data-placement$=end][data-placement^=bottom].db-custom-select .db-custom-select-dropdown:not([data-outside-vx=right]) {
794
- inset-inline-end: 0;
795
- }
796
- [data-placement^=top].db-custom-select:not([data-force-mobile]) .db-custom-select-dropdown[data-outside-vx=right], .db-custom-select:not([data-force-mobile]):not([data-placement]) .db-custom-select-dropdown[data-outside-vx=right], [data-placement^=bottom].db-custom-select:not([data-force-mobile]) .db-custom-select-dropdown[data-outside-vx=right], [data-force-mobile=false][data-placement^=top].db-custom-select .db-custom-select-dropdown[data-outside-vx=right], [data-force-mobile=false].db-custom-select:not([data-placement]) .db-custom-select-dropdown[data-outside-vx=right], [data-force-mobile=false][data-placement^=bottom].db-custom-select .db-custom-select-dropdown[data-outside-vx=right] {
797
- inset-inline-end: 0;
798
- }
799
- }
800
-
801
- .db-custom-select:not([data-placement]) .db-custom-select-dropdown:not([data-outside-vy=bottom]), [data-placement^=bottom].db-custom-select .db-custom-select-dropdown:not([data-outside-vy=bottom]) {
802
- /* stylelint-disable-next-line media-query-no-invalid */
803
- /* stylelint-disable-next-line at-rule-empty-line-before */
804
- }
805
- @media screen and (min-width: 45em) {
806
- .db-custom-select:not([data-placement]) .db-custom-select-dropdown:not([data-outside-vy=bottom]):not([data-force-mobile]), .db-custom-select:not([data-placement]) .db-custom-select-dropdown:not([data-outside-vy=bottom])[data-force-mobile=false], [data-placement^=bottom].db-custom-select .db-custom-select-dropdown:not([data-outside-vy=bottom]):not([data-force-mobile]), [data-placement^=bottom].db-custom-select .db-custom-select-dropdown:not([data-outside-vy=bottom])[data-force-mobile=false] {
807
- inset-block-start: 100%;
808
- margin-block-end: var(--db-spacing-fixed-md);
809
- }
810
- }
811
781
  .db-custom-select {
812
782
  --db-form-component-padding-inline-end: calc(
813
783
  calc(var(--db-icon-font-size) + var(--db-spacing-fixed-sm) + var(--db-spacing-fixed-xs)) + var(--db-sizing-sm) +
@@ -7,53 +7,6 @@
7
7
  @use "../../styles/internal/select-components";
8
8
  @use "../../styles/dialog-init";
9
9
 
10
- %custom-select-placement-top {
11
- @include screen-sizes.screen("sm") {
12
- inset-block-end: 100%;
13
- margin-block-start: variables.$db-spacing-fixed-md;
14
- }
15
- }
16
-
17
- %custom-select-placement-vertical {
18
- @include screen-sizes.screen("sm") {
19
- &[data-placement$="end"] {
20
- .db-custom-select-dropdown:not([data-outside-vx="right"]) {
21
- inset-inline-end: 0;
22
- }
23
- }
24
-
25
- .db-custom-select-dropdown[data-outside-vx="right"] {
26
- inset-inline-end: 0;
27
- }
28
- }
29
- }
30
-
31
- %custom-select-placement {
32
- &:not([data-placement]),
33
- &[data-placement^="bottom"] {
34
- @extend %custom-select-placement-vertical;
35
-
36
- .db-custom-select-dropdown:not([data-outside-vy="bottom"]) {
37
- @include screen-sizes.screen("sm") {
38
- inset-block-start: 100%;
39
- margin-block-end: variables.$db-spacing-fixed-md;
40
- }
41
- }
42
-
43
- .db-custom-select-dropdown[data-outside-vy="bottom"] {
44
- @extend %custom-select-placement-top;
45
- }
46
- }
47
-
48
- &[data-placement^="top"] {
49
- @extend %custom-select-placement-vertical;
50
-
51
- .db-custom-select-dropdown:not([data-outside-vy="top"]) {
52
- @extend %custom-select-placement-top;
53
- }
54
- }
55
- }
56
-
57
10
  .db-custom-select {
58
11
  --db-form-component-padding-inline-end: calc(
59
12
  #{select-components.$select-icon-padding} + #{variables.$db-sizing-sm} +
@@ -67,7 +20,6 @@
67
20
 
68
21
  @extend %select-icon;
69
22
  @extend %select-placeholder;
70
- @extend %custom-select-placement;
71
23
 
72
24
  position: relative;
73
25
 
@@ -202,6 +202,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
202
202
 
203
203
  @layer variables {}
204
204
 
205
+ @layer variables {}
206
+
207
+ @layer variables {}
208
+
205
209
  /**
206
210
  * @mixin screen-min-max
207
211
  * @param $data an object like (min:"sm", max:"lg") or (min: "sm")
@@ -55,6 +55,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
55
55
 
56
56
  @layer variables {}
57
57
 
58
+ @layer variables {}
59
+
60
+ @layer variables {}
61
+
58
62
  /**
59
63
  Generates 3 types of placeholders, e.g:
60
64
  - %db-component-variables-md
@@ -55,6 +55,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
55
55
 
56
56
  @layer variables {}
57
57
 
58
+ @layer variables {}
59
+
60
+ @layer variables {}
61
+
58
62
  /**
59
63
  Generates 3 types of placeholders, e.g:
60
64
  - %db-component-variables-md
@@ -55,6 +55,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
55
55
 
56
56
  @layer variables {}
57
57
 
58
+ @layer variables {}
59
+
60
+ @layer variables {}
61
+
58
62
  .db-custom-select-list-item:not([data-disable-focus=true]):has(> label > input:focus-within) {
59
63
  outline: var(--db-border-width-2xs) solid var(--db-focus-outline-color, var(--db-informational-on-bg-basic-emphasis-70-default));
60
64
  outline-offset: var(--db-border-width-xs);
@@ -225,6 +229,7 @@ db-custom-select-list-item:not(:last-of-type) .db-custom-select-list-item[data-d
225
229
  }
226
230
  .db-custom-select-list-item > label {
227
231
  --db-icon-margin-start: auto;
232
+ --db-check-element-label-color: var(--db-adaptive-on-bg-basic-emphasis-100-default);
228
233
  inline-size: 100%;
229
234
  }
230
235
  .db-custom-select-list-item > label:has(input:checked) {
@@ -239,7 +244,8 @@ db-custom-select-list-item:not(:last-of-type) .db-custom-select-list-item[data-d
239
244
  --db-icon-after: "check";
240
245
  }
241
246
  .db-custom-select-list-item > label > input {
242
- /* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
247
+ --db-adaptive-bg-basic-transparent-hovered: var(--db-adaptive-bg-basic-transparent-full-default);
248
+ --db-adaptive-bg-basic-transparent-pressed: var(--db-adaptive-bg-basic-transparent-full-default);
243
249
  /* We set focus on complete list element, we remove it from checkbox with this trick */
244
250
  /* stylelint-disable-next-line a11y/no-outline-none */
245
251
  }
@@ -252,26 +258,6 @@ db-custom-select-list-item:not(:last-of-type) .db-custom-select-list-item[data-d
252
258
  .db-custom-select-list-item > label > input[type=radio] {
253
259
  all: unset;
254
260
  }
255
- .db-custom-select-list-item > label > input:hover:not(:disabled, [aria-disabled=true]) {
256
- cursor: var(--db-overwrite-cursor, pointer);
257
- background-color: var(--db-adaptive-bg-basic-transparent-full-default);
258
- }
259
- .db-custom-select-list-item > label > input:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-custom-select-list-item > label > input:hover:not(:disabled, [aria-disabled=true]):is(input) {
260
- cursor: initial;
261
- }
262
- .db-custom-select-list-item > label > input:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-custom-select-list-item > label > input:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
263
- cursor: pointer;
264
- }
265
- .db-custom-select-list-item > label > input:active:not(:disabled, [aria-disabled=true]) {
266
- cursor: var(--db-overwrite-cursor, pointer);
267
- background-color: var(--db-adaptive-bg-basic-transparent-full-default);
268
- }
269
- .db-custom-select-list-item > label > input:active:not(:disabled, [aria-disabled=true]):is(textarea), .db-custom-select-list-item > label > input:active:not(:disabled, [aria-disabled=true]):is(input) {
270
- cursor: initial;
271
- }
272
- .db-custom-select-list-item > label > input:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-custom-select-list-item > label > input:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
273
- cursor: pointer;
274
- }
275
261
  .db-custom-select-list-item > label > input:focus-visible {
276
262
  outline: none !important;
277
263
  }
@@ -50,6 +50,7 @@ db-custom-select-list-item:not(:last-of-type) {
50
50
 
51
51
  > label {
52
52
  --db-icon-margin-start: auto;
53
+ --db-check-element-label-color: #{colors.$db-adaptive-on-bg-basic-emphasis-100-default};
53
54
 
54
55
  inline-size: 100%;
55
56
 
@@ -69,6 +70,10 @@ db-custom-select-list-item:not(:last-of-type) {
69
70
  }
70
71
 
71
72
  > input {
73
+ // We revert interaction states for checkbox
74
+ --db-adaptive-bg-basic-transparent-hovered: #{colors.$db-adaptive-bg-basic-transparent-full-default};
75
+ --db-adaptive-bg-basic-transparent-pressed: #{colors.$db-adaptive-bg-basic-transparent-full-default};
76
+
72
77
  &::after {
73
78
  position: absolute;
74
79
  content: "";
@@ -80,15 +85,6 @@ db-custom-select-list-item:not(:last-of-type) {
80
85
  all: unset;
81
86
  }
82
87
 
83
- // We revert interaction states for checkbox
84
- @include helpers.hover {
85
- background-color: colors.$db-adaptive-bg-basic-transparent-full-default;
86
- }
87
-
88
- @include helpers.active {
89
- background-color: colors.$db-adaptive-bg-basic-transparent-full-default;
90
- }
91
-
92
88
  /* We set focus on complete list element, we remove it from checkbox with this trick */
93
89
  /* stylelint-disable-next-line a11y/no-outline-none */
94
90
  &:focus-visible {
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  .db-divider:is(:not([data-margin]), [data-margin=small]) {
40
44
  margin: var(--db-spacing-fixed-sm) 0;
41
45
  }
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  @keyframes show-right-to-left {
40
44
  from {
41
45
  transform: translateX(110%);
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  /**
40
44
  * @mixin screen-min-max
41
45
  * @param $data an object like (min:"sm", max:"lg") or (min: "sm")
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  .db-icon {
40
44
  font-size: 0 !important;
41
45
  /* stylelint-disable-next-line at-rule-empty-line-before */
@@ -36,6 +36,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
36
36
 
37
37
  @layer variables {}
38
38
 
39
+ @layer variables {}
40
+
41
+ @layer variables {}
42
+
39
43
  /**
40
44
  Generates 3 types of placeholders, e.g:
41
45
  - %db-component-variables-md
@@ -355,6 +355,10 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
355
355
 
356
356
  @layer variables {}
357
357
 
358
+ @layer variables {}
359
+
360
+ @layer variables {}
361
+
358
362
  .db-input:has(input[type=search]):not([data-hide-icon-before=true])::before, .db-input:has(input[type=search]):not([data-hide-icon-after=true])::after, .db-input:has(input[type=date]):not([data-hide-icon-after=true])::after, .db-input:has(input[type=week]):not([data-hide-icon-after=true])::after, .db-input:has(input[type=datetime-local]):not([data-hide-icon-after=true])::after, .db-input:has(input[type=month]):not([data-hide-icon-after=true])::after, .db-input:has(input[type=time]):not([data-hide-icon-after=true])::after, .db-input:not([data-hide-icon-after=true]):has(datalist)::after {
359
363
  color: var(--db-icon-color, inherit);
360
364
  display: inline-block;