fix: harden ticket client data guards
This commit is contained in:
parent
5c5207ceb8
commit
a3d431efa8
9 changed files with 129 additions and 111 deletions
|
|
@ -16,11 +16,10 @@ interface TicketQueueSummaryProps {
|
|||
export function TicketQueueSummaryCards({ queues }: TicketQueueSummaryProps) {
|
||||
const { convexUserId, isStaff } = useAuth()
|
||||
const enabled = Boolean(isStaff && convexUserId)
|
||||
const queueArgs = enabled
|
||||
? { tenantId: DEFAULT_TENANT_ID, viewerId: convexUserId as Id<"users"> }
|
||||
: "skip"
|
||||
const queueArgs = enabled ? { tenantId: DEFAULT_TENANT_ID, viewerId: convexUserId as Id<"users"> } : undefined
|
||||
const fromServer = useQuery(enabled ? api.queues.summary : "skip", queueArgs)
|
||||
const data: TicketQueueSummary[] = (queues ?? (fromServer as TicketQueueSummary[] | undefined) ?? [])
|
||||
const serverData = Array.isArray(fromServer) ? fromServer : undefined
|
||||
const data: TicketQueueSummary[] = queues ?? serverData ?? []
|
||||
|
||||
if (!queues && fromServer === undefined) {
|
||||
return (
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue