@unite-us/app-create-referral 0.1.76 → 0.1.77

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.
@@ -240,7 +240,9 @@ function ReferralBuilderForm(_ref) {
240
240
  });
241
241
  }), /*#__PURE__*/_react.default.createElement("p", {
242
242
  className: "text-center text-gray-600 my-10"
243
- }, "Click on the three-dot icon to edit referral groupings."), showNetworkSelect ? /*#__PURE__*/_react.default.createElement(_reactFinalForm.Field, {
243
+ }, "Click on the three-dot icon to edit referral groupings."), showNetworkSelect ? /*#__PURE__*/_react.default.createElement("div", {
244
+ className: "mb-10"
245
+ }, /*#__PURE__*/_react.default.createElement(_reactFinalForm.Field, {
244
246
  name: "network",
245
247
  required: true,
246
248
  key: "referral-".concat(index, "-network")
@@ -255,7 +257,7 @@ function ReferralBuilderForm(_ref) {
255
257
  valueKey: "id",
256
258
  validations: _validations.isRequired
257
259
  }, params));
258
- }) : null, /*#__PURE__*/_react.default.createElement(_reactFinalForm.Field, {
260
+ })) : null, /*#__PURE__*/_react.default.createElement(_reactFinalForm.Field, {
259
261
  name: "description",
260
262
  required: true,
261
263
  key: "referral-".concat(index, "-description")
@@ -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","_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","service","programs","primaryWorker","attachments","_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","loadOptions","search","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 { 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';\n\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}) {\n const { service, programs, primaryWorker, attachments } = 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=\"md:w-full lg:w-2/3 bg-white border border-solid border-blue-border rounded\">\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-yellow-200 border border-solid border-yellow-500 rounded p-3 mb-5\">\n <p className=\"text-black\">\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 <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 ) : 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 {...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 {/* 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","_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","service","programs","primaryWorker","attachments","_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","loadOptions","search","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 { 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';\n\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}) {\n const { service, programs, primaryWorker, attachments } = 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=\"md:w-full lg:w-2/3 bg-white border border-solid border-blue-border rounded\">\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-yellow-200 border border-solid border-yellow-500 rounded p-3 mb-5\">\n <p className=\"text-black\">\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 {...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 {/* 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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"}
@@ -23,33 +23,52 @@ var _lodash = require("lodash");
23
23
  var _utils = require("./utils");
24
24
  function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty2(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
25
25
  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; }
26
+ // Grouping Rules:
27
+ // - On- and off-platform programs cannot be grouped
28
+ // - Service must be the same
29
+ // - Programs in coordination centers cannot be grouped
30
+ // - Programs must be in the same network
31
+ // - Programs in sensitive providers cannot be grouped
32
+ // - Programs at the same provider cannot be grouped
33
+ // - Users at sensitive providers cannot group programs
34
+ // - Funded programs can only be grouped with other programs in the same fee schedule (not implemented)
26
35
  var groupByNetwork = function groupByNetwork(referral) {
27
36
  var _context, _context2, _context3, _context4;
28
37
  var networks = (0, _utils.filterNetworks)(referral);
38
+ // if there is only one possible network, set the referral's network and return the referral
39
+ if (networks.length === 1) {
40
+ referral.network = (0, _lodash.head)(networks);
41
+ return [referral];
42
+ }
43
+ // if there is more than one possible network, divide the programs into multiple referrals:
44
+ // referrals with programs in providers in a single network and
45
+ // referrals with programs in providers in multiple networks
29
46
  var singleNetworkPrograms = (0, _filter.default)(_context = referral.programs).call(_context, function (program) {
30
47
  return program.provider.networks.length === 1;
31
48
  });
32
49
  var multipleNetworkPrograms = (0, _filter.default)(_context2 = referral.programs).call(_context2, function (program) {
33
50
  return program.provider.networks.length > 1;
34
51
  });
52
+ // group single network programs by network id
35
53
  var programsGroupedByNetworkId = (0, _lodash.groupBy)(singleNetworkPrograms, 'provider.networks[0].id');
54
+ // create a grouped referral for programs with the same single network
36
55
  var sameNetworkReferrals = (0, _map.default)(_context3 = (0, _values.default)(programsGroupedByNetworkId)).call(_context3, function (programs) {
37
56
  return _objectSpread(_objectSpread({}, referral), {}, {
38
57
  programs: programs,
39
- network: (0, _lodash.head)(networks)
58
+ network: (0, _lodash.head)(programs[0].provider.networks)
40
59
  });
41
60
  });
61
+ // create separate referrals for each program with multiple networks
42
62
  var multipleNetworkReferrals = (0, _map.default)(multipleNetworkPrograms).call(multipleNetworkPrograms, function (program) {
43
63
  return _objectSpread(_objectSpread({}, referral), {}, {
44
64
  programs: [program]
45
- }, networks.length === 1 ? {
46
- network: (0, _lodash.head)(networks)
47
- } : null);
65
+ });
48
66
  });
49
67
  return (0, _concat.default)(_context4 = []).call(_context4, (0, _toConsumableArray2.default)(multipleNetworkReferrals), (0, _toConsumableArray2.default)(sameNetworkReferrals));
50
68
  };
