feat: add donations feature with one-time payments - M6 (refs #55)
This commit is contained in:
@@ -91,3 +91,27 @@ export const useDowngrade = () => {
|
||||
},
|
||||
});
|
||||
};
|
||||
|
||||
export const useCreateDonation = () => {
|
||||
const queryClient = useQueryClient();
|
||||
return useMutation({
|
||||
mutationFn: (amount: number) => subscriptionApi.createDonation(amount),
|
||||
onSuccess: () => {
|
||||
queryClient.invalidateQueries({ queryKey: ['donations'] });
|
||||
},
|
||||
onError: (error: unknown) => {
|
||||
const err = error as { response?: { data?: { error?: string } } };
|
||||
toast.error(err.response?.data?.error || 'Donation failed');
|
||||
},
|
||||
});
|
||||
};
|
||||
|
||||
export const useDonations = () => {
|
||||
const { isAuthenticated, isLoading } = useAuth0();
|
||||
return useQuery({
|
||||
queryKey: ['donations'],
|
||||
queryFn: () => subscriptionApi.getDonations(),
|
||||
enabled: isAuthenticated && !isLoading,
|
||||
staleTime: 5 * 60 * 1000,
|
||||
});
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user