@unite-us/app-create-referral 0.15.166 → 0.15.168

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.
Files changed (185) hide show
  1. package/dist/AppReferrals.js +3 -4
  2. package/dist/AppReferrals.js.map +1 -1
  3. package/dist/AppReferrals.test.js +27 -20
  4. package/dist/AppReferrals.test.js.map +1 -1
  5. package/dist/__testUtils__/mockData/utils.js +13 -19
  6. package/dist/__testUtils__/mockData/utils.js.map +1 -1
  7. package/dist/__testUtils__/mockServer/handlers.js +7 -13
  8. package/dist/__testUtils__/mockServer/handlers.js.map +1 -1
  9. package/dist/__testUtils__/test-utils.js +10 -15
  10. package/dist/__testUtils__/test-utils.js.map +1 -1
  11. package/dist/actions/Document/Contact/Group/fileUploadUtils.js +1 -1
  12. package/dist/actions/Document/Contact/Group/fileUploadUtils.js.map +1 -1
  13. package/dist/actions/Group/fetchCoreGroupForms.js +1 -1
  14. package/dist/actions/Group/fetchCoreGroupForms.js.map +1 -1
  15. package/dist/actions/Referral/cannotMoveToReferralReasons.js +10 -11
  16. package/dist/actions/Referral/cannotMoveToReferralReasons.js.map +1 -1
  17. package/dist/actions/Referral/fetchCoreServices.js +19 -25
  18. package/dist/actions/Referral/fetchCoreServices.js.map +1 -1
  19. package/dist/actions/Referral/removeReferralProgram.js +3 -5
  20. package/dist/actions/Referral/removeReferralProgram.js.map +1 -1
  21. package/dist/api/ApiHooks.js +39 -36
  22. package/dist/api/ApiHooks.js.map +1 -1
  23. package/dist/api/config.js +9 -8
  24. package/dist/api/config.js.map +1 -1
  25. package/dist/common/form/CurrencyField/index.js +3 -5
  26. package/dist/common/form/CurrencyField/index.js.map +1 -1
  27. package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js +3 -3
  28. package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js.map +1 -1
  29. package/dist/common/form/DocumentUploader/components/DocumentsListView.js +1 -1
  30. package/dist/common/form/DocumentUploader/components/DocumentsListView.js.map +1 -1
  31. package/dist/common/form/FileUploadV2/FileUpload.js +27 -15
  32. package/dist/common/form/FileUploadV2/FileUpload.js.map +1 -1
  33. package/dist/common/form/FileUploadV2/FileUpload.test.js +6 -10
  34. package/dist/common/form/FileUploadV2/FileUpload.test.js.map +1 -1
  35. package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js +6 -7
  36. package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js.map +1 -1
  37. package/dist/common/form/FormForm/index.js +10 -10
  38. package/dist/common/form/FormForm/index.js.map +1 -1
  39. package/dist/components/DollarAmount.js +2 -2
  40. package/dist/components/DollarAmount.js.map +1 -1
  41. package/dist/components/LineItem.js +1 -1
  42. package/dist/components/LineItem.js.map +1 -1
  43. package/dist/components/ReferralStepper.js +4 -5
  44. package/dist/components/ReferralStepper.js.map +1 -1
  45. package/dist/components/SearchableField.js +3 -4
  46. package/dist/components/SearchableField.js.map +1 -1
  47. package/dist/components/Stepper.js +7 -7
  48. package/dist/components/Stepper.js.map +1 -1
  49. package/dist/components/modal/Dialog.js +15 -10
  50. package/dist/components/modal/Dialog.js.map +1 -1
  51. package/dist/components/service_authorization/AuthorizationSpendCard.js +5 -5
  52. package/dist/components/service_authorization/AuthorizationSpendCard.js.map +1 -1
  53. package/dist/components/service_authorization/CapsInfo.js +10 -10
  54. package/dist/components/service_authorization/CapsInfo.js.map +1 -1
  55. package/dist/components/service_authorization/CaseStatus.js +2 -2
  56. package/dist/components/service_authorization/CaseStatus.js.map +1 -1
  57. package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js +1 -2
  58. package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js.map +1 -1
  59. package/dist/components/service_authorization/ReferralAuthSpendExpandable.js +2 -2
  60. package/dist/components/service_authorization/ReferralAuthSpendExpandable.js.map +1 -1
  61. package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js +4 -4
  62. package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js.map +1 -1
  63. package/dist/components/service_authorization/formatShortDate.js +1 -1
  64. package/dist/components/service_authorization/formatShortDate.js.map +1 -1
  65. package/dist/components/spinners/Spinner/Spinner.js +1 -1
  66. package/dist/components/spinners/Spinner/Spinner.js.map +1 -1
  67. package/dist/context/AppCreateReferralProvider.js +4 -4
  68. package/dist/context/AppCreateReferralProvider.js.map +1 -1
  69. package/dist/context/state.js +14 -6
  70. package/dist/context/state.js.map +1 -1
  71. package/dist/context/withAppCreateReferralContext.js +3 -5
  72. package/dist/context/withAppCreateReferralContext.js.map +1 -1
  73. package/dist/hooks/__tests__/useCreateReferrals.test.js +19 -17
  74. package/dist/hooks/__tests__/useCreateReferrals.test.js.map +1 -1
  75. package/dist/hooks/sendReferral.js +38 -35
  76. package/dist/hooks/sendReferral.js.map +1 -1
  77. package/dist/hooks/useClinicalModificationOptions.js +1 -2
  78. package/dist/hooks/useClinicalModificationOptions.js.map +1 -1
  79. package/dist/hooks/useCreateReferrals.js +107 -90
  80. package/dist/hooks/useCreateReferrals.js.map +1 -1
  81. package/dist/hooks/useCreateResourceList.js +11 -12
  82. package/dist/hooks/useCreateResourceList.js.map +1 -1
  83. package/dist/hooks/useCreateShareEvent.js +2 -2
  84. package/dist/hooks/useCreateShareEvent.js.map +1 -1
  85. package/dist/hooks/useForwardReferral.js +36 -36
  86. package/dist/hooks/useForwardReferral.js.map +1 -1
  87. package/dist/hooks/useUpdateResourceList.js +16 -17
  88. package/dist/hooks/useUpdateResourceList.js.map +1 -1
  89. package/dist/pages/builder/ReferralBuilder.js +32 -31
  90. package/dist/pages/builder/ReferralBuilder.js.map +1 -1
  91. package/dist/pages/builder/ReferralBuilderForm.js +7 -10
  92. package/dist/pages/builder/ReferralBuilderForm.js.map +1 -1
  93. package/dist/pages/builder/ReferralBuilderFormContent.js +43 -36
  94. package/dist/pages/builder/ReferralBuilderFormContent.js.map +1 -1
  95. package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js +1 -1
  96. package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js.map +1 -1
  97. package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js +16 -16
  98. package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js.map +1 -1
  99. package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js +12 -12
  100. package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js.map +1 -1
  101. package/dist/pages/builder/__tests__/ReferralBuilderForm.attachments.test.js +19 -14
  102. package/dist/pages/builder/__tests__/ReferralBuilderForm.attachments.test.js.map +1 -1
  103. package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js +12 -12
  104. package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js.map +1 -1
  105. package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js +1 -1
  106. package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js.map +1 -1
  107. package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js +7 -7
  108. package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js.map +1 -1
  109. package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js +15 -17
  110. package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js.map +1 -1
  111. package/dist/pages/builder/__tests__/buildDraftState.test.js +4 -6
  112. package/dist/pages/builder/__tests__/buildDraftState.test.js.map +1 -1
  113. package/dist/pages/builder/__tests__/buildGroupedReferrals.networkBug.test.js +4 -10
  114. package/dist/pages/builder/__tests__/buildGroupedReferrals.networkBug.test.js.map +1 -1
  115. package/dist/pages/builder/buildDraftState.js +2 -2
  116. package/dist/pages/builder/buildDraftState.js.map +1 -1
  117. package/dist/pages/builder/components/AuthorizationSubform.js +19 -19
  118. package/dist/pages/builder/components/AuthorizationSubform.js.map +1 -1
  119. package/dist/pages/builder/components/ChooseOneServiceTypeModal.js +5 -6
  120. package/dist/pages/builder/components/ChooseOneServiceTypeModal.js.map +1 -1
  121. package/dist/pages/builder/components/ProgramHeader.js +1 -1
  122. package/dist/pages/builder/components/ProgramHeader.js.map +1 -1
  123. package/dist/pages/builder/components/ProgramMenu.js +1 -1
  124. package/dist/pages/builder/components/ProgramMenu.js.map +1 -1
  125. package/dist/pages/builder/components/ReferralBuilderContent.js +5 -4
  126. package/dist/pages/builder/components/ReferralBuilderContent.js.map +1 -1
  127. package/dist/pages/builder/components/ReferralCard.js +11 -11
  128. package/dist/pages/builder/components/ReferralCard.js.map +1 -1
  129. package/dist/pages/builder/components/ReferralClientNeedsField.js +4 -6
  130. package/dist/pages/builder/components/ReferralClientNeedsField.js.map +1 -1
  131. package/dist/pages/builder/components/ReferralProgramCard.js +2 -2
  132. package/dist/pages/builder/components/ReferralProgramCard.js.map +1 -1
  133. package/dist/pages/builder/components/ReferralProgramMenu.js +3 -3
  134. package/dist/pages/builder/components/ReferralProgramMenu.js.map +1 -1
  135. package/dist/pages/builder/constants.js +18 -7
  136. package/dist/pages/builder/constants.js.map +1 -1
  137. package/dist/pages/builder/hooks/useBuildReferrals.js +6 -13
  138. package/dist/pages/builder/hooks/useBuildReferrals.js.map +1 -1
  139. package/dist/pages/builder/hooks/useReferralMutations.js +22 -15
  140. package/dist/pages/builder/hooks/useReferralMutations.js.map +1 -1
  141. package/dist/pages/builder/utils/buildGroupedReferrals.js +14 -25
  142. package/dist/pages/builder/utils/buildGroupedReferrals.js.map +1 -1
  143. package/dist/pages/builder/utils/buildGroupedReferralsHelpers.js +20 -40
  144. package/dist/pages/builder/utils/buildGroupedReferralsHelpers.js.map +1 -1
  145. package/dist/pages/builder/utils/formatProgramDetail.js +16 -18
  146. package/dist/pages/builder/utils/formatProgramDetail.js.map +1 -1
  147. package/dist/pages/builder/utils/referralBuilderFormDraftAuth.js +26 -26
  148. package/dist/pages/builder/utils/referralBuilderFormDraftAuth.js.map +1 -1
  149. package/dist/pages/builder/utils/referralBuilderFormUtils.js +15 -24
  150. package/dist/pages/builder/utils/referralBuilderFormUtils.js.map +1 -1
  151. package/dist/pages/builder/utils/referralBuilderFormValidation.js +20 -24
  152. package/dist/pages/builder/utils/referralBuilderFormValidation.js.map +1 -1
  153. package/dist/pages/builder/utils/referralBuilderUtils.js +20 -34
  154. package/dist/pages/builder/utils/referralBuilderUtils.js.map +1 -1
  155. package/dist/pages/builder/utils.js +45 -64
  156. package/dist/pages/builder/utils.js.map +1 -1
  157. package/dist/pages/review/DropdownMultiplesReferrals.js +12 -14
  158. package/dist/pages/review/DropdownMultiplesReferrals.js.map +1 -1
  159. package/dist/pages/review/ReferralsSent.js +19 -26
  160. package/dist/pages/review/ReferralsSent.js.map +1 -1
  161. package/dist/pages/review/Review.js +69 -88
  162. package/dist/pages/review/Review.js.map +1 -1
  163. package/dist/pages/review/SuccessReferralRedesign.js +2 -2
  164. package/dist/pages/review/SuccessReferralRedesign.js.map +1 -1
  165. package/dist/pages/review/__tests__/ReferralsSent.test.js +16 -16
  166. package/dist/pages/review/__tests__/ReferralsSent.test.js.map +1 -1
  167. package/dist/pages/review/__tests__/Review.test.js +30 -22
  168. package/dist/pages/review/__tests__/Review.test.js.map +1 -1
  169. package/dist/pages/review/constants.js +3 -3
  170. package/dist/pages/review/constants.js.map +1 -1
  171. package/dist/pages/review/referralStatusRedesign.js +5 -6
  172. package/dist/pages/review/referralStatusRedesign.js.map +1 -1
  173. package/dist/pages/supporting-info/SupportingInfo.js +14 -21
  174. package/dist/pages/supporting-info/SupportingInfo.js.map +1 -1
  175. package/dist/utils/attachmentUtils.js +1 -1
  176. package/dist/utils/attachmentUtils.js.map +1 -1
  177. package/dist/utils/handleDraftSaveResponse.js +1 -1
  178. package/dist/utils/handleDraftSaveResponse.js.map +1 -1
  179. package/dist/utils/referralToConsent.js +5 -8
  180. package/dist/utils/referralToConsent.js.map +1 -1
  181. package/dist/utils/validateCostAmount.js +1 -1
  182. package/dist/utils/validateCostAmount.js.map +1 -1
  183. package/dist/utils/validateUnitAmount.js +1 -1
  184. package/dist/utils/validateUnitAmount.js.map +1 -1
  185. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ReferralBuilder.js","names":["React","useEffect","useState","useRef","useCallback","useMemo","isEqual","isEmpty","get","some","values","intersectionBy","compact","useNavigate","useLocation","Button","setData","useAppCreateReferralContext","StepHeader","isUnlistedProgram","getReferralSubtitle","initializeReferralErrors","generateErrorMessage","hasOffPlatformReferrals","isEmptyErrors","updatedReferralsBySelectedServices","useBuildReferrals","useReferralMutations","CreateReferralContainer","NavButtons","NoReferralsDisplay","Spinner","useCreateReferrals","CALLBACKS","coreApi","fetchContactDocuments","fetchCaseDocuments","classNames","fetchNetworks","useFeatureFlag","useFind","mapClientNeeds","ChooseOneServiceTypeModal","REFERRAL_BUILDER_DESCRIPTION","handleKeyDown","AboutGroupedReferralsModal","buildReferralErrors","getFirstIndexWithErrors","focusReferralError","getSelectedReferral","getUnselectedReferralIndexes","splitServicesBySelection","getServiceNameById","buildProgramsToServicesState","ReferralBuilderContent","handleDraftSaveResponse","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ReferralBuilder","_location$state$selec","_location$state","location","navigate","dispatch","state","referrals","selectedPrograms","currentEmployee","currentProvider","fieldsConfig","source","person","draftState","referralDescription","caseId","contextCaseId","referralId","referralType","form","ChooseOneServiceTypeModalRef","previousWindowWidthRef","window","innerWidth","openChooseOneServiceTypeModal","current","openDialog","closeChooseOneServiceTypeModal","closeDialog","hint542SupersetUnlistedPrograms","crtb854ForwardingSuperset","featureFlagClientNeeds","servicesState","setServicesState","aboutGroupedReferralsModalIsOpen","setAboutGroupedReferralsModalIsOpen","isOpenChooseOneServiceTypeModal","setChooseOneServiceTypeModalIsOpen","selectedIndex","setSelectedIndex","selectedReferral","fieldErrors","setFieldErrors","nextClicked","setNextClicked","saveDraftClicked","setSaveDraftClicked","isSavingDraft","setIsSavingDraft","expandReferralsCard","setExpandReferralsCard","documents","setDocuments","caseDocuments","setCaseDocuments","loadedDocuments","setloadedDocuments","isEmrSource","networksUnlistedProgram","setNetworksUnlistedProgram","caseData","setCaseData","hasDraftReferral","referralBuilderTitle","isForwardReferralPath","query","URLSearchParams","search","personId","id","data","clientNeedsData","concat","most_recent","queryConfig","placeholderData","undefined","clientNeeds","showClientNeeds","errors","Object","keys","reduce","acc","index","fieldError","service","network","primary_worker","description","amount_requested","amount_exceeded","service_end","invalid_insurance_auth_dates","passthrough_dates","opened_date","icd10_code","client_need","setReferralErrors","referralIndex","newErrors","prevFieldErrors","currentErrors","updatedErrors","_objectSpread","onReferralsBuilt","groupedReferrals","initErrors","forEach","_referral","isLoading","saveValuesOnChange","moveToExistingReferral","moveToNewReferral","removeProgram","updateAttachments","updatePersistedAttachments","handleServiceSelectionChange","programId","serviceId","prevState","map","selected","findServiceName","_ref","serviceToFind","hasUnlistedPrograms","program","then","networks","syncExpandedCardWhenChevronHidden","currentWindowWidth","previousWindowWidth","addEventListener","removeEventListener","onLearnMoreClick","onCloseGroupedReferralsModal","refModal","openModal","closeModal","onReferralCardClick","result","fetchCaseData","findRecord","error","console","updatedReferrals","referral","attachableDocuments","doc","attached","document","hasMoreThanOneServiceType","_program$services","services","length","getSelected","firstIndexWithErrors","focusErrors","Boolean","formRef","onNextClick","navigateBack","draftCaseId","redirectToDraftReferral","onNavigateBack","navigateToAddResources","onNavigateToAddResources","createReferrals","handleSaveDraftReferral","response","draft","changeWidthReferralCard","prevExpandReferralsCard","center","referralSubtitle","unselectedReferralIndexes","allPrograms","flatMap","r","programs","errorMessage","currentReferral","xlOrLgInvisibleChevron","xlOrLgSpaceReferralDiv","onConfirmApplyChanges","selectedServices","unselectedServices","onDeselectProgram","children","className","header","type","onClick","onKeyDown","event","label","link","ref","onClose","modalRef","onConfirm","onServiceSelectionChange","onBackClick","onForwardClick","onSaveDraftReferral","primaryLabel","hideForwardButtons","hideSaveDraftLink","disabled","selectedFormKey"],"sources":["../../../src/pages/builder/ReferralBuilder.js"],"sourcesContent":["import React, { useEffect, useState, useRef, useCallback, useMemo } from 'react';\nimport { isEqual, isEmpty, get, some, values, intersectionBy, compact } from 'lodash';\nimport { useNavigate, useLocation } from 'react-router-dom';\nimport { Button } from '@unite-us/app-components';\nimport { setData, useAppCreateReferralContext } from '../../context/AppCreateReferralProvider';\nimport StepHeader from '../../components/StepHeader';\nimport { isUnlistedProgram, getReferralSubtitle, initializeReferralErrors, generateErrorMessage, hasOffPlatformReferrals, isEmptyErrors, updatedReferralsBySelectedServices } from './utils';\nimport useBuildReferrals from './hooks/useBuildReferrals';\nimport useReferralMutations from './hooks/useReferralMutations';\nimport CreateReferralContainer from '../../components/CreateReferralContainer';\nimport NavButtons from '../../components/NavButtons';\nimport NoReferralsDisplay from '../../components/NoReferralsDisplay';\nimport Spinner from '../../components/spinners/Spinner';\nimport useCreateReferrals from '../../hooks/useCreateReferrals';\nimport { CALLBACKS, coreApi } from '../../api/config';\nimport fetchContactDocuments from '../../actions/Document/Contact/Group/fetchContactDocuments';\nimport fetchCaseDocuments from '../../actions/Document/Contact/Group/fetchCaseDocuments';\nimport classNames from 'classnames';\nimport fetchNetworks from '../../actions/Referral/fetchNetworks';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\nimport { useFind } from '../../api/ApiHooks';\nimport { mapClientNeeds } from './utils/referralBuilderFormUtils';\nimport ChooseOneServiceTypeModal from './components/ChooseOneServiceTypeModal';\nimport {\n REFERRAL_BUILDER_DESCRIPTION,\n} from './constants';\nimport { handleKeyDown } from '../../common/utils/utils';\nimport AboutGroupedReferralsModal from './components/AboutGroupedReferralsModal';\nimport {\n buildReferralErrors,\n getFirstIndexWithErrors,\n focusReferralError,\n getSelectedReferral,\n getUnselectedReferralIndexes,\n splitServicesBySelection,\n getServiceNameById,\n buildProgramsToServicesState,\n} from './utils/referralBuilderUtils';\nimport ReferralBuilderContent from './components/ReferralBuilderContent';\nimport handleDraftSaveResponse from '../../utils/handleDraftSaveResponse';\n\nexport default function ReferralBuilder() {\n const location = useLocation();\n const navigate = useNavigate();\n const {\n dispatch,\n state: {\n referrals,\n selectedPrograms,\n currentEmployee,\n currentProvider,\n fieldsConfig,\n source,\n person,\n draftState,\n referralDescription,\n caseId: contextCaseId,\n referralId,\n referralType,\n },\n } = useAppCreateReferralContext();\n const form = useRef();\n const ChooseOneServiceTypeModalRef = useRef();\n const previousWindowWidthRef = useRef(window.innerWidth);\n\n const openChooseOneServiceTypeModal = useCallback(() => {\n ChooseOneServiceTypeModalRef.current.openDialog();\n }, []);\n\n const closeChooseOneServiceTypeModal = useCallback(() => {\n ChooseOneServiceTypeModalRef.current.closeDialog();\n }, []);\n\n const hint542SupersetUnlistedPrograms = useFeatureFlag('hint542SupersetUnlistedPrograms', false);\n const crtb854ForwardingSuperset = useFeatureFlag('crtb854ForwardingSuperset', false);\n const featureFlagClientNeeds = useFeatureFlag('crtb2130MultipleClientNeeds', false);\n\n const [servicesState, setServicesState] = useState([]);\n const [aboutGroupedReferralsModalIsOpen, setAboutGroupedReferralsModalIsOpen] = useState(false);\n const [isOpenChooseOneServiceTypeModal, setChooseOneServiceTypeModalIsOpen] = useState(false);\n const [selectedIndex, setSelectedIndex] = useState(location.state?.selectedReferral ?? 0);\n const [fieldErrors, setFieldErrors] = useState({})\n const [nextClicked, setNextClicked] = useState(false);\n const [saveDraftClicked, setSaveDraftClicked] = useState(false);\n const [isSavingDraft, setIsSavingDraft] = useState(false);\n const [expandReferralsCard, setExpandReferralsCard] = useState(false);\n const [documents, setDocuments] = useState([]);\n const [caseDocuments, setCaseDocuments] = useState([]);\n const [loadedDocuments, setloadedDocuments] = useState(false);\n const isEmrSource = source === 'emr';\n const [networksUnlistedProgram, setNetworksUnlistedProgram] = useState([]);\n const [caseData, setCaseData] = useState(null);\n const hasDraftReferral = draftState?.state === 'draft';\n const referralBuilderTitle = hasDraftReferral ? 'Edit Your Referrals' : 'Prepare Your Referrals';\n const isForwardReferralPath = !!referralId && !!referralType;\n const query = new URLSearchParams(location.search);\n const caseId = contextCaseId || query.get('caseId');\n const personId = person?.id || query.get('person');\n const { data: clientNeedsData } = useFind(\n `people/${personId}/person_condition`,\n {\n most_recent: true,\n },\n {\n queryConfig: {\n placeholderData: undefined,\n },\n },\n );\n const clientNeeds = useMemo(\n () => mapClientNeeds(clientNeedsData),\n [clientNeedsData],\n );\n const showClientNeeds = featureFlagClientNeeds && !isEmpty(clientNeeds);\n\n const errors = Object.keys(fieldErrors).reduce((acc, index) => {\n const fieldError = fieldErrors[index];\n acc[index] = {\n service: fieldError?.service,\n network: fieldError?.network,\n primary_worker: fieldError?.primary_worker,\n description: fieldError?.description,\n amount_requested: fieldError?.amount_requested || fieldError?.amount_exceeded,\n service_end: fieldError?.service_end || fieldError?.invalid_insurance_auth_dates,\n passthrough_dates: fieldError?.passthrough_dates,\n opened_date: fieldError?.opened_date,\n icd10_code: fieldError?.icd10_code,\n client_need: fieldError?.client_need,\n }\n return acc;\n }, {});\n const setReferralErrors = (referralIndex, newErrors) => {\n setFieldErrors((prevFieldErrors) => {\n const currentErrors = prevFieldErrors[referralIndex];\n const updatedErrors = { ...currentErrors, ...newErrors };\n \n if (isEqual(updatedErrors, currentErrors)) {\n return prevFieldErrors;\n }\n \n return {\n ...prevFieldErrors,\n [referralIndex]: updatedErrors,\n };\n });\n };\n\n const onReferralsBuilt = (groupedReferrals) => {\n if(!isEmpty(groupedReferrals)) {\n const initErrors = initializeReferralErrors(groupedReferrals, showClientNeeds);\n groupedReferrals.forEach((_referral, index) => {\n setReferralErrors(index, initErrors[index]);\n });\n }\n };\n\n const { isLoading } = useBuildReferrals(onReferralsBuilt);\n\n const {\n saveValuesOnChange,\n moveToExistingReferral,\n moveToNewReferral,\n removeProgram,\n updateAttachments,\n updatePersistedAttachments,\n } = useReferralMutations({\n referrals,\n selectedPrograms,\n selectedIndex,\n setSelectedIndex,\n errors,\n setFieldErrors,\n dispatch,\n });\n\n const handleServiceSelectionChange = (programId, serviceId) => {\n setServicesState(prevState =>\n prevState.map(service =>\n service.programId === programId && service.serviceId === serviceId\n ? { ...service, selected: !service.selected }\n : service\n )\n );\n };\n\n const findServiceName = ({ serviceToFind }) => (\n getServiceNameById(referrals, serviceToFind)\n );\n\n useEffect(() => {\n setServicesState(buildProgramsToServicesState(selectedPrograms, referrals));\n }, [selectedPrograms]);\n\n useEffect(() => {\n if (!isLoading && hint542SupersetUnlistedPrograms) {\n // If the selected programs contain unlisted programs, fetch the networks from the user provider\n const hasUnlistedPrograms = selectedPrograms?.some((program) => isUnlistedProgram(program));\n if (hasUnlistedPrograms) {\n fetchNetworks(currentProvider).then((networks) => {\n setNetworksUnlistedProgram(networks);\n });\n }\n }\n }, [isLoading]);\n\n useEffect(() => {\n if (isEmpty(referrals)) {\n return;\n }\n\n const initErrors = initializeReferralErrors(referrals, showClientNeeds);\n\n referrals.forEach((_referral, index) => {\n setReferralErrors(index, initErrors[index]);\n });\n }, [referrals, showClientNeeds]);\n\n useEffect(() => {\n const syncExpandedCardWhenChevronHidden = () => {\n const currentWindowWidth = window.innerWidth;\n const previousWindowWidth = previousWindowWidthRef.current;\n\n if (currentWindowWidth >= 1024) {\n setExpandReferralsCard(true);\n } else if (previousWindowWidth >= 1024) {\n setExpandReferralsCard(false);\n }\n\n previousWindowWidthRef.current = currentWindowWidth;\n };\n\n syncExpandedCardWhenChevronHidden();\n window.addEventListener('resize', syncExpandedCardWhenChevronHidden);\n return () => window.removeEventListener('resize', syncExpandedCardWhenChevronHidden);\n }, []);\n\n\n const onLearnMoreClick = () => {\n setAboutGroupedReferralsModalIsOpen(true);\n };\n\n const onCloseGroupedReferralsModal = () => {\n setAboutGroupedReferralsModalIsOpen(false);\n }\n\n const refModal = useRef(null);\n useEffect(() => {\n if (aboutGroupedReferralsModalIsOpen) {\n refModal.current.openModal();\n } else {\n refModal.current.closeModal();\n }\n }, [aboutGroupedReferralsModalIsOpen]);\n\n useEffect(() => {\n if (!isLoading && isOpenChooseOneServiceTypeModal) {\n openChooseOneServiceTypeModal();\n }\n }, [isLoading]);\n\n const onReferralCardClick = (index) => {\n setSelectedIndex(index);\n }\n\n useEffect(() => {\n fetchContactDocuments(person.id).then((result) => {\n setDocuments(result);\n });\n }, []);\n\n useEffect(() => {\n if (caseId && crtb854ForwardingSuperset) {\n fetchCaseDocuments(caseId).then((result) => {\n setCaseDocuments(result);\n });\n }\n }, []);\n\n useEffect(() => {\n const fetchCaseData = async () => {\n if (caseId) {\n try {\n const { data: { data: caseData } } = await coreApi.findRecord('case', caseId);\n setCaseData(caseData);\n } catch (error) {\n console.error('Error fetching case data:', error);\n }\n }\n };\n fetchCaseData();\n }, [caseId]);\n\n useEffect(() => {\n if (!isEmpty(referrals) && !loadedDocuments && (!isEmpty(documents) || !isEmpty(caseDocuments))) {\n const updatedReferrals = referrals.map((referral) => {\n if(!referral.attachableDocuments) {\n return {\n ...referral,\n attachableDocuments: [...documents, ...caseDocuments].map((doc) => ({ attached: false, document: doc })),\n };\n } else {\n return referral;\n }\n });\n\n dispatch(setData({\n referrals: updatedReferrals,\n }));\n\n setloadedDocuments(true);\n }\n\n const hasMoreThanOneServiceType = selectedPrograms?.some((program) => {\n return program?.services?.length > 1\n })\n setChooseOneServiceTypeModalIsOpen(hasMoreThanOneServiceType)\n }, [referrals]);\n\n const getSelected = () => getSelectedReferral(referrals, selectedIndex);\n\n const firstIndexWithErrors = getFirstIndexWithErrors(errors);\n\n const focusErrors = () => {\n let index = selectedIndex;\n if (!some(values(errors[index]), Boolean)) {\n index = firstIndexWithErrors; \n setSelectedIndex(index);\n }\n\n focusReferralError({\n errors,\n index,\n formRef: form,\n });\n }\n\n const onNextClick = () => {\n if (isEmptyErrors(errors)) {\n return navigate(`/create/${isForwardReferralPath ? 'review' : 'supporting-info'}`);\n }\n\n focusErrors();\n setNextClicked(true);\n }\n\n const navigateBack = () => {\n if (hasDraftReferral) {\n const draftCaseId = get(draftState, 'case.id', null);\n CALLBACKS.redirectToDraftReferral(draftCaseId);\n } else if (CALLBACKS.onNavigateBack) {\n CALLBACKS.onNavigateBack(crtb854ForwardingSuperset ? { referralId, referralDescription } : { referralDescription });\n } else {\n navigate(-1);\n }\n };\n\n const navigateToAddResources = () => CALLBACKS.onNavigateToAddResources();\n\n const createReferrals = useCreateReferrals();\n const handleSaveDraftReferral = async () => {\n setSaveDraftClicked(true);\n if (isSavingDraft) return;\n if (!isEmptyErrors(errors)) {\n focusErrors();\n return;\n }\n\n setIsSavingDraft(true);\n try {\n const response = await createReferrals({ draft: true });\n handleDraftSaveResponse(response, dispatch);\n } finally {\n setIsSavingDraft(false);\n }\n };\n\n const changeWidthReferralCard = () => {\n setExpandReferralsCard((prevExpandReferralsCard) => !prevExpandReferralsCard);\n };\n\n if (isLoading) return <Spinner center />;\n\n const referralSubtitle = getReferralSubtitle(referrals, getSelected());\n const unselectedReferralIndexes = getUnselectedReferralIndexes(referrals, selectedIndex);\n const allPrograms = referrals?.flatMap((r) => r.programs);\n const errorMessage = generateErrorMessage(errors);\n const currentReferral = getSelected();\n\n const xlOrLgInvisibleChevron = classNames({\n 'lg:invisible': true\n });\n\n const xlOrLgSpaceReferralDiv = classNames({\n 'lg:space-x-6': true\n });\n\n const onConfirmApplyChanges = () => {\n const {\n selectedServices,\n unselectedServices,\n } = splitServicesBySelection(servicesState);\n const updatedReferrals = updatedReferralsBySelectedServices(referrals, selectedServices);\n\n const initErrors = initializeReferralErrors(updatedReferrals, showClientNeeds);\n setFieldErrors(initErrors);\n\n dispatch(setData({\n referrals: updatedReferrals,\n }));\n\n unselectedServices.forEach((service) => {\n CALLBACKS.onDeselectProgram({\n id: service.programId,\n service: service.serviceId,\n });\n });\n\n closeChooseOneServiceTypeModal();\n };\n\n\n return (\n <CreateReferralContainer>\n <div className=\"px-12\">\n <StepHeader header={referralBuilderTitle}>\n {REFERRAL_BUILDER_DESCRIPTION}\n <br />\n <Button\n type=\"button\"\n onClick={onLearnMoreClick}\n onKeyDown={(event) => handleKeyDown(event, onLearnMoreClick)}\n aria-expanded={aboutGroupedReferralsModalIsOpen}\n label=\"Click here to learn more about referrals.\"\n className=\"border-0\"\n link\n />\n </StepHeader>\n\n <AboutGroupedReferralsModal ref={refModal} onClose={onCloseGroupedReferralsModal} />\n\n {isOpenChooseOneServiceTypeModal && (\n <ChooseOneServiceTypeModal \n closeDialog={closeChooseOneServiceTypeModal}\n programs={selectedPrograms}\n referrals={referrals}\n modalRef={ChooseOneServiceTypeModalRef}\n findServiceName={findServiceName}\n onConfirm={onConfirmApplyChanges}\n onServiceSelectionChange={handleServiceSelectionChange}\n servicesState={servicesState}\n />\n )}\n <>\n <NavButtons\n onBackClick={navigateBack}\n onForwardClick={onNextClick}\n onSaveDraftReferral={handleSaveDraftReferral}\n primaryLabel=\"Next\"\n hideForwardButtons={isEmpty(referrals)}\n hideSaveDraftLink={get(fieldsConfig, 'hideSaveDraftLink')}\n hasOffPlatformReferrals={hasOffPlatformReferrals(referrals)}\n hasDraftReferral={hasDraftReferral}\n isForwardReferralPath={isForwardReferralPath}\n disabled={isSavingDraft}\n isSavingDraft={isSavingDraft}\n />\n\n {!isEmpty(allPrograms) ? (\n <ReferralBuilderContent\n key={selectedIndex}\n selectedFormKey={selectedIndex}\n errorMessage={errorMessage}\n nextClicked={nextClicked}\n saveDraftClicked={saveDraftClicked}\n xlOrLgSpaceReferralDiv={xlOrLgSpaceReferralDiv}\n expandReferralsCard={expandReferralsCard}\n xlOrLgInvisibleChevron={xlOrLgInvisibleChevron}\n changeWidthReferralCard={changeWidthReferralCard}\n referrals={referrals}\n currentEmployee={currentEmployee}\n currentProvider={currentProvider}\n hasDraftReferral={hasDraftReferral}\n navigateToAddResources={navigateToAddResources}\n referralSubtitle={referralSubtitle}\n saveValuesOnChange={saveValuesOnChange}\n unselectedReferralIndexes={unselectedReferralIndexes}\n removeProgram={removeProgram}\n form={form}\n moveToNewReferral={moveToNewReferral}\n moveToExistingReferral={moveToExistingReferral}\n updateAttachments={updateAttachments}\n source={source}\n networksUnlistedProgram={networksUnlistedProgram}\n setReferralErrors={setReferralErrors}\n referralDescription={referralDescription}\n person={person}\n caseData={caseData}\n personId={personId}\n selectedIndex={selectedIndex}\n isEmrSource={isEmrSource}\n errors={errors}\n onReferralCardClick={onReferralCardClick}\n currentReferral={currentReferral}\n updatePersistedAttachments={updatePersistedAttachments}\n />\n ) : (\n <NoReferralsDisplay\n hasDraftReferral={hasDraftReferral}\n navigateToAddResources={navigateToAddResources}\n onClick={navigateBack}\n />\n )}\n\n <NavButtons\n onBackClick={navigateBack}\n onForwardClick={onNextClick}\n onSaveDraftReferral={handleSaveDraftReferral}\n primaryLabel=\"Next\"\n hideForwardButtons={isEmpty(referrals)}\n hideSaveDraftLink={get(fieldsConfig, 'hideSaveDraftLink')}\n hasDraftReferral={hasDraftReferral}\n hasOffPlatformReferrals={hasOffPlatformReferrals(referrals)}\n isForwardReferralPath={isForwardReferralPath}\n disabled={isSavingDraft}\n isSavingDraft={isSavingDraft}\n />\n </>\n </div>\n </CreateReferralContainer>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ReferralBuilder.js","names":["React","useEffect","useState","useRef","useCallback","useMemo","isEqual","isEmpty","get","some","values","intersectionBy","compact","useNavigate","useLocation","Button","setData","useAppCreateReferralContext","StepHeader","isUnlistedProgram","getReferralSubtitle","initializeReferralErrors","generateErrorMessage","hasOffPlatformReferrals","isEmptyErrors","updatedReferralsBySelectedServices","useBuildReferrals","useReferralMutations","CreateReferralContainer","NavButtons","NoReferralsDisplay","Spinner","useCreateReferrals","CALLBACKS","coreApi","fetchContactDocuments","fetchCaseDocuments","classNames","fetchNetworks","useFeatureFlag","useFind","mapClientNeeds","ChooseOneServiceTypeModal","REFERRAL_BUILDER_DESCRIPTION","handleKeyDown","AboutGroupedReferralsModal","buildReferralErrors","getFirstIndexWithErrors","focusReferralError","getSelectedReferral","getUnselectedReferralIndexes","splitServicesBySelection","getServiceNameById","buildProgramsToServicesState","ReferralBuilderContent","handleDraftSaveResponse","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ReferralBuilder","location","navigate","dispatch","state","referrals","selectedPrograms","currentEmployee","currentProvider","fieldsConfig","source","person","draftState","referralDescription","caseId","contextCaseId","referralId","referralType","form","ChooseOneServiceTypeModalRef","previousWindowWidthRef","window","innerWidth","openChooseOneServiceTypeModal","current","openDialog","closeChooseOneServiceTypeModal","closeDialog","hint542SupersetUnlistedPrograms","crtb854ForwardingSuperset","featureFlagClientNeeds","servicesState","setServicesState","aboutGroupedReferralsModalIsOpen","setAboutGroupedReferralsModalIsOpen","isOpenChooseOneServiceTypeModal","setChooseOneServiceTypeModalIsOpen","selectedIndex","setSelectedIndex","selectedReferral","fieldErrors","setFieldErrors","nextClicked","setNextClicked","saveDraftClicked","setSaveDraftClicked","isSavingDraft","setIsSavingDraft","expandReferralsCard","setExpandReferralsCard","documents","setDocuments","caseDocuments","setCaseDocuments","loadedDocuments","setloadedDocuments","isEmrSource","networksUnlistedProgram","setNetworksUnlistedProgram","caseData","setCaseData","hasDraftReferral","referralBuilderTitle","isForwardReferralPath","query","URLSearchParams","search","personId","id","data","clientNeedsData","most_recent","queryConfig","placeholderData","undefined","clientNeeds","showClientNeeds","errors","Object","keys","reduce","acc","index","fieldError","service","network","primary_worker","description","amount_requested","amount_exceeded","service_end","invalid_insurance_auth_dates","passthrough_dates","opened_date","icd10_code","client_need","setReferralErrors","referralIndex","newErrors","prevFieldErrors","currentErrors","updatedErrors","onReferralsBuilt","groupedReferrals","initErrors","forEach","_referral","isLoading","saveValuesOnChange","moveToExistingReferral","moveToNewReferral","removeProgram","updateAttachments","updatePersistedAttachments","handleServiceSelectionChange","programId","serviceId","prevState","map","selected","findServiceName","_ref","serviceToFind","hasUnlistedPrograms","program","then","networks","syncExpandedCardWhenChevronHidden","currentWindowWidth","previousWindowWidth","addEventListener","removeEventListener","onLearnMoreClick","onCloseGroupedReferralsModal","refModal","openModal","closeModal","onReferralCardClick","result","fetchCaseData","findRecord","error","console","updatedReferrals","referral","attachableDocuments","doc","attached","document","hasMoreThanOneServiceType","services","length","getSelected","firstIndexWithErrors","focusErrors","Boolean","formRef","onNextClick","navigateBack","draftCaseId","redirectToDraftReferral","onNavigateBack","navigateToAddResources","onNavigateToAddResources","createReferrals","handleSaveDraftReferral","response","draft","changeWidthReferralCard","prevExpandReferralsCard","center","referralSubtitle","unselectedReferralIndexes","allPrograms","flatMap","r","programs","errorMessage","currentReferral","xlOrLgInvisibleChevron","xlOrLgSpaceReferralDiv","onConfirmApplyChanges","selectedServices","unselectedServices","onDeselectProgram","children","className","header","type","onClick","onKeyDown","event","label","link","ref","onClose","modalRef","onConfirm","onServiceSelectionChange","onBackClick","onForwardClick","onSaveDraftReferral","primaryLabel","hideForwardButtons","hideSaveDraftLink","disabled","selectedFormKey"],"sources":["../../../src/pages/builder/ReferralBuilder.js"],"sourcesContent":["import React, { useEffect, useState, useRef, useCallback, useMemo } from 'react';\nimport { isEqual, isEmpty, get, some, values, intersectionBy, compact } from 'lodash';\nimport { useNavigate, useLocation } from 'react-router-dom';\nimport { Button } from '@unite-us/app-components';\nimport { setData, useAppCreateReferralContext } from '../../context/AppCreateReferralProvider';\nimport StepHeader from '../../components/StepHeader';\nimport { isUnlistedProgram, getReferralSubtitle, initializeReferralErrors, generateErrorMessage, hasOffPlatformReferrals, isEmptyErrors, updatedReferralsBySelectedServices } from './utils';\nimport useBuildReferrals from './hooks/useBuildReferrals';\nimport useReferralMutations from './hooks/useReferralMutations';\nimport CreateReferralContainer from '../../components/CreateReferralContainer';\nimport NavButtons from '../../components/NavButtons';\nimport NoReferralsDisplay from '../../components/NoReferralsDisplay';\nimport Spinner from '../../components/spinners/Spinner';\nimport useCreateReferrals from '../../hooks/useCreateReferrals';\nimport { CALLBACKS, coreApi } from '../../api/config';\nimport fetchContactDocuments from '../../actions/Document/Contact/Group/fetchContactDocuments';\nimport fetchCaseDocuments from '../../actions/Document/Contact/Group/fetchCaseDocuments';\nimport classNames from 'classnames';\nimport fetchNetworks from '../../actions/Referral/fetchNetworks';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\nimport { useFind } from '../../api/ApiHooks';\nimport { mapClientNeeds } from './utils/referralBuilderFormUtils';\nimport ChooseOneServiceTypeModal from './components/ChooseOneServiceTypeModal';\nimport {\n REFERRAL_BUILDER_DESCRIPTION,\n} from './constants';\nimport { handleKeyDown } from '../../common/utils/utils';\nimport AboutGroupedReferralsModal from './components/AboutGroupedReferralsModal';\nimport {\n buildReferralErrors,\n getFirstIndexWithErrors,\n focusReferralError,\n getSelectedReferral,\n getUnselectedReferralIndexes,\n splitServicesBySelection,\n getServiceNameById,\n buildProgramsToServicesState,\n} from './utils/referralBuilderUtils';\nimport ReferralBuilderContent from './components/ReferralBuilderContent';\nimport handleDraftSaveResponse from '../../utils/handleDraftSaveResponse';\n\nexport default function ReferralBuilder() {\n const location = useLocation();\n const navigate = useNavigate();\n const {\n dispatch,\n state: {\n referrals,\n selectedPrograms,\n currentEmployee,\n currentProvider,\n fieldsConfig,\n source,\n person,\n draftState,\n referralDescription,\n caseId: contextCaseId,\n referralId,\n referralType,\n },\n } = useAppCreateReferralContext();\n const form = useRef();\n const ChooseOneServiceTypeModalRef = useRef();\n const previousWindowWidthRef = useRef(window.innerWidth);\n\n const openChooseOneServiceTypeModal = useCallback(() => {\n ChooseOneServiceTypeModalRef.current.openDialog();\n }, []);\n\n const closeChooseOneServiceTypeModal = useCallback(() => {\n ChooseOneServiceTypeModalRef.current.closeDialog();\n }, []);\n\n const hint542SupersetUnlistedPrograms = useFeatureFlag('hint542SupersetUnlistedPrograms', false);\n const crtb854ForwardingSuperset = useFeatureFlag('crtb854ForwardingSuperset', false);\n const featureFlagClientNeeds = useFeatureFlag('crtb2130MultipleClientNeeds', false);\n\n const [servicesState, setServicesState] = useState([]);\n const [aboutGroupedReferralsModalIsOpen, setAboutGroupedReferralsModalIsOpen] = useState(false);\n const [isOpenChooseOneServiceTypeModal, setChooseOneServiceTypeModalIsOpen] = useState(false);\n const [selectedIndex, setSelectedIndex] = useState(location.state?.selectedReferral ?? 0);\n const [fieldErrors, setFieldErrors] = useState({})\n const [nextClicked, setNextClicked] = useState(false);\n const [saveDraftClicked, setSaveDraftClicked] = useState(false);\n const [isSavingDraft, setIsSavingDraft] = useState(false);\n const [expandReferralsCard, setExpandReferralsCard] = useState(false);\n const [documents, setDocuments] = useState([]);\n const [caseDocuments, setCaseDocuments] = useState([]);\n const [loadedDocuments, setloadedDocuments] = useState(false);\n const isEmrSource = source === 'emr';\n const [networksUnlistedProgram, setNetworksUnlistedProgram] = useState([]);\n const [caseData, setCaseData] = useState(null);\n const hasDraftReferral = draftState?.state === 'draft';\n const referralBuilderTitle = hasDraftReferral ? 'Edit Your Referrals' : 'Prepare Your Referrals';\n const isForwardReferralPath = !!referralId && !!referralType;\n const query = new URLSearchParams(location.search);\n const caseId = contextCaseId || query.get('caseId');\n const personId = person?.id || query.get('person');\n const { data: clientNeedsData } = useFind(\n `people/${personId}/person_condition`,\n {\n most_recent: true,\n },\n {\n queryConfig: {\n placeholderData: undefined,\n },\n },\n );\n const clientNeeds = useMemo(\n () => mapClientNeeds(clientNeedsData),\n [clientNeedsData],\n );\n const showClientNeeds = featureFlagClientNeeds && !isEmpty(clientNeeds);\n\n const errors = Object.keys(fieldErrors).reduce((acc, index) => {\n const fieldError = fieldErrors[index];\n acc[index] = {\n service: fieldError?.service,\n network: fieldError?.network,\n primary_worker: fieldError?.primary_worker,\n description: fieldError?.description,\n amount_requested: fieldError?.amount_requested || fieldError?.amount_exceeded,\n service_end: fieldError?.service_end || fieldError?.invalid_insurance_auth_dates,\n passthrough_dates: fieldError?.passthrough_dates,\n opened_date: fieldError?.opened_date,\n icd10_code: fieldError?.icd10_code,\n client_need: fieldError?.client_need,\n }\n return acc;\n }, {});\n const setReferralErrors = (referralIndex, newErrors) => {\n setFieldErrors((prevFieldErrors) => {\n const currentErrors = prevFieldErrors[referralIndex];\n const updatedErrors = { ...currentErrors, ...newErrors };\n \n if (isEqual(updatedErrors, currentErrors)) {\n return prevFieldErrors;\n }\n \n return {\n ...prevFieldErrors,\n [referralIndex]: updatedErrors,\n };\n });\n };\n\n const onReferralsBuilt = (groupedReferrals) => {\n if(!isEmpty(groupedReferrals)) {\n const initErrors = initializeReferralErrors(groupedReferrals, showClientNeeds);\n groupedReferrals.forEach((_referral, index) => {\n setReferralErrors(index, initErrors[index]);\n });\n }\n };\n\n const { isLoading } = useBuildReferrals(onReferralsBuilt);\n\n const {\n saveValuesOnChange,\n moveToExistingReferral,\n moveToNewReferral,\n removeProgram,\n updateAttachments,\n updatePersistedAttachments,\n } = useReferralMutations({\n referrals,\n selectedPrograms,\n selectedIndex,\n setSelectedIndex,\n errors,\n setFieldErrors,\n dispatch,\n });\n\n const handleServiceSelectionChange = (programId, serviceId) => {\n setServicesState(prevState =>\n prevState.map(service =>\n service.programId === programId && service.serviceId === serviceId\n ? { ...service, selected: !service.selected }\n : service\n )\n );\n };\n\n const findServiceName = ({ serviceToFind }) => (\n getServiceNameById(referrals, serviceToFind)\n );\n\n useEffect(() => {\n setServicesState(buildProgramsToServicesState(selectedPrograms, referrals));\n }, [selectedPrograms]);\n\n useEffect(() => {\n if (!isLoading && hint542SupersetUnlistedPrograms) {\n // If the selected programs contain unlisted programs, fetch the networks from the user provider\n const hasUnlistedPrograms = selectedPrograms?.some((program) => isUnlistedProgram(program));\n if (hasUnlistedPrograms) {\n fetchNetworks(currentProvider).then((networks) => {\n setNetworksUnlistedProgram(networks);\n });\n }\n }\n }, [isLoading]);\n\n useEffect(() => {\n if (isEmpty(referrals)) {\n return;\n }\n\n const initErrors = initializeReferralErrors(referrals, showClientNeeds);\n\n referrals.forEach((_referral, index) => {\n setReferralErrors(index, initErrors[index]);\n });\n }, [referrals, showClientNeeds]);\n\n useEffect(() => {\n const syncExpandedCardWhenChevronHidden = () => {\n const currentWindowWidth = window.innerWidth;\n const previousWindowWidth = previousWindowWidthRef.current;\n\n if (currentWindowWidth >= 1024) {\n setExpandReferralsCard(true);\n } else if (previousWindowWidth >= 1024) {\n setExpandReferralsCard(false);\n }\n\n previousWindowWidthRef.current = currentWindowWidth;\n };\n\n syncExpandedCardWhenChevronHidden();\n window.addEventListener('resize', syncExpandedCardWhenChevronHidden);\n return () => window.removeEventListener('resize', syncExpandedCardWhenChevronHidden);\n }, []);\n\n\n const onLearnMoreClick = () => {\n setAboutGroupedReferralsModalIsOpen(true);\n };\n\n const onCloseGroupedReferralsModal = () => {\n setAboutGroupedReferralsModalIsOpen(false);\n }\n\n const refModal = useRef(null);\n useEffect(() => {\n if (aboutGroupedReferralsModalIsOpen) {\n refModal.current.openModal();\n } else {\n refModal.current.closeModal();\n }\n }, [aboutGroupedReferralsModalIsOpen]);\n\n useEffect(() => {\n if (!isLoading && isOpenChooseOneServiceTypeModal) {\n openChooseOneServiceTypeModal();\n }\n }, [isLoading]);\n\n const onReferralCardClick = (index) => {\n setSelectedIndex(index);\n }\n\n useEffect(() => {\n fetchContactDocuments(person.id).then((result) => {\n setDocuments(result);\n });\n }, []);\n\n useEffect(() => {\n if (caseId && crtb854ForwardingSuperset) {\n fetchCaseDocuments(caseId).then((result) => {\n setCaseDocuments(result);\n });\n }\n }, []);\n\n useEffect(() => {\n const fetchCaseData = async () => {\n if (caseId) {\n try {\n const { data: { data: caseData } } = await coreApi.findRecord('case', caseId);\n setCaseData(caseData);\n } catch (error) {\n console.error('Error fetching case data:', error);\n }\n }\n };\n fetchCaseData();\n }, [caseId]);\n\n useEffect(() => {\n if (!isEmpty(referrals) && !loadedDocuments && (!isEmpty(documents) || !isEmpty(caseDocuments))) {\n const updatedReferrals = referrals.map((referral) => {\n if(!referral.attachableDocuments) {\n return {\n ...referral,\n attachableDocuments: [...documents, ...caseDocuments].map((doc) => ({ attached: false, document: doc })),\n };\n } else {\n return referral;\n }\n });\n\n dispatch(setData({\n referrals: updatedReferrals,\n }));\n\n setloadedDocuments(true);\n }\n\n const hasMoreThanOneServiceType = selectedPrograms?.some((program) => {\n return program?.services?.length > 1\n })\n setChooseOneServiceTypeModalIsOpen(hasMoreThanOneServiceType)\n }, [referrals]);\n\n const getSelected = () => getSelectedReferral(referrals, selectedIndex);\n\n const firstIndexWithErrors = getFirstIndexWithErrors(errors);\n\n const focusErrors = () => {\n let index = selectedIndex;\n if (!some(values(errors[index]), Boolean)) {\n index = firstIndexWithErrors; \n setSelectedIndex(index);\n }\n\n focusReferralError({\n errors,\n index,\n formRef: form,\n });\n }\n\n const onNextClick = () => {\n if (isEmptyErrors(errors)) {\n return navigate(`/create/${isForwardReferralPath ? 'review' : 'supporting-info'}`);\n }\n\n focusErrors();\n setNextClicked(true);\n }\n\n const navigateBack = () => {\n if (hasDraftReferral) {\n const draftCaseId = get(draftState, 'case.id', null);\n CALLBACKS.redirectToDraftReferral(draftCaseId);\n } else if (CALLBACKS.onNavigateBack) {\n CALLBACKS.onNavigateBack(crtb854ForwardingSuperset ? { referralId, referralDescription } : { referralDescription });\n } else {\n navigate(-1);\n }\n };\n\n const navigateToAddResources = () => CALLBACKS.onNavigateToAddResources();\n\n const createReferrals = useCreateReferrals();\n const handleSaveDraftReferral = async () => {\n setSaveDraftClicked(true);\n if (isSavingDraft) return;\n if (!isEmptyErrors(errors)) {\n focusErrors();\n return;\n }\n\n setIsSavingDraft(true);\n try {\n const response = await createReferrals({ draft: true });\n handleDraftSaveResponse(response, dispatch);\n } finally {\n setIsSavingDraft(false);\n }\n };\n\n const changeWidthReferralCard = () => {\n setExpandReferralsCard((prevExpandReferralsCard) => !prevExpandReferralsCard);\n };\n\n if (isLoading) return <Spinner center />;\n\n const referralSubtitle = getReferralSubtitle(referrals, getSelected());\n const unselectedReferralIndexes = getUnselectedReferralIndexes(referrals, selectedIndex);\n const allPrograms = referrals?.flatMap((r) => r.programs);\n const errorMessage = generateErrorMessage(errors);\n const currentReferral = getSelected();\n\n const xlOrLgInvisibleChevron = classNames({\n 'lg:invisible': true\n });\n\n const xlOrLgSpaceReferralDiv = classNames({\n 'lg:space-x-6': true\n });\n\n const onConfirmApplyChanges = () => {\n const {\n selectedServices,\n unselectedServices,\n } = splitServicesBySelection(servicesState);\n const updatedReferrals = updatedReferralsBySelectedServices(referrals, selectedServices);\n\n const initErrors = initializeReferralErrors(updatedReferrals, showClientNeeds);\n setFieldErrors(initErrors);\n\n dispatch(setData({\n referrals: updatedReferrals,\n }));\n\n unselectedServices.forEach((service) => {\n CALLBACKS.onDeselectProgram({\n id: service.programId,\n service: service.serviceId,\n });\n });\n\n closeChooseOneServiceTypeModal();\n };\n\n\n return (\n <CreateReferralContainer>\n <div className=\"px-12\">\n <StepHeader header={referralBuilderTitle}>\n {REFERRAL_BUILDER_DESCRIPTION}\n <br />\n <Button\n type=\"button\"\n onClick={onLearnMoreClick}\n onKeyDown={(event) => handleKeyDown(event, onLearnMoreClick)}\n aria-expanded={aboutGroupedReferralsModalIsOpen}\n label=\"Click here to learn more about referrals.\"\n className=\"border-0\"\n link\n />\n </StepHeader>\n\n <AboutGroupedReferralsModal ref={refModal} onClose={onCloseGroupedReferralsModal} />\n\n {isOpenChooseOneServiceTypeModal && (\n <ChooseOneServiceTypeModal \n closeDialog={closeChooseOneServiceTypeModal}\n programs={selectedPrograms}\n referrals={referrals}\n modalRef={ChooseOneServiceTypeModalRef}\n findServiceName={findServiceName}\n onConfirm={onConfirmApplyChanges}\n onServiceSelectionChange={handleServiceSelectionChange}\n servicesState={servicesState}\n />\n )}\n <>\n <NavButtons\n onBackClick={navigateBack}\n onForwardClick={onNextClick}\n onSaveDraftReferral={handleSaveDraftReferral}\n primaryLabel=\"Next\"\n hideForwardButtons={isEmpty(referrals)}\n hideSaveDraftLink={get(fieldsConfig, 'hideSaveDraftLink')}\n hasOffPlatformReferrals={hasOffPlatformReferrals(referrals)}\n hasDraftReferral={hasDraftReferral}\n isForwardReferralPath={isForwardReferralPath}\n disabled={isSavingDraft}\n isSavingDraft={isSavingDraft}\n />\n\n {!isEmpty(allPrograms) ? (\n <ReferralBuilderContent\n key={selectedIndex}\n selectedFormKey={selectedIndex}\n errorMessage={errorMessage}\n nextClicked={nextClicked}\n saveDraftClicked={saveDraftClicked}\n xlOrLgSpaceReferralDiv={xlOrLgSpaceReferralDiv}\n expandReferralsCard={expandReferralsCard}\n xlOrLgInvisibleChevron={xlOrLgInvisibleChevron}\n changeWidthReferralCard={changeWidthReferralCard}\n referrals={referrals}\n currentEmployee={currentEmployee}\n currentProvider={currentProvider}\n hasDraftReferral={hasDraftReferral}\n navigateToAddResources={navigateToAddResources}\n referralSubtitle={referralSubtitle}\n saveValuesOnChange={saveValuesOnChange}\n unselectedReferralIndexes={unselectedReferralIndexes}\n removeProgram={removeProgram}\n form={form}\n moveToNewReferral={moveToNewReferral}\n moveToExistingReferral={moveToExistingReferral}\n updateAttachments={updateAttachments}\n source={source}\n networksUnlistedProgram={networksUnlistedProgram}\n setReferralErrors={setReferralErrors}\n referralDescription={referralDescription}\n person={person}\n caseData={caseData}\n personId={personId}\n selectedIndex={selectedIndex}\n isEmrSource={isEmrSource}\n errors={errors}\n onReferralCardClick={onReferralCardClick}\n currentReferral={currentReferral}\n updatePersistedAttachments={updatePersistedAttachments}\n />\n ) : (\n <NoReferralsDisplay\n hasDraftReferral={hasDraftReferral}\n navigateToAddResources={navigateToAddResources}\n onClick={navigateBack}\n />\n )}\n\n <NavButtons\n onBackClick={navigateBack}\n onForwardClick={onNextClick}\n onSaveDraftReferral={handleSaveDraftReferral}\n primaryLabel=\"Next\"\n hideForwardButtons={isEmpty(referrals)}\n hideSaveDraftLink={get(fieldsConfig, 'hideSaveDraftLink')}\n hasDraftReferral={hasDraftReferral}\n hasOffPlatformReferrals={hasOffPlatformReferrals(referrals)}\n isForwardReferralPath={isForwardReferralPath}\n disabled={isSavingDraft}\n isSavingDraft={isSavingDraft}\n />\n </>\n </div>\n </CreateReferralContainer>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,3 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
1
  import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
5
2
  import { PropTypes } from 'prop-types';
6
3
  import { Form, FormSpy } from 'react-final-form';
@@ -39,7 +36,6 @@ const shouldPreventProgramChanges = _ref2 => {
39
36
  };
40
37
  const canChangePrograms = params => !shouldPreventProgramChanges(params);
41
38
  export function ReferralBuilderForm(_ref3) {
42
- var _referral$case;
43
39
  let {
44
40
  currentEmployee,
45
41
  currentProvider,
@@ -97,7 +93,7 @@ export function ReferralBuilderForm(_ref3) {
97
93
  const handleRemoveUploadedFile = useCallback(fileIndex => {
98
94
  setUploadedFiles(currentFiles => {
99
95
  const fileToRemove = currentFiles[fileIndex];
100
- if (fileToRemove !== null && fileToRemove !== void 0 && fileToRemove.preview) {
96
+ if (fileToRemove?.preview) {
101
97
  URL.revokeObjectURL(fileToRemove.preview);
102
98
  }
103
99
  return currentFiles.filter((_, currentIndex) => currentIndex !== fileIndex);
@@ -144,10 +140,10 @@ export function ReferralBuilderForm(_ref3) {
144
140
  }));
145
141
  }, [currentEmployee, debouncedQuery, primaryWorker, referral.sendingProvider.id]);
146
142
  const feeScheduleProgram = get(programs, '[0].fee_schedule_program');
147
- const referralCaseId = (_referral$case = referral.case) === null || _referral$case === void 0 ? void 0 : _referral$case.id;
143
+ const referralCaseId = referral.case?.id;
148
144
  const referralState = referral.state;
149
- const feeSchedulePaymentType = feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.payment_type;
150
- const authorizationRequired = feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.authorization_required;
145
+ const feeSchedulePaymentType = feeScheduleProgram?.payment_type;
146
+ const authorizationRequired = feeScheduleProgram?.authorization_required;
151
147
  const initializePaymentFormValues = useCallback(async () => {
152
148
  const draftPaymentAuthorizationValues = await fetchDraftPaymentAuthorizationValues({
153
149
  caseId: referralCaseId,
@@ -176,7 +172,7 @@ export function ReferralBuilderForm(_ref3) {
176
172
  }, [programs]);
177
173
  const {
178
174
  data: clientNeedsData
179
- } = useFind("people/".concat(personId, "/person_condition"), {
175
+ } = useFind(`people/${personId}/person_condition`, {
180
176
  most_recent: true
181
177
  }, {
182
178
  queryConfig: {
@@ -187,7 +183,8 @@ export function ReferralBuilderForm(_ref3) {
187
183
  const selectedClientNeeds = useMemo(() => getSelectedClientNeeds(clientNeeds, caseData), [caseData, clientNeeds]);
188
184
  useEffect(() => {
189
185
  if (selectedClientNeeds.length > 0 && !referral.client_need) {
190
- setInitialValues(prev => _objectSpread(_objectSpread({}, prev), {}, {
186
+ setInitialValues(prev => ({
187
+ ...prev,
191
188
  client_need: selectedClientNeeds.map(need => need.value)
192
189
  }));
193
190
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ReferralBuilderForm.js","names":["React","useCallback","useEffect","useMemo","useRef","useState","PropTypes","Form","FormSpy","get","isEmpty","isEqual","moment","isUnlistedReferral","referralIsOON","shouldShowNetworkSelect","filterNetworks","fetchPrimaryWorkers","useDebounce","useFeatureFlag","useFind","ReferralBuilderFormContent","buildInitialValues","buildProgramMenus","buildReferralTitle","createOpenDateValidator","getSelectedClientNeeds","mapClientNeeds","mergePrimaryWorkerOptions","toggleProgramMenus","fetchDraftPaymentAuthorizationValues","mergeDraftPaymentAuthorizationInitialValues","buildFieldErrors","validateReferralBuilderForm","ensureAttachmentArray","resolveAttachmentFields","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ReferralErrorsSync","_ref","errors","index","setReferralErrors","shouldPreventProgramChanges","_ref2","hasDraftReferral","caseData","referral","Boolean","canChangePrograms","params","ReferralBuilderForm","_ref3","_referral$case","currentEmployee","currentProvider","navigateToAddResources","referrals","onChange","unselected","removeProgram","onSetForm","moveToNewReferral","moveToExistingReferral","updateAttachments","source","networksUnlistedProgram","referralDescription","referralSubtitle","personId","updatePersistedAttachments","programs","primaryWorker","attachableDocuments","persistedAttachments","pendingAttachments","removablePersistedAttachments","moveReferralMenus","setMoveReferralMenus","visiblePersistedFiles","setVisiblePersistedFiles","queuedPersistedFiles","setQueuedPersistedFiles","uploadedFiles","setUploadedFiles","syncingAttachmentsRef","handleRemovePersistedFile","fileIndex","currentFiles","fileToRemove","nextVisibleFiles","filter","_","currentIndex","currentQueuedFiles","nextQueuedFiles","handleRemoveUploadedFile","preview","URL","revokeObjectURL","primaryWorkers","setPrimaryWorkers","initialValues","setInitialValues","query","setQuery","debouncedQuery","rejectedFiles","setRejectedFiles","filesTooBig","filesWrongType","filesTooBigAndWrongType","isOON","referralTitle","crtb854ForwardingSuperset","featureFlagCMultiplelientNeeds","newLanguageDashboard","today","startOf","unix","networks","showNetworkSelect","canEditPrograms","toggleProgramMenu","id","menus","getPrimaryWorkers","primary_workers","providerId","sendingProvider","currentPrimaryWorkers","fetchedPrimaryWorkers","feeScheduleProgram","referralCaseId","case","referralState","state","feeSchedulePaymentType","payment_type","authorizationRequired","authorization_required","initializePaymentFormValues","draftPaymentAuthorizationValues","caseId","paymentType","previousValues","paymentAuthFormValues","serviceAuthorizationData","data","clientNeedsData","concat","most_recent","queryConfig","placeholderData","undefined","clientNeeds","selectedClientNeeds","length","client_need","prev","_objectSpread","map","need","value","currentEmployeeId","nextFiles","current","nextPendingAttachments","showClientNeeds","validateOpenDate","onSubmit","validate","values","mutators","setFieldTouched","args","name","touched","field","fields","render","_ref4","form","children","subscription","onProgramClick","formValues","onRemovePendingFile","onRemovePersistedFile","propTypes","object","isRequired","shape","service","string","array","number","func","defaultProps"],"sources":["../../../src/pages/builder/ReferralBuilderForm.js"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Form, FormSpy } from 'react-final-form';\nimport { get, isEmpty, isEqual } from 'lodash';\nimport moment from 'moment';\nimport {\n isUnlistedReferral,\n referralIsOON,\n shouldShowNetworkSelect,\n filterNetworks,\n} from './utils';\nimport fetchPrimaryWorkers from '../../actions/Referral/fetchPrimaryWorkers';\nimport { useDebounce } from '../../utils/useDebounce';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\nimport { useFind } from '../../api/ApiHooks';\nimport './ReferralBuilderForm.scss';\nimport ReferralBuilderFormContent from './ReferralBuilderFormContent';\nimport {\n buildInitialValues,\n buildProgramMenus,\n buildReferralTitle,\n createOpenDateValidator,\n getSelectedClientNeeds,\n mapClientNeeds,\n mergePrimaryWorkerOptions,\n toggleProgramMenus,\n} from './utils/referralBuilderFormUtils';\nimport {\n fetchDraftPaymentAuthorizationValues,\n mergeDraftPaymentAuthorizationInitialValues,\n} from './utils/referralBuilderFormDraftAuth';\nimport { buildFieldErrors, validateReferralBuilderForm } from './utils/referralBuilderFormValidation';\nimport {\n ensureAttachmentArray,\n resolveAttachmentFields,\n} from '../../utils/attachmentUtils';\n\nconst ReferralErrorsSync = ({ errors, index, setReferralErrors }) => {\n useEffect(() => {\n setReferralErrors(index, buildFieldErrors(errors));\n }, [errors, index, setReferralErrors]);\n\n return null;\n};\n\nconst shouldPreventProgramChanges = ({ hasDraftReferral, caseData, referral }) => (\n hasDraftReferral && Boolean(\n get(caseData, 'service_authorization.id') ||\n get(referral, 'case.service_authorization.id')\n )\n);\nconst canChangePrograms = (params) => !shouldPreventProgramChanges(params);\n\nexport function ReferralBuilderForm({\n currentEmployee,\n currentProvider,\n hasDraftReferral,\n navigateToAddResources,\n referral,\n referrals,\n index,\n onChange,\n unselected,\n removeProgram,\n onSetForm,\n moveToNewReferral,\n moveToExistingReferral,\n updateAttachments,\n source,\n networksUnlistedProgram,\n setReferralErrors,\n referralDescription,\n referralSubtitle,\n caseData,\n personId,\n updatePersistedAttachments,\n}) {\n const { programs, primaryWorker, attachableDocuments } = referral;\n const {\n persistedAttachments,\n pendingAttachments,\n removablePersistedAttachments,\n } = resolveAttachmentFields(referral);\n const [moveReferralMenus, setMoveReferralMenus] = useState([]);\n const [visiblePersistedFiles, setVisiblePersistedFiles] = useState(() => ensureAttachmentArray(persistedAttachments));\n const [queuedPersistedFiles, setQueuedPersistedFiles] = useState(() => ensureAttachmentArray(removablePersistedAttachments));\n const [uploadedFiles, setUploadedFiles] = useState(() => ensureAttachmentArray(pendingAttachments));\n const syncingAttachmentsRef = useRef(false);\n const handleRemovePersistedFile = useCallback((fileIndex) => {\n setVisiblePersistedFiles((currentFiles) => {\n const fileToRemove = currentFiles[fileIndex];\n if (!fileToRemove) {\n return currentFiles;\n }\n\n const nextVisibleFiles = currentFiles.filter((_, currentIndex) => currentIndex !== fileIndex);\n setQueuedPersistedFiles((currentQueuedFiles) => {\n const nextQueuedFiles = [...currentQueuedFiles, fileToRemove];\n updatePersistedAttachments(nextVisibleFiles, nextQueuedFiles);\n return nextQueuedFiles;\n });\n return nextVisibleFiles;\n });\n }, [updatePersistedAttachments]);\n\n const handleRemoveUploadedFile = useCallback((fileIndex) => {\n setUploadedFiles((currentFiles) => {\n const fileToRemove = currentFiles[fileIndex];\n if (fileToRemove?.preview) {\n URL.revokeObjectURL(fileToRemove.preview);\n }\n return currentFiles.filter((_, currentIndex) => currentIndex !== fileIndex);\n });\n }, []);\n\n const [primaryWorkers, setPrimaryWorkers] = useState(primaryWorker ? [primaryWorker] : []);\n const [initialValues, setInitialValues] = useState(referral);\n const [query, setQuery] = useState('');\n const debouncedQuery = useDebounce(query, 500);\n\n const [rejectedFiles, setRejectedFiles] = useState({\n filesTooBig: [],\n filesWrongType: [],\n filesTooBigAndWrongType: [],\n });\n const isOON = referralIsOON(referral);\n const referralTitle = buildReferralTitle(referral, index);\n const crtb854ForwardingSuperset = useFeatureFlag('crtb854ForwardingSuperset', false);\n const featureFlagCMultiplelientNeeds = useFeatureFlag('crtb2130MultipleClientNeeds', false);\n const newLanguageDashboard = useFeatureFlag('crtb2182ClarifyReferralLanguage', false);\n const today = moment().startOf('day').unix();\n\n // If all the programs in the referral are unlisted, show the user provider networks\n const networks = isUnlistedReferral(referral) ? networksUnlistedProgram : filterNetworks(referral);\n const showNetworkSelect = shouldShowNetworkSelect(networks, programs);\n const canEditPrograms = canChangePrograms({ hasDraftReferral, caseData, referral });\n const toggleProgramMenu = useCallback((id) => setMoveReferralMenus((menus) => toggleProgramMenus(menus, id)), []);\n\n const getPrimaryWorkers = useCallback(async () => {\n const { primary_workers } = await fetchPrimaryWorkers({\n providerId: referral.sendingProvider.id,\n currentEmployee,\n query: debouncedQuery,\n });\n\n setPrimaryWorkers((currentPrimaryWorkers) => (\n mergePrimaryWorkerOptions({\n currentPrimaryWorkers,\n fetchedPrimaryWorkers: primary_workers,\n primaryWorker,\n query: debouncedQuery,\n })\n ));\n }, [currentEmployee, debouncedQuery, primaryWorker, referral.sendingProvider.id]);\n\n const feeScheduleProgram = get(programs, '[0].fee_schedule_program');\n const referralCaseId = referral.case?.id;\n const referralState = referral.state;\n const feeSchedulePaymentType = feeScheduleProgram?.payment_type;\n const authorizationRequired = feeScheduleProgram?.authorization_required;\n\n const initializePaymentFormValues = useCallback(async () => {\n const draftPaymentAuthorizationValues = await fetchDraftPaymentAuthorizationValues({\n caseId: referralCaseId,\n referralState,\n paymentType: feeSchedulePaymentType,\n authorizationRequired,\n });\n\n if (!draftPaymentAuthorizationValues) {\n return;\n }\n\n setInitialValues((previousValues) => (\n mergeDraftPaymentAuthorizationInitialValues({\n previousValues,\n paymentAuthFormValues: draftPaymentAuthorizationValues.paymentAuthFormValues,\n serviceAuthorizationData: draftPaymentAuthorizationValues.serviceAuthorizationData,\n crtb854ForwardingSuperset,\n referralDescription,\n })\n ));\n }, [\n authorizationRequired,\n crtb854ForwardingSuperset,\n feeSchedulePaymentType,\n referralCaseId,\n referralDescription,\n referralState,\n ]);\n\n useEffect(() => {\n if (isOON) {\n getPrimaryWorkers();\n }\n }, [getPrimaryWorkers, isOON]);\n\n useEffect(() => {\n setMoveReferralMenus(buildProgramMenus(programs));\n }, [programs]);\n\n const { data: clientNeedsData } = useFind(\n `people/${personId}/person_condition`,\n {\n most_recent: true,\n },\n {\n queryConfig: {\n placeholderData: undefined,\n },\n },\n );\n\n const clientNeeds = useMemo(\n () => mapClientNeeds(clientNeedsData),\n [clientNeedsData],\n );\n\n const selectedClientNeeds = useMemo(\n () => getSelectedClientNeeds(clientNeeds, caseData),\n [caseData, clientNeeds],\n );\n\n useEffect(() => {\n if (selectedClientNeeds.length > 0 && !referral.client_need) {\n setInitialValues((prev) => ({\n ...prev,\n client_need: selectedClientNeeds.map((need) => need.value)\n }));\n }\n }, [referral.client_need, selectedClientNeeds]);\n\n useEffect(() => {\n setInitialValues(buildInitialValues({\n referral,\n isOON,\n primaryWorkers,\n currentEmployeeId: currentEmployee.id,\n crtb854ForwardingSuperset,\n referralDescription,\n }));\n }, [\n crtb854ForwardingSuperset,\n currentEmployee.id,\n isOON,\n primaryWorkers,\n referral,\n referralDescription,\n ]);\n\n useEffect(() => {\n setVisiblePersistedFiles((currentFiles) => (\n isEqual(ensureAttachmentArray(persistedAttachments), currentFiles)\n ? currentFiles\n : ensureAttachmentArray(persistedAttachments)\n ));\n }, [persistedAttachments]);\n\n useEffect(() => {\n const nextFiles = ensureAttachmentArray(removablePersistedAttachments);\n\n setQueuedPersistedFiles((currentFiles) => (\n isEqual(nextFiles, currentFiles) ? currentFiles : nextFiles\n ));\n }, [removablePersistedAttachments]);\n useEffect(() => {\n syncingAttachmentsRef.current = true;\n setUploadedFiles((currentFiles) => (\n isEqual(ensureAttachmentArray(pendingAttachments), currentFiles)\n ? currentFiles\n : ensureAttachmentArray(pendingAttachments)\n ));\n }, [pendingAttachments]);\n\n useEffect(() => {\n if (syncingAttachmentsRef.current) {\n syncingAttachmentsRef.current = false;\n return;\n }\n\n const nextPendingAttachments = ensureAttachmentArray(pendingAttachments);\n\n if (!isEqual(nextPendingAttachments, uploadedFiles)) {\n updateAttachments(uploadedFiles);\n }\n }, [updateAttachments, uploadedFiles, pendingAttachments]);\n\n useEffect(() => {\n initializePaymentFormValues();\n }, [initializePaymentFormValues]);\n const showClientNeeds = featureFlagCMultiplelientNeeds && !isEmpty(clientNeeds);\n const validateOpenDate = useMemo(\n () => createOpenDateValidator(today),\n [today],\n );\n\n return (\n <Form\n initialValues={initialValues}\n onSubmit={() => { }}\n validate={(values) => validateReferralBuilderForm({\n values,\n isOON,\n showClientNeeds,\n showNetworkSelect,\n feeScheduleProgram,\n validateOpenDate,\n setReferralErrors,\n index\n })}\n mutators={{\n setFieldTouched: (args, state) => {\n const [name, touched] = args;\n const field = state.fields[name];\n if (field) {\n field.touched = !!touched;\n }\n }\n }}\n render={({ form, values, errors }) => {\n onSetForm && onSetForm(form);\n return (\n <>\n <ReferralErrorsSync\n errors={errors}\n index={index}\n setReferralErrors={setReferralErrors}\n />\n <FormSpy subscription={{ values: true }} onChange={onChange} />\n <ReferralBuilderFormContent\n referralTitle={referralTitle}\n referralSubtitle={referralSubtitle}\n newLanguageDashboard={newLanguageDashboard}\n isOON={isOON}\n programs={programs}\n moveReferralMenus={moveReferralMenus}\n onProgramClick={toggleProgramMenu}\n unselected={unselected}\n referral={referral}\n referrals={referrals}\n currentProvider={currentProvider}\n removeProgram={removeProgram}\n moveToNewReferral={moveToNewReferral}\n moveToExistingReferral={moveToExistingReferral}\n canChangePrograms={canEditPrograms}\n hasDraftReferral={hasDraftReferral}\n navigateToAddResources={navigateToAddResources}\n showNetworkSelect={showNetworkSelect}\n index={index}\n networks={networks}\n feeScheduleProgram={feeScheduleProgram}\n formValues={values}\n setReferralErrors={setReferralErrors}\n source={source}\n validateOpenDate={validateOpenDate}\n today={today}\n setQuery={setQuery}\n primaryWorkers={primaryWorkers}\n showClientNeeds={showClientNeeds}\n clientNeeds={clientNeeds}\n attachableDocuments={attachableDocuments}\n persistedAttachments={visiblePersistedFiles}\n pendingAttachments={uploadedFiles}\n rejectedFiles={rejectedFiles}\n onRemovePendingFile={handleRemoveUploadedFile}\n onRemovePersistedFile={handleRemovePersistedFile}\n setRejectedFiles={setRejectedFiles}\n setUploadedFiles={setUploadedFiles}\n />\n </>\n )}}\n />\n )\n}\n\nReferralBuilderForm.propTypes = {\n currentEmployee: PropTypes.object.isRequired,\n currentProvider: PropTypes.object.isRequired,\n referral: PropTypes.shape({\n service: PropTypes.shape({\n name: PropTypes.string.isRequired,\n }).isRequired,\n programs: PropTypes.array.isRequired,\n }).isRequired,\n index: PropTypes.number.isRequired,\n onChange: PropTypes.func.isRequired,\n unselected: PropTypes.array,\n removeProgram: PropTypes.func.isRequired,\n moveToNewReferral: PropTypes.func.isRequired,\n moveToExistingReferral: PropTypes.func.isRequired,\n onSetForm: PropTypes.func.isRequired,\n setReferralErrors: PropTypes.func.isRequired,\n referralSubtitle: PropTypes.string,\n updatePersistedAttachments: PropTypes.func.isRequired,\n}\n\nReferralBuilderForm.defaultProps = {\n unselected: [],\n referralSubtitle: '',\n}\n\nexport default ReferralBuilderForm;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ReferralBuilderForm.js","names":["React","useCallback","useEffect","useMemo","useRef","useState","PropTypes","Form","FormSpy","get","isEmpty","isEqual","moment","isUnlistedReferral","referralIsOON","shouldShowNetworkSelect","filterNetworks","fetchPrimaryWorkers","useDebounce","useFeatureFlag","useFind","ReferralBuilderFormContent","buildInitialValues","buildProgramMenus","buildReferralTitle","createOpenDateValidator","getSelectedClientNeeds","mapClientNeeds","mergePrimaryWorkerOptions","toggleProgramMenus","fetchDraftPaymentAuthorizationValues","mergeDraftPaymentAuthorizationInitialValues","buildFieldErrors","validateReferralBuilderForm","ensureAttachmentArray","resolveAttachmentFields","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ReferralErrorsSync","_ref","errors","index","setReferralErrors","shouldPreventProgramChanges","_ref2","hasDraftReferral","caseData","referral","Boolean","canChangePrograms","params","ReferralBuilderForm","_ref3","currentEmployee","currentProvider","navigateToAddResources","referrals","onChange","unselected","removeProgram","onSetForm","moveToNewReferral","moveToExistingReferral","updateAttachments","source","networksUnlistedProgram","referralDescription","referralSubtitle","personId","updatePersistedAttachments","programs","primaryWorker","attachableDocuments","persistedAttachments","pendingAttachments","removablePersistedAttachments","moveReferralMenus","setMoveReferralMenus","visiblePersistedFiles","setVisiblePersistedFiles","queuedPersistedFiles","setQueuedPersistedFiles","uploadedFiles","setUploadedFiles","syncingAttachmentsRef","handleRemovePersistedFile","fileIndex","currentFiles","fileToRemove","nextVisibleFiles","filter","_","currentIndex","currentQueuedFiles","nextQueuedFiles","handleRemoveUploadedFile","preview","URL","revokeObjectURL","primaryWorkers","setPrimaryWorkers","initialValues","setInitialValues","query","setQuery","debouncedQuery","rejectedFiles","setRejectedFiles","filesTooBig","filesWrongType","filesTooBigAndWrongType","isOON","referralTitle","crtb854ForwardingSuperset","featureFlagCMultiplelientNeeds","newLanguageDashboard","today","startOf","unix","networks","showNetworkSelect","canEditPrograms","toggleProgramMenu","id","menus","getPrimaryWorkers","primary_workers","providerId","sendingProvider","currentPrimaryWorkers","fetchedPrimaryWorkers","feeScheduleProgram","referralCaseId","case","referralState","state","feeSchedulePaymentType","payment_type","authorizationRequired","authorization_required","initializePaymentFormValues","draftPaymentAuthorizationValues","caseId","paymentType","previousValues","paymentAuthFormValues","serviceAuthorizationData","data","clientNeedsData","most_recent","queryConfig","placeholderData","undefined","clientNeeds","selectedClientNeeds","length","client_need","prev","map","need","value","currentEmployeeId","nextFiles","current","nextPendingAttachments","showClientNeeds","validateOpenDate","onSubmit","validate","values","mutators","setFieldTouched","args","name","touched","field","fields","render","_ref4","form","children","subscription","onProgramClick","formValues","onRemovePendingFile","onRemovePersistedFile","propTypes","object","isRequired","shape","service","string","array","number","func","defaultProps"],"sources":["../../../src/pages/builder/ReferralBuilderForm.js"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Form, FormSpy } from 'react-final-form';\nimport { get, isEmpty, isEqual } from 'lodash';\nimport moment from 'moment';\nimport {\n isUnlistedReferral,\n referralIsOON,\n shouldShowNetworkSelect,\n filterNetworks,\n} from './utils';\nimport fetchPrimaryWorkers from '../../actions/Referral/fetchPrimaryWorkers';\nimport { useDebounce } from '../../utils/useDebounce';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\nimport { useFind } from '../../api/ApiHooks';\nimport './ReferralBuilderForm.scss';\nimport ReferralBuilderFormContent from './ReferralBuilderFormContent';\nimport {\n buildInitialValues,\n buildProgramMenus,\n buildReferralTitle,\n createOpenDateValidator,\n getSelectedClientNeeds,\n mapClientNeeds,\n mergePrimaryWorkerOptions,\n toggleProgramMenus,\n} from './utils/referralBuilderFormUtils';\nimport {\n fetchDraftPaymentAuthorizationValues,\n mergeDraftPaymentAuthorizationInitialValues,\n} from './utils/referralBuilderFormDraftAuth';\nimport { buildFieldErrors, validateReferralBuilderForm } from './utils/referralBuilderFormValidation';\nimport {\n ensureAttachmentArray,\n resolveAttachmentFields,\n} from '../../utils/attachmentUtils';\n\nconst ReferralErrorsSync = ({ errors, index, setReferralErrors }) => {\n useEffect(() => {\n setReferralErrors(index, buildFieldErrors(errors));\n }, [errors, index, setReferralErrors]);\n\n return null;\n};\n\nconst shouldPreventProgramChanges = ({ hasDraftReferral, caseData, referral }) => (\n hasDraftReferral && Boolean(\n get(caseData, 'service_authorization.id') ||\n get(referral, 'case.service_authorization.id')\n )\n);\nconst canChangePrograms = (params) => !shouldPreventProgramChanges(params);\n\nexport function ReferralBuilderForm({\n currentEmployee,\n currentProvider,\n hasDraftReferral,\n navigateToAddResources,\n referral,\n referrals,\n index,\n onChange,\n unselected,\n removeProgram,\n onSetForm,\n moveToNewReferral,\n moveToExistingReferral,\n updateAttachments,\n source,\n networksUnlistedProgram,\n setReferralErrors,\n referralDescription,\n referralSubtitle,\n caseData,\n personId,\n updatePersistedAttachments,\n}) {\n const { programs, primaryWorker, attachableDocuments } = referral;\n const {\n persistedAttachments,\n pendingAttachments,\n removablePersistedAttachments,\n } = resolveAttachmentFields(referral);\n const [moveReferralMenus, setMoveReferralMenus] = useState([]);\n const [visiblePersistedFiles, setVisiblePersistedFiles] = useState(() => ensureAttachmentArray(persistedAttachments));\n const [queuedPersistedFiles, setQueuedPersistedFiles] = useState(() => ensureAttachmentArray(removablePersistedAttachments));\n const [uploadedFiles, setUploadedFiles] = useState(() => ensureAttachmentArray(pendingAttachments));\n const syncingAttachmentsRef = useRef(false);\n const handleRemovePersistedFile = useCallback((fileIndex) => {\n setVisiblePersistedFiles((currentFiles) => {\n const fileToRemove = currentFiles[fileIndex];\n if (!fileToRemove) {\n return currentFiles;\n }\n\n const nextVisibleFiles = currentFiles.filter((_, currentIndex) => currentIndex !== fileIndex);\n setQueuedPersistedFiles((currentQueuedFiles) => {\n const nextQueuedFiles = [...currentQueuedFiles, fileToRemove];\n updatePersistedAttachments(nextVisibleFiles, nextQueuedFiles);\n return nextQueuedFiles;\n });\n return nextVisibleFiles;\n });\n }, [updatePersistedAttachments]);\n\n const handleRemoveUploadedFile = useCallback((fileIndex) => {\n setUploadedFiles((currentFiles) => {\n const fileToRemove = currentFiles[fileIndex];\n if (fileToRemove?.preview) {\n URL.revokeObjectURL(fileToRemove.preview);\n }\n return currentFiles.filter((_, currentIndex) => currentIndex !== fileIndex);\n });\n }, []);\n\n const [primaryWorkers, setPrimaryWorkers] = useState(primaryWorker ? [primaryWorker] : []);\n const [initialValues, setInitialValues] = useState(referral);\n const [query, setQuery] = useState('');\n const debouncedQuery = useDebounce(query, 500);\n\n const [rejectedFiles, setRejectedFiles] = useState({\n filesTooBig: [],\n filesWrongType: [],\n filesTooBigAndWrongType: [],\n });\n const isOON = referralIsOON(referral);\n const referralTitle = buildReferralTitle(referral, index);\n const crtb854ForwardingSuperset = useFeatureFlag('crtb854ForwardingSuperset', false);\n const featureFlagCMultiplelientNeeds = useFeatureFlag('crtb2130MultipleClientNeeds', false);\n const newLanguageDashboard = useFeatureFlag('crtb2182ClarifyReferralLanguage', false);\n const today = moment().startOf('day').unix();\n\n // If all the programs in the referral are unlisted, show the user provider networks\n const networks = isUnlistedReferral(referral) ? networksUnlistedProgram : filterNetworks(referral);\n const showNetworkSelect = shouldShowNetworkSelect(networks, programs);\n const canEditPrograms = canChangePrograms({ hasDraftReferral, caseData, referral });\n const toggleProgramMenu = useCallback((id) => setMoveReferralMenus((menus) => toggleProgramMenus(menus, id)), []);\n\n const getPrimaryWorkers = useCallback(async () => {\n const { primary_workers } = await fetchPrimaryWorkers({\n providerId: referral.sendingProvider.id,\n currentEmployee,\n query: debouncedQuery,\n });\n\n setPrimaryWorkers((currentPrimaryWorkers) => (\n mergePrimaryWorkerOptions({\n currentPrimaryWorkers,\n fetchedPrimaryWorkers: primary_workers,\n primaryWorker,\n query: debouncedQuery,\n })\n ));\n }, [currentEmployee, debouncedQuery, primaryWorker, referral.sendingProvider.id]);\n\n const feeScheduleProgram = get(programs, '[0].fee_schedule_program');\n const referralCaseId = referral.case?.id;\n const referralState = referral.state;\n const feeSchedulePaymentType = feeScheduleProgram?.payment_type;\n const authorizationRequired = feeScheduleProgram?.authorization_required;\n\n const initializePaymentFormValues = useCallback(async () => {\n const draftPaymentAuthorizationValues = await fetchDraftPaymentAuthorizationValues({\n caseId: referralCaseId,\n referralState,\n paymentType: feeSchedulePaymentType,\n authorizationRequired,\n });\n\n if (!draftPaymentAuthorizationValues) {\n return;\n }\n\n setInitialValues((previousValues) => (\n mergeDraftPaymentAuthorizationInitialValues({\n previousValues,\n paymentAuthFormValues: draftPaymentAuthorizationValues.paymentAuthFormValues,\n serviceAuthorizationData: draftPaymentAuthorizationValues.serviceAuthorizationData,\n crtb854ForwardingSuperset,\n referralDescription,\n })\n ));\n }, [\n authorizationRequired,\n crtb854ForwardingSuperset,\n feeSchedulePaymentType,\n referralCaseId,\n referralDescription,\n referralState,\n ]);\n\n useEffect(() => {\n if (isOON) {\n getPrimaryWorkers();\n }\n }, [getPrimaryWorkers, isOON]);\n\n useEffect(() => {\n setMoveReferralMenus(buildProgramMenus(programs));\n }, [programs]);\n\n const { data: clientNeedsData } = useFind(\n `people/${personId}/person_condition`,\n {\n most_recent: true,\n },\n {\n queryConfig: {\n placeholderData: undefined,\n },\n },\n );\n\n const clientNeeds = useMemo(\n () => mapClientNeeds(clientNeedsData),\n [clientNeedsData],\n );\n\n const selectedClientNeeds = useMemo(\n () => getSelectedClientNeeds(clientNeeds, caseData),\n [caseData, clientNeeds],\n );\n\n useEffect(() => {\n if (selectedClientNeeds.length > 0 && !referral.client_need) {\n setInitialValues((prev) => ({\n ...prev,\n client_need: selectedClientNeeds.map((need) => need.value)\n }));\n }\n }, [referral.client_need, selectedClientNeeds]);\n\n useEffect(() => {\n setInitialValues(buildInitialValues({\n referral,\n isOON,\n primaryWorkers,\n currentEmployeeId: currentEmployee.id,\n crtb854ForwardingSuperset,\n referralDescription,\n }));\n }, [\n crtb854ForwardingSuperset,\n currentEmployee.id,\n isOON,\n primaryWorkers,\n referral,\n referralDescription,\n ]);\n\n useEffect(() => {\n setVisiblePersistedFiles((currentFiles) => (\n isEqual(ensureAttachmentArray(persistedAttachments), currentFiles)\n ? currentFiles\n : ensureAttachmentArray(persistedAttachments)\n ));\n }, [persistedAttachments]);\n\n useEffect(() => {\n const nextFiles = ensureAttachmentArray(removablePersistedAttachments);\n\n setQueuedPersistedFiles((currentFiles) => (\n isEqual(nextFiles, currentFiles) ? currentFiles : nextFiles\n ));\n }, [removablePersistedAttachments]);\n useEffect(() => {\n syncingAttachmentsRef.current = true;\n setUploadedFiles((currentFiles) => (\n isEqual(ensureAttachmentArray(pendingAttachments), currentFiles)\n ? currentFiles\n : ensureAttachmentArray(pendingAttachments)\n ));\n }, [pendingAttachments]);\n\n useEffect(() => {\n if (syncingAttachmentsRef.current) {\n syncingAttachmentsRef.current = false;\n return;\n }\n\n const nextPendingAttachments = ensureAttachmentArray(pendingAttachments);\n\n if (!isEqual(nextPendingAttachments, uploadedFiles)) {\n updateAttachments(uploadedFiles);\n }\n }, [updateAttachments, uploadedFiles, pendingAttachments]);\n\n useEffect(() => {\n initializePaymentFormValues();\n }, [initializePaymentFormValues]);\n const showClientNeeds = featureFlagCMultiplelientNeeds && !isEmpty(clientNeeds);\n const validateOpenDate = useMemo(\n () => createOpenDateValidator(today),\n [today],\n );\n\n return (\n <Form\n initialValues={initialValues}\n onSubmit={() => { }}\n validate={(values) => validateReferralBuilderForm({\n values,\n isOON,\n showClientNeeds,\n showNetworkSelect,\n feeScheduleProgram,\n validateOpenDate,\n setReferralErrors,\n index\n })}\n mutators={{\n setFieldTouched: (args, state) => {\n const [name, touched] = args;\n const field = state.fields[name];\n if (field) {\n field.touched = !!touched;\n }\n }\n }}\n render={({ form, values, errors }) => {\n onSetForm && onSetForm(form);\n return (\n <>\n <ReferralErrorsSync\n errors={errors}\n index={index}\n setReferralErrors={setReferralErrors}\n />\n <FormSpy subscription={{ values: true }} onChange={onChange} />\n <ReferralBuilderFormContent\n referralTitle={referralTitle}\n referralSubtitle={referralSubtitle}\n newLanguageDashboard={newLanguageDashboard}\n isOON={isOON}\n programs={programs}\n moveReferralMenus={moveReferralMenus}\n onProgramClick={toggleProgramMenu}\n unselected={unselected}\n referral={referral}\n referrals={referrals}\n currentProvider={currentProvider}\n removeProgram={removeProgram}\n moveToNewReferral={moveToNewReferral}\n moveToExistingReferral={moveToExistingReferral}\n canChangePrograms={canEditPrograms}\n hasDraftReferral={hasDraftReferral}\n navigateToAddResources={navigateToAddResources}\n showNetworkSelect={showNetworkSelect}\n index={index}\n networks={networks}\n feeScheduleProgram={feeScheduleProgram}\n formValues={values}\n setReferralErrors={setReferralErrors}\n source={source}\n validateOpenDate={validateOpenDate}\n today={today}\n setQuery={setQuery}\n primaryWorkers={primaryWorkers}\n showClientNeeds={showClientNeeds}\n clientNeeds={clientNeeds}\n attachableDocuments={attachableDocuments}\n persistedAttachments={visiblePersistedFiles}\n pendingAttachments={uploadedFiles}\n rejectedFiles={rejectedFiles}\n onRemovePendingFile={handleRemoveUploadedFile}\n onRemovePersistedFile={handleRemovePersistedFile}\n setRejectedFiles={setRejectedFiles}\n setUploadedFiles={setUploadedFiles}\n />\n </>\n )}}\n />\n )\n}\n\nReferralBuilderForm.propTypes = {\n currentEmployee: PropTypes.object.isRequired,\n currentProvider: PropTypes.object.isRequired,\n referral: PropTypes.shape({\n service: PropTypes.shape({\n name: PropTypes.string.isRequired,\n }).isRequired,\n programs: PropTypes.array.isRequired,\n }).isRequired,\n index: PropTypes.number.isRequired,\n onChange: PropTypes.func.isRequired,\n unselected: PropTypes.array,\n removeProgram: PropTypes.func.isRequired,\n moveToNewReferral: PropTypes.func.isRequired,\n moveToExistingReferral: PropTypes.func.isRequired,\n onSetForm: PropTypes.func.isRequired,\n setReferralErrors: PropTypes.func.isRequired,\n referralSubtitle: PropTypes.string,\n updatePersistedAttachments: PropTypes.func.isRequired,\n}\n\nReferralBuilderForm.defaultProps = {\n unselected: [],\n referralSubtitle: '',\n}\n\nexport default ReferralBuilderForm;\n"],"mappings":"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","ignoreList":[]}
@@ -1,8 +1,3 @@
1
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
- const _excluded = ["referralTitle", "referralSubtitle", "newLanguageDashboard"];
4
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
1
  import React from 'react';
7
2
  import PropTypes from 'prop-types';
8
3
  import { Field } from 'react-final-form';
@@ -24,7 +19,7 @@ const getFieldStyle = (source, params) => source === 'emr' && get(params, 'meta.
24
19
  'border-color': 'red'
25
20
  }
26
21
  } : {};
27
- const getDescriptionMessage = currentProvider => currentProvider !== null && currentProvider !== void 0 && currentProvider.sensitive ? "".concat(REFERRAL_PII_PHI_DESCRIPTION, " ").concat(CFR_PART_2_REFERRAL_MESSAGE) : REFERRAL_PII_PHI_DESCRIPTION;
22
+ const getDescriptionMessage = currentProvider => currentProvider?.sensitive ? `${REFERRAL_PII_PHI_DESCRIPTION} ${CFR_PART_2_REFERRAL_MESSAGE}` : REFERRAL_PII_PHI_DESCRIPTION;
28
23
  const buildCannotMoveReasons = _ref => {
29
24
  let {
30
25
  program,
@@ -64,8 +59,7 @@ const ReferralProgramsSection = _ref2 => {
64
59
  children: [/*#__PURE__*/_jsx("h5", {
65
60
  children: "PROGRAMS"
66
61
  }), programs.map(program => {
67
- var _moveReferralMenus$fi;
68
- const menuIsOpen = isEmpty(moveReferralMenus) ? false : (_moveReferralMenus$fi = moveReferralMenus.find(menu => menu.id === program.id)) === null || _moveReferralMenus$fi === void 0 ? void 0 : _moveReferralMenus$fi.menuIsOpen;
62
+ const menuIsOpen = isEmpty(moveReferralMenus) ? false : moveReferralMenus.find(menu => menu.id === program.id)?.menuIsOpen;
69
63
  return /*#__PURE__*/_jsx(ReferralProgramCard, {
70
64
  program: program,
71
65
  onClick: onProgramClick,
@@ -84,7 +78,7 @@ const ReferralProgramsSection = _ref2 => {
84
78
  unselected,
85
79
  currentProvider
86
80
  })
87
- }, "referral-program-".concat(program === null || program === void 0 ? void 0 : program.id, "-card"));
81
+ }, `referral-program-${program?.id}-card`);
88
82
  }), /*#__PURE__*/_jsxs("div", {
89
83
  className: "text-center text-dark-grey my-10",
90
84
  children: [canChangePrograms ? 'Click on the three-dot icon to edit referral groupings.' : DRAFT_AUTHORIZATION_PROGRAM_CHANGE_MESSAGE, hasDraftReferral && canChangePrograms ? /*#__PURE__*/_jsxs("div", {
@@ -106,7 +100,7 @@ const NetworkSelectionField = _ref3 => {
106
100
  children: /*#__PURE__*/_jsx(Field, {
107
101
  name: "network",
108
102
  required: true,
109
- children: params => /*#__PURE__*/_jsx(SelectField, _objectSpread({
103
+ children: params => /*#__PURE__*/_jsx(SelectField, {
110
104
  required: true,
111
105
  id: "network-selection",
112
106
  label: "Network Selection",
@@ -114,9 +108,10 @@ const NetworkSelectionField = _ref3 => {
114
108
  options: networks,
115
109
  labelKey: "name",
116
110
  valueKey: "id",
117
- validations: validations.isRequired
118
- }, params))
119
- }, "referral-".concat(index, "-network"))
111
+ validations: validations.isRequired,
112
+ ...params
113
+ })
114
+ }, `referral-${index}-network`)
120
115
  });
121
116
  };
122
117
  const DescriptionField = _ref4 => {
@@ -129,7 +124,7 @@ const DescriptionField = _ref4 => {
129
124
  return /*#__PURE__*/_jsx(Field, {
130
125
  name: "description",
131
126
  required: true,
132
- children: params => /*#__PURE__*/_jsx(TextField, _objectSpread({
127
+ children: params => /*#__PURE__*/_jsx(TextField, {
133
128
  afterLabelContent: /*#__PURE__*/_jsx(InfoPanel, {
134
129
  className: "mb-4 mt-2",
135
130
  message: getDescriptionMessage(currentProvider)
@@ -141,9 +136,10 @@ const DescriptionField = _ref4 => {
141
136
  inline: false,
142
137
  validations: validations.isRequired,
143
138
  required: true,
144
- style: getFieldStyle(source, params)
145
- }, params))
146
- }, "referral-".concat(index, "-description"));
139
+ style: getFieldStyle(source, params),
140
+ ...params
141
+ })
142
+ }, `referral-${index}-description`);
147
143
  };
148
144
  const OpenDateField = _ref5 => {
149
145
  let {
@@ -156,16 +152,17 @@ const OpenDateField = _ref5 => {
156
152
  return /*#__PURE__*/_jsx(Field, {
157
153
  name: "opened_date",
158
154
  required: true,
159
- children: params => /*#__PURE__*/_jsx(DateField, _objectSpread({
155
+ children: params => /*#__PURE__*/_jsx(DateField, {
160
156
  required: true,
161
157
  id: "opened-date",
162
158
  label: newLanguageDashboard ? 'Case open date' : 'Open date',
163
159
  validations: validateOpenDate(params.input.value),
164
160
  minDate: moment().subtract(1, 'year').unix(),
165
161
  maxDate: today,
166
- style: getFieldStyle(source, params)
167
- }, params))
168
- }, "opened-".concat(index, "-date"));
162
+ style: getFieldStyle(source, params),
163
+ ...params
164
+ })
165
+ }, `opened-${index}-date`);
169
166
  };
170
167
  const PrimaryWorkerField = _ref6 => {
171
168
  let {
@@ -176,7 +173,7 @@ const PrimaryWorkerField = _ref6 => {
176
173
  return /*#__PURE__*/_jsx(Field, {
177
174
  name: "primaryWorker",
178
175
  required: true,
179
- children: params => /*#__PURE__*/_jsx(SelectField, _objectSpread({
176
+ children: params => /*#__PURE__*/_jsx(SelectField, {
180
177
  required: true,
181
178
  id: "primary-worker",
182
179
  label: "Primary Worker",
@@ -185,9 +182,10 @@ const PrimaryWorkerField = _ref6 => {
185
182
  options: primaryWorkers,
186
183
  labelKey: "full_name",
187
184
  valueKey: "id",
188
- validations: validations.isRequired
189
- }, params))
190
- }, "referral-".concat(index, "-primary-worker"));
185
+ validations: validations.isRequired,
186
+ ...params
187
+ })
188
+ }, `referral-${index}-primary-worker`);
191
189
  };
192
190
  const ClientNeedsSection = _ref7 => {
193
191
  let {
@@ -205,7 +203,7 @@ const ClientNeedsSection = _ref7 => {
205
203
  params: params,
206
204
  clientNeeds: clientNeeds
207
205
  })
208
- }, "associated-".concat(index, "-need"))]
206
+ }, `associated-${index}-need`)]
209
207
  });
210
208
  };
211
209
  const DocumentsSection = _ref8 => {
@@ -292,7 +290,7 @@ const NetworkAndAuthorizationSection = _ref1 => {
292
290
  children: [showNetworkSelect && /*#__PURE__*/_jsx(NetworkSelectionField, {
293
291
  index: index,
294
292
  networks: networks
295
- }), (feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.authorization_required) && /*#__PURE__*/_jsx(AuthorizationSubform, {
293
+ }), feeScheduleProgram?.authorization_required && /*#__PURE__*/_jsx(AuthorizationSubform, {
296
294
  feeScheduleProgram: feeScheduleProgram,
297
295
  formValues: formValues,
298
296
  setReferralErrors: errors => setReferralErrors(index, errors)
@@ -345,24 +343,33 @@ const CaseInformationSection = _ref10 => {
345
343
  };
346
344
  const ReferralBuilderFormBody = props => /*#__PURE__*/_jsxs("div", {
347
345
  className: "p-5",
348
- children: [/*#__PURE__*/_jsx(ReferralProgramsSection, _objectSpread({}, props)), /*#__PURE__*/_jsx(NetworkAndAuthorizationSection, _objectSpread({}, props)), /*#__PURE__*/_jsx(CaseInformationSection, _objectSpread({}, props)), /*#__PURE__*/_jsx(DocumentsSection, _objectSpread({}, props))]
346
+ children: [/*#__PURE__*/_jsx(ReferralProgramsSection, {
347
+ ...props
348
+ }), /*#__PURE__*/_jsx(NetworkAndAuthorizationSection, {
349
+ ...props
350
+ }), /*#__PURE__*/_jsx(CaseInformationSection, {
351
+ ...props
352
+ }), /*#__PURE__*/_jsx(DocumentsSection, {
353
+ ...props
354
+ })]
349
355
  });
350
356
  const ReferralBuilderFormContent = _ref11 => {
351
357
  let {
352
- referralTitle,
353
- referralSubtitle,
354
- newLanguageDashboard
355
- } = _ref11,
356
- contentProps = _objectWithoutProperties(_ref11, _excluded);
358
+ referralTitle,
359
+ referralSubtitle,
360
+ newLanguageDashboard,
361
+ ...contentProps
362
+ } = _ref11;
357
363
  return /*#__PURE__*/_jsxs("div", {
358
364
  className: "bg-white border border-solid border-blue-border rounded md:w-4/6 lg:w-4/6",
359
365
  children: [/*#__PURE__*/_jsx(ReferralCardHeader, {
360
366
  referralTitle: referralTitle,
361
367
  referralSubtitle: referralSubtitle,
362
368
  newLanguageDashboard: newLanguageDashboard
363
- }), /*#__PURE__*/_jsx(ReferralBuilderFormBody, _objectSpread({
364
- newLanguageDashboard: newLanguageDashboard
365
- }, contentProps))]
369
+ }), /*#__PURE__*/_jsx(ReferralBuilderFormBody, {
370
+ newLanguageDashboard: newLanguageDashboard,
371
+ ...contentProps
372
+ })]
366
373
  });
367
374
  };
368
375
  ReferralBuilderFormContent.propTypes = {