@unite-us/app-create-referral 0.15.57 → 0.15.58-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (292) hide show
  1. package/dist/AppReferrals.js +45 -45
  2. package/dist/AppReferrals.js.map +1 -1
  3. package/dist/AppReferrals.test.js +34 -71
  4. package/dist/AppReferrals.test.js.map +1 -1
  5. package/dist/__testUtils__/mockData/components/mockAppReferrals.js +13 -12
  6. package/dist/__testUtils__/mockData/components/mockAppReferrals.js.map +1 -1
  7. package/dist/__testUtils__/mockData/mockCases.js +1 -1
  8. package/dist/__testUtils__/mockData/mockCases.js.map +1 -1
  9. package/dist/__testUtils__/mockData/mockClinicalModifications.js +3 -3
  10. package/dist/__testUtils__/mockData/mockClinicalModifications.js.map +1 -1
  11. package/dist/__testUtils__/mockData/mockEmployees.js +1 -1
  12. package/dist/__testUtils__/mockData/mockEmployees.js.map +1 -1
  13. package/dist/__testUtils__/mockData/mockEnums.js +1 -1
  14. package/dist/__testUtils__/mockData/mockEnums.js.map +1 -1
  15. package/dist/__testUtils__/mockData/mockFeeSchedulePrograms.js +1 -1
  16. package/dist/__testUtils__/mockData/mockFeeSchedulePrograms.js.map +1 -1
  17. package/dist/__testUtils__/mockData/mockFiles.js +1 -1
  18. package/dist/__testUtils__/mockData/mockFiles.js.map +1 -1
  19. package/dist/__testUtils__/mockData/mockFormSubmissions.js +1 -1
  20. package/dist/__testUtils__/mockData/mockFormSubmissions.js.map +1 -1
  21. package/dist/__testUtils__/mockData/mockFormUsages.js +1 -1
  22. package/dist/__testUtils__/mockData/mockFormUsages.js.map +1 -1
  23. package/dist/__testUtils__/mockData/mockForms.js +1 -1
  24. package/dist/__testUtils__/mockData/mockForms.js.map +1 -1
  25. package/dist/__testUtils__/mockData/mockInsurances.js +1 -1
  26. package/dist/__testUtils__/mockData/mockInsurances.js.map +1 -1
  27. package/dist/__testUtils__/mockData/mockNetworks.js +1 -1
  28. package/dist/__testUtils__/mockData/mockNetworks.js.map +1 -1
  29. package/dist/__testUtils__/mockData/mockPeople.js +1 -1
  30. package/dist/__testUtils__/mockData/mockPeople.js.map +1 -1
  31. package/dist/__testUtils__/mockData/mockPrograms.js +31 -31
  32. package/dist/__testUtils__/mockData/mockPrograms.js.map +1 -1
  33. package/dist/__testUtils__/mockData/mockProviders.js +21 -21
  34. package/dist/__testUtils__/mockData/mockProviders.js.map +1 -1
  35. package/dist/__testUtils__/mockData/mockReferrals.js +1 -1
  36. package/dist/__testUtils__/mockData/mockReferrals.js.map +1 -1
  37. package/dist/__testUtils__/mockData/mockServiceAuthorizations.js +1 -1
  38. package/dist/__testUtils__/mockData/mockServiceAuthorizations.js.map +1 -1
  39. package/dist/__testUtils__/mockData/mockServices.js +1 -1
  40. package/dist/__testUtils__/mockData/mockServices.js.map +1 -1
  41. package/dist/__testUtils__/mockData/mockUnlistedPrograms.js +1 -1
  42. package/dist/__testUtils__/mockData/mockUnlistedPrograms.js.map +1 -1
  43. package/dist/__testUtils__/mockData/utils.js +218 -282
  44. package/dist/__testUtils__/mockData/utils.js.map +1 -1
  45. package/dist/__testUtils__/mockServer/handlers.js +80 -82
  46. package/dist/__testUtils__/mockServer/handlers.js.map +1 -1
  47. package/dist/__testUtils__/mockServer/server.js +7 -13
  48. package/dist/__testUtils__/mockServer/server.js.map +1 -1
  49. package/dist/__testUtils__/test-utils.js +22 -18
  50. package/dist/__testUtils__/test-utils.js.map +1 -1
  51. package/dist/actions/Document/Contact/Group/fetchCaseDocuments.js +10 -41
  52. package/dist/actions/Document/Contact/Group/fetchCaseDocuments.js.map +1 -1
  53. package/dist/actions/Document/Contact/Group/fetchContactDocuments.js +10 -41
  54. package/dist/actions/Document/Contact/Group/fetchContactDocuments.js.map +1 -1
  55. package/dist/actions/Document/Contact/Group/fileUploadUtils.js +8 -10
  56. package/dist/actions/Document/Contact/Group/fileUploadUtils.js.map +1 -1
  57. package/dist/actions/Group/fetchCoreGroupForms.js +46 -97
  58. package/dist/actions/Group/fetchCoreGroupForms.js.map +1 -1
  59. package/dist/actions/Referral/cannotMoveToReferralReasons.js +23 -21
  60. package/dist/actions/Referral/cannotMoveToReferralReasons.js.map +1 -1
  61. package/dist/actions/Referral/fetchCoreServices.js +70 -169
  62. package/dist/actions/Referral/fetchCoreServices.js.map +1 -1
  63. package/dist/actions/Referral/fetchNetworks.js +11 -44
  64. package/dist/actions/Referral/fetchNetworks.js.map +1 -1
  65. package/dist/actions/Referral/fetchPrimaryWorkers.js +51 -84
  66. package/dist/actions/Referral/fetchPrimaryWorkers.js.map +1 -1
  67. package/dist/actions/Referral/removeReferralProgram.js +10 -15
  68. package/dist/actions/Referral/removeReferralProgram.js.map +1 -1
  69. package/dist/api/ApiHooks.js +40 -39
  70. package/dist/api/ApiHooks.js.map +1 -1
  71. package/dist/api/config.js +20 -23
  72. package/dist/api/config.js.map +1 -1
  73. package/dist/common/form/CurrencyField/index.js +22 -21
  74. package/dist/common/form/CurrencyField/index.js.map +1 -1
  75. package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js +51 -48
  76. package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js.map +1 -1
  77. package/dist/common/form/DocumentUploader/components/DocumentsListView.js +14 -12
  78. package/dist/common/form/DocumentUploader/components/DocumentsListView.js.map +1 -1
  79. package/dist/common/form/DocumentUploader/components/ListViewDocument.js +21 -17
  80. package/dist/common/form/DocumentUploader/components/ListViewDocument.js.map +1 -1
  81. package/dist/common/form/ErrorMessage/index.js +17 -9
  82. package/dist/common/form/ErrorMessage/index.js.map +1 -1
  83. package/dist/common/form/FileUploadV2/FileUpload.js +159 -137
  84. package/dist/common/form/FileUploadV2/FileUpload.js.map +1 -1
  85. package/dist/common/form/FileUploadV2/components/FilePreview.js +8 -5
  86. package/dist/common/form/FileUploadV2/components/FilePreview.js.map +1 -1
  87. package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js +26 -21
  88. package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js.map +1 -1
  89. package/dist/common/form/FormForm/index.js +143 -194
  90. package/dist/common/form/FormForm/index.js.map +1 -1
  91. package/dist/common/utils/utils.js +3 -3
  92. package/dist/common/utils/utils.js.map +1 -1
  93. package/dist/components/Card.js +12 -8
  94. package/dist/components/Card.js.map +1 -1
  95. package/dist/components/CreateReferralContainer.js +21 -13
  96. package/dist/components/CreateReferralContainer.js.map +1 -1
  97. package/dist/components/DollarAmount.js +18 -14
  98. package/dist/components/DollarAmount.js.map +1 -1
  99. package/dist/components/ExpandableButton.js +21 -16
  100. package/dist/components/ExpandableButton.js.map +1 -1
  101. package/dist/components/NavButtons.js +57 -51
  102. package/dist/components/NavButtons.js.map +1 -1
  103. package/dist/components/ReferralStepper.js +44 -41
  104. package/dist/components/ReferralStepper.js.map +1 -1
  105. package/dist/components/SearchableField.js +121 -125
  106. package/dist/components/SearchableField.js.map +1 -1
  107. package/dist/components/StepHeader.js +25 -16
  108. package/dist/components/StepHeader.js.map +1 -1
  109. package/dist/components/Stepper.js +55 -51
  110. package/dist/components/Stepper.js.map +1 -1
  111. package/dist/components/modal/Dialog.js +141 -170
  112. package/dist/components/modal/Dialog.js.map +1 -1
  113. package/dist/components/modal/Overlay.js +2 -1
  114. package/dist/components/modal/Overlay.js.map +1 -1
  115. package/dist/components/service_authorization/AuthorizationSpendCard.js +72 -60
  116. package/dist/components/service_authorization/AuthorizationSpendCard.js.map +1 -1
  117. package/dist/components/service_authorization/CapsInfo.js +143 -120
  118. package/dist/components/service_authorization/CapsInfo.js.map +1 -1
  119. package/dist/components/service_authorization/CaseStatus.js +18 -14
  120. package/dist/components/service_authorization/CaseStatus.js.map +1 -1
  121. package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js +121 -96
  122. package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js.map +1 -1
  123. package/dist/components/service_authorization/ReferralAuthSpendExpandable.js +43 -43
  124. package/dist/components/service_authorization/ReferralAuthSpendExpandable.js.map +1 -1
  125. package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js +82 -65
  126. package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js.map +1 -1
  127. package/dist/components/service_authorization/Spend.js +10 -5
  128. package/dist/components/service_authorization/Spend.js.map +1 -1
  129. package/dist/components/service_authorization/formatShortDate.js +6 -6
  130. package/dist/components/service_authorization/formatShortDate.js.map +1 -1
  131. package/dist/components/service_authorization/messageConstants.js +2 -2
  132. package/dist/components/service_authorization/messageConstants.js.map +1 -1
  133. package/dist/components/spinners/OverlaySpinner/OverlaySpinner.js +34 -23
  134. package/dist/components/spinners/OverlaySpinner/OverlaySpinner.js.map +1 -1
  135. package/dist/components/spinners/Spinner/Spinner.js +33 -27
  136. package/dist/components/spinners/Spinner/Spinner.js.map +1 -1
  137. package/dist/constants/enums.js +1 -1
  138. package/dist/constants/enums.js.map +1 -1
  139. package/dist/constants/eventConstants.js +48 -48
  140. package/dist/constants/eventConstants.js.map +1 -1
  141. package/dist/constants/findEnumDisplayName.js +3 -3
  142. package/dist/constants/findEnumDisplayName.js.map +1 -1
  143. package/dist/constants.js +6 -6
  144. package/dist/constants.js.map +1 -1
  145. package/dist/context/AppCreateReferralProvider.js +25 -36
  146. package/dist/context/AppCreateReferralProvider.js.map +1 -1
  147. package/dist/context/state.js +2 -5
  148. package/dist/context/state.js.map +1 -1
  149. package/dist/context/withAppCreateReferralContext.js +9 -5
  150. package/dist/context/withAppCreateReferralContext.js.map +1 -1
  151. package/dist/hooks/__tests__/useCreateReferrals.test.js +456 -560
  152. package/dist/hooks/__tests__/useCreateReferrals.test.js.map +1 -1
  153. package/dist/hooks/sendReferral.js +155 -339
  154. package/dist/hooks/sendReferral.js.map +1 -1
  155. package/dist/hooks/useClinicalModificationOptions.js +24 -34
  156. package/dist/hooks/useClinicalModificationOptions.js.map +1 -1
  157. package/dist/hooks/useCreateReferrals.js +463 -722
  158. package/dist/hooks/useCreateReferrals.js.map +1 -1
  159. package/dist/hooks/useCreateResourceList.js +56 -76
  160. package/dist/hooks/useCreateResourceList.js.map +1 -1
  161. package/dist/hooks/useCreateShareEvent.js +18 -42
  162. package/dist/hooks/useCreateShareEvent.js.map +1 -1
  163. package/dist/hooks/useForwardReferral.js +78 -118
  164. package/dist/hooks/useForwardReferral.js.map +1 -1
  165. package/dist/hooks/usePerson.js +21 -49
  166. package/dist/hooks/usePerson.js.map +1 -1
  167. package/dist/hooks/useUpdateResourceList.js +34 -28
  168. package/dist/hooks/useUpdateResourceList.js.map +1 -1
  169. package/dist/pages/builder/AboutGroupedReferralsModal.js +48 -27
  170. package/dist/pages/builder/AboutGroupedReferralsModal.js.map +1 -1
  171. package/dist/pages/builder/AuthorizationSubform.js +143 -131
  172. package/dist/pages/builder/AuthorizationSubform.js.map +1 -1
  173. package/dist/pages/builder/ChooseOneServiceTypeModal.js +56 -53
  174. package/dist/pages/builder/ChooseOneServiceTypeModal.js.map +1 -1
  175. package/dist/pages/builder/DetailsDrawer.js +74 -72
  176. package/dist/pages/builder/DetailsDrawer.js.map +1 -1
  177. package/dist/pages/builder/LineItem.js +28 -25
  178. package/dist/pages/builder/LineItem.js.map +1 -1
  179. package/dist/pages/builder/NoReferralsDisplay.js +41 -29
  180. package/dist/pages/builder/NoReferralsDisplay.js.map +1 -1
  181. package/dist/pages/builder/ProgramHeader.js +33 -20
  182. package/dist/pages/builder/ProgramHeader.js.map +1 -1
  183. package/dist/pages/builder/ProgramMenu.js +19 -18
  184. package/dist/pages/builder/ProgramMenu.js.map +1 -1
  185. package/dist/pages/builder/ReferralBuilder.js +341 -443
  186. package/dist/pages/builder/ReferralBuilder.js.map +1 -1
  187. package/dist/pages/builder/ReferralBuilderForm.js +323 -392
  188. package/dist/pages/builder/ReferralBuilderForm.js.map +1 -1
  189. package/dist/pages/builder/ReferralCard.js +125 -99
  190. package/dist/pages/builder/ReferralCard.js.map +1 -1
  191. package/dist/pages/builder/ReferralProgramCard.js +109 -160
  192. package/dist/pages/builder/ReferralProgramCard.js.map +1 -1
  193. package/dist/pages/builder/ReferralProgramMenu.js +102 -116
  194. package/dist/pages/builder/ReferralProgramMenu.js.map +1 -1
  195. package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js +99 -246
  196. package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js.map +1 -1
  197. package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js +48 -86
  198. package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js.map +1 -1
  199. package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js +74 -133
  200. package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js.map +1 -1
  201. package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js +674 -1269
  202. package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js.map +1 -1
  203. package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js +305 -575
  204. package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js.map +1 -1
  205. package/dist/pages/builder/__tests__/ReferralBuilder.test.js +14 -45
  206. package/dist/pages/builder/__tests__/ReferralBuilder.test.js.map +1 -1
  207. package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js +407 -815
  208. package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js.map +1 -1
  209. package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js +139 -254
  210. package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js.map +1 -1
  211. package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js +262 -518
  212. package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js.map +1 -1
  213. package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js +273 -504
  214. package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js.map +1 -1
  215. package/dist/pages/builder/buildDraftState.js +21 -21
  216. package/dist/pages/builder/buildDraftState.js.map +1 -1
  217. package/dist/pages/builder/buildGroupedReferrals.js +80 -113
  218. package/dist/pages/builder/buildGroupedReferrals.js.map +1 -1
  219. package/dist/pages/builder/constants.js +12 -12
  220. package/dist/pages/builder/constants.js.map +1 -1
  221. package/dist/pages/builder/formatProgramDetail.js +152 -180
  222. package/dist/pages/builder/formatProgramDetail.js.map +1 -1
  223. package/dist/pages/builder/useBuildReferrals.js +95 -163
  224. package/dist/pages/builder/useBuildReferrals.js.map +1 -1
  225. package/dist/pages/builder/utils.js +84 -133
  226. package/dist/pages/builder/utils.js.map +1 -1
  227. package/dist/pages/review/DeleteReferralModal.js +45 -31
  228. package/dist/pages/review/DeleteReferralModal.js.map +1 -1
  229. package/dist/pages/review/DropdownMultiplesReferrals.js +75 -92
  230. package/dist/pages/review/DropdownMultiplesReferrals.js.map +1 -1
  231. package/dist/pages/review/ReferralsSent.js +200 -239
  232. package/dist/pages/review/ReferralsSent.js.map +1 -1
  233. package/dist/pages/review/Review.js +451 -554
  234. package/dist/pages/review/Review.js.map +1 -1
  235. package/dist/pages/review/__tests__/CallbackNotifications.test.js +46 -66
  236. package/dist/pages/review/__tests__/CallbackNotifications.test.js.map +1 -1
  237. package/dist/pages/review/__tests__/ReferralsSent.test.js +189 -349
  238. package/dist/pages/review/__tests__/ReferralsSent.test.js.map +1 -1
  239. package/dist/pages/review/__tests__/Review.test.js +380 -599
  240. package/dist/pages/review/__tests__/Review.test.js.map +1 -1
  241. package/dist/pages/review/__tests__/data.js +5 -5
  242. package/dist/pages/review/__tests__/data.js.map +1 -1
  243. package/dist/pages/review/constants.js +5 -5
  244. package/dist/pages/review/constants.js.map +1 -1
  245. package/dist/pages/supporting-info/SupportingInfo.js +123 -168
  246. package/dist/pages/supporting-info/SupportingInfo.js.map +1 -1
  247. package/dist/pages/supporting-info/__tests__/SupportingInfo.test.js +85 -164
  248. package/dist/pages/supporting-info/__tests__/SupportingInfo.test.js.map +1 -1
  249. package/dist/pages/supporting-info/__tests__/data.js +1 -1
  250. package/dist/pages/supporting-info/__tests__/data.js.map +1 -1
  251. package/dist/reportWebVitals.js +9 -7
  252. package/dist/reportWebVitals.js.map +1 -1
  253. package/dist/setupTests.js +8 -30
  254. package/dist/setupTests.js.map +1 -1
  255. package/dist/utils/__tests__/canChangeHoldReason.test.js +23 -23
  256. package/dist/utils/__tests__/canChangeHoldReason.test.js.map +1 -1
  257. package/dist/utils/__tests__/checkRoles.test.js +10 -10
  258. package/dist/utils/__tests__/checkRoles.test.js.map +1 -1
  259. package/dist/utils/canAccept.js +14 -9
  260. package/dist/utils/canAccept.js.map +1 -1
  261. package/dist/utils/canChangeHoldReason.js +16 -11
  262. package/dist/utils/canChangeHoldReason.js.map +1 -1
  263. package/dist/utils/canHoldForReview.js +13 -8
  264. package/dist/utils/canHoldForReview.js.map +1 -1
  265. package/dist/utils/canReject.js +21 -14
  266. package/dist/utils/canReject.js.map +1 -1
  267. package/dist/utils/checkRoles.js +10 -10
  268. package/dist/utils/checkRoles.js.map +1 -1
  269. package/dist/utils/getProgramServicesPayload.js +20 -20
  270. package/dist/utils/getProgramServicesPayload.js.map +1 -1
  271. package/dist/utils/hasUserRole.js +8 -8
  272. package/dist/utils/hasUserRole.js.map +1 -1
  273. package/dist/utils/isReferralForwarded.js +4 -2
  274. package/dist/utils/isReferralForwarded.js.map +1 -1
  275. package/dist/utils/referralToConsent.js +14 -19
  276. package/dist/utils/referralToConsent.js.map +1 -1
  277. package/dist/utils/useDebounce.js +7 -18
  278. package/dist/utils/useDebounce.js.map +1 -1
  279. package/dist/utils/useFeatureFlag.js +1 -1
  280. package/dist/utils/useFeatureFlag.js.map +1 -1
  281. package/dist/utils/validateCostAmount.js +4 -4
  282. package/dist/utils/validateCostAmount.js.map +1 -1
  283. package/dist/utils/validateUnitAmount.js +4 -4
  284. package/dist/utils/validateUnitAmount.js.map +1 -1
  285. package/package.json +64 -34
  286. package/.github/CODEOWNERS +0 -3
  287. package/.github/pull_request_template.md +0 -25
  288. package/.github/workflows/quality.yml +0 -44
  289. package/.github/workflows/semantic-release.yml +0 -26
  290. package/.nvmrc +0 -1
  291. package/babel.config.js +0 -11
  292. package/config-overrides.js +0 -8
