39 lines
1.1 KiB
TypeScript
39 lines
1.1 KiB
TypeScript
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
|
|
import { apiManagementService } from "./services";
|
|
import { QUERY_KEYS } from "@/config/constants";
|
|
|
|
export const useApiTokens = () => {
|
|
return useQuery({
|
|
queryKey: [QUERY_KEYS.API_KEYS],
|
|
queryFn: apiManagementService.getAllTokens,
|
|
});
|
|
};
|
|
|
|
export const useCreateApiKey = () => {
|
|
const queryClient = useQueryClient();
|
|
return useMutation({
|
|
mutationFn: apiManagementService.createKey,
|
|
onSuccess: () => {
|
|
queryClient.invalidateQueries({ queryKey: [QUERY_KEYS.API_KEYS] });
|
|
},
|
|
});
|
|
};
|
|
|
|
export const useDeleteApiKey = () => {
|
|
const queryClient = useQueryClient();
|
|
return useMutation({
|
|
mutationFn: apiManagementService.deleteKey,
|
|
onSuccess: () => {
|
|
queryClient.invalidateQueries({ queryKey: [QUERY_KEYS.API_KEYS] });
|
|
},
|
|
});
|
|
};
|
|
|
|
export const useTestSecure = () => {
|
|
return useQuery({
|
|
queryKey: [QUERY_KEYS.API_KEYS, "test"],
|
|
queryFn: apiManagementService.testSecure,
|
|
enabled: false,
|
|
});
|
|
};
|