@db-ux/core-components 4.10.1 → 4.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +1 -1
  3. package/build/components/accordion-item/accordion-item.css +2 -0
  4. package/build/components/checkbox/checkbox.css +3 -1
  5. package/build/components/custom-button/custom-button.css +0 -5
  6. package/build/components/custom-select/custom-select.css +2 -0
  7. package/build/components/custom-select-list-item/custom-select-list-item.css +0 -5
  8. package/build/components/infotext/infotext.css +6 -1
  9. package/build/components/infotext/infotext.scss +3 -1
  10. package/build/components/input/input.css +2 -5
  11. package/build/components/link/link.css +6 -2
  12. package/build/components/navigation-item/navigation-item.css +2 -0
  13. package/build/components/notification/notification.css +6 -2
  14. package/build/components/radio/radio.css +1 -1
  15. package/build/components/select/select.css +2 -0
  16. package/build/components/switch/switch.css +3 -1
  17. package/build/components/tab-item/tab-item.css +0 -5
  18. package/build/components/tab-list/tab-list.css +4 -2
  19. package/build/components/table/table.css +591 -0
  20. package/build/components/table/table.scss +293 -0
  21. package/build/components/table-body/table-body.css +8 -0
  22. package/build/components/table-body/table-body.scss +5 -0
  23. package/build/components/table-caption/table-caption.css +3 -0
  24. package/build/components/table-caption/table-caption.scss +3 -0
  25. package/build/components/table-data-cell/table-data-cell.css +144 -0
  26. package/build/components/table-data-cell/table-data-cell.scss +5 -0
  27. package/build/components/table-footer/table-footer.css +8 -0
  28. package/build/components/table-footer/table-footer.scss +5 -0
  29. package/build/components/table-head/table-head.css +19 -0
  30. package/build/components/table-head/table-head.scss +17 -0
  31. package/build/components/table-header-cell/table-header-cell.css +148 -0
  32. package/build/components/table-header-cell/table-header-cell.scss +9 -0
  33. package/build/components/table-row/table-row.css +230 -0
  34. package/build/components/table-row/table-row.scss +116 -0
  35. package/build/components/tag/tag.css +6 -2
  36. package/build/components/textarea/textarea.css +4 -2
  37. package/build/styles/absolute.css +8 -8
  38. package/build/styles/bundle.css +8 -8
  39. package/build/styles/component-animations.css +1 -1
  40. package/build/styles/index.css +7 -7
  41. package/build/styles/index.scss +8 -0
  42. package/build/styles/internal/_custom-elements.scss +3 -1
  43. package/build/styles/internal/_form-components.scss +1 -1
  44. package/build/styles/internal/_table-components.scss +64 -0
  45. package/build/styles/relative.css +8 -8
  46. package/build/styles/rollup.css +8 -8
  47. package/build/styles/wc-workarounds.css +1 -1
  48. package/build/styles/webpack.css +8 -8
  49. package/package.json +7 -7
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # @db-ux/core-components
2
2
 
