From f4ea6de9193365ca7e1131c94817bda633adcc16 Mon Sep 17 00:00:00 2001 From: mahendar Date: Wed, 4 Dec 2024 16:03:07 +0530 Subject: [PATCH 01/11] removed duplicate network calls --- src/components/Facility/PatientNotesList.tsx | 12 ++---- .../PatientDetailsTab/EncounterHistory.tsx | 27 +------------- .../Patient/PatientDetailsTab/Notes.tsx | 37 +++---------------- .../Patient/PatientDetailsTab/index.tsx | 1 + src/components/Patient/PatientHome.tsx | 9 ++++- 5 files changed, 20 insertions(+), 66 deletions(-) diff --git a/src/components/Facility/PatientNotesList.tsx b/src/components/Facility/PatientNotesList.tsx index dcf84e8b708..87fe8676c49 100644 --- a/src/components/Facility/PatientNotesList.tsx +++ b/src/components/Facility/PatientNotesList.tsx @@ -57,19 +57,15 @@ const PatientNotesList = (props: PatientNotesProps) => { setReload(false); }; - useEffect(() => { - if (reload) { - fetchNotes(); - } - }, [reload]); - useEffect(() => { fetchNotes(); }, [thread]); useEffect(() => { - setReload(true); - }, []); + if (reload) { + fetchNotes(); + } + }, [reload]); const handleNext = () => { if (state.cPage < state.totalPages) { diff --git a/src/components/Patient/PatientDetailsTab/EncounterHistory.tsx b/src/components/Patient/PatientDetailsTab/EncounterHistory.tsx index 71865483800..c192c163772 100644 --- a/src/components/Patient/PatientDetailsTab/EncounterHistory.tsx +++ b/src/components/Patient/PatientDetailsTab/EncounterHistory.tsx @@ -4,24 +4,18 @@ import { useTranslation } from "react-i18next"; import PaginatedList from "@/CAREUI/misc/PaginatedList"; import CircularProgress from "@/components/Common/CircularProgress"; -import Loading from "@/components/Common/Loading"; import { ConsultationCard } from "@/components/Facility/ConsultationCard"; import { ConsultationModel } from "@/components/Facility/models"; -import useAuthUser from "@/hooks/useAuthUser"; - -import { triggerGoal } from "@/Integrations/Plausible"; import routes from "@/Utils/request/api"; -import useQuery from "@/Utils/request/useQuery"; import { PatientProps } from "."; import { PatientModel } from "../models"; const EncounterHistory = (props: PatientProps) => { - const { patientData: initialPatientData, facilityId, id } = props; + const { patientData: initialPatientData, id, refetch } = props; const [patientData, setPatientData] = useState(initialPatientData); - const authUser = useAuthUser(); useEffect(() => { setPatientData(initialPatientData); @@ -29,25 +23,6 @@ const EncounterHistory = (props: PatientProps) => { const { t } = useTranslation(); - const { loading: isLoading, refetch } = useQuery(routes.getPatient, { - pathParams: { - id, - }, - onResponse: ({ res, data }) => { - if (res?.ok && data) { - setPatientData(data); - } - triggerGoal("Patient Profile Viewed", { - facilityId: facilityId, - userId: authUser.id, - }); - }, - }); - - if (isLoading) { - return ; - } - return ( { - const { id: patientId, facilityId } = props; +const PatientNotes = (props: PatientProps) => { + const { patientData, id: patientId, facilityId } = props; const authUser = useAuthUser(); const [thread, setThread] = useState( @@ -39,7 +35,6 @@ const PatientNotes = (props: PatientNotesProps) => { : PATIENT_NOTES_THREADS.Doctors, ); - const [patientActive, setPatientActive] = useState(true); const [noteField, setNoteField] = useState(""); const [reload, setReload] = useState(false); const [reply_to, setReplyTo] = useState( @@ -84,26 +79,6 @@ const PatientNotes = (props: PatientNotesProps) => { } }; - useEffect(() => { - async function fetchPatientName() { - if (patientId) { - try { - const { data } = await request(routes.getPatient, { - pathParams: { id: patientId }, - }); - if (data) { - setPatientActive(data.is_active ?? true); - } - } catch (error) { - Notification.Error({ - msg: "Failed to fetch patient status", - }); - } - } - } - fetchPatientName(); - }, [patientId]); - useMessageListener((data) => { const message = data?.message; if ( @@ -161,7 +136,7 @@ const PatientNotes = (props: PatientNotesProps) => { errorClassName="hidden" innerClassName="pr-10" placeholder={t("notes_placeholder")} - disabled={!patientActive} + disabled={!patientData.is_active} /> { className="absolute right-2" ghost size="small" - disabled={!patientActive} + disabled={!patientData.is_active} authorizeFor={NonReadOnlyUsers} > diff --git a/src/components/Patient/PatientDetailsTab/index.tsx b/src/components/Patient/PatientDetailsTab/index.tsx index effc9b667f8..9062f76d313 100644 --- a/src/components/Patient/PatientDetailsTab/index.tsx +++ b/src/components/Patient/PatientDetailsTab/index.tsx @@ -11,6 +11,7 @@ export interface PatientProps { facilityId: string; id: string; patientData: PatientModel; + refetch: () => void; } export const patientTabs = [ diff --git a/src/components/Patient/PatientHome.tsx b/src/components/Patient/PatientHome.tsx index 518ac33bdf2..358b4ce0b82 100644 --- a/src/components/Patient/PatientHome.tsx +++ b/src/components/Patient/PatientHome.tsx @@ -65,6 +65,12 @@ export const PatientHome = (props: { AssignedToObjectModel | undefined >(patientData.assigned_to_object); + const [isPatientHomeMounted, setIsPatientHomeMounted] = useState(false); + + useEffect(() => { + setIsPatientHomeMounted(true); + }, []); + useEffect(() => { setAssignedVolunteer(patientData.assigned_to_object); }, [patientData.assigned_to_object]); @@ -163,7 +169,7 @@ export const PatientHome = (props: { }); }; - if (isLoading) { + if (isLoading || !isPatientHomeMounted) { return ; } @@ -468,6 +474,7 @@ export const PatientHome = (props: { facilityId={facilityId || ""} id={id} patientData={patientData} + refetch={refetch} /> )} From 840bf17c20a2142e22c11ae9b23d4bca48cde5f6 Mon Sep 17 00:00:00 2001 From: mahendar Date: Wed, 4 Dec 2024 18:11:54 +0530 Subject: [PATCH 02/11] policy api after getpatientapi --- src/components/Facility/PatientNotesList.tsx | 8 ++------ .../Patient/PatientDetailsTab/Demography.tsx | 16 ++++++++++++---- src/components/Patient/PatientHome.tsx | 8 +------- 3 files changed, 15 insertions(+), 17 deletions(-) diff --git a/src/components/Facility/PatientNotesList.tsx b/src/components/Facility/PatientNotesList.tsx index 87fe8676c49..8db68395744 100644 --- a/src/components/Facility/PatientNotesList.tsx +++ b/src/components/Facility/PatientNotesList.tsx @@ -58,14 +58,10 @@ const PatientNotesList = (props: PatientNotesProps) => { }; useEffect(() => { - fetchNotes(); - }, [thread]); - - useEffect(() => { - if (reload) { + if (reload || thread) { fetchNotes(); } - }, [reload]); + }, [reload, thread]); const handleNext = () => { if (state.cPage < state.totalPages) { diff --git a/src/components/Patient/PatientDetailsTab/Demography.tsx b/src/components/Patient/PatientDetailsTab/Demography.tsx index b9d2b8fece4..ae5e57e97ae 100644 --- a/src/components/Patient/PatientDetailsTab/Demography.tsx +++ b/src/components/Patient/PatientDetailsTab/Demography.tsx @@ -61,11 +61,19 @@ export const Demography = (props: PatientProps) => { }; }, [patientData.assigned_to_object]); - const { data: insuranceDetials } = useQuery(routes.hcx.policies.list, { - query: { - patient: id, + const { data: insuranceDetials, refetch } = useQuery( + routes.hcx.policies.list, + { + query: { patient: id }, + prefetch: false, // Don't prefetch by default }, - }); + ); + + useEffect(() => { + if (patientData.id) { + refetch(); + } + }, [patientData.id, refetch]); const patientGender = GENDER_TYPES.find( (i) => i.id === patientData.gender, diff --git a/src/components/Patient/PatientHome.tsx b/src/components/Patient/PatientHome.tsx index 358b4ce0b82..b5a8ce22f5c 100644 --- a/src/components/Patient/PatientHome.tsx +++ b/src/components/Patient/PatientHome.tsx @@ -65,12 +65,6 @@ export const PatientHome = (props: { AssignedToObjectModel | undefined >(patientData.assigned_to_object); - const [isPatientHomeMounted, setIsPatientHomeMounted] = useState(false); - - useEffect(() => { - setIsPatientHomeMounted(true); - }, []); - useEffect(() => { setAssignedVolunteer(patientData.assigned_to_object); }, [patientData.assigned_to_object]); @@ -169,7 +163,7 @@ export const PatientHome = (props: { }); }; - if (isLoading || !isPatientHomeMounted) { + if (isLoading) { return ; } From 226d59a1135030cfadc2dfbdaff5d062ac736bab Mon Sep 17 00:00:00 2001 From: mahendar Date: Wed, 4 Dec 2024 19:30:48 +0530 Subject: [PATCH 03/11] updated path --- src/components/Patient/PatientDetailsTab/Notes.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/Patient/PatientDetailsTab/Notes.tsx b/src/components/Patient/PatientDetailsTab/Notes.tsx index b22f39307b5..46d951fe405 100644 --- a/src/components/Patient/PatientDetailsTab/Notes.tsx +++ b/src/components/Patient/PatientDetailsTab/Notes.tsx @@ -18,12 +18,12 @@ import { useMessageListener } from "@/hooks/useMessageListener"; import { PATIENT_NOTES_THREADS } from "@/common/constants"; import { NonReadOnlyUsers } from "@/Utils/AuthorizeFor"; +import * as Notification from "@/Utils/Notifications"; import routes from "@/Utils/request/api"; import request from "@/Utils/request/request"; import { classNames, keysOf } from "@/Utils/utils"; import { PatientProps } from "."; -import * as Notification from "../../../Utils/Notifications"; const PatientNotes = (props: PatientProps) => { const { patientData, id: patientId, facilityId } = props; From cdbf6f8b9bd23a61e88ec79ba892198a5b339653 Mon Sep 17 00:00:00 2001 From: mahendar Date: Mon, 9 Dec 2024 20:55:21 +0530 Subject: [PATCH 04/11] updated prefetch and added absolute imports --- .../Patient/PatientDetailsTab/Demography.tsx | 19 +++++-------------- .../PatientDetailsTab/EncounterHistory.tsx | 5 ++--- .../HealthProfileSummary.tsx | 6 +++--- .../PatientDetailsTab/ImmunisationRecords.tsx | 7 +++---- .../Patient/PatientDetailsTab/Notes.tsx | 3 +-- .../PatientDetailsTab/SampleTestHistory.tsx | 7 +++---- .../PatientDetailsTab/ShiftingHistory.tsx | 5 ++--- .../Patient/PatientDetailsTab/index.tsx | 16 ++++++++-------- 8 files changed, 27 insertions(+), 41 deletions(-) diff --git a/src/components/Patient/PatientDetailsTab/Demography.tsx b/src/components/Patient/PatientDetailsTab/Demography.tsx index ae5e57e97ae..58c3b0c215e 100644 --- a/src/components/Patient/PatientDetailsTab/Demography.tsx +++ b/src/components/Patient/PatientDetailsTab/Demography.tsx @@ -14,12 +14,12 @@ import useAuthUser from "@/hooks/useAuthUser"; import { GENDER_TYPES } from "@/common/constants"; import { NonReadOnlyUsers } from "@/Utils/AuthorizeFor"; +import * as Notification from "@/Utils/Notifications"; import routes from "@/Utils/request/api"; import useQuery from "@/Utils/request/useQuery"; import { formatName, formatPatientAge } from "@/Utils/utils"; import { PatientProps } from "."; -import * as Notification from "../../../Utils/Notifications"; import { InsuranceDetailsCard } from "../InsuranceDetailsCard"; import { parseOccupation } from "../PatientHome"; import { AssignedToObjectModel } from "../models"; @@ -61,19 +61,10 @@ export const Demography = (props: PatientProps) => { }; }, [patientData.assigned_to_object]); - const { data: insuranceDetials, refetch } = useQuery( - routes.hcx.policies.list, - { - query: { patient: id }, - prefetch: false, // Don't prefetch by default - }, - ); - - useEffect(() => { - if (patientData.id) { - refetch(); - } - }, [patientData.id, refetch]); + const { data: insuranceDetials } = useQuery(routes.hcx.policies.list, { + query: { patient: id }, + prefetch: !!patientData.id, + }); const patientGender = GENDER_TYPES.find( (i) => i.id === patientData.gender, diff --git a/src/components/Patient/PatientDetailsTab/EncounterHistory.tsx b/src/components/Patient/PatientDetailsTab/EncounterHistory.tsx index c192c163772..07baf2d118f 100644 --- a/src/components/Patient/PatientDetailsTab/EncounterHistory.tsx +++ b/src/components/Patient/PatientDetailsTab/EncounterHistory.tsx @@ -6,12 +6,11 @@ import PaginatedList from "@/CAREUI/misc/PaginatedList"; import CircularProgress from "@/components/Common/CircularProgress"; import { ConsultationCard } from "@/components/Facility/ConsultationCard"; import { ConsultationModel } from "@/components/Facility/models"; +import { PatientProps } from "@/components/Patient/PatientDetailsTab"; +import { PatientModel } from "@/components/Patient/models"; import routes from "@/Utils/request/api"; -import { PatientProps } from "."; -import { PatientModel } from "../models"; - const EncounterHistory = (props: PatientProps) => { const { patientData: initialPatientData, id, refetch } = props; const [patientData, setPatientData] = diff --git a/src/components/Patient/PatientDetailsTab/HealthProfileSummary.tsx b/src/components/Patient/PatientDetailsTab/HealthProfileSummary.tsx index 374d5ede08b..73f6a4ab191 100644 --- a/src/components/Patient/PatientDetailsTab/HealthProfileSummary.tsx +++ b/src/components/Patient/PatientDetailsTab/HealthProfileSummary.tsx @@ -5,15 +5,15 @@ import CareIcon from "@/CAREUI/icons/CareIcon"; import { Button } from "@/components/ui/button"; +import { PatientProps } from "@/components/Patient/PatientDetailsTab"; +import { PatientModel } from "@/components/Patient/models"; import { UserModel } from "@/components/Users/models"; import useAuthUser from "@/hooks/useAuthUser"; import { ADMIN_USER_TYPES } from "@/common/constants"; -import { PatientProps } from "."; -import * as Notification from "../../../Utils/Notifications"; -import { PatientModel } from "../models"; +import * as Notification from "@/Utils/Notifications"; export const HealthProfileSummary = (props: PatientProps) => { const { patientData, facilityId, id } = props; diff --git a/src/components/Patient/PatientDetailsTab/ImmunisationRecords.tsx b/src/components/Patient/PatientDetailsTab/ImmunisationRecords.tsx index 7ee828868fc..b16059abe46 100644 --- a/src/components/Patient/PatientDetailsTab/ImmunisationRecords.tsx +++ b/src/components/Patient/PatientDetailsTab/ImmunisationRecords.tsx @@ -5,18 +5,17 @@ import CareIcon from "@/CAREUI/icons/CareIcon"; import { Button } from "@/components/ui/button"; +import { PatientProps } from "@/components/Patient/PatientDetailsTab"; +import { PatientModel } from "@/components/Patient/models"; import { UserModel } from "@/components/Users/models"; import useAuthUser from "@/hooks/useAuthUser"; import { ADMIN_USER_TYPES } from "@/common/constants"; +import * as Notification from "@/Utils/Notifications"; import { formatDateTime } from "@/Utils/utils"; -import { PatientProps } from "."; -import * as Notification from "../../../Utils/Notifications"; -import { PatientModel } from "../models"; - export const ImmunisationRecords = (props: PatientProps) => { const { patientData, facilityId, id } = props; diff --git a/src/components/Patient/PatientDetailsTab/Notes.tsx b/src/components/Patient/PatientDetailsTab/Notes.tsx index 46d951fe405..4fccf7a1119 100644 --- a/src/components/Patient/PatientDetailsTab/Notes.tsx +++ b/src/components/Patient/PatientDetailsTab/Notes.tsx @@ -11,6 +11,7 @@ import { PatientNotesModel, } from "@/components/Facility/models"; import AutoExpandingTextInputFormField from "@/components/Form/FormFields/AutoExpandingTextInputFormField"; +import { PatientProps } from "@/components/Patient/PatientDetailsTab"; import useAuthUser from "@/hooks/useAuthUser"; import { useMessageListener } from "@/hooks/useMessageListener"; @@ -23,8 +24,6 @@ import routes from "@/Utils/request/api"; import request from "@/Utils/request/request"; import { classNames, keysOf } from "@/Utils/utils"; -import { PatientProps } from "."; - const PatientNotes = (props: PatientProps) => { const { patientData, id: patientId, facilityId } = props; diff --git a/src/components/Patient/PatientDetailsTab/SampleTestHistory.tsx b/src/components/Patient/PatientDetailsTab/SampleTestHistory.tsx index b7a907fe662..5f9b82462e7 100644 --- a/src/components/Patient/PatientDetailsTab/SampleTestHistory.tsx +++ b/src/components/Patient/PatientDetailsTab/SampleTestHistory.tsx @@ -7,14 +7,13 @@ import PaginatedList from "@/CAREUI/misc/PaginatedList"; import ButtonV2 from "@/components/Common/ButtonV2"; import CircularProgress from "@/components/Common/CircularProgress"; +import { PatientProps } from "@/components/Patient/PatientDetailsTab/"; +import { SampleTestCard } from "@/components/Patient/SampleTestCard"; +import { PatientModel, SampleTestModel } from "@/components/Patient/models"; import { NonReadOnlyUsers } from "@/Utils/AuthorizeFor"; import routes from "@/Utils/request/api"; -import { PatientProps } from "."; -import { SampleTestCard } from "../SampleTestCard"; -import { PatientModel, SampleTestModel } from "../models"; - export const SampleTestHistory = (props: PatientProps) => { const { patientData, facilityId, id } = props; const [_selectedStatus, setSelectedStatus] = useState<{ diff --git a/src/components/Patient/PatientDetailsTab/ShiftingHistory.tsx b/src/components/Patient/PatientDetailsTab/ShiftingHistory.tsx index b7ef154bf4d..616d087c056 100644 --- a/src/components/Patient/PatientDetailsTab/ShiftingHistory.tsx +++ b/src/components/Patient/PatientDetailsTab/ShiftingHistory.tsx @@ -4,6 +4,8 @@ import { useTranslation } from "react-i18next"; import CareIcon from "@/CAREUI/icons/CareIcon"; import ButtonV2 from "@/components/Common/ButtonV2"; +import { PatientProps } from "@/components/Patient/PatientDetailsTab"; +import { PatientModel } from "@/components/Patient/models"; import { formatFilter } from "@/components/Resource/ResourceCommons"; import ShiftingTable from "@/components/Shifting/ShiftingTable"; @@ -13,9 +15,6 @@ import { NonReadOnlyUsers } from "@/Utils/AuthorizeFor"; import routes from "@/Utils/request/api"; import useQuery from "@/Utils/request/useQuery"; -import { PatientProps } from "."; -import { PatientModel } from "../models"; - const ShiftingHistory = (props: PatientProps) => { const { patientData, facilityId, id } = props; const { t } = useTranslation(); diff --git a/src/components/Patient/PatientDetailsTab/index.tsx b/src/components/Patient/PatientDetailsTab/index.tsx index 9062f76d313..ec579a378d6 100644 --- a/src/components/Patient/PatientDetailsTab/index.tsx +++ b/src/components/Patient/PatientDetailsTab/index.tsx @@ -1,11 +1,11 @@ -import { PatientModel } from "../models"; -import { Demography } from "./Demography"; -import EncounterHistory from "./EncounterHistory"; -import { HealthProfileSummary } from "./HealthProfileSummary"; -import { ImmunisationRecords } from "./ImmunisationRecords"; -import PatientNotes from "./Notes"; -import { SampleTestHistory } from "./SampleTestHistory"; -import ShiftingHistory from "./ShiftingHistory"; +import EncounterHistory from "@/components/Patient/PatientDetailsTab//EncounterHistory"; +import { HealthProfileSummary } from "@/components/Patient/PatientDetailsTab//HealthProfileSummary"; +import { ImmunisationRecords } from "@/components/Patient/PatientDetailsTab//ImmunisationRecords"; +import PatientNotes from "@/components/Patient/PatientDetailsTab//Notes"; +import { SampleTestHistory } from "@/components/Patient/PatientDetailsTab//SampleTestHistory"; +import ShiftingHistory from "@/components/Patient/PatientDetailsTab//ShiftingHistory"; +import { Demography } from "@/components/Patient/PatientDetailsTab/Demography"; +import { PatientModel } from "@/components/Patient/models"; export interface PatientProps { facilityId: string; From f4a9851a9cfe09f71346f01a26edee0287f21608 Mon Sep 17 00:00:00 2001 From: mahendar Date: Mon, 9 Dec 2024 21:02:13 +0530 Subject: [PATCH 05/11] added absolute imports --- src/components/Patient/PatientHome.tsx | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/components/Patient/PatientHome.tsx b/src/components/Patient/PatientHome.tsx index 6db4e77512e..fe7881111f3 100644 --- a/src/components/Patient/PatientHome.tsx +++ b/src/components/Patient/PatientHome.tsx @@ -2,6 +2,9 @@ import { Link, navigate } from "raviger"; import { useEffect, useState } from "react"; import { useTranslation } from "react-i18next"; +import Chip from "@/CAREUI/display/Chip"; +import CareIcon from "@/CAREUI/icons/CareIcon"; + import ConfirmDialog from "@/components/Common/ConfirmDialog"; import UserAutocomplete from "@/components/Common/UserAutocompleteFormField"; @@ -14,16 +17,14 @@ import { SAMPLE_TEST_STATUS, } from "@/common/constants"; +import { triggerGoal } from "@/Integrations/Plausible"; +import { NonReadOnlyUsers } from "@/Utils/AuthorizeFor"; +import * as Notification from "@/Utils/Notifications"; import dayjs from "@/Utils/dayjs"; import routes from "@/Utils/request/api"; +import request from "@/Utils/request/request"; +import useQuery from "@/Utils/request/useQuery"; -import Chip from "../../CAREUI/display/Chip"; -import CareIcon from "../../CAREUI/icons/CareIcon"; -import { triggerGoal } from "../../Integrations/Plausible"; -import { NonReadOnlyUsers } from "../../Utils/AuthorizeFor"; -import * as Notification from "../../Utils/Notifications"; -import request from "../../Utils/request/request"; -import useQuery from "../../Utils/request/useQuery"; import { formatDateTime, formatName, From 18d9bbd2e7a2d9ea8edd2dcd0e4adc64e66e92ef Mon Sep 17 00:00:00 2001 From: mahendar Date: Mon, 9 Dec 2024 21:05:31 +0530 Subject: [PATCH 06/11] added absolute imports --- src/components/Patient/PatientHome.tsx | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/src/components/Patient/PatientHome.tsx b/src/components/Patient/PatientHome.tsx index fe7881111f3..17ce82230c1 100644 --- a/src/components/Patient/PatientHome.tsx +++ b/src/components/Patient/PatientHome.tsx @@ -5,8 +5,20 @@ import { useTranslation } from "react-i18next"; import Chip from "@/CAREUI/display/Chip"; import CareIcon from "@/CAREUI/icons/CareIcon"; +import { Avatar } from "@/components/Common/Avatar"; +import ButtonV2 from "@/components/Common/ButtonV2"; import ConfirmDialog from "@/components/Common/ConfirmDialog"; +import Loading from "@/components/Common/Loading"; +import Page from "@/components/Common/Page"; import UserAutocomplete from "@/components/Common/UserAutocompleteFormField"; +import { patientTabs } from "@/components/Patient/PatientDetailsTab"; +import { isPatientMandatoryDataFilled } from "@/components/Patient/Utils"; +import { + AssignedToObjectModel, + PatientModel, + SampleTestModel, +} from "@/components/Patient/models"; +import { SkillModel, UserBareMinimum } from "@/components/Users/models"; import useAuthUser from "@/hooks/useAuthUser"; @@ -24,7 +36,6 @@ import dayjs from "@/Utils/dayjs"; import routes from "@/Utils/request/api"; import request from "@/Utils/request/request"; import useQuery from "@/Utils/request/useQuery"; - import { formatDateTime, formatName, @@ -33,15 +44,7 @@ import { isAntenatal, isPostPartum, relativeDate, -} from "../../Utils/utils"; -import { Avatar } from "../Common/Avatar"; -import ButtonV2 from "../Common/ButtonV2"; -import Loading from "../Common/Loading"; -import Page from "../Common/Page"; -import { SkillModel, UserBareMinimum } from "../Users/models"; -import { patientTabs } from "./PatientDetailsTab"; -import { isPatientMandatoryDataFilled } from "./Utils"; -import { AssignedToObjectModel, PatientModel, SampleTestModel } from "./models"; +} from "@/Utils/utils"; export const parseOccupation = (occupation: string | undefined) => { return OCCUPATION_TYPES.find((i) => i.value === occupation)?.text; From 5fd96c367a1168289ddce4c5e6f25e0ed44b7e9a Mon Sep 17 00:00:00 2001 From: mahendar Date: Mon, 9 Dec 2024 21:07:01 +0530 Subject: [PATCH 07/11] added absolute imports --- src/components/Patient/PatientDetailsTab/Demography.tsx | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/components/Patient/PatientDetailsTab/Demography.tsx b/src/components/Patient/PatientDetailsTab/Demography.tsx index 58c3b0c215e..a6b2c7569e8 100644 --- a/src/components/Patient/PatientDetailsTab/Demography.tsx +++ b/src/components/Patient/PatientDetailsTab/Demography.tsx @@ -9,6 +9,10 @@ import AuthorizedChild from "@/CAREUI/misc/AuthorizedChild"; import { Button } from "@/components/ui/button"; +import { InsuranceDetailsCard } from "@/components/Patient/InsuranceDetailsCard"; +import { parseOccupation } from "@/components/Patient/PatientHome"; +import { AssignedToObjectModel } from "@/components/Patient/models"; + import useAuthUser from "@/hooks/useAuthUser"; import { GENDER_TYPES } from "@/common/constants"; @@ -20,9 +24,6 @@ import useQuery from "@/Utils/request/useQuery"; import { formatName, formatPatientAge } from "@/Utils/utils"; import { PatientProps } from "."; -import { InsuranceDetailsCard } from "../InsuranceDetailsCard"; -import { parseOccupation } from "../PatientHome"; -import { AssignedToObjectModel } from "../models"; export const Demography = (props: PatientProps) => { const { patientData, facilityId, id } = props; From d8d900e504ef5205bc93842c1b042f6d04bdf406 Mon Sep 17 00:00:00 2001 From: mahendar Date: Mon, 9 Dec 2024 21:08:07 +0530 Subject: [PATCH 08/11] added absolute imports --- src/components/Patient/PatientDetailsTab/Demography.tsx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/components/Patient/PatientDetailsTab/Demography.tsx b/src/components/Patient/PatientDetailsTab/Demography.tsx index a6b2c7569e8..ad940ee467f 100644 --- a/src/components/Patient/PatientDetailsTab/Demography.tsx +++ b/src/components/Patient/PatientDetailsTab/Demography.tsx @@ -10,6 +10,7 @@ import AuthorizedChild from "@/CAREUI/misc/AuthorizedChild"; import { Button } from "@/components/ui/button"; import { InsuranceDetailsCard } from "@/components/Patient/InsuranceDetailsCard"; +import { PatientProps } from "@/components/Patient/PatientDetailsTab"; import { parseOccupation } from "@/components/Patient/PatientHome"; import { AssignedToObjectModel } from "@/components/Patient/models"; @@ -23,8 +24,6 @@ import routes from "@/Utils/request/api"; import useQuery from "@/Utils/request/useQuery"; import { formatName, formatPatientAge } from "@/Utils/utils"; -import { PatientProps } from "."; - export const Demography = (props: PatientProps) => { const { patientData, facilityId, id } = props; const authUser = useAuthUser(); From be365575e13a2835b971104da4cd9f1ca5773bb4 Mon Sep 17 00:00:00 2001 From: mahendar Date: Fri, 13 Dec 2024 00:50:45 +0530 Subject: [PATCH 09/11] demography tab api --- src/components/Patient/PatientDetailsTab/Demography.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/src/components/Patient/PatientDetailsTab/Demography.tsx b/src/components/Patient/PatientDetailsTab/Demography.tsx index b50c36d2e8f..d6e1379cd7e 100644 --- a/src/components/Patient/PatientDetailsTab/Demography.tsx +++ b/src/components/Patient/PatientDetailsTab/Demography.tsx @@ -65,7 +65,6 @@ export const Demography = (props: PatientProps) => { routes.hcx.policies.list, { query: { patient: id }, - prefetch: !!patientData.id, }, ); From 7c87e184e78eb63a83e35591802105576c12cecf Mon Sep 17 00:00:00 2001 From: mahendar Date: Fri, 13 Dec 2024 01:02:46 +0530 Subject: [PATCH 10/11] updated imports --- src/components/Patient/PatientHome.tsx | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/components/Patient/PatientHome.tsx b/src/components/Patient/PatientHome.tsx index fd7b910d774..fa373013e9e 100644 --- a/src/components/Patient/PatientHome.tsx +++ b/src/components/Patient/PatientHome.tsx @@ -2,6 +2,9 @@ import { Link, navigate } from "raviger"; import { useEffect, useState } from "react"; import { useTranslation } from "react-i18next"; +import Chip from "@/CAREUI/display/Chip"; +import CareIcon from "@/CAREUI/icons/CareIcon"; + import { Avatar } from "@/components/Common/Avatar"; import ButtonV2 from "@/components/Common/ButtonV2"; import ConfirmDialog from "@/components/Common/ConfirmDialog"; @@ -26,8 +29,13 @@ import { SAMPLE_TEST_STATUS, } from "@/common/constants"; +import { triggerGoal } from "@/Integrations/Plausible"; +import { NonReadOnlyUsers } from "@/Utils/AuthorizeFor"; +import * as Notification from "@/Utils/Notifications"; import dayjs from "@/Utils/dayjs"; import routes from "@/Utils/request/api"; +import request from "@/Utils/request/request"; +import useTanStackQueryInstead from "@/Utils/request/useQuery"; import { formatDateTime, formatName, @@ -38,14 +46,6 @@ import { relativeDate, } from "@/Utils/utils"; -import Chip from "../../CAREUI/display/Chip"; -import CareIcon from "../../CAREUI/icons/CareIcon"; -import { triggerGoal } from "../../Integrations/Plausible"; -import { NonReadOnlyUsers } from "../../Utils/AuthorizeFor"; -import * as Notification from "../../Utils/Notifications"; -import request from "../../Utils/request/request"; -import useTanStackQueryInstead from "../../Utils/request/useQuery"; - export const parseOccupation = (occupation: string | undefined) => { return OCCUPATION_TYPES.find((i) => i.value === occupation)?.text; }; From a3f535382b2592b07ab38566ae9303468b709c1d Mon Sep 17 00:00:00 2001 From: mahendar Date: Fri, 13 Dec 2024 10:53:40 +0530 Subject: [PATCH 11/11] updated encounter history --- .../Patient/PatientDetailsTab/EncounterHistory.tsx | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/src/components/Patient/PatientDetailsTab/EncounterHistory.tsx b/src/components/Patient/PatientDetailsTab/EncounterHistory.tsx index 07baf2d118f..9ad679f8e9a 100644 --- a/src/components/Patient/PatientDetailsTab/EncounterHistory.tsx +++ b/src/components/Patient/PatientDetailsTab/EncounterHistory.tsx @@ -1,4 +1,4 @@ -import React, { useEffect, useState } from "react"; +import React from "react"; import { useTranslation } from "react-i18next"; import PaginatedList from "@/CAREUI/misc/PaginatedList"; @@ -7,18 +7,11 @@ import CircularProgress from "@/components/Common/CircularProgress"; import { ConsultationCard } from "@/components/Facility/ConsultationCard"; import { ConsultationModel } from "@/components/Facility/models"; import { PatientProps } from "@/components/Patient/PatientDetailsTab"; -import { PatientModel } from "@/components/Patient/models"; import routes from "@/Utils/request/api"; const EncounterHistory = (props: PatientProps) => { - const { patientData: initialPatientData, id, refetch } = props; - const [patientData, setPatientData] = - useState(initialPatientData); - - useEffect(() => { - setPatientData(initialPatientData); - }, [initialPatientData]); + const { patientData, id, refetch } = props; const { t } = useTranslation();