@unite-us/app-create-referral 0.2.4 → 0.2.6-CRTB-985-e6aa149

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/README.md CHANGED
@@ -1,10 +1,19 @@
1
- # App Create Referral
2
1
 
3
2
  This project is intended to be used from a parent application like [unite-us/front-end](https://github.com/unite-us/front-end) or [unite-us/uniteus-emr](https://github.com/unite-us/uniteus-emr)
4
3
 
5
- [Technical Design Document](https://uniteus.atlassian.net/wiki/spaces/AppEng/pages/3819208813/Tech+Design+Create+Referral+Project) (in progress)
4
+ ## Table of Contents
5
+ - [Table of Contents](#table-of-contents)
6
+ - [Setup](#setup)
7
+ - [For Frontend (WebApp) Parent project](#for-frontend-webapp-parent-project)
8
+ - [For SmartApp (EMR) Parent project](#for-smartapp-emr-parent-project)
9
+ - [Architecture](#architecture)
10
+ - [Usages in parent apps](#usages-in-parent-apps)
11
+ - [Testing](#testing)
12
+ - [Releases](#releases)
13
+ - [How to update `app-create-referral` version in parent apps](#how-to-update-app-create-referral-version-in-parent-apps)
14
+ - [When to update the version in parent apps?](#when-to-update-the-version-in-parent-apps)
6
15
 
7
- ### Setup
16
+ ## Setup
8
17
  To develop locally follow this steps:
9
18
 
10
19
  1- Open a command line console:
@@ -13,48 +22,233 @@ To develop locally follow this steps:
13
22
 
14
23
  $ npm i && npm link && npm run build:dist:watch
15
24
  ```
16
- This install the packages, create a link for this project (to be consumed from a parent app) and starts the server in watch mode, all the changes you do will trigger a rebuild and you will have the latest version)
25
+ This installs the packages, creates a link for this project (to be consumed from a parent app) and starts the server in watch mode. Development changes will trigger a rebuild and refresh the browser.
17
26
 
18
- ## For EMR Parent project
27
+ ### For Frontend (WebApp) Parent project
19
28
 
20
- The branch we are using for development is **smrt-create-referral**:
29
+ ```
30
+ // open a new terminal
31
+ // from the folder in `front-end/packages/app-client`
32
+ $ npm link @unite-us/app-create-referral
33
+ $ npm start
34
+ ```
35
+ - Go to http://localhost:8080 and log in as a user with the `uup-459-superset-phase-2` feature flag enabled (ex: `spero@perms.test`)
36
+ - Find the entrypoint you want to check, e.g from the Client Facesheet, click the Refer button, it should take you to the Search step and then land in the referral flow
37
+
38
+ ### For SmartApp (EMR) Parent project
21
39
 
22
40
  ```
41
+ // open a new terminal
23
42
  // from the root folder in uniteus-emr project
24
43
  $ npm i
25
- $ git checkout smrt-create-referral
26
44
  $ npm link @unite-us/app-create-referral
27
45
  $ npm start
28
46
  ```
29
- - Go to http://localhost:8081 and log in as a user with the `hint11EhrSearchApiCutover` feature flag enabled (ex: `costanza@uniteus.com`)
30
- - Follow the steps to create a new referral clicking the Create Referral button.
31
- - Then go to [How to create a new version](#how-to-create-a-new-version)
47
+ - Go to http://localhost:8081 and log in as a user with the `uup-459-superset-phase-2` feature flag enabled (ex: `costanza@uniteus.com`)
48
+ - Find the entry point you want to check (e.g click the "Create Referral" button); it should take you to the Search step. Once you select program(s), click the "Added Resources" button to open the drawer and click the "Create Referrals" button to land in the referral flow.
49
+
50
+ ## Architecture
51
+
52
+ Please find the [Technical Design Document](https://uniteus.atlassian.net/wiki/spaces/AppEng/pages/3819208813/Tech+Design+Create+Referral+Project) to know about the project.
53
+
54
+ The application includes it's own Router and React Query Client. This allows us to use React Testing Library with Mock Service Workers (MswJS) for testing as an standalone app.
55
+
56
+ - `__testUtils__/`: Testing utils and mock server
57
+ - `actions/`: Custom api calls
58
+ - `api/`: Default hooks and axios instances setup
59
+ - `common/`: Common components (this can be merged with the components folder)
60
+ - `components/`: Components
61
+ - `constants/`: Constants
62
+ - `context/`: App Context to serve as source of truth of the data.
63
+ - `hooks/`: Custom hooks
64
+ - `pages/`: Pages components that relates to each route
65
+ - `styles/`: Custom scss files
66
+ - `utils/`: Utils functions
67
+
68
+ `AppReferrals.js`: This is the main component (entry point) of the app with the Router
69
+
70
+ ## Usages in parent apps
71
+
72
+ The AppReferrals component is wired up in AppClient and EMR in specific routes:
73
+
74
+ AppClient:
32
75
 
33
- ## How to create a new version
76
+ - `<Route path="referrals/2/*" component={Referrals} />`
77
+ - Points to: https://github.com/unite-us/front-end/blob/master/packages/app-client/src/pages/referrals/2/Referrals.jsx
34
78
 
35
- After you are done with your changes, create a PR and **AFTER** it's merged, a Github Action will bump the version for you automatically and will create a new commit in the history, just only need to wait for the action to finish and check the commits for one that looks like this, eg:
36
79
  ```
37
- Automated Version Bump [skip ci] bumps version to 0.1.21
80
+ <AppReferrals
81
+ // general settings, urls needed to build the axios instances
82
+ appSettings={
83
+ {
84
+ env: {
85
+ getAuthToken,
86
+ coreUrl: CORE_API,
87
+ employeeId: currentEmployee?.id,
88
+ providerId: currentEmployee?.provider.id,
89
+ sharesUrl: SHARES_URL,
90
+ consentUrl: CONSENT_APP_URL,
91
+ },
92
+ basename,
93
+ }
94
+ }
95
+
96
+ // this will be set to the app context
97
+ appState={{
98
+ currentEmployee,
99
+ currentProvider,
100
+ enums,
101
+ source: 'app-client',
102
+ }}
103
+
104
+ // callbacks functions invoked in specific places throughout the app
105
+ callbacks={{
106
+ notify: {
107
+ error: (message) => Notifier.dispatch('error', message),
108
+ success: (message) => Notifier.dispatch('success', message),
109
+ warn: (message) => Notifier.dispatch('warning', message),
110
+ },
111
+ trackEventCallback: trackEvent,
112
+ consent: {
113
+ updateGlobalState,
114
+ },
115
+ onReferralCompleted: ({ hasOnlyOONReferrals }) => {
116
+ browserHistory.push({
117
+ pathname: hasOnlyOONReferrals ? '/dashboard/oon-cases/open' : '/dashboard/referrals/sent/all',
118
+ });
119
+ },
120
+ onSaveDraftReferral: () => {
121
+ browserHistory.push({
122
+ pathname: '/dashboard/referrals/sent/draft',
123
+ });
124
+ },
125
+ onSubmitConsent: async () => {
126
+ // refresh ClientHeader to refetch person to show new consent status
127
+ setShowHeader(false);
128
+ setTimeout(() => {
129
+ setShowHeader(true);
130
+ });
131
+ },
132
+ onDeselectProgram: dispatchRemoveProgram,
133
+ onClickSearchStep: (searchParams, selectedPrograms) => {
134
+ dispatchRemoveAllPrograms();
135
+ if (!isEmpty(selectedPrograms)) {
136
+ dispatchAddPrograms(selectedPrograms);
137
+ }
138
+
139
+ const serializedSearchParams = serializeQueryParams(omitBy(searchParams, isNil));
140
+ const search = serializedSearchParams ? `?${serializedSearchParams}` : '';
141
+
142
+ browserHistory.push({
143
+ pathname: '/referrals/create/add-resources',
144
+ search,
145
+ });
146
+ },
147
+ onClickBackFromBuilder: () => {
148
+ let backUrl = `/referrals/create/add-resources?person=${personId}`;
149
+ if (resourceListId) { backUrl += `&resource_list=${resourceListId}`; }
150
+
151
+ browserHistory.replace(`${backUrl}&from-referral=true`);
152
+ },
153
+ }}
154
+
155
+ // components as props to avoid adding dependencies inside the app-create-referral repo
156
+ components={{
157
+ consent: ConsentReferrals,
158
+ }}
159
+ />
160
+
161
+ //...
38
162
  ```
39
- In this case, the new version is **0.1.21**
163
+ EMR:
164
+ - `<Route path="referrals/2/*" components={Referrals} />`
165
+ - Points to: https://github.com/unite-us/uniteus-emr/blob/master/src/pages/%5Bsession_id%5D/2/referrals/Referrals.jsx
40
166
 
41
- ## How to make the parent app use your new version
167
+ In both WebApp and SmartApp, where the user navigates to the referral flow, we need to set the `selectedPrograms`, as in `SupersetSearch.jsx`
42
168
 
43
- You need to update the package.json in the parent app, eg: unite-us/uniteus-emr
169
+ ```
170
+ ...
171
+ const { dispatch } = useAppCreateReferralContext();
44
172
 
45
- for EMR: https://github.com/unite-us/uniteus-emr/blob/smrt-create-referral/package.json#L33
173
+ const onClickNext = () => {
174
+ const programsToUse = Object.keys(programToServiceTypesDict)
175
+ .map((id) => ({ id, services: programToServiceTypesDict[id] }));
46
176
 
47
- ```
48
- //"@unite-us/app-create-referral": "0.1.1",
49
- "@unite-us/app-create-referral": "0.1.1"
50
-
51
- ```
52
- - Open the terminal
177
+ // this sets the selected programs needed inside the referral flow
178
+ dispatch(
179
+ init({
180
+ selectedPrograms: programsToUse,
181
+ person: personId,
182
+ resourceListId,
183
+ }),
184
+ );
185
+
186
+ browserHistory.push({
187
+ pathname: '/referrals/2/create/builder',
188
+ });
189
+ }
190
+ ```
191
+
192
+ ## Testing
193
+
194
+ The app uses React Testing Library and Mock Service Worker (MswJS) for unit testing and integration testing across components.
195
+
196
+ `/__testUtils__/`: Includes the custom `render` using React Testing Library and the Mock Server that intercepts http requests during the tests
197
+
198
+ `/pages/*/__tests__`: Each page includes a folder with the tests for the screen.
199
+
200
+ Please review the existing tests and follow along to keep adding more scenarios as new features are being added.
201
+
202
+ ## Releases
203
+
204
+ There is Github Action configured for the `main` branch that will generate a new version after a PR has been merged into `main`, usually it's the latest commit in the history for the main branch, e.g:
205
+ ```
206
+ Automated Version Bump [skip ci] bumps version to 0.1.85
207
+ ```
208
+
209
+ The new version created is `0.1.85`
210
+
211
+ ### How to update `app-create-referral` version in parent apps
212
+
213
+ There are a few steps:
214
+ 1. Update the dependency in the corresponding `package.json`
215
+ 2. Install the dependencies
216
+ 3. Create the PR to merge the new version
217
+
218
+ - unite-us/front-end
219
+
220
+ Update the `package.json`: https://github.com/unite-us/front-end/blob/master/packages/app-client/package.json
221
+
222
+ ```
223
+ "@unite-us/app-create-referral": "0.1.85"
224
+ ```
225
+ - Open the terminal
226
+ ```
227
+ // from the root folder of the front-end repo, run yarn:
228
+ $ yarn
229
+ ```
230
+ This will update the `yarn.lock` file with the new version, your PR to bump the version should include the `package.json` and the `yarn.lock` file changes, e.g:
231
+ https://github.com/unite-us/front-end/pull/4522/files
232
+
233
+ - unite-us/uniteus-emr
234
+
235
+ Update the `package.json`: https://github.com/unite-us/uniteus-emr/blob/master/package.json
236
+
237
+ ```
238
+ "@unite-us/app-create-referral": "0.1.85"
239
+ ```
240
+ - Open the terminal
53
241
  ```
54
242
  $ npm i
55
243
  ```
56
- This will update the package-lock.json with the new dependency.
57
- - Create a PR in the parent project to use the new version
244
+ This will update the `package-lock.json` file with the new version, your PR to bump the version should include the `package.json` and the `package-lock.json` file changes, e.g:
245
+ https://github.com/unite-us/uniteus-emr/pull/1883/files
246
+
247
+ Finally, create a PR in the parent project to use the new version.
248
+
249
+ ### When to update the version in parent apps?
250
+ It depends on the release cadence and the speed to verify the features by the team; one approach could be keeping the parent apps with the latest versions at all times, shipping faster but also brings the risk of "untested" features might go into production because in very small timeframes probably the tester doesn't have time to verified the feature; and any team can do a release of the parent app with a version that you still dont want to make it to production.
58
251
 
252
+ Another more conservative approach could be to update the version only when the team is ready to test the features and ensured they will be tested in a short timeframe (before any team does a release) to avoid the risk mentioned above; this approach is potentially not as fast, but it should keep the production releases more controlled.
59
253
 
60
- That's all Folks!
254
+ It's up to the team to decide the cadence and speed of the releases.
@@ -86,12 +86,13 @@ function useCreateReferrals() {
86
86
  return (0, _lodash.get)(r, 'programs', []).length > 1;
87
87
  });
88
88
  _loop = /*#__PURE__*/_regenerator.default.mark(function _loop() {
89
- var referral, referredToPrograms, caseCreated, _loop2, j;
89
+ var referral, referredToPrograms, isGrouped, caseCreated, _loop2, j;
90
90
  return _regenerator.default.wrap(function _loop$(_context2) {
91
91
  while (1) switch (_context2.prev = _context2.next) {
92
92
  case 0:
93
93
  referral = referrals[i];
94
94
  referredToPrograms = (0, _lodash.get)(referral, 'programs', []);
95
+ isGrouped = (0, _utils.referralIsGrouped)(referral);
95
96
  caseCreated = null;
96
97
  _loop2 = /*#__PURE__*/_regenerator.default.mark(function _loop2() {
97
98
  var programData, _referral$primaryWork, caseValues, response, attachableDocuments, filteredDocuments, attachedDocuments, attachDocumentsToResource, uploadPromises, uploadedDocuments, uploadDocumentsToResource, _uploadPromises, state, referralValues, responseReferral;
@@ -168,6 +169,7 @@ function useCreateReferrals() {
168
169
  referralValues = {
169
170
  state: state,
170
171
  case: caseCreated.id,
172
+ is_grouped: isGrouped,
171
173
  receiving_program: programData.id,
172
174
  receiving_provider: programData.provider.id,
173
175
  receiving_network: referral.network.id,
@@ -194,17 +196,17 @@ function useCreateReferrals() {
194
196
  }, _loop2, null, [[3, 11], [24, 31]]);
195
197
  });
196
198
  j = 0;
197
- case 5:
199
+ case 6:
198
200
  if (!(j < referredToPrograms.length)) {
199
- _context2.next = 10;
201
+ _context2.next = 11;
200
202
  break;
201
203
  }
202
- return _context2.delegateYield(_loop2(), "t0", 7);
203
- case 7:
204
+ return _context2.delegateYield(_loop2(), "t0", 8);
205
+ case 8:
204
206
  j += 1;
205
- _context2.next = 5;
207
+ _context2.next = 6;
206
208
  break;
207
- case 10:
209
+ case 11:
208
210
  case "end":
209
211
  return _context2.stop();
210
212
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useCreateReferrals.js","names":["_lodash","require","_utils","_ApiHooks","_config","_AppCreateReferralProvider","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","useCreateReferrals","_useAppCreateReferral","useAppCreateReferralContext","_useAppCreateReferral2","state","currentEmployee","formResponses","person","referrals","_useCreateRecord","useCreateRecord","createReferral","createRecord","_useCreateRecord2","createCase","_useCreateRecord3","createFormSubmission","_useUpdateRecord","useUpdateRecord","updateReferral","updateRecord","_useUpdateRecord2","updateCase","submitAssessments","_ref","cases","latestResponses","promises","_mapInstanceProperty2","serviceCase","assessment","_assessment$form","isEmpty","form","service_type_ids","_includes","service","id","context","contextType","provider","responses","submitter","_promise","all","then","catch","err","CALLBACKS","notify","error","createReferrals","_ref3","_asyncToGenerator2","_regenerator","mark","_callee","_ref2","draft","result","groupedReferrals","_loop","i","wrap","_callee$","_context3","prev","next","some","get","referral","referredToPrograms","caseCreated","_loop2","j","_loop$","_context2","programData","_referral$primaryWork","caseValues","response","attachableDocuments","filteredDocuments","attachedDocuments","attachDocumentsToResource","uploadPromises","uploadedDocuments","uploadDocumentsToResource","_uploadPromises","referralValues","responseReferral","_loop2$","_context","description","referralIsOON","sendingProvider","network","primaryWorker","primary_worker","sent","data","t0","_filter","doc","attached","_map","ad","title","document","coreApi","setRelationship","relationshipModel","value","a","d","uploadFile","file","_toConsumableArray2","case","receiving_program","receiving_provider","receiving_network","sending_provider","sending_network","t1","stop","delegateYield","abrupt","_x","updateDraftReferral","_ref4","_callee2","_callee2$","_context4","_x2","_callee3","_ref6","_ref6$draft","_args5","_callee3$","_context5","undefined"],"sources":["../../src/hooks/useCreateReferrals.js"],"sourcesContent":["import { get, map, isEmpty } from 'lodash';\nimport { referralIsOON } from '../pages/builder/utils';\nimport { useCreateRecord, useUpdateRecord } from '../api/ApiHooks';\nimport { CALLBACKS, coreApi } from '../api/config';\nimport { useAppCreateReferralContext } from '../context/AppCreateReferralProvider';\n\nexport default function useCreateReferrals() {\n const {\n state: {\n currentEmployee,\n formResponses,\n person,\n referrals,\n }\n } = useAppCreateReferralContext();\n\n const { createRecord: createReferral } = useCreateRecord('referral');\n const { createRecord: createCase } = useCreateRecord('case');\n const { createRecord: createFormSubmission } = useCreateRecord('form_submission');\n const { updateRecord: updateReferral } = useUpdateRecord('referral');\n const { updateRecord: updateCase } = useUpdateRecord('case');\n\n\n const submitAssessments = ({ cases, latestResponses }) => {\n let promises = [];\n map(cases, (serviceCase) => {\n map((latestResponses || formResponses), (assessment) => {\n if (!isEmpty(assessment) && assessment.form?.service_type_ids?.includes(serviceCase.service.id)) {\n promises.push(createFormSubmission({\n context: serviceCase.id,\n contextType: 'case',\n form: assessment.form.id,\n provider: serviceCase.provider.id,\n responses: assessment.responses,\n submitter: currentEmployee.id,\n }));\n }\n });\n });\n\n return Promise.all(promises).then((responses) => {\n return responses;\n }).catch(err => {\n CALLBACKS.notify.error(\"Error submitting Assessments\");\n throw err;\n });\n };\n\n const createReferrals = async ({ referrals, person, draft }) => {\n const result = {\n referrals: [],\n cases: []\n };\n\n let groupedReferrals = referrals.some(r => get(r, 'programs', []).length > 1);\n\n for (let i = 0; i < referrals.length; i += 1) {\n const referral = referrals[i];\n const referredToPrograms = get(referral, 'programs', [])\n\n let caseCreated = null;\n\n for (let j = 0; j < referredToPrograms.length; j += 1) {\n const programData = referredToPrograms[j];\n\n // for grouped, created only 1 case and attach it to all referrals;\n // for individual create a new case/referral for each\n if ((groupedReferrals && !caseCreated) || !groupedReferrals) {\n const caseValues = {\n description: referral.description,\n state: referralIsOON(referral) ? 'off_platform' : 'draft',\n person: person.id,\n provider: referral.sendingProvider.id,\n network: referral.network.id,\n service: referral.service.id,\n ...(referral.primaryWorker?.id ? { primary_worker: referral.primaryWorker.id } : null),\n }\n try {\n const response = await createCase(caseValues)\n caseCreated = response.data.data;\n result.cases.push(caseCreated);\n } catch (err) {\n CALLBACKS.notify.error(\"Error creating the Case\");\n throw err;\n }\n }\n\n const attachableDocuments = get(referral, 'attachableDocuments', []);\n const filteredDocuments = attachableDocuments.filter((doc) => doc.attached === true);\n const attachedDocuments = filteredDocuments.map((ad) => ({\n title: ad.document.title,\n id: ad.document.id,\n }));\n\n if(!isEmpty(attachedDocuments)) {\n const attachDocumentsToResource = () => (\n coreApi.setRelationship(\n 'case',\n caseCreated.id,\n { relationshipModel: 'file_upload', value: attachedDocuments.map((a) => a.id) },\n )\n );\n\n const uploadPromises = !isEmpty(attachedDocuments) && attachDocumentsToResource();\n\n Promise.all([uploadPromises]);\n }\n\n const uploadedDocuments = get(referral, 'attachments', []);\n\n if (!isEmpty(uploadedDocuments)) {\n const uploadDocumentsToResource = () => (\n uploadedDocuments.map((d) => coreApi.uploadFile('case', caseCreated.id, d.file))\n );\n\n const uploadPromises = !isEmpty(uploadedDocuments) && uploadDocumentsToResource();\n Promise.all([\n ...(uploadPromises || []),\n ]);\n }\n\n let state = referralIsOON(referral) ? 'off_platform' : 'sent';\n if (draft) {\n state = 'draft';\n }\n\n const referralValues = {\n state,\n case: caseCreated.id,\n receiving_program: programData.id,\n receiving_provider: programData.provider.id,\n receiving_network: referral.network.id,\n sending_provider: referral.sendingProvider.id,\n sending_network: referral.network.id,\n }\n\n try {\n const responseReferral = await createReferral(referralValues);\n result.referrals.push(responseReferral.data.data);\n } catch (err) {\n CALLBACKS.notify.error(\"Error creating the Referral\");\n throw err;\n }\n }\n }\n return result;\n }\n\n const updateDraftReferral = async (referral) => {\n try {\n const responses = await Promise.all([\n updateReferral(referral.id, {\n state: referralIsOON(referral) ? 'off_platform' : 'sent',\n }),\n updateCase(referral.case.id, {\n description: referral.description,\n }),\n ]);\n\n return {\n referrals: [responses[0].data.data],\n cases: [responses[1].data.data],\n }\n } catch (err) {\n CALLBACKS.notify.error(\"Error updating the Draft Referral\");\n throw err;\n }\n }\n\n return async ({ draft = false, latestResponses } = {}) => {\n\n let response = null;\n // Update the Draft Referral to the sent state\n if (referrals.length === 1 && referrals[0].id && referrals[0].state === \"draft\") {\n response = await updateDraftReferral(referrals[0]);\n } else {\n // Create or Save the Referral as a Draft\n response = await createReferrals({ referrals, person, draft })\n }\n\n if (formResponses || latestResponses) {\n await submitAssessments({ cases: response.cases, latestResponses });\n }\n\n return {\n cases: response.cases,\n referrals: response.referrals,\n };\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"useCreateReferrals.js","names":["_lodash","require","_utils","_ApiHooks","_config","_AppCreateReferralProvider","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","useCreateReferrals","_useAppCreateReferral","useAppCreateReferralContext","_useAppCreateReferral2","state","currentEmployee","formResponses","person","referrals","_useCreateRecord","useCreateRecord","createReferral","createRecord","_useCreateRecord2","createCase","_useCreateRecord3","createFormSubmission","_useUpdateRecord","useUpdateRecord","updateReferral","updateRecord","_useUpdateRecord2","updateCase","submitAssessments","_ref","cases","latestResponses","promises","_mapInstanceProperty2","serviceCase","assessment","_assessment$form","isEmpty","form","service_type_ids","_includes","service","id","context","contextType","provider","responses","submitter","_promise","all","then","catch","err","CALLBACKS","notify","error","createReferrals","_ref3","_asyncToGenerator2","_regenerator","mark","_callee","_ref2","draft","result","groupedReferrals","_loop","i","wrap","_callee$","_context3","prev","next","some","get","referral","referredToPrograms","isGrouped","caseCreated","_loop2","j","_loop$","_context2","referralIsGrouped","programData","_referral$primaryWork","caseValues","response","attachableDocuments","filteredDocuments","attachedDocuments","attachDocumentsToResource","uploadPromises","uploadedDocuments","uploadDocumentsToResource","_uploadPromises","referralValues","responseReferral","_loop2$","_context","description","referralIsOON","sendingProvider","network","primaryWorker","primary_worker","sent","data","t0","_filter","doc","attached","_map","ad","title","document","coreApi","setRelationship","relationshipModel","value","a","d","uploadFile","file","_toConsumableArray2","case","is_grouped","receiving_program","receiving_provider","receiving_network","sending_provider","sending_network","t1","stop","delegateYield","abrupt","_x","updateDraftReferral","_ref4","_callee2","_callee2$","_context4","_x2","_callee3","_ref6","_ref6$draft","_args5","_callee3$","_context5","undefined"],"sources":["../../src/hooks/useCreateReferrals.js"],"sourcesContent":["import { get, map, isEmpty } from 'lodash';\nimport { referralIsOON, referralIsGrouped } from '../pages/builder/utils';\nimport { useCreateRecord, useUpdateRecord } from '../api/ApiHooks';\nimport { CALLBACKS, coreApi } from '../api/config';\nimport { useAppCreateReferralContext } from '../context/AppCreateReferralProvider';\n\nexport default function useCreateReferrals() {\n const {\n state: {\n currentEmployee,\n formResponses,\n person,\n referrals,\n }\n } = useAppCreateReferralContext();\n\n const { createRecord: createReferral } = useCreateRecord('referral');\n const { createRecord: createCase } = useCreateRecord('case');\n const { createRecord: createFormSubmission } = useCreateRecord('form_submission');\n const { updateRecord: updateReferral } = useUpdateRecord('referral');\n const { updateRecord: updateCase } = useUpdateRecord('case');\n\n\n const submitAssessments = ({ cases, latestResponses }) => {\n let promises = [];\n map(cases, (serviceCase) => {\n map((latestResponses || formResponses), (assessment) => {\n if (!isEmpty(assessment) && assessment.form?.service_type_ids?.includes(serviceCase.service.id)) {\n promises.push(createFormSubmission({\n context: serviceCase.id,\n contextType: 'case',\n form: assessment.form.id,\n provider: serviceCase.provider.id,\n responses: assessment.responses,\n submitter: currentEmployee.id,\n }));\n }\n });\n });\n\n return Promise.all(promises).then((responses) => {\n return responses;\n }).catch(err => {\n CALLBACKS.notify.error(\"Error submitting Assessments\");\n throw err;\n });\n };\n\n const createReferrals = async ({ referrals, person, draft }) => {\n const result = {\n referrals: [],\n cases: []\n };\n\n let groupedReferrals = referrals.some(r => get(r, 'programs', []).length > 1);\n\n for (let i = 0; i < referrals.length; i += 1) {\n const referral = referrals[i];\n const referredToPrograms = get(referral, 'programs', [])\n const isGrouped = referralIsGrouped(referral);\n\n let caseCreated = null;\n\n for (let j = 0; j < referredToPrograms.length; j += 1) {\n const programData = referredToPrograms[j];\n\n // for grouped, created only 1 case and attach it to all referrals;\n // for individual create a new case/referral for each\n if ((groupedReferrals && !caseCreated) || !groupedReferrals) {\n const caseValues = {\n description: referral.description,\n state: referralIsOON(referral) ? 'off_platform' : 'draft',\n person: person.id,\n provider: referral.sendingProvider.id,\n network: referral.network.id,\n service: referral.service.id,\n ...(referral.primaryWorker?.id ? { primary_worker: referral.primaryWorker.id } : null),\n }\n try {\n const response = await createCase(caseValues)\n caseCreated = response.data.data;\n result.cases.push(caseCreated);\n } catch (err) {\n CALLBACKS.notify.error(\"Error creating the Case\");\n throw err;\n }\n }\n\n const attachableDocuments = get(referral, 'attachableDocuments', []);\n const filteredDocuments = attachableDocuments.filter((doc) => doc.attached === true);\n const attachedDocuments = filteredDocuments.map((ad) => ({\n title: ad.document.title,\n id: ad.document.id,\n }));\n\n if(!isEmpty(attachedDocuments)) {\n const attachDocumentsToResource = () => (\n coreApi.setRelationship(\n 'case',\n caseCreated.id,\n { relationshipModel: 'file_upload', value: attachedDocuments.map((a) => a.id) },\n )\n );\n\n const uploadPromises = !isEmpty(attachedDocuments) && attachDocumentsToResource();\n\n Promise.all([uploadPromises]);\n }\n\n const uploadedDocuments = get(referral, 'attachments', []);\n\n if (!isEmpty(uploadedDocuments)) {\n const uploadDocumentsToResource = () => (\n uploadedDocuments.map((d) => coreApi.uploadFile('case', caseCreated.id, d.file))\n );\n\n const uploadPromises = !isEmpty(uploadedDocuments) && uploadDocumentsToResource();\n Promise.all([\n ...(uploadPromises || []),\n ]);\n }\n\n let state = referralIsOON(referral) ? 'off_platform' : 'sent';\n if (draft) {\n state = 'draft';\n }\n\n const referralValues = {\n state,\n case: caseCreated.id,\n is_grouped: isGrouped,\n receiving_program: programData.id,\n receiving_provider: programData.provider.id,\n receiving_network: referral.network.id,\n sending_provider: referral.sendingProvider.id,\n sending_network: referral.network.id,\n }\n\n try {\n const responseReferral = await createReferral(referralValues);\n result.referrals.push(responseReferral.data.data);\n } catch (err) {\n CALLBACKS.notify.error(\"Error creating the Referral\");\n throw err;\n }\n }\n }\n return result;\n }\n\n const updateDraftReferral = async (referral) => {\n try {\n const responses = await Promise.all([\n updateReferral(referral.id, {\n state: referralIsOON(referral) ? 'off_platform' : 'sent',\n }),\n updateCase(referral.case.id, {\n description: referral.description,\n }),\n ]);\n\n return {\n referrals: [responses[0].data.data],\n cases: [responses[1].data.data],\n }\n } catch (err) {\n CALLBACKS.notify.error(\"Error updating the Draft Referral\");\n throw err;\n }\n }\n\n return async ({ draft = false, latestResponses } = {}) => {\n\n let response = null;\n // Update the Draft Referral to the sent state\n if (referrals.length === 1 && referrals[0].id && referrals[0].state === \"draft\") {\n response = await updateDraftReferral(referrals[0]);\n } else {\n // Create or Save the Referral as a Draft\n response = await createReferrals({ referrals, person, draft })\n }\n\n if (formResponses || latestResponses) {\n await submitAssessments({ cases: response.cases, latestResponses });\n }\n\n return {\n cases: response.cases,\n referrals: response.referrals,\n };\n };\n};\n"],"mappings":"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"}
@@ -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 referralTitle = (0, _concat.default)(_context = (0, _concat.default)(_context2 = (0, _concat.default)(_context3 = "Referral ".concat(index + 1, ": ")).call(_context3, service === null || service === void 0 ? void 0 : service.name)).call(_context2, isGrouped ? ', Grouped' : '')).call(_context, isOON ? ', Off-Platform' : '');
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 _context4;
116
+ var _context5;
116
117
  var _yield$fetchPrimaryWo, primary_workers;
117
- return _regenerator.default.wrap(function _callee$(_context5) {
118
- while (1) switch (_context5.prev = _context5.next) {
118
+ return _regenerator.default.wrap(function _callee$(_context6) {
119
+ while (1) switch (_context6.prev = _context6.next) {
119
120
  case 0:
120
- _context5.next = 2;
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 = _context5.sent;
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)(_context4 = []).call(_context4, (0, _toConsumableArray2.default)(primaryWorkers), (0, _toConsumableArray2.default)(primary_workers), [primaryWorker && primaryWorker]), 'id')) : setPrimaryWorkers(primary_workers);
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 _context5.stop();
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":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AACA,IAAAG,oBAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,GAAA,GAAAL,OAAA;AACA,IAAAM,UAAA,GAAAF,sBAAA,CAAAJ,OAAA;AACA,IAAAO,YAAA,GAAAP,OAAA;AAGA,IAAAQ,UAAA,GAAAR,OAAA;AACA,IAAAS,WAAA,GAAAT,OAAA;AACA,IAAAU,OAAA,GAAAV,OAAA;AACA,IAAAW,MAAA,GAAAX,OAAA;AAQA,IAAAY,oBAAA,GAAAR,sBAAA,CAAAJ,OAAA;AACA,IAAAa,YAAA,GAAAb,OAAA;AACA,IAAAc,4BAAA,GAAAd,OAAA;AACA,IAAAe,yBAAA,GAAAX,sBAAA,CAAAJ,OAAA;AACAA,OAAA;AAAoC,SAAAgB,yBAAAC,CAAA,6BAAAC,QAAA,mBAAAC,CAAA,OAAAD,QAAA,IAAAE,CAAA,OAAAF,QAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAlB,wBAAAkB,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,WAAAM,OAAA,EAAAN,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAI,GAAA,CAAAP,CAAA,UAAAG,CAAA,CAAAK,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,sBAAA,IAAAC,gCAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAC,MAAA,CAAAC,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAlB,CAAA,EAAAc,CAAA,SAAAK,CAAA,GAAAR,CAAA,GAAAE,gCAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAK,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,sBAAA,CAAAH,CAAA,EAAAK,CAAA,EAAAK,CAAA,IAAAV,CAAA,CAAAK,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAL,CAAA,CAAAH,OAAA,GAAAN,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAiB,GAAA,CAAApB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAAA,SAAAY,QAAArB,CAAA,EAAAE,CAAA,QAAAC,CAAA,GAAAmB,YAAA,CAAAtB,CAAA,OAAAuB,6BAAA,QAAAC,CAAA,GAAAD,6BAAA,CAAAvB,CAAA,GAAAE,CAAA,KAAAsB,CAAA,GAAAC,uBAAA,CAAAD,CAAA,EAAAN,IAAA,CAAAM,CAAA,YAAAtB,CAAA,WAAAW,gCAAA,CAAAb,CAAA,EAAAE,CAAA,EAAAwB,UAAA,OAAAvB,CAAA,CAAAwB,IAAA,CAAAC,KAAA,CAAAzB,CAAA,EAAAqB,CAAA,YAAArB,CAAA;AAAA,SAAA0B,cAAA7B,CAAA,aAAAE,CAAA,MAAAA,CAAA,GAAA4B,SAAA,CAAAC,MAAA,EAAA7B,CAAA,UAAAC,CAAA,WAAA2B,SAAA,CAAA5B,CAAA,IAAA4B,SAAA,CAAA5B,CAAA,QAAAA,CAAA,OAAAmB,OAAA,CAAAN,MAAA,CAAAZ,CAAA,OAAA6B,OAAA,WAAA9B,CAAA,QAAA+B,gBAAA,CAAA3B,OAAA,EAAAN,CAAA,EAAAE,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAgC,iCAAA,GAAAC,wBAAA,CAAAnC,CAAA,EAAAkC,iCAAA,CAAA/B,CAAA,KAAAkB,OAAA,CAAAN,MAAA,CAAAZ,CAAA,GAAA6B,OAAA,WAAA9B,CAAA,IAAAU,sBAAA,CAAAZ,CAAA,EAAAE,CAAA,EAAAW,gCAAA,CAAAV,CAAA,EAAAD,CAAA,iBAAAF,CAAA;AAC7B,SAASoC,mBAAmBA,CAAAC,IAAA,EAehC;EAAA,IAAAC,QAAA,EAAAC,SAAA,EAAAC,SAAA,EAAAC,SAAA;EAAA,IAdDC,eAAe,GAAAL,IAAA,CAAfK,eAAe;IACfC,eAAe,GAAAN,IAAA,CAAfM,eAAe;IACfC,QAAQ,GAAAP,IAAA,CAARO,QAAQ;IACRC,SAAS,GAAAR,IAAA,CAATQ,SAAS;IACTC,KAAK,GAAAT,IAAA,CAALS,KAAK;IACLC,gBAAgB,GAAAV,IAAA,CAAhBU,gBAAgB;IAChBC,QAAQ,GAAAX,IAAA,CAARW,QAAQ;IACRC,UAAU,GAAAZ,IAAA,CAAVY,UAAU;IACVC,aAAa,GAAAb,IAAA,CAAba,aAAa;IACbC,SAAS,GAAAd,IAAA,CAATc,SAAS;IACTC,iBAAiB,GAAAf,IAAA,CAAjBe,iBAAiB;IACjBC,sBAAsB,GAAAhB,IAAA,CAAtBgB,sBAAsB;IACtBC,iBAAiB,GAAAjB,IAAA,CAAjBiB,iBAAiB;IACjBC,MAAM,GAAAlB,IAAA,CAANkB,MAAM;EAEN,IAAQC,OAAO,GAAgEZ,QAAQ,CAA/EY,OAAO;IAAEC,QAAQ,GAAsDb,QAAQ,CAAtEa,QAAQ;IAAEC,aAAa,GAAuCd,QAAQ,CAA5Dc,aAAa;IAAEC,WAAW,GAA0Bf,QAAQ,CAA7Ce,WAAW;IAAEC,mBAAmB,GAAKhB,QAAQ,CAAhCgB,mBAAmB;EAC1E,IAAAC,SAAA,GAAkD,IAAAC,eAAQ,EAAC,CAAC,CAAC,CAAC;IAAAC,UAAA,OAAAC,eAAA,CAAA1D,OAAA,EAAAuD,SAAA;IAAvDI,iBAAiB,GAAAF,UAAA;IAAEG,oBAAoB,GAAAH,UAAA;EAC9C,IAAAI,UAAA,GAA0C,IAAAL,eAAQ,EAACH,WAAW,CAAC;IAAAS,UAAA,OAAAJ,eAAA,CAAA1D,OAAA,EAAA6D,UAAA;IAAxDE,aAAa,GAAAD,UAAA;IAAEE,gBAAgB,GAAAF,UAAA;EACtC,IAAAG,UAAA,GAA4C,IAAAT,eAAQ,EAACJ,aAAa,GAAG,CAACA,aAAa,CAAC,GAAG,EAAE,CAAC;IAAAc,UAAA,OAAAR,eAAA,CAAA1D,OAAA,EAAAiE,UAAA;IAAnFE,cAAc,GAAAD,UAAA;IAAEE,iBAAiB,GAAAF,UAAA;EACxC,IAAAG,UAAA,GAA0C,IAAAb,eAAQ,EAAClB,QAAQ,CAAC;IAAAgC,UAAA,OAAAZ,eAAA,CAAA1D,OAAA,EAAAqE,UAAA;IAArDE,aAAa,GAAAD,UAAA;IAAEE,gBAAgB,GAAAF,UAAA;EACtC,IAAAG,UAAA,GAA0B,IAAAjB,eAAQ,EAAC,EAAE,CAAC;IAAAkB,WAAA,OAAAhB,eAAA,CAAA1D,OAAA,EAAAyE,UAAA;IAA/BE,KAAK,GAAAD,WAAA;IAAEE,QAAQ,GAAAF,WAAA;EACtB,IAAMG,cAAc,GAAG,IAAAC,wBAAW,EAACH,KAAK,EAAE,GAAG,CAAC;EAE9C,IAAAI,WAAA,GAA0C,IAAAvB,eAAQ,EAAC;MACjDwB,WAAW,EAAE,EAAE;MACfC,cAAc,EAAE,EAAE;MAClBC,uBAAuB,EAAE;IAC3B,CAAC,CAAC;IAAAC,WAAA,OAAAzB,eAAA,CAAA1D,OAAA,EAAA+E,WAAA;IAJKK,aAAa,GAAAD,WAAA;IAAEE,gBAAgB,GAAAF,WAAA;EAKtC,IAAMG,KAAK,GAAG,IAAAC,oBAAa,EAACjD,QAAQ,CAAC;EACrC,IAAMkD,SAAS,GAAG,IAAAC,wBAAiB,EAACnD,QAAQ,CAAC;EAC7C,IAAMoD,QAAQ,GAAG,IAAAC,uBAAgB,EAACrD,QAAQ,CAAC;EAC3C,IAAMsD,aAAa,OAAAC,OAAA,CAAA7F,OAAA,EAAAgC,QAAA,OAAA6D,OAAA,CAAA7F,OAAA,EAAAiC,SAAA,OAAA4D,OAAA,CAAA7F,OAAA,EAAAkC,SAAA,OAAA2D,OAAA,CAAA7F,OAAA,EAAAmC,SAAA,eAAA2D,MAAA,CAAetD,KAAK,GAAG,CAAC,SAAA5B,IAAA,CAAAuB,SAAA,EAAKe,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE6C,IAAI,GAAAnF,IAAA,CAAAsB,SAAA,EAAGsD,SAAS,GAAG,WAAW,GAAG,EAAE,GAAA5E,IAAA,CAAAqB,SAAA,EAAGqD,KAAK,GAAG,gBAAgB,GAAG,EAAE,GAAA1E,IAAA,CAAAoB,QAAA,EAAG0D,QAAQ,GAAG,UAAU,GAAG,EAAE,CAAE;EAE3J,IAAMM,QAAQ,GAAG,IAAAC,qBAAc,EAAC3D,QAAQ,CAAC;EACzC,IAAM4D,iBAAiB,GAAG,IAAAC,8BAAuB,EAACH,QAAQ,EAAE7C,QAAQ,CAAC;EAErE,IAAMiD,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,EAAE,EAAK;IAC7B,IAAMC,YAAY,GAAG,IAAAC,IAAA,CAAAvG,OAAA,EAAA2D,iBAAiB,EAAA/C,IAAA,CAAjB+C,iBAAiB,EAAK,UAAC6C,CAAC,EAAK;MAChD,IAAIA,CAAC,CAACH,EAAE,KAAKA,EAAE,EAAE;QACfG,CAAC,CAACC,UAAU,GAAG,CAACD,CAAC,CAACC,UAAU;MAC9B,CAAC,MAAM;QACLD,CAAC,CAACC,UAAU,GAAG,KAAK;MACtB;MACA,OAAOD,CAAC;IACV,CAAC,CAAC;IAEF5C,oBAAoB,CAAC0C,YAAY,CAAC;EACpC,CAAC;EAED,IAAMI,iBAAiB,GAAG,IAAAC,kBAAW,oBAAAC,kBAAA,CAAA5G,OAAA,gBAAA6G,YAAA,CAAA7G,OAAA,CAAA8G,IAAA,CAAC,SAAAC,QAAA;IAAA,IAAAC,SAAA;IAAA,IAAAC,qBAAA,EAAAC,eAAA;IAAA,OAAAL,YAAA,CAAA7G,OAAA,CAAAmH,IAAA,UAAAC,SAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAAC,IAAA,GAAAD,SAAA,CAAAE,IAAA;QAAA;UAAAF,SAAA,CAAAE,IAAA;UAAA,OACF,IAAAC,4BAAmB,EAAC;YACpDC,UAAU,EAAEnF,QAAQ,CAACoF,eAAe,CAACrB,EAAE;YACvCjE,eAAe,EAAfA,eAAe;YACfuC,KAAK,EAAEE;UACT,CAAC,CAAC;QAAA;UAAAoC,qBAAA,GAAAI,SAAA,CAAAM,IAAA;UAJMT,eAAe,GAAAD,qBAAA,CAAfC,eAAe;UAMvB;UACA,IAAAU,eAAO,EAACjD,KAAK,CAAC,GACZP,iBAAiB,CAAC,IAAAyD,cAAM,MAAAhC,OAAA,CAAA7F,OAAA,EAAAgH,SAAA,OAAApG,IAAA,CAAAoG,SAAA,MAAAc,mBAAA,CAAA9H,OAAA,EAAKmE,cAAc,OAAA2D,mBAAA,CAAA9H,OAAA,EAAKkH,eAAe,IAAG9D,aAAa,IAAIA,aAAa,IAAI,IAAI,CAAC,CAAC,GAC1GgB,iBAAiB,CAAC8C,eAAe,CAAC;QAAC;QAAA;UAAA,OAAAG,SAAA,CAAAU,IAAA;MAAA;IAAA,GAAAhB,OAAA;EAAA,CACtC,IAAE,CAAC3E,eAAe,EAAEE,QAAQ,CAACoF,eAAe,CAACrB,EAAE,EAAExB,cAAc,CAAC,CAAC;EAElE,IAAAmD,gBAAS,EAAC,YAAM;IACd,IAAI1C,KAAK,EAAE;MACToB,iBAAiB,CAAC,CAAC;IACrB;EACF,CAAC,EAAE,CAACA,iBAAiB,EAAEpB,KAAK,CAAC,CAAC;EAE9B,IAAA0C,gBAAS,EAAC,YAAM;IACd,IAAM1B,YAAY,GAAG,IAAAC,IAAA,CAAAvG,OAAA,EAAAmD,QAAQ,EAAAvC,IAAA,CAARuC,QAAQ,EAAK,UAACqD,CAAC;MAAA,OAAM;QAAEH,EAAE,EAAEG,CAAC,CAACH,EAAE;QAAEI,UAAU,EAAE;MAAM,CAAC;IAAA,CAAC,CAAC;IAC3E7C,oBAAoB,CAAC0C,YAAY,CAAC;EACpC,CAAC,EAAE,CAACnD,QAAQ,CAAC,CAAC;EAEd,IAAA6E,gBAAS,EAAC,YAAM;IACdxD,gBAAgB,CAAAjD,aAAA,CAAAA,aAAA,KACXe,QAAQ,GACN,IAAA2F,aAAK,EAAC3F,QAAQ,CAACc,aAAa,CAAC,IAAIkC,KAAK,GACzC;MAAElC,aAAa,EAAE,IAAA8E,KAAA,CAAAlI,OAAA,EAAAmE,cAAc,EAAAvD,IAAA,CAAduD,cAAc,EAAM,UAACgE,MAAM;QAAA,OAAKA,MAAM,CAAC9B,EAAE,KAAKjE,eAAe,CAACiE,EAAE;MAAA;IAAE,CAAC,GACpF,IAAI,CAEP,CAAC;EACJ,CAAC,EAAE,CAAClC,cAAc,EAAE/B,eAAe,CAACiE,EAAE,EAAE7D,KAAK,EAAE8C,KAAK,EAAEhD,QAAQ,CAAC,CAAC;EAEhE,IAAA0F,gBAAS,EAAC,YAAM;IACd,IAAI,CAAC,IAAAJ,eAAO,EAAC7D,aAAa,CAAC,EAAE;MAC3Bf,iBAAiB,CAACe,aAAa,CAAC;IAClC;EACF,CAAC,EAAE,CAACA,aAAa,CAAC,CAAC;EAEnB,oBACExF,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,CAACzJ,eAAA,CAAA0J,IAAI;IACH9D,aAAa,EAAEA,aAAc;IAC7B+D,QAAQ,EAAE,SAAAA,SAAA,EAAM,CAAE,CAAE;IACpBC,QAAQ,EAAE,SAAAA,SAACC,MAAM,EAAK;MACpB,IAAMC,MAAM,GAAG,CAAC,CAAC;MACjB,IAAI,CAACD,MAAM,CAACE,WAAW,EAAE;QAAED,MAAM,CAACC,WAAW,GAAG,UAAU;MAAC;MAAC;MAC5D,IAAIpD,KAAK,IAAI,CAACkD,MAAM,CAACpF,aAAa,EAAE;QAAEqF,MAAM,CAACrF,aAAa,GAAG,UAAU;MAAC;MAAC;MACzE,IAAI8C,iBAAiB,IAAI,CAACsC,MAAM,CAACG,OAAO,EAAE;QAAEF,MAAM,CAACE,OAAO,GAAG,UAAU;MAAC;MAAC;MACzE,OAAOF,MAAM;IACf,CAAE;IACFG,QAAQ,EAAE;MACRC,eAAe,EAAE,SAAAA,gBAACC,IAAI,EAAEC,KAAK,EAAK;QAChC,IAAAC,MAAA,OAAAtF,eAAA,CAAA1D,OAAA,EAAwB8I,IAAI;UAArB/C,IAAI,GAAAiD,MAAA;UAAEC,OAAO,GAAAD,MAAA;QACpB,IAAME,KAAK,GAAGH,KAAK,CAACI,MAAM,CAACpD,IAAI,CAAC;QAChC,IAAImD,KAAK,EAAE;UACTA,KAAK,CAACD,OAAO,GAAG,CAAC,CAACA,OAAO;QAC3B;MACF;IACF,CAAE;IACFG,MAAM,EAAE,SAAAA,OAAAC,KAAA,EAAsB;MAAA,IAAnBC,IAAI,GAAAD,KAAA,CAAJC,IAAI;QAAEd,MAAM,OAAAe,OAAA,CAAAvJ,OAAA,EAAAqJ,KAAA;MACrBxG,SAAS,IAAIA,SAAS,CAACyG,IAAI,CAAC;MAC5B,oBACE/K,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,CAAA7J,MAAA,CAAAyB,OAAA,CAAAwJ,QAAA,qBACEjL,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,CAACzJ,eAAA,CAAA8K,OAAO;QACNC,YAAY,EAAE;UAAElB,MAAM,EAAE;QAAK,CAAE;QAC/B9F,QAAQ,EAAEA;MAAS,CACpB,CAAC,eACFnE,MAAA,CAAAyB,OAAA,CAAAoI,aAAA;QAAKuB,SAAS,EAAC;MAA2E,gBACxFpL,MAAA,CAAAyB,OAAA,CAAAoI,aAAA;QAAKuB,SAAS,EAAC;MAAsB,gBACnCpL,MAAA,CAAAyB,OAAA,CAAAoI,aAAA;QAAIuB,SAAS,EAAC;MAAoB,GAC/B/D,aACC,CAAC,eACLrH,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,aACG3F,gBACC,CACD,CAAC,eACNlE,MAAA,CAAAyB,OAAA,CAAAoI,aAAA;QAAKuB,SAAS,EAAC;MAAK,GACjBrE,KAAK,gBACJ/G,MAAA,CAAAyB,OAAA,CAAAoI,aAAA;QAAKuB,SAAS,EAAC;MAA2E,gBACxFpL,MAAA,CAAAyB,OAAA,CAAAoI,aAAA;QAAGuB,SAAS,EAAC;MAAiB,GAAC,+GAG5B,CACA,CAAC,GACJ,IAAI,eACRpL,MAAA,CAAAyB,OAAA,CAAAoI,aAAA;QAAIuB,SAAS,EAAC;MAA8B,GAAC,UAAY,CAAC,EACzD,IAAApD,IAAA,CAAAvG,OAAA,EAAAmD,QAAQ,EAAAvC,IAAA,CAARuC,QAAQ,EAAK,UAACyG,OAAO,EAAK;QAAA,IAAAC,qBAAA;QACzB,IAAMpD,UAAU,GAAG,IAAAmB,eAAO,EAACjE,iBAAiB,CAAC,GAAG,KAAK,GAAGA,iBAAiB,aAAjBA,iBAAiB,gBAAAkG,qBAAA,GAAjB,IAAA3B,KAAA,CAAAlI,OAAA,EAAA2D,iBAAiB,EAAA/C,IAAA,CAAjB+C,iBAAiB,EAAO,UAAC6C,CAAC;UAAA,OAAKA,CAAC,CAACH,EAAE,KAAKuD,OAAO,CAACvD,EAAE;QAAA,EAAC,cAAAwD,qBAAA,uBAAnDA,qBAAA,CAAqDpD,UAAU;QAEvH,IAAMqD,iBAAiB,GAAG,CAAC,CAAC;QAC5B,IAAAvD,IAAA,CAAAvG,OAAA,EAAA2C,UAAU,EAAA/B,IAAA,CAAV+B,UAAU,EAAK,UAAC9B,CAAC,EAAK;UACpB,IAAQ2B,KAAK,GAAK3B,CAAC,CAAX2B,KAAK;UACb,OAAOsH,iBAAiB,CAACtH,KAAK,CAAC,GAAG,IAAAuH,wDAA2B,EAAC;YAAEH,OAAO,EAAPA,OAAO;YAAEtH,QAAQ,EAARA,QAAQ;YAAEC,SAAS,EAATA,SAAS;YAAEC,KAAK,EAALA,KAAK;YAAEH,eAAe,EAAfA;UAAgB,CAAC,CAAC;QACzH,CAAC,CAAC;QAEF,oBACE9D,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,CAACxJ,oBAAA,CAAAoB,OAAmB;UAClBgK,GAAG,sBAAAlE,MAAA,CAAsB8D,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEvD,EAAE,UAAQ;UAC5CuD,OAAO,EAAEA,OAAQ;UACjBK,OAAO,EAAE7D,cAAe;UACxBd,KAAK,EAAE,IAAA4E,2BAAoB,EAACN,OAAO,CAAE;UACrCnD,UAAU,EAAEA,UAAW;UACvB9D,UAAU,EAAEA,UAAW;UACvBL,QAAQ,EAAEA,QAAS;UACnBM,aAAa,EAAEA,aAAc;UAC7BE,iBAAiB,EAAEA,iBAAkB;UACrCC,sBAAsB,EAAEA,sBAAuB;UAC/C+G,iBAAiB,EAAEA;QAAkB,CACtC,CAAC;MAEN,CAAC,CAAC,eACFvL,MAAA,CAAAyB,OAAA,CAAAoI,aAAA;QAAGuB,SAAS,EAAC;MAAiC,GAAC,yDAE5C,CAAC,EAEHzD,iBAAiB,gBAChB3H,MAAA,CAAAyB,OAAA,CAAAoI,aAAA;QAAKuB,SAAS,EAAC;MAAO,gBACpBpL,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,CAACzJ,eAAA,CAAAwL,KAAK;QACJpE,IAAI,EAAC,SAAS;QACdqE,QAAQ;QACRJ,GAAG,cAAAlE,MAAA,CAActD,KAAK;MAAW,GAEhC,UAAC6H,MAAM;QAAA,oBACN9L,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,CAACtJ,GAAA,CAAAwL,WAAW,MAAAC,SAAA,CAAAvK,OAAA;UACVoK,QAAQ;UACR/D,EAAE,EAAC,mBAAmB;UACtBmE,KAAK,EAAC,mBAAmB;UACzBC,WAAW,EAAC,eAAe;UAC3BC,OAAO,EAAE1E,QAAS;UAClB2E,QAAQ,EAAC,MAAM;UACfC,QAAQ,EAAC,IAAI;UACbC,WAAW,EAAEC;QAAW,GACpBT,MAAM,CACX,CAAC;MAAA,CAEC,CACJ,CAAC,GACJ,IAAI,eAER9L,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,CAACzJ,eAAA,CAAAwL,KAAK;QACJpE,IAAI,EAAC,aAAa;QAClBqE,QAAQ;QACRJ,GAAG,cAAAlE,MAAA,CAActD,KAAK;MAAe,GAEpC,UAAC6H,MAAM;QAAA,oBACN9L,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,CAACtJ,GAAA,CAAAiM,SAAS,MAAAR,SAAA,CAAAvK,OAAA;UACRgL,iBAAiB,eACfzM,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,CAACrJ,UAAA,CAAAiB,OAAS;YACR2J,SAAS,EAAC,WAAW;YACrBsB,OAAO,EAAEC;UAA6B,CACvC,CACD;UACF7E,EAAE,EAAC,sBAAsB;UACzBmE,KAAK,EAAC,sBAAsB;UAC5BC,WAAW,EAAC,mEAAmE;UAC/EU,IAAI,EAAE,CAAE;UACRC,MAAM,EAAE,KAAM;UACdP,WAAW,EAAEC,uBAAW;UACxBV,QAAQ;UACRiB,KAAK,EAAEpI,MAAM,KAAK,KAAK,IAAI,IAAA/C,WAAG,EAACmK,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,IAAAnK,WAAG,EAACmK,MAAM,EAAE,YAAY,CAAC,GAAG;YAAEiB,IAAI,EAAE;cAAE,cAAc,EAAE;YAAM;UAAE,CAAC,GAAG,CAAC;QAAE,GAC5HjB,MAAM,CACX,CAAC;MAAA,CAEC,CAAC,EAEP/E,KAAK,gBACJ/G,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,CAACzJ,eAAA,CAAAwL,KAAK;QACJpE,IAAI,EAAC,eAAe;QACpBqE,QAAQ;QACRJ,GAAG,cAAAlE,MAAA,CAActD,KAAK;MAAkB,GAEvC,UAAC6H,MAAM;QAAA,oBACN9L,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,CAACtJ,GAAA,CAAAwL,WAAW,MAAAC,SAAA,CAAAvK,OAAA;UACVoK,QAAQ;UACR/D,EAAE,EAAC,gBAAgB;UACnBmE,KAAK,EAAC,gBAAgB;UACtBC,WAAW,EAAC,eAAe;UAC3Bc,WAAW,EAAE,SAAAA,YAACC,MAAM;YAAA,OAAK5G,QAAQ,CAAC4G,MAAM,CAAC;UAAA,CAAC;UAC1Cd,OAAO,EAAEvG,cAAe;UACxBwG,QAAQ,EAAC,WAAW;UACpBC,QAAQ,EAAC,IAAI;UACbC,WAAW,EAAEC;QAAW,GACpBT,MAAM,CACX,CAAC;MAAA,CAEC,CAAC,GACN,IAAI,EAEP/G,mBAAmB,iBAClB/E,MAAA,CAAAyB,OAAA,CAAAoI,aAAA;QAAKuB,SAAS,EAAC;MAAkB,gBAC/BpL,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,aAAI,WAAa,CAAC,eAClB7J,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,CAAC5I,yBAAA,CAAAQ,OAAwB;QAACyL,cAAc,EAAEnI;MAAoB,CAAE,CAC7D,CACN,eAGD/E,MAAA,CAAAyB,OAAA,CAAAoI,aAAA,CAAClJ,WAAA,CAAAwM,UAAU;QACTtG,aAAa,EAAEA,aAAc;QAC7BC,gBAAgB,EAAEA,gBAAiB;QACnCrB,gBAAgB,EAAEA,gBAAiB;QACnCD,aAAa,EAAEV,WAAW,IAAI;MAAG,CAClC,CACE,CAGF,CACL,CAAC;IACN;EAAE,CACJ,CAAC;AAEN;AAEAvB,mBAAmB,CAAC6J,SAAS,GAAG;EAC9BvJ,eAAe,EAAEwJ,oBAAS,CAACC,MAAM,CAACf,UAAU;EAC5CzI,eAAe,EAAEuJ,oBAAS,CAACC,MAAM,CAACf,UAAU;EAC5CxI,QAAQ,EAAEsJ,oBAAS,CAACE,KAAK,CAAC;IACxB5I,OAAO,EAAE0I,oBAAS,CAACE,KAAK,CAAC;MACvB/F,IAAI,EAAE6F,oBAAS,CAACG,MAAM,CAACjB;IACzB,CAAC,CAAC,CAACA,UAAU;IACb3H,QAAQ,EAAEyI,oBAAS,CAACI,KAAK,CAAClB;EAC5B,CAAC,CAAC,CAACA,UAAU;EACbtI,KAAK,EAAEoJ,oBAAS,CAACK,MAAM,CAACnB,UAAU;EAClCrI,gBAAgB,EAAEmJ,oBAAS,CAACG,MAAM;EAClCrJ,QAAQ,EAAEkJ,oBAAS,CAACM,IAAI,CAACpB,UAAU;EACnCnI,UAAU,EAAEiJ,oBAAS,CAACI,KAAK;EAC3BpJ,aAAa,EAAEgJ,oBAAS,CAACM,IAAI,CAACpB,UAAU;EACxChI,iBAAiB,EAAE8I,oBAAS,CAACM,IAAI,CAACpB,UAAU;EAC5C/H,sBAAsB,EAAE6I,oBAAS,CAACM,IAAI,CAACpB,UAAU;EACjDjI,SAAS,EAAE+I,oBAAS,CAACM,IAAI,CAACpB;AAC5B,CAAC;AAEDhJ,mBAAmB,CAACqK,YAAY,GAAG;EACjC1J,gBAAgB,EAAE,EAAE;EACpBE,UAAU,EAAE;AACd,CAAC;AAAA,IAAAyJ,QAAA,GAAAC,OAAA,CAAArM,OAAA,GAEc8B,mBAAmB"}
@@ -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 = isFunded ? 'Funded' : '';
122
+ var funded = referralIsFunded(referral) ? 'Funded' : '';
122
123
  var oon = referralIsOON(referral) ? 'Off-Platform' : 'On-Platform';
123
- return (0, _lodash.compact)([grouped, funded, oon]).join(', ');
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":"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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","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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unite-us/app-create-referral",
3
- "version": "0.2.4",
3
+ "version": "0.2.6-CRTB-985-e6aa149",
4
4
  "main": "./dist/index.js",
5
5
  "author": "Alex Morales",
6
6
  "dependencies": {