From 950879b9c706fd19224a5a12be5a12a393739938 Mon Sep 17 00:00:00 2001 From: sean-brydon <55134778+sean-brydon@users.noreply.github.com> Date: Mon, 9 Dec 2024 23:39:10 +0000 Subject: [PATCH] fix: sorting insights table for booking status (#17982) * Revert "merge columns (#17938)" This reverts commit a3ceefc00ed4600a7026954e873abd9cad4a356f. * sort order by status --- .../components/RoutingFormResponsesTable.tsx | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/packages/features/insights/components/RoutingFormResponsesTable.tsx b/packages/features/insights/components/RoutingFormResponsesTable.tsx index f7a37549d0..740e1cf84c 100644 --- a/packages/features/insights/components/RoutingFormResponsesTable.tsx +++ b/packages/features/insights/components/RoutingFormResponsesTable.tsx @@ -319,6 +319,14 @@ export function RoutingFormResponsesTable({ }); }, [flatData, headers, isHeadersLoading]); + const statusOrder: Record = { + [BookingStatus.ACCEPTED]: 1, + [BookingStatus.PENDING]: 2, + [BookingStatus.AWAITING_HOST]: 3, + [BookingStatus.CANCELLED]: 4, + [BookingStatus.REJECTED]: 5, + }; + const columnHelper = createColumnHelper(); const columns = useMemo( @@ -358,6 +366,14 @@ export function RoutingFormResponsesTable({ ), + sortingFn: (rowA, rowB) => { + const statusA = rowA.original.routedToBooking?.status; + const statusB = rowB.original.routedToBooking?.status; + // Default to highest number (5) + 1 for null/undefined values to sort them last + const orderA = statusA ? statusOrder[statusA] : 6; + const orderB = statusB ? statusOrder[statusB] : 6; + return orderA - orderB; + }, }), columnHelper.accessor("routedToBooking", { id: "bookingAt",