@unite-us/app-create-referral 0.15.59-alpha.4 → 0.15.59

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/.github/CODEOWNERS +3 -0
  2. package/.github/pull_request_template.md +25 -0
  3. package/.github/workflows/quality.yml +44 -0
  4. package/.github/workflows/semantic-release.yml +26 -0
  5. package/.nvmrc +1 -0
  6. package/babel.config.js +11 -0
  7. package/config-overrides.js +8 -0
  8. package/dist/AppReferrals.js +45 -45
  9. package/dist/AppReferrals.js.map +1 -1
  10. package/dist/AppReferrals.test.js +71 -34
  11. package/dist/AppReferrals.test.js.map +1 -1
  12. package/dist/__testUtils__/mockData/components/mockAppReferrals.js +12 -13
  13. package/dist/__testUtils__/mockData/components/mockAppReferrals.js.map +1 -1
  14. package/dist/__testUtils__/mockData/mockCases.js +1 -1
  15. package/dist/__testUtils__/mockData/mockCases.js.map +1 -1
  16. package/dist/__testUtils__/mockData/mockClinicalModifications.js +3 -3
  17. package/dist/__testUtils__/mockData/mockClinicalModifications.js.map +1 -1
  18. package/dist/__testUtils__/mockData/mockEmployees.js +1 -1
  19. package/dist/__testUtils__/mockData/mockEmployees.js.map +1 -1
  20. package/dist/__testUtils__/mockData/mockEnums.js +1 -1
  21. package/dist/__testUtils__/mockData/mockEnums.js.map +1 -1
  22. package/dist/__testUtils__/mockData/mockFeeSchedulePrograms.js +1 -1
  23. package/dist/__testUtils__/mockData/mockFeeSchedulePrograms.js.map +1 -1
  24. package/dist/__testUtils__/mockData/mockFiles.js +1 -1
  25. package/dist/__testUtils__/mockData/mockFiles.js.map +1 -1
  26. package/dist/__testUtils__/mockData/mockFormSubmissions.js +1 -1
  27. package/dist/__testUtils__/mockData/mockFormSubmissions.js.map +1 -1
  28. package/dist/__testUtils__/mockData/mockFormUsages.js +1 -1
  29. package/dist/__testUtils__/mockData/mockFormUsages.js.map +1 -1
  30. package/dist/__testUtils__/mockData/mockForms.js +1 -1
  31. package/dist/__testUtils__/mockData/mockForms.js.map +1 -1
  32. package/dist/__testUtils__/mockData/mockInsurances.js +1 -1
  33. package/dist/__testUtils__/mockData/mockInsurances.js.map +1 -1
  34. package/dist/__testUtils__/mockData/mockNetworks.js +1 -1
  35. package/dist/__testUtils__/mockData/mockNetworks.js.map +1 -1
  36. package/dist/__testUtils__/mockData/mockPeople.js +1 -1
  37. package/dist/__testUtils__/mockData/mockPeople.js.map +1 -1
  38. package/dist/__testUtils__/mockData/mockPrograms.js +31 -31
  39. package/dist/__testUtils__/mockData/mockPrograms.js.map +1 -1
  40. package/dist/__testUtils__/mockData/mockProviders.js +21 -21
  41. package/dist/__testUtils__/mockData/mockProviders.js.map +1 -1
  42. package/dist/__testUtils__/mockData/mockReferrals.js +1 -1
  43. package/dist/__testUtils__/mockData/mockReferrals.js.map +1 -1
  44. package/dist/__testUtils__/mockData/mockServiceAuthorizations.js +1 -1
  45. package/dist/__testUtils__/mockData/mockServiceAuthorizations.js.map +1 -1
  46. package/dist/__testUtils__/mockData/mockServices.js +1 -1
  47. package/dist/__testUtils__/mockData/mockServices.js.map +1 -1
  48. package/dist/__testUtils__/mockData/mockUnlistedPrograms.js +1 -1
  49. package/dist/__testUtils__/mockData/mockUnlistedPrograms.js.map +1 -1
  50. package/dist/__testUtils__/mockData/utils.js +282 -218
  51. package/dist/__testUtils__/mockData/utils.js.map +1 -1
  52. package/dist/__testUtils__/mockServer/handlers.js +82 -80
  53. package/dist/__testUtils__/mockServer/handlers.js.map +1 -1
  54. package/dist/__testUtils__/mockServer/server.js +13 -7
  55. package/dist/__testUtils__/mockServer/server.js.map +1 -1
  56. package/dist/__testUtils__/test-utils.js +18 -22
  57. package/dist/__testUtils__/test-utils.js.map +1 -1
  58. package/dist/actions/Document/Contact/Group/fetchCaseDocuments.js +41 -10
  59. package/dist/actions/Document/Contact/Group/fetchCaseDocuments.js.map +1 -1
  60. package/dist/actions/Document/Contact/Group/fetchContactDocuments.js +41 -10
  61. package/dist/actions/Document/Contact/Group/fetchContactDocuments.js.map +1 -1
  62. package/dist/actions/Document/Contact/Group/fileUploadUtils.js +10 -8
  63. package/dist/actions/Document/Contact/Group/fileUploadUtils.js.map +1 -1
  64. package/dist/actions/Group/fetchCoreGroupForms.js +97 -46
  65. package/dist/actions/Group/fetchCoreGroupForms.js.map +1 -1
  66. package/dist/actions/Referral/cannotMoveToReferralReasons.js +21 -23
  67. package/dist/actions/Referral/cannotMoveToReferralReasons.js.map +1 -1
  68. package/dist/actions/Referral/fetchCoreServices.js +169 -70
  69. package/dist/actions/Referral/fetchCoreServices.js.map +1 -1
  70. package/dist/actions/Referral/fetchNetworks.js +44 -11
  71. package/dist/actions/Referral/fetchNetworks.js.map +1 -1
  72. package/dist/actions/Referral/fetchPrimaryWorkers.js +84 -51
  73. package/dist/actions/Referral/fetchPrimaryWorkers.js.map +1 -1
  74. package/dist/actions/Referral/removeReferralProgram.js +15 -10
  75. package/dist/actions/Referral/removeReferralProgram.js.map +1 -1
  76. package/dist/api/ApiHooks.js +39 -40
  77. package/dist/api/ApiHooks.js.map +1 -1
  78. package/dist/api/config.js +23 -20
  79. package/dist/api/config.js.map +1 -1
  80. package/dist/common/form/CurrencyField/index.js +21 -22
  81. package/dist/common/form/CurrencyField/index.js.map +1 -1
  82. package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js +48 -51
  83. package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js.map +1 -1
  84. package/dist/common/form/DocumentUploader/components/DocumentsListView.js +12 -14
  85. package/dist/common/form/DocumentUploader/components/DocumentsListView.js.map +1 -1
  86. package/dist/common/form/DocumentUploader/components/ListViewDocument.js +17 -21
  87. package/dist/common/form/DocumentUploader/components/ListViewDocument.js.map +1 -1
  88. package/dist/common/form/ErrorMessage/index.js +9 -17
  89. package/dist/common/form/ErrorMessage/index.js.map +1 -1
  90. package/dist/common/form/FileUploadV2/FileUpload.js +137 -159
  91. package/dist/common/form/FileUploadV2/FileUpload.js.map +1 -1
  92. package/dist/common/form/FileUploadV2/components/FilePreview.js +5 -8
  93. package/dist/common/form/FileUploadV2/components/FilePreview.js.map +1 -1
  94. package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js +21 -26
  95. package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js.map +1 -1
  96. package/dist/common/form/FormForm/index.js +194 -143
  97. package/dist/common/form/FormForm/index.js.map +1 -1
  98. package/dist/common/utils/utils.js +3 -3
  99. package/dist/common/utils/utils.js.map +1 -1
  100. package/dist/components/Card.js +8 -12
  101. package/dist/components/Card.js.map +1 -1
  102. package/dist/components/CreateReferralContainer.js +13 -21
  103. package/dist/components/CreateReferralContainer.js.map +1 -1
  104. package/dist/components/DollarAmount.js +14 -18
  105. package/dist/components/DollarAmount.js.map +1 -1
  106. package/dist/components/ExpandableButton.js +16 -21
  107. package/dist/components/ExpandableButton.js.map +1 -1
  108. package/dist/components/NavButtons.js +51 -57
  109. package/dist/components/NavButtons.js.map +1 -1
  110. package/dist/components/ReferralStepper.js +41 -44
  111. package/dist/components/ReferralStepper.js.map +1 -1
  112. package/dist/components/SearchableField.js +125 -121
  113. package/dist/components/SearchableField.js.map +1 -1
  114. package/dist/components/StepHeader.js +16 -25
  115. package/dist/components/StepHeader.js.map +1 -1
  116. package/dist/components/Stepper.js +51 -55
  117. package/dist/components/Stepper.js.map +1 -1
  118. package/dist/components/modal/Dialog.js +170 -141
  119. package/dist/components/modal/Dialog.js.map +1 -1
  120. package/dist/components/modal/Overlay.js +1 -2
  121. package/dist/components/modal/Overlay.js.map +1 -1
  122. package/dist/components/service_authorization/AuthorizationSpendCard.js +60 -72
  123. package/dist/components/service_authorization/AuthorizationSpendCard.js.map +1 -1
  124. package/dist/components/service_authorization/CapsInfo.js +120 -143
  125. package/dist/components/service_authorization/CapsInfo.js.map +1 -1
  126. package/dist/components/service_authorization/CaseStatus.js +14 -18
  127. package/dist/components/service_authorization/CaseStatus.js.map +1 -1
  128. package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js +96 -121
  129. package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js.map +1 -1
  130. package/dist/components/service_authorization/ReferralAuthSpendExpandable.js +43 -43
  131. package/dist/components/service_authorization/ReferralAuthSpendExpandable.js.map +1 -1
  132. package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js +65 -82
  133. package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js.map +1 -1
  134. package/dist/components/service_authorization/Spend.js +5 -10
  135. package/dist/components/service_authorization/Spend.js.map +1 -1
  136. package/dist/components/service_authorization/formatShortDate.js +6 -6
  137. package/dist/components/service_authorization/formatShortDate.js.map +1 -1
  138. package/dist/components/service_authorization/messageConstants.js +2 -2
  139. package/dist/components/service_authorization/messageConstants.js.map +1 -1
  140. package/dist/components/spinners/OverlaySpinner/OverlaySpinner.js +23 -34
  141. package/dist/components/spinners/OverlaySpinner/OverlaySpinner.js.map +1 -1
  142. package/dist/components/spinners/Spinner/Spinner.js +27 -33
  143. package/dist/components/spinners/Spinner/Spinner.js.map +1 -1
  144. package/dist/constants/enums.js +1 -1
  145. package/dist/constants/enums.js.map +1 -1
  146. package/dist/constants/eventConstants.js +48 -48
  147. package/dist/constants/eventConstants.js.map +1 -1
  148. package/dist/constants/findEnumDisplayName.js +3 -3
  149. package/dist/constants/findEnumDisplayName.js.map +1 -1
  150. package/dist/constants.js +6 -6
  151. package/dist/constants.js.map +1 -1
  152. package/dist/context/AppCreateReferralProvider.js +36 -25
  153. package/dist/context/AppCreateReferralProvider.js.map +1 -1
  154. package/dist/context/state.js +5 -2
  155. package/dist/context/state.js.map +1 -1
  156. package/dist/context/withAppCreateReferralContext.js +5 -9
  157. package/dist/context/withAppCreateReferralContext.js.map +1 -1
  158. package/dist/hooks/__tests__/useCreateReferrals.test.js +560 -456
  159. package/dist/hooks/__tests__/useCreateReferrals.test.js.map +1 -1
  160. package/dist/hooks/sendReferral.js +339 -155
  161. package/dist/hooks/sendReferral.js.map +1 -1
  162. package/dist/hooks/useClinicalModificationOptions.js +34 -24
  163. package/dist/hooks/useClinicalModificationOptions.js.map +1 -1
  164. package/dist/hooks/useCreateReferrals.js +722 -463
  165. package/dist/hooks/useCreateReferrals.js.map +1 -1
  166. package/dist/hooks/useCreateResourceList.js +76 -56
  167. package/dist/hooks/useCreateResourceList.js.map +1 -1
  168. package/dist/hooks/useCreateShareEvent.js +42 -18
  169. package/dist/hooks/useCreateShareEvent.js.map +1 -1
  170. package/dist/hooks/useForwardReferral.js +118 -78
  171. package/dist/hooks/useForwardReferral.js.map +1 -1
  172. package/dist/hooks/usePerson.js +49 -21
  173. package/dist/hooks/usePerson.js.map +1 -1
  174. package/dist/hooks/useUpdateResourceList.js +28 -34
  175. package/dist/hooks/useUpdateResourceList.js.map +1 -1
  176. package/dist/pages/builder/AboutGroupedReferralsModal.js +27 -48
  177. package/dist/pages/builder/AboutGroupedReferralsModal.js.map +1 -1
  178. package/dist/pages/builder/AuthorizationSubform.js +131 -143
  179. package/dist/pages/builder/AuthorizationSubform.js.map +1 -1
  180. package/dist/pages/builder/ChooseOneServiceTypeModal.js +53 -56
  181. package/dist/pages/builder/ChooseOneServiceTypeModal.js.map +1 -1
  182. package/dist/pages/builder/DetailsDrawer.js +72 -74
  183. package/dist/pages/builder/DetailsDrawer.js.map +1 -1
  184. package/dist/pages/builder/LineItem.js +25 -28
  185. package/dist/pages/builder/LineItem.js.map +1 -1
  186. package/dist/pages/builder/NoReferralsDisplay.js +29 -41
  187. package/dist/pages/builder/NoReferralsDisplay.js.map +1 -1
  188. package/dist/pages/builder/ProgramHeader.js +20 -33
  189. package/dist/pages/builder/ProgramHeader.js.map +1 -1
  190. package/dist/pages/builder/ProgramMenu.js +18 -19
  191. package/dist/pages/builder/ProgramMenu.js.map +1 -1
  192. package/dist/pages/builder/ReferralBuilder.js +443 -341
  193. package/dist/pages/builder/ReferralBuilder.js.map +1 -1
  194. package/dist/pages/builder/ReferralBuilderForm.js +392 -323
  195. package/dist/pages/builder/ReferralBuilderForm.js.map +1 -1
  196. package/dist/pages/builder/ReferralCard.js +99 -125
  197. package/dist/pages/builder/ReferralCard.js.map +1 -1
  198. package/dist/pages/builder/ReferralProgramCard.js +160 -109
  199. package/dist/pages/builder/ReferralProgramCard.js.map +1 -1
  200. package/dist/pages/builder/ReferralProgramMenu.js +116 -102
  201. package/dist/pages/builder/ReferralProgramMenu.js.map +1 -1
  202. package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js +246 -99
  203. package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js.map +1 -1
  204. package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js +86 -48
  205. package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js.map +1 -1
  206. package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js +133 -74
  207. package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js.map +1 -1
  208. package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js +1269 -674
  209. package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js.map +1 -1
  210. package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js +575 -305
  211. package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js.map +1 -1
  212. package/dist/pages/builder/__tests__/ReferralBuilder.test.js +45 -14
  213. package/dist/pages/builder/__tests__/ReferralBuilder.test.js.map +1 -1
  214. package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js +815 -407
  215. package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js.map +1 -1
  216. package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js +254 -139
  217. package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js.map +1 -1
  218. package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js +518 -262
  219. package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js.map +1 -1
  220. package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js +504 -273
  221. package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js.map +1 -1
  222. package/dist/pages/builder/buildDraftState.js +21 -21
  223. package/dist/pages/builder/buildDraftState.js.map +1 -1
  224. package/dist/pages/builder/buildGroupedReferrals.js +113 -80
  225. package/dist/pages/builder/buildGroupedReferrals.js.map +1 -1
  226. package/dist/pages/builder/constants.js +12 -12
  227. package/dist/pages/builder/constants.js.map +1 -1
  228. package/dist/pages/builder/formatProgramDetail.js +180 -152
  229. package/dist/pages/builder/formatProgramDetail.js.map +1 -1
  230. package/dist/pages/builder/useBuildReferrals.js +163 -95
  231. package/dist/pages/builder/useBuildReferrals.js.map +1 -1
  232. package/dist/pages/builder/utils.js +133 -84
  233. package/dist/pages/builder/utils.js.map +1 -1
  234. package/dist/pages/review/DeleteReferralModal.js +31 -45
  235. package/dist/pages/review/DeleteReferralModal.js.map +1 -1
  236. package/dist/pages/review/DropdownMultiplesReferrals.js +92 -75
  237. package/dist/pages/review/DropdownMultiplesReferrals.js.map +1 -1
  238. package/dist/pages/review/ReferralsSent.js +239 -200
  239. package/dist/pages/review/ReferralsSent.js.map +1 -1
  240. package/dist/pages/review/Review.js +554 -451
  241. package/dist/pages/review/Review.js.map +1 -1
  242. package/dist/pages/review/__tests__/CallbackNotifications.test.js +66 -46
  243. package/dist/pages/review/__tests__/CallbackNotifications.test.js.map +1 -1
  244. package/dist/pages/review/__tests__/ReferralsSent.test.js +349 -189
  245. package/dist/pages/review/__tests__/ReferralsSent.test.js.map +1 -1
  246. package/dist/pages/review/__tests__/Review.test.js +599 -380
  247. package/dist/pages/review/__tests__/Review.test.js.map +1 -1
  248. package/dist/pages/review/__tests__/data.js +5 -5
  249. package/dist/pages/review/__tests__/data.js.map +1 -1
  250. package/dist/pages/review/constants.js +5 -5
  251. package/dist/pages/review/constants.js.map +1 -1
  252. package/dist/pages/supporting-info/SupportingInfo.js +168 -123
  253. package/dist/pages/supporting-info/SupportingInfo.js.map +1 -1
  254. package/dist/pages/supporting-info/__tests__/SupportingInfo.test.js +164 -85
  255. package/dist/pages/supporting-info/__tests__/SupportingInfo.test.js.map +1 -1
  256. package/dist/pages/supporting-info/__tests__/data.js +1 -1
  257. package/dist/pages/supporting-info/__tests__/data.js.map +1 -1
  258. package/dist/reportWebVitals.js +7 -9
  259. package/dist/reportWebVitals.js.map +1 -1
  260. package/dist/setupTests.js +30 -8
  261. package/dist/setupTests.js.map +1 -1
  262. package/dist/utils/__tests__/canChangeHoldReason.test.js +23 -23
  263. package/dist/utils/__tests__/canChangeHoldReason.test.js.map +1 -1
  264. package/dist/utils/__tests__/checkRoles.test.js +10 -10
  265. package/dist/utils/__tests__/checkRoles.test.js.map +1 -1
  266. package/dist/utils/canAccept.js +9 -14
  267. package/dist/utils/canAccept.js.map +1 -1
  268. package/dist/utils/canChangeHoldReason.js +11 -16
  269. package/dist/utils/canChangeHoldReason.js.map +1 -1
  270. package/dist/utils/canHoldForReview.js +8 -13
  271. package/dist/utils/canHoldForReview.js.map +1 -1
  272. package/dist/utils/canReject.js +14 -21
  273. package/dist/utils/canReject.js.map +1 -1
  274. package/dist/utils/checkRoles.js +10 -10
  275. package/dist/utils/checkRoles.js.map +1 -1
  276. package/dist/utils/getProgramServicesPayload.js +20 -20
  277. package/dist/utils/getProgramServicesPayload.js.map +1 -1
  278. package/dist/utils/hasUserRole.js +8 -8
  279. package/dist/utils/hasUserRole.js.map +1 -1
  280. package/dist/utils/isReferralForwarded.js +2 -4
  281. package/dist/utils/isReferralForwarded.js.map +1 -1
  282. package/dist/utils/referralToConsent.js +19 -14
  283. package/dist/utils/referralToConsent.js.map +1 -1
  284. package/dist/utils/useDebounce.js +18 -7
  285. package/dist/utils/useDebounce.js.map +1 -1
  286. package/dist/utils/useFeatureFlag.js +1 -1
  287. package/dist/utils/useFeatureFlag.js.map +1 -1
  288. package/dist/utils/validateCostAmount.js +4 -4
  289. package/dist/utils/validateCostAmount.js.map +1 -1
  290. package/dist/utils/validateUnitAmount.js +4 -4
  291. package/dist/utils/validateUnitAmount.js.map +1 -1
  292. package/package.json +35 -65
