@db-ux/core-components 3.0.2-copilot2-e7bf98b → 3.0.2-shell-ed0ed7c

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 (96) hide show
  1. package/build/assets/icons/LICENCES.json +18 -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/components/accordion/accordion.css +5 -5
  27. package/build/components/button/button.scss +1 -1
  28. package/build/components/{brand/brand.css → control-panel-brand/control-panel-brand.css} +12 -6
  29. package/build/components/{brand/brand.scss → control-panel-brand/control-panel-brand.scss} +10 -1
  30. package/build/components/control-panel-desktop/control-panel-desktop.css +791 -0
  31. package/build/components/control-panel-desktop/control-panel-desktop.scss +29 -0
  32. package/build/components/control-panel-flat-icon-navigation/control-panel-flat-icon-navigation.css +192 -0
  33. package/build/components/control-panel-flat-icon-navigation/control-panel-flat-icon-navigation.scss +84 -0
  34. package/build/components/control-panel-meta-navigation/control-panel-meta-navigation.css +54 -0
  35. package/build/components/control-panel-meta-navigation/control-panel-meta-navigation.scss +12 -0
  36. package/build/components/control-panel-mobile/control-panel-mobile.css +716 -0
  37. package/build/components/control-panel-mobile/control-panel-mobile.scss +125 -0
  38. package/build/components/control-panel-primary-actions/control-panel-primary-actions.css +16 -0
  39. package/build/components/control-panel-primary-actions/control-panel-primary-actions.scss +8 -0
  40. package/build/components/control-panel-secondary-actions/control-panel-secondary-actions.css +16 -0
  41. package/build/components/control-panel-secondary-actions/control-panel-secondary-actions.scss +8 -0
  42. package/build/components/custom-select/custom-select.css +4 -4
  43. package/build/components/custom-select-dropdown/custom-select-dropdown.css +12 -12
  44. package/build/components/custom-select-list-item/custom-select-list-item.css +6 -6
  45. package/build/components/divider/divider.css +6 -6
  46. package/build/components/drawer/drawer.css +6 -5
  47. package/build/components/drawer/drawer.scss +6 -26
  48. package/build/components/navigation/navigation.css +394 -123
  49. package/build/components/navigation/navigation.scss +155 -72
  50. package/build/components/navigation-item/navigation-item.css +35 -418
  51. package/build/components/navigation-item/navigation-item.scss +8 -310
  52. package/build/components/navigation-item-group/navigation-item-group-menu-popover.css +189 -0
  53. package/build/components/navigation-item-group/navigation-item-group-menu-popover.scss +105 -0
  54. package/build/components/navigation-item-group/navigation-item-group-menu-tree.css +208 -0
  55. package/build/components/navigation-item-group/navigation-item-group-menu-tree.scss +40 -0
  56. package/build/components/navigation-item-group/navigation-item-group.css +432 -0
  57. package/build/components/navigation-item-group/navigation-item-group.scss +69 -0
  58. package/build/components/shell/shell-desktop.css +548 -0
  59. package/build/components/shell/shell-desktop.scss +187 -0
  60. package/build/components/shell/shell-mobile.css +633 -0
  61. package/build/components/shell/shell-mobile.scss +107 -0
  62. package/build/components/shell/shell.css +1876 -0
  63. package/build/components/shell/shell.scss +84 -0
  64. package/build/components/shell-sub-navigation/shell-sub-navigation.css +11 -0
  65. package/build/components/shell-sub-navigation/shell-sub-navigation.scss +15 -0
  66. package/build/components/stack/stack-web-component.css +1 -0
  67. package/build/components/stack/stack.css +1 -0
  68. package/build/components/tab-item/tab-item.scss +0 -1
  69. package/build/components/tab-list/tab-list.css +1 -1
  70. package/build/components/tabs/tabs.css +106 -23
  71. package/build/components/tabs/tabs.scss +25 -70
  72. package/build/components/tag/tag.css +5 -11
  73. package/build/components/tag/tag.scss +1 -5
  74. package/build/components/textarea/textarea.css +1 -1
  75. package/build/styles/absolute.css +6 -6
  76. package/build/styles/component-animations.css +1 -1
  77. package/build/styles/index.css +5 -5
  78. package/build/styles/index.scss +11 -3
  79. package/build/styles/internal/_control-panel-desktop.scss +455 -0
  80. package/build/styles/internal/_control-panel-mobile.scss +130 -0
  81. package/build/styles/internal/_custom-elements.scss +22 -4
  82. package/build/styles/internal/_icon-passing.scss +19 -9
  83. package/build/styles/internal/{_db-puls.scss → _indicator.scss} +37 -16
  84. package/build/styles/internal/_navigation-item.scss +122 -0
  85. package/build/styles/internal/_scrollbar.scss +71 -0
  86. package/build/styles/relative.css +6 -6
  87. package/build/styles/rollup.css +6 -6
  88. package/build/styles/wc-workarounds.css +1 -1
  89. package/build/styles/wc-workarounds.scss +11 -0
  90. package/build/styles/webpack.css +6 -6
  91. package/package.json +3 -7
  92. package/agent/_instructions.md +0 -9
  93. package/build/components/header/header.css +0 -759
  94. package/build/components/header/header.scss +0 -259
  95. package/build/components/page/page.css +0 -52
  96. package/build/components/page/page.scss +0 -52