@@ -1,353 +1,169 @@
1
- var _excluded = ["state"];
2
- function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
3
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
5
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
6
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
7
- function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
8
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
9
- function _regeneratorRuntime() { "use strict"; var r = _regenerator(), e = r.m(_regeneratorRuntime), t = (Object.getPrototypeOf ? Object.getPrototypeOf(e) : e.__proto__).constructor; function n(r) { var e = "function" == typeof r && r.constructor; return !!e && (e === t || "GeneratorFunction" === (e.displayName || e.name)); } var o = { throw: 1, return: 2, break: 3, continue: 3 }; function a(r) { var e, t; return function (n) { e || (e = { stop: function stop() { return t(n.a, 2); }, catch: function _catch() { return n.v; }, abrupt: function abrupt(r, e) { return t(n.a, o[r], e); }, delegateYield: function delegateYield(r, o, a) { return e.resultName = o, t(n.d, _regeneratorValues(r), a); }, finish: function finish(r) { return t(n.f, r); } }, t = function t(r, _t, o) { n.p = e.prev, n.n = e.next; try { return r(_t, o); } finally { e.next = n.n; } }), e.resultName && (e[e.resultName] = n.v, e.resultName = void 0), e.sent = n.v, e.next = n.n; try { return r.call(this, e); } finally { n.p = e.prev, n.n = e.next; } }; } return (_regeneratorRuntime = function _regeneratorRuntime() { return { wrap: function wrap(e, t, n, o) { return r.w(a(e), t, n, o && o.reverse()); }, isGeneratorFunction: n, mark: r.m, awrap: function awrap(r, e) { return new _OverloadYield(r, e); }, AsyncIterator: _regeneratorAsyncIterator, async: function async(r, e, t, o, u) { return (n(e) ? _regeneratorAsyncGen : _regeneratorAsync)(a(r), e, t, o, u); }, keys: _regeneratorKeys, values: _regeneratorValues }; })(); }
10
- function _regeneratorValues(e) { if (null != e) { var t = e["function" == typeof Symbol && Symbol.iterator || "@@iterator"], r = 0; if (t) return t.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) return { next: function next() { return e && r >= e.length && (e = void 0), { value: e && e[r++], done: !e }; } }; } throw new TypeError(_typeof(e) + " is not iterable"); }
11
- function _regeneratorKeys(e) { var n = Object(e), r = []; for (var t in n) r.unshift(t); return function e() { for (; r.length;) if ((t = r.pop()) in n) return e.value = t, e.done = !1, e; return e.done = !0, e; }; }
12
- function _regeneratorAsync(n, e, r, t, o) { var a = _regeneratorAsyncGen(n, e, r, t, o); return a.next().then(function (n) { return n.done ? n.value : a.next(); }); }
13
- function _regeneratorAsyncGen(r, e, t, o, n) { return new _regeneratorAsyncIterator(_regenerator().w(r, e, t, o), n || Promise); }
14
- function _regeneratorAsyncIterator(t, e) { function n(r, o, i, f) { try { var c = t[r](o), u = c.value; return u instanceof _OverloadYield ? e.resolve(u.v).then(function (t) { n("next", t, i, f); }, function (t) { n("throw", t, i, f); }) : e.resolve(u).then(function (t) { c.value = t, i(c); }, function (t) { return n("throw", t, i, f); }); } catch (t) { f(t); } } var r; this.next || (_regeneratorDefine2(_regeneratorAsyncIterator.prototype), _regeneratorDefine2(_regeneratorAsyncIterator.prototype, "function" == typeof Symbol && Symbol.asyncIterator || "@asyncIterator", function () { return this; })), _regeneratorDefine2(this, "_invoke", function (t, o, i) { function f() { return new e(function (e, r) { n(t, i, e, r); }); } return r = r ? r.then(f, f) : f(); }, !0); }
15
- function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (c = i[4] || 3, u = i[5] === e ? i[3] : i[5], i[4] = 3, i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i.return) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
16
- function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); }
17
- function _OverloadYield(e, d) { this.v = e, this.k = d; }
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ const _excluded = ["state"];
18
4
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
19
5
  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) { _defineProperty(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; }
20
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
21
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
22
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
23
- function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
24
- function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
25
- function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
26
- function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
27
6
  import { isError } from 'lodash';
28
7
  import { coreApi } from '../api/config';
29
8
  import { formatShortDate2FromTimestamp } from '../components/service_authorization/formatShortDate';
30
- var updateCase = /*#__PURE__*/function () {
31
- var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(kase) {
32
- var options,
9
+ const updateCase = async function (kase) {
10
+ let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
11
+ try {
12
+ const {
13
+ state
14
+ } = options,
15
+ otherOptions = _objectWithoutProperties(options, _excluded);
16
+ const caseData = _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, kase.service_type_id && {
17
+ service: kase.service_type_id
18
+ }), kase.description && {
19
+ description: kase.description
20
+ }), kase.client_need_id && {
21
+ client_need_id: kase.client_need_id
22
+ }), kase.opened_date && {
23
+ opened_date: formatShortDate2FromTimestamp(kase.opened_date)
24
+ }), state && {
33
25
  state,
34
- otherOptions,
35
- caseData,
36
- _args = arguments;
37
- return _regeneratorRuntime().wrap(function _callee$(_context) {
38
- while (1) switch (_context.prev = _context.next) {
39
- case 0:
40
- options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};
41
- _context.prev = 1;
42
- state = options.state, otherOptions = _objectWithoutProperties(options, _excluded);
43
- caseData = _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, kase.service_type_id && {
44
- service: kase.service_type_id
45
- }), kase.description && {
46
- description: kase.description
47
- }), kase.client_need_id && {
48
- client_need_id: kase.client_need_id
49
- }), kase.opened_date && {
50
- opened_date: formatShortDate2FromTimestamp(kase.opened_date)
51
- }), state && {
52
- state: state,
53
- primary_worker: state !== 'draft' ? kase.primary_worker_id : null
54
- }), otherOptions);
55
- _context.next = 6;
56
- return coreApi.updateRecord('case', kase.id, caseData);
57
- case 6:
58
- return _context.abrupt("return", _context.sent);
59
- case 9:
60
- _context.prev = 9;
61
- _context.t0 = _context["catch"](1);
62
- console.error('Error updating case attributes:', _context.t0);
63
- return _context.abrupt("return", false);
64
- case 13:
65
- case "end":
66
- return _context.stop();
67
- }
68
- }, _callee, null, [[1, 9]]);
69
- }));
70
- return function updateCase(_x) {
71
- return _ref.apply(this, arguments);
72
- };
73
- }();
74
- var acceptReferral = /*#__PURE__*/function () {
75
- var _ref2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
76
- var referral,
77
- _args2 = arguments;
78
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
79
- while (1) switch (_context2.prev = _context2.next) {
80
- case 0:
81
- referral = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : {};
82
- _context2.prev = 1;
83
- _context2.next = 4;
84
- return coreApi.updateRecord('referral', referral.id, {
85
- state: 'accepted'
86
- });
87
- case 4:
88
- return _context2.abrupt("return", _context2.sent);
89
- case 7:
90
- _context2.prev = 7;
91
- _context2.t0 = _context2["catch"](1);
92
- console.error('Error accepting referral:', _context2.t0);
93
- return _context2.abrupt("return", false);
94
- case 11:
95
- case "end":
96
- return _context2.stop();
97
- }
98
- }, _callee2, null, [[1, 7]]);
99
- }));
100
- return function acceptReferral() {
101
- return _ref2.apply(this, arguments);
102
- };
103
- }();
104
- export var isHttpSuccess = function isHttpSuccess(response) {
105
- var codeNumber = response;
106
- if (_typeof(codeNumber) === 'object') {
26
+ primary_worker: state !== 'draft' ? kase.primary_worker_id : null
27
+ }), otherOptions);
28
+ return await coreApi.updateRecord('case', kase.id, caseData);
29
+ } catch (error) {
30
+ console.error('Error updating case attributes:', error);
31
+ return false;
32
+ }
33
+ };
34
+ const acceptReferral = async function () {
35
+ let referral = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
36
+ try {
37
+ return await coreApi.updateRecord('referral', referral.id, {
38
+ state: 'accepted'
39
+ });
40
+ } catch (error) {
41
+ console.error('Error accepting referral:', error);
42
+ return false;
43
+ }
44
+ };
45
+ export const isHttpSuccess = response => {
46
+ let codeNumber = response;
47
+ if (typeof codeNumber === 'object') {
107
48
  codeNumber = response.status;
108
49
  }
109
50
  return isError(response) || codeNumber > 199 && codeNumber < 300;
110
51
  };
