From 5894b7f9f98ea105fdc415fd4958e42e93d78fc3 Mon Sep 17 00:00:00 2001 From: Tim Arney Date: Tue, 1 Oct 2024 11:48:29 -0400 Subject: [PATCH] fix: sub element modal (#4347) fix sub element modal --- .../elements/sub-elements/SubElementModal.tsx | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/app/(gcforms)/[locale]/(form administration)/form-builder/[id]/edit/components/elements/sub-elements/SubElementModal.tsx b/app/(gcforms)/[locale]/(form administration)/form-builder/[id]/edit/components/elements/sub-elements/SubElementModal.tsx index f2b3ac2ac4..debcbd42cd 100644 --- a/app/(gcforms)/[locale]/(form administration)/form-builder/[id]/edit/components/elements/sub-elements/SubElementModal.tsx +++ b/app/(gcforms)/[locale]/(form administration)/form-builder/[id]/edit/components/elements/sub-elements/SubElementModal.tsx @@ -24,10 +24,15 @@ export const SubElementModal = ({ const { t } = useTranslation("form-builder"); const { modals, updateModalProperties, unsetModalField } = useModalStore(); - const { updateField } = useTemplateStore((s) => ({ + const { updateField, setChangeKey } = useTemplateStore((s) => ({ updateField: s.updateField, + setChangeKey: s.setChangeKey, })); + const forceRefresh = () => { + setChangeKey(String(new Date().getTime())); //Force a re-render + }; + useEffect(() => { if (item.type != "richText") { updateModalProperties(item.index, item.properties); @@ -45,11 +50,14 @@ export const SubElementModal = ({ }) => { return (e: React.MouseEvent) => { e.preventDefault(); + // replace all of "properties" with the new properties set in the ModalForm updateField( `form.elements[${elIndex}].properties.subElements[${subIndex}].properties`, properties ); + + forceRefresh(); }; };