51
69
  var groupByNetworkStatus = function groupByNetworkStatus(referral) {
52
70
  var _context5, _context6, _context7, _context8, _context9;
71
+ // if every program is on-platform or every programs is off-platform, return the referral
53
72
  if ((0, _lodash.every)((0, _map.default)(_context5 = referral.programs).call(_context5, function (p) {
54
73
  return (0, _utils.programIsOnPlatform)(p);
55
74
  })) || (0, _lodash.every)((0, _map.default)(_context6 = referral.programs).call(_context6, function (p) {
@@ -57,6 +76,7 @@ var groupByNetworkStatus = function groupByNetworkStatus(referral) {
57
76
  }))) {
58
77
  return [referral];
59
78
  }
79
+ // divide programs into on- and off-platform referrals
60
80
  var inNetworkPrograms = (0, _filter.default)(_context7 = referral.programs).call(_context7, function (p) {
61
81
  return (0, _utils.programIsOnPlatform)(p);
62
82
  });
@@ -71,7 +91,9 @@ var groupByNetworkStatus = function groupByNetworkStatus(referral) {
71
91
  };
72
92
  var groupByProviderId = function groupByProviderId(referral) {
73
93
  var _context10, _context11, _context12;
94
+ // group programs by provider id
74
95
  var programsGroupedByProviderID = (0, _lodash.groupBy)(referral.programs, 'provider.id');
96
+ // create a new referral for each program with a shared provider id
75
97
  var sameProviderPrograms = (0, _flatMapInstanceProperty(_lodash))((0, _filter.default)(_context10 = (0, _values.default)(programsGroupedByProviderID)).call(_context10, function (program) {
76
98
  return program.length > 1;
77
99
  }));
@@ -80,6 +102,7 @@ var groupByProviderId = function groupByProviderId(referral) {
80
102
  programs: [program]
81
103
  });
82
104
  });
105
+ // create a new referral for programs with unique provider ids
83
106
  var uniqueProviderPrograms = (0, _flatMapInstanceProperty(_lodash))((0, _filter.default)(_context11 = (0, _values.default)(programsGroupedByProviderID)).call(_context11, function (program) {
84
107
  return program.length === 1;
85
108
  }));
@@ -90,11 +113,13 @@ var groupByProviderId = function groupByProviderId(referral) {
90
113
  };
91
114
  var groupBySensitivity = function groupBySensitivity(referral) {
92
115
  var _context13, _context14, _context15, _context16, _context17;
116
+ // if every program is non-sensitive or the referral contains only one sensitive program, return referral
93
117
  if ((0, _lodash.every)((0, _map.default)(_context13 = referral.programs).call(_context13, function (p) {
94
118
  return !p.provider.sensitive;
95
119
  })) || referral.programs.length === 1 && (0, _lodash.head)(referral.programs).provider.sensitive) {
96
120
  return [referral];
97
121
  }
122
+ // create a new referral for each sensitive program
98
123
  var sensitivePrograms = (0, _map.default)(_context14 = (0, _filter.default)(_context15 = referral.programs).call(_context15, function (p) {
99
124
  return p.provider.sensitive;
100
125
  })).call(_context14, function (program) {
@@ -102,6 +127,7 @@ var groupBySensitivity = function groupBySensitivity(referral) {
102
127
  programs: [program]
103
128
  });
104
129
  });
130
+ // create a new referral for non-sensitive programs
105
131
  var nonSensitivePrograms = (0, _filter.default)(_context16 = referral.programs).call(_context16, function (p) {
106
132
  return !p.provider.sensitive;
107
133
  });
@@ -112,11 +138,13 @@ var groupBySensitivity = function groupBySensitivity(referral) {
112
138
  };
113
139
  var groupByCC = function groupByCC(referral) {
114
140
  var _context18, _context19, _context20, _context21, _context22;
141
+ // if no programs are in a coordination center or the referral contains only one program in a cc, return referral
115
142
  if ((0, _lodash.every)((0, _map.default)(_context18 = referral.programs).call(_context18, function (p) {
116
143
  return p.provider.provider_type !== 'coordination_center';
117
144
  })) || referral.programs.length === 1 && (0, _lodash.head)(referral.programs).provider.provider_type === 'coordination_center') {
118
145
  return [referral];
119
146
  }
147
+ // create a new referral for each program in a cc
120
148
  var ccPrograms = (0, _map.default)(_context19 = (0, _filter.default)(_context20 = referral.programs).call(_context20, function (p) {
121
149
  return p.provider.provider_type === 'coordination_center';
122
150
  })).call(_context19, function (program) {
@@ -124,6 +152,7 @@ var groupByCC = function groupByCC(referral) {
124
152
  programs: [program]
125
153
  });
126
154
  });
155
+ // create a new referral for programs not in a cc
127
156
  var nonCCPrograms = (0, _filter.default)(_context21 = referral.programs).call(_context21, function (p) {
128
157
  return p.provider.provider_type !== 'coordination_center';
129
158
  });
@@ -142,6 +171,7 @@ var preventGroupingForSensitiveProvider = function preventGroupingForSensitivePr
142
171
  };
