@db-ux/core-components 4.12.0 → 4.13.0-shell-f221975

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 (117) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/agent/Best-Practise_Common-AI-Mistakes.md +3 -3
  3. package/build/components/accordion/accordion.css +13 -6
  4. package/build/components/accordion-item/accordion-item.css +6 -11
  5. package/build/components/accordion-item/accordion-item.scss +4 -9
  6. package/build/components/badge/badge.css +1 -1
  7. package/build/components/badge/badge.scss +1 -1
  8. package/build/components/button/button.css +0 -8
  9. package/build/components/button/button.scss +0 -11
  10. package/build/components/checkbox/checkbox.css +6 -11
  11. package/build/components/checkbox/checkbox.scss +7 -0
  12. package/build/components/control-panel-brand/control-panel-brand.css +53 -0
  13. package/build/components/control-panel-brand/control-panel-brand.scss +48 -0
  14. package/build/components/control-panel-desktop/control-panel-desktop.css +579 -0
  15. package/build/components/control-panel-desktop/control-panel-desktop.scss +30 -0
  16. package/build/components/control-panel-flat-icon/control-panel-flat-icon.css +258 -0
  17. package/build/components/control-panel-flat-icon/control-panel-flat-icon.scss +239 -0
  18. package/build/components/control-panel-meta/control-panel-meta.css +14 -0
  19. package/build/components/control-panel-meta/control-panel-meta.scss +15 -0
  20. package/build/components/control-panel-mobile/control-panel-mobile.css +438 -0
  21. package/build/components/control-panel-mobile/control-panel-mobile.scss +116 -0
  22. package/build/components/control-panel-navigation/control-panel-navigation.css +390 -0
  23. package/build/components/control-panel-navigation/control-panel-navigation.scss +186 -0
  24. package/build/components/control-panel-navigation-item/control-panel-navigation-item.css +87 -0
  25. package/build/components/control-panel-navigation-item/control-panel-navigation-item.scss +39 -0
  26. package/build/components/control-panel-navigation-item-group/control-panel-navigation-item-group-menu-popover.css +21 -0
  27. package/build/components/control-panel-navigation-item-group/control-panel-navigation-item-group-menu-popover.scss +125 -0
  28. package/build/components/control-panel-navigation-item-group/control-panel-navigation-item-group-menu-tree.css +35 -0
  29. package/build/components/control-panel-navigation-item-group/control-panel-navigation-item-group-menu-tree.scss +36 -0
  30. package/build/components/control-panel-navigation-item-group/control-panel-navigation-item-group.css +158 -0
  31. package/build/components/control-panel-navigation-item-group/control-panel-navigation-item-group.scss +80 -0
  32. package/build/components/control-panel-primary-actions/control-panel-primary-actions.css +12 -0
  33. package/build/components/control-panel-primary-actions/control-panel-primary-actions.scss +7 -0
  34. package/build/components/control-panel-secondary-actions/control-panel-secondary-actions.css +12 -0
  35. package/build/components/control-panel-secondary-actions/control-panel-secondary-actions.scss +7 -0
  36. package/build/components/control-panel-skip-navigation/control-panel-skip-navigation.css +23 -0
  37. package/build/components/control-panel-skip-navigation/control-panel-skip-navigation.scss +25 -0
  38. package/build/components/custom-button/custom-button.css +11 -19
  39. package/build/components/custom-select/custom-select.css +17 -16
  40. package/build/components/custom-select/custom-select.scss +1 -1
  41. package/build/components/custom-select-dropdown/custom-select-dropdown.css +45 -26
  42. package/build/components/custom-select-dropdown/custom-select-dropdown.scss +9 -0
  43. package/build/components/custom-select-form-field/custom-select-form-field.css +6 -11
  44. package/build/components/custom-select-list/custom-select-list.css +6 -11
  45. package/build/components/custom-select-list-item/custom-select-list-item.css +29 -19
  46. package/build/components/custom-select-list-item/custom-select-list-item.scss +15 -9
  47. package/build/components/divider/divider.css +18 -8
  48. package/build/components/drawer/drawer.css +78 -156
  49. package/build/components/drawer/drawer.scss +124 -167
  50. package/build/components/drawer-footer/drawer-footer.css +34 -0
  51. package/build/components/drawer-footer/drawer-footer.scss +11 -0
  52. package/build/components/drawer-header/drawer-header.css +38 -0
  53. package/build/components/drawer-header/drawer-header.scss +17 -0
  54. package/build/components/input/input.css +6 -11
  55. package/build/components/link/link.css +7 -1
  56. package/build/components/notification/notification.css +7 -1
  57. package/build/components/radio/radio.css +6 -11
  58. package/build/components/radio/radio.scss +3 -0
  59. package/build/components/select/select.css +6 -11
  60. package/build/components/shell/shell-desktop.css +475 -0
  61. package/build/components/shell/shell-desktop.scss +105 -0
  62. package/build/components/shell/shell-mobile.css +441 -0
  63. package/build/components/shell/shell-mobile.scss +148 -0
  64. package/build/components/shell/shell.css +1670 -0
  65. package/build/components/shell/shell.scss +70 -0
  66. package/build/components/shell-content/shell-content.css +31 -0
  67. package/build/components/shell-content/shell-content.scss +49 -0
  68. package/build/components/shell-sub-navigation/shell-sub-navigation.css +51 -0
  69. package/build/components/shell-sub-navigation/shell-sub-navigation.scss +184 -0
  70. package/build/components/stack/stack-web-component.css +1 -0
  71. package/build/components/stack/stack.css +1 -0
  72. package/build/components/switch/switch.css +6 -11
  73. package/build/components/switch/switch.scss +7 -0
  74. package/build/components/tab-item/tab-item.css +6 -11
  75. package/build/components/tab-item/tab-item.scss +4 -10
  76. package/build/components/tab-list/tab-list.css +6 -11
  77. package/build/components/table/table.css +6 -11
  78. package/build/components/table-row/table-row.scss +3 -0
  79. package/build/components/tabs/tabs.css +55 -39
  80. package/build/components/tabs/tabs.scss +25 -70
  81. package/build/components/tag/tag.css +5 -10
  82. package/build/components/tag/tag.scss +1 -5
  83. package/build/components/textarea/textarea.css +6 -11
  84. package/build/styles/absolute.css +7 -7
  85. package/build/styles/bundle.css +7 -7
  86. package/build/styles/index.css +6 -6
  87. package/build/styles/index.scss +16 -5
  88. package/build/styles/internal/_button-components.scss +4 -9
  89. package/build/styles/internal/_component.scss +7 -0
  90. package/build/styles/internal/_control-panel-actions.scss +11 -0
  91. package/build/styles/internal/_control-panel-desktop.scss +412 -0
  92. package/build/styles/internal/_control-panel-mobile.scss +107 -0
  93. package/build/styles/internal/_custom-elements.scss +31 -7
  94. package/build/styles/internal/_form-components.scss +6 -0
  95. package/build/styles/internal/_icon-passing.scss +18 -10
  96. package/build/styles/internal/{_db-puls.scss → _indicator.scss} +37 -16
  97. package/build/styles/internal/_link-components.scss +7 -1
  98. package/build/styles/internal/_navigation-item.scss +122 -0
  99. package/build/styles/internal/_scrollbar.scss +71 -0
  100. package/build/styles/internal/_tag-components.scss +4 -10
  101. package/build/styles/relative.css +7 -7
  102. package/build/styles/rollup.css +7 -7
  103. package/build/styles/visually-hidden.css +1 -1
  104. package/build/styles/wc-workarounds.css +1 -1
  105. package/build/styles/wc-workarounds.scss +11 -0
  106. package/build/styles/webpack.css +7 -7
  107. package/package.json +6 -7
  108. package/build/components/brand/brand.css +0 -32
  109. package/build/components/brand/brand.scss +0 -35
  110. package/build/components/header/header.css +0 -700
  111. package/build/components/header/header.scss +0 -274
  112. package/build/components/navigation/navigation.css +0 -202
  113. package/build/components/navigation/navigation.scss +0 -108
  114. package/build/components/navigation-item/navigation-item.css +0 -447
  115. package/build/components/navigation-item/navigation-item.scss +0 -343
  116. package/build/components/page/page.css +0 -61
  117. package/build/components/page/page.scss +0 -61
