@unite-us/app-create-referral 0.4.3 → 0.5.0

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.
@@ -55,7 +55,7 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
55
55
  function ownKeys(e, r) { var t = _Object$keys2(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty2(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
56
56
  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; }
57
57
  function ReferralBuilder() {
58
- var _location$state$selec, _location$state;
58
+ var _location$state$selec, _location$state, _context11;
59
59
  var location = (0, _reactRouterDom.useLocation)();
60
60
  var navigate = (0, _reactRouterDom.useNavigate)();
61
61
  var _useAppCreateReferral = (0, _AppCreateReferralProvider.useAppCreateReferralContext)(),
@@ -68,8 +68,6 @@ function ReferralBuilder() {
68
68
  fieldsConfig = _useAppCreateReferral2.fieldsConfig,
69
69
  source = _useAppCreateReferral2.source,
70
70
  person = _useAppCreateReferral2.person;
71
- var _useBuildReferrals = (0, _useBuildReferrals2.default)(),
72
- isLoading = _useBuildReferrals.isLoading;
73
71
  var form = (0, _react.useRef)();
74
72
  var _useState = (0, _react.useState)(false),
75
73
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
@@ -79,44 +77,48 @@ function ReferralBuilder() {
79
77
  _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
80
78
  selectedIndex = _useState4[0],
81
79
  setSelectedIndex = _useState4[1];
82
- var _useState5 = (0, _react.useState)([]),
80
+ var _useState5 = (0, _react.useState)({}),
83
81
  _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
84
- referralIndexes = _useState6[0],
85
- setReferralIndexes = _useState6[1];
86
- var _useState7 = (0, _react.useState)({}),
82
+ errors = _useState6[0],
83
+ setErrors = _useState6[1];
84
+ var _useState7 = (0, _react.useState)(false),
87
85
  _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
88
- errors = _useState8[0],
89
- setErrors = _useState8[1];
86
+ nextClicked = _useState8[0],
87
+ setNextClicked = _useState8[1];
90
88
  var _useState9 = (0, _react.useState)(false),
91
89
  _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
92
- nextClicked = _useState10[0],
93
- setNextClicked = _useState10[1];
90
+ saveDraftClicked = _useState10[0],
91
+ setSaveDraftClicked = _useState10[1];
94
92
  var _useState11 = (0, _react.useState)(false),
95
93
  _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
96
- saveDraftClicked = _useState12[0],
97
- setSaveDraftClicked = _useState12[1];
98
- var _useState13 = (0, _react.useState)(false),
94
+ expandReferralsCard = _useState12[0],
95
+ setExpandReferralsCard = _useState12[1];
96
+ var _useState13 = (0, _react.useState)(window.innerWidth),
99
97
  _useState14 = (0, _slicedToArray2.default)(_useState13, 2),
100
- expandReferralsCard = _useState14[0],
101
- setExpandReferralsCard = _useState14[1];
102
- var _useState15 = (0, _react.useState)(window.innerWidth),
98
+ width = _useState14[0],
99
+ setWidth = _useState14[1];
100
+ var _useState15 = (0, _react.useState)([]),
103
101
  _useState16 = (0, _slicedToArray2.default)(_useState15, 2),
104
- width = _useState16[0],
105
- setWidth = _useState16[1];
106
- var _useState17 = (0, _react.useState)([]),
102
+ documents = _useState16[0],
103
+ setDocuments = _useState16[1];
104
+ var _useState17 = (0, _react.useState)(false),
107
105
  _useState18 = (0, _slicedToArray2.default)(_useState17, 2),
108
- documents = _useState18[0],
109
- setDocuments = _useState18[1];
110
- var _useState19 = (0, _react.useState)(false),
111
- _useState20 = (0, _slicedToArray2.default)(_useState19, 2),
112
- loadedDocuments = _useState20[0],
113
- setloadedDocuments = _useState20[1];
106
+ loadedDocuments = _useState18[0],
107
+ setloadedDocuments = _useState18[1];
114
108
  var isEmrSource = source === 'emr';
115
- var _useState21 = (0, _react.useState)([]),
116
- _useState22 = (0, _slicedToArray2.default)(_useState21, 2),
117
- networksUnlistedProgram = _useState22[0],
118
- setNetworksUnlistedProgram = _useState22[1];
109
+ var _useState19 = (0, _react.useState)([]),
110
+ _useState20 = (0, _slicedToArray2.default)(_useState19, 2),
111
+ networksUnlistedProgram = _useState20[0],
112
+ setNetworksUnlistedProgram = _useState20[1];
119
113
  var hint542SupersetUnlistedPrograms = (0, _useFeatureFlag.useFeatureFlag)('hint542SupersetUnlistedPrograms', false);
114
+ var onReferralsBuilt = function onReferralsBuilt(groupedReferrals) {
115
+ if (!(0, _lodash.isEmpty)(groupedReferrals)) {
116
+ var _errors = (0, _utils.mapReferralErrorsToIndex)(groupedReferrals);
117
+ setErrors(_errors);
118
+ }
119
+ };
120
+ var _useBuildReferrals = (0, _useBuildReferrals2.default)(onReferralsBuilt),
121
+ isLoading = _useBuildReferrals.isLoading;
120
122
  (0, _react.useEffect)(function () {
121
123
  if (hint542SupersetUnlistedPrograms) {
122
124
  // If the selected programs contain unlisted programs, fetch the networks from the user provider
@@ -159,23 +161,13 @@ function ReferralBuilder() {
159
161
  refModal.current.openDialog();
160
162
  }
161
163
  }, [aboutGroupedReferralsModalIsOpen]);
162
- (0, _react.useEffect)(function () {
163
- if (!(0, _lodash.isEmpty)(referrals)) {
164
- var indexes = (0, _map.default)(referrals).call(referrals, function (r, i) {
165
- return {
166
- index: i
167
- };
168
- });
169
- setReferralIndexes(indexes);
170
- }
171
- }, [referrals]);
172
164
  var onReferralCardClick = function onReferralCardClick(index) {
173
165
  setSelectedIndex(index);
174
166
  };
175
167
  (0, _react.useEffect)(function () {
176
- var errors = (0, _utils.mapReferralErrorsToIndex)(referrals, referralIndexes);
168
+ var errors = (0, _utils.mapReferralErrorsToIndex)(referrals);
177
169
  setErrors(errors);
178
- }, [referrals, referralIndexes]);
170
+ }, [selectedIndex]);
179
171
  (0, _react.useEffect)(function () {
180
172
  (0, _fetchContactDocuments.default)(person.id).then(function (result) {
181
173
  setDocuments(result);
@@ -228,7 +220,7 @@ function ReferralBuilder() {
228
220
  }
229
221
  };
230
222
  var onNextClick = function onNextClick() {
231
- if ((0, _lodash.isEmpty)(errors)) {
223
+ if ((0, _utils.isEmptyErrors)(errors)) {
232
224
  return navigate('/create/supporting-info');
233
225
  }
234
226
  if ((0, _lodash.isEmpty)(errors[selectedIndex])) {
@@ -243,29 +235,41 @@ function ReferralBuilder() {
243
235
  };
244
236
  var setFocus = function setFocus(index) {
245
237
  setTimeout(function () {
246
- var _context, _context2, _context3;
238
+ var _context, _context2, _context3, _context4, _context5;
247
239
  if ((0, _includes.default)(_context = errors[index]).call(_context, 'network')) {
248
240
  var _form$current;
249
241
  (_form$current = form.current) === null || _form$current === void 0 || (_form$current = _form$current.mutators) === null || _form$current === void 0 || _form$current.setFieldTouched('network', true);
250
242
  var networkField = document.getElementById("network-selection").parentElement.parentElement;
251
243
  return networkField.focus();
252
244
  }
253
- if ((0, _includes.default)(_context2 = errors[index]).call(_context2, 'description')) {
245
+ if ((0, _includes.default)(_context2 = errors[index]).call(_context2, 'amount_requested')) {
254
246
  var _form$current2;
255
- (_form$current2 = form.current) === null || _form$current2 === void 0 || (_form$current2 = _form$current2.mutators) === null || _form$current2 === void 0 || _form$current2.setFieldTouched('description', true);
247
+ (_form$current2 = form.current) === null || _form$current2 === void 0 || (_form$current2 = _form$current2.mutators) === null || _form$current2 === void 0 || _form$current2.setFieldTouched('paymentAuthForm.amount_requested', true);
248
+ var amountRequested = document.getElementById("authorization-request-amount-requested");
249
+ return amountRequested.focus();
250
+ }
251
+ if ((0, _includes.default)(_context3 = errors[index]).call(_context3, 'paymentAuthForm.service_end')) {
252
+ var _form$current3;
253
+ (_form$current3 = form.current) === null || _form$current3 === void 0 || (_form$current3 = _form$current3.mutators) === null || _form$current3 === void 0 || _form$current3.setFieldTouched('paymentAuthForm.service_end', true);
254
+ var selectDatesButton = document.getElementById("authorization-request-service-dates");
255
+ return selectDatesButton.focus();
256
+ }
257
+ if ((0, _includes.default)(_context4 = errors[index]).call(_context4, 'description')) {
258
+ var _form$current4;
259
+ (_form$current4 = form.current) === null || _form$current4 === void 0 || (_form$current4 = _form$current4.mutators) === null || _form$current4 === void 0 || _form$current4.setFieldTouched('description', true);
256
260
  var descriptionField = document.getElementById("referral-description");
257
261
  return descriptionField.focus();
258
262
  }
259
- if ((0, _includes.default)(_context3 = errors[index]).call(_context3, 'primary_worker')) {
260
- var _form$current3;
261
- (_form$current3 = form.current) === null || _form$current3 === void 0 || (_form$current3 = _form$current3.mutators) === null || _form$current3 === void 0 || _form$current3.setFieldTouched('primaryWorker', true);
263
+ if ((0, _includes.default)(_context5 = errors[index]).call(_context5, 'primary_worker')) {
264
+ var _form$current5;
265
+ (_form$current5 = form.current) === null || _form$current5 === void 0 || (_form$current5 = _form$current5.mutators) === null || _form$current5 === void 0 || _form$current5.setFieldTouched('primaryWorker', true);
262
266
  var primaryWorkerField = document.getElementById("primary-worker").parentElement.parentElement;
263
267
  return primaryWorkerField.focus();
264
268
  }
265
269
  }, 100);
266
270
  };
267
271
  var moveToExistingReferral = function moveToExistingReferral(index, program) {
268
- var _context4;
272
+ var _context6;
269
273
  var programs = referrals[selectedIndex].programs;
270
274
  referrals[selectedIndex] = _objectSpread(_objectSpread({}, referrals[selectedIndex]), {}, {
271
275
  programs: (0, _filter.default)(programs).call(programs, function (p) {
@@ -276,7 +280,7 @@ function ReferralBuilder() {
276
280
  referrals[selectedIndex] = null;
277
281
  }
278
282
  referrals[index] = _objectSpread(_objectSpread({}, referrals[index]), {}, {
279
- programs: (0, _concat.default)(_context4 = []).call(_context4, (0, _toConsumableArray2.default)(referrals[index].programs), [program])
283
+ programs: (0, _concat.default)(_context6 = []).call(_context6, (0, _toConsumableArray2.default)(referrals[index].programs), [program])
280
284
  });
281
285
  dispatch((0, _AppCreateReferralProvider.setData)({
282
286
  referrals: (0, _lodash.compact)(referrals)
@@ -285,16 +289,16 @@ function ReferralBuilder() {
285
289
  setSelectedIndex(newIndex);
286
290
  };
287
291
  var moveToNewReferral = function moveToNewReferral(program) {
288
- var _context5, _context6;
292
+ var _context7, _context8;
289
293
  var referral = referrals[selectedIndex];
290
- referral.programs = (0, _filter.default)(_context5 = referral.programs).call(_context5, function (p) {
294
+ referral.programs = (0, _filter.default)(_context7 = referral.programs).call(_context7, function (p) {
291
295
  return p.id !== program.id;
292
296
  });
293
297
  var newReferral = _objectSpread(_objectSpread({}, referral), {}, {
294
298
  programs: [program],
295
299
  description: ''
296
300
  });
297
- var newReferrals = (0, _concat.default)(_context6 = []).call(_context6, (0, _toConsumableArray2.default)(referrals), [newReferral]);
301
+ var newReferrals = (0, _concat.default)(_context8 = []).call(_context8, (0, _toConsumableArray2.default)(referrals), [newReferral]);
298
302
  dispatch((0, _AppCreateReferralProvider.setData)({
299
303
  referrals: newReferrals
300
304
  }));
@@ -329,22 +333,31 @@ function ReferralBuilder() {
329
333
  referrals: referrals
330
334
  }));
331
335
  };
336
+ var assignReferralErrors = (0, _react.useCallback)(function () {
337
+ var errors = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
338
+ setErrors(function (previousErrors) {
339
+ var _context9;
340
+ var modelErrors = (0, _concat.default)(_context9 = []).call(_context9, (0, _toConsumableArray2.default)((0, _utils.mapReferralErrorsToIndex)(referrals)[selectedIndex] || []), (0, _toConsumableArray2.default)(errors));
341
+ var isInvalid = (0, _lodash.isEmpty)([modelErrors]);
342
+ return _objectSpread(_objectSpread({}, previousErrors), !isInvalid && (0, _defineProperty2.default)({}, selectedIndex, (0, _toConsumableArray2.default)(modelErrors)));
343
+ });
344
+ }, [selectedIndex, referrals]);
332
345
  var navigateBack = function navigateBack() {
333
346
  return _config.CALLBACKS.onNavigateBack ? _config.CALLBACKS.onNavigateBack() : navigate(-1);
334
347
  };
335
348
  var createReferrals = (0, _useCreateReferrals.default)();
336
349
  var handleSaveDraftReferral = /*#__PURE__*/function () {
337
- var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
350
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
338
351
  var onSaveDraftReferral;
339
- return _regenerator.default.wrap(function _callee$(_context7) {
340
- while (1) switch (_context7.prev = _context7.next) {
352
+ return _regenerator.default.wrap(function _callee$(_context10) {
353
+ while (1) switch (_context10.prev = _context10.next) {
341
354
  case 0:
342
355
  setSaveDraftClicked(true);
343
- if (!(0, _lodash.isEmpty)(errors)) {
344
- _context7.next = 9;
356
+ if (!(0, _utils.isEmptyErrors)(errors)) {
357
+ _context10.next = 9;
345
358
  break;
346
359
  }
347
- _context7.next = 4;
360
+ _context10.next = 4;
348
361
  return createReferrals({
349
362
  draft: true
350
363
  });
@@ -352,18 +365,18 @@ function ReferralBuilder() {
352
365
  onSaveDraftReferral = _config.CALLBACKS.onSaveDraftReferral;
353
366
  onSaveDraftReferral && onSaveDraftReferral();
354
367
  _config.CALLBACKS.notify.success('Draft referral successfully saved');
355
- _context7.next = 10;
368
+ _context10.next = 10;
356
369
  break;
357
370
  case 9:
358
371
  focusErrors();
359
372
  case 10:
360
373
  case "end":
361
- return _context7.stop();
374
+ return _context10.stop();
362
375
  }
363
376
  }, _callee);
364
377
  }));
365
378
  return function handleSaveDraftReferral() {
366
- return _ref.apply(this, arguments);
379
+ return _ref2.apply(this, arguments);
367
380
  };
368
381
  }();
369
382
  var changeWidthReferralCard = function changeWidthReferralCard() {
@@ -373,8 +386,10 @@ function ReferralBuilder() {
373
386
  center: true
374
387
  });
375
388
  var referralSubtitle = (0, _utils.getReferralSubtitle)(referrals, getSelected());
376
- var unselectedReferralIndexes = (0, _filter.default)(referralIndexes).call(referralIndexes, function (r) {
377
- return r.index !== selectedIndex;
389
+ var unselectedReferralIndexes = (0, _filter.default)(_context11 = (0, _map.default)(referrals).call(referrals, function (_referral, index) {
390
+ return index;
391
+ })).call(_context11, function (index) {
392
+ return index !== selectedIndex;
378
393
  });
379
394
  var allPrograms = referrals === null || referrals === void 0 ? void 0 : (0, _flatMap.default)(referrals).call(referrals, function (r) {
380
395
  return r.programs;
@@ -467,7 +482,8 @@ function ReferralBuilder() {
467
482
  moveToExistingReferral: moveToExistingReferral,
468
483
  updateAttachments: updateAttachments,
469
484
  source: source,
470
- networksUnlistedProgram: networksUnlistedProgram
485
+ networksUnlistedProgram: networksUnlistedProgram,
486
+ assignReferralErrors: assignReferralErrors
471
487
  }) : null)) : /*#__PURE__*/_react.default.createElement(_NoReferralsDisplay.default, {
472
488
  onClick: navigateBack
473
489
  }), /*#__PURE__*/_react.default.createElement(_NavButtons.default, {
@@ -1 +1 @@
1
- {"version":3,"file":"ReferralBuilder.js","names":["_react","_interopRequireWildcard","require","_lodash","_reactRouterDom","_ui","_AppCreateReferralProvider","_StepHeader","_interopRequireDefault","_constants","_AboutGroupedReferralsModal","_ReferralCard","_ReferralBuilderForm","_utils","_useBuildReferrals2","_CreateReferralContainer","_NavButtons","_NoReferralsDisplay","_removeReferralProgram","_Spinner","_useCreateReferrals","_config","_fetchContactDocuments","_classnames","_fetchNetworks","_useFeatureFlag","_getRequireWildcardCache","e","_WeakMap","r","t","__esModule","_typeof","default","has","get","n","__proto__","a","_Object$defineProperty","_Object$getOwnPropertyDescriptor","u","Object","prototype","hasOwnProperty","call","i","set","ownKeys","_Object$keys2","_Object$getOwnPropertySymbols","o","_filterInstanceProperty2","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","_Object$getOwnPropertyDescriptors","_Object$defineProperties","ReferralBuilder","_location$state$selec","_location$state","location","useLocation","navigate","useNavigate","_useAppCreateReferral","useAppCreateReferralContext","dispatch","_useAppCreateReferral2","state","referrals","selectedPrograms","currentEmployee","currentProvider","fieldsConfig","source","person","_useBuildReferrals","useBuildReferrals","isLoading","form","useRef","_useState","useState","_useState2","_slicedToArray2","aboutGroupedReferralsModalIsOpen","setAboutGroupedReferralsModalIsOpen","_useState3","selectedReferral","_useState4","selectedIndex","setSelectedIndex","_useState5","_useState6","referralIndexes","setReferralIndexes","_useState7","_useState8","errors","setErrors","_useState9","_useState10","nextClicked","setNextClicked","_useState11","_useState12","saveDraftClicked","setSaveDraftClicked","_useState13","_useState14","expandReferralsCard","setExpandReferralsCard","_useState15","window","innerWidth","_useState16","width","setWidth","_useState17","_useState18","documents","setDocuments","_useState19","_useState20","loadedDocuments","setloadedDocuments","isEmrSource","_useState21","_useState22","networksUnlistedProgram","setNetworksUnlistedProgram","hint542SupersetUnlistedPrograms","useFeatureFlag","useEffect","hasUnlistedPrograms","some","program","isUnlistedProgram","fetchNetworks","then","networks","handleResize","addEventListener","removeEventListener","handleExpandReferralsCard","changeWidthReferralCard","onLearnMoreClick","onCloseGroupedReferralsModal","refModal","current","openDialog","isEmpty","indexes","_map","index","onReferralCardClick","mapReferralErrorsToIndex","fetchContactDocuments","id","result","updatedReferrals","referral","attachableDocuments","doc","attached","document","setData","getSelected","saveValuesOnChange","props","values","_values","setTimeout","_toConsumableArray2","focusErrors","firstErrorIndex","_parseInt2","_keys","setFocus","onNextClick","_context","_context2","_context3","_includes","_form$current","mutators","setFieldTouched","networkField","getElementById","parentElement","focus","_form$current2","descriptionField","_form$current3","primaryWorkerField","moveToExistingReferral","_context4","programs","_filter","p","_concat","compact","newIndex","moveToNewReferral","_context5","_context6","newReferral","description","newReferrals","removeProgram","programId","serviceId","removeReferralProgram","newReferralPrograms","_flatMap","newSelectedPrograms","intersectionBy","updateAttachments","attachments","navigateBack","CALLBACKS","onNavigateBack","createReferrals","useCreateReferrals","handleSaveDraftReferral","_ref","_asyncToGenerator2","_regenerator","mark","_callee","onSaveDraftReferral","wrap","_callee$","_context7","prev","next","draft","notify","success","stop","createElement","center","referralSubtitle","getReferralSubtitle","unselectedReferralIndexes","allPrograms","errorMessage","generateErrorMessage","currentReferral","xlOrLgInvisibleChevron","classNames","xlOrLgSpaceReferralDiv","className","header","REFERRAL_BUILDER_DESCRIPTION","type","onClick","onCloseModal","Fragment","onBackClick","onForwardClick","primaryLabel","hideForwardButtons","hideSaveDraftLink","hasOffPlatformReferrals","Icon","icon","color","concat","key","onChange","unselected","onSetForm","newForm"],"sources":["../../../src/pages/builder/ReferralBuilder.js"],"sourcesContent":["import React, { useEffect, useState, useRef } from 'react';\nimport { isEmpty, get, compact, intersectionBy } from 'lodash';\nimport { useNavigate, useLocation } from 'react-router-dom';\nimport { Icon } from '@unite-us/ui';\nimport { setData, useAppCreateReferralContext } from '../../context/AppCreateReferralProvider';\nimport StepHeader from '../../components/StepHeader';\nimport { REFERRAL_BUILDER_DESCRIPTION } from './constants';\nimport AboutGroupedReferralsModal from './AboutGroupedReferralsModal';\nimport ReferralCard from './ReferralCard';\nimport ReferralBuilderForm from './ReferralBuilderForm';\nimport { isUnlistedProgram, getReferralSubtitle, mapReferralErrorsToIndex, generateErrorMessage, hasOffPlatformReferrals } from './utils';\nimport useBuildReferrals from './useBuildReferrals';\nimport CreateReferralContainer from '../../components/CreateReferralContainer';\nimport NavButtons from '../../components/NavButtons';\nimport NoReferralsDisplay from './NoReferralsDisplay';\nimport { removeReferralProgram } from '../../actions/Referral/removeReferralProgram';\nimport Spinner from '../../components/spinners/Spinner';\nimport useCreateReferrals from '../../hooks/useCreateReferrals';\nimport { CALLBACKS } from '../../api/config';\nimport fetchContactDocuments from '../../actions/Document/Contact/Group/fetchContactDocuments';\nimport classNames from 'classnames';\nimport fetchNetworks from '../../actions/Referral/fetchNetworks';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\n\nexport default function ReferralBuilder() {\n const location = useLocation();\n const navigate = useNavigate();\n const {\n dispatch,\n state: {\n referrals,\n selectedPrograms,\n currentEmployee,\n currentProvider,\n fieldsConfig,\n source,\n person,\n },\n } = useAppCreateReferralContext();\n const { isLoading } = useBuildReferrals();\n const form = useRef();\n\n const [aboutGroupedReferralsModalIsOpen, setAboutGroupedReferralsModalIsOpen] = useState(false);\n const [selectedIndex, setSelectedIndex] = useState(location.state?.selectedReferral ?? 0);\n const [referralIndexes, setReferralIndexes] = useState([]);\n const [errors, setErrors] = useState({})\n const [nextClicked, setNextClicked] = useState(false);\n const [saveDraftClicked, setSaveDraftClicked] = useState(false);\n const [expandReferralsCard, setExpandReferralsCard] = useState(false);\n const [width, setWidth] = useState(window.innerWidth);\n const [documents, setDocuments] = useState([]);\n const [loadedDocuments, setloadedDocuments] = useState(false);\n const isEmrSource = source === 'emr';\n const [networksUnlistedProgram, setNetworksUnlistedProgram] = useState([]);\n const hint542SupersetUnlistedPrograms = useFeatureFlag('hint542SupersetUnlistedPrograms', false);\n\n useEffect(() => {\n if (hint542SupersetUnlistedPrograms) {\n // If the selected programs contain unlisted programs, fetch the networks from the user provider\n const hasUnlistedPrograms = selectedPrograms?.some((program) => isUnlistedProgram(program));\n if (hasUnlistedPrograms) {\n fetchNetworks(currentProvider).then((networks) => {\n setNetworksUnlistedProgram(networks);\n });\n }\n }\n }, []);\n\n useEffect(() => {\n const handleResize = () => {\n setWidth(window.innerWidth);\n }\n window.addEventListener(\"resize\", handleResize);\n return () => window.removeEventListener(\"resize\", handleResize);\n }, [width]);\n\n useEffect(() => {\n width > (isEmrSource ? 800 : 1200) && handleExpandReferralsCard();\n }, [width]);\n\n const handleExpandReferralsCard = () => {\n if (expandReferralsCard) {\n changeWidthReferralCard();\n }\n }\n\n const onLearnMoreClick = () => {\n setAboutGroupedReferralsModalIsOpen(true);\n };\n\n const onCloseGroupedReferralsModal = () => {\n setAboutGroupedReferralsModalIsOpen(false);\n }\n\n const refModal = useRef(null);\n useEffect(() => {\n if (aboutGroupedReferralsModalIsOpen) {\n refModal.current.openDialog();\n }\n }, [aboutGroupedReferralsModalIsOpen]);\n\n useEffect(() => {\n if (!isEmpty(referrals)) {\n const indexes = referrals.map((r, i) => ({ index: i }))\n setReferralIndexes(indexes);\n }\n }, [referrals])\n\n const onReferralCardClick = (index) => {\n setSelectedIndex(index);\n }\n\n useEffect(() => {\n const errors = mapReferralErrorsToIndex(referrals, referralIndexes)\n setErrors(errors);\n }, [referrals, referralIndexes])\n\n useEffect(() => {\n fetchContactDocuments(person.id).then((result) => {\n setDocuments(result);\n });\n }, []);\n\n useEffect(() => {\n if (!isEmpty(referrals) && !loadedDocuments && !isEmpty(documents)) {\n const updatedReferrals = referrals.map((referral) => {\n if(!referral.attachableDocuments) {\n return {\n ...referral,\n attachableDocuments: documents.map((doc) => ({\n attached: false,\n document: doc,\n })),\n };\n } else {\n return referral;\n }\n });\n\n dispatch(setData({\n referrals: updatedReferrals,\n }));\n\n setloadedDocuments(true);\n }\n }, [referrals]);\n\n const getSelected = () => referrals && referrals[selectedIndex]\n\n const saveValuesOnChange = (props) => {\n const { values } = props;\n referrals[selectedIndex] = {\n ...values\n }\n\n // Testing: Avoid React Final Form error: FormSpy Cannot update a component while rendering\n // https://github.com/final-form/react-final-form/issues/809#issue-638963034\n setTimeout(() =>\n dispatch(setData({\n referrals: [...referrals]\n })), 0\n )\n }\n\n const focusErrors = () => {\n if (isEmpty(errors[selectedIndex])) {\n const firstErrorIndex = parseInt(Object.keys(errors)[0]);\n setSelectedIndex(firstErrorIndex);\n setFocus(firstErrorIndex);\n } else {\n setFocus(selectedIndex);\n }\n }\n\n const onNextClick = () => {\n if (isEmpty(errors)) {\n return navigate('/create/supporting-info');\n }\n\n if (isEmpty(errors[selectedIndex])) {\n const firstErrorIndex = parseInt(Object.keys(errors)[0]);\n setSelectedIndex(firstErrorIndex);\n setFocus(firstErrorIndex)\n } else {\n setFocus(selectedIndex)\n }\n focusErrors();\n setNextClicked(true);\n }\n\n const setFocus = (index) => {\n setTimeout(() => {\n if (errors[index].includes('network')) {\n form.current?.mutators?.setFieldTouched('network', true);\n const networkField = document.getElementById(\"network-selection\").parentElement.parentElement;\n return networkField.focus();\n }\n if (errors[index].includes('description')) {\n form.current?.mutators?.setFieldTouched('description', true);\n const descriptionField = document.getElementById(\"referral-description\");\n return descriptionField.focus();\n }\n if (errors[index].includes('primary_worker')) {\n form.current?.mutators?.setFieldTouched('primaryWorker', true);\n const primaryWorkerField = document.getElementById(\"primary-worker\").parentElement.parentElement;\n return primaryWorkerField.focus();\n }\n }, 100);\n }\n\n const moveToExistingReferral = (index, program) => {\n const { programs } = referrals[selectedIndex];\n\n referrals[selectedIndex] = {\n ...referrals[selectedIndex],\n programs: programs.filter((p) => p.id !== program.id),\n }\n if (isEmpty(referrals[selectedIndex].programs)) {\n referrals[selectedIndex] = null;\n }\n\n referrals[index] = {\n ...referrals[index],\n programs: [...referrals[index].programs, program]\n }\n\n dispatch(setData({\n referrals: compact(referrals),\n }));\n\n const newIndex = selectedIndex < index ? index - 1 : index;\n setSelectedIndex(newIndex);\n }\n\n const moveToNewReferral = (program) => {\n const referral = referrals[selectedIndex];\n referral.programs = referral.programs.filter((p) => p.id !== program.id);\n\n const newReferral = {\n ...referral,\n programs: [program],\n description: '',\n }\n\n const newReferrals = [...referrals, newReferral];\n\n dispatch(setData({\n referrals: newReferrals,\n }));\n\n setSelectedIndex(newReferrals.length - 1);\n }\n\n const removeProgram = (programId, serviceId) => {\n const referral = referrals[selectedIndex];\n const newReferral = removeReferralProgram({ referral, programId, serviceId });\n\n referrals[selectedIndex] = newReferral ? {\n ...newReferral\n } : null;\n\n const newReferrals = compact(referrals);\n const newReferralPrograms = newReferrals.flatMap((r) => r.programs);\n const newSelectedPrograms = intersectionBy(selectedPrograms, newReferralPrograms, 'id');\n\n dispatch(setData({\n referrals: [...newReferrals],\n selectedPrograms: [...newSelectedPrograms],\n }));\n\n if (!referrals[selectedIndex]) {\n setSelectedIndex(0);\n }\n }\n\n const updateAttachments = (attachments) => {\n referrals[selectedIndex] = {\n ...referrals[selectedIndex],\n attachments,\n };\n \n dispatch(setData({\n referrals,\n }));\n };\n\n const navigateBack = () => CALLBACKS.onNavigateBack ? CALLBACKS.onNavigateBack() : navigate(-1);\n\n const createReferrals = useCreateReferrals();\n const handleSaveDraftReferral = async () => {\n setSaveDraftClicked(true);\n if (isEmpty(errors)) {\n await createReferrals({ draft: true });\n const { onSaveDraftReferral } = CALLBACKS;\n onSaveDraftReferral && onSaveDraftReferral();\n CALLBACKS.notify.success('Draft referral successfully saved');\n } else {\n focusErrors();\n }\n };\n\n const changeWidthReferralCard = () => {\n setExpandReferralsCard(!expandReferralsCard);\n };\n\n if (isLoading) return <Spinner center />;\n\n const referralSubtitle = getReferralSubtitle(referrals, getSelected());\n const unselectedReferralIndexes = referralIndexes.filter((r) => r.index !== selectedIndex);\n const allPrograms = referrals?.flatMap((r) => r.programs);\n const errorMessage = generateErrorMessage(errors);\n const currentReferral = getSelected();\n\n const xlOrLgInvisibleChevron = classNames({\n 'lg:invisible': isEmrSource,\n 'xl:invisible': !isEmrSource,\n });\n\n const xlOrLgSpaceReferralDiv = classNames({\n 'lg:space-x-6': isEmrSource,\n 'lg:space-x-0 xl:space-x-6': !isEmrSource,\n });\n\n return (\n <CreateReferralContainer>\n <div className=\"px-12\">\n <StepHeader header='Prepare Your Referrals'>\n {REFERRAL_BUILDER_DESCRIPTION}\n <button\n className=\"text-current-blue\"\n type=\"button\"\n onClick={onLearnMoreClick}\n >\n Learn more about referrals.\n </button>\n </StepHeader>\n\n <AboutGroupedReferralsModal refModal={refModal} onCloseModal={onCloseGroupedReferralsModal} />\n\n <>\n <NavButtons\n onBackClick={navigateBack}\n onForwardClick={onNextClick}\n onSaveDraftReferral={handleSaveDraftReferral}\n primaryLabel=\"Next\"\n hideForwardButtons={isEmpty(referrals)}\n hideSaveDraftLink={get(fieldsConfig, 'hideSaveDraftLink')}\n hasOffPlatformReferrals={hasOffPlatformReferrals(referrals)}\n />\n\n {\n !isEmpty(allPrograms) ? (\n <div className=\"relative mx-auto responsive-max-width\">\n {\n (errorMessage && (nextClicked || saveDraftClicked)) ? (\n <div className=\"flex justify-end\">\n <Icon icon=\"IconInfoCircle\" color=\"red\" className=\"mr-2 mt-px\" />\n <p className=\"text-red\">{errorMessage}</p>\n </div>\n ) : null\n }\n <div className={`flex justify-end space-x-0 my-5 sm:space-x-0 md:space-x-0 ${xlOrLgSpaceReferralDiv}`}>\n <div id=\"referrals-card\"\n className={\"bg-white border border-solid border-blue-border rounded \" +\n (expandReferralsCard ? 'absolute inset-y-0 left-0 z-20 md:w-3/6 lg:w-3/6': 'md:w-2/6 lg:w-2/6')}>\n <div className=\"p-5 h-full\">\n <div className=\"flex justify-between relative\">\n <div>\n <h2 className=\"text-xl font-black mb-5\">\n Referrals\n </h2>\n </div>\n <div className={xlOrLgInvisibleChevron}>\n <Icon icon={expandReferralsCard ? \"V2ChevronLeft\" : \"V2ChevronRight\"} className=\"w-6 h-6\" onClick={() => changeWidthReferralCard()}/>\n </div>\n </div>\n {referrals?.map((referral, index) => (\n <div className=\"mb-5\" key={`referral-card-${index}-wrapper`}>\n <ReferralCard\n referral={referral}\n index={index}\n selectedIndex={selectedIndex}\n onClick={onReferralCardClick}\n errors={errors[index]}\n expandReferralsCard={expandReferralsCard}\n isEmrSource={isEmrSource}\n />\n </div>\n ))}\n </div>\n </div>\n {\n !isEmpty(get(currentReferral, 'programs', [])) ? (\n <ReferralBuilderForm\n currentEmployee={currentEmployee}\n currentProvider={currentProvider}\n referral={currentReferral}\n referrals={referrals}\n referralSubtitle={referralSubtitle}\n index={selectedIndex}\n onChange={saveValuesOnChange}\n unselected={unselectedReferralIndexes}\n removeProgram={removeProgram}\n onSetForm={(newForm) => { form.current = newForm; }}\n moveToNewReferral={moveToNewReferral}\n moveToExistingReferral={moveToExistingReferral}\n updateAttachments={updateAttachments}\n source={source}\n networksUnlistedProgram={networksUnlistedProgram}\n />\n ) : null\n }\n </div>\n </div>\n ) : (\n <NoReferralsDisplay onClick={navigateBack} />\n )\n }\n\n <NavButtons\n onBackClick={navigateBack}\n onForwardClick={onNextClick}\n onSaveDraftReferral={handleSaveDraftReferral}\n primaryLabel=\"Next\"\n hideForwardButtons={isEmpty(referrals)}\n hideSaveDraftLink={get(fieldsConfig, 'hideSaveDraftLink')}\n hasOffPlatformReferrals={hasOffPlatformReferrals(referrals)}\n />\n </>\n </div>\n </CreateReferralContainer>\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ReferralBuilder.js","names":["_react","_interopRequireWildcard","require","_lodash","_reactRouterDom","_ui","_AppCreateReferralProvider","_StepHeader","_interopRequireDefault","_constants","_AboutGroupedReferralsModal","_ReferralCard","_ReferralBuilderForm","_utils","_useBuildReferrals2","_CreateReferralContainer","_NavButtons","_NoReferralsDisplay","_removeReferralProgram","_Spinner","_useCreateReferrals","_config","_fetchContactDocuments","_classnames","_fetchNetworks","_useFeatureFlag","_getRequireWildcardCache","e","_WeakMap","r","t","__esModule","_typeof","default","has","get","n","__proto__","a","_Object$defineProperty","_Object$getOwnPropertyDescriptor","u","Object","prototype","hasOwnProperty","call","i","set","ownKeys","_Object$keys2","_Object$getOwnPropertySymbols","o","_filterInstanceProperty2","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","_Object$getOwnPropertyDescriptors","_Object$defineProperties","ReferralBuilder","_location$state$selec","_location$state","_context11","location","useLocation","navigate","useNavigate","_useAppCreateReferral","useAppCreateReferralContext","dispatch","_useAppCreateReferral2","state","referrals","selectedPrograms","currentEmployee","currentProvider","fieldsConfig","source","person","form","useRef","_useState","useState","_useState2","_slicedToArray2","aboutGroupedReferralsModalIsOpen","setAboutGroupedReferralsModalIsOpen","_useState3","selectedReferral","_useState4","selectedIndex","setSelectedIndex","_useState5","_useState6","errors","setErrors","_useState7","_useState8","nextClicked","setNextClicked","_useState9","_useState10","saveDraftClicked","setSaveDraftClicked","_useState11","_useState12","expandReferralsCard","setExpandReferralsCard","_useState13","window","innerWidth","_useState14","width","setWidth","_useState15","_useState16","documents","setDocuments","_useState17","_useState18","loadedDocuments","setloadedDocuments","isEmrSource","_useState19","_useState20","networksUnlistedProgram","setNetworksUnlistedProgram","hint542SupersetUnlistedPrograms","useFeatureFlag","onReferralsBuilt","groupedReferrals","isEmpty","mapReferralErrorsToIndex","_useBuildReferrals","useBuildReferrals","isLoading","useEffect","hasUnlistedPrograms","some","program","isUnlistedProgram","fetchNetworks","then","networks","handleResize","addEventListener","removeEventListener","handleExpandReferralsCard","changeWidthReferralCard","onLearnMoreClick","onCloseGroupedReferralsModal","refModal","current","openDialog","onReferralCardClick","index","fetchContactDocuments","id","result","updatedReferrals","_map","referral","attachableDocuments","doc","attached","document","setData","getSelected","saveValuesOnChange","props","values","_values","setTimeout","_toConsumableArray2","focusErrors","firstErrorIndex","_parseInt2","_keys","setFocus","onNextClick","isEmptyErrors","_context","_context2","_context3","_context4","_context5","_includes","_form$current","mutators","setFieldTouched","networkField","getElementById","parentElement","focus","_form$current2","amountRequested","_form$current3","selectDatesButton","_form$current4","descriptionField","_form$current5","primaryWorkerField","moveToExistingReferral","_context6","programs","_filter","p","_concat","compact","newIndex","moveToNewReferral","_context7","_context8","newReferral","description","newReferrals","removeProgram","programId","serviceId","removeReferralProgram","newReferralPrograms","_flatMap","newSelectedPrograms","intersectionBy","updateAttachments","attachments","assignReferralErrors","useCallback","undefined","previousErrors","_context9","modelErrors","isInvalid","navigateBack","CALLBACKS","onNavigateBack","createReferrals","useCreateReferrals","handleSaveDraftReferral","_ref2","_asyncToGenerator2","_regenerator","mark","_callee","onSaveDraftReferral","wrap","_callee$","_context10","prev","next","draft","notify","success","stop","createElement","center","referralSubtitle","getReferralSubtitle","unselectedReferralIndexes","_referral","allPrograms","errorMessage","generateErrorMessage","currentReferral","xlOrLgInvisibleChevron","classNames","xlOrLgSpaceReferralDiv","className","header","REFERRAL_BUILDER_DESCRIPTION","type","onClick","onCloseModal","Fragment","onBackClick","onForwardClick","primaryLabel","hideForwardButtons","hideSaveDraftLink","hasOffPlatformReferrals","Icon","icon","color","concat","key","onChange","unselected","onSetForm","newForm"],"sources":["../../../src/pages/builder/ReferralBuilder.js"],"sourcesContent":["import React, { useCallback, useEffect, useState, useRef } from 'react';\nimport { isEmpty, get, compact, intersectionBy } from 'lodash';\nimport { useNavigate, useLocation } from 'react-router-dom';\nimport { Icon } from '@unite-us/ui';\nimport { setData, useAppCreateReferralContext } from '../../context/AppCreateReferralProvider';\nimport StepHeader from '../../components/StepHeader';\nimport { REFERRAL_BUILDER_DESCRIPTION } from './constants';\nimport AboutGroupedReferralsModal from './AboutGroupedReferralsModal';\nimport ReferralCard from './ReferralCard';\nimport ReferralBuilderForm from './ReferralBuilderForm';\nimport { isUnlistedProgram, getReferralSubtitle, mapReferralErrorsToIndex, generateErrorMessage, hasOffPlatformReferrals, isEmptyErrors } from './utils';\nimport useBuildReferrals from './useBuildReferrals';\nimport CreateReferralContainer from '../../components/CreateReferralContainer';\nimport NavButtons from '../../components/NavButtons';\nimport NoReferralsDisplay from './NoReferralsDisplay';\nimport { removeReferralProgram } from '../../actions/Referral/removeReferralProgram';\nimport Spinner from '../../components/spinners/Spinner';\nimport useCreateReferrals from '../../hooks/useCreateReferrals';\nimport { CALLBACKS } from '../../api/config';\nimport fetchContactDocuments from '../../actions/Document/Contact/Group/fetchContactDocuments';\nimport classNames from 'classnames';\nimport fetchNetworks from '../../actions/Referral/fetchNetworks';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\n\nexport default function ReferralBuilder() {\n const location = useLocation();\n const navigate = useNavigate();\n const {\n dispatch,\n state: {\n referrals,\n selectedPrograms,\n currentEmployee,\n currentProvider,\n fieldsConfig,\n source,\n person,\n },\n } = useAppCreateReferralContext();\n const form = useRef();\n\n const [aboutGroupedReferralsModalIsOpen, setAboutGroupedReferralsModalIsOpen] = useState(false);\n const [selectedIndex, setSelectedIndex] = useState(location.state?.selectedReferral ?? 0);\n const [errors, setErrors] = useState({})\n const [nextClicked, setNextClicked] = useState(false);\n const [saveDraftClicked, setSaveDraftClicked] = useState(false);\n const [expandReferralsCard, setExpandReferralsCard] = useState(false);\n const [width, setWidth] = useState(window.innerWidth);\n const [documents, setDocuments] = useState([]);\n const [loadedDocuments, setloadedDocuments] = useState(false);\n const isEmrSource = source === 'emr';\n const [networksUnlistedProgram, setNetworksUnlistedProgram] = useState([]);\n const hint542SupersetUnlistedPrograms = useFeatureFlag('hint542SupersetUnlistedPrograms', false);\n\n const onReferralsBuilt = (groupedReferrals) => {\n if(!isEmpty(groupedReferrals)) {\n const errors = mapReferralErrorsToIndex(groupedReferrals);\n setErrors(errors);\n }\n };\n\n const { isLoading } = useBuildReferrals(onReferralsBuilt);\n\n useEffect(() => {\n if (hint542SupersetUnlistedPrograms) {\n // If the selected programs contain unlisted programs, fetch the networks from the user provider\n const hasUnlistedPrograms = selectedPrograms?.some((program) => isUnlistedProgram(program));\n if (hasUnlistedPrograms) {\n fetchNetworks(currentProvider).then((networks) => {\n setNetworksUnlistedProgram(networks);\n });\n }\n }\n }, []);\n\n useEffect(() => {\n const handleResize = () => {\n setWidth(window.innerWidth);\n }\n window.addEventListener(\"resize\", handleResize);\n return () => window.removeEventListener(\"resize\", handleResize);\n }, [width]);\n\n useEffect(() => {\n width > (isEmrSource ? 800 : 1200) && handleExpandReferralsCard();\n }, [width]);\n\n const handleExpandReferralsCard = () => {\n if (expandReferralsCard) {\n changeWidthReferralCard();\n }\n }\n\n const onLearnMoreClick = () => {\n setAboutGroupedReferralsModalIsOpen(true);\n };\n\n const onCloseGroupedReferralsModal = () => {\n setAboutGroupedReferralsModalIsOpen(false);\n }\n\n const refModal = useRef(null);\n useEffect(() => {\n if (aboutGroupedReferralsModalIsOpen) {\n refModal.current.openDialog();\n }\n }, [aboutGroupedReferralsModalIsOpen]);\n\n const onReferralCardClick = (index) => {\n setSelectedIndex(index);\n }\n\n useEffect(() => {\n const errors = mapReferralErrorsToIndex(referrals)\n setErrors(errors);\n }, [selectedIndex])\n\n useEffect(() => {\n fetchContactDocuments(person.id).then((result) => {\n setDocuments(result);\n });\n }, []);\n\n useEffect(() => {\n if (!isEmpty(referrals) && !loadedDocuments && !isEmpty(documents)) {\n const updatedReferrals = referrals.map((referral) => {\n if(!referral.attachableDocuments) {\n return {\n ...referral,\n attachableDocuments: documents.map((doc) => ({\n attached: false,\n document: doc,\n })),\n };\n } else {\n return referral;\n }\n });\n\n dispatch(setData({\n referrals: updatedReferrals,\n }));\n\n setloadedDocuments(true);\n }\n }, [referrals]);\n\n const getSelected = () => referrals && referrals[selectedIndex]\n\n const saveValuesOnChange = (props) => {\n const { values } = props;\n referrals[selectedIndex] = {\n ...values\n }\n\n // Testing: Avoid React Final Form error: FormSpy Cannot update a component while rendering\n // https://github.com/final-form/react-final-form/issues/809#issue-638963034\n setTimeout(() =>\n dispatch(setData({\n referrals: [...referrals]\n })), 0\n )\n }\n\n const focusErrors = () => {\n if (isEmpty(errors[selectedIndex])) {\n const firstErrorIndex = parseInt(Object.keys(errors)[0]);\n setSelectedIndex(firstErrorIndex);\n setFocus(firstErrorIndex);\n } else {\n setFocus(selectedIndex);\n }\n }\n\n const onNextClick = () => {\n if (isEmptyErrors(errors)) {\n return navigate('/create/supporting-info');\n }\n\n if (isEmpty(errors[selectedIndex])) {\n const firstErrorIndex = parseInt(Object.keys(errors)[0]);\n setSelectedIndex(firstErrorIndex);\n setFocus(firstErrorIndex)\n } else {\n setFocus(selectedIndex)\n }\n focusErrors();\n setNextClicked(true);\n }\n\n const setFocus = (index) => {\n setTimeout(() => {\n if (errors[index].includes('network')) {\n form.current?.mutators?.setFieldTouched('network', true);\n const networkField = document.getElementById(\"network-selection\").parentElement.parentElement;\n return networkField.focus();\n }\n if (errors[index].includes('amount_requested')) {\n form.current?.mutators?.setFieldTouched('paymentAuthForm.amount_requested', true);\n const amountRequested = document.getElementById(\"authorization-request-amount-requested\");\n return amountRequested.focus();\n }\n if (errors[index].includes('paymentAuthForm.service_end')) {\n form.current?.mutators?.setFieldTouched('paymentAuthForm.service_end', true);\n const selectDatesButton = document.getElementById(\"authorization-request-service-dates\");\n return selectDatesButton.focus();\n }\n if (errors[index].includes('description')) {\n form.current?.mutators?.setFieldTouched('description', true);\n const descriptionField = document.getElementById(\"referral-description\");\n return descriptionField.focus();\n }\n if (errors[index].includes('primary_worker')) {\n form.current?.mutators?.setFieldTouched('primaryWorker', true);\n const primaryWorkerField = document.getElementById(\"primary-worker\").parentElement.parentElement;\n return primaryWorkerField.focus();\n }\n }, 100);\n }\n\n const moveToExistingReferral = (index, program) => {\n const { programs } = referrals[selectedIndex];\n\n referrals[selectedIndex] = {\n ...referrals[selectedIndex],\n programs: programs.filter((p) => p.id !== program.id),\n }\n if (isEmpty(referrals[selectedIndex].programs)) {\n referrals[selectedIndex] = null;\n }\n\n referrals[index] = {\n ...referrals[index],\n programs: [...referrals[index].programs, program]\n }\n\n dispatch(setData({\n referrals: compact(referrals),\n }));\n\n const newIndex = selectedIndex < index ? index - 1 : index;\n setSelectedIndex(newIndex);\n }\n\n const moveToNewReferral = (program) => {\n const referral = referrals[selectedIndex];\n referral.programs = referral.programs.filter((p) => p.id !== program.id);\n\n const newReferral = {\n ...referral,\n programs: [program],\n description: '',\n }\n\n const newReferrals = [...referrals, newReferral];\n\n dispatch(setData({\n referrals: newReferrals,\n }));\n\n setSelectedIndex(newReferrals.length - 1);\n }\n\n const removeProgram = (programId, serviceId) => {\n const referral = referrals[selectedIndex];\n const newReferral = removeReferralProgram({ referral, programId, serviceId });\n\n referrals[selectedIndex] = newReferral ? {\n ...newReferral\n } : null;\n\n const newReferrals = compact(referrals);\n const newReferralPrograms = newReferrals.flatMap((r) => r.programs);\n const newSelectedPrograms = intersectionBy(selectedPrograms, newReferralPrograms, 'id');\n\n dispatch(setData({\n referrals: [...newReferrals],\n selectedPrograms: [...newSelectedPrograms],\n }));\n\n if (!referrals[selectedIndex]) {\n setSelectedIndex(0);\n }\n }\n\n const updateAttachments = (attachments) => {\n referrals[selectedIndex] = {\n ...referrals[selectedIndex],\n attachments,\n };\n \n dispatch(setData({\n referrals,\n }));\n };\n\n const assignReferralErrors = useCallback((errors = []) => {\n setErrors((previousErrors) => {\n const modelErrors = [...(mapReferralErrorsToIndex(referrals)[selectedIndex] || []), ...errors];\n const isInvalid = isEmpty([modelErrors]);\n return {\n ...previousErrors,\n ...(!isInvalid && { [selectedIndex]: [...modelErrors] }),\n }\n })\n }, [selectedIndex, referrals]);\n\n const navigateBack = () => CALLBACKS.onNavigateBack ? CALLBACKS.onNavigateBack() : navigate(-1);\n\n const createReferrals = useCreateReferrals();\n const handleSaveDraftReferral = async () => {\n setSaveDraftClicked(true);\n if (isEmptyErrors(errors)) {\n await createReferrals({ draft: true });\n const { onSaveDraftReferral } = CALLBACKS;\n onSaveDraftReferral && onSaveDraftReferral();\n CALLBACKS.notify.success('Draft referral successfully saved');\n } else {\n focusErrors();\n }\n };\n\n const changeWidthReferralCard = () => {\n setExpandReferralsCard(!expandReferralsCard);\n };\n\n if (isLoading) return <Spinner center />;\n\n const referralSubtitle = getReferralSubtitle(referrals, getSelected());\n const unselectedReferralIndexes = referrals.map((_referral, index) => index).filter((index) => index !== selectedIndex);\n const allPrograms = referrals?.flatMap((r) => r.programs);\n const errorMessage = generateErrorMessage(errors);\n const currentReferral = getSelected();\n\n const xlOrLgInvisibleChevron = classNames({\n 'lg:invisible': isEmrSource,\n 'xl:invisible': !isEmrSource,\n });\n\n const xlOrLgSpaceReferralDiv = classNames({\n 'lg:space-x-6': isEmrSource,\n 'lg:space-x-0 xl:space-x-6': !isEmrSource,\n });\n\n return (\n <CreateReferralContainer>\n <div className=\"px-12\">\n <StepHeader header='Prepare Your Referrals'>\n {REFERRAL_BUILDER_DESCRIPTION}\n <button\n className=\"text-current-blue\"\n type=\"button\"\n onClick={onLearnMoreClick}\n >\n Learn more about referrals.\n </button>\n </StepHeader>\n\n <AboutGroupedReferralsModal refModal={refModal} onCloseModal={onCloseGroupedReferralsModal} />\n\n <>\n <NavButtons\n onBackClick={navigateBack}\n onForwardClick={onNextClick}\n onSaveDraftReferral={handleSaveDraftReferral}\n primaryLabel=\"Next\"\n hideForwardButtons={isEmpty(referrals)}\n hideSaveDraftLink={get(fieldsConfig, 'hideSaveDraftLink')}\n hasOffPlatformReferrals={hasOffPlatformReferrals(referrals)}\n />\n\n {\n !isEmpty(allPrograms) ? (\n <div className=\"relative mx-auto responsive-max-width\">\n {\n (errorMessage && (nextClicked || saveDraftClicked)) ? (\n <div className=\"flex justify-end\">\n <Icon icon=\"IconInfoCircle\" color=\"red\" className=\"mr-2 mt-px\" />\n <p className=\"text-red\">{errorMessage}</p>\n </div>\n ) : null\n }\n <div className={`flex justify-end space-x-0 my-5 sm:space-x-0 md:space-x-0 ${xlOrLgSpaceReferralDiv}`}>\n <div id=\"referrals-card\"\n className={\"bg-white border border-solid border-blue-border rounded \" +\n (expandReferralsCard ? 'absolute inset-y-0 left-0 z-20 md:w-3/6 lg:w-3/6': 'md:w-2/6 lg:w-2/6')}>\n <div className=\"p-5 h-full\">\n <div className=\"flex justify-between relative\">\n <div>\n <h2 className=\"text-xl font-black mb-5\">\n Referrals\n </h2>\n </div>\n <div className={xlOrLgInvisibleChevron}>\n <Icon icon={expandReferralsCard ? \"V2ChevronLeft\" : \"V2ChevronRight\"} className=\"w-6 h-6\" onClick={() => changeWidthReferralCard()}/>\n </div>\n </div>\n {referrals?.map((referral, index) => (\n <div className=\"mb-5\" key={`referral-card-${index}-wrapper`}>\n <ReferralCard\n referral={referral}\n index={index}\n selectedIndex={selectedIndex}\n onClick={onReferralCardClick}\n errors={errors[index]}\n expandReferralsCard={expandReferralsCard}\n isEmrSource={isEmrSource}\n />\n </div>\n ))}\n </div>\n </div>\n {\n !isEmpty(get(currentReferral, 'programs', [])) ? (\n <ReferralBuilderForm\n currentEmployee={currentEmployee}\n currentProvider={currentProvider}\n referral={currentReferral}\n referrals={referrals}\n referralSubtitle={referralSubtitle}\n index={selectedIndex}\n onChange={saveValuesOnChange}\n unselected={unselectedReferralIndexes}\n removeProgram={removeProgram}\n onSetForm={(newForm) => { form.current = newForm; }}\n moveToNewReferral={moveToNewReferral}\n moveToExistingReferral={moveToExistingReferral}\n updateAttachments={updateAttachments}\n source={source}\n networksUnlistedProgram={networksUnlistedProgram}\n assignReferralErrors={assignReferralErrors}\n />\n ) : null\n }\n </div>\n </div>\n ) : (\n <NoReferralsDisplay onClick={navigateBack} />\n )\n }\n\n <NavButtons\n onBackClick={navigateBack}\n onForwardClick={onNextClick}\n onSaveDraftReferral={handleSaveDraftReferral}\n primaryLabel=\"Next\"\n hideForwardButtons={isEmpty(referrals)}\n hideSaveDraftLink={get(fieldsConfig, 'hideSaveDraftLink')}\n hasOffPlatformReferrals={hasOffPlatformReferrals(referrals)}\n />\n </>\n </div>\n </CreateReferralContainer>\n )\n}\n"],"mappings":"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"}
@@ -38,7 +38,6 @@ var _ReferralProgramCard = _interopRequireDefault(require("./ReferralProgramCard
38
38
  var _FileUpload = require("../../common/form/FileUploadV2/FileUpload");
39
39
  var _utils = require("./utils");
40
40
  var _fetchPrimaryWorkers = _interopRequireDefault(require("../../actions/Referral/fetchPrimaryWorkers"));
41
- var _ApiHooks = require("../../api/ApiHooks");
42
41
  var _useDebounce = require("../../utils/useDebounce");
43
42
  var _useFeatureFlag = require("../../utils/useFeatureFlag");
44
43
  var _cannotMoveToReferralReasons = require("../../actions/Referral/cannotMoveToReferralReasons");
@@ -49,7 +48,7 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
49
48
  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; }
50
49
  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; }
51
50
  function ReferralBuilderForm(_ref) {
52
- var _context, _context2, _context3, _context4, _fspData$data;
51
+ var _context, _context2, _context3, _context4;
53
52
  var currentEmployee = _ref.currentEmployee,
54
53
  currentProvider = _ref.currentProvider,
55
54
  referral = _ref.referral,
@@ -64,7 +63,8 @@ function ReferralBuilderForm(_ref) {
64
63
  moveToExistingReferral = _ref.moveToExistingReferral,
65
64
  updateAttachments = _ref.updateAttachments,
66
65
  source = _ref.source,
67
- networksUnlistedProgram = _ref.networksUnlistedProgram;
66
+ networksUnlistedProgram = _ref.networksUnlistedProgram,
67
+ assignReferralErrors = _ref.assignReferralErrors;
68
68
  var service = referral.service,
69
69
  programs = referral.programs,
70
70
  primaryWorker = referral.primaryWorker,
@@ -168,14 +168,7 @@ function ReferralBuilderForm(_ref) {
168
168
  updateAttachments(uploadedFiles);
169
169
  }
170
170
  }, [uploadedFiles]);
171
- var feeScheduleProgramID = (0, _lodash.get)(programs, '[0].fee_schedule_program.id');
172
- var _useFindRecord = (0, _ApiHooks.useFindRecord)('fee_schedule_program', feeScheduleProgramID, {
173
- queryConfig: {
174
- enabled: !!feeScheduleProgramID
175
- }
176
- }),
177
- fspData = _useFindRecord.data;
178
- var feeScheduleProgram = fspData === null || fspData === void 0 || (_fspData$data = fspData.data) === null || _fspData$data === void 0 ? void 0 : _fspData$data.data;
171
+ var feeScheduleProgram = (0, _lodash.get)(programs, '[0].fee_schedule_program');
179
172
  return /*#__PURE__*/_react.default.createElement(_reactFinalForm.Form, {
180
173
  initialValues: initialValues,
181
174
  onSubmit: function onSubmit() {},
@@ -279,7 +272,8 @@ function ReferralBuilderForm(_ref) {
279
272
  }, params));
280
273
  })) : null, isAuthorizationWorkflowEnabled && (feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.authorization_required) && /*#__PURE__*/_react.default.createElement(_AuthorizationSubform.default, {
281
274
  feeScheduleProgram: feeScheduleProgram,
282
- formValues: values
275
+ formValues: values,
276
+ assignReferralErrors: assignReferralErrors
283
277
  }), /*#__PURE__*/_react.default.createElement(_reactFinalForm.Field, {
284
278
  name: "description",
285
279
  required: true,
@@ -350,7 +344,8 @@ ReferralBuilderForm.propTypes = {
350
344
  removeProgram: _propTypes.PropTypes.func.isRequired,
351
345
  moveToNewReferral: _propTypes.PropTypes.func.isRequired,
352
346
  moveToExistingReferral: _propTypes.PropTypes.func.isRequired,
353
- onSetForm: _propTypes.PropTypes.func.isRequired
347
+ onSetForm: _propTypes.PropTypes.func.isRequired,
348
+ assignReferralErrors: _propTypes.PropTypes.func.isRequired
354
349
  };
355
350
  ReferralBuilderForm.defaultProps = {
356
351
  referralSubtitle: '',