143
172
  var buildGroupedReferrals = exports.buildGroupedReferrals = function buildGroupedReferrals(newReferrals, currentProvider) {
144
173
  var groupedReferrals = newReferrals;
174
+ // if the current provider is sensitive, prevent grouping
145
175
  if (currentProvider !== null && currentProvider !== void 0 && currentProvider.sensitive) {
146
176
  groupedReferrals = (0, _flatMapInstanceProperty(_lodash))(groupedReferrals, preventGroupingForSensitiveProvider);
147
177
  } else {
@@ -1 +1 @@
1
- {"version":3,"file":"buildGroupedReferrals.js","names":["_lodash","require","_utils","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","groupByNetwork","referral","_context","_context2","_context3","_context4","networks","filterNetworks","singleNetworkPrograms","_filter","programs","program","provider","multipleNetworkPrograms","programsGroupedByNetworkId","groupBy","sameNetworkReferrals","_map","_values","network","head","multipleNetworkReferrals","_concat","_toConsumableArray2","groupByNetworkStatus","_context5","_context6","_context7","_context8","_context9","every","p","programIsOnPlatform","programIsOffPlatform","inNetworkPrograms","OONPrograms","groupByProviderId","_context10","_context11","_context12","programsGroupedByProviderID","sameProviderPrograms","_flatMapInstanceProperty","sameProviderReferrals","uniqueProviderPrograms","uniqueProviderReferrals","isEmpty","groupBySensitivity","_context13","_context14","_context15","_context16","_context17","sensitive","sensitivePrograms","nonSensitivePrograms","nonSensitiveReferrals","groupByCC","_context18","_context19","_context20","_context21","_context22","provider_type","ccPrograms","nonCCPrograms","nonCCReferrals","preventGroupingForSensitiveProvider","buildGroupedReferrals","exports","newReferrals","currentProvider","groupedReferrals","groupOperations","operation"],"sources":["../../../src/pages/builder/buildGroupedReferrals.js"],"sourcesContent":["import { isEmpty, every, head, groupBy, flatMap } from 'lodash';\nimport { programIsOffPlatform, programIsOnPlatform } from './utils';\nimport { filterNetworks } from './utils';\n\nconst groupByNetwork = (referral) => {\n const networks = filterNetworks(referral);\n const singleNetworkPrograms = referral.programs.filter(program => program.provider.networks.length === 1);\n const multipleNetworkPrograms = referral.programs.filter(program => program.provider.networks.length > 1);\n\n const programsGroupedByNetworkId = groupBy(singleNetworkPrograms, 'provider.networks[0].id');\n\n const sameNetworkReferrals = Object.values(programsGroupedByNetworkId).map(programs => ({\n ...referral,\n programs,\n network: head(networks),\n }))\n\n const multipleNetworkReferrals = multipleNetworkPrograms.map(program => ({\n ...referral,\n programs: [program],\n ...(networks.length === 1 ? { network: head(networks) } : null),\n }))\n\n return [...multipleNetworkReferrals, ...sameNetworkReferrals];\n}\n\nconst groupByNetworkStatus = (referral) => {\n if (every(referral.programs.map(p => programIsOnPlatform(p))) ||\n every(referral.programs.map(p => programIsOffPlatform(p)))) {\n return [referral];\n }\n\n const inNetworkPrograms = referral.programs.filter(p => programIsOnPlatform(p));\n const OONPrograms = referral.programs.filter(p => programIsOffPlatform(p));\n\n return [\n ...inNetworkPrograms.length ? [{ ...referral, programs: inNetworkPrograms }] : [],\n ...OONPrograms.length ? [{ ...referral, programs: OONPrograms }] : []\n ];\n}\n\nconst groupByProviderId = (referral) => {\n const programsGroupedByProviderID = groupBy(referral.programs, 'provider.id');\n\n const sameProviderPrograms = flatMap(Object.values(programsGroupedByProviderID).filter(program => program.length > 1));\n const sameProviderReferrals = sameProviderPrograms.map(program => ({\n ...referral, programs: [program]\n }))\n\n const uniqueProviderPrograms = flatMap(Object.values(programsGroupedByProviderID).filter(program => program.length === 1));\n const uniqueProviderReferrals = !isEmpty(uniqueProviderPrograms) ? [{ ...referral, programs: uniqueProviderPrograms }] : [];\n\n return [...sameProviderReferrals, ...uniqueProviderReferrals];\n}\n\nconst groupBySensitivity = (referral) => {\n if (every(referral.programs.map(p => !p.provider.sensitive)) ||\n (referral.programs.length === 1 && head(referral.programs).provider.sensitive)) {\n return [referral];\n }\n\n const sensitivePrograms = referral.programs.filter(p => p.provider.sensitive).map(program => ({\n ...referral, programs: [program]\n }));\n\n const nonSensitivePrograms = referral.programs.filter(p => !p.provider.sensitive);\n\n const nonSensitiveReferrals = !isEmpty(nonSensitivePrograms) ? [{ ...referral, programs: nonSensitivePrograms }] : [];\n\n return [...sensitivePrograms, ...nonSensitiveReferrals];\n}\n\nconst groupByCC = (referral) => {\n if (every(referral.programs.map(p => p.provider.provider_type !== 'coordination_center')) ||\n (referral.programs.length === 1 && head(referral.programs).provider.provider_type === 'coordination_center')) {\n return [referral];\n }\n\n const ccPrograms = referral.programs.filter(p => p.provider.provider_type === 'coordination_center')\n .map(program => ({\n ...referral, programs: [program]\n }));\n\n const nonCCPrograms = referral.programs.filter(p => p.provider.provider_type !== 'coordination_center');\n\n const nonCCReferrals = !isEmpty(nonCCPrograms) ? [{ ...referral, programs: nonCCPrograms }] : [];\n\n return [...ccPrograms, ...nonCCReferrals];\n}\n\nconst preventGroupingForSensitiveProvider = (referral) => {\n const { programs } = referral;\n return programs.length > 1 ?\n programs.map(program => ({ ...referral, programs: [program] })) :\n [referral];\n};\n\nexport const buildGroupedReferrals = (newReferrals, currentProvider) => {\n let groupedReferrals = newReferrals;\n\n if (currentProvider?.sensitive) {\n groupedReferrals = flatMap(groupedReferrals, preventGroupingForSensitiveProvider);\n } else {\n const groupOperations = [groupByNetwork, groupByNetworkStatus, groupByProviderId, groupBySensitivity, groupByCC];\n groupOperations.forEach(operation => {\n groupedReferrals = flatMap(groupedReferrals, operation);\n });\n }\n\n return groupedReferrals;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"buildGroupedReferrals.js","names":["_lodash","require","_utils","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","groupByNetwork","referral","_context","_context2","_context3","_context4","networks","filterNetworks","network","head","singleNetworkPrograms","_filter","programs","program","provider","multipleNetworkPrograms","programsGroupedByNetworkId","groupBy","sameNetworkReferrals","_map","_values","multipleNetworkReferrals","_concat","_toConsumableArray2","groupByNetworkStatus","_context5","_context6","_context7","_context8","_context9","every","p","programIsOnPlatform","programIsOffPlatform","inNetworkPrograms","OONPrograms","groupByProviderId","_context10","_context11","_context12","programsGroupedByProviderID","sameProviderPrograms","_flatMapInstanceProperty","sameProviderReferrals","uniqueProviderPrograms","uniqueProviderReferrals","isEmpty","groupBySensitivity","_context13","_context14","_context15","_context16","_context17","sensitive","sensitivePrograms","nonSensitivePrograms","nonSensitiveReferrals","groupByCC","_context18","_context19","_context20","_context21","_context22","provider_type","ccPrograms","nonCCPrograms","nonCCReferrals","preventGroupingForSensitiveProvider","buildGroupedReferrals","exports","newReferrals","currentProvider","groupedReferrals","groupOperations","operation"],"sources":["../../../src/pages/builder/buildGroupedReferrals.js"],"sourcesContent":["import { isEmpty, every, head, groupBy, flatMap } from 'lodash';\nimport { programIsOffPlatform, programIsOnPlatform } from './utils';\nimport { filterNetworks } from './utils';\n\n// Grouping Rules:\n// - On- and off-platform programs cannot be grouped\n// - Service must be the same\n// - Programs in coordination centers cannot be grouped\n// - Programs must be in the same network\n// - Programs in sensitive providers cannot be grouped\n// - Programs at the same provider cannot be grouped\n// - Users at sensitive providers cannot group programs\n// - Funded programs can only be grouped with other programs in the same fee schedule (not implemented)\n\nconst groupByNetwork = (referral) => {\n const networks = filterNetworks(referral);\n // if there is only one possible network, set the referral's network and return the referral\n if (networks.length === 1) {\n referral.network = head(networks);\n return [referral];\n }\n // if there is more than one possible network, divide the programs into multiple referrals:\n // referrals with programs in providers in a single network and\n // referrals with programs in providers in multiple networks\n const singleNetworkPrograms = referral.programs.filter(program => program.provider.networks.length === 1);\n const multipleNetworkPrograms = referral.programs.filter(program => program.provider.networks.length > 1);\n // group single network programs by network id\n const programsGroupedByNetworkId = groupBy(singleNetworkPrograms, 'provider.networks[0].id');\n // create a grouped referral for programs with the same single network\n const sameNetworkReferrals = Object.values(programsGroupedByNetworkId).map(programs => ({\n ...referral,\n programs,\n network: head(programs[0].provider.networks),\n }))\n // create separate referrals for each program with multiple networks\n const multipleNetworkReferrals = multipleNetworkPrograms.map(program => ({\n ...referral,\n programs: [program],\n }))\n\n return [...multipleNetworkReferrals, ...sameNetworkReferrals];\n}\n\nconst groupByNetworkStatus = (referral) => {\n // if every program is on-platform or every programs is off-platform, return the referral\n if (every(referral.programs.map(p => programIsOnPlatform(p))) ||\n every(referral.programs.map(p => programIsOffPlatform(p)))) {\n return [referral];\n }\n // divide programs into on- and off-platform referrals\n const inNetworkPrograms = referral.programs.filter(p => programIsOnPlatform(p));\n const OONPrograms = referral.programs.filter(p => programIsOffPlatform(p));\n\n return [\n ...inNetworkPrograms.length ? [{ ...referral, programs: inNetworkPrograms }] : [],\n ...OONPrograms.length ? [{ ...referral, programs: OONPrograms }] : []\n ];\n}\n\nconst groupByProviderId = (referral) => {\n // group programs by provider id\n const programsGroupedByProviderID = groupBy(referral.programs, 'provider.id');\n // create a new referral for each program with a shared provider id\n const sameProviderPrograms = flatMap(Object.values(programsGroupedByProviderID).filter(program => program.length > 1));\n const sameProviderReferrals = sameProviderPrograms.map(program => ({\n ...referral, programs: [program]\n }))\n // create a new referral for programs with unique provider ids\n const uniqueProviderPrograms = flatMap(Object.values(programsGroupedByProviderID).filter(program => program.length === 1));\n const uniqueProviderReferrals = !isEmpty(uniqueProviderPrograms) ? [{ ...referral, programs: uniqueProviderPrograms }] : [];\n\n return [...sameProviderReferrals, ...uniqueProviderReferrals];\n}\n\nconst groupBySensitivity = (referral) => {\n // if every program is non-sensitive or the referral contains only one sensitive program, return referral\n if (every(referral.programs.map(p => !p.provider.sensitive)) ||\n (referral.programs.length === 1 && head(referral.programs).provider.sensitive)) {\n return [referral];\n }\n // create a new referral for each sensitive program\n const sensitivePrograms = referral.programs.filter(p => p.provider.sensitive).map(program => ({\n ...referral, programs: [program]\n }));\n // create a new referral for non-sensitive programs\n const nonSensitivePrograms = referral.programs.filter(p => !p.provider.sensitive);\n const nonSensitiveReferrals = !isEmpty(nonSensitivePrograms) ? [{ ...referral, programs: nonSensitivePrograms }] : [];\n\n return [...sensitivePrograms, ...nonSensitiveReferrals];\n}\n\nconst groupByCC = (referral) => {\n // if no programs are in a coordination center or the referral contains only one program in a cc, return referral\n if (every(referral.programs.map(p => p.provider.provider_type !== 'coordination_center')) ||\n (referral.programs.length === 1 && head(referral.programs).provider.provider_type === 'coordination_center')) {\n return [referral];\n }\n // create a new referral for each program in a cc\n const ccPrograms = referral.programs.filter(p => p.provider.provider_type === 'coordination_center')\n .map(program => ({\n ...referral, programs: [program]\n }));\n // create a new referral for programs not in a cc\n const nonCCPrograms = referral.programs.filter(p => p.provider.provider_type !== 'coordination_center');\n const nonCCReferrals = !isEmpty(nonCCPrograms) ? [{ ...referral, programs: nonCCPrograms }] : [];\n\n return [...ccPrograms, ...nonCCReferrals];\n}\n\nconst preventGroupingForSensitiveProvider = (referral) => {\n const { programs } = referral;\n return programs.length > 1 ?\n programs.map(program => ({ ...referral, programs: [program] })) :\n [referral];\n};\n\nexport const buildGroupedReferrals = (newReferrals, currentProvider) => {\n let groupedReferrals = newReferrals;\n // if the current provider is sensitive, prevent grouping\n if (currentProvider?.sensitive) {\n groupedReferrals = flatMap(groupedReferrals, preventGroupingForSensitiveProvider);\n } else {\n const groupOperations = [groupByNetwork, groupByNetworkStatus, groupByProviderId, groupBySensitivity, groupByCC];\n groupOperations.forEach(operation => {\n groupedReferrals = flatMap(groupedReferrals, operation);\n });\n }\n\n return groupedReferrals;\n}\n"],"mappings":"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"}
@@ -194,9 +194,9 @@ var filterNetworks = exports.filterNetworks = function filterNetworks(referral)
194
194
  });
195
195
  if (sendingNetworks.length === 1) {
196
196
  // 1 sending network and 1+ receiving networks, return sending network
197
- return (0, _filter.default)(receivingNetworks).call(receivingNetworks, function (network) {
197
+ return (0, _lodash.uniqBy)((0, _filter.default)(receivingNetworks).call(receivingNetworks, function (network) {
198
198
  return network.id === (0, _lodash.head)(sendingNetworks).id;
199
- });
199
+ }), 'id');
200
200
  } else if (receivingNetworks.length > 1) {
201
201
  // 2+ sending networks and 2+ receiving network, return common networks
202
202
  return (0, _lodash.intersectionBy)(receivingNetworks, sendingNetworks, 'id');
@@ -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","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","get","head","missingRequiredFields","shouldShowNetworkSelect","isEmpty","undefined","generateErrorMessage","_context6","errorCount","_flat","_values","prefix","concat","filterNetworks","_context7","sendingNetworks","receivingNetworks","_flatMapInstanceProperty","state","intersectionBy","hasOffPlatformReferrals"],"sources":["../../../src/pages/builder/utils.js"],"sourcesContent":["import {\n compact,\n some,\n isEmpty,\n get,\n head,\n flatMap,\n intersectionBy,\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 // 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) { 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 = get(head(programs), 'provider.networks', []);\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 receivingNetworks.filter((network) => network.id === head(sendingNetworks).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"],"mappings":"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"}
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","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","get","head","missingRequiredFields","shouldShowNetworkSelect","isEmpty","undefined","generateErrorMessage","_context6","errorCount","_flat","_values","prefix","concat","filterNetworks","_context7","sendingNetworks","receivingNetworks","_flatMapInstanceProperty","state","uniqBy","intersectionBy","hasOffPlatformReferrals"],"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 // 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) { 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 = get(head(programs), 'provider.networks', []);\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"],"mappings":"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"}
@@ -195,7 +195,7 @@ function SupportingInfo() {
195
195
  ,
196
196
  usage_type: "referral_assessment"
197
197
  });
198
- }))))), !(0, _lodash.isEmpty)(groupForms) && /*#__PURE__*/_react.default.createElement("div", {
198
+ })))), !(0, _lodash.isEmpty)(groupForms) && /*#__PURE__*/_react.default.createElement("div", {
199
199
  className: "pt-6"
200
200
  }, /*#__PURE__*/_react.default.createElement(_NavButtons.default, {
201
201
  onBackClick: function onBackClick() {
@@ -206,6 +206,6 @@ function SupportingInfo() {
206
206
  primaryLabel: "Next",
207
207
  hideSaveDraftLink: (0, _lodash.get)(fieldsConfig, 'hideSaveDraftLink'),
208
208
  hasOffPlatformReferrals: (0, _utils.hasOffPlatformReferrals)(referrals)
209
- })));
209
+ }))));
210
210
  }