@@ -0,0 +1,70 @@
1
+ @use "sass:string";
2
+ @use "@db-ux/core-foundations/build/styles/variables";
3
+ @use "@db-ux/core-foundations/build/styles/screen-sizes";
4
+ @use "@db-ux/core-foundations/build/styles/colors";
5
+ @use "@db-ux/core-foundations/build/styles/helpers";
6
+ @use "../../styles/internal/control-panel-desktop";
7
+ @use "../../styles/internal/control-panel-mobile";
8
+ @use "../../styles/internal/custom-elements";
9
+ @use "../../styles/internal/form-components";
10
+ @forward "shell-desktop";
11
+ @forward "shell-mobile";
12
+
13
+ %fade-in-loading-fonts {
14
+ &[data-fade-in="true"] {
15
+ opacity: 0;
16
+
17
+ &:not([data-fonts-loaded]),
18
+ &[data-fonts-loaded="true"] {
19
+ opacity: 1;
20
+ }
21
+
22
+ @media screen and (prefers-reduced-motion: no-preference) {
23
+ transition: opacity variables.$db-transition-straight-emotional;
24
+ }
25
+ }
26
+ }
27
+
28
+ // This global rule locks body scrolling when the shell has loaded fonts.
29
+ // On SSR pages, scrolling is possible until hydration sets data-fonts-loaded="true".
30
+ body:has(.db-shell[data-fonts-loaded="true"]) {
31
+ overflow: hidden;
32
+ }
33
+
34
+ .db-shell {
35
+ @extend %fade-in-loading-fonts;
36
+
37
+ block-size: 100lvh;
38
+ inline-size: 100lvw;
39
+ display: grid;
40
+
41
+ &[data-control-panel-desktop-position="left"] {
42
+ #{string.unquote(custom-elements.$control-panel-desktop)} {
43
+ @extend %control-panel-desktop-vertical-orientation;
44
+ }
45
+ }
46
+
47
+ &[data-control-panel-desktop-position="top"] {
48
+ #{string.unquote(custom-elements.$control-panel-desktop)} {
49
+ @extend %control-panel-desktop-horizontal-orientation;
50
+ }
51
+ }
52
+
53
+ &[data-control-panel-mobile-position="top"] {
54
+ #{string.unquote(custom-elements.$control-panel-mobile)} {
55
+ @extend %control-panel-mobile-position-top;
56
+ }
57
+ }
58
+
59
+ &[data-control-panel-mobile-position="bottom"] {
60
+ #{string.unquote(custom-elements.$control-panel-mobile)} {
61
+ @extend %control-panel-mobile-position-bottom;
62
+ }
63
+ }
64
+
65
+ &[data-show-sub-navigation="false"] {
66
+ #{string.unquote(custom-elements.$shell-sub-navigation)} {
67
+ display: none;
68
+ }
69
+ }
70
+ }
@@ -0,0 +1,31 @@
1
+ .db-shell-content[data-variant=fixed] .db-main, .db-shell-content:not([data-variant=fixed]) {
2
+ overflow-y: auto;
3
+ /* stylelint-disable-next-line db-ux/use-spacings */
4
+ padding-inline: env(safe-area-inset-left) env(safe-area-inset-right);
5
+ }
6
+
7
+ .db-shell-content {
8
+ grid-area: shell-content;
9
+ overflow-x: hidden;
10
+ display: flex;
11
+ flex-direction: column;
12
+ }
13
+ .db-shell-content[data-variant=fixed] {
14
+ overflow-y: hidden;
15
+ }
16
+ .db-shell-content[data-variant=fixed] .db-main {
17
+ flex: 1 1 0;
18
+ min-block-size: 0;
19
+ }
20
+ @media all and (display-mode: standalone) {
21
+ .db-shell-content[data-variant=fixed]:not(:has(.db-main + *)) .db-main {
22
+ /* stylelint-disable-next-line db-ux/use-spacings */
23
+ margin-block-end: env(safe-area-inset-bottom);
24
+ }
25
+ }
26
+ @media all and (display-mode: standalone) {
27
+ .db-shell-content:has(.db-main + *) .db-main + *:last-child {
28
+ /* stylelint-disable-next-line db-ux/use-spacings */
29
+ padding-block-end: env(safe-area-inset-bottom);
30
+ }
31
+ }
@@ -0,0 +1,49 @@
1
+ %shell-content-overflow {
2
+ overflow-y: auto;
3
+ /* stylelint-disable-next-line db-ux/use-spacings */
4
+ padding-inline: env(safe-area-inset-left) env(safe-area-inset-right);
5
+ }
6
+
7
+ .db-shell-content {
8
+ grid-area: shell-content;
9
+ overflow-x: hidden;
10
+ display: flex;
11
+ flex-direction: column;
12
+
13
+ &:not([data-variant="fixed"]) {
14
+ @extend %shell-content-overflow;
15
+ }
16
+
17
+ &[data-variant="fixed"] {
18
+ overflow-y: hidden;
19
+
20
+ .db-main {
21
+ @extend %shell-content-overflow;
22
+
23
+ flex: 1 1 0;
24
+ min-block-size: 0;
25
+ }
26
+
27
+ @media all and (display-mode: standalone) {
28
+ &:not(:has(.db-main + *)) {
29
+ .db-main {
30
+ // jscpd:ignore-start
31
+ /* stylelint-disable-next-line db-ux/use-spacings */
32
+ margin-block-end: env(safe-area-inset-bottom);
33
+
34
+ // jscpd:ignore-end
35
+ }
36
+ }
37
+ }
38
+ }
39
+
40
+ @media all and (display-mode: standalone) {
41
+ &:has(.db-main + *) {
42
+ // in this case there is some footer etc.
43
+ .db-main + *:last-child {
44
+ /* stylelint-disable-next-line db-ux/use-spacings */
45
+ padding-block-end: env(safe-area-inset-bottom);
46
+ }
47
+ }
48
+ }
49
+ }
@@ -0,0 +1,51 @@
1
+ .db-visually-hidden,
2
+ [data-visually-hidden=true] {
3
+ position: absolute !important;
4
+ inset-block-start: 0 !important;
5
+ inline-size: 1px !important;
6
+ block-size: 1px !important;
7
+ overflow: hidden !important;
8
+ clip: rect(0, 0, 0, 0) !important;
9
+ white-space: nowrap !important;
10
+ border: 0 !important;
11
+ padding: 0 !important;
12
+ pointer-events: none !important;
13
+ }
14
+
15
+ /* stylelint-disable-next-line scss/dollar-variable-colon-space-after */
16
+ /* stylelint-disable-next-line scss/dollar-variable-colon-space-after */
17
+ /* Variants for adaptive components like input, select, notification, ... */
18
+ /* Sub components for shell */
19
+ @keyframes popover-animation {
20
+ 0% {
21
+ pointer-events: none;
22
+ opacity: 0;
23
+ transform: translate(var(--db-popover-center-x, var(--db-popover-translate-x, 0%)), var(--db-popover-center-y, var(--db-popover-translate-y, 0%)));
24
+ }
25
+ 100% {
26
+ pointer-events: auto;
27
+ opacity: 1;
28
+ transform: translate(var(--db-popover-center-x, 0%), var(--db-popover-center-y, 0%));
29
+ }
30
+ }
31
+ @keyframes rotate {
32
+ 100% {
33
+ transform: rotate(1turn);
34
+ }
35
+ }
36
+ .db-shell-sub-navigation {
37
+ grid-area: sub-navigation;
38
+ overflow: hidden;
39
+ }
40
+ .db-shell-sub-navigation > .db-shell-sub-navigation-button {
41
+ grid-area: button;
42
+ display: flex;
43
+ }
44
+ @media screen and (prefers-reduced-motion: no-preference) {
45
+ .db-shell-sub-navigation > .db-shell-sub-navigation-button .db-button::before {
46
+ transition: transform var(--db-transition-straight-functional);
47
+ }
48
+ }
49
+ .db-shell-sub-navigation .db-control-panel-navigation {
50
+ grid-area: navigation;
51
+ }
@@ -0,0 +1,184 @@
1
+ @use "sass:string";
2
+ @use "@db-ux/core-foundations/build/styles/variables";
3
+ @use "@db-ux/core-foundations/build/styles/screen-sizes";
4
+ @use "@db-ux/core-foundations/build/styles/colors";
5
+ @use "@db-ux/core-foundations/build/styles/helpers";
6
+ @use "../../styles/internal/control-panel-desktop";
7
+ @use "../../styles/internal/custom-elements";
8
+ @use "../../styles/internal/form-components";
9
+
10
+ .db-shell-sub-navigation {
11
+ grid-area: sub-navigation;
12
+ overflow: hidden;
13
+
14
+ > .db-shell-sub-navigation-button {
15
+ grid-area: button;
16
+ display: flex;
17
+
18
+ @media screen and (prefers-reduced-motion: no-preference) {
19
+ .db-button::before {
20
+ transition: transform
21
+ #{variables.$db-transition-straight-functional};
22
+ }
23
+ }
24
+ }
25
+
26
+ .db-control-panel-navigation {
27
+ grid-area: navigation;
28
+ }
29
+ }
30
+
31
+ @mixin sub-navigation-top {
32
+ #{string.unquote(custom-elements.$shell-sub-navigation)} {
33
+ @include helpers.divider("bottom", after);
34
+
35
+ .db-control-panel-navigation {
36
+ --db-overflow-scroll-button-inset-inline-start: calc(
37
+ #{variables.$db-spacing-fixed-sm} / 2
38
+ );
39
+ --db-overflow-scroll-button-inset-block: #{variables.$db-spacing-fixed-sm};
40
+
41
+ display: grid;
42
+
43
+ @include control-panel-desktop.horizontal-navigation;
44
+
45
+ > menu {
46
+ /* workaround for showing correct scrolling and focus */
47
+ padding-inline: calc(#{variables.$db-spacing-fixed-sm} / 2);
48
+ margin-inline: calc(#{variables.$db-spacing-fixed-sm} / 2);
49
+ /* stylelint-disable-next-line db-ux/use-spacings */
50
+ padding-block: var(--db-overflow-scroll-button-inset-block);
51
+ }
52
+ }
53
+
54
+ > .db-shell-sub-navigation-button {
55
+ display: none;
56
+ }
57
+ }
58
+ }
59
+
60
+ @mixin sub-navigation-left {
61
+ #{string.unquote(custom-elements.$shell-sub-navigation)} {
62
+ display: grid;
63
+
64
+ @include helpers.divider("right", after);
65
+
66
+ .db-control-panel-navigation {
67
+ max-inline-size: screen-sizes.$db-breakpoint-xs;
68
+ padding: variables.$db-spacing-fixed-md;
69
+ }
70
+
71
+ /* jscpd:ignore-start */
72
+ &[data-open="false"] {
73
+ inline-size: auto;
74
+ /* stylelint-disable-next-line declaration-property-value-no-unknown */
75
+ inline-size: calc-size(auto, size);
76
+ grid-template-areas: "button";
77
+ grid-template-rows: [button] 1fr;
78
+
79
+ /* jscpd:ignore-end */
80
+
81
+ .db-control-panel-navigation {
82
+ display: none;
83
+ }
84
+
85
+ > .db-shell-sub-navigation-button {
86
+ justify-content: center;
87
+
88
+ .db-button {
89
+ block-size: 100%;
90
+ border-radius: 0;
91
+
92
+ &::before {
93
+ transform: form-components.$dropdown-icon-transform;
94
+ }
95
+ }
96
+ }
97
+ }
98
+
99
+ &[data-open="true"] {
100
+ grid-template-areas:
101
+ "navigation"
102
+ "button";
103
+ grid-template-rows:
104
+ [navigation] 1fr
105
+ [button] auto;
106
+
107
+ /// Sets the inline-size (width) of the sub-navigation
108
+ inline-size: var(
109
+ --db-shell-sub-navigation-inline-size,
110
+ #{variables.$db-container-xs}
111
+ );
112
+
113
+ .db-control-panel-navigation {
114
+ overflow: hidden auto;
115
+
116
+ @include control-panel-desktop.vertical-navigation(false);
117
+
118
+ > menu {
119
+ padding-inline: 0;
120
+ }
121
+ }
122
+
123
+ > .db-shell-sub-navigation-button {
124
+ padding-block: variables.$db-spacing-fixed-xs;
125
+ padding-inline: variables.$db-spacing-fixed-lg;
126
+ justify-content: flex-end;
127
+ margin-block-start: auto;
128
+
129
+ @include helpers.divider("top");
130
+ }
131
+ }
132
+ }
133
+ }
134
+
135
+ @mixin sub-navigation-mobile {
136
+ #{string.unquote(custom-elements.$shell-sub-navigation)} {
137
+ > .db-shell-sub-navigation-button {
138
+ display: none;
139
+ }
140
+
141
+ .db-control-panel-navigation-item-group {
142
+ // We don't allow complex sub-navigation in mobile
143
+ // Users should add a custom implementation for this scenario or
144
+ // They should use another mobile navigation
145
+ display: none !important;
146
+ }
147
+
148
+ .db-control-panel-navigation-item {
149
+ inline-size: fit-content;
150
+ white-space: nowrap;
151
+ }
152
+
153
+ .db-control-panel-navigation {
154
+ --db-overflow-scroll-button-inset-block: #{variables.$db-spacing-fixed-xs};
155
+ --db-overflow-scroll-button-inset-inline-start: 0;
156
+ --db-control-panel-sub-navigation-mobile: 1;
157
+
158
+ display: grid;
159
+
160
+ @include control-panel-desktop.horizontal-navigation(false);
161
+
162
+ > menu {
163
+ padding-block: variables.$db-spacing-fixed-xs;
164
+
165
+ /* workaround for showing correct scrolling and focus */
166
+ padding-inline-start: calc(
167
+ #{variables.$db-spacing-fixed-sm} / 2
168
+ );
169
+ margin-inline-start: calc(
170
+ #{variables.$db-spacing-fixed-sm} / 2
171
+ );
172
+ }
173
+
174
+ &[data-variant="tree"] {
175
+ // If a users passes tree, we hide the circle icon
176
+ .db-control-panel-navigation-item a {
177
+ &::before {
178
+ display: none;
179
+ }
180
+ }
181
+ }
182
+ }
183
+ }
184
+ }
@@ -1,6 +1,7 @@
1
1
  /* stylelint-disable-next-line scss/dollar-variable-colon-space-after */
