@db-ux/core-components 4.13.1-angular-signal-forms13-577b861 → 4.14.0-shell-52d18db

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 (105) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/agent/Best-Practise_Common-AI-Mistakes.md +3 -3
  3. package/build/components/accordion/accordion.css +33 -6
  4. package/build/components/accordion/accordion.scss +25 -0
  5. package/build/components/accordion-item/accordion-item.css +9 -14
  6. package/build/components/accordion-item/accordion-item.scss +5 -3
  7. package/build/components/badge/badge.css +1 -1
  8. package/build/components/badge/badge.scss +1 -1
  9. package/build/components/button/button.css +0 -8
  10. package/build/components/button/button.scss +0 -11
  11. package/build/components/checkbox/checkbox.css +6 -11
  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 +442 -0
  21. package/build/components/control-panel-mobile/control-panel-mobile.scss +119 -0
  22. package/build/components/control-panel-navigation/control-panel-navigation.css +402 -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 +129 -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 +15 -20
  39. package/build/components/custom-button/custom-button.scss +1 -1
  40. package/build/components/custom-select/custom-select.css +17 -16
  41. package/build/components/custom-select/custom-select.scss +1 -1
  42. package/build/components/custom-select-dropdown/custom-select-dropdown.css +39 -26
  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 +24 -19
  46. package/build/components/divider/divider.css +18 -8
  47. package/build/components/drawer/drawer.css +79 -157
  48. package/build/components/drawer/drawer.scss +130 -170
  49. package/build/components/drawer-footer/drawer-footer.css +34 -0
  50. package/build/components/drawer-footer/drawer-footer.scss +11 -0
  51. package/build/components/drawer-header/drawer-header.css +38 -0
  52. package/build/components/drawer-header/drawer-header.scss +17 -0
  53. package/build/components/header/header.css +81 -46
  54. package/build/components/header/header.scss +34 -21
  55. package/build/components/input/input.css +6 -11
  56. package/build/components/link/link.css +12 -2
  57. package/build/components/navigation/navigation.css +6 -11
  58. package/build/components/navigation-item/navigation-item.css +45 -30
  59. package/build/components/navigation-item/navigation-item.scss +28 -13
  60. package/build/components/notification/notification.css +12 -2
  61. package/build/components/page/page.css +8 -0
  62. package/build/components/page/page.scss +8 -0
  63. package/build/components/radio/radio.css +6 -11
  64. package/build/components/select/select.css +6 -11
  65. package/build/components/shell/shell-desktop.css +475 -0
  66. package/build/components/shell/shell-desktop.scss +105 -0
  67. package/build/components/shell/shell-mobile.css +441 -0
  68. package/build/components/shell/shell-mobile.scss +148 -0
  69. package/build/components/shell/shell.css +1670 -0
  70. package/build/components/shell/shell.scss +70 -0
  71. package/build/components/shell-content/shell-content.css +34 -0
  72. package/build/components/shell-content/shell-content.scss +53 -0
  73. package/build/components/shell-sub-navigation/shell-sub-navigation.css +51 -0
  74. package/build/components/shell-sub-navigation/shell-sub-navigation.scss +184 -0
  75. package/build/components/stack/stack-web-component.css +1 -0
  76. package/build/components/stack/stack.css +1 -0
  77. package/build/components/switch/switch.css +6 -11
  78. package/build/components/tab-item/tab-item.css +6 -11
  79. package/build/components/tab-list/tab-list.css +6 -11
  80. package/build/components/table/table.css +6 -11
  81. package/build/components/tabs/tabs.css +50 -33
  82. package/build/components/tabs/tabs.scss +10 -55
  83. package/build/components/tag/tag.css +7 -10
  84. package/build/components/tag/tag.scss +1 -5
  85. package/build/components/textarea/textarea.css +6 -11
  86. package/build/styles/absolute.css +7 -7
  87. package/build/styles/bundle.css +7 -7
  88. package/build/styles/index.css +6 -6
  89. package/build/styles/index.scss +18 -2
  90. package/build/styles/internal/_component.scss +4 -0
  91. package/build/styles/internal/_control-panel-actions.scss +11 -0
  92. package/build/styles/internal/_control-panel-desktop.scss +412 -0
  93. package/build/styles/internal/_control-panel-mobile.scss +107 -0
  94. package/build/styles/internal/_custom-elements.scss +32 -7
  95. package/build/styles/internal/_icon-passing.scss +20 -10
  96. package/build/styles/internal/_link-components.scss +11 -2
  97. package/build/styles/internal/_navigation-item.scss +122 -0
  98. package/build/styles/internal/_scrollbar.scss +71 -0
  99. package/build/styles/relative.css +7 -7
  100. package/build/styles/rollup.css +7 -7
  101. package/build/styles/visually-hidden.css +1 -1
  102. package/build/styles/wc-workarounds.css +1 -1
  103. package/build/styles/wc-workarounds.scss +11 -0
  104. package/build/styles/webpack.css +7 -7
  105. package/package.json +3 -3
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @db-ux/core-components
2
2
 
