Skip to content

Commit 39850b9

Browse files
authored
chore: Refine Progression Sidebar hover and active states (#8206)
* chore: removes progression sidebar hover and active backgrounds * chore: progression active text styling
1 parent cf09fd0 commit 39850b9

File tree

2 files changed

+34
-48
lines changed

2 files changed

+34
-48
lines changed

packages/ui-components/src/Containers/Sidebar/SidebarItem/index.module.css

Lines changed: 33 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -14,29 +14,6 @@
1414
text-neutral-800
1515
dark:text-neutral-200;
1616

17-
&:not(.active):hover {
18-
/* Apply hover background to the full item width */
19-
@apply bg-neutral-100
20-
dark:bg-neutral-900;
21-
22-
/* Ensure text colors contrast with hover background */
23-
.label {
24-
@apply text-neutral-900
25-
dark:text-neutral-100;
26-
}
27-
28-
.icon {
29-
@apply scale-110
30-
text-green-600
31-
dark:text-green-400;
32-
}
33-
34-
.progressionIcon {
35-
@apply fill-green-200
36-
dark:fill-green-300;
37-
}
38-
}
39-
4017
.label {
4118
@apply font-regular
4219
flex
@@ -46,48 +23,59 @@
4623
text-sm;
4724
}
4825

49-
.progressionIcon {
50-
@apply shrink-0
51-
fill-neutral-200
52-
stroke-white
53-
stroke-[4]
54-
dark:fill-neutral-800
55-
dark:stroke-neutral-950;
56-
}
57-
5826
.icon {
5927
@apply size-3
6028
text-neutral-500
6129
dark:text-neutral-200;
6230
}
6331

6432
&.progression {
33+
&.active {
34+
@apply text-neutral-900
35+
dark:text-white;
36+
37+
.hexagonIcon {
38+
@apply fill-green-500;
39+
}
40+
}
41+
6542
.label {
6643
@apply p-1;
6744
}
6845

69-
/* On hover, use full-width background on the item (set above) */
70-
&:not(.active):hover {
71-
@apply bg-neutral-100
72-
dark:bg-neutral-900;
46+
.hexagonIcon {
47+
@apply shrink-0
48+
fill-neutral-200
49+
stroke-white
50+
stroke-[4]
51+
dark:fill-neutral-800
52+
dark:stroke-neutral-950;
7353
}
54+
}
7455

75-
/* Avoid extra pill background on the label when hovering */
76-
&:not(.active):hover .label {
77-
@apply rounded-none
78-
bg-transparent;
56+
&:not(.active):not(.progression):hover {
57+
/* Apply hover background to the full item width */
58+
@apply bg-neutral-100
59+
dark:bg-neutral-900;
60+
61+
/* Ensure text colors contrast with hover background */
62+
.label {
63+
@apply text-neutral-900
64+
dark:text-neutral-100;
65+
}
66+
67+
.icon {
68+
@apply scale-110
69+
text-green-600
70+
dark:text-green-400;
7971
}
8072
}
8173

82-
&.active {
74+
&.active:not(.progression) {
8375
/* Full-width active background and readable text */
8476
@apply bg-green-600
8577
text-white;
8678

87-
.progressionIcon {
88-
@apply fill-green-500;
89-
}
90-
9179
/* Remove pill background on the label; keep full-width bg on the item */
9280
.label {
9381
@apply rounded-none

packages/ui-components/src/Containers/Sidebar/SidebarItem/index.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,7 @@ const SidebarItem: FC<SidebarItemProps> = ({
3131
activeClassName={styles.active}
3232
{...props}
3333
>
34-
{showProgressionIcons && (
35-
<ProgressionIcon className={styles.progressionIcon} />
36-
)}
34+
{showProgressionIcons && <ProgressionIcon className={styles.hexagonIcon} />}
3735

3836
<div className={styles.label}>
3937
<span>{label}</span>

0 commit comments

Comments
 (0)