Skip to content

Commit 02639af

Browse files
fix(users-table): enhance sorting logic to toggle between ascending and descending with reset option
1 parent c085e9c commit 02639af

File tree

1 file changed

+18
-8
lines changed

1 file changed

+18
-8
lines changed

dashboard/src/components/users/users-table.tsx

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -136,16 +136,26 @@ const UsersTable = memo(() => {
136136

137137
// Clean the column name in case it comes with prefix
138138
const cleanColumn = column.startsWith('-') ? column.slice(1) : column
139+
const isDescending = column.startsWith('-')
139140

140-
if (filters.sort === cleanColumn) {
141-
// If currently ascending, make it descending
142-
newSort = '-' + cleanColumn
143-
} else if (filters.sort === '-' + cleanColumn) {
144-
// If currently descending, make it ascending (toggle back)
145-
newSort = cleanColumn
141+
if (isDescending) {
142+
// User clicked on descending option
143+
if (filters.sort === '-' + cleanColumn) {
144+
// If already descending, reset to default
145+
newSort = '-created_at'
146+
} else {
147+
// Set to descending
148+
newSort = '-' + cleanColumn
149+
}
146150
} else {
147-
// If different column or default, make it ascending
148-
newSort = cleanColumn
151+
// User clicked on ascending option
152+
if (filters.sort === cleanColumn) {
153+
// If already ascending, reset to default
154+
newSort = '-created_at'
155+
} else {
156+
// Set to ascending
157+
newSort = cleanColumn
158+
}
149159
}
150160

151161
setFilters(prev => ({ ...prev, sort: newSort }))

0 commit comments

Comments
 (0)