@db-ux/core-components 4.14.0-shell-52d18db → 5.0.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 (103) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/agent/Best-Practise_Common-AI-Mistakes.md +3 -3
  3. package/build/components/accordion-item/accordion-item.css +0 -1
  4. package/build/components/brand/brand.css +0 -1
  5. package/build/components/brand/brand.scss +0 -1
  6. package/build/components/button/button.css +4 -9
  7. package/build/components/checkbox/checkbox.css +0 -3
  8. package/build/components/checkbox/checkbox.scss +0 -2
  9. package/build/components/custom-button/custom-button.css +8 -13
  10. package/build/components/custom-button/custom-button.scss +2 -3
  11. package/build/components/custom-select/custom-select.css +0 -1
  12. package/build/components/custom-select-list-item/custom-select-list-item.css +6 -2
  13. package/build/components/custom-select-list-item/custom-select-list-item.scss +8 -3
  14. package/build/components/drawer/drawer.css +32 -21
  15. package/build/components/drawer/drawer.scss +50 -26
  16. package/build/components/header/header.css +3 -10
  17. package/build/components/header/header.scss +7 -6
  18. package/build/components/icon/icon.css +0 -6
  19. package/build/components/infotext/infotext.css +0 -4
  20. package/build/components/infotext/infotext.scss +0 -2
  21. package/build/components/input/input.css +0 -5
  22. package/build/components/link/link.css +6 -9
  23. package/build/components/link/link.scss +8 -3
  24. package/build/components/navigation/navigation.css +1 -2
  25. package/build/components/navigation/navigation.scss +2 -2
  26. package/build/components/navigation-item/navigation-item.css +5 -28
  27. package/build/components/navigation-item/navigation-item.scss +5 -24
  28. package/build/components/notification/notification.css +1 -5
  29. package/build/components/notification/notification.scss +0 -2
  30. package/build/components/page/page.css +0 -8
  31. package/build/components/page/page.scss +0 -8
  32. package/build/components/select/select.css +0 -1
  33. package/build/components/stack/stack-web-component.css +0 -1
  34. package/build/components/stack/stack.css +0 -1
  35. package/build/components/switch/switch.css +0 -3
  36. package/build/components/switch/switch.scss +0 -1
  37. package/build/components/tab-item/tab-item.css +120 -98
  38. package/build/components/tab-item/tab-item.scss +89 -90
  39. package/build/components/tab-list/tab-list.css +38 -36
  40. package/build/components/tab-list/tab-list.scss +11 -9
  41. package/build/components/tab-panel/tab-panel.css +30 -4
  42. package/build/components/tab-panel/tab-panel.scss +60 -2
  43. package/build/components/table/table.css +0 -4
  44. package/build/components/table-row/table-row.css +0 -4
  45. package/build/components/table-row/table-row.scss +0 -5
  46. package/build/components/tabs/tabs.css +152 -263
  47. package/build/components/tabs/tabs.scss +243 -198
  48. package/build/components/tag/tag.css +2 -21
  49. package/build/components/tag/tag.scss +5 -7
  50. package/build/styles/absolute.css +12 -12
  51. package/build/styles/bundle.css +12 -12
  52. package/build/styles/index.css +11 -11
  53. package/build/styles/index.scss +3 -17
  54. package/build/styles/internal/_button-components.scss +7 -4
  55. package/build/styles/internal/_custom-elements.scss +8 -32
  56. package/build/styles/internal/_icon-passing.scss +9 -10
  57. package/build/styles/internal/_link-components.scss +1 -3
  58. package/build/styles/relative.css +12 -12
  59. package/build/styles/rollup.css +12 -12
  60. package/build/styles/wc-workarounds.css +1 -1
  61. package/build/styles/wc-workarounds.scss +0 -11
  62. package/build/styles/webpack.css +12 -12
  63. package/package.json +4 -4
  64. package/build/components/control-panel-brand/control-panel-brand.css +0 -53
  65. package/build/components/control-panel-brand/control-panel-brand.scss +0 -48
  66. package/build/components/control-panel-desktop/control-panel-desktop.css +0 -579
  67. package/build/components/control-panel-desktop/control-panel-desktop.scss +0 -30
  68. package/build/components/control-panel-flat-icon/control-panel-flat-icon.css +0 -258
  69. package/build/components/control-panel-flat-icon/control-panel-flat-icon.scss +0 -239
  70. package/build/components/control-panel-meta/control-panel-meta.css +0 -14
  71. package/build/components/control-panel-meta/control-panel-meta.scss +0 -15
  72. package/build/components/control-panel-mobile/control-panel-mobile.css +0 -442
  73. package/build/components/control-panel-mobile/control-panel-mobile.scss +0 -119
  74. package/build/components/control-panel-navigation/control-panel-navigation.css +0 -402
  75. package/build/components/control-panel-navigation/control-panel-navigation.scss +0 -186
  76. package/build/components/control-panel-navigation-item/control-panel-navigation-item.css +0 -87
  77. package/build/components/control-panel-navigation-item/control-panel-navigation-item.scss +0 -39
  78. package/build/components/control-panel-navigation-item-group/control-panel-navigation-item-group-menu-popover.css +0 -21
  79. package/build/components/control-panel-navigation-item-group/control-panel-navigation-item-group-menu-popover.scss +0 -129
  80. package/build/components/control-panel-navigation-item-group/control-panel-navigation-item-group-menu-tree.css +0 -35
  81. package/build/components/control-panel-navigation-item-group/control-panel-navigation-item-group-menu-tree.scss +0 -36
  82. package/build/components/control-panel-navigation-item-group/control-panel-navigation-item-group.css +0 -158
  83. package/build/components/control-panel-navigation-item-group/control-panel-navigation-item-group.scss +0 -80
  84. package/build/components/control-panel-primary-actions/control-panel-primary-actions.css +0 -12
  85. package/build/components/control-panel-primary-actions/control-panel-primary-actions.scss +0 -7
  86. package/build/components/control-panel-secondary-actions/control-panel-secondary-actions.css +0 -12
  87. package/build/components/control-panel-secondary-actions/control-panel-secondary-actions.scss +0 -7
  88. package/build/components/control-panel-skip-navigation/control-panel-skip-navigation.css +0 -23
  89. package/build/components/control-panel-skip-navigation/control-panel-skip-navigation.scss +0 -25
  90. package/build/components/shell/shell-desktop.css +0 -475
  91. package/build/components/shell/shell-desktop.scss +0 -105
  92. package/build/components/shell/shell-mobile.css +0 -441
  93. package/build/components/shell/shell-mobile.scss +0 -148
  94. package/build/components/shell/shell.css +0 -1670
  95. package/build/components/shell/shell.scss +0 -70
  96. package/build/components/shell-content/shell-content.css +0 -34
  97. package/build/components/shell-content/shell-content.scss +0 -53
  98. package/build/components/shell-sub-navigation/shell-sub-navigation.css +0 -51
  99. package/build/components/shell-sub-navigation/shell-sub-navigation.scss +0 -184
  100. package/build/styles/internal/_control-panel-actions.scss +0 -11
  101. package/build/styles/internal/_control-panel-desktop.scss +0 -412
  102. package/build/styles/internal/_control-panel-mobile.scss +0 -107
  103. package/build/styles/internal/_navigation-item.scss +0 -122
