From 10e4d3c75a29a1d4d1d765866b31ef72a0600253 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lach=C3=A9=20Melvin?=
 <55115239+lache-melvin@users.noreply.github.com>
Date: Thu, 30 Jan 2025 14:10:05 +1300
Subject: [PATCH] only query if visible

---
 .../src/JsonForms/components/PatientSearch.tsx     | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/client/packages/programs/src/JsonForms/components/PatientSearch.tsx b/client/packages/programs/src/JsonForms/components/PatientSearch.tsx
index 1d775df861..758b19b67e 100644
--- a/client/packages/programs/src/JsonForms/components/PatientSearch.tsx
+++ b/client/packages/programs/src/JsonForms/components/PatientSearch.tsx
@@ -13,6 +13,7 @@ export const patientSearchTester = rankWith(10, uiTypeIs('PatientSearch'));
 
 const UIComponent = (props: ControlProps) => {
   const { data, handleChange, label, path } = props;
+
   const [patient, setPatient] = React.useState<SearchInputPatient | null>(null);
 
   const onChangePatient = async (patient: SearchInputPatient) => {
@@ -27,10 +28,6 @@ const UIComponent = (props: ControlProps) => {
     setPatient(patientData);
   }, [patientData]);
 
-  if (!props.visible) {
-    return null;
-  }
-
   return (
     <DetailInputWithLabelRow
       sx={DefaultFormRowSx}
@@ -46,4 +43,11 @@ const UIComponent = (props: ControlProps) => {
   );
 };
 
-export const PatientSearch = withJsonFormsControlProps(UIComponent);
+const UIComponentWrapper = (props: ControlProps) => {
+  if (!props.visible) {
+    return null;
+  }
+  return <UIComponent {...props} />;
+};
+
+export const PatientSearch = withJsonFormsControlProps(UIComponentWrapper);