@db-ux/core-components 1.0.0-test-13b991d

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 (167) hide show
  1. package/README.md +107 -0
  2. package/build/assets/fonts/OFL.txt +93 -0
  3. package/build/assets/fonts/OpenSans-Bold-EU.woff2 +0 -0
  4. package/build/assets/fonts/OpenSans-Bold.ttf +0 -0
  5. package/build/assets/fonts/OpenSans-ExtraBold-EU.woff2 +0 -0
  6. package/build/assets/fonts/OpenSans-ExtraBold.ttf +0 -0
  7. package/build/assets/fonts/OpenSans-Light-EU.woff2 +0 -0
  8. package/build/assets/fonts/OpenSans-Light.ttf +0 -0
  9. package/build/assets/fonts/OpenSans-Medium-EU.woff2 +0 -0
  10. package/build/assets/fonts/OpenSans-Medium.ttf +0 -0
  11. package/build/assets/fonts/OpenSans-Regular-EU.woff2 +0 -0
  12. package/build/assets/fonts/OpenSans-Regular.ttf +0 -0
  13. package/build/assets/fonts/OpenSans-SemiBold-EU.woff2 +0 -0
  14. package/build/assets/fonts/OpenSans-SemiBold.ttf +0 -0
  15. package/build/assets/fonts/README.md +23 -0
  16. package/build/assets/fonts/generate-eu-fonts.ts +46 -0
  17. package/build/assets/fonts/unicode-eu.txt +14 -0
  18. package/build/assets/icons/DB_LICENSE +253 -0
  19. package/build/assets/icons/LICENCES.json +153 -0
  20. package/build/assets/icons/arrow_down.svg +1 -0
  21. package/build/assets/icons/arrow_left.svg +1 -0
  22. package/build/assets/icons/arrow_right.svg +1 -0
  23. package/build/assets/icons/arrow_up.svg +1 -0
  24. package/build/assets/icons/arrow_up_right.svg +1 -0
  25. package/build/assets/icons/brand.svg +1 -0
  26. package/build/assets/icons/calendar.svg +5 -0
  27. package/build/assets/icons/check-circle.svg +1 -0
  28. package/build/assets/icons/check.svg +1 -0
  29. package/build/assets/icons/check_circle.svg +1 -0
  30. package/build/assets/icons/chevron_down.svg +1 -0
  31. package/build/assets/icons/chevron_left.svg +1 -0
  32. package/build/assets/icons/chevron_right.svg +1 -0
  33. package/build/assets/icons/chevron_up.svg +1 -0
  34. package/build/assets/icons/circle.svg +1 -0
  35. package/build/assets/icons/clock.svg +1 -0
  36. package/build/assets/icons/cross.svg +1 -0
  37. package/build/assets/icons/cross_circle.svg +1 -0
  38. package/build/assets/icons/exclamation_mark_circle.svg +1 -0
  39. package/build/assets/icons/exclamation_mark_triangle.svg +1 -0
  40. package/build/assets/icons/fonts/all/db-ux.woff2 +0 -0
  41. package/build/assets/icons/fonts/default/db-ux.woff2 +0 -0
  42. package/build/assets/icons/fonts/default_12/db-ux.woff2 +0 -0
  43. package/build/assets/icons/fonts/default_14/db-ux.woff2 +0 -0
  44. package/build/assets/icons/fonts/default_16/db-ux.woff2 +0 -0
  45. package/build/assets/icons/fonts/default_20/db-ux.woff2 +0 -0
  46. package/build/assets/icons/fonts/default_24/db-ux.woff2 +0 -0
  47. package/build/assets/icons/fonts/default_28/db-ux.woff2 +0 -0
  48. package/build/assets/icons/fonts/default_32/db-ux.woff2 +0 -0
  49. package/build/assets/icons/fonts/default_48/db-ux.woff2 +0 -0
  50. package/build/assets/icons/fonts/default_64/db-ux.woff2 +0 -0
  51. package/build/assets/icons/fonts/filled/db-ux.woff2 +0 -0
  52. package/build/assets/icons/fonts/filled_12/db-ux.woff2 +0 -0
  53. package/build/assets/icons/fonts/filled_14/db-ux.woff2 +0 -0
  54. package/build/assets/icons/fonts/filled_16/db-ux.woff2 +0 -0
  55. package/build/assets/icons/fonts/filled_20/db-ux.woff2 +0 -0
  56. package/build/assets/icons/fonts/filled_24/db-ux.woff2 +0 -0
  57. package/build/assets/icons/fonts/filled_28/db-ux.woff2 +0 -0
  58. package/build/assets/icons/fonts/filled_32/db-ux.woff2 +0 -0
  59. package/build/assets/icons/fonts/filled_48/db-ux.woff2 +0 -0
  60. package/build/assets/icons/fonts/filled_64/db-ux.woff2 +0 -0
  61. package/build/assets/icons/information_circle.svg +1 -0
  62. package/build/assets/icons/magnifying_glass.svg +1 -0
  63. package/build/assets/icons/menu.svg +1 -0
  64. package/build/assets/icons/minus.svg +1 -0
  65. package/build/assets/icons/plus.svg +1 -0
  66. package/build/assets/icons/resize_handle_corner.svg +1 -0
  67. package/build/assets/icons/x_placeholder.svg +1 -0
  68. package/build/components/accordion/accordion.css +78 -0
  69. package/build/components/accordion/accordion.scss +62 -0
  70. package/build/components/accordion-item/accordion-item.css +239 -0
  71. package/build/components/accordion-item/accordion-item.scss +73 -0
  72. package/build/components/badge/badge.css +253 -0
  73. package/build/components/badge/badge.scss +107 -0
  74. package/build/components/brand/brand.css +42 -0
  75. package/build/components/brand/brand.scss +32 -0
  76. package/build/components/button/button.css +165 -0
  77. package/build/components/button/button.scss +123 -0
  78. package/build/components/card/card.css +115 -0
  79. package/build/components/card/card.scss +56 -0
  80. package/build/components/checkbox/checkbox.css +476 -0
  81. package/build/components/checkbox/checkbox.scss +80 -0
  82. package/build/components/divider/divider.css +84 -0
  83. package/build/components/divider/divider.scss +56 -0
  84. package/build/components/drawer/drawer.css +303 -0
  85. package/build/components/drawer/drawer.scss +228 -0
  86. package/build/components/header/header.css +697 -0
  87. package/build/components/header/header.scss +246 -0
  88. package/build/components/icon/icon.css +24 -0
  89. package/build/components/icon/icon.scss +14 -0
  90. package/build/components/infotext/infotext.css +152 -0
  91. package/build/components/infotext/infotext.scss +54 -0
  92. package/build/components/input/input.css +712 -0
  93. package/build/components/input/input.scss +147 -0
  94. package/build/components/link/link.css +257 -0
  95. package/build/components/link/link.scss +60 -0
  96. package/build/components/navigation/navigation.css +218 -0
  97. package/build/components/navigation/navigation.scss +117 -0
  98. package/build/components/navigation-item/navigation-item.css +482 -0
  99. package/build/components/navigation-item/navigation-item.scss +310 -0
  100. package/build/components/notification/notification-grid-default.css +1 -0
  101. package/build/components/notification/notification-grid-default.scss +52 -0
  102. package/build/components/notification/notification-grid-non-overlay.css +1 -0
  103. package/build/components/notification/notification-grid-non-overlay.scss +66 -0
  104. package/build/components/notification/notification-grid-overlay.css +1 -0
  105. package/build/components/notification/notification-grid-overlay.scss +55 -0
  106. package/build/components/notification/notification.css +1173 -0
  107. package/build/components/notification/notification.scss +216 -0
  108. package/build/components/page/page.css +49 -0
  109. package/build/components/page/page.scss +52 -0
  110. package/build/components/popover/popover.css +291 -0
  111. package/build/components/popover/popover.scss +26 -0
  112. package/build/components/radio/radio.css +390 -0
  113. package/build/components/radio/radio.scss +49 -0
  114. package/build/components/section/section.css +38 -0
  115. package/build/components/section/section.scss +51 -0
  116. package/build/components/select/select.css +651 -0
  117. package/build/components/select/select.scss +83 -0
  118. package/build/components/stack/stack-web-component.css +93 -0
  119. package/build/components/stack/stack-web-component.scss +1 -0
  120. package/build/components/stack/stack.css +93 -0
  121. package/build/components/stack/stack.scss +5 -0
  122. package/build/components/switch/switch.css +901 -0
  123. package/build/components/switch/switch.scss +233 -0
  124. package/build/components/tab-item/tab-item.css +160 -0
  125. package/build/components/tab-item/tab-item.scss +135 -0
  126. package/build/components/tab-list/tab-list.css +202 -0
  127. package/build/components/tab-list/tab-list.scss +18 -0
  128. package/build/components/tab-panel/tab-panel.css +10 -0
  129. package/build/components/tab-panel/tab-panel.scss +5 -0
  130. package/build/components/tabs/tabs.css +358 -0
  131. package/build/components/tabs/tabs.scss +361 -0
  132. package/build/components/tag/tag.css +1544 -0
  133. package/build/components/tag/tag.scss +236 -0
  134. package/build/components/textarea/textarea.css +546 -0
  135. package/build/components/textarea/textarea.scss +86 -0
  136. package/build/components/tooltip/tooltip.css +346 -0
  137. package/build/components/tooltip/tooltip.scss +137 -0
  138. package/build/styles/absolute.css +1559 -0
  139. package/build/styles/absolute.scss +5 -0
  140. package/build/styles/component-animations.css +1 -0
  141. package/build/styles/component-animations.scss +17 -0
  142. package/build/styles/dialog-init.css +1 -0
  143. package/build/styles/dialog-init.scss +57 -0
  144. package/build/styles/index.css +615 -0
  145. package/build/styles/index.scss +32 -0
  146. package/build/styles/internal/_button-components.scss +8 -0
  147. package/build/styles/internal/_component.scss +79 -0
  148. package/build/styles/internal/_custom-elements.scss +7 -0
  149. package/build/styles/internal/_db-puls.scss +83 -0
  150. package/build/styles/internal/_form-components.scss +516 -0
  151. package/build/styles/internal/_icon-passing.scss +26 -0
  152. package/build/styles/internal/_link-components.scss +62 -0
  153. package/build/styles/internal/_popover-component.scss +213 -0
  154. package/build/styles/internal/_scrollbar.scss +93 -0
  155. package/build/styles/internal/_stack-components.scss +104 -0
  156. package/build/styles/internal/_tag-components.scss +234 -0
  157. package/build/styles/relative.css +1559 -0
  158. package/build/styles/relative.scss +15 -0
  159. package/build/styles/rollup.css +1559 -0
  160. package/build/styles/rollup.scss +5 -0
  161. package/build/styles/visually-hidden.css +1 -0
  162. package/build/styles/visually-hidden.scss +6 -0
  163. package/build/styles/wc-workarounds.css +1 -0
  164. package/build/styles/wc-workarounds.scss +12 -0
  165. package/build/styles/webpack.css +1559 -0
  166. package/build/styles/webpack.scss +5 -0
  167. package/package.json +62 -0
