Skip to content

Commit 8abe670

Browse files
fix(filters): correct formatting and spacing in sortSections and dropdown components for improved readability
1 parent 9af895a commit 8abe670

File tree

1 file changed

+22
-34
lines changed

1 file changed

+22
-34
lines changed

dashboard/src/components/users/filters.tsx

Lines changed: 22 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -24,27 +24,27 @@ const sortSections = [
2424
label: 'username',
2525
items: [
2626
{ value: 'username', label: 'sort.username.asc' },
27-
{ value: '-username', label: 'sort.username.desc' }
28-
]
27+
{ value: '-username', label: 'sort.username.desc' },
28+
],
2929
},
3030
{
3131
key: 'expire',
3232
icon: Calendar,
3333
label: 'expireDate',
3434
items: [
3535
{ value: 'expire', label: 'sort.expire.oldest' },
36-
{ value: '-expire', label: 'sort.expire.newest' }
37-
]
36+
{ value: '-expire', label: 'sort.expire.newest' },
37+
],
3838
},
3939
{
4040
key: 'usage',
4141
icon: ChartPie,
4242
label: 'dataUsage',
4343
items: [
4444
{ value: 'used_traffic', label: 'sort.usage.low' },
45-
{ value: '-used_traffic', label: 'sort.usage.high' }
46-
]
47-
}
45+
{ value: '-used_traffic', label: 'sort.usage.high' },
46+
],
47+
},
4848
] as const
4949

5050
interface FiltersProps {
@@ -74,13 +74,14 @@ export const Filters = ({ filters, onFilterChange, refetch, advanceSearchOnOpen,
7474

7575
// Ultra-fast debounced search function
7676
const debouncedFilterChange = useMemo(
77-
() => debounce((value: string) => {
78-
onFilterChange({
79-
search: value,
80-
offset: 0, // Reset to first page when search is updated
81-
})
82-
}, 25), // Ultra-fast debounce
83-
[onFilterChange]
77+
() =>
78+
debounce((value: string) => {
79+
onFilterChange({
80+
search: value,
81+
offset: 0, // Reset to first page when search is updated
82+
})
83+
}, 25), // Ultra-fast debounce
84+
[onFilterChange],
8485
)
8586

8687
// Handle input change
@@ -177,16 +178,9 @@ export const Filters = ({ filters, onFilterChange, refetch, advanceSearchOnOpen,
177178
<div className="flex h-full items-center gap-1">
178179
<DropdownMenu>
179180
<DropdownMenuTrigger asChild>
180-
<Button
181-
size="icon-md"
182-
variant="ghost"
183-
className="relative flex items-center gap-2 border"
184-
aria-label={t('sortOptions', { defaultValue: 'Sort Options' })}
185-
>
181+
<Button size="icon-md" variant="ghost" className="relative flex items-center gap-2 border" aria-label={t('sortOptions', { defaultValue: 'Sort Options' })}>
186182
<ArrowUpDown className="h-4 w-4" />
187-
{filters.sort && filters.sort !== '-created_at' && (
188-
<div className="absolute -right-1 -top-1 h-2 w-2 rounded-full bg-primary" />
189-
)}
183+
{filters.sort && filters.sort !== '-created_at' && <div className="absolute -right-1 -top-1 h-2 w-2 rounded-full bg-primary" />}
190184
</Button>
191185
</DropdownMenuTrigger>
192186
<DropdownMenuContent align="end" className="w-52 md:w-56">
@@ -197,26 +191,20 @@ export const Filters = ({ filters, onFilterChange, refetch, advanceSearchOnOpen,
197191
<section.icon className="h-3 w-3" />
198192
<span className="text-xs md:text-sm">{t(section.label)}</span>
199193
</DropdownMenuLabel>
200-
194+
201195
{/* Section Items */}
202-
{section.items.map((item) => (
196+
{section.items.map(item => (
203197
<DropdownMenuItem
204198
key={item.value}
205199
onClick={() => handleSort && handleSort(item.value)}
206-
className={`whitespace-nowrap px-2 py-1.5 text-xs md:px-3 md:py-2 md:text-sm ${
207-
filters.sort === item.value ? 'bg-accent' : ''
208-
}`}
200+
className={`whitespace-nowrap px-2 py-1.5 text-xs md:px-3 md:py-2 md:text-sm ${filters.sort === item.value ? 'bg-accent' : ''}`}
209201
>
210202
<section.icon className="mr-1.5 h-3 w-3 flex-shrink-0 md:mr-2 md:h-4 md:w-4" />
211203
<span className="truncate">{t(item.label)}</span>
212-
{filters.sort === item.value && (
213-
<ChevronDown className={`ml-auto h-3 w-3 flex-shrink-0 md:h-4 md:w-4 ${
214-
item.value.startsWith('-') ? '' : 'rotate-180'
215-
}`} />
216-
)}
204+
{filters.sort === item.value && <ChevronDown className={`ml-auto h-3 w-3 flex-shrink-0 md:h-4 md:w-4 ${item.value.startsWith('-') ? '' : 'rotate-180'}`} />}
217205
</DropdownMenuItem>
218206
))}
219-
207+
220208
{/* Add separator except for last section */}
221209
{sectionIndex < sortSections.length - 1 && <DropdownMenuSeparator />}
222210
</div>

0 commit comments

Comments
 (0)