training_data/packages/client/src/api/hooks/useRole.ts

38 lines
965 B
TypeScript
Raw Normal View History

2024-09-10 10:31:24 +08:00
import { getQueryKey } from "@trpc/react-query";
2024-12-30 08:26:40 +08:00
import { api } from "../trpc"; // Adjust path as necessary
2024-09-10 10:31:24 +08:00
import { useQueryClient } from "@tanstack/react-query";
export function useRole() {
const queryClient = useQueryClient();
const queryKey = getQueryKey(api.role);
const create = api.role.create.useMutation({
onSuccess: () => {
queryClient.invalidateQueries({ queryKey });
},
});
const update = api.role.update.useMutation({
onSuccess: () => {
queryClient.invalidateQueries({ queryKey });
},
});
2024-12-30 08:26:40 +08:00
const deleteMany = api.role.deleteMany.useMutation({
2024-09-10 10:31:24 +08:00
onSuccess: () => {
queryClient.invalidateQueries({ queryKey })
}
})
const paginate = (page: number, pageSize: number) => {
return api.role.paginate.useQuery({ page, pageSize });
};
return {
create,
update,
paginate,
2024-12-30 08:26:40 +08:00
deleteMany
2024-09-10 10:31:24 +08:00
};
}