@@ -0,0 +1,651 @@
1
+ /* Use sizing's for fixed heights/widths e.g. the db-button has always a fixed height */
2
+ /* Use fixed spacings for all kind of distances (margin, padding, ...) */
3
+ /* The primary use-case for responsive spacings are
4
+ paddings/gaps in an application e.g. the <main> should have a responsive padding. */
5
+ /* Elevation */
6
+ /* Border */
7
+ /* Transitions */
8
+ /* Variants for adaptive components like input, select, notification, ... */
9
+ .db-select[data-hide-label=true] label, .db-visually-hidden,
10
+ [data-visually-hidden=true] {
11
+ clip: rect(0, 0, 0, 0) !important;
12
+ overflow: hidden !important;
13
+ white-space: nowrap !important;
14
+ font-size: 0 !important;
15
+ all: initial;
16
+ inset-block-start: 0 !important;
17
+ block-size: 1px !important;
18
+ position: absolute !important;
19
+ inline-size: 1px !important;
20
+ border-width: 0 !important;
21
+ border-style: initial !important;
22
+ border-color: initial !important;
23
+ border-image: initial !important;
24
+ padding: 0 !important;
25
+ pointer-events: none !important;
26
+ }
27
+
28
+ .db-select:has(select:not([data-custom-validity]):is(:required):user-invalid), .db-select:has(select[data-custom-validity=invalid]) {
29
+ --db-adaptive-bg-basic-level-1-default: var(
30
+ --db-critical-bg-basic-level-1-default
31
+ );
32
+ --db-adaptive-bg-basic-level-1-hovered: var(
33
+ --db-critical-bg-basic-level-1-hovered
34
+ );
35
+ --db-adaptive-bg-basic-level-1-pressed: var(
36
+ --db-critical-bg-basic-level-1-pressed
37
+ );
38
+ --db-adaptive-bg-basic-level-2-default: var(
39
+ --db-critical-bg-basic-level-2-default
40
+ );
41
+ --db-adaptive-bg-basic-level-2-hovered: var(
42
+ --db-critical-bg-basic-level-2-hovered
43
+ );
44
+ --db-adaptive-bg-basic-level-2-pressed: var(
45
+ --db-critical-bg-basic-level-2-pressed
46
+ );
47
+ --db-adaptive-bg-basic-level-3-default: var(
48
+ --db-critical-bg-basic-level-3-default
49
+ );
50
+ --db-adaptive-bg-basic-level-3-hovered: var(
51
+ --db-critical-bg-basic-level-3-hovered
52
+ );
53
+ --db-adaptive-bg-basic-level-3-pressed: var(
54
+ --db-critical-bg-basic-level-3-pressed
55
+ );
56
+ --db-adaptive-bg-basic-transparent-full-default: var(
57
+ --db-critical-bg-basic-transparent-full-default
58
+ );
59
+ --db-adaptive-bg-basic-transparent-semi-default: var(
60
+ --db-critical-bg-basic-transparent-semi-default
61
+ );
62
+ --db-adaptive-bg-basic-transparent-hovered: var(
63
+ --db-critical-bg-basic-transparent-hovered
64
+ );
65
+ --db-adaptive-bg-basic-transparent-pressed: var(
66
+ --db-critical-bg-basic-transparent-pressed
67
+ );
68
+ --db-adaptive-on-bg-basic-emphasis-100-default: var(
69
+ --db-critical-on-bg-basic-emphasis-100-default
70
+ );
71
+ --db-adaptive-on-bg-basic-emphasis-100-hovered: var(
72
+ --db-critical-on-bg-basic-emphasis-100-hovered
73
+ );
74
+ --db-adaptive-on-bg-basic-emphasis-100-pressed: var(
75
+ --db-critical-on-bg-basic-emphasis-100-pressed
76
+ );
77
+ --db-adaptive-on-bg-basic-emphasis-90-default: var(
78
+ --db-critical-on-bg-basic-emphasis-90-default
79
+ );
80
+ --db-adaptive-on-bg-basic-emphasis-90-hovered: var(
81
+ --db-critical-on-bg-basic-emphasis-90-hovered
82
+ );
83
+ --db-adaptive-on-bg-basic-emphasis-90-pressed: var(
84
+ --db-critical-on-bg-basic-emphasis-90-pressed
85
+ );
86
+ --db-adaptive-on-bg-basic-emphasis-80-default: var(
87
+ --db-critical-on-bg-basic-emphasis-80-default
88
+ );
89
+ --db-adaptive-on-bg-basic-emphasis-80-hovered: var(
90
+ --db-critical-on-bg-basic-emphasis-80-hovered
91
+ );
92
+ --db-adaptive-on-bg-basic-emphasis-80-pressed: var(
93
+ --db-critical-on-bg-basic-emphasis-80-pressed
94
+ );
95
+ --db-adaptive-on-bg-basic-emphasis-70-default: var(
96
+ --db-critical-on-bg-basic-emphasis-70-default
97
+ );
98
+ --db-adaptive-on-bg-basic-emphasis-70-hovered: var(
99
+ --db-critical-on-bg-basic-emphasis-70-hovered
100
+ );
101
+ --db-adaptive-on-bg-basic-emphasis-70-pressed: var(
102
+ --db-critical-on-bg-basic-emphasis-70-pressed
103
+ );
104
+ --db-adaptive-on-bg-basic-emphasis-60-default: var(
105
+ --db-critical-on-bg-basic-emphasis-60-default
106
+ );
107
+ --db-adaptive-on-bg-basic-emphasis-60-hovered: var(
108
+ --db-critical-on-bg-basic-emphasis-60-hovered
109
+ );
110
+ --db-adaptive-on-bg-basic-emphasis-60-pressed: var(
111
+ --db-critical-on-bg-basic-emphasis-60-pressed
112
+ );
113
+ --db-adaptive-on-bg-basic-emphasis-50-default: var(
114
+ --db-critical-on-bg-basic-emphasis-50-default
115
+ );
116
+ --db-adaptive-on-bg-basic-emphasis-50-hovered: var(
117
+ --db-critical-on-bg-basic-emphasis-50-hovered
118
+ );
119
+ --db-adaptive-on-bg-basic-emphasis-50-pressed: var(
120
+ --db-critical-on-bg-basic-emphasis-50-pressed
121
+ );
122
+ --db-adaptive-bg-inverted-contrast-max-default: var(
123
+ --db-critical-bg-inverted-contrast-max-default
124
+ );
125
+ --db-adaptive-bg-inverted-contrast-max-hovered: var(
126
+ --db-critical-bg-inverted-contrast-max-hovered
127
+ );
128
+ --db-adaptive-bg-inverted-contrast-max-pressed: var(
129
+ --db-critical-bg-inverted-contrast-max-pressed
130
+ );
131
+ --db-adaptive-bg-inverted-contrast-high-default: var(
132
+ --db-critical-bg-inverted-contrast-high-default
133
+ );
134
+ --db-adaptive-bg-inverted-contrast-high-hovered: var(
135
+ --db-critical-bg-inverted-contrast-high-hovered
136
+ );
137
+ --db-adaptive-bg-inverted-contrast-high-pressed: var(
138
+ --db-critical-bg-inverted-contrast-high-pressed
139
+ );
140
+ --db-adaptive-bg-inverted-contrast-low-default: var(
141
+ --db-critical-bg-inverted-contrast-low-default
142
+ );
143
+ --db-adaptive-bg-inverted-contrast-low-hovered: var(
144
+ --db-critical-bg-inverted-contrast-low-hovered
145
+ );
146
+ --db-adaptive-bg-inverted-contrast-low-pressed: var(
147
+ --db-critical-bg-inverted-contrast-low-pressed
148
+ );
149
+ --db-adaptive-on-bg-inverted-default: var(
150
+ --db-critical-on-bg-inverted-default
151
+ );
152
+ --db-adaptive-on-bg-inverted-hovered: var(
153
+ --db-critical-on-bg-inverted-hovered
154
+ );
155
+ --db-adaptive-on-bg-inverted-pressed: var(
156
+ --db-critical-on-bg-inverted-pressed
157
+ );
158
+ --db-adaptive-origin-default: var(--db-critical-origin-default);
159
+ --db-adaptive-origin-hovered: var(--db-critical-origin-hovered);
160
+ --db-adaptive-origin-pressed: var(--db-critical-origin-pressed);
161
+ --db-adaptive-on-origin-default: var(
162
+ --db-critical-on-origin-default
163
+ );
164
+ --db-adaptive-on-origin-hovered: var(
165
+ --db-critical-on-origin-hovered
166
+ );
167
+ --db-adaptive-on-origin-pressed: var(
168
+ --db-critical-on-origin-pressed
169
+ );
170
+ }
171
+
172
+ .db-select:has(select:not([data-custom-validity]):is(:required):user-valid), .db-select:has(select[data-custom-validity=valid]) {
173
+ --db-adaptive-bg-basic-level-1-default: var(
174
+ --db-successful-bg-basic-level-1-default
175
+ );
176
+ --db-adaptive-bg-basic-level-1-hovered: var(
177
+ --db-successful-bg-basic-level-1-hovered
178
+ );
179
+ --db-adaptive-bg-basic-level-1-pressed: var(
180
+ --db-successful-bg-basic-level-1-pressed
181
+ );
182
+ --db-adaptive-bg-basic-level-2-default: var(
183
+ --db-successful-bg-basic-level-2-default
184
+ );
185
+ --db-adaptive-bg-basic-level-2-hovered: var(
186
+ --db-successful-bg-basic-level-2-hovered
187
+ );
188
+ --db-adaptive-bg-basic-level-2-pressed: var(
189
+ --db-successful-bg-basic-level-2-pressed
190
+ );
191
+ --db-adaptive-bg-basic-level-3-default: var(
192
+ --db-successful-bg-basic-level-3-default
193
+ );
194
+ --db-adaptive-bg-basic-level-3-hovered: var(
195
+ --db-successful-bg-basic-level-3-hovered
196
+ );
197
+ --db-adaptive-bg-basic-level-3-pressed: var(
198
+ --db-successful-bg-basic-level-3-pressed
199
+ );
200
+ --db-adaptive-bg-basic-transparent-full-default: var(
201
+ --db-successful-bg-basic-transparent-full-default
202
+ );
203
+ --db-adaptive-bg-basic-transparent-semi-default: var(
204
+ --db-successful-bg-basic-transparent-semi-default
205
+ );
206
+ --db-adaptive-bg-basic-transparent-hovered: var(
207
+ --db-successful-bg-basic-transparent-hovered
208
+ );
209
+ --db-adaptive-bg-basic-transparent-pressed: var(
210
+ --db-successful-bg-basic-transparent-pressed
211
+ );
212
+ --db-adaptive-on-bg-basic-emphasis-100-default: var(
213
+ --db-successful-on-bg-basic-emphasis-100-default
214
+ );
215
+ --db-adaptive-on-bg-basic-emphasis-100-hovered: var(
216
+ --db-successful-on-bg-basic-emphasis-100-hovered
217
+ );
218
+ --db-adaptive-on-bg-basic-emphasis-100-pressed: var(
219
+ --db-successful-on-bg-basic-emphasis-100-pressed
220
+ );
221
+ --db-adaptive-on-bg-basic-emphasis-90-default: var(
222
+ --db-successful-on-bg-basic-emphasis-90-default
223
+ );
224
+ --db-adaptive-on-bg-basic-emphasis-90-hovered: var(
225
+ --db-successful-on-bg-basic-emphasis-90-hovered
226
+ );
227
+ --db-adaptive-on-bg-basic-emphasis-90-pressed: var(
228
+ --db-successful-on-bg-basic-emphasis-90-pressed
229
+ );
230
+ --db-adaptive-on-bg-basic-emphasis-80-default: var(
231
+ --db-successful-on-bg-basic-emphasis-80-default
232
+ );
233
+ --db-adaptive-on-bg-basic-emphasis-80-hovered: var(
234
+ --db-successful-on-bg-basic-emphasis-80-hovered
235
+ );
236
+ --db-adaptive-on-bg-basic-emphasis-80-pressed: var(
237
+ --db-successful-on-bg-basic-emphasis-80-pressed
238
+ );
239
+ --db-adaptive-on-bg-basic-emphasis-70-default: var(
240
+ --db-successful-on-bg-basic-emphasis-70-default
241
+ );
242
+ --db-adaptive-on-bg-basic-emphasis-70-hovered: var(
243
+ --db-successful-on-bg-basic-emphasis-70-hovered
244
+ );
245
+ --db-adaptive-on-bg-basic-emphasis-70-pressed: var(
246
+ --db-successful-on-bg-basic-emphasis-70-pressed
247
+ );
248
+ --db-adaptive-on-bg-basic-emphasis-60-default: var(
249
+ --db-successful-on-bg-basic-emphasis-60-default
250
+ );
251
+ --db-adaptive-on-bg-basic-emphasis-60-hovered: var(
252
+ --db-successful-on-bg-basic-emphasis-60-hovered
253
+ );
254
+ --db-adaptive-on-bg-basic-emphasis-60-pressed: var(
255
+ --db-successful-on-bg-basic-emphasis-60-pressed
256
+ );
257
+ --db-adaptive-on-bg-basic-emphasis-50-default: var(
258
+ --db-successful-on-bg-basic-emphasis-50-default
259
+ );
260
+ --db-adaptive-on-bg-basic-emphasis-50-hovered: var(
261
+ --db-successful-on-bg-basic-emphasis-50-hovered
262
+ );
263
+ --db-adaptive-on-bg-basic-emphasis-50-pressed: var(
264
+ --db-successful-on-bg-basic-emphasis-50-pressed
265
+ );
266
+ --db-adaptive-bg-inverted-contrast-max-default: var(
267
+ --db-successful-bg-inverted-contrast-max-default
268
+ );
269
+ --db-adaptive-bg-inverted-contrast-max-hovered: var(
270
+ --db-successful-bg-inverted-contrast-max-hovered
271
+ );
272
+ --db-adaptive-bg-inverted-contrast-max-pressed: var(
273
+ --db-successful-bg-inverted-contrast-max-pressed
274
+ );
275
+ --db-adaptive-bg-inverted-contrast-high-default: var(
276
+ --db-successful-bg-inverted-contrast-high-default
277
+ );
278
+ --db-adaptive-bg-inverted-contrast-high-hovered: var(
279
+ --db-successful-bg-inverted-contrast-high-hovered
280
+ );
281
+ --db-adaptive-bg-inverted-contrast-high-pressed: var(
282
+ --db-successful-bg-inverted-contrast-high-pressed
283
+ );
284
+ --db-adaptive-bg-inverted-contrast-low-default: var(
285
+ --db-successful-bg-inverted-contrast-low-default
286
+ );
287
+ --db-adaptive-bg-inverted-contrast-low-hovered: var(
288
+ --db-successful-bg-inverted-contrast-low-hovered
289
+ );
290
+ --db-adaptive-bg-inverted-contrast-low-pressed: var(
291
+ --db-successful-bg-inverted-contrast-low-pressed
292
+ );
293
+ --db-adaptive-on-bg-inverted-default: var(
294
+ --db-successful-on-bg-inverted-default
295
+ );
296
+ --db-adaptive-on-bg-inverted-hovered: var(
297
+ --db-successful-on-bg-inverted-hovered
298
+ );
299
+ --db-adaptive-on-bg-inverted-pressed: var(
300
+ --db-successful-on-bg-inverted-pressed
301
+ );
302
+ --db-adaptive-origin-default: var(--db-successful-origin-default);
303
+ --db-adaptive-origin-hovered: var(--db-successful-origin-hovered);
304
+ --db-adaptive-origin-pressed: var(--db-successful-origin-pressed);
305
+ --db-adaptive-on-origin-default: var(
306
+ --db-successful-on-origin-default
307
+ );
308
+ --db-adaptive-on-origin-hovered: var(
309
+ --db-successful-on-origin-hovered
310
+ );
311
+ --db-adaptive-on-origin-pressed: var(
312
+ --db-successful-on-origin-pressed
313
+ );
314
+ }
315
+
316
+ .db-select:not([data-hide-icon-after=true])::after {
317
+ content: var(--db-icon, attr(data-icon));
318
+ content: var(--db-icon, attr(data-icon))/"";
319
+ -webkit-alt: "";
320
+ alt: "";
321
+ color: var(--db-icon-color, inherit);
322
+ display: inline-block;
323
+ /*** icon - placeholder ***/
324
+ font-family: var(--db-icon-font-family, var(--db-icon-default-font-family, "db-ux-default")) !important;
325
+ font-size: var(--db-icon-font-size, 1.5rem);
326
+ -webkit-font-smoothing: antialiased;
327
+ -moz-osx-font-smoothing: grayscale;
328
+ font-style: normal;
329
+ font-variant: normal;
330
+ font-weight: var(--db-icon-font-weight, normal);
331
+ line-height: 1;
332
+ /* stylelint-disable-next-line declaration-property-value-no-unknown */
333
+ speak: none;
334
+ /* stylelint-disable-next-line declaration-property-value-no-unknown */
335
+ speak: never;
336
+ text-transform: none;
337
+ vertical-align: middle;
338
+ block-size: var(--db-icon-font-size, 1.5rem);
339
+ inline-size: var(--db-icon-font-size, 1.5rem);
340
+ }
341
+ @media aural {
342
+ .db-select:not([data-hide-icon-after=true])::after {
343
+ content: none;
344
+ }
345
+ }
346
+ @media speech {
347
+ .db-select:not([data-hide-icon-after=true])::after {
348
+ content: none;
349
+ }
350
+ }
351
+
352
+ /**
353
+ Generates 3 types of placeholders, e.g:
354
+ - %db-component-variables-md
355
+ - %db-font-size-md
356
+ - %db-overwrite-font-size-md
357
+ */
358
+ .db-select[data-variant=floating] label, .db-select select, .db-select [id$=-placeholder] {
359
+ /* Those variables are only for components to calculate heights and change icons */
360
+ --db-icon-font-weight: var(--db-base-body-icon-weight-md);
361
+ --db-icon-font-size: var(--db-base-body-icon-font-size-md);
362
+ --db-base-line-height: var(--db-type-body-line-height-md);
363
+ --db-base-font-size: var(--db-type-body-font-size-md);
364
+ line-height: var(--db-type-body-line-height-md);
365
+ font-size: var(--db-type-body-font-size-md);
366
+ }
367
+
368
+ .db-select, .db-select[data-variant=floating] [id$=-placeholder], .db-select[data-variant=floating] select {
369
+ /* Those variables are only for components to calculate heights and change icons */
370
+ --db-icon-font-weight: var(--db-base-body-icon-weight-sm);
371
+ --db-icon-font-size: var(--db-base-body-icon-font-size-sm);
372
+ --db-base-line-height: var(--db-type-body-line-height-sm);
373
+ --db-base-font-size: var(--db-type-body-font-size-sm);
374
+ line-height: var(--db-type-body-line-height-sm);
375
+ font-size: var(--db-type-body-font-size-sm);
376
+ }
377
+
378
+ .db-select label {
379
+ /* Those variables are only for components to calculate heights and change icons */
380
+ --db-icon-font-weight: var(--db-base-body-icon-weight-xs);
381
+ --db-icon-font-size: var(--db-base-body-icon-font-size-xs);
382
+ --db-base-line-height: var(--db-type-body-line-height-xs);
383
+ --db-base-font-size: var(--db-type-body-font-size-xs);
384
+ line-height: var(--db-type-body-line-height-xs);
385
+ font-size: var(--db-type-body-font-size-xs);
386
+ }
387
+
388
+ .db-select[data-variant=floating]:has(select:focus-within,
389
+ select:is(input, textarea):not(:placeholder-shown),
390
+ > select option:checked:not([hidden])) label {
391
+ /* Those variables are only for components to calculate heights and change icons */
392
+ --db-icon-font-weight: var(--db-base-body-icon-weight-2xs);
393
+ --db-icon-font-size: var(--db-base-body-icon-font-size-2xs);
394
+ --db-base-line-height: var(--db-type-body-line-height-2xs);
395
+ --db-base-font-size: var(--db-type-body-font-size-2xs);
396
+ line-height: var(--db-type-body-line-height-2xs);
397
+ font-size: var(--db-type-body-font-size-2xs);
398
+ }
399
+
400
+ .db-select select {
401
+ border: var(--db-border-height-3xs) solid var(--db-adaptive-on-bg-basic-emphasis-100-default);
402
+ }
403
+
404
+ .db-select select {
405
+ border: var(--db-border-height-3xs) solid var(--db-adaptive-on-bg-basic-emphasis-70-default);
406
+ }
407
+
408
+ .db-select select {
409
+ border-radius: var(--db-border-radius-xs);
410
+ }
411
+
412
+ .db-select:not([data-hide-icon-after=true])::after {
413
+ --db-icon-after: "chevron_down";
414
+ content: var(--db-icon-after, attr(data-icon-after));
415
+ content: var(--db-icon-after, attr(data-icon-after))/"";
416
+ margin-inline-start: var(--db-icon-margin-start, var(--db-spacing-fixed-xs));
417
+ }
418
+ .db-select::after {
419
+ pointer-events: none;
420
+ }
421
+ @media screen and (prefers-reduced-motion: no-preference) {
422
+ .db-select::after {
423
+ transition: transform var(--db-transition-straight-emotional);
424
+ }
425
+ }
426
+
427
+ .db-select .db-infotext {
428
+ margin-block-start: var(--db-spacing-fixed-2xs);
429
+ }
430
+ .db-select .db-infotext[data-semantic] {
431
+ display: none;
432
+ }
433
+
434
+ [data-icon].db-select {
435
+ --db-form-has-before: 1;
436
+ }
437
+
438
+ .db-select {
439
+ --db-form-component-padding-inline-end: calc(
440
+ calc(var(--db-base-font-size) * var(--db-base-line-height)) + var(--db-spacing-fixed-sm)
441
+ );
442
+ --db-form-has-before: 0;
443
+ position: relative;
444
+ display: flex;
445
+ flex-direction: column;
446
+ min-inline-size: calc(4 * var(--db-sizing-md) + var(--db-form-has-before) * var(--db-sizing-md));
447
+ }
448
+ .db-select[data-variant=floating] label {
449
+ opacity: 0.69;
450
+ position: absolute;
451
+ z-index: 2;
452
+ inset-block-start: calc((var(--db-sizing-md) - calc(var(--db-base-font-size) * var(--db-base-line-height))) / 2);
453
+ inset-inline: var(--db-form-component-padding-inline-start, var(--db-spacing-fixed-sm));
454
+ pointer-events: none;
455
+ }
456
+ .db-select[data-variant=floating]::after, .db-select[data-variant=floating]::before {
457
+ inset-block-start: calc(var(--db-sizing-md) / 2 - calc(var(--db-base-font-size) * var(--db-base-line-height)) / 2);
458
+ }
459
+ .db-select[data-variant=floating] [id$=-placeholder] {
460
+ inset-block-start: calc(50% - 0.5em + var(--db-spacing-fixed-3xs));
461
+ }
462
+ .db-select[data-variant=floating] select {
463
+ padding-block-start: calc(var(--db-type-body-font-size-2xs) + var(--db-spacing-fixed-3xs));
464
+ }
465
+ .db-select[data-variant=floating] select::placeholder,
466
+ .db-select[data-variant=floating] select + [id$=-placeholder] {
467
+ transition: none;
468
+ opacity: 0;
469
+ }
470
+ .db-select[data-variant=floating]:has(select:focus-within,
471
+ select:is(input, textarea):not(:placeholder-shown),
472
+ > select option:checked:not([hidden])) label {
473
+ inset-block-start: var(--db-spacing-fixed-2xs);
474
+ opacity: 1;
475
+ }
476
+ .db-select[data-variant=floating]:has(select:focus-within,
477
+ select:is(input, textarea):not(:placeholder-shown),
478
+ > select option:checked:not([hidden])) select::placeholder,
479
+ .db-select[data-variant=floating]:has(select:focus-within,
480
+ select:is(input, textarea):not(:placeholder-shown),
481
+ > select option:checked:not([hidden])) select + [id$=-placeholder] {
482
+ opacity: 0.69;
483
+ }
484
+ @media screen and (prefers-reduced-motion: no-preference) {
485
+ .db-select[data-variant=floating]:has(select:focus-within,
486
+ select:is(input, textarea):not(:placeholder-shown),
487
+ > select option:checked:not([hidden])) select::placeholder,
488
+ .db-select[data-variant=floating]:has(select:focus-within,
489
+ select:is(input, textarea):not(:placeholder-shown),
490
+ > select option:checked:not([hidden])) select + [id$=-placeholder] {
491
+ transition: opacity var(--db-transition-straight-emotional);
492
+ }
493
+ }
494
+ .db-select:has(select:required):is(label)::after,
495
+ .db-select:has(select:required) label::after {
496
+ content: "*";
497
+ content: "*"/"";
498
+ /* stylelint-disable-next-line db-ux/use-spacings */
499
+ padding-inline-start: 1px;
500
+ }
501
+ .db-select:has(select:not([data-custom-validity]):is(:required):user-valid) {
502
+ /* stylelint-disable-next-line at-rule-empty-line-before */
503
+ }
504
+ .db-select:has(select:not([data-custom-validity]):is(:required):user-valid) .db-infotext {
505
+ /* stylelint-disable-next-line at-rule-empty-line-before */
506
+ }
507
+ .db-select:has(select:not([data-custom-validity]):is(:required):user-valid) .db-infotext[data-semantic=successful] {
508
+ display: flex;
509
+ }
510
+ .db-select:has(select:not([data-custom-validity]):is(:required):user-valid) .db-infotext:not([data-semantic]) {
511
+ display: none;
512
+ }
513
+ .db-select:has(select:not([data-custom-validity]):is(:required):user-valid) select,
514
+ .db-select:has(select:not([data-custom-validity]):is(:required):user-valid) [id$=-placeholder] {
515
+ color: var(--db-successful-on-bg-basic-emphasis-100-default);
516
+ caret-color: var(--db-successful-on-bg-basic-emphasis-100-default);
517
+ }
518
+ .db-select:has(select[data-custom-validity=valid]) {
519
+ /* stylelint-disable-next-line at-rule-empty-line-before */
520
+ }
521
+ .db-select:has(select[data-custom-validity=valid]) .db-infotext {
522
+ /* stylelint-disable-next-line at-rule-empty-line-before */
523
+ }
524
+ .db-select:has(select[data-custom-validity=valid]) .db-infotext[data-semantic=successful] {
525
+ display: flex;
526
+ }
527
+ .db-select:has(select[data-custom-validity=valid]) .db-infotext:not([data-semantic]) {
528
+ display: none;
529
+ }
530
+ .db-select:has(select[data-custom-validity=valid]) select,
531
+ .db-select:has(select[data-custom-validity=valid]) [id$=-placeholder] {
532
+ color: var(--db-successful-on-bg-basic-emphasis-100-default);
533
+ caret-color: var(--db-successful-on-bg-basic-emphasis-100-default);
534
+ }
535
+ .db-select:has(select:not([data-custom-validity]):is(:required):user-invalid) {
536
+ /* stylelint-disable-next-line at-rule-empty-line-before */
537
+ }
538
+ .db-select:has(select:not([data-custom-validity]):is(:required):user-invalid) .db-infotext[data-semantic=critical] {
539
+ display: flex;
540
+ }
541
+ .db-select:has(select:not([data-custom-validity]):is(:required):user-invalid) .db-infotext:not([data-semantic]) {
542
+ display: none;
543
+ }
544
+ .db-select:has(select:not([data-custom-validity]):is(:required):user-invalid) select,
545
+ .db-select:has(select:not([data-custom-validity]):is(:required):user-invalid) [id$=-placeholder] {
546
+ color: var(--db-critical-on-bg-basic-emphasis-100-default);
547
+ caret-color: var(--db-critical-on-bg-basic-emphasis-100-default);
548
+ }
549
+ .db-select:has(select[data-custom-validity=invalid]) {
550
+ /* stylelint-disable-next-line at-rule-empty-line-before */
551
+ }
552
+ .db-select:has(select[data-custom-validity=invalid]) .db-infotext[data-semantic=critical] {
553
+ display: flex;
554
+ }
555
+ .db-select:has(select[data-custom-validity=invalid]) .db-infotext:not([data-semantic]) {
556
+ display: none;
557
+ }
558
+ .db-select:has(select[data-custom-validity=invalid]) select,
559
+ .db-select:has(select[data-custom-validity=invalid]) [id$=-placeholder] {
560
+ color: var(--db-critical-on-bg-basic-emphasis-100-default);
561
+ caret-color: var(--db-critical-on-bg-basic-emphasis-100-default);
562
+ }
563
+ .db-select select {
564
+ background-color: var(--db-adaptive-bg-basic-transparent-semi-default);
565
+ caret-color: var(--db-adaptive-on-bg-basic-emphasis-100-default);
566
+ appearance: none;
567
+ max-inline-size: 100%;
568
+ inline-size: 100%;
569
+ /* stylelint-disable-next-line db-ux/use-spacings */
570
+ padding-inline: var(--db-form-component-padding-inline-start, var(--db-spacing-fixed-sm)) var(--db-form-component-padding-inline-end, var(--db-spacing-fixed-sm));
571
+ /* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
572
+ }
573
+ .db-select select::placeholder,
574
+ .db-select select + [id$=-placeholder] {
575
+ opacity: 0.69;
576
+ }
577
+ .db-select select:hover:not(:disabled, [aria-disabled=true]) {
578
+ cursor: pointer;
579
+ background-color: var(--db-adaptive-bg-basic-transparent-hovered);
580
+ }
581
+ .db-select select:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-select select:hover:not(:disabled, [aria-disabled=true]):is(input) {
582
+ cursor: initial;
583
+ }
584
+ .db-select select:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-select select:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
585
+ cursor: pointer;
586
+ }
587
+ .db-select select:is(input, textarea):not(:disabled):read-only {
588
+ background-color: var(--db-textarea-read-only, var(--db-adaptive-bg-basic-level-1-default)) !important;
589
+ }
590
+ .db-select label {
591
+ padding-block-end: var(--db-spacing-fixed-xs);
592
+ max-inline-size: 25ch;
593
+ text-overflow: ellipsis;
594
+ white-space: nowrap;
595
+ overflow: hidden;
596
+ }
597
+ @media screen and (prefers-reduced-motion: no-preference) {
598
+ .db-select label {
599
+ transition: font-size var(--db-transition-straight-emotional);
600
+ }
601
+ }
602
+ .db-select[data-hide-label=true] label {
603
+ padding: 0;
604
+ }
605
+ .db-select:has(select:disabled) {
606
+ opacity: 0.4;
607
+ pointer-events: none;
608
+ }
609
+ .db-select::after, .db-select::before {
610
+ position: absolute;
611
+ pointer-events: none;
612
+ inset-block-start: calc(var(--db-sizing-md) / 2 - var(--db-spacing-fixed-xs) * var(--db-label-visible-spacing, 0) + calc(var(--db-type-body-font-size-xs) * var(--db-type-body-line-height-xs)) * var(--db-label-visible-height, 1) - 1px);
613
+ color: var(--db-adaptive-on-bg-basic-emphasis-100-default);
614
+ }
615
+ .db-select::before {
616
+ margin-inline-end: var(--db-spacing-fixed-sm);
617
+ inset-inline-start: var(--db-spacing-fixed-sm);
618
+ }
619
+ .db-select::after {
620
+ margin-inline-start: var(--db-spacing-fixed-sm);
621
+ inset-inline-end: var(--db-spacing-fixed-sm);
622
+ }
623
+ .db-select select {
624
+ block-size: var(--db-sizing-md);
625
+ text-overflow: ellipsis;
626
+ }
627
+ .db-select select {
628
+ text-indent: calc(var(--db-form-has-before) * (var(--db-base-body-icon-font-size-sm) + var(--db-spacing-fixed-sm)));
629
+ }
630
+ .db-select option {
631
+ background-color: var(--db-adaptive-bg-basic-level-1-default);
632
+ color: var(--db-adaptive-on-bg-basic-emphasis-100-default);
633
+ }
634
+ .db-select[data-hide-label=true] {
635
+ --db-label-visible-height: 0;
636
+ --db-label-visible-spacing: 1;
637
+ }
638
+ .db-select [id$=-placeholder] {
639
+ position: absolute;
640
+ pointer-events: none;
641
+ inset-block-start: calc(0% + (calc(var(--db-type-body-font-size-xs) * var(--db-type-body-line-height-xs)) + var(--db-spacing-fixed-xs)) * var(--db-label-visible-height, 1) + var(--db-base-font-size) / 2 - var(--db-density-functional, 0) * 1px);
642
+ inset-inline: calc(var(--db-form-has-before) * (var(--db-base-body-icon-font-size-sm) + var(--db-spacing-fixed-sm)));
643
+ margin-inline-start: var(--db-spacing-fixed-sm);
644
+ overflow: hidden;
645
+ white-space: nowrap;
646
+ text-overflow: ellipsis;
647
+ inline-size: calc(100% - var(--db-form-component-padding-inline-end) - calc(var(--db-form-has-before) * (var(--db-base-body-icon-font-size-sm) + var(--db-spacing-fixed-sm))) - var(--db-spacing-fixed-sm));
648
+ }
649
+ .db-select:has(> select option:checked:not([hidden])) [id$=-placeholder] {
650
+ display: none;
651
+ }