@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,39 +1,53 @@
1
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
2
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
+ 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; } }
4
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
5
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
6
+ 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; }
1
7
  import { programsMap } from './mockPrograms';
2
8
  import { unlistedProgramsMap } from './mockUnlistedPrograms';
3
9
  import { providersMap } from './mockProviders';
4
10
  import { servicesMap } from './mockServices';
5
11
  import { feeScheduleProgramsMap } from './mockFeeSchedulePrograms';
6
12
  import { all, groupBy, compact, uniqBy } from 'lodash';
7
- const providers = Array.from(providersMap.values());
8
- const programs = Array.from(programsMap.values());
9
- const unlistedPrograms = Array.from(unlistedProgramsMap.values());
10
- const services = Array.from(servicesMap.values());
11
- const feeSchedulePrograms = Array.from(feeScheduleProgramsMap.values());
13
+ var providers = Array.from(providersMap.values());
14
+ var programs = Array.from(programsMap.values());
15
+ var unlistedPrograms = Array.from(unlistedProgramsMap.values());
16
+ var services = Array.from(servicesMap.values());
17
+ var feeSchedulePrograms = Array.from(feeScheduleProgramsMap.values());
12
18
 
13
19
  // Function to separate programs into those with shared and non-shared networks
14
- const separateProgramsByNetwork = _ref => {
15
- let {
16
- singleNetwork
17
- } = _ref;
18
- const programsWithSharedNetwork = [];
19
- const programsWithSingleSharedNetwork = [];
20
- programs.forEach(program => {
21
- const providerId = program.relationships.provider.data.id;
22
- const provider = providers.find(provider => provider.id === providerId);
20
+ var separateProgramsByNetwork = function separateProgramsByNetwork(_ref) {
21
+ var singleNetwork = _ref.singleNetwork;
22
+ var programsWithSharedNetwork = [];
23
+ var programsWithSingleSharedNetwork = [];
24
+ programs.forEach(function (program) {
25
+ var providerId = program.relationships.provider.data.id;
26
+ var provider = providers.find(function (provider) {
27
+ return provider.id === providerId;
28
+ });
23
29
  if (provider) {
24
- const networkIds = provider.relationships.networks.data.map(network => network.id);
25
- const hasSharedNetwork = programs.some(otherProgram => {
30
+ var networkIds = provider.relationships.networks.data.map(function (network) {
31
+ return network.id;
32
+ });
33
+ var hasSharedNetwork = programs.some(function (otherProgram) {
26
34
  if (otherProgram.id !== program.id) {
27
- const otherProviderId = otherProgram.relationships.provider.data.id;
28
- const otherProvider = providers.find(otherProvider => otherProvider.id === otherProviderId);
35
+ var otherProviderId = otherProgram.relationships.provider.data.id;
36
+ var otherProvider = providers.find(function (otherProvider) {
37
+ return otherProvider.id === otherProviderId;
38
+ });
29
39
  if (otherProvider) {
30
- const otherNetworkIds = otherProvider.relationships.networks.data.map(network => network.id);
31
- return networkIds.some(networkId => otherNetworkIds.includes(networkId));
40
+ var otherNetworkIds = otherProvider.relationships.networks.data.map(function (network) {
41
+ return network.id;
42
+ });
43
+ return networkIds.some(function (networkId) {
44
+ return otherNetworkIds.includes(networkId);
45
+ });
32
46
  }
33
47
  }
34
48
  return false;
35
49
  });
36
- const hasSingleSharedNetwork = hasSharedNetwork && provider.relationships.networks.data.length === 1;
50
+ var hasSingleSharedNetwork = hasSharedNetwork && provider.relationships.networks.data.length === 1;
37
51
  if (singleNetwork && hasSingleSharedNetwork) {
38
52
  programsWithSingleSharedNetwork.push(program);
39
53
  } else if (hasSharedNetwork) {
@@ -42,115 +56,126 @@ const separateProgramsByNetwork = _ref => {
42
56
  }
43
57
  });
44
58
  return {
45
- programsWithSharedNetwork,
46
- programsWithSingleSharedNetwork
59
+ programsWithSharedNetwork: programsWithSharedNetwork,
60
+ programsWithSingleSharedNetwork: programsWithSingleSharedNetwork
47
61
  };
48
62
  };
49
- const filterSingleProgram = _ref2 => {
50
- let {
51
- receivingProviderIsCC = false,
52
- sendingProviderIsCC = false,
53
- programInCurrentProvider = false,
54
- sendingProviderSensitive,
55
- receivingProviderLicensed,
56
- receivingProviderSensitive = false,
57
- receivingReferrals = true,
58
- isFunded = false,
59
- requiresAuthorization = false,
60
- cmCodeRequiredOnAuthorization = false
61
- } = _ref2;
62
- const sendingProviderType = sendingProviderIsCC ? 'coordination_center' : 'provider';
63
- const sendingProvider = providers.find(provider => provider.attributes.licensed && provider.attributes.provider_type === sendingProviderType && provider.attributes.sensitive === sendingProviderSensitive);
64
- return programs.filter(program => {
63
+ var filterSingleProgram = function filterSingleProgram(_ref2) {
64
+ var _ref2$receivingProvid = _ref2.receivingProviderIsCC,
65
+ receivingProviderIsCC = _ref2$receivingProvid === void 0 ? false : _ref2$receivingProvid,
66
+ _ref2$sendingProvider = _ref2.sendingProviderIsCC,
67
+ sendingProviderIsCC = _ref2$sendingProvider === void 0 ? false : _ref2$sendingProvider,
68
+ _ref2$programInCurren = _ref2.programInCurrentProvider,
69
+ programInCurrentProvider = _ref2$programInCurren === void 0 ? false : _ref2$programInCurren,
70
+ sendingProviderSensitive = _ref2.sendingProviderSensitive,
71
+ receivingProviderLicensed = _ref2.receivingProviderLicensed,
72
+ _ref2$receivingProvid2 = _ref2.receivingProviderSensitive,
73
+ receivingProviderSensitive = _ref2$receivingProvid2 === void 0 ? false : _ref2$receivingProvid2,
74
+ _ref2$receivingReferr = _ref2.receivingReferrals,
75
+ receivingReferrals = _ref2$receivingReferr === void 0 ? true : _ref2$receivingReferr,
76
+ _ref2$isFunded = _ref2.isFunded,
77
+ isFunded = _ref2$isFunded === void 0 ? false : _ref2$isFunded,
78
+ _ref2$requiresAuthori = _ref2.requiresAuthorization,
79
+ requiresAuthorization = _ref2$requiresAuthori === void 0 ? false : _ref2$requiresAuthori,
80
+ _ref2$cmCodeRequiredO = _ref2.cmCodeRequiredOnAuthorization,
81
+ cmCodeRequiredOnAuthorization = _ref2$cmCodeRequiredO === void 0 ? false : _ref2$cmCodeRequiredO;
82
+ var sendingProviderType = sendingProviderIsCC ? 'coordination_center' : 'provider';
83
+ var sendingProvider = providers.find(function (provider) {
84
+ return provider.attributes.licensed && provider.attributes.provider_type === sendingProviderType && provider.attributes.sensitive === sendingProviderSensitive;
85
+ });
86
+ return programs.filter(function (program) {
65
87
  var _relationships$fee_sc, _feeSchedulePrograms$, _feeSchedulePrograms$2;
66
- const {
67
- attributes,
68
- relationships
69
- } = program;
70
- const receivingProvider = providers.find(provider => provider.id === relationships.provider.data.id);
71
- const inCurrentProviderMatch = programInCurrentProvider ? relationships.provider.data.id === sendingProvider.id : relationships.provider.data.id !== sendingProvider.id;
72
- const receivingProviderSensitiveMatch = (receivingProvider === null || receivingProvider === void 0 ? void 0 : receivingProvider.attributes.sensitive) === receivingProviderSensitive;
73
- const receivingProviderInNetworkMatch = (receivingProvider === null || receivingProvider === void 0 ? void 0 : receivingProvider.attributes.licensed) === receivingProviderLicensed;
74
- const providerIsCCMatch = receivingProviderIsCC ? (receivingProvider === null || receivingProvider === void 0 ? void 0 : receivingProvider.attributes.provider_type) === 'coordination_center' : (receivingProvider === null || receivingProvider === void 0 ? void 0 : receivingProvider.attributes.provider_type) === 'provider';
75
- const programReceivingReferralsMatch = attributes.receiving_referrals === receivingReferrals;
76
- const fspId = (_relationships$fee_sc = relationships.fee_schedule_program) === null || _relationships$fee_sc === void 0 || (_relationships$fee_sc = _relationships$fee_sc.data) === null || _relationships$fee_sc === void 0 ? void 0 : _relationships$fee_sc.id;
77
- const isFundedMatch = !!fspId === isFunded;
78
- const requiresAuthorizationMatch = (!!fspId && ((_feeSchedulePrograms$ = feeSchedulePrograms.find(fsp => fsp.id === fspId)) === null || _feeSchedulePrograms$ === void 0 || (_feeSchedulePrograms$ = _feeSchedulePrograms$.attributes) === null || _feeSchedulePrograms$ === void 0 ? void 0 : _feeSchedulePrograms$.authorization_required)) === requiresAuthorization;
79
- const cmCodeRequiredOnAuthorizationMatch = (!!fspId && ((_feeSchedulePrograms$2 = feeSchedulePrograms.find(fsp => fsp.id === fspId)) === null || _feeSchedulePrograms$2 === void 0 || (_feeSchedulePrograms$2 = _feeSchedulePrograms$2.attributes) === null || _feeSchedulePrograms$2 === void 0 ? void 0 : _feeSchedulePrograms$2.cm_code_required_on_authorization)) === cmCodeRequiredOnAuthorization;
88
+ var attributes = program.attributes,
89
+ relationships = program.relationships;
90
+ var receivingProvider = providers.find(function (provider) {
91
+ return provider.id === relationships.provider.data.id;
92
+ });
93
+ var inCurrentProviderMatch = programInCurrentProvider ? relationships.provider.data.id === sendingProvider.id : relationships.provider.data.id !== sendingProvider.id;
94
+ var receivingProviderSensitiveMatch = (receivingProvider === null || receivingProvider === void 0 ? void 0 : receivingProvider.attributes.sensitive) === receivingProviderSensitive;
95
+ var receivingProviderInNetworkMatch = (receivingProvider === null || receivingProvider === void 0 ? void 0 : receivingProvider.attributes.licensed) === receivingProviderLicensed;
96
+ var providerIsCCMatch = receivingProviderIsCC ? (receivingProvider === null || receivingProvider === void 0 ? void 0 : receivingProvider.attributes.provider_type) === 'coordination_center' : (receivingProvider === null || receivingProvider === void 0 ? void 0 : receivingProvider.attributes.provider_type) === 'provider';
97
+ var programReceivingReferralsMatch = attributes.receiving_referrals === receivingReferrals;
98
+ var fspId = (_relationships$fee_sc = relationships.fee_schedule_program) === null || _relationships$fee_sc === void 0 || (_relationships$fee_sc = _relationships$fee_sc.data) === null || _relationships$fee_sc === void 0 ? void 0 : _relationships$fee_sc.id;
99
+ var isFundedMatch = !!fspId === isFunded;
100
+ var requiresAuthorizationMatch = (!!fspId && ((_feeSchedulePrograms$ = feeSchedulePrograms.find(function (fsp) {
101
+ return fsp.id === fspId;
102
+ })) === null || _feeSchedulePrograms$ === void 0 || (_feeSchedulePrograms$ = _feeSchedulePrograms$.attributes) === null || _feeSchedulePrograms$ === void 0 ? void 0 : _feeSchedulePrograms$.authorization_required)) === requiresAuthorization;
103
+ var cmCodeRequiredOnAuthorizationMatch = (!!fspId && ((_feeSchedulePrograms$2 = feeSchedulePrograms.find(function (fsp) {
104
+ return fsp.id === fspId;
105
+ })) === null || _feeSchedulePrograms$2 === void 0 || (_feeSchedulePrograms$2 = _feeSchedulePrograms$2.attributes) === null || _feeSchedulePrograms$2 === void 0 ? void 0 : _feeSchedulePrograms$2.cm_code_required_on_authorization)) === cmCodeRequiredOnAuthorization;
80
106
  return inCurrentProviderMatch && programReceivingReferralsMatch && receivingProviderInNetworkMatch && receivingProviderSensitiveMatch && providerIsCCMatch && isFundedMatch && requiresAuthorizationMatch && cmCodeRequiredOnAuthorizationMatch;
81
107
  });
82
108
  };
83
- const getCCOrNonCCPrograms = _ref3 => {
84
- let {
85
- filteredPrograms,
86
- providerType
87
- } = _ref3;
88
- return filteredPrograms.filter(program => {
89
- const providerId = program.relationships.provider.data.id;
90
- const provider = providers.find(provider => provider.id === providerId);
109
+ var getCCOrNonCCPrograms = function getCCOrNonCCPrograms(_ref3) {
110
+ var filteredPrograms = _ref3.filteredPrograms,
111
+ providerType = _ref3.providerType;
112
+ return filteredPrograms.filter(function (program) {
113
+ var providerId = program.relationships.provider.data.id;
114
+ var provider = providers.find(function (provider) {
115
+ return provider.id === providerId;
116
+ });
91
117
  return provider.attributes.provider_type === providerType;
92
118
  });
93
119
  };
94
- const getLicensedOrUnlicensedPrograms = _ref4 => {
95
- let {
96
- filteredPrograms,
97
- isLicensed,
98
- licensedProviderIsCC
99
- } = _ref4;
100
- return filteredPrograms.filter(program => {
101
- const providerId = program.relationships.provider.data.id;
102
- const provider = providers.find(provider => provider.id === providerId);
120
+ var getLicensedOrUnlicensedPrograms = function getLicensedOrUnlicensedPrograms(_ref4) {
121
+ var filteredPrograms = _ref4.filteredPrograms,
122
+ isLicensed = _ref4.isLicensed,
123
+ licensedProviderIsCC = _ref4.licensedProviderIsCC;
124
+ return filteredPrograms.filter(function (program) {
125
+ var providerId = program.relationships.provider.data.id;
126
+ var provider = providers.find(function (provider) {
127
+ return provider.id === providerId;
128
+ });
103
129
  return provider.attributes.licensed === isLicensed && (licensedProviderIsCC ? provider.attributes.provider_type === 'coordination_center' : true);
104
130
  });
105
131
  };
106
- const getSensitiveAndNonSensitivePrograms = _ref5 => {
107
- let {
108
- filteredPrograms,
109
- sensitiveProviderCount,
110
- programCount,
111
- sensitiveReceivingReferrals
112
- } = _ref5;
113
- const sensitivePrograms = filteredPrograms.filter(program => {
114
- const providerId = program.relationships.provider.data.id;
115
- const provider = providers.find(provider => provider.id === providerId);
132
+ var getSensitiveAndNonSensitivePrograms = function getSensitiveAndNonSensitivePrograms(_ref5) {
133
+ var filteredPrograms = _ref5.filteredPrograms,
134
+ sensitiveProviderCount = _ref5.sensitiveProviderCount,
135
+ programCount = _ref5.programCount,
136
+ sensitiveReceivingReferrals = _ref5.sensitiveReceivingReferrals;
137
+ var sensitivePrograms = filteredPrograms.filter(function (program) {
138
+ var providerId = program.relationships.provider.data.id;
139
+ var provider = providers.find(function (provider) {
140
+ return provider.id === providerId;
141
+ });
116
142
  return provider.attributes.sensitive && (sensitiveReceivingReferrals ? program.attributes.receiving_referrals === sensitiveReceivingReferrals : true);
117
143
  }).slice(0, sensitiveProviderCount);
118
- const nonSensitivePrograms = filteredPrograms.filter(program => {
119
- const providerId = program.relationships.provider.data.id;
120
- const provider = providers.find(provider => provider.id === providerId);
144
+ var nonSensitivePrograms = filteredPrograms.filter(function (program) {
145
+ var providerId = program.relationships.provider.data.id;
146
+ var provider = providers.find(function (provider) {
147
+ return provider.id === providerId;
148
+ });
121
149
  return !provider.attributes.sensitive;
122
150
  }).slice(0, programCount - sensitiveProviderCount);
123
- return [...nonSensitivePrograms, ...sensitivePrograms];
151
+ return [].concat(_toConsumableArray(nonSensitivePrograms), _toConsumableArray(sensitivePrograms));
124
152
  };
125
- const filterGroupedPrograms = _ref6 => {
126
- let {
127
- receivingProviderIsCC,
128
- licensedProviderIsCC,
129
- receivingProviderLicensed,
130
- licensedAndUnlicensedReceivingProviders,
131
- sensitiveAndNonSensitiveReceivingProvider,
132
- sensitiveProviderCount,
133
- programCount,
134
- receivingProviderSensitive,
135
- receivingReferrals,
136
- sensitiveReceivingReferrals,
137
- onAndOffPlatformPrograms,
138
- ccAndNonCCPrograms,
139
- programsInSameNetwork,
140
- singleNetwork,
141
- programsInSameProvider,
142
- isFunded,
143
- requiresAuthorization
144
- } = _ref6;
145
- const {
146
- programsWithSharedNetwork,
147
- programsWithSingleSharedNetwork
148
- } = separateProgramsByNetwork({
149
- singleNetwork
150
- });
153
+ var filterGroupedPrograms = function filterGroupedPrograms(_ref6) {
154
+ var receivingProviderIsCC = _ref6.receivingProviderIsCC,
155
+ licensedProviderIsCC = _ref6.licensedProviderIsCC,
156
+ receivingProviderLicensed = _ref6.receivingProviderLicensed,
157
+ licensedAndUnlicensedReceivingProviders = _ref6.licensedAndUnlicensedReceivingProviders,
158
+ sensitiveAndNonSensitiveReceivingProvider = _ref6.sensitiveAndNonSensitiveReceivingProvider,
159
+ sensitiveProviderCount = _ref6.sensitiveProviderCount,
160
+ programCount = _ref6.programCount,
161
+ receivingProviderSensitive = _ref6.receivingProviderSensitive,
162
+ receivingReferrals = _ref6.receivingReferrals,
163
+ sensitiveReceivingReferrals = _ref6.sensitiveReceivingReferrals,
164
+ onAndOffPlatformPrograms = _ref6.onAndOffPlatformPrograms,
165
+ ccAndNonCCPrograms = _ref6.ccAndNonCCPrograms,
166
+ programsInSameNetwork = _ref6.programsInSameNetwork,
167
+ singleNetwork = _ref6.singleNetwork,
168
+ programsInSameProvider = _ref6.programsInSameProvider,
169
+ isFunded = _ref6.isFunded,
170
+ requiresAuthorization = _ref6.requiresAuthorization;
171
+ var _separateProgramsByNe = separateProgramsByNetwork({
172
+ singleNetwork: singleNetwork
173
+ }),
174
+ programsWithSharedNetwork = _separateProgramsByNe.programsWithSharedNetwork,
175
+ programsWithSingleSharedNetwork = _separateProgramsByNe.programsWithSingleSharedNetwork;
151
176
 
152
177
  // Filter programs based on whether they match the criteria
153
- let networkMatch = [];
178
+ var networkMatch = [];
154
179
  if (programsInSameNetwork && singleNetwork) {
155
180
  networkMatch = programsWithSingleSharedNetwork;
156
181
  } else if (programsInSameNetwork) {
@@ -158,72 +183,84 @@ const filterGroupedPrograms = _ref6 => {
158
183
  } else {
159
184
  networkMatch = programs;
160
185
  }
161
- const programsGroupedByProviderId = Object.values(groupBy(networkMatch, 'relationships.provider.data.id'));
162
- const providerMatch = programsInSameProvider ? programsGroupedByProviderId.filter(programs => programs.length > 1).flat() : programsGroupedByProviderId.flat();
186
+ var programsGroupedByProviderId = Object.values(groupBy(networkMatch, 'relationships.provider.data.id'));
187
+ var providerMatch = programsInSameProvider ? programsGroupedByProviderId.filter(function (programs) {
188
+ return programs.length > 1;
189
+ }).flat() : programsGroupedByProviderId.flat();
163
190
 
164
191
  // Filter programs based on receiving provider criteria
165
- const receivingProviderMatch = providerMatch.filter(program => {
166
- const providerId = program.relationships.provider.data.id;
167
- const provider = providers.find(provider => provider.id === providerId);
168
- const providerInNetworkMatch = receivingProviderLicensed ? provider.attributes.licensed : !provider.attributes.licensed;
169
- const providerIsCCMatch = receivingProviderIsCC ? provider.attributes.provider_type === 'coordination_center' : provider.attributes.provider_type === 'provider';
170
- const providerIsSensitiveMatch = provider.attributes.sensitive === receivingProviderSensitive;
192
+ var receivingProviderMatch = providerMatch.filter(function (program) {
193
+ var providerId = program.relationships.provider.data.id;
194
+ var provider = providers.find(function (provider) {
195
+ return provider.id === providerId;
196
+ });
197
+ var providerInNetworkMatch = receivingProviderLicensed ? provider.attributes.licensed : !provider.attributes.licensed;
198
+ var providerIsCCMatch = receivingProviderIsCC ? provider.attributes.provider_type === 'coordination_center' : provider.attributes.provider_type === 'provider';
199
+ var providerIsSensitiveMatch = provider.attributes.sensitive === receivingProviderSensitive;
171
200
  return (licensedAndUnlicensedReceivingProviders ? true : providerInNetworkMatch) && (sensitiveAndNonSensitiveReceivingProvider ? true : providerIsSensitiveMatch) && (ccAndNonCCPrograms ? true : providerIsCCMatch);
172
201
  });
173
- let filteredPrograms = receivingProviderMatch;
202
+ var filteredPrograms = receivingProviderMatch;
174
203
 
175
204
  // Filter programs based on criteria
176
205
  if (!onAndOffPlatformPrograms) {
177
- filteredPrograms = filteredPrograms.filter(program => program.attributes.receiving_referrals === receivingReferrals);
206
+ filteredPrograms = filteredPrograms.filter(function (program) {
207
+ return program.attributes.receiving_referrals === receivingReferrals;
208
+ });
178
209
  }
179
210
  if (!programsInSameProvider) {
180
211
  filteredPrograms = uniqBy(filteredPrograms, 'relationships.provider.data.id');
181
212
  }
182
- filteredPrograms = filteredPrograms.filter(program => {
213
+ filteredPrograms = filteredPrograms.filter(function (program) {
183
214
  var _program$relationship;
184
- const fspId = (_program$relationship = program.relationships.fee_schedule_program) === null || _program$relationship === void 0 || (_program$relationship = _program$relationship.data) === null || _program$relationship === void 0 ? void 0 : _program$relationship.id;
215
+ var fspId = (_program$relationship = program.relationships.fee_schedule_program) === null || _program$relationship === void 0 || (_program$relationship = _program$relationship.data) === null || _program$relationship === void 0 ? void 0 : _program$relationship.id;
185
216
  return isFunded ? !!fspId : !fspId;
186
217
  });
187
- filteredPrograms = filteredPrograms.filter(program => {
218
+ filteredPrograms = filteredPrograms.filter(function (program) {
188
219
  var _program$relationship2, _fsp$attributes;
189
- const fspId = (_program$relationship2 = program.relationships.fee_schedule_program) === null || _program$relationship2 === void 0 || (_program$relationship2 = _program$relationship2.data) === null || _program$relationship2 === void 0 ? void 0 : _program$relationship2.id;
190
- const fsp = feeSchedulePrograms.find(fsp => fsp.id === fspId);
220
+ var fspId = (_program$relationship2 = program.relationships.fee_schedule_program) === null || _program$relationship2 === void 0 || (_program$relationship2 = _program$relationship2.data) === null || _program$relationship2 === void 0 ? void 0 : _program$relationship2.id;
221
+ var fsp = feeSchedulePrograms.find(function (fsp) {
222
+ return fsp.id === fspId;
223
+ });
191
224
  return requiresAuthorization === !!(fsp !== null && fsp !== void 0 && (_fsp$attributes = fsp.attributes) !== null && _fsp$attributes !== void 0 && _fsp$attributes.authorization_required);
192
225
  });
193
226
  if (onAndOffPlatformPrograms) {
194
- const onPlatform = filteredPrograms.filter(program => program.attributes.receiving_referrals);
195
- const offPlatform = filteredPrograms.filter(program => !program.attributes.receiving_referrals);
196
- filteredPrograms = compact([...onPlatform, ...offPlatform]);
227
+ var onPlatform = filteredPrograms.filter(function (program) {
228
+ return program.attributes.receiving_referrals;
229
+ });
230
+ var offPlatform = filteredPrograms.filter(function (program) {
231
+ return !program.attributes.receiving_referrals;
232
+ });
233
+ filteredPrograms = compact([].concat(_toConsumableArray(onPlatform), _toConsumableArray(offPlatform)));
197
234
  }
198
235
  if (ccAndNonCCPrograms) {
199
- const ccPrograms = getCCOrNonCCPrograms({
200
- filteredPrograms,
236
+ var ccPrograms = getCCOrNonCCPrograms({
237
+ filteredPrograms: filteredPrograms,
201
238
  providerType: 'coordination_center'
202
239
  });
203
- const nonCCPrograms = getCCOrNonCCPrograms({
204
- filteredPrograms,
240
+ var nonCCPrograms = getCCOrNonCCPrograms({
241
+ filteredPrograms: filteredPrograms,
205
242
  providerType: 'provider'
206
243
  });
207
- filteredPrograms = compact([...ccPrograms, ...nonCCPrograms]);
244
+ filteredPrograms = compact([].concat(_toConsumableArray(ccPrograms), _toConsumableArray(nonCCPrograms)));
208
245
  }
209
246
  if (licensedAndUnlicensedReceivingProviders) {
210
- const licensedPrograms = getLicensedOrUnlicensedPrograms({
211
- filteredPrograms,
247
+ var licensedPrograms = getLicensedOrUnlicensedPrograms({
248
+ filteredPrograms: filteredPrograms,
212
249
  isLicensed: true,
213
- licensedProviderIsCC
250
+ licensedProviderIsCC: licensedProviderIsCC
214
251
  });
215
- const unlicensedPrograms = getLicensedOrUnlicensedPrograms({
216
- filteredPrograms,
252
+ var unlicensedPrograms = getLicensedOrUnlicensedPrograms({
253
+ filteredPrograms: filteredPrograms,
217
254
  isLicensed: false
218
255
  });
219
- filteredPrograms = compact([...licensedPrograms, ...unlicensedPrograms]);
256
+ filteredPrograms = compact([].concat(_toConsumableArray(licensedPrograms), _toConsumableArray(unlicensedPrograms)));
220
257
  }
221
258
  if (sensitiveAndNonSensitiveReceivingProvider) {
222
- const sensitiveAndNonSensitivePrograms = getSensitiveAndNonSensitivePrograms({
223
- filteredPrograms,
224
- sensitiveReceivingReferrals,
225
- sensitiveProviderCount,
226
- programCount
259
+ var sensitiveAndNonSensitivePrograms = getSensitiveAndNonSensitivePrograms({
260
+ filteredPrograms: filteredPrograms,
261
+ sensitiveReceivingReferrals: sensitiveReceivingReferrals,
262
+ sensitiveProviderCount: sensitiveProviderCount,
263
+ programCount: programCount
227
264
  });
228
265
  filteredPrograms = sensitiveAndNonSensitivePrograms;
229
266
  }
@@ -231,67 +268,88 @@ const filterGroupedPrograms = _ref6 => {
231
268
  };
232
269
 
233
270
  // Function to filter and select programs based on criteria
234
- const filterAndSelectPrograms = _ref7 => {
235
- let {
236
- sendingProviderIsCC = false,
237
- sendingProviderSensitive = false,
238
- receivingProviderIsCC = false,
239
- licensedProviderIsCC = false,
240
- programInCurrentProvider = false,
241
- receivingProviderLicensed = true,
242
- licensedAndUnlicensedReceivingProviders = false,
243
- receivingProviderSensitive = false,
244
- sensitiveAndNonSensitiveReceivingProvider = false,
245
- receivingReferrals = true,
246
- sensitiveReceivingReferrals,
247
- onAndOffPlatformPrograms = false,
248
- ccAndNonCCPrograms = false,
249
- programsInSameNetwork = false,
250
- singleNetwork = false,
251
- programsInSameProvider = false,
252
- isGrouped = false,
253
- isFunded = false,
254
- requiresAuthorization = false,
255
- sensitiveProviderCount = 1,
256
- programCount = isGrouped ? 2 : 1,
257
- sensitiveService = false,
258
- serviceCount = 1,
259
- cmCodeRequiredOnAuthorization = false
260
- } = _ref7;
271
+ var filterAndSelectPrograms = function filterAndSelectPrograms(_ref7) {
272
+ var _ref7$sendingProvider = _ref7.sendingProviderIsCC,
273
+ sendingProviderIsCC = _ref7$sendingProvider === void 0 ? false : _ref7$sendingProvider,
274
+ _ref7$sendingProvider2 = _ref7.sendingProviderSensitive,
275
+ sendingProviderSensitive = _ref7$sendingProvider2 === void 0 ? false : _ref7$sendingProvider2,
276
+ _ref7$receivingProvid = _ref7.receivingProviderIsCC,
277
+ receivingProviderIsCC = _ref7$receivingProvid === void 0 ? false : _ref7$receivingProvid,
278
+ _ref7$licensedProvide = _ref7.licensedProviderIsCC,
279
+ licensedProviderIsCC = _ref7$licensedProvide === void 0 ? false : _ref7$licensedProvide,
280
+ _ref7$programInCurren = _ref7.programInCurrentProvider,
281
+ programInCurrentProvider = _ref7$programInCurren === void 0 ? false : _ref7$programInCurren,
282
+ _ref7$receivingProvid2 = _ref7.receivingProviderLicensed,
283
+ receivingProviderLicensed = _ref7$receivingProvid2 === void 0 ? true : _ref7$receivingProvid2,
284
+ _ref7$licensedAndUnli = _ref7.licensedAndUnlicensedReceivingProviders,
285
+ licensedAndUnlicensedReceivingProviders = _ref7$licensedAndUnli === void 0 ? false : _ref7$licensedAndUnli,
286
+ _ref7$receivingProvid3 = _ref7.receivingProviderSensitive,
287
+ receivingProviderSensitive = _ref7$receivingProvid3 === void 0 ? false : _ref7$receivingProvid3,
288
+ _ref7$sensitiveAndNon = _ref7.sensitiveAndNonSensitiveReceivingProvider,
289
+ sensitiveAndNonSensitiveReceivingProvider = _ref7$sensitiveAndNon === void 0 ? false : _ref7$sensitiveAndNon,
290
+ _ref7$receivingReferr = _ref7.receivingReferrals,
291
+ receivingReferrals = _ref7$receivingReferr === void 0 ? true : _ref7$receivingReferr,
292
+ sensitiveReceivingReferrals = _ref7.sensitiveReceivingReferrals,
293
+ _ref7$onAndOffPlatfor = _ref7.onAndOffPlatformPrograms,
294
+ onAndOffPlatformPrograms = _ref7$onAndOffPlatfor === void 0 ? false : _ref7$onAndOffPlatfor,
295
+ _ref7$ccAndNonCCProgr = _ref7.ccAndNonCCPrograms,
296
+ ccAndNonCCPrograms = _ref7$ccAndNonCCProgr === void 0 ? false : _ref7$ccAndNonCCProgr,
297
+ _ref7$programsInSameN = _ref7.programsInSameNetwork,
298
+ programsInSameNetwork = _ref7$programsInSameN === void 0 ? false : _ref7$programsInSameN,
299
+ _ref7$singleNetwork = _ref7.singleNetwork,
300
+ singleNetwork = _ref7$singleNetwork === void 0 ? false : _ref7$singleNetwork,
301
+ _ref7$programsInSameP = _ref7.programsInSameProvider,
302
+ programsInSameProvider = _ref7$programsInSameP === void 0 ? false : _ref7$programsInSameP,
303
+ _ref7$isGrouped = _ref7.isGrouped,
304
+ isGrouped = _ref7$isGrouped === void 0 ? false : _ref7$isGrouped,
305
+ _ref7$isFunded = _ref7.isFunded,
306
+ isFunded = _ref7$isFunded === void 0 ? false : _ref7$isFunded,
307
+ _ref7$requiresAuthori = _ref7.requiresAuthorization,
308
+ requiresAuthorization = _ref7$requiresAuthori === void 0 ? false : _ref7$requiresAuthori,
309
+ _ref7$sensitiveProvid = _ref7.sensitiveProviderCount,
310
+ sensitiveProviderCount = _ref7$sensitiveProvid === void 0 ? 1 : _ref7$sensitiveProvid,
311
+ _ref7$programCount = _ref7.programCount,
312
+ programCount = _ref7$programCount === void 0 ? isGrouped ? 2 : 1 : _ref7$programCount,
313
+ _ref7$sensitiveServic = _ref7.sensitiveService,
314
+ sensitiveService = _ref7$sensitiveServic === void 0 ? false : _ref7$sensitiveServic,
315
+ _ref7$serviceCount = _ref7.serviceCount,
316
+ serviceCount = _ref7$serviceCount === void 0 ? 1 : _ref7$serviceCount,
317
+ _ref7$cmCodeRequiredO = _ref7.cmCodeRequiredOnAuthorization,
318
+ cmCodeRequiredOnAuthorization = _ref7$cmCodeRequiredO === void 0 ? false : _ref7$cmCodeRequiredO;
261
319
  // Get the current provider based on criteria
262
- let filteredPrograms;
320
+ var filteredPrograms;
263
321
  if (isGrouped) {
264
322
  filteredPrograms = filterGroupedPrograms({
265
- receivingProviderIsCC,
266
- receivingProviderLicensed,
267
- licensedProviderIsCC,
268
- licensedAndUnlicensedReceivingProviders,
269
- sensitiveAndNonSensitiveReceivingProvider,
270
- sensitiveProviderCount,
271
- programCount,
272
- receivingProviderSensitive,
273
- receivingReferrals,
274
- sensitiveReceivingReferrals,
275
- onAndOffPlatformPrograms,
276
- ccAndNonCCPrograms,
277
- programsInSameNetwork,
278
- singleNetwork,
279
- programsInSameProvider,
280
- isFunded,
281
- requiresAuthorization
323
+ receivingProviderIsCC: receivingProviderIsCC,
324
+ receivingProviderLicensed: receivingProviderLicensed,
325
+ licensedProviderIsCC: licensedProviderIsCC,
326
+ licensedAndUnlicensedReceivingProviders: licensedAndUnlicensedReceivingProviders,
327
+ sensitiveAndNonSensitiveReceivingProvider: sensitiveAndNonSensitiveReceivingProvider,
328
+ sensitiveProviderCount: sensitiveProviderCount,
329
+ programCount: programCount,
330
+ receivingProviderSensitive: receivingProviderSensitive,
331
+ receivingReferrals: receivingReferrals,
332
+ sensitiveReceivingReferrals: sensitiveReceivingReferrals,
333
+ onAndOffPlatformPrograms: onAndOffPlatformPrograms,
334
+ ccAndNonCCPrograms: ccAndNonCCPrograms,
335
+ programsInSameNetwork: programsInSameNetwork,
336
+ singleNetwork: singleNetwork,
337
+ programsInSameProvider: programsInSameProvider,
338
+ isFunded: isFunded,
339
+ requiresAuthorization: requiresAuthorization
282
340
  });
283
341
  } else {
284
342
  filteredPrograms = filterSingleProgram({
285
- receivingProviderIsCC,
286
- sendingProviderIsCC,
287
- sendingProviderSensitive,
288
- programInCurrentProvider,
289
- receivingProviderLicensed,
290
- receivingProviderSensitive,
291
- receivingReferrals,
292
- isFunded,
293
- requiresAuthorization,
294
- cmCodeRequiredOnAuthorization
343
+ receivingProviderIsCC: receivingProviderIsCC,
344
+ sendingProviderIsCC: sendingProviderIsCC,
345
+ sendingProviderSensitive: sendingProviderSensitive,
346
+ programInCurrentProvider: programInCurrentProvider,
347
+ receivingProviderLicensed: receivingProviderLicensed,
348
+ receivingProviderSensitive: receivingProviderSensitive,
349
+ receivingReferrals: receivingReferrals,
350
+ isFunded: isFunded,
351
+ requiresAuthorization: requiresAuthorization,
352
+ cmCodeRequiredOnAuthorization: cmCodeRequiredOnAuthorization
295
353
  });
296
354
  }
297
355
  // Select programs and services
@@ -299,27 +357,33 @@ const filterAndSelectPrograms = _ref7 => {
299
357
  };
300
358
 
301
359
  // Group all unlisted programs by service, filter by program count and filter by results amount
302
- const filterAndSelectUnlistedPrograms = _ref8 => {
360
+ var filterAndSelectUnlistedPrograms = function filterAndSelectUnlistedPrograms(_ref8) {
303
361
  var _groupedUnlistedProgr;
304
- let {
305
- programCount = 1,
306
- results = 1
307
- } = _ref8;
308
- const groupedUnlistedProgramsByService = Object.values(groupBy(unlistedPrograms, 'services[0]'));
309
- let selectedUnlistedPrograms = (_groupedUnlistedProgr = groupedUnlistedProgramsByService.filter(group => group.length === programCount)) === null || _groupedUnlistedProgr === void 0 || (_groupedUnlistedProgr = _groupedUnlistedProgr.slice(0, results)) === null || _groupedUnlistedProgr === void 0 ? void 0 : _groupedUnlistedProgr.flat();
362
+ var _ref8$programCount = _ref8.programCount,
363
+ programCount = _ref8$programCount === void 0 ? 1 : _ref8$programCount,
364
+ _ref8$results = _ref8.results,
365
+ results = _ref8$results === void 0 ? 1 : _ref8$results;
366
+ var groupedUnlistedProgramsByService = Object.values(groupBy(unlistedPrograms, 'services[0]'));
367
+ var selectedUnlistedPrograms = (_groupedUnlistedProgr = groupedUnlistedProgramsByService.filter(function (group) {
368
+ return group.length === programCount;
369
+ })) === null || _groupedUnlistedProgr === void 0 || (_groupedUnlistedProgr = _groupedUnlistedProgr.slice(0, results)) === null || _groupedUnlistedProgr === void 0 ? void 0 : _groupedUnlistedProgr.flat();
310
370
  return selectedUnlistedPrograms;
311
371
  };
312
372
 
313
373
  // Function to select programs and services
314
- const selectPrograms = (filteredPrograms, serviceCount, programCount, sensitiveService) => {
315
- const filteredServices = services.filter(s => s.attributes.sensitive === sensitiveService);
316
- const selectedPrograms = filteredPrograms.slice(0, programCount).map(program => {
317
- const programServices = filteredServices.filter(s => program.relationships.services.data.map(_ref9 => {
318
- let {
319
- id
320
- } = _ref9;
321
- return id;
322
- }).includes(s.id)).slice(0, serviceCount).map(s => s.id);
374
+ var selectPrograms = function selectPrograms(filteredPrograms, serviceCount, programCount, sensitiveService) {
375
+ var filteredServices = services.filter(function (s) {
376
+ return s.attributes.sensitive === sensitiveService;
377
+ });
378
+ var selectedPrograms = filteredPrograms.slice(0, programCount).map(function (program) {
379
+ var programServices = filteredServices.filter(function (s) {
380
+ return program.relationships.services.data.map(function (_ref9) {
381
+ var id = _ref9.id;
382
+ return id;
383
+ }).includes(s.id);
384
+ }).slice(0, serviceCount).map(function (s) {
385
+ return s.id;
386
+ });
323
387
  return {
324
388
  id: program.id,
325
389
  services: programServices
@@ -327,10 +391,10 @@ const selectPrograms = (filteredPrograms, serviceCount, programCount, sensitiveS
327
391
  });
328
392
  return selectedPrograms;
329
393
  };
330
- export const getSelectedPrograms = options => {
394
+ export var getSelectedPrograms = function getSelectedPrograms(options) {
331
395
  return filterAndSelectPrograms(options);
332
396
  };
333
- export const getSelectedUnlistedPrograms = options => {
397
+ export var getSelectedUnlistedPrograms = function getSelectedUnlistedPrograms(options) {
334
398
  return filterAndSelectUnlistedPrograms(options);
335
399
  };
336
400
  //# sourceMappingURL=utils.js.map