@unite-us/app-create-referral 0.15.114 → 0.15.115

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.
@@ -60,7 +60,6 @@ export default function ReferralBuilder() {
60
60
  }, []);
61
61
  const hint542SupersetUnlistedPrograms = useFeatureFlag('hint542SupersetUnlistedPrograms', false);
62
62
  const crtb854ForwardingSuperset = useFeatureFlag('crtb854ForwardingSuperset', false);
63
- const showClientNeeds = useFeatureFlag('crtb2130MultipleClientNeeds', false);
64
63
  const [servicesState, setServicesState] = useState([]);
65
64
  const [aboutGroupedReferralsModalIsOpen, setAboutGroupedReferralsModalIsOpen] = useState(false);
66
65
  const [isOpenChooseOneServiceTypeModal, setChooseOneServiceTypeModalIsOpen] = useState(false);
@@ -112,7 +111,7 @@ export default function ReferralBuilder() {
112
111
  };
113
112
  const onReferralsBuilt = groupedReferrals => {
114
113
  if (!isEmpty(groupedReferrals)) {
115
- const initErrors = initializeReferralErrors(groupedReferrals, showClientNeeds);
114
+ const initErrors = initializeReferralErrors(groupedReferrals);
116
115
  groupedReferrals.forEach((_referral, index) => {
117
116
  setReferralErrors(index, initErrors[index]);
118
117
  });
@@ -480,7 +479,7 @@ export default function ReferralBuilder() {
480
479
  return !service.selected;
481
480
  });
482
481
  const updatedReferrals = updatedReferralsBySelectedServices(referrals, filteredSelectedServices);
483
- const initErrors = initializeReferralErrors(updatedReferrals, showClientNeeds);
482
+ const initErrors = initializeReferralErrors(updatedReferrals);
484
483
  setFieldErrors(initErrors);
485
484
  dispatch(setData({
486
485
  referrals: updatedReferrals
@@ -1 +1 @@
1
- {"version":3,"file":"ReferralBuilder.js","names":["React","useEffect","useState","useRef","useCallback","isEqual","isEmpty","get","some","values","intersectionBy","compact","useNavigate","useLocation","Button","Icon","setData","useAppCreateReferralContext","StepHeader","ReferralCard","ReferralBuilderForm","isUnlistedProgram","getReferralSubtitle","initializeReferralErrors","generateErrorMessage","hasOffPlatformReferrals","isEmptyErrors","removeErrorByIndex","updatedReferralsBySelectedServices","useBuildReferrals","CreateReferralContainer","NavButtons","NoReferralsDisplay","removeReferralProgram","Spinner","useCreateReferrals","CALLBACKS","coreApi","fetchContactDocuments","fetchCaseDocuments","classNames","fetchNetworks","useFeatureFlag","ChooseOneServiceTypeModal","REFERRAL_BUILDER_DESCRIPTION","handleKeyDown","AboutGroupedReferralsModal","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","showClientNeeds","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","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","handleServiceSelectionChange","programId","serviceId","prevState","map","selected","findServiceName","_ref","_referralThatHasTheSe","serviceToFind","referralThatHasTheService","find","referral","_referral$service","name","mapProgramsToServicesState","flatMap","program","services","serviceName","length","initialState","hasUnlistedPrograms","then","networks","syncExpandedCardWhenChevronHidden","currentWindowWidth","previousWindowWidth","addEventListener","removeEventListener","onLearnMoreClick","onCloseGroupedReferralsModal","refModal","openModal","closeModal","onReferralCardClick","result","fetchCaseData","data","findRecord","error","console","updatedReferrals","attachableDocuments","doc","attached","document","hasMoreThanOneServiceType","_program$services","getSelected","saveValuesOnChange","props","setTimeout","firstIndexWithErrors","entries","findIndex","_ref2","_index","Boolean","focusErrors","setFocus","onNextClick","concat","errorFieldMap","key","fieldName","getElement","getElementById","_document$getElementB","parentElement","_document$getElementB2","_document$getElementB3","errorObj","_form$current","mutators","setFieldTouched","element","focus","moveToExistingReferral","programs","filter","p","newIndex","moveToNewReferral","newReferral","newReferrals","removeProgram","programName","newReferralPrograms","r","newSelectedPrograms","updateAttachments","attachments","navigateBack","draftCaseId","redirectToDraftReferral","onNavigateBack","navigateToAddResources","onNavigateToAddResources","createReferrals","handleSaveDraftReferral","draft","onSaveDraftReferral","notify","success","changeWidthReferralCard","prevExpandReferralsCard","center","referralSubtitle","unselectedReferralIndexes","allPrograms","errorMessage","currentReferral","xlOrLgInvisibleChevron","xlOrLgSpaceReferralDiv","onConfirmApplyChanges","filteredSelectedServices","filteredNonSelectedServices","onDeselectProgram","children","className","header","type","onClick","onKeyDown","event","label","link","ref","onClose","modalRef","onConfirm","onServiceSelectionChange","onBackClick","onForwardClick","primaryLabel","hideForwardButtons","hideSaveDraftLink","disabled","icon","color","direction","ariaLabel","onChange","unselected","onSetForm","newForm"],"sources":["../../../src/pages/builder/ReferralBuilder.js"],"sourcesContent":["import React, { useEffect, useState, useRef, useCallback } from 'react';\nimport { isEqual, isEmpty, get, some, values, intersectionBy, compact } from 'lodash';\nimport { useNavigate, useLocation } from 'react-router-dom';\nimport { Button, Icon } from '@unite-us/app-components';\nimport { setData, useAppCreateReferralContext } from '../../context/AppCreateReferralProvider';\nimport StepHeader from '../../components/StepHeader';\nimport ReferralCard from './ReferralCard';\nimport ReferralBuilderForm from './ReferralBuilderForm';\nimport { isUnlistedProgram, getReferralSubtitle, initializeReferralErrors, generateErrorMessage, hasOffPlatformReferrals, isEmptyErrors, removeErrorByIndex, updatedReferralsBySelectedServices } from './utils';\nimport useBuildReferrals from './useBuildReferrals';\nimport CreateReferralContainer from '../../components/CreateReferralContainer';\nimport NavButtons from '../../components/NavButtons';\nimport NoReferralsDisplay from './NoReferralsDisplay';\nimport { removeReferralProgram } from '../../actions/Referral/removeReferralProgram';\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 ChooseOneServiceTypeModal from './ChooseOneServiceTypeModal';\nimport {\n REFERRAL_BUILDER_DESCRIPTION,\n} from './constants';\nimport { handleKeyDown } from '../../common/utils/utils';\nimport AboutGroupedReferralsModal from './AboutGroupedReferralsModal';\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 showClientNeeds = 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\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 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 const referralThatHasTheService = referrals?.find((referral) => referral?.service?.id === serviceToFind);\n return referralThatHasTheService?.service?.name;\n };\n\n const mapProgramsToServicesState = () => {\n return selectedPrograms?.flatMap(program =>\n program.services.map(serviceToFind => {\n const serviceName = findServiceName({ serviceToFind });\n return {\n programId: program.id,\n serviceId: serviceToFind,\n serviceName,\n selected: program.services.length === 1\n };\n })\n ) || [];\n };\n\n useEffect(() => {\n const initialState = mapProgramsToServicesState();\n setServicesState(initialState);\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 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 = () => referrals && referrals[selectedIndex]\n\n const saveValuesOnChange = (props) => {\n const { values } = props;\n const updatedReferrals = referrals;\n updatedReferrals[selectedIndex] = {\n ...values\n }\n\n // Testing: Avoid React Final Form error: FormSpy Cannot update a component while rendering\n // https://github.com/final-form/react-final-form/issues/809#issue-638963034\n setTimeout(() =>\n dispatch(setData({\n referrals: [...updatedReferrals]\n })), 0\n )\n }\n\n const firstIndexWithErrors = Object.entries(errors).findIndex(([_index, values]) => Object.values(values).some(Boolean));\n\n const focusErrors = () => {\n let index = selectedIndex;\n if (!some(values(errors[index]), Boolean)) {\n index = firstIndexWithErrors; \n setSelectedIndex(index);\n }\n\n setFocus(index);\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 setFocus = (index) => {\n setTimeout(() => {\n const errorFieldMap = [\n { key: 'description', fieldName: 'description', getElement: () => document.getElementById(\"referral-description\") },\n { key: 'opened_date', fieldName: 'opened_date', getElement: () => document.getElementById(\"opened-date\") },\n { key: 'network', fieldName: 'network', getElement: () => document.getElementById(\"network-selection\")?.parentElement?.parentElement },\n { key: 'amount_requested', fieldName: 'paymentAuthForm.amount_requested', getElement: () => document.getElementById(\"authorization-request-amount-requested\") },\n { key: 'service_end', fieldName: 'paymentAuthForm.service_end', getElement: () => document.getElementById(\"authorization-request-service-dates\") },\n { key: 'passthrough_dates', fieldName: 'paymentAuthForm.service_end', getElement: () => document.getElementById(\"authorization-request-service-dates\") },\n { key: 'icd10_code', fieldName: 'paymentAuthForm.icd10_code', getElement: () => document.getElementById(\"authorization-request-icd10-code\") },\n { key: 'primary_worker', fieldName: 'primaryWorker', getElement: () => document.getElementById(\"primary-worker\")?.parentElement?.parentElement },\n { key: 'client_need', fieldName: 'client_need', getElement: () => document.getElementById(\"client_need\")?.parentElement?.parentElement },\n ];\n\n const errorObj = errors[index];\n for (const { key, fieldName, getElement } of errorFieldMap) {\n if (errorObj?.[key]) {\n form.current?.mutators?.setFieldTouched(fieldName, true);\n\n const element = getElement();\n if (element) element.focus();\n\n break;\n }\n }\n }, 100);\n };\n\n const moveToExistingReferral = (index, program) => {\n const { programs } = referrals[selectedIndex];\n\n referrals[selectedIndex] = {\n ...referrals[selectedIndex],\n programs: programs.filter((p) => p.id !== program.id),\n }\n if (isEmpty(referrals[selectedIndex].programs)) {\n referrals[selectedIndex] = null;\n }\n\n referrals[index] = {\n ...referrals[index],\n programs: [...referrals[index].programs, program]\n }\n\n const newErrors = removeErrorByIndex(errors, selectedIndex);\n setFieldErrors(newErrors);\n\n dispatch(setData({\n referrals: compact(referrals),\n }));\n\n const newIndex = selectedIndex < index ? index - 1 : index;\n setSelectedIndex(newIndex);\n }\n\n const moveToNewReferral = (program) => {\n const referral = referrals[selectedIndex];\n referral.programs = referral.programs.filter((p) => p.id !== program.id);\n\n const newReferral = {\n ...referral,\n programs: [program],\n description: '',\n }\n\n const newReferrals = [...referrals, newReferral];\n\n dispatch(setData({\n referrals: newReferrals,\n }));\n\n setSelectedIndex(newReferrals.length - 1);\n }\n\n const removeProgram = (programName, programId, serviceId) => {\n const referral = referrals[selectedIndex];\n const newReferral = removeReferralProgram({ referral, programName, programId, serviceId });\n\n referrals[selectedIndex] = newReferral ? {\n ...newReferral\n } : null;\n\n const newReferrals = compact(referrals);\n const newReferralPrograms = newReferrals.flatMap((r) => r.programs);\n const newSelectedPrograms = intersectionBy(selectedPrograms, newReferralPrograms, 'id');\n\n dispatch(setData({\n referrals: [...newReferrals],\n selectedPrograms: [...newSelectedPrograms],\n }));\n\n if (!referrals[selectedIndex]) {\n const newErrors = removeErrorByIndex(errors, selectedIndex);\n setFieldErrors(newErrors);\n setSelectedIndex(0);\n }\n }\n\n const updateAttachments = (attachments) => {\n referrals[selectedIndex] = {\n ...referrals[selectedIndex],\n attachments,\n };\n \n dispatch(setData({\n referrals,\n }));\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 await createReferrals({ draft: true });\n const { onSaveDraftReferral } = CALLBACKS;\n onSaveDraftReferral && onSaveDraftReferral();\n CALLBACKS.notify.success('Draft referral successfully saved');\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 = referrals.map((_referral, index) => index).filter((index) => index !== 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 filteredSelectedServices = servicesState.filter((service) => { return service.selected });\n const filteredNonSelectedServices = servicesState.filter((service) => { return !service.selected });\n const updatedReferrals = updatedReferralsBySelectedServices(referrals, filteredSelectedServices);\n\n const initErrors = initializeReferralErrors(updatedReferrals, showClientNeeds);\n setFieldErrors(initErrors);\n\n dispatch(setData({\n referrals: updatedReferrals,\n }));\n\n filteredNonSelectedServices.forEach((service) => {\n CALLBACKS.onDeselectProgram({\n id: service.programId,\n service: service.serviceId,\n });\n });\n\n closeChooseOneServiceTypeModal();\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 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 {\n !isEmpty(allPrograms) ? (\n <div className=\"relative mx-auto responsive-max-width\">\n {\n (errorMessage && (nextClicked || saveDraftClicked)) ? (\n <div className=\"flex justify-end\">\n <Icon icon=\"InfoCircle\" color=\"red\" className=\"mr-2 mt-px\" />\n <p className=\"text-red\">{errorMessage}</p>\n </div>\n ) : null\n }\n <div className={`flex justify-end my-5 ${xlOrLgSpaceReferralDiv}`}>\n <div id=\"referrals-card\"\n className={`bg-white border border-solid border-blue-border rounded\n ${expandReferralsCard ? 'relative md:max-w-none lg:w-3/6 z-20' : 'md:w-2/6 lg:w-2/6'}`}>\n <div className=\"p-5 h-full\">\n <div className=\"flex justify-between relative\">\n <div>\n <h3 className=\"text-xl font-black mb-5\">\n Referrals\n </h3>\n </div>\n <div className={xlOrLgInvisibleChevron}>\n <Icon \n icon='ChevronArrow' \n direction={expandReferralsCard ? \"left\" : \"right\"} \n ariaLabel={expandReferralsCard ? \"Collapse sidebar\" : \"Expand Sidebar\"} \n className=\"w-6 h-6\" \n onClick={() => changeWidthReferralCard()}\n />\n </div>\n </div>\n {referrals?.map((referral, index) => (\n <div className=\"mb-5\" key={`referral-card-${index}-wrapper`}>\n <ReferralCard\n referral={referral}\n index={index}\n selectedIndex={selectedIndex}\n onClick={onReferralCardClick}\n errors={errors[index]}\n expandReferralsCard={expandReferralsCard}\n isEmrSource={isEmrSource}\n />\n </div>\n ))}\n </div>\n </div>\n {\n !isEmpty(get(currentReferral, 'programs', [])) ? (\n <ReferralBuilderForm\n currentEmployee={currentEmployee}\n currentProvider={currentProvider} \n hasDraftReferral={hasDraftReferral}\n navigateToAddResources={navigateToAddResources}\n referral={currentReferral}\n referrals={referrals}\n referralSubtitle={referralSubtitle}\n index={selectedIndex}\n onChange={saveValuesOnChange}\n unselected={unselectedReferralIndexes}\n removeProgram={removeProgram}\n onSetForm={(newForm) => { form.current = newForm; }}\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 />\n ) : null\n }\n </div>\n </div>\n ) : (\n <NoReferralsDisplay\n hasDraftReferral={hasDraftReferral}\n navigateToAddResources={navigateToAddResources}\n onClick={navigateBack}\n />\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","isEqual","isEmpty","get","some","values","intersectionBy","compact","useNavigate","useLocation","Button","Icon","setData","useAppCreateReferralContext","StepHeader","ReferralCard","ReferralBuilderForm","isUnlistedProgram","getReferralSubtitle","initializeReferralErrors","generateErrorMessage","hasOffPlatformReferrals","isEmptyErrors","removeErrorByIndex","updatedReferralsBySelectedServices","useBuildReferrals","CreateReferralContainer","NavButtons","NoReferralsDisplay","removeReferralProgram","Spinner","useCreateReferrals","CALLBACKS","coreApi","fetchContactDocuments","fetchCaseDocuments","classNames","fetchNetworks","useFeatureFlag","ChooseOneServiceTypeModal","REFERRAL_BUILDER_DESCRIPTION","handleKeyDown","AboutGroupedReferralsModal","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","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","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","handleServiceSelectionChange","programId","serviceId","prevState","map","selected","findServiceName","_ref","_referralThatHasTheSe","serviceToFind","referralThatHasTheService","find","referral","_referral$service","name","mapProgramsToServicesState","flatMap","program","services","serviceName","length","initialState","hasUnlistedPrograms","then","networks","syncExpandedCardWhenChevronHidden","currentWindowWidth","previousWindowWidth","addEventListener","removeEventListener","onLearnMoreClick","onCloseGroupedReferralsModal","refModal","openModal","closeModal","onReferralCardClick","result","fetchCaseData","data","findRecord","error","console","updatedReferrals","attachableDocuments","doc","attached","document","hasMoreThanOneServiceType","_program$services","getSelected","saveValuesOnChange","props","setTimeout","firstIndexWithErrors","entries","findIndex","_ref2","_index","Boolean","focusErrors","setFocus","onNextClick","concat","errorFieldMap","key","fieldName","getElement","getElementById","_document$getElementB","parentElement","_document$getElementB2","_document$getElementB3","errorObj","_form$current","mutators","setFieldTouched","element","focus","moveToExistingReferral","programs","filter","p","newIndex","moveToNewReferral","newReferral","newReferrals","removeProgram","programName","newReferralPrograms","r","newSelectedPrograms","updateAttachments","attachments","navigateBack","draftCaseId","redirectToDraftReferral","onNavigateBack","navigateToAddResources","onNavigateToAddResources","createReferrals","handleSaveDraftReferral","draft","onSaveDraftReferral","notify","success","changeWidthReferralCard","prevExpandReferralsCard","center","referralSubtitle","unselectedReferralIndexes","allPrograms","errorMessage","currentReferral","xlOrLgInvisibleChevron","xlOrLgSpaceReferralDiv","onConfirmApplyChanges","filteredSelectedServices","filteredNonSelectedServices","onDeselectProgram","children","className","header","type","onClick","onKeyDown","event","label","link","ref","onClose","modalRef","onConfirm","onServiceSelectionChange","onBackClick","onForwardClick","primaryLabel","hideForwardButtons","hideSaveDraftLink","disabled","icon","color","direction","ariaLabel","onChange","unselected","onSetForm","newForm"],"sources":["../../../src/pages/builder/ReferralBuilder.js"],"sourcesContent":["import React, { useEffect, useState, useRef, useCallback } from 'react';\nimport { isEqual, isEmpty, get, some, values, intersectionBy, compact } from 'lodash';\nimport { useNavigate, useLocation } from 'react-router-dom';\nimport { Button, Icon } from '@unite-us/app-components';\nimport { setData, useAppCreateReferralContext } from '../../context/AppCreateReferralProvider';\nimport StepHeader from '../../components/StepHeader';\nimport ReferralCard from './ReferralCard';\nimport ReferralBuilderForm from './ReferralBuilderForm';\nimport { isUnlistedProgram, getReferralSubtitle, initializeReferralErrors, generateErrorMessage, hasOffPlatformReferrals, isEmptyErrors, removeErrorByIndex, updatedReferralsBySelectedServices } from './utils';\nimport useBuildReferrals from './useBuildReferrals';\nimport CreateReferralContainer from '../../components/CreateReferralContainer';\nimport NavButtons from '../../components/NavButtons';\nimport NoReferralsDisplay from './NoReferralsDisplay';\nimport { removeReferralProgram } from '../../actions/Referral/removeReferralProgram';\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 ChooseOneServiceTypeModal from './ChooseOneServiceTypeModal';\nimport {\n REFERRAL_BUILDER_DESCRIPTION,\n} from './constants';\nimport { handleKeyDown } from '../../common/utils/utils';\nimport AboutGroupedReferralsModal from './AboutGroupedReferralsModal';\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\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\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);\n groupedReferrals.forEach((_referral, index) => {\n setReferralErrors(index, initErrors[index]);\n });\n }\n };\n\n const { isLoading } = useBuildReferrals(onReferralsBuilt);\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 const referralThatHasTheService = referrals?.find((referral) => referral?.service?.id === serviceToFind);\n return referralThatHasTheService?.service?.name;\n };\n\n const mapProgramsToServicesState = () => {\n return selectedPrograms?.flatMap(program =>\n program.services.map(serviceToFind => {\n const serviceName = findServiceName({ serviceToFind });\n return {\n programId: program.id,\n serviceId: serviceToFind,\n serviceName,\n selected: program.services.length === 1\n };\n })\n ) || [];\n };\n\n useEffect(() => {\n const initialState = mapProgramsToServicesState();\n setServicesState(initialState);\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 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 = () => referrals && referrals[selectedIndex]\n\n const saveValuesOnChange = (props) => {\n const { values } = props;\n const updatedReferrals = referrals;\n updatedReferrals[selectedIndex] = {\n ...values\n }\n\n // Testing: Avoid React Final Form error: FormSpy Cannot update a component while rendering\n // https://github.com/final-form/react-final-form/issues/809#issue-638963034\n setTimeout(() =>\n dispatch(setData({\n referrals: [...updatedReferrals]\n })), 0\n )\n }\n\n const firstIndexWithErrors = Object.entries(errors).findIndex(([_index, values]) => Object.values(values).some(Boolean));\n\n const focusErrors = () => {\n let index = selectedIndex;\n if (!some(values(errors[index]), Boolean)) {\n index = firstIndexWithErrors; \n setSelectedIndex(index);\n }\n\n setFocus(index);\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 setFocus = (index) => {\n setTimeout(() => {\n const errorFieldMap = [\n { key: 'description', fieldName: 'description', getElement: () => document.getElementById(\"referral-description\") },\n { key: 'opened_date', fieldName: 'opened_date', getElement: () => document.getElementById(\"opened-date\") },\n { key: 'network', fieldName: 'network', getElement: () => document.getElementById(\"network-selection\")?.parentElement?.parentElement },\n { key: 'amount_requested', fieldName: 'paymentAuthForm.amount_requested', getElement: () => document.getElementById(\"authorization-request-amount-requested\") },\n { key: 'service_end', fieldName: 'paymentAuthForm.service_end', getElement: () => document.getElementById(\"authorization-request-service-dates\") },\n { key: 'passthrough_dates', fieldName: 'paymentAuthForm.service_end', getElement: () => document.getElementById(\"authorization-request-service-dates\") },\n { key: 'icd10_code', fieldName: 'paymentAuthForm.icd10_code', getElement: () => document.getElementById(\"authorization-request-icd10-code\") },\n { key: 'primary_worker', fieldName: 'primaryWorker', getElement: () => document.getElementById(\"primary-worker\")?.parentElement?.parentElement },\n { key: 'client_need', fieldName: 'client_need', getElement: () => document.getElementById(\"client_need\")?.parentElement?.parentElement },\n ];\n\n const errorObj = errors[index];\n for (const { key, fieldName, getElement } of errorFieldMap) {\n if (errorObj?.[key]) {\n form.current?.mutators?.setFieldTouched(fieldName, true);\n\n const element = getElement();\n if (element) element.focus();\n\n break;\n }\n }\n }, 100);\n };\n\n const moveToExistingReferral = (index, program) => {\n const { programs } = referrals[selectedIndex];\n\n referrals[selectedIndex] = {\n ...referrals[selectedIndex],\n programs: programs.filter((p) => p.id !== program.id),\n }\n if (isEmpty(referrals[selectedIndex].programs)) {\n referrals[selectedIndex] = null;\n }\n\n referrals[index] = {\n ...referrals[index],\n programs: [...referrals[index].programs, program]\n }\n\n const newErrors = removeErrorByIndex(errors, selectedIndex);\n setFieldErrors(newErrors);\n\n dispatch(setData({\n referrals: compact(referrals),\n }));\n\n const newIndex = selectedIndex < index ? index - 1 : index;\n setSelectedIndex(newIndex);\n }\n\n const moveToNewReferral = (program) => {\n const referral = referrals[selectedIndex];\n referral.programs = referral.programs.filter((p) => p.id !== program.id);\n\n const newReferral = {\n ...referral,\n programs: [program],\n description: '',\n }\n\n const newReferrals = [...referrals, newReferral];\n\n dispatch(setData({\n referrals: newReferrals,\n }));\n\n setSelectedIndex(newReferrals.length - 1);\n }\n\n const removeProgram = (programName, programId, serviceId) => {\n const referral = referrals[selectedIndex];\n const newReferral = removeReferralProgram({ referral, programName, programId, serviceId });\n\n referrals[selectedIndex] = newReferral ? {\n ...newReferral\n } : null;\n\n const newReferrals = compact(referrals);\n const newReferralPrograms = newReferrals.flatMap((r) => r.programs);\n const newSelectedPrograms = intersectionBy(selectedPrograms, newReferralPrograms, 'id');\n\n dispatch(setData({\n referrals: [...newReferrals],\n selectedPrograms: [...newSelectedPrograms],\n }));\n\n if (!referrals[selectedIndex]) {\n const newErrors = removeErrorByIndex(errors, selectedIndex);\n setFieldErrors(newErrors);\n setSelectedIndex(0);\n }\n }\n\n const updateAttachments = (attachments) => {\n referrals[selectedIndex] = {\n ...referrals[selectedIndex],\n attachments,\n };\n \n dispatch(setData({\n referrals,\n }));\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 await createReferrals({ draft: true });\n const { onSaveDraftReferral } = CALLBACKS;\n onSaveDraftReferral && onSaveDraftReferral();\n CALLBACKS.notify.success('Draft referral successfully saved');\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 = referrals.map((_referral, index) => index).filter((index) => index !== 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 filteredSelectedServices = servicesState.filter((service) => { return service.selected });\n const filteredNonSelectedServices = servicesState.filter((service) => { return !service.selected });\n const updatedReferrals = updatedReferralsBySelectedServices(referrals, filteredSelectedServices);\n\n const initErrors = initializeReferralErrors(updatedReferrals);\n setFieldErrors(initErrors);\n\n dispatch(setData({\n referrals: updatedReferrals,\n }));\n\n filteredNonSelectedServices.forEach((service) => {\n CALLBACKS.onDeselectProgram({\n id: service.programId,\n service: service.serviceId,\n });\n });\n\n closeChooseOneServiceTypeModal();\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 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 {\n !isEmpty(allPrograms) ? (\n <div className=\"relative mx-auto responsive-max-width\">\n {\n (errorMessage && (nextClicked || saveDraftClicked)) ? (\n <div className=\"flex justify-end\">\n <Icon icon=\"InfoCircle\" color=\"red\" className=\"mr-2 mt-px\" />\n <p className=\"text-red\">{errorMessage}</p>\n </div>\n ) : null\n }\n <div className={`flex justify-end my-5 ${xlOrLgSpaceReferralDiv}`}>\n <div id=\"referrals-card\"\n className={`bg-white border border-solid border-blue-border rounded\n ${expandReferralsCard ? 'relative md:max-w-none lg:w-3/6 z-20' : 'md:w-2/6 lg:w-2/6'}`}>\n <div className=\"p-5 h-full\">\n <div className=\"flex justify-between relative\">\n <div>\n <h3 className=\"text-xl font-black mb-5\">\n Referrals\n </h3>\n </div>\n <div className={xlOrLgInvisibleChevron}>\n <Icon \n icon='ChevronArrow' \n direction={expandReferralsCard ? \"left\" : \"right\"} \n ariaLabel={expandReferralsCard ? \"Collapse sidebar\" : \"Expand Sidebar\"} \n className=\"w-6 h-6\" \n onClick={() => changeWidthReferralCard()}\n />\n </div>\n </div>\n {referrals?.map((referral, index) => (\n <div className=\"mb-5\" key={`referral-card-${index}-wrapper`}>\n <ReferralCard\n referral={referral}\n index={index}\n selectedIndex={selectedIndex}\n onClick={onReferralCardClick}\n errors={errors[index]}\n expandReferralsCard={expandReferralsCard}\n isEmrSource={isEmrSource}\n />\n </div>\n ))}\n </div>\n </div>\n {\n !isEmpty(get(currentReferral, 'programs', [])) ? (\n <ReferralBuilderForm\n currentEmployee={currentEmployee}\n currentProvider={currentProvider} \n hasDraftReferral={hasDraftReferral}\n navigateToAddResources={navigateToAddResources}\n referral={currentReferral}\n referrals={referrals}\n referralSubtitle={referralSubtitle}\n index={selectedIndex}\n onChange={saveValuesOnChange}\n unselected={unselectedReferralIndexes}\n removeProgram={removeProgram}\n onSetForm={(newForm) => { form.current = newForm; }}\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 />\n ) : null\n }\n </div>\n </div>\n ) : (\n <NoReferralsDisplay\n hasDraftReferral={hasDraftReferral}\n navigateToAddResources={navigateToAddResources}\n onClick={navigateBack}\n />\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":";;;AAAA,OAAOA,KAAK,IAAKC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,WAAW,QAAQ,OAAO;AACxE,SAASC,OAAO,EAAEC,OAAO,EAAEC,GAAG,EAAEC,IAAI,EAAEC,MAAM,EAAEC,cAAc,EAAEC,OAAO,QAAQ,QAAQ;AACrF,SAASC,WAAW,EAAEC,WAAW,QAAQ,kBAAkB;AAC3D,SAASC,MAAM,EAAEC,IAAI,QAAQ,0BAA0B;AACvD,SAASC,OAAO,EAAEC,2BAA2B,QAAQ,yCAAyC;AAC9F,OAAOC,UAAU,MAAM,6BAA6B;AACpD,OAAOC,YAAY,MAAM,gBAAgB;AACzC,OAAOC,mBAAmB,MAAM,uBAAuB;AACvD,SAASC,iBAAiB,EAAEC,mBAAmB,EAAEC,wBAAwB,EAAEC,oBAAoB,EAAEC,uBAAuB,EAAEC,aAAa,EAAEC,kBAAkB,EAAEC,kCAAkC,QAAQ,SAAS;AAChN,OAAOC,iBAAiB,MAAM,qBAAqB;AACnD,OAAOC,uBAAuB,MAAM,0CAA0C;AAC9E,OAAOC,UAAU,MAAM,6BAA6B;AACpD,OAAOC,kBAAkB,MAAM,sBAAsB;AACrD,SAASC,qBAAqB,QAAQ,8CAA8C;AACpF,OAAOC,OAAO,MAAM,mCAAmC;AACvD,OAAOC,kBAAkB,MAAM,gCAAgC;AAC/D,SAASC,SAAS,EAAEC,OAAO,QAAQ,kBAAkB;AACrD,OAAOC,qBAAqB,MAAM,4DAA4D;AAC9F,OAAOC,kBAAkB,MAAM,yDAAyD;AACxF,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,aAAa,MAAM,sCAAsC;AAChE,SAASC,cAAc,QAAQ,4BAA4B;AAC3D,OAAOC,yBAAyB,MAAM,6BAA6B;AACnE,SACEC,4BAA4B,QACvB,aAAa;AACpB,SAASC,aAAa,QAAQ,0BAA0B;AACxD,OAAOC,0BAA0B,MAAM,8BAA8B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAEtE,eAAe,SAASC,eAAeA,CAAA,EAAG;EAAA,IAAAC,qBAAA,EAAAC,eAAA;EACxC,MAAMC,QAAQ,GAAG3C,WAAW,CAAC,CAAC;EAC9B,MAAM4C,QAAQ,GAAG7C,WAAW,CAAC,CAAC;EAC9B,MAAM;IACJ8C,QAAQ;IACRC,KAAK,EAAE;MACLC,SAAS;MACTC,gBAAgB;MAChBC,eAAe;MACfC,eAAe;MACfC,YAAY;MACZC,MAAM;MACNC,MAAM;MACNC,UAAU;MACVC,mBAAmB;MACnBC,MAAM,EAAEC,aAAa;MACrBC,UAAU;MACVC;IACF;EACF,CAAC,GAAGvD,2BAA2B,CAAC,CAAC;EACjC,MAAMwD,IAAI,GAAGtE,MAAM,CAAC,CAAC;EACrB,MAAMuE,4BAA4B,GAAGvE,MAAM,CAAC,CAAC;EAC7C,MAAMwE,sBAAsB,GAAGxE,MAAM,CAACyE,MAAM,CAACC,UAAU,CAAC;EAExD,MAAMC,6BAA6B,GAAG1E,WAAW,CAAC,MAAM;IACtDsE,4BAA4B,CAACK,OAAO,CAACC,UAAU,CAAC,CAAC;EACnD,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,8BAA8B,GAAG7E,WAAW,CAAC,MAAM;IACvDsE,4BAA4B,CAACK,OAAO,CAACG,WAAW,CAAC,CAAC;EACpD,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,+BAA+B,GAAGzC,cAAc,CAAC,iCAAiC,EAAE,KAAK,CAAC;EAChG,MAAM0C,yBAAyB,GAAG1C,cAAc,CAAC,2BAA2B,EAAE,KAAK,CAAC;EAEpF,MAAM,CAAC2C,aAAa,EAAEC,gBAAgB,CAAC,GAAGpF,QAAQ,CAAC,EAAE,CAAC;EACtD,MAAM,CAACqF,gCAAgC,EAAEC,mCAAmC,CAAC,GAAGtF,QAAQ,CAAC,KAAK,CAAC;EAC/F,MAAM,CAACuF,+BAA+B,EAAEC,kCAAkC,CAAC,GAAGxF,QAAQ,CAAC,KAAK,CAAC;EAC7F,MAAM,CAACyF,aAAa,EAAEC,gBAAgB,CAAC,GAAG1F,QAAQ,EAAAoD,qBAAA,IAAAC,eAAA,GAACC,QAAQ,CAACG,KAAK,cAAAJ,eAAA,uBAAdA,eAAA,CAAgBsC,gBAAgB,cAAAvC,qBAAA,cAAAA,qBAAA,GAAI,CAAC,CAAC;EACzF,MAAM,CAACwC,WAAW,EAAEC,cAAc,CAAC,GAAG7F,QAAQ,CAAC,CAAC,CAAC,CAAC;EAClD,MAAM,CAAC8F,WAAW,EAAEC,cAAc,CAAC,GAAG/F,QAAQ,CAAC,KAAK,CAAC;EACrD,MAAM,CAACgG,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGjG,QAAQ,CAAC,KAAK,CAAC;EAC/D,MAAM,CAACkG,aAAa,EAAEC,gBAAgB,CAAC,GAAGnG,QAAQ,CAAC,KAAK,CAAC;EACzD,MAAM,CAACoG,mBAAmB,EAAEC,sBAAsB,CAAC,GAAGrG,QAAQ,CAAC,KAAK,CAAC;EACrE,MAAM,CAACsG,SAAS,EAAEC,YAAY,CAAC,GAAGvG,QAAQ,CAAC,EAAE,CAAC;EAC9C,MAAM,CAACwG,aAAa,EAAEC,gBAAgB,CAAC,GAAGzG,QAAQ,CAAC,EAAE,CAAC;EACtD,MAAM,CAAC0G,eAAe,EAAEC,kBAAkB,CAAC,GAAG3G,QAAQ,CAAC,KAAK,CAAC;EAC7D,MAAM4G,WAAW,GAAG7C,MAAM,KAAK,KAAK;EACpC,MAAM,CAAC8C,uBAAuB,EAAEC,0BAA0B,CAAC,GAAG9G,QAAQ,CAAC,EAAE,CAAC;EAC1E,MAAM,CAAC+G,QAAQ,EAAEC,WAAW,CAAC,GAAGhH,QAAQ,CAAC,IAAI,CAAC;EAC9C,MAAMiH,gBAAgB,GAAG,CAAAhD,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAER,KAAK,MAAK,OAAO;EACtD,MAAMyD,oBAAoB,GAAGD,gBAAgB,GAAG,qBAAqB,GAAG,wBAAwB;EAChG,MAAME,qBAAqB,GAAG,CAAC,CAAC9C,UAAU,IAAI,CAAC,CAACC,YAAY;EAC5D,MAAM8C,KAAK,GAAG,IAAIC,eAAe,CAAC/D,QAAQ,CAACgE,MAAM,CAAC;EAClD,MAAMnD,MAAM,GAAGC,aAAa,IAAIgD,KAAK,CAAC/G,GAAG,CAAC,QAAQ,CAAC;EACnD,MAAMkH,QAAQ,GAAG,CAAAvD,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEwD,EAAE,KAAIJ,KAAK,CAAC/G,GAAG,CAAC,QAAQ,CAAC;EAElD,MAAMoH,MAAM,GAAGC,MAAM,CAACC,IAAI,CAAC/B,WAAW,CAAC,CAACgC,MAAM,CAAC,CAACC,GAAG,EAAEC,KAAK,KAAK;IAC7D,MAAMC,UAAU,GAAGnC,WAAW,CAACkC,KAAK,CAAC;IACrCD,GAAG,CAACC,KAAK,CAAC,GAAG;MACXE,OAAO,EAAED,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEC,OAAO;MAC5BC,OAAO,EAAEF,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEE,OAAO;MAC5BC,cAAc,EAAEH,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEG,cAAc;MAC1CC,WAAW,EAAEJ,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEI,WAAW;MACpCC,gBAAgB,EAAE,CAAAL,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEK,gBAAgB,MAAIL,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEM,eAAe;MAC7EC,WAAW,EAAE,CAAAP,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEO,WAAW,MAAIP,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEQ,4BAA4B;MAChFC,iBAAiB,EAAET,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAES,iBAAiB;MAChDC,WAAW,EAAEV,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEU,WAAW;MACpCC,UAAU,EAAEX,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEW,UAAU;MAClCC,WAAW,EAAEZ,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEY;IAC3B,CAAC;IACD,OAAOd,GAAG;EACZ,CAAC,EAAE,CAAC,CAAC,CAAC;EACN,MAAMe,iBAAiB,GAAGA,CAACC,aAAa,EAAEC,SAAS,KAAK;IACtDjD,cAAc,CAAEkD,eAAe,IAAK;MAClC,MAAMC,aAAa,GAAGD,eAAe,CAACF,aAAa,CAAC;MACpD,MAAMI,aAAa,GAAAC,aAAA,CAAAA,aAAA,KAAQF,aAAa,GAAKF,SAAS,CAAE;MAExD,IAAI3I,OAAO,CAAC8I,aAAa,EAAED,aAAa,CAAC,EAAE;QACzC,OAAOD,eAAe;MACxB;MAEA,OAAAG,aAAA,CAAAA,aAAA,KACKH,eAAe;QAClB,CAACF,aAAa,GAAGI;MAAa;IAElC,CAAC,CAAC;EACJ,CAAC;EAED,MAAME,gBAAgB,GAAIC,gBAAgB,IAAK;IAC7C,IAAG,CAAChJ,OAAO,CAACgJ,gBAAgB,CAAC,EAAE;MAC7B,MAAMC,UAAU,GAAGhI,wBAAwB,CAAC+H,gBAAgB,CAAC;MAC7DA,gBAAgB,CAACE,OAAO,CAAC,CAACC,SAAS,EAAEzB,KAAK,KAAK;QAC7Cc,iBAAiB,CAACd,KAAK,EAAEuB,UAAU,CAACvB,KAAK,CAAC,CAAC;MAC7C,CAAC,CAAC;IACJ;EACF,CAAC;EAED,MAAM;IAAE0B;EAAU,CAAC,GAAG7H,iBAAiB,CAACwH,gBAAgB,CAAC;EAEzD,MAAMM,4BAA4B,GAAGA,CAACC,SAAS,EAAEC,SAAS,KAAK;IAC7DvE,gBAAgB,CAACwE,SAAS,IACxBA,SAAS,CAACC,GAAG,CAAC7B,OAAO,IACnBA,OAAO,CAAC0B,SAAS,KAAKA,SAAS,IAAI1B,OAAO,CAAC2B,SAAS,KAAKA,SAAS,GAAAT,aAAA,CAAAA,aAAA,KACzDlB,OAAO;MAAE8B,QAAQ,EAAE,CAAC9B,OAAO,CAAC8B;IAAQ,KACzC9B,OACN,CACF,CAAC;EACH,CAAC;EAED,MAAM+B,eAAe,GAAGC,IAAA,IAAuB;IAAA,IAAAC,qBAAA;IAAA,IAAtB;MAAEC;IAAc,CAAC,GAAAF,IAAA;IACxC,MAAMG,yBAAyB,GAAGzG,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAE0G,IAAI,CAAEC,QAAQ;MAAA,IAAAC,iBAAA;MAAA,OAAK,CAAAD,QAAQ,aAARA,QAAQ,gBAAAC,iBAAA,GAARD,QAAQ,CAAErC,OAAO,cAAAsC,iBAAA,uBAAjBA,iBAAA,CAAmB9C,EAAE,MAAK0C,aAAa;IAAA,EAAC;IACxG,OAAOC,yBAAyB,aAAzBA,yBAAyB,gBAAAF,qBAAA,GAAzBE,yBAAyB,CAAEnC,OAAO,cAAAiC,qBAAA,uBAAlCA,qBAAA,CAAoCM,IAAI;EACjD,CAAC;EAED,MAAMC,0BAA0B,GAAGA,CAAA,KAAM;IACvC,OAAO,CAAA7G,gBAAgB,aAAhBA,gBAAgB,uBAAhBA,gBAAgB,CAAE8G,OAAO,CAACC,OAAO,IACtCA,OAAO,CAACC,QAAQ,CAACd,GAAG,CAACK,aAAa,IAAI;MACpC,MAAMU,WAAW,GAAGb,eAAe,CAAC;QAAEG;MAAc,CAAC,CAAC;MACtD,OAAO;QACLR,SAAS,EAAEgB,OAAO,CAAClD,EAAE;QACrBmC,SAAS,EAAEO,aAAa;QACxBU,WAAW;QACXd,QAAQ,EAAEY,OAAO,CAACC,QAAQ,CAACE,MAAM,KAAK;MACxC,CAAC;IACH,CAAC,CACH,CAAC,KAAI,EAAE;EACT,CAAC;EAED9K,SAAS,CAAC,MAAM;IACd,MAAM+K,YAAY,GAAGN,0BAA0B,CAAC,CAAC;IACjDpF,gBAAgB,CAAC0F,YAAY,CAAC;EAChC,CAAC,EAAE,CAACnH,gBAAgB,CAAC,CAAC;EAEtB5D,SAAS,CAAC,MAAM;IACd,IAAI,CAACyJ,SAAS,IAAIvE,+BAA+B,EAAE;MACjD;MACA,MAAM8F,mBAAmB,GAAGpH,gBAAgB,aAAhBA,gBAAgB,uBAAhBA,gBAAgB,CAAErD,IAAI,CAAEoK,OAAO,IAAKvJ,iBAAiB,CAACuJ,OAAO,CAAC,CAAC;MAC3F,IAAIK,mBAAmB,EAAE;QACvBxI,aAAa,CAACsB,eAAe,CAAC,CAACmH,IAAI,CAAEC,QAAQ,IAAK;UAChDnE,0BAA0B,CAACmE,QAAQ,CAAC;QACtC,CAAC,CAAC;MACJ;IACF;EACF,CAAC,EAAE,CAACzB,SAAS,CAAC,CAAC;EAEfzJ,SAAS,CAAC,MAAM;IACd,MAAMmL,iCAAiC,GAAGA,CAAA,KAAM;MAC9C,MAAMC,kBAAkB,GAAGzG,MAAM,CAACC,UAAU;MAC5C,MAAMyG,mBAAmB,GAAG3G,sBAAsB,CAACI,OAAO;MAE1D,IAAIsG,kBAAkB,IAAI,IAAI,EAAE;QAC9B9E,sBAAsB,CAAC,IAAI,CAAC;MAC9B,CAAC,MAAM,IAAI+E,mBAAmB,IAAI,IAAI,EAAE;QACtC/E,sBAAsB,CAAC,KAAK,CAAC;MAC/B;MAEA5B,sBAAsB,CAACI,OAAO,GAAGsG,kBAAkB;IACrD,CAAC;IAEDD,iCAAiC,CAAC,CAAC;IACnCxG,MAAM,CAAC2G,gBAAgB,CAAC,QAAQ,EAAEH,iCAAiC,CAAC;IACpE,OAAO,MAAMxG,MAAM,CAAC4G,mBAAmB,CAAC,QAAQ,EAAEJ,iCAAiC,CAAC;EACtF,CAAC,EAAE,EAAE,CAAC;EAGN,MAAMK,gBAAgB,GAAGA,CAAA,KAAM;IAC7BjG,mCAAmC,CAAC,IAAI,CAAC;EAC3C,CAAC;EAED,MAAMkG,4BAA4B,GAAGA,CAAA,KAAM;IACzClG,mCAAmC,CAAC,KAAK,CAAC;EAC5C,CAAC;EAED,MAAMmG,QAAQ,GAAGxL,MAAM,CAAC,IAAI,CAAC;EAC7BF,SAAS,CAAC,MAAM;IACd,IAAIsF,gCAAgC,EAAE;MACpCoG,QAAQ,CAAC5G,OAAO,CAAC6G,SAAS,CAAC,CAAC;IAC9B,CAAC,MAAM;MACLD,QAAQ,CAAC5G,OAAO,CAAC8G,UAAU,CAAC,CAAC;IAC/B;EACF,CAAC,EAAE,CAACtG,gCAAgC,CAAC,CAAC;EAEtCtF,SAAS,CAAC,MAAM;IACd,IAAI,CAACyJ,SAAS,IAAIjE,+BAA+B,EAAE;MACjDX,6BAA6B,CAAC,CAAC;IACjC;EACF,CAAC,EAAE,CAAC4E,SAAS,CAAC,CAAC;EAEf,MAAMoC,mBAAmB,GAAI9D,KAAK,IAAK;IACrCpC,gBAAgB,CAACoC,KAAK,CAAC;EACzB,CAAC;EAED/H,SAAS,CAAC,MAAM;IACdqC,qBAAqB,CAAC4B,MAAM,CAACwD,EAAE,CAAC,CAACwD,IAAI,CAAEa,MAAM,IAAK;MAChDtF,YAAY,CAACsF,MAAM,CAAC;IACtB,CAAC,CAAC;EACJ,CAAC,EAAE,EAAE,CAAC;EAEN9L,SAAS,CAAC,MAAM;IACd,IAAIoE,MAAM,IAAIe,yBAAyB,EAAE;MACvC7C,kBAAkB,CAAC8B,MAAM,CAAC,CAAC6G,IAAI,CAAEa,MAAM,IAAK;QAC1CpF,gBAAgB,CAACoF,MAAM,CAAC;MAC1B,CAAC,CAAC;IACJ;EACF,CAAC,EAAE,EAAE,CAAC;EAEN9L,SAAS,CAAC,MAAM;IACd,MAAM+L,aAAa,GAAG,MAAAA,CAAA,KAAY;MAChC,IAAI3H,MAAM,EAAE;QACV,IAAI;UACF,MAAM;YAAE4H,IAAI,EAAE;cAAEA,IAAI,EAAEhF;YAAS;UAAE,CAAC,GAAG,MAAM5E,OAAO,CAAC6J,UAAU,CAAC,MAAM,EAAE7H,MAAM,CAAC;UAC7E6C,WAAW,CAACD,QAAQ,CAAC;QACvB,CAAC,CAAC,OAAOkF,KAAK,EAAE;UACdC,OAAO,CAACD,KAAK,CAAC,2BAA2B,EAAEA,KAAK,CAAC;QACnD;MACF;IACF,CAAC;IACDH,aAAa,CAAC,CAAC;EACjB,CAAC,EAAE,CAAC3H,MAAM,CAAC,CAAC;EAEZpE,SAAS,CAAC,MAAM;IACd,IAAI,CAACK,OAAO,CAACsD,SAAS,CAAC,IAAI,CAACgD,eAAe,KAAK,CAACtG,OAAO,CAACkG,SAAS,CAAC,IAAI,CAAClG,OAAO,CAACoG,aAAa,CAAC,CAAC,EAAE;MAC/F,MAAM2F,gBAAgB,GAAGzI,SAAS,CAACmG,GAAG,CAAEQ,QAAQ,IAAK;QACnD,IAAG,CAACA,QAAQ,CAAC+B,mBAAmB,EAAE;UAChC,OAAAlD,aAAA,CAAAA,aAAA,KACGmB,QAAQ;YACX+B,mBAAmB,EAAE,CAAC,GAAG9F,SAAS,EAAE,GAAGE,aAAa,CAAC,CAACqD,GAAG,CAAEwC,GAAG,KAAM;cAAEC,QAAQ,EAAE,KAAK;cAAEC,QAAQ,EAAEF;YAAI,CAAC,CAAC;UAAC;QAE1G,CAAC,MAAM;UACL,OAAOhC,QAAQ;QACjB;MACF,CAAC,CAAC;MAEF7G,QAAQ,CAAC1C,OAAO,CAAC;QACf4C,SAAS,EAAEyI;MACb,CAAC,CAAC,CAAC;MAEHxF,kBAAkB,CAAC,IAAI,CAAC;IAC1B;IAEA,MAAM6F,yBAAyB,GAAG7I,gBAAgB,aAAhBA,gBAAgB,uBAAhBA,gBAAgB,CAAErD,IAAI,CAAEoK,OAAO,IAAK;MAAA,IAAA+B,iBAAA;MACpE,OAAO,CAAA/B,OAAO,aAAPA,OAAO,gBAAA+B,iBAAA,GAAP/B,OAAO,CAAEC,QAAQ,cAAA8B,iBAAA,uBAAjBA,iBAAA,CAAmB5B,MAAM,IAAG,CAAC;IACtC,CAAC,CAAC;IACFrF,kCAAkC,CAACgH,yBAAyB,CAAC;EAC/D,CAAC,EAAE,CAAC9I,SAAS,CAAC,CAAC;EAEf,MAAMgJ,WAAW,GAAGA,CAAA,KAAMhJ,SAAS,IAAIA,SAAS,CAAC+B,aAAa,CAAC;EAE/D,MAAMkH,kBAAkB,GAAIC,KAAK,IAAK;IACpC,MAAM;MAAErM;IAAO,CAAC,GAAGqM,KAAK;IACxB,MAAMT,gBAAgB,GAAGzI,SAAS;IAClCyI,gBAAgB,CAAC1G,aAAa,CAAC,GAAAyD,aAAA,KAC1B3I,MAAM,CACV;;IAED;IACA;IACAsM,UAAU,CAAC,MACTrJ,QAAQ,CAAC1C,OAAO,CAAC;MACf4C,SAAS,EAAE,CAAC,GAAGyI,gBAAgB;IACjC,CAAC,CAAC,CAAC,EAAE,CACP,CAAC;EACH,CAAC;EAED,MAAMW,oBAAoB,GAAGpF,MAAM,CAACqF,OAAO,CAACtF,MAAM,CAAC,CAACuF,SAAS,CAACC,KAAA;IAAA,IAAC,CAACC,MAAM,EAAE3M,MAAM,CAAC,GAAA0M,KAAA;IAAA,OAAKvF,MAAM,CAACnH,MAAM,CAACA,MAAM,CAAC,CAACD,IAAI,CAAC6M,OAAO,CAAC;EAAA,EAAC;EAExH,MAAMC,WAAW,GAAGA,CAAA,KAAM;IACxB,IAAItF,KAAK,GAAGrC,aAAa;IACzB,IAAI,CAACnF,IAAI,CAACC,MAAM,CAACkH,MAAM,CAACK,KAAK,CAAC,CAAC,EAAEqF,OAAO,CAAC,EAAE;MACzCrF,KAAK,GAAGgF,oBAAoB;MAC5BpH,gBAAgB,CAACoC,KAAK,CAAC;IACzB;IAEAuF,QAAQ,CAACvF,KAAK,CAAC;EACjB,CAAC;EAED,MAAMwF,WAAW,GAAGA,CAAA,KAAM;IACxB,IAAI9L,aAAa,CAACiG,MAAM,CAAC,EAAE;MACzB,OAAOlE,QAAQ,YAAAgK,MAAA,CAAYpG,qBAAqB,GAAG,QAAQ,GAAG,iBAAiB,CAAE,CAAC;IACpF;IAEAiG,WAAW,CAAC,CAAC;IACbrH,cAAc,CAAC,IAAI,CAAC;EACtB,CAAC;EAED,MAAMsH,QAAQ,GAAIvF,KAAK,IAAK;IAC1B+E,UAAU,CAAC,MAAM;MACf,MAAMW,aAAa,GAAG,CACpB;QAAEC,GAAG,EAAE,aAAa;QAAEC,SAAS,EAAE,aAAa;QAAEC,UAAU,EAAEA,CAAA,KAAMpB,QAAQ,CAACqB,cAAc,CAAC,sBAAsB;MAAE,CAAC,EACnH;QAAEH,GAAG,EAAE,aAAa;QAAEC,SAAS,EAAE,aAAa;QAAEC,UAAU,EAAEA,CAAA,KAAMpB,QAAQ,CAACqB,cAAc,CAAC,aAAa;MAAE,CAAC,EAC1G;QAAEH,GAAG,EAAE,SAAS;QAAEC,SAAS,EAAE,SAAS;QAAEC,UAAU,EAAEA,CAAA;UAAA,IAAAE,qBAAA;UAAA,QAAAA,qBAAA,GAAMtB,QAAQ,CAACqB,cAAc,CAAC,mBAAmB,CAAC,cAAAC,qBAAA,gBAAAA,qBAAA,GAA5CA,qBAAA,CAA8CC,aAAa,cAAAD,qBAAA,uBAA3DA,qBAAA,CAA6DC,aAAa;QAAA;MAAC,CAAC,EACtI;QAAEL,GAAG,EAAE,kBAAkB;QAAEC,SAAS,EAAE,kCAAkC;QAAEC,UAAU,EAAEA,CAAA,KAAMpB,QAAQ,CAACqB,cAAc,CAAC,wCAAwC;MAAE,CAAC,EAC/J;QAAEH,GAAG,EAAE,aAAa;QAAEC,SAAS,EAAE,6BAA6B;QAAEC,UAAU,EAAEA,CAAA,KAAMpB,QAAQ,CAACqB,cAAc,CAAC,qCAAqC;MAAE,CAAC,EAClJ;QAAEH,GAAG,EAAE,mBAAmB;QAAEC,SAAS,EAAE,6BAA6B;QAAEC,UAAU,EAAEA,CAAA,KAAMpB,QAAQ,CAACqB,cAAc,CAAC,qCAAqC;MAAE,CAAC,EACxJ;QAAEH,GAAG,EAAE,YAAY;QAAEC,SAAS,EAAE,4BAA4B;QAAEC,UAAU,EAAEA,CAAA,KAAMpB,QAAQ,CAACqB,cAAc,CAAC,kCAAkC;MAAE,CAAC,EAC7I;QAAEH,GAAG,EAAE,gBAAgB;QAAEC,SAAS,EAAE,eAAe;QAAEC,UAAU,EAAEA,CAAA;UAAA,IAAAI,sBAAA;UAAA,QAAAA,sBAAA,GAAMxB,QAAQ,CAACqB,cAAc,CAAC,gBAAgB,CAAC,cAAAG,sBAAA,gBAAAA,sBAAA,GAAzCA,sBAAA,CAA2CD,aAAa,cAAAC,sBAAA,uBAAxDA,sBAAA,CAA0DD,aAAa;QAAA;MAAC,CAAC,EAChJ;QAAEL,GAAG,EAAE,aAAa;QAAEC,SAAS,EAAE,aAAa;QAAEC,UAAU,EAAEA,CAAA;UAAA,IAAAK,sBAAA;UAAA,QAAAA,sBAAA,GAAMzB,QAAQ,CAACqB,cAAc,CAAC,aAAa,CAAC,cAAAI,sBAAA,gBAAAA,sBAAA,GAAtCA,sBAAA,CAAwCF,aAAa,cAAAE,sBAAA,uBAArDA,sBAAA,CAAuDF,aAAa;QAAA;MAAC,CAAC,CACzI;MAED,MAAMG,QAAQ,GAAGxG,MAAM,CAACK,KAAK,CAAC;MAC9B,KAAK,MAAM;QAAE2F,GAAG;QAAEC,SAAS;QAAEC;MAAW,CAAC,IAAIH,aAAa,EAAE;QAC1D,IAAIS,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAGR,GAAG,CAAC,EAAE;UAAA,IAAAS,aAAA;UACnB,CAAAA,aAAA,GAAA3J,IAAI,CAACM,OAAO,cAAAqJ,aAAA,gBAAAA,aAAA,GAAZA,aAAA,CAAcC,QAAQ,cAAAD,aAAA,eAAtBA,aAAA,CAAwBE,eAAe,CAACV,SAAS,EAAE,IAAI,CAAC;UAExD,MAAMW,OAAO,GAAGV,UAAU,CAAC,CAAC;UAC5B,IAAIU,OAAO,EAAEA,OAAO,CAACC,KAAK,CAAC,CAAC;UAE5B;QACF;MACF;IACF,CAAC,EAAE,GAAG,CAAC;EACT,CAAC;EAED,MAAMC,sBAAsB,GAAGA,CAACzG,KAAK,EAAE4C,OAAO,KAAK;IACjD,MAAM;MAAE8D;IAAS,CAAC,GAAG9K,SAAS,CAAC+B,aAAa,CAAC;IAE7C/B,SAAS,CAAC+B,aAAa,CAAC,GAAAyD,aAAA,CAAAA,aAAA,KACnBxF,SAAS,CAAC+B,aAAa,CAAC;MAC3B+I,QAAQ,EAAEA,QAAQ,CAACC,MAAM,CAAEC,CAAC,IAAKA,CAAC,CAAClH,EAAE,KAAKkD,OAAO,CAAClD,EAAE;IAAC,EACtD;IACD,IAAIpH,OAAO,CAACsD,SAAS,CAAC+B,aAAa,CAAC,CAAC+I,QAAQ,CAAC,EAAE;MAC9C9K,SAAS,CAAC+B,aAAa,CAAC,GAAG,IAAI;IACjC;IAEA/B,SAAS,CAACoE,KAAK,CAAC,GAAAoB,aAAA,CAAAA,aAAA,KACXxF,SAAS,CAACoE,KAAK,CAAC;MACnB0G,QAAQ,EAAE,CAAC,GAAG9K,SAAS,CAACoE,KAAK,CAAC,CAAC0G,QAAQ,EAAE9D,OAAO;IAAC,EAClD;IAED,MAAM5B,SAAS,GAAGrH,kBAAkB,CAACgG,MAAM,EAAEhC,aAAa,CAAC;IAC3DI,cAAc,CAACiD,SAAS,CAAC;IAEzBtF,QAAQ,CAAC1C,OAAO,CAAC;MACf4C,SAAS,EAAEjD,OAAO,CAACiD,SAAS;IAC9B,CAAC,CAAC,CAAC;IAEH,MAAMiL,QAAQ,GAAGlJ,aAAa,GAAGqC,KAAK,GAAGA,KAAK,GAAG,CAAC,GAAGA,KAAK;IAC1DpC,gBAAgB,CAACiJ,QAAQ,CAAC;EAC5B,CAAC;EAED,MAAMC,iBAAiB,GAAIlE,OAAO,IAAK;IACrC,MAAML,QAAQ,GAAG3G,SAAS,CAAC+B,aAAa,CAAC;IACzC4E,QAAQ,CAACmE,QAAQ,GAAGnE,QAAQ,CAACmE,QAAQ,CAACC,MAAM,CAAEC,CAAC,IAAKA,CAAC,CAAClH,EAAE,KAAKkD,OAAO,CAAClD,EAAE,CAAC;IAExE,MAAMqH,WAAW,GAAA3F,aAAA,CAAAA,aAAA,KACZmB,QAAQ;MACXmE,QAAQ,EAAE,CAAC9D,OAAO,CAAC;MACnBvC,WAAW,EAAE;IAAE,EAChB;IAED,MAAM2G,YAAY,GAAG,CAAC,GAAGpL,SAAS,EAAEmL,WAAW,CAAC;IAEhDrL,QAAQ,CAAC1C,OAAO,CAAC;MACf4C,SAAS,EAAEoL;IACb,CAAC,CAAC,CAAC;IAEHpJ,gBAAgB,CAACoJ,YAAY,CAACjE,MAAM,GAAG,CAAC,CAAC;EAC3C,CAAC;EAED,MAAMkE,aAAa,GAAGA,CAACC,WAAW,EAAEtF,SAAS,EAAEC,SAAS,KAAK;IAC3D,MAAMU,QAAQ,GAAG3G,SAAS,CAAC+B,aAAa,CAAC;IACzC,MAAMoJ,WAAW,GAAG9M,qBAAqB,CAAC;MAAEsI,QAAQ;MAAE2E,WAAW;MAAEtF,SAAS;MAAEC;IAAU,CAAC,CAAC;IAE1FjG,SAAS,CAAC+B,aAAa,CAAC,GAAGoJ,WAAW,GAAA3F,aAAA,KACjC2F,WAAW,IACZ,IAAI;IAER,MAAMC,YAAY,GAAGrO,OAAO,CAACiD,SAAS,CAAC;IACvC,MAAMuL,mBAAmB,GAAGH,YAAY,CAACrE,OAAO,CAAEyE,CAAC,IAAKA,CAAC,CAACV,QAAQ,CAAC;IACnE,MAAMW,mBAAmB,GAAG3O,cAAc,CAACmD,gBAAgB,EAAEsL,mBAAmB,EAAE,IAAI,CAAC;IAEvFzL,QAAQ,CAAC1C,OAAO,CAAC;MACf4C,SAAS,EAAE,CAAC,GAAGoL,YAAY,CAAC;MAC5BnL,gBAAgB,EAAE,CAAC,GAAGwL,mBAAmB;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAI,CAACzL,SAAS,CAAC+B,aAAa,CAAC,EAAE;MAC7B,MAAMqD,SAAS,GAAGrH,kBAAkB,CAACgG,MAAM,EAAEhC,aAAa,CAAC;MAC3DI,cAAc,CAACiD,SAAS,CAAC;MACzBpD,gBAAgB,CAAC,CAAC,CAAC;IACrB;EACF,CAAC;EAED,MAAM0J,iBAAiB,GAAIC,WAAW,IAAK;IACzC3L,SAAS,CAAC+B,aAAa,CAAC,GAAAyD,aAAA,CAAAA,aAAA,KACnBxF,SAAS,CAAC+B,aAAa,CAAC;MAC3B4J;IAAW,EACZ;IAED7L,QAAQ,CAAC1C,OAAO,CAAC;MACf4C;IACF,CAAC,CAAC,CAAC;EACL,CAAC;EAED,MAAM4L,YAAY,GAAGA,CAAA,KAAM;IACzB,IAAIrI,gBAAgB,EAAE;MACpB,MAAMsI,WAAW,GAAGlP,GAAG,CAAC4D,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC;MACpD/B,SAAS,CAACsN,uBAAuB,CAACD,WAAW,CAAC;IAChD,CAAC,MAAM,IAAIrN,SAAS,CAACuN,cAAc,EAAE;MACnCvN,SAAS,CAACuN,cAAc,CAACvK,yBAAyB,GAAG;QAAEb,UAAU;QAAEH;MAAoB,CAAC,GAAG;QAAEA;MAAoB,CAAC,CAAC;IACrH,CAAC,MAAM;MACLX,QAAQ,CAAC,CAAC,CAAC,CAAC;IACd;EACF,CAAC;EAED,MAAMmM,sBAAsB,GAAGA,CAAA,KAAMxN,SAAS,CAACyN,wBAAwB,CAAC,CAAC;EAEzE,MAAMC,eAAe,GAAG3N,kBAAkB,CAAC,CAAC;EAC5C,MAAM4N,uBAAuB,GAAG,MAAAA,CAAA,KAAY;IAC1C5J,mBAAmB,CAAC,IAAI,CAAC;IACzB,IAAIC,aAAa,EAAE;IACnB,IAAI,CAAC1E,aAAa,CAACiG,MAAM,CAAC,EAAE;MAC1B2F,WAAW,CAAC,CAAC;MACb;IACF;IAEAjH,gBAAgB,CAAC,IAAI,CAAC;IACtB,IAAI;MACF,MAAMyJ,eAAe,CAAC;QAAEE,KAAK,EAAE;MAAK,CAAC,CAAC;MACtC,MAAM;QAAEC;MAAoB,CAAC,GAAG7N,SAAS;MACzC6N,mBAAmB,IAAIA,mBAAmB,CAAC,CAAC;MAC5C7N,SAAS,CAAC8N,MAAM,CAACC,OAAO,CAAC,mCAAmC,CAAC;IAC/D,CAAC,SAAS;MACR9J,gBAAgB,CAAC,KAAK,CAAC;IACzB;EACF,CAAC;EAED,MAAM+J,uBAAuB,GAAGA,CAAA,KAAM;IACpC7J,sBAAsB,CAAE8J,uBAAuB,IAAK,CAACA,uBAAuB,CAAC;EAC/E,CAAC;EAED,IAAI3G,SAAS,EAAE,oBAAO1G,IAAA,CAACd,OAAO;IAACoO,MAAM;EAAA,CAAE,CAAC;EAExC,MAAMC,gBAAgB,GAAGjP,mBAAmB,CAACsC,SAAS,EAAEgJ,WAAW,CAAC,CAAC,CAAC;EACtE,MAAM4D,yBAAyB,GAAG5M,SAAS,CAACmG,GAAG,CAAC,CAACN,SAAS,EAAEzB,KAAK,KAAKA,KAAK,CAAC,CAAC2G,MAAM,CAAE3G,KAAK,IAAKA,KAAK,KAAKrC,aAAa,CAAC;EACvH,MAAM8K,WAAW,GAAG7M,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAE+G,OAAO,CAAEyE,CAAC,IAAKA,CAAC,CAACV,QAAQ,CAAC;EACzD,MAAMgC,YAAY,GAAGlP,oBAAoB,CAACmG,MAAM,CAAC;EACjD,MAAMgJ,eAAe,GAAG/D,WAAW,CAAC,CAAC;EAErC,MAAMgE,sBAAsB,GAAGpO,UAAU,CAAC;IACxC,cAAc,EAAE;EAClB,CAAC,CAAC;EAEF,MAAMqO,sBAAsB,GAAGrO,UAAU,CAAC;IACxC,cAAc,EAAE;EAClB,CAAC,CAAC;EAEF,MAAMsO,qBAAqB,GAAGA,CAAA,KAAM;IAClC,MAAMC,wBAAwB,GAAG1L,aAAa,CAACsJ,MAAM,CAAEzG,OAAO,IAAK;MAAE,OAAOA,OAAO,CAAC8B,QAAQ;IAAC,CAAC,CAAC;IAC/F,MAAMgH,2BAA2B,GAAG3L,aAAa,CAACsJ,MAAM,CAAEzG,OAAO,IAAK;MAAE,OAAO,CAACA,OAAO,CAAC8B,QAAQ;IAAC,CAAC,CAAC;IACnG,MAAMqC,gBAAgB,GAAGzK,kCAAkC,CAACgC,SAAS,EAAEmN,wBAAwB,CAAC;IAEhG,MAAMxH,UAAU,GAAGhI,wBAAwB,CAAC8K,gBAAgB,CAAC;IAC7DtG,cAAc,CAACwD,UAAU,CAAC;IAE1B7F,QAAQ,CAAC1C,OAAO,CAAC;MACf4C,SAAS,EAAEyI;IACb,CAAC,CAAC,CAAC;IAEH2E,2BAA2B,CAACxH,OAAO,CAAEtB,OAAO,IAAK;MAC/C9F,SAAS,CAAC6O,iBAAiB,CAAC;QAC1BvJ,EAAE,EAAEQ,OAAO,CAAC0B,SAAS;QACrB1B,OAAO,EAAEA,OAAO,CAAC2B;MACnB,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF5E,8BAA8B,CAAC,CAAC;EAClC,CAAC;EAED,oBACEjC,IAAA,CAAClB,uBAAuB;IAAAoP,QAAA,eACtBhO,KAAA;MAAKiO,SAAS,EAAC,OAAO;MAAAD,QAAA,gBACpBhO,KAAA,CAAChC,UAAU;QAACkQ,MAAM,EAAEhK,oBAAqB;QAAA8J,QAAA,GACtCtO,4BAA4B,eAC7BI,IAAA,SAAK,CAAC,eACNA,IAAA,CAAClC,MAAM;UACLuQ,IAAI,EAAC,QAAQ;UACbC,OAAO,EAAE7F,gBAAiB;UAC1B8F,SAAS,EAAGC,KAAK,IAAK3O,aAAa,CAAC2O,KAAK,EAAE/F,gBAAgB,CAAE;UAC7D,iBAAelG,gCAAiC;UAChDkM,KAAK,EAAC,2CAA2C;UACjDC,IAAI;QAAA,CACL,CAAC;MAAA,CACQ,CAAC,eAEb1O,IAAA,CAACF,0BAA0B;QAAC6O,GAAG,EAAEhG,QAAS;QAACiG,OAAO,EAAElG;MAA6B,CAAE,CAAC,EAEnFjG,+BAA+B,iBAC9BzC,IAAA,CAACL,yBAAyB;QACxBuC,WAAW,EAAED,8BAA+B;QAC5CyJ,QAAQ,EAAE7K,gBAAiB;QAC3BD,SAAS,EAAEA,SAAU;QACrBiO,QAAQ,EAAEnN,4BAA6B;QACvCuF,eAAe,EAAEA,eAAgB;QACjC6H,SAAS,EAAEhB,qBAAsB;QACjCiB,wBAAwB,EAAEpI,4BAA6B;QACvDtE,aAAa,EAAEA;MAAc,CAC9B,CACF,eACDnC,KAAA,CAAAE,SAAA;QAAA8N,QAAA,gBACElO,IAAA,CAACjB,UAAU;UACTiQ,WAAW,EAAExC,YAAa;UAC1ByC,cAAc,EAAEzE,WAAY;UAC5ByC,mBAAmB,EAAEF,uBAAwB;UAC7CmC,YAAY,EAAC,MAAM;UACnBC,kBAAkB,EAAE7R,OAAO,CAACsD,SAAS,CAAE;UACvCwO,iBAAiB,EAAE7R,GAAG,CAACyD,YAAY,EAAE,mBAAmB,CAAE;UAC1DvC,uBAAuB,EAAEA,uBAAuB,CAACmC,SAAS,CAAE;UAC5DuD,gBAAgB,EAAEA,gBAAiB;UACnCE,qBAAqB,EAAEA,qBAAsB;UAC7CgL,QAAQ,EAAEjM,aAAc;UACxBA,aAAa,EAAEA;QAAc,CAC9B,CAAC,EAGA,CAAC9F,OAAO,CAACmQ,WAAW,CAAC,gBACnBvN,KAAA;UAAKiO,SAAS,EAAC,uCAAuC;UAAAD,QAAA,GAEjDR,YAAY,KAAK1K,WAAW,IAAIE,gBAAgB,CAAC,gBAChDhD,KAAA;YAAKiO,SAAS,EAAC,kBAAkB;YAAAD,QAAA,gBAC/BlO,IAAA,CAACjC,IAAI;cAACuR,IAAI,EAAC,YAAY;cAACC,KAAK,EAAC,KAAK;cAACpB,SAAS,EAAC;YAAY,CAAE,CAAC,eAC7DnO,IAAA;cAAGmO,SAAS,EAAC,UAAU;cAAAD,QAAA,EAAER;YAAY,CAAI,CAAC;UAAA,CACvC,CAAC,GACJ,IAAI,eAEVxN,KAAA;YAAKiO,SAAS,2BAAA1D,MAAA,CAA2BoD,sBAAsB,CAAG;YAAAK,QAAA,gBAChElO,IAAA;cAAK0E,EAAE,EAAC,gBAAgB;cACtByJ,SAAS,kFAAA1D,MAAA,CACPnH,mBAAmB,GAAG,sCAAsC,GAAG,mBAAmB,CAAG;cAAA4K,QAAA,eACvFhO,KAAA;gBAAKiO,SAAS,EAAC,YAAY;gBAAAD,QAAA,gBACzBhO,KAAA;kBAAKiO,SAAS,EAAC,+BAA+B;kBAAAD,QAAA,gBAC5ClO,IAAA;oBAAAkO,QAAA,eACElO,IAAA;sBAAImO,SAAS,EAAC,yBAAyB;sBAAAD,QAAA,EAAC;oBAExC,CAAI;kBAAC,CACF,CAAC,eACNlO,IAAA;oBAAKmO,SAAS,EAAEP,sBAAuB;oBAAAM,QAAA,eACrClO,IAAA,CAACjC,IAAI;sBACHuR,IAAI,EAAC,cAAc;sBACnBE,SAAS,EAAElM,mBAAmB,GAAG,MAAM,GAAG,OAAQ;sBAClDmM,SAAS,EAAEnM,mBAAmB,GAAG,kBAAkB,GAAG,gBAAiB;sBACvE6K,SAAS,EAAC,SAAS;sBACnBG,OAAO,EAAEA,CAAA,KAAMlB,uBAAuB,CAAC;oBAAE,CAC1C;kBAAC,CACC,CAAC;gBAAA,CACH,CAAC,EACLxM,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAEmG,GAAG,CAAC,CAACQ,QAAQ,EAAEvC,KAAK,kBAC9BhF,IAAA;kBAAKmO,SAAS,EAAC,MAAM;kBAAAD,QAAA,eACnBlO,IAAA,CAAC7B,YAAY;oBACXoJ,QAAQ,EAAEA,QAAS;oBACnBvC,KAAK,EAAEA,KAAM;oBACbrC,aAAa,EAAEA,aAAc;oBAC7B2L,OAAO,EAAExF,mBAAoB;oBAC7BnE,MAAM,EAAEA,MAAM,CAACK,KAAK,CAAE;oBACtB1B,mBAAmB,EAAEA,mBAAoB;oBACzCQ,WAAW,EAAEA;kBAAY,CAC1B;gBAAC,oBAAA2G,MAAA,CATwCzF,KAAK,aAU5C,CACN,CAAC;cAAA,CACC;YAAC,CACH,CAAC,EAEJ,CAAC1H,OAAO,CAACC,GAAG,CAACoQ,eAAe,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC,gBAC5C3N,IAAA,CAAC5B,mBAAmB;cAClB0C,eAAe,EAAEA,eAAgB;cACjCC,eAAe,EAAEA,eAAgB;cACjCoD,gBAAgB,EAAEA,gBAAiB;cACnCyI,sBAAsB,EAAEA,sBAAuB;cAC/CrF,QAAQ,EAAEoG,eAAgB;cAC1B/M,SAAS,EAAEA,SAAU;cACrB2M,gBAAgB,EAAEA,gBAAiB;cACnCvI,KAAK,EAAErC,aAAc;cACrB+M,QAAQ,EAAE7F,kBAAmB;cAC7B8F,UAAU,EAAEnC,yBAA0B;cACtCvB,aAAa,EAAEA,aAAc;cAC7B2D,SAAS,EAAGC,OAAO,IAAK;gBAAEpO,IAAI,CAACM,OAAO,GAAG8N,OAAO;cAAE,CAAE;cACpD/D,iBAAiB,EAAEA,iBAAkB;cACrCL,sBAAsB,EAAEA,sBAAuB;cAC/Ca,iBAAiB,EAAEA,iBAAkB;cACrCrL,MAAM,EAAEA,MAAO;cACf8C,uBAAuB,EAAEA,uBAAwB;cACjD+B,iBAAiB,EAAEA,iBAAkB;cACrC1E,mBAAmB,EAAEA,mBAAoB;cACzCF,MAAM,EAAEA,MAAO;cACf+C,QAAQ,EAAEA,QAAS;cACnBQ,QAAQ,EAAEA;YAAS,CACpB,CAAC,GACA,IAAI;UAAA,CAEP,CAAC;QAAA,CACH,CAAC,gBAENzE,IAAA,CAAChB,kBAAkB;UACjBmF,gBAAgB,EAAEA,gBAAiB;UACnCyI,sBAAsB,EAAEA,sBAAuB;UAC/C0B,OAAO,EAAE9B;QAAa,CACvB,CACF,eAGHxM,IAAA,CAACjB,UAAU;UACTiQ,WAAW,EAAExC,YAAa;UAC1ByC,cAAc,EAAEzE,WAAY;UAC5ByC,mBAAmB,EAAEF,uBAAwB;UAC7CmC,YAAY,EAAC,MAAM;UACnBC,kBAAkB,EAAE7R,OAAO,CAACsD,SAAS,CAAE;UACvCwO,iBAAiB,EAAE7R,GAAG,CAACyD,YAAY,EAAE,mBAAmB,CAAE;UAC1DmD,gBAAgB,EAAEA,gBAAiB;UACnC1F,uBAAuB,EAAEA,uBAAuB,CAACmC,SAAS,CAAE;UAC5DyD,qBAAqB,EAAEA,qBAAsB;UAC7CgL,QAAQ,EAAEjM,aAAc;UACxBA,aAAa,EAAEA;QAAc,CAC9B,CAAC;MAAA,CACF,CAAC;IAAA,CACA;EAAC,CACiB,CAAC;AAE9B","ignoreList":[]}
@@ -153,7 +153,6 @@ export function ReferralBuilderForm(_ref2) {
153
153
  const isFunded = referralIsFunded(referral);
154
154
  const referralTitle = "Referral ".concat(index + 1, ": ").concat(service === null || service === void 0 ? void 0 : service.name).concat(isGrouped ? ', Grouped' : '').concat(isOON ? ', Off-Platform' : '').concat(isFunded ? ', Funded' : '');
155
155
  const crtb854ForwardingSuperset = useFeatureFlag('crtb854ForwardingSuperset', false);
156
- const featureFlagCMultiplelientNeeds = useFeatureFlag('crtb2130MultipleClientNeeds', false);
157
156
  const newLanguageDashboard = useFeatureFlag('crtb2182ClarifyReferralLanguage', false);
158
157
  const today = moment().startOf('day').unix();
159
158
 
@@ -278,7 +277,7 @@ export function ReferralBuilderForm(_ref2) {
278
277
  useEffect(() => {
279
278
  initializePaymentFormValues();
280
279
  }, [initializePaymentFormValues]);
281
- const showClientNeeds = featureFlagCMultiplelientNeeds && !isEmpty(clientNeeds);
280
+ const showClientNeeds = !isEmpty(clientNeeds);
282
281
  const validateOpenDate = date => {
283
282
  try {
284
283
  const openDate = new Date(parseInt(date) * 1000);
@@ -1 +1 @@
1
- {"version":3,"file":"ReferralBuilderForm.js","names":["React","useCallback","useEffect","useState","useMemo","PropTypes","Form","Field","FormSpy","get","isEmpty","isNil","uniqBy","upperFirst","DateField","TextField","SelectField","validateCostAmount","validateUnitAmount","InfoPanel","isRequired","feeSchedulePrograms","fspUtils","moment","coreApi","REFERRAL_PII_PHI_DESCRIPTION","AuthorizationSubform","ReferralProgramCard","FileUpload","isUnlistedReferral","programIsOffPlatform","referralIsOON","referralIsGrouped","shouldShowNetworkSelect","filterNetworks","referralIsFunded","fetchPrimaryWorkers","useDebounce","useFeatureFlag","cannotMoveToReferralReasons","ContactDocumentsSelector","useFind","ReferralClientNeedsField","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","validateBasicFields","values","showClientNeeds","showNetworkSelect","_values$client_need","errors","description","trim","client_need","length","network","validateOONFields","isOON","validateOpenDate","opened_date","primaryWorker","validatePaymentAuth","_ref","_paymentAuthForm$icd","feeScheduleProgram","authorization_required","undefined","paymentAuthForm","amountRequested","amount_requested","serviceEnd","service_end","icd10Code","icd10_code","value","isCostBased","isCostPaymentType","payment_type","cmCodeRequired","cm_code_required_on_authorization","validateForm","params","_errors$paymentAuthFo","_errors$paymentAuthFo2","_errors$paymentAuthFo3","setReferralErrors","index","_objectSpread","fieldErrors","primary_worker","ReferralBuilderForm","_ref2","_referral$case2","currentEmployee","currentProvider","hasDraftReferral","navigateToAddResources","referral","referrals","onChange","unselected","removeProgram","onSetForm","moveToNewReferral","moveToExistingReferral","updateAttachments","source","networksUnlistedProgram","referralDescription","referralSubtitle","caseData","personId","service","programs","attachments","attachableDocuments","moveReferralMenus","setMoveReferralMenus","uploadedFiles","setUploadedFiles","primaryWorkers","setPrimaryWorkers","initialValues","setInitialValues","query","setQuery","debouncedQuery","rejectedFiles","setRejectedFiles","filesTooBig","filesWrongType","filesTooBigAndWrongType","isGrouped","isFunded","referralTitle","concat","name","crtb854ForwardingSuperset","featureFlagCMultiplelientNeeds","newLanguageDashboard","today","startOf","unix","networks","onProgramClick","id","programMenus","map","p","menuIsOpen","getPrimaryWorkers","primary_workers","providerId","sendingProvider","initializePaymentFormValues","state","_referral$case","_kase$data","_kaseData$service_aut","_kaseServiceAuthoriza","kase","findRecord","case","kaseData","data","kaseServiceAuthorization","service_authorization","kaseServiceAuthorizationData","clinicalModifications","clinical_modifications","clinicalModificationData","_clinicalModification","clinicalModification","isUnitBased","amountRequestedInitialValue","requested_unit_amount","requested_cents","paymentAuthFormValues","requested_ends_at","service_start","requested_starts_at","code","previousValues","_previousValues$case","clientNeedsData","most_recent","queryConfig","placeholderData","clientNeeds","_clientNeedsData$data","_clientNeedsData$data2","condition","label","selectedClientNeeds","filter","clientNeed","_caseData$person_cond","person_condition_ids","includes","prev","need","find","worker","date","openDate","Date","parseInt","maxDate","minDate","subtract","isNaN","getTime","error","console","onSubmit","validate","mutators","setFieldTouched","args","touched","field","fields","render","_ref3","form","children","subscription","className","program","_moveReferralMenus$fi","cannotMoveReasons","i","onClick","required","placeholder","options","labelKey","valueKey","validations","formValues","afterLabelContent","message","rows","inline","style","text","input","loadOptions","search","documentFields","propTypes","object","shape","string","array","number","func","defaultProps"],"sources":["../../../src/pages/builder/ReferralBuilderForm.js"],"sourcesContent":["import React, { useCallback, useEffect, useState, useMemo } from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Form, Field, FormSpy } from 'react-final-form';\nimport { get, isEmpty, isNil, uniqBy, upperFirst } from 'lodash';\nimport {\n DateField,\n TextField,\n SelectField,\n} from '@unite-us/app-components';\nimport validateCostAmount from '../../utils/validateCostAmount';\nimport validateUnitAmount from '../../utils/validateUnitAmount';\nimport InfoPanel from '@unite-us/client-utils/dist/InfoPanel/InfoPanel';\nimport {\n isRequired,\n} from '@unite-us/client-utils/dist/utils/validations/validations';\nimport { feeSchedulePrograms as fspUtils } from '@unite-us/client-utils';\nimport moment from 'moment';\nimport { coreApi } from '../../api/config';\nimport { REFERRAL_PII_PHI_DESCRIPTION } from './constants';\nimport AuthorizationSubform from './AuthorizationSubform';\nimport ReferralProgramCard from './ReferralProgramCard';\nimport { FileUpload } from '../../common/form/FileUploadV2/FileUpload';\nimport {\n isUnlistedReferral,\n programIsOffPlatform,\n referralIsOON,\n referralIsGrouped,\n shouldShowNetworkSelect,\n filterNetworks,\n referralIsFunded,\n} from './utils';\nimport fetchPrimaryWorkers from '../../actions/Referral/fetchPrimaryWorkers';\nimport { useDebounce } from '../../utils/useDebounce';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\nimport { cannotMoveToReferralReasons } from '../../actions/Referral/cannotMoveToReferralReasons';\nimport ContactDocumentsSelector from '../../common/form/DocumentUploader/components/ContactDocumentsSelector'\nimport { useFind } from '../../api/ApiHooks';\nimport './ReferralBuilderForm.scss';\nimport ReferralClientNeedsField from './ReferralClientNeedsField';\n\nconst validateBasicFields = (values, showClientNeeds, showNetworkSelect) => {\n const errors = {};\n if (!values.description || values.description.trim() === '') errors.description = \"Required\";\n if (showClientNeeds && (!values?.client_need || values?.client_need?.length === 0)) errors.client_need = \"Required\";\n if (showNetworkSelect && !values.network) errors.network = \"Required\";\n return errors;\n};\n\nconst validateOONFields = (values, isOON, validateOpenDate) => {\n const errors = {};\n if (isOON) {\n if (!values.opened_date) {\n errors.opened_date = \"Required\"\n } else if (!validateOpenDate(values.opened_date)) {\n errors.opened_date = \"Invalid date\";\n }\n if (!values.primaryWorker) errors.primaryWorker = \"Required\";\n }\n return errors;\n};\n\nconst validatePaymentAuth = ({ values, feeScheduleProgram, validateCostAmount, validateUnitAmount, fspUtils }) => {\n if (!feeScheduleProgram?.authorization_required) return undefined;\n\n const paymentAuthForm = values?.paymentAuthForm;\n const amountRequested = paymentAuthForm?.amount_requested;\n const serviceEnd = paymentAuthForm?.service_end;\n const icd10Code = paymentAuthForm?.icd10_code?.value;\n const isCostBased = fspUtils.isCostPaymentType(feeScheduleProgram.payment_type);\n const cmCodeRequired = feeScheduleProgram.cm_code_required_on_authorization;\n\n return {\n amount_requested: isCostBased ? validateCostAmount(amountRequested) : validateUnitAmount(amountRequested),\n service_end: serviceEnd ? undefined : 'Required',\n icd10_code: (icd10Code || !cmCodeRequired) ? undefined : 'Required'\n };\n};\n\nconst validateForm = (params) => {\n const { values, isOON, showClientNeeds, showNetworkSelect, feeScheduleProgram, validateOpenDate, validateCostAmount, validateUnitAmount, fspUtils, setReferralErrors, index } = params;\n \n const errors = {\n ...validateBasicFields(values, showClientNeeds, showNetworkSelect),\n ...validateOONFields(values, isOON, validateOpenDate)\n };\n \n errors.paymentAuthForm = validatePaymentAuth({ values, feeScheduleProgram, validateCostAmount, validateUnitAmount, fspUtils });\n\n const fieldErrors = {\n description: !!errors.description,\n opened_date: !!errors.opened_date,\n client_need: !!errors.client_need,\n primary_worker: !!errors.primaryWorker,\n network: !!errors.network,\n service_end: !!errors?.paymentAuthForm?.service_end,\n amount_requested: !!errors?.paymentAuthForm?.amount_requested,\n icd10_code: !!errors?.paymentAuthForm?.icd10_code\n };\n\n setReferralErrors(index, fieldErrors);\n return errors;\n};\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}) {\n const { service, programs, primaryWorker, attachments, attachableDocuments } = referral;\n const [moveReferralMenus, setMoveReferralMenus] = useState({});\n const [uploadedFiles, setUploadedFiles] = useState(attachments);\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 isGrouped = referralIsGrouped(referral);\n const isFunded = referralIsFunded(referral)\n const referralTitle = `Referral ${index + 1}: ${service?.name}${isGrouped ? ', Grouped' : ''}${isOON ? ', Off-Platform' : ''}${isFunded ? ', Funded' : ''}`;\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\n const onProgramClick = (id) => {\n const programMenus = moveReferralMenus.map((p) => {\n if (p.id === id) {\n p.menuIsOpen = !p.menuIsOpen;\n } else {\n p.menuIsOpen = false;\n }\n return p;\n });\n\n setMoveReferralMenus(programMenus);\n };\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 // if the query is empty, keep the queried employees and the current primary worker in select field's options array\n isEmpty(query) ?\n setPrimaryWorkers(uniqBy([...primaryWorkers, ...primary_workers, (primaryWorker && primaryWorker)], 'id')) :\n setPrimaryWorkers(primary_workers);\n }, [currentEmployee, referral.sendingProvider.id, debouncedQuery]);\n\n const feeScheduleProgram = get(programs, '[0].fee_schedule_program');\n\n const initializePaymentFormValues = useCallback(async () => {\n if (referral.state === \"draft\" && feeScheduleProgram?.authorization_required) {\n const kase = await coreApi.findRecord('case', referral.case?.id);\n const kaseData = kase?.data?.data;\n const kaseServiceAuthorization = await coreApi.findRecord('service_authorization', kaseData?.service_authorization?.id);\n const kaseServiceAuthorizationData = kaseServiceAuthorization?.data?.data;\n \n const clinicalModifications = kaseServiceAuthorizationData?.clinical_modifications;\n let clinicalModificationData = null;\n \n if (clinicalModifications && clinicalModifications.length > 0) {\n const clinicalModification = await coreApi.findRecord('clinical_modifications', clinicalModifications[0].id);\n clinicalModificationData = clinicalModification?.data?.data;\n }\n\n const isUnitBased = !fspUtils.isCostPaymentType(feeScheduleProgram?.payment_type);\n const amountRequestedInitialValue = isUnitBased ? \n kaseServiceAuthorizationData?.requested_unit_amount :\n kaseServiceAuthorizationData?.requested_cents / 100;\n\n const paymentAuthFormValues = {\n amount_requested: amountRequestedInitialValue,\n service_end: moment(kaseServiceAuthorizationData?.requested_ends_at).unix(),\n service_start: moment(kaseServiceAuthorizationData?.requested_starts_at).unix(),\n icd10_code: !isEmpty(clinicalModificationData) ? {\n value: clinicalModificationData.code, \n id: clinicalModificationData.id,\n } : {},\n }\n\n setInitialValues((previousValues) => {\n const initialValues = {\n ...previousValues,\n case: {\n ...previousValues.case,\n service_authorization: {\n ...previousValues.case?.service_authorization,\n ...kaseServiceAuthorizationData,\n }\n },\n paymentAuthForm: {\n ...previousValues.paymentAuthForm,\n ...paymentAuthFormValues,\n }\n };\n if (crtb854ForwardingSuperset && referralDescription) {\n initialValues.description = referralDescription;\n }\n return initialValues;\n });\n }\n }, [referral.case?.id, referral.state, feeScheduleProgram?.payment_type, feeScheduleProgram?.authorization_required]);\n\n useEffect(() => {\n if (isOON) {\n getPrimaryWorkers();\n }\n }, [getPrimaryWorkers, isOON]);\n\n useEffect(() => {\n const programMenus = programs.map((p) => ({ id: p.id, menuIsOpen: false }));\n setMoveReferralMenus(programMenus);\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 clientNeedsData?.data?.data?.map(condition => ({ \n label: upperFirst(condition?.name), \n value: condition?.id \n })) ?? [], [clientNeedsData]\n );\n\n const selectedClientNeeds = useMemo(() => \n clientNeeds.filter(clientNeed => \n caseData?.person_condition_ids?.includes(clientNeed.value)\n ), [clientNeeds, caseData?.person_condition_ids]\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 }, [selectedClientNeeds]);\n\n useEffect(() => {\n setInitialValues({\n ...referral,\n ...((isNil(referral.primaryWorker) && isOON) ?\n { primaryWorker: primaryWorkers.find((worker) => worker.id === currentEmployee.id) } :\n null\n ),\n ...(crtb854ForwardingSuperset && referralDescription) ? { referralDescription } : {},\n })\n }, [primaryWorkers, currentEmployee.id, index, isOON, referral, referralDescription]);\n\n useEffect(() => {\n if (!isEmpty(uploadedFiles)) {\n updateAttachments(uploadedFiles);\n }\n }, [uploadedFiles]);\n\n useEffect(() => {\n initializePaymentFormValues();\n }, [initializePaymentFormValues]);\n const showClientNeeds = featureFlagCMultiplelientNeeds && !isEmpty(clientNeeds);\n\n const validateOpenDate = (date) => { \n try {\n const openDate = new Date(parseInt(date) * 1000);\n const maxDate = new Date(parseInt(today) * 1000);\n const minDate = new Date(moment().subtract(1, 'year').unix() * 1000);\n \n return (isNaN(openDate.getTime()) || openDate.getTime() < minDate || openDate.getTime() > maxDate) ? false : true;\n } catch (error) {\n console.error('Error validating open date', error);\n return false;\n }\n }\n\n return (\n <Form\n initialValues={initialValues}\n onSubmit={() => { }}\n validate={(values) => validateForm({\n values,\n isOON,\n showClientNeeds,\n showNetworkSelect,\n feeScheduleProgram,\n validateOpenDate,\n validateCostAmount,\n validateUnitAmount,\n fspUtils,\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 }) => {\n onSetForm && onSetForm(form);\n return (\n <>\n <FormSpy\n subscription={{ values: true }}\n onChange={onChange}\n />\n <div\n className={`bg-white border border-solid border-blue-border rounded md:w-4/6 lg:w-4/6`}\n >\n <div className=\"p-5 bg-dark-fill-blue\">\n <h3 className=\"text-xl font-black mb-1\">\n {referralTitle}\n </h3>\n {!newLanguageDashboard && <h3>\n {referralSubtitle}\n </h3>}\n </div>\n <div className=\"p-5\">\n {!newLanguageDashboard && isOON && (\n <div className=\"bg-alert-yellow border border-solid border-canary-yellow rounded p-3 mb-5\">\n <p className=\"text-brand-blue\">\n You need to contact these programs directly because\n they're not receiving referrals on the Unite Us Platform.\n </p>\n </div>\n )}\n <h5>PROGRAMS</h5>\n {programs.map((program) => {\n const menuIsOpen = isEmpty(moveReferralMenus) ? false : moveReferralMenus?.find((p) => p.id === program.id)?.menuIsOpen;\n\n const cannotMoveReasons = {}\n unselected.map((i) => {\n return cannotMoveReasons[i] = cannotMoveToReferralReasons({ program, referral, referrals, index: i, currentProvider })\n })\n\n return (\n <ReferralProgramCard\n key={`referral-program-${program?.id}-card`}\n program={program}\n onClick={onProgramClick}\n isOON={programIsOffPlatform(program)}\n menuIsOpen={menuIsOpen}\n unselected={unselected}\n referral={referral}\n removeProgram={removeProgram}\n moveToNewReferral={moveToNewReferral}\n moveToExistingReferral={moveToExistingReferral}\n cannotMoveReasons={cannotMoveReasons}\n />\n );\n })}\n <p className=\"text-center text-dark-grey my-10\">\n Click on the three-dot icon to edit referral groupings.\n {hasDraftReferral ? (\n <div>\n To add more programs, go to the <a onClick={navigateToAddResources}>Add Resources</a> page.\n </div>\n ) : null}\n </p>\n\n {showNetworkSelect && (\n <div className=\"mb-10\">\n <Field\n name=\"network\"\n required\n key={`referral-${index}-network`}\n >\n {(params) => (\n <SelectField\n required\n id=\"network-selection\"\n label=\"Network Selection\"\n placeholder=\"Choose one...\"\n options={networks}\n labelKey=\"name\"\n valueKey=\"id\"\n validations={isRequired}\n {...params}\n />\n )}\n </Field>\n </div>\n )}\n\n {feeScheduleProgram?.authorization_required && (\n <AuthorizationSubform \n feeScheduleProgram={feeScheduleProgram}\n formValues={values}\n setReferralErrors={(errors) => setReferralErrors(index, errors)} \n />\n )}\n\n {newLanguageDashboard && isOON && <h5 className='mb-2'>CASE INFORMATION</h5>}\n\n {newLanguageDashboard && isOON && (\n <div className=\"bg-alert-yellow border border-solid border-canary-yellow rounded p-3 mb-5\">\n <p className=\"text-brand-blue\">\n These programs aren't accepting referrals in Unite Us.\n We'll create an off-platform case where you can document communication with or services provided by the program.\n </p>\n </div>\n )}\n\n <Field\n name=\"description\"\n required\n key={`referral-${index}-description`}\n >\n {(params) => (\n <TextField\n afterLabelContent={(\n <InfoPanel\n className=\"mb-4 mt-2\"\n message={REFERRAL_PII_PHI_DESCRIPTION}\n />\n )}\n id=\"referral-description\"\n label={newLanguageDashboard ? \"Description\" : \"Referral Description\"}\n placeholder={newLanguageDashboard ? \"E.g. Client needs food assistance. These programs are off-platform and need to be contacted in order to facilitate the referral.\" : \"Describe your client's current situation and reason for referral.\"}\n rows={3}\n inline={false}\n validations={isRequired}\n required\n style={source === 'emr' && get(params, 'meta.touched') && !get(params, 'meta.valid') ? { text: { 'border-color': 'red' } } : {}}\n {...params}\n />\n )}\n </Field>\n\n { isOON && (\n <Field\n name=\"opened_date\"\n required\n key={`opened-${index}-date`}\n >\n {(params) => (\n <DateField\n required\n id=\"opened-date\"\n label={newLanguageDashboard ? \"Case open date\": \"Open date\"}\n validations={validateOpenDate(params.input.value)}\n minDate={moment().subtract(1, 'year').unix()}\n maxDate={today}\n style={source === 'emr' && get(params, 'meta.touched') && !get(params, 'meta.valid') ? { text: { 'border-color': 'red' } } : {}}\n {...params}\n />\n )}\n </Field>) }\n\n {isOON && (\n <Field\n name=\"primaryWorker\"\n required\n key={`referral-${index}-primary-worker`}\n >\n {(params) => (\n <SelectField\n required\n id=\"primary-worker\"\n label=\"Primary Worker\"\n placeholder=\"Choose one...\"\n loadOptions={(search) => setQuery(search)}\n options={primaryWorkers}\n labelKey=\"full_name\"\n valueKey=\"id\"\n validations={isRequired}\n {...params}\n />\n )}\n </Field>\n )}\n\n {showClientNeeds && (\n <>\n <p className=\"mb-4 mt-2 text-dark-blue\">Select the identified need from the client’s screening or assessment that relates to this referral.</p>\n <Field\n name=\"client_need\"\n required\n key={`associated-${index}-need`}\n >\n {(params) => (\n <ReferralClientNeedsField params={params} clientNeeds={clientNeeds} />\n )}\n </Field>\n\n </>\n )}\n\n {attachableDocuments && (\n <div className=\"upload-documents\">\n <h5>Documents</h5>\n <ContactDocumentsSelector documentFields={attachableDocuments} />\n </div>\n )}\n\n {/* Attachment area */}\n <FileUpload\n rejectedFiles={rejectedFiles}\n setRejectedFiles={setRejectedFiles}\n setUploadedFiles={setUploadedFiles}\n uploadedFiles={attachments || []}\n />\n </div>\n </div>\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}\n\nReferralBuilderForm.defaultProps = {\n unselected: [],\n referralSubtitle: '',\n}\n\nexport default ReferralBuilderForm;\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,SAAS,EAAEC,QAAQ,EAAEC,OAAO,QAAQ,OAAO;AACxE,SAASC,SAAS,QAAQ,YAAY;AACtC,SAASC,IAAI,EAAEC,KAAK,EAAEC,OAAO,QAAQ,kBAAkB;AACvD,SAASC,GAAG,EAAEC,OAAO,EAAEC,KAAK,EAAEC,MAAM,EAAEC,UAAU,QAAQ,QAAQ;AAChE,SACEC,SAAS,EACTC,SAAS,EACTC,WAAW,QACN,0BAA0B;AACjC,OAAOC,kBAAkB,MAAM,gCAAgC;AAC/D,OAAOC,kBAAkB,MAAM,gCAAgC;AAC/D,OAAOC,SAAS,MAAM,iDAAiD;AACvE,SACEC,UAAU,QACL,2DAA2D;AAClE,SAASC,mBAAmB,IAAIC,QAAQ,QAAQ,wBAAwB;AACxE,OAAOC,MAAM,MAAM,QAAQ;AAC3B,SAASC,OAAO,QAAQ,kBAAkB;AAC1C,SAASC,4BAA4B,QAAQ,aAAa;AAC1D,OAAOC,oBAAoB,MAAM,wBAAwB;AACzD,OAAOC,mBAAmB,MAAM,uBAAuB;AACvD,SAASC,UAAU,QAAQ,2CAA2C;AACtE,SACEC,kBAAkB,EAClBC,oBAAoB,EACpBC,aAAa,EACbC,iBAAiB,EACjBC,uBAAuB,EACvBC,cAAc,EACdC,gBAAgB,QACX,SAAS;AAChB,OAAOC,mBAAmB,MAAM,4CAA4C;AAC5E,SAASC,WAAW,QAAQ,yBAAyB;AACrD,SAASC,cAAc,QAAQ,4BAA4B;AAC3D,SAASC,2BAA2B,QAAQ,oDAAoD;AAChG,OAAOC,wBAAwB,MAAM,wEAAwE;AAC7G,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,OAAO,4BAA4B;AACnC,OAAOC,wBAAwB,MAAM,4BAA4B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAElE,MAAMC,mBAAmB,GAAGA,CAACC,MAAM,EAAEC,eAAe,EAAEC,iBAAiB,KAAK;EAAA,IAAAC,mBAAA;EAC1E,MAAMC,MAAM,GAAG,CAAC,CAAC;EACjB,IAAI,CAACJ,MAAM,CAACK,WAAW,IAAIL,MAAM,CAACK,WAAW,CAACC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAEF,MAAM,CAACC,WAAW,GAAG,UAAU;EAC5F,IAAIJ,eAAe,KAAK,EAACD,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEO,WAAW,KAAI,CAAAP,MAAM,aAANA,MAAM,gBAAAG,mBAAA,GAANH,MAAM,CAAEO,WAAW,cAAAJ,mBAAA,uBAAnBA,mBAAA,CAAqBK,MAAM,MAAK,CAAC,CAAC,EAAEJ,MAAM,CAACG,WAAW,GAAG,UAAU;EACnH,IAAIL,iBAAiB,IAAI,CAACF,MAAM,CAACS,OAAO,EAAEL,MAAM,CAACK,OAAO,GAAG,UAAU;EACrE,OAAOL,MAAM;AACf,CAAC;AAED,MAAMM,iBAAiB,GAAGA,CAACV,MAAM,EAAEW,KAAK,EAAEC,gBAAgB,KAAK;EAC7D,MAAMR,MAAM,GAAG,CAAC,CAAC;EACjB,IAAIO,KAAK,EAAE;IACT,IAAI,CAACX,MAAM,CAACa,WAAW,EAAE;MACvBT,MAAM,CAACS,WAAW,GAAG,UAAU;IACjC,CAAC,MAAM,IAAI,CAACD,gBAAgB,CAACZ,MAAM,CAACa,WAAW,CAAC,EAAE;MAChDT,MAAM,CAACS,WAAW,GAAG,cAAc;IACrC;IACA,IAAI,CAACb,MAAM,CAACc,aAAa,EAAEV,MAAM,CAACU,aAAa,GAAG,UAAU;EAC9D;EACA,OAAOV,MAAM;AACf,CAAC;AAED,MAAMW,mBAAmB,GAAGC,IAAA,IAAsF;EAAA,IAAAC,oBAAA;EAAA,IAArF;IAAEjB,MAAM;IAAEkB,kBAAkB;IAAEnD,kBAAkB;IAAEC,kBAAkB;IAAEI;EAAS,CAAC,GAAA4C,IAAA;EAC3G,IAAI,EAACE,kBAAkB,aAAlBA,kBAAkB,eAAlBA,kBAAkB,CAAEC,sBAAsB,GAAE,OAAOC,SAAS;EAEjE,MAAMC,eAAe,GAAGrB,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEqB,eAAe;EAC/C,MAAMC,eAAe,GAAGD,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEE,gBAAgB;EACzD,MAAMC,UAAU,GAAGH,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEI,WAAW;EAC/C,MAAMC,SAAS,GAAGL,eAAe,aAAfA,eAAe,gBAAAJ,oBAAA,GAAfI,eAAe,CAAEM,UAAU,cAAAV,oBAAA,uBAA3BA,oBAAA,CAA6BW,KAAK;EACpD,MAAMC,WAAW,GAAGzD,QAAQ,CAAC0D,iBAAiB,CAACZ,kBAAkB,CAACa,YAAY,CAAC;EAC/E,MAAMC,cAAc,GAAGd,kBAAkB,CAACe,iCAAiC;EAE3E,OAAO;IACLV,gBAAgB,EAAEM,WAAW,GAAG9D,kBAAkB,CAACuD,eAAe,CAAC,GAAGtD,kBAAkB,CAACsD,eAAe,CAAC;IACzGG,WAAW,EAAED,UAAU,GAAGJ,SAAS,GAAG,UAAU;IAChDO,UAAU,EAAGD,SAAS,IAAI,CAACM,cAAc,GAAIZ,SAAS,GAAG;EAC3D,CAAC;AACH,CAAC;AAED,MAAMc,YAAY,GAAIC,MAAM,IAAK;EAAA,IAAAC,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA;EAC/B,MAAM;IAAEtC,MAAM;IAAEW,KAAK;IAAEV,eAAe;IAAEC,iBAAiB;IAAEgB,kBAAkB;IAAEN,gBAAgB;IAAE7C,kBAAkB;IAAEC,kBAAkB;IAAEI,QAAQ;IAAEmE,iBAAiB;IAAEC;EAAM,CAAC,GAAGL,MAAM;EAEtL,MAAM/B,MAAM,GAAAqC,aAAA,CAAAA,aAAA,KACP1C,mBAAmB,CAACC,MAAM,EAAEC,eAAe,EAAEC,iBAAiB,CAAC,GAC/DQ,iBAAiB,CAACV,MAAM,EAAEW,KAAK,EAAEC,gBAAgB,CAAC,CACtD;EAEDR,MAAM,CAACiB,eAAe,GAAGN,mBAAmB,CAAC;IAAEf,MAAM;IAAEkB,kBAAkB;IAAEnD,kBAAkB;IAAEC,kBAAkB;IAAEI;EAAS,CAAC,CAAC;EAE9H,MAAMsE,WAAW,GAAG;IAClBrC,WAAW,EAAE,CAAC,CAACD,MAAM,CAACC,WAAW;IACjCQ,WAAW,EAAE,CAAC,CAACT,MAAM,CAACS,WAAW;IACjCN,WAAW,EAAE,CAAC,CAACH,MAAM,CAACG,WAAW;IACjCoC,cAAc,EAAE,CAAC,CAACvC,MAAM,CAACU,aAAa;IACtCL,OAAO,EAAE,CAAC,CAACL,MAAM,CAACK,OAAO;IACzBgB,WAAW,EAAE,CAAC,EAACrB,MAAM,aAANA,MAAM,gBAAAgC,qBAAA,GAANhC,MAAM,CAAEiB,eAAe,cAAAe,qBAAA,eAAvBA,qBAAA,CAAyBX,WAAW;IACnDF,gBAAgB,EAAE,CAAC,EAACnB,MAAM,aAANA,MAAM,gBAAAiC,sBAAA,GAANjC,MAAM,CAAEiB,eAAe,cAAAgB,sBAAA,eAAvBA,sBAAA,CAAyBd,gBAAgB;IAC7DI,UAAU,EAAE,CAAC,EAACvB,MAAM,aAANA,MAAM,gBAAAkC,sBAAA,GAANlC,MAAM,CAAEiB,eAAe,cAAAiB,sBAAA,eAAvBA,sBAAA,CAAyBX,UAAU;EACnD,CAAC;EAEDY,iBAAiB,CAACC,KAAK,EAAEE,WAAW,CAAC;EACrC,OAAOtC,MAAM;AACf,CAAC;AAED,OAAO,SAASwC,mBAAmBA,CAAAC,KAAA,EAsBhC;EAAA,IAAAC,eAAA;EAAA,IAtBiC;IAClCC,eAAe;IACfC,eAAe;IACfC,gBAAgB;IAChBC,sBAAsB;IACtBC,QAAQ;IACRC,SAAS;IACTZ,KAAK;IACLa,QAAQ;IACRC,UAAU;IACVC,aAAa;IACbC,SAAS;IACTC,iBAAiB;IACjBC,sBAAsB;IACtBC,iBAAiB;IACjBC,MAAM;IACNC,uBAAuB;IACvBtB,iBAAiB;IACjBuB,mBAAmB;IACnBC,gBAAgB;IAChBC,QAAQ;IACRC;EACF,CAAC,GAAApB,KAAA;EACC,MAAM;IAAEqB,OAAO;IAAEC,QAAQ;IAAErD,aAAa;IAAEsD,WAAW;IAAEC;EAAoB,CAAC,GAAGlB,QAAQ;EACvF,MAAM,CAACmB,iBAAiB,EAAEC,oBAAoB,CAAC,GAAGtH,QAAQ,CAAC,CAAC,CAAC,CAAC;EAC9D,MAAM,CAACuH,aAAa,EAAEC,gBAAgB,CAAC,GAAGxH,QAAQ,CAACmH,WAAW,CAAC;EAC/D,MAAM,CAACM,cAAc,EAAEC,iBAAiB,CAAC,GAAG1H,QAAQ,CAAC6D,aAAa,GAAG,CAACA,aAAa,CAAC,GAAG,EAAE,CAAC;EAC1F,MAAM,CAAC8D,aAAa,EAAEC,gBAAgB,CAAC,GAAG5H,QAAQ,CAACkG,QAAQ,CAAC;EAC5D,MAAM,CAAC2B,KAAK,EAAEC,QAAQ,CAAC,GAAG9H,QAAQ,CAAC,EAAE,CAAC;EACtC,MAAM+H,cAAc,GAAG7F,WAAW,CAAC2F,KAAK,EAAE,GAAG,CAAC;EAE9C,MAAM,CAACG,aAAa,EAAEC,gBAAgB,CAAC,GAAGjI,QAAQ,CAAC;IACjDkI,WAAW,EAAE,EAAE;IACfC,cAAc,EAAE,EAAE;IAClBC,uBAAuB,EAAE;EAC3B,CAAC,CAAC;EACF,MAAM1E,KAAK,GAAG9B,aAAa,CAACsE,QAAQ,CAAC;EACrC,MAAMmC,SAAS,GAAGxG,iBAAiB,CAACqE,QAAQ,CAAC;EAC7C,MAAMoC,QAAQ,GAAGtG,gBAAgB,CAACkE,QAAQ,CAAC;EAC3C,MAAMqC,aAAa,eAAAC,MAAA,CAAejD,KAAK,GAAG,CAAC,QAAAiD,MAAA,CAAKvB,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEwB,IAAI,EAAAD,MAAA,CAAGH,SAAS,GAAG,WAAW,GAAG,EAAE,EAAAG,MAAA,CAAG9E,KAAK,GAAG,gBAAgB,GAAG,EAAE,EAAA8E,MAAA,CAAGF,QAAQ,GAAG,UAAU,GAAG,EAAE,CAAE;EAC3J,MAAMI,yBAAyB,GAAGvG,cAAc,CAAC,2BAA2B,EAAE,KAAK,CAAC;EACpF,MAAMwG,8BAA8B,GAAGxG,cAAc,CAAC,6BAA6B,EAAE,KAAK,CAAC;EAC3F,MAAMyG,oBAAoB,GAAGzG,cAAc,CAAC,iCAAiC,EAAE,KAAK,CAAC;EACrF,MAAM0G,KAAK,GAAGzH,MAAM,CAAC,CAAC,CAAC0H,OAAO,CAAC,KAAK,CAAC,CAACC,IAAI,CAAC,CAAC;;EAE5C;EACA,MAAMC,QAAQ,GAAGtH,kBAAkB,CAACwE,QAAQ,CAAC,GAAGU,uBAAuB,GAAG7E,cAAc,CAACmE,QAAQ,CAAC;EAClG,MAAMjD,iBAAiB,GAAGnB,uBAAuB,CAACkH,QAAQ,EAAE9B,QAAQ,CAAC;EAErE,MAAM+B,cAAc,GAAIC,EAAE,IAAK;IAC7B,MAAMC,YAAY,GAAG9B,iBAAiB,CAAC+B,GAAG,CAAEC,CAAC,IAAK;MAChD,IAAIA,CAAC,CAACH,EAAE,KAAKA,EAAE,EAAE;QACfG,CAAC,CAACC,UAAU,GAAG,CAACD,CAAC,CAACC,UAAU;MAC9B,CAAC,MAAM;QACLD,CAAC,CAACC,UAAU,GAAG,KAAK;MACtB;MACA,OAAOD,CAAC;IACV,CAAC,CAAC;IAEF/B,oBAAoB,CAAC6B,YAAY,CAAC;EACpC,CAAC;EAED,MAAMI,iBAAiB,GAAGzJ,WAAW,CAAC,YAAY;IAChD,MAAM;MAAE0J;IAAgB,CAAC,GAAG,MAAMvH,mBAAmB,CAAC;MACpDwH,UAAU,EAAEvD,QAAQ,CAACwD,eAAe,CAACR,EAAE;MACvCpD,eAAe;MACf+B,KAAK,EAAEE;IACT,CAAC,CAAC;;IAEF;IACAxH,OAAO,CAACsH,KAAK,CAAC,GACZH,iBAAiB,CAACjH,MAAM,CAAC,CAAC,GAAGgH,cAAc,EAAE,GAAG+B,eAAe,EAAG3F,aAAa,IAAIA,aAAa,CAAE,EAAE,IAAI,CAAC,CAAC,GAC1G6D,iBAAiB,CAAC8B,eAAe,CAAC;EACtC,CAAC,EAAE,CAAC1D,eAAe,EAAEI,QAAQ,CAACwD,eAAe,CAACR,EAAE,EAAEnB,cAAc,CAAC,CAAC;EAElE,MAAM9D,kBAAkB,GAAG3D,GAAG,CAAC4G,QAAQ,EAAE,0BAA0B,CAAC;EAEpE,MAAMyC,2BAA2B,GAAG7J,WAAW,CAAC,YAAY;IAC1D,IAAIoG,QAAQ,CAAC0D,KAAK,KAAK,OAAO,IAAI3F,kBAAkB,aAAlBA,kBAAkB,eAAlBA,kBAAkB,CAAEC,sBAAsB,EAAE;MAAA,IAAA2F,cAAA,EAAAC,UAAA,EAAAC,qBAAA,EAAAC,qBAAA;MAC5E,MAAMC,IAAI,GAAG,MAAM5I,OAAO,CAAC6I,UAAU,CAAC,MAAM,GAAAL,cAAA,GAAE3D,QAAQ,CAACiE,IAAI,cAAAN,cAAA,uBAAbA,cAAA,CAAeX,EAAE,CAAC;MAChE,MAAMkB,QAAQ,GAAGH,IAAI,aAAJA,IAAI,gBAAAH,UAAA,GAAJG,IAAI,CAAEI,IAAI,cAAAP,UAAA,uBAAVA,UAAA,CAAYO,IAAI;MACjC,MAAMC,wBAAwB,GAAG,MAAMjJ,OAAO,CAAC6I,UAAU,CAAC,uBAAuB,EAAEE,QAAQ,aAARA,QAAQ,gBAAAL,qBAAA,GAARK,QAAQ,CAAEG,qBAAqB,cAAAR,qBAAA,uBAA/BA,qBAAA,CAAiCb,EAAE,CAAC;MACvH,MAAMsB,4BAA4B,GAAGF,wBAAwB,aAAxBA,wBAAwB,gBAAAN,qBAAA,GAAxBM,wBAAwB,CAAED,IAAI,cAAAL,qBAAA,uBAA9BA,qBAAA,CAAgCK,IAAI;MAEzE,MAAMI,qBAAqB,GAAGD,4BAA4B,aAA5BA,4BAA4B,uBAA5BA,4BAA4B,CAAEE,sBAAsB;MAClF,IAAIC,wBAAwB,GAAG,IAAI;MAEnC,IAAIF,qBAAqB,IAAIA,qBAAqB,CAAClH,MAAM,GAAG,CAAC,EAAE;QAAA,IAAAqH,qBAAA;QAC7D,MAAMC,oBAAoB,GAAG,MAAMxJ,OAAO,CAAC6I,UAAU,CAAC,wBAAwB,EAAEO,qBAAqB,CAAC,CAAC,CAAC,CAACvB,EAAE,CAAC;QAC5GyB,wBAAwB,GAAGE,oBAAoB,aAApBA,oBAAoB,gBAAAD,qBAAA,GAApBC,oBAAoB,CAAER,IAAI,cAAAO,qBAAA,uBAA1BA,qBAAA,CAA4BP,IAAI;MAC7D;MAEA,MAAMS,WAAW,GAAG,CAAC3J,QAAQ,CAAC0D,iBAAiB,CAACZ,kBAAkB,aAAlBA,kBAAkB,uBAAlBA,kBAAkB,CAAEa,YAAY,CAAC;MACjF,MAAMiG,2BAA2B,GAAGD,WAAW,GAC/CN,4BAA4B,aAA5BA,4BAA4B,uBAA5BA,4BAA4B,CAAEQ,qBAAqB,GACnD,CAAAR,4BAA4B,aAA5BA,4BAA4B,uBAA5BA,4BAA4B,CAAES,eAAe,IAAG,GAAG;MAEnD,MAAMC,qBAAqB,GAAG;QAC5B5G,gBAAgB,EAAEyG,2BAA2B;QAC7CvG,WAAW,EAAEpD,MAAM,CAACoJ,4BAA4B,aAA5BA,4BAA4B,uBAA5BA,4BAA4B,CAAEW,iBAAiB,CAAC,CAACpC,IAAI,CAAC,CAAC;QAC3EqC,aAAa,EAAEhK,MAAM,CAACoJ,4BAA4B,aAA5BA,4BAA4B,uBAA5BA,4BAA4B,CAAEa,mBAAmB,CAAC,CAACtC,IAAI,CAAC,CAAC;QAC/ErE,UAAU,EAAE,CAACnE,OAAO,CAACoK,wBAAwB,CAAC,GAAG;UAC/ChG,KAAK,EAAEgG,wBAAwB,CAACW,IAAI;UACpCpC,EAAE,EAAEyB,wBAAwB,CAACzB;QAC/B,CAAC,GAAG,CAAC;MACP,CAAC;MAEDtB,gBAAgB,CAAE2D,cAAc,IAAK;QAAA,IAAAC,oBAAA;QACnC,MAAM7D,aAAa,GAAAnC,aAAA,CAAAA,aAAA,KACd+F,cAAc;UACjBpB,IAAI,EAAA3E,aAAA,CAAAA,aAAA,KACC+F,cAAc,CAACpB,IAAI;YACtBI,qBAAqB,EAAA/E,aAAA,CAAAA,aAAA,MAAAgG,oBAAA,GAChBD,cAAc,CAACpB,IAAI,cAAAqB,oBAAA,uBAAnBA,oBAAA,CAAqBjB,qBAAqB,GAC1CC,4BAA4B;UAChC,EACF;UACDpG,eAAe,EAAAoB,aAAA,CAAAA,aAAA,KACV+F,cAAc,CAACnH,eAAe,GAC9B8G,qBAAqB;QACzB,EACF;QACD,IAAIxC,yBAAyB,IAAI7B,mBAAmB,EAAE;UACpDc,aAAa,CAACvE,WAAW,GAAGyD,mBAAmB;QACjD;QACA,OAAOc,aAAa;MACtB,CAAC,CAAC;IACJ;EACF,CAAC,EAAE,EAAA9B,eAAA,GAACK,QAAQ,CAACiE,IAAI,cAAAtE,eAAA,uBAAbA,eAAA,CAAeqD,EAAE,EAAEhD,QAAQ,CAAC0D,KAAK,EAAE3F,kBAAkB,aAAlBA,kBAAkB,uBAAlBA,kBAAkB,CAAEa,YAAY,EAAEb,kBAAkB,aAAlBA,kBAAkB,uBAAlBA,kBAAkB,CAAEC,sBAAsB,CAAC,CAAC;EAErHnE,SAAS,CAAC,MAAM;IACd,IAAI2D,KAAK,EAAE;MACT6F,iBAAiB,CAAC,CAAC;IACrB;EACF,CAAC,EAAE,CAACA,iBAAiB,EAAE7F,KAAK,CAAC,CAAC;EAE9B3D,SAAS,CAAC,MAAM;IACd,MAAMoJ,YAAY,GAAGjC,QAAQ,CAACkC,GAAG,CAAEC,CAAC,KAAM;MAAEH,EAAE,EAAEG,CAAC,CAACH,EAAE;MAAEI,UAAU,EAAE;IAAM,CAAC,CAAC,CAAC;IAC3EhC,oBAAoB,CAAC6B,YAAY,CAAC;EACpC,CAAC,EAAE,CAACjC,QAAQ,CAAC,CAAC;EAEd,MAAM;IAAEmD,IAAI,EAAEoB;EAAgB,CAAC,GAAGnJ,OAAO,WAAAkG,MAAA,CAC7BxB,QAAQ,wBAClB;IACE0E,WAAW,EAAE;EACf,CAAC,EACD;IACEC,WAAW,EAAE;MACXC,eAAe,EAAEzH;IACnB;EACF,CACF,CAAC;EAED,MAAM0H,WAAW,GAAG5L,OAAO,CAAC;IAAA,IAAA6L,qBAAA,EAAAC,sBAAA;IAAA,QAAAD,qBAAA,GAC1BL,eAAe,aAAfA,eAAe,gBAAAM,sBAAA,GAAfN,eAAe,CAAEpB,IAAI,cAAA0B,sBAAA,gBAAAA,sBAAA,GAArBA,sBAAA,CAAuB1B,IAAI,cAAA0B,sBAAA,uBAA3BA,sBAAA,CAA6B3C,GAAG,CAAC4C,SAAS,KAAK;MAC7CC,KAAK,EAAEvL,UAAU,CAACsL,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAEvD,IAAI,CAAC;MAClC9D,KAAK,EAAEqH,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAE9C;IACpB,CAAC,CAAC,CAAC,cAAA4C,qBAAA,cAAAA,qBAAA,GAAI,EAAE;EAAA,GAAE,CAACL,eAAe,CAC7B,CAAC;EAED,MAAMS,mBAAmB,GAAGjM,OAAO,CAAC,MAClC4L,WAAW,CAACM,MAAM,CAACC,UAAU;IAAA,IAAAC,qBAAA;IAAA,OAC3BtF,QAAQ,aAARA,QAAQ,gBAAAsF,qBAAA,GAARtF,QAAQ,CAAEuF,oBAAoB,cAAAD,qBAAA,uBAA9BA,qBAAA,CAAgCE,QAAQ,CAACH,UAAU,CAACzH,KAAK,CAAC;EAAA,CAC5D,CAAC,EAAE,CAACkH,WAAW,EAAE9E,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEuF,oBAAoB,CACjD,CAAC;EAEDvM,SAAS,CAAC,MAAM;IACd,IAAImM,mBAAmB,CAAC3I,MAAM,GAAG,CAAC,IAAI,CAAC2C,QAAQ,CAAC5C,WAAW,EAAE;MAC3DsE,gBAAgB,CAAC4E,IAAI,IAAAhH,aAAA,CAAAA,aAAA,KAChBgH,IAAI;QACPlJ,WAAW,EAAE4I,mBAAmB,CAAC9C,GAAG,CAACqD,IAAI,IAAIA,IAAI,CAAC9H,KAAK;MAAC,EACxD,CAAC;IACL;EACF,CAAC,EAAE,CAACuH,mBAAmB,CAAC,CAAC;EAEzBnM,SAAS,CAAC,MAAM;IACd6H,gBAAgB,CAAApC,aAAA,CAAAA,aAAA,CAAAA,aAAA,KACXU,QAAQ,GACN1F,KAAK,CAAC0F,QAAQ,CAACrC,aAAa,CAAC,IAAIH,KAAK,GACzC;MAAEG,aAAa,EAAE4D,cAAc,CAACiF,IAAI,CAAEC,MAAM,IAAKA,MAAM,CAACzD,EAAE,KAAKpD,eAAe,CAACoD,EAAE;IAAE,CAAC,GACpF,IAAI,GAEFR,yBAAyB,IAAI7B,mBAAmB,GAAI;MAAEA;IAAoB,CAAC,GAAG,CAAC,CAAC,CACrF,CAAC;EACJ,CAAC,EAAE,CAACY,cAAc,EAAE3B,eAAe,CAACoD,EAAE,EAAE3D,KAAK,EAAE7B,KAAK,EAAEwC,QAAQ,EAAEW,mBAAmB,CAAC,CAAC;EAErF9G,SAAS,CAAC,MAAM;IACd,IAAI,CAACQ,OAAO,CAACgH,aAAa,CAAC,EAAE;MAC3Bb,iBAAiB,CAACa,aAAa,CAAC;IAClC;EACF,CAAC,EAAE,CAACA,aAAa,CAAC,CAAC;EAEnBxH,SAAS,CAAC,MAAM;IACd4J,2BAA2B,CAAC,CAAC;EAC/B,CAAC,EAAE,CAACA,2BAA2B,CAAC,CAAC;EACjC,MAAM3G,eAAe,GAAG2F,8BAA8B,IAAI,CAACpI,OAAO,CAACsL,WAAW,CAAC;EAE/E,MAAMlI,gBAAgB,GAAIiJ,IAAI,IAAK;IACjC,IAAI;MACF,MAAMC,QAAQ,GAAG,IAAIC,IAAI,CAACC,QAAQ,CAACH,IAAI,CAAC,GAAG,IAAI,CAAC;MAChD,MAAMI,OAAO,GAAG,IAAIF,IAAI,CAACC,QAAQ,CAAClE,KAAK,CAAC,GAAG,IAAI,CAAC;MAChD,MAAMoE,OAAO,GAAG,IAAIH,IAAI,CAAC1L,MAAM,CAAC,CAAC,CAAC8L,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAACnE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;MAEpE,OAAQoE,KAAK,CAACN,QAAQ,CAACO,OAAO,CAAC,CAAC,CAAC,IAAIP,QAAQ,CAACO,OAAO,CAAC,CAAC,GAAGH,OAAO,IAAIJ,QAAQ,CAACO,OAAO,CAAC,CAAC,GAAGJ,OAAO,GAAI,KAAK,GAAG,IAAI;IACnH,CAAC,CAAC,OAAOK,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,4BAA4B,EAAEA,KAAK,CAAC;MAClD,OAAO,KAAK;IACd;EACF,CAAC;EAED,oBACE5K,IAAA,CAACtC,IAAI;IACHwH,aAAa,EAAEA,aAAc;IAC7B4F,QAAQ,EAAEA,CAAA,KAAM,CAAE,CAAE;IACpBC,QAAQ,EAAGzK,MAAM,IAAKkC,YAAY,CAAC;MACjClC,MAAM;MACNW,KAAK;MACLV,eAAe;MACfC,iBAAiB;MACjBgB,kBAAkB;MAClBN,gBAAgB;MAChB7C,kBAAkB;MAClBC,kBAAkB;MAClBI,QAAQ;MACRmE,iBAAiB;MACjBC;IACF,CAAC,CAAE;IACHkI,QAAQ,EAAE;MACRC,eAAe,EAAEA,CAACC,IAAI,EAAE/D,KAAK,KAAK;QAChC,MAAM,CAACnB,IAAI,EAAEmF,OAAO,CAAC,GAAGD,IAAI;QAC5B,MAAME,KAAK,GAAGjE,KAAK,CAACkE,MAAM,CAACrF,IAAI,CAAC;QAChC,IAAIoF,KAAK,EAAE;UACTA,KAAK,CAACD,OAAO,GAAG,CAAC,CAACA,OAAO;QAC3B;MACF;IACF,CAAE;IACFG,MAAM,EAAEC,KAAA,IAAsB;MAAA,IAArB;QAAEC,IAAI;QAAElL;MAAO,CAAC,GAAAiL,KAAA;MACvBzH,SAAS,IAAIA,SAAS,CAAC0H,IAAI,CAAC;MAC5B,oBACEtL,KAAA,CAAAE,SAAA;QAAAqL,QAAA,gBACEzL,IAAA,CAACpC,OAAO;UACN8N,YAAY,EAAE;YAAEpL,MAAM,EAAE;UAAK,CAAE;UAC/BqD,QAAQ,EAAEA;QAAS,CACpB,CAAC,eACFzD,KAAA;UACEyL,SAAS,6EAA8E;UAAAF,QAAA,gBAEvFvL,KAAA;YAAKyL,SAAS,EAAC,uBAAuB;YAAAF,QAAA,gBACpCzL,IAAA;cAAI2L,SAAS,EAAC,yBAAyB;cAAAF,QAAA,EACpC3F;YAAa,CACZ,CAAC,EACJ,CAACK,oBAAoB,iBAAInG,IAAA;cAAAyL,QAAA,EACvBpH;YAAgB,CACf,CAAC;UAAA,CACF,CAAC,eACNnE,KAAA;YAAKyL,SAAS,EAAC,KAAK;YAAAF,QAAA,GACjB,CAACtF,oBAAoB,IAAIlF,KAAK,iBAC7BjB,IAAA;cAAK2L,SAAS,EAAC,2EAA2E;cAAAF,QAAA,eACxFzL,IAAA;gBAAG2L,SAAS,EAAC,iBAAiB;gBAAAF,QAAA,EAAC;cAG/B,CAAG;YAAC,CACD,CACN,eACDzL,IAAA;cAAAyL,QAAA,EAAI;YAAQ,CAAI,CAAC,EAChBhH,QAAQ,CAACkC,GAAG,CAAEiF,OAAO,IAAK;cAAA,IAAAC,qBAAA;cACzB,MAAMhF,UAAU,GAAG/I,OAAO,CAAC8G,iBAAiB,CAAC,GAAG,KAAK,GAAGA,iBAAiB,aAAjBA,iBAAiB,gBAAAiH,qBAAA,GAAjBjH,iBAAiB,CAAEqF,IAAI,CAAErD,CAAC,IAAKA,CAAC,CAACH,EAAE,KAAKmF,OAAO,CAACnF,EAAE,CAAC,cAAAoF,qBAAA,uBAAnDA,qBAAA,CAAqDhF,UAAU;cAEvH,MAAMiF,iBAAiB,GAAG,CAAC,CAAC;cAC5BlI,UAAU,CAAC+C,GAAG,CAAEoF,CAAC,IAAK;gBACpB,OAAOD,iBAAiB,CAACC,CAAC,CAAC,GAAGpM,2BAA2B,CAAC;kBAAEiM,OAAO;kBAAEnI,QAAQ;kBAAEC,SAAS;kBAAEZ,KAAK,EAAEiJ,CAAC;kBAAEzI;gBAAgB,CAAC,CAAC;cACxH,CAAC,CAAC;cAEF,oBACEtD,IAAA,CAACjB,mBAAmB;gBAElB6M,OAAO,EAAEA,OAAQ;gBACjBI,OAAO,EAAExF,cAAe;gBACxBvF,KAAK,EAAE/B,oBAAoB,CAAC0M,OAAO,CAAE;gBACrC/E,UAAU,EAAEA,UAAW;gBACvBjD,UAAU,EAAEA,UAAW;gBACvBH,QAAQ,EAAEA,QAAS;gBACnBI,aAAa,EAAEA,aAAc;gBAC7BE,iBAAiB,EAAEA,iBAAkB;gBACrCC,sBAAsB,EAAEA,sBAAuB;gBAC/C8H,iBAAiB,EAAEA;cAAkB,uBAAA/F,MAAA,CAVZ6F,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEnF,EAAE,UAWrC,CAAC;YAEN,CAAC,CAAC,eACFvG,KAAA;cAAGyL,SAAS,EAAC,kCAAkC;cAAAF,QAAA,GAAC,yDAE9C,EAAClI,gBAAgB,gBACfrD,KAAA;gBAAAuL,QAAA,GAAK,kCAC6B,eAAAzL,IAAA;kBAAGgM,OAAO,EAAExI,sBAAuB;kBAAAiI,QAAA,EAAC;gBAAa,CAAG,CAAC,UACvF;cAAA,CAAK,CAAC,GACJ,IAAI;YAAA,CACP,CAAC,EAEHjL,iBAAiB,iBAChBR,IAAA;cAAK2L,SAAS,EAAC,OAAO;cAAAF,QAAA,eACpBzL,IAAA,CAACrC,KAAK;gBACJqI,IAAI,EAAC,SAAS;gBACdiG,QAAQ;gBAAAR,QAAA,EAGNhJ,MAAM,iBACNzC,IAAA,CAAC5B,WAAW,EAAA2E,aAAA;kBACVkJ,QAAQ;kBACRxF,EAAE,EAAC,mBAAmB;kBACtB+C,KAAK,EAAC,mBAAmB;kBACzB0C,WAAW,EAAC,eAAe;kBAC3BC,OAAO,EAAE5F,QAAS;kBAClB6F,QAAQ,EAAC,MAAM;kBACfC,QAAQ,EAAC,IAAI;kBACbC,WAAW,EAAE9N;gBAAW,GACpBiE,MAAM,CACX;cACF,eAAAsD,MAAA,CAdgBjD,KAAK,aAejB;YAAC,CACL,CACN,EAEA,CAAAtB,kBAAkB,aAAlBA,kBAAkB,uBAAlBA,kBAAkB,CAAEC,sBAAsB,kBACzCzB,IAAA,CAAClB,oBAAoB;cACnB0C,kBAAkB,EAAEA,kBAAmB;cACvC+K,UAAU,EAAEjM,MAAO;cACnBuC,iBAAiB,EAAGnC,MAAM,IAAKmC,iBAAiB,CAACC,KAAK,EAAEpC,MAAM;YAAE,CACjE,CACF,EAEAyF,oBAAoB,IAAIlF,KAAK,iBAAIjB,IAAA;cAAI2L,SAAS,EAAC,MAAM;cAAAF,QAAA,EAAC;YAAgB,CAAI,CAAC,EAE3EtF,oBAAoB,IAAIlF,KAAK,iBAC5BjB,IAAA;cAAK2L,SAAS,EAAC,2EAA2E;cAAAF,QAAA,eACxFzL,IAAA;gBAAG2L,SAAS,EAAC,iBAAiB;gBAAAF,QAAA,EAAC;cAG/B,CAAG;YAAC,CACD,CACN,eAEDzL,IAAA,CAACrC,KAAK;cACJqI,IAAI,EAAC,aAAa;cAClBiG,QAAQ;cAAAR,QAAA,EAGNhJ,MAAM,iBACNzC,IAAA,CAAC7B,SAAS,EAAA4E,aAAA;gBACRyJ,iBAAiB,eACfxM,IAAA,CAACzB,SAAS;kBACRoN,SAAS,EAAC,WAAW;kBACrBc,OAAO,EAAE5N;gBAA6B,CACvC,CACD;gBACF4H,EAAE,EAAC,sBAAsB;gBACzB+C,KAAK,EAAErD,oBAAoB,GAAG,aAAa,GAAG,sBAAuB;gBACrE+F,WAAW,EAAE/F,oBAAoB,GAAG,kIAAkI,GAAG,mEAAoE;gBAC7OuG,IAAI,EAAE,CAAE;gBACRC,MAAM,EAAE,KAAM;gBACdL,WAAW,EAAE9N,UAAW;gBACxByN,QAAQ;gBACRW,KAAK,EAAE1I,MAAM,KAAK,KAAK,IAAIrG,GAAG,CAAC4E,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC5E,GAAG,CAAC4E,MAAM,EAAE,YAAY,CAAC,GAAG;kBAAEoK,IAAI,EAAE;oBAAE,cAAc,EAAE;kBAAM;gBAAE,CAAC,GAAG,CAAC;cAAE,GAC5HpK,MAAM,CACX;YACF,eAAAsD,MAAA,CApBgBjD,KAAK,iBAqBjB,CAAC,EAER7B,KAAK,iBACLjB,IAAA,CAACrC,KAAK;cACJqI,IAAI,EAAC,aAAa;cAClBiG,QAAQ;cAAAR,QAAA,EAGNhJ,MAAM,iBACNzC,IAAA,CAAC9B,SAAS,EAAA6E,aAAA;gBACRkJ,QAAQ;gBACRxF,EAAE,EAAC,aAAa;gBAChB+C,KAAK,EAAErD,oBAAoB,GAAG,gBAAgB,GAAE,WAAY;gBAC5DmG,WAAW,EAAEpL,gBAAgB,CAACuB,MAAM,CAACqK,KAAK,CAAC5K,KAAK,CAAE;gBAClDsI,OAAO,EAAE7L,MAAM,CAAC,CAAC,CAAC8L,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAACnE,IAAI,CAAC,CAAE;gBAC7CiE,OAAO,EAAEnE,KAAM;gBACfwG,KAAK,EAAE1I,MAAM,KAAK,KAAK,IAAIrG,GAAG,CAAC4E,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC5E,GAAG,CAAC4E,MAAM,EAAE,YAAY,CAAC,GAAG;kBAAEoK,IAAI,EAAE;oBAAE,cAAc,EAAE;kBAAM;gBAAE,CAAC,GAAG,CAAC;cAAE,GAC5HpK,MAAM,CACX;YACF,aAAAsD,MAAA,CAbcjD,KAAK,UAcf,CAAE,EAER7B,KAAK,iBACJjB,IAAA,CAACrC,KAAK;cACJqI,IAAI,EAAC,eAAe;cACpBiG,QAAQ;cAAAR,QAAA,EAGNhJ,MAAM,iBACNzC,IAAA,CAAC5B,WAAW,EAAA2E,aAAA;gBACVkJ,QAAQ;gBACRxF,EAAE,EAAC,gBAAgB;gBACnB+C,KAAK,EAAC,gBAAgB;gBACtB0C,WAAW,EAAC,eAAe;gBAC3Ba,WAAW,EAAGC,MAAM,IAAK3H,QAAQ,CAAC2H,MAAM,CAAE;gBAC1Cb,OAAO,EAAEnH,cAAe;gBACxBoH,QAAQ,EAAC,WAAW;gBACpBC,QAAQ,EAAC,IAAI;gBACbC,WAAW,EAAE9N;cAAW,GACpBiE,MAAM,CACX;YACF,eAAAsD,MAAA,CAfgBjD,KAAK,oBAgBjB,CACR,EAEAvC,eAAe,iBACdL,KAAA,CAAAE,SAAA;cAAAqL,QAAA,gBACEzL,IAAA;gBAAG2L,SAAS,EAAC,0BAA0B;gBAAAF,QAAA,EAAC;cAAmG,CAAG,CAAC,eAC/IzL,IAAA,CAACrC,KAAK;gBACJqI,IAAI,EAAC,aAAa;gBAClBiG,QAAQ;gBAAAR,QAAA,EAGNhJ,MAAM,iBACNzC,IAAA,CAACF,wBAAwB;kBAAC2C,MAAM,EAAEA,MAAO;kBAAC2G,WAAW,EAAEA;gBAAY,CAAE;cACtE,iBAAArD,MAAA,CAJkBjD,KAAK,UAKnB,CAAC;YAAA,CAER,CACH,EAEA6B,mBAAmB,iBAClBzE,KAAA;cAAKyL,SAAS,EAAC,kBAAkB;cAAAF,QAAA,gBAC/BzL,IAAA;gBAAAyL,QAAA,EAAI;cAAS,CAAI,CAAC,eAClBzL,IAAA,CAACJ,wBAAwB;gBAACqN,cAAc,EAAEtI;cAAoB,CAAE,CAAC;YAAA,CAC9D,CACN,eAGD3E,IAAA,CAAChB,UAAU;cACTuG,aAAa,EAAEA,aAAc;cAC7BC,gBAAgB,EAAEA,gBAAiB;cACnCT,gBAAgB,EAAEA,gBAAiB;cACnCD,aAAa,EAAEJ,WAAW,IAAI;YAAG,CAClC,CAAC;UAAA,CACC,CAAC;QAAA,CACH,CAAC;MAAA,CACN,CAAC;IACN;EAAE,CACJ,CAAC;AAEN;AAEAxB,mBAAmB,CAACgK,SAAS,GAAG;EAC9B7J,eAAe,EAAE5F,SAAS,CAAC0P,MAAM,CAAC3O,UAAU;EAC5C8E,eAAe,EAAE7F,SAAS,CAAC0P,MAAM,CAAC3O,UAAU;EAC5CiF,QAAQ,EAAEhG,SAAS,CAAC2P,KAAK,CAAC;IACxB5I,OAAO,EAAE/G,SAAS,CAAC2P,KAAK,CAAC;MACvBpH,IAAI,EAAEvI,SAAS,CAAC4P,MAAM,CAAC7O;IACzB,CAAC,CAAC,CAACA,UAAU;IACbiG,QAAQ,EAAEhH,SAAS,CAAC6P,KAAK,CAAC9O;EAC5B,CAAC,CAAC,CAACA,UAAU;EACbsE,KAAK,EAAErF,SAAS,CAAC8P,MAAM,CAAC/O,UAAU;EAClCmF,QAAQ,EAAElG,SAAS,CAAC+P,IAAI,CAAChP,UAAU;EACnCoF,UAAU,EAAEnG,SAAS,CAAC6P,KAAK;EAC3BzJ,aAAa,EAAEpG,SAAS,CAAC+P,IAAI,CAAChP,UAAU;EACxCuF,iBAAiB,EAAEtG,SAAS,CAAC+P,IAAI,CAAChP,UAAU;EAC5CwF,sBAAsB,EAAEvG,SAAS,CAAC+P,IAAI,CAAChP,UAAU;EACjDsF,SAAS,EAAErG,SAAS,CAAC+P,IAAI,CAAChP,UAAU;EACpCqE,iBAAiB,EAAEpF,SAAS,CAAC+P,IAAI,CAAChP,UAAU;EAC5C6F,gBAAgB,EAAE5G,SAAS,CAAC4P;AAC9B,CAAC;AAEDnK,mBAAmB,CAACuK,YAAY,GAAG;EACjC7J,UAAU,EAAE,EAAE;EACdS,gBAAgB,EAAE;AACpB,CAAC;AAED,eAAenB,mBAAmB","ignoreList":[]}
1
+ {"version":3,"file":"ReferralBuilderForm.js","names":["React","useCallback","useEffect","useState","useMemo","PropTypes","Form","Field","FormSpy","get","isEmpty","isNil","uniqBy","upperFirst","DateField","TextField","SelectField","validateCostAmount","validateUnitAmount","InfoPanel","isRequired","feeSchedulePrograms","fspUtils","moment","coreApi","REFERRAL_PII_PHI_DESCRIPTION","AuthorizationSubform","ReferralProgramCard","FileUpload","isUnlistedReferral","programIsOffPlatform","referralIsOON","referralIsGrouped","shouldShowNetworkSelect","filterNetworks","referralIsFunded","fetchPrimaryWorkers","useDebounce","useFeatureFlag","cannotMoveToReferralReasons","ContactDocumentsSelector","useFind","ReferralClientNeedsField","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","validateBasicFields","values","showClientNeeds","showNetworkSelect","_values$client_need","errors","description","trim","client_need","length","network","validateOONFields","isOON","validateOpenDate","opened_date","primaryWorker","validatePaymentAuth","_ref","_paymentAuthForm$icd","feeScheduleProgram","authorization_required","undefined","paymentAuthForm","amountRequested","amount_requested","serviceEnd","service_end","icd10Code","icd10_code","value","isCostBased","isCostPaymentType","payment_type","cmCodeRequired","cm_code_required_on_authorization","validateForm","params","_errors$paymentAuthFo","_errors$paymentAuthFo2","_errors$paymentAuthFo3","setReferralErrors","index","_objectSpread","fieldErrors","primary_worker","ReferralBuilderForm","_ref2","_referral$case2","currentEmployee","currentProvider","hasDraftReferral","navigateToAddResources","referral","referrals","onChange","unselected","removeProgram","onSetForm","moveToNewReferral","moveToExistingReferral","updateAttachments","source","networksUnlistedProgram","referralDescription","referralSubtitle","caseData","personId","service","programs","attachments","attachableDocuments","moveReferralMenus","setMoveReferralMenus","uploadedFiles","setUploadedFiles","primaryWorkers","setPrimaryWorkers","initialValues","setInitialValues","query","setQuery","debouncedQuery","rejectedFiles","setRejectedFiles","filesTooBig","filesWrongType","filesTooBigAndWrongType","isGrouped","isFunded","referralTitle","concat","name","crtb854ForwardingSuperset","newLanguageDashboard","today","startOf","unix","networks","onProgramClick","id","programMenus","map","p","menuIsOpen","getPrimaryWorkers","primary_workers","providerId","sendingProvider","initializePaymentFormValues","state","_referral$case","_kase$data","_kaseData$service_aut","_kaseServiceAuthoriza","kase","findRecord","case","kaseData","data","kaseServiceAuthorization","service_authorization","kaseServiceAuthorizationData","clinicalModifications","clinical_modifications","clinicalModificationData","_clinicalModification","clinicalModification","isUnitBased","amountRequestedInitialValue","requested_unit_amount","requested_cents","paymentAuthFormValues","requested_ends_at","service_start","requested_starts_at","code","previousValues","_previousValues$case","clientNeedsData","most_recent","queryConfig","placeholderData","clientNeeds","_clientNeedsData$data","_clientNeedsData$data2","condition","label","selectedClientNeeds","filter","clientNeed","_caseData$person_cond","person_condition_ids","includes","prev","need","find","worker","date","openDate","Date","parseInt","maxDate","minDate","subtract","isNaN","getTime","error","console","onSubmit","validate","mutators","setFieldTouched","args","touched","field","fields","render","_ref3","form","children","subscription","className","program","_moveReferralMenus$fi","cannotMoveReasons","i","onClick","required","placeholder","options","labelKey","valueKey","validations","formValues","afterLabelContent","message","rows","inline","style","text","input","loadOptions","search","documentFields","propTypes","object","shape","string","array","number","func","defaultProps"],"sources":["../../../src/pages/builder/ReferralBuilderForm.js"],"sourcesContent":["import React, { useCallback, useEffect, useState, useMemo } from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Form, Field, FormSpy } from 'react-final-form';\nimport { get, isEmpty, isNil, uniqBy, upperFirst } from 'lodash';\nimport {\n DateField,\n TextField,\n SelectField,\n} from '@unite-us/app-components';\nimport validateCostAmount from '../../utils/validateCostAmount';\nimport validateUnitAmount from '../../utils/validateUnitAmount';\nimport InfoPanel from '@unite-us/client-utils/dist/InfoPanel/InfoPanel';\nimport {\n isRequired,\n} from '@unite-us/client-utils/dist/utils/validations/validations';\nimport { feeSchedulePrograms as fspUtils } from '@unite-us/client-utils';\nimport moment from 'moment';\nimport { coreApi } from '../../api/config';\nimport { REFERRAL_PII_PHI_DESCRIPTION } from './constants';\nimport AuthorizationSubform from './AuthorizationSubform';\nimport ReferralProgramCard from './ReferralProgramCard';\nimport { FileUpload } from '../../common/form/FileUploadV2/FileUpload';\nimport {\n isUnlistedReferral,\n programIsOffPlatform,\n referralIsOON,\n referralIsGrouped,\n shouldShowNetworkSelect,\n filterNetworks,\n referralIsFunded,\n} from './utils';\nimport fetchPrimaryWorkers from '../../actions/Referral/fetchPrimaryWorkers';\nimport { useDebounce } from '../../utils/useDebounce';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\nimport { cannotMoveToReferralReasons } from '../../actions/Referral/cannotMoveToReferralReasons';\nimport ContactDocumentsSelector from '../../common/form/DocumentUploader/components/ContactDocumentsSelector'\nimport { useFind } from '../../api/ApiHooks';\nimport './ReferralBuilderForm.scss';\nimport ReferralClientNeedsField from './ReferralClientNeedsField';\n\nconst validateBasicFields = (values, showClientNeeds, showNetworkSelect) => {\n const errors = {};\n if (!values.description || values.description.trim() === '') errors.description = \"Required\";\n if (showClientNeeds && (!values?.client_need || values?.client_need?.length === 0)) errors.client_need = \"Required\";\n if (showNetworkSelect && !values.network) errors.network = \"Required\";\n return errors;\n};\n\nconst validateOONFields = (values, isOON, validateOpenDate) => {\n const errors = {};\n if (isOON) {\n if (!values.opened_date) {\n errors.opened_date = \"Required\"\n } else if (!validateOpenDate(values.opened_date)) {\n errors.opened_date = \"Invalid date\";\n }\n if (!values.primaryWorker) errors.primaryWorker = \"Required\";\n }\n return errors;\n};\n\nconst validatePaymentAuth = ({ values, feeScheduleProgram, validateCostAmount, validateUnitAmount, fspUtils }) => {\n if (!feeScheduleProgram?.authorization_required) return undefined;\n\n const paymentAuthForm = values?.paymentAuthForm;\n const amountRequested = paymentAuthForm?.amount_requested;\n const serviceEnd = paymentAuthForm?.service_end;\n const icd10Code = paymentAuthForm?.icd10_code?.value;\n const isCostBased = fspUtils.isCostPaymentType(feeScheduleProgram.payment_type);\n const cmCodeRequired = feeScheduleProgram.cm_code_required_on_authorization;\n\n return {\n amount_requested: isCostBased ? validateCostAmount(amountRequested) : validateUnitAmount(amountRequested),\n service_end: serviceEnd ? undefined : 'Required',\n icd10_code: (icd10Code || !cmCodeRequired) ? undefined : 'Required'\n };\n};\n\nconst validateForm = (params) => {\n const { values, isOON, showClientNeeds, showNetworkSelect, feeScheduleProgram, validateOpenDate, validateCostAmount, validateUnitAmount, fspUtils, setReferralErrors, index } = params;\n \n const errors = {\n ...validateBasicFields(values, showClientNeeds, showNetworkSelect),\n ...validateOONFields(values, isOON, validateOpenDate)\n };\n \n errors.paymentAuthForm = validatePaymentAuth({ values, feeScheduleProgram, validateCostAmount, validateUnitAmount, fspUtils });\n\n const fieldErrors = {\n description: !!errors.description,\n opened_date: !!errors.opened_date,\n client_need: !!errors.client_need,\n primary_worker: !!errors.primaryWorker,\n network: !!errors.network,\n service_end: !!errors?.paymentAuthForm?.service_end,\n amount_requested: !!errors?.paymentAuthForm?.amount_requested,\n icd10_code: !!errors?.paymentAuthForm?.icd10_code\n };\n\n setReferralErrors(index, fieldErrors);\n return errors;\n};\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}) {\n const { service, programs, primaryWorker, attachments, attachableDocuments } = referral;\n const [moveReferralMenus, setMoveReferralMenus] = useState({});\n const [uploadedFiles, setUploadedFiles] = useState(attachments);\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 isGrouped = referralIsGrouped(referral);\n const isFunded = referralIsFunded(referral)\n const referralTitle = `Referral ${index + 1}: ${service?.name}${isGrouped ? ', Grouped' : ''}${isOON ? ', Off-Platform' : ''}${isFunded ? ', Funded' : ''}`;\n const crtb854ForwardingSuperset = useFeatureFlag('crtb854ForwardingSuperset', 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\n const onProgramClick = (id) => {\n const programMenus = moveReferralMenus.map((p) => {\n if (p.id === id) {\n p.menuIsOpen = !p.menuIsOpen;\n } else {\n p.menuIsOpen = false;\n }\n return p;\n });\n\n setMoveReferralMenus(programMenus);\n };\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 // if the query is empty, keep the queried employees and the current primary worker in select field's options array\n isEmpty(query) ?\n setPrimaryWorkers(uniqBy([...primaryWorkers, ...primary_workers, (primaryWorker && primaryWorker)], 'id')) :\n setPrimaryWorkers(primary_workers);\n }, [currentEmployee, referral.sendingProvider.id, debouncedQuery]);\n\n const feeScheduleProgram = get(programs, '[0].fee_schedule_program');\n\n const initializePaymentFormValues = useCallback(async () => {\n if (referral.state === \"draft\" && feeScheduleProgram?.authorization_required) {\n const kase = await coreApi.findRecord('case', referral.case?.id);\n const kaseData = kase?.data?.data;\n const kaseServiceAuthorization = await coreApi.findRecord('service_authorization', kaseData?.service_authorization?.id);\n const kaseServiceAuthorizationData = kaseServiceAuthorization?.data?.data;\n \n const clinicalModifications = kaseServiceAuthorizationData?.clinical_modifications;\n let clinicalModificationData = null;\n \n if (clinicalModifications && clinicalModifications.length > 0) {\n const clinicalModification = await coreApi.findRecord('clinical_modifications', clinicalModifications[0].id);\n clinicalModificationData = clinicalModification?.data?.data;\n }\n\n const isUnitBased = !fspUtils.isCostPaymentType(feeScheduleProgram?.payment_type);\n const amountRequestedInitialValue = isUnitBased ? \n kaseServiceAuthorizationData?.requested_unit_amount :\n kaseServiceAuthorizationData?.requested_cents / 100;\n\n const paymentAuthFormValues = {\n amount_requested: amountRequestedInitialValue,\n service_end: moment(kaseServiceAuthorizationData?.requested_ends_at).unix(),\n service_start: moment(kaseServiceAuthorizationData?.requested_starts_at).unix(),\n icd10_code: !isEmpty(clinicalModificationData) ? {\n value: clinicalModificationData.code, \n id: clinicalModificationData.id,\n } : {},\n }\n\n setInitialValues((previousValues) => {\n const initialValues = {\n ...previousValues,\n case: {\n ...previousValues.case,\n service_authorization: {\n ...previousValues.case?.service_authorization,\n ...kaseServiceAuthorizationData,\n }\n },\n paymentAuthForm: {\n ...previousValues.paymentAuthForm,\n ...paymentAuthFormValues,\n }\n };\n if (crtb854ForwardingSuperset && referralDescription) {\n initialValues.description = referralDescription;\n }\n return initialValues;\n });\n }\n }, [referral.case?.id, referral.state, feeScheduleProgram?.payment_type, feeScheduleProgram?.authorization_required]);\n\n useEffect(() => {\n if (isOON) {\n getPrimaryWorkers();\n }\n }, [getPrimaryWorkers, isOON]);\n\n useEffect(() => {\n const programMenus = programs.map((p) => ({ id: p.id, menuIsOpen: false }));\n setMoveReferralMenus(programMenus);\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 clientNeedsData?.data?.data?.map(condition => ({ \n label: upperFirst(condition?.name), \n value: condition?.id \n })) ?? [], [clientNeedsData]\n );\n\n const selectedClientNeeds = useMemo(() => \n clientNeeds.filter(clientNeed => \n caseData?.person_condition_ids?.includes(clientNeed.value)\n ), [clientNeeds, caseData?.person_condition_ids]\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 }, [selectedClientNeeds]);\n\n useEffect(() => {\n setInitialValues({\n ...referral,\n ...((isNil(referral.primaryWorker) && isOON) ?\n { primaryWorker: primaryWorkers.find((worker) => worker.id === currentEmployee.id) } :\n null\n ),\n ...(crtb854ForwardingSuperset && referralDescription) ? { referralDescription } : {},\n })\n }, [primaryWorkers, currentEmployee.id, index, isOON, referral, referralDescription]);\n\n useEffect(() => {\n if (!isEmpty(uploadedFiles)) {\n updateAttachments(uploadedFiles);\n }\n }, [uploadedFiles]);\n\n useEffect(() => {\n initializePaymentFormValues();\n }, [initializePaymentFormValues]);\n const showClientNeeds = !isEmpty(clientNeeds);\n\n const validateOpenDate = (date) => { \n try {\n const openDate = new Date(parseInt(date) * 1000);\n const maxDate = new Date(parseInt(today) * 1000);\n const minDate = new Date(moment().subtract(1, 'year').unix() * 1000);\n \n return (isNaN(openDate.getTime()) || openDate.getTime() < minDate || openDate.getTime() > maxDate) ? false : true;\n } catch (error) {\n console.error('Error validating open date', error);\n return false;\n }\n }\n\n return (\n <Form\n initialValues={initialValues}\n onSubmit={() => { }}\n validate={(values) => validateForm({\n values,\n isOON,\n showClientNeeds,\n showNetworkSelect,\n feeScheduleProgram,\n validateOpenDate,\n validateCostAmount,\n validateUnitAmount,\n fspUtils,\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 }) => {\n onSetForm && onSetForm(form);\n return (\n <>\n <FormSpy\n subscription={{ values: true }}\n onChange={onChange}\n />\n <div\n className={`bg-white border border-solid border-blue-border rounded md:w-4/6 lg:w-4/6`}\n >\n <div className=\"p-5 bg-dark-fill-blue\">\n <h3 className=\"text-xl font-black mb-1\">\n {referralTitle}\n </h3>\n {!newLanguageDashboard && <h3>\n {referralSubtitle}\n </h3>}\n </div>\n <div className=\"p-5\">\n {!newLanguageDashboard && isOON && (\n <div className=\"bg-alert-yellow border border-solid border-canary-yellow rounded p-3 mb-5\">\n <p className=\"text-brand-blue\">\n You need to contact these programs directly because\n they're not receiving referrals on the Unite Us Platform.\n </p>\n </div>\n )}\n <h5>PROGRAMS</h5>\n {programs.map((program) => {\n const menuIsOpen = isEmpty(moveReferralMenus) ? false : moveReferralMenus?.find((p) => p.id === program.id)?.menuIsOpen;\n\n const cannotMoveReasons = {}\n unselected.map((i) => {\n return cannotMoveReasons[i] = cannotMoveToReferralReasons({ program, referral, referrals, index: i, currentProvider })\n })\n\n return (\n <ReferralProgramCard\n key={`referral-program-${program?.id}-card`}\n program={program}\n onClick={onProgramClick}\n isOON={programIsOffPlatform(program)}\n menuIsOpen={menuIsOpen}\n unselected={unselected}\n referral={referral}\n removeProgram={removeProgram}\n moveToNewReferral={moveToNewReferral}\n moveToExistingReferral={moveToExistingReferral}\n cannotMoveReasons={cannotMoveReasons}\n />\n );\n })}\n <p className=\"text-center text-dark-grey my-10\">\n Click on the three-dot icon to edit referral groupings.\n {hasDraftReferral ? (\n <div>\n To add more programs, go to the <a onClick={navigateToAddResources}>Add Resources</a> page.\n </div>\n ) : null}\n </p>\n\n {showNetworkSelect && (\n <div className=\"mb-10\">\n <Field\n name=\"network\"\n required\n key={`referral-${index}-network`}\n >\n {(params) => (\n <SelectField\n required\n id=\"network-selection\"\n label=\"Network Selection\"\n placeholder=\"Choose one...\"\n options={networks}\n labelKey=\"name\"\n valueKey=\"id\"\n validations={isRequired}\n {...params}\n />\n )}\n </Field>\n </div>\n )}\n\n {feeScheduleProgram?.authorization_required && (\n <AuthorizationSubform \n feeScheduleProgram={feeScheduleProgram}\n formValues={values}\n setReferralErrors={(errors) => setReferralErrors(index, errors)} \n />\n )}\n\n {newLanguageDashboard && isOON && <h5 className='mb-2'>CASE INFORMATION</h5>}\n\n {newLanguageDashboard && isOON && (\n <div className=\"bg-alert-yellow border border-solid border-canary-yellow rounded p-3 mb-5\">\n <p className=\"text-brand-blue\">\n These programs aren't accepting referrals in Unite Us.\n We'll create an off-platform case where you can document communication with or services provided by the program.\n </p>\n </div>\n )}\n\n <Field\n name=\"description\"\n required\n key={`referral-${index}-description`}\n >\n {(params) => (\n <TextField\n afterLabelContent={(\n <InfoPanel\n className=\"mb-4 mt-2\"\n message={REFERRAL_PII_PHI_DESCRIPTION}\n />\n )}\n id=\"referral-description\"\n label={newLanguageDashboard ? \"Description\" : \"Referral Description\"}\n placeholder={newLanguageDashboard ? \"E.g. Client needs food assistance. These programs are off-platform and need to be contacted in order to facilitate the referral.\" : \"Describe your client's current situation and reason for referral.\"}\n rows={3}\n inline={false}\n validations={isRequired}\n required\n style={source === 'emr' && get(params, 'meta.touched') && !get(params, 'meta.valid') ? { text: { 'border-color': 'red' } } : {}}\n {...params}\n />\n )}\n </Field>\n\n { isOON && (\n <Field\n name=\"opened_date\"\n required\n key={`opened-${index}-date`}\n >\n {(params) => (\n <DateField\n required\n id=\"opened-date\"\n label={newLanguageDashboard ? \"Case open date\": \"Open date\"}\n validations={validateOpenDate(params.input.value)}\n minDate={moment().subtract(1, 'year').unix()}\n maxDate={today}\n style={source === 'emr' && get(params, 'meta.touched') && !get(params, 'meta.valid') ? { text: { 'border-color': 'red' } } : {}}\n {...params}\n />\n )}\n </Field>) }\n\n {isOON && (\n <Field\n name=\"primaryWorker\"\n required\n key={`referral-${index}-primary-worker`}\n >\n {(params) => (\n <SelectField\n required\n id=\"primary-worker\"\n label=\"Primary Worker\"\n placeholder=\"Choose one...\"\n loadOptions={(search) => setQuery(search)}\n options={primaryWorkers}\n labelKey=\"full_name\"\n valueKey=\"id\"\n validations={isRequired}\n {...params}\n />\n )}\n </Field>\n )}\n\n {showClientNeeds && (\n <>\n <p className=\"mb-4 mt-2 text-dark-blue\">Select the identified need from the client’s screening or assessment that relates to this referral.</p>\n <Field\n name=\"client_need\"\n required\n key={`associated-${index}-need`}\n >\n {(params) => (\n <ReferralClientNeedsField params={params} clientNeeds={clientNeeds} />\n )}\n </Field>\n\n </>\n )}\n\n {attachableDocuments && (\n <div className=\"upload-documents\">\n <h5>Documents</h5>\n <ContactDocumentsSelector documentFields={attachableDocuments} />\n </div>\n )}\n\n {/* Attachment area */}\n <FileUpload\n rejectedFiles={rejectedFiles}\n setRejectedFiles={setRejectedFiles}\n setUploadedFiles={setUploadedFiles}\n uploadedFiles={attachments || []}\n />\n </div>\n </div>\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}\n\nReferralBuilderForm.defaultProps = {\n unselected: [],\n referralSubtitle: '',\n}\n\nexport default ReferralBuilderForm;\n"],"mappings":"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","ignoreList":[]}
@@ -126,7 +126,7 @@ export const getReferralSubtitle = (referrals, selected) => {
126
126
  }
127
127
  return 'The recipient can accept, reject, or forward this referral.';
128
128
  };
129
- export const initializeReferralErrors = (referrals, showClientNeeds) => {
129
+ export const initializeReferralErrors = referrals => {
130
130
  const errors = {};
131
131
  referrals.map((referral, index) => {
132
132
  if (referral) {
@@ -148,8 +148,7 @@ export const initializeReferralErrors = (referrals, showClientNeeds) => {
148
148
  description: !referral.description || referral.description.trim() === '',
149
149
  primary_worker: referralIsOON(referral) && !referral.primaryWorker,
150
150
  network: shouldShowNetworkSelect(networks, programs) && !referral.network,
151
- opened_date: referralIsOON(referral) && !(referral !== null && referral !== void 0 && referral.opened_date),
152
- client_need: !referral.client_need && showClientNeeds
151
+ opened_date: referralIsOON(referral) && !(referral !== null && referral !== void 0 && referral.opened_date)
153
152
  };
154
153
  const combinedErrors = _objectSpread(_objectSpread({}, authErrors), missingRequiredFields);
155
154
  errors[index] = combinedErrors;