@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.
- package/.github/CODEOWNERS +3 -0
- package/.github/pull_request_template.md +25 -0
- package/.github/workflows/quality.yml +44 -0
- package/.github/workflows/semantic-release.yml +26 -0
- package/.nvmrc +1 -0
- package/babel.config.js +11 -0
- package/config-overrides.js +8 -0
- package/dist/AppReferrals.js +45 -45
- package/dist/AppReferrals.js.map +1 -1
- package/dist/AppReferrals.test.js +71 -34
- package/dist/AppReferrals.test.js.map +1 -1
- package/dist/__testUtils__/mockData/components/mockAppReferrals.js +12 -13
- package/dist/__testUtils__/mockData/components/mockAppReferrals.js.map +1 -1
- package/dist/__testUtils__/mockData/mockCases.js +1 -1
- package/dist/__testUtils__/mockData/mockCases.js.map +1 -1
- package/dist/__testUtils__/mockData/mockClinicalModifications.js +3 -3
- package/dist/__testUtils__/mockData/mockClinicalModifications.js.map +1 -1
- package/dist/__testUtils__/mockData/mockEmployees.js +1 -1
- package/dist/__testUtils__/mockData/mockEmployees.js.map +1 -1
- package/dist/__testUtils__/mockData/mockEnums.js +1 -1
- package/dist/__testUtils__/mockData/mockEnums.js.map +1 -1
- package/dist/__testUtils__/mockData/mockFeeSchedulePrograms.js +1 -1
- package/dist/__testUtils__/mockData/mockFeeSchedulePrograms.js.map +1 -1
- package/dist/__testUtils__/mockData/mockFiles.js +1 -1
- package/dist/__testUtils__/mockData/mockFiles.js.map +1 -1
- package/dist/__testUtils__/mockData/mockFormSubmissions.js +1 -1
- package/dist/__testUtils__/mockData/mockFormSubmissions.js.map +1 -1
- package/dist/__testUtils__/mockData/mockFormUsages.js +1 -1
- package/dist/__testUtils__/mockData/mockFormUsages.js.map +1 -1
- package/dist/__testUtils__/mockData/mockForms.js +1 -1
- package/dist/__testUtils__/mockData/mockForms.js.map +1 -1
- package/dist/__testUtils__/mockData/mockInsurances.js +1 -1
- package/dist/__testUtils__/mockData/mockInsurances.js.map +1 -1
- package/dist/__testUtils__/mockData/mockNetworks.js +1 -1
- package/dist/__testUtils__/mockData/mockNetworks.js.map +1 -1
- package/dist/__testUtils__/mockData/mockPeople.js +1 -1
- package/dist/__testUtils__/mockData/mockPeople.js.map +1 -1
- package/dist/__testUtils__/mockData/mockPrograms.js +31 -31
- package/dist/__testUtils__/mockData/mockPrograms.js.map +1 -1
- package/dist/__testUtils__/mockData/mockProviders.js +21 -21
- package/dist/__testUtils__/mockData/mockProviders.js.map +1 -1
- package/dist/__testUtils__/mockData/mockReferrals.js +1 -1
- package/dist/__testUtils__/mockData/mockReferrals.js.map +1 -1
- package/dist/__testUtils__/mockData/mockServiceAuthorizations.js +1 -1
- package/dist/__testUtils__/mockData/mockServiceAuthorizations.js.map +1 -1
- package/dist/__testUtils__/mockData/mockServices.js +1 -1
- package/dist/__testUtils__/mockData/mockServices.js.map +1 -1
- package/dist/__testUtils__/mockData/mockUnlistedPrograms.js +1 -1
- package/dist/__testUtils__/mockData/mockUnlistedPrograms.js.map +1 -1
- package/dist/__testUtils__/mockData/utils.js +282 -218
- package/dist/__testUtils__/mockData/utils.js.map +1 -1
- package/dist/__testUtils__/mockServer/handlers.js +82 -80
- package/dist/__testUtils__/mockServer/handlers.js.map +1 -1
- package/dist/__testUtils__/mockServer/server.js +13 -7
- package/dist/__testUtils__/mockServer/server.js.map +1 -1
- package/dist/__testUtils__/test-utils.js +18 -22
- package/dist/__testUtils__/test-utils.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fetchCaseDocuments.js +41 -10
- package/dist/actions/Document/Contact/Group/fetchCaseDocuments.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fetchContactDocuments.js +41 -10
- package/dist/actions/Document/Contact/Group/fetchContactDocuments.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fileUploadUtils.js +10 -8
- package/dist/actions/Document/Contact/Group/fileUploadUtils.js.map +1 -1
- package/dist/actions/Group/fetchCoreGroupForms.js +97 -46
- package/dist/actions/Group/fetchCoreGroupForms.js.map +1 -1
- package/dist/actions/Referral/cannotMoveToReferralReasons.js +21 -23
- package/dist/actions/Referral/cannotMoveToReferralReasons.js.map +1 -1
- package/dist/actions/Referral/fetchCoreServices.js +169 -70
- package/dist/actions/Referral/fetchCoreServices.js.map +1 -1
- package/dist/actions/Referral/fetchNetworks.js +44 -11
- package/dist/actions/Referral/fetchNetworks.js.map +1 -1
- package/dist/actions/Referral/fetchPrimaryWorkers.js +84 -51
- package/dist/actions/Referral/fetchPrimaryWorkers.js.map +1 -1
- package/dist/actions/Referral/removeReferralProgram.js +15 -10
- package/dist/actions/Referral/removeReferralProgram.js.map +1 -1
- package/dist/api/ApiHooks.js +39 -40
- package/dist/api/ApiHooks.js.map +1 -1
- package/dist/api/config.js +23 -20
- package/dist/api/config.js.map +1 -1
- package/dist/common/form/CurrencyField/index.js +21 -22
- package/dist/common/form/CurrencyField/index.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js +48 -51
- package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/DocumentsListView.js +12 -14
- package/dist/common/form/DocumentUploader/components/DocumentsListView.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/ListViewDocument.js +17 -21
- package/dist/common/form/DocumentUploader/components/ListViewDocument.js.map +1 -1
- package/dist/common/form/ErrorMessage/index.js +9 -17
- package/dist/common/form/ErrorMessage/index.js.map +1 -1
- package/dist/common/form/FileUploadV2/FileUpload.js +137 -159
- package/dist/common/form/FileUploadV2/FileUpload.js.map +1 -1
- package/dist/common/form/FileUploadV2/components/FilePreview.js +5 -8
- package/dist/common/form/FileUploadV2/components/FilePreview.js.map +1 -1
- package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js +21 -26
- package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js.map +1 -1
- package/dist/common/form/FormForm/index.js +194 -143
- package/dist/common/form/FormForm/index.js.map +1 -1
- package/dist/common/utils/utils.js +3 -3
- package/dist/common/utils/utils.js.map +1 -1
- package/dist/components/Card.js +8 -12
- package/dist/components/Card.js.map +1 -1
- package/dist/components/CreateReferralContainer.js +13 -21
- package/dist/components/CreateReferralContainer.js.map +1 -1
- package/dist/components/DollarAmount.js +14 -18
- package/dist/components/DollarAmount.js.map +1 -1
- package/dist/components/ExpandableButton.js +16 -21
- package/dist/components/ExpandableButton.js.map +1 -1
- package/dist/components/NavButtons.js +51 -57
- package/dist/components/NavButtons.js.map +1 -1
- package/dist/components/ReferralStepper.js +41 -44
- package/dist/components/ReferralStepper.js.map +1 -1
- package/dist/components/SearchableField.js +125 -121
- package/dist/components/SearchableField.js.map +1 -1
- package/dist/components/StepHeader.js +16 -25
- package/dist/components/StepHeader.js.map +1 -1
- package/dist/components/Stepper.js +51 -55
- package/dist/components/Stepper.js.map +1 -1
- package/dist/components/modal/Dialog.js +170 -141
- package/dist/components/modal/Dialog.js.map +1 -1
- package/dist/components/modal/Overlay.js +1 -2
- package/dist/components/modal/Overlay.js.map +1 -1
- package/dist/components/service_authorization/AuthorizationSpendCard.js +60 -72
- package/dist/components/service_authorization/AuthorizationSpendCard.js.map +1 -1
- package/dist/components/service_authorization/CapsInfo.js +120 -143
- package/dist/components/service_authorization/CapsInfo.js.map +1 -1
- package/dist/components/service_authorization/CaseStatus.js +14 -18
- package/dist/components/service_authorization/CaseStatus.js.map +1 -1
- package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js +96 -121
- package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js.map +1 -1
- package/dist/components/service_authorization/ReferralAuthSpendExpandable.js +43 -43
- package/dist/components/service_authorization/ReferralAuthSpendExpandable.js.map +1 -1
- package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js +65 -82
- package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js.map +1 -1
- package/dist/components/service_authorization/Spend.js +5 -10
- package/dist/components/service_authorization/Spend.js.map +1 -1
- package/dist/components/service_authorization/formatShortDate.js +6 -6
- package/dist/components/service_authorization/formatShortDate.js.map +1 -1
- package/dist/components/service_authorization/messageConstants.js +2 -2
- package/dist/components/service_authorization/messageConstants.js.map +1 -1
- package/dist/components/spinners/OverlaySpinner/OverlaySpinner.js +23 -34
- package/dist/components/spinners/OverlaySpinner/OverlaySpinner.js.map +1 -1
- package/dist/components/spinners/Spinner/Spinner.js +27 -33
- package/dist/components/spinners/Spinner/Spinner.js.map +1 -1
- package/dist/constants/enums.js +1 -1
- package/dist/constants/enums.js.map +1 -1
- package/dist/constants/eventConstants.js +48 -48
- package/dist/constants/eventConstants.js.map +1 -1
- package/dist/constants/findEnumDisplayName.js +3 -3
- package/dist/constants/findEnumDisplayName.js.map +1 -1
- package/dist/constants.js +6 -6
- package/dist/constants.js.map +1 -1
- package/dist/context/AppCreateReferralProvider.js +36 -25
- package/dist/context/AppCreateReferralProvider.js.map +1 -1
- package/dist/context/state.js +5 -2
- package/dist/context/state.js.map +1 -1
- package/dist/context/withAppCreateReferralContext.js +5 -9
- package/dist/context/withAppCreateReferralContext.js.map +1 -1
- package/dist/hooks/__tests__/useCreateReferrals.test.js +560 -456
- package/dist/hooks/__tests__/useCreateReferrals.test.js.map +1 -1
- package/dist/hooks/sendReferral.js +339 -155
- package/dist/hooks/sendReferral.js.map +1 -1
- package/dist/hooks/useClinicalModificationOptions.js +34 -24
- package/dist/hooks/useClinicalModificationOptions.js.map +1 -1
- package/dist/hooks/useCreateReferrals.js +722 -463
- package/dist/hooks/useCreateReferrals.js.map +1 -1
- package/dist/hooks/useCreateResourceList.js +76 -56
- package/dist/hooks/useCreateResourceList.js.map +1 -1
- package/dist/hooks/useCreateShareEvent.js +42 -18
- package/dist/hooks/useCreateShareEvent.js.map +1 -1
- package/dist/hooks/useForwardReferral.js +118 -78
- package/dist/hooks/useForwardReferral.js.map +1 -1
- package/dist/hooks/usePerson.js +49 -21
- package/dist/hooks/usePerson.js.map +1 -1
- package/dist/hooks/useUpdateResourceList.js +28 -34
- package/dist/hooks/useUpdateResourceList.js.map +1 -1
- package/dist/pages/builder/AboutGroupedReferralsModal.js +27 -48
- package/dist/pages/builder/AboutGroupedReferralsModal.js.map +1 -1
- package/dist/pages/builder/AuthorizationSubform.js +131 -143
- package/dist/pages/builder/AuthorizationSubform.js.map +1 -1
- package/dist/pages/builder/ChooseOneServiceTypeModal.js +53 -56
- package/dist/pages/builder/ChooseOneServiceTypeModal.js.map +1 -1
- package/dist/pages/builder/DetailsDrawer.js +72 -74
- package/dist/pages/builder/DetailsDrawer.js.map +1 -1
- package/dist/pages/builder/LineItem.js +25 -28
- package/dist/pages/builder/LineItem.js.map +1 -1
- package/dist/pages/builder/NoReferralsDisplay.js +29 -41
- package/dist/pages/builder/NoReferralsDisplay.js.map +1 -1
- package/dist/pages/builder/ProgramHeader.js +20 -33
- package/dist/pages/builder/ProgramHeader.js.map +1 -1
- package/dist/pages/builder/ProgramMenu.js +18 -19
- package/dist/pages/builder/ProgramMenu.js.map +1 -1
- package/dist/pages/builder/ReferralBuilder.js +443 -341
- package/dist/pages/builder/ReferralBuilder.js.map +1 -1
- package/dist/pages/builder/ReferralBuilderForm.js +392 -323
- package/dist/pages/builder/ReferralBuilderForm.js.map +1 -1
- package/dist/pages/builder/ReferralCard.js +99 -125
- package/dist/pages/builder/ReferralCard.js.map +1 -1
- package/dist/pages/builder/ReferralProgramCard.js +160 -109
- package/dist/pages/builder/ReferralProgramCard.js.map +1 -1
- package/dist/pages/builder/ReferralProgramMenu.js +116 -102
- package/dist/pages/builder/ReferralProgramMenu.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js +246 -99
- package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js +86 -48
- package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js +133 -74
- package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js +1269 -674
- package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js +575 -305
- package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js.map +1 -1
- package/dist/pages/builder/__tests__/ReferralBuilder.test.js +45 -14
- package/dist/pages/builder/__tests__/ReferralBuilder.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js +815 -407
- package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js +254 -139
- package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js +518 -262
- package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js +504 -273
- package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js.map +1 -1
- package/dist/pages/builder/buildDraftState.js +21 -21
- package/dist/pages/builder/buildDraftState.js.map +1 -1
- package/dist/pages/builder/buildGroupedReferrals.js +113 -80
- package/dist/pages/builder/buildGroupedReferrals.js.map +1 -1
- package/dist/pages/builder/constants.js +12 -12
- package/dist/pages/builder/constants.js.map +1 -1
- package/dist/pages/builder/formatProgramDetail.js +180 -152
- package/dist/pages/builder/formatProgramDetail.js.map +1 -1
- package/dist/pages/builder/useBuildReferrals.js +163 -95
- package/dist/pages/builder/useBuildReferrals.js.map +1 -1
- package/dist/pages/builder/utils.js +133 -84
- package/dist/pages/builder/utils.js.map +1 -1
- package/dist/pages/review/DeleteReferralModal.js +31 -45
- package/dist/pages/review/DeleteReferralModal.js.map +1 -1
- package/dist/pages/review/DropdownMultiplesReferrals.js +92 -75
- package/dist/pages/review/DropdownMultiplesReferrals.js.map +1 -1
- package/dist/pages/review/ReferralsSent.js +239 -200
- package/dist/pages/review/ReferralsSent.js.map +1 -1
- package/dist/pages/review/Review.js +554 -451
- package/dist/pages/review/Review.js.map +1 -1
- package/dist/pages/review/__tests__/CallbackNotifications.test.js +66 -46
- package/dist/pages/review/__tests__/CallbackNotifications.test.js.map +1 -1
- package/dist/pages/review/__tests__/ReferralsSent.test.js +349 -189
- package/dist/pages/review/__tests__/ReferralsSent.test.js.map +1 -1
- package/dist/pages/review/__tests__/Review.test.js +599 -380
- package/dist/pages/review/__tests__/Review.test.js.map +1 -1
- package/dist/pages/review/__tests__/data.js +5 -5
- package/dist/pages/review/__tests__/data.js.map +1 -1
- package/dist/pages/review/constants.js +5 -5
- package/dist/pages/review/constants.js.map +1 -1
- package/dist/pages/supporting-info/SupportingInfo.js +168 -123
- package/dist/pages/supporting-info/SupportingInfo.js.map +1 -1
- package/dist/pages/supporting-info/__tests__/SupportingInfo.test.js +164 -85
- package/dist/pages/supporting-info/__tests__/SupportingInfo.test.js.map +1 -1
- package/dist/pages/supporting-info/__tests__/data.js +1 -1
- package/dist/pages/supporting-info/__tests__/data.js.map +1 -1
- package/dist/reportWebVitals.js +7 -9
- package/dist/reportWebVitals.js.map +1 -1
- package/dist/setupTests.js +30 -8
- package/dist/setupTests.js.map +1 -1
- package/dist/utils/__tests__/canChangeHoldReason.test.js +23 -23
- package/dist/utils/__tests__/canChangeHoldReason.test.js.map +1 -1
- package/dist/utils/__tests__/checkRoles.test.js +10 -10
- package/dist/utils/__tests__/checkRoles.test.js.map +1 -1
- package/dist/utils/canAccept.js +9 -14
- package/dist/utils/canAccept.js.map +1 -1
- package/dist/utils/canChangeHoldReason.js +11 -16
- package/dist/utils/canChangeHoldReason.js.map +1 -1
- package/dist/utils/canHoldForReview.js +8 -13
- package/dist/utils/canHoldForReview.js.map +1 -1
- package/dist/utils/canReject.js +14 -21
- package/dist/utils/canReject.js.map +1 -1
- package/dist/utils/checkRoles.js +10 -10
- package/dist/utils/checkRoles.js.map +1 -1
- package/dist/utils/getProgramServicesPayload.js +20 -20
- package/dist/utils/getProgramServicesPayload.js.map +1 -1
- package/dist/utils/hasUserRole.js +8 -8
- package/dist/utils/hasUserRole.js.map +1 -1
- package/dist/utils/isReferralForwarded.js +2 -4
- package/dist/utils/isReferralForwarded.js.map +1 -1
- package/dist/utils/referralToConsent.js +19 -14
- package/dist/utils/referralToConsent.js.map +1 -1
- package/dist/utils/useDebounce.js +18 -7
- package/dist/utils/useDebounce.js.map +1 -1
- package/dist/utils/useFeatureFlag.js +1 -1
- package/dist/utils/useFeatureFlag.js.map +1 -1
- package/dist/utils/validateCostAmount.js +4 -4
- package/dist/utils/validateCostAmount.js.map +1 -1
- package/dist/utils/validateUnitAmount.js +4 -4
- package/dist/utils/validateUnitAmount.js.map +1 -1
- 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
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
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
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
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
|
-
|
|
25
|
-
|
|
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
|
-
|
|
28
|
-
|
|
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
|
-
|
|
31
|
-
|
|
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
|
-
|
|
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
|
-
|
|
50
|
-
|
|
51
|
-
receivingProviderIsCC = false,
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
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
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
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
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
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
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
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
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
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
|
-
|
|
119
|
-
|
|
120
|
-
|
|
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 [
|
|
151
|
+
return [].concat(_toConsumableArray(nonSensitivePrograms), _toConsumableArray(sensitivePrograms));
|
|
124
152
|
};
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
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
|
-
|
|
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
|
-
|
|
162
|
-
|
|
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
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
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
|
-
|
|
202
|
+
var filteredPrograms = receivingProviderMatch;
|
|
174
203
|
|
|
175
204
|
// Filter programs based on criteria
|
|
176
205
|
if (!onAndOffPlatformPrograms) {
|
|
177
|
-
filteredPrograms = filteredPrograms.filter(
|
|
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
|
-
|
|
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
|
-
|
|
190
|
-
|
|
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
|
-
|
|
195
|
-
|
|
196
|
-
|
|
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
|
-
|
|
200
|
-
filteredPrograms,
|
|
236
|
+
var ccPrograms = getCCOrNonCCPrograms({
|
|
237
|
+
filteredPrograms: filteredPrograms,
|
|
201
238
|
providerType: 'coordination_center'
|
|
202
239
|
});
|
|
203
|
-
|
|
204
|
-
filteredPrograms,
|
|
240
|
+
var nonCCPrograms = getCCOrNonCCPrograms({
|
|
241
|
+
filteredPrograms: filteredPrograms,
|
|
205
242
|
providerType: 'provider'
|
|
206
243
|
});
|
|
207
|
-
filteredPrograms = compact([
|
|
244
|
+
filteredPrograms = compact([].concat(_toConsumableArray(ccPrograms), _toConsumableArray(nonCCPrograms)));
|
|
208
245
|
}
|
|
209
246
|
if (licensedAndUnlicensedReceivingProviders) {
|
|
210
|
-
|
|
211
|
-
filteredPrograms,
|
|
247
|
+
var licensedPrograms = getLicensedOrUnlicensedPrograms({
|
|
248
|
+
filteredPrograms: filteredPrograms,
|
|
212
249
|
isLicensed: true,
|
|
213
|
-
licensedProviderIsCC
|
|
250
|
+
licensedProviderIsCC: licensedProviderIsCC
|
|
214
251
|
});
|
|
215
|
-
|
|
216
|
-
filteredPrograms,
|
|
252
|
+
var unlicensedPrograms = getLicensedOrUnlicensedPrograms({
|
|
253
|
+
filteredPrograms: filteredPrograms,
|
|
217
254
|
isLicensed: false
|
|
218
255
|
});
|
|
219
|
-
filteredPrograms = compact([
|
|
256
|
+
filteredPrograms = compact([].concat(_toConsumableArray(licensedPrograms), _toConsumableArray(unlicensedPrograms)));
|
|
220
257
|
}
|
|
221
258
|
if (sensitiveAndNonSensitiveReceivingProvider) {
|
|
222
|
-
|
|
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
|
-
|
|
235
|
-
|
|
236
|
-
sendingProviderIsCC = false,
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
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
|
-
|
|
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
|
-
|
|
360
|
+
var filterAndSelectUnlistedPrograms = function filterAndSelectUnlistedPrograms(_ref8) {
|
|
303
361
|
var _groupedUnlistedProgr;
|
|
304
|
-
|
|
305
|
-
programCount = 1,
|
|
306
|
-
results =
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
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
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
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
|
|
394
|
+
export var getSelectedPrograms = function getSelectedPrograms(options) {
|
|
331
395
|
return filterAndSelectPrograms(options);
|
|
332
396
|
};
|
|
333
|
-
export
|
|
397
|
+
export var getSelectedUnlistedPrograms = function getSelectedUnlistedPrograms(options) {
|
|
334
398
|
return filterAndSelectUnlistedPrograms(options);
|
|
335
399
|
};
|
|
336
400
|
//# sourceMappingURL=utils.js.map
|