2025-05-21 18:40:53 +03:00

30 lines
825 B
TypeScript

'use client';
import { createOrder, getOrder, getOrders } from '@/actions/api/orders';
import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query';
export const useOrderQuery = ({ documentId }: Parameters<typeof getOrder>[0]) =>
useQuery({
queryFn: () => getOrder({ documentId }),
queryKey: ['order', documentId],
});
export const useOrderCreate = () => {
const queryClient = useQueryClient();
return useMutation({
mutationFn: createOrder,
mutationKey: ['order', 'create'],
onSuccess: () => {
queryClient.invalidateQueries({ queryKey: ['orders'] });
},
});
};
export const useOrdersQuery = (variables: Parameters<typeof getOrders>[0]) =>
useQuery({
queryFn: () => getOrders(variables),
queryKey: ['orders', variables],
staleTime: 60 * 1_000,
});