fix(frontend): keep entity and message deletes in sync
This commit is contained in:
@@ -255,8 +255,15 @@ export default function EditTaskPage() {
|
||||
|
||||
const deleteGeneratedMessageMutation = useMutation({
|
||||
mutationFn: (messageId: string) => deleteTaskGeneratedMessage(taskId, messageId),
|
||||
onSuccess: async () => {
|
||||
await queryClient.invalidateQueries({ queryKey: ['task-generated-messages', taskId] })
|
||||
onSuccess: ( _data, messageId) => {
|
||||
queryClient.setQueryData(
|
||||
['task-generated-messages', taskId],
|
||||
(
|
||||
currentMessages:
|
||||
| Awaited<ReturnType<typeof getTaskGeneratedMessages>>
|
||||
| undefined
|
||||
) => currentMessages?.filter((message) => message.id !== messageId) ?? []
|
||||
)
|
||||
},
|
||||
})
|
||||
|
||||
|
||||
@@ -37,7 +37,13 @@ export default function EntitiesPage() {
|
||||
|
||||
const deleteMutation = useMutation({
|
||||
mutationFn: (id: string) => deleteEntity(id),
|
||||
onSuccess: () => queryClient.invalidateQueries({ queryKey: ['entities'] }),
|
||||
onSuccess: (_data, id) => {
|
||||
queryClient.setQueryData(
|
||||
['entities'],
|
||||
(currentEntities: Awaited<ReturnType<typeof getEntities>> | undefined) =>
|
||||
currentEntities?.filter((entity) => entity.id !== id) ?? []
|
||||
)
|
||||
},
|
||||
})
|
||||
|
||||
return (
|
||||
|
||||
Reference in New Issue
Block a user