@db-ux/core-components 4.4.3 → 4.5.1

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 (132) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/build/components/accordion-item/accordion-item.css +40 -7
  3. package/build/components/accordion-item/accordion-item.scss +1 -1
  4. package/build/components/badge/badge.css +75 -11
  5. package/build/components/badge/badge.scss +6 -1
  6. package/build/components/brand/brand.css +2 -0
  7. package/build/components/brand/brand.scss +2 -0
  8. package/build/components/button/button.css +246 -60
  9. package/build/components/button/button.scss +1 -105
  10. package/build/components/card/card.css +88 -16
  11. package/build/components/checkbox/checkbox.css +1 -0
  12. package/build/components/custom-button/custom-button.css +893 -0
  13. package/build/components/custom-button/custom-button.scss +78 -0
  14. package/build/components/custom-select/custom-select.css +19 -3
  15. package/build/components/custom-select-dropdown/custom-select-dropdown.css +3 -0
  16. package/build/components/custom-select-dropdown/custom-select-dropdown.scss +1 -0
  17. package/build/components/custom-select-list-item/custom-select-list-item.css +36 -6
  18. package/build/components/drawer/drawer.css +6 -0
  19. package/build/components/drawer/drawer.scss +4 -0
  20. package/build/components/infotext/infotext.css +4 -0
  21. package/build/components/infotext/infotext.scss +4 -0
  22. package/build/components/input/input.css +31 -3
  23. package/build/components/input/input.scss +11 -0
  24. package/build/components/link/link.css +75 -12
  25. package/build/components/navigation-item/navigation-item.css +113 -21
  26. package/build/components/navigation-item/navigation-item.scss +2 -1
  27. package/build/components/notification/notification.css +39 -6
  28. package/build/components/popover/popover.css +2 -0
  29. package/build/components/select/select.css +19 -3
  30. package/build/components/switch/switch.css +1 -0
  31. package/build/components/tab-item/tab-item.css +52 -10
  32. package/build/components/tab-list/tab-list.css +2 -0
  33. package/build/components/tabs/tabs.css +2 -0
  34. package/build/components/tabs/tabs.scss +2 -0
  35. package/build/components/tag/tag.css +858 -125
  36. package/build/components/textarea/textarea.css +20 -3
  37. package/build/components/tooltip/tooltip.css +6 -1
  38. package/build/components/tooltip/tooltip.scss +12 -10
  39. package/build/styles/absolute.css +9 -9
  40. package/build/styles/component-animations.css +1 -1
  41. package/build/styles/index.css +8 -8
  42. package/build/styles/index.scss +1 -0
  43. package/build/styles/internal/_button-components.scss +141 -2
  44. package/build/styles/internal/_custom-elements.scss +1 -1
  45. package/build/styles/internal/_form-components.scss +5 -1
  46. package/build/styles/internal/_icon-passing.scss +23 -3
  47. package/build/styles/internal/_popover-component.scss +4 -4
  48. package/build/styles/relative.css +9 -9
  49. package/build/styles/rollup.css +9 -9
  50. package/build/styles/wc-workarounds.css +1 -1
  51. package/build/styles/webpack.css +9 -9
  52. package/package.json +9 -7
  53. package/build/assets/fallback-icon.svg +0 -3
  54. package/build/assets/fonts/OFL.txt +0 -93
  55. package/build/assets/fonts/OpenSans-Bold-EU.woff2 +0 -0
  56. package/build/assets/fonts/OpenSans-Bold.ttf +0 -0
  57. package/build/assets/fonts/OpenSans-ExtraBold-EU.woff2 +0 -0
  58. package/build/assets/fonts/OpenSans-ExtraBold.ttf +0 -0
  59. package/build/assets/fonts/OpenSans-Light-EU.woff2 +0 -0
  60. package/build/assets/fonts/OpenSans-Light.ttf +0 -0
  61. package/build/assets/fonts/OpenSans-Medium-EU.woff2 +0 -0
  62. package/build/assets/fonts/OpenSans-Medium.ttf +0 -0
  63. package/build/assets/fonts/OpenSans-Regular-EU.woff2 +0 -0
  64. package/build/assets/fonts/OpenSans-Regular.ttf +0 -0
  65. package/build/assets/fonts/OpenSans-SemiBold-EU.woff2 +0 -0
  66. package/build/assets/fonts/OpenSans-SemiBold.ttf +0 -0
  67. package/build/assets/fonts/README.md +0 -23
  68. package/build/assets/fonts/generate-eu-fonts.ts +0 -59
  69. package/build/assets/fonts/unicode-eu.txt +0 -15
  70. package/build/assets/icons/DB_LICENSE +0 -253
  71. package/build/assets/icons/LICENCES.json +0 -231
  72. package/build/assets/icons/arrow_down.svg +0 -1
  73. package/build/assets/icons/arrow_left.svg +0 -1
  74. package/build/assets/icons/arrow_right.svg +0 -1
  75. package/build/assets/icons/arrow_up.svg +0 -1
  76. package/build/assets/icons/arrow_up_right.svg +0 -1
  77. package/build/assets/icons/brand.svg +0 -1
  78. package/build/assets/icons/calendar.svg +0 -5
  79. package/build/assets/icons/chat.svg +0 -1
  80. package/build/assets/icons/check.svg +0 -1
  81. package/build/assets/icons/check_circle.svg +0 -1
  82. package/build/assets/icons/chevron_down.svg +0 -1
  83. package/build/assets/icons/chevron_left.svg +0 -1
  84. package/build/assets/icons/chevron_right.svg +0 -1
  85. package/build/assets/icons/chevron_up.svg +0 -1
  86. package/build/assets/icons/circle.svg +0 -1
  87. package/build/assets/icons/circle_small.svg +0 -1
  88. package/build/assets/icons/circular_arrows.svg +0 -1
  89. package/build/assets/icons/clock.svg +0 -1
  90. package/build/assets/icons/copy.svg +0 -1
  91. package/build/assets/icons/cross.svg +0 -1
  92. package/build/assets/icons/cross_circle.svg +0 -1
  93. package/build/assets/icons/double_chevron_down.svg +0 -1
  94. package/build/assets/icons/double_chevron_left.svg +0 -1
  95. package/build/assets/icons/double_chevron_right.svg +0 -1
  96. package/build/assets/icons/double_chevron_up.svg +0 -1
  97. package/build/assets/icons/exclamation_mark_circle.svg +0 -1
  98. package/build/assets/icons/exclamation_mark_triangle.svg +0 -1
  99. package/build/assets/icons/eye.svg +0 -1
  100. package/build/assets/icons/eye_disabled.svg +0 -1
  101. package/build/assets/icons/fonts/all/db-ux.woff2 +0 -0
  102. package/build/assets/icons/fonts/default/db-ux.woff2 +0 -0
  103. package/build/assets/icons/fonts/default_12/db-ux.woff2 +0 -0
  104. package/build/assets/icons/fonts/default_14/db-ux.woff2 +0 -0
  105. package/build/assets/icons/fonts/default_16/db-ux.woff2 +0 -0
  106. package/build/assets/icons/fonts/default_20/db-ux.woff2 +0 -0
  107. package/build/assets/icons/fonts/default_24/db-ux.woff2 +0 -0
  108. package/build/assets/icons/fonts/default_28/db-ux.woff2 +0 -0
  109. package/build/assets/icons/fonts/default_32/db-ux.woff2 +0 -0
  110. package/build/assets/icons/fonts/default_48/db-ux.woff2 +0 -0
  111. package/build/assets/icons/fonts/default_64/db-ux.woff2 +0 -0
  112. package/build/assets/icons/fonts/fallback/icon-font-fallback.woff2 +0 -0
  113. package/build/assets/icons/fonts/filled/db-ux.woff2 +0 -0
  114. package/build/assets/icons/fonts/filled_12/db-ux.woff2 +0 -0
  115. package/build/assets/icons/fonts/filled_14/db-ux.woff2 +0 -0
  116. package/build/assets/icons/fonts/filled_16/db-ux.woff2 +0 -0
  117. package/build/assets/icons/fonts/filled_20/db-ux.woff2 +0 -0
  118. package/build/assets/icons/fonts/filled_24/db-ux.woff2 +0 -0
  119. package/build/assets/icons/fonts/filled_28/db-ux.woff2 +0 -0
  120. package/build/assets/icons/fonts/filled_32/db-ux.woff2 +0 -0
  121. package/build/assets/icons/fonts/filled_48/db-ux.woff2 +0 -0
  122. package/build/assets/icons/fonts/filled_64/db-ux.woff2 +0 -0
  123. package/build/assets/icons/house.svg +0 -1
  124. package/build/assets/icons/information_circle.svg +0 -1
  125. package/build/assets/icons/magnifying_glass.svg +0 -1
  126. package/build/assets/icons/menu.svg +0 -1
  127. package/build/assets/icons/minus.svg +0 -1
  128. package/build/assets/icons/moon.svg +0 -1
  129. package/build/assets/icons/plus.svg +0 -1
  130. package/build/assets/icons/resize_handle_corner.svg +0 -1
  131. package/build/assets/icons/sun.svg +0 -1
  132. package/build/assets/icons/x_placeholder.svg +0 -1