@@ -1,107 +1,190 @@
1
1
  @use "@db-ux/core-foundations/build/styles/variables";
2
2
  @use "@db-ux/core-foundations/build/styles/screen-sizes";
3
- @use "../../styles/internal/component";
3
+ @use "@db-ux/core-foundations/build/styles/icons";
4
+ @use "@db-ux/core-foundations/build/styles/animation";
5
+ @use "@db-ux/core-foundations/build/styles/helpers";
4
6
  @use "../../styles/internal/form-components";
5
- @use "../../styles/internal/db-puls";
7
+ @use "../../styles/internal/icon-passing";
8
+ @use "../navigation-item-group/navigation-item-group-menu-popover";
9
+ @use "../navigation-item-group/navigation-item-group-menu-tree";
6
10
 
7
- .db-navigation {
8
- -webkit-tap-highlight-color: transparent; /* for removing the highlight */
9
- inline-size: 100%;
11
+ %popover-navigation {
12
+ .db-navigation-item {
13
+ @include icon-passing.icon-passing();
10
14
 
11
- @include screen-sizes.screen("md") {
12
- -webkit-tap-highlight-color: inherit;
13
- inline-size: auto;
15
+ /* a {
16
+ block-size: variables.$db-sizing-md;
17
+ } */
14
18
  }
15
19
 
16
- > menu {
17
- display: flex;
18
- flex-direction: column;
19
- padding: 0;
20
- margin: 0;
21
- gap: variables.$db-spacing-fixed-sm;
22
-
23
- @include screen-sizes.screen("md") {
24
- flex-direction: row;
25
- }
26
-
27
- .db-navigation-item {
28
- @extend %db-puls-auto;
20
+ .db-navigation-item-group {
21
+ @include icon-passing.icon-passing(
22
+ variables.$db-spacing-fixed-sm,
23
+ variables.$db-spacing-fixed-xs
24
+ );
29
25
 
30
- .db-navigation-item-expand-button:is(button),
31
- .db-navigation-item-expand-button > button {
32
- // overwrite for navigation items
33
- @include screen-sizes.screen("md") {
34
- &::after {
35
- --db-icon-margin-start: #{variables.$db-spacing-fixed-sm};
36
- --db-icon-trailing: "chevron_down";
26
+ // MOBILE Sliding
27
+ @include screen-sizes.screen-min-max(
28
+ (
29
+ max: "sm"
30
+ )
31
+ ) {
32
+ .db-navigation-item-group-expand-button {
33
+ // show/hide sub-navigation by click
34
+ &[aria-expanded="true"] {
35
+ ~ .db-navigation-item-group-menu {
36
+ visibility: visible;
37
37
 
38
38
  @media screen and (prefers-reduced-motion: no-preference) {
39
- transition: form-components.$dropdown-icon-transition;
39
+ transition: visibility 0ms linear 0ms;
40
+ animation: show-right-to-left
41
+ #{variables.$db-transition-straight-show};
42
+ }
43
+
44
+ .db-navigation-item-group-menu {
45
+ inset-block: 0;
40
46
  }
41
47
  }
48
+ }
42
49
 
43
- &:is(:hover, :focus-visible),
44
- &:has(
45
- ~ .db-sub-navigation:is(
46
- :hover,
47
- :focus-visible,
48
- :focus-within
49
- )
50
- ) {
51
- &::after {
52
- transform: form-components.$dropdown-icon-transform;
50
+ &:not(&[aria-expanded="true"]) {
51
+ @media screen and (prefers-reduced-motion: no-preference) {
52
+ ~ .db-navigation-item-group-menu {
53
+ transition: visibility 0ms linear 410ms; // hide animation is 0.4s
54
+ animation: hide-right-to-left
55
+ #{variables.$db-transition-straight-hide};
53
56
  }
54
57
  }
55
58
  }
56
59
  }
60
+ }
57
61
 
58
- // re overwrite for non navigation items
59
- > menu {
60
- .db-navigation-item-expand-button:is(button),
61
- .db-navigation-item-expand-button > button {
62
- @include screen-sizes.screen("md") {
63
- &::after {
64
- --db-icon-trailing: "chevron_right";
65
- --db-icon-margin-start: auto;
66
- }
62
+ // DESKTOP: show sub-navigation on hover
63
+ @include screen-sizes.screen-min-max(
64
+ (
65
+ min: "sm"
66
+ )
67
+ ) {
68
+ .db-navigation-item-group-expand-button {
69
+ &::after {
70
+ @media screen and (prefers-reduced-motion: no-preference) {
71
+ transition: form-components.$dropdown-icon-transition;
72
+ }
73
+ }
67
74
 
68
- &:is(:hover, :focus-visible),
75
+ &:is(:hover, :focus-visible):not(
69
76
  :has(
70
- ~ .db-sub-navigation:is(
71
- :hover,
72
- :focus-visible,
73
- :focus-within
74
- )
75
- ) {
76
- &::after {
77
- transform: none;
78
- }
79
- }
77
+ ~ .db-navigation-item-group-menu[data-force-close="true"]
78
+ )
79
+ ) {
80
+ ~ .db-navigation-item-group-menu {
81
+ visibility: visible;
80
82
  }
81
83
  }
82
84
  }
85
+ }
86
+
87
+ .db-navigation-item-group-expand-button {
88
+ // default icon for navigation
89
+ @include icons.set-icon("chevron_right", "after");
90
+ }
83
91
 
84
- &:has([aria-current="page"]),
85
- &:has([data-active="true"]),
86
- &[aria-current="page"],
87
- &[data-active="true"] {
88
- @extend %show-db-puls-auto;
92
+ .db-navigation-item-group-menu {
93
+ @extend %db-navigation-item-group-menu-popover;
94
+ }
95
+ }
96
+ }
97
+
98
+ %tree-navigation {
99
+ .db-navigation-item {
100
+ &:not([data-icon]) {
101
+ &::before {
102
+ content: none;
89
103
  }
90
104
 
91
- // angular workaround: as no direct-child selector can be used, the pulse is hidden from the second level onwards
92
- .db-navigation-item {
93
- &::after {
94
- display: none;
105
+ a {
106
+ @include icons.set-icon("intermediary_stop");
107
+ }
108
+ }
109
+
110
+ &[data-icon] {
111
+ @include icon-passing.icon-passing();
112
+ }
113
+ }
114
+
115
+ a,
116
+ button {
117
+ justify-content: start;
118
+ }
119
+
120
+ .db-navigation-item-group {
121
+ display: flex;
122
+ flex-direction: column;
123
+
124
+ &::before {
125
+ content: none;
126
+ }
127
+
128
+ .db-navigation-item-group-expand-button {
129
+ @include icons.set-icon("chevron_right");
130
+
131
+ &[aria-expanded="true"] {
132
+ &::before {
133
+ transform: rotate(90deg);
134
+ pointer-events: none;
135
+
136
+ @media screen and (prefers-reduced-motion: no-preference) {
137
+ transition: form-components.$dropdown-icon-transition;
138
+ }
139
+ }
140
+
141
+ ~ .db-navigation-item-group-menu {
142
+ visibility: visible;
143
+ block-size: auto;
144
+ /* stylelint-disable-next-line declaration-property-value-no-unknown */
145
+ block-size: calc-size(auto, size);
95
146
  }
96
147
  }
97
148
  }
149
+
150
+ .db-navigation-item-group-menu {
151
+ @extend %db-navigation-item-group-menu-tree;
152
+ }
98
153
  }
99
154
 
100
- &[data-force-close="true"] {
101
- > menu menu {
102
- @include screen-sizes.screen("md") {
103
- display: none;
155
+ &[data-show-tree-line="true"] {
156
+ .db-navigation-item-group {
157
+ .db-navigation-item-group-menu {
158
+ @include helpers.divider("left");
104
159
  }
105
160
  }
106
161
  }
107
162
  }
163
+
164
+ .db-navigation {
165
+ -webkit-tap-highlight-color: transparent; /* for removing the highlight */
166
+ inline-size: 100%;
167
+ position: relative;
168
+
169
+ @include screen-sizes.screen("md") {
170
+ -webkit-tap-highlight-color: inherit;
171
+ inline-size: auto;
172
+ }
173
+
174
+ > menu {
175
+ display: flex;
176
+ flex-direction: column;
177
+ padding: 0;
178
+ margin: 0;
179
+ gap: variables.$db-spacing-fixed-sm;
180
+ }
181
+
182
+ &:not([data-variant]),
183
+ &[data-variant="popover"] {
184
+ @extend %popover-navigation;
185
+ }
186
+
187
+ &[data-variant="tree"] {
188
+ @extend %tree-navigation;
189
+ }
190
+ }