Skip to content

Commit

Permalink
refactor: simplify form step math in operation form
Browse files Browse the repository at this point in the history
  • Loading branch information
marcellmueller committed Nov 22, 2023
1 parent 2481c0f commit b8b0beb
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 16 deletions.
10 changes: 1 addition & 9 deletions client/app/components/form/MultiStepFormBase.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import { useState } from "react";
import { useParams } from "next/navigation";
import { RJSFSchema } from "@rjsf/utils";
import { Alert } from "@mui/material";
Expand Down Expand Up @@ -33,7 +32,6 @@ const MultiStepFormBase = ({
}: MultiStepFormProps) => {
const params = useParams();
const formSection = parseInt(params?.formSection as string) - 1;
const [formState, setFormState] = useState(formData || {});

const formSectionList = Object.keys(schema.properties as any);
const mapSectionTitles = formSectionList.map(
Expand All @@ -53,13 +51,7 @@ const MultiStepFormBase = ({
uiSchema={uiSchema}
readonly={readonly}
onSubmit={onSubmit}
formData={formState}
onChange={(e) => {
setFormState({
...formState,
...e.formData,
});
}}
formData={formData}
>
{error && <Alert severity="error">{error}</Alert>}
<MultiStepButtons
Expand Down
12 changes: 5 additions & 7 deletions client/app/components/form/OperationsForm.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ export default function OperationsForm({ formData, schema }: Props) {
const [error, setError] = useState(undefined);
const router = useRouter();
const params = useParams();
const formSection = parseInt(params?.formSection as string) - 1;
const formSection = parseInt(params?.formSection as string);
const operationId = params?.operation;
const isCreate = params?.operation === "0";

Expand All @@ -48,8 +48,8 @@ export default function OperationsForm({ formData, schema }: Props) {
reporting_activities: "",
};
const formSectionList = Object.keys(schema.properties as any);
const isNotFinalStep = formSection !== formSectionList.length - 1;
const isFinalStep = formSection === formSectionList.length - 1;
const isNotFinalStep = formSection !== formSectionList.length;
const isFinalStep = formSection === formSectionList.length;

return (
<>
Expand Down Expand Up @@ -110,12 +110,10 @@ export default function OperationsForm({ formData, schema }: Props) {
return;
}

router.replace(
`/dashboard/operations/${operation}/${formSection + 1}`,
);
router.replace(`/dashboard/operations/${operation}/${formSection}`);
if (isNotFinalStep) {
router.push(
`/dashboard/operations/${operation}/${formSection + 2}`,
`/dashboard/operations/${operation}/${formSection + 1}`,
);
return;
}
Expand Down

0 comments on commit b8b0beb

Please sign in to comment.