SPA zbudowane w React 19 + Vite 8 z pełnym zestawem funkcjonalności: autentykacja z 2FA, kreator rezerwacji, panel admina, analityka, GraphQL (Apollo Client + SchemaLink), React Query, Storybook, testy jednostkowe (Vitest + RTL) i e2e (Playwright).
18 lines
602 B
JavaScript
18 lines
602 B
JavaScript
// [REQ T2] Custom hooks – useDeleteReservation enkapsuluje useMutation DELETE
|
||
// [REQ D7] React Query – useMutation z invalidateQueries po sukcesie
|
||
import { useMutation, useQueryClient } from '@tanstack/react-query';
|
||
import { deleteReservation } from '../api/reservations';
|
||
|
||
export const useDeleteReservation = ({ onSuccess, onError } = {}) => {
|
||
const queryClient = useQueryClient();
|
||
|
||
return useMutation({
|
||
mutationFn: deleteReservation,
|
||
onSuccess: (data) => {
|
||
queryClient.invalidateQueries({ queryKey: ['reservations'] });
|
||
onSuccess?.(data);
|
||
},
|
||
onError,
|
||
});
|
||
};
|