This commit is contained in:
hamid zarghami
2025-09-30 11:22:15 +03:30
parent 2395890e6c
commit 3a5d38fe33
10 changed files with 538 additions and 4 deletions
+40 -1
View File
@@ -1,5 +1,7 @@
import * as api from "../service/SettingService";
import { useMutation, useQuery } from "@tanstack/react-query";
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
import { FaqPageEnum } from "../enum/Enum";
import { type CreateFaqType } from "../types/Types";
export const useGetAboutUs = () => {
return useQuery({
@@ -19,3 +21,40 @@ export const useDeleteAboutUs = () => {
mutationFn: api.deleteAboutUs,
});
};
export const useGetFaq = (page: FaqPageEnum) => {
return useQuery({
queryKey: ["faq", page],
queryFn: () => api.getFaq(page),
});
};
export const useCreateFaq = () => {
return useMutation({
mutationFn: api.createFaq,
});
};
export const useDeleteFaq = () => {
return useMutation({
mutationFn: api.deleteFaq,
});
};
export const useGetFaqDetail = (id: string) => {
return useQuery({
queryKey: ["faqDetail", id],
queryFn: () => api.getFaqDetail(id),
enabled: !!id,
});
};
export const useUpdateFaq = () => {
const queryClient = useQueryClient();
return useMutation({
mutationFn: ({id, params}: {id: string, params: CreateFaqType}) => api.updateFaq(id, params),
onSuccess: (_, {params}) => {
queryClient.invalidateQueries({ queryKey: ["faq", params.page] });
},
});
};