@icap-ethiopia/esm-ethiohri-intake 1.0.0-pre.9 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +400 -400
- package/README.md +46 -46
- package/dist/main.js +4914 -1
- package/dist/main.js.map +1 -1
- package/dist/node_modules_dayjs_dayjs_min_js.js +14 -0
- package/dist/node_modules_dayjs_dayjs_min_js.js.map +1 -0
- package/dist/openmrs-esm-ethio-template-app.js +4696 -1
- package/dist/openmrs-esm-ethio-template-app.js.buildmanifest.json +233 -249
- package/dist/openmrs-esm-ethio-template-app.js.map +1 -1
- package/dist/routes.json +1 -1
- package/dist/src_forms_family-information_tsx.js +934 -0
- package/dist/src_forms_family-information_tsx.js.map +1 -0
- package/dist/src_forms_intake-a-form_tsx.js +2367 -0
- package/dist/src_forms_intake-a-form_tsx.js.map +1 -0
- package/dist/src_forms_intake-b-form_tsx.js +2684 -0
- package/dist/src_forms_intake-b-form_tsx.js.map +1 -0
- package/dist/src_forms_intake-form_scss-src_forms_hooks_createEncounter_ts-src_forms_hooks_defaultValuesFr-54076e.js +2871 -0
- package/dist/src_forms_intake-form_scss-src_forms_hooks_createEncounter_ts-src_forms_hooks_defaultValuesFr-54076e.js.map +1 -0
- package/dist/src_forms_phdp-form_tsx.js +470 -0
- package/dist/src_forms_phdp-form_tsx.js.map +1 -0
- package/dist/src_index_ts.js +255 -0
- package/dist/src_index_ts.js.map +1 -0
- package/dist/src_intake_index_tsx.js +2738 -0
- package/dist/src_intake_index_tsx.js.map +1 -0
- package/dist/src_root_component_tsx.js +615 -0
- package/dist/src_root_component_tsx.js.map +1 -0
- package/dist/src_utils_Delete-Encounter_modal_tsx.js +396 -0
- package/dist/src_utils_Delete-Encounter_modal_tsx.js.map +1 -0
- package/dist/translations_am_json.js +14 -0
- package/dist/translations_en_json.js +14 -0
- package/dist/translations_es_json.js +14 -0
- package/dist/translations_fr_json.js +14 -0
- package/dist/translations_he_json.js +14 -0
- package/dist/translations_km_json.js +14 -0
- package/dist/vendors-node_modules_carbon_react_es_index_js-node_modules_swr_dist_core_index_mjs.js +132608 -0
- package/dist/vendors-node_modules_carbon_react_es_index_js-node_modules_swr_dist_core_index_mjs.js.map +1 -0
- package/dist/vendors-node_modules_openmrs_esm-framework_src_internal_ts.js +35952 -0
- package/dist/vendors-node_modules_openmrs_esm-framework_src_internal_ts.js.map +1 -0
- package/dist/vendors-node_modules_openmrs_esm-patient-common-lib_src_index_ts-node_modules_openmrs_esm-pat-24e5c8.js +4695 -0
- package/dist/vendors-node_modules_openmrs_esm-patient-common-lib_src_index_ts-node_modules_openmrs_esm-pat-24e5c8.js.map +1 -0
- package/dist/vendors-node_modules_openmrs_node_modules_css-loader_dist_runtime_api_js-node_modules_openmrs-205702.js +3059 -0
- package/dist/vendors-node_modules_openmrs_node_modules_css-loader_dist_runtime_api_js-node_modules_openmrs-205702.js.map +1 -0
- package/dist/vendors-node_modules_react-i18next_dist_es_index_js.js +1424 -0
- package/dist/vendors-node_modules_react-i18next_dist_es_index_js.js.map +1 -0
- package/dist/vendors-node_modules_react-router-dom_dist_index_js.js +6574 -0
- package/dist/vendors-node_modules_react-router-dom_dist_index_js.js.map +1 -0
- package/dist/vendors-node_modules_react_index_js.js +2770 -0
- package/dist/vendors-node_modules_react_index_js.js.map +1 -0
- package/package.json +121 -121
- package/src/index.ts +34 -34
- package/dist/151.js +0 -2
- package/dist/151.js.LICENSE.txt +0 -3
- package/dist/151.js.map +0 -1
- package/dist/159.js +0 -1
- package/dist/159.js.map +0 -1
- package/dist/197.js +0 -1
- package/dist/222.js +0 -2
- package/dist/222.js.LICENSE.txt +0 -5
- package/dist/222.js.map +0 -1
- package/dist/282.js +0 -2
- package/dist/282.js.LICENSE.txt +0 -32
- package/dist/282.js.map +0 -1
- package/dist/300.js +0 -1
- package/dist/319.js +0 -1
- package/dist/319.js.map +0 -1
- package/dist/335.js +0 -1
- package/dist/353.js +0 -1
- package/dist/353.js.map +0 -1
- package/dist/404.js +0 -2
- package/dist/404.js.LICENSE.txt +0 -45
- package/dist/404.js.map +0 -1
- package/dist/410.js +0 -1
- package/dist/410.js.map +0 -1
- package/dist/475.js +0 -1
- package/dist/475.js.map +0 -1
- package/dist/540.js +0 -2
- package/dist/540.js.LICENSE.txt +0 -9
- package/dist/540.js.map +0 -1
- package/dist/55.js +0 -1
- package/dist/652.js +0 -1
- package/dist/692.js +0 -1
- package/dist/692.js.map +0 -1
- package/dist/712.js +0 -1
- package/dist/712.js.map +0 -1
- package/dist/912.js +0 -1
- package/dist/912.js.map +0 -1
- package/dist/917.js +0 -1
- package/dist/917.js.map +0 -1
- package/dist/937.js +0 -1
- package/dist/937.js.map +0 -1
- package/dist/940.js +0 -1
- package/dist/940.js.map +0 -1
- package/dist/979.js +0 -1
- package/dist/979.js.map +0 -1
- package/dist/99.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"src_forms_intake-a-form_tsx.js","mappings":"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","sources":["webpack://@icap-ethiopia/esm-ethiohri-intake/./src/forms/care-giver.tsx","webpack://@icap-ethiopia/esm-ethiohri-intake/./src/forms/intake-a-form.tsx","webpack://@icap-ethiopia/esm-ethiohri-intake/./src/utils/data-table.resource.ts"],"sourcesContent":["import {\r\n ComboBox,\r\n AccordionItem,\r\n TextInput,\r\n NumberInput,\r\n RadioButtonGroup,\r\n RadioButton,\r\n Select,\r\n SelectItem,\r\n} from '@carbon/react';\r\nimport React, { useEffect, useState } from 'react';\r\nimport { Controller } from 'react-hook-form';\r\nimport type { Control, UseFormSetValue, UseFormWatch } from 'react-hook-form';\r\nimport styles from './intake-form.scss';\r\nimport type { CareGiverForm, FieldOption, IntakeAFormData, SearchOption } from '../types';\r\nimport { fetchChildEntries, searchSuggestions } from '../api/api';\r\nimport { genderOpt, relationshipOpt, yesNoOptions } from './utils/form-constant';\r\ntype CareGiverPersonFormProps = {\r\n control: Control<CareGiverForm>;\r\n setValue: UseFormSetValue<CareGiverForm>;\r\n watch: UseFormWatch<CareGiverForm>;\r\n readonly: Boolean;\r\n intakeAData: any;\r\n ControllerIntake: any;\r\n controlIntake: Control<IntakeAFormData>;\r\n errorsPerson: any;\r\n};\r\n\r\nconst CareGiverPersonForm: React.FC<CareGiverPersonFormProps> = ({\r\n control,\r\n setValue,\r\n watch,\r\n readonly,\r\n intakeAData,\r\n ControllerIntake,\r\n controlIntake,\r\n errorsPerson,\r\n}) => {\r\n const country = watch('country');\r\n const stateProvince = watch('stateProvince');\r\n const countyDistrict = watch('countyDistrict');\r\n const cityVillage = watch('cityVillage');\r\n\r\n const [options, setOptions] = useState({\r\n country: [] as FieldOption[],\r\n state: [] as FieldOption[],\r\n county: [] as FieldOption[],\r\n city: [] as FieldOption[],\r\n });\r\n\r\n const [searchOptions, setSearchOptions] = useState<SearchOption[]>([]);\r\n\r\n useEffect(() => {\r\n fetchChildEntries([]).then((data) => setOptions((prev) => ({ ...prev, country: data })));\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (country) {\r\n fetchChildEntries([country]).then((data) => {\r\n setOptions((prev) => ({ ...prev, state: data }));\r\n if (!data.some((opt) => opt.name === stateProvince)) {\r\n setValue('stateProvince', '');\r\n }\r\n });\r\n }\r\n }, [country, stateProvince, setValue]);\r\n\r\n useEffect(() => {\r\n if (country && stateProvince) {\r\n fetchChildEntries([country, stateProvince]).then((data) => {\r\n setOptions((prev) => ({ ...prev, county: data }));\r\n if (!data.some((opt) => opt.name === countyDistrict)) {\r\n setValue('countyDistrict', '');\r\n }\r\n });\r\n }\r\n }, [country, stateProvince, countyDistrict, setValue]);\r\n\r\n useEffect(() => {\r\n if (country && stateProvince && countyDistrict) {\r\n fetchChildEntries([country, stateProvince, countyDistrict]).then((data) => {\r\n setOptions((prev) => ({ ...prev, city: data }));\r\n if (!data.some((opt) => opt.name === cityVillage)) {\r\n setValue('cityVillage', '');\r\n }\r\n });\r\n }\r\n }, [country, stateProvince, countyDistrict, cityVillage, setValue]);\r\n\r\n const filterOptions = (input: string, options: FieldOption[]) =>\r\n input ? options.filter((opt) => opt.name.toLowerCase().includes(input.toLowerCase())) : options;\r\n return (\r\n <div>\r\n {intakeAData.careGiverKnown === '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' && (\r\n <>\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"care_giver_first_name\"\r\n control={control}\r\n rules={{\r\n required:\r\n intakeAData.careGiverKnown === '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'\r\n ? 'care giver first name'\r\n : false,\r\n }}\r\n render={({ field }) => (\r\n <TextInput\r\n readOnly={readonly}\r\n id=\"care_giver_first_name\"\r\n labelText={<span className={styles.label}>First Name</span>}\r\n {...field}\r\n invalid={!!errorsPerson.care_giver_first_name}\r\n invalidText={errorsPerson.care_giver_first_name?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n {/* Care Giver Father's Name */}\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"care_giver_fathers_name\"\r\n control={control}\r\n render={({ field }) => (\r\n <TextInput\r\n readOnly={readonly}\r\n id=\"care_giver_fathers_name\"\r\n labelText={<span className={styles.label}>Father's Name</span>}\r\n {...field}\r\n invalid={false}\r\n />\r\n )}\r\n />\r\n </div>\r\n {/* Care Giver Grandfather's Name */}\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"care_giver_grandfathers_name\"\r\n control={control}\r\n render={({ field }) => (\r\n <TextInput\r\n readOnly={readonly}\r\n id=\"care_giver_grandfathers_name\"\r\n labelText={<span className={styles.label}>Grandfather's Name</span>}\r\n {...field}\r\n invalid={false}\r\n />\r\n )}\r\n />\r\n </div>\r\n {/* Care Giver Age */}\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"careGiverAge\"\r\n control={control}\r\n render={({ field }) => (\r\n <NumberInput\r\n allowEmpty\r\n readOnly={readonly}\r\n id=\"careGiverAge\"\r\n onKeyDown={(e) => {\r\n if (['e', 'E', '+', '-'].includes(e.key) || (e.key.length === 1 && !/\\d/.test(e.key))) {\r\n e.preventDefault();\r\n }\r\n }}\r\n label={<span className={styles.label}>Age</span>}\r\n {...field}\r\n invalid={false}\r\n />\r\n )}\r\n />\r\n </div>\r\n {/* Care Giver Gender */}\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"careGiverGender\"\r\n control={control}\r\n render={({ field }) => (\r\n <RadioButtonGroup\r\n readOnly={readonly}\r\n orientation=\"vertical\"\r\n id=\"careGiverGender\"\r\n legendText={<span className={styles.label}>Sex</span>}\r\n {...field}\r\n >\r\n {genderOpt.map((item) => (\r\n <RadioButton\r\n key={item.concept}\r\n value={item.short}\r\n labelText={item.label}\r\n checked={field.value === item.short}\r\n />\r\n ))}\r\n </RadioButtonGroup>\r\n )}\r\n />\r\n </div>\r\n <div className=\"fieldWrapper\">\r\n <ControllerIntake\r\n name=\"relationship\"\r\n control={controlIntake}\r\n render={({ field }) => (\r\n <Select\r\n readOnly={readonly}\r\n id=\"relationship\"\r\n labelText={<span className={styles.label}>Relationship</span>}\r\n {...field}\r\n invalid={false}\r\n >\r\n <SelectItem value=\"\" text=\"Select\" />\r\n {relationshipOpt.map((item) => (\r\n <SelectItem key={item.concept} value={item.concept} text={item.label} />\r\n ))}\r\n </Select>\r\n )}\r\n />\r\n </div>\r\n {intakeAData?.relationship === '5620AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' && (\r\n <div className=\"fieldWrapper\">\r\n <ControllerIntake\r\n name=\"otherRelationship\"\r\n control={controlIntake}\r\n render={({ field }) => (\r\n <TextInput\r\n readOnly={readonly}\r\n id=\"otherRelationship\"\r\n labelText={<span className={styles.label}>Other Relationship</span>}\r\n {...field}\r\n invalid={false}\r\n />\r\n )}\r\n />\r\n </div>\r\n )}\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"search\"\r\n control={control}\r\n render={({ field }) => (\r\n <ComboBox\r\n id=\"search\"\r\n titleText={<span className={styles.label}>Address</span>}\r\n placeholder=\"Type to search...\"\r\n readOnly={readonly}\r\n items={searchOptions}\r\n itemToString={(item) => item?.address || ''}\r\n selectedItem={field.value || null}\r\n onInputChange={(input) => {\r\n if (input.length >= 2) {\r\n searchSuggestions(input).then(setSearchOptions);\r\n }\r\n }}\r\n onChange={(e) => {\r\n const selected = e.selectedItem;\r\n field.onChange(selected);\r\n if (selected?.address) {\r\n const parts = selected.address.split('>');\r\n setValue('country', parts[0] || '');\r\n setValue('stateProvince', parts[1] || '');\r\n setValue('countyDistrict', parts[2] || '');\r\n setValue('cityVillage', parts[3] || '');\r\n }\r\n }}\r\n allowCustomValue\r\n />\r\n )}\r\n />\r\n </div>\r\n {/* <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"country\"\r\n control={control}\r\n render={({ field }) => (\r\n <ComboBox\r\n id=\"country\"\r\n titleText=\"Country\"\r\n items={filterOptions(field.value, options.country)}\r\n itemToString={(item) => item?.name || ''}\r\n selectedItem={options.country.find((opt) => opt.name === field.value) || { name: field.value }}\r\n onChange={(e) => field.onChange(e.selectedItem?.name || '')}\r\n onInputChange={(input) => field.onChange(input)}\r\n allowCustomValue\r\n />\r\n )}\r\n />\r\n </div> */}\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"stateProvince\"\r\n control={control}\r\n render={({ field }) => (\r\n <ComboBox\r\n id=\"stateProvince\"\r\n titleText={<span className={styles.label}>Region</span>}\r\n readOnly={readonly}\r\n items={filterOptions(field.value, options.state)}\r\n itemToString={(item) => item?.name || ''}\r\n selectedItem={options.state.find((opt) => opt.name === field.value) || { name: field.value }}\r\n onChange={(e) => field.onChange(e.selectedItem?.name || '')}\r\n onInputChange={(input) => field.onChange(input)}\r\n allowCustomValue\r\n />\r\n )}\r\n />\r\n </div>{' '}\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"countyDistrict\"\r\n control={control}\r\n render={({ field }) => (\r\n <ComboBox\r\n id=\"countyDistrict\"\r\n readOnly={readonly}\r\n titleText={<span className={styles.label}>Zone/Sub-City</span>}\r\n items={filterOptions(field.value, options.county)}\r\n itemToString={(item) => item?.name || ''}\r\n selectedItem={options.county.find((opt) => opt.name === field.value) || { name: field.value }}\r\n onChange={(e) => field.onChange(e.selectedItem?.name || '')}\r\n onInputChange={(input) => field.onChange(input)}\r\n allowCustomValue\r\n />\r\n )}\r\n />\r\n </div>{' '}\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"cityVillage\"\r\n control={control}\r\n render={({ field }) => (\r\n <ComboBox\r\n id=\"cityVillage\"\r\n titleText={<span className={styles.label}>Woreda</span>}\r\n readOnly={readonly}\r\n items={filterOptions(field.value, options.city)}\r\n itemToString={(item) => item?.name || ''}\r\n selectedItem={options.city.find((opt) => opt.name === field.value) || { name: field.value }}\r\n onChange={(e) => field.onChange(e.selectedItem?.name || '')}\r\n onInputChange={(input) => field.onChange(input)}\r\n allowCustomValue\r\n />\r\n )}\r\n />\r\n </div>\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"kebele\"\r\n control={control}\r\n render={({ field }) => (\r\n <TextInput\r\n readOnly={readonly}\r\n id=\"kebele\"\r\n labelText={<span className={styles.label}>Kebele</span>}\r\n {...field}\r\n invalid={false}\r\n />\r\n )}\r\n />\r\n </div>\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"houseNo\"\r\n control={control}\r\n render={({ field }) => (\r\n <TextInput\r\n readOnly={readonly}\r\n id=\"houseNo\"\r\n labelText={<span className={styles.label}>House No</span>}\r\n {...field}\r\n invalid={false}\r\n />\r\n )}\r\n />\r\n </div>\r\n {/* Care Giver Mobile */}\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"telephoneMobile\"\r\n control={control}\r\n render={({ field, fieldState }) => (\r\n <TextInput\r\n readOnly={readonly}\r\n id=\"telephoneMobile\"\r\n labelText={<span className={styles.label}>Mobile Number</span>}\r\n {...field}\r\n invalid={!!fieldState.error}\r\n invalidText={fieldState.error?.message}\r\n onChange={(e) => {\r\n const value = e.target.value;\r\n // Allow only numbers and the + sign\r\n if (/^[0-9+/]*$/.test(value)) {\r\n field.onChange(value);\r\n }\r\n }}\r\n />\r\n )}\r\n />\r\n </div>\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"homePhone\"\r\n control={control}\r\n render={({ field }) => (\r\n <TextInput\r\n readOnly={readonly}\r\n id=\"homePhone\"\r\n labelText={<span className={styles.label}>Home Phone Number</span>}\r\n {...field}\r\n invalid={false}\r\n onChange={(e) => {\r\n const value = e.target.value;\r\n // Allow only numbers and the + sign\r\n if (/^[0-9+/]*$/.test(value)) {\r\n field.onChange(value);\r\n }\r\n }}\r\n />\r\n )}\r\n />\r\n </div>\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"workPhone\"\r\n control={control}\r\n render={({ field }) => (\r\n <TextInput\r\n readOnly={readonly}\r\n id=\"workPhone\"\r\n labelText={<span className={styles.label}>Work Phone Number</span>}\r\n {...field}\r\n invalid={false}\r\n onChange={(e) => {\r\n const value = e.target.value;\r\n // Allow only numbers and the + sign\r\n if (/^[0-9+/]*$/.test(value)) {\r\n field.onChange(value);\r\n }\r\n }}\r\n />\r\n )}\r\n />\r\n </div>\r\n </>\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nexport default CareGiverPersonForm;\r\n","import React, { useEffect, useMemo, useRef, useState } from 'react';\r\nimport { useForm, Controller, useWatch } from 'react-hook-form';\r\nimport {\r\n Form,\r\n FormGroup,\r\n TextInput,\r\n Select,\r\n SelectItem,\r\n RadioButtonGroup,\r\n RadioButton,\r\n TextArea,\r\n Checkbox,\r\n Accordion,\r\n AccordionItem,\r\n Button,\r\n Stack,\r\n MultiSelect,\r\n ButtonSet,\r\n InlineLoading,\r\n} from '@carbon/react';\r\nimport styles from './intake-form.scss';\r\nimport { closeWorkspace, OpenmrsDatePicker, showSnackbar, usePatient, useSession } from '@openmrs/esm-framework';\r\nimport { useTranslation } from 'react-i18next';\r\nimport type { CareGiverForm, IntakeAFormData, IntakeFormProps } from '../types';\r\nimport {\r\n careGiverDefault,\r\n entryPointOpt,\r\n genderOpt,\r\n intakeAConceptsUuid,\r\n intakeADefault,\r\n levelOfEducationOpt,\r\n maritalStatusOpt,\r\n modeOfDeliveryOpt,\r\n outsideTheFacility,\r\n placeOfDeliveryOpt,\r\n reasonForReferralOpt,\r\n relationshipOpt,\r\n religionOpt,\r\n residentialTypeOpt,\r\n targetPopulationOpt,\r\n testTypeOpt,\r\n whoKnowsOpt,\r\n withinInFacilityOpt,\r\n yesNoOptions,\r\n} from './utils/form-constant';\r\nimport dayjs from 'dayjs';\r\nimport { INTAKE_A_ENCOUNTER_TYPE, intakeAFormUuid } from '../constants';\r\nimport { useLatestObs } from '../utils/data-table.resource';\r\nimport { defaultValuesFromEncounter } from './hooks/defaultValuesFromEncounter';\r\nimport { useFetchLocation } from './hooks/useFetchLocation';\r\nimport { Tag } from '@carbon/react';\r\nimport CareGiverPersonForm from './care-giver';\r\nimport { createPerson, getPersonData, relationshipPerson } from '../api/api';\r\nimport { createEncounter } from './hooks/createEncounter';\r\n\r\nconst IntakeAForm: React.FC<IntakeFormProps> = ({ encounter, type, mutateEncounters }) => {\r\n const patient = usePatient();\r\n const session = useSession();\r\n const { t } = useTranslation();\r\n const [isSubmitting, setIsSubmitting] = useState(false);\r\n\r\n const encounterDate = new Date().toISOString();\r\n const birthDate = dayjs(patient?.patient?.birthDate);\r\n const currentAge = dayjs().diff(dayjs(patient?.patient?.birthDate), 'year');\r\n const [personId, setPersonId] = useState({ pid: '', relation: '' });\r\n const { facilityInfo } = useFetchLocation();\r\n const { latestMatched: registrationDate } = useLatestObs(\r\n patient.patientUuid,\r\n 'dadc86a8-1e44-4a6d-91c2-e3b54089b54c',\r\n 'a0fde61e-f493-4f1f-b709-22aa94f72dc3',\r\n );\r\n const {\r\n control,\r\n handleSubmit,\r\n watch,\r\n setValue,\r\n trigger,\r\n formState: { errors, touchedFields },\r\n } = useForm<IntakeAFormData>({\r\n defaultValues: encounter\r\n ? defaultValuesFromEncounter<IntakeAFormData>(encounter, intakeADefault, intakeAConceptsUuid, [\r\n 'de8937b6-6ebe-4302-a488-2198be481839',\r\n ])\r\n : intakeADefault,\r\n mode: 'all',\r\n });\r\n const {\r\n control: controlPerson,\r\n handleSubmit: handleSubmitPerson,\r\n watch: watchPerson,\r\n setValue: setValuePerson,\r\n getValues: getValuesPerson,\r\n reset: resetPerson,\r\n trigger: triggerPerson,\r\n formState: { errors: errorsPerson, touchedFields: touchedFieldsPerson },\r\n } = useForm<CareGiverForm>({\r\n defaultValues: careGiverDefault,\r\n mode: 'all',\r\n });\r\n const fetchedPatientUuid = useRef<string | null>(null);\r\n\r\n useEffect(() => {\r\n const fetchData = async () => {\r\n if (encounter && patient?.patientUuid && patient.patientUuid !== fetchedPatientUuid.current) {\r\n const res = await getPersonData(patient.patientUuid);\r\n const relationship = res[0];\r\n const person = relationship.personB;\r\n setPersonId({ pid: person.uuid, relation: relationship.uuid });\r\n const preferredAddress = person.addresses?.find((addr) => addr.preferred) ?? {};\r\n const mappedFormValues = {\r\n workPhone:\r\n person.attributes?.find((attr) => attr.attributeType?.uuid === 'a69aae3d-8c79-4ac5-a218-88889f007163')\r\n ?.value || '',\r\n homePhone:\r\n person.attributes?.find((attr) => attr.attributeType?.uuid === 'b3269e45-8e40-44a1-a5f2-bbb2765c6287')\r\n ?.value || '',\r\n houseNo:\r\n person.attributes?.find((attr) => attr.attributeType?.uuid === '553bedc6-4e59-42d3-b80b-d3cf02a792bd')\r\n ?.value || '',\r\n kebele:\r\n person.attributes?.find((attr) => attr.attributeType?.uuid === 'e1695908-916d-4c9e-b62b-90b512492da2')\r\n ?.value || '',\r\n search: null,\r\n country: preferredAddress.country || '',\r\n stateProvince: preferredAddress.stateProvince || '',\r\n countyDistrict: preferredAddress.countyDistrict || '',\r\n cityVillage: preferredAddress.cityVillage || '',\r\n care_giver_first_name: person.names?.[0]?.givenName || '',\r\n care_giver_fathers_name: person.names?.[0]?.middleName || '',\r\n care_giver_grandfathers_name: person.names?.[0]?.familyName || '',\r\n careGiverAge: person.age || null,\r\n careGiverGender: person.gender || '',\r\n addressRegion: preferredAddress.address3 || '',\r\n telephoneMobile:\r\n person.attributes?.find((attr) => attr.attributeType?.uuid === '1794bcad-b2d2-47ae-8e26-1d4ec31ade13')\r\n ?.value || '',\r\n };\r\n\r\n resetPerson(mappedFormValues);\r\n fetchedPatientUuid.current = patient.patientUuid;\r\n }\r\n };\r\n\r\n fetchData();\r\n }, [encounter, patient?.patientUuid, resetPerson]);\r\n\r\n const IntakeAFormData = useWatch({ control });\r\n\r\n const visibilityRules = useMemo(\r\n () => ({\r\n otherReligion: (data) => data.religion === '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',\r\n otherEducation: (data) => data.levelOfEducation === '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',\r\n regular_followup: (data) => data.catchment_area === '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',\r\n mothers_name: () => currentAge <= 4,\r\n mothers_father_name: () => currentAge <= 4,\r\n mothers_grandfather_name: () => currentAge <= 4,\r\n placeOfDelivery: () => currentAge <= 4,\r\n otherPlaceOfDelivery: (data) =>\r\n currentAge <= 4 && data.placeOfDelivery === '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',\r\n modeOfDelivery: () => currentAge <= 4,\r\n otherModeOfDelivery: (data) => currentAge <= 4 && data.modeOfDelivery === '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',\r\n within_the_facility: (data) => data.entryPoint === '163266AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',\r\n otherEntryPointWithinTheFacility: (data) =>\r\n data.entryPoint === '163266AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' &&\r\n data.within_the_facility === '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',\r\n outside_the_facility: (data) => data.entryPoint === '164407AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',\r\n otherEntryPointOutsideTheFacility: (data) =>\r\n data.entryPoint === '164407AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' &&\r\n data.outside_the_facility === '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',\r\n otherRelationship: (data) => data.relationship === '5620AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',\r\n // whoKnows: (data) => data.hivDisclosure === '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',\r\n // otherPersonThatKnows: (data) =>\r\n // data.hivDisclosure === '1065AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' &&\r\n // data.whoKnows?.selectedItem?.some((item) => item.concept === '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'),\r\n }),\r\n [currentAge],\r\n );\r\n useEffect(() => {\r\n if (currentAge) {\r\n Object.keys(visibilityRules).forEach((field: any) => {\r\n const isVisible = visibilityRules[field](IntakeAFormData);\r\n if (!isVisible && IntakeAFormData[field] !== null && IntakeAFormData[field] !== undefined) {\r\n setValue(field, null, { shouldValidate: false, shouldDirty: false });\r\n }\r\n });\r\n }\r\n }, [IntakeAFormData, visibilityRules, setValue, currentAge]);\r\n\r\n const onSubmit = async () => {\r\n setIsSubmitting(true);\r\n try {\r\n if (Object.keys(touchedFieldsPerson).length !== 0) {\r\n const res = await handleSavePerson();\r\n if (!encounter || !personId.pid) {\r\n const relationship = handleCreateRelation(res);\r\n }\r\n }\r\n\r\n await createEncounter<IntakeAFormData>(IntakeAFormData as IntakeAFormData, {\r\n namespace: 'rfe-forms',\r\n touchedFields,\r\n encounter,\r\n conceptsUuid: intakeAConceptsUuid,\r\n encounterType: INTAKE_A_ENCOUNTER_TYPE,\r\n formUuid: intakeAFormUuid,\r\n encounterDate,\r\n patientUuid: patient.patientUuid,\r\n providerUuid: session.currentProvider.uuid,\r\n locationUuid: facilityInfo.uuid,\r\n visibilityRules,\r\n context: { currentAge },\r\n encounterUuid: encounter?.uuid,\r\n mutateEncounters,\r\n workspaceName: 'intake-a-form-workspace',\r\n editMode: type?.edit,\r\n });\r\n } catch (error) {\r\n console.error('Error submitting form:', error);\r\n } finally {\r\n setIsSubmitting(false); // Reset submitting state\r\n }\r\n };\r\n\r\n const handleSavePerson = async () => {\r\n const values = getValuesPerson();\r\n const currentDate = dayjs();\r\n const gender = values.careGiverGender === 'Male' ? 'M' : values.careGiverGender === 'Female' ? 'F' : null;\r\n const estimatedBirthDate = values.careGiverAge ? currentDate.subtract(values.careGiverAge, 'year') : null;\r\n const payload = {\r\n gender: values.careGiverGender,\r\n names: [\r\n {\r\n givenName: values.care_giver_first_name,\r\n middleName: values.care_giver_fathers_name,\r\n familyName: values.care_giver_grandfathers_name,\r\n },\r\n ],\r\n birthdate: estimatedBirthDate,\r\n birthdateEstimated: values.careGiverAge ? true : false,\r\n addresses: [\r\n {\r\n cityVillage: values.cityVillage,\r\n stateProvince: values.stateProvince,\r\n country: values.country,\r\n countyDistrict: values.countyDistrict,\r\n },\r\n ],\r\n attributes: [\r\n {\r\n attributeType: '1794bcad-b2d2-47ae-8e26-1d4ec31ade13',\r\n value: values.telephoneMobile,\r\n },\r\n {\r\n attributeType: 'a69aae3d-8c79-4ac5-a218-88889f007163',\r\n value: values.workPhone,\r\n },\r\n {\r\n attributeType: 'b3269e45-8e40-44a1-a5f2-bbb2765c6287',\r\n value: values.homePhone,\r\n },\r\n {\r\n attributeType: '553bedc6-4e59-42d3-b80b-d3cf02a792bd',\r\n value: values.houseNo,\r\n },\r\n {\r\n attributeType: 'e1695908-916d-4c9e-b62b-90b512492da2',\r\n value: values.kebele,\r\n },\r\n ],\r\n };\r\n const response = await createPerson(new AbortController(), payload, encounter ? personId.pid : null);\r\n return response.data;\r\n };\r\n const handleCreateRelation = async (data) => {\r\n const values = getValuesPerson();\r\n const payload = {\r\n personA: patient.patientUuid,\r\n relationshipType: '61538867-175a-405b-96d8-d02c83917002',\r\n personB: data.uuid,\r\n };\r\n\r\n const response = await relationshipPerson(new AbortController(), payload);\r\n return response.data;\r\n };\r\n const handleFormSubmit = async (e) => {\r\n e.preventDefault();\r\n\r\n const isFormAValid = await trigger();\r\n const isFormBValid = await triggerPerson();\r\n\r\n if (isFormAValid && isFormBValid) {\r\n onSubmit();\r\n }\r\n };\r\n\r\n return (\r\n <Form onSubmit={handleFormSubmit} className={styles.formNew}>\r\n <h2 className={styles.heading}>HIV CARE/ART CLINIC INTAKE FORM-A</h2>\r\n <div className={styles.scrollableContent}>\r\n <Stack gap={1} className={styles.container}>\r\n <Accordion>\r\n <AccordionItem className={styles.formContainer} title=\"GENERAL INFORMATION\" open>\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"unit_tb_no\"\r\n control={control}\r\n render={({ field }) => (\r\n <TextInput\r\n id=\"unit_tb_no\"\r\n readOnly={type?.view}\r\n labelText={<span className={styles.label}>{t('unit_tb_no', 'Unit TB No')}</span>}\r\n {...field}\r\n invalid={!!errors.unit_tb_no}\r\n invalidText={errors.unit_tb_no?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n {/* <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"targetPopulation\"\r\n control={control}\r\n render={({ field }) => (\r\n <Select\r\n readOnly={type?.view}\r\n id=\"targetPopulation\"\r\n labelText={\r\n <span className={styles.label}>{t('targetPopulation', 'Target Population Category')}</span>\r\n }\r\n {...field}\r\n >\r\n <SelectItem value=\"\" text=\"Select\" />\r\n {targetPopulationOpt.map((item) => (\r\n <SelectItem key={item.concept} value={item.concept} text={item.label} />\r\n ))}\r\n </Select>\r\n )}\r\n />\r\n </div> */}\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"childsCareGiverMaritalStatus\"\r\n control={control}\r\n render={({ field }) => (\r\n <Select\r\n readOnly={type?.view}\r\n id=\"childsCareGiverMaritalStatus\"\r\n labelText={\r\n <span className={styles.label}>\r\n {t('childsCareGiverMaritalStatus', \"Client (Child's care giver) marital status\")}\r\n </span>\r\n }\r\n {...field}\r\n >\r\n <SelectItem value=\"\" text=\"Select\" />\r\n {maritalStatusOpt.map((item) => (\r\n <SelectItem key={item.concept} value={item.concept} text={item.label} />\r\n ))}\r\n </Select>\r\n )}\r\n />\r\n </div>\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"religion\"\r\n control={control}\r\n render={({ field }) => (\r\n <Select\r\n readOnly={type?.view}\r\n id=\"religion\"\r\n labelText={<span className={styles.label}>{t('religion', 'Religion')}</span>}\r\n {...field}\r\n >\r\n <SelectItem value=\"\" text=\"Select\" />\r\n {religionOpt.map((item) => (\r\n <SelectItem key={item.concept} value={item.concept} text={item.label} />\r\n ))}\r\n </Select>\r\n )}\r\n />\r\n </div>\r\n {IntakeAFormData.religion === '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' && (\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"otherReligion\"\r\n control={control}\r\n render={({ field }) => (\r\n <TextInput\r\n id=\"otherReligion\"\r\n readOnly={type?.view}\r\n labelText={<span className={styles.label}>{t('otherReligion', 'Specify other religion')}</span>}\r\n {...field}\r\n invalid={!!errors.unit_tb_no}\r\n invalidText={errors.unit_tb_no?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n )}\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"levelOfEducation\"\r\n control={control}\r\n render={({ field }) => (\r\n <Select\r\n readOnly={type?.view}\r\n id=\"levelOfEducation\"\r\n labelText={<span className={styles.label}>{t('levelOfEducation', 'Level of Education')}</span>}\r\n {...field}\r\n >\r\n <SelectItem value=\"\" text=\"Select\" />\r\n {levelOfEducationOpt.map((item) => (\r\n <SelectItem key={item.concept} value={item.concept} text={item.label} />\r\n ))}\r\n </Select>\r\n )}\r\n />\r\n </div>\r\n {IntakeAFormData.levelOfEducation === '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' && (\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"otherEducation\"\r\n control={control}\r\n rules={{ maxLength: { value: 50, message: 'Please use a maximum of 50 characters' } }}\r\n render={({ field }) => (\r\n <TextInput\r\n id=\"otherEducation\"\r\n readOnly={type?.view}\r\n labelText={\r\n <span className={styles.label}>\r\n {t('otherEducation', 'Specify other level of education')}\r\n </span>\r\n }\r\n {...field}\r\n invalid={!!errors.otherEducation}\r\n invalidText={errors.otherEducation?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n )}\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"occupation\"\r\n control={control}\r\n render={({ field }) => (\r\n <TextInput\r\n id=\"occupation\"\r\n readOnly={type?.view}\r\n labelText={<span className={styles.label}>{t('occupation', 'Occupation')}</span>}\r\n {...field}\r\n invalid={!!errors.occupation}\r\n invalidText={errors.occupation?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"residentialType\"\r\n control={control}\r\n render={({ field }) => (\r\n <RadioButtonGroup\r\n orientation=\"vertical\"\r\n id=\"residentialType\"\r\n {...field}\r\n readOnly={type?.view}\r\n legendText={<span className={styles.label}>{t('residentialType', 'Residential Type')}</span>}\r\n {...field}\r\n invalid={!!errors.residentialType}\r\n invalidText={errors.residentialType?.message}\r\n onChange={(value: string) => field.onChange(value)}\r\n >\r\n {residentialTypeOpt.map((item) => (\r\n <RadioButton\r\n key={item.concept}\r\n value={item.concept}\r\n labelText={item.label}\r\n checked={field.value === item.concept}\r\n />\r\n ))}\r\n </RadioButtonGroup>\r\n )}\r\n />\r\n </div>\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"catchment_area\"\r\n control={control}\r\n render={({ field }) => (\r\n <RadioButtonGroup\r\n orientation=\"vertical\"\r\n id=\"catchment_area\"\r\n {...field}\r\n readOnly={type?.view}\r\n legendText={\r\n <span className={styles.label}>\r\n {t('catchment_area', 'Client reside within the catchments area')}\r\n </span>\r\n }\r\n {...field}\r\n invalid={!!errors.catchment_area}\r\n invalidText={errors.catchment_area?.message}\r\n onChange={(value: string) => field.onChange(value)}\r\n >\r\n {yesNoOptions.map((item) => (\r\n <RadioButton\r\n key={item.concept}\r\n value={item.concept}\r\n labelText={item.label}\r\n checked={field.value === item.concept}\r\n />\r\n ))}\r\n </RadioButtonGroup>\r\n )}\r\n />\r\n </div>\r\n {IntakeAFormData.catchment_area === '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' && (\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"regular_followup\"\r\n control={control}\r\n render={({ field }) => (\r\n <RadioButtonGroup\r\n orientation=\"vertical\"\r\n id=\"regular_followup\"\r\n legendText={\r\n <span className={styles.label}>\r\n {t('regular_followup', 'Is challenge anticipated to regularly follow in this facility?')}\r\n </span>\r\n }\r\n {...field}\r\n invalid={!!errors.regular_followup}\r\n invalidText={errors.regular_followup?.message}\r\n onChange={(value: string) => field.onChange(value)}\r\n >\r\n {yesNoOptions.map((item) => (\r\n <RadioButton\r\n key={item.concept}\r\n value={item.concept}\r\n labelText={item.label}\r\n checked={field.value === item.concept}\r\n />\r\n ))}\r\n </RadioButtonGroup>\r\n )}\r\n />\r\n </div>\r\n )}\r\n </AccordionItem>\r\n {currentAge <= 4 && (\r\n <AccordionItem className={styles.formContainer} title=\"FOR CHILD <5 YEARS ONLY\" open>\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"mothers_name\"\r\n control={control}\r\n rules={{ maxLength: { value: 20, message: 'Please use a maximum of 20 characters' } }}\r\n render={({ field }) => (\r\n <TextInput\r\n id=\"mothers_name\"\r\n readOnly={type?.view}\r\n labelText={<span className={styles.label}>{t('mothers_name', \"Mother's First Name\")}</span>}\r\n {...field}\r\n invalid={!!errors.mothers_name}\r\n invalidText={errors.mothers_name?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"mothers_father_name\"\r\n control={control}\r\n rules={{ maxLength: { value: 20, message: 'Please use a maximum of 20 characters' } }}\r\n render={({ field }) => (\r\n <TextInput\r\n id=\"mothers_father_name\"\r\n readOnly={type?.view}\r\n labelText={\r\n <span className={styles.label}>{t('mothers_father_name', \"Mother's Father's Name\")}</span>\r\n }\r\n {...field}\r\n invalid={!!errors.mothers_father_name}\r\n invalidText={errors.mothers_father_name?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"mothers_grandfather_name\"\r\n control={control}\r\n rules={{ maxLength: { value: 20, message: 'Please use a maximum of 20 characters' } }}\r\n render={({ field }) => (\r\n <TextInput\r\n id=\"mothers_grandfather_name\"\r\n readOnly={type?.view}\r\n labelText={\r\n <span className={styles.label}>\r\n {t('mothers_grandfather_name', \"Mother's Grand Father's Name\")}\r\n </span>\r\n }\r\n {...field}\r\n invalid={!!errors.mothers_grandfather_name}\r\n invalidText={errors.mothers_grandfather_name?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"placeOfDelivery\"\r\n control={control}\r\n render={({ field }) => (\r\n <RadioButtonGroup\r\n orientation=\"vertical\"\r\n readOnly={type?.view}\r\n id=\"placeOfDelivery\"\r\n legendText={<span className={styles.label}>{t('placeOfDelivery', 'Place of delivery')}</span>}\r\n {...field}\r\n invalid={!!errors.placeOfDelivery}\r\n invalidText={errors.placeOfDelivery?.message}\r\n onChange={(value: string) => field.onChange(value)}\r\n >\r\n {placeOfDeliveryOpt.map((item) => (\r\n <RadioButton\r\n key={item.concept}\r\n value={item.concept}\r\n labelText={item.label}\r\n checked={field.value === item.concept}\r\n />\r\n ))}\r\n </RadioButtonGroup>\r\n )}\r\n />\r\n </div>\r\n {IntakeAFormData.placeOfDelivery === '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' && (\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"otherPlaceOfDelivery\"\r\n control={control}\r\n rules={{ maxLength: { value: 50, message: 'Please use a maximum of 50 characters' } }}\r\n render={({ field }) => (\r\n <TextInput\r\n readOnly={type?.view}\r\n id=\"otherPlaceOfDelivery\"\r\n labelText={\r\n <span className={styles.label}>{t('otherPlaceOfDelivery', 'Other place of delivery')}</span>\r\n }\r\n {...field}\r\n invalid={!!errors.otherPlaceOfDelivery}\r\n invalidText={errors.otherPlaceOfDelivery?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n )}\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"modeOfDelivery\"\r\n control={control}\r\n render={({ field }) => (\r\n <RadioButtonGroup\r\n orientation=\"vertical\"\r\n readOnly={type?.view}\r\n id=\"modeOfDelivery\"\r\n legendText={<span className={styles.label}>{t('modeOfDelivery', 'Mode of delivery')}</span>}\r\n {...field}\r\n invalid={!!errors.modeOfDelivery}\r\n invalidText={errors.modeOfDelivery?.message}\r\n onChange={(value: string) => field.onChange(value)}\r\n >\r\n {modeOfDeliveryOpt.map((item) => (\r\n <RadioButton\r\n key={item.concept}\r\n value={item.concept}\r\n labelText={item.label}\r\n checked={field.value === item.concept}\r\n />\r\n ))}\r\n </RadioButtonGroup>\r\n )}\r\n />\r\n </div>\r\n {IntakeAFormData.modeOfDelivery === '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' && (\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"otherModeOfDelivery\"\r\n control={control}\r\n rules={{ maxLength: { value: 50, message: 'Please use a maximum of 50 characters' } }}\r\n render={({ field }) => (\r\n <TextInput\r\n readOnly={type?.view}\r\n id=\"otherModeOfDelivery\"\r\n labelText={\r\n <span className={styles.label}>{t('otherModeOfDelivery', 'Other mode of delivery')}</span>\r\n }\r\n {...field}\r\n invalid={!!errors.otherModeOfDelivery}\r\n invalidText={errors.otherModeOfDelivery?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n )}\r\n </AccordionItem>\r\n )}\r\n\r\n {/* HIV Test Information */}\r\n <AccordionItem className={styles.formContainer} title=\"HIV TEST INFORMATION\" open>\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"date_confirmed\"\r\n control={control}\r\n rules={{\r\n required: 'Date confirmed HIV+ / Retesting is required',\r\n }}\r\n render={({ field }) => (\r\n <OpenmrsDatePicker\r\n isReadOnly={type?.view}\r\n {...field}\r\n id=\"date_confirmed\"\r\n labelText={\r\n <span className={styles.label}>\r\n {t('date_confirmed', 'Date confirmed HIV+ / Retesting')}\r\n <div className={styles.required}>*</div>\r\n </span>\r\n }\r\n minDate={birthDate}\r\n maxDate={encounterDate}\r\n invalid={!!errors.date_confirmed}\r\n invalidText={errors.date_confirmed?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"test_type\"\r\n control={control}\r\n render={({ field }) => (\r\n <RadioButtonGroup\r\n orientation=\"vertical\"\r\n readOnly={type?.view}\r\n id=\"test_type\"\r\n legendText={<span className={styles.label}>{t('test_type', 'Type of HIV test')}</span>}\r\n {...field}\r\n invalid={!!errors.test_type}\r\n invalidText={errors.test_type?.message}\r\n onChange={(value: string) => field.onChange(value)}\r\n >\r\n {testTypeOpt.map((item) => (\r\n <RadioButton\r\n key={item.concept}\r\n value={item.concept}\r\n labelText={item.label}\r\n checked={field.value === item.concept}\r\n />\r\n ))}\r\n </RadioButtonGroup>\r\n )}\r\n />\r\n </div>\r\n </AccordionItem>\r\n\r\n <AccordionItem className={styles.formContainer} title=\"CLIENT REFERRAL INFORMATION\" open>\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"entryPoint\"\r\n control={control}\r\n render={({ field }) => (\r\n <RadioButtonGroup\r\n orientation=\"vertical\"\r\n readOnly={type?.view}\r\n id=\"entryPoint\"\r\n legendText={<span className={styles.label}>{t('test_type', 'Entry point')}</span>}\r\n {...field}\r\n invalid={!!errors.test_type}\r\n invalidText={errors.test_type?.message}\r\n onChange={(value: string) => field.onChange(value)}\r\n >\r\n {entryPointOpt.map((item) => (\r\n <RadioButton\r\n key={item.concept}\r\n value={item.concept}\r\n labelText={item.label}\r\n checked={field.value === item.concept}\r\n />\r\n ))}\r\n </RadioButtonGroup>\r\n )}\r\n />\r\n </div>\r\n {IntakeAFormData.entryPoint === '163266AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' && (\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"within_the_facility\"\r\n control={control}\r\n render={({ field }) => (\r\n <Select\r\n readOnly={type?.view}\r\n id=\"within_the_facility\"\r\n labelText={\r\n <span className={styles.label}>\r\n {t('within_the_facility', 'From Within the Health Facility')}\r\n </span>\r\n }\r\n {...field}\r\n invalid={!!errors.within_the_facility}\r\n invalidText={errors.within_the_facility?.message}\r\n >\r\n <SelectItem value=\"\" text=\"Select\" />\r\n {withinInFacilityOpt.map((item) => (\r\n <SelectItem key={item.concept} value={item.concept} text={item.label} />\r\n ))}\r\n </Select>\r\n )}\r\n />\r\n </div>\r\n )}\r\n {IntakeAFormData.within_the_facility === '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' && (\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"otherEntryPointWithinTheFacility\"\r\n control={control}\r\n rules={{ maxLength: { value: 50, message: 'Please use a maximum of 50 characters' } }}\r\n render={({ field }) => (\r\n <TextInput\r\n readOnly={type?.view}\r\n id=\"otherEntryPointWithinTheFacility\"\r\n labelText={\r\n <span className={styles.label}>\r\n {t('otherEntryPointWithinTheFacility', 'Other entry point within the facility')}\r\n </span>\r\n }\r\n {...field}\r\n invalid={!!errors.otherEntryPointWithinTheFacility}\r\n invalidText={errors.otherEntryPointWithinTheFacility?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n )}\r\n {IntakeAFormData.entryPoint === '164407AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' && (\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"outside_the_facility\"\r\n control={control}\r\n render={({ field }) => (\r\n <Select\r\n readOnly={type?.view}\r\n id=\"outside_the_facility\"\r\n labelText={\r\n <span className={styles.label}>\r\n {t('outside_the_facility', 'Outside the Health Facility')}\r\n </span>\r\n }\r\n {...field}\r\n invalid={!!errors.outside_the_facility}\r\n invalidText={errors.outside_the_facility?.message}\r\n >\r\n <SelectItem value=\"\" text=\"Select\" />\r\n {outsideTheFacility.map((item) => (\r\n <SelectItem key={item.concept} value={item.concept} text={item.label} />\r\n ))}\r\n </Select>\r\n )}\r\n />\r\n </div>\r\n )}\r\n {IntakeAFormData.entryPoint === '164407AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' &&\r\n IntakeAFormData.outside_the_facility === '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' && (\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"otherEntryPointOutsideTheFacility\"\r\n control={control}\r\n rules={{ maxLength: { value: 50, message: 'Please use a maximum of 50 characters' } }}\r\n render={({ field }) => (\r\n <TextInput\r\n readOnly={type?.view}\r\n id=\"otherEntryPointOutsideTheFacility\"\r\n labelText={\r\n <span className={styles.label}>\r\n {t('otherEntryPointOutsideTheFacility', 'Other entry point outside the facility')}\r\n </span>\r\n }\r\n {...field}\r\n invalid={!!errors.otherEntryPointOutsideTheFacility}\r\n invalidText={errors.otherEntryPointOutsideTheFacility?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n )}\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"reason_for_referral\"\r\n control={control}\r\n render={({ field }) => (\r\n <RadioButtonGroup\r\n orientation=\"vertical\"\r\n readOnly={true}\r\n id=\"reason_for_referral\"\r\n legendText={\r\n <span className={styles.label}>{t('reason_for_referral', 'Reason for referral')}</span>\r\n }\r\n {...field}\r\n invalid={!!errors.reason_for_referral}\r\n invalidText={errors.reason_for_referral?.message}\r\n onChange={(value: string) => field.onChange(value)}\r\n >\r\n {reasonForReferralOpt.map((item) => (\r\n <RadioButton\r\n key={item.concept}\r\n value={item.concept}\r\n labelText={item.label}\r\n checked={field.value === item.concept}\r\n />\r\n ))}\r\n </RadioButtonGroup>\r\n )}\r\n />\r\n </div>\r\n </AccordionItem>\r\n <AccordionItem className=\"formContainer\" title=\"CARE GIVER/EMERGENCY CONTACT INFORMATION\" open>\r\n <div className=\"fieldWrapper\">\r\n <Controller\r\n name=\"careGiverKnown\"\r\n control={control}\r\n render={({ field }) => (\r\n <RadioButtonGroup\r\n orientation=\"vertical\"\r\n id=\"careGiverKnown\"\r\n {...field}\r\n readOnly={type?.view}\r\n legendText={\r\n <span className={styles.label}>\r\n {t('careGiverKnown', 'Care giver/Emergency contact known?')}\r\n </span>\r\n }\r\n {...field}\r\n invalid={!!errors.careGiverKnown}\r\n invalidText={errors.careGiverKnown?.message}\r\n // onChange={(value: string) => field.onChange(value)}\r\n >\r\n {yesNoOptions.map((item) => (\r\n <RadioButton\r\n key={item.concept}\r\n value={item.concept}\r\n labelText={item.label}\r\n checked={field.value === item.concept}\r\n />\r\n ))}\r\n </RadioButtonGroup>\r\n )}\r\n />\r\n </div>\r\n <CareGiverPersonForm\r\n control={controlPerson}\r\n setValue={setValuePerson}\r\n watch={watchPerson}\r\n readonly={type?.view}\r\n intakeAData={IntakeAFormData}\r\n ControllerIntake={Controller}\r\n controlIntake={control}\r\n errorsPerson={errorsPerson}\r\n />\r\n </AccordionItem>\r\n\r\n <AccordionItem className={styles.formContainer} title=\"DISCLOSURE AT ENROLLMENT\" open>\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"hasFamilyMember\"\r\n control={control}\r\n render={({ field }) => (\r\n <RadioButtonGroup\r\n orientation=\"vertical\"\r\n readOnly={true}\r\n id=\"hasFamilyMember\"\r\n legendText={\r\n <span className={styles.label}>\r\n {t(\r\n 'hasFamilyMember',\r\n 'Does the client have family members (spouse/parent and children/siblings) < 15 years old',\r\n )}\r\n </span>\r\n }\r\n {...field}\r\n invalid={!!errors.hasFamilyMember}\r\n invalidText={errors.hasFamilyMember?.message}\r\n onChange={(value: string) => field.onChange(value)}\r\n >\r\n {yesNoOptions.map((item) => (\r\n <RadioButton\r\n key={item.concept}\r\n value={item.concept}\r\n labelText={item.label}\r\n checked={field.value === item.concept}\r\n />\r\n ))}\r\n </RadioButtonGroup>\r\n )}\r\n />\r\n </div>\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"hivDisclosure\"\r\n control={control}\r\n render={({ field }) => (\r\n <RadioButtonGroup\r\n orientation=\"vertical\"\r\n readOnly={type?.view}\r\n id=\"hivDisclosure\"\r\n legendText={\r\n <span className={styles.label}>\r\n {t('hivDisclosure', \"Does anyone else know about your/your child's HIV status\")}\r\n </span>\r\n }\r\n {...field}\r\n invalid={!!errors.hivDisclosure}\r\n invalidText={errors.hivDisclosure?.message}\r\n onChange={(value: string) => field.onChange(value)}\r\n >\r\n {yesNoOptions.map((item) => (\r\n <RadioButton\r\n key={item.concept}\r\n value={item.concept}\r\n labelText={item.label}\r\n checked={field.value === item.concept}\r\n />\r\n ))}\r\n </RadioButtonGroup>\r\n )}\r\n />\r\n </div>\r\n {/* {IntakeAFormData.hivDisclosure !== '1066AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA' && ( */}\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"whoKnows\"\r\n control={control}\r\n render={({ field }) => {\r\n const initialSelectedItems = whoKnowsOpt.filter((item) =>\r\n field?.value?.selectedItems?.some((selected) => selected.concept === item.concept),\r\n );\r\n\r\n return (\r\n <MultiSelect\r\n readOnly={type?.view}\r\n id=\"whoKnows\"\r\n titleText={\r\n <span className={styles.label}>\r\n {' '}\r\n {t('whoKnows', \"If yes, who knows your/your child's HIV status?\")}\r\n </span>\r\n }\r\n // label={t('whoKnows', 'who Knows')}\r\n initialSelectedItems={initialSelectedItems}\r\n items={whoKnowsOpt}\r\n itemToString={(item) => (item ? item.label : '')}\r\n sortItems={(items) => items}\r\n invalid={!!errors.whoKnows}\r\n invalidText={errors.whoKnows?.message}\r\n onChange={({ selectedItems }) => {\r\n field.onChange({ selectedItems });\r\n field.onBlur();\r\n }}\r\n onBlur={() => field.onBlur()}\r\n value={field.value?.selectedItems || []}\r\n />\r\n );\r\n }}\r\n />\r\n {IntakeAFormData?.whoKnows?.selectedItems?.map((data) => (\r\n <Tag key={data.concept} type=\"gray\">\r\n {data.label}\r\n </Tag>\r\n ))}\r\n </div>\r\n {/* )} */}\r\n {IntakeAFormData?.whoKnows?.selectedItems?.some(\r\n (item) => item.concept === '5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',\r\n ) && (\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"otherPersonThatKnows\"\r\n control={control}\r\n rules={{ maxLength: { value: 50, message: 'Please use a maximum of 50 characters' } }}\r\n render={({ field }) => (\r\n <TextInput\r\n readOnly={type?.view}\r\n id=\"otherPersonThatKnows\"\r\n labelText={\r\n <span className={styles.label}>\r\n {t('otherPersonThatKnows', \"Other person that knows your/your child's HIV positive status\")}\r\n </span>\r\n }\r\n {...field}\r\n invalid={!!errors.otherPersonThatKnows}\r\n invalidText={errors.otherPersonThatKnows?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n )}\r\n </AccordionItem>\r\n\r\n <AccordionItem className={styles.formContainer} title=\"NOTES\" open>\r\n <div className={styles.fieldWrapper}>\r\n <Controller\r\n name=\"notes\"\r\n control={control}\r\n rules={{ maxLength: { value: 250, message: 'Please use a maximum of 250 characters' } }}\r\n render={({ field }) => (\r\n <TextArea\r\n id=\"notes\"\r\n labelText={<span className={styles.label}>{t('notes', 'Notes')}</span>}\r\n rows={1}\r\n {...field}\r\n invalid={!!errors.notes}\r\n invalidText={errors.notes?.message}\r\n />\r\n )}\r\n />\r\n </div>\r\n </AccordionItem>\r\n </Accordion>\r\n </Stack>\r\n </div>\r\n <div className={styles.stickyButtonSet}>\r\n <Button kind=\"secondary\" onClick={() => closeWorkspace('intake-a-form-workspace')} className={styles.button}>\r\n Discard\r\n </Button>\r\n {!type?.view && (\r\n <Button className={styles.button} kind=\"primary\" type=\"submit\" disabled={isSubmitting}>\r\n {isSubmitting ? <InlineLoading /> : type?.edit ? 'Update' : 'Save'}\r\n </Button>\r\n )}\r\n </div>\r\n </Form>\r\n );\r\n};\r\n\r\nexport default IntakeAForm;\r\n","import { fhirBaseUrl, openmrsFetch, restBaseUrl } from '@openmrs/esm-framework';\r\nimport type { OpenmrsEncounter } from '../types';\r\nimport useSWR from 'swr';\r\nimport { encounterRepresentation } from '../constants';\r\nimport useSWRImmutable from 'swr';\r\nimport { useEffect, useState } from 'react';\r\ntype UseEncounters = {\r\n encounters: Array<OpenmrsEncounter>;\r\n isError: Error | null;\r\n isLoading: boolean;\r\n isValidating: boolean;\r\n mutate: () => void;\r\n};\r\n\r\nexport function useEncounters(patientUuid: string, encounterType): UseEncounters {\r\n const encountersUrl = `${restBaseUrl}/encounter?patient=${patientUuid}&encounterType=${encounterType}&v=${encounterRepresentation}`;\r\n\r\n const { data, error, isLoading, isValidating, mutate } = useSWR<\r\n { data: { results: Array<OpenmrsEncounter> } },\r\n Error\r\n >(patientUuid ? encountersUrl : null, openmrsFetch);\r\n\r\n return {\r\n encounters: data ? data?.data.results : [],\r\n isError: error,\r\n isLoading,\r\n isValidating,\r\n mutate,\r\n };\r\n}\r\n\r\nexport function useEncounterRows(patientUuid: string, encounterType: string, pageSize?: number, pageNumber?: number) {\r\n const [encounters, setEncounters] = useState([]);\r\n const startIndex = (pageNumber - 1) * pageSize;\r\n\r\n const url = `/ws/rest/v1/encounter?encounterType=${encounterType}&patient=${patientUuid}&v=${encounterRepresentation}&totalCount=true&limit=${pageSize}&startIndex=${startIndex}`;\r\n\r\n const { data: response, error, isLoading, mutate } = useSWR<{ data: any }, Error>(url, openmrsFetch);\r\n\r\n useEffect(() => {\r\n if (response) {\r\n response.data.results.sort(\r\n (a, b) => new Date(b.encounterDatetime).getTime() - new Date(a.encounterDatetime).getTime(),\r\n );\r\n\r\n setEncounters([...response.data.results]);\r\n }\r\n }, [response]);\r\n\r\n return {\r\n encounters,\r\n total: response?.data?.totalCount,\r\n isLoading,\r\n isError: error,\r\n mutate,\r\n };\r\n}\r\n\r\nexport function usePatientDeathStatus(patientUuid: string) {\r\n const {\r\n data: response,\r\n isLoading,\r\n error,\r\n } = useSWRImmutable<any, Error>(`/ws/rest/v1/person/${patientUuid}?v=custom:(dead)`, openmrsFetch);\r\n\r\n return {\r\n isDead: !isLoading && !error && response ? response?.data?.dead : false,\r\n };\r\n}\r\n\r\nexport function useLatestObs(patientUuid: string, conceptUuid: string, encounterType?: string) {\r\n const searchParams = new URLSearchParams({\r\n patient: patientUuid,\r\n code: conceptUuid,\r\n _sort: '-_lastUpdated',\r\n _count: '1',\r\n });\r\n if (encounterType) {\r\n searchParams.append('encounter.type', encounterType);\r\n }\r\n\r\n const url = `${fhirBaseUrl}/Observation?${searchParams.toString()}`;\r\n\r\n const { data: response, error, isLoading } = useSWR<{ data: any }, Error>(url, openmrsFetch);\r\n\r\n return {\r\n latestMatched: response?.data?.entry?.length ? response?.data?.entry[0]?.resource : null,\r\n latestLoading: isLoading,\r\n latestError: error,\r\n };\r\n}\r\n\r\nexport function useFetchLocation() {\r\n const [encounters, setEncounters] = useState([]);\r\n const url = `${restBaseUrl}/location?v=default`;\r\n const { data: response, error, isLoading, mutate } = useSWR<{ data: any }, Error>(url, openmrsFetch);\r\n\r\n useEffect(() => {\r\n if (response) {\r\n response.data.results.sort(\r\n (a, b) => new Date(b.encounterDatetime).getTime() - new Date(a.encounterDatetime).getTime(),\r\n );\r\n\r\n setEncounters([...response.data.results]);\r\n }\r\n }, [response]);\r\n\r\n return {\r\n encounters,\r\n isLoading,\r\n isError: error,\r\n };\r\n}\r\n"],"names":["ComboBox","TextInput","NumberInput","RadioButtonGroup","RadioButton","Select","SelectItem","React","useEffect","useState","Controller","styles","fetchChildEntries","searchSuggestions","genderOpt","relationshipOpt","CareGiverPersonForm","control","setValue","watch","readonly","intakeAData","ControllerIntake","controlIntake","errorsPerson","country","stateProvince","countyDistrict","cityVillage","state","county","city","options","setOptions","searchOptions","setSearchOptions","then","data","prev","some","opt","name","filterOptions","input","filter","toLowerCase","includes","div","careGiverKnown","className","rules","required","render","field","readOnly","id","labelText","span","label","invalid","care_giver_first_name","invalidText","message","allowEmpty","onKeyDown","e","key","length","test","preventDefault","orientation","legendText","map","item","concept","value","short","checked","text","relationship","titleText","placeholder","items","itemToString","address","selectedItem","onInputChange","onChange","selected","parts","split","allowCustomValue","find","fieldState","error","target","useMemo","useRef","useForm","useWatch","Form","TextArea","Accordion","AccordionItem","Button","Stack","MultiSelect","InlineLoading","closeWorkspace","OpenmrsDatePicker","usePatient","useSession","useTranslation","careGiverDefault","entryPointOpt","intakeAConceptsUuid","intakeADefault","levelOfEducationOpt","maritalStatusOpt","modeOfDeliveryOpt","outsideTheFacility","placeOfDeliveryOpt","reasonForReferralOpt","religionOpt","residentialTypeOpt","testTypeOpt","whoKnowsOpt","withinInFacilityOpt","yesNoOptions","dayjs","INTAKE_A_ENCOUNTER_TYPE","intakeAFormUuid","useLatestObs","defaultValuesFromEncounter","useFetchLocation","Tag","createPerson","getPersonData","relationshipPerson","createEncounter","IntakeAForm","encounter","type","mutateEncounters","patient","IntakeAFormData","session","t","isSubmitting","setIsSubmitting","encounterDate","Date","toISOString","birthDate","currentAge","diff","pid","relation","personId","setPersonId","facilityInfo","patientUuid","latestMatched","registrationDate","defaultValues","mode","handleSubmit","trigger","formState","errors","touchedFields","controlPerson","handleSubmitPerson","watchPerson","setValuePerson","getValues","getValuesPerson","reset","resetPerson","triggerPerson","touchedFieldsPerson","fetchedPatientUuid","fetchData","person","res","preferredAddress","mappedFormValues","current","personB","uuid","addresses","addr","preferred","workPhone","attributes","attr","attributeType","homePhone","houseNo","kebele","search","names","givenName","care_giver_fathers_name","middleName","care_giver_grandfathers_name","familyName","careGiverAge","age","careGiverGender","gender","addressRegion","address3","telephoneMobile","visibilityRules","otherReligion","religion","otherEducation","levelOfEducation","regular_followup","catchment_area","mothers_name","mothers_father_name","mothers_grandfather_name","placeOfDelivery","otherPlaceOfDelivery","modeOfDelivery","otherModeOfDelivery","within_the_facility","entryPoint","otherEntryPointWithinTheFacility","outside_the_facility","otherEntryPointOutsideTheFacility","otherRelationship","Object","keys","forEach","isVisible","undefined","shouldValidate","shouldDirty","onSubmit","handleSavePerson","handleCreateRelation","namespace","conceptsUuid","encounterType","formUuid","providerUuid","currentProvider","locationUuid","context","encounterUuid","workspaceName","editMode","edit","console","values","currentDate","estimatedBirthDate","payload","response","subtract","birthdate","birthdateEstimated","AbortController","personA","relationshipType","handleFormSubmit","isFormAValid","isFormBValid","formNew","h2","heading","scrollableContent","gap","container","formContainer","title","open","fieldWrapper","view","unit_tb_no","maxLength","occupation","residentialType","isReadOnly","minDate","maxDate","date_confirmed","test_type","reason_for_referral","hasFamilyMember","hivDisclosure","initialSelectedItems","selectedItems","sortItems","whoKnows","onBlur","otherPersonThatKnows","rows","notes","stickyButtonSet","kind","onClick","button","disabled","fhirBaseUrl","openmrsFetch","restBaseUrl","useSWR","encounterRepresentation","useSWRImmutable","useEncounters","encountersUrl","isLoading","isValidating","mutate","encounters","results","isError","useEncounterRows","pageSize","pageNumber","setEncounters","startIndex","url","sort","a","b","encounterDatetime","getTime","total","totalCount","usePatientDeathStatus","isDead","dead","conceptUuid","searchParams","URLSearchParams","code","_sort","_count","append","toString","entry","resource","latestLoading","latestError"],"sourceRoot":""}
|