[offers][fix] Disable button on submit

pull/461/head
Ai Ling 3 years ago
parent 953d3ea519
commit 99f6b482fc

@ -118,31 +118,33 @@ export default function OfferAnalysis({
]; ];
return ( return (
analysis && ( <>
<div> {isLoading && <Spinner className="m-10" display="block" size="lg" />}
{isError && ( {analysis && (
<p className="m-10 text-center"> <div>
An error occurred while generating profile analysis. {isError && (
</p> <p className="m-10 text-center">
)} An error occurred while generating profile analysis.
{isLoading && <Spinner className="m-10" display="block" size="lg" />} </p>
{!isError && !isLoading && ( )}
<div> {!isError && !isLoading && (
<Tabs <div>
label="Result Navigation" <Tabs
tabs={tabOptions} label="Result Navigation"
value={tab} tabs={tabOptions}
onChange={setTab} value={tab}
/> onChange={setTab}
<HorizontalDivider className="mb-5" /> />
<OfferAnalysisContent <HorizontalDivider className="mb-5" />
analysis={analysis} <OfferAnalysisContent
isSubmission={isSubmission} analysis={analysis}
tab={tab} isSubmission={isSubmission}
/> tab={tab}
</div> />
)} </div>
</div> )}
) </div>
)}
</>
); );
} }

@ -110,7 +110,11 @@ export default function OffersSubmissionForm({
defaultValues: initialOfferProfileValues, defaultValues: initialOfferProfileValues,
mode: 'all', mode: 'all',
}); });
const { handleSubmit, trigger } = formMethods; const {
handleSubmit,
trigger,
formState: { isSubmitting, isSubmitSuccessful },
} = formMethods;
const generateAnalysisMutation = trpc.useMutation( const generateAnalysisMutation = trpc.useMutation(
['offers.analysis.generate'], ['offers.analysis.generate'],
@ -178,7 +182,7 @@ export default function OffersSubmissionForm({
const onSubmit: SubmitHandler<OffersProfileFormData> = async (data) => { const onSubmit: SubmitHandler<OffersProfileFormData> = async (data) => {
const result = await trigger(); const result = await trigger();
if (!result) { if (!result || isSubmitting || isSubmitSuccessful) {
return; return;
} }
@ -286,7 +290,13 @@ export default function OffersSubmissionForm({
variant="secondary" variant="secondary"
onClick={() => setStep(step - 1)} onClick={() => setStep(step - 1)}
/> />
<Button label="Submit" type="submit" variant="primary" />{' '} <Button
disabled={isSubmitting || isSubmitSuccessful}
isLoading={isSubmitting || isSubmitSuccessful}
label="Submit"
type="submit"
variant="primary"
/>
</div> </div>
)} )}
</form> </form>

Loading…
Cancel
Save