From 08aee48f071b0b6b0ae4718ca1de08aec5f7a9d5 Mon Sep 17 00:00:00 2001 From: vchikalkin Date: Fri, 2 Feb 2024 12:29:46 +0300 Subject: [PATCH] Form/Documents: reload page after upload files --- apps/web/components/Form/Documents/Buttons.tsx | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/apps/web/components/Form/Documents/Buttons.tsx b/apps/web/components/Form/Documents/Buttons.tsx index 5a80355..219e6f9 100644 --- a/apps/web/components/Form/Documents/Buttons.tsx +++ b/apps/web/components/Form/Documents/Buttons.tsx @@ -2,6 +2,7 @@ /* eslint-disable no-negated-condition */ import { FormContext } from '../context/form-context'; import * as apiIus from '@/api/ius/query'; +import type { HttpError } from '@/api/ius/types'; import { useFormStore } from '@/store/ius/form'; import { Button } from '@repo/ui'; import { pick } from 'radash'; @@ -28,10 +29,19 @@ export function Buttons() { }); }); - return Promise.allSettled(uploadFiles).catch(() => { - setFormState({ status: 'error', text: ERROR_UPLOAD_DOCUMENT }); - throw new Error(ERROR_UPLOAD_DOCUMENT); - }); + return Promise.all(uploadFiles) + .then(() => { + setFormState({ status: 'success' }); + setTimeout(() => { + window.location.reload(); + }, 500); + }) + .catch((error) => { + const _error = error as HttpError; + const text = _error?.errors?.at(0) || _error.title || ERROR_UPLOAD_DOCUMENT; + + setFormState({ status: 'error', text }); + }); }, [formFiles, pageUrlParams, resetValidation, setFormState]); const handleCancel = () => {