2
2
  /* stylelint-disable-next-line scss/dollar-variable-colon-space-after */
3
3
  /* Variants for adaptive components like input, select, notification, ... */
4
+ /* Sub components for shell */
4
5
  .db-stack:not([hidden]) {
5
6
  display: flex;
6
7
  }
@@ -1,6 +1,7 @@
1
1
  /* stylelint-disable-next-line scss/dollar-variable-colon-space-after */
2
2
  /* stylelint-disable-next-line scss/dollar-variable-colon-space-after */
3
3
  /* Variants for adaptive components like input, select, notification, ... */
4
+ /* Sub components for shell */
4
5
  .db-stack:not([hidden]) {
5
6
  display: flex;
6
7
  }
@@ -4,19 +4,14 @@
4
4
  /* Variants for adaptive components like input, select, notification, ... */
5
5
  .db-visually-hidden,
6
6
  [data-visually-hidden=true] {
7
- clip: rect(0, 0, 0, 0) !important;
8
- overflow: hidden !important;
9
- white-space: nowrap !important;
10
- font-size: 0 !important;
11
- all: initial;
12
- inset-block-start: 0 !important;
13
- block-size: 1px !important;
14
7
  position: absolute !important;
8
+ inset-block-start: 0 !important;
15
9
  inline-size: 1px !important;
16
- border-width: 0 !important;
17
- border-style: initial !important;
18
- border-color: initial !important;
19
- border-image: initial !important;
10
+ block-size: 1px !important;
11
+ overflow: hidden !important;
12
+ clip: rect(0, 0, 0, 0) !important;
13
+ white-space: nowrap !important;
14
+ border: 0 !important;
20
15
  padding: 0 !important;
21
16
  pointer-events: none !important;
22
17
  }
