@db-ux/core-components 1.1.1 → 2.0.0-0-custom-select-16b8cce
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/build/assets/icons/LICENCES.json +6 -0
- package/build/assets/icons/circular_arrows.svg +1 -0
- package/build/assets/icons/fonts/all/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/default/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/default_12/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/default_14/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/default_16/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/default_20/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/default_24/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/default_28/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/default_32/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/default_48/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/default_64/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/filled/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/filled_12/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/filled_14/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/filled_16/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/filled_20/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/filled_24/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/filled_28/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/filled_32/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/filled_48/db-ux.woff2 +0 -0
- package/build/assets/icons/fonts/filled_64/db-ux.woff2 +0 -0
- package/build/components/accordion/accordion.css +1 -1
- package/build/components/accordion-item/accordion-item.css +7 -2
- package/build/components/badge/badge.css +56 -4
- package/build/components/badge/badge.scss +1 -1
- package/build/components/button/button.css +4 -4
- package/build/components/card/card.css +6 -6
- package/build/components/checkbox/checkbox.css +60 -57
- package/build/components/custom-select/custom-select.css +1028 -0
- package/build/components/custom-select/custom-select.scss +172 -0
- package/build/components/custom-select-dropdown/custom-select-dropdown.css +402 -0
- package/build/components/custom-select-dropdown/custom-select-dropdown.scss +86 -0
- package/build/components/custom-select-form-field/custom-select-form-field.css +49 -0
- package/build/components/custom-select-form-field/custom-select-form-field.scss +24 -0
- package/build/components/custom-select-list/custom-select-list.css +48 -0
- package/build/components/custom-select-list/custom-select-list.scss +35 -0
- package/build/components/custom-select-list-item/custom-select-list-item.css +187 -0
- package/build/components/custom-select-list-item/custom-select-list-item.scss +99 -0
- package/build/components/divider/divider.css +2 -2
- package/build/components/drawer/drawer.css +6 -1
- package/build/components/header/header.css +4 -4
- package/build/components/input/input.css +71 -61
- package/build/components/input/input.scss +1 -5
- package/build/components/link/link.css +9 -4
- package/build/components/navigation-item/navigation-item.css +8 -3
- package/build/components/notification/notification.css +7 -2
- package/build/components/popover/popover.css +5 -0
- package/build/components/radio/radio.css +57 -54
- package/build/components/select/select.css +84 -75
- package/build/components/select/select.scss +4 -49
- package/build/components/switch/switch.css +64 -61
- package/build/components/tab-item/tab-item.css +5 -5
- package/build/components/tab-list/tab-list.css +17 -3
- package/build/components/tag/tag.css +40 -35
- package/build/components/textarea/textarea.css +93 -65
- package/build/components/textarea/textarea.scss +1 -1
- package/build/components/tooltip/tooltip.css +6 -1
- package/build/components/tooltip/tooltip.scss +2 -2
- package/build/styles/_select-components.scss +50 -0
- package/build/styles/absolute.css +32 -32
- package/build/styles/component-animations.css +1 -1
- package/build/styles/index.css +31 -31
- package/build/styles/index.scss +5 -0
- package/build/styles/internal/_custom-elements.scss +3 -0
- package/build/styles/internal/_form-components.scss +81 -70
- package/build/styles/internal/_scrollbar.scss +14 -3
- package/build/styles/internal/_tag-components.scss +20 -2
- package/build/styles/relative.css +32 -32
- package/build/styles/rollup.css +32 -32
- package/build/styles/wc-workarounds.css +1 -1
- package/build/styles/webpack.css +32 -32
- package/package.json +6 -5
|
@@ -11,7 +11,7 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
11
11
|
- %db-font-size-md
|
|
12
12
|
- %db-overwrite-font-size-md
|
|
13
13
|
*/
|
|
14
|
-
.db-textarea[data-variant=floating] label, .db-textarea textarea {
|
|
14
|
+
.db-textarea[data-variant=floating] > label, .db-textarea textarea {
|
|
15
15
|
/* Those variables are only for components to calculate heights and change icons */
|
|
16
16
|
--db-icon-font-weight: var(--db-base-body-icon-weight-md);
|
|
17
17
|
--db-icon-font-size: var(--db-base-body-icon-font-size-md);
|
|
@@ -27,7 +27,7 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
27
27
|
font-size: var(--db-type-body-font-size-sm);
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
.db-textarea label {
|
|
30
|
+
.db-textarea > label {
|
|
31
31
|
/* Those variables are only for components to calculate heights and change icons */
|
|
32
32
|
--db-icon-font-weight: var(--db-base-body-icon-weight-xs);
|
|
33
33
|
--db-icon-font-size: var(--db-base-body-icon-font-size-xs);
|
|
@@ -37,7 +37,8 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
37
37
|
|
|
38
38
|
.db-textarea[data-variant=floating]:has(textarea:focus-within,
|
|
39
39
|
textarea:is(input, textarea):not(:placeholder-shown),
|
|
40
|
-
> select option:checked:not([hidden])
|
|
40
|
+
> select option:checked:not([hidden]),
|
|
41
|
+
input[type=checkbox]:checked) > label {
|
|
41
42
|
/* Those variables are only for components to calculate heights and change icons */
|
|
42
43
|
--db-icon-font-weight: var(--db-base-body-icon-weight-2xs);
|
|
43
44
|
--db-icon-font-size: var(--db-base-body-icon-font-size-2xs);
|
|
@@ -46,7 +47,7 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
46
47
|
}
|
|
47
48
|
|
|
48
49
|
/* Variants for adaptive components like input, select, notification, ... */
|
|
49
|
-
.db-textarea[data-hide-label=true] label, .db-visually-hidden,
|
|
50
|
+
.db-textarea[data-hide-label=true] > label, .db-visually-hidden,
|
|
50
51
|
[data-visually-hidden=true] {
|
|
51
52
|
clip: rect(0, 0, 0, 0) !important;
|
|
52
53
|
overflow: hidden !important;
|
|
@@ -80,7 +81,7 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
80
81
|
.db-textarea .db-infotext {
|
|
81
82
|
margin-block-start: var(--db-spacing-fixed-2xs);
|
|
82
83
|
}
|
|
83
|
-
.db-textarea .db-infotext[data-semantic] {
|
|
84
|
+
.db-textarea .db-infotext:is([data-semantic=successful], [data-semantic=critical]) {
|
|
84
85
|
display: none;
|
|
85
86
|
}
|
|
86
87
|
|
|
@@ -162,10 +163,17 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
162
163
|
transform: translate(var(--db-popover-center-x, 0%), var(--db-popover-center-y, 0%));
|
|
163
164
|
}
|
|
164
165
|
}
|
|
166
|
+
@keyframes rotate {
|
|
167
|
+
100% {
|
|
168
|
+
transform: rotate(1turn);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
165
171
|
.db-textarea textarea {
|
|
166
172
|
/* Buttons */
|
|
167
173
|
/* Up */
|
|
168
174
|
/* Down */
|
|
175
|
+
/* Left */
|
|
176
|
+
/* Right */
|
|
169
177
|
}
|
|
170
178
|
.db-textarea textarea::-webkit-scrollbar {
|
|
171
179
|
z-index: 3;
|
|
@@ -178,7 +186,7 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
178
186
|
background-color: var(--db-adaptive-bg-basic-transparent-hovered);
|
|
179
187
|
}
|
|
180
188
|
.db-textarea textarea:read-only::-webkit-scrollbar-track, .db-textarea textarea:read-only::-webkit-scrollbar-button:single-button {
|
|
181
|
-
background-color: var(--db-adaptive-bg-basic-level-1-default)
|
|
189
|
+
background-color: var(--db-adaptive-bg-basic-level-1-default);
|
|
182
190
|
}
|
|
183
191
|
.db-textarea textarea::-webkit-scrollbar-track {
|
|
184
192
|
background-color: var(--db-adaptive-bg-basic-transparent-semi-default);
|
|
@@ -200,10 +208,17 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
200
208
|
background-color: var(--db-adaptive-bg-basic-transparent-pressed);
|
|
201
209
|
}
|
|
202
210
|
.db-textarea textarea::-webkit-scrollbar-button:single-button:vertical:decrement {
|
|
203
|
-
|
|
211
|
+
border-start-end-radius: var(--db-border-radius-xs);
|
|
212
|
+
background-image: var(--db-scrollbar-button-vertical-decrement);
|
|
204
213
|
}
|
|
205
214
|
.db-textarea textarea::-webkit-scrollbar-button:single-button:vertical:increment {
|
|
206
|
-
background-image: var(--db-
|
|
215
|
+
background-image: var(--db-scrollbar-button-vertical-increment);
|
|
216
|
+
}
|
|
217
|
+
.db-textarea textarea::-webkit-scrollbar-button:single-button:horizontal:decrement {
|
|
218
|
+
background-image: var(--db-scrollbar-button-horizontal-decrement);
|
|
219
|
+
}
|
|
220
|
+
.db-textarea textarea::-webkit-scrollbar-button:single-button:horizontal:increment {
|
|
221
|
+
background-image: var(--db-scrollbar-button-horizontal-increment);
|
|
207
222
|
}
|
|
208
223
|
.db-textarea textarea[data-variant=floating]::-webkit-resizer {
|
|
209
224
|
background-color: var(--db-adaptive-bg-basic-transparent-semi-default);
|
|
@@ -236,61 +251,70 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
236
251
|
resize: vertical;
|
|
237
252
|
}
|
|
238
253
|
|
|
254
|
+
.db-textarea {
|
|
255
|
+
/* stylelint-disable-next-line scss/selector-no-redundant-nesting-selector */
|
|
256
|
+
}
|
|
239
257
|
.db-textarea {
|
|
240
258
|
--db-form-has-before: 0;
|
|
241
259
|
position: relative;
|
|
242
260
|
display: flex;
|
|
243
261
|
flex-direction: column;
|
|
244
262
|
}
|
|
245
|
-
.db-textarea[data-variant=floating] label {
|
|
263
|
+
.db-textarea[data-variant=floating], .db-textarea[data-hide-label=true] {
|
|
264
|
+
--db-label-visible-above: 0;
|
|
265
|
+
}
|
|
266
|
+
.db-textarea[data-variant=floating] > label {
|
|
246
267
|
opacity: 0.69;
|
|
247
268
|
position: absolute;
|
|
248
269
|
z-index: 2;
|
|
249
270
|
inset-block-start: calc((var(--db-sizing-md) - var(--db-icon-font-size)) / 2);
|
|
250
|
-
inset-inline: var(--db-form-component-padding-inline-start, var(--db-spacing-fixed-sm));
|
|
271
|
+
inset-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));
|
|
251
272
|
pointer-events: none;
|
|
252
273
|
}
|
|
253
|
-
.db-textarea[data-variant=floating]::after, .db-textarea[data-variant=floating]::before {
|
|
254
|
-
inset-block-start: calc(var(--db-sizing-md) / 2 - var(--db-icon-font-size) / 2);
|
|
255
|
-
}
|
|
256
274
|
.db-textarea[data-variant=floating] [id$=-placeholder] {
|
|
257
275
|
inset-block-start: calc(50% - 0.5em + var(--db-spacing-fixed-3xs));
|
|
258
276
|
}
|
|
259
|
-
.db-textarea[data-variant=floating] textarea {
|
|
260
|
-
padding-block-start: calc(var(--db-spacing-fixed-3xs) + var(--db-spacing-fixed-2xs) + var(--db-base-body-icon-font-size-2xs));
|
|
261
|
-
/* stylelint-disable-next-line at-rule-empty-line-before */
|
|
262
|
-
}
|
|
263
277
|
.db-textarea[data-variant=floating] textarea::placeholder,
|
|
264
|
-
.db-textarea[data-variant=floating]
|
|
278
|
+
.db-textarea[data-variant=floating] [id$=-placeholder] {
|
|
265
279
|
transition: none;
|
|
266
280
|
opacity: 0;
|
|
267
281
|
}
|
|
282
|
+
.db-textarea[data-variant=floating] textarea {
|
|
283
|
+
padding-block-start: calc(var(--db-spacing-fixed-3xs) + var(--db-spacing-fixed-2xs) + var(--db-base-body-icon-font-size-2xs));
|
|
284
|
+
/* stylelint-disable-next-line at-rule-empty-line-before */
|
|
285
|
+
}
|
|
268
286
|
.db-textarea[data-variant=floating]:has(textarea:focus-within,
|
|
269
287
|
textarea:is(input, textarea):not(:placeholder-shown),
|
|
270
|
-
> select option:checked:not([hidden])
|
|
288
|
+
> select option:checked:not([hidden]),
|
|
289
|
+
input[type=checkbox]:checked) > label {
|
|
271
290
|
inset-block-start: var(--db-spacing-fixed-2xs);
|
|
272
291
|
opacity: 1;
|
|
273
292
|
}
|
|
274
293
|
.db-textarea[data-variant=floating]:has(textarea:focus-within,
|
|
275
294
|
textarea:is(input, textarea):not(:placeholder-shown),
|
|
276
|
-
> select option:checked:not([hidden])
|
|
295
|
+
> select option:checked:not([hidden]),
|
|
296
|
+
input[type=checkbox]:checked) textarea::placeholder,
|
|
277
297
|
.db-textarea[data-variant=floating]:has(textarea:focus-within,
|
|
278
298
|
textarea:is(input, textarea):not(:placeholder-shown),
|
|
279
|
-
> select option:checked:not([hidden])
|
|
299
|
+
> select option:checked:not([hidden]),
|
|
300
|
+
input[type=checkbox]:checked) [id$=-placeholder] {
|
|
280
301
|
opacity: 0.69;
|
|
281
302
|
}
|
|
282
303
|
@media screen and (prefers-reduced-motion: no-preference) {
|
|
283
304
|
.db-textarea[data-variant=floating]:has(textarea:focus-within,
|
|
284
305
|
textarea:is(input, textarea):not(:placeholder-shown),
|
|
285
|
-
> select option:checked:not([hidden])
|
|
306
|
+
> select option:checked:not([hidden]),
|
|
307
|
+
input[type=checkbox]:checked) textarea::placeholder,
|
|
286
308
|
.db-textarea[data-variant=floating]:has(textarea:focus-within,
|
|
287
309
|
textarea:is(input, textarea):not(:placeholder-shown),
|
|
288
|
-
> select option:checked:not([hidden])
|
|
310
|
+
> select option:checked:not([hidden]),
|
|
311
|
+
input[type=checkbox]:checked) [id$=-placeholder] {
|
|
289
312
|
transition: opacity var(--db-transition-straight-emotional);
|
|
290
313
|
}
|
|
291
314
|
}
|
|
292
315
|
.db-textarea:has(textarea:required):is(label)::after,
|
|
293
|
-
.db-textarea:has(textarea:required) label::after
|
|
316
|
+
.db-textarea:has(textarea:required) > label::after, .db-textarea[data-required=true]:is(label)::after,
|
|
317
|
+
.db-textarea[data-required=true] > label::after {
|
|
294
318
|
content: "*";
|
|
295
319
|
content: "*"/"";
|
|
296
320
|
/* stylelint-disable-next-line db-ux/use-spacings */
|
|
@@ -310,13 +334,18 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
310
334
|
--db-adaptive-bg-basic-transparent-pressed: var(
|
|
311
335
|
--db-successful-bg-basic-transparent-pressed
|
|
312
336
|
);
|
|
313
|
-
--db-adaptive-default: var(
|
|
337
|
+
--db-adaptive-on-bg-basic-emphasis-100-default: var(
|
|
314
338
|
--db-successful-on-bg-basic-emphasis-100-default
|
|
315
339
|
);
|
|
316
340
|
--db-adaptive-on-bg-basic-emphasis-60-default: var(
|
|
317
341
|
--db-successful-on-bg-basic-emphasis-60-default
|
|
318
342
|
);
|
|
319
343
|
}
|
|
344
|
+
.db-textarea:has(textarea:not([data-custom-validity]):is(:required, [minlength], [maxlength]):user-valid) textarea,
|
|
345
|
+
.db-textarea:has(textarea:not([data-custom-validity]):is(:required, [minlength], [maxlength]):user-valid) [id$=-placeholder] {
|
|
346
|
+
color: var(--db-successful-on-bg-basic-emphasis-100-default);
|
|
347
|
+
caret-color: var(--db-successful-on-bg-basic-emphasis-100-default);
|
|
348
|
+
}
|
|
320
349
|
.db-textarea:has(textarea:not([data-custom-validity]):is(:required, [minlength], [maxlength]):user-valid) .db-infotext {
|
|
321
350
|
/* stylelint-disable-next-line at-rule-empty-line-before */
|
|
322
351
|
}
|
|
@@ -326,12 +355,7 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
326
355
|
.db-textarea:has(textarea:not([data-custom-validity]):is(:required, [minlength], [maxlength]):user-valid) .db-infotext:not([data-semantic]) {
|
|
327
356
|
display: none;
|
|
328
357
|
}
|
|
329
|
-
.db-textarea:has(textarea
|
|
330
|
-
.db-textarea:has(textarea:not([data-custom-validity]):is(:required, [minlength], [maxlength]):user-valid) [id$=-placeholder] {
|
|
331
|
-
color: var(--db-successful-on-bg-basic-emphasis-100-default);
|
|
332
|
-
caret-color: var(--db-successful-on-bg-basic-emphasis-100-default);
|
|
333
|
-
}
|
|
334
|
-
.db-textarea:has(textarea[data-custom-validity=valid]) {
|
|
358
|
+
.db-textarea:has(textarea[data-custom-validity=valid]), .db-textarea[data-custom-validity=valid] {
|
|
335
359
|
--db-textarea-read-only: var(--db-successful-bg-basic-level-1-default);
|
|
336
360
|
--db-adaptive-bg-basic-transparent-full-default: var(
|
|
337
361
|
--db-successful-bg-basic-transparent-full-default
|
|
@@ -345,27 +369,28 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
345
369
|
--db-adaptive-bg-basic-transparent-pressed: var(
|
|
346
370
|
--db-successful-bg-basic-transparent-pressed
|
|
347
371
|
);
|
|
348
|
-
--db-adaptive-default: var(
|
|
372
|
+
--db-adaptive-on-bg-basic-emphasis-100-default: var(
|
|
349
373
|
--db-successful-on-bg-basic-emphasis-100-default
|
|
350
374
|
);
|
|
351
375
|
--db-adaptive-on-bg-basic-emphasis-60-default: var(
|
|
352
376
|
--db-successful-on-bg-basic-emphasis-60-default
|
|
353
377
|
);
|
|
354
378
|
}
|
|
355
|
-
.db-textarea:has(textarea[data-custom-validity=valid])
|
|
379
|
+
.db-textarea:has(textarea[data-custom-validity=valid]) textarea,
|
|
380
|
+
.db-textarea:has(textarea[data-custom-validity=valid]) [id$=-placeholder], .db-textarea[data-custom-validity=valid] textarea,
|
|
381
|
+
.db-textarea[data-custom-validity=valid] [id$=-placeholder] {
|
|
382
|
+
color: var(--db-successful-on-bg-basic-emphasis-100-default);
|
|
383
|
+
caret-color: var(--db-successful-on-bg-basic-emphasis-100-default);
|
|
384
|
+
}
|
|
385
|
+
.db-textarea:has(textarea[data-custom-validity=valid]) .db-infotext, .db-textarea[data-custom-validity=valid] .db-infotext {
|
|
356
386
|
/* stylelint-disable-next-line at-rule-empty-line-before */
|
|
357
387
|
}
|
|
358
|
-
.db-textarea:has(textarea[data-custom-validity=valid]) .db-infotext[data-semantic=successful] {
|
|
388
|
+
.db-textarea:has(textarea[data-custom-validity=valid]) .db-infotext[data-semantic=successful], .db-textarea[data-custom-validity=valid] .db-infotext[data-semantic=successful] {
|
|
359
389
|
display: flex;
|
|
360
390
|
}
|
|
361
|
-
.db-textarea:has(textarea[data-custom-validity=valid]) .db-infotext:not([data-semantic]) {
|
|
391
|
+
.db-textarea:has(textarea[data-custom-validity=valid]) .db-infotext:not([data-semantic]), .db-textarea[data-custom-validity=valid] .db-infotext:not([data-semantic]) {
|
|
362
392
|
display: none;
|
|
363
393
|
}
|
|
364
|
-
.db-textarea:has(textarea[data-custom-validity=valid]) textarea,
|
|
365
|
-
.db-textarea:has(textarea[data-custom-validity=valid]) [id$=-placeholder] {
|
|
366
|
-
color: var(--db-successful-on-bg-basic-emphasis-100-default);
|
|
367
|
-
caret-color: var(--db-successful-on-bg-basic-emphasis-100-default);
|
|
368
|
-
}
|
|
369
394
|
.db-textarea:has(textarea:not([data-custom-validity]):is(:required, [minlength], [maxlength]):user-invalid) {
|
|
370
395
|
--db-textarea-read-only: var(--db-critical-bg-basic-level-1-default);
|
|
371
396
|
--db-adaptive-bg-basic-transparent-full-default: var(
|
|
@@ -380,25 +405,25 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
380
405
|
--db-adaptive-bg-basic-transparent-pressed: var(
|
|
381
406
|
--db-critical-bg-basic-transparent-pressed
|
|
382
407
|
);
|
|
383
|
-
--db-adaptive-default: var(
|
|
408
|
+
--db-adaptive-on-bg-basic-emphasis-100-default: var(
|
|
384
409
|
--db-critical-on-bg-basic-emphasis-100-default
|
|
385
410
|
);
|
|
386
411
|
--db-adaptive-on-bg-basic-emphasis-60-default: var(
|
|
387
412
|
--db-critical-on-bg-basic-emphasis-60-default
|
|
388
413
|
);
|
|
389
414
|
}
|
|
415
|
+
.db-textarea:has(textarea:not([data-custom-validity]):is(:required, [minlength], [maxlength]):user-invalid) textarea,
|
|
416
|
+
.db-textarea:has(textarea:not([data-custom-validity]):is(:required, [minlength], [maxlength]):user-invalid) [id$=-placeholder] {
|
|
417
|
+
color: var(--db-critical-on-bg-basic-emphasis-100-default);
|
|
418
|
+
caret-color: var(--db-critical-on-bg-basic-emphasis-100-default);
|
|
419
|
+
}
|
|
390
420
|
.db-textarea:has(textarea:not([data-custom-validity]):is(:required, [minlength], [maxlength]):user-invalid) .db-infotext[data-semantic=critical] {
|
|
391
421
|
display: flex;
|
|
392
422
|
}
|
|
393
423
|
.db-textarea:has(textarea:not([data-custom-validity]):is(:required, [minlength], [maxlength]):user-invalid) .db-infotext:not([data-semantic]) {
|
|
394
424
|
display: none;
|
|
395
425
|
}
|
|
396
|
-
.db-textarea:has(textarea
|
|
397
|
-
.db-textarea:has(textarea:not([data-custom-validity]):is(:required, [minlength], [maxlength]):user-invalid) [id$=-placeholder] {
|
|
398
|
-
color: var(--db-critical-on-bg-basic-emphasis-100-default);
|
|
399
|
-
caret-color: var(--db-critical-on-bg-basic-emphasis-100-default);
|
|
400
|
-
}
|
|
401
|
-
.db-textarea:has(textarea[data-custom-validity=invalid]) {
|
|
426
|
+
.db-textarea:has(textarea[data-custom-validity=invalid]), .db-textarea[data-custom-validity=invalid] {
|
|
402
427
|
--db-textarea-read-only: var(--db-critical-bg-basic-level-1-default);
|
|
403
428
|
--db-adaptive-bg-basic-transparent-full-default: var(
|
|
404
429
|
--db-critical-bg-basic-transparent-full-default
|
|
@@ -412,23 +437,28 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
412
437
|
--db-adaptive-bg-basic-transparent-pressed: var(
|
|
413
438
|
--db-critical-bg-basic-transparent-pressed
|
|
414
439
|
);
|
|
415
|
-
--db-adaptive-default: var(
|
|
440
|
+
--db-adaptive-on-bg-basic-emphasis-100-default: var(
|
|
416
441
|
--db-critical-on-bg-basic-emphasis-100-default
|
|
417
442
|
);
|
|
418
443
|
--db-adaptive-on-bg-basic-emphasis-60-default: var(
|
|
419
444
|
--db-critical-on-bg-basic-emphasis-60-default
|
|
420
445
|
);
|
|
421
446
|
}
|
|
422
|
-
.db-textarea:has(textarea[data-custom-validity=invalid])
|
|
447
|
+
.db-textarea:has(textarea[data-custom-validity=invalid]) textarea,
|
|
448
|
+
.db-textarea:has(textarea[data-custom-validity=invalid]) [id$=-placeholder], .db-textarea[data-custom-validity=invalid] textarea,
|
|
449
|
+
.db-textarea[data-custom-validity=invalid] [id$=-placeholder] {
|
|
450
|
+
color: var(--db-critical-on-bg-basic-emphasis-100-default);
|
|
451
|
+
caret-color: var(--db-critical-on-bg-basic-emphasis-100-default);
|
|
452
|
+
}
|
|
453
|
+
.db-textarea:has(textarea[data-custom-validity=invalid]) .db-infotext[data-semantic=critical], .db-textarea[data-custom-validity=invalid] .db-infotext[data-semantic=critical] {
|
|
423
454
|
display: flex;
|
|
424
455
|
}
|
|
425
|
-
.db-textarea:has(textarea[data-custom-validity=invalid]) .db-infotext:not([data-semantic]) {
|
|
456
|
+
.db-textarea:has(textarea[data-custom-validity=invalid]) .db-infotext:not([data-semantic]), .db-textarea[data-custom-validity=invalid] .db-infotext:not([data-semantic]) {
|
|
426
457
|
display: none;
|
|
427
458
|
}
|
|
428
|
-
.db-textarea
|
|
429
|
-
.db-textarea
|
|
430
|
-
|
|
431
|
-
caret-color: var(--db-critical-on-bg-basic-emphasis-100-default);
|
|
459
|
+
.db-textarea textarea::placeholder,
|
|
460
|
+
.db-textarea [id$=-placeholder] {
|
|
461
|
+
opacity: 0.69;
|
|
432
462
|
}
|
|
433
463
|
.db-textarea textarea {
|
|
434
464
|
background-color: var(--db-adaptive-bg-basic-transparent-semi-default);
|
|
@@ -440,12 +470,8 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
440
470
|
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));
|
|
441
471
|
/* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
|
|
442
472
|
}
|
|
443
|
-
.db-textarea textarea::placeholder,
|
|
444
|
-
.db-textarea textarea + [id$=-placeholder] {
|
|
445
|
-
opacity: 0.69;
|
|
446
|
-
}
|
|
447
473
|
.db-textarea textarea:hover:not(:disabled, [aria-disabled=true]) {
|
|
448
|
-
cursor: pointer;
|
|
474
|
+
cursor: var(--db-overwrite-cursor, pointer);
|
|
449
475
|
background-color: var(--db-adaptive-bg-basic-transparent-hovered);
|
|
450
476
|
}
|
|
451
477
|
.db-textarea textarea:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-textarea textarea:hover:not(:disabled, [aria-disabled=true]):is(input) {
|
|
@@ -457,7 +483,7 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
457
483
|
.db-textarea textarea:is(input, textarea):not(:disabled):read-only {
|
|
458
484
|
background-color: var(--db-textarea-read-only, var(--db-adaptive-bg-basic-level-1-default)) !important;
|
|
459
485
|
}
|
|
460
|
-
.db-textarea label {
|
|
486
|
+
.db-textarea > label {
|
|
461
487
|
padding-block-end: var(--db-spacing-fixed-xs);
|
|
462
488
|
max-inline-size: 25ch;
|
|
463
489
|
text-overflow: ellipsis;
|
|
@@ -465,22 +491,23 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
465
491
|
overflow: hidden;
|
|
466
492
|
}
|
|
467
493
|
@media screen and (prefers-reduced-motion: no-preference) {
|
|
468
|
-
.db-textarea label {
|
|
494
|
+
.db-textarea > label {
|
|
469
495
|
transition: font-size var(--db-transition-straight-emotional);
|
|
470
496
|
}
|
|
471
497
|
}
|
|
472
|
-
.db-textarea[data-hide-label=true] label {
|
|
498
|
+
.db-textarea[data-hide-label=true] > label {
|
|
473
499
|
padding: 0;
|
|
474
500
|
}
|
|
475
|
-
.db-textarea:has(textarea:disabled) {
|
|
501
|
+
.db-textarea:has(textarea:disabled, textarea[data-disabled=true]) {
|
|
476
502
|
opacity: 0.4;
|
|
477
503
|
pointer-events: none;
|
|
478
504
|
}
|
|
479
505
|
.db-textarea::after, .db-textarea::before {
|
|
480
506
|
position: absolute;
|
|
481
507
|
pointer-events: none;
|
|
482
|
-
inset-block-start: calc(
|
|
508
|
+
inset-block-start: calc((var(--db-spacing-fixed-xs) + var(--db-base-body-icon-font-size-xs)) * var(--db-label-visible-above, 1) + var(--db-sizing-md) / 2);
|
|
483
509
|
color: var(--db-adaptive-on-bg-basic-emphasis-100-default);
|
|
510
|
+
transform: translateY(-50%);
|
|
484
511
|
}
|
|
485
512
|
.db-textarea::before {
|
|
486
513
|
margin-inline-end: var(--db-spacing-fixed-sm);
|
|
@@ -491,7 +518,6 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
491
518
|
inset-inline-end: var(--db-spacing-fixed-sm);
|
|
492
519
|
}
|
|
493
520
|
.db-textarea textarea {
|
|
494
|
-
cursor: auto;
|
|
495
521
|
overflow-y: scroll;
|
|
496
522
|
padding-block: var(--db-spacing-fixed-xs) var(--db-spacing-fixed-xs);
|
|
497
523
|
}
|
|
@@ -504,6 +530,7 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
504
530
|
margin-inline: 0;
|
|
505
531
|
inline-size: calc(100% - 0.5rem - 1px);
|
|
506
532
|
inset-inline: 0;
|
|
533
|
+
transform: none;
|
|
507
534
|
background-color: var(--db-adaptive-bg-basic-level-1-default);
|
|
508
535
|
}
|
|
509
536
|
.db-textarea[data-variant=floating]:has(textarea:is(:focus-within, :not(:placeholder-shown)))::after {
|
|
@@ -515,6 +542,7 @@ textarea:is(input, textarea):not(:placeholder-shown),
|
|
|
515
542
|
margin-inline: 0;
|
|
516
543
|
inline-size: calc(100% - 0.5rem - 1px);
|
|
517
544
|
inset-inline: 0;
|
|
545
|
+
transform: none;
|
|
518
546
|
background-color: var(--db-adaptive-bg-basic-transparent-semi-default);
|
|
519
547
|
z-index: 1;
|
|
520
548
|
border-block-end: none;
|
|
@@ -34,6 +34,7 @@
|
|
|
34
34
|
margin-inline: 0;
|
|
35
35
|
inline-size: calc(100% - #{scrollbar.$scrollbar-width} - 1px);
|
|
36
36
|
inset-inline: 0;
|
|
37
|
+
transform: none;
|
|
37
38
|
}
|
|
38
39
|
|
|
39
40
|
.db-textarea {
|
|
@@ -43,7 +44,6 @@
|
|
|
43
44
|
@extend %resize-textarea;
|
|
44
45
|
@extend %scrollbar;
|
|
45
46
|
|
|
46
|
-
cursor: auto;
|
|
47
47
|
overflow-y: scroll;
|
|
48
48
|
|
|
49
49
|
// we don't have icons in textarea so we can overwrite it here
|
|
@@ -94,6 +94,11 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
94
94
|
transform: translate(var(--db-popover-center-x, 0%), var(--db-popover-center-y, 0%));
|
|
95
95
|
}
|
|
96
96
|
}
|
|
97
|
+
@keyframes rotate {
|
|
98
|
+
100% {
|
|
99
|
+
transform: rotate(1turn);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
97
102
|
.db-tooltip[data-show-arrow=true]::after, .db-tooltip {
|
|
98
103
|
border: var(--db-border-height-3xs) solid var(--db-adaptive-on-bg-basic-emphasis-60-default);
|
|
99
104
|
}
|
|
@@ -330,5 +335,5 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
330
335
|
}
|
|
331
336
|
|
|
332
337
|
[data-has-tooltip=true] {
|
|
333
|
-
position: relative;
|
|
338
|
+
position: var(--db-tooltip-parent-position, relative);
|
|
334
339
|
}
|
|
@@ -53,7 +53,7 @@ $tooltip-arrow-shadow-size: variables.$db-sizing-2xs;
|
|
|
53
53
|
calc(100% + #{$tooltip-arrow-shadow-size})
|
|
54
54
|
calc(100% + #{$tooltip-arrow-shadow-size})
|
|
55
55
|
);
|
|
56
|
-
|
|
56
|
+
/* stylelint-disable-next-line db-ux/use-border-radius */
|
|
57
57
|
border-radius: 0 2px;
|
|
58
58
|
transform: skew(-8deg, -8deg);
|
|
59
59
|
}
|
|
@@ -127,7 +127,7 @@ $tooltip-arrow-shadow-size: variables.$db-sizing-2xs;
|
|
|
127
127
|
}
|
|
128
128
|
|
|
129
129
|
[data-has-tooltip="true"] {
|
|
130
|
-
position: relative;
|
|
130
|
+
position: var(--db-tooltip-parent-position, relative);
|
|
131
131
|
}
|
|
132
132
|
|
|
133
133
|
$popover-states: "hover", "focus";
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
@use "@db-ux/core-foundations/build/styles/fonts";
|
|
2
|
+
@use "@db-ux/core-foundations/build/styles/variables";
|
|
3
|
+
@use "./internal/form-components";
|
|
4
|
+
|
|
5
|
+
%select-icon {
|
|
6
|
+
@extend %dropdown-icon;
|
|
7
|
+
|
|
8
|
+
&[data-icon]:not([data-hide-icon="true"]) {
|
|
9
|
+
--db-form-has-before: 1;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
$has-before-padding: calc(
|
|
14
|
+
var(--db-form-has-before) *
|
|
15
|
+
(#{form-components.$icon-size-sm} + #{variables.$db-spacing-fixed-sm})
|
|
16
|
+
);
|
|
17
|
+
|
|
18
|
+
$select-icon-padding: calc(
|
|
19
|
+
#{form-components.$font-size-height} + #{variables.$db-spacing-fixed-sm} +
|
|
20
|
+
#{variables.$db-spacing-fixed-xs}
|
|
21
|
+
);
|
|
22
|
+
|
|
23
|
+
%select-placeholder {
|
|
24
|
+
[id$="-placeholder"] {
|
|
25
|
+
@extend %db-overwrite-font-size-md;
|
|
26
|
+
|
|
27
|
+
position: absolute;
|
|
28
|
+
pointer-events: none;
|
|
29
|
+
// we use the top of the element, the size of the label+label-margin-bottom and the font-size of the select/2
|
|
30
|
+
// for functional we have some rounding issues for rem, so we need 1px less
|
|
31
|
+
inset-block-start: calc(
|
|
32
|
+
0% +
|
|
33
|
+
(
|
|
34
|
+
#{form-components.$label-size-height-xs} +
|
|
35
|
+
#{variables.$db-spacing-fixed-xs}
|
|
36
|
+
) *
|
|
37
|
+
var(--db-label-visible-above, 1) + var(--db-type-body-font-size-md) /
|
|
38
|
+
2 - var(--db-density-functional, 0) * 1px
|
|
39
|
+
);
|
|
40
|
+
inset-inline: $has-before-padding;
|
|
41
|
+
margin-inline-start: variables.$db-spacing-fixed-sm;
|
|
42
|
+
overflow: hidden;
|
|
43
|
+
white-space: nowrap;
|
|
44
|
+
text-overflow: ellipsis;
|
|
45
|
+
inline-size: calc(
|
|
46
|
+
100% - var(--db-form-component-padding-inline-end) -
|
|
47
|
+
#{$has-before-padding} - #{variables.$db-spacing-fixed-sm}
|
|
48
|
+
);
|
|
49
|
+
}
|
|
50
|
+
}
|