111
- export var archiveReferral = /*#__PURE__*/function () {
112
- var _ref3 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee3(referralId) {
113
- var response;
114
- return _regeneratorRuntime().wrap(function _callee3$(_context3) {
115
- while (1) switch (_context3.prev = _context3.next) {
116
- case 0:
117
- _context3.prev = 0;
118
- _context3.next = 3;
119
- return coreApi.updateRecord('referral', referralId, {
120
- flagged_for_sender: false
121
- });
122
- case 3:
123
- response = _context3.sent;
124
- if (!(!response || !isHttpSuccess(response.status))) {
125
- _context3.next = 6;
126
- break;
127
- }
128
- return _context3.abrupt("return", false);
129
- case 6:
130
- return _context3.abrupt("return", true);
131
- case 9:
132
- _context3.prev = 9;
133
- _context3.t0 = _context3["catch"](0);
134
- console.error('Error archiveReferral:', _context3.t0);
135
- return _context3.abrupt("return", false);
136
- case 13:
137
- case "end":
138
- return _context3.stop();
139
- }
140
- }, _callee3, null, [[0, 9]]);
141
- }));
142
- return function archiveReferral(_x2) {
143
- return _ref3.apply(this, arguments);
144
- };
145
- }();
146
- var createOONReferral = /*#__PURE__*/function () {
147
- var _ref4 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
148
- var referral,
149
- kase,
150
- result,
151
- oonProvider,
152
- unlistedProgramNote,
153
- newReferral,
154
- _args4 = arguments;
155
- return _regeneratorRuntime().wrap(function _callee4$(_context4) {
156
- while (1) switch (_context4.prev = _context4.next) {
157
- case 0:
158
- referral = _args4.length > 0 && _args4[0] !== undefined ? _args4[0] : {};
159
- kase = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : {};
160
- _context4.prev = 2;
161
- oonProvider = referral.out_of_network_providers[0];
162
- if (!(oonProvider.provider_type === "CUSTOM")) {
163
- _context4.next = 11;
164
- break;
165
- }
166
- unlistedProgramNote = {
167
- subjectType: 'case',
168
- subject: referral.case_id,
169
- employee: kase.primary_worker_id,
170
- visibility: 'public',
171
- category: 'external_provider',
172
- text: "Referred off platform to ".concat(oonProvider.custom_name)
173
- };
174
- _context4.next = 8;
175
- return coreApi.createRecord('note', unlistedProgramNote);
176
- case 8:
177
- result = _context4.sent;
178
- _context4.next = 15;
179
- break;
180
- case 11:
181
- newReferral = _objectSpread({
182
- is_grouped: referral.is_grouped,
183
- state: 'off_platform',
184
- case: referral.case_id,
185
- sending_provider: referral.referred_by_group_id,
186
- sending_network: referral.referred_by_network_id,
187
- receiving_network: referral.referred_to_network_id || referral.referred_by_network_id,
188
- receiving_provider: oonProvider.provider_id
189
- }, oonProvider.program_id ? {
190
- receiving_program: oonProvider.program_id
191
- } : null);
192
- _context4.next = 14;
193
- return coreApi.createRecord('referral', newReferral);
194
- case 14:
195
- result = _context4.sent;
196
- case 15:
197
- if (!['recalled', 'declined'].includes(referral.state)) {
198
- _context4.next = 18;
199
- break;
200
- }
201
- _context4.next = 18;
202
- return archiveReferral(referral.id);
203
- case 18:
204
- return _context4.abrupt("return", result);
205
- case 21:
206
- _context4.prev = 21;
207
- _context4.t0 = _context4["catch"](2);
208
- console.error('Error creating Out Of Network case:', _context4.t0);
209
- return _context4.abrupt("return", false);
210
- case 25:
211
- case "end":
212
- return _context4.stop();
213
- }
214
- }, _callee4, null, [[2, 21]]);
215
- }));
216
- return function createOONReferral() {
217
- return _ref4.apply(this, arguments);
218
- };
219
- }();
220
- var createReferral = /*#__PURE__*/function () {
221
- var _ref5 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
222
- var referral,
223
- newReferral,
224
- createdReferral,
225
- _args5 = arguments;
226
- return _regeneratorRuntime().wrap(function _callee5$(_context5) {
227
- while (1) switch (_context5.prev = _context5.next) {
228
- case 0:
229
- referral = _args5.length > 0 && _args5[0] !== undefined ? _args5[0] : {};
230
- _context5.prev = 1;
231
- newReferral = _objectSpread(_objectSpread({
232
- state: 'sent',
233
- case: referral.case_id,
234
- sending_provider: referral.referred_by_group_id,
235
- sending_network: referral.referred_by_network_id,
236
- receiving_network: referral.referred_to_network_id,
237
- receiving_provider: referral.referred_to_groups[0].group_id
238
- }, referral.referred_to_groups[0].program_id ? {
239
- receiving_program: referral.referred_to_groups[0].program_id
240
- } : {}), {}, {
241
- is_grouped: referral.is_grouped
242
- });
243
- _context5.next = 5;
244
- return coreApi.createRecord('referral', newReferral);
245
- case 5:
246
- createdReferral = _context5.sent;
247
- if (!['recalled', 'declined'].includes(referral.state)) {
248
- _context5.next = 9;
249
- break;
250
- }
251
- _context5.next = 9;
252
- return archiveReferral(referral.id);
253
- case 9:
254
- return _context5.abrupt("return", createdReferral);
255
- case 12:
256
- _context5.prev = 12;
257
- _context5.t0 = _context5["catch"](1);
258
- console.error('Error creating referral:', _context5.t0);
259
- return _context5.abrupt("return", false);
260
- case 16:
261
- case "end":
262
- return _context5.stop();
263
- }
264
- }, _callee5, null, [[1, 12]]);
265
- }));
266
- return function createReferral() {
267
- return _ref5.apply(this, arguments);
268
- };
269
- }();
52
+ export const archiveReferral = async referralId => {
53
+ try {
54
+ const response = await coreApi.updateRecord('referral', referralId, {
55
+ flagged_for_sender: false
56
+ });
57
+ if (!response || !isHttpSuccess(response.status)) return false;
58
+ return true;
59
+ } catch (error) {
60
+ console.error('Error archiveReferral:', error);
61
+ return false;
62
+ }
63
+ };
64
+ const createOONReferral = async function () {
65
+ let referral = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
66
+ let kase = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
67
+ try {
68
+ let result;
69
+ const oonProvider = referral.out_of_network_providers[0];
70
+ if (oonProvider.provider_type === "CUSTOM") {
71
+ const unlistedProgramNote = {
72
+ subjectType: 'case',
73
+ subject: referral.case_id,
74
+ employee: kase.primary_worker_id,
75
+ visibility: 'public',
76
+ category: 'external_provider',
77
+ text: "Referred off platform to ".concat(oonProvider.custom_name)
78
+ };
79
+ result = await coreApi.createRecord('note', unlistedProgramNote);
80
+ } else {
81
+ const newReferral = _objectSpread({
82
+ is_grouped: referral.is_grouped,
83
+ state: 'off_platform',
84
+ case: referral.case_id,
85
+ sending_provider: referral.referred_by_group_id,
86
+ sending_network: referral.referred_by_network_id,
87
+ receiving_network: referral.referred_to_network_id || referral.referred_by_network_id,
88
+ receiving_provider: oonProvider.provider_id
89
+ }, oonProvider.program_id ? {
90
+ receiving_program: oonProvider.program_id
91
+ } : null);
92
+ result = await coreApi.createRecord('referral', newReferral);
93
+ }
94
+ if (['recalled', 'declined'].includes(referral.state)) {
95
+ await archiveReferral(referral.id);
96
+ }
97
+ return result;
98
+ } catch (error) {
99
+ console.error('Error creating Out Of Network case:', error);
100
+ return false;
101
+ }
102
+ };
103
+ const createReferral = async function () {
104
+ let referral = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
105
+ try {
106
+ const newReferral = _objectSpread(_objectSpread({
107
+ state: 'sent',
108
+ case: referral.case_id,
109
+ sending_provider: referral.referred_by_group_id,
110
+ sending_network: referral.referred_by_network_id,
111
+ receiving_network: referral.referred_to_network_id,
112
+ receiving_provider: referral.referred_to_groups[0].group_id
113
+ }, referral.referred_to_groups[0].program_id ? {
114
+ receiving_program: referral.referred_to_groups[0].program_id
115
+ } : {}), {}, {
116
+ is_grouped: referral.is_grouped
117
+ });
118
+ const createdReferral = await coreApi.createRecord('referral', newReferral);
119
+ if (['recalled', 'declined'].includes(referral.state)) {
120
+ await archiveReferral(referral.id);
121
+ }
122
+ return createdReferral;
123
+ } catch (error) {
124
+ console.error('Error creating referral:', error);
125
+ return false;
126
+ }
127
+ };
270
128
 