3
+ ## 4.11.0
4
+
5
+ ### Minor Changes
6
+
7
+ - feat: add DBTable, DBTableHead, DBTableBody, DBTableFooter, DBTableRow, DBTableHeaderCell, and DBTableDataCell components - [see commit f64b6e0](https://github.com/db-ux-design-system/core-web/commit/f64b6e0f4b36ea4987c1d9ac7a0328bf317cdcad)
8
+
9
+ ### Patch Changes
10
+
11
+ - fix: Remove unwanted whitespace characters from rendered output to prevent layout shifts - [see commit a0f23a4](https://github.com/db-ux-design-system/core-web/commit/a0f23a4a3e715414de3d045b59b88dc3ac28d5e7)
12
+
13
+ ## 4.10.2
14
+
15
+ _version bump_
16
+
3
17
  ## 4.10.1
4
18
 
5
19
  ### Patch Changes
package/README.md CHANGED
@@ -141,7 +141,7 @@ Contributions are very welcome, please refer to the [contribution guide](https:/
141
141
  ## Code of conduct
142
142
 
143
143
  We as members, contributors, and leaders pledge to make participation in our
144
- community a harassment-free experience for everyone – have a look at our [Contributor Covenant Code of Conduct](https://github.com/db-ux-design-system/core-web/blob/main/CODE-OF-CONDUCT.md).
144
+ community a harassment-free experience for everyone – have a look at our [Contributor Covenant Code of Conduct](https://github.com/db-ux-design-system/.github/blob/main/CODE-OF-CONDUCT.md).
145
145
 
146
146
  ## License
147
147
 
@@ -58,6 +58,8 @@
58
58
  vertical-align: var(--db-icon-vertical-align, middle);
59
59
  /* stylelint-disable-next-line db-ux/use-sizing */
60
60
  block-size: var(--db-icon-font-size, 1.5rem);
61
+ /* stylelint-disable-next-line db-ux/use-sizing */
62
+ inline-size: var(--db-icon-font-size, 1.5rem);
61
63
  aspect-ratio: 1;
62
64
  flex-shrink: 0;
63
65
  content: var(--db-icon, attr(data-icon));
@@ -41,6 +41,8 @@
41
41
  vertical-align: var(--db-icon-vertical-align, middle);
42
42
  /* stylelint-disable-next-line db-ux/use-sizing */
43
43
  block-size: var(--db-icon-font-size, 1.5rem);
44
+ /* stylelint-disable-next-line db-ux/use-sizing */
45
+ inline-size: var(--db-icon-font-size, 1.5rem);
44
46
  aspect-ratio: 1;
45
47
  flex-shrink: 0;
46
48
  content: var(--db-icon, attr(data-icon));
@@ -117,7 +119,6 @@
117
119
  .db-checkbox:is(label),
118
120
  .db-checkbox > label {
119
121
  align-items: flex-start;
120
- position: relative;
121
122
  color: var(--db-check-element-label-color, var(--db-adaptive-on-bg-basic-emphasis-100-default));
122
123
  }
123
124
  .db-checkbox input {
@@ -137,6 +138,7 @@
137
138
  }
138
139
  .db-checkbox[data-hide-label=true] {
139
140
  font-size: 0;
141
+ inline-size: fit-content;
140
142
  }
141
143
  .db-checkbox[data-hide-label=true] input {
142
144
  margin-inline-end: 0;
@@ -24,11 +24,6 @@
24
24
  outline-offset: var(--db-border-width-xs);
25
25
  box-shadow: 0 0 0 var(--db-border-width-xs) var(--db-focus-box-shadow-bg-color, transparent);
26
26
  }
27
- @media (prefers-reduced-motion: no-preference) {
28
- .db-custom-button:not([data-disable-focus=true]):has(input):focus-within {
29
- transition: outline var(--db-transition-duration-extra-fast), box-shadow var(--db-transition-duration-extra-fast);
30
- }
31
- }
32
27
  .db-custom-button:not([data-disable-focus=true]):not([type=radio], [role=switch]):has(input):focus-within {
33
28
  border-radius: var(--db-border-radius-xs);
34
29
  }
@@ -491,6 +491,8 @@
491
491
  vertical-align: var(--db-icon-vertical-align, middle);
492
492
  /* stylelint-disable-next-line db-ux/use-sizing */
493
493
  block-size: var(--db-icon-font-size, 1.5rem);
494
+ /* stylelint-disable-next-line db-ux/use-sizing */
495
+ inline-size: var(--db-icon-font-size, 1.5rem);
494
496
  aspect-ratio: 1;
495
497
  flex-shrink: 0;
496
498
  content: var(--db-icon, attr(data-icon));
@@ -25,11 +25,6 @@
25
25
  outline-offset: var(--db-border-width-xs);
26
26
  box-shadow: 0 0 0 var(--db-border-width-xs) var(--db-focus-box-shadow-bg-color, transparent);
27
27
  }
28
- @media (prefers-reduced-motion: no-preference) {
29
- .db-custom-select-list-item:not([data-disable-focus=true]):has(> label > input:focus-visible) {
30
- transition: outline var(--db-transition-duration-extra-fast), box-shadow var(--db-transition-duration-extra-fast);
31
- }
32
- }
33
28
  .db-custom-select-list-item:not([data-disable-focus=true]):not([type=radio], [role=switch]):has(> label > input:focus-visible) {
34
29
  border-radius: var(--db-border-radius-xs);
35
30
  }
@@ -36,6 +36,8 @@
36
36
  vertical-align: var(--db-icon-vertical-align, middle);
37
37
  /* stylelint-disable-next-line db-ux/use-sizing */
38
38
  block-size: var(--db-icon-font-size, 1.5rem);
39
+ /* stylelint-disable-next-line db-ux/use-sizing */
40
+ inline-size: var(--db-icon-font-size, 1.5rem);
39
41
  aspect-ratio: 1;
40
42
  flex-shrink: 0;
41
43
  content: var(--db-icon, attr(data-icon));
@@ -57,11 +59,14 @@
57
59
  }
58
60
 
59
61
  .db-infotext {
60
- --db-icon-margin-end: var(--db-spacing-fixed-2xs);
62
+ --db-icon-margin-end: 0;
61
63
  }
62
64
  .db-infotext:not([hidden]) {
63
65
  display: flex;
64
66
  }
67
+ .db-infotext {
68
+ gap: 0.5ch;
69
+ }
65
70
  .db-infotext:not([data-icon]) {
66
71
  --db-icon-font-family: var(
67
72
  --db-icon-filled-font-family,
@@ -6,11 +6,13 @@
6
6
  @use "@db-ux/core-foundations/build/styles/icons";
7
7
 
8
8
  .db-infotext {
9
- --db-icon-margin-end: #{variables.$db-spacing-fixed-2xs};
9
+ --db-icon-margin-end: 0;
10
10
 
11
11
  @extend %db-overwrite-font-size-sm;
12
12
  @include helpers.display(flex);
13
13
 
14
+ gap: calc(1ch / 2);
15
+
14
16
  @include icons.has-no-icon {
15
17
  @include icons.to-filled-icon;
16
18
  @include icons.set-icon("information_circle");
@@ -341,6 +341,8 @@
341
341
  vertical-align: var(--db-icon-vertical-align, middle);
342
342
  /* stylelint-disable-next-line db-ux/use-sizing */
343
343
  block-size: var(--db-icon-font-size, 1.5rem);
344
+ /* stylelint-disable-next-line db-ux/use-sizing */
345
+ inline-size: var(--db-icon-font-size, 1.5rem);
344
346
  aspect-ratio: 1;
345
347
  flex-shrink: 0;
346
348
  content: var(--db-icon, attr(data-icon));
@@ -912,11 +914,6 @@ input:focus-visible)::after {
912
914
  outline-offset: var(--db-border-width-xs);
913
915
  box-shadow: 0 0 0 var(--db-border-width-xs) var(--db-focus-box-shadow-bg-color, transparent);
914
916
  }
915
- @media (prefers-reduced-motion: no-preference) {
916
- .db-input input::-webkit-calendar-picker-indicator:focus-visible, .db-input input::-webkit-search-cancel-button:focus-visible {
917
- transition: outline var(--db-transition-duration-extra-fast), box-shadow var(--db-transition-duration-extra-fast);
918
- }
919
- }
920
917
  .db-input input::-webkit-search-cancel-button {
921
918
  appearance: none;
922
919
  position: absolute;
@@ -15,8 +15,10 @@
15
15
  --db-icon-font-size: var(--db-base-body-icon-font-size-sm);
16
16
  }
17
17
 
18
- .db-link {
19
- transition: outline var(--db-transition-duration-extra-fast), color var(--db-transition-straight-emotional);
18
+ @media (prefers-reduced-motion: no-preference) {
19
+ .db-link {
20
+ transition: outline var(--db-transition-duration-extra-fast), box-shadow var(--db-transition-duration-extra-fast), color var(--db-transition-straight-emotional);
21
+ }
20
22
  }
21
23
 
22
24
  @keyframes popover-animation {
@@ -57,6 +59,8 @@
57
59
  vertical-align: var(--db-icon-vertical-align, middle);
58
60
  /* stylelint-disable-next-line db-ux/use-sizing */
59
61
  block-size: var(--db-icon-font-size, 1.5rem);
62
+ /* stylelint-disable-next-line db-ux/use-sizing */
63
+ inline-size: var(--db-icon-font-size, 1.5rem);
60
64
  aspect-ratio: 1;
61
65
  flex-shrink: 0;
62
66
  content: var(--db-icon, attr(data-icon));
@@ -48,6 +48,8 @@
48
48
  vertical-align: var(--db-icon-vertical-align, middle);
49
49
  /* stylelint-disable-next-line db-ux/use-sizing */
50
50
  block-size: var(--db-icon-font-size, 1.5rem);
51
+ /* stylelint-disable-next-line db-ux/use-sizing */
52
+ inline-size: var(--db-icon-font-size, 1.5rem);
51
53
  aspect-ratio: 1;
52
54
  flex-shrink: 0;
53
55
  content: var(--db-icon, attr(data-icon));
@@ -786,6 +786,8 @@
786
786
  vertical-align: var(--db-icon-vertical-align, middle);
787
787
  /* stylelint-disable-next-line db-ux/use-sizing */
788
788
  block-size: var(--db-icon-font-size, 1.5rem);
789
+ /* stylelint-disable-next-line db-ux/use-sizing */
790
+ inline-size: var(--db-icon-font-size, 1.5rem);
789
791
  aspect-ratio: 1;
790
792
  flex-shrink: 0;
791
793
  content: var(--db-icon, attr(data-icon));
@@ -815,8 +817,10 @@
815
817
  border-radius: var(--default-card-border-radius, var(--db-border-radius-sm));
816
818
  }
817
819
 
818
- .db-notification a {
819
- transition: outline var(--db-transition-duration-extra-fast), color var(--db-transition-straight-emotional);
820
+ @media (prefers-reduced-motion: no-preference) {
821
+ .db-notification a {
822
+ transition: outline var(--db-transition-duration-extra-fast), box-shadow var(--db-transition-duration-extra-fast), color var(--db-transition-straight-emotional);
823
+ }
820
824
  }
821
825
 
822
826
  @keyframes popover-animation {
@@ -58,7 +58,6 @@
58
58
  .db-radio:is(label),
59
59
  .db-radio > label {
60
60
  align-items: flex-start;
61
- position: relative;
62
61
  color: var(--db-check-element-label-color, var(--db-adaptive-on-bg-basic-emphasis-100-default));
63
62
  }
64
63
  .db-radio input {
@@ -78,6 +77,7 @@
78
77
  }
79
78
  .db-radio[data-hide-label=true] {
80
79
  font-size: 0;
80
+ inline-size: fit-content;
81
81
  }
82
82
  .db-radio[data-hide-label=true] input {
83
83
  margin-inline-end: 0;
@@ -341,6 +341,8 @@
341
341
  vertical-align: var(--db-icon-vertical-align, middle);
342
342
  /* stylelint-disable-next-line db-ux/use-sizing */
343
343
  block-size: var(--db-icon-font-size, 1.5rem);
344
+ /* stylelint-disable-next-line db-ux/use-sizing */
345
+ inline-size: var(--db-icon-font-size, 1.5rem);
344
346
  aspect-ratio: 1;
345
347
  flex-shrink: 0;
346
348
  content: var(--db-icon, attr(data-icon));
@@ -63,6 +63,8 @@
63
63
  vertical-align: var(--db-icon-vertical-align, middle);
64
64
  /* stylelint-disable-next-line db-ux/use-sizing */
65
65
  block-size: var(--db-icon-font-size, 1.5rem);
66
+ /* stylelint-disable-next-line db-ux/use-sizing */
67
+ inline-size: var(--db-icon-font-size, 1.5rem);
66
68
  aspect-ratio: 1;
67
69
  flex-shrink: 0;
68
70
  content: var(--db-icon, attr(data-icon));
@@ -128,7 +130,6 @@
128
130
  .db-switch:is(label),
129
131
  .db-switch > label {
130
132
  align-items: flex-start;
131
- position: relative;
132
133
  color: var(--db-check-element-label-color, var(--db-adaptive-on-bg-basic-emphasis-100-default));
133
134
  }
134
135
  .db-switch input {
@@ -148,6 +149,7 @@
148
149
  }
149
150
  .db-switch[data-hide-label=true] {
150
151
  font-size: 0;
152
+ inline-size: fit-content;
151
153
  }
152
154
  .db-switch[data-hide-label=true] input {
153
155
  margin-inline-end: 0;
@@ -25,11 +25,6 @@
25
25
  outline-offset: var(--db-border-width-xs);
26
26
  box-shadow: 0 0 0 var(--db-border-width-xs) var(--db-focus-box-shadow-bg-color, transparent);
27
27
  }
28
- @media (prefers-reduced-motion: no-preference) {
29
- .db-tab-item input:not([data-disable-focus=true]):focus-visible::before {
30
- transition: outline var(--db-transition-duration-extra-fast), box-shadow var(--db-transition-duration-extra-fast);
31
- }
32
- }
33
28
  .db-tab-item input:not([data-disable-focus=true]):not([type=radio], [role=switch]):focus-visible::before {
34
29
  border-radius: var(--db-border-radius-xs);
35
30
  }
@@ -20,8 +20,10 @@
20
20
  pointer-events: none !important;
21
21
  }
22
22
 
23
- .db-tab-list > ul::-webkit-scrollbar, .db-tab-list > ul::-webkit-scrollbar-corner {
24
- transition: outline var(--db-transition-duration-extra-fast), border-color var(--db-transition-straight-emotional), background-color var(--db-transition-straight-emotional);
23
+ @media (prefers-reduced-motion: no-preference) {
24
+ .db-tab-list > ul::-webkit-scrollbar, .db-tab-list > ul::-webkit-scrollbar-corner {
25
+ transition: outline var(--db-transition-duration-extra-fast), box-shadow var(--db-transition-duration-extra-fast), border-color var(--db-transition-straight-emotional), background-color var(--db-transition-straight-emotional);
26
+ }
25
27
  }
26
28
 
27
29
  @keyframes popover-animation {