@@ -1,70 +0,0 @@
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
- }
@@ -1,34 +0,0 @@
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:not([data-variant=fixed]) .db-main {
14
- margin-block-end: auto;
15
- }
16
- .db-shell-content[data-variant=fixed] {
17
- overflow-y: hidden;
18
- }
19
- .db-shell-content[data-variant=fixed] .db-main {
20
- flex: 1 1 0;
21
- min-block-size: 0;
22
- }
23
- @media all and (display-mode: standalone) {
24
- .db-shell-content[data-variant=fixed]:not(:has(.db-main + *)) .db-main {
25
- /* stylelint-disable-next-line db-ux/use-spacings */
26
- margin-block-end: env(safe-area-inset-bottom);
27
- }
28
- }
29
- @media all and (display-mode: standalone) {
30
- .db-shell-content:has(.db-main + *) .db-main + *:last-child {
31
- /* stylelint-disable-next-line db-ux/use-spacings */
32
- padding-block-end: env(safe-area-inset-bottom);
33
- }
34
- }
@@ -1,53 +0,0 @@
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
- .db-main {
17
- margin-block-end: auto;
18
- }
19
- }
20
-
21
- &[data-variant="fixed"] {
22
- overflow-y: hidden;
23
-
24
- .db-main {
25
- @extend %shell-content-overflow;
26
-
27
- flex: 1 1 0;
28
- min-block-size: 0;
29
- }
30
-
31
- @media all and (display-mode: standalone) {
32
- &:not(:has(.db-main + *)) {
33
- .db-main {
34
- // jscpd:ignore-start
35
- /* stylelint-disable-next-line db-ux/use-spacings */
36
- margin-block-end: env(safe-area-inset-bottom);
37
-
38
- // jscpd:ignore-end
39
- }
40
- }
41
- }
42
- }
43
-
44
- @media all and (display-mode: standalone) {
45
- &:has(.db-main + *) {
46
- // in this case there is some footer etc.
47
- .db-main + *:last-child {
48
- /* stylelint-disable-next-line db-ux/use-spacings */
49
- padding-block-end: env(safe-area-inset-bottom);
50
- }
51
- }
52
- }
53
- }
@@ -1,51 +0,0 @@
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
- }
@@ -1,184 +0,0 @@
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,11 +0,0 @@
1
- @use "@db-ux/core-foundations/build/styles/variables";
2
-
3
- %control-panel-actions {
4
- display: flex;
5
- gap: variables.$db-spacing-fixed-xs;
6
- align-items: center;
7
-
8
- &:empty {
9
- display: none;
10
- }
11
- }