mirror of
https://github.com/StanGirard/quivr.git
synced 2024-12-19 00:22:14 +03:00
f91247c6c7
# Description Epic: #1232 US: #1446 Send email address and message content to the backend. Display a loader in loading state and a toast message on error.
34 lines
808 B
TypeScript
34 lines
808 B
TypeScript
import { useMutation, UseMutationResult } from "@tanstack/react-query";
|
|
import { useTranslation } from "react-i18next";
|
|
|
|
import { useAxios } from "@/lib/hooks";
|
|
import { useToast } from "@/lib/hooks/useToast";
|
|
|
|
interface ContactSalesDto {
|
|
customer_email: string;
|
|
content: string;
|
|
}
|
|
|
|
export const usePostContactSales = (): UseMutationResult<
|
|
void,
|
|
unknown,
|
|
ContactSalesDto
|
|
> => {
|
|
const { axiosInstance } = useAxios();
|
|
const toast = useToast();
|
|
const { t } = useTranslation("contact", { keyPrefix: "form" });
|
|
|
|
return useMutation({
|
|
mutationKey: ["contactSales"],
|
|
mutationFn: async (data) => {
|
|
await axiosInstance.post("/contact", data);
|
|
},
|
|
onError: () => {
|
|
toast.publish({
|
|
text: t("sending_mail_error"),
|
|
variant: "danger",
|
|
});
|
|
},
|
|
});
|
|
};
|