Skip to content

Commit 95b06e5

Browse files
committed
DBC22-1727: interim commit
1 parent 573afcf commit 95b06e5

File tree

2 files changed

+22
-8
lines changed

2 files changed

+22
-8
lines changed

src/frontend/src/Components/events/EventsTable.js

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,11 @@ import {
2121
import './EventsTable.scss';
2222

2323
export default function EventsTable({columns, data, sortingHandler, routeHandler}) {
24-
const [sorting, setSorting] = useState([{ desc: false, id: 'severity' }]);
24+
const [sorting, setSorting] = useState([{ desc: true, id: 'severity' }]);
2525

2626
const prioritySortFn = (rowA, rowB, columnId) => {
27-
const aValue = rowA.getValue(columnId).value;
28-
const bValue = rowA.getValue(columnId).value;
27+
const aValue = rowA.getValue(columnId);
28+
const bValue = rowA.getValue(columnId);
2929

3030
if (aValue != bValue) {
3131
return aValue < bValue ? 1 : -1;
@@ -39,6 +39,13 @@ export default function EventsTable({columns, data, sortingHandler, routeHandler
3939
}
4040
}
4141

42+
const reversedPrioritySortFn = (rowA, rowB, columnId) => {
43+
console.log('text');
44+
45+
// return prioritySortFn(rowA, rowB, columnId) * -1;
46+
return 10293414;
47+
}
48+
4249
const table = useReactTable({
4350
data: data,
4451
columns: columns,
@@ -53,6 +60,7 @@ export default function EventsTable({columns, data, sortingHandler, routeHandler
5360
onSortingChange: setSorting,
5461
sortingFns: {
5562
prioritySort: prioritySortFn,
63+
reversedPrioritySort: reversedPrioritySortFn,
5664
},
5765
getPaginationRowModel: getPaginationRowModel(),
5866
getCoreRowModel: getCoreRowModel(),
@@ -64,9 +72,13 @@ export default function EventsTable({columns, data, sortingHandler, routeHandler
6472
}, [sorting]);
6573

6674
const toggleSortingHandler = (column) => {
75+
if (!column.getCanSort()) return;
76+
6777
const nextOrder = column.getNextSortingOrder();
68-
// desc=false to sort by asc when nextOrder is not 'asc' or 'desc'
69-
column.toggleSorting(!nextOrder ? nextOrder : null);
78+
79+
// sort by asc when nextOrder is not 'asc' or 'desc', or desc on sortDescFirst columns
80+
const isDescFirst = column.id == 'severity' || column.id == 'last_updated';
81+
column.toggleSorting(!nextOrder ? isDescFirst : null);
7082
}
7183

7284
const ascIcon = <FontAwesomeIcon icon={faArrowUpLong} alt="ascending order" />;

src/frontend/src/pages/EventsListPage.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,19 +65,20 @@ export default function EventsListPage() {
6565
{
6666
header: 'Type',
6767
accessorKey: 'display_category',
68-
sortingFn: 'prioritySort',
68+
// sortingFn: 'prioritySort',
6969
cell: (props) => <EventTypeIcon event={props.row.original} />,
7070
},
7171
{
7272
header: 'Severity',
7373
accessorKey: 'severity',
74-
sortingFn: 'prioritySort',
74+
sortingFn: 'reversedPrioritySort',
75+
sortDescFirst: true,
7576
cell: (props) => <span>{props.getValue().toLowerCase()}</span>,
7677
},
7778
{
7879
header: 'Road',
7980
accessorKey: 'route_at',
80-
sortingFn: 'prioritySort',
81+
// sortingFn: 'prioritySort',
8182
},
8283
{
8384
header: 'Direction',
@@ -94,6 +95,7 @@ export default function EventsListPage() {
9495
header: 'Last Update',
9596
accessorKey: 'last_updated',
9697
cell: (props) => <FriendlyTime date={props.getValue()} />,
98+
sortDescFirst: true,
9799
},
98100
{
99101
header: 'Map',

0 commit comments

Comments
 (0)