@@ -1,121 +1,138 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
1
+ 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); }
2
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
3
  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; }
3
4
  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; }
5
+ 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; }
6
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
7
+ 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); }
8
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
9
+ 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."); }
10
+ 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; } }
11
+ 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; }
12
+ 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; } }
13
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
4
14
  import React, { useState, useEffect, useRef, useCallback } from 'react';
5
15
  import PropTypes from 'prop-types';
6
16
  import { Form, Field, FormSpy } from 'react-final-form';
7
17
  import { SelectField } from '@unite-us/ui';
8
18
  import { isRequired } from '@unite-us/client-utils/dist/utils/validations/validations';
9
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
10
- const DropdownMultiplesReferrals = _ref => {
11
- let {
12
- referrals = [],
13
- setReferralErrors,
14
- formRefs,
15
- setSelectedReferralToLink,
16
- serviceTypeName
17
- } = _ref;
18
- const [formData, setFormData] = useState({
19
- referralSelected: ''
20
- });
21
- const [referralList, setReferralList] = useState([]);
22
- const registerField = (fieldId, ref) => {
19
+ var DropdownMultiplesReferrals = function DropdownMultiplesReferrals(_ref) {
20
+ var _ref$referrals = _ref.referrals,
21
+ referrals = _ref$referrals === void 0 ? [] : _ref$referrals,
22
+ setReferralErrors = _ref.setReferralErrors,
23
+ formRefs = _ref.formRefs,
24
+ setSelectedReferralToLink = _ref.setSelectedReferralToLink,
25
+ serviceTypeName = _ref.serviceTypeName;
26
+ var _useState = useState({
27
+ referralSelected: ''
28
+ }),
29
+ _useState2 = _slicedToArray(_useState, 2),
30
+ formData = _useState2[0],
31
+ setFormData = _useState2[1];
32
+ var _useState3 = useState([]),
33
+ _useState4 = _slicedToArray(_useState3, 2),
34
+ referralList = _useState4[0],
35
+ setReferralList = _useState4[1];
36
+ var registerField = function registerField(fieldId, ref) {
23
37
  formRefs.current[fieldId] = ref;
24
38
  };
25
- const generateReferralList = referrals => {
26
- return referrals.map((referral, index) => {
39
+ var generateReferralList = function generateReferralList(referrals) {
40
+ return referrals.map(function (referral, index) {
27
41
  var _referral$service, _referral$programs;
28
- const serviceName = (_referral$service = referral.service) === null || _referral$service === void 0 ? void 0 : _referral$service.name;
29
- const programName = (_referral$programs = referral.programs) === null || _referral$programs === void 0 || (_referral$programs = _referral$programs.find(program => program === null || program === void 0 ? void 0 : program.name)) === null || _referral$programs === void 0 ? void 0 : _referral$programs.name;
42
+ var serviceName = (_referral$service = referral.service) === null || _referral$service === void 0 ? void 0 : _referral$service.name;
43
+ var programName = (_referral$programs = referral.programs) === null || _referral$programs === void 0 || (_referral$programs = _referral$programs.find(function (program) {
44
+ return program === null || program === void 0 ? void 0 : program.name;
45
+ })) === null || _referral$programs === void 0 ? void 0 : _referral$programs.name;
30
46
  return {
31
47
  label: "Referral ".concat(index + 1, ": ").concat(serviceName, " referral to: ").concat(programName),
32
48
  value: "".concat(index)
33
49
  };
34
50
  });
35
51
  };
36
- const onSetForm = useCallback(formInstance => {
52
+ var onSetForm = useCallback(function (formInstance) {
37
53
  formRefs.current = formInstance;
38
54
  }, []);
39
- useEffect(() => {
40
- const list = generateReferralList(referrals);
55
+ useEffect(function () {
56
+ var list = generateReferralList(referrals);
41
57
  setReferralList(list);
42
58
  }, [referrals]);
43
- const handleSelectChange = (field, value) => {
59
+ var handleSelectChange = function handleSelectChange(field, value) {
44
60
  if (value) {
45
- setFormData(prev => _objectSpread(_objectSpread({}, prev), {}, {
46
- [field]: value
47
- }));
61
+ setFormData(function (prev) {
62
+ return _objectSpread(_objectSpread({}, prev), {}, _defineProperty({}, field, value));
63
+ });
48
64
  setSelectedReferralToLink(Number(value));
49
65
  }
50
66
  };
51
- return /*#__PURE__*/_jsx(Form, {
67
+ return /*#__PURE__*/React.createElement(Form, {
52
68
  initialValues: {
53
69
  referralSelected: formData.referralSelected
54
70
  },
55
- onSubmit: () => {},
56
- validate: values => {
57
- const errors = {};
71
+ onSubmit: function onSubmit() {},
72
+ validate: function validate(values) {
73
+ var errors = {};
58
74
  if (!values.referralSelected) {
59
75
  errors.referralSelected = "You must select a referral";
60
76
  }
61
77
  ;
62
- const fieldErrors = {
78
+ var fieldErrors = {
63
79
  referralSelected: !!errors.referralSelected
64
80
  };
65
81
  setReferralErrors(0, fieldErrors);
66
82
  return errors;
67
83
  },
68
84
  mutators: {
69
- setFieldTouched: (args, state) => {
70
- const [name, touched] = args;
71
- const field = state.fields[name];
85
+ setFieldTouched: function setFieldTouched(args, state) {
86
+ var _args = _slicedToArray(args, 2),
87
+ name = _args[0],
88
+ touched = _args[1];
89
+ var field = state.fields[name];
72
90
  if (field) {
73
91
  field.touched = !!touched;
74
92
  }
75
93
  }
76
94
  },
77
- render: _ref2 => {
78
- let {
79
- form,
80
- values
81
- } = _ref2;
95
+ render: function render(_ref2) {
96
+ var form = _ref2.form,
97
+ values = _ref2.values;
82
98
  onSetForm && onSetForm(form);
83
- return /*#__PURE__*/_jsx(_Fragment, {
84
- children: /*#__PURE__*/_jsxs("div", {
85
- className: "relative mx-auto responsive-max-width",
86
- children: [/*#__PURE__*/_jsx("h1", {
87
- className: "font-semibold text-[18px] leading-[28px] text-left mt-4",
88
- children: "Connect original referral"
89
- }), /*#__PURE__*/_jsx("p", {
90
- className: "font-normal text-[14px] leading-[20px] text-left mt-1",
91
- children: "The original referral you received was a ".concat(serviceTypeName, " referral. Choose one of the referrals you are sending to connect to the original, to ensure that the sender can view the outcome of their referral.")
92
- }), /*#__PURE__*/_jsx(FormSpy, {
93
- subscription: {
94
- values: true
95
- },
96
- onChange: handleSelectChange
97
- }), /*#__PURE__*/_jsx(Field, {
98
- name: "referralSelected",
99
- required: true,
100
- children: params => /*#__PURE__*/_jsx(SelectField, _objectSpread({
101
- className: "custom-select-field mb-3 mt-3",
102
- ref: ref => registerField('referralSelected', ref),
103
- id: "referralSelected",
104
- label: "Choose referral",
105
- options: referralList,
106
- labelKey: "label",
107
- valueKey: "value",
108
- validations: isRequired,
109
- placeholder: "Pick one",
110
- required: true,
111
- searchEnabled: false,
112
- inline: false,
113
- onChange: value => handleSelectChange('referralSelected', value),
114
- value: formData.referralSelected
115
- }, params))
116
- }, "referralSelected")]
117
- })
118
- });
99
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
100
+ className: "relative mx-auto responsive-max-width"
101
+ }, /*#__PURE__*/React.createElement("h1", {
102
+ className: "font-semibold text-[18px] leading-[28px] text-left mt-4"
103
+ }, "Connect original referral"), /*#__PURE__*/React.createElement("p", {
104
+ className: "font-normal text-[14px] leading-[20px] text-left mt-1"
105
+ }, "The original referral you received was a ".concat(serviceTypeName, " referral. Choose one of the referrals you are sending to connect to the original, to ensure that the sender can view the outcome of their referral.")), /*#__PURE__*/React.createElement(FormSpy, {
106
+ subscription: {
107
+ values: true
108
+ },
109
+ onChange: handleSelectChange
110
+ }), /*#__PURE__*/React.createElement(Field, {
111
+ name: "referralSelected",
112
+ required: true,
113
+ key: "referralSelected"
114
+ }, function (params) {
115
+ return /*#__PURE__*/React.createElement(SelectField, _extends({
116
+ className: "custom-select-field mb-3 mt-3",
117
+ ref: function ref(_ref3) {
118
+ return registerField('referralSelected', _ref3);
119
+ },
120
+ id: "referralSelected",
121
+ label: "Choose referral",
122
+ options: referralList,
123
+ labelKey: "label",
124
+ valueKey: "value",
125
+ validations: isRequired,
126
+ placeholder: "Pick one",
127
+ required: true,
128
+ searchEnabled: false,
129
+ inline: false,
130
+ onChange: function onChange(value) {
131
+ return handleSelectChange('referralSelected', value);
132
+ },
133
+ value: formData.referralSelected
134
+ }, params));
135
+ })));
119
136
  }
120
137
  });
121
138
  };
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownMultiplesReferrals.js","names":["React","useState","useEffect","useRef","useCallback","PropTypes","Form","Field","FormSpy","SelectField","isRequired","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","DropdownMultiplesReferrals","_ref","referrals","setReferralErrors","formRefs","setSelectedReferralToLink","serviceTypeName","formData","setFormData","referralSelected","referralList","setReferralList","registerField","fieldId","ref","current","generateReferralList","map","referral","index","_referral$service","_referral$programs","serviceName","service","name","programName","programs","find","program","label","concat","value","onSetForm","formInstance","list","handleSelectChange","field","prev","_objectSpread","Number","initialValues","onSubmit","validate","values","errors","fieldErrors","mutators","setFieldTouched","args","state","touched","fields","render","_ref2","form","children","className","subscription","onChange","required","params","id","options","labelKey","valueKey","validations","placeholder","searchEnabled","inline","propTypes","arrayOf","shape","string","func","defaultProps"],"sources":["../../../src/pages/review/DropdownMultiplesReferrals.js"],"sourcesContent":["import React, { useState, useEffect, useRef, useCallback } from 'react';\nimport PropTypes from 'prop-types';\nimport { Form, Field, FormSpy } from 'react-final-form';\nimport { SelectField } from '@unite-us/ui';\nimport { isRequired } from '@unite-us/client-utils/dist/utils/validations/validations';\n\nconst DropdownMultiplesReferrals = ({ referrals = [], setReferralErrors, formRefs, setSelectedReferralToLink, serviceTypeName }) => {\n const [formData, setFormData] = useState({\n referralSelected: '',\n });\n\n const [referralList, setReferralList] = useState([]);\n\n const registerField = (fieldId, ref) => {\n formRefs.current[fieldId] = ref;\n };\n\n const generateReferralList = (referrals) => {\n return referrals.map((referral, index) => {\n const serviceName = referral.service?.name;\n\t\t\tconst programName = referral.programs?.find((program) => program?.name)?.name;\n\n return {\n label: `Referral ${index + 1}: ${serviceName} referral to: ${programName}`,\n value: `${index}`,\n };\n });\n };\n\n const onSetForm = useCallback((formInstance) => {\n formRefs.current = formInstance;\n }, []);\n\n useEffect(() => {\n const list = generateReferralList(referrals);\n setReferralList(list);\n }, [referrals]);\n\n const handleSelectChange = (field, value) => {\n if (value) {\n setFormData((prev) => ({ ...prev, [field]: value }));\n setSelectedReferralToLink(Number(value));\n }\n };\n\n return (\n <Form\n initialValues={{ referralSelected: formData.referralSelected }}\n onSubmit={() => { }}\n validate={(values) => {\n const errors = {};\n if (!values.referralSelected) { errors.referralSelected = \"You must select a referral\" };\n\n const fieldErrors = {\n referralSelected: !!errors.referralSelected\n }\n\n setReferralErrors(0, fieldErrors);\n return errors;\n }}\n mutators={{\n setFieldTouched: (args, state) => {\n const [name, touched] = args;\n const field = state.fields[name];\n if (field) {\n field.touched = !!touched;\n }\n }\n }}\n render={({ form, values }) => {\n onSetForm && onSetForm(form);\n return (\n <>\n <div className=\"relative mx-auto responsive-max-width\">\n <h1 className=\"font-semibold text-[18px] leading-[28px] text-left mt-4\">\n Connect original referral\n </h1>\n <p className=\"font-normal text-[14px] leading-[20px] text-left mt-1\">\n {`The original referral you received was a ${serviceTypeName} referral. Choose one of the referrals you are sending to connect to the original, to ensure that the sender can view the outcome of their referral.`}\n </p>\n <FormSpy\n subscription={{ values: true }}\n onChange={handleSelectChange}\n />\n <Field\n name=\"referralSelected\"\n required\n key={`referralSelected`}\n >\n {(params) => (\n <SelectField\n className=\"custom-select-field mb-3 mt-3\"\n ref={(ref) => registerField('referralSelected', ref)}\n id=\"referralSelected\"\n label=\"Choose referral\"\n options={referralList}\n labelKey=\"label\"\n valueKey=\"value\"\n validations={isRequired}\n placeholder=\"Pick one\"\n required\n searchEnabled={false}\n inline={false}\n onChange={(value) => handleSelectChange('referralSelected', value)}\n value={formData.referralSelected}\n {...params}\n />\n )}\n </Field>\n </div>\n\n </>\n )}}\n />\n );\n};\n\nDropdownMultiplesReferrals.propTypes = {\n referrals: PropTypes.arrayOf(\n PropTypes.shape({\n service: PropTypes.shape({\n name: PropTypes.string,\n }),\n })\n ),\n onSubmit: PropTypes.func.isRequired,\n};\n\nDropdownMultiplesReferrals.defaultProps = {\n referrals: [],\n};\n\nexport default DropdownMultiplesReferrals;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DropdownMultiplesReferrals.js","names":["React","useState","useEffect","useRef","useCallback","PropTypes","Form","Field","FormSpy","SelectField","isRequired","DropdownMultiplesReferrals","_ref","_ref$referrals","referrals","setReferralErrors","formRefs","setSelectedReferralToLink","serviceTypeName","_useState","referralSelected","_useState2","_slicedToArray","formData","setFormData","_useState3","_useState4","referralList","setReferralList","registerField","fieldId","ref","current","generateReferralList","map","referral","index","_referral$service","_referral$programs","serviceName","service","name","programName","programs","find","program","label","concat","value","onSetForm","formInstance","list","handleSelectChange","field","prev","_objectSpread","_defineProperty","Number","createElement","initialValues","onSubmit","validate","values","errors","fieldErrors","mutators","setFieldTouched","args","state","_args","touched","fields","render","_ref2","form","Fragment","className","subscription","onChange","required","key","params","_extends","id","options","labelKey","valueKey","validations","placeholder","searchEnabled","inline","propTypes","arrayOf","shape","string","func","defaultProps"],"sources":["../../../src/pages/review/DropdownMultiplesReferrals.js"],"sourcesContent":["import React, { useState, useEffect, useRef, useCallback } from 'react';\nimport PropTypes from 'prop-types';\nimport { Form, Field, FormSpy } from 'react-final-form';\nimport { SelectField } from '@unite-us/ui';\nimport { isRequired } from '@unite-us/client-utils/dist/utils/validations/validations';\n\nconst DropdownMultiplesReferrals = ({ referrals = [], setReferralErrors, formRefs, setSelectedReferralToLink, serviceTypeName }) => {\n const [formData, setFormData] = useState({\n referralSelected: '',\n });\n\n const [referralList, setReferralList] = useState([]);\n\n const registerField = (fieldId, ref) => {\n formRefs.current[fieldId] = ref;\n };\n\n const generateReferralList = (referrals) => {\n return referrals.map((referral, index) => {\n const serviceName = referral.service?.name;\n\t\t\tconst programName = referral.programs?.find((program) => program?.name)?.name;\n\n return {\n label: `Referral ${index + 1}: ${serviceName} referral to: ${programName}`,\n value: `${index}`,\n };\n });\n };\n\n const onSetForm = useCallback((formInstance) => {\n formRefs.current = formInstance;\n }, []);\n\n useEffect(() => {\n const list = generateReferralList(referrals);\n setReferralList(list);\n }, [referrals]);\n\n const handleSelectChange = (field, value) => {\n if (value) {\n setFormData((prev) => ({ ...prev, [field]: value }));\n setSelectedReferralToLink(Number(value));\n }\n };\n\n return (\n <Form\n initialValues={{ referralSelected: formData.referralSelected }}\n onSubmit={() => { }}\n validate={(values) => {\n const errors = {};\n if (!values.referralSelected) { errors.referralSelected = \"You must select a referral\" };\n\n const fieldErrors = {\n referralSelected: !!errors.referralSelected\n }\n\n setReferralErrors(0, fieldErrors);\n return errors;\n }}\n mutators={{\n setFieldTouched: (args, state) => {\n const [name, touched] = args;\n const field = state.fields[name];\n if (field) {\n field.touched = !!touched;\n }\n }\n }}\n render={({ form, values }) => {\n onSetForm && onSetForm(form);\n return (\n <>\n <div className=\"relative mx-auto responsive-max-width\">\n <h1 className=\"font-semibold text-[18px] leading-[28px] text-left mt-4\">\n Connect original referral\n </h1>\n <p className=\"font-normal text-[14px] leading-[20px] text-left mt-1\">\n {`The original referral you received was a ${serviceTypeName} referral. Choose one of the referrals you are sending to connect to the original, to ensure that the sender can view the outcome of their referral.`}\n </p>\n <FormSpy\n subscription={{ values: true }}\n onChange={handleSelectChange}\n />\n <Field\n name=\"referralSelected\"\n required\n key={`referralSelected`}\n >\n {(params) => (\n <SelectField\n className=\"custom-select-field mb-3 mt-3\"\n ref={(ref) => registerField('referralSelected', ref)}\n id=\"referralSelected\"\n label=\"Choose referral\"\n options={referralList}\n labelKey=\"label\"\n valueKey=\"value\"\n validations={isRequired}\n placeholder=\"Pick one\"\n required\n searchEnabled={false}\n inline={false}\n onChange={(value) => handleSelectChange('referralSelected', value)}\n value={formData.referralSelected}\n {...params}\n />\n )}\n </Field>\n </div>\n\n </>\n )}}\n />\n );\n};\n\nDropdownMultiplesReferrals.propTypes = {\n referrals: PropTypes.arrayOf(\n PropTypes.shape({\n service: PropTypes.shape({\n name: PropTypes.string,\n }),\n })\n ),\n onSubmit: PropTypes.func.isRequired,\n};\n\nDropdownMultiplesReferrals.defaultProps = {\n referrals: [],\n};\n\nexport default DropdownMultiplesReferrals;\n"],"mappings":"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","ignoreList":[]}