@unite-us/app-create-referral 0.7.1-bugfix-auth-validations-ff-off-f02ba23 → 0.7.1
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.
|
@@ -72,7 +72,6 @@ function ReferralBuilder() {
|
|
|
72
72
|
var form = (0, _react.useRef)();
|
|
73
73
|
var hint542SupersetUnlistedPrograms = (0, _useFeatureFlag.useFeatureFlag)('hint542SupersetUnlistedPrograms', false);
|
|
74
74
|
var crtb1239AdaptDraftReferralFlow = (0, _useFeatureFlag.useFeatureFlag)('crtb1239AdaptDraftReferralFlow', false);
|
|
75
|
-
var pays3551AuthInSuperset = (0, _useFeatureFlag.useFeatureFlag)('pays3551AuthInSuperset', false);
|
|
76
75
|
var _useState = (0, _react.useState)(false),
|
|
77
76
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
78
77
|
aboutGroupedReferralsModalIsOpen = _useState2[0],
|
|
@@ -118,7 +117,7 @@ function ReferralBuilder() {
|
|
|
118
117
|
var referralBuilderTitle = crtb1239AdaptDraftReferralFlow && hasDraftReferral ? 'Edit Your Referrals' : 'Prepare Your Referrals';
|
|
119
118
|
var onReferralsBuilt = function onReferralsBuilt(groupedReferrals) {
|
|
120
119
|
if (!(0, _lodash.isEmpty)(groupedReferrals)) {
|
|
121
|
-
var _errors = (0, _utils.mapReferralErrorsToIndex)(groupedReferrals
|
|
120
|
+
var _errors = (0, _utils.mapReferralErrorsToIndex)(groupedReferrals);
|
|
122
121
|
setErrors(_errors);
|
|
123
122
|
}
|
|
124
123
|
};
|
|
@@ -170,9 +169,9 @@ function ReferralBuilder() {
|
|
|
170
169
|
setSelectedIndex(index);
|
|
171
170
|
};
|
|
172
171
|
(0, _react.useEffect)(function () {
|
|
173
|
-
var errors = (0, _utils.mapReferralErrorsToIndex)(referrals
|
|
172
|
+
var errors = (0, _utils.mapReferralErrorsToIndex)(referrals);
|
|
174
173
|
setErrors(errors);
|
|
175
|
-
}, [selectedIndex
|
|
174
|
+
}, [selectedIndex]);
|
|
176
175
|
(0, _react.useEffect)(function () {
|
|
177
176
|
(0, _fetchContactDocuments.default)(person.id).then(function (result) {
|
|
178
177
|
setDocuments(result);
|
|
@@ -342,7 +341,7 @@ function ReferralBuilder() {
|
|
|
342
341
|
var errors = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
343
342
|
setErrors(function (previousErrors) {
|
|
344
343
|
var _context9;
|
|
345
|
-
var modelErrors = (0, _concat.default)(_context9 = []).call(_context9, (0, _toConsumableArray2.default)((0, _utils.mapReferralErrorsToIndex)(referrals
|
|
344
|
+
var modelErrors = (0, _concat.default)(_context9 = []).call(_context9, (0, _toConsumableArray2.default)((0, _utils.mapReferralErrorsToIndex)(referrals)[selectedIndex] || []), (0, _toConsumableArray2.default)(errors));
|
|
346
345
|
var isInvalid = (0, _lodash.isEmpty)([modelErrors]);
|
|
347
346
|
return _objectSpread(_objectSpread({}, previousErrors), !isInvalid && (0, _defineProperty2.default)({}, selectedIndex, (0, _toConsumableArray2.default)(modelErrors)));
|
|
348
347
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReferralBuilder.js","names":["_react","_interopRequireWildcard","require","_lodash","_reactRouterDom","_ui","_AppCreateReferralProvider","_StepHeader","_interopRequireDefault","_constants","_AboutGroupedReferralsModal","_ReferralCard","_ReferralBuilderForm","_utils","_useBuildReferrals2","_CreateReferralContainer","_NavButtons","_NoReferralsDisplay","_removeReferralProgram","_Spinner","_useCreateReferrals","_config","_fetchContactDocuments","_classnames","_fetchNetworks","_useFeatureFlag","_getRequireWildcardCache","e","_WeakMap","r","t","__esModule","_typeof","default","has","get","n","__proto__","a","_Object$defineProperty","_Object$getOwnPropertyDescriptor","u","Object","prototype","hasOwnProperty","call","i","set","ownKeys","_Object$keys2","_Object$getOwnPropertySymbols","o","_filterInstanceProperty2","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","_Object$getOwnPropertyDescriptors","_Object$defineProperties","ReferralBuilder","_location$state$selec","_location$state","_context11","location","useLocation","navigate","useNavigate","_useAppCreateReferral","useAppCreateReferralContext","dispatch","_useAppCreateReferral2","state","referrals","selectedPrograms","currentEmployee","currentProvider","fieldsConfig","source","person","draftState","form","useRef","hint542SupersetUnlistedPrograms","useFeatureFlag","crtb1239AdaptDraftReferralFlow","pays3551AuthInSuperset","_useState","useState","_useState2","_slicedToArray2","aboutGroupedReferralsModalIsOpen","setAboutGroupedReferralsModalIsOpen","_useState3","selectedReferral","_useState4","selectedIndex","setSelectedIndex","_useState5","_useState6","errors","setErrors","_useState7","_useState8","nextClicked","setNextClicked","_useState9","_useState10","saveDraftClicked","setSaveDraftClicked","_useState11","_useState12","expandReferralsCard","setExpandReferralsCard","_useState13","window","innerWidth","_useState14","width","setWidth","_useState15","_useState16","documents","setDocuments","_useState17","_useState18","loadedDocuments","setloadedDocuments","isEmrSource","_useState19","_useState20","networksUnlistedProgram","setNetworksUnlistedProgram","hasDraftReferral","referralBuilderTitle","onReferralsBuilt","groupedReferrals","isEmpty","mapReferralErrorsToIndex","_useBuildReferrals","useBuildReferrals","isLoading","useEffect","hasUnlistedPrograms","some","program","isUnlistedProgram","fetchNetworks","then","networks","handleResize","addEventListener","removeEventListener","handleExpandReferralsCard","changeWidthReferralCard","onLearnMoreClick","onCloseGroupedReferralsModal","refModal","current","openDialog","onReferralCardClick","index","fetchContactDocuments","id","result","updatedReferrals","_map","referral","attachableDocuments","doc","attached","document","setData","getSelected","saveValuesOnChange","props","values","_values","setTimeout","_toConsumableArray2","focusErrors","firstErrorIndex","_parseInt2","_keys","setFocus","onNextClick","isEmptyErrors","_context","_context2","_context3","_context4","_context5","_includes","_form$current","mutators","setFieldTouched","networkField","getElementById","parentElement","focus","_form$current2","amountRequested","_form$current3","selectDatesButton","_form$current4","descriptionField","_form$current5","primaryWorkerField","moveToExistingReferral","_context6","programs","_filter","p","_concat","compact","newIndex","moveToNewReferral","_context7","_context8","newReferral","description","newReferrals","removeProgram","programId","serviceId","removeReferralProgram","newReferralPrograms","_flatMap","newSelectedPrograms","intersectionBy","updateAttachments","attachments","assignReferralErrors","useCallback","undefined","previousErrors","_context9","modelErrors","isInvalid","navigateBack","CALLBACKS","onNavigateBack","navigateToAddResources","onNavigateToAddResources","createReferrals","useCreateReferrals","handleSaveDraftReferral","_ref2","_asyncToGenerator2","_regenerator","mark","_callee","onSaveDraftReferral","wrap","_callee$","_context10","prev","next","draft","notify","success","stop","createElement","center","referralSubtitle","getReferralSubtitle","unselectedReferralIndexes","_referral","allPrograms","errorMessage","generateErrorMessage","currentReferral","xlOrLgInvisibleChevron","classNames","xlOrLgSpaceReferralDiv","className","header","REFERRAL_BUILDER_DESCRIPTION","type","onClick","onCloseModal","Fragment","onBackClick","onForwardClick","primaryLabel","hideForwardButtons","hideSaveDraftLink","hasOffPlatformReferrals","Icon","icon","color","concat","key","onChange","unselected","onSetForm","newForm"],"sources":["../../../src/pages/builder/ReferralBuilder.js"],"sourcesContent":["import React, { useCallback, useEffect, useState, useRef } from 'react';\nimport { isEmpty, get, compact, intersectionBy } from 'lodash';\nimport { useNavigate, useLocation } from 'react-router-dom';\nimport { Icon } from '@unite-us/ui';\nimport { setData, useAppCreateReferralContext } from '../../context/AppCreateReferralProvider';\nimport StepHeader from '../../components/StepHeader';\nimport { REFERRAL_BUILDER_DESCRIPTION } from './constants';\nimport AboutGroupedReferralsModal from './AboutGroupedReferralsModal';\nimport ReferralCard from './ReferralCard';\nimport ReferralBuilderForm from './ReferralBuilderForm';\nimport { isUnlistedProgram, getReferralSubtitle, mapReferralErrorsToIndex, generateErrorMessage, hasOffPlatformReferrals, isEmptyErrors } 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 } from '../../api/config';\nimport fetchContactDocuments from '../../actions/Document/Contact/Group/fetchContactDocuments';\nimport classNames from 'classnames';\nimport fetchNetworks from '../../actions/Referral/fetchNetworks';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\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 },\n } = useAppCreateReferralContext();\n const form = useRef();\n\n const hint542SupersetUnlistedPrograms = useFeatureFlag('hint542SupersetUnlistedPrograms', false);\n const crtb1239AdaptDraftReferralFlow = useFeatureFlag('crtb1239AdaptDraftReferralFlow', false);\n const pays3551AuthInSuperset = useFeatureFlag('pays3551AuthInSuperset', false);\n\n const [aboutGroupedReferralsModalIsOpen, setAboutGroupedReferralsModalIsOpen] = useState(false);\n const [selectedIndex, setSelectedIndex] = useState(location.state?.selectedReferral ?? 0);\n const [errors, setErrors] = useState({})\n const [nextClicked, setNextClicked] = useState(false);\n const [saveDraftClicked, setSaveDraftClicked] = useState(false);\n const [expandReferralsCard, setExpandReferralsCard] = useState(false);\n const [width, setWidth] = useState(window.innerWidth);\n const [documents, setDocuments] = useState([]);\n const [loadedDocuments, setloadedDocuments] = useState(false);\n const isEmrSource = source === 'emr';\n const [networksUnlistedProgram, setNetworksUnlistedProgram] = useState([]);\n const hasDraftReferral = draftState?.state === 'draft';\n const referralBuilderTitle = crtb1239AdaptDraftReferralFlow && hasDraftReferral ? 'Edit Your Referrals' : 'Prepare Your Referrals';\n\n const onReferralsBuilt = (groupedReferrals) => {\n if(!isEmpty(groupedReferrals)) {\n const errors = mapReferralErrorsToIndex(groupedReferrals, pays3551AuthInSuperset);\n setErrors(errors);\n }\n };\n\n const { isLoading } = useBuildReferrals(onReferralsBuilt);\n\n useEffect(() => {\n if (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 }, []);\n\n useEffect(() => {\n const handleResize = () => {\n setWidth(window.innerWidth);\n }\n window.addEventListener(\"resize\", handleResize);\n return () => window.removeEventListener(\"resize\", handleResize);\n }, [width]);\n\n useEffect(() => {\n width > (isEmrSource ? 800 : 1200) && handleExpandReferralsCard();\n }, [width]);\n\n const handleExpandReferralsCard = () => {\n if (expandReferralsCard) {\n changeWidthReferralCard();\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.openDialog();\n }\n }, [aboutGroupedReferralsModalIsOpen]);\n\n const onReferralCardClick = (index) => {\n setSelectedIndex(index);\n }\n\n useEffect(() => {\n const errors = mapReferralErrorsToIndex(referrals, pays3551AuthInSuperset);\n setErrors(errors);\n }, [selectedIndex, referrals])\n\n useEffect(() => {\n fetchContactDocuments(person.id).then((result) => {\n setDocuments(result);\n });\n }, []);\n\n useEffect(() => {\n if (!isEmpty(referrals) && !loadedDocuments && !isEmpty(documents)) {\n const updatedReferrals = referrals.map((referral) => {\n if(!referral.attachableDocuments) {\n return {\n ...referral,\n attachableDocuments: documents.map((doc) => ({\n attached: false,\n document: doc,\n })),\n };\n } else {\n return referral;\n }\n });\n\n dispatch(setData({\n referrals: updatedReferrals,\n }));\n\n setloadedDocuments(true);\n }\n }, [referrals]);\n\n const getSelected = () => referrals && referrals[selectedIndex]\n\n const saveValuesOnChange = (props) => {\n const { values } = props;\n referrals[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: [...referrals]\n })), 0\n )\n }\n\n const focusErrors = () => {\n if (isEmpty(errors[selectedIndex])) {\n const firstErrorIndex = parseInt(Object.keys(errors)[0]);\n setSelectedIndex(firstErrorIndex);\n setFocus(firstErrorIndex);\n } else {\n setFocus(selectedIndex);\n }\n }\n\n const onNextClick = () => {\n if (isEmptyErrors(errors)) {\n return navigate('/create/supporting-info');\n }\n\n if (isEmpty(errors[selectedIndex])) {\n const firstErrorIndex = parseInt(Object.keys(errors)[0]);\n setSelectedIndex(firstErrorIndex);\n setFocus(firstErrorIndex)\n } else {\n setFocus(selectedIndex)\n }\n focusErrors();\n setNextClicked(true);\n }\n\n const setFocus = (index) => {\n setTimeout(() => {\n if (errors[index].includes('network')) {\n form.current?.mutators?.setFieldTouched('network', true);\n const networkField = document.getElementById(\"network-selection\").parentElement.parentElement;\n return networkField.focus();\n }\n if (errors[index].includes('amount_requested')) {\n form.current?.mutators?.setFieldTouched('paymentAuthForm.amount_requested', true);\n const amountRequested = document.getElementById(\"authorization-request-amount-requested\");\n return amountRequested.focus();\n }\n if (errors[index].includes('paymentAuthForm.service_end')) {\n form.current?.mutators?.setFieldTouched('paymentAuthForm.service_end', true);\n const selectDatesButton = document.getElementById(\"authorization-request-service-dates\");\n return selectDatesButton.focus();\n }\n if (errors[index].includes('description')) {\n form.current?.mutators?.setFieldTouched('description', true);\n const descriptionField = document.getElementById(\"referral-description\");\n return descriptionField.focus();\n }\n if (errors[index].includes('primary_worker')) {\n form.current?.mutators?.setFieldTouched('primaryWorker', true);\n const primaryWorkerField = document.getElementById(\"primary-worker\").parentElement.parentElement;\n return primaryWorkerField.focus();\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 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 = (programId, serviceId) => {\n const referral = referrals[selectedIndex];\n const newReferral = removeReferralProgram({ referral, 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 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 assignReferralErrors = useCallback((errors = []) => {\n setErrors((previousErrors) => {\n const modelErrors = [...(mapReferralErrorsToIndex(referrals, pays3551AuthInSuperset)[selectedIndex] || []), ...errors];\n const isInvalid = isEmpty([modelErrors]);\n return {\n ...previousErrors,\n ...(!isInvalid && { [selectedIndex]: [...modelErrors] }),\n }\n })\n }, [selectedIndex, referrals]);\n\n const navigateBack = () => CALLBACKS.onNavigateBack ? CALLBACKS.onNavigateBack() : navigate(-1);\n const navigateToAddResources = () => CALLBACKS.onNavigateToAddResources();\n\n const createReferrals = useCreateReferrals();\n const handleSaveDraftReferral = async () => {\n setSaveDraftClicked(true);\n if (isEmptyErrors(errors)) {\n await createReferrals({ draft: true });\n const { onSaveDraftReferral } = CALLBACKS;\n onSaveDraftReferral && onSaveDraftReferral();\n CALLBACKS.notify.success('Draft referral successfully saved');\n } else {\n focusErrors();\n }\n };\n\n const changeWidthReferralCard = () => {\n setExpandReferralsCard(!expandReferralsCard);\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': isEmrSource,\n 'xl:invisible': !isEmrSource,\n });\n\n const xlOrLgSpaceReferralDiv = classNames({\n 'lg:space-x-6': isEmrSource,\n 'lg:space-x-0 xl:space-x-6': !isEmrSource,\n });\n\n return (\n <CreateReferralContainer>\n <div className=\"px-12\">\n <StepHeader header={referralBuilderTitle}>\n {REFERRAL_BUILDER_DESCRIPTION}\n <button\n className=\"text-current-blue\"\n type=\"button\"\n onClick={onLearnMoreClick}\n >\n Learn more about referrals.\n </button>\n </StepHeader>\n\n <AboutGroupedReferralsModal refModal={refModal} onCloseModal={onCloseGroupedReferralsModal} />\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 crtb1239AdaptDraftReferralFlow={crtb1239AdaptDraftReferralFlow}\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=\"IconInfoCircle\" 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 space-x-0 my-5 sm:space-x-0 md:space-x-0 ${xlOrLgSpaceReferralDiv}`}>\n <div id=\"referrals-card\"\n className={\"bg-white border border-solid border-blue-border rounded \" +\n (expandReferralsCard ? 'absolute inset-y-0 left-0 z-20 md:w-3/6 lg:w-3/6': '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 <h2 className=\"text-xl font-black mb-5\">\n Referrals\n </h2>\n </div>\n <div className={xlOrLgInvisibleChevron}>\n <Icon icon={expandReferralsCard ? \"V2ChevronLeft\" : \"V2ChevronRight\"} className=\"w-6 h-6\" onClick={() => changeWidthReferralCard()}/>\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 crtb1239AdaptDraftReferralFlow={crtb1239AdaptDraftReferralFlow}\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 assignReferralErrors={assignReferralErrors}\n />\n ) : null\n }\n </div>\n </div>\n ) : (\n <NoReferralsDisplay\n crtb1239AdaptDraftReferralFlow={crtb1239AdaptDraftReferralFlow}\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 crtb1239AdaptDraftReferralFlow={crtb1239AdaptDraftReferralFlow}\n />\n </>\n </div>\n </CreateReferralContainer>\n )\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ReferralBuilder.js","names":["_react","_interopRequireWildcard","require","_lodash","_reactRouterDom","_ui","_AppCreateReferralProvider","_StepHeader","_interopRequireDefault","_constants","_AboutGroupedReferralsModal","_ReferralCard","_ReferralBuilderForm","_utils","_useBuildReferrals2","_CreateReferralContainer","_NavButtons","_NoReferralsDisplay","_removeReferralProgram","_Spinner","_useCreateReferrals","_config","_fetchContactDocuments","_classnames","_fetchNetworks","_useFeatureFlag","_getRequireWildcardCache","e","_WeakMap","r","t","__esModule","_typeof","default","has","get","n","__proto__","a","_Object$defineProperty","_Object$getOwnPropertyDescriptor","u","Object","prototype","hasOwnProperty","call","i","set","ownKeys","_Object$keys2","_Object$getOwnPropertySymbols","o","_filterInstanceProperty2","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","_Object$getOwnPropertyDescriptors","_Object$defineProperties","ReferralBuilder","_location$state$selec","_location$state","_context11","location","useLocation","navigate","useNavigate","_useAppCreateReferral","useAppCreateReferralContext","dispatch","_useAppCreateReferral2","state","referrals","selectedPrograms","currentEmployee","currentProvider","fieldsConfig","source","person","draftState","form","useRef","hint542SupersetUnlistedPrograms","useFeatureFlag","crtb1239AdaptDraftReferralFlow","_useState","useState","_useState2","_slicedToArray2","aboutGroupedReferralsModalIsOpen","setAboutGroupedReferralsModalIsOpen","_useState3","selectedReferral","_useState4","selectedIndex","setSelectedIndex","_useState5","_useState6","errors","setErrors","_useState7","_useState8","nextClicked","setNextClicked","_useState9","_useState10","saveDraftClicked","setSaveDraftClicked","_useState11","_useState12","expandReferralsCard","setExpandReferralsCard","_useState13","window","innerWidth","_useState14","width","setWidth","_useState15","_useState16","documents","setDocuments","_useState17","_useState18","loadedDocuments","setloadedDocuments","isEmrSource","_useState19","_useState20","networksUnlistedProgram","setNetworksUnlistedProgram","hasDraftReferral","referralBuilderTitle","onReferralsBuilt","groupedReferrals","isEmpty","mapReferralErrorsToIndex","_useBuildReferrals","useBuildReferrals","isLoading","useEffect","hasUnlistedPrograms","some","program","isUnlistedProgram","fetchNetworks","then","networks","handleResize","addEventListener","removeEventListener","handleExpandReferralsCard","changeWidthReferralCard","onLearnMoreClick","onCloseGroupedReferralsModal","refModal","current","openDialog","onReferralCardClick","index","fetchContactDocuments","id","result","updatedReferrals","_map","referral","attachableDocuments","doc","attached","document","setData","getSelected","saveValuesOnChange","props","values","_values","setTimeout","_toConsumableArray2","focusErrors","firstErrorIndex","_parseInt2","_keys","setFocus","onNextClick","isEmptyErrors","_context","_context2","_context3","_context4","_context5","_includes","_form$current","mutators","setFieldTouched","networkField","getElementById","parentElement","focus","_form$current2","amountRequested","_form$current3","selectDatesButton","_form$current4","descriptionField","_form$current5","primaryWorkerField","moveToExistingReferral","_context6","programs","_filter","p","_concat","compact","newIndex","moveToNewReferral","_context7","_context8","newReferral","description","newReferrals","removeProgram","programId","serviceId","removeReferralProgram","newReferralPrograms","_flatMap","newSelectedPrograms","intersectionBy","updateAttachments","attachments","assignReferralErrors","useCallback","undefined","previousErrors","_context9","modelErrors","isInvalid","navigateBack","CALLBACKS","onNavigateBack","navigateToAddResources","onNavigateToAddResources","createReferrals","useCreateReferrals","handleSaveDraftReferral","_ref2","_asyncToGenerator2","_regenerator","mark","_callee","onSaveDraftReferral","wrap","_callee$","_context10","prev","next","draft","notify","success","stop","createElement","center","referralSubtitle","getReferralSubtitle","unselectedReferralIndexes","_referral","allPrograms","errorMessage","generateErrorMessage","currentReferral","xlOrLgInvisibleChevron","classNames","xlOrLgSpaceReferralDiv","className","header","REFERRAL_BUILDER_DESCRIPTION","type","onClick","onCloseModal","Fragment","onBackClick","onForwardClick","primaryLabel","hideForwardButtons","hideSaveDraftLink","hasOffPlatformReferrals","Icon","icon","color","concat","key","onChange","unselected","onSetForm","newForm"],"sources":["../../../src/pages/builder/ReferralBuilder.js"],"sourcesContent":["import React, { useCallback, useEffect, useState, useRef } from 'react';\nimport { isEmpty, get, compact, intersectionBy } from 'lodash';\nimport { useNavigate, useLocation } from 'react-router-dom';\nimport { Icon } from '@unite-us/ui';\nimport { setData, useAppCreateReferralContext } from '../../context/AppCreateReferralProvider';\nimport StepHeader from '../../components/StepHeader';\nimport { REFERRAL_BUILDER_DESCRIPTION } from './constants';\nimport AboutGroupedReferralsModal from './AboutGroupedReferralsModal';\nimport ReferralCard from './ReferralCard';\nimport ReferralBuilderForm from './ReferralBuilderForm';\nimport { isUnlistedProgram, getReferralSubtitle, mapReferralErrorsToIndex, generateErrorMessage, hasOffPlatformReferrals, isEmptyErrors } 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 } from '../../api/config';\nimport fetchContactDocuments from '../../actions/Document/Contact/Group/fetchContactDocuments';\nimport classNames from 'classnames';\nimport fetchNetworks from '../../actions/Referral/fetchNetworks';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\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 },\n } = useAppCreateReferralContext();\n const form = useRef();\n\n const hint542SupersetUnlistedPrograms = useFeatureFlag('hint542SupersetUnlistedPrograms', false);\n const crtb1239AdaptDraftReferralFlow = useFeatureFlag('crtb1239AdaptDraftReferralFlow', false);\n\n const [aboutGroupedReferralsModalIsOpen, setAboutGroupedReferralsModalIsOpen] = useState(false);\n const [selectedIndex, setSelectedIndex] = useState(location.state?.selectedReferral ?? 0);\n const [errors, setErrors] = useState({})\n const [nextClicked, setNextClicked] = useState(false);\n const [saveDraftClicked, setSaveDraftClicked] = useState(false);\n const [expandReferralsCard, setExpandReferralsCard] = useState(false);\n const [width, setWidth] = useState(window.innerWidth);\n const [documents, setDocuments] = useState([]);\n const [loadedDocuments, setloadedDocuments] = useState(false);\n const isEmrSource = source === 'emr';\n const [networksUnlistedProgram, setNetworksUnlistedProgram] = useState([]);\n const hasDraftReferral = draftState?.state === 'draft';\n const referralBuilderTitle = crtb1239AdaptDraftReferralFlow && hasDraftReferral ? 'Edit Your Referrals' : 'Prepare Your Referrals';\n\n const onReferralsBuilt = (groupedReferrals) => {\n if(!isEmpty(groupedReferrals)) {\n const errors = mapReferralErrorsToIndex(groupedReferrals);\n setErrors(errors);\n }\n };\n\n const { isLoading } = useBuildReferrals(onReferralsBuilt);\n\n useEffect(() => {\n if (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 }, []);\n\n useEffect(() => {\n const handleResize = () => {\n setWidth(window.innerWidth);\n }\n window.addEventListener(\"resize\", handleResize);\n return () => window.removeEventListener(\"resize\", handleResize);\n }, [width]);\n\n useEffect(() => {\n width > (isEmrSource ? 800 : 1200) && handleExpandReferralsCard();\n }, [width]);\n\n const handleExpandReferralsCard = () => {\n if (expandReferralsCard) {\n changeWidthReferralCard();\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.openDialog();\n }\n }, [aboutGroupedReferralsModalIsOpen]);\n\n const onReferralCardClick = (index) => {\n setSelectedIndex(index);\n }\n\n useEffect(() => {\n const errors = mapReferralErrorsToIndex(referrals)\n setErrors(errors);\n }, [selectedIndex])\n\n useEffect(() => {\n fetchContactDocuments(person.id).then((result) => {\n setDocuments(result);\n });\n }, []);\n\n useEffect(() => {\n if (!isEmpty(referrals) && !loadedDocuments && !isEmpty(documents)) {\n const updatedReferrals = referrals.map((referral) => {\n if(!referral.attachableDocuments) {\n return {\n ...referral,\n attachableDocuments: documents.map((doc) => ({\n attached: false,\n document: doc,\n })),\n };\n } else {\n return referral;\n }\n });\n\n dispatch(setData({\n referrals: updatedReferrals,\n }));\n\n setloadedDocuments(true);\n }\n }, [referrals]);\n\n const getSelected = () => referrals && referrals[selectedIndex]\n\n const saveValuesOnChange = (props) => {\n const { values } = props;\n referrals[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: [...referrals]\n })), 0\n )\n }\n\n const focusErrors = () => {\n if (isEmpty(errors[selectedIndex])) {\n const firstErrorIndex = parseInt(Object.keys(errors)[0]);\n setSelectedIndex(firstErrorIndex);\n setFocus(firstErrorIndex);\n } else {\n setFocus(selectedIndex);\n }\n }\n\n const onNextClick = () => {\n if (isEmptyErrors(errors)) {\n return navigate('/create/supporting-info');\n }\n\n if (isEmpty(errors[selectedIndex])) {\n const firstErrorIndex = parseInt(Object.keys(errors)[0]);\n setSelectedIndex(firstErrorIndex);\n setFocus(firstErrorIndex)\n } else {\n setFocus(selectedIndex)\n }\n focusErrors();\n setNextClicked(true);\n }\n\n const setFocus = (index) => {\n setTimeout(() => {\n if (errors[index].includes('network')) {\n form.current?.mutators?.setFieldTouched('network', true);\n const networkField = document.getElementById(\"network-selection\").parentElement.parentElement;\n return networkField.focus();\n }\n if (errors[index].includes('amount_requested')) {\n form.current?.mutators?.setFieldTouched('paymentAuthForm.amount_requested', true);\n const amountRequested = document.getElementById(\"authorization-request-amount-requested\");\n return amountRequested.focus();\n }\n if (errors[index].includes('paymentAuthForm.service_end')) {\n form.current?.mutators?.setFieldTouched('paymentAuthForm.service_end', true);\n const selectDatesButton = document.getElementById(\"authorization-request-service-dates\");\n return selectDatesButton.focus();\n }\n if (errors[index].includes('description')) {\n form.current?.mutators?.setFieldTouched('description', true);\n const descriptionField = document.getElementById(\"referral-description\");\n return descriptionField.focus();\n }\n if (errors[index].includes('primary_worker')) {\n form.current?.mutators?.setFieldTouched('primaryWorker', true);\n const primaryWorkerField = document.getElementById(\"primary-worker\").parentElement.parentElement;\n return primaryWorkerField.focus();\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 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 = (programId, serviceId) => {\n const referral = referrals[selectedIndex];\n const newReferral = removeReferralProgram({ referral, 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 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 assignReferralErrors = useCallback((errors = []) => {\n setErrors((previousErrors) => {\n const modelErrors = [...(mapReferralErrorsToIndex(referrals)[selectedIndex] || []), ...errors];\n const isInvalid = isEmpty([modelErrors]);\n return {\n ...previousErrors,\n ...(!isInvalid && { [selectedIndex]: [...modelErrors] }),\n }\n })\n }, [selectedIndex, referrals]);\n\n const navigateBack = () => CALLBACKS.onNavigateBack ? CALLBACKS.onNavigateBack() : navigate(-1);\n const navigateToAddResources = () => CALLBACKS.onNavigateToAddResources();\n\n const createReferrals = useCreateReferrals();\n const handleSaveDraftReferral = async () => {\n setSaveDraftClicked(true);\n if (isEmptyErrors(errors)) {\n await createReferrals({ draft: true });\n const { onSaveDraftReferral } = CALLBACKS;\n onSaveDraftReferral && onSaveDraftReferral();\n CALLBACKS.notify.success('Draft referral successfully saved');\n } else {\n focusErrors();\n }\n };\n\n const changeWidthReferralCard = () => {\n setExpandReferralsCard(!expandReferralsCard);\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': isEmrSource,\n 'xl:invisible': !isEmrSource,\n });\n\n const xlOrLgSpaceReferralDiv = classNames({\n 'lg:space-x-6': isEmrSource,\n 'lg:space-x-0 xl:space-x-6': !isEmrSource,\n });\n\n return (\n <CreateReferralContainer>\n <div className=\"px-12\">\n <StepHeader header={referralBuilderTitle}>\n {REFERRAL_BUILDER_DESCRIPTION}\n <button\n className=\"text-current-blue\"\n type=\"button\"\n onClick={onLearnMoreClick}\n >\n Learn more about referrals.\n </button>\n </StepHeader>\n\n <AboutGroupedReferralsModal refModal={refModal} onCloseModal={onCloseGroupedReferralsModal} />\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 crtb1239AdaptDraftReferralFlow={crtb1239AdaptDraftReferralFlow}\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=\"IconInfoCircle\" 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 space-x-0 my-5 sm:space-x-0 md:space-x-0 ${xlOrLgSpaceReferralDiv}`}>\n <div id=\"referrals-card\"\n className={\"bg-white border border-solid border-blue-border rounded \" +\n (expandReferralsCard ? 'absolute inset-y-0 left-0 z-20 md:w-3/6 lg:w-3/6': '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 <h2 className=\"text-xl font-black mb-5\">\n Referrals\n </h2>\n </div>\n <div className={xlOrLgInvisibleChevron}>\n <Icon icon={expandReferralsCard ? \"V2ChevronLeft\" : \"V2ChevronRight\"} className=\"w-6 h-6\" onClick={() => changeWidthReferralCard()}/>\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 crtb1239AdaptDraftReferralFlow={crtb1239AdaptDraftReferralFlow}\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 assignReferralErrors={assignReferralErrors}\n />\n ) : null\n }\n </div>\n </div>\n ) : (\n <NoReferralsDisplay\n crtb1239AdaptDraftReferralFlow={crtb1239AdaptDraftReferralFlow}\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 crtb1239AdaptDraftReferralFlow={crtb1239AdaptDraftReferralFlow}\n />\n </>\n </div>\n </CreateReferralContainer>\n )\n}\n"],"mappings":"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"}
|
|
@@ -179,7 +179,7 @@ var getReferralSubtitle = exports.getReferralSubtitle = function getReferralSubt
|
|
|
179
179
|
}
|
|
180
180
|
return 'The recipient will be able to accept, reject, or forward this referral.';
|
|
181
181
|
};
|
|
182
|
-
var mapReferralErrorsToIndex = exports.mapReferralErrorsToIndex = function mapReferralErrorsToIndex(referrals
|
|
182
|
+
var mapReferralErrorsToIndex = exports.mapReferralErrorsToIndex = function mapReferralErrorsToIndex(referrals) {
|
|
183
183
|
var errors = {};
|
|
184
184
|
(0, _map.default)(referrals).call(referrals, function (referral, index) {
|
|
185
185
|
if (referral) {
|
|
@@ -187,7 +187,7 @@ var mapReferralErrorsToIndex = exports.mapReferralErrorsToIndex = function mapRe
|
|
|
187
187
|
var programs = referral.programs;
|
|
188
188
|
var networks = filterNetworks(referral);
|
|
189
189
|
var authErrors = [];
|
|
190
|
-
if (
|
|
190
|
+
if ((_programs$ = programs[0]) !== null && _programs$ !== void 0 && (_programs$ = _programs$.fee_schedule_program) !== null && _programs$ !== void 0 && _programs$.authorization_required) {
|
|
191
191
|
authErrors = (0, _lodash.compact)([!referral.paymentAuthForm.amount_requested ? 'amount_requested' : null, !referral.paymentAuthForm.service_end ? 'service_end' : null]);
|
|
192
192
|
}
|
|
193
193
|
;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","names":["_lodash","require","_constants","_useFeatureFlag","ownKeys","e","r","t","_Object$keys2","_Object$getOwnPropertySymbols","o","_filterInstanceProperty2","call","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","mapProgramsPerService","programs","result","_reduce","out","program","services","serviceId","existingService","_find","item","service","id","buildReferral","programIds","currentProvider","draftState","_context","_context2","_draftState$descripti","_draftState$attachmen","_draftState$network","_map","_concat","description","primaryWorker","attachments","paymentAuthForm","amount_requested","service_start","service_end","network","sendingProvider","state","case","buildReferralsFromPrograms","exports","programsByService","referrals","crtb1239AdaptDraftReferralFlow","useFeatureFlag","idx","referral","firstReferral","filterProgramsReceivingReferrals","_context3","_filter","ref","_context4","_program$status","receiving_referrals","status","toLowerCase","OFF_PLATFORM_REFERRALS_ONLY","referralIsGrouped","programIsFunded","fee_schedule_program","referralIsFunded","every","programIsOffPlatform","_program$provider","_program$provider2","_program$status2","provider","licensed","programIsOnPlatform","_program$provider3","_program$status3","referralIsOON","_context5","some","getReferralStatus","grouped","funded","oon","compact","join","getProgramStatusDisplay","isReceivingReferrals","isOON","title","icon","color","getReferralSubtitle","selected","mapReferralErrorsToIndex","pays3551AuthInSuperset","errors","index","_programs$","_context6","networks","filterNetworks","authErrors","authorization_required","missingRequiredFields","shouldShowNetworkSelect","_toConsumableArray2","isEmpty","undefined","isUnlistedProgram","generateErrorMessage","_context7","errorCount","_flat","_values","prefix","concat","_context8","_context9","sendingNetworks","get","receivingNetworks","_flatMapInstanceProperty","Boolean","uniqBy","head","intersectionBy","hasOffPlatformReferrals","handleKeyPress","action","_context10","_includes","key","addIdToUnlistedPrograms","obj","_context11","name","replace","addProgramToReferral","condition","_context12","p","programIndex","_findIndex","isUnlistedReferral","_referral$programs","_p$id","_startsWith","_program$id","isEmptyErrors","_keys","Array","isArray"],"sources":["../../../src/pages/builder/utils.js"],"sourcesContent":["import {\n compact,\n some,\n isEmpty,\n get,\n head,\n flatMap,\n intersectionBy,\n uniqBy,\n} from 'lodash';\nimport { OFF_PLATFORM_REFERRALS_ONLY } from './constants';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\n\nconst mapProgramsPerService = (programs) => {\n const result = programs.reduce((out, program) => {\n if (program.services) {\n program.services.forEach((serviceId) => {\n const existingService = out.find(item => item.service === serviceId)\n if (!existingService) {\n out.push({\n service: serviceId,\n programs: [program.id]\n })\n } else {\n existingService.programs.push(program.id)\n }\n })\n }\n return out;\n }, [])\n\n return result;\n}\n\nconst buildReferral = (programIds, service, currentProvider, draftState) => {\n return {\n programs: [].concat(programIds).map(id => ({ id })),\n service: {\n id: service\n },\n description: draftState?.description ?? '',\n primaryWorker: null,\n attachments: draftState?.attachments ?? null,\n paymentAuthForm: {\n amount_requested: null,\n service_start: null,\n service_end: null,\n },\n network: draftState?.network ?? null,\n sendingProvider: currentProvider,\n id: draftState?.id,\n state: draftState?.state,\n case: draftState?.case,\n }\n}\n\nexport const buildReferralsFromPrograms = (programs, currentProvider, draftState) => {\n const programsByService = mapProgramsPerService(programs);\n let referrals = [];\n const crtb1239AdaptDraftReferralFlow = useFeatureFlag('crtb1239AdaptDraftReferralFlow', false);\n\n if (programsByService) {\n referrals = programsByService.map((item, idx) => {\n let referral = null;\n\n if (crtb1239AdaptDraftReferralFlow) {\n // Draft state for only the first referral\n const firstReferral = idx === 0 ? draftState : null;\n referral = buildReferral(item.programs, item.service, currentProvider, firstReferral);\n } else {\n referral = buildReferral(item.programs, item.service, currentProvider, draftState);\n }\n\n return referral;\n })\n }\n\n return referrals;\n}\n\nexport const filterProgramsReceivingReferrals = (referrals) => referrals.map((ref) => ({\n ...ref,\n programs: ref.programs.filter((program) =>\n program.receiving_referrals ||\n program?.status?.toLowerCase() === OFF_PLATFORM_REFERRALS_ONLY\n ),\n})).filter((ref) => ref.programs.length > 0);\n\nexport const referralIsGrouped = (referral) => referral.programs.length > 1;\n\nexport const programIsFunded = (program) => program.fee_schedule_program != null;\n\nexport const referralIsFunded = (referral) => {\n return referral.programs.every(programIsFunded);\n}\n\nexport const programIsOffPlatform = (program) => (\n !program?.provider?.licensed ||\n (program?.provider?.licensed && program?.status?.toLowerCase() === OFF_PLATFORM_REFERRALS_ONLY)\n);\n\nexport const programIsOnPlatform = (program) => (\n program?.provider?.licensed && program?.status?.toLowerCase() !== OFF_PLATFORM_REFERRALS_ONLY\n)\n\nexport const referralIsOON = (referral) => some(referral.programs.map((program) => programIsOffPlatform(program)));\n\nexport const getReferralStatus = (referral) => {\n const grouped = referralIsGrouped(referral) ? 'Grouped' : '';\n const funded = referralIsFunded(referral) ? 'Funded' : '';\n const oon = referralIsOON(referral) ? 'Off-Platform' : 'On-Platform';\n\n return compact([grouped, oon, funded]).join(', ');\n};\n\nexport const getProgramStatusDisplay = (isReceivingReferrals, isOON) => {\n if (isOON) { return { title: 'Off-Platform', icon: 'IconElectronsArrow', color: '' }; }\n if (isReceivingReferrals) { return { title: 'Accepting Referrals', icon: 'IconCheckCircle', color: '#1CCA21' }; }\n if (!isReceivingReferrals) { return { title: 'Not Accepting Referrals', icon: 'IconCrossCircle', color: '#E53E3E' }; }\n\n return { title: '', icon: '', color: '' }\n};\n\nexport const getReferralSubtitle = (referrals, selected) => {\n if (selected && referralIsOON(selected)) { return 'The case manager will be responsible for following up with the client.'; }\n if (referrals && referrals.length > 1 && referralIsGrouped(selected)) { return 'The first recipient to accept the referral will become the case manager.'; }\n\n return 'The recipient will be able to accept, reject, or forward this referral.';\n};\n\nexport const mapReferralErrorsToIndex = (referrals, pays3551AuthInSuperset) => {\n const errors = {};\n referrals.map((referral, index) => {\n if (referral) {\n const { programs } = referral;\n const networks = filterNetworks(referral);\n\n let authErrors = [];\n if (pays3551AuthInSuperset && programs[0]?.fee_schedule_program?.authorization_required) {\n authErrors = compact([\n !referral.paymentAuthForm.amount_requested ? 'amount_requested' : null,\n !referral.paymentAuthForm.service_end ? 'service_end' : null,\n ]);\n };\n\n const missingRequiredFields = compact([\n !referral.description ? 'description' : null,\n (referralIsOON(referral) && !referral.primaryWorker) ? 'primary_worker' : null,\n (shouldShowNetworkSelect(networks, programs) && !referral.network ? 'network' : null),\n ...authErrors\n ]);\n if (!isEmpty(missingRequiredFields)) {\n errors[index] = missingRequiredFields;\n }\n }\n return null;\n });\n\n return errors;\n};\n\nexport const shouldShowNetworkSelect = (networks = [], programs) => (networks.length > 1 && programs.length === 1) || isUnlistedProgram(programs[0]);\n\nexport const generateErrorMessage = (errors) => {\n const errorCount = Object.values(errors).flat().length\n const prefix = errorCount === 1 ? '1 action item needs' : `${errorCount} action items need`;\n return errorCount > 0 ? `${prefix} your attention before you can submit your referral(s).` : null;\n}\n\nexport const filterNetworks = (referral) => {\n const { sendingProvider, programs } = referral;\n const sendingNetworks = get(sendingProvider, 'networks');\n const receivingNetworks = flatMap(programs, (program) => get(program, 'provider.networks'))\n .filter(Boolean)\n .filter((network) => network.state === 'active');\n\n if (sendingNetworks.length === 1) { // 1 sending network and 1+ receiving networks, return sending network\n return uniqBy(receivingNetworks.filter((network) => network.id === head(sendingNetworks).id), 'id');\n } else if (receivingNetworks.length > 1) { // 2+ sending networks and 2+ receiving network, return common networks\n return intersectionBy(receivingNetworks, sendingNetworks, 'id');\n } else { // 2+ sending networks and 1 receiving network, return receiving network\n return receivingNetworks;\n }\n}\n\nexport const hasOffPlatformReferrals = (referrals) => some(referrals?.map((r) => referralIsOON(r)));\n\nexport const handleKeyPress = (e, action) => {\n if (['Enter', ' '].includes(e.key)) {\n action();\n }\n}\n\nexport const addIdToUnlistedPrograms = (programs) => {\n return programs.map((obj) => {\n if (!obj.id) {\n obj.id = `unlisted_${obj.name.replace(/\\s+/g, '').toLowerCase()}_${obj.services}`;\n obj.status = OFF_PLATFORM_REFERRALS_ONLY;\n }\n\n return obj;\n });\n};\n\nexport const addProgramToReferral = (referrals, programs, condition) => {\n referrals.forEach((referral) => {\n referral.programs = referral.programs.map((p) => {\n if (condition(p)) {\n const programIndex = programs.findIndex((program) => p.id === program.id);\n return programs[programIndex];\n }\n\n return p;\n })\n })\n};\n\nexport const isUnlistedReferral = (referral) => {\n return referral?.programs?.every((p) => p.id?.startsWith('unlisted'));\n};\n\nexport const isUnlistedProgram = (program) => {\n return program?.id?.startsWith('unlisted');\n};\n\nexport function isEmptyErrors(errors) {\n if (Object.keys(errors).length === 0) {\n return true;\n }\n\n for(let key in errors) {\n if (Array.isArray(errors[key]) && errors[key].length > 0) {\n return false;\n }\n }\n\n return true;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","names":["_lodash","require","_constants","_useFeatureFlag","ownKeys","e","r","t","_Object$keys2","_Object$getOwnPropertySymbols","o","_filterInstanceProperty2","call","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","mapProgramsPerService","programs","result","_reduce","out","program","services","serviceId","existingService","_find","item","service","id","buildReferral","programIds","currentProvider","draftState","_context","_context2","_draftState$descripti","_draftState$attachmen","_draftState$network","_map","_concat","description","primaryWorker","attachments","paymentAuthForm","amount_requested","service_start","service_end","network","sendingProvider","state","case","buildReferralsFromPrograms","exports","programsByService","referrals","crtb1239AdaptDraftReferralFlow","useFeatureFlag","idx","referral","firstReferral","filterProgramsReceivingReferrals","_context3","_filter","ref","_context4","_program$status","receiving_referrals","status","toLowerCase","OFF_PLATFORM_REFERRALS_ONLY","referralIsGrouped","programIsFunded","fee_schedule_program","referralIsFunded","every","programIsOffPlatform","_program$provider","_program$provider2","_program$status2","provider","licensed","programIsOnPlatform","_program$provider3","_program$status3","referralIsOON","_context5","some","getReferralStatus","grouped","funded","oon","compact","join","getProgramStatusDisplay","isReceivingReferrals","isOON","title","icon","color","getReferralSubtitle","selected","mapReferralErrorsToIndex","errors","index","_programs$","_context6","networks","filterNetworks","authErrors","authorization_required","missingRequiredFields","shouldShowNetworkSelect","_toConsumableArray2","isEmpty","undefined","isUnlistedProgram","generateErrorMessage","_context7","errorCount","_flat","_values","prefix","concat","_context8","_context9","sendingNetworks","get","receivingNetworks","_flatMapInstanceProperty","Boolean","uniqBy","head","intersectionBy","hasOffPlatformReferrals","handleKeyPress","action","_context10","_includes","key","addIdToUnlistedPrograms","obj","_context11","name","replace","addProgramToReferral","condition","_context12","p","programIndex","_findIndex","isUnlistedReferral","_referral$programs","_p$id","_startsWith","_program$id","isEmptyErrors","_keys","Array","isArray"],"sources":["../../../src/pages/builder/utils.js"],"sourcesContent":["import {\n compact,\n some,\n isEmpty,\n get,\n head,\n flatMap,\n intersectionBy,\n uniqBy,\n} from 'lodash';\nimport { OFF_PLATFORM_REFERRALS_ONLY } from './constants';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\n\nconst mapProgramsPerService = (programs) => {\n const result = programs.reduce((out, program) => {\n if (program.services) {\n program.services.forEach((serviceId) => {\n const existingService = out.find(item => item.service === serviceId)\n if (!existingService) {\n out.push({\n service: serviceId,\n programs: [program.id]\n })\n } else {\n existingService.programs.push(program.id)\n }\n })\n }\n return out;\n }, [])\n\n return result;\n}\n\nconst buildReferral = (programIds, service, currentProvider, draftState) => {\n return {\n programs: [].concat(programIds).map(id => ({ id })),\n service: {\n id: service\n },\n description: draftState?.description ?? '',\n primaryWorker: null,\n attachments: draftState?.attachments ?? null,\n paymentAuthForm: {\n amount_requested: null,\n service_start: null,\n service_end: null,\n },\n network: draftState?.network ?? null,\n sendingProvider: currentProvider,\n id: draftState?.id,\n state: draftState?.state,\n case: draftState?.case,\n }\n}\n\nexport const buildReferralsFromPrograms = (programs, currentProvider, draftState) => {\n const programsByService = mapProgramsPerService(programs);\n let referrals = [];\n const crtb1239AdaptDraftReferralFlow = useFeatureFlag('crtb1239AdaptDraftReferralFlow', false);\n\n if (programsByService) {\n referrals = programsByService.map((item, idx) => {\n let referral = null;\n\n if (crtb1239AdaptDraftReferralFlow) {\n // Draft state for only the first referral\n const firstReferral = idx === 0 ? draftState : null;\n referral = buildReferral(item.programs, item.service, currentProvider, firstReferral);\n } else {\n referral = buildReferral(item.programs, item.service, currentProvider, draftState);\n }\n\n return referral;\n })\n }\n\n return referrals;\n}\n\nexport const filterProgramsReceivingReferrals = (referrals) => referrals.map((ref) => ({\n ...ref,\n programs: ref.programs.filter((program) =>\n program.receiving_referrals ||\n program?.status?.toLowerCase() === OFF_PLATFORM_REFERRALS_ONLY\n ),\n})).filter((ref) => ref.programs.length > 0);\n\nexport const referralIsGrouped = (referral) => referral.programs.length > 1;\n\nexport const programIsFunded = (program) => program.fee_schedule_program != null;\n\nexport const referralIsFunded = (referral) => {\n return referral.programs.every(programIsFunded);\n}\n\nexport const programIsOffPlatform = (program) => (\n !program?.provider?.licensed ||\n (program?.provider?.licensed && program?.status?.toLowerCase() === OFF_PLATFORM_REFERRALS_ONLY)\n);\n\nexport const programIsOnPlatform = (program) => (\n program?.provider?.licensed && program?.status?.toLowerCase() !== OFF_PLATFORM_REFERRALS_ONLY\n)\n\nexport const referralIsOON = (referral) => some(referral.programs.map((program) => programIsOffPlatform(program)));\n\nexport const getReferralStatus = (referral) => {\n const grouped = referralIsGrouped(referral) ? 'Grouped' : '';\n const funded = referralIsFunded(referral) ? 'Funded' : '';\n const oon = referralIsOON(referral) ? 'Off-Platform' : 'On-Platform';\n\n return compact([grouped, oon, funded]).join(', ');\n};\n\nexport const getProgramStatusDisplay = (isReceivingReferrals, isOON) => {\n if (isOON) { return { title: 'Off-Platform', icon: 'IconElectronsArrow', color: '' }; }\n if (isReceivingReferrals) { return { title: 'Accepting Referrals', icon: 'IconCheckCircle', color: '#1CCA21' }; }\n if (!isReceivingReferrals) { return { title: 'Not Accepting Referrals', icon: 'IconCrossCircle', color: '#E53E3E' }; }\n\n return { title: '', icon: '', color: '' }\n};\n\nexport const getReferralSubtitle = (referrals, selected) => {\n if (selected && referralIsOON(selected)) { return 'The case manager will be responsible for following up with the client.'; }\n if (referrals && referrals.length > 1 && referralIsGrouped(selected)) { return 'The first recipient to accept the referral will become the case manager.'; }\n\n return 'The recipient will be able to accept, reject, or forward this referral.';\n};\n\nexport const mapReferralErrorsToIndex = (referrals) => {\n const errors = {};\n referrals.map((referral, index) => {\n if (referral) {\n const { programs } = referral;\n const networks = filterNetworks(referral);\n\n let authErrors = [];\n if (programs[0]?.fee_schedule_program?.authorization_required) {\n authErrors = compact([\n !referral.paymentAuthForm.amount_requested ? 'amount_requested' : null,\n !referral.paymentAuthForm.service_end ? 'service_end' : null,\n ]);\n };\n\n const missingRequiredFields = compact([\n !referral.description ? 'description' : null,\n (referralIsOON(referral) && !referral.primaryWorker) ? 'primary_worker' : null,\n (shouldShowNetworkSelect(networks, programs) && !referral.network ? 'network' : null),\n ...authErrors\n ]);\n if (!isEmpty(missingRequiredFields)) {\n errors[index] = missingRequiredFields;\n }\n }\n return null;\n });\n\n return errors;\n};\n\nexport const shouldShowNetworkSelect = (networks = [], programs) => (networks.length > 1 && programs.length === 1) || isUnlistedProgram(programs[0]);\n\nexport const generateErrorMessage = (errors) => {\n const errorCount = Object.values(errors).flat().length\n const prefix = errorCount === 1 ? '1 action item needs' : `${errorCount} action items need`;\n return errorCount > 0 ? `${prefix} your attention before you can submit your referral(s).` : null;\n}\n\nexport const filterNetworks = (referral) => {\n const { sendingProvider, programs } = referral;\n const sendingNetworks = get(sendingProvider, 'networks');\n const receivingNetworks = flatMap(programs, (program) => get(program, 'provider.networks'))\n .filter(Boolean)\n .filter((network) => network.state === 'active');\n\n if (sendingNetworks.length === 1) { // 1 sending network and 1+ receiving networks, return sending network\n return uniqBy(receivingNetworks.filter((network) => network.id === head(sendingNetworks).id), 'id');\n } else if (receivingNetworks.length > 1) { // 2+ sending networks and 2+ receiving network, return common networks\n return intersectionBy(receivingNetworks, sendingNetworks, 'id');\n } else { // 2+ sending networks and 1 receiving network, return receiving network\n return receivingNetworks;\n }\n}\n\nexport const hasOffPlatformReferrals = (referrals) => some(referrals?.map((r) => referralIsOON(r)));\n\nexport const handleKeyPress = (e, action) => {\n if (['Enter', ' '].includes(e.key)) {\n action();\n }\n}\n\nexport const addIdToUnlistedPrograms = (programs) => {\n return programs.map((obj) => {\n if (!obj.id) {\n obj.id = `unlisted_${obj.name.replace(/\\s+/g, '').toLowerCase()}_${obj.services}`;\n obj.status = OFF_PLATFORM_REFERRALS_ONLY;\n }\n\n return obj;\n });\n};\n\nexport const addProgramToReferral = (referrals, programs, condition) => {\n referrals.forEach((referral) => {\n referral.programs = referral.programs.map((p) => {\n if (condition(p)) {\n const programIndex = programs.findIndex((program) => p.id === program.id);\n return programs[programIndex];\n }\n\n return p;\n })\n })\n};\n\nexport const isUnlistedReferral = (referral) => {\n return referral?.programs?.every((p) => p.id?.startsWith('unlisted'));\n};\n\nexport const isUnlistedProgram = (program) => {\n return program?.id?.startsWith('unlisted');\n};\n\nexport function isEmptyErrors(errors) {\n if (Object.keys(errors).length === 0) {\n return true;\n }\n\n for(let key in errors) {\n if (Array.isArray(errors[key]) && errors[key].length > 0) {\n return false;\n }\n }\n\n return true;\n}\n"],"mappings":"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"}
|