Skip to content

Commit f5c5962

Browse files
committed
Refactor difficulty checkbox handling in ConfigurationPanel
1 parent 135f619 commit f5c5962

File tree

1 file changed

+32
-27
lines changed

1 file changed

+32
-27
lines changed

frontend/src/app/dashboard/_components/FindMatch/ConfigurationPanel.tsx

Lines changed: 32 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@ export default function ConfigurationPanel({
3333
difficulties: difficultyOptions,
3434
topics: topicOptions,
3535
}: MatchConfigurationPanelProps) {
36-
3736
const [difficultyRef, { height: difficultyHeight }] = useMeasure();
3837
const [topicsRef, { height: topicsSelectionHeight }] = useMeasure();
3938

@@ -47,10 +46,6 @@ export default function ConfigurationPanel({
4746
handleFindMatch,
4847
} = useFindMatchContext();
4948

50-
const handleDifficultyCheckboxChange = (text: Difficulty) => {
51-
setDifficulty(text);
52-
};
53-
5449
const handleTopicCheckboxChange = (text: Category) => {
5550
if (topics.includes(text)) {
5651
setTopics(topics.filter((item) => item !== text));
@@ -98,7 +93,7 @@ export default function ConfigurationPanel({
9893
<div
9994
ref={difficultyRef}
10095
className={cn(
101-
"grid grid-cols-2 gap-4 z-0 opacity-100 transition-all duration-500",
96+
"z-0 opacity-100 transition-all duration-500",
10297
collapseDifficulties && `-z-10 opacity-0`
10398
)}
10499
style={{
@@ -107,28 +102,38 @@ export default function ConfigurationPanel({
107102
}px`,
108103
}}
109104
>
110-
111-
<RadioGroup value={difficulties} onValueChange={(selectedValue: Difficulty) => setDifficulty(selectedValue)}>
112-
<div className="flex flex-row space-x-4">
113-
{difficultyOptions.map((difficultyOption) => (
114-
<div key={difficultyOption} className="flex items-center space-x-2 p-4">
115-
<RadioGroupItem
116-
value={difficultyOption}
117-
id={difficultyOption}
118-
className="flex items-center space-x-2">
119-
<span className="text-sm font-medium leading-none">{difficultyOption}</span>
120-
</RadioGroupItem>
121-
<label
122-
htmlFor={difficultyOption}
123-
className="text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
124-
>
125-
{difficultyOption}
126-
</label>
105+
<RadioGroup
106+
value={difficulties}
107+
onValueChange={(selectedValue: Difficulty) =>
108+
setDifficulty(selectedValue)
109+
}
110+
className="flex w-full"
111+
>
112+
<div className="flex flex-row justify-start w-full gap-12">
113+
{difficultyOptions.map((difficultyOption) => (
114+
<div
115+
key={difficultyOption}
116+
className="flex flex-row items-center gap-2"
117+
>
118+
<RadioGroupItem
119+
value={difficultyOption}
120+
id={difficultyOption}
121+
className="flex items-center space-x-2"
122+
>
123+
<span className="text-sm font-medium leading-none">
124+
{difficultyOption}
125+
</span>
126+
</RadioGroupItem>
127+
<label
128+
htmlFor={difficultyOption}
129+
className="text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
130+
>
131+
{difficultyOption}
132+
</label>
133+
</div>
134+
))}
127135
</div>
128-
))}
129-
</div>
130-
</RadioGroup>
131-
136+
</RadioGroup>
132137
</div>
133138
<Button
134139
onClick={() => setCollapseTopics(!collapseTopics)}

0 commit comments

Comments
 (0)