@@ -101,10 +101,12 @@
101
101
 
102
102
  @keyframes popover-animation {
103
103
  0% {
104
+ pointer-events: none;
104
105
  opacity: 0;
105
106
  transform: translate(var(--db-popover-center-x, var(--db-popover-translate-x, 0%)), var(--db-popover-center-y, var(--db-popover-translate-y, 0%)));
106
107
  }
107
108
  100% {
109
+ pointer-events: auto;
108
110
  opacity: 1;
109
111
  transform: translate(var(--db-popover-center-x, 0%), var(--db-popover-center-y, 0%));
110
112
  }
@@ -134,6 +136,7 @@
134
136
  text-transform: none;
135
137
  overflow: clip;
136
138
  vertical-align: var(--db-icon-vertical-align, middle);
139
+ /* stylelint-disable-next-line db-ux/use-sizing */
137
140
  block-size: var(--db-icon-font-size, 1.5rem);
138
141
  aspect-ratio: 1;
139
142
  flex-shrink: 0;
@@ -207,34 +210,124 @@
207
210
  .db-navigation-item .db-navigation-item-expand-button > button:not([hidden]), .db-navigation-item a:not([hidden]) {
208
211
  display: inline-flex;
209
212
  }
210
- .db-navigation-item .db-navigation-item-expand-button:hover:not(:disabled, [aria-disabled=true]):is(button),
211
- .db-navigation-item .db-navigation-item-expand-button > button:hover:not(:disabled, [aria-disabled=true]), .db-navigation-item a:hover:not(:disabled, [aria-disabled=true]) {
213
+ .db-navigation-item .db-navigation-item-expand-button:hover:not(:disabled,
214
+ [aria-disabled=true],
215
+ [tabindex="-1"],
216
+ :has(:disabled)):is(button),
217
+ .db-navigation-item .db-navigation-item-expand-button > button:hover:not(:disabled,
218
+ [aria-disabled=true],
219
+ [tabindex="-1"],
220
+ :has(:disabled)), .db-navigation-item a:hover:not(:disabled,
221
+ [aria-disabled=true],
222
+ [tabindex="-1"],
223
+ :has(:disabled)) {
212
224
  cursor: var(--db-overwrite-cursor, pointer);
213
225
  background-color: var(--db-adaptive-bg-basic-transparent-full-hovered);
214
226
  }
215
- .db-navigation-item .db-navigation-item-expand-button:hover:not(:disabled, [aria-disabled=true]):is(textarea):is(button),
216
- .db-navigation-item .db-navigation-item-expand-button > button:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-navigation-item a:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-navigation-item .db-navigation-item-expand-button:hover:not(:disabled, [aria-disabled=true]):is(input):is(button),
217
- .db-navigation-item .db-navigation-item-expand-button > button:hover:not(:disabled, [aria-disabled=true]):is(input), .db-navigation-item a:hover:not(:disabled, [aria-disabled=true]):is(input) {
227
+ .db-navigation-item .db-navigation-item-expand-button:hover:not(:disabled,
228
+ [aria-disabled=true],
229
+ [tabindex="-1"],
230
+ :has(:disabled)):is(textarea):is(button),
231
+ .db-navigation-item .db-navigation-item-expand-button > button:hover:not(:disabled,
232
+ [aria-disabled=true],
233
+ [tabindex="-1"],
234
+ :has(:disabled)):is(textarea), .db-navigation-item a:hover:not(:disabled,
235
+ [aria-disabled=true],
236
+ [tabindex="-1"],
237
+ :has(:disabled)):is(textarea), .db-navigation-item .db-navigation-item-expand-button:hover:not(:disabled,
238
+ [aria-disabled=true],
239
+ [tabindex="-1"],
240
+ :has(:disabled)):is(input):is(button),
241
+ .db-navigation-item .db-navigation-item-expand-button > button:hover:not(:disabled,
242
+ [aria-disabled=true],
243
+ [tabindex="-1"],
244
+ :has(:disabled)):is(input), .db-navigation-item a:hover:not(:disabled,
245
+ [aria-disabled=true],
246
+ [tabindex="-1"],
247
+ :has(:disabled)):is(input) {
218
248
  cursor: initial;
219
249
  }
220
- .db-navigation-item .db-navigation-item-expand-button:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]):is(button),
221
- .db-navigation-item .db-navigation-item-expand-button > button:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-navigation-item a:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-navigation-item .db-navigation-item-expand-button:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)):is(button),
222
- .db-navigation-item .db-navigation-item-expand-button > button:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)), .db-navigation-item a:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
250
+ .db-navigation-item .db-navigation-item-expand-button:hover:not(:disabled,
251
+ [aria-disabled=true],
252
+ [tabindex="-1"],
253
+ :has(:disabled)):is(input[type=checkbox]):is(button),
254
+ .db-navigation-item .db-navigation-item-expand-button > button:hover:not(:disabled,
255
+ [aria-disabled=true],
256
+ [tabindex="-1"],
257
+ :has(:disabled)):is(input[type=checkbox]), .db-navigation-item a:hover:not(:disabled,
258
+ [aria-disabled=true],
259
+ [tabindex="-1"],
260
+ :has(:disabled)):is(input[type=checkbox]), .db-navigation-item .db-navigation-item-expand-button:hover:not(:disabled,
261
+ [aria-disabled=true],
262
+ [tabindex="-1"],
263
+ :has(:disabled)):is(input[type=radio]:not(:checked)):is(button),
264
+ .db-navigation-item .db-navigation-item-expand-button > button:hover:not(:disabled,
265
+ [aria-disabled=true],
266
+ [tabindex="-1"],
267
+ :has(:disabled)):is(input[type=radio]:not(:checked)), .db-navigation-item a:hover:not(:disabled,
268
+ [aria-disabled=true],
269
+ [tabindex="-1"],
270
+ :has(:disabled)):is(input[type=radio]:not(:checked)) {
223
271
  cursor: pointer;
224
272
  }
