Skip to content

Commit

Permalink
Merge pull request #994 from wri/fix/TM-1810-losing-form-values
Browse files Browse the repository at this point in the history
[TM-1810] Memoize the source data so we don't update on every render.
  • Loading branch information
roguenet authored Feb 28, 2025
2 parents 22e1d13 + 00c29c4 commit ed85210
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 7 deletions.
7 changes: 4 additions & 3 deletions src/admin/components/EntityEdit/EntityEdit.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -58,10 +58,11 @@ export const EntityEdit = () => {
const framework = formData?.form?.framework_key as Framework;
const formSteps = useGetCustomFormSteps(formData.form, entity, framework);

const defaultValues = useNormalizedFormDefaultValue(
defaults(formData?.update_request?.content ?? {}, formData?.answers),
formSteps
const sourceData = useMemo(
() => defaults(formData?.update_request?.content ?? {}, formData?.answers),
[formData?.answers, formData?.update_request?.content]
);
const defaultValues = useNormalizedFormDefaultValue(sourceData, formSteps);

// @ts-ignore
const { form_title: title } = formData;
Expand Down
8 changes: 4 additions & 4 deletions src/pages/entity/[entityName]/edit/[uuid]/EditEntityForm.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -60,11 +60,11 @@ const EditEntityForm = ({ entityName, entityUUID, entity, formData }: EditEntity
mode?.includes("provide-feedback") ? feedbackFields : undefined
);

const defaultValues = useNormalizedFormDefaultValue(
defaults(formData?.update_request?.content ?? {}, formData?.answers),
formSteps,
entity.migrated
const sourceData = useMemo(
() => defaults(formData?.update_request?.content ?? {}, formData?.answers),
[formData?.answers, formData?.update_request?.content]
);
const defaultValues = useNormalizedFormDefaultValue(sourceData, formSteps, entity.migrated);

const reportingWindow = useReportingWindow(entity?.due_at);
const formTitle =
Expand Down

0 comments on commit ed85210

Please sign in to comment.