This commit is contained in:
Kenneth Jannette
2024-02-24 02:14:39 -06:00
parent 2d30b4e5b8
commit 89bb3fbe26
3 changed files with 49 additions and 11 deletions

View File

@@ -32,7 +32,8 @@ const UploadModal = (props) => {
const [fileToUpload, setFileToUpload] = useState(); const [fileToUpload, setFileToUpload] = useState();
const [fileToParse, setFileToParse] = useState(""); const [fileToParse, setFileToParse] = useState("");
const [fileChanged, setFileChanged] = useState(); const [fileChanged, setFileChanged] = useState();
const [radioValue, setRadioValue] = useState(""); const [radioValue, setRadioValue] = useState(null);
const [radioValueError, setRadioValueError] = useState("");
const [showFileDetails, setShowFileDetails] = useState(""); const [showFileDetails, setShowFileDetails] = useState("");
const [titleError, setShowTitleError] = useState(""); const [titleError, setShowTitleError] = useState("");
const [docError, setShowDocError] = useState(""); const [docError, setShowDocError] = useState("");
@@ -43,11 +44,12 @@ const UploadModal = (props) => {
process.env.NODE_ENV === "development" process.env.NODE_ENV === "development"
? process.env.REACT_APP_API_DEV ? process.env.REACT_APP_API_DEV
: process.env.REACT_APP_API_PROD; : process.env.REACT_APP_API_PROD;
const radioOptions = [ const radioOptions = [
{ {
name: "Discovery request", name: "Discovery request",
label: "Discovery request", label: "Discovery request",
value: "discoveryRequest", value: "discovery-request",
}, },
{ name: "Complaint", label: "Complaint", value: "complaint" }, { name: "Complaint", label: "Complaint", value: "complaint" },
]; ];
@@ -84,15 +86,24 @@ const UploadModal = (props) => {
setFileToParse(file); setFileToParse(file);
setFileChanged(true); setFileChanged(true);
} }
console.log("full request url:", `${apiUrl}/parseNewDoc`);
async function uploadFile(file) { async function uploadFile(file) {
try { try {
if (true) {
const response = await fetch(`${apiUrl}/parseNewDoc`, { const response = await fetch(`${apiUrl}/parseNewDoc`, {
method: "POST", method: "POST",
body: file, body: file,
}); });
const res = response; const res = response;
return res; return res;
} else {
const response = await fetch(`${apiUrl}/parseNewDoc`, {
method: "POST",
body: file,
});
const res = response;
return res;
}
} catch (error) { } catch (error) {
console.error("Error:", error); console.error("Error:", error);
} }
@@ -127,9 +138,10 @@ const UploadModal = (props) => {
} }
async function handleUpload() { async function handleUpload() {
if (!docTitle && !fileToParse) { if (!docTitle && !fileToParse && !radioValue) {
setShowDocError("Please select a document to upload."); setShowDocError("Please select a document to upload.");
setShowTitleError("Please enter a document title"); setShowTitleError("Please enter a document title");
setRadioValueError("Please select document type");
return; return;
} else if (!docTitle) { } else if (!docTitle) {
setShowTitleError("Please enter a document title"); setShowTitleError("Please enter a document title");
@@ -255,6 +267,7 @@ const UploadModal = (props) => {
title="Document type" title="Document type"
options={radioOptions} options={radioOptions}
value={radioValue} value={radioValue}
radioError={radioValueError}
onClick={(e) => handleSetRadioValue(e, "documentType")} onClick={(e) => handleSetRadioValue(e, "documentType")}
/> />
</div> </div>
@@ -295,7 +308,7 @@ const UploadModal = (props) => {
<Button <Button
labelText="Upload" labelText="Upload"
className="primary-button pr-1 pl-1" className="primary-button pr-1 pl-1"
onClick={handleUpload} onClick={() => handleUpload(radioValue)}
/> />
</Modal.Footer> </Modal.Footer>
</Modal> </Modal>

View File

@@ -12,6 +12,7 @@ const Radiogroup = (props) => {
value, value,
options, options,
disabled, disabled,
radioError,
} = props; } = props;
const classCheckbox = "checkbox"; const classCheckbox = "checkbox";
const classOption = "option"; const classOption = "option";
@@ -81,6 +82,13 @@ const Radiogroup = (props) => {
</div> </div>
))} ))}
</div> </div>
<div className="radio-error-box">
{radioError ? (
<div className="modal-document-error">{radioError}</div>
) : (
<></>
)}
</div>
</div> </div>
); );
}; };

View File

@@ -140,6 +140,23 @@
width: 160px !important; width: 160px !important;
} }
.radio-wrapper {
height: 110px;
}
.radio-option-container {
display: flex;
flex-direction: column;
}
.checkbox-option-div {
height: 20px;
}
.radio-error-box {
margin-top: 16px;
margin-left: -3px;
}
@media only screen and (max-width: 820px) { @media only screen and (max-width: 820px) {
.modal-body { .modal-body {
width: 580px !important; width: 580px !important;