diff --git a/apps/web/src/pages/mail.tsx b/apps/web/src/pages/mail.tsx index 31a58fc..22d822a 100644 --- a/apps/web/src/pages/mail.tsx +++ b/apps/web/src/pages/mail.tsx @@ -226,7 +226,7 @@ export function MailPage() { await qc.cancelQueries({ queryKey: ["labels"] }) const prevLabels = qc.getQueryData>(["labels", activeMailboxId]) const tempLabel: MailLabel = { id: `temp-${Date.now()}`, name, color: "" } - qc.setQueryData>(["labels", activeMailboxId], (current) => current ? { ...current, items: [...current.items, tempLabel] } : { items: [tempLabel] }) + qc.setQueryData>(["labels", activeMailboxId], (current) => current ? { ...current, items: [...(current.items || []), tempLabel] } : { items: [tempLabel] }) return { prevLabels } }, onError: (_error, _name, context) => { @@ -240,7 +240,7 @@ export function MailPage() { onMutate: async (id) => { await qc.cancelQueries({ queryKey: ["labels"] }) const prevLabels = qc.getQueryData>(["labels", activeMailboxId]) - qc.setQueryData>(["labels", activeMailboxId], (current) => current ? { ...current, items: current.items.filter((l) => l.id !== id) } : current) + qc.setQueryData>(["labels", activeMailboxId], (current) => current ? { ...current, items: (current.items || []).filter((l) => l.id !== id) } : current) return { prevLabels } }, onSuccess: (_data, id) => {