@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.
Files changed (97) hide show
  1. package/build/assets/icons/LICENCES.json +24 -0
  2. package/build/assets/icons/double_chevron_left.svg +1 -0
  3. package/build/assets/icons/double_chevron_right.svg +1 -0
  4. package/build/assets/icons/fonts/all/db-ux.woff2 +0 -0
  5. package/build/assets/icons/fonts/default/db-ux.woff2 +0 -0
  6. package/build/assets/icons/fonts/default_12/db-ux.woff2 +0 -0
  7. package/build/assets/icons/fonts/default_14/db-ux.woff2 +0 -0
  8. package/build/assets/icons/fonts/default_16/db-ux.woff2 +0 -0
  9. package/build/assets/icons/fonts/default_20/db-ux.woff2 +0 -0
  10. package/build/assets/icons/fonts/default_24/db-ux.woff2 +0 -0
  11. package/build/assets/icons/fonts/default_28/db-ux.woff2 +0 -0
  12. package/build/assets/icons/fonts/default_32/db-ux.woff2 +0 -0
  13. package/build/assets/icons/fonts/default_48/db-ux.woff2 +0 -0
  14. package/build/assets/icons/fonts/default_64/db-ux.woff2 +0 -0
  15. package/build/assets/icons/fonts/filled/db-ux.woff2 +0 -0
  16. package/build/assets/icons/fonts/filled_12/db-ux.woff2 +0 -0
  17. package/build/assets/icons/fonts/filled_14/db-ux.woff2 +0 -0
  18. package/build/assets/icons/fonts/filled_16/db-ux.woff2 +0 -0
  19. package/build/assets/icons/fonts/filled_20/db-ux.woff2 +0 -0
  20. package/build/assets/icons/fonts/filled_24/db-ux.woff2 +0 -0
  21. package/build/assets/icons/fonts/filled_28/db-ux.woff2 +0 -0
  22. package/build/assets/icons/fonts/filled_32/db-ux.woff2 +0 -0
  23. package/build/assets/icons/fonts/filled_48/db-ux.woff2 +0 -0
  24. package/build/assets/icons/fonts/filled_64/db-ux.woff2 +0 -0
  25. package/build/assets/icons/house.svg +1 -0
  26. package/build/assets/icons/intermediary_stop.svg +1 -0
  27. package/build/components/accordion/accordion.css +5 -5
  28. package/build/components/button/button.scss +1 -1
  29. package/build/components/{brand/brand.css → control-panel-brand/control-panel-brand.css} +12 -6
  30. package/build/components/{brand/brand.scss → control-panel-brand/control-panel-brand.scss} +10 -1
  31. package/build/components/control-panel-desktop/control-panel-desktop.css +791 -0
  32. package/build/components/control-panel-desktop/control-panel-desktop.scss +29 -0
  33. package/build/components/control-panel-flat-icon-navigation/control-panel-flat-icon-navigation.css +192 -0
  34. package/build/components/control-panel-flat-icon-navigation/control-panel-flat-icon-navigation.scss +84 -0
  35. package/build/components/control-panel-meta-navigation/control-panel-meta-navigation.css +54 -0
  36. package/build/components/control-panel-meta-navigation/control-panel-meta-navigation.scss +12 -0
  37. package/build/components/control-panel-mobile/control-panel-mobile.css +716 -0
  38. package/build/components/control-panel-mobile/control-panel-mobile.scss +125 -0
  39. package/build/components/control-panel-primary-actions/control-panel-primary-actions.css +16 -0
  40. package/build/components/control-panel-primary-actions/control-panel-primary-actions.scss +8 -0
  41. package/build/components/control-panel-secondary-actions/control-panel-secondary-actions.css +16 -0
  42. package/build/components/control-panel-secondary-actions/control-panel-secondary-actions.scss +8 -0
  43. package/build/components/custom-select/custom-select.css +4 -4
  44. package/build/components/custom-select-dropdown/custom-select-dropdown.css +12 -12
  45. package/build/components/custom-select-list-item/custom-select-list-item.css +6 -6
  46. package/build/components/divider/divider.css +6 -6
  47. package/build/components/drawer/drawer.css +6 -5
  48. package/build/components/drawer/drawer.scss +6 -26
  49. package/build/components/navigation/navigation.css +394 -123
  50. package/build/components/navigation/navigation.scss +155 -72
  51. package/build/components/navigation-item/navigation-item.css +35 -418
  52. package/build/components/navigation-item/navigation-item.scss +8 -310
  53. package/build/components/navigation-item-group/navigation-item-group-menu-popover.css +189 -0
  54. package/build/components/navigation-item-group/navigation-item-group-menu-popover.scss +105 -0
  55. package/build/components/navigation-item-group/navigation-item-group-menu-tree.css +208 -0
  56. package/build/components/navigation-item-group/navigation-item-group-menu-tree.scss +40 -0
  57. package/build/components/navigation-item-group/navigation-item-group.css +432 -0
  58. package/build/components/navigation-item-group/navigation-item-group.scss +69 -0
  59. package/build/components/shell/shell-desktop.css +548 -0
  60. package/build/components/shell/shell-desktop.scss +187 -0
  61. package/build/components/shell/shell-mobile.css +633 -0
  62. package/build/components/shell/shell-mobile.scss +107 -0
  63. package/build/components/shell/shell.css +1876 -0
  64. package/build/components/shell/shell.scss +84 -0
  65. package/build/components/shell-sub-navigation/shell-sub-navigation.css +11 -0
  66. package/build/components/shell-sub-navigation/shell-sub-navigation.scss +15 -0
  67. package/build/components/stack/stack-web-component.css +1 -0
  68. package/build/components/stack/stack.css +1 -0
  69. package/build/components/tab-item/tab-item.scss +0 -1
  70. package/build/components/tab-list/tab-list.css +1 -1
  71. package/build/components/tabs/tabs.css +106 -23
  72. package/build/components/tabs/tabs.scss +25 -70
  73. package/build/components/tag/tag.css +5 -11
  74. package/build/components/tag/tag.scss +1 -5
  75. package/build/components/textarea/textarea.css +1 -1
  76. package/build/styles/absolute.css +6 -6
  77. package/build/styles/component-animations.css +1 -1
  78. package/build/styles/index.css +5 -5
  79. package/build/styles/index.scss +11 -3
  80. package/build/styles/internal/_control-panel-desktop.scss +455 -0
  81. package/build/styles/internal/_control-panel-mobile.scss +130 -0
  82. package/build/styles/internal/_custom-elements.scss +22 -4
  83. package/build/styles/internal/_icon-passing.scss +19 -9
  84. package/build/styles/internal/{_db-puls.scss → _indicator.scss} +37 -16
  85. package/build/styles/internal/_navigation-item.scss +122 -0
  86. package/build/styles/internal/_scrollbar.scss +71 -0
  87. package/build/styles/relative.css +6 -6
  88. package/build/styles/rollup.css +6 -6
  89. package/build/styles/wc-workarounds.css +1 -1
  90. package/build/styles/wc-workarounds.scss +11 -0
  91. package/build/styles/webpack.css +6 -6
  92. package/package.json +3 -7
  93. package/agent/_instructions.md +0 -9
  94. package/build/components/header/header.css +0 -759
  95. package/build/components/header/header.scss +0 -259
  96. package/build/components/page/page.css +0 -52
  97. package/build/components/page/page.scss +0 -52
