diff --git a/lib/query/hooks/useDealsQuery.ts b/lib/query/hooks/useDealsQuery.ts index b3e6f47fc..f9681d1a9 100644 --- a/lib/query/hooks/useDealsQuery.ts +++ b/lib/query/hooks/useDealsQuery.ts @@ -517,6 +517,14 @@ export const useAddDealItem = () => { if (error) throw error; return { dealId, item: data! }; }, + onSuccess: (data, { dealId }) => { + queryClient.setQueryData(DEALS_VIEW_KEY, (old) => { + if (!old) return old; + return old.map((d) => + d.id === dealId ? { ...d, items: [...(d.items ?? []), data.item] } : d + ); + }); + }, onSettled: (_data, _error, { dealId }) => { queryClient.invalidateQueries({ queryKey: queryKeys.deals.detail(dealId) }); queryClient.invalidateQueries({ queryKey: queryKeys.deals.lists() }); @@ -536,6 +544,14 @@ export const useRemoveDealItem = () => { if (error) throw error; return { dealId, itemId }; }, + onSuccess: (data) => { + queryClient.setQueryData(DEALS_VIEW_KEY, (old) => { + if (!old) return old; + return old.map((d) => + d.id === data.dealId ? { ...d, items: (d.items ?? []).filter((i) => i.id !== data.itemId) } : d + ); + }); + }, onSettled: (_data, _error, { dealId }) => { queryClient.invalidateQueries({ queryKey: queryKeys.deals.detail(dealId) }); queryClient.invalidateQueries({ queryKey: queryKeys.deals.lists() }); diff --git a/vercel.json b/vercel.json index 592a5ce35..a502399f4 100644 --- a/vercel.json +++ b/vercel.json @@ -10,6 +10,6 @@ "crons": [ { "path": "/api/cron/daily-briefing", "schedule": "0 8 * * 1-5" }, { "path": "/api/cron/template-sync", "schedule": "0 6 * * *" }, - { "path": "/api/cron/stage-evaluations", "schedule": "* * * * *" } + { "path": "/api/cron/stage-evaluations", "schedule": "0 0 * * *" } ] }