211
211
  //# sourceMappingURL=SupportingInfo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SupportingInfo.js","names":["_react","_interopRequireWildcard","require","_reactRouterDom","_lodash","_buildResponses","_interopRequireDefault","_StepHeader","_constants","_AppCreateReferralProvider","_CreateReferralContainer","_fetchCoreGroupForms","_NavButtons","_FormForm","_useCreateReferrals","_config","_utils","_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","_filterInstanceProperty","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","_Object$getOwnPropertyDescriptors","_Object$defineProperties","SupportingInfo","navigate","useNavigate","_useAppCreateReferral","useAppCreateReferralContext","dispatch","_useAppCreateReferral2","state","person","currentEmployee","currentProvider","referrals","fieldsConfig","_useState","useState","_useState2","_slicedToArray2","groupForms","setGroupForms","formRefs","useRef","_useState3","_useState4","expandedFormCard","setExpandedFormCard","_useState5","_useState6","showErrors","setShowErrors","providerId","id","useEffect","serviceIds","_map","referral","service","fetchCoreGroupForms","then","data","handleExpandChange","index","goToReviewStep","dispatchAssessmentResponses","responses","getAssessmentsResponses","setData","formResponses","onNextClick","_ref","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","stop","hasErrors","forms","current","_keys","formId","formRef","ref","response","buildResponses","isEmpty","form","_find","f","createReferrals","useCreateReferrals","handleSaveDraftReferral","_ref2","_callee2","onSaveDraftReferral","_callee2$","_context2","draft","latestResponses","CALLBACKS","createElement","header","SUPPORTING_INFO","SUPPORTING_INFO_DESC","className","onBackClick","onForwardClick","primaryLabel","hideSaveDraftLink","hasOffPlatformReferrals","_formRefs$form$id","concat","setRef","key","groupId","expanded","contextType","contextPerson","usage_type"],"sources":["../../../src/pages/supporting-info/SupportingInfo.js"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { useNavigate } from 'react-router-dom';\nimport { get, isEmpty } from 'lodash';\nimport buildResponses from '@unite-us/surveyjs/dist/components/Renderer/buildResponses';\nimport StepHeader from '../../components/StepHeader';\n\nimport { SUPPORTING_INFO, SUPPORTING_INFO_DESC } from '../builder/constants';\n\nimport { setData, useAppCreateReferralContext } from '../../context/AppCreateReferralProvider';\nimport CreateReferralContainer from '../../components/CreateReferralContainer';\nimport fetchCoreGroupForms from '../../actions/Group/fetchCoreGroupForms';\nimport NavButtons from '../../components/NavButtons';\nimport FormForm from '../../common/form/FormForm';\nimport useCreateReferrals from '../../hooks/useCreateReferrals';\nimport { CALLBACKS } from '../../api/config';\nimport { hasOffPlatformReferrals } from '../builder/utils';\n\nexport default function SupportingInfo() {\n const navigate = useNavigate();\n const { dispatch, state: { person, currentEmployee, currentProvider, referrals, fieldsConfig } } = useAppCreateReferralContext();\n const [groupForms, setGroupForms] = useState([]);\n const formRefs = useRef({});\n const [expandedFormCard, setExpandedFormCard] = useState(0);\n const [showErrors, setShowErrors] = useState(false);\n\n const providerId = currentProvider?.id;\n\n useEffect(() => {\n const serviceIds = referrals?.map((referral) => referral.service.id);\n fetchCoreGroupForms(providerId, serviceIds).then((data) => {\n setGroupForms(data);\n });\n }, [providerId, referrals]);\n\n const handleExpandChange = (index) => {\n if (index === expandedFormCard)\n setExpandedFormCard(null);\n else {\n setExpandedFormCard(index);\n }\n };\n\n const goToReviewStep = () => {\n navigate('/create/review')\n }\n\n const dispatchAssessmentResponses = () => {\n const responses = getAssessmentsResponses();\n dispatch(setData({\n formResponses: responses,\n }));\n return responses;\n }\n\n const onNextClick = async () => {\n dispatchAssessmentResponses();\n goToReviewStep();\n }\n\n const getAssessmentsResponses = () => {\n const formResponses = {};\n let hasErrors = false;\n const forms = formRefs.current;\n Object.keys(forms).forEach((formId) => {\n const formRef = forms[formId];\n\n if (formRef.ref.hasErrors()) {\n hasErrors = true;\n }\n const response = buildResponses(formRef.ref);\n if (!isEmpty(response)) {\n formResponses[formId] = {\n responses: response,\n form: groupForms.find(f => f.id === formId)\n }\n }\n });\n\n if (hasErrors) {\n setShowErrors(true);\n return;\n };\n\n return formResponses\n }\n\n const createReferrals = useCreateReferrals();\n const handleSaveDraftReferral = async () => {\n const responses = dispatchAssessmentResponses();\n await createReferrals({ draft: true, latestResponses: responses });\n const { onSaveDraftReferral } = CALLBACKS;\n onSaveDraftReferral && onSaveDraftReferral();\n };\n\n return (\n <CreateReferralContainer>\n <StepHeader header={'Complete Assessments'}>\n {SUPPORTING_INFO}\n <br />\n {SUPPORTING_INFO_DESC}\n </StepHeader>\n\n <div className=\"px-12 pb-6\">\n <NavButtons\n onBackClick={() => navigate(-1)}\n onForwardClick={onNextClick}\n onSaveDraftReferral={handleSaveDraftReferral}\n primaryLabel=\"Next\"\n hideSaveDraftLink={get(fieldsConfig, 'hideSaveDraftLink')}\n hasOffPlatformReferrals={hasOffPlatformReferrals(referrals)}\n />\n\n <div className=\"bg-white border border-solid border-blue-border rounded\">\n <div className=\"add-supporting-details-step\">\n <div>\n {\n groupForms.map((form, index) => (\n <FormForm\n id={`group-form-${index}`}\n className={`custom-form-${index}`}\n setRef={(ref) => {\n formRefs.current = {\n ...formRefs.current,\n [form.id]: ref,\n };\n }}\n key={`${form.id}formform`}\n formId={form.id}\n groupId={providerId}\n handleExpandChange={() => handleExpandChange(index)}\n expanded={index === expandedFormCard}\n currentEmployee={currentEmployee}\n hasErrors={showErrors ? formRefs[form.id]?.ref?.hasErrors() : false}\n contextType=\"case\"\n contextPerson={person.id}\n // response={isResponseForContact && responses?.find((x) => x.id === form.id)}\n usage_type=\"referral_assessment\"\n />\n ))\n }\n </div>\n </div>\n </div>\n </div>\n {!isEmpty(groupForms) && (\n <div className=\"pt-6\">\n <NavButtons\n onBackClick={() => navigate(-1)}\n onForwardClick={onNextClick}\n onSaveDraftReferral={handleSaveDraftReferral}\n primaryLabel=\"Next\"\n hideSaveDraftLink={get(fieldsConfig, 'hideSaveDraftLink')}\n hasOffPlatformReferrals={hasOffPlatformReferrals(referrals)}\n />\n </div>\n )}\n </CreateReferralContainer>\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"SupportingInfo.js","names":["_react","_interopRequireWildcard","require","_reactRouterDom","_lodash","_buildResponses","_interopRequireDefault","_StepHeader","_constants","_AppCreateReferralProvider","_CreateReferralContainer","_fetchCoreGroupForms","_NavButtons","_FormForm","_useCreateReferrals","_config","_utils","_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","_filterInstanceProperty","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","_Object$getOwnPropertyDescriptors","_Object$defineProperties","SupportingInfo","navigate","useNavigate","_useAppCreateReferral","useAppCreateReferralContext","dispatch","_useAppCreateReferral2","state","person","currentEmployee","currentProvider","referrals","fieldsConfig","_useState","useState","_useState2","_slicedToArray2","groupForms","setGroupForms","formRefs","useRef","_useState3","_useState4","expandedFormCard","setExpandedFormCard","_useState5","_useState6","showErrors","setShowErrors","providerId","id","useEffect","serviceIds","_map","referral","service","fetchCoreGroupForms","then","data","handleExpandChange","index","goToReviewStep","dispatchAssessmentResponses","responses","getAssessmentsResponses","setData","formResponses","onNextClick","_ref","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","stop","hasErrors","forms","current","_keys","formId","formRef","ref","response","buildResponses","isEmpty","form","_find","f","createReferrals","useCreateReferrals","handleSaveDraftReferral","_ref2","_callee2","onSaveDraftReferral","_callee2$","_context2","draft","latestResponses","CALLBACKS","createElement","header","SUPPORTING_INFO","SUPPORTING_INFO_DESC","className","onBackClick","onForwardClick","primaryLabel","hideSaveDraftLink","hasOffPlatformReferrals","_formRefs$form$id","concat","setRef","key","groupId","expanded","contextType","contextPerson","usage_type"],"sources":["../../../src/pages/supporting-info/SupportingInfo.js"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { useNavigate } from 'react-router-dom';\nimport { get, isEmpty } from 'lodash';\nimport buildResponses from '@unite-us/surveyjs/dist/components/Renderer/buildResponses';\nimport StepHeader from '../../components/StepHeader';\n\nimport { SUPPORTING_INFO, SUPPORTING_INFO_DESC } from '../builder/constants';\n\nimport { setData, useAppCreateReferralContext } from '../../context/AppCreateReferralProvider';\nimport CreateReferralContainer from '../../components/CreateReferralContainer';\nimport fetchCoreGroupForms from '../../actions/Group/fetchCoreGroupForms';\nimport NavButtons from '../../components/NavButtons';\nimport FormForm from '../../common/form/FormForm';\nimport useCreateReferrals from '../../hooks/useCreateReferrals';\nimport { CALLBACKS } from '../../api/config';\nimport { hasOffPlatformReferrals } from '../builder/utils';\n\nexport default function SupportingInfo() {\n const navigate = useNavigate();\n const { dispatch, state: { person, currentEmployee, currentProvider, referrals, fieldsConfig } } = useAppCreateReferralContext();\n const [groupForms, setGroupForms] = useState([]);\n const formRefs = useRef({});\n const [expandedFormCard, setExpandedFormCard] = useState(0);\n const [showErrors, setShowErrors] = useState(false);\n\n const providerId = currentProvider?.id;\n\n useEffect(() => {\n const serviceIds = referrals?.map((referral) => referral.service.id);\n fetchCoreGroupForms(providerId, serviceIds).then((data) => {\n setGroupForms(data);\n });\n }, [providerId, referrals]);\n\n const handleExpandChange = (index) => {\n if (index === expandedFormCard)\n setExpandedFormCard(null);\n else {\n setExpandedFormCard(index);\n }\n };\n\n const goToReviewStep = () => {\n navigate('/create/review')\n }\n\n const dispatchAssessmentResponses = () => {\n const responses = getAssessmentsResponses();\n dispatch(setData({\n formResponses: responses,\n }));\n return responses;\n }\n\n const onNextClick = async () => {\n dispatchAssessmentResponses();\n goToReviewStep();\n }\n\n const getAssessmentsResponses = () => {\n const formResponses = {};\n let hasErrors = false;\n const forms = formRefs.current;\n Object.keys(forms).forEach((formId) => {\n const formRef = forms[formId];\n\n if (formRef.ref.hasErrors()) {\n hasErrors = true;\n }\n const response = buildResponses(formRef.ref);\n if (!isEmpty(response)) {\n formResponses[formId] = {\n responses: response,\n form: groupForms.find(f => f.id === formId)\n }\n }\n });\n\n if (hasErrors) {\n setShowErrors(true);\n return;\n };\n\n return formResponses\n }\n\n const createReferrals = useCreateReferrals();\n const handleSaveDraftReferral = async () => {\n const responses = dispatchAssessmentResponses();\n await createReferrals({ draft: true, latestResponses: responses });\n const { onSaveDraftReferral } = CALLBACKS;\n onSaveDraftReferral && onSaveDraftReferral();\n };\n\n return (\n <CreateReferralContainer>\n <StepHeader header={'Complete Assessments'}>\n {SUPPORTING_INFO}\n <br />\n {SUPPORTING_INFO_DESC}\n </StepHeader>\n\n <div className=\"px-12 pb-6\">\n <NavButtons\n onBackClick={() => navigate(-1)}\n onForwardClick={onNextClick}\n onSaveDraftReferral={handleSaveDraftReferral}\n primaryLabel=\"Next\"\n hideSaveDraftLink={get(fieldsConfig, 'hideSaveDraftLink')}\n hasOffPlatformReferrals={hasOffPlatformReferrals(referrals)}\n />\n\n <div className=\"bg-white border border-solid border-blue-border rounded\">\n <div className=\"add-supporting-details-step\">\n <div>\n {\n groupForms.map((form, index) => (\n <FormForm\n id={`group-form-${index}`}\n className={`custom-form-${index}`}\n setRef={(ref) => {\n formRefs.current = {\n ...formRefs.current,\n [form.id]: ref,\n };\n }}\n key={`${form.id}formform`}\n formId={form.id}\n groupId={providerId}\n handleExpandChange={() => handleExpandChange(index)}\n expanded={index === expandedFormCard}\n currentEmployee={currentEmployee}\n hasErrors={showErrors ? formRefs[form.id]?.ref?.hasErrors() : false}\n contextType=\"case\"\n contextPerson={person.id}\n // response={isResponseForContact && responses?.find((x) => x.id === form.id)}\n usage_type=\"referral_assessment\"\n />\n ))\n }\n </div>\n </div>\n </div>\n {!isEmpty(groupForms) && (\n <div className=\"pt-6\">\n <NavButtons\n onBackClick={() => navigate(-1)}\n onForwardClick={onNextClick}\n onSaveDraftReferral={handleSaveDraftReferral}\n primaryLabel=\"Next\"\n hideSaveDraftLink={get(fieldsConfig, 'hideSaveDraftLink')}\n hasOffPlatformReferrals={hasOffPlatformReferrals(referrals)}\n />\n </div>\n )}\n </div>\n </CreateReferralContainer>\n )\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unite-us/app-create-referral",
3
- "version": "0.1.76",
3
+ "version": "0.1.77",
4
4
  "main": "./dist/index.js",
5
5
  "author": "Alex Morales",
6
6
  "dependencies": {