11import { useMutation , useQuery } from '@tanstack/react-query' ;
2-
32import { Strike } from '../../../../../data/types/Trainee' ;
4- import axios from 'axios ' ;
3+ import { getStrikes , addStrike , deleteStrike , editStrike } from '../api/api ' ;
54
65/**
76 * Hook to add a strike to a trainee.
@@ -10,11 +9,7 @@ import axios from 'axios';
109 */
1110export const useAddStrike = ( traineeId : string ) => {
1211 return useMutation ( {
13- mutationFn : async ( strike : Strike ) => {
14- return axios . post ( `/api/trainees/${ traineeId } /strikes` , strike ) . catch ( ( error ) => {
15- throw new Error ( error . response ?. data ?. error || 'Failed to add strike' ) ;
16- } ) ;
17- } ,
12+ mutationFn : ( strike : Strike ) => addStrike ( traineeId , strike ) ,
1813 } ) ;
1914} ;
2015
@@ -27,8 +22,8 @@ export const useGetStrikes = (traineeId: string) => {
2722 return useQuery ( {
2823 queryKey : [ 'strikes' , traineeId ] ,
2924 queryFn : async ( ) => {
30- const { data } = await axios . get < Strike [ ] > ( `/api/trainees/ ${ traineeId } /strikes` ) ;
31- return orderStrikesByDateDesc ( data as Strike [ ] ) ;
25+ const data = await getStrikes ( traineeId ) ;
26+ return orderStrikesByDateDesc ( data ) ;
3227 } ,
3328 enabled : ! ! traineeId ,
3429 refetchOnWindowFocus : false ,
@@ -43,9 +38,7 @@ export const useGetStrikes = (traineeId: string) => {
4338
4439export const useDeleteStrike = ( traineeId : string ) => {
4540 return useMutation ( {
46- mutationFn : async ( strikeId : string ) => {
47- return axios . delete ( `/api/trainees/${ traineeId } /strikes/${ strikeId } ` ) ;
48- } ,
41+ mutationFn : ( strikeId : string ) => deleteStrike ( traineeId , strikeId ) ,
4942 } ) ;
5043} ;
5144
@@ -55,11 +48,7 @@ export const useDeleteStrike = (traineeId: string) => {
5548 */
5649export const useEditStrike = ( traineeId : string ) => {
5750 return useMutation ( {
58- mutationFn : async ( strike : Strike ) => {
59- return axios . put ( `/api/trainees/${ traineeId } /strikes/${ strike . id } ` , strike ) . catch ( ( error ) => {
60- throw new Error ( error . response ?. data ?. error || 'Failed to edit strike' ) ;
61- } ) ;
62- } ,
51+ mutationFn : ( strike : Strike ) => editStrike ( traineeId , strike ) ,
6352 } ) ;
6453} ;
6554
0 commit comments