271
129
  // To forward a referral, first accept it, then update the case with the new service type, and finally create the new referral/s with the new provider.
272
- var sendReferrals = /*#__PURE__*/function () {
273
- var _ref7 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee6(_ref6) {
274
- var oldReferral, _ref6$isOON, isOON, newReferrals, kase, old_receiving_network, new_receiving_network, _yield$Promise$all, _yield$Promise$all2, acceptedReferral, updatedCase, results;
275
- return _regeneratorRuntime().wrap(function _callee6$(_context6) {
276
- while (1) switch (_context6.prev = _context6.next) {
277
- case 0:
278
- oldReferral = _ref6.oldReferral, _ref6$isOON = _ref6.isOON, isOON = _ref6$isOON === void 0 ? false : _ref6$isOON, newReferrals = _ref6.newReferrals, kase = _ref6.kase, old_receiving_network = _ref6.old_receiving_network, new_receiving_network = _ref6.new_receiving_network;
279
- _context6.prev = 1;
280
- if (!(!isOON && old_receiving_network !== new_receiving_network)) {
281
- _context6.next = 4;
282
- break;
283
- }
284
- return _context6.abrupt("return", {
285
- errorMessage: "Error: The organization is in a different network than the original sender."
286
- });
287
- case 4:
288
- if (!['sent', 'in_review'].includes(oldReferral.state)) {
289
- _context6.next = 15;
290
- break;
291
- }
292
- _context6.next = 7;
293
- return Promise.all([acceptReferral(oldReferral), updateCase(kase)]);
294
- case 7:
295
- _yield$Promise$all = _context6.sent;
296
- _yield$Promise$all2 = _slicedToArray(_yield$Promise$all, 2);
297
- acceptedReferral = _yield$Promise$all2[0];
298
- updatedCase = _yield$Promise$all2[1];
299
- if (!(!acceptedReferral || !updatedCase)) {
300
- _context6.next = 13;
301
- break;
302
- }
303
- return _context6.abrupt("return", false);
304
- case 13:
305
- _context6.next = 18;
306
- break;
307
- case 15:
308
- if (!(['recalled', 'declined'].includes(oldReferral.state) && kase !== null && kase !== void 0 && kase.client_need_id)) {
309
- _context6.next = 18;
310
- break;
311
- }
312
- _context6.next = 18;
313
- return updateCase({
314
- id: kase.id,
315
- client_need_id: kase.client_need_id
316
- });
317
- case 18:
318
- if (!isOON) {
319
- _context6.next = 21;
320
- break;
321
- }
322
- _context6.next = 21;
323
- return updateCase({
324
- id: kase.id,
325
- primary_worker_id: kase.primary_worker_id
326
- }, {
327
- state: 'off_platform'
328
- });
329
- case 21:
330
- _context6.next = 23;
331
- return Promise.all(newReferrals.map(function (referral) {
332
- return !isOON ? createReferral(referral) : createOONReferral(referral, kase);
333
- }));
334
- case 23:
335
- results = _context6.sent;
336
- return _context6.abrupt("return", results);
337
- case 27:
338
- _context6.prev = 27;
339
- _context6.t0 = _context6["catch"](1);
340
- console.error("Error sending referral", _context6.t0);
341
- return _context6.abrupt("return", false);
342
- case 31:
343
- case "end":
344
- return _context6.stop();
345
- }
346
- }, _callee6, null, [[1, 27]]);
347
- }));
348
- return function sendReferrals(_x3) {
349
- return _ref7.apply(this, arguments);
350
- };
351
- }();
130
+ const sendReferrals = async _ref => {
131
+ let {
132
+ oldReferral,
133
+ isOON = false,
134
+ newReferrals,
135
+ kase,
136
+ old_receiving_network,
137
+ new_receiving_network
138
+ } = _ref;
139
+ try {
140
+ if (!isOON && old_receiving_network !== new_receiving_network) {
141
+ return {
142
+ errorMessage: "Error: The organization is in a different network than the original sender."
143
+ };
144
+ }
145
+ if (['sent', 'in_review'].includes(oldReferral.state)) {
146
+ const [acceptedReferral, updatedCase] = await Promise.all([acceptReferral(oldReferral), updateCase(kase)]);
147
+ if (!acceptedReferral || !updatedCase) return false;
148
+ } else if (['recalled', 'declined'].includes(oldReferral.state) && kase !== null && kase !== void 0 && kase.client_need_id) {
149
+ await updateCase({
150
+ id: kase.id,
151
+ client_need_id: kase.client_need_id
152
+ }); //we only update the client need id
153
+ }
154
+ if (isOON) await updateCase({
155
+ id: kase.id,
156
+ primary_worker_id: kase.primary_worker_id
157
+ }, {
158
+ state: 'off_platform'
159
+ }); //we only update the case status and primary worker
160
+
161
+ const results = await Promise.all(newReferrals.map(referral => !isOON ? createReferral(referral) : createOONReferral(referral, kase)));
162
+ return results;
163
+ } catch (error) {
164
+ console.error("Error sending referral", error);
165
+ return false;
166
+ }
167
+ };
352
168
  export default sendReferrals;