225
- .db-navigation-item .db-navigation-item-expand-button:active:not(:disabled, [aria-disabled=true]):is(button),
226
- .db-navigation-item .db-navigation-item-expand-button > button:active:not(:disabled, [aria-disabled=true]), .db-navigation-item a:active:not(:disabled, [aria-disabled=true]) {
273
+ .db-navigation-item .db-navigation-item-expand-button:active:not(:disabled,
274
+ [aria-disabled=true],
275
+ [tabindex="-1"],
276
+ :has(:disabled)):is(button),
277
+ .db-navigation-item .db-navigation-item-expand-button > button:active:not(:disabled,
278
+ [aria-disabled=true],
279
+ [tabindex="-1"],
280
+ :has(:disabled)), .db-navigation-item a:active:not(:disabled,
281
+ [aria-disabled=true],
282
+ [tabindex="-1"],
283
+ :has(:disabled)) {
227
284
  cursor: var(--db-overwrite-cursor, pointer);
228
285
  background-color: var(--db-adaptive-bg-basic-transparent-full-pressed);
229
286
  }
230
- .db-navigation-item .db-navigation-item-expand-button:active:not(:disabled, [aria-disabled=true]):is(textarea):is(button),
231
- .db-navigation-item .db-navigation-item-expand-button > button:active:not(:disabled, [aria-disabled=true]):is(textarea), .db-navigation-item a:active:not(:disabled, [aria-disabled=true]):is(textarea), .db-navigation-item .db-navigation-item-expand-button:active:not(:disabled, [aria-disabled=true]):is(input):is(button),
232
- .db-navigation-item .db-navigation-item-expand-button > button:active:not(:disabled, [aria-disabled=true]):is(input), .db-navigation-item a:active:not(:disabled, [aria-disabled=true]):is(input) {
287
+ .db-navigation-item .db-navigation-item-expand-button:active:not(:disabled,
288
+ [aria-disabled=true],
289
+ [tabindex="-1"],
290
+ :has(:disabled)):is(textarea):is(button),
291
+ .db-navigation-item .db-navigation-item-expand-button > button:active:not(:disabled,
292
+ [aria-disabled=true],
293
+ [tabindex="-1"],
294
+ :has(:disabled)):is(textarea), .db-navigation-item a:active:not(:disabled,
295
+ [aria-disabled=true],
296
+ [tabindex="-1"],
297
+ :has(:disabled)):is(textarea), .db-navigation-item .db-navigation-item-expand-button:active:not(:disabled,
298
+ [aria-disabled=true],
299
+ [tabindex="-1"],
300
+ :has(:disabled)):is(input):is(button),
301
+ .db-navigation-item .db-navigation-item-expand-button > button:active:not(:disabled,
302
+ [aria-disabled=true],
303
+ [tabindex="-1"],
304
+ :has(:disabled)):is(input), .db-navigation-item a:active:not(:disabled,
305
+ [aria-disabled=true],
306
+ [tabindex="-1"],
307
+ :has(:disabled)):is(input) {
233
308
  cursor: initial;
234
309
  }
235
- .db-navigation-item .db-navigation-item-expand-button:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]):is(button),
236
- .db-navigation-item .db-navigation-item-expand-button > button:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-navigation-item a:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-navigation-item .db-navigation-item-expand-button:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)):is(button),
237
- .db-navigation-item .db-navigation-item-expand-button > button:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)), .db-navigation-item a:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
310
+ .db-navigation-item .db-navigation-item-expand-button:active:not(:disabled,
311
+ [aria-disabled=true],
312
+ [tabindex="-1"],
313
+ :has(:disabled)):is(input[type=checkbox]):is(button),
314
+ .db-navigation-item .db-navigation-item-expand-button > button:active:not(:disabled,
315
+ [aria-disabled=true],
316
+ [tabindex="-1"],
317
+ :has(:disabled)):is(input[type=checkbox]), .db-navigation-item a:active:not(:disabled,
318
+ [aria-disabled=true],
319
+ [tabindex="-1"],
320
+ :has(:disabled)):is(input[type=checkbox]), .db-navigation-item .db-navigation-item-expand-button:active:not(:disabled,
321
+ [aria-disabled=true],
322
+ [tabindex="-1"],
323
+ :has(:disabled)):is(input[type=radio]:not(:checked)):is(button),
324
+ .db-navigation-item .db-navigation-item-expand-button > button:active:not(:disabled,
325
+ [aria-disabled=true],
326
+ [tabindex="-1"],
327
+ :has(:disabled)):is(input[type=radio]:not(:checked)), .db-navigation-item a:active:not(:disabled,
328
+ [aria-disabled=true],
329
+ [tabindex="-1"],
330
+ :has(:disabled)):is(input[type=radio]:not(:checked)) {
238
331
  cursor: pointer;
239
332
  }
