import { useAdminUpdateOrder } from "medusa-react" import React from "react" import { useForm } from "react-hook-form" import { useTranslation } from "react-i18next" import Button from "../../../components/fundamentals/button" import Input from "../../../components/molecules/input" import Modal from "../../../components/molecules/modal" import useNotification from "../../../hooks/use-notification" import { getErrorMessage } from "../../../utils/error-messages" type EmailModalProps = { handleClose: () => void email?: string orderId: string } type EmailModalFormData = { email: string } const EmailModal: React.FC = ({ orderId, email, handleClose, }) => { const { t } = useTranslation() const { mutate: updateEmail, isLoading } = useAdminUpdateOrder(orderId) const { register, handleSubmit } = useForm({ defaultValues: { email }, }) const notification = useNotification() const handleUpdateEmail = (data: EmailModalFormData) => { const updateObj = { email: data.email } return updateEmail(updateObj, { onSuccess: () => { notification( t("details-success", "Success"), t( "details-successfully-updated-the-email-address", "Successfully updated the email address" ), "success" ) handleClose() }, onError: (err) => notification("Error", getErrorMessage(err), "error"), }) } return (
{t("details-email-address", "Email Address")}
) } export default EmailModal