@db-ux/core-components 3.0.2-copilot2-e7bf98b → 3.0.2-shell2-badc28f
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/build/assets/icons/LICENCES.json +24 -0
- package/build/assets/icons/double_chevron_left.svg +1 -0
- package/build/assets/icons/double_chevron_right.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/assets/icons/house.svg +1 -0
- package/build/assets/icons/intermediary_stop.svg +1 -0
- package/build/components/accordion/accordion.css +5 -5
- package/build/components/button/button.scss +1 -1
- package/build/components/{brand/brand.css → control-panel-brand/control-panel-brand.css} +12 -6
- package/build/components/{brand/brand.scss → control-panel-brand/control-panel-brand.scss} +10 -1
- package/build/components/control-panel-desktop/control-panel-desktop.css +791 -0
- package/build/components/control-panel-desktop/control-panel-desktop.scss +29 -0
- package/build/components/control-panel-flat-icon-navigation/control-panel-flat-icon-navigation.css +192 -0
- package/build/components/control-panel-flat-icon-navigation/control-panel-flat-icon-navigation.scss +84 -0
- package/build/components/control-panel-meta-navigation/control-panel-meta-navigation.css +54 -0
- package/build/components/control-panel-meta-navigation/control-panel-meta-navigation.scss +12 -0
- package/build/components/control-panel-mobile/control-panel-mobile.css +716 -0
- package/build/components/control-panel-mobile/control-panel-mobile.scss +125 -0
- package/build/components/control-panel-primary-actions/control-panel-primary-actions.css +16 -0
- package/build/components/control-panel-primary-actions/control-panel-primary-actions.scss +8 -0
- package/build/components/control-panel-secondary-actions/control-panel-secondary-actions.css +16 -0
- package/build/components/control-panel-secondary-actions/control-panel-secondary-actions.scss +8 -0
- package/build/components/custom-select/custom-select.css +4 -4
- package/build/components/custom-select-dropdown/custom-select-dropdown.css +12 -12
- package/build/components/custom-select-list-item/custom-select-list-item.css +6 -6
- package/build/components/divider/divider.css +6 -6
- package/build/components/drawer/drawer.css +6 -5
- package/build/components/drawer/drawer.scss +6 -26
- package/build/components/navigation/navigation.css +394 -123
- package/build/components/navigation/navigation.scss +155 -72
- package/build/components/navigation-item/navigation-item.css +35 -418
- package/build/components/navigation-item/navigation-item.scss +8 -310
- package/build/components/navigation-item-group/navigation-item-group-menu-popover.css +189 -0
- package/build/components/navigation-item-group/navigation-item-group-menu-popover.scss +105 -0
- package/build/components/navigation-item-group/navigation-item-group-menu-tree.css +208 -0
- package/build/components/navigation-item-group/navigation-item-group-menu-tree.scss +40 -0
- package/build/components/navigation-item-group/navigation-item-group.css +432 -0
- package/build/components/navigation-item-group/navigation-item-group.scss +69 -0
- package/build/components/shell/shell-desktop.css +548 -0
- package/build/components/shell/shell-desktop.scss +187 -0
- package/build/components/shell/shell-mobile.css +633 -0
- package/build/components/shell/shell-mobile.scss +107 -0
- package/build/components/shell/shell.css +1876 -0
- package/build/components/shell/shell.scss +84 -0
- package/build/components/shell-sub-navigation/shell-sub-navigation.css +11 -0
- package/build/components/shell-sub-navigation/shell-sub-navigation.scss +15 -0
- package/build/components/stack/stack-web-component.css +1 -0
- package/build/components/stack/stack.css +1 -0
- package/build/components/tab-item/tab-item.scss +0 -1
- package/build/components/tab-list/tab-list.css +1 -1
- package/build/components/tabs/tabs.css +106 -23
- package/build/components/tabs/tabs.scss +25 -70
- package/build/components/tag/tag.css +5 -11
- package/build/components/tag/tag.scss +1 -5
- package/build/components/textarea/textarea.css +1 -1
- package/build/styles/absolute.css +6 -6
- package/build/styles/component-animations.css +1 -1
- package/build/styles/index.css +5 -5
- package/build/styles/index.scss +11 -3
- package/build/styles/internal/_control-panel-desktop.scss +455 -0
- package/build/styles/internal/_control-panel-mobile.scss +130 -0
- package/build/styles/internal/_custom-elements.scss +22 -4
- package/build/styles/internal/_icon-passing.scss +19 -9
- package/build/styles/internal/{_db-puls.scss → _indicator.scss} +37 -16
- package/build/styles/internal/_navigation-item.scss +122 -0
- package/build/styles/internal/_scrollbar.scss +71 -0
- package/build/styles/relative.css +6 -6
- package/build/styles/rollup.css +6 -6
- package/build/styles/wc-workarounds.css +1 -1
- package/build/styles/wc-workarounds.scss +11 -0
- package/build/styles/webpack.css +6 -6
- package/package.json +3 -7
- package/agent/_instructions.md +0 -9
- package/build/components/header/header.css +0 -759
- package/build/components/header/header.scss +0 -259
- package/build/components/page/page.css +0 -52
- package/build/components/page/page.scss +0 -52
|
@@ -0,0 +1,84 @@
|
|
|
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
|
+
|
|
11
|
+
@forward "shell-desktop";
|
|
12
|
+
@forward "shell-mobile";
|
|
13
|
+
|
|
14
|
+
%fade-in-loading-fonts {
|
|
15
|
+
&[data-fade-in="true"] {
|
|
16
|
+
opacity: 0;
|
|
17
|
+
|
|
18
|
+
&:not([data-fonts-loaded]),
|
|
19
|
+
&[data-fonts-loaded="true"] {
|
|
20
|
+
opacity: 1;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
@media screen and (prefers-reduced-motion: no-preference) {
|
|
24
|
+
transition: opacity variables.$db-transition-straight-emotional;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
body {
|
|
30
|
+
overflow: hidden;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.db-shell {
|
|
34
|
+
@extend %fade-in-loading-fonts;
|
|
35
|
+
|
|
36
|
+
block-size: 100vh;
|
|
37
|
+
inline-size: 100vw;
|
|
38
|
+
display: grid;
|
|
39
|
+
|
|
40
|
+
> main {
|
|
41
|
+
grid-area: main;
|
|
42
|
+
overflow-y: auto;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
> main,
|
|
46
|
+
> header {
|
|
47
|
+
max-inline-size: 100vw;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
#{string.unquote(custom-elements.$control-panel-desktop)},
|
|
51
|
+
#{string.unquote(custom-elements.$control-panel-mobile)} {
|
|
52
|
+
grid-area: control-panel;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
&[data-control-panel-desktop-position="left"] {
|
|
56
|
+
#{string.unquote(custom-elements.$control-panel-desktop)} {
|
|
57
|
+
@extend %control-panel-desktop-vertical-orientation;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
&[data-control-panel-desktop-position="top"] {
|
|
62
|
+
#{string.unquote(custom-elements.$control-panel-desktop)} {
|
|
63
|
+
@extend %control-panel-desktop-horizontal-orientation;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
&[data-control-panel-mobile-position="top"] {
|
|
68
|
+
#{string.unquote(custom-elements.$control-panel-mobile)} {
|
|
69
|
+
@extend %control-panel-mobile-position-top;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
&[data-control-panel-mobile-position="bottom"] {
|
|
74
|
+
#{string.unquote(custom-elements.$control-panel-mobile)} {
|
|
75
|
+
@extend %control-panel-mobile-position-bottom;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
&[data-show-sub-navigation="false"] {
|
|
80
|
+
#{string.unquote(custom-elements.$shell-sub-navigation)} {
|
|
81
|
+
display: none;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/* Sub components for shell */
|
|
2
|
+
.db-shell-sub-navigation {
|
|
3
|
+
grid-area: sub-navigation;
|
|
4
|
+
overflow: hidden;
|
|
5
|
+
}
|
|
6
|
+
.db-shell-sub-navigation > .db-shell-sub-navigation-button {
|
|
7
|
+
grid-area: button;
|
|
8
|
+
}
|
|
9
|
+
.db-shell-sub-navigation .db-navigation {
|
|
10
|
+
grid-area: navigation;
|
|
11
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
@use "sass:string";
|
|
2
|
+
@use "../../styles/internal/custom-elements";
|
|
3
|
+
|
|
4
|
+
.db-shell-sub-navigation {
|
|
5
|
+
grid-area: sub-navigation;
|
|
6
|
+
overflow: hidden;
|
|
7
|
+
|
|
8
|
+
> .db-shell-sub-navigation-button {
|
|
9
|
+
grid-area: button;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.db-navigation {
|
|
13
|
+
grid-area: navigation;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -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(
|
|
@@ -63,7 +63,7 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
63
63
|
@layer variables {}
|
|
64
64
|
|
|
65
65
|
.db-tab-list > ul::-webkit-scrollbar, .db-tab-list > ul::-webkit-scrollbar-corner {
|
|
66
|
-
transition: outline var(--db-transition-duration-extra-fast),
|
|
66
|
+
transition: outline var(--db-transition-duration-extra-fast), background-color var(--db-transition-straight-emotional);
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
@keyframes show-right-to-left {
|
|
@@ -130,6 +130,7 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
130
130
|
content: "";
|
|
131
131
|
position: absolute;
|
|
132
132
|
border-radius: var(--db-border-radius-xs);
|
|
133
|
+
background: linear-gradient(135deg, var(--db-pride-red, var(--db-brand-on-bg-basic-emphasis-70-default)) 16.7%, var(--db-pride-orange, var(--db-brand-on-bg-basic-emphasis-70-default)) 0, var(--db-pride-orange, var(--db-brand-on-bg-basic-emphasis-70-default)) 33.4%, var(--db-pride-yellow, var(--db-brand-on-bg-basic-emphasis-70-default)) 0, var(--db-pride-yellow, var(--db-brand-on-bg-basic-emphasis-70-default)) 50.1%, var(--db-pride-green, var(--db-brand-on-bg-basic-emphasis-70-default)) 0, var(--db-pride-green, var(--db-brand-on-bg-basic-emphasis-70-default)) 66.8%, var(--db-pride-blue, var(--db-brand-on-bg-basic-emphasis-70-default)) 0, var(--db-pride-blue, var(--db-brand-on-bg-basic-emphasis-70-default)) 83.5%, var(--db-pride-violet, var(--db-brand-on-bg-basic-emphasis-70-default)) 0);
|
|
133
134
|
}
|
|
134
135
|
@media screen and (prefers-reduced-motion: no-preference) {
|
|
135
136
|
.db-tabs .db-tab-item::after {
|
|
@@ -137,6 +138,85 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
137
138
|
}
|
|
138
139
|
}
|
|
139
140
|
|
|
141
|
+
@keyframes show-right-to-left {
|
|
142
|
+
from {
|
|
143
|
+
transform: translateX(110%);
|
|
144
|
+
}
|
|
145
|
+
to {
|
|
146
|
+
transform: translateX(0%);
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
@keyframes hide-right-to-left {
|
|
150
|
+
from {
|
|
151
|
+
transform: translateX(0%);
|
|
152
|
+
}
|
|
153
|
+
to {
|
|
154
|
+
transform: translateX(110%);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
@keyframes show-left-to-right {
|
|
158
|
+
from {
|
|
159
|
+
transform: translateX(-110%);
|
|
160
|
+
}
|
|
161
|
+
to {
|
|
162
|
+
transform: translateX(0%);
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
@keyframes hide-left-to-right {
|
|
166
|
+
from {
|
|
167
|
+
transform: translateX(0%);
|
|
168
|
+
}
|
|
169
|
+
to {
|
|
170
|
+
transform: translateX(-110%);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
@keyframes show-bottom-to-top {
|
|
174
|
+
from {
|
|
175
|
+
transform: translateY(110%);
|
|
176
|
+
}
|
|
177
|
+
to {
|
|
178
|
+
transform: translateY(0%);
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
@keyframes hide-bottom-to-top {
|
|
182
|
+
from {
|
|
183
|
+
transform: translateY(0%);
|
|
184
|
+
}
|
|
185
|
+
to {
|
|
186
|
+
transform: translateY(110%);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
@keyframes show-top-to-bottom {
|
|
190
|
+
from {
|
|
191
|
+
transform: translateY(-110%);
|
|
192
|
+
}
|
|
193
|
+
to {
|
|
194
|
+
transform: translateY(0%);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
@keyframes hide-top-to-bottom {
|
|
198
|
+
from {
|
|
199
|
+
transform: translateY(0%);
|
|
200
|
+
}
|
|
201
|
+
to {
|
|
202
|
+
transform: translateY(-110%);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
@keyframes popover-animation {
|
|
206
|
+
0% {
|
|
207
|
+
opacity: 0;
|
|
208
|
+
transform: translate(var(--db-popover-center-x, var(--db-popover-translate-x, 0%)), var(--db-popover-center-y, var(--db-popover-translate-y, 0%)));
|
|
209
|
+
}
|
|
210
|
+
100% {
|
|
211
|
+
opacity: 1;
|
|
212
|
+
transform: translate(var(--db-popover-center-x, 0%), var(--db-popover-center-y, 0%));
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
@keyframes rotate {
|
|
216
|
+
100% {
|
|
217
|
+
transform: rotate(1turn);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
140
220
|
.db-tabs db-tab-list:has([id$=-tab-0]:checked) ~ dbtabpanel > [id$=-tab-panel-0],
|
|
141
221
|
.db-tabs db-tab-list:has([id$=-tab-0]:checked) ~ db-tab-panel > [id$=-tab-panel-0],
|
|
142
222
|
.db-tabs dbtablist:has([id$=-tab-0]:checked) ~ dbtabpanel > [id$=-tab-panel-0],
|
|
@@ -209,7 +289,6 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
209
289
|
inline-size: 0;
|
|
210
290
|
transform: translate(-50%, 0);
|
|
211
291
|
inset-inline-start: 50%;
|
|
212
|
-
background-color: var(--db-brand-on-bg-basic-emphasis-70-default);
|
|
213
292
|
inset-block: auto calc(-1 * var(--db-spacing-fixed-xs));
|
|
214
293
|
}
|
|
215
294
|
.db-tabs:not([data-orientation=vertical]) .db-tab-list > ul .db-tab-item:has(input:checked)::after {
|
|
@@ -229,8 +308,7 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
229
308
|
block-size: 0;
|
|
230
309
|
inline-size: var(--db-border-width-xs);
|
|
231
310
|
transform: translate(0, -50%);
|
|
232
|
-
inset-block: 50% auto;
|
|
233
|
-
background-color: var(--db-brand-on-bg-basic-emphasis-70-default);
|
|
311
|
+
inset-block: var(--indicator-vertical-inset-block-start, 50%) auto;
|
|
234
312
|
inset-inline-start: calc(-1 * var(--db-spacing-fixed-xs));
|
|
235
313
|
}
|
|
236
314
|
.db-tabs[data-orientation=vertical] .db-tab-list > ul .db-tab-item::after {
|
|
@@ -238,7 +316,7 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
238
316
|
z-index: -2;
|
|
239
317
|
}
|
|
240
318
|
.db-tabs[data-orientation=vertical] .db-tab-list > ul .db-tab-item:has(input:checked)::after {
|
|
241
|
-
block-size: 100
|
|
319
|
+
block-size: var(--indicator-vertical-block-size, 100%);
|
|
242
320
|
inline-size: var(--db-border-width-xs);
|
|
243
321
|
}
|
|
244
322
|
@media (forced-colors: active) {
|
|
@@ -312,7 +390,7 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
312
390
|
inline-size: 100%;
|
|
313
391
|
}
|
|
314
392
|
.db-tabs:not([data-orientation=vertical]) .db-tab-list {
|
|
315
|
-
/* horizontal track for
|
|
393
|
+
/* horizontal track for indicator */
|
|
316
394
|
}
|
|
317
395
|
.db-tabs:not([data-orientation=vertical]) .db-tab-list::before {
|
|
318
396
|
block-size: var(--db-border-width-xs);
|
|
@@ -359,7 +437,7 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
359
437
|
padding-inline-end: var(--db-spacing-fixed-xs);
|
|
360
438
|
/* ensures that tab-list (track) is only as high as all the tab-items together if open tab-panel is higher */
|
|
361
439
|
margin-block-end: auto;
|
|
362
|
-
/* vertical track for
|
|
440
|
+
/* vertical track for indicator */
|
|
363
441
|
}
|
|
364
442
|
.db-tabs[data-orientation=vertical] .db-tab-list .db-tab-item label {
|
|
365
443
|
position: relative;
|
|
@@ -415,13 +493,31 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
415
493
|
* Scroll left / right buttons
|
|
416
494
|
*/
|
|
417
495
|
}
|
|
496
|
+
.db-tabs[data-scroll-behavior=arrows] .overflow-scroll-left-button > .db-button, .db-tabs[data-scroll-behavior=arrows] .overflow-scroll-left-button:is(.db-button) {
|
|
497
|
+
inset-inline-start: var(--db-overflow-scroll-button-inset-inline-start, 0);
|
|
498
|
+
}
|
|
499
|
+
.db-tabs[data-scroll-behavior=arrows] .overflow-scroll-right-button > .db-button, .db-tabs[data-scroll-behavior=arrows] .overflow-scroll-right-button:is(.db-button) {
|
|
500
|
+
inset-inline-end: 0;
|
|
501
|
+
}
|
|
502
|
+
.db-tabs[data-scroll-behavior=arrows] .overflow-scroll-left-button > .db-button, .db-tabs[data-scroll-behavior=arrows] .overflow-scroll-left-button:is(.db-button),
|
|
503
|
+
.db-tabs[data-scroll-behavior=arrows] .overflow-scroll-right-button > .db-button,
|
|
504
|
+
.db-tabs[data-scroll-behavior=arrows] .overflow-scroll-right-button:is(.db-button) {
|
|
505
|
+
position: absolute;
|
|
506
|
+
z-index: 22;
|
|
507
|
+
inset-block: var(--db-overflow-scroll-button-inset-block, var(--db-spacing-fixed-xs));
|
|
508
|
+
}
|
|
509
|
+
@supports (scrollbar-width: none) {
|
|
510
|
+
.db-tabs[data-scroll-behavior=arrows] .db-tab-list > ul {
|
|
511
|
+
scrollbar-width: none;
|
|
512
|
+
}
|
|
513
|
+
}
|
|
418
514
|
.db-tabs[data-scroll-behavior=arrows] .db-tab-list > ul::-webkit-scrollbar {
|
|
419
515
|
display: none;
|
|
420
516
|
}
|
|
421
|
-
.db-tabs[data-scroll-behavior=arrows]:has(.
|
|
517
|
+
.db-tabs[data-scroll-behavior=arrows]:has(.overflow-scroll-left-button)::before {
|
|
422
518
|
content: "";
|
|
423
519
|
}
|
|
424
|
-
.db-tabs[data-scroll-behavior=arrows]:has(.
|
|
520
|
+
.db-tabs[data-scroll-behavior=arrows]:has(.overflow-scroll-right-button)::after {
|
|
425
521
|
content: "";
|
|
426
522
|
}
|
|
427
523
|
.db-tabs[data-scroll-behavior=arrows]:has(.db-button)::before, .db-tabs[data-scroll-behavior=arrows]:has(.db-button)::after {
|
|
@@ -429,25 +525,12 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
429
525
|
z-index: 21;
|
|
430
526
|
background-color: var(--db-adaptive-bg-basic-level-1-default);
|
|
431
527
|
inline-size: var(--db-sizing-md);
|
|
432
|
-
block-size: calc(var(--db-spacing-fixed-sm) + var(--db-sizing-md));
|
|
528
|
+
block-size: calc(var(--db-overflow-scroll-button-background-block-size, var(--db-spacing-fixed-sm)) + var(--db-sizing-md));
|
|
433
529
|
flex: 0 0 auto;
|
|
434
530
|
}
|
|
435
531
|
.db-tabs[data-scroll-behavior=arrows]:has(.db-button)::before {
|
|
436
|
-
inset-inline-start: 0;
|
|
532
|
+
inset-inline-start: var(--db-overflow-scroll-button-inset-inline-start, 0);
|
|
437
533
|
}
|
|
438
534
|
.db-tabs[data-scroll-behavior=arrows]:has(.db-button)::after {
|
|
439
535
|
inset-inline-end: 0;
|
|
440
536
|
}
|
|
441
|
-
.db-tabs[data-scroll-behavior=arrows] .tabs-scroll-left > .db-button, .db-tabs[data-scroll-behavior=arrows] .tabs-scroll-left:is(.db-button) {
|
|
442
|
-
inset-inline-start: 0;
|
|
443
|
-
}
|
|
444
|
-
.db-tabs[data-scroll-behavior=arrows] .tabs-scroll-right > .db-button, .db-tabs[data-scroll-behavior=arrows] .tabs-scroll-right:is(.db-button) {
|
|
445
|
-
inset-inline-end: 0;
|
|
446
|
-
}
|
|
447
|
-
.db-tabs[data-scroll-behavior=arrows] .tabs-scroll-left > .db-button, .db-tabs[data-scroll-behavior=arrows] .tabs-scroll-left:is(.db-button),
|
|
448
|
-
.db-tabs[data-scroll-behavior=arrows] .tabs-scroll-right > .db-button,
|
|
449
|
-
.db-tabs[data-scroll-behavior=arrows] .tabs-scroll-right:is(.db-button) {
|
|
450
|
-
position: absolute;
|
|
451
|
-
z-index: 22;
|
|
452
|
-
inset-block: var(--db-spacing-fixed-xs);
|
|
453
|
-
}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
@use "@db-ux/core-foundations/build/styles/variables";
|
|
2
2
|
@use "@db-ux/core-foundations/build/styles/colors";
|
|
3
3
|
@use "../../styles/internal/form-components";
|
|
4
|
-
@use "../../styles/internal/
|
|
4
|
+
@use "../../styles/internal/indicator";
|
|
5
|
+
@use "../../styles/internal/scrollbar";
|
|
5
6
|
|
|
6
7
|
$max-tabs: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
|
|
7
8
|
|
|
@@ -19,12 +20,12 @@ $max-tabs: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
|
|
|
19
20
|
}
|
|
20
21
|
}
|
|
21
22
|
|
|
22
|
-
%horizontal-
|
|
23
|
+
%horizontal-indicator {
|
|
23
24
|
.db-tab-item {
|
|
24
|
-
@include
|
|
25
|
+
@include indicator.set-indicator-horizontal;
|
|
25
26
|
|
|
26
27
|
&:has(input:checked) {
|
|
27
|
-
@include
|
|
28
|
+
@include indicator.show-indicator-horizontal;
|
|
28
29
|
|
|
29
30
|
&::after {
|
|
30
31
|
inset-block-end: calc(
|
|
@@ -39,9 +40,9 @@ $max-tabs: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
|
|
|
39
40
|
}
|
|
40
41
|
}
|
|
41
42
|
|
|
42
|
-
%vertical-
|
|
43
|
+
%vertical-indicator {
|
|
43
44
|
.db-tab-item {
|
|
44
|
-
@include
|
|
45
|
+
@include indicator.set-indicator-vertical;
|
|
45
46
|
|
|
46
47
|
&::after {
|
|
47
48
|
inset-inline-start: 0;
|
|
@@ -49,29 +50,20 @@ $max-tabs: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
|
|
|
49
50
|
}
|
|
50
51
|
|
|
51
52
|
&:has(input:checked) {
|
|
52
|
-
@include
|
|
53
|
+
@include indicator.show-indicator-vertical;
|
|
53
54
|
}
|
|
54
55
|
}
|
|
55
56
|
}
|
|
56
57
|
|
|
57
|
-
%
|
|
58
|
+
%indicator-track {
|
|
58
59
|
background-color: colors.$db-adaptive-bg-basic-transparent-semi-default;
|
|
59
60
|
content: "";
|
|
60
61
|
border-radius: variables.$db-border-radius-xs;
|
|
61
62
|
position: absolute;
|
|
62
63
|
}
|
|
63
64
|
|
|
64
|
-
@mixin angular-button-workaround() {
|
|
65
|
-
> .db-button,
|
|
66
|
-
&:is(.db-button) {
|
|
67
|
-
@content;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
|
|
71
65
|
.db-tabs {
|
|
72
66
|
$db-tabs-z-index-tab-list: 20;
|
|
73
|
-
$db-tabs-z-index-button-background: 21;
|
|
74
|
-
$db-tabs-z-index-button: 22;
|
|
75
67
|
|
|
76
68
|
@extend %angular-workaround;
|
|
77
69
|
|
|
@@ -96,7 +88,7 @@ $max-tabs: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
|
|
|
96
88
|
}
|
|
97
89
|
|
|
98
90
|
.db-tab-item {
|
|
99
|
-
@extend %
|
|
91
|
+
@extend %indicator;
|
|
100
92
|
}
|
|
101
93
|
|
|
102
94
|
/*
|
|
@@ -110,9 +102,9 @@ $max-tabs: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
|
|
|
110
102
|
}
|
|
111
103
|
|
|
112
104
|
.db-tab-list {
|
|
113
|
-
/* horizontal track for
|
|
105
|
+
/* horizontal track for indicator */
|
|
114
106
|
&::before {
|
|
115
|
-
@extend %
|
|
107
|
+
@extend %indicator-track;
|
|
116
108
|
|
|
117
109
|
block-size: variables.$db-border-width-xs;
|
|
118
110
|
inset-inline: variables.$db-spacing-fixed-xs;
|
|
@@ -126,7 +118,7 @@ $max-tabs: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
|
|
|
126
118
|
}
|
|
127
119
|
|
|
128
120
|
> ul {
|
|
129
|
-
@extend %horizontal-
|
|
121
|
+
@extend %horizontal-indicator;
|
|
130
122
|
|
|
131
123
|
overflow: auto hidden;
|
|
132
124
|
inline-size: 100%;
|
|
@@ -214,9 +206,9 @@ $max-tabs: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
|
|
|
214
206
|
}
|
|
215
207
|
}
|
|
216
208
|
|
|
217
|
-
/* vertical track for
|
|
209
|
+
/* vertical track for indicator */
|
|
218
210
|
&::before {
|
|
219
|
-
@extend %
|
|
211
|
+
@extend %indicator-track;
|
|
220
212
|
|
|
221
213
|
inline-size: variables.$db-border-width-xs;
|
|
222
214
|
inset-block: variables.$db-spacing-fixed-xs;
|
|
@@ -224,7 +216,7 @@ $max-tabs: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
|
|
|
224
216
|
}
|
|
225
217
|
|
|
226
218
|
> ul {
|
|
227
|
-
@extend %vertical-
|
|
219
|
+
@extend %vertical-indicator;
|
|
228
220
|
|
|
229
221
|
flex-direction: column;
|
|
230
222
|
block-size: 100%;
|
|
@@ -291,71 +283,34 @@ $max-tabs: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
|
|
|
291
283
|
}
|
|
292
284
|
|
|
293
285
|
&[data-scroll-behavior="arrows"] {
|
|
286
|
+
@include scrollbar.set-overflow-scroll-buttons;
|
|
287
|
+
|
|
294
288
|
.db-tab-list {
|
|
295
289
|
> ul {
|
|
290
|
+
@supports (scrollbar-width: none) {
|
|
291
|
+
scrollbar-width: none;
|
|
292
|
+
}
|
|
293
|
+
|
|
296
294
|
&::-webkit-scrollbar {
|
|
297
295
|
display: none;
|
|
298
296
|
}
|
|
299
297
|
}
|
|
300
298
|
}
|
|
301
299
|
|
|
302
|
-
&:has(.
|
|
300
|
+
&:has(.overflow-scroll-left-button) {
|
|
303
301
|
&::before {
|
|
304
302
|
content: "";
|
|
305
303
|
}
|
|
306
304
|
}
|
|
307
305
|
|
|
308
|
-
&:has(.
|
|
306
|
+
&:has(.overflow-scroll-right-button) {
|
|
309
307
|
&::after {
|
|
310
308
|
content: "";
|
|
311
309
|
}
|
|
312
310
|
}
|
|
313
311
|
|
|
314
312
|
&:has(.db-button) {
|
|
315
|
-
|
|
316
|
-
&::after {
|
|
317
|
-
position: absolute;
|
|
318
|
-
z-index: $db-tabs-z-index-button-background;
|
|
319
|
-
background-color: colors.$db-adaptive-bg-basic-level-1-default;
|
|
320
|
-
inline-size: variables.$db-sizing-md;
|
|
321
|
-
block-size: calc(
|
|
322
|
-
#{variables.$db-spacing-fixed-sm} +
|
|
323
|
-
#{variables.$db-sizing-md}
|
|
324
|
-
);
|
|
325
|
-
flex: 0 0 auto;
|
|
326
|
-
}
|
|
327
|
-
|
|
328
|
-
&::before {
|
|
329
|
-
inset-inline-start: 0;
|
|
330
|
-
}
|
|
331
|
-
|
|
332
|
-
&::after {
|
|
333
|
-
inset-inline-end: 0;
|
|
334
|
-
}
|
|
335
|
-
}
|
|
336
|
-
|
|
337
|
-
/*
|
|
338
|
-
* Scroll left / right buttons
|
|
339
|
-
*/
|
|
340
|
-
.tabs-scroll-left {
|
|
341
|
-
@include angular-button-workaround() {
|
|
342
|
-
inset-inline-start: 0;
|
|
343
|
-
}
|
|
344
|
-
}
|
|
345
|
-
|
|
346
|
-
.tabs-scroll-right {
|
|
347
|
-
@include angular-button-workaround() {
|
|
348
|
-
inset-inline-end: 0;
|
|
349
|
-
}
|
|
350
|
-
}
|
|
351
|
-
|
|
352
|
-
.tabs-scroll-left,
|
|
353
|
-
.tabs-scroll-right {
|
|
354
|
-
@include angular-button-workaround() {
|
|
355
|
-
position: absolute;
|
|
356
|
-
z-index: $db-tabs-z-index-button;
|
|
357
|
-
inset-block: variables.$db-spacing-fixed-xs;
|
|
358
|
-
}
|
|
313
|
+
@include scrollbar.set-overflow-scroll-button-backgrounds;
|
|
359
314
|
}
|
|
360
315
|
}
|
|
361
316
|
}
|
|
@@ -9,7 +9,7 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
9
9
|
/* Screen sizes */
|
|
10
10
|
/* Container sizes */
|
|
11
11
|
.db-tag label, .db-tag a {
|
|
12
|
-
transition: outline var(--db-transition-duration-extra-fast),
|
|
12
|
+
transition: outline var(--db-transition-duration-extra-fast), background-color var(--db-transition-straight-emotional);
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
@keyframes show-right-to-left {
|
|
@@ -1229,9 +1229,7 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
1229
1229
|
--db-icon-margin-end: 0;
|
|
1230
1230
|
}
|
|
1231
1231
|
.db-tag:not([data-no-text=true]) {
|
|
1232
|
-
|
|
1233
|
-
/* stylelint-disable-next-line db-ux/use-spacings */
|
|
1234
|
-
padding-inline: var(--db-padding-inline-start) var(--db-spacing-fixed-2xs);
|
|
1232
|
+
padding-inline: var(--db-spacing-fixed-2xs);
|
|
1235
1233
|
}
|
|
1236
1234
|
.db-tag:not([data-no-text=true]):has(.db-tab-remove-button) {
|
|
1237
1235
|
padding-inline-end: 0;
|
|
@@ -1375,20 +1373,16 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
|
|
|
1375
1373
|
}
|
|
1376
1374
|
.db-tag:has(label, button:not(.db-tab-remove-button), a)[data-icon]:not([data-show-icon=false])::before {
|
|
1377
1375
|
position: absolute;
|
|
1378
|
-
inset-block-start: calc(50% - 0.5em);
|
|
1379
|
-
inset-inline-start: var(--db-spacing-fixed-2xs);
|
|
1376
|
+
inset-block-start: var(--db-icon-passing-inset-block-start, calc(50% - 0.5em));
|
|
1377
|
+
inset-inline-start: var(--db-icon-passing-inset-inline-start, var(--db-spacing-fixed-2xs));
|
|
1380
1378
|
pointer-events: none;
|
|
1381
1379
|
z-index: 1;
|
|
1382
1380
|
}
|
|
1383
1381
|
.db-tag:has(label, button:not(.db-tab-remove-button), a)[data-icon]:not([data-show-icon=false]) a,
|
|
1384
1382
|
.db-tag:has(label, button:not(.db-tab-remove-button), a)[data-icon]:not([data-show-icon=false]) button,
|
|
1385
1383
|
.db-tag:has(label, button:not(.db-tab-remove-button), a)[data-icon]:not([data-show-icon=false]) label {
|
|
1386
|
-
--db-padding-inline-start: calc(
|
|
1387
|
-
var(--db-spacing-fixed-2xs) + var(--db-icon-margin-end, var(--db-spacing-fixed-xs)) +
|
|
1388
|
-
var(--db-icon-font-size)
|
|
1389
|
-
);
|
|
1390
1384
|
/* stylelint-disable-next-line db-ux/use-spacings */
|
|
1391
|
-
padding-inline-start: var(--db-padding-inline-start);
|
|
1385
|
+
padding-inline-start: var(--db-icon-passing-padding-inline-start, calc(var(--db-spacing-fixed-2xs) + var(--db-icon-margin-end, var(--db-spacing-fixed-xs)) + var(--db-icon-font-size)));
|
|
1392
1386
|
}
|
|
1393
1387
|
.db-tag:has(label, button:not(.db-tab-remove-button), a) input:checked {
|
|
1394
1388
|
background-color: transparent;
|
|
@@ -25,11 +25,7 @@
|
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
&:not([data-no-text="true"]) {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
/* stylelint-disable-next-line db-ux/use-spacings */
|
|
31
|
-
padding-inline: var(--db-padding-inline-start)
|
|
32
|
-
#{variables.$db-spacing-fixed-2xs};
|
|
28
|
+
padding-inline: variables.$db-spacing-fixed-2xs;
|
|
33
29
|
|
|
34
30
|
&:has(.db-tab-remove-button) {
|
|
35
31
|
padding-inline-end: 0;
|
|
@@ -196,7 +196,7 @@ input[type=radio]:checked) > label {
|
|
|
196
196
|
}
|
|
197
197
|
|
|
198
198
|
.db-textarea[data-variant=floating]:has(textarea:is(:focus-within, :not(:placeholder-shown)))::before, .db-textarea textarea::-webkit-scrollbar, .db-textarea textarea::-webkit-scrollbar-corner {
|
|
199
|
-
transition: outline var(--db-transition-duration-extra-fast),
|
|
199
|
+
transition: outline var(--db-transition-duration-extra-fast), background-color var(--db-transition-straight-emotional);
|
|
200
200
|
}
|
|
201
201
|
|
|
202
202
|
@keyframes show-right-to-left {
|