@@ -2,33 +2,54 @@
2
2
  @use "@db-ux/core-foundations/build/styles/screen-sizes";
3
3
  @use "@db-ux/core-foundations/build/styles/colors";
4
4
 
5
- @mixin set-db-puls-horizontal() {
5
+ $indicator-background: linear-gradient(
6
+ 135deg,
7
+ var(--db-pride-red, #{colors.$db-brand-on-bg-basic-emphasis-70-default})
8
+ 16.7%,
9
+ var(--db-pride-orange, #{colors.$db-brand-on-bg-basic-emphasis-70-default})
10
+ 0,
11
+ var(--db-pride-orange, #{colors.$db-brand-on-bg-basic-emphasis-70-default})
12
+ 33.4%,
13
+ var(--db-pride-yellow, #{colors.$db-brand-on-bg-basic-emphasis-70-default})
14
+ 0,
15
+ var(--db-pride-yellow, #{colors.$db-brand-on-bg-basic-emphasis-70-default})
16
+ 50.1%,
17
+ var(--db-pride-green, #{colors.$db-brand-on-bg-basic-emphasis-70-default}) 0,
18
+ var(--db-pride-green, #{colors.$db-brand-on-bg-basic-emphasis-70-default})
19
+ 66.8%,
20
+ var(--db-pride-blue, #{colors.$db-brand-on-bg-basic-emphasis-70-default}) 0,
21
+ var(--db-pride-blue, #{colors.$db-brand-on-bg-basic-emphasis-70-default})
22
+ 83.5%,
23
+ var(--db-pride-violet, #{colors.$db-brand-on-bg-basic-emphasis-70-default})
24
+ 0
25
+ );
26
+
27
+ @mixin set-indicator-horizontal() {
6
28
  &::after {
7
29
  block-size: variables.$db-border-width-xs;
8
30
  inline-size: 0;
9
31
  transform: translate(-50%, 0);
10
32
  inset-inline-start: 50%;
11
- background-color: colors.$db-brand-on-bg-basic-emphasis-70-default;
12
33
  inset-block: auto calc(-1 * #{variables.$db-spacing-fixed-xs});
13
34
  }
14
35
  }
15
36
 
16
- @mixin set-db-puls-vertical() {
37
+ @mixin set-indicator-vertical() {
17
38
  &::after {
18
39
  block-size: 0;
19
40
  inline-size: variables.$db-border-width-xs;
20
41
  transform: translate(0, -50%);
21
- inset-block: 50% auto;
22
- background-color: colors.$db-brand-on-bg-basic-emphasis-70-default;
42
+ inset-block: var(--indicator-vertical-inset-block-start, 50%) auto;
23
43
  inset-inline-start: calc(-1 * #{variables.$db-spacing-fixed-xs});
24
44
  }
25
45
  }
26
46
 
27
- %db-puls {
47
+ %indicator {
28
48
  &::after {
29
49
  content: "";
30
50
  position: absolute;
31
51
  border-radius: variables.$db-border-radius-xs;
52
+ background: $indicator-background;
32
53
 
33
54
  @media screen and (prefers-reduced-motion: no-preference) {
34
55
  transition:
@@ -40,17 +61,17 @@
40
61
  }
41
62
  }
42
63
 
43
- %db-puls-auto {
44
- @extend %db-puls;
64
+ %indicator-auto {
65
+ @extend %indicator;
45
66
 
46
- @include set-db-puls-vertical();
67
+ @include set-indicator-vertical();
47
68
 
48
69
  @include screen-sizes.screen("md") {
49
- @include set-db-puls-horizontal();
70
+ @include set-indicator-horizontal();
50
71
  }
51
72
  }
52
73
 
53
- @mixin show-db-puls-horizontal() {
74
+ @mixin show-indicator-horizontal() {
54
75
  &::after {
55
76
  block-size: variables.$db-border-width-xs;
56
77
  inline-size: 100%;
@@ -62,9 +83,9 @@
62
83
  }
63
84
  }
64
85
 
65
- @mixin show-db-puls-vertical() {
86
+ @mixin show-indicator-vertical() {
66
87
  &::after {
67
- block-size: 100%;
88
+ block-size: var(--indicator-vertical-block-size, 100%);
68
89
  inline-size: variables.$db-border-width-xs;
69
90
 
70
91
  @media (forced-colors: active) {
@@ -74,10 +95,10 @@
74
95
  }
75
96
  }
76
97
 
77
- %show-db-puls-auto {
78
- @include show-db-puls-vertical;
98
+ %show-indicator-auto {
99
+ @include show-indicator-vertical;
79
100
 
80
101
  @include screen-sizes.screen("md") {
81
- @include show-db-puls-horizontal;
102
+ @include show-indicator-horizontal;
82
103
  }
83
104
  }
@@ -0,0 +1,122 @@
1
+ @use "sass:string";
2
+ @use "@db-ux/core-foundations/build/styles/screen-sizes";
3
+ @use "@db-ux/core-foundations/build/styles/variables";
4
+ @use "@db-ux/core-foundations/build/styles/colors";
5
+ @use "@db-ux/core-foundations/build/styles/fonts";
6
+ @use "@db-ux/core-foundations/build/styles/helpers";
7
+ @use "@db-ux/core-foundations/build/styles/icons";
8
+ @use "../../styles/internal/custom-elements";
9
+ @use "../../styles/internal/icon-passing";
10
+ @use "../../styles/internal/component";
11
+
12
+ @mixin direct-navigation-items {
13
+ #{string.unquote(custom-elements.$navigation-item)},
14
+ #{string.unquote(custom-elements.$navigation-item-group)} {
15
+ @content;
16
+ }
17
+ }
18
+
19
+ @mixin active-navigation-item() {
20
+ &:has([aria-current="page"]),
21
+ &:has([data-active="true"]),
22
+ &[aria-current="page"],
23
+ &[data-active="true"] {
24
+ @content;
25
+ }
26
+ }
27
+
28
+ @mixin navigation-item-group-menu-triangle-vertical() {
29
+ &::before {
30
+ content: "";
31
+ position: absolute;
32
+ inset-block-start: 0;
33
+ inset-inline-start: 0;
34
+ block-size: 100%;
35
+ inline-size: var(--db-navigation-item-inline-size, 100%);
36
+ background: transparent;
37
+ transform: translateX(-100%);
38
+ clip-path: var(
39
+ --db-navigation-item-clip-path,
40
+ polygon(10% 30px, 100% 0, 100% 100%)
41
+ );
42
+ }
43
+
44
+ &::after {
45
+ content: "";
46
+ position: absolute;
47
+ padding: variables.$db-spacing-fixed-xs;
48
+ // #{$db-spacing-fixed-3xs} for box shadow
49
+ inset-block-start: #{variables.$db-spacing-fixed-3xs};
50
+ inset-inline-end: calc(-1 * #{variables.$db-spacing-fixed-xs});
51
+ block-size: calc(100% - 2 * #{variables.$db-spacing-fixed-3xs});
52
+ inline-size: variables.$db-spacing-fixed-xs;
53
+ }
54
+ }
55
+
56
+ %navigation-item-interactive-element {
57
+ @extend %transparent-border;
58
+ @extend %db-overwrite-font-size-md;
59
+
60
+ background-color: colors.$db-adaptive-bg-basic-transparent-full-default;
61
+ cursor: pointer;
62
+ inline-size: 100%;
63
+ display: inline-flex;
64
+ border-radius: variables.$db-border-radius-sm;
65
+ padding: variables.$db-spacing-fixed-xs variables.$db-spacing-fixed-sm;
66
+ white-space: nowrap; // we don't want to break
67
+ text-align: center;
68
+ align-items: center; // Centering the content vertically and horizontally
69
+ justify-content: space-between;
70
+
71
+ @include helpers.hover {
72
+ background-color: colors.$db-adaptive-bg-basic-transparent-full-hovered;
73
+ }
74
+
75
+ @include helpers.active {
76
+ background-color: colors.$db-adaptive-bg-basic-transparent-full-pressed;
77
+ }
78
+ }
79
+
80
+ %navigation-item {
81
+ @extend %db-overwrite-font-size-md;
82
+
83
+ position: relative;
84
+ display: flex;
85
+ block-size: fit-content;
86
+
87
+ // Mobile
88
+ @include screen-sizes.screen-min-max(
89
+ (
90
+ max: "sm"
91
+ )
92
+ ) {
93
+ inline-size: 100%;
94
+ }
95
+ // Desktop
96
+ @include screen-sizes.screen-min-max(
97
+ (
98
+ min: "sm"
99
+ )
100
+ ) {
101
+ inline-size: fit-content;
102
+ }
103
+
104
+ :is(a, .db-navigation-item-expand-button):first-of-type {
105
+ white-space: normal;
106
+ text-align: start;
107
+ }
108
+
109
+ &:has([aria-current="page"]),
110
+ &:has([data-active="true"]),
111
+ &[aria-current="page"],
112
+ &[data-active="true"] {
113
+ > :is(a, button) {
114
+ font-weight: 700;
115
+ }
116
+ }
117
+
118
+ &[aria-disabled="true"] {
119
+ opacity: variables.$db-opacity-md;
120
+ pointer-events: none;
121
+ }
122
+ }
@@ -111,3 +111,74 @@ $scrollbar-width: helpers.px-to-rem(8);
111
111
  border-end-end-radius: variables.$db-border-radius-xs;
112
112
  }
113
113
  }
114
+
115
+ @mixin angular-button-workaround() {
116
+ > .db-button,
117
+ &:is(.db-button) {
118
+ @content;
119
+ }
120
+ }
121
+
122
+ $db-overflow-scroll-buttons-background: 21;
123
+ $db-overflow-scroll-buttons-button: 22;
124
+
125
+ @mixin set-overflow-scroll-button-backgrounds {
126
+ &::before,
127
+ &::after {
128
+ position: absolute;
129
+ z-index: $db-overflow-scroll-buttons-background;
130
+ background-color: colors.$db-adaptive-bg-basic-level-1-default;
131
+ inline-size: variables.$db-sizing-md;
132
+ block-size: calc(
133
+ var(
134
+ --db-overflow-scroll-button-background-block-size,
135
+ #{variables.$db-spacing-fixed-sm}
136
+ ) +
137
+ #{variables.$db-sizing-md}
138
+ );
139
+ flex: 0 0 auto;
140
+ }
141
+
142
+ &::before {
143
+ inset-inline-start: var(
144
+ --db-overflow-scroll-button-inset-inline-start,
145
+ 0
146
+ );
147
+ }
148
+
149
+ &::after {
150
+ inset-inline-end: 0;
151
+ }
152
+ }
153
+
154
+ @mixin set-overflow-scroll-buttons {
155
+ /*
156
+ * Scroll left / right buttons
157
+ */
158
+ .overflow-scroll-left-button {
159
+ @include angular-button-workaround() {
160
+ inset-inline-start: var(
161
+ --db-overflow-scroll-button-inset-inline-start,
162
+ 0
163
+ );
164
+ }
165
+ }
166
+
167
+ .overflow-scroll-right-button {
168
+ @include angular-button-workaround() {
169
+ inset-inline-end: 0;
170
+ }
171
+ }
172
+
173
+ .overflow-scroll-left-button,
174
+ .overflow-scroll-right-button {
175
+ @include angular-button-workaround() {
176
+ position: absolute;
177
+ z-index: $db-overflow-scroll-buttons-button;
178
+ inset-block: var(
179
+ --db-overflow-scroll-button-inset-block,
180
+ #{variables.$db-spacing-fixed-xs}
181
+ );
182
+ }
183
+ }
184
+ }