353
169
  //# sourceMappingURL=sendReferral.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sendReferral.js","names":["e","t","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","return","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","_regenerator","w","m","defineProperty","_regeneratorDefine","enumerable","configurable","writable","_invoke","_OverloadYield","k","ownKeys","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","_typeof","toPrimitive","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","hasOwnProperty","asyncGeneratorStep","Promise","resolve","then","_asyncToGenerator","_next","_throw","isError","coreApi","formatShortDate2FromTimestamp","updateCase","_ref","_regeneratorRuntime","mark","_callee","kase","options","state","otherOptions","caseData","_args","wrap","_callee$","_context","prev","next","undefined","_excluded","service_type_id","service","description","client_need_id","opened_date","primary_worker","primary_worker_id","updateRecord","id","abrupt","sent","t0","console","error","stop","_x","acceptReferral","_ref2","_callee2","referral","_args2","_callee2$","_context2","isHttpSuccess","response","codeNumber","status","archiveReferral","_ref3","_callee3","referralId","_callee3$","_context3","flagged_for_sender","_x2","createOONReferral","_ref4","_callee4","result","oonProvider","unlistedProgramNote","newReferral","_args4","_callee4$","_context4","out_of_network_providers","provider_type","subjectType","subject","case_id","employee","visibility","category","text","concat","custom_name","createRecord","is_grouped","case","sending_provider","referred_by_group_id","sending_network","referred_by_network_id","receiving_network","referred_to_network_id","receiving_provider","provider_id","program_id","receiving_program","includes","createReferral","_ref5","_callee5","createdReferral","_args5","_callee5$","_context5","referred_to_groups","group_id","sendReferrals","_ref7","_callee6","_ref6","oldReferral","_ref6$isOON","isOON","newReferrals","old_receiving_network","new_receiving_network","_yield$Promise$all","_yield$Promise$all2","acceptedReferral","updatedCase","results","_callee6$","_context6","errorMessage","all","_slicedToArray","map","_x3"],"sources":["../../src/hooks/sendReferral.js"],"sourcesContent":["import { isError } from 'lodash';\nimport { coreApi } from '../api/config';\nimport { formatShortDate2FromTimestamp } from '../components/service_authorization/formatShortDate';\n\nconst updateCase = async (kase, options = {}) => {\n try {\n const { state, ...otherOptions } = options;\n const caseData = {\n ...(kase.service_type_id && { service: kase.service_type_id }),\n ...(kase.description && { description: kase.description }),\n ...(kase.client_need_id && { client_need_id: kase.client_need_id }),\n ...(kase.opened_date && { opened_date: formatShortDate2FromTimestamp(kase.opened_date) }),\n ...(state && { \n state,\n primary_worker: state !== 'draft' ? kase.primary_worker_id : null\n }),\n ...otherOptions\n };\n return await coreApi.updateRecord('case', kase.id, caseData);\n } catch (error) {\n console.error('Error updating case attributes:', error);\n return false;\n }\n};\n\nconst acceptReferral = async (referral = {}) => {\n try {\n return await coreApi.updateRecord('referral', referral.id, {\n state: 'accepted',\n });\n } catch (error) {\n console.error('Error accepting referral:', error);\n return false;\n }\n};\n\nexport const isHttpSuccess = (response) => {\n let codeNumber = response;\n if (typeof codeNumber === 'object') {\n codeNumber = response.status;\n }\n return isError(response) || (codeNumber > 199 && codeNumber < 300);\n};\n\nexport const archiveReferral = async (referralId) => {\n try {\n const response = await coreApi.updateRecord('referral', referralId, {\n flagged_for_sender: false,\n });\n if (!response || !isHttpSuccess(response.status)) return false;\n return true;\n } catch (error) {\n console.error('Error archiveReferral:', error);\n return false;\n }\n};\n\nconst createOONReferral = async (referral = {}, kase = {}) => {\n try {\n let result;\n const oonProvider = referral.out_of_network_providers[0];\n if (oonProvider.provider_type === \"CUSTOM\") {\n const unlistedProgramNote = {\n subjectType: 'case',\n subject: referral.case_id,\n employee: kase.primary_worker_id,\n visibility: 'public',\n category: 'external_provider',\n text: `Referred off platform to ${oonProvider.custom_name}`\n }\n result = await coreApi.createRecord('note', unlistedProgramNote);\n } else {\n const newReferral = {\n is_grouped: referral.is_grouped,\n state: 'off_platform',\n case: referral.case_id,\n sending_provider: referral.referred_by_group_id,\n sending_network: referral.referred_by_network_id,\n receiving_network: referral.referred_to_network_id || referral.referred_by_network_id,\n receiving_provider: oonProvider.provider_id,\n ...(oonProvider.program_id ? { receiving_program: oonProvider.program_id } : null),\n }\n result = await coreApi.createRecord('referral', newReferral);\n }\n if (['recalled', 'declined'].includes(referral.state)) {\n await archiveReferral(referral.id);\n }\n return result;\n } catch (error) {\n console.error('Error creating Out Of Network case:', error);\n return false;\n }\n};\n\nconst createReferral = async (referral = {}) => {\n try {\n const newReferral = {\n state: 'sent',\n case: referral.case_id,\n sending_provider: referral.referred_by_group_id,\n sending_network: referral.referred_by_network_id,\n receiving_network: referral.referred_to_network_id,\n receiving_provider: referral.referred_to_groups[0].group_id,\n ...(referral.referred_to_groups[0].program_id ? { receiving_program: referral.referred_to_groups[0].program_id } : {}),\n is_grouped: referral.is_grouped,\n }\n const createdReferral = await coreApi.createRecord('referral', newReferral)\n if (['recalled', 'declined'].includes(referral.state)) {\n await archiveReferral(referral.id);\n }\n return createdReferral;\n } catch (error) {\n console.error('Error creating referral:', error);\n return false;\n }\n};\n\n// To forward a referral, first accept it, then update the case with the new service type, and finally create the new referral/s with the new provider.\nconst sendReferrals = async ({ oldReferral, isOON = false, newReferrals, kase, old_receiving_network, new_receiving_network }) => {\n try {\n if (!isOON && old_receiving_network !== new_receiving_network) {\n return { errorMessage: \"Error: The organization is in a different network than the original sender.\" };\n }\n\n if (['sent', 'in_review'].includes(oldReferral.state)) {\n const [acceptedReferral, updatedCase] = await Promise.all([\n acceptReferral(oldReferral),\n updateCase(kase),\n ]);\n if (!acceptedReferral || !updatedCase) return false;\n } else if (['recalled', 'declined'].includes(oldReferral.state) && kase?.client_need_id) {\n await updateCase({ id: kase.id, client_need_id: kase.client_need_id }); //we only update the client need id\n }\n if (isOON) await updateCase({ id: kase.id, primary_worker_id: kase.primary_worker_id }, { state: 'off_platform' });//we only update the case status and primary worker\n\n const results = await Promise.all(newReferrals.map(referral =>\n !isOON ? createReferral(referral) : createOONReferral(referral, kase)\n ));\n return results;\n } catch (error) {\n console.error(\"Error sending referral\", error);\n return false;\n }\n};\n\nexport default sendReferrals;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"sendReferral.js","names":["isError","coreApi","formatShortDate2FromTimestamp","updateCase","kase","options","arguments","length","undefined","state","otherOptions","_objectWithoutProperties","_excluded","caseData","_objectSpread","service_type_id","service","description","client_need_id","opened_date","primary_worker","primary_worker_id","updateRecord","id","error","console","acceptReferral","referral","isHttpSuccess","response","codeNumber","status","archiveReferral","referralId","flagged_for_sender","createOONReferral","result","oonProvider","out_of_network_providers","provider_type","unlistedProgramNote","subjectType","subject","case_id","employee","visibility","category","text","concat","custom_name","createRecord","newReferral","is_grouped","case","sending_provider","referred_by_group_id","sending_network","referred_by_network_id","receiving_network","referred_to_network_id","receiving_provider","provider_id","program_id","receiving_program","includes","createReferral","referred_to_groups","group_id","createdReferral","sendReferrals","_ref","oldReferral","isOON","newReferrals","old_receiving_network","new_receiving_network","errorMessage","acceptedReferral","updatedCase","Promise","all","results","map"],"sources":["../../src/hooks/sendReferral.js"],"sourcesContent":["import { isError } from 'lodash';\nimport { coreApi } from '../api/config';\nimport { formatShortDate2FromTimestamp } from '../components/service_authorization/formatShortDate';\n\nconst updateCase = async (kase, options = {}) => {\n try {\n const { state, ...otherOptions } = options;\n const caseData = {\n ...(kase.service_type_id && { service: kase.service_type_id }),\n ...(kase.description && { description: kase.description }),\n ...(kase.client_need_id && { client_need_id: kase.client_need_id }),\n ...(kase.opened_date && { opened_date: formatShortDate2FromTimestamp(kase.opened_date) }),\n ...(state && { \n state,\n primary_worker: state !== 'draft' ? kase.primary_worker_id : null\n }),\n ...otherOptions\n };\n return await coreApi.updateRecord('case', kase.id, caseData);\n } catch (error) {\n console.error('Error updating case attributes:', error);\n return false;\n }\n};\n\nconst acceptReferral = async (referral = {}) => {\n try {\n return await coreApi.updateRecord('referral', referral.id, {\n state: 'accepted',\n });\n } catch (error) {\n console.error('Error accepting referral:', error);\n return false;\n }\n};\n\nexport const isHttpSuccess = (response) => {\n let codeNumber = response;\n if (typeof codeNumber === 'object') {\n codeNumber = response.status;\n }\n return isError(response) || (codeNumber > 199 && codeNumber < 300);\n};\n\nexport const archiveReferral = async (referralId) => {\n try {\n const response = await coreApi.updateRecord('referral', referralId, {\n flagged_for_sender: false,\n });\n if (!response || !isHttpSuccess(response.status)) return false;\n return true;\n } catch (error) {\n console.error('Error archiveReferral:', error);\n return false;\n }\n};\n\nconst createOONReferral = async (referral = {}, kase = {}) => {\n try {\n let result;\n const oonProvider = referral.out_of_network_providers[0];\n if (oonProvider.provider_type === \"CUSTOM\") {\n const unlistedProgramNote = {\n subjectType: 'case',\n subject: referral.case_id,\n employee: kase.primary_worker_id,\n visibility: 'public',\n category: 'external_provider',\n text: `Referred off platform to ${oonProvider.custom_name}`\n }\n result = await coreApi.createRecord('note', unlistedProgramNote);\n } else {\n const newReferral = {\n is_grouped: referral.is_grouped,\n state: 'off_platform',\n case: referral.case_id,\n sending_provider: referral.referred_by_group_id,\n sending_network: referral.referred_by_network_id,\n receiving_network: referral.referred_to_network_id || referral.referred_by_network_id,\n receiving_provider: oonProvider.provider_id,\n ...(oonProvider.program_id ? { receiving_program: oonProvider.program_id } : null),\n }\n result = await coreApi.createRecord('referral', newReferral);\n }\n if (['recalled', 'declined'].includes(referral.state)) {\n await archiveReferral(referral.id);\n }\n return result;\n } catch (error) {\n console.error('Error creating Out Of Network case:', error);\n return false;\n }\n};\n\nconst createReferral = async (referral = {}) => {\n try {\n const newReferral = {\n state: 'sent',\n case: referral.case_id,\n sending_provider: referral.referred_by_group_id,\n sending_network: referral.referred_by_network_id,\n receiving_network: referral.referred_to_network_id,\n receiving_provider: referral.referred_to_groups[0].group_id,\n ...(referral.referred_to_groups[0].program_id ? { receiving_program: referral.referred_to_groups[0].program_id } : {}),\n is_grouped: referral.is_grouped,\n }\n const createdReferral = await coreApi.createRecord('referral', newReferral)\n if (['recalled', 'declined'].includes(referral.state)) {\n await archiveReferral(referral.id);\n }\n return createdReferral;\n } catch (error) {\n console.error('Error creating referral:', error);\n return false;\n }\n};\n\n// To forward a referral, first accept it, then update the case with the new service type, and finally create the new referral/s with the new provider.\nconst sendReferrals = async ({ oldReferral, isOON = false, newReferrals, kase, old_receiving_network, new_receiving_network }) => {\n try {\n if (!isOON && old_receiving_network !== new_receiving_network) {\n return { errorMessage: \"Error: The organization is in a different network than the original sender.\" };\n }\n\n if (['sent', 'in_review'].includes(oldReferral.state)) {\n const [acceptedReferral, updatedCase] = await Promise.all([\n acceptReferral(oldReferral),\n updateCase(kase),\n ]);\n if (!acceptedReferral || !updatedCase) return false;\n } else if (['recalled', 'declined'].includes(oldReferral.state) && kase?.client_need_id) {\n await updateCase({ id: kase.id, client_need_id: kase.client_need_id }); //we only update the client need id\n }\n if (isOON) await updateCase({ id: kase.id, primary_worker_id: kase.primary_worker_id }, { state: 'off_platform' });//we only update the case status and primary worker\n\n const results = await Promise.all(newReferrals.map(referral =>\n !isOON ? createReferral(referral) : createOONReferral(referral, kase)\n ));\n return results;\n } catch (error) {\n console.error(\"Error sending referral\", error);\n return false;\n }\n};\n\nexport default sendReferrals;\n"],"mappings":"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","ignoreList":[]}