@unite-us/app-create-referral 0.2.5 → 0.2.6-SMRT-303-4f36621
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/pages/builder/ReferralBuilderForm.js +10 -9
- package/dist/pages/builder/ReferralBuilderForm.js.map +1 -1
- package/dist/pages/builder/utils.js +10 -9
- package/dist/pages/builder/utils.js.map +1 -1
- package/dist/utils/canAccept.js +28 -0
- package/dist/utils/canAccept.js.map +1 -0
- package/package.json +1 -1
|
@@ -46,7 +46,7 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
|
|
|
46
46
|
function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
47
47
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
48
48
|
function ReferralBuilderForm(_ref) {
|
|
49
|
-
var _context, _context2, _context3;
|
|
49
|
+
var _context, _context2, _context3, _context4;
|
|
50
50
|
var currentEmployee = _ref.currentEmployee,
|
|
51
51
|
currentProvider = _ref.currentProvider,
|
|
52
52
|
referral = _ref.referral,
|
|
@@ -97,7 +97,8 @@ function ReferralBuilderForm(_ref) {
|
|
|
97
97
|
setRejectedFiles = _useState12[1];
|
|
98
98
|
var isOON = (0, _utils.referralIsOON)(referral);
|
|
99
99
|
var isGrouped = (0, _utils.referralIsGrouped)(referral);
|
|
100
|
-
var
|
|
100
|
+
var isFunded = (0, _utils.referralIsFunded)(referral);
|
|
101
|
+
var referralTitle = (0, _concat.default)(_context = (0, _concat.default)(_context2 = (0, _concat.default)(_context3 = (0, _concat.default)(_context4 = "Referral ".concat(index + 1, ": ")).call(_context4, service === null || service === void 0 ? void 0 : service.name)).call(_context3, isGrouped ? ', Grouped' : '')).call(_context2, isOON ? ', Off-Platform' : '')).call(_context, isFunded ? ', Funded' : '');
|
|
101
102
|
var networks = (0, _utils.filterNetworks)(referral);
|
|
102
103
|
var showNetworkSelect = (0, _utils.shouldShowNetworkSelect)(networks, programs);
|
|
103
104
|
var onProgramClick = function onProgramClick(id) {
|
|
@@ -112,25 +113,25 @@ function ReferralBuilderForm(_ref) {
|
|
|
112
113
|
setMoveReferralMenus(programMenus);
|
|
113
114
|
};
|
|
114
115
|
var getPrimaryWorkers = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
115
|
-
var
|
|
116
|
+
var _context5;
|
|
116
117
|
var _yield$fetchPrimaryWo, primary_workers;
|
|
117
|
-
return _regenerator.default.wrap(function _callee$(
|
|
118
|
-
while (1) switch (
|
|
118
|
+
return _regenerator.default.wrap(function _callee$(_context6) {
|
|
119
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
119
120
|
case 0:
|
|
120
|
-
|
|
121
|
+
_context6.next = 2;
|
|
121
122
|
return (0, _fetchPrimaryWorkers.default)({
|
|
122
123
|
providerId: referral.sendingProvider.id,
|
|
123
124
|
currentEmployee: currentEmployee,
|
|
124
125
|
query: debouncedQuery
|
|
125
126
|
});
|
|
126
127
|
case 2:
|
|
127
|
-
_yield$fetchPrimaryWo =
|
|
128
|
+
_yield$fetchPrimaryWo = _context6.sent;
|
|
128
129
|
primary_workers = _yield$fetchPrimaryWo.primary_workers;
|
|
129
130
|
// if the query is empty, keep the queried employees and the current primary worker in select field's options array
|
|
130
|
-
(0, _lodash.isEmpty)(query) ? setPrimaryWorkers((0, _lodash.uniqBy)((0, _concat.default)(
|
|
131
|
+
(0, _lodash.isEmpty)(query) ? setPrimaryWorkers((0, _lodash.uniqBy)((0, _concat.default)(_context5 = []).call(_context5, (0, _toConsumableArray2.default)(primaryWorkers), (0, _toConsumableArray2.default)(primary_workers), [primaryWorker && primaryWorker]), 'id')) : setPrimaryWorkers(primary_workers);
|
|
131
132
|
case 5:
|
|
132
133
|
case "end":
|
|
133
|
-
return
|
|
134
|
+
return _context6.stop();
|
|
134
135
|
}
|
|
135
136
|
}, _callee);
|
|
136
137
|
})), [currentEmployee, referral.sendingProvider.id, debouncedQuery]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReferralBuilderForm.js","names":["_react","_interopRequireWildcard","require","_propTypes","_reactFinalForm","_ReferralProgramCard","_interopRequireDefault","_ui","_InfoPanel","_validations","_constants","_FileUpload","_lodash","_utils","_fetchPrimaryWorkers","_useDebounce","_cannotMoveToReferralReasons","_ContactDocumentsSelector","_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$keys","_Object$getOwnPropertySymbols","o","_filterInstanceProperty","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","_Object$getOwnPropertyDescriptors","_Object$defineProperties","ReferralBuilderForm","_ref","_context","_context2","_context3","currentEmployee","currentProvider","referral","referrals","index","referralSubtitle","onChange","unselected","removeProgram","onSetForm","moveToNewReferral","moveToExistingReferral","updateAttachments","source","service","programs","primaryWorker","attachments","attachableDocuments","_useState","useState","_useState2","_slicedToArray2","moveReferralMenus","setMoveReferralMenus","_useState3","_useState4","uploadedFiles","setUploadedFiles","_useState5","_useState6","primaryWorkers","setPrimaryWorkers","_useState7","_useState8","initialValues","setInitialValues","_useState9","_useState10","query","setQuery","debouncedQuery","useDebounce","_useState11","filesTooBig","filesWrongType","filesTooBigAndWrongType","_useState12","rejectedFiles","setRejectedFiles","isOON","referralIsOON","isGrouped","referralIsGrouped","referralTitle","_concat","concat","name","networks","filterNetworks","showNetworkSelect","shouldShowNetworkSelect","onProgramClick","id","programMenus","_map","p","menuIsOpen","getPrimaryWorkers","useCallback","_asyncToGenerator2","_regenerator","mark","_callee","_context4","_yield$fetchPrimaryWo","primary_workers","wrap","_callee$","_context5","prev","next","fetchPrimaryWorkers","providerId","sendingProvider","sent","isEmpty","uniqBy","_toConsumableArray2","stop","useEffect","isNil","_find","worker","createElement","Form","onSubmit","validate","values","errors","description","network","mutators","setFieldTouched","args","state","_args2","touched","field","fields","render","_ref3","form","_values","Fragment","FormSpy","subscription","className","program","_moveReferralMenus$fi","cannotMoveReasons","cannotMoveToReferralReasons","key","onClick","programIsOffPlatform","Field","required","params","SelectField","_extends2","label","placeholder","options","labelKey","valueKey","validations","isRequired","TextField","afterLabelContent","message","REFERRAL_PII_PHI_DESCRIPTION","rows","inline","style","text","loadOptions","search","documentFields","FileUpload","propTypes","PropTypes","object","shape","string","array","number","func","defaultProps","_default","exports"],"sources":["../../../src/pages/builder/ReferralBuilderForm.js"],"sourcesContent":["import React, { useCallback, useEffect, useState } from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Form, Field, FormSpy } from 'react-final-form';\nimport ReferralProgramCard from './ReferralProgramCard';\nimport { TextField, SelectField } from '@unite-us/ui';\nimport InfoPanel from '@unite-us/client-utils/dist/InfoPanel/InfoPanel';\nimport {\n isRequired,\n} from '@unite-us/client-utils/dist/utils/validations/validations';\nimport { REFERRAL_PII_PHI_DESCRIPTION } from './constants';\nimport { FileUpload } from '../../common/form/FileUploadV2/FileUpload';\nimport { get, isEmpty, isNil, uniqBy } from 'lodash';\nimport {\n programIsOffPlatform,\n referralIsOON,\n referralIsGrouped,\n shouldShowNetworkSelect,\n filterNetworks,\n} from './utils';\nimport fetchPrimaryWorkers from '../../actions/Referral/fetchPrimaryWorkers';\nimport { useDebounce } from '../../utils/useDebounce';\nimport { cannotMoveToReferralReasons } from '../../actions/Referral/cannotMoveToReferralReasons';\nimport ContactDocumentsSelector from '../../common/form/DocumentUploader/components/ContactDocumentsSelector'\nimport './ReferralBuilderForm.scss';\nexport function ReferralBuilderForm({\n currentEmployee,\n currentProvider,\n referral,\n referrals,\n index,\n referralSubtitle,\n onChange,\n unselected,\n removeProgram,\n onSetForm,\n moveToNewReferral,\n moveToExistingReferral,\n updateAttachments,\n source,\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 referralTitle = `Referral ${index + 1}: ${service?.name}${isGrouped ? ', Grouped' : ''}${isOON ? ', Off-Platform' : ''}`;\n\n const networks = 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 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 useEffect(() => {\n setInitialValues({\n ...referral,\n ...((isNil(referral.primaryWorker) && isOON) ?\n { primaryWorker: primaryWorkers.find((worker) => worker.id === currentEmployee.id) } :\n null\n ),\n })\n }, [primaryWorkers, currentEmployee.id, index, isOON, referral]);\n\n useEffect(() => {\n if (!isEmpty(uploadedFiles)) {\n updateAttachments(uploadedFiles);\n }\n }, [uploadedFiles]);\n\n return (\n <Form\n initialValues={initialValues}\n onSubmit={() => { }}\n validate={(values) => {\n const errors = {};\n if (!values.description) { errors.description = \"Required\" };\n if (isOON && !values.primaryWorker) { errors.primaryWorker = \"Required\" };\n if (showNetworkSelect && !values.network) { errors.network = \"Required\" };\n return errors;\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 className=\"bg-white border border-solid border-blue-border rounded md:w-4/6 lg:w-4/6\">\n <div className=\"p-5 bg-med-pale-blue\">\n <h2 className=\"text-xl font-black\">\n {referralTitle}\n </h2>\n <h3>\n {referralSubtitle}\n </h3>\n </div>\n <div className=\"p-5\">\n {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 ) : null}\n <h5 className=\"text-sm ui-form-field__label\">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 const { index } = i\n return cannotMoveReasons[index] = cannotMoveToReferralReasons({ program, referral, referrals, index, 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-gray-600 my-10\">\n Click on the three-dot icon to edit referral groupings.\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 ) : null}\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=\"Referral Description\"\n placeholder=\"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=\"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 ) : null}\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\n {/* Payment auth form */}\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 referralSubtitle: PropTypes.string,\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}\n\nReferralBuilderForm.defaultProps = {\n referralSubtitle: '',\n unselected: [],\n}\n\nexport default ReferralBuilderForm;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ReferralBuilderForm.js","names":["_react","_interopRequireWildcard","require","_propTypes","_reactFinalForm","_ReferralProgramCard","_interopRequireDefault","_ui","_InfoPanel","_validations","_constants","_FileUpload","_lodash","_utils","_fetchPrimaryWorkers","_useDebounce","_cannotMoveToReferralReasons","_ContactDocumentsSelector","_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$keys","_Object$getOwnPropertySymbols","o","_filterInstanceProperty","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","_Object$getOwnPropertyDescriptors","_Object$defineProperties","ReferralBuilderForm","_ref","_context","_context2","_context3","_context4","currentEmployee","currentProvider","referral","referrals","index","referralSubtitle","onChange","unselected","removeProgram","onSetForm","moveToNewReferral","moveToExistingReferral","updateAttachments","source","service","programs","primaryWorker","attachments","attachableDocuments","_useState","useState","_useState2","_slicedToArray2","moveReferralMenus","setMoveReferralMenus","_useState3","_useState4","uploadedFiles","setUploadedFiles","_useState5","_useState6","primaryWorkers","setPrimaryWorkers","_useState7","_useState8","initialValues","setInitialValues","_useState9","_useState10","query","setQuery","debouncedQuery","useDebounce","_useState11","filesTooBig","filesWrongType","filesTooBigAndWrongType","_useState12","rejectedFiles","setRejectedFiles","isOON","referralIsOON","isGrouped","referralIsGrouped","isFunded","referralIsFunded","referralTitle","_concat","concat","name","networks","filterNetworks","showNetworkSelect","shouldShowNetworkSelect","onProgramClick","id","programMenus","_map","p","menuIsOpen","getPrimaryWorkers","useCallback","_asyncToGenerator2","_regenerator","mark","_callee","_context5","_yield$fetchPrimaryWo","primary_workers","wrap","_callee$","_context6","prev","next","fetchPrimaryWorkers","providerId","sendingProvider","sent","isEmpty","uniqBy","_toConsumableArray2","stop","useEffect","isNil","_find","worker","createElement","Form","onSubmit","validate","values","errors","description","network","mutators","setFieldTouched","args","state","_args2","touched","field","fields","render","_ref3","form","_values","Fragment","FormSpy","subscription","className","program","_moveReferralMenus$fi","cannotMoveReasons","cannotMoveToReferralReasons","key","onClick","programIsOffPlatform","Field","required","params","SelectField","_extends2","label","placeholder","options","labelKey","valueKey","validations","isRequired","TextField","afterLabelContent","message","REFERRAL_PII_PHI_DESCRIPTION","rows","inline","style","text","loadOptions","search","documentFields","FileUpload","propTypes","PropTypes","object","shape","string","array","number","func","defaultProps","_default","exports"],"sources":["../../../src/pages/builder/ReferralBuilderForm.js"],"sourcesContent":["import React, { useCallback, useEffect, useState } from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Form, Field, FormSpy } from 'react-final-form';\nimport ReferralProgramCard from './ReferralProgramCard';\nimport { TextField, SelectField } from '@unite-us/ui';\nimport InfoPanel from '@unite-us/client-utils/dist/InfoPanel/InfoPanel';\nimport {\n isRequired,\n} from '@unite-us/client-utils/dist/utils/validations/validations';\nimport { REFERRAL_PII_PHI_DESCRIPTION } from './constants';\nimport { FileUpload } from '../../common/form/FileUploadV2/FileUpload';\nimport { get, isEmpty, isNil, uniqBy } from 'lodash';\nimport {\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 { cannotMoveToReferralReasons } from '../../actions/Referral/cannotMoveToReferralReasons';\nimport ContactDocumentsSelector from '../../common/form/DocumentUploader/components/ContactDocumentsSelector'\nimport './ReferralBuilderForm.scss';\nexport function ReferralBuilderForm({\n currentEmployee,\n currentProvider,\n referral,\n referrals,\n index,\n referralSubtitle,\n onChange,\n unselected,\n removeProgram,\n onSetForm,\n moveToNewReferral,\n moveToExistingReferral,\n updateAttachments,\n source,\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\n const networks = 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 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 useEffect(() => {\n setInitialValues({\n ...referral,\n ...((isNil(referral.primaryWorker) && isOON) ?\n { primaryWorker: primaryWorkers.find((worker) => worker.id === currentEmployee.id) } :\n null\n ),\n })\n }, [primaryWorkers, currentEmployee.id, index, isOON, referral]);\n\n useEffect(() => {\n if (!isEmpty(uploadedFiles)) {\n updateAttachments(uploadedFiles);\n }\n }, [uploadedFiles]);\n\n return (\n <Form\n initialValues={initialValues}\n onSubmit={() => { }}\n validate={(values) => {\n const errors = {};\n if (!values.description) { errors.description = \"Required\" };\n if (isOON && !values.primaryWorker) { errors.primaryWorker = \"Required\" };\n if (showNetworkSelect && !values.network) { errors.network = \"Required\" };\n return errors;\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 className=\"bg-white border border-solid border-blue-border rounded md:w-4/6 lg:w-4/6\">\n <div className=\"p-5 bg-med-pale-blue\">\n <h2 className=\"text-xl font-black\">\n {referralTitle}\n </h2>\n <h3>\n {referralSubtitle}\n </h3>\n </div>\n <div className=\"p-5\">\n {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 ) : null}\n <h5 className=\"text-sm ui-form-field__label\">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 const { index } = i\n return cannotMoveReasons[index] = cannotMoveToReferralReasons({ program, referral, referrals, index, 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-gray-600 my-10\">\n Click on the three-dot icon to edit referral groupings.\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 ) : null}\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=\"Referral Description\"\n placeholder=\"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=\"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 ) : null}\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\n {/* Payment auth form */}\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 referralSubtitle: PropTypes.string,\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}\n\nReferralBuilderForm.defaultProps = {\n referralSubtitle: '',\n unselected: [],\n}\n\nexport default ReferralBuilderForm;\n"],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
|
|
|
12
12
|
_Object$defineProperty(exports, "__esModule", {
|
|
13
13
|
value: true
|
|
14
14
|
});
|
|
15
|
-
exports.shouldShowNetworkSelect = exports.referralIsOON = exports.referralIsGrouped = exports.programIsOnPlatform = exports.programIsOffPlatform = exports.mapReferralErrorsToIndex = exports.hasOffPlatformReferrals = exports.handleKeyPress = exports.getReferralSubtitle = exports.getReferralStatus = exports.getProgramStatusDisplay = exports.generateErrorMessage = exports.filterProgramsReceivingReferrals = exports.filterNetworks = exports.buildReferralsFromPrograms = void 0;
|
|
15
|
+
exports.shouldShowNetworkSelect = exports.referralIsOON = exports.referralIsGrouped = exports.referralIsFunded = exports.programIsOnPlatform = exports.programIsOffPlatform = exports.programIsFunded = exports.mapReferralErrorsToIndex = exports.hasOffPlatformReferrals = exports.handleKeyPress = exports.getReferralSubtitle = exports.getReferralStatus = exports.getProgramStatusDisplay = exports.generateErrorMessage = exports.filterProgramsReceivingReferrals = exports.filterNetworks = exports.buildReferralsFromPrograms = void 0;
|
|
16
16
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
17
17
|
var _reduce = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/reduce"));
|
|
18
18
|
var _find = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find"));
|
|
@@ -66,11 +66,7 @@ var buildReferral = function buildReferral(programIds, service, currentProvider,
|
|
|
66
66
|
sendingProvider: currentProvider,
|
|
67
67
|
id: draftState === null || draftState === void 0 ? void 0 : draftState.id,
|
|
68
68
|
state: draftState === null || draftState === void 0 ? void 0 : draftState.state,
|
|
69
|
-
case: draftState === null || draftState === void 0 ? void 0 : draftState.case
|
|
70
|
-
// Implement this when the payments are implemented
|
|
71
|
-
get isFunded() {
|
|
72
|
-
return false;
|
|
73
|
-
}
|
|
69
|
+
case: draftState === null || draftState === void 0 ? void 0 : draftState.case
|
|
74
70
|
};
|
|
75
71
|
};
|
|
76
72
|
var buildReferralsFromPrograms = exports.buildReferralsFromPrograms = function buildReferralsFromPrograms(programs, currentProvider, draftState) {
|
|
@@ -101,6 +97,12 @@ var filterProgramsReceivingReferrals = exports.filterProgramsReceivingReferrals
|
|
|
101
97
|
var referralIsGrouped = exports.referralIsGrouped = function referralIsGrouped(referral) {
|
|
102
98
|
return referral.programs.length > 1;
|
|
103
99
|
};
|
|
100
|
+
var programIsFunded = exports.programIsFunded = function programIsFunded(program) {
|
|
101
|
+
return program.fee_schedule_program != null;
|
|
102
|
+
};
|
|
103
|
+
var referralIsFunded = exports.referralIsFunded = function referralIsFunded(referral) {
|
|
104
|
+
return referral.programs.every(programIsFunded);
|
|
105
|
+
};
|
|
104
106
|
var programIsOffPlatform = exports.programIsOffPlatform = function programIsOffPlatform(program) {
|
|
105
107
|
var _program$status2;
|
|
106
108
|
return !program.provider.licensed || program.provider.licensed && (program === null || program === void 0 || (_program$status2 = program.status) === null || _program$status2 === void 0 ? void 0 : _program$status2.toLowerCase()) === _constants.OFF_PLATFORM_REFERRALS_ONLY;
|
|
@@ -116,11 +118,10 @@ var referralIsOON = exports.referralIsOON = function referralIsOON(referral) {
|
|
|
116
118
|
}));
|
|
117
119
|
};
|
|
118
120
|
var getReferralStatus = exports.getReferralStatus = function getReferralStatus(referral) {
|
|
119
|
-
var isFunded = referral.isFunded;
|
|
120
121
|
var grouped = referralIsGrouped(referral) ? 'Grouped' : '';
|
|
121
|
-
var funded =
|
|
122
|
+
var funded = referralIsFunded(referral) ? 'Funded' : '';
|
|
122
123
|
var oon = referralIsOON(referral) ? 'Off-Platform' : 'On-Platform';
|
|
123
|
-
return (0, _lodash.compact)([grouped,
|
|
124
|
+
return (0, _lodash.compact)([grouped, oon, funded]).join(', ');
|
|
124
125
|
};
|
|
125
126
|
var getProgramStatusDisplay = exports.getProgramStatusDisplay = function getProgramStatusDisplay(isReceivingReferrals, isOON) {
|
|
126
127
|
if (isOON) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","names":["_lodash","require","_constants","ownKeys","e","r","t","_Object$keys","_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","network","sendingProvider","state","case","isFunded","buildReferralsFromPrograms","exports","programsByService","referrals","referral","filterProgramsReceivingReferrals","_context3","_filter","ref","_context4","_program$status","receiving_referrals","status","toLowerCase","OFF_PLATFORM_REFERRALS_ONLY","referralIsGrouped","programIsOffPlatform","_program$status2","provider","licensed","programIsOnPlatform","_program$status3","referralIsOON","_context5","some","getReferralStatus","grouped","funded","oon","compact","join","getProgramStatusDisplay","isReceivingReferrals","isOON","title","icon","color","getReferralSubtitle","selected","mapReferralErrorsToIndex","indexes","errors","i","index","networks","filterNetworks","missingRequiredFields","shouldShowNetworkSelect","isEmpty","undefined","generateErrorMessage","_context6","errorCount","_flat","_values","prefix","concat","_context7","sendingNetworks","get","receivingNetworks","_flatMapInstanceProperty","uniqBy","head","intersectionBy","hasOffPlatformReferrals","handleKeyPress","action","_context8","_includes","key"],"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';\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: null,\n network: draftState?.network ?? null,\n sendingProvider: currentProvider,\n id: draftState?.id,\n state: draftState?.state,\n case: draftState?.case,\n\n // Implement this when the payments are implemented\n get isFunded() { return false; },\n }\n}\n\nexport const buildReferralsFromPrograms = (programs, currentProvider, draftState) => {\n const programsByService = mapProgramsPerService(programs);\n let referrals = [];\n if (programsByService) {\n referrals = programsByService.map(item => {\n const referral = buildReferral(item.programs, item.service, currentProvider, draftState);\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 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 { isFunded } = referral;\n const grouped = referralIsGrouped(referral) ? 'Grouped' : '';\n const funded = isFunded ? 'Funded' : '';\n const oon = referralIsOON(referral) ? 'Off-Platform' : 'On-Platform';\n\n return compact([grouped, funded, oon]).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, indexes) => {\n const errors = {};\n indexes.map((i) => {\n const referral = referrals[i.index];\n if (referral) {\n const { programs } = referral;\n const networks = filterNetworks(referral);\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 ]);\n if (!isEmpty(missingRequiredFields)) {\n errors[i.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;\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')).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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAUA,IAAAC,UAAA,GAAAD,OAAA;AAA0D,SAAAE,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,YAAA,CAAAH,CAAA,OAAAI,6BAAA,QAAAC,CAAA,GAAAD,6BAAA,CAAAJ,CAAA,GAAAC,CAAA,KAAAI,CAAA,GAAAC,wBAAA,CAAAD,CAAA,EAAAE,IAAA,CAAAF,CAAA,YAAAJ,CAAA,WAAAO,gCAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAG,CAAA,YAAAH,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAgB,MAAA,CAAAb,CAAA,OAAAc,OAAA,WAAAf,CAAA,QAAAgB,gBAAA,CAAAC,OAAA,EAAAlB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAkB,iCAAA,GAAAC,wBAAA,CAAApB,CAAA,EAAAmB,iCAAA,CAAAjB,CAAA,KAAAH,OAAA,CAAAgB,MAAA,CAAAb,CAAA,GAAAc,OAAA,WAAAf,CAAA,IAAAoB,sBAAA,CAAArB,CAAA,EAAAC,CAAA,EAAAO,gCAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAE1D,IAAMsB,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,QAAQ,EAAK;EAC1C,IAAMC,MAAM,GAAG,IAAAC,OAAA,CAAAP,OAAA,EAAAK,QAAQ,EAAAhB,IAAA,CAARgB,QAAQ,EAAQ,UAACG,GAAG,EAAEC,OAAO,EAAK;IAC/C,IAAIA,OAAO,CAACC,QAAQ,EAAE;MACpBD,OAAO,CAACC,QAAQ,CAACZ,OAAO,CAAC,UAACa,SAAS,EAAK;QACtC,IAAMC,eAAe,GAAG,IAAAC,KAAA,CAAAb,OAAA,EAAAQ,GAAG,EAAAnB,IAAA,CAAHmB,GAAG,EAAM,UAAAM,IAAI;UAAA,OAAIA,IAAI,CAACC,OAAO,KAAKJ,SAAS;QAAA,EAAC;QACpE,IAAI,CAACC,eAAe,EAAE;UACpBJ,GAAG,CAAChB,IAAI,CAAC;YACPuB,OAAO,EAAEJ,SAAS;YAClBN,QAAQ,EAAE,CAACI,OAAO,CAACO,EAAE;UACvB,CAAC,CAAC;QACJ,CAAC,MAAM;UACLJ,eAAe,CAACP,QAAQ,CAACb,IAAI,CAACiB,OAAO,CAACO,EAAE,CAAC;QAC3C;MACF,CAAC,CAAC;IACJ;IACA,OAAOR,GAAG;EACZ,CAAC,EAAE,EAAE,CAAC;EAEN,OAAOF,MAAM;AACf,CAAC;AAED,IAAMW,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,UAAU,EAAEH,OAAO,EAAEI,eAAe,EAAEC,UAAU,EAAK;EAAA,IAAAC,QAAA,EAAAC,SAAA,EAAAC,qBAAA,EAAAC,qBAAA,EAAAC,mBAAA;EAC1E,OAAO;IACLpB,QAAQ,EAAE,IAAAqB,IAAA,CAAA1B,OAAA,EAAAqB,QAAA,OAAAM,OAAA,CAAA3B,OAAA,EAAAsB,SAAA,KAAE,EAAAjC,IAAA,CAAAiC,SAAA,EAAQJ,UAAU,CAAC,EAAA7B,IAAA,CAAAgC,QAAA,EAAK,UAAAL,EAAE;MAAA,OAAK;QAAEA,EAAE,EAAFA;MAAG,CAAC;IAAA,CAAC,CAAC;IACnDD,OAAO,EAAE;MACPC,EAAE,EAAED;IACN,CAAC;IACDa,WAAW,GAAAL,qBAAA,GAAEH,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEQ,WAAW,cAAAL,qBAAA,cAAAA,qBAAA,GAAI,EAAE;IAC1CM,aAAa,EAAE,IAAI;IACnBC,WAAW,GAAAN,qBAAA,GAAEJ,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEU,WAAW,cAAAN,qBAAA,cAAAA,qBAAA,GAAI,IAAI;IAC5CO,eAAe,EAAE,IAAI;IACrBC,OAAO,GAAAP,mBAAA,GAAEL,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEY,OAAO,cAAAP,mBAAA,cAAAA,mBAAA,GAAI,IAAI;IACpCQ,eAAe,EAAEd,eAAe;IAChCH,EAAE,EAAEI,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEJ,EAAE;IAClBkB,KAAK,EAAEd,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEc,KAAK;IACxBC,IAAI,EAAEf,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEe,IAAI;IAEtB;IACA,IAAIC,QAAQA,CAAA,EAAG;MAAE,OAAO,KAAK;IAAE;EACjC,CAAC;AACH,CAAC;AAEM,IAAMC,0BAA0B,GAAAC,OAAA,CAAAD,0BAAA,GAAG,SAA7BA,0BAA0BA,CAAIhC,QAAQ,EAAEc,eAAe,EAAEC,UAAU,EAAK;EACnF,IAAMmB,iBAAiB,GAAGnC,qBAAqB,CAACC,QAAQ,CAAC;EACzD,IAAImC,SAAS,GAAG,EAAE;EAClB,IAAID,iBAAiB,EAAE;IACrBC,SAAS,GAAG,IAAAd,IAAA,CAAA1B,OAAA,EAAAuC,iBAAiB,EAAAlD,IAAA,CAAjBkD,iBAAiB,EAAK,UAAAzB,IAAI,EAAI;MACxC,IAAM2B,QAAQ,GAAGxB,aAAa,CAACH,IAAI,CAACT,QAAQ,EAAES,IAAI,CAACC,OAAO,EAAEI,eAAe,EAAEC,UAAU,CAAC;MACxF,OAAOqB,QAAQ;IACjB,CAAC,CAAC;EACJ;EAEA,OAAOD,SAAS;AAClB,CAAC;AAEM,IAAME,gCAAgC,GAAAJ,OAAA,CAAAI,gCAAA,GAAG,SAAnCA,gCAAgCA,CAAIF,SAAS;EAAA,IAAAG,SAAA;EAAA,OAAK,IAAAC,OAAA,CAAA5C,OAAA,EAAA2C,SAAA,OAAAjB,IAAA,CAAA1B,OAAA,EAAAwC,SAAS,EAAAnD,IAAA,CAATmD,SAAS,EAAK,UAACK,GAAG;IAAA,IAAAC,SAAA;IAAA,OAAApD,aAAA,CAAAA,aAAA,KAC5EmD,GAAG;MACNxC,QAAQ,EAAE,IAAAuC,OAAA,CAAA5C,OAAA,EAAA8C,SAAA,GAAAD,GAAG,CAACxC,QAAQ,EAAAhB,IAAA,CAAAyD,SAAA,EAAQ,UAACrC,OAAO;QAAA,IAAAsC,eAAA;QAAA,OACpCtC,OAAO,CAACuC,mBAAmB,IAC3B,CAAAvC,OAAO,aAAPA,OAAO,gBAAAsC,eAAA,GAAPtC,OAAO,CAAEwC,MAAM,cAAAF,eAAA,uBAAfA,eAAA,CAAiBG,WAAW,CAAC,CAAC,MAAKC,sCAA2B;MAAA,CAChE;IAAC;EAAA,CACD,CAAC,EAAA9D,IAAA,CAAAsD,SAAA,EAAQ,UAACE,GAAG;IAAA,OAAKA,GAAG,CAACxC,QAAQ,CAACT,MAAM,GAAG,CAAC;EAAA,EAAC;AAAA;AAErC,IAAMwD,iBAAiB,GAAAd,OAAA,CAAAc,iBAAA,GAAG,SAApBA,iBAAiBA,CAAIX,QAAQ;EAAA,OAAKA,QAAQ,CAACpC,QAAQ,CAACT,MAAM,GAAG,CAAC;AAAA;AAEpE,IAAMyD,oBAAoB,GAAAf,OAAA,CAAAe,oBAAA,GAAG,SAAvBA,oBAAoBA,CAAI5C,OAAO;EAAA,IAAA6C,gBAAA;EAAA,OAC1C,CAAC7C,OAAO,CAAC8C,QAAQ,CAACC,QAAQ,IACzB/C,OAAO,CAAC8C,QAAQ,CAACC,QAAQ,IAAI,CAAA/C,OAAO,aAAPA,OAAO,gBAAA6C,gBAAA,GAAP7C,OAAO,CAAEwC,MAAM,cAAAK,gBAAA,uBAAfA,gBAAA,CAAiBJ,WAAW,CAAC,CAAC,MAAKC,sCAA4B;AAAA,CAC9F;AAEM,IAAMM,mBAAmB,GAAAnB,OAAA,CAAAmB,mBAAA,GAAG,SAAtBA,mBAAmBA,CAAIhD,OAAO;EAAA,IAAAiD,gBAAA;EAAA,OACzCjD,OAAO,CAAC8C,QAAQ,CAACC,QAAQ,IAAI,CAAA/C,OAAO,aAAPA,OAAO,gBAAAiD,gBAAA,GAAPjD,OAAO,CAAEwC,MAAM,cAAAS,gBAAA,uBAAfA,gBAAA,CAAiBR,WAAW,CAAC,CAAC,MAAKC,sCAA2B;AAAA,CAC5F;AAEM,IAAMQ,aAAa,GAAArB,OAAA,CAAAqB,aAAA,GAAG,SAAhBA,aAAaA,CAAIlB,QAAQ;EAAA,IAAAmB,SAAA;EAAA,OAAK,IAAAC,YAAI,EAAC,IAAAnC,IAAA,CAAA1B,OAAA,EAAA4D,SAAA,GAAAnB,QAAQ,CAACpC,QAAQ,EAAAhB,IAAA,CAAAuE,SAAA,EAAK,UAACnD,OAAO;IAAA,OAAK4C,oBAAoB,CAAC5C,OAAO,CAAC;EAAA,EAAC,CAAC;AAAA;AAE3G,IAAMqD,iBAAiB,GAAAxB,OAAA,CAAAwB,iBAAA,GAAG,SAApBA,iBAAiBA,CAAIrB,QAAQ,EAAK;EAC7C,IAAQL,QAAQ,GAAKK,QAAQ,CAArBL,QAAQ;EAChB,IAAM2B,OAAO,GAAGX,iBAAiB,CAACX,QAAQ,CAAC,GAAG,SAAS,GAAG,EAAE;EAC5D,IAAMuB,MAAM,GAAG5B,QAAQ,GAAG,QAAQ,GAAG,EAAE;EACvC,IAAM6B,GAAG,GAAGN,aAAa,CAAClB,QAAQ,CAAC,GAAG,cAAc,GAAG,aAAa;EAEpE,OAAO,IAAAyB,eAAO,EAAC,CAACH,OAAO,EAAEC,MAAM,EAAEC,GAAG,CAAC,CAAC,CAACE,IAAI,CAAC,IAAI,CAAC;AACnD,CAAC;AAEM,IAAMC,uBAAuB,GAAA9B,OAAA,CAAA8B,uBAAA,GAAG,SAA1BA,uBAAuBA,CAAIC,oBAAoB,EAAEC,KAAK,EAAK;EACtE,IAAIA,KAAK,EAAE;IAAE,OAAO;MAAEC,KAAK,EAAE,cAAc;MAAEC,IAAI,EAAE,oBAAoB;MAAEC,KAAK,EAAE;IAAG,CAAC;EAAE;EACtF,IAAIJ,oBAAoB,EAAE;IAAE,OAAO;MAAEE,KAAK,EAAE,qBAAqB;MAAEC,IAAI,EAAE,iBAAiB;MAAEC,KAAK,EAAE;IAAU,CAAC;EAAE;EAChH,IAAI,CAACJ,oBAAoB,EAAE;IAAE,OAAO;MAAEE,KAAK,EAAE,yBAAyB;MAAEC,IAAI,EAAE,iBAAiB;MAAEC,KAAK,EAAE;IAAU,CAAC;EAAE;EAErH,OAAO;IAAEF,KAAK,EAAE,EAAE;IAAEC,IAAI,EAAE,EAAE;IAAEC,KAAK,EAAE;EAAG,CAAC;AAC3C,CAAC;AAEM,IAAMC,mBAAmB,GAAApC,OAAA,CAAAoC,mBAAA,GAAG,SAAtBA,mBAAmBA,CAAIlC,SAAS,EAAEmC,QAAQ,EAAK;EAC1D,IAAIA,QAAQ,IAAIhB,aAAa,CAACgB,QAAQ,CAAC,EAAE;IAAE,OAAO,wEAAwE;EAAE;EAC5H,IAAInC,SAAS,IAAIA,SAAS,CAAC5C,MAAM,GAAG,CAAC,IAAIwD,iBAAiB,CAACuB,QAAQ,CAAC,EAAE;IAAE,OAAO,0EAA0E;EAAE;EAE3J,OAAO,yEAAyE;AAClF,CAAC;AAEM,IAAMC,wBAAwB,GAAAtC,OAAA,CAAAsC,wBAAA,GAAG,SAA3BA,wBAAwBA,CAAIpC,SAAS,EAAEqC,OAAO,EAAK;EAC9D,IAAMC,MAAM,GAAG,CAAC,CAAC;EACjB,IAAApD,IAAA,CAAA1B,OAAA,EAAA6E,OAAO,EAAAxF,IAAA,CAAPwF,OAAO,EAAK,UAACE,CAAC,EAAK;IACjB,IAAMtC,QAAQ,GAAGD,SAAS,CAACuC,CAAC,CAACC,KAAK,CAAC;IACnC,IAAIvC,QAAQ,EAAE;MACZ,IAAQpC,QAAQ,GAAKoC,QAAQ,CAArBpC,QAAQ;MAChB,IAAM4E,QAAQ,GAAGC,cAAc,CAACzC,QAAQ,CAAC;MAEzC,IAAM0C,qBAAqB,GAAG,IAAAjB,eAAO,EAAC,CACpC,CAACzB,QAAQ,CAACb,WAAW,GAAG,aAAa,GAAG,IAAI,EAC3C+B,aAAa,CAAClB,QAAQ,CAAC,IAAI,CAACA,QAAQ,CAACZ,aAAa,GAAI,gBAAgB,GAAG,IAAI,EAC7EuD,uBAAuB,CAACH,QAAQ,EAAE5E,QAAQ,CAAC,IAAI,CAACoC,QAAQ,CAACT,OAAO,GAAG,SAAS,GAAG,IAAI,CACrF,CAAC;MACF,IAAI,CAAC,IAAAqD,eAAO,EAACF,qBAAqB,CAAC,EAAE;QACnCL,MAAM,CAACC,CAAC,CAACC,KAAK,CAAC,GAAGG,qBAAqB;MACzC;IACF;IACA,OAAO,IAAI;EACb,CAAC,CAAC;EAEF,OAAOL,MAAM;AACf,CAAC;AAEM,IAAMM,uBAAuB,GAAA9C,OAAA,CAAA8C,uBAAA,GAAG,SAA1BA,uBAAuBA,CAAA;EAAA,IAAIH,QAAQ,GAAAtF,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA2F,SAAA,GAAA3F,SAAA,MAAG,EAAE;EAAA,IAAEU,QAAQ,GAAAV,SAAA,CAAAC,MAAA,OAAAD,SAAA,MAAA2F,SAAA;EAAA,OAAKL,QAAQ,CAACrF,MAAM,GAAG,CAAC,IAAIS,QAAQ,CAACT,MAAM,KAAK,CAAC;AAAA;AAEzG,IAAM2F,oBAAoB,GAAAjD,OAAA,CAAAiD,oBAAA,GAAG,SAAvBA,oBAAoBA,CAAIT,MAAM,EAAK;EAAA,IAAAU,SAAA;EAC9C,IAAMC,UAAU,GAAG,IAAAC,KAAA,CAAA1F,OAAA,EAAAwF,SAAA,OAAAG,OAAA,CAAA3F,OAAA,EAAc8E,MAAM,CAAC,EAAAzF,IAAA,CAAAmG,SAAM,CAAC,CAAC5F,MAAM;EACtD,IAAMgG,MAAM,GAAGH,UAAU,KAAK,CAAC,GAAG,qBAAqB,MAAAI,MAAA,CAAMJ,UAAU,uBAAoB;EAC3F,OAAOA,UAAU,GAAG,CAAC,MAAAI,MAAA,CAAMD,MAAM,+DAA4D,IAAI;AACnG,CAAC;AAEM,IAAMV,cAAc,GAAA5C,OAAA,CAAA4C,cAAA,GAAG,SAAjBA,cAAcA,CAAIzC,QAAQ,EAAK;EAAA,IAAAqD,SAAA;EAC1C,IAAQ7D,eAAe,GAAeQ,QAAQ,CAAtCR,eAAe;IAAE5B,QAAQ,GAAKoC,QAAQ,CAArBpC,QAAQ;EACjC,IAAM0F,eAAe,GAAG,IAAAC,WAAG,EAAC/D,eAAe,EAAE,UAAU,CAAC;EACxD,IAAMgE,iBAAiB,GAAG,IAAArD,OAAA,CAAA5C,OAAA,EAAA8F,SAAA,OAAAI,wBAAA,CAAAxH,OAAA,GAAQ2B,QAAQ,EAAE,UAACI,OAAO;IAAA,OAAK,IAAAuF,WAAG,EAACvF,OAAO,EAAE,mBAAmB,CAAC;EAAA,EAAC,EAAApB,IAAA,CAAAyG,SAAA,EAAQ,UAAC9D,OAAO;IAAA,OAAKA,OAAO,CAACE,KAAK,KAAK,QAAQ;EAAA,EAAC;EAE3I,IAAI6D,eAAe,CAACnG,MAAM,KAAK,CAAC,EAAE;IAAE;IAClC,OAAO,IAAAuG,cAAM,EAAC,IAAAvD,OAAA,CAAA5C,OAAA,EAAAiG,iBAAiB,EAAA5G,IAAA,CAAjB4G,iBAAiB,EAAQ,UAACjE,OAAO;MAAA,OAAKA,OAAO,CAAChB,EAAE,KAAK,IAAAoF,YAAI,EAACL,eAAe,CAAC,CAAC/E,EAAE;IAAA,EAAC,EAAE,IAAI,CAAC;EACrG,CAAC,MAAM,IAAIiF,iBAAiB,CAACrG,MAAM,GAAG,CAAC,EAAE;IAAE;IACzC,OAAO,IAAAyG,sBAAc,EAACJ,iBAAiB,EAAEF,eAAe,EAAE,IAAI,CAAC;EACjE,CAAC,MAAM;IAAE;IACP,OAAOE,iBAAiB;EAC1B;AACF,CAAC;AAEM,IAAMK,uBAAuB,GAAAhE,OAAA,CAAAgE,uBAAA,GAAG,SAA1BA,uBAAuBA,CAAI9D,SAAS;EAAA,OAAK,IAAAqB,YAAI,EAACrB,SAAS,aAATA,SAAS,uBAAT,IAAAd,IAAA,CAAA1B,OAAA,EAAAwC,SAAS,EAAAnD,IAAA,CAATmD,SAAS,EAAM,UAACzD,CAAC;IAAA,OAAK4E,aAAa,CAAC5E,CAAC,CAAC;EAAA,EAAC,CAAC;AAAA;AAE5F,IAAMwH,cAAc,GAAAjE,OAAA,CAAAiE,cAAA,GAAG,SAAjBA,cAAcA,CAAIzH,CAAC,EAAE0H,MAAM,EAAK;EAAA,IAAAC,SAAA;EAC3C,IAAI,IAAAC,SAAA,CAAA1G,OAAA,EAAAyG,SAAA,IAAC,OAAO,EAAE,GAAG,CAAC,EAAApH,IAAA,CAAAoH,SAAA,EAAU3H,CAAC,CAAC6H,GAAG,CAAC,EAAE;IAClCH,MAAM,CAAC,CAAC;EACV;AACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"utils.js","names":["_lodash","require","_constants","ownKeys","e","r","t","_Object$keys","_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","network","sendingProvider","state","case","buildReferralsFromPrograms","exports","programsByService","referrals","referral","filterProgramsReceivingReferrals","_context3","_filter","ref","_context4","_program$status","receiving_referrals","status","toLowerCase","OFF_PLATFORM_REFERRALS_ONLY","referralIsGrouped","programIsFunded","fee_schedule_program","referralIsFunded","every","programIsOffPlatform","_program$status2","provider","licensed","programIsOnPlatform","_program$status3","referralIsOON","_context5","some","getReferralStatus","grouped","funded","oon","compact","join","getProgramStatusDisplay","isReceivingReferrals","isOON","title","icon","color","getReferralSubtitle","selected","mapReferralErrorsToIndex","indexes","errors","i","index","networks","filterNetworks","missingRequiredFields","shouldShowNetworkSelect","isEmpty","undefined","generateErrorMessage","_context6","errorCount","_flat","_values","prefix","concat","_context7","sendingNetworks","get","receivingNetworks","_flatMapInstanceProperty","uniqBy","head","intersectionBy","hasOffPlatformReferrals","handleKeyPress","action","_context8","_includes","key"],"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';\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: null,\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 if (programsByService) {\n referrals = programsByService.map(item => {\n const referral = buildReferral(item.programs, item.service, currentProvider, draftState);\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, indexes) => {\n const errors = {};\n indexes.map((i) => {\n const referral = referrals[i.index];\n if (referral) {\n const { programs } = referral;\n const networks = filterNetworks(referral);\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 ]);\n if (!isEmpty(missingRequiredFields)) {\n errors[i.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;\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')).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"],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
5
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = canAccept;
|
|
9
|
+
var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
|
|
10
|
+
var _lodash = require("lodash");
|
|
11
|
+
var _user = require("src/utils/user");
|
|
12
|
+
function canAccept(_ref) {
|
|
13
|
+
var _context, _context2;
|
|
14
|
+
var user = _ref.user,
|
|
15
|
+
isCC = _ref.isCC,
|
|
16
|
+
referral = _ref.referral,
|
|
17
|
+
groupId = _ref.groupId;
|
|
18
|
+
var referralState = referral.state,
|
|
19
|
+
_referral$case = referral.case,
|
|
20
|
+
caseOutcome = _referral$case.outcome,
|
|
21
|
+
caseState = _referral$case.state;
|
|
22
|
+
if (caseState === 'draft') {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
var checks = [(0, _user.isReferralsAdminAndAbove)(user, groupId), !isCC, (0, _includes.default)(_context = ['sent', 'in_review']).call(_context, referralState), caseOutcome === null, (0, _includes.default)(_context2 = ['referred']).call(_context2, caseState), referral.receiving_provider.id === groupId];
|
|
26
|
+
return (0, _lodash.every)(checks);
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=canAccept.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"canAccept.js","names":["_lodash","require","_user","canAccept","_ref","_context","_context2","user","isCC","referral","groupId","referralState","state","_referral$case","case","caseOutcome","outcome","caseState","checks","isReferralsAdminAndAbove","_includes","default","call","receiving_provider","id","every"],"sources":["../../src/utils/canAccept.js"],"sourcesContent":["import { every } from 'lodash';\nimport { isReferralsAdminAndAbove } from 'src/utils/user';\n\nexport default function canAccept({\n user,\n isCC,\n referral,\n groupId,\n}) {\n const {\n state: referralState,\n case: {\n outcome: caseOutcome,\n state: caseState,\n },\n } = referral;\n\n if (caseState === 'draft') {\n return null;\n }\n\n const checks = [\n isReferralsAdminAndAbove(user, groupId),\n !isCC,\n ['sent', 'in_review'].includes(referralState),\n caseOutcome === null,\n ['referred'].includes(caseState),\n referral.receiving_provider.id === groupId,\n ];\n\n return every(checks);\n}"],"mappings":";;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAEe,SAASE,SAASA,CAAAC,IAAA,EAK9B;EAAA,IAAAC,QAAA,EAAAC,SAAA;EAAA,IAJDC,IAAI,GAAAH,IAAA,CAAJG,IAAI;IACJC,IAAI,GAAAJ,IAAA,CAAJI,IAAI;IACJC,QAAQ,GAAAL,IAAA,CAARK,QAAQ;IACRC,OAAO,GAAAN,IAAA,CAAPM,OAAO;EAEP,IACSC,aAAa,GAKlBF,QAAQ,CALVG,KAAK;IAAAC,cAAA,GAKHJ,QAAQ,CAJVK,IAAI;IACOC,WAAW,GAAAF,cAAA,CAApBG,OAAO;IACAC,SAAS,GAAAJ,cAAA,CAAhBD,KAAK;EAIT,IAAIK,SAAS,KAAK,OAAO,EAAE;IACzB,OAAO,IAAI;EACb;EAEA,IAAMC,MAAM,GAAG,CACb,IAAAC,8BAAwB,EAACZ,IAAI,EAAEG,OAAO,CAAC,EACvC,CAACF,IAAI,EACL,IAAAY,SAAA,CAAAC,OAAA,EAAAhB,QAAA,IAAC,MAAM,EAAE,WAAW,CAAC,EAAAiB,IAAA,CAAAjB,QAAA,EAAUM,aAAa,CAAC,EAC7CI,WAAW,KAAK,IAAI,EACpB,IAAAK,SAAA,CAAAC,OAAA,EAAAf,SAAA,IAAC,UAAU,CAAC,EAAAgB,IAAA,CAAAhB,SAAA,EAAUW,SAAS,CAAC,EAChCR,QAAQ,CAACc,kBAAkB,CAACC,EAAE,KAAKd,OAAO,CAC3C;EAED,OAAO,IAAAe,aAAK,EAACP,MAAM,CAAC;AACtB"}
|