3
+ ## 4.14.0
4
+
5
+ ### Minor Changes
6
+
7
+ - refactor: consolidate floating component listeners into shared abstractions - [see commit de676fe](https://github.com/db-ux-design-system/core-web/commit/de676fe17e8a8157acd2e574fcea28ab6022389c)
8
+
9
+ ### Patch Changes
10
+
11
+ - fix: correct accordion variant backgrounds to match design (divider is transparent, card is level-1 including the open content area) - [see commit b611b84](https://github.com/db-ux-design-system/core-web/commit/b611b845e6aded8f50dd07f3727ebf5fdf902b69)
12
+
13
+ - fix: use inline-flex with align-items center for link components to vertically center text with fixed height across densities - [see commit 5ebdef8](https://github.com/db-ux-design-system/core-web/commit/5ebdef89b14d56d901630aa61e098213704ba603)
14
+
3
15
  ## 4.13.0
4
16
 
5
17
  _version bump_
@@ -69,7 +69,7 @@
69
69
 
70
70
  - always provide `burgerMenuLabel` attribute for accessibility
71
71
 
72
- ## `DBNavigationItem` or `db-navigation-item`
72
+ ## `DBControlPanelNavigationItem` or `db-control-panel-navigation-item`
73
73
 
74
74
  - always provide `backButtonText` attribute for accessibility
75
75
  - must have children content (text or child elements)
@@ -81,7 +81,7 @@
81
81
  ## `DBTooltip` or `db-tooltip`
82
82
 
83
83
  - must not contain interactive elements (buttons, links, inputs, etc.) — use `DBPopover` for interactive content
84
- - must be a child of an interactive element (`button`, `a`, `DBButton`, `DBLink`, `DBNavigationItem`, `DBTabItem`, `input`, `select`, `textarea`, etc.) for accessibility
84
+ - must be a child of an interactive element (`button`, `a`, `DBButton`, `DBLink`, `DBControlPanelNavigationItem`, `DBTabItem`, `input`, `select`, `textarea`, etc.) for accessibility
85
85
 
86
86
  ## `DBIcon` or `db-icon`
87
87
 
@@ -92,6 +92,6 @@
92
92
  - always provide a `label` attribute for accessibility (for `DBCheckbox`, `DBRadio`, `DBSwitch` children text content also counts as label)
93
93
  - when using validation attributes (`required`, `minLength`, `maxLength`, `min`, `max`, `pattern`), always provide an `invalidMessage` attribute for better UX (exception: `DBRadio` with `required` does not need `invalidMessage`)
94
94
 
95
- ## Content components (`DBButton`, `DBLink`, `DBBadge`, `DBIcon`, `DBInfotext`, `DBNavigationItem`, `DBNotification`, `DBAccordionItem`)
95
+ ## Content components (`DBButton`, `DBLink`, `DBBadge`, `DBIcon`, `DBInfotext`, `DBControlPanelNavigationItem`, `DBNotification`, `DBAccordionItem`)
96
96
 
97
97
  - must have either a `text` property or children content — never leave them empty
@@ -32,21 +32,28 @@ The spacings are not part of the styling of the accordion items themselves.
32
32
  content: "";
33
33
  background-color: var(--db-divider-bg-color);
34
34
  position: absolute;
35
+ /* jscpd:ignore-start */
35
36
  block-size: var(--db-border-width-3xs);
36
37
  inset-block-start: 0;
37
38
  inset-inline: 0;
38
- /* stylelint-disable-next-line at-rule-empty-line-before */
39
+ /* stylelint-disable-next-line db-ux/use-border-color */
39
40
  }
40
41
  @media (forced-colors: active) {
41
- .db-accordion[data-variant=divider] db-accordion-item + db-accordion-item .db-accordion-item,
42
- .db-accordion[data-variant=divider] .db-accordion-item + .db-accordion-item, .db-accordion:not([data-variant]) db-accordion-item + db-accordion-item .db-accordion-item,
43
- .db-accordion:not([data-variant]) .db-accordion-item + .db-accordion-item {
44
- /* stylelint-disable-next-line no-invalid-position-declaration, db-ux/use-border-color */
45
- border: var(--db-border-width-3xs) solid var(--db-divider-bg-color);
42
+ .db-accordion[data-variant=divider] db-accordion-item + db-accordion-item .db-accordion-item::before,
43
+ .db-accordion[data-variant=divider] .db-accordion-item + .db-accordion-item::before, .db-accordion:not([data-variant]) db-accordion-item + db-accordion-item .db-accordion-item::before,
44
+ .db-accordion:not([data-variant]) .db-accordion-item + .db-accordion-item::before {
45
+ /* stylelint-disable-next-line db-ux/use-border-color */
46
+ border-block-start: var(--db-border-width-3xs) solid var(--db-divider-bg-color);
46
47
  }
47
48
  }
48
49
  .db-accordion[data-variant=divider] db-accordion-item + db-accordion-item .db-accordion-item::before,
49
50
  .db-accordion[data-variant=divider] .db-accordion-item + .db-accordion-item::before, .db-accordion:not([data-variant]) db-accordion-item + db-accordion-item .db-accordion-item::before,
51
+ .db-accordion:not([data-variant]) .db-accordion-item + .db-accordion-item::before {
52
+ /* stylelint-disable-next-line at-rule-empty-line-before */
53
+ /* jscpd:ignore-end */
54
+ }
55
+ .db-accordion[data-variant=divider] db-accordion-item + db-accordion-item .db-accordion-item::before,
56
+ .db-accordion[data-variant=divider] .db-accordion-item + .db-accordion-item::before, .db-accordion:not([data-variant]) db-accordion-item + db-accordion-item .db-accordion-item::before,
50
57
  .db-accordion:not([data-variant]) .db-accordion-item + .db-accordion-item::before {
51
58
  inset-block-start: calc(-1 * var(--db-spacing-fixed-sm));
52
59
  }
@@ -54,6 +61,26 @@ The spacings are not part of the styling of the accordion items themselves.
54
61
  .db-accordion[data-variant=card] .db-accordion-item + .db-accordion-item {
55
62
  margin-block-start: var(--db-spacing-fixed-sm);
56
63
  }
64
+ .db-accordion[data-variant=card] .db-accordion-item {
65
+ background-color: var(--db-adaptive-bg-basic-level-1-default);
66
+ }
67
+ .db-accordion[data-variant=card] .db-accordion-item > details > summary:not(:disabled, [aria-disabled=true], [tabindex="-1"], :has(:disabled)) {
68
+ /* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
69
+ }
70
+ .db-accordion[data-variant=card] .db-accordion-item > details > summary:not(:disabled, [aria-disabled=true], [tabindex="-1"], :has(:disabled)):hover {
71
+ cursor: var(--db-overwrite-cursor, pointer);
72
+ background-color: var(--db-adaptive-bg-basic-level-1-hovered);
73
+ }
74
+ .db-accordion[data-variant=card] .db-accordion-item > details > summary:not(:disabled, [aria-disabled=true], [tabindex="-1"], :has(:disabled)):active {
75
+ cursor: var(--db-overwrite-cursor, pointer);
76
+ background-color: var(--db-adaptive-bg-basic-level-1-pressed);
77
+ }
78
+ .db-accordion[data-variant=card] .db-accordion-item:has(> details[aria-disabled=true]) {
79
+ opacity: var(--db-opacity-md);
80
+ }
81
+ .db-accordion[data-variant=card] .db-accordion-item:has(> details[aria-disabled=true]) > details[aria-disabled=true] {
82
+ opacity: 1;
83
+ }
57
84
  .db-accordion[data-variant=card] .db-accordion-item {
58
85
  /*
59
86
  Adding the component-border to the item itself leads to a render error (tested in Chrome and Safari):
@@ -1,5 +1,6 @@
1
1
  @use "@db-ux/core-foundations/build/styles/helpers";
2
2
  @use "@db-ux/core-foundations/build/styles/variables";
3
+ @use "@db-ux/core-foundations/build/styles/colors";
3
4
  @use "../../styles/internal/component";
4
5
 
5
6
  @mixin accordion-subsequent-item-selector() {
@@ -40,6 +41,30 @@ The spacings are not part of the styling of the accordion items themselves.
40
41
  }
41
42
 
42
43
  .db-accordion-item {
44
+ // The whole card (summary + expanded content) is filled with a
45
+ // level-1 background, so an open item stays level-1 throughout.
46
+ background-color: colors.$db-adaptive-bg-basic-level-1-default;
47
+
48
+ > details > summary {
49
+ @include helpers.interactive-bg(
50
+ colors.$db-adaptive-bg-basic-level-1-hovered,
51
+ colors.$db-adaptive-bg-basic-level-1-pressed
52
+ );
53
+ }
54
+
55
+ // A disabled card must dim as a whole. The base disabled opacity
56
+ // sits on the inner `<details>` (see accordion-item.scss), which
57
+ // would leave the level-1 fill and border on the item fully
58
+ // opaque. Mirror the disabled state on the item and reset the
59
+ // inner one so the opacity does not stack.
60
+ &:has(> details[aria-disabled="true"]) {
61
+ opacity: variables.$db-opacity-md;
62
+
63
+ > details[aria-disabled="true"] {
64
+ opacity: 1;
65
+ }
66
+ }
67
+
43
68
  /*
44
69
  Adding the component-border to the item itself leads to a render error (tested in Chrome and Safari):
45
70
  On mouseover, a small white gap appears between the rounded border and the rounded gray area.
@@ -1,18 +1,13 @@
1
1
  .db-visually-hidden,
2
2
  [data-visually-hidden=true] {
3
- clip: rect(0, 0, 0, 0) !important;
4
- overflow: hidden !important;
5
- white-space: nowrap !important;
6
- font-size: 0 !important;
7
- all: initial;
8
- inset-block-start: 0 !important;
9
- block-size: 1px !important;
10
3
  position: absolute !important;
4
+ inset-block-start: 0 !important;
11
5
  inline-size: 1px !important;
12
- border-width: 0 !important;
13
- border-style: initial !important;
14
- border-color: initial !important;
15
- border-image: initial !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;
16
11
  padding: 0 !important;
17
12
  pointer-events: none !important;
18
13
  }
@@ -136,7 +131,7 @@
136
131
  padding-block-end: var(--db-spacing-fixed-lg);
137
132
  }
138
133
  .db-accordion-item > details > summary {
139
- background-color: var(--db-adaptive-bg-basic-level-1-default);
134
+ background-color: var(--db-adaptive-bg-basic-transparent-full-default);
140
135
  list-style: none;
141
136
  }
142
137
  .db-accordion-item > details > summary:not([hidden]) {
@@ -153,11 +148,11 @@
153
148
  }
154
149
  .db-accordion-item > details > summary:not(:disabled, [aria-disabled=true], [tabindex="-1"], :has(:disabled)):hover {
155
150
  cursor: var(--db-overwrite-cursor, pointer);
156
- background-color: var(--db-adaptive-bg-basic-level-1-hovered);
151
+ background-color: var(--db-adaptive-bg-basic-transparent-full-hovered);
157
152
  }
158
153
  .db-accordion-item > details > summary:not(:disabled, [aria-disabled=true], [tabindex="-1"], :has(:disabled)):active {
159
154
  cursor: var(--db-overwrite-cursor, pointer);
160
- background-color: var(--db-adaptive-bg-basic-level-1-pressed);
155
+ background-color: var(--db-adaptive-bg-basic-transparent-full-pressed);
161
156
  }
162
157
  .db-accordion-item > details > summary::-webkit-details-marker {
163
158
  display: none;
@@ -47,7 +47,9 @@
47
47
  @extend %dropdown-icon;
48
48
  @extend %db-overwrite-font-size-md;
49
49
 
50
- background-color: colors.$db-adaptive-bg-basic-level-1-default;
50
+ // Default (divider) variant: the summary blends into the page.
51
+ // The "card" variant overrides this with a level-1 fill in accordion.scss.
52
+ background-color: colors.$db-adaptive-bg-basic-transparent-full-default;
51
53
  list-style: none;
52
54
 
53
55
  @include helpers.display(flex);
@@ -58,8 +60,8 @@
58
60
  border-radius: variables.$db-border-radius-sm;
59
61
 
60
62
  @include helpers.interactive-bg(
61
- colors.$db-adaptive-bg-basic-level-1-hovered,
62
- colors.$db-adaptive-bg-basic-level-1-pressed
63
+ colors.$db-adaptive-bg-basic-transparent-full-hovered,
64
+ colors.$db-adaptive-bg-basic-transparent-full-pressed
63
65
  );
64
66
 
65
67
  &::-webkit-details-marker {
@@ -245,5 +245,5 @@
245
245
  }
246
246
 
247
247
  [data-has-badge=true] {
248
- position: relative;
248
+ position: var(--db-has-badge-position, relative);
249
249
  }
@@ -116,5 +116,5 @@
116
116
  // Global styles
117
117
 
118
118
  [data-has-badge="true"] {
119
- position: relative;
119
+ position: var(--db-has-badge-position, relative);
120
120
  }
@@ -135,11 +135,3 @@
135
135
  .db-button:is(:disabled, [aria-disabled=true]) {
136
136
  opacity: var(--db-opacity-md);
137
137
  }
138
- .db-button:has(> .db-button) {
139
- margin: 0;
140
- padding: 0;
141
- block-size: var(--db-sizing-md);
142
- }
143
- .db-button:has(> .db-button)::before {
144
- content: none;
145
- }
@@ -8,15 +8,4 @@
8
8
  &:is(:disabled, [aria-disabled="true"]) {
9
9
  opacity: variables.$db-opacity-md;
10
10
  }
11
-
12
- // Workaround for current stencil implementation for header
13
- &:has(> .db-button) {
14
- margin: 0;
15
- padding: 0;
16
- block-size: variables.$db-sizing-md;
17
-
18
- &::before {
19
- content: none;
20
- }
21
- }
22
11
  }
@@ -1,18 +1,13 @@
1
1
  .db-visually-hidden,
2
2
  [data-visually-hidden=true] {
3
- clip: rect(0, 0, 0, 0) !important;
4
- overflow: hidden !important;
5
- white-space: nowrap !important;
6
- font-size: 0 !important;
7
- all: initial;
8
- inset-block-start: 0 !important;
9
- block-size: 1px !important;
10
3
  position: absolute !important;
4
+ inset-block-start: 0 !important;
11
5
  inline-size: 1px !important;
12
- border-width: 0 !important;
13
- border-style: initial !important;
14
- border-color: initial !important;
15
- border-image: initial !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;
16
11
  padding: 0 !important;
17
12
  pointer-events: none !important;
18
13
  }
@@ -0,0 +1,53 @@
1
+ /* stylelint-disable-next-line scss/dollar-variable-colon-space-after */
2
+ /* stylelint-disable-next-line scss/dollar-variable-colon-space-after */
3
+ /* Variants for adaptive components like input, select, notification, ... */
4
+ .db-control-panel-brand a {
5
+ overflow: hidden;
6
+ text-indent: 100%;
7
+ white-space: nowrap;
8
+ }
9
+
10
+ .db-control-panel-brand {
11
+ font: var(--db-type-body-md);
12
+ /* Those variables are only for components to calculate heights and change icons */
13
+ --db-icon-font-weight: var(--db-base-body-icon-weight-md);
14
+ --db-icon-font-size: var(--db-base-body-icon-font-size-md);
15
+ }
16
+
17
+ .db-control-panel-desktop-brand-container {
18
+ display: flex;
19
+ grid-area: brand;
20
+ }
21
+
22
+ .db-control-panel-brand:not([hidden]) {
23
+ display: flex;
24
+ }
25
+ .db-control-panel-brand {
26
+ align-items: center;
27
+ block-size: var(--db-sizing-md);
28
+ min-block-size: var(--db-sizing-md);
29
+ inline-size: fit-content;
30
+ gap: var(--db-spacing-fixed-sm);
31
+ position: relative;
32
+ grid-area: brand;
33
+ }
34
+ .db-control-panel-brand::before {
35
+ content: "";
36
+ }
37
+ @supports (content: ""/"") {
38
+ .db-control-panel-brand::before {
39
+ content: ""/"";
40
+ }
41
+ }
42
+ .db-control-panel-brand::before {
43
+ block-size: 1lh;
44
+ aspect-ratio: var(--db-logo-aspect-ratio, 1);
45
+ background-image: var(--db-logo-url);
46
+ background-repeat: no-repeat;
47
+ background-size: auto var(--db-sizing-sm);
48
+ }
49
+ .db-control-panel-brand a {
50
+ text-decoration: none;
51
+ position: absolute;
52
+ inset: 0;
53
+ }
@@ -0,0 +1,48 @@
1
+ @use "@db-ux/core-foundations/build/styles/variables";
2
+ @use "@db-ux/core-foundations/build/styles/colors";
3
+ @use "@db-ux/core-foundations/build/styles/fonts";
4
+ @use "@db-ux/core-foundations/build/styles/helpers";
5
+
6
+ .db-control-panel-desktop-brand-container {
7
+ display: flex;
8
+ grid-area: brand;
9
+ }
10
+
11
+ .db-control-panel-brand {
12
+ @extend %db-overwrite-font-size-md;
13
+ @include helpers.display(flex);
14
+
15
+ align-items: center;
16
+ block-size: variables.$db-sizing-md;
17
+ min-block-size: variables.$db-sizing-md;
18
+ inline-size: fit-content;
19
+ gap: variables.$db-spacing-fixed-sm;
20
+ position: relative;
21
+ grid-area: brand;
22
+
23
+ // The brand logo depends on the theme package (e.g. @db-ux/db-theme)
24
+ // providing --db-logo-url and --db-logo-aspect-ratio CSS custom properties.
25
+ // Without a theme, the logo will not be visible.
26
+ &::before {
27
+ content: "";
28
+
29
+ @supports (content: ""/"") {
30
+ content: "" / "";
31
+ }
32
+
33
+ block-size: 1lh;
34
+ aspect-ratio: var(--db-logo-aspect-ratio, 1);
35
+ background-image: var(--db-logo-url);
36
+ background-repeat: no-repeat;
37
+ background-size: auto #{variables.$db-sizing-sm};
38
+ }
39
+
40
+ // Deactivate underline on site name being made clickable by added to the link as well
41
+ a {
42
+ text-decoration: none;
43
+ position: absolute;
44
+ inset: 0;
45
+
46
+ @extend %a11y-visually-hidden-text;
47
+ }
48
+ }