@@ -311,12 +311,13 @@ export function useRenameTask(workspaceId?: string) {
311311 return useMutation ( {
312312 mutationFn : renameTask ,
313313 onMutate : async ( { chatId, title } ) => {
314- await queryClient . cancelQueries ( { queryKey : taskKeys . list ( workspaceId ) } )
315-
316314 const previousTasks = queryClient . getQueryData < TaskMetadata [ ] > ( taskKeys . list ( workspaceId ) )
315+ if ( ! previousTasks ) return { previousTasks : undefined }
317316
318- queryClient . setQueryData < TaskMetadata [ ] > ( taskKeys . list ( workspaceId ) , ( old ) =>
319- old ?. map ( ( task ) => ( task . id === chatId ? { ...task , name : title } : task ) )
317+ await queryClient . cancelQueries ( { queryKey : taskKeys . list ( workspaceId ) } )
318+ queryClient . setQueryData < TaskMetadata [ ] > (
319+ taskKeys . list ( workspaceId ) ,
320+ previousTasks . map ( ( task ) => ( task . id === chatId ? { ...task , name : title } : task ) )
320321 )
321322
322323 return { previousTasks }
@@ -486,12 +487,13 @@ export function useMarkTaskRead(workspaceId?: string) {
486487 return useMutation ( {
487488 mutationFn : markTaskRead ,
488489 onMutate : async ( chatId ) => {
489- await queryClient . cancelQueries ( { queryKey : taskKeys . list ( workspaceId ) } )
490-
491490 const previousTasks = queryClient . getQueryData < TaskMetadata [ ] > ( taskKeys . list ( workspaceId ) )
491+ if ( ! previousTasks ) return { previousTasks : undefined }
492492
493- queryClient . setQueryData < TaskMetadata [ ] > ( taskKeys . list ( workspaceId ) , ( old ) =>
494- old ?. map ( ( task ) => ( task . id === chatId ? { ...task , isUnread : false } : task ) )
493+ await queryClient . cancelQueries ( { queryKey : taskKeys . list ( workspaceId ) } )
494+ queryClient . setQueryData < TaskMetadata [ ] > (
495+ taskKeys . list ( workspaceId ) ,
496+ previousTasks . map ( ( task ) => ( task . id === chatId ? { ...task , isUnread : false } : task ) )
495497 )
496498
497499 return { previousTasks }
@@ -515,12 +517,13 @@ export function useMarkTaskUnread(workspaceId?: string) {
515517 return useMutation ( {
516518 mutationFn : markTaskUnread ,
517519 onMutate : async ( chatId ) => {
518- await queryClient . cancelQueries ( { queryKey : taskKeys . list ( workspaceId ) } )
519-
520520 const previousTasks = queryClient . getQueryData < TaskMetadata [ ] > ( taskKeys . list ( workspaceId ) )
521+ if ( ! previousTasks ) return { previousTasks : undefined }
521522
522- queryClient . setQueryData < TaskMetadata [ ] > ( taskKeys . list ( workspaceId ) , ( old ) =>
523- old ?. map ( ( task ) => ( task . id === chatId ? { ...task , isUnread : true } : task ) )
523+ await queryClient . cancelQueries ( { queryKey : taskKeys . list ( workspaceId ) } )
524+ queryClient . setQueryData < TaskMetadata [ ] > (
525+ taskKeys . list ( workspaceId ) ,
526+ previousTasks . map ( ( task ) => ( task . id === chatId ? { ...task , isUnread : true } : task ) )
524527 )
525528
526529 return { previousTasks }
0 commit comments