Skip to content

Commit 722fbe4

Browse files
authored
feat(dropdownmenu): css changes and data attrs (#2387)
part of #2295
1 parent c2f0f07 commit 722fbe4

File tree

4 files changed

+24
-35
lines changed

4 files changed

+24
-35
lines changed

.changeset/eleven-peaches-agree.md

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
"@digdir/designsystemet-css": patch
3+
"@digdir/designsystemet-react": patch
4+
---
5+
6+
dropdownmenu: Style using data attributes

packages/css/dropdownmenu.css

+15-29
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,6 @@
11
.ds-dropdownmenu {
2-
--dsc-dropdownmenu-background: var(--ds-color-neutral-background-default);
3-
--dsc-dropdownmenu-padding: var(--ds-spacing-2);
4-
--dsc-dropdownmenu-border-radius: min(1rem, var(--ds-border-radius-md));
5-
--dsc-dropdownmenu-border: 1px solid var(--ds-color-neutral-border-subtle);
6-
--dsc-dropdownmenu-min-width: 260px;
7-
--dsc-dropdownmenu-shadow: var(--ds-shadow-md);
8-
--dsc-dropdownmenu-hr-border-color: var(--ds-color-neutral-border-subtle);
2+
--dsc-dropdownmenu-padding: var(--ds-spacing-3) var(--ds-spacing-2);
3+
--dsc-dropdownmenu-min-width: 16rem;
94
--dsc-dropdownmenu-item-padding: 0 var(--ds-spacing-4);
105
--dsc-dropdownmenu-header-padding: var(--ds-spacing-2) var(--ds-spacing-4);
116

@@ -14,30 +9,21 @@
149
z-index: 1500;
1510
margin: 0;
1611
list-style: none;
17-
border-radius: var(--dsc-dropdownmenu-border-radius);
18-
box-shadow: var(--dsc-dropdownmenu-shadow);
19-
background-color: var(--dsc-dropdownmenu-background);
20-
border: var(--dsc-dropdownmenu-border);
12+
border-radius: min(1rem, var(--ds-border-radius-md));
13+
box-shadow: var(--ds-shadow-md);
14+
background-color: var(--ds-color-neutral-background-default);
15+
border: 1px solid var(--ds-color-neutral-border-subtle);
2116
min-width: var(--dsc-dropdownmenu-min-width);
22-
}
23-
24-
.ds-dropdownmenu--sm {
25-
--dsc-dropdownmenu-padding: var(--ds-spacing-2);
26-
--dsc-dropdownmenu-min-width: 240px;
27-
}
2817

29-
.ds-dropdownmenu--md {
30-
--dsc-dropdownmenu-padding: var(--ds-spacing-3) var(--ds-spacing-2);
31-
--dsc-dropdownmenu-min-width: 260px;
32-
}
33-
34-
.ds-dropdownmenu--lg {
35-
--dsc-dropdownmenu-padding: var(--ds-spacing-4) var(--ds-spacing-2);
36-
--dsc-dropdownmenu-min-width: 280px;
37-
}
18+
&[data-size='sm'] {
19+
--dsc-dropdownmenu-padding: var(--ds-spacing-2);
20+
--dsc-dropdownmenu-min-width: 15rem;
21+
}
3822

39-
.ds-dropdownmenu > hr {
40-
border-color: var(--dsc-dropdownmenu-hr-border-color) !important;
23+
&[data-size='lg'] {
24+
--dsc-dropdownmenu-padding: var(--ds-spacing-4) var(--ds-spacing-2);
25+
--dsc-dropdownmenu-min-width: 18rem;
26+
}
4127
}
4228

4329
.ds-dropdownmenu__item {
@@ -46,7 +32,7 @@
4632
width: 100%;
4733
}
4834

49-
.ds-dropdownmenu__section {
35+
.ds-dropdownmenu__group {
5036
margin: 0;
5137
padding: 0;
5238
list-style: none;

packages/react/src/components/DropdownMenu/DropdownMenuContent.tsx

+2-5
Original file line numberDiff line numberDiff line change
@@ -101,11 +101,8 @@ export const DropdownMenuContent = forwardRef<
101101
ref: floatingRef,
102102
tabIndex: undefined,
103103
})}
104-
className={cl(
105-
'ds-dropdownmenu',
106-
`ds-dropdownmenu--${size}`,
107-
className,
108-
)}
104+
className={cl('ds-dropdownmenu', className)}
105+
data-size={size}
109106
{...rest}
110107
>
111108
{children}

packages/react/src/components/DropdownMenu/DropdownMenuGroup.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ export const DropdownMenuGroup = forwardRef<
2525
{...(heading ? { 'aria-labelledby': headingId } : {})}
2626
ref={ref}
2727
role='group'
28-
className={'ds-dropdownmenu__section'}
28+
className={'ds-dropdownmenu__group'}
2929
{...rest}
3030
>
3131
{heading && (

0 commit comments

Comments
 (0)