import { Button, notification } from "antd"; import Axios from "axios"; import React, { useState } from "react"; import { useMutation } from "@apollo/client"; import { useTranslation } from "react-i18next"; import { UPDATE_JOB } from "../../graphql/jobs.queries"; export default function JobCalculateTotals({ job, disabled }) { const { t } = useTranslation(); const [loading, setLoading] = useState(false); const [updateJob] = useMutation(UPDATE_JOB); const handleCalculate = async () => { setLoading(true); const newTotals = ( await Axios.post("/job/totals", { job: job, }) ).data; const result = await updateJob({ refetchQueries: ["GET_JOB_BY_PK"], awaitRefetchQueries: true, variables: { jobId: job.id, job: { job_totals: newTotals, }, }, }); if (!!!result.errors) { notification["success"]({ message: t("jobs.successes.updated") }); } else { notification["error"]({ message: t("jobs.errors.updating", { error: JSON.stringify(result.errors), }), }); } setLoading(false); }; return (