@unite-us/app-create-referral 0.15.62 → 0.15.63
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/dist/AppReferrals.js +45 -45
- package/dist/AppReferrals.js.map +1 -1
- package/dist/AppReferrals.test.js +34 -60
- package/dist/AppReferrals.test.js.map +1 -1
- package/dist/__testUtils__/mockData/components/mockAppReferrals.js +13 -12
- 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 +218 -282
- package/dist/__testUtils__/mockData/utils.js.map +1 -1
- package/dist/__testUtils__/mockServer/handlers.js +80 -82
- package/dist/__testUtils__/mockServer/handlers.js.map +1 -1
- package/dist/__testUtils__/mockServer/server.js +7 -13
- package/dist/__testUtils__/mockServer/server.js.map +1 -1
- package/dist/__testUtils__/test-utils.js +22 -18
- package/dist/__testUtils__/test-utils.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fetchCaseDocuments.js +10 -32
- package/dist/actions/Document/Contact/Group/fetchCaseDocuments.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fetchContactDocuments.js +10 -32
- package/dist/actions/Document/Contact/Group/fetchContactDocuments.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fileUploadUtils.js +8 -10
- package/dist/actions/Document/Contact/Group/fileUploadUtils.js.map +1 -1
- package/dist/actions/Group/fetchCoreGroupForms.js +46 -88
- package/dist/actions/Group/fetchCoreGroupForms.js.map +1 -1
- package/dist/actions/Referral/cannotMoveToReferralReasons.js +23 -21
- package/dist/actions/Referral/cannotMoveToReferralReasons.js.map +1 -1
- package/dist/actions/Referral/fetchCoreServices.js +70 -152
- package/dist/actions/Referral/fetchCoreServices.js.map +1 -1
- package/dist/actions/Referral/fetchNetworks.js +11 -35
- package/dist/actions/Referral/fetchNetworks.js.map +1 -1
- package/dist/actions/Referral/fetchPrimaryWorkers.js +51 -75
- package/dist/actions/Referral/fetchPrimaryWorkers.js.map +1 -1
- package/dist/actions/Referral/removeReferralProgram.js +10 -15
- package/dist/actions/Referral/removeReferralProgram.js.map +1 -1
- package/dist/api/ApiHooks.js +40 -39
- package/dist/api/ApiHooks.js.map +1 -1
- package/dist/api/config.js +20 -23
- package/dist/api/config.js.map +1 -1
- package/dist/common/form/CurrencyField/index.js +22 -21
- package/dist/common/form/CurrencyField/index.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js +51 -48
- package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/DocumentsListView.js +14 -12
- package/dist/common/form/DocumentUploader/components/DocumentsListView.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/ListViewDocument.js +21 -17
- package/dist/common/form/DocumentUploader/components/ListViewDocument.js.map +1 -1
- package/dist/common/form/ErrorMessage/index.js +17 -9
- package/dist/common/form/ErrorMessage/index.js.map +1 -1
- package/dist/common/form/FileUploadV2/FileUpload.js +159 -137
- package/dist/common/form/FileUploadV2/FileUpload.js.map +1 -1
- package/dist/common/form/FileUploadV2/components/FilePreview.js +8 -5
- package/dist/common/form/FileUploadV2/components/FilePreview.js.map +1 -1
- package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js +26 -21
- package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js.map +1 -1
- package/dist/common/form/FormForm/index.js +143 -186
- 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 +12 -8
- package/dist/components/Card.js.map +1 -1
- package/dist/components/CreateReferralContainer.js +21 -13
- package/dist/components/CreateReferralContainer.js.map +1 -1
- package/dist/components/DollarAmount.js +18 -14
- package/dist/components/DollarAmount.js.map +1 -1
- package/dist/components/ExpandableButton.js +21 -16
- package/dist/components/ExpandableButton.js.map +1 -1
- package/dist/components/NavButtons.js +57 -51
- package/dist/components/NavButtons.js.map +1 -1
- package/dist/components/ReferralStepper.js +44 -41
- package/dist/components/ReferralStepper.js.map +1 -1
- package/dist/components/SearchableField.js +121 -125
- package/dist/components/SearchableField.js.map +1 -1
- package/dist/components/StepHeader.js +25 -16
- package/dist/components/StepHeader.js.map +1 -1
- package/dist/components/Stepper.js +55 -51
- package/dist/components/Stepper.js.map +1 -1
- package/dist/components/modal/Dialog.js +141 -170
- package/dist/components/modal/Dialog.js.map +1 -1
- package/dist/components/modal/Overlay.js +2 -1
- package/dist/components/modal/Overlay.js.map +1 -1
- package/dist/components/service_authorization/AuthorizationSpendCard.js +72 -60
- package/dist/components/service_authorization/AuthorizationSpendCard.js.map +1 -1
- package/dist/components/service_authorization/CapsInfo.js +143 -120
- package/dist/components/service_authorization/CapsInfo.js.map +1 -1
- package/dist/components/service_authorization/CaseStatus.js +18 -14
- package/dist/components/service_authorization/CaseStatus.js.map +1 -1
- package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js +121 -96
- 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 +82 -65
- package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js.map +1 -1
- package/dist/components/service_authorization/Spend.js +10 -5
- 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 +34 -23
- package/dist/components/spinners/OverlaySpinner/OverlaySpinner.js.map +1 -1
- package/dist/components/spinners/Spinner/Spinner.js +33 -27
- 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 +25 -36
- package/dist/context/AppCreateReferralProvider.js.map +1 -1
- package/dist/context/state.js +2 -5
- package/dist/context/state.js.map +1 -1
- package/dist/context/withAppCreateReferralContext.js +9 -5
- package/dist/context/withAppCreateReferralContext.js.map +1 -1
- package/dist/hooks/__tests__/useCreateReferrals.test.js +456 -544
- package/dist/hooks/__tests__/useCreateReferrals.test.js.map +1 -1
- package/dist/hooks/sendReferral.js +155 -318
- package/dist/hooks/sendReferral.js.map +1 -1
- package/dist/hooks/useClinicalModificationOptions.js +24 -34
- package/dist/hooks/useClinicalModificationOptions.js.map +1 -1
- package/dist/hooks/useCreateReferrals.js +463 -706
- package/dist/hooks/useCreateReferrals.js.map +1 -1
- package/dist/hooks/useCreateResourceList.js +56 -66
- package/dist/hooks/useCreateResourceList.js.map +1 -1
- package/dist/hooks/useCreateShareEvent.js +18 -33
- package/dist/hooks/useCreateShareEvent.js.map +1 -1
- package/dist/hooks/useForwardReferral.js +78 -105
- package/dist/hooks/useForwardReferral.js.map +1 -1
- package/dist/hooks/usePerson.js +21 -40
- package/dist/hooks/usePerson.js.map +1 -1
- package/dist/hooks/useUpdateResourceList.js +34 -28
- package/dist/hooks/useUpdateResourceList.js.map +1 -1
- package/dist/pages/builder/AboutGroupedReferralsModal.js +48 -27
- package/dist/pages/builder/AboutGroupedReferralsModal.js.map +1 -1
- package/dist/pages/builder/AuthorizationSubform.js +143 -131
- package/dist/pages/builder/AuthorizationSubform.js.map +1 -1
- package/dist/pages/builder/ChooseOneServiceTypeModal.js +56 -53
- package/dist/pages/builder/ChooseOneServiceTypeModal.js.map +1 -1
- package/dist/pages/builder/DetailsDrawer.js +74 -72
- package/dist/pages/builder/DetailsDrawer.js.map +1 -1
- package/dist/pages/builder/LineItem.js +28 -25
- package/dist/pages/builder/LineItem.js.map +1 -1
- package/dist/pages/builder/NoReferralsDisplay.js +41 -29
- package/dist/pages/builder/NoReferralsDisplay.js.map +1 -1
- package/dist/pages/builder/ProgramHeader.js +33 -20
- package/dist/pages/builder/ProgramHeader.js.map +1 -1
- package/dist/pages/builder/ProgramMenu.js +19 -18
- package/dist/pages/builder/ProgramMenu.js.map +1 -1
- package/dist/pages/builder/ReferralBuilder.js +341 -435
- package/dist/pages/builder/ReferralBuilder.js.map +1 -1
- package/dist/pages/builder/ReferralBuilderForm.js +323 -383
- package/dist/pages/builder/ReferralBuilderForm.js.map +1 -1
- package/dist/pages/builder/ReferralCard.js +125 -99
- package/dist/pages/builder/ReferralCard.js.map +1 -1
- package/dist/pages/builder/ReferralProgramCard.js +109 -148
- package/dist/pages/builder/ReferralProgramCard.js.map +1 -1
- package/dist/pages/builder/ReferralProgramMenu.js +102 -116
- package/dist/pages/builder/ReferralProgramMenu.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js +99 -220
- package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js +48 -74
- package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js +74 -117
- package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js +674 -1151
- package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js +305 -519
- package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js.map +1 -1
- package/dist/pages/builder/__tests__/ReferralBuilder.test.js +14 -33
- package/dist/pages/builder/__tests__/ReferralBuilder.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js +407 -727
- package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js +139 -227
- package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js +262 -461
- package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js +273 -455
- 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 +80 -113
- 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 +152 -167
- package/dist/pages/builder/formatProgramDetail.js.map +1 -1
- package/dist/pages/builder/useBuildReferrals.js +95 -153
- package/dist/pages/builder/useBuildReferrals.js.map +1 -1
- package/dist/pages/builder/utils.js +84 -133
- package/dist/pages/builder/utils.js.map +1 -1
- package/dist/pages/review/DeleteReferralModal.js +45 -31
- package/dist/pages/review/DeleteReferralModal.js.map +1 -1
- package/dist/pages/review/DropdownMultiplesReferrals.js +75 -92
- package/dist/pages/review/DropdownMultiplesReferrals.js.map +1 -1
- package/dist/pages/review/ReferralsSent.js +200 -231
- package/dist/pages/review/ReferralsSent.js.map +1 -1
- package/dist/pages/review/Review.js +451 -544
- package/dist/pages/review/Review.js.map +1 -1
- package/dist/pages/review/__tests__/CallbackNotifications.test.js +46 -57
- package/dist/pages/review/__tests__/CallbackNotifications.test.js.map +1 -1
- package/dist/pages/review/__tests__/ReferralsSent.test.js +189 -333
- package/dist/pages/review/__tests__/ReferralsSent.test.js.map +1 -1
- package/dist/pages/review/__tests__/Review.test.js +380 -572
- 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 +123 -160
- package/dist/pages/supporting-info/SupportingInfo.js.map +1 -1
- package/dist/pages/supporting-info/__tests__/SupportingInfo.test.js +85 -146
- 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 +9 -7
- package/dist/reportWebVitals.js.map +1 -1
- package/dist/setupTests.js +8 -30
- 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 +14 -9
- package/dist/utils/canAccept.js.map +1 -1
- package/dist/utils/canChangeHoldReason.js +16 -11
- package/dist/utils/canChangeHoldReason.js.map +1 -1
- package/dist/utils/canHoldForReview.js +13 -8
- package/dist/utils/canHoldForReview.js.map +1 -1
- package/dist/utils/canReject.js +21 -14
- 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 +4 -2
- package/dist/utils/isReferralForwarded.js.map +1 -1
- package/dist/utils/referralToConsent.js +14 -19
- package/dist/utils/referralToConsent.js.map +1 -1
- package/dist/utils/useDebounce.js +7 -18
- 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 +63 -37
- package/.github/CODEOWNERS +0 -3
- package/.github/pull_request_template.md +0 -25
- package/.github/workflows/quality.yml +0 -44
- package/.github/workflows/semantic-release.yml +0 -26
- package/.nvmrc +0 -1
- package/babel.config.js +0 -11
- package/config-overrides.js +0 -8
|
@@ -5,110 +5,135 @@ import Dialog from '../modal/Dialog';
|
|
|
5
5
|
import ReferralAuthSpendExpandable from './ReferralAuthSpendExpandable';
|
|
6
6
|
import LineItem from '../../pages/builder/LineItem';
|
|
7
7
|
import './PreviousAuthorizationRequestsDetails.scss';
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
var requestedItems = items.filter(function (item) {
|
|
13
|
-
return item.state === 'requested';
|
|
14
|
-
});
|
|
8
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
9
|
+
const filterByState = items => {
|
|
10
|
+
const approvedItems = items.filter(item => item.state === 'approved');
|
|
11
|
+
const requestedItems = items.filter(item => item.state === 'requested');
|
|
15
12
|
return {
|
|
16
|
-
approvedItems
|
|
17
|
-
requestedItems
|
|
13
|
+
approvedItems,
|
|
14
|
+
requestedItems
|
|
18
15
|
};
|
|
19
16
|
};
|
|
20
|
-
|
|
17
|
+
const PreviousAuthorizationRequestsDetails = _ref => {
|
|
21
18
|
var _capInfo$startDate;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
19
|
+
let {
|
|
20
|
+
authorizationSpends,
|
|
21
|
+
totalApprovedSpend,
|
|
22
|
+
totalRequestedSpend,
|
|
23
|
+
unit,
|
|
24
|
+
isCostBased,
|
|
25
|
+
capInfo,
|
|
26
|
+
amountAvailable
|
|
27
|
+
} = _ref;
|
|
28
|
+
const modalRef = useRef();
|
|
29
|
+
const closeModal = useCallback(() => {
|
|
31
30
|
modalRef.current.closeDialog();
|
|
32
31
|
}, []);
|
|
33
|
-
|
|
32
|
+
const openModal = useCallback(() => {
|
|
34
33
|
modalRef.current.openDialog();
|
|
35
34
|
}, []);
|
|
36
|
-
|
|
37
|
-
approvedItems
|
|
38
|
-
requestedItems
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
35
|
+
const {
|
|
36
|
+
approvedItems,
|
|
37
|
+
requestedItems
|
|
38
|
+
} = filterByState(authorizationSpends);
|
|
39
|
+
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
40
|
+
children: [/*#__PURE__*/_jsxs("button", {
|
|
41
|
+
"data-testid": "auth-requests-details-view-details-button",
|
|
42
|
+
type: "button",
|
|
43
|
+
onClick: openModal,
|
|
44
|
+
className: "focus:outline-none inline-block",
|
|
45
|
+
children: [/*#__PURE__*/_jsx(Icon, {
|
|
46
|
+
icon: "ExternalLink",
|
|
47
|
+
className: "fill-current text-action-blue"
|
|
48
|
+
}), /*#__PURE__*/_jsx("span", {
|
|
49
|
+
className: "text-action-blue ml-2",
|
|
50
|
+
children: "View details"
|
|
51
|
+
})]
|
|
52
|
+
}), /*#__PURE__*/_jsxs(Dialog, {
|
|
53
|
+
ref: modalRef,
|
|
54
|
+
title: "Authorization Request Details",
|
|
55
|
+
close: closeModal,
|
|
56
|
+
dataTestId: "auth-requests-details-dialog",
|
|
57
|
+
width: "3xl",
|
|
58
|
+
titleStyles: {
|
|
59
|
+
fontWeight: 600,
|
|
60
|
+
color: "#525F73"
|
|
61
|
+
},
|
|
62
|
+
children: [/*#__PURE__*/_jsx("p", {
|
|
63
|
+
children: "This section shows the amount available for authorization, and related information based on the selected service delivery dates."
|
|
64
|
+
}), /*#__PURE__*/_jsx("hr", {
|
|
65
|
+
className: "my-3"
|
|
66
|
+
}), capInfo.hasCap && /*#__PURE__*/_jsxs(_Fragment, {
|
|
67
|
+
children: [/*#__PURE__*/_jsx("dl", {
|
|
68
|
+
className: "m-0 flex justify-between gap-2",
|
|
69
|
+
children: /*#__PURE__*/_jsx(LineItem, {
|
|
70
|
+
field: "AMOUNT AVAILABLE FOR AUTHORIZATION",
|
|
71
|
+
dataTestElement: "auth-requests-details-amount-available",
|
|
72
|
+
valueClassName: "text-text-blue text-sm leading-5",
|
|
73
|
+
children: amountAvailable
|
|
74
|
+
})
|
|
75
|
+
}), /*#__PURE__*/_jsx("p", {
|
|
76
|
+
className: "mt-3",
|
|
77
|
+
children: "The amount available for authorization is the cap minus the Amount Currently Authorized."
|
|
78
|
+
}), /*#__PURE__*/_jsx("hr", {
|
|
79
|
+
className: "my-3"
|
|
80
|
+
})]
|
|
81
|
+
}), /*#__PURE__*/_jsx(ReferralAuthSpendExpandable, {
|
|
82
|
+
title: "Amount Currently Authorized:",
|
|
83
|
+
items: approvedItems,
|
|
84
|
+
totalSpend: totalApprovedSpend,
|
|
85
|
+
unit: unit,
|
|
86
|
+
isAuthorized: true,
|
|
87
|
+
isCostBased: isCostBased
|
|
88
|
+
}), capInfo.hasCap && /*#__PURE__*/_jsx("p", {
|
|
89
|
+
className: "mt-3",
|
|
90
|
+
children: "Any currently authorized services that fall within the cap period are shown here."
|
|
91
|
+
}), /*#__PURE__*/_jsx("hr", {
|
|
92
|
+
className: "my-3"
|
|
93
|
+
}), capInfo.hasCap && /*#__PURE__*/_jsxs(_Fragment, {
|
|
94
|
+
children: [/*#__PURE__*/_jsxs("dl", {
|
|
95
|
+
className: "m-0 flex flex-col gap-y-3 gap-x-2",
|
|
96
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
97
|
+
className: "flex justify-between",
|
|
98
|
+
children: /*#__PURE__*/_jsx(LineItem, {
|
|
99
|
+
field: "Cap",
|
|
100
|
+
dataTestElement: "auth-requests-details-cap",
|
|
101
|
+
fieldClassName: "text-dark-grey",
|
|
102
|
+
children: capInfo.formattedCap
|
|
103
|
+
})
|
|
104
|
+
}), ((_capInfo$startDate = capInfo.startDate) === null || _capInfo$startDate === void 0 ? void 0 : _capInfo$startDate.isValid()) && /*#__PURE__*/_jsxs(_Fragment, {
|
|
105
|
+
children: [/*#__PURE__*/_jsx("hr", {
|
|
106
|
+
className: "col-span-2"
|
|
107
|
+
}), /*#__PURE__*/_jsx("div", {
|
|
108
|
+
className: "flex justify-between",
|
|
109
|
+
children: /*#__PURE__*/_jsx(LineItem, {
|
|
110
|
+
field: "Cap Period",
|
|
111
|
+
dataTestElement: "auth-requests-details-cap-period",
|
|
112
|
+
fieldClassName: "text-dark-grey",
|
|
113
|
+
children: capInfo.formattedCapPeriod
|
|
114
|
+
})
|
|
115
|
+
}), /*#__PURE__*/_jsx("p", {
|
|
116
|
+
children: "The cap period is based on the selected service delivery dates."
|
|
117
|
+
})]
|
|
118
|
+
})]
|
|
119
|
+
}), /*#__PURE__*/_jsx("hr", {
|
|
120
|
+
className: "my-3 col-span-2"
|
|
121
|
+
})]
|
|
122
|
+
}), /*#__PURE__*/_jsx(ReferralAuthSpendExpandable, {
|
|
123
|
+
title: "Amount Pending Authorization:",
|
|
124
|
+
items: requestedItems,
|
|
125
|
+
totalSpend: totalRequestedSpend,
|
|
126
|
+
unit: unit,
|
|
127
|
+
isAuthorized: false,
|
|
128
|
+
isCostBased: isCostBased
|
|
129
|
+
}), capInfo.hasCap && /*#__PURE__*/_jsx("p", {
|
|
130
|
+
className: "my-3",
|
|
131
|
+
children: "If accepted, pending requests will count towards the cap and reduce the amount available for authorization."
|
|
132
|
+
}), /*#__PURE__*/_jsx("hr", {
|
|
133
|
+
className: "my-3"
|
|
134
|
+
})]
|
|
135
|
+
})]
|
|
136
|
+
});
|
|
112
137
|
};
|
|
113
138
|
PreviousAuthorizationRequestsDetails.propTypes = {
|
|
114
139
|
authorizationSpends: PropTypes.arrayOf(PropTypes.shape({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PreviousAuthorizationRequestsDetails.js","names":["React","useRef","useCallback","PropTypes","Icon","Dialog","ReferralAuthSpendExpandable","LineItem","filterByState","items","approvedItems","filter","item","state","requestedItems","PreviousAuthorizationRequestsDetails","_ref","_capInfo$startDate","authorizationSpends","totalApprovedSpend","totalRequestedSpend","unit","isCostBased","capInfo","amountAvailable","modalRef","closeModal","current","closeDialog","openModal","openDialog","_filterByState","createElement","Fragment","type","onClick","className","icon","ref","title","close","dataTestId","width","titleStyles","fontWeight","color","hasCap","field","dataTestElement","valueClassName","totalSpend","isAuthorized","fieldClassName","formattedCap","startDate","isValid","formattedCapPeriod","propTypes","arrayOf","shape","id","string","isRequired","short_id","spend","number","service_starts_at","service_ends_at","updated_at","created_at","bool","object","defaultProps"],"sources":["../../../src/components/service_authorization/PreviousAuthorizationRequestsDetails.jsx"],"sourcesContent":["import React, { useRef, useCallback } from 'react';\nimport PropTypes from 'prop-types';\nimport { Icon } from '@unite-us/app-components'; \nimport Dialog from '../modal/Dialog';\nimport ReferralAuthSpendExpandable from './ReferralAuthSpendExpandable';\nimport LineItem from '../../pages/builder/LineItem';\nimport './PreviousAuthorizationRequestsDetails.scss';\n\n\nconst filterByState = (items) => {\n const approvedItems = items.filter((item) => item.state === 'approved');\n const requestedItems = items.filter((item) => item.state === 'requested');\n return { approvedItems, requestedItems };\n};\n\nconst PreviousAuthorizationRequestsDetails = (\n {\n authorizationSpends,\n totalApprovedSpend,\n totalRequestedSpend,\n unit,\n isCostBased,\n capInfo,\n amountAvailable,\n },\n) => {\n const modalRef = useRef();\n\n const closeModal = useCallback(() => {\n modalRef.current.closeDialog();\n }, []);\n\n const openModal = useCallback(() => {\n modalRef.current.openDialog();\n }, []);\n\n const { approvedItems, requestedItems } = filterByState(authorizationSpends);\n\n return (\n <>\n <button\n data-testid=\"auth-requests-details-view-details-button\"\n type=\"button\"\n onClick={openModal}\n className=\"focus:outline-none inline-block\"\n >\n <Icon icon=\"ExternalLink\" className=\"fill-current text-action-blue\" />\n <span className=\"text-action-blue ml-2\">\n View details\n </span>\n </button>\n <Dialog\n ref={modalRef}\n title=\"Authorization Request Details\"\n close={closeModal}\n dataTestId=\"auth-requests-details-dialog\"\n width=\"3xl\"\n titleStyles={{fontWeight: 600, color: \"#525F73\"}}\n >\n <p>\n This section shows the amount available for authorization, and related information based on the selected service delivery dates.\n </p>\n <hr className=\"my-3\" />\n { capInfo.hasCap && (\n <>\n <dl className=\"m-0 flex justify-between gap-2\">\n <LineItem\n field=\"AMOUNT AVAILABLE FOR AUTHORIZATION\"\n dataTestElement=\"auth-requests-details-amount-available\"\n valueClassName=\"text-text-blue text-sm leading-5\"\n >\n {amountAvailable}\n </LineItem>\n </dl>\n <p className=\"mt-3\">\n The amount available for authorization is the cap minus the Amount Currently Authorized.\n </p>\n <hr className=\"my-3\" />\n </>\n )}\n\n <ReferralAuthSpendExpandable\n title=\"Amount Currently Authorized:\"\n items={approvedItems}\n totalSpend={totalApprovedSpend}\n unit={unit}\n isAuthorized\n isCostBased={isCostBased}\n />\n { capInfo.hasCap && (\n <p className=\"mt-3\">\n Any currently authorized services that fall within the cap period are shown here.\n </p>\n )}\n\n <hr className=\"my-3\" />\n\n { capInfo.hasCap && (\n <>\n <dl className=\"m-0 flex flex-col gap-y-3 gap-x-2\">\n <div className=\"flex justify-between\">\n <LineItem\n field=\"Cap\"\n dataTestElement=\"auth-requests-details-cap\"\n fieldClassName=\"text-dark-grey\"\n >\n {capInfo.formattedCap}\n </LineItem>\n </div>\n {capInfo.startDate?.isValid() && (\n <>\n <hr className=\"col-span-2\" />\n <div className=\"flex justify-between\">\n <LineItem\n field=\"Cap Period\"\n dataTestElement=\"auth-requests-details-cap-period\"\n fieldClassName=\"text-dark-grey\"\n >\n {capInfo.formattedCapPeriod}\n </LineItem>\n </div>\n <p>\n The cap period is based on the selected service delivery dates.\n </p>\n </>\n )}\n </dl>\n\n <hr className=\"my-3 col-span-2\" />\n </>\n )}\n\n <ReferralAuthSpendExpandable\n title=\"Amount Pending Authorization:\"\n items={requestedItems}\n totalSpend={totalRequestedSpend}\n unit={unit}\n isAuthorized={false}\n isCostBased={isCostBased}\n />\n\n { capInfo.hasCap && (\n <p className=\"my-3\">\n If accepted, pending requests will count towards the cap and reduce the amount available for authorization.\n </p>\n )}\n\n <hr className=\"my-3\" />\n\n </Dialog>\n </>\n );\n};\n\nPreviousAuthorizationRequestsDetails.propTypes = {\n authorizationSpends: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n short_id: PropTypes.string.isRequired,\n state: PropTypes.string.isRequired,\n spend: PropTypes.number.isRequired,\n service_starts_at: PropTypes.string.isRequired,\n service_ends_at: PropTypes.string.isRequired,\n updated_at: PropTypes.string.isRequired,\n created_at: PropTypes.string.isRequired,\n }),\n ).isRequired,\n totalApprovedSpend: PropTypes.string.isRequired,\n totalRequestedSpend: PropTypes.string.isRequired,\n unit: PropTypes.string.isRequired,\n capInfo: PropTypes.shape({\n hasCap: PropTypes.bool.isRequired,\n formattedCap: PropTypes.string,\n formattedCapPeriod: PropTypes.string,\n startDate: PropTypes.object,\n }).isRequired,\n amountAvailable: PropTypes.string,\n isCostBased: PropTypes.bool.isRequired,\n};\n\nPreviousAuthorizationRequestsDetails.defaultProps = {\n amountAvailable: null,\n};\n\nexport default PreviousAuthorizationRequestsDetails;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"PreviousAuthorizationRequestsDetails.js","names":["React","useRef","useCallback","PropTypes","Icon","Dialog","ReferralAuthSpendExpandable","LineItem","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","filterByState","items","approvedItems","filter","item","state","requestedItems","PreviousAuthorizationRequestsDetails","_ref","_capInfo$startDate","authorizationSpends","totalApprovedSpend","totalRequestedSpend","unit","isCostBased","capInfo","amountAvailable","modalRef","closeModal","current","closeDialog","openModal","openDialog","children","type","onClick","className","icon","ref","title","close","dataTestId","width","titleStyles","fontWeight","color","hasCap","field","dataTestElement","valueClassName","totalSpend","isAuthorized","fieldClassName","formattedCap","startDate","isValid","formattedCapPeriod","propTypes","arrayOf","shape","id","string","isRequired","short_id","spend","number","service_starts_at","service_ends_at","updated_at","created_at","bool","object","defaultProps"],"sources":["../../../src/components/service_authorization/PreviousAuthorizationRequestsDetails.jsx"],"sourcesContent":["import React, { useRef, useCallback } from 'react';\nimport PropTypes from 'prop-types';\nimport { Icon } from '@unite-us/app-components'; \nimport Dialog from '../modal/Dialog';\nimport ReferralAuthSpendExpandable from './ReferralAuthSpendExpandable';\nimport LineItem from '../../pages/builder/LineItem';\nimport './PreviousAuthorizationRequestsDetails.scss';\n\n\nconst filterByState = (items) => {\n const approvedItems = items.filter((item) => item.state === 'approved');\n const requestedItems = items.filter((item) => item.state === 'requested');\n return { approvedItems, requestedItems };\n};\n\nconst PreviousAuthorizationRequestsDetails = (\n {\n authorizationSpends,\n totalApprovedSpend,\n totalRequestedSpend,\n unit,\n isCostBased,\n capInfo,\n amountAvailable,\n },\n) => {\n const modalRef = useRef();\n\n const closeModal = useCallback(() => {\n modalRef.current.closeDialog();\n }, []);\n\n const openModal = useCallback(() => {\n modalRef.current.openDialog();\n }, []);\n\n const { approvedItems, requestedItems } = filterByState(authorizationSpends);\n\n return (\n <>\n <button\n data-testid=\"auth-requests-details-view-details-button\"\n type=\"button\"\n onClick={openModal}\n className=\"focus:outline-none inline-block\"\n >\n <Icon icon=\"ExternalLink\" className=\"fill-current text-action-blue\" />\n <span className=\"text-action-blue ml-2\">\n View details\n </span>\n </button>\n <Dialog\n ref={modalRef}\n title=\"Authorization Request Details\"\n close={closeModal}\n dataTestId=\"auth-requests-details-dialog\"\n width=\"3xl\"\n titleStyles={{fontWeight: 600, color: \"#525F73\"}}\n >\n <p>\n This section shows the amount available for authorization, and related information based on the selected service delivery dates.\n </p>\n <hr className=\"my-3\" />\n { capInfo.hasCap && (\n <>\n <dl className=\"m-0 flex justify-between gap-2\">\n <LineItem\n field=\"AMOUNT AVAILABLE FOR AUTHORIZATION\"\n dataTestElement=\"auth-requests-details-amount-available\"\n valueClassName=\"text-text-blue text-sm leading-5\"\n >\n {amountAvailable}\n </LineItem>\n </dl>\n <p className=\"mt-3\">\n The amount available for authorization is the cap minus the Amount Currently Authorized.\n </p>\n <hr className=\"my-3\" />\n </>\n )}\n\n <ReferralAuthSpendExpandable\n title=\"Amount Currently Authorized:\"\n items={approvedItems}\n totalSpend={totalApprovedSpend}\n unit={unit}\n isAuthorized\n isCostBased={isCostBased}\n />\n { capInfo.hasCap && (\n <p className=\"mt-3\">\n Any currently authorized services that fall within the cap period are shown here.\n </p>\n )}\n\n <hr className=\"my-3\" />\n\n { capInfo.hasCap && (\n <>\n <dl className=\"m-0 flex flex-col gap-y-3 gap-x-2\">\n <div className=\"flex justify-between\">\n <LineItem\n field=\"Cap\"\n dataTestElement=\"auth-requests-details-cap\"\n fieldClassName=\"text-dark-grey\"\n >\n {capInfo.formattedCap}\n </LineItem>\n </div>\n {capInfo.startDate?.isValid() && (\n <>\n <hr className=\"col-span-2\" />\n <div className=\"flex justify-between\">\n <LineItem\n field=\"Cap Period\"\n dataTestElement=\"auth-requests-details-cap-period\"\n fieldClassName=\"text-dark-grey\"\n >\n {capInfo.formattedCapPeriod}\n </LineItem>\n </div>\n <p>\n The cap period is based on the selected service delivery dates.\n </p>\n </>\n )}\n </dl>\n\n <hr className=\"my-3 col-span-2\" />\n </>\n )}\n\n <ReferralAuthSpendExpandable\n title=\"Amount Pending Authorization:\"\n items={requestedItems}\n totalSpend={totalRequestedSpend}\n unit={unit}\n isAuthorized={false}\n isCostBased={isCostBased}\n />\n\n { capInfo.hasCap && (\n <p className=\"my-3\">\n If accepted, pending requests will count towards the cap and reduce the amount available for authorization.\n </p>\n )}\n\n <hr className=\"my-3\" />\n\n </Dialog>\n </>\n );\n};\n\nPreviousAuthorizationRequestsDetails.propTypes = {\n authorizationSpends: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n short_id: PropTypes.string.isRequired,\n state: PropTypes.string.isRequired,\n spend: PropTypes.number.isRequired,\n service_starts_at: PropTypes.string.isRequired,\n service_ends_at: PropTypes.string.isRequired,\n updated_at: PropTypes.string.isRequired,\n created_at: PropTypes.string.isRequired,\n }),\n ).isRequired,\n totalApprovedSpend: PropTypes.string.isRequired,\n totalRequestedSpend: PropTypes.string.isRequired,\n unit: PropTypes.string.isRequired,\n capInfo: PropTypes.shape({\n hasCap: PropTypes.bool.isRequired,\n formattedCap: PropTypes.string,\n formattedCapPeriod: PropTypes.string,\n startDate: PropTypes.object,\n }).isRequired,\n amountAvailable: PropTypes.string,\n isCostBased: PropTypes.bool.isRequired,\n};\n\nPreviousAuthorizationRequestsDetails.defaultProps = {\n amountAvailable: null,\n};\n\nexport default PreviousAuthorizationRequestsDetails;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
2
|
-
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
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 _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; }
|
|
5
|
-
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
6
|
-
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
7
1
|
import React, { useState, useCallback } from 'react';
|
|
8
2
|
import PropTypes from 'prop-types';
|
|
9
3
|
import { pluralize } from 'humanize-plus';
|
|
10
4
|
import ExpandableButton from '../ExpandableButton';
|
|
11
5
|
import AuthorizationSpendCard from './AuthorizationSpendCard';
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
setIsOpen(
|
|
25
|
-
return !prevIsOpen;
|
|
26
|
-
});
|
|
6
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
7
|
+
const ReferralAuthSpendExpandable = _ref => {
|
|
8
|
+
let {
|
|
9
|
+
title,
|
|
10
|
+
items,
|
|
11
|
+
totalSpend,
|
|
12
|
+
unit,
|
|
13
|
+
isAuthorized,
|
|
14
|
+
isCostBased
|
|
15
|
+
} = _ref;
|
|
16
|
+
const [isOpen, setIsOpen] = useState(false);
|
|
17
|
+
const onClick = useCallback(() => {
|
|
18
|
+
setIsOpen(prevIsOpen => !prevIsOpen);
|
|
27
19
|
}, []);
|
|
28
|
-
|
|
29
|
-
return /*#__PURE__*/
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
})
|
|
49
|
-
|
|
20
|
+
const requestCount = "".concat(items.length, " ").concat(pluralize(items.length, 'request'));
|
|
21
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
22
|
+
children: [/*#__PURE__*/_jsxs("div", {
|
|
23
|
+
className: "flex justify-between my-2",
|
|
24
|
+
children: [/*#__PURE__*/_jsx("h4", {
|
|
25
|
+
className: "text-dark-grey",
|
|
26
|
+
children: title
|
|
27
|
+
}), /*#__PURE__*/_jsx("span", {
|
|
28
|
+
children: totalSpend
|
|
29
|
+
})]
|
|
30
|
+
}), /*#__PURE__*/_jsxs("div", {
|
|
31
|
+
className: "flex items-center",
|
|
32
|
+
children: [/*#__PURE__*/_jsx("span", {
|
|
33
|
+
children: requestCount
|
|
34
|
+
}), items.length > 0 && /*#__PURE__*/_jsx(ExpandableButton, {
|
|
35
|
+
isOpen: isOpen,
|
|
36
|
+
onClick: onClick,
|
|
37
|
+
dataTestId: "expandable-button-".concat(isAuthorized ? 'authorized' : 'not-yet-authorized'),
|
|
38
|
+
className: "ml-3"
|
|
39
|
+
})]
|
|
40
|
+
}), isOpen && /*#__PURE__*/_jsx(_Fragment, {
|
|
41
|
+
children: items.map(item => /*#__PURE__*/_jsx(AuthorizationSpendCard, {
|
|
42
|
+
item: item,
|
|
43
|
+
unit: unit,
|
|
44
|
+
isAuthorized: isAuthorized,
|
|
45
|
+
isCostBased: isCostBased,
|
|
46
|
+
cardClassName: "my-3 w-3/4"
|
|
47
|
+
}, item.short_id))
|
|
48
|
+
})]
|
|
49
|
+
});
|
|
50
50
|
};
|
|
51
51
|
ReferralAuthSpendExpandable.propTypes = {
|
|
52
52
|
title: PropTypes.string.isRequired,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReferralAuthSpendExpandable.js","names":["React","useState","useCallback","PropTypes","pluralize","ExpandableButton","AuthorizationSpendCard","
|
|
1
|
+
{"version":3,"file":"ReferralAuthSpendExpandable.js","names":["React","useState","useCallback","PropTypes","pluralize","ExpandableButton","AuthorizationSpendCard","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ReferralAuthSpendExpandable","_ref","title","items","totalSpend","unit","isAuthorized","isCostBased","isOpen","setIsOpen","onClick","prevIsOpen","requestCount","concat","length","children","className","dataTestId","map","item","cardClassName","short_id","propTypes","string","isRequired","arrayOf","shape","id","state","spend","number","service_starts_at","service_ends_at","updated_at","created_at","requester_name","case_state","case_opened_date","bool"],"sources":["../../../src/components/service_authorization/ReferralAuthSpendExpandable.jsx"],"sourcesContent":["import React, { useState, useCallback } from 'react';\nimport PropTypes from 'prop-types';\nimport { pluralize } from 'humanize-plus';\nimport ExpandableButton from '../ExpandableButton';\nimport AuthorizationSpendCard from './AuthorizationSpendCard';\n\nconst ReferralAuthSpendExpandable = ({\n title,\n items,\n totalSpend,\n unit,\n isAuthorized,\n isCostBased,\n}) => {\n const [isOpen, setIsOpen] = useState(false);\n\n const onClick = useCallback(() => {\n setIsOpen((prevIsOpen) => !prevIsOpen);\n }, []);\n\n const requestCount = `${items.length} ${pluralize(items.length, 'request')}`;\n\n return (\n <div>\n <div className=\"flex justify-between my-2\">\n <h4 className='text-dark-grey'>{title}</h4>\n <span>{totalSpend}</span>\n </div>\n <div className=\"flex items-center\">\n <span>{requestCount}</span>\n {items.length > 0 && (\n <ExpandableButton\n isOpen={isOpen}\n onClick={onClick}\n dataTestId={`expandable-button-${isAuthorized ? 'authorized' : 'not-yet-authorized'}`}\n className=\"ml-3\"\n />\n )}\n </div>\n {isOpen && (\n <>\n {items.map((item) => (\n <AuthorizationSpendCard\n key={item.short_id}\n item={item}\n unit={unit}\n isAuthorized={isAuthorized}\n isCostBased={isCostBased}\n cardClassName=\"my-3 w-3/4\"\n />\n ))}\n </>\n )}\n </div>\n );\n};\n\nReferralAuthSpendExpandable.propTypes = {\n title: PropTypes.string.isRequired,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n short_id: PropTypes.string.isRequired,\n state: PropTypes.string.isRequired,\n spend: PropTypes.number.isRequired,\n service_starts_at: PropTypes.string.isRequired,\n service_ends_at: PropTypes.string.isRequired,\n updated_at: PropTypes.string.isRequired,\n created_at: PropTypes.string.isRequired,\n requester_name: PropTypes.string.isRequired,\n case_state: PropTypes.string.isRequired,\n case_opened_date: PropTypes.string.isRequired,\n }),\n ).isRequired,\n totalSpend: PropTypes.string.isRequired,\n unit: PropTypes.string.isRequired,\n isAuthorized: PropTypes.bool.isRequired,\n isCostBased: PropTypes.bool.isRequired,\n};\n\nexport default ReferralAuthSpendExpandable;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,71 +5,88 @@ import { feeSchedulePrograms as fspUtils } from '@unite-us/client-utils';
|
|
|
5
5
|
import DollarAmount from '../DollarAmount';
|
|
6
6
|
import LineItem from '../../pages/builder/LineItem';
|
|
7
7
|
import { formatShortDateFromTimestamp } from './formatShortDate';
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
8
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
|
+
const ReferralAuthorizationRequestSummary = _ref => {
|
|
10
|
+
let {
|
|
11
|
+
authorizationRequest,
|
|
12
|
+
feeScheduleProgram
|
|
13
|
+
} = _ref;
|
|
14
|
+
const {
|
|
15
|
+
service_start,
|
|
16
|
+
service_end,
|
|
17
|
+
amount_requested,
|
|
18
|
+
icd10_code
|
|
19
|
+
} = authorizationRequest;
|
|
20
|
+
const isCostBased = fspUtils.isCostPaymentType(feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.payment_type);
|
|
21
|
+
const isSingleDateRequested = service_start && !service_end;
|
|
22
|
+
const showUnits = !isCostBased && (feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit);
|
|
23
|
+
const showRate = showUnits && (feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit_rate) > 0;
|
|
24
|
+
const fieldClassName = "text-brand-blue text-sm font-bold leading-5 break-word";
|
|
25
|
+
return /*#__PURE__*/_jsxs("dl", {
|
|
26
|
+
className: "grid grid-cols-line-items gap-x-24 gap-y-2",
|
|
27
|
+
children: [/*#__PURE__*/_jsx(LineItem, {
|
|
28
|
+
field: "Contracted Program",
|
|
29
|
+
fieldClassName: fieldClassName,
|
|
30
|
+
dataTestElement: "request-contracted-program",
|
|
31
|
+
children: feeScheduleProgram.name
|
|
32
|
+
}), /*#__PURE__*/_jsx(LineItem, {
|
|
33
|
+
field: "Payment Approach",
|
|
34
|
+
fieldClassName: fieldClassName,
|
|
35
|
+
dataTestElement: "request-payment-approach",
|
|
36
|
+
children: fspUtils.PAYMENT_TYPES[feeScheduleProgram.payment_type]
|
|
37
|
+
}), showUnits && /*#__PURE__*/_jsx(LineItem, {
|
|
38
|
+
field: "Unit",
|
|
39
|
+
fieldClassName: fieldClassName,
|
|
40
|
+
dataTestElement: "request-unit",
|
|
41
|
+
children: /*#__PURE__*/_jsx("span", {
|
|
42
|
+
className: "capitalize",
|
|
43
|
+
children: feeScheduleProgram.unit
|
|
44
|
+
})
|
|
45
|
+
}), showRate && /*#__PURE__*/_jsxs(LineItem, {
|
|
46
|
+
field: "Rate",
|
|
47
|
+
fieldClassName: fieldClassName,
|
|
48
|
+
dataTestElement: "request-rate",
|
|
49
|
+
children: [/*#__PURE__*/_jsx(DollarAmount, {
|
|
50
|
+
value: feeScheduleProgram.unit_rate,
|
|
51
|
+
convertCents: true
|
|
52
|
+
}), ' per ', feeScheduleProgram.unit]
|
|
53
|
+
}), feeScheduleProgram.cap_information && /*#__PURE__*/_jsx(LineItem, {
|
|
54
|
+
field: "Program Cap",
|
|
55
|
+
fieldClassName: fieldClassName,
|
|
56
|
+
dataTestElement: "request-cap",
|
|
57
|
+
children: /*#__PURE__*/_jsx("div", {
|
|
58
|
+
dangerouslySetInnerHTML: {
|
|
59
|
+
__html: feeScheduleProgram.cap_information
|
|
60
|
+
}
|
|
61
|
+
})
|
|
62
|
+
}), /*#__PURE__*/_jsx(LineItem, {
|
|
63
|
+
field: "Amount Requested",
|
|
64
|
+
fieldClassName: fieldClassName,
|
|
65
|
+
dataTestElement: "amount-requested",
|
|
66
|
+
children: isCostBased ? /*#__PURE__*/_jsx(DollarAmount, {
|
|
67
|
+
value: amount_requested,
|
|
68
|
+
convertCents: true
|
|
69
|
+
}) : "".concat(amount_requested, " ").concat(pluralize(feeScheduleProgram.unit, amount_requested))
|
|
70
|
+
}), isSingleDateRequested ? /*#__PURE__*/_jsx(LineItem, {
|
|
71
|
+
field: "Service Delivery Date",
|
|
72
|
+
fieldClassName: fieldClassName,
|
|
73
|
+
dataTestElement: "request-service-delivery-date",
|
|
74
|
+
children: formatShortDateFromTimestamp(service_start)
|
|
75
|
+
}) : /*#__PURE__*/_jsxs(LineItem, {
|
|
76
|
+
field: "Service Delivery Dates",
|
|
77
|
+
fieldClassName: fieldClassName,
|
|
78
|
+
dataTestElement: "request-service-delivery-dates",
|
|
79
|
+
children: [formatShortDateFromTimestamp(service_start), " - ", formatShortDateFromTimestamp(service_end)]
|
|
80
|
+
}), feeScheduleProgram.cm_code_required_on_authorization && /*#__PURE__*/_jsx(LineItem, {
|
|
81
|
+
field: "ICD-10 Code",
|
|
82
|
+
fieldClassName: fieldClassName,
|
|
83
|
+
dataTestElement: "icd10-code",
|
|
84
|
+
children: /*#__PURE__*/_jsx("span", {
|
|
85
|
+
className: "capitalize",
|
|
86
|
+
children: icd10_code.value
|
|
87
|
+
})
|
|
88
|
+
})]
|
|
89
|
+
});
|
|
73
90
|
};
|
|
74
91
|
ReferralAuthorizationRequestSummary.propTypes = {
|
|
75
92
|
authorizationRequest: PropTypes.object.isRequired,
|