@@ -47,6 +47,7 @@ $switch-inline-size: calc(2lh + #{$switch-fixed-padding});
47
47
  }
48
48
  }
49
49
 
50
+ // jscpd:ignore-start
50
51
  @include form-components.get-validity(check) {
51
52
  &:has(.db-infotext[data-semantic="successful"]) {
52
53
  @include form-components.get-validity-color-checkbox("valid");
@@ -57,6 +58,8 @@ $switch-inline-size: calc(2lh + #{$switch-fixed-padding});
57
58
  @include form-components.get-validity-color-checkbox("invalid");
58
59
  }
59
60
 
61
+ // jscpd:ignore-end
62
+
60
63
  input {
61
64
  --db-icon-margin-start: 0;
62
65
  --thumb-offset-x: #{$switch-fixed-padding};
@@ -131,6 +134,8 @@ $switch-inline-size: calc(2lh + #{$switch-fixed-padding});
131
134
  /* positioned at the end of the track: track length - 100% (thumb width) */
132
135
  &:checked {
133
136
  --thumb-offset-x: calc(100% + #{$switch-fixed-padding});
137
+
138
+ // jscpd:ignore-start
134
139
  --db-icon-color: var(--db-adaptive-on-bg-inverted-default);
135
140
  --db-adaptive-bg-basic-transparent-full-default: var(
136
141
  --db-adaptive-bg-inverted-contrast-max-default
@@ -142,6 +147,8 @@ $switch-inline-size: calc(2lh + #{$switch-fixed-padding});
142
147
  --db-adaptive-bg-inverted-contrast-max-pressed
143
148
  );
144
149
 
150
+ // jscpd:ignore-end
151
+
145
152
  &::after {
146
153
  --db-icon-color: #{colors.$db-adaptive-on-bg-inverted-default};
147
154
  }
@@ -3,19 +3,14 @@
3
3
  /* Variants for adaptive components like input, select, notification, ... */
4
4
  .db-visually-hidden,
5
5
  [data-visually-hidden=true] {
6
- clip: rect(0, 0, 0, 0) !important;
7
- overflow: hidden !important;
8
- white-space: nowrap !important;
9
- font-size: 0 !important;
10
- all: initial;
11
- inset-block-start: 0 !important;
12
- block-size: 1px !important;
13
6
  position: absolute !important;
7
+ inset-block-start: 0 !important;
14
8
  inline-size: 1px !important;
15
- border-width: 0 !important;
16
- border-style: initial !important;
17
- border-color: initial !important;
18
- border-image: initial !important;
9
+ block-size: 1px !important;
10
+ overflow: hidden !important;
11
+ clip: rect(0, 0, 0, 0) !important;
12
+ white-space: nowrap !important;
13
+ border: 0 !important;
19
14
  padding: 0 !important;
20
15
  pointer-events: none !important;
21
16
  }
@@ -3,7 +3,6 @@
3
3
  @use "@db-ux/core-foundations/build/styles/icons";
4
4
  @use "@db-ux/core-foundations/build/styles/helpers";
5
5
  @use "../../styles/internal/component";
6
- @use "../../styles/internal/db-puls";
7
6
  @use "../../styles/internal/form-components";
8
7
 
9
8
  $with-icon-padding-calc: calc(
@@ -40,15 +39,10 @@ $with-icon-padding-calc: calc(
40
39
  --db-overwrite-cursor: initial;
41
40
  }
42
41
 
43
- @include helpers.not-disabled {
44
- @include helpers.hover {
45
- background-color: colors.$db-adaptive-bg-basic-transparent-full-hovered;
46
- }
47
-
48
- @include helpers.active {
49
- background-color: colors.$db-adaptive-bg-basic-transparent-full-pressed;
50
- }
51
- }
42
+ @include helpers.interactive-bg(
43
+ colors.$db-adaptive-bg-basic-transparent-full-hovered,
44
+ colors.$db-adaptive-bg-basic-transparent-full-pressed
45
+ );
52
46
 
53
47
  &:has(input:checked) {
54
48
  font-weight: 700;
@@ -3,19 +3,14 @@
3
3
  /* Variants for adaptive components like input, select, notification, ... */
4
4
  .db-visually-hidden,
5
5
  [data-visually-hidden=true] {
6
- clip: rect(0, 0, 0, 0) !important;
7
- overflow: hidden !important;
8
- white-space: nowrap !important;
9
- font-size: 0 !important;
10
- all: initial;
11
- inset-block-start: 0 !important;
12
- block-size: 1px !important;
13
6
  position: absolute !important;
7
+ inset-block-start: 0 !important;
14
8
  inline-size: 1px !important;
15
- border-width: 0 !important;
16
- border-style: initial !important;
17
- border-color: initial !important;
18
- border-image: initial !important;
9
+ block-size: 1px !important;
10
+ overflow: hidden !important;
11
+ clip: rect(0, 0, 0, 0) !important;
12
+ white-space: nowrap !important;
13
+ border: 0 !important;
19
14
  padding: 0 !important;
20
15
  pointer-events: none !important;
21
16
  }
@@ -2,19 +2,14 @@
2
2
  /* stylelint-disable-next-line scss/dollar-variable-colon-space-after */
3
3
  /* Variants for adaptive components like input, select, notification, ... */
4
4
  .db-table:not([data-show-caption=true]) caption {
5
- clip: rect(0, 0, 0, 0) !important;
6
- overflow: hidden !important;
7
- white-space: nowrap !important;
8
- font-size: 0 !important;
9
- all: initial;
10
- inset-block-start: 0 !important;
11
- block-size: 1px !important;
12
5
  position: absolute !important;
6
+ inset-block-start: 0 !important;
13
7
  inline-size: 1px !important;
14
- border-width: 0 !important;
15
- border-style: initial !important;
16
- border-color: initial !important;
17
- border-image: initial !important;
8
+ block-size: 1px !important;
9
+ overflow: hidden !important;
10
+ clip: rect(0, 0, 0, 0) !important;
11
+ white-space: nowrap !important;
12
+ border: 0 !important;
18
13
  padding: 0 !important;
19
14
  pointer-events: none !important;
20
15
  }
@@ -68,6 +68,7 @@ $interactive-child: ":is(#{$interactive-row-action}:is(#{helpers.$interactive-el
68
68
  }
69
69
  }
70
70
 
71
+ // jscpd:ignore-start
71
72
  @include table-row-interactive-state {
72
73
  background-color: colors.$db-adaptive-bg-basic-level-2-hovered;
73
74
  }
@@ -76,6 +77,8 @@ $interactive-child: ":is(#{$interactive-row-action}:is(#{helpers.$interactive-el
76
77
  background-color: colors.$db-adaptive-bg-basic-level-2-pressed;
77
78
  }
78
79
 
80
+ // jscpd:ignore-end
81
+
79
82
  &:has(#{$interactive-child}:focus-visible) {
80
83
  &::after {
81
84
  @extend %focus-placeholder;