From a99eda21afab3c10964bc9155faa54c94537875e Mon Sep 17 00:00:00 2001 From: sean-brydon <55134778+sean-brydon@users.noreply.github.com> Date: Tue, 19 Nov 2024 11:24:45 +0000 Subject: [PATCH] chore: booking status reporting (#17733) * move booking status into new column * update i18n * nowrap + badge for submitedAt to provide consistant feel to other dates --- .../components/RoutingFormResponsesTable.tsx | 61 +++++++++++-------- 1 file changed, 37 insertions(+), 24 deletions(-) diff --git a/packages/features/insights/components/RoutingFormResponsesTable.tsx b/packages/features/insights/components/RoutingFormResponsesTable.tsx index 9a73fffbaf..866cb5ee98 100644 --- a/packages/features/insights/components/RoutingFormResponsesTable.tsx +++ b/packages/features/insights/components/RoutingFormResponsesTable.tsx @@ -87,10 +87,10 @@ function BookedByCell({ rowId: number; }) { const cellId = useId(); - if (!attendees || attendees.length === 0) return null; + if (!attendees || attendees.length === 0) return
; return ( -
+
{attendees.map((attendee) => ( @@ -141,7 +141,24 @@ function ResponseValueCell({ value, rowId }: { value: string[]; rowId: number }) ); } -function BookingStatusCell({ +function BookingStatusBadge({ booking }: { booking: RoutingFormResponse["routedToBooking"] }) { + let badgeVariant: BadgeProps["variant"] = "success"; + + if (!booking) return null; + + switch (booking.status) { + case BookingStatus.REJECTED: + case BookingStatus.AWAITING_HOST: + case BookingStatus.PENDING: + case BookingStatus.CANCELLED: + badgeVariant = "warning"; + break; + } + + return {bookingStatusToText(booking.status)}; +} + +function BookingAtCell({ booking, rowId, copyToClipboard, @@ -155,23 +172,7 @@ function BookingStatusCell({ const cellId = useId(); if (!booking || !booking.user) { - return ( -
- - {t("no_booking")} - -
- ); - } - - let badgeVariant: BadgeProps["variant"] = "success"; - switch (booking.status) { - case BookingStatus.REJECTED: - case BookingStatus.AWAITING_HOST: - case BookingStatus.PENDING: - case BookingStatus.CANCELLED: - badgeVariant = "warning"; - break; + return
; } return ( @@ -180,7 +181,7 @@ function BookingStatusCell({
- {dayjs(booking.createdAt).format("MMM D, YYYY HH:mm")} + {dayjs(booking.createdAt).format("MMM D, YYYY HH:mm")}
@@ -206,7 +207,7 @@ function BookingStatusCell({
Status: - {bookingStatusToText(booking.status)} +
@@ -346,11 +347,21 @@ export function RoutingFormResponsesTable({ }) ?? []), columnHelper.accessor("routedToBooking", { id: "bookingStatus", + header: t("routing_form_insights_booking_status"), + size: 250, + cell: (info) => ( +
+ +
+ ), + }), + columnHelper.accessor("routedToBooking", { + id: "bookingAt", header: t("routing_form_insights_booking_at"), size: 250, cell: (info) => (
- ( -
{dayjs(info.getValue()).format("MMM D, YYYY HH:mm")}
+
+ {dayjs(info.getValue()).format("MMM D, YYYY HH:mm")} +
), }), ],