240
333
  .db-navigation-item .db-navigation-item-expand-button:has(~ .db-sub-navigation:is(:hover, :focus)):is(button),
@@ -248,16 +341,14 @@
248
341
  inline-size: auto;
249
342
  /* stylelint-disable-next-line media-query-no-invalid */
250
343
  }
251
- .db-navigation-item[data-icon]:not([data-show-icon=false])::before {
344
+ .db-navigation-item[data-icon-leading]:not([data-show-icon-leading=false])::before, .db-navigation-item[data-icon]:not([data-show-icon=false])::before {
252
345
  position: absolute;
253
346
  inset-block-start: calc(50% - 0.5em);
254
347
  inset-inline-start: var(--db-spacing-fixed-sm);
255
348
  pointer-events: none;
256
349
  z-index: 1;
257
350
  }
258
- .db-navigation-item[data-icon]:not([data-show-icon=false]) a,
259
- .db-navigation-item[data-icon]:not([data-show-icon=false]) button,
260
- .db-navigation-item[data-icon]:not([data-show-icon=false]) label {
351
+ .db-navigation-item[data-icon-leading]:not([data-show-icon-leading=false]) label, .db-navigation-item[data-icon-leading]:not([data-show-icon-leading=false]) button, .db-navigation-item[data-icon-leading]:not([data-show-icon-leading=false]) a, .db-navigation-item[data-icon]:not([data-show-icon=false]) label, .db-navigation-item[data-icon]:not([data-show-icon=false]) button, .db-navigation-item[data-icon]:not([data-show-icon=false]) a {
261
352
  --db-padding-inline-start: calc(
262
353
  var(--db-spacing-fixed-sm) + var(--db-icon-margin-end, var(--db-spacing-fixed-xs)) +
263
354
  var(--db-icon-font-size)
@@ -409,7 +500,7 @@
409
500
  box-shadow: var(--db-elevation-md);
410
501
  padding: var(--db-spacing-fixed-sm);
411
502
  position: absolute;
412
- min-inline-size: 328px;
503
+ min-inline-size: var(--db-container-xs);
413
504
  inset-block-start: calc(100% + var(--db-spacing-fixed-md));
414
505
  transition: visibility 1ms linear;
415
506
  }
@@ -456,6 +547,7 @@
456
547
  inset-block-start: 0;
457
548
  inset-inline-start: 0;
458
549
  block-size: 100%;
550
+ /* stylelint-disable-next-line db-ux/use-sizing */
459
551
  inline-size: var(--db-navigation-item-inline-size, 100%);
460
552
  background: transparent;
461
553
  transform: translateX(-100%);
@@ -218,7 +218,7 @@
218
218
  box-shadow: variables.$db-elevation-md;
219
219
  padding: variables.$db-spacing-fixed-sm;
220
220
  position: absolute;
221
- min-inline-size: 328px; // We should get this value from UX
221
+ min-inline-size: variables.$db-container-xs;
222
222
  inset-block-start: calc(100% + #{variables.$db-spacing-fixed-md});
223
223
  transition: visibility 1ms linear; // workaround to enable focus with keyboard
224
224
 
@@ -290,6 +290,7 @@
290
290
  inset-block-start: 0;
291
291
  inset-inline-start: 0;
292
292
  block-size: 100%;
293
+ /* stylelint-disable-next-line db-ux/use-sizing */
293
294
  inline-size: var(--db-navigation-item-inline-size, 100%);
294
295
  background: transparent;
295
296
  transform: translateX(-100%);
@@ -909,6 +909,7 @@
909
909
  text-transform: none;
910
910
  overflow: clip;
911
911
  vertical-align: var(--db-icon-vertical-align, middle);
912
+ /* stylelint-disable-next-line db-ux/use-sizing */
912
913
  block-size: var(--db-icon-font-size, 1.5rem);
913
914
  aspect-ratio: 1;
914
915
  flex-shrink: 0;
@@ -945,10 +946,12 @@
945
946
 
946
947
  @keyframes popover-animation {
947
948
  0% {
949
+ pointer-events: none;
948
950
  opacity: 0;
949
951
  transform: translate(var(--db-popover-center-x, var(--db-popover-translate-x, 0%)), var(--db-popover-center-y, var(--db-popover-translate-y, 0%)));
950
952
  }
951
953
  100% {
954
+ pointer-events: auto;
952
955
  opacity: 1;
953
956
  transform: translate(var(--db-popover-center-x, 0%), var(--db-popover-center-y, 0%));
954
957
  }
@@ -969,24 +972,54 @@
969
972
  color: var(--db-adaptive-on-bg-basic-emphasis-100-default);
970
973
  /* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
971
974
  }
972
- .db-notification a:hover:not(:disabled, [aria-disabled=true]) {
975
+ .db-notification a:hover:not(:disabled,
976
+ [aria-disabled=true],
977
+ [tabindex="-1"],
978
+ :has(:disabled)) {
973
979
  cursor: var(--db-overwrite-cursor, pointer);
974
980
  color: color-mix(in srgb, transparent 25%, var(--db-adaptive-on-bg-basic-emphasis-100-default));
975
981
  }
976
- .db-notification a:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-notification a:hover:not(:disabled, [aria-disabled=true]):is(input) {
982
+ .db-notification a:hover:not(:disabled,
983
+ [aria-disabled=true],
984
+ [tabindex="-1"],
985
+ :has(:disabled)):is(textarea), .db-notification a:hover:not(:disabled,
986
+ [aria-disabled=true],
987
+ [tabindex="-1"],
988
+ :has(:disabled)):is(input) {
977
989
  cursor: initial;
978
990
  }
979
- .db-notification a:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-notification a:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
991
+ .db-notification a:hover:not(:disabled,
992
+ [aria-disabled=true],
993
+ [tabindex="-1"],
994
+ :has(:disabled)):is(input[type=checkbox]), .db-notification a:hover:not(:disabled,
995
+ [aria-disabled=true],
996
+ [tabindex="-1"],
997
+ :has(:disabled)):is(input[type=radio]:not(:checked)) {
980
998
  cursor: pointer;
981
999
  }
982
- .db-notification a:active:not(:disabled, [aria-disabled=true]) {
1000
+ .db-notification a:active:not(:disabled,
1001
+ [aria-disabled=true],
1002
+ [tabindex="-1"],
1003
+ :has(:disabled)) {
983
1004
  cursor: var(--db-overwrite-cursor, pointer);
984
1005
  color: color-mix(in srgb, transparent 50%, var(--db-adaptive-on-bg-basic-emphasis-100-default));
985
1006
  }
986
- .db-notification a:active:not(:disabled, [aria-disabled=true]):is(textarea), .db-notification a:active:not(:disabled, [aria-disabled=true]):is(input) {
1007
+ .db-notification a:active:not(:disabled,
1008
+ [aria-disabled=true],
1009
+ [tabindex="-1"],
1010
+ :has(:disabled)):is(textarea), .db-notification a:active:not(:disabled,
1011
+ [aria-disabled=true],
1012
+ [tabindex="-1"],
1013
+ :has(:disabled)):is(input) {
987
1014
  cursor: initial;
988
1015
  }
989
- .db-notification a:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-notification a:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
1016
+ .db-notification a:active:not(:disabled,
1017
+ [aria-disabled=true],
1018
+ [tabindex="-1"],
1019
+ :has(:disabled)):is(input[type=checkbox]), .db-notification a:active:not(:disabled,
1020
+ [aria-disabled=true],
1021
+ [tabindex="-1"],
1022
+ :has(:disabled)):is(input[type=radio]:not(:checked)) {
990
1023
  cursor: pointer;
991
1024
  }
992
1025
 
@@ -35,10 +35,12 @@
35
35
 
36
36
  @keyframes popover-animation {
37
37
  0% {
38
+ pointer-events: none;
38
39
  opacity: 0;
39
40
  transform: translate(var(--db-popover-center-x, var(--db-popover-translate-x, 0%)), var(--db-popover-center-y, var(--db-popover-translate-y, 0%)));
40
41
  }
41
42
  100% {
43
+ pointer-events: auto;
42
44
  opacity: 1;
43
45
  transform: translate(var(--db-popover-center-x, 0%), var(--db-popover-center-y, 0%));
44
46
  }
@@ -377,6 +377,7 @@
377
377
  text-transform: none;
378
378
  overflow: clip;
379
379
  vertical-align: var(--db-icon-vertical-align, middle);
380
+ /* stylelint-disable-next-line db-ux/use-sizing */
380
381
  block-size: var(--db-icon-font-size, 1.5rem);
381
382
  aspect-ratio: 1;
382
383
  flex-shrink: 0;
@@ -860,14 +861,29 @@ input[type=radio]:checked) select:is([type=date],
860
861
  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));
861
862
  /* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
862
863
  }
863
- .db-select select:hover:not(:disabled, [aria-disabled=true]) {
864
+ .db-select select:hover:not(:disabled,
865
+ [aria-disabled=true],
866
+ [tabindex="-1"],
867
+ :has(:disabled)) {
864
868
  cursor: var(--db-overwrite-cursor, pointer);
865
869
  background-color: var(--db-adaptive-bg-basic-transparent-semi-hovered);
866
870
  }
867
- .db-select select:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-select select:hover:not(:disabled, [aria-disabled=true]):is(input) {
871
+ .db-select select:hover:not(:disabled,
872
+ [aria-disabled=true],
873
+ [tabindex="-1"],
874
+ :has(:disabled)):is(textarea), .db-select select:hover:not(:disabled,
875
+ [aria-disabled=true],
876
+ [tabindex="-1"],
877
+ :has(:disabled)):is(input) {
868
878
  cursor: initial;
869
879
  }
870
- .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)) {
880
+ .db-select select:hover:not(:disabled,
881
+ [aria-disabled=true],
882
+ [tabindex="-1"],
883
+ :has(:disabled)):is(input[type=checkbox]), .db-select select:hover:not(:disabled,
884
+ [aria-disabled=true],
885
+ [tabindex="-1"],
886
+ :has(:disabled)):is(input[type=radio]:not(:checked)) {
871
887
  cursor: pointer;
872
888
  }
873
889
  .db-select > label {
@@ -156,6 +156,7 @@
156
156
  text-transform: none;
157
157
  overflow: clip;
158
158
  vertical-align: var(--db-icon-vertical-align, middle);
159
+ /* stylelint-disable-next-line db-ux/use-sizing */
159
160
  block-size: var(--db-icon-font-size, 1.5rem);
160
161
  aspect-ratio: 1;
161
162
  flex-shrink: 0;
@@ -146,34 +146,76 @@
146
146
  .db-tab-item label:not([hidden]) {
147
147
  display: inline-block;
148
148
  }
149
- .db-tab-item label:hover:not(:disabled, [aria-disabled=true]) {
149
+ .db-tab-item label:hover:not(:disabled,
150
+ [aria-disabled=true],
151
+ [tabindex="-1"],
152
+ :has(:disabled)) {
150
153
  cursor: var(--db-overwrite-cursor, pointer);
151
154
  }
152
- .db-tab-item label:hover:not(:disabled, [aria-disabled=true]):has(:not(input:disabled)) {
155
+ .db-tab-item label:hover:not(:disabled,
156
+ [aria-disabled=true],
157
+ [tabindex="-1"],
158
+ :has(:disabled)):has(:not(input:disabled)) {
153
159
  background-color: var(--db-adaptive-bg-basic-transparent-full-hovered);
154
160
  }
155
- .db-tab-item label:hover:not(:disabled, [aria-disabled=true]):has(input:disabled) {
161
+ .db-tab-item label:hover:not(:disabled,
162
+ [aria-disabled=true],
163
+ [tabindex="-1"],
164
+ :has(:disabled)):has(input:disabled) {
156
165
  cursor: initial;
157
166
  }
158
- .db-tab-item label:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-tab-item label:hover:not(:disabled, [aria-disabled=true]):is(input) {
167
+ .db-tab-item label:hover:not(:disabled,
168
+ [aria-disabled=true],
169
+ [tabindex="-1"],
170
+ :has(:disabled)):is(textarea), .db-tab-item label:hover:not(:disabled,
171
+ [aria-disabled=true],
172
+ [tabindex="-1"],
173
+ :has(:disabled)):is(input) {
159
174
  cursor: initial;
160
175
  }
161
- .db-tab-item label:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-tab-item label:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
176
+ .db-tab-item label:hover:not(:disabled,
177
+ [aria-disabled=true],
178
+ [tabindex="-1"],
179
+ :has(:disabled)):is(input[type=checkbox]), .db-tab-item label:hover:not(:disabled,
180
+ [aria-disabled=true],
181
+ [tabindex="-1"],
182
+ :has(:disabled)):is(input[type=radio]:not(:checked)) {
162
183
  cursor: pointer;
163
184
  }
164
- .db-tab-item label:hover:not(:disabled, [aria-disabled=true]) {
185
+ .db-tab-item label:hover:not(:disabled,
186
+ [aria-disabled=true],
187
+ [tabindex="-1"],
188
+ :has(:disabled)) {
165
189
  cursor: var(--db-overwrite-cursor, pointer);
166
190
  }
167
- .db-tab-item label:hover:not(:disabled, [aria-disabled=true]):has(:not(input:disabled)) {
191
+ .db-tab-item label:hover:not(:disabled,
192
+ [aria-disabled=true],
193
+ [tabindex="-1"],
194
+ :has(:disabled)):has(:not(input:disabled)) {
168
195
  background-color: var(--db-adaptive-bg-basic-transparent-full-hovered);
169
196
  }
170
- .db-tab-item label:hover:not(:disabled, [aria-disabled=true]):has(input:disabled) {
197
+ .db-tab-item label:hover:not(:disabled,
198
+ [aria-disabled=true],
199
+ [tabindex="-1"],
200
+ :has(:disabled)):has(input:disabled) {
171
201
  cursor: initial;
172
202
  }
173
- .db-tab-item label:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-tab-item label:hover:not(:disabled, [aria-disabled=true]):is(input) {
203
+ .db-tab-item label:hover:not(:disabled,
204
+ [aria-disabled=true],
205
+ [tabindex="-1"],
206
+ :has(:disabled)):is(textarea), .db-tab-item label:hover:not(:disabled,
207
+ [aria-disabled=true],
208
+ [tabindex="-1"],
209
+ :has(:disabled)):is(input) {
174
210
  cursor: initial;
175
211
  }
176
- .db-tab-item label:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-tab-item label:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
212
+ .db-tab-item label:hover:not(:disabled,
213
+ [aria-disabled=true],
214
+ [tabindex="-1"],
215
+ :has(:disabled)):is(input[type=checkbox]), .db-tab-item label:hover:not(:disabled,
216
+ [aria-disabled=true],
217
+ [tabindex="-1"],
218
+ :has(:disabled)):is(input[type=radio]:not(:checked)) {
177
219
  cursor: pointer;
178
220
  }
179
221
  .db-tab-item label:has(input:checked) {
@@ -58,10 +58,12 @@
58
58
 
59
59
  @keyframes popover-animation {
60
60
  0% {
61
+ pointer-events: none;
61
62
  opacity: 0;
62
63
  transform: translate(var(--db-popover-center-x, var(--db-popover-translate-x, 0%)), var(--db-popover-center-y, var(--db-popover-translate-y, 0%)));
63
64
  }
64
65
  100% {
66
+ pointer-events: auto;
65
67
  opacity: 1;
66
68
  transform: translate(var(--db-popover-center-x, 0%), var(--db-popover-center-y, 0%));
67
69
  }
@@ -335,7 +335,9 @@
335
335
  - min-inline-size: tab-list is not displayed narrower than defined
336
336
  - max-inline-size: tab-list is not displayed wider than defined
337
337
  */
338
+ /* stylelint-disable-next-line db-ux/use-sizing */
338
339
  min-inline-size: var(--db-tab-list-vertical-width, var(--db-sizing-3xl));
340
+ /* stylelint-disable-next-line db-ux/use-sizing */
339
341
  max-inline-size: var(--db-tab-list-vertical-width, var(--db-sizing-3xl));
340
342
  /* horizontal space to the tab panels */
341
343
  padding-inline-end: var(--db-spacing-fixed-xs);
@@ -191,7 +191,9 @@ $max-tabs: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
191
191
  - min-inline-size: tab-list is not displayed narrower than defined
192
192
  - max-inline-size: tab-list is not displayed wider than defined
193
193
  */
194
+ /* stylelint-disable-next-line db-ux/use-sizing */
194
195
  min-inline-size: $width;
196
+ /* stylelint-disable-next-line db-ux/use-sizing */
195
197
  max-inline-size: $width;
196
198
 
197
199
  /* horizontal space to the tab panels */