gitscope
https://dev.kronoz.win/r/marzneshin.git
app/dashboard/src/components/table/handle-sort.ts · v0.1.2
Source
1 63b702d Mardin 2y ago
2 63b702d Mardin 2y ago import { FilterType } from 'types';
3 63b702d Mardin 2y ago
4 63b702d Mardin 2y ago export const handleSort = (
5 63b702d Mardin 2y ago filters: FilterType,
6 63b702d Mardin 2y ago column: string,
7 63b702d Mardin 2y ago onFilterChange: (filters: Partial<FilterType>) => void
8 63b702d Mardin 2y ago ) => {
9 63b702d Mardin 2y ago let newSort = filters.sort;
10 63b702d Mardin 2y ago if (newSort.includes(column)) {
11 63b702d Mardin 2y ago if (newSort.startsWith('-')) {
12 63b702d Mardin 2y ago newSort = '-created_at';
13 63b702d Mardin 2y ago } else {
14 63b702d Mardin 2y ago newSort = '-' + column;
15 63b702d Mardin 2y ago }
16 63b702d Mardin 2y ago } else {
17 63b702d Mardin 2y ago newSort = column;
18 63b702d Mardin 2y ago }
19 63b702d Mardin 2y ago onFilterChange({
20 63b702d Mardin 2y ago sort: newSort,
21 63b702d Mardin 2y ago });
22 63b702d Mardin 2y ago };