@unite-us/app-create-referral 0.15.170 → 0.15.171
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.map +1 -1
- package/dist/AppReferrals.scss +2 -2
- package/dist/AppReferrals.test.js +6 -6
- package/dist/AppReferrals.test.js.map +1 -1
- package/dist/__testUtils__/mockServer/handlers.js +6 -6
- package/dist/__testUtils__/mockServer/handlers.js.map +1 -1
- package/dist/__testUtils__/mockServer/server.js.map +1 -1
- package/dist/__testUtils__/test-utils.js +5 -5
- package/dist/__testUtils__/test-utils.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fetchCaseDocuments.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fetchContactDocuments.js.map +1 -1
- package/dist/actions/Document/Contact/Group/fileUploadUtils.js.map +1 -1
- package/dist/actions/Group/fetchCoreGroupForms.js.map +1 -1
- package/dist/actions/Referral/cannotMoveToReferralReasons.js.map +1 -1
- package/dist/actions/Referral/fetchCoreServices.js.map +1 -1
- package/dist/actions/Referral/fetchPrimaryWorkers.js +0 -1
- package/dist/actions/Referral/fetchPrimaryWorkers.js.map +1 -1
- package/dist/actions/Referral/removeReferralProgram.js.map +1 -1
- package/dist/api/ApiHooks.js.map +1 -1
- package/dist/api/config.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/ContactDocumentsSelector.js.map +1 -1
- package/dist/common/form/DocumentUploader/components/DocumentsListView.js.map +1 -1
- package/dist/common/form/ErrorMessage/index.js.map +1 -1
- package/dist/common/form/FileUploadV2/FileUpload.js.map +1 -1
- package/dist/common/form/FileUploadV2/FileUpload.test.js.map +1 -1
- package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.js.map +1 -1
- package/dist/common/form/FileUploadV2/components/FilePreviewWrapper.test.js.map +1 -1
- package/dist/common/form/FileUploadV2/stylesheets/FileUpload.scss +8 -6
- package/dist/common/form/FormForm/index.js.map +1 -1
- package/dist/common/utils/utils.js.map +1 -1
- package/dist/components/Card.js.map +1 -1
- package/dist/components/CreateReferralContainer.js +1 -2
- package/dist/components/CreateReferralContainer.js.map +1 -1
- package/dist/components/DollarAmount.js.map +1 -1
- package/dist/components/ExpandableButton.js.map +1 -1
- package/dist/components/LineItem.js.map +1 -1
- package/dist/components/NavButtons.js +8 -8
- package/dist/components/NavButtons.js.map +1 -1
- package/dist/components/NoReferralsDisplay.js +3 -4
- package/dist/components/NoReferralsDisplay.js.map +1 -1
- package/dist/components/ReferralStepper.js.map +1 -1
- package/dist/components/SearchableField.js.map +1 -1
- package/dist/components/StepHeader.js.map +1 -1
- package/dist/components/Stepper.js +10 -10
- package/dist/components/Stepper.js.map +1 -1
- package/dist/components/modal/Dialog.js +1 -1
- package/dist/components/modal/Dialog.js.map +1 -1
- package/dist/components/modal/Dialog.scss +7 -4
- package/dist/components/service_authorization/AuthorizationSpendCard.js.map +1 -1
- package/dist/components/service_authorization/CapsInfo.js.map +1 -1
- package/dist/components/service_authorization/CaseStatus.js.map +1 -1
- package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js +1 -1
- package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.js.map +1 -1
- package/dist/components/service_authorization/PreviousAuthorizationRequestsDetails.scss +1 -1
- package/dist/components/service_authorization/ReferralAuthSpendExpandable.js.map +1 -1
- package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js +2 -2
- package/dist/components/service_authorization/ReferralAuthorizationRequestSummary.js.map +1 -1
- package/dist/components/service_authorization/Spend.js +0 -1
- package/dist/components/service_authorization/Spend.js.map +1 -1
- package/dist/components/service_authorization/formatShortDate.js.map +1 -1
- package/dist/components/service_authorization/messageConstants.js.map +1 -1
- package/dist/components/spinners/OverlaySpinner/OverlaySpinner.js.map +1 -1
- package/dist/components/spinners/Spinner/Spinner.js.map +1 -1
- package/dist/components/spinners/Spinner/Spinner.scss +28 -12
- package/dist/constants/callOrLog.js.map +1 -1
- package/dist/constants/enums.js +8 -8
- package/dist/constants/enums.js.map +1 -1
- package/dist/constants/eventConstants.js.map +1 -1
- package/dist/constants.js.map +1 -1
- package/dist/context/AppCreateReferralProvider.js +4 -4
- package/dist/context/AppCreateReferralProvider.js.map +1 -1
- package/dist/context/state.js.map +1 -1
- package/dist/context/withAppCreateReferralContext.js +1 -1
- package/dist/context/withAppCreateReferralContext.js.map +1 -1
- package/dist/hooks/__tests__/useCreateReferrals.test.js +5 -5
- package/dist/hooks/__tests__/useCreateReferrals.test.js.map +1 -1
- package/dist/hooks/sendReferral.js +3 -3
- package/dist/hooks/sendReferral.js.map +1 -1
- package/dist/hooks/useClinicalModificationOptions.js.map +1 -1
- package/dist/hooks/useCreateReferrals.js +4 -5
- package/dist/hooks/useCreateReferrals.js.map +1 -1
- package/dist/hooks/useCreateResourceList.js +2 -2
- package/dist/hooks/useCreateResourceList.js.map +1 -1
- package/dist/hooks/useCreateShareEvent.js +1 -1
- package/dist/hooks/useCreateShareEvent.js.map +1 -1
- package/dist/hooks/useForwardReferral.js +3 -4
- package/dist/hooks/useForwardReferral.js.map +1 -1
- package/dist/hooks/usePerson.js +5 -5
- package/dist/hooks/usePerson.js.map +1 -1
- package/dist/hooks/useUpdateResourceList.js +1 -1
- package/dist/hooks/useUpdateResourceList.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/pages/builder/ReferralBuilder.js.map +1 -1
- package/dist/pages/builder/ReferralBuilderForm.js.map +1 -1
- package/dist/pages/builder/ReferralBuilderForm.scss +0 -1
- package/dist/pages/builder/ReferralBuilderFormContent.js +1 -1
- package/dist/pages/builder/ReferralBuilderFormContent.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js +8 -8
- package/dist/pages/builder/__tests__/AuthRequiredClinicalCodes.test.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js +8 -8
- package/dist/pages/builder/__tests__/AuthRequiredNonFundedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js +7 -7
- package/dist/pages/builder/__tests__/AuthorizationRequiredPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js +26 -26
- package/dist/pages/builder/__tests__/NonSensitiveGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js +21 -21
- package/dist/pages/builder/__tests__/NonSensitiveSingleProgram.test.js.map +1 -1
- package/dist/pages/builder/__tests__/ReferralBuilder.test.js +12 -12
- package/dist/pages/builder/__tests__/ReferralBuilder.test.js.map +1 -1
- package/dist/pages/builder/__tests__/ReferralBuilderForm.attachments.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js +17 -17
- package/dist/pages/builder/__tests__/SensitiveProviderGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js +10 -10
- package/dist/pages/builder/__tests__/SensitiveServiceGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js +13 -13
- package/dist/pages/builder/__tests__/SensitiveServiceSensitiveProviderGroupedPrograms.test.js.map +1 -1
- package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js +18 -18
- package/dist/pages/builder/__tests__/SensitiveSingleProgram.test.js.map +1 -1
- package/dist/pages/builder/__tests__/buildDraftState.test.js.map +1 -1
- package/dist/pages/builder/__tests__/buildGroupedReferrals.networkBug.test.js.map +1 -1
- package/dist/pages/builder/buildDraftState.js +2 -3
- package/dist/pages/builder/buildDraftState.js.map +1 -1
- package/dist/pages/builder/clearDraftState.js +0 -1
- package/dist/pages/builder/clearDraftState.js.map +1 -1
- package/dist/pages/builder/components/AboutGroupedReferralsModal.js.map +1 -1
- package/dist/pages/builder/components/AuthorizationSubform.js.map +1 -1
- package/dist/pages/builder/components/ChooseOneServiceTypeModal.js +1 -1
- package/dist/pages/builder/components/ChooseOneServiceTypeModal.js.map +1 -1
- package/dist/pages/builder/components/DetailsDrawer.js.map +1 -1
- package/dist/pages/builder/components/ProgramHeader.js +4 -4
- package/dist/pages/builder/components/ProgramHeader.js.map +1 -1
- package/dist/pages/builder/components/ProgramMenu.js +3 -3
- package/dist/pages/builder/components/ProgramMenu.js.map +1 -1
- package/dist/pages/builder/components/ReferralBuilderContent.js +1 -1
- package/dist/pages/builder/components/ReferralBuilderContent.js.map +1 -1
- package/dist/pages/builder/components/ReferralCard.js +4 -5
- package/dist/pages/builder/components/ReferralCard.js.map +1 -1
- package/dist/pages/builder/components/ReferralClientNeedsField.js.map +1 -1
- package/dist/pages/builder/components/ReferralProgramCard.js +1 -1
- package/dist/pages/builder/components/ReferralProgramCard.js.map +1 -1
- package/dist/pages/builder/components/ReferralProgramMenu.js +0 -1
- package/dist/pages/builder/components/ReferralProgramMenu.js.map +1 -1
- package/dist/pages/builder/constants.js.map +1 -1
- package/dist/pages/builder/hooks/useBuildReferrals.js +2 -2
- package/dist/pages/builder/hooks/useBuildReferrals.js.map +1 -1
- package/dist/pages/builder/hooks/useReferralMutations.js.map +1 -1
- package/dist/pages/builder/utils/buildGroupedReferrals.js.map +1 -1
- package/dist/pages/builder/utils/buildGroupedReferralsHelpers.js.map +1 -1
- package/dist/pages/builder/utils/formatProgramDetail.js.map +1 -1
- package/dist/pages/builder/utils/referralBuilderFormDraftAuth.js.map +1 -1
- package/dist/pages/builder/utils/referralBuilderFormUtils.js.map +1 -1
- package/dist/pages/builder/utils/referralBuilderFormValidation.js.map +1 -1
- package/dist/pages/builder/utils/referralBuilderUtils.js.map +1 -1
- package/dist/pages/builder/utils.js +0 -1
- package/dist/pages/builder/utils.js.map +1 -1
- package/dist/pages/review/DeleteReferralModal.js +0 -1
- package/dist/pages/review/DeleteReferralModal.js.map +1 -1
- package/dist/pages/review/DropdownMultiplesReferrals.js +1 -2
- package/dist/pages/review/DropdownMultiplesReferrals.js.map +1 -1
- package/dist/pages/review/ReferralsSent.js +5 -5
- package/dist/pages/review/ReferralsSent.js.map +1 -1
- package/dist/pages/review/Review.js +5 -6
- package/dist/pages/review/Review.js.map +1 -1
- package/dist/pages/review/SuccessReferralRedesign.js.map +1 -1
- package/dist/pages/review/__tests__/CallbackNotifications.test.js +8 -8
- package/dist/pages/review/__tests__/CallbackNotifications.test.js.map +1 -1
- package/dist/pages/review/__tests__/ReferralsSent.test.js +11 -11
- package/dist/pages/review/__tests__/ReferralsSent.test.js.map +1 -1
- package/dist/pages/review/__tests__/Review.test.js +61 -61
- package/dist/pages/review/__tests__/Review.test.js.map +1 -1
- package/dist/pages/review/__tests__/data.js +1336 -1336
- package/dist/pages/review/__tests__/data.js.map +1 -1
- package/dist/pages/review/__tests__/referralStatusRedesign.test.js.map +1 -1
- package/dist/pages/review/constants.js.map +1 -1
- package/dist/pages/review/referralStatusRedesign.js +1 -1
- package/dist/pages/review/referralStatusRedesign.js.map +1 -1
- package/dist/pages/supporting-info/SupportingInfo.js +0 -3
- package/dist/pages/supporting-info/SupportingInfo.js.map +1 -1
- package/dist/pages/supporting-info/SupportingInfo.scss +2 -3
- package/dist/pages/supporting-info/__tests__/SupportingInfo.test.js +17 -17
- package/dist/pages/supporting-info/__tests__/SupportingInfo.test.js.map +1 -1
- package/dist/pages/supporting-info/__tests__/data.js +8 -8
- package/dist/pages/supporting-info/__tests__/data.js.map +1 -1
- package/dist/reportWebVitals.js.map +1 -1
- package/dist/setupTests.js.map +1 -1
- package/dist/styles/mixins.scss +46 -39
- package/dist/styles/variables.scss +5 -4
- package/dist/utils/__tests__/addHttpIfNeeded.test.js +6 -6
- package/dist/utils/__tests__/addHttpIfNeeded.test.js.map +1 -1
- package/dist/utils/__tests__/attachmentUtils.test.js.map +1 -1
- package/dist/utils/__tests__/canChangeHoldReason.test.js.map +1 -1
- package/dist/utils/__tests__/checkRoles.test.js +15 -15
- package/dist/utils/__tests__/checkRoles.test.js.map +1 -1
- package/dist/utils/attachmentUtils.js.map +1 -1
- package/dist/utils/canAccept.js +4 -4
- package/dist/utils/canAccept.js.map +1 -1
- package/dist/utils/canChangeHoldReason.js +1 -1
- package/dist/utils/canChangeHoldReason.js.map +1 -1
- package/dist/utils/canHoldForReview.js +4 -4
- package/dist/utils/canHoldForReview.js.map +1 -1
- package/dist/utils/canReject.js.map +1 -1
- package/dist/utils/checkRoles.js +7 -7
- package/dist/utils/checkRoles.js.map +1 -1
- package/dist/utils/getProgramServicesPayload.js +1 -1
- package/dist/utils/getProgramServicesPayload.js.map +1 -1
- package/dist/utils/handleDraftSaveResponse.js.map +1 -1
- package/dist/utils/hasUserRole.js.map +1 -1
- package/dist/utils/isReferralForwarded.js +2 -2
- package/dist/utils/isReferralForwarded.js.map +1 -1
- package/dist/utils/referralToConsent.js +1 -1
- package/dist/utils/referralToConsent.js.map +1 -1
- package/dist/utils/useDebounce.js +1 -1
- package/dist/utils/useDebounce.js.map +1 -1
- package/dist/utils/validateCostAmount.js.map +1 -1
- package/dist/utils/validateUnitAmount.js.map +1 -1
- package/package.json +7 -1
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { screen, act } from
|
|
2
|
-
import { render, within, fireEvent, waitFor } from
|
|
3
|
-
import { person } from
|
|
4
|
-
import mockAppReferralsProps from
|
|
5
|
-
import { referrals, referralWithAuthorization } from
|
|
6
|
-
import Review from
|
|
7
|
-
import { server } from
|
|
8
|
-
import { rest } from
|
|
9
|
-
import { getUrl } from
|
|
10
|
-
import { CALLBACKS } from
|
|
11
|
-
import { CONSENT_DESCRIPTION } from
|
|
12
|
-
import { mockCases } from
|
|
13
|
-
import { useFeatureFlag as mockUseFeatureFlag } from
|
|
1
|
+
import { screen, act } from '@testing-library/react';
|
|
2
|
+
import { render, within, fireEvent, waitFor } from '../../../__testUtils__/test-utils';
|
|
3
|
+
import { person } from '../../../__testUtils__/mockData/mockPeople';
|
|
4
|
+
import mockAppReferralsProps from '../../../__testUtils__/mockData/components/mockAppReferrals';
|
|
5
|
+
import { referrals, referralWithAuthorization } from './data';
|
|
6
|
+
import Review from '../Review';
|
|
7
|
+
import { server } from '../../../__testUtils__/mockServer/server';
|
|
8
|
+
import { rest } from 'msw';
|
|
9
|
+
import { getUrl } from '../../../__testUtils__/mockServer/handlers';
|
|
10
|
+
import { CALLBACKS } from '../../../api/config';
|
|
11
|
+
import { CONSENT_DESCRIPTION } from '../constants';
|
|
12
|
+
import { mockCases } from '../../../__testUtils__/mockData/mockCases';
|
|
13
|
+
import { useFeatureFlag as mockUseFeatureFlag } from '../../../utils/useFeatureFlag';
|
|
14
14
|
|
|
15
15
|
// mock useNavigate
|
|
16
16
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -25,12 +25,12 @@ jest.mock('@unite-us/app-components', () => ({
|
|
|
25
25
|
isCostPaymentType: paymentType => paymentType === 'cost_reimbursement'
|
|
26
26
|
}
|
|
27
27
|
}));
|
|
28
|
-
jest.mock(
|
|
28
|
+
jest.mock('../../../api/config', () => ({
|
|
29
29
|
...jest.requireActual('../../../api/config'),
|
|
30
30
|
INITIAL_ADDRESSES: {},
|
|
31
31
|
APP_ENVIRONMENT: {
|
|
32
32
|
sharesUrl: 'localhost:8080/test',
|
|
33
|
-
providerId:
|
|
33
|
+
providerId: 'test-provider-id'
|
|
34
34
|
},
|
|
35
35
|
CALLBACKS: {
|
|
36
36
|
notify: {
|
|
@@ -41,7 +41,7 @@ jest.mock("../../../api/config", () => ({
|
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
}));
|
|
44
|
-
jest.mock(
|
|
44
|
+
jest.mock('../../../utils/useFeatureFlag', () => ({
|
|
45
45
|
useFeatureFlag: jest.fn()
|
|
46
46
|
}));
|
|
47
47
|
jest.mock('react-router-dom', () => ({
|
|
@@ -61,8 +61,8 @@ describe('Review Page', () => {
|
|
|
61
61
|
const referralRows = screen.getAllByTestId(/referral-review-card-/i);
|
|
62
62
|
expect(referralRows).toHaveLength(2);
|
|
63
63
|
const referral1 = within(referralRows[0]);
|
|
64
|
-
referral1.getByRole(
|
|
65
|
-
name:
|
|
64
|
+
referral1.getByRole('heading', {
|
|
65
|
+
name: 'Referral 1: Benefits'
|
|
66
66
|
});
|
|
67
67
|
referral1.getByText('Referral Programs');
|
|
68
68
|
referral1.getByText('All Service Types Program [Kevin] (Kevin Org [Dev Only])');
|
|
@@ -72,8 +72,8 @@ describe('Review Page', () => {
|
|
|
72
72
|
referral1.getByText('help1');
|
|
73
73
|
referral1.getByText('Ready to submit? Great! Confirm that the client agrees to share their information with the receiving organization(s) and click Confirm & Submit.');
|
|
74
74
|
const referral2 = within(referralRows[1]);
|
|
75
|
-
referral2.getByRole(
|
|
76
|
-
name:
|
|
75
|
+
referral2.getByRole('heading', {
|
|
76
|
+
name: 'Referral 2: Benefits Eligibility Screening'
|
|
77
77
|
});
|
|
78
78
|
referral2.getByText('Referral Programs');
|
|
79
79
|
referral2.getByText('All Services (11 AA Provider2)');
|
|
@@ -99,13 +99,13 @@ describe('Review Page', () => {
|
|
|
99
99
|
|
|
100
100
|
// Collapsed (by default it's expanded)
|
|
101
101
|
fireEvent.click(referral1.getByRole('button', {
|
|
102
|
-
name:
|
|
102
|
+
name: 'expand'
|
|
103
103
|
}));
|
|
104
104
|
expect(referral1.queryByText('Referral Programs')).toBeNull();
|
|
105
105
|
|
|
106
|
-
// Expanded
|
|
106
|
+
// Expanded
|
|
107
107
|
fireEvent.click(referral1.getByRole('button', {
|
|
108
|
-
name:
|
|
108
|
+
name: 'expand'
|
|
109
109
|
}));
|
|
110
110
|
expect(referral1.queryByText('Referral Programs')).toBeInTheDocument();
|
|
111
111
|
});
|
|
@@ -125,12 +125,12 @@ describe('Review Page', () => {
|
|
|
125
125
|
const referral1 = within(referralRows[0]);
|
|
126
126
|
const referral2 = within(referralRows[1]);
|
|
127
127
|
fireEvent.click(referral1.getByRole('button', {
|
|
128
|
-
name:
|
|
128
|
+
name: 'expand'
|
|
129
129
|
}));
|
|
130
130
|
expect(referral1.queryByText('Referral Programs')).toBeNull();
|
|
131
131
|
expect(referral2.queryByText('Referral Programs')).toBeInTheDocument();
|
|
132
132
|
fireEvent.click(screen.getAllByRole('button', {
|
|
133
|
-
name:
|
|
133
|
+
name: 'Back'
|
|
134
134
|
})[0]);
|
|
135
135
|
expect(mockedUsedNavigate).toHaveBeenCalledWith(-1);
|
|
136
136
|
rerender(/*#__PURE__*/_jsx("div", {
|
|
@@ -155,21 +155,21 @@ describe('Review Page', () => {
|
|
|
155
155
|
expect(referralRows).toHaveLength(2);
|
|
156
156
|
const referral1 = within(referralRows[0]);
|
|
157
157
|
fireEvent.click(referral1.getByRole('button', {
|
|
158
|
-
name:
|
|
158
|
+
name: 'edit'
|
|
159
159
|
}));
|
|
160
|
-
await expect(mockedUsedNavigate).toHaveBeenCalledWith(
|
|
161
|
-
|
|
162
|
-
|
|
160
|
+
await expect(mockedUsedNavigate).toHaveBeenCalledWith('/create/builder', {
|
|
161
|
+
state: {
|
|
162
|
+
selectedReferral: 0
|
|
163
163
|
}
|
|
164
164
|
});
|
|
165
165
|
mockedUsedNavigate.mockReset();
|
|
166
166
|
const referral2 = within(referralRows[1]);
|
|
167
167
|
fireEvent.click(referral2.getByRole('button', {
|
|
168
|
-
name:
|
|
168
|
+
name: 'edit'
|
|
169
169
|
}));
|
|
170
|
-
await expect(mockedUsedNavigate).toHaveBeenCalledWith(
|
|
171
|
-
|
|
172
|
-
|
|
170
|
+
await expect(mockedUsedNavigate).toHaveBeenCalledWith('/create/builder', {
|
|
171
|
+
state: {
|
|
172
|
+
selectedReferral: 1
|
|
173
173
|
}
|
|
174
174
|
});
|
|
175
175
|
});
|
|
@@ -187,13 +187,13 @@ describe('Review Page', () => {
|
|
|
187
187
|
const referral1 = within(referralRows[0]);
|
|
188
188
|
// Delete icon
|
|
189
189
|
fireEvent.click(referral1.getByRole('button', {
|
|
190
|
-
name:
|
|
190
|
+
name: 'delete'
|
|
191
191
|
}));
|
|
192
192
|
|
|
193
193
|
// Modal
|
|
194
194
|
screen.getByText('Are you sure you want to delete this referral?');
|
|
195
195
|
fireEvent.click(screen.getByRole('button', {
|
|
196
|
-
name:
|
|
196
|
+
name: 'Delete'
|
|
197
197
|
}));
|
|
198
198
|
const newReferralList = screen.getAllByTestId(/referral-review-card-/i);
|
|
199
199
|
expect(newReferralList).toHaveLength(1);
|
|
@@ -209,19 +209,19 @@ describe('Review Page', () => {
|
|
|
209
209
|
});
|
|
210
210
|
await act(async () => {
|
|
211
211
|
const confirmButtons = screen.getAllByRole('button', {
|
|
212
|
-
name:
|
|
212
|
+
name: 'Confirm & Submit'
|
|
213
213
|
});
|
|
214
214
|
const topButton = confirmButtons[0];
|
|
215
215
|
fireEvent.click(topButton);
|
|
216
216
|
});
|
|
217
|
-
await waitFor(() => screen.findByText(
|
|
218
|
-
expect(screen.getByText(
|
|
217
|
+
await waitFor(() => screen.findByText('Referrals Successfully Created!'));
|
|
218
|
+
expect(screen.getByText('Referrals Successfully Created!')).toBeInTheDocument();
|
|
219
219
|
});
|
|
220
220
|
it('should notify failure creating the case', async () => {
|
|
221
221
|
server.use(rest.post(getUrl('/cases'), (req, res, ctx) => {
|
|
222
222
|
return res(ctx.status(400), ctx.json({
|
|
223
223
|
errors: [{
|
|
224
|
-
detail:
|
|
224
|
+
detail: ''
|
|
225
225
|
}]
|
|
226
226
|
}));
|
|
227
227
|
}));
|
|
@@ -234,7 +234,7 @@ describe('Review Page', () => {
|
|
|
234
234
|
}
|
|
235
235
|
});
|
|
236
236
|
const confirmButtons = screen.getAllByRole('button', {
|
|
237
|
-
name:
|
|
237
|
+
name: 'Confirm & Submit'
|
|
238
238
|
});
|
|
239
239
|
const topButton = confirmButtons[0];
|
|
240
240
|
fireEvent.click(topButton);
|
|
@@ -246,7 +246,7 @@ describe('Review Page', () => {
|
|
|
246
246
|
server.use(rest.post(getUrl('/referrals'), (req, res, ctx) => {
|
|
247
247
|
return res(ctx.status(400), ctx.json({
|
|
248
248
|
errors: [{
|
|
249
|
-
detail:
|
|
249
|
+
detail: ''
|
|
250
250
|
}]
|
|
251
251
|
}));
|
|
252
252
|
}));
|
|
@@ -259,7 +259,7 @@ describe('Review Page', () => {
|
|
|
259
259
|
}
|
|
260
260
|
});
|
|
261
261
|
const confirmButtons = screen.getAllByRole('button', {
|
|
262
|
-
name:
|
|
262
|
+
name: 'Confirm & Submit'
|
|
263
263
|
});
|
|
264
264
|
const topButton = confirmButtons[0];
|
|
265
265
|
fireEvent.click(topButton);
|
|
@@ -271,7 +271,7 @@ describe('Review Page', () => {
|
|
|
271
271
|
server.use(rest.post(getUrl('/form_submissions'), (req, res, ctx) => {
|
|
272
272
|
return res(ctx.status(400), ctx.json({
|
|
273
273
|
errors: [{
|
|
274
|
-
detail:
|
|
274
|
+
detail: ''
|
|
275
275
|
}]
|
|
276
276
|
}));
|
|
277
277
|
}));
|
|
@@ -281,11 +281,11 @@ describe('Review Page', () => {
|
|
|
281
281
|
referrals: [referrals[0]],
|
|
282
282
|
formResponses: [{
|
|
283
283
|
form: {
|
|
284
|
-
id:
|
|
284
|
+
id: 'f1',
|
|
285
285
|
service_type_ids: mockCases[0].relationships.service.data.id
|
|
286
286
|
},
|
|
287
287
|
responses: [{
|
|
288
|
-
id:
|
|
288
|
+
id: 'r1'
|
|
289
289
|
}]
|
|
290
290
|
}],
|
|
291
291
|
currentProvider: mockAppReferralsProps.appState.currentProvider,
|
|
@@ -293,7 +293,7 @@ describe('Review Page', () => {
|
|
|
293
293
|
}
|
|
294
294
|
});
|
|
295
295
|
const confirmButtons = screen.getAllByRole('button', {
|
|
296
|
-
name:
|
|
296
|
+
name: 'Confirm & Submit'
|
|
297
297
|
});
|
|
298
298
|
const topButton = confirmButtons[0];
|
|
299
299
|
fireEvent.click(topButton);
|
|
@@ -305,10 +305,10 @@ describe('Review Page', () => {
|
|
|
305
305
|
person,
|
|
306
306
|
referrals: [{
|
|
307
307
|
...referrals[0],
|
|
308
|
-
id:
|
|
308
|
+
id: 'e22e1119-9068-4950-9379-15b1b1d04429',
|
|
309
309
|
state: 'draft',
|
|
310
310
|
case: {
|
|
311
|
-
id:
|
|
311
|
+
id: '86f64bd4-8850-4c07-8195-d9748222e64c'
|
|
312
312
|
},
|
|
313
313
|
programs: [{
|
|
314
314
|
...referrals[0].programs[0],
|
|
@@ -324,7 +324,7 @@ describe('Review Page', () => {
|
|
|
324
324
|
});
|
|
325
325
|
await act(async () => {
|
|
326
326
|
const confirmButtons = screen.getAllByRole('button', {
|
|
327
|
-
name:
|
|
327
|
+
name: 'Confirm & Submit'
|
|
328
328
|
});
|
|
329
329
|
const topButton = confirmButtons[0];
|
|
330
330
|
fireEvent.click(topButton);
|
|
@@ -337,7 +337,7 @@ describe('Review Page', () => {
|
|
|
337
337
|
server.use(rest.patch(getUrl('/referrals/:id'), (req, res, ctx) => {
|
|
338
338
|
return res(ctx.status(400), ctx.json({
|
|
339
339
|
errors: [{
|
|
340
|
-
detail:
|
|
340
|
+
detail: ''
|
|
341
341
|
}]
|
|
342
342
|
}));
|
|
343
343
|
}));
|
|
@@ -346,19 +346,19 @@ describe('Review Page', () => {
|
|
|
346
346
|
person,
|
|
347
347
|
referrals: [{
|
|
348
348
|
...referrals[0],
|
|
349
|
-
id:
|
|
349
|
+
id: 'referral-1',
|
|
350
350
|
state: 'draft',
|
|
351
351
|
case: {
|
|
352
|
-
id:
|
|
352
|
+
id: 'case-1'
|
|
353
353
|
}
|
|
354
354
|
}],
|
|
355
355
|
formResponses: [{
|
|
356
356
|
form: {
|
|
357
|
-
id:
|
|
357
|
+
id: 'f1',
|
|
358
358
|
service_type_ids: mockCases[0].relationships.service.data.id
|
|
359
359
|
},
|
|
360
360
|
responses: [{
|
|
361
|
-
id:
|
|
361
|
+
id: 'r1'
|
|
362
362
|
}]
|
|
363
363
|
}],
|
|
364
364
|
currentProvider: mockAppReferralsProps.appState.currentProvider,
|
|
@@ -366,7 +366,7 @@ describe('Review Page', () => {
|
|
|
366
366
|
}
|
|
367
367
|
});
|
|
368
368
|
const saveDraftButtons = screen.getAllByRole('button', {
|
|
369
|
-
name:
|
|
369
|
+
name: 'Save Draft Referral(s)'
|
|
370
370
|
});
|
|
371
371
|
fireEvent.click(saveDraftButtons[0]);
|
|
372
372
|
await waitFor(() => expect(CALLBACKS.notify.error).toHaveBeenCalledWith('Unable to save draft referral'));
|
|
@@ -385,14 +385,14 @@ describe('Review Page', () => {
|
|
|
385
385
|
});
|
|
386
386
|
await act(async () => {
|
|
387
387
|
const confirmButtons = screen.getAllByRole('button', {
|
|
388
|
-
name:
|
|
388
|
+
name: 'Confirm & Submit'
|
|
389
389
|
});
|
|
390
390
|
const topButton = confirmButtons[0];
|
|
391
391
|
fireEvent.click(topButton);
|
|
392
392
|
});
|
|
393
|
-
expect(await screen.findByText(
|
|
393
|
+
expect(await screen.findByText('Complete Consent')).toBeInTheDocument();
|
|
394
394
|
expect(await screen.findByText(CONSENT_DESCRIPTION)).toBeInTheDocument();
|
|
395
|
-
expect(await screen.findByText(
|
|
395
|
+
expect(await screen.findByText('Informed Consent')).toBeInTheDocument();
|
|
396
396
|
});
|
|
397
397
|
it('should display authorization request summary', async () => {
|
|
398
398
|
render(/*#__PURE__*/_jsx(Review, {}), {
|
|
@@ -462,7 +462,7 @@ describe('Review Page', () => {
|
|
|
462
462
|
});
|
|
463
463
|
await act(async () => {
|
|
464
464
|
const confirmButtons = screen.getAllByRole('button', {
|
|
465
|
-
name:
|
|
465
|
+
name: 'Confirm & Submit'
|
|
466
466
|
});
|
|
467
467
|
const topButton = confirmButtons[0];
|
|
468
468
|
fireEvent.click(topButton);
|
|
@@ -473,8 +473,8 @@ describe('Review Page', () => {
|
|
|
473
473
|
id: '9073e4e0-34d4-4248-8ad1-25705972d6ff'
|
|
474
474
|
}]
|
|
475
475
|
});
|
|
476
|
-
await waitFor(() => screen.findByText(
|
|
477
|
-
expect(screen.getByText(
|
|
476
|
+
await waitFor(() => screen.findByText('Referrals Successfully Created!'));
|
|
477
|
+
expect(screen.getByText('Referrals Successfully Created!')).toBeInTheDocument();
|
|
478
478
|
});
|
|
479
479
|
});
|
|
480
480
|
//# sourceMappingURL=Review.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Review.test.js","names":["screen","act","render","within","fireEvent","waitFor","person","mockAppReferralsProps","referrals","referralWithAuthorization","Review","server","rest","getUrl","CALLBACKS","CONSENT_DESCRIPTION","mockCases","useFeatureFlag","mockUseFeatureFlag","jsx","_jsx","mockedUsedNavigate","jest","fn","mock","requireActual","feeScheduleProgramUtils","PAYMENT_TYPES","fee_for_service","cost_reimbursement","isCostPaymentType","paymentType","INITIAL_ADDRESSES","APP_ENVIRONMENT","sharesUrl","providerId","notify","success","error","warning","info","useNavigate","describe","it","appContextProviderProps","currentProvider","appState","currentEmployee","referralRows","getAllByTestId","expect","toHaveLength","referral1","getByRole","name","getByText","referral2","click","queryByText","toBeNull","toBeInTheDocument","rerender","getAllByRole","toHaveBeenCalledWith","returnedReferralRows","mockReset","newReferralList","confirmButtons","topButton","findByText","use","post","req","res","ctx","status","json","errors","detail","formResponses","form","id","service_type_ids","relationships","service","data","responses","state","case","programs","fee_schedule_program","authorization_required","patch","saveDraftButtons","consent","referralWithAuthorizationNoIcd","cm_code_required_on_authorization","not","patchPayload","body","clinical_modifications","toEqual","type"],"sources":["../../../../src/pages/review/__tests__/Review.test.js"],"sourcesContent":["import { screen, act } from \"@testing-library/react\";\nimport { render, within, fireEvent, waitFor } from \"../../../__testUtils__/test-utils\";\nimport { person } from \"../../../__testUtils__/mockData/mockPeople\";\nimport mockAppReferralsProps from \"../../../__testUtils__/mockData/components/mockAppReferrals\";\nimport { referrals, referralWithAuthorization } from \"./data\";\nimport Review from \"../Review\";\nimport { server } from \"../../../__testUtils__/mockServer/server\";\nimport { rest } from \"msw\";\nimport { getUrl } from \"../../../__testUtils__/mockServer/handlers\";\nimport { CALLBACKS } from \"../../../api/config\";\nimport { CONSENT_DESCRIPTION } from \"../constants\";\nimport { mockCases } from \"../../../__testUtils__/mockData/mockCases\";\nimport { useFeatureFlag as mockUseFeatureFlag } from \"../../../utils/useFeatureFlag\";\n\n// mock useNavigate\nconst mockedUsedNavigate = jest.fn();\n\njest.mock('@unite-us/app-components', () => ({\n ...jest.requireActual('@unite-us/app-components'),\n feeScheduleProgramUtils: {\n PAYMENT_TYPES: {\n fee_for_service: 'Fee for service',\n cost_reimbursement: 'Cost reimbursement',\n },\n isCostPaymentType: (paymentType) => paymentType === 'cost_reimbursement',\n },\n}));\n\njest.mock(\"../../../api/config\", () => ({\n ...jest.requireActual('../../../api/config'),\n INITIAL_ADDRESSES: {},\n APP_ENVIRONMENT: { sharesUrl: 'localhost:8080/test', providerId: \"test-provider-id\"},\n CALLBACKS: {\n notify: {\n success: jest.fn(),\n error: jest.fn(),\n warning: jest.fn(),\n info: jest.fn()\n }\n }\n}));\n\njest.mock(\"../../../utils/useFeatureFlag\", () => ({\n useFeatureFlag: jest.fn(),\n}));\n\njest.mock('react-router-dom', () => ({\n ...jest.requireActual('react-router-dom'),\n useNavigate: () => mockedUsedNavigate, // Return an empty jest function to test whether it was called or not...I'm not depending on the results so no need to put in a return value\n}));\n\ndescribe('Review Page', () => {\n it('should render Review Page', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals,\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n })\n const referralRows = screen.getAllByTestId(/referral-review-card-/i);\n expect(referralRows).toHaveLength(2);\n\n const referral1 = within(referralRows[0]);\n referral1.getByRole(\"heading\", { name: \"Referral 1: Benefits\" });\n referral1.getByText('Referral Programs');\n referral1.getByText('All Service Types Program [Kevin] (Kevin Org [Dev Only])');\n referral1.getByText('Referral Network');\n referral1.getByText('Developer Playground [DEVS ONLY]');\n referral1.getByText('Referral Description');\n referral1.getByText('help1');\n referral1.getByText('Ready to submit? Great! Confirm that the client agrees to share their information with the receiving organization(s) and click Confirm & Submit.');\n\n const referral2 = within(referralRows[1]);\n referral2.getByRole(\"heading\", { name: \"Referral 2: Benefits Eligibility Screening\" });\n referral2.getByText('Referral Programs');\n referral2.getByText('All Services (11 AA Provider2)');\n referral2.getByText('Referral Network');\n referral2.getByText('Developer Playground [DEVS ONLY]');\n referral2.getByText('Referral Description');\n referral2.getByText('help2');\n referral2.getByText('Ready to submit? Great! Confirm that the client agrees to share their information with the receiving organization(s) and click Confirm & Submit.');\n });\n\n it('should collapse/expand card', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals,\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n })\n const referralRows = screen.getAllByTestId(/referral-review-card-/i);\n expect(referralRows).toHaveLength(2);\n\n const referral1 = within(referralRows[0]);\n referral1.getByText('Referral Programs');\n\n // Collapsed (by default it's expanded)\n fireEvent.click(referral1.getByRole('button', { name: \"expand\" }));\n expect(referral1.queryByText('Referral Programs')).toBeNull();\n\n // Expanded \n fireEvent.click(referral1.getByRole('button', { name: \"expand\" }));\n expect(referral1.queryByText('Referral Programs')).toBeInTheDocument();\n });\n\n it('should preserve collapsed cards after returning to review', async () => {\n const { rerender } = render(<Review />, {\n appContextProviderProps: {\n person,\n referrals,\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n })\n const referralRows = screen.getAllByTestId(/referral-review-card-/i);\n expect(referralRows).toHaveLength(2);\n\n const referral1 = within(referralRows[0]);\n const referral2 = within(referralRows[1]);\n\n fireEvent.click(referral1.getByRole('button', { name: \"expand\" }));\n expect(referral1.queryByText('Referral Programs')).toBeNull();\n expect(referral2.queryByText('Referral Programs')).toBeInTheDocument();\n\n fireEvent.click(screen.getAllByRole('button', { name: \"Back\" })[0]);\n expect(mockedUsedNavigate).toHaveBeenCalledWith(-1);\n\n rerender(<div data-testid=\"builder-step\" />);\n rerender(<Review />);\n\n const returnedReferralRows = screen.getAllByTestId(/referral-review-card-/i);\n expect(returnedReferralRows).toHaveLength(2);\n expect(within(returnedReferralRows[0]).queryByText('Referral Programs')).toBeNull();\n expect(within(returnedReferralRows[1]).queryByText('Referral Programs')).toBeInTheDocument();\n });\n\n it('should navigate on edit card', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals,\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n })\n const referralRows = screen.getAllByTestId(/referral-review-card-/i);\n expect(referralRows).toHaveLength(2);\n\n const referral1 = within(referralRows[0]);\n fireEvent.click(referral1.getByRole('button', { name: \"edit\" }));\n\n await expect(mockedUsedNavigate).toHaveBeenCalledWith(\"/create/builder\", { \"state\": { \"selectedReferral\": 0 } });\n mockedUsedNavigate.mockReset();\n\n const referral2 = within(referralRows[1]);\n fireEvent.click(referral2.getByRole('button', { name: \"edit\" }));\n\n await expect(mockedUsedNavigate).toHaveBeenCalledWith(\"/create/builder\", { \"state\": { \"selectedReferral\": 1 } });\n });\n\n it('should delete the referral', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals,\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n })\n const referralRows = screen.getAllByTestId(/referral-review-card-/i);\n expect(referralRows).toHaveLength(2);\n\n const referral1 = within(referralRows[0]);\n // Delete icon\n fireEvent.click(referral1.getByRole('button', { name: \"delete\" }));\n\n // Modal\n screen.getByText('Are you sure you want to delete this referral?');\n fireEvent.click(screen.getByRole('button', { name: \"Delete\" }));\n\n const newReferralList = screen.getAllByTestId(/referral-review-card-/i);\n expect(newReferralList).toHaveLength(1);\n });\n\n it('should submit referrals', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: [referrals[0]],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n })\n\n await act(async () => {\n const confirmButtons = screen.getAllByRole('button', { name: \"Confirm & Submit\" });\n const topButton = confirmButtons[0];\n fireEvent.click(topButton);\n });\n\n await waitFor(() => screen.findByText(\"Referrals Successfully Created!\"));\n expect(screen.getByText(\"Referrals Successfully Created!\")).toBeInTheDocument();\n });\n\n it('should notify failure creating the case', async () => {\n server.use(\n rest.post(getUrl('/cases'), (req, res, ctx) => {\n return res(ctx.status(400), ctx.json({ errors: [{ detail: \"\" }] }))\n }),\n )\n\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: [referrals[0]],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n });\n\n const confirmButtons = screen.getAllByRole('button', { name: \"Confirm & Submit\" });\n const topButton = confirmButtons[0];\n fireEvent.click(topButton);\n\n await waitFor(() => {\n expect(screen.getByText('Error: Referral creation failed. Get help resolving the issue by reaching out to')).toBeInTheDocument();\n });\n });\n\n it('should notify failure creating the referral', async () => {\n server.use(\n rest.post(getUrl('/referrals'), (req, res, ctx) => {\n return res(ctx.status(400), ctx.json({ errors: [{ detail: \"\" }] }))\n }),\n )\n\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: [referrals[0]],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n });\n\n const confirmButtons = screen.getAllByRole('button', { name: \"Confirm & Submit\" });\n const topButton = confirmButtons[0];\n fireEvent.click(topButton);\n\n await waitFor(() => {\n expect(screen.getByText('Error: Referral creation failed. Get help resolving the issue by reaching out to')).toBeInTheDocument();\n });\n });\n\n it('should notify failure creating forms submissions', async () => {\n server.use(\n rest.post(getUrl('/form_submissions'), (req, res, ctx) => {\n return res(ctx.status(400), ctx.json({ errors: [{ detail: \"\" }] }))\n }),\n )\n\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: [referrals[0]],\n formResponses: [{\n form: { id: \"f1\", service_type_ids: mockCases[0].relationships.service.data.id },\n responses: [{ id: \"r1\" }]\n }],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n });\n\n const confirmButtons = screen.getAllByRole('button', { name: \"Confirm & Submit\" });\n const topButton = confirmButtons[0];\n fireEvent.click(topButton);\n\n await waitFor(() => expect(CALLBACKS.notify.error).toHaveBeenCalledWith('Error submitting Assessments'));\n });\n\n it('should update a draft referral', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: [\n {\n ...referrals[0],\n id: \"e22e1119-9068-4950-9379-15b1b1d04429\",\n state: 'draft',\n case: { id: \"86f64bd4-8850-4c07-8195-d9748222e64c\" },\n programs: [{\n ...referrals[0].programs[0],\n fee_schedule_program: {\n ...referrals[0].programs[0].fee_schedule_program,\n authorization_required: false,\n },\n }],\n }\n ],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n })\n\n await act(async () => {\n const confirmButtons = screen.getAllByRole('button', { name: \"Confirm & Submit\" });\n const topButton = confirmButtons[0];\n fireEvent.click(topButton);\n });\n\n\n await waitFor(() => {\n expect(screen.getByText('Referrals Successfully Created!')).toBeInTheDocument();\n });\n });\n\n it('should notify when saving a draft referral fails', async () => {\n server.use(\n rest.patch(getUrl('/referrals/:id'), (req, res, ctx) => {\n return res(ctx.status(400), ctx.json({ errors: [{ detail: \"\" }] }))\n }),\n )\n\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: [\n {\n ...referrals[0],\n id: \"referral-1\",\n state: 'draft',\n case: { id: \"case-1\" },\n }\n ],\n formResponses: [{\n form: { id: \"f1\", service_type_ids: mockCases[0].relationships.service.data.id },\n responses: [{ id: \"r1\" }]\n }],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n });\n\n const saveDraftButtons = screen.getAllByRole('button', { name: \"Save Draft Referral(s)\" });\n fireEvent.click(saveDraftButtons[0]);\n\n await waitFor(() => expect(CALLBACKS.notify.error).toHaveBeenCalledWith('Unable to save draft referral'));\n });\n\n it('should display the consent form after submitting referrals for an unconsented person', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person: { ...person, consent: null },\n referrals: [referrals[0]],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n });\n\n await act(async () => {\n const confirmButtons = screen.getAllByRole('button', { name: \"Confirm & Submit\" });\n const topButton = confirmButtons[0];\n fireEvent.click(topButton);\n });\n\n expect(await screen.findByText(\"Complete Consent\")).toBeInTheDocument();\n expect(await screen.findByText(CONSENT_DESCRIPTION)).toBeInTheDocument();\n expect(await screen.findByText(\"Informed Consent\")).toBeInTheDocument();\n });\n\n it('should display authorization request summary', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: referralWithAuthorization,\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n })\n const referralRows = screen.getAllByTestId(/referral-review-card-/i);\n expect(referralRows).toHaveLength(1);\n const referral1 = within(referralRows[0]);\n referral1.getByText('Authorization Request');\n referral1.getByText('Contracted Program:');\n referral1.getByText('Fake Mock Box (Delivered) (Small)');\n referral1.getByText('Payment Approach:');\n referral1.getByText('Fee for service');\n referral1.getByText('Unit:');\n referral1.getByText('food box');\n referral1.getByText('Rate:');\n referral1.getByText('$150.36');\n referral1.getByText('per food box');\n referral1.getByText('Program Cap:');\n referral1.getByText('Fake cap per month');\n referral1.getByText('Amount Requested:');\n referral1.getByText('1 food box');\n referral1.getByText('Service Delivery Dates:');\n referral1.getByText('8/9/2024 - 8/9/2024');\n referral1.getByText(/ICD-10 Code/i);\n referral1.getByText('T61.001D');\n });\n\n it('should hide icd-10 field when clinical modification codes are not required on fee schedule program', async () => {\n const referralWithAuthorizationNoIcd = [\n {\n ...referralWithAuthorization[0],\n programs: [{\n ...referralWithAuthorization[0].programs[0],\n fee_schedule_program: {\n ...referralWithAuthorization[0].programs[0].fee_schedule_program,\n cm_code_required_on_authorization: false,\n },\n }],\n }];\n\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: referralWithAuthorizationNoIcd,\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n })\n expect(screen.queryByText('ICD-10 Code')).not.toBeInTheDocument();\n });\n\n it('should submit referral with ICD code when CM value submitted', async () => {\n let patchPayload;\n\n server.use(rest.post('*/service_authorizations', (req, res, ctx) => {\n patchPayload = req.body.data;\n return res(\n ctx.status(200),\n );\n }));\n\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: [referrals[0]],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee\n }\n })\n\n await act(async () => {\n const confirmButtons = screen.getAllByRole('button', { name: \"Confirm & Submit\" });\n const topButton = confirmButtons[0];\n fireEvent.click(topButton);\n });\n\n expect(patchPayload.relationships.clinical_modifications).toEqual({\n data: [{\n type: 'clinical_modification',\n id: '9073e4e0-34d4-4248-8ad1-25705972d6ff'\n }],\n });\n\n await waitFor(() => screen.findByText(\"Referrals Successfully Created!\"));\n expect(screen.getByText(\"Referrals Successfully Created!\")).toBeInTheDocument();\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Review.test.js","names":["screen","act","render","within","fireEvent","waitFor","person","mockAppReferralsProps","referrals","referralWithAuthorization","Review","server","rest","getUrl","CALLBACKS","CONSENT_DESCRIPTION","mockCases","useFeatureFlag","mockUseFeatureFlag","jsx","_jsx","mockedUsedNavigate","jest","fn","mock","requireActual","feeScheduleProgramUtils","PAYMENT_TYPES","fee_for_service","cost_reimbursement","isCostPaymentType","paymentType","INITIAL_ADDRESSES","APP_ENVIRONMENT","sharesUrl","providerId","notify","success","error","warning","info","useNavigate","describe","it","appContextProviderProps","currentProvider","appState","currentEmployee","referralRows","getAllByTestId","expect","toHaveLength","referral1","getByRole","name","getByText","referral2","click","queryByText","toBeNull","toBeInTheDocument","rerender","getAllByRole","toHaveBeenCalledWith","returnedReferralRows","state","selectedReferral","mockReset","newReferralList","confirmButtons","topButton","findByText","use","post","req","res","ctx","status","json","errors","detail","formResponses","form","id","service_type_ids","relationships","service","data","responses","case","programs","fee_schedule_program","authorization_required","patch","saveDraftButtons","consent","referralWithAuthorizationNoIcd","cm_code_required_on_authorization","not","patchPayload","body","clinical_modifications","toEqual","type"],"sources":["../../../../src/pages/review/__tests__/Review.test.js"],"sourcesContent":["import { screen, act } from '@testing-library/react';\nimport { render, within, fireEvent, waitFor } from '../../../__testUtils__/test-utils';\nimport { person } from '../../../__testUtils__/mockData/mockPeople';\nimport mockAppReferralsProps from '../../../__testUtils__/mockData/components/mockAppReferrals';\nimport { referrals, referralWithAuthorization } from './data';\nimport Review from '../Review';\nimport { server } from '../../../__testUtils__/mockServer/server';\nimport { rest } from 'msw';\nimport { getUrl } from '../../../__testUtils__/mockServer/handlers';\nimport { CALLBACKS } from '../../../api/config';\nimport { CONSENT_DESCRIPTION } from '../constants';\nimport { mockCases } from '../../../__testUtils__/mockData/mockCases';\nimport { useFeatureFlag as mockUseFeatureFlag } from '../../../utils/useFeatureFlag';\n\n// mock useNavigate\nconst mockedUsedNavigate = jest.fn();\n\njest.mock('@unite-us/app-components', () => ({\n ...jest.requireActual('@unite-us/app-components'),\n feeScheduleProgramUtils: {\n PAYMENT_TYPES: {\n fee_for_service: 'Fee for service',\n cost_reimbursement: 'Cost reimbursement',\n },\n isCostPaymentType: (paymentType) => paymentType === 'cost_reimbursement',\n },\n}));\n\njest.mock('../../../api/config', () => ({\n ...jest.requireActual('../../../api/config'),\n INITIAL_ADDRESSES: {},\n APP_ENVIRONMENT: { sharesUrl: 'localhost:8080/test', providerId: 'test-provider-id' },\n CALLBACKS: {\n notify: {\n success: jest.fn(),\n error: jest.fn(),\n warning: jest.fn(),\n info: jest.fn(),\n },\n },\n}));\n\njest.mock('../../../utils/useFeatureFlag', () => ({\n useFeatureFlag: jest.fn(),\n}));\n\njest.mock('react-router-dom', () => ({\n ...jest.requireActual('react-router-dom'),\n useNavigate: () => mockedUsedNavigate, // Return an empty jest function to test whether it was called or not...I'm not depending on the results so no need to put in a return value\n}));\n\ndescribe('Review Page', () => {\n it('should render Review Page', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals,\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n const referralRows = screen.getAllByTestId(/referral-review-card-/i);\n expect(referralRows).toHaveLength(2);\n\n const referral1 = within(referralRows[0]);\n referral1.getByRole('heading', { name: 'Referral 1: Benefits' });\n referral1.getByText('Referral Programs');\n referral1.getByText('All Service Types Program [Kevin] (Kevin Org [Dev Only])');\n referral1.getByText('Referral Network');\n referral1.getByText('Developer Playground [DEVS ONLY]');\n referral1.getByText('Referral Description');\n referral1.getByText('help1');\n referral1.getByText(\n 'Ready to submit? Great! Confirm that the client agrees to share their information with the receiving organization(s) and click Confirm & Submit.',\n );\n\n const referral2 = within(referralRows[1]);\n referral2.getByRole('heading', { name: 'Referral 2: Benefits Eligibility Screening' });\n referral2.getByText('Referral Programs');\n referral2.getByText('All Services (11 AA Provider2)');\n referral2.getByText('Referral Network');\n referral2.getByText('Developer Playground [DEVS ONLY]');\n referral2.getByText('Referral Description');\n referral2.getByText('help2');\n referral2.getByText(\n 'Ready to submit? Great! Confirm that the client agrees to share their information with the receiving organization(s) and click Confirm & Submit.',\n );\n });\n\n it('should collapse/expand card', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals,\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n const referralRows = screen.getAllByTestId(/referral-review-card-/i);\n expect(referralRows).toHaveLength(2);\n\n const referral1 = within(referralRows[0]);\n referral1.getByText('Referral Programs');\n\n // Collapsed (by default it's expanded)\n fireEvent.click(referral1.getByRole('button', { name: 'expand' }));\n expect(referral1.queryByText('Referral Programs')).toBeNull();\n\n // Expanded\n fireEvent.click(referral1.getByRole('button', { name: 'expand' }));\n expect(referral1.queryByText('Referral Programs')).toBeInTheDocument();\n });\n\n it('should preserve collapsed cards after returning to review', async () => {\n const { rerender } = render(<Review />, {\n appContextProviderProps: {\n person,\n referrals,\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n const referralRows = screen.getAllByTestId(/referral-review-card-/i);\n expect(referralRows).toHaveLength(2);\n\n const referral1 = within(referralRows[0]);\n const referral2 = within(referralRows[1]);\n\n fireEvent.click(referral1.getByRole('button', { name: 'expand' }));\n expect(referral1.queryByText('Referral Programs')).toBeNull();\n expect(referral2.queryByText('Referral Programs')).toBeInTheDocument();\n\n fireEvent.click(screen.getAllByRole('button', { name: 'Back' })[0]);\n expect(mockedUsedNavigate).toHaveBeenCalledWith(-1);\n\n rerender(<div data-testid=\"builder-step\" />);\n rerender(<Review />);\n\n const returnedReferralRows = screen.getAllByTestId(/referral-review-card-/i);\n expect(returnedReferralRows).toHaveLength(2);\n expect(within(returnedReferralRows[0]).queryByText('Referral Programs')).toBeNull();\n expect(within(returnedReferralRows[1]).queryByText('Referral Programs')).toBeInTheDocument();\n });\n\n it('should navigate on edit card', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals,\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n const referralRows = screen.getAllByTestId(/referral-review-card-/i);\n expect(referralRows).toHaveLength(2);\n\n const referral1 = within(referralRows[0]);\n fireEvent.click(referral1.getByRole('button', { name: 'edit' }));\n\n await expect(mockedUsedNavigate).toHaveBeenCalledWith('/create/builder', {\n state: { selectedReferral: 0 },\n });\n mockedUsedNavigate.mockReset();\n\n const referral2 = within(referralRows[1]);\n fireEvent.click(referral2.getByRole('button', { name: 'edit' }));\n\n await expect(mockedUsedNavigate).toHaveBeenCalledWith('/create/builder', {\n state: { selectedReferral: 1 },\n });\n });\n\n it('should delete the referral', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals,\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n const referralRows = screen.getAllByTestId(/referral-review-card-/i);\n expect(referralRows).toHaveLength(2);\n\n const referral1 = within(referralRows[0]);\n // Delete icon\n fireEvent.click(referral1.getByRole('button', { name: 'delete' }));\n\n // Modal\n screen.getByText('Are you sure you want to delete this referral?');\n fireEvent.click(screen.getByRole('button', { name: 'Delete' }));\n\n const newReferralList = screen.getAllByTestId(/referral-review-card-/i);\n expect(newReferralList).toHaveLength(1);\n });\n\n it('should submit referrals', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: [referrals[0]],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n\n await act(async () => {\n const confirmButtons = screen.getAllByRole('button', { name: 'Confirm & Submit' });\n const topButton = confirmButtons[0];\n fireEvent.click(topButton);\n });\n\n await waitFor(() => screen.findByText('Referrals Successfully Created!'));\n expect(screen.getByText('Referrals Successfully Created!')).toBeInTheDocument();\n });\n\n it('should notify failure creating the case', async () => {\n server.use(\n rest.post(getUrl('/cases'), (req, res, ctx) => {\n return res(ctx.status(400), ctx.json({ errors: [{ detail: '' }] }));\n }),\n );\n\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: [referrals[0]],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n\n const confirmButtons = screen.getAllByRole('button', { name: 'Confirm & Submit' });\n const topButton = confirmButtons[0];\n fireEvent.click(topButton);\n\n await waitFor(() => {\n expect(\n screen.getByText(\n 'Error: Referral creation failed. Get help resolving the issue by reaching out to',\n ),\n ).toBeInTheDocument();\n });\n });\n\n it('should notify failure creating the referral', async () => {\n server.use(\n rest.post(getUrl('/referrals'), (req, res, ctx) => {\n return res(ctx.status(400), ctx.json({ errors: [{ detail: '' }] }));\n }),\n );\n\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: [referrals[0]],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n\n const confirmButtons = screen.getAllByRole('button', { name: 'Confirm & Submit' });\n const topButton = confirmButtons[0];\n fireEvent.click(topButton);\n\n await waitFor(() => {\n expect(\n screen.getByText(\n 'Error: Referral creation failed. Get help resolving the issue by reaching out to',\n ),\n ).toBeInTheDocument();\n });\n });\n\n it('should notify failure creating forms submissions', async () => {\n server.use(\n rest.post(getUrl('/form_submissions'), (req, res, ctx) => {\n return res(ctx.status(400), ctx.json({ errors: [{ detail: '' }] }));\n }),\n );\n\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: [referrals[0]],\n formResponses: [\n {\n form: { id: 'f1', service_type_ids: mockCases[0].relationships.service.data.id },\n responses: [{ id: 'r1' }],\n },\n ],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n\n const confirmButtons = screen.getAllByRole('button', { name: 'Confirm & Submit' });\n const topButton = confirmButtons[0];\n fireEvent.click(topButton);\n\n await waitFor(() =>\n expect(CALLBACKS.notify.error).toHaveBeenCalledWith('Error submitting Assessments'),\n );\n });\n\n it('should update a draft referral', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: [\n {\n ...referrals[0],\n id: 'e22e1119-9068-4950-9379-15b1b1d04429',\n state: 'draft',\n case: { id: '86f64bd4-8850-4c07-8195-d9748222e64c' },\n programs: [\n {\n ...referrals[0].programs[0],\n fee_schedule_program: {\n ...referrals[0].programs[0].fee_schedule_program,\n authorization_required: false,\n },\n },\n ],\n },\n ],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n\n await act(async () => {\n const confirmButtons = screen.getAllByRole('button', { name: 'Confirm & Submit' });\n const topButton = confirmButtons[0];\n fireEvent.click(topButton);\n });\n\n await waitFor(() => {\n expect(screen.getByText('Referrals Successfully Created!')).toBeInTheDocument();\n });\n });\n\n it('should notify when saving a draft referral fails', async () => {\n server.use(\n rest.patch(getUrl('/referrals/:id'), (req, res, ctx) => {\n return res(ctx.status(400), ctx.json({ errors: [{ detail: '' }] }));\n }),\n );\n\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: [\n {\n ...referrals[0],\n id: 'referral-1',\n state: 'draft',\n case: { id: 'case-1' },\n },\n ],\n formResponses: [\n {\n form: { id: 'f1', service_type_ids: mockCases[0].relationships.service.data.id },\n responses: [{ id: 'r1' }],\n },\n ],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n\n const saveDraftButtons = screen.getAllByRole('button', { name: 'Save Draft Referral(s)' });\n fireEvent.click(saveDraftButtons[0]);\n\n await waitFor(() =>\n expect(CALLBACKS.notify.error).toHaveBeenCalledWith('Unable to save draft referral'),\n );\n });\n\n it('should display the consent form after submitting referrals for an unconsented person', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person: { ...person, consent: null },\n referrals: [referrals[0]],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n\n await act(async () => {\n const confirmButtons = screen.getAllByRole('button', { name: 'Confirm & Submit' });\n const topButton = confirmButtons[0];\n fireEvent.click(topButton);\n });\n\n expect(await screen.findByText('Complete Consent')).toBeInTheDocument();\n expect(await screen.findByText(CONSENT_DESCRIPTION)).toBeInTheDocument();\n expect(await screen.findByText('Informed Consent')).toBeInTheDocument();\n });\n\n it('should display authorization request summary', async () => {\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: referralWithAuthorization,\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n const referralRows = screen.getAllByTestId(/referral-review-card-/i);\n expect(referralRows).toHaveLength(1);\n const referral1 = within(referralRows[0]);\n referral1.getByText('Authorization Request');\n referral1.getByText('Contracted Program:');\n referral1.getByText('Fake Mock Box (Delivered) (Small)');\n referral1.getByText('Payment Approach:');\n referral1.getByText('Fee for service');\n referral1.getByText('Unit:');\n referral1.getByText('food box');\n referral1.getByText('Rate:');\n referral1.getByText('$150.36');\n referral1.getByText('per food box');\n referral1.getByText('Program Cap:');\n referral1.getByText('Fake cap per month');\n referral1.getByText('Amount Requested:');\n referral1.getByText('1 food box');\n referral1.getByText('Service Delivery Dates:');\n referral1.getByText('8/9/2024 - 8/9/2024');\n referral1.getByText(/ICD-10 Code/i);\n referral1.getByText('T61.001D');\n });\n\n it('should hide icd-10 field when clinical modification codes are not required on fee schedule program', async () => {\n const referralWithAuthorizationNoIcd = [\n {\n ...referralWithAuthorization[0],\n programs: [\n {\n ...referralWithAuthorization[0].programs[0],\n fee_schedule_program: {\n ...referralWithAuthorization[0].programs[0].fee_schedule_program,\n cm_code_required_on_authorization: false,\n },\n },\n ],\n },\n ];\n\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: referralWithAuthorizationNoIcd,\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n expect(screen.queryByText('ICD-10 Code')).not.toBeInTheDocument();\n });\n\n it('should submit referral with ICD code when CM value submitted', async () => {\n let patchPayload;\n\n server.use(\n rest.post('*/service_authorizations', (req, res, ctx) => {\n patchPayload = req.body.data;\n return res(ctx.status(200));\n }),\n );\n\n render(<Review />, {\n appContextProviderProps: {\n person,\n referrals: [referrals[0]],\n currentProvider: mockAppReferralsProps.appState.currentProvider,\n currentEmployee: mockAppReferralsProps.appState.currentEmployee,\n },\n });\n\n await act(async () => {\n const confirmButtons = screen.getAllByRole('button', { name: 'Confirm & Submit' });\n const topButton = confirmButtons[0];\n fireEvent.click(topButton);\n });\n\n expect(patchPayload.relationships.clinical_modifications).toEqual({\n data: [\n {\n type: 'clinical_modification',\n id: '9073e4e0-34d4-4248-8ad1-25705972d6ff',\n },\n ],\n });\n\n await waitFor(() => screen.findByText('Referrals Successfully Created!'));\n expect(screen.getByText('Referrals Successfully Created!')).toBeInTheDocument();\n });\n});\n"],"mappings":"AAAA,SAASA,MAAM,EAAEC,GAAG,QAAQ,wBAAwB;AACpD,SAASC,MAAM,EAAEC,MAAM,EAAEC,SAAS,EAAEC,OAAO,QAAQ,mCAAmC;AACtF,SAASC,MAAM,QAAQ,4CAA4C;AACnE,OAAOC,qBAAqB,MAAM,6DAA6D;AAC/F,SAASC,SAAS,EAAEC,yBAAyB,QAAQ,QAAQ;AAC7D,OAAOC,MAAM,MAAM,WAAW;AAC9B,SAASC,MAAM,QAAQ,0CAA0C;AACjE,SAASC,IAAI,QAAQ,KAAK;AAC1B,SAASC,MAAM,QAAQ,4CAA4C;AACnE,SAASC,SAAS,QAAQ,qBAAqB;AAC/C,SAASC,mBAAmB,QAAQ,cAAc;AAClD,SAASC,SAAS,QAAQ,2CAA2C;AACrE,SAASC,cAAc,IAAIC,kBAAkB,QAAQ,+BAA+B;;AAEpF;AAAA,SAAAC,GAAA,IAAAC,IAAA;AACA,MAAMC,kBAAkB,GAAGC,IAAI,CAACC,EAAE,CAAC,CAAC;AAEpCD,IAAI,CAACE,IAAI,CAAC,0BAA0B,EAAE,OAAO;EAC3C,GAAGF,IAAI,CAACG,aAAa,CAAC,0BAA0B,CAAC;EACjDC,uBAAuB,EAAE;IACvBC,aAAa,EAAE;MACbC,eAAe,EAAE,iBAAiB;MAClCC,kBAAkB,EAAE;IACtB,CAAC;IACDC,iBAAiB,EAAGC,WAAW,IAAKA,WAAW,KAAK;EACtD;AACF,CAAC,CAAC,CAAC;AAEHT,IAAI,CAACE,IAAI,CAAC,qBAAqB,EAAE,OAAO;EACtC,GAAGF,IAAI,CAACG,aAAa,CAAC,qBAAqB,CAAC;EAC5CO,iBAAiB,EAAE,CAAC,CAAC;EACrBC,eAAe,EAAE;IAAEC,SAAS,EAAE,qBAAqB;IAAEC,UAAU,EAAE;EAAmB,CAAC;EACrFrB,SAAS,EAAE;IACTsB,MAAM,EAAE;MACNC,OAAO,EAAEf,IAAI,CAACC,EAAE,CAAC,CAAC;MAClBe,KAAK,EAAEhB,IAAI,CAACC,EAAE,CAAC,CAAC;MAChBgB,OAAO,EAAEjB,IAAI,CAACC,EAAE,CAAC,CAAC;MAClBiB,IAAI,EAAElB,IAAI,CAACC,EAAE,CAAC;IAChB;EACF;AACF,CAAC,CAAC,CAAC;AAEHD,IAAI,CAACE,IAAI,CAAC,+BAA+B,EAAE,OAAO;EAChDP,cAAc,EAAEK,IAAI,CAACC,EAAE,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEHD,IAAI,CAACE,IAAI,CAAC,kBAAkB,EAAE,OAAO;EACnC,GAAGF,IAAI,CAACG,aAAa,CAAC,kBAAkB,CAAC;EACzCgB,WAAW,EAAEA,CAAA,KAAMpB,kBAAkB,CAAE;AACzC,CAAC,CAAC,CAAC;AAEHqB,QAAQ,CAAC,aAAa,EAAE,MAAM;EAC5BC,EAAE,CAAC,2BAA2B,EAAE,YAAY;IAC1CzC,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACjBkC,uBAAuB,EAAE;QACvBtC,MAAM;QACNE,SAAS;QACTqC,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IACF,MAAMC,YAAY,GAAGhD,MAAM,CAACiD,cAAc,CAAC,wBAAwB,CAAC;IACpEC,MAAM,CAACF,YAAY,CAAC,CAACG,YAAY,CAAC,CAAC,CAAC;IAEpC,MAAMC,SAAS,GAAGjD,MAAM,CAAC6C,YAAY,CAAC,CAAC,CAAC,CAAC;IACzCI,SAAS,CAACC,SAAS,CAAC,SAAS,EAAE;MAAEC,IAAI,EAAE;IAAuB,CAAC,CAAC;IAChEF,SAAS,CAACG,SAAS,CAAC,mBAAmB,CAAC;IACxCH,SAAS,CAACG,SAAS,CAAC,0DAA0D,CAAC;IAC/EH,SAAS,CAACG,SAAS,CAAC,kBAAkB,CAAC;IACvCH,SAAS,CAACG,SAAS,CAAC,kCAAkC,CAAC;IACvDH,SAAS,CAACG,SAAS,CAAC,sBAAsB,CAAC;IAC3CH,SAAS,CAACG,SAAS,CAAC,OAAO,CAAC;IAC5BH,SAAS,CAACG,SAAS,CACjB,kJACF,CAAC;IAED,MAAMC,SAAS,GAAGrD,MAAM,CAAC6C,YAAY,CAAC,CAAC,CAAC,CAAC;IACzCQ,SAAS,CAACH,SAAS,CAAC,SAAS,EAAE;MAAEC,IAAI,EAAE;IAA6C,CAAC,CAAC;IACtFE,SAAS,CAACD,SAAS,CAAC,mBAAmB,CAAC;IACxCC,SAAS,CAACD,SAAS,CAAC,gCAAgC,CAAC;IACrDC,SAAS,CAACD,SAAS,CAAC,kBAAkB,CAAC;IACvCC,SAAS,CAACD,SAAS,CAAC,kCAAkC,CAAC;IACvDC,SAAS,CAACD,SAAS,CAAC,sBAAsB,CAAC;IAC3CC,SAAS,CAACD,SAAS,CAAC,OAAO,CAAC;IAC5BC,SAAS,CAACD,SAAS,CACjB,kJACF,CAAC;EACH,CAAC,CAAC;EAEFZ,EAAE,CAAC,6BAA6B,EAAE,YAAY;IAC5CzC,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACjBkC,uBAAuB,EAAE;QACvBtC,MAAM;QACNE,SAAS;QACTqC,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IACF,MAAMC,YAAY,GAAGhD,MAAM,CAACiD,cAAc,CAAC,wBAAwB,CAAC;IACpEC,MAAM,CAACF,YAAY,CAAC,CAACG,YAAY,CAAC,CAAC,CAAC;IAEpC,MAAMC,SAAS,GAAGjD,MAAM,CAAC6C,YAAY,CAAC,CAAC,CAAC,CAAC;IACzCI,SAAS,CAACG,SAAS,CAAC,mBAAmB,CAAC;;IAExC;IACAnD,SAAS,CAACqD,KAAK,CAACL,SAAS,CAACC,SAAS,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC,CAAC;IAClEJ,MAAM,CAACE,SAAS,CAACM,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;;IAE7D;IACAvD,SAAS,CAACqD,KAAK,CAACL,SAAS,CAACC,SAAS,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC,CAAC;IAClEJ,MAAM,CAACE,SAAS,CAACM,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAACE,iBAAiB,CAAC,CAAC;EACxE,CAAC,CAAC;EAEFjB,EAAE,CAAC,2DAA2D,EAAE,YAAY;IAC1E,MAAM;MAAEkB;IAAS,CAAC,GAAG3D,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACtCkC,uBAAuB,EAAE;QACvBtC,MAAM;QACNE,SAAS;QACTqC,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IACF,MAAMC,YAAY,GAAGhD,MAAM,CAACiD,cAAc,CAAC,wBAAwB,CAAC;IACpEC,MAAM,CAACF,YAAY,CAAC,CAACG,YAAY,CAAC,CAAC,CAAC;IAEpC,MAAMC,SAAS,GAAGjD,MAAM,CAAC6C,YAAY,CAAC,CAAC,CAAC,CAAC;IACzC,MAAMQ,SAAS,GAAGrD,MAAM,CAAC6C,YAAY,CAAC,CAAC,CAAC,CAAC;IAEzC5C,SAAS,CAACqD,KAAK,CAACL,SAAS,CAACC,SAAS,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC,CAAC;IAClEJ,MAAM,CAACE,SAAS,CAACM,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;IAC7DT,MAAM,CAACM,SAAS,CAACE,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAACE,iBAAiB,CAAC,CAAC;IAEtExD,SAAS,CAACqD,KAAK,CAACzD,MAAM,CAAC8D,YAAY,CAAC,QAAQ,EAAE;MAAER,IAAI,EAAE;IAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnEJ,MAAM,CAAC7B,kBAAkB,CAAC,CAAC0C,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAEnDF,QAAQ,cAACzC,IAAA;MAAK,eAAY;IAAc,CAAE,CAAC,CAAC;IAC5CyC,QAAQ,cAACzC,IAAA,CAACV,MAAM,IAAE,CAAC,CAAC;IAEpB,MAAMsD,oBAAoB,GAAGhE,MAAM,CAACiD,cAAc,CAAC,wBAAwB,CAAC;IAC5EC,MAAM,CAACc,oBAAoB,CAAC,CAACb,YAAY,CAAC,CAAC,CAAC;IAC5CD,MAAM,CAAC/C,MAAM,CAAC6D,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAACN,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;IACnFT,MAAM,CAAC/C,MAAM,CAAC6D,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAACN,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAACE,iBAAiB,CAAC,CAAC;EAC9F,CAAC,CAAC;EAEFjB,EAAE,CAAC,8BAA8B,EAAE,YAAY;IAC7CzC,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACjBkC,uBAAuB,EAAE;QACvBtC,MAAM;QACNE,SAAS;QACTqC,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IACF,MAAMC,YAAY,GAAGhD,MAAM,CAACiD,cAAc,CAAC,wBAAwB,CAAC;IACpEC,MAAM,CAACF,YAAY,CAAC,CAACG,YAAY,CAAC,CAAC,CAAC;IAEpC,MAAMC,SAAS,GAAGjD,MAAM,CAAC6C,YAAY,CAAC,CAAC,CAAC,CAAC;IACzC5C,SAAS,CAACqD,KAAK,CAACL,SAAS,CAACC,SAAS,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAO,CAAC,CAAC,CAAC;IAEhE,MAAMJ,MAAM,CAAC7B,kBAAkB,CAAC,CAAC0C,oBAAoB,CAAC,iBAAiB,EAAE;MACvEE,KAAK,EAAE;QAAEC,gBAAgB,EAAE;MAAE;IAC/B,CAAC,CAAC;IACF7C,kBAAkB,CAAC8C,SAAS,CAAC,CAAC;IAE9B,MAAMX,SAAS,GAAGrD,MAAM,CAAC6C,YAAY,CAAC,CAAC,CAAC,CAAC;IACzC5C,SAAS,CAACqD,KAAK,CAACD,SAAS,CAACH,SAAS,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAO,CAAC,CAAC,CAAC;IAEhE,MAAMJ,MAAM,CAAC7B,kBAAkB,CAAC,CAAC0C,oBAAoB,CAAC,iBAAiB,EAAE;MACvEE,KAAK,EAAE;QAAEC,gBAAgB,EAAE;MAAE;IAC/B,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFvB,EAAE,CAAC,4BAA4B,EAAE,YAAY;IAC3CzC,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACjBkC,uBAAuB,EAAE;QACvBtC,MAAM;QACNE,SAAS;QACTqC,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IACF,MAAMC,YAAY,GAAGhD,MAAM,CAACiD,cAAc,CAAC,wBAAwB,CAAC;IACpEC,MAAM,CAACF,YAAY,CAAC,CAACG,YAAY,CAAC,CAAC,CAAC;IAEpC,MAAMC,SAAS,GAAGjD,MAAM,CAAC6C,YAAY,CAAC,CAAC,CAAC,CAAC;IACzC;IACA5C,SAAS,CAACqD,KAAK,CAACL,SAAS,CAACC,SAAS,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC,CAAC;;IAElE;IACAtD,MAAM,CAACuD,SAAS,CAAC,gDAAgD,CAAC;IAClEnD,SAAS,CAACqD,KAAK,CAACzD,MAAM,CAACqD,SAAS,CAAC,QAAQ,EAAE;MAAEC,IAAI,EAAE;IAAS,CAAC,CAAC,CAAC;IAE/D,MAAMc,eAAe,GAAGpE,MAAM,CAACiD,cAAc,CAAC,wBAAwB,CAAC;IACvEC,MAAM,CAACkB,eAAe,CAAC,CAACjB,YAAY,CAAC,CAAC,CAAC;EACzC,CAAC,CAAC;EAEFR,EAAE,CAAC,yBAAyB,EAAE,YAAY;IACxCzC,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACjBkC,uBAAuB,EAAE;QACvBtC,MAAM;QACNE,SAAS,EAAE,CAACA,SAAS,CAAC,CAAC,CAAC,CAAC;QACzBqC,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IAEF,MAAM9C,GAAG,CAAC,YAAY;MACpB,MAAMoE,cAAc,GAAGrE,MAAM,CAAC8D,YAAY,CAAC,QAAQ,EAAE;QAAER,IAAI,EAAE;MAAmB,CAAC,CAAC;MAClF,MAAMgB,SAAS,GAAGD,cAAc,CAAC,CAAC,CAAC;MACnCjE,SAAS,CAACqD,KAAK,CAACa,SAAS,CAAC;IAC5B,CAAC,CAAC;IAEF,MAAMjE,OAAO,CAAC,MAAML,MAAM,CAACuE,UAAU,CAAC,iCAAiC,CAAC,CAAC;IACzErB,MAAM,CAAClD,MAAM,CAACuD,SAAS,CAAC,iCAAiC,CAAC,CAAC,CAACK,iBAAiB,CAAC,CAAC;EACjF,CAAC,CAAC;EAEFjB,EAAE,CAAC,yCAAyC,EAAE,YAAY;IACxDhC,MAAM,CAAC6D,GAAG,CACR5D,IAAI,CAAC6D,IAAI,CAAC5D,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC6D,GAAG,EAAEC,GAAG,EAAEC,GAAG,KAAK;MAC7C,OAAOD,GAAG,CAACC,GAAG,CAACC,MAAM,CAAC,GAAG,CAAC,EAAED,GAAG,CAACE,IAAI,CAAC;QAAEC,MAAM,EAAE,CAAC;UAAEC,MAAM,EAAE;QAAG,CAAC;MAAE,CAAC,CAAC,CAAC;IACrE,CAAC,CACH,CAAC;IAED9E,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACjBkC,uBAAuB,EAAE;QACvBtC,MAAM;QACNE,SAAS,EAAE,CAACA,SAAS,CAAC,CAAC,CAAC,CAAC;QACzBqC,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IAEF,MAAMsB,cAAc,GAAGrE,MAAM,CAAC8D,YAAY,CAAC,QAAQ,EAAE;MAAER,IAAI,EAAE;IAAmB,CAAC,CAAC;IAClF,MAAMgB,SAAS,GAAGD,cAAc,CAAC,CAAC,CAAC;IACnCjE,SAAS,CAACqD,KAAK,CAACa,SAAS,CAAC;IAE1B,MAAMjE,OAAO,CAAC,MAAM;MAClB6C,MAAM,CACJlD,MAAM,CAACuD,SAAS,CACd,kFACF,CACF,CAAC,CAACK,iBAAiB,CAAC,CAAC;IACvB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFjB,EAAE,CAAC,6CAA6C,EAAE,YAAY;IAC5DhC,MAAM,CAAC6D,GAAG,CACR5D,IAAI,CAAC6D,IAAI,CAAC5D,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC6D,GAAG,EAAEC,GAAG,EAAEC,GAAG,KAAK;MACjD,OAAOD,GAAG,CAACC,GAAG,CAACC,MAAM,CAAC,GAAG,CAAC,EAAED,GAAG,CAACE,IAAI,CAAC;QAAEC,MAAM,EAAE,CAAC;UAAEC,MAAM,EAAE;QAAG,CAAC;MAAE,CAAC,CAAC,CAAC;IACrE,CAAC,CACH,CAAC;IAED9E,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACjBkC,uBAAuB,EAAE;QACvBtC,MAAM;QACNE,SAAS,EAAE,CAACA,SAAS,CAAC,CAAC,CAAC,CAAC;QACzBqC,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IAEF,MAAMsB,cAAc,GAAGrE,MAAM,CAAC8D,YAAY,CAAC,QAAQ,EAAE;MAAER,IAAI,EAAE;IAAmB,CAAC,CAAC;IAClF,MAAMgB,SAAS,GAAGD,cAAc,CAAC,CAAC,CAAC;IACnCjE,SAAS,CAACqD,KAAK,CAACa,SAAS,CAAC;IAE1B,MAAMjE,OAAO,CAAC,MAAM;MAClB6C,MAAM,CACJlD,MAAM,CAACuD,SAAS,CACd,kFACF,CACF,CAAC,CAACK,iBAAiB,CAAC,CAAC;IACvB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFjB,EAAE,CAAC,kDAAkD,EAAE,YAAY;IACjEhC,MAAM,CAAC6D,GAAG,CACR5D,IAAI,CAAC6D,IAAI,CAAC5D,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC6D,GAAG,EAAEC,GAAG,EAAEC,GAAG,KAAK;MACxD,OAAOD,GAAG,CAACC,GAAG,CAACC,MAAM,CAAC,GAAG,CAAC,EAAED,GAAG,CAACE,IAAI,CAAC;QAAEC,MAAM,EAAE,CAAC;UAAEC,MAAM,EAAE;QAAG,CAAC;MAAE,CAAC,CAAC,CAAC;IACrE,CAAC,CACH,CAAC;IAED9E,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACjBkC,uBAAuB,EAAE;QACvBtC,MAAM;QACNE,SAAS,EAAE,CAACA,SAAS,CAAC,CAAC,CAAC,CAAC;QACzByE,aAAa,EAAE,CACb;UACEC,IAAI,EAAE;YAAEC,EAAE,EAAE,IAAI;YAAEC,gBAAgB,EAAEpE,SAAS,CAAC,CAAC,CAAC,CAACqE,aAAa,CAACC,OAAO,CAACC,IAAI,CAACJ;UAAG,CAAC;UAChFK,SAAS,EAAE,CAAC;YAAEL,EAAE,EAAE;UAAK,CAAC;QAC1B,CAAC,CACF;QACDtC,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IAEF,MAAMsB,cAAc,GAAGrE,MAAM,CAAC8D,YAAY,CAAC,QAAQ,EAAE;MAAER,IAAI,EAAE;IAAmB,CAAC,CAAC;IAClF,MAAMgB,SAAS,GAAGD,cAAc,CAAC,CAAC,CAAC;IACnCjE,SAAS,CAACqD,KAAK,CAACa,SAAS,CAAC;IAE1B,MAAMjE,OAAO,CAAC,MACZ6C,MAAM,CAACpC,SAAS,CAACsB,MAAM,CAACE,KAAK,CAAC,CAACyB,oBAAoB,CAAC,8BAA8B,CACpF,CAAC;EACH,CAAC,CAAC;EAEFpB,EAAE,CAAC,gCAAgC,EAAE,YAAY;IAC/CzC,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACjBkC,uBAAuB,EAAE;QACvBtC,MAAM;QACNE,SAAS,EAAE,CACT;UACE,GAAGA,SAAS,CAAC,CAAC,CAAC;UACf2E,EAAE,EAAE,sCAAsC;UAC1ClB,KAAK,EAAE,OAAO;UACdwB,IAAI,EAAE;YAAEN,EAAE,EAAE;UAAuC,CAAC;UACpDO,QAAQ,EAAE,CACR;YACE,GAAGlF,SAAS,CAAC,CAAC,CAAC,CAACkF,QAAQ,CAAC,CAAC,CAAC;YAC3BC,oBAAoB,EAAE;cACpB,GAAGnF,SAAS,CAAC,CAAC,CAAC,CAACkF,QAAQ,CAAC,CAAC,CAAC,CAACC,oBAAoB;cAChDC,sBAAsB,EAAE;YAC1B;UACF,CAAC;QAEL,CAAC,CACF;QACD/C,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IAEF,MAAM9C,GAAG,CAAC,YAAY;MACpB,MAAMoE,cAAc,GAAGrE,MAAM,CAAC8D,YAAY,CAAC,QAAQ,EAAE;QAAER,IAAI,EAAE;MAAmB,CAAC,CAAC;MAClF,MAAMgB,SAAS,GAAGD,cAAc,CAAC,CAAC,CAAC;MACnCjE,SAAS,CAACqD,KAAK,CAACa,SAAS,CAAC;IAC5B,CAAC,CAAC;IAEF,MAAMjE,OAAO,CAAC,MAAM;MAClB6C,MAAM,CAAClD,MAAM,CAACuD,SAAS,CAAC,iCAAiC,CAAC,CAAC,CAACK,iBAAiB,CAAC,CAAC;IACjF,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFjB,EAAE,CAAC,kDAAkD,EAAE,YAAY;IACjEhC,MAAM,CAAC6D,GAAG,CACR5D,IAAI,CAACiF,KAAK,CAAChF,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC6D,GAAG,EAAEC,GAAG,EAAEC,GAAG,KAAK;MACtD,OAAOD,GAAG,CAACC,GAAG,CAACC,MAAM,CAAC,GAAG,CAAC,EAAED,GAAG,CAACE,IAAI,CAAC;QAAEC,MAAM,EAAE,CAAC;UAAEC,MAAM,EAAE;QAAG,CAAC;MAAE,CAAC,CAAC,CAAC;IACrE,CAAC,CACH,CAAC;IAED9E,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACjBkC,uBAAuB,EAAE;QACvBtC,MAAM;QACNE,SAAS,EAAE,CACT;UACE,GAAGA,SAAS,CAAC,CAAC,CAAC;UACf2E,EAAE,EAAE,YAAY;UAChBlB,KAAK,EAAE,OAAO;UACdwB,IAAI,EAAE;YAAEN,EAAE,EAAE;UAAS;QACvB,CAAC,CACF;QACDF,aAAa,EAAE,CACb;UACEC,IAAI,EAAE;YAAEC,EAAE,EAAE,IAAI;YAAEC,gBAAgB,EAAEpE,SAAS,CAAC,CAAC,CAAC,CAACqE,aAAa,CAACC,OAAO,CAACC,IAAI,CAACJ;UAAG,CAAC;UAChFK,SAAS,EAAE,CAAC;YAAEL,EAAE,EAAE;UAAK,CAAC;QAC1B,CAAC,CACF;QACDtC,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IAEF,MAAM+C,gBAAgB,GAAG9F,MAAM,CAAC8D,YAAY,CAAC,QAAQ,EAAE;MAAER,IAAI,EAAE;IAAyB,CAAC,CAAC;IAC1FlD,SAAS,CAACqD,KAAK,CAACqC,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAEpC,MAAMzF,OAAO,CAAC,MACZ6C,MAAM,CAACpC,SAAS,CAACsB,MAAM,CAACE,KAAK,CAAC,CAACyB,oBAAoB,CAAC,+BAA+B,CACrF,CAAC;EACH,CAAC,CAAC;EAEFpB,EAAE,CAAC,sFAAsF,EAAE,YAAY;IACrGzC,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACjBkC,uBAAuB,EAAE;QACvBtC,MAAM,EAAE;UAAE,GAAGA,MAAM;UAAEyF,OAAO,EAAE;QAAK,CAAC;QACpCvF,SAAS,EAAE,CAACA,SAAS,CAAC,CAAC,CAAC,CAAC;QACzBqC,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IAEF,MAAM9C,GAAG,CAAC,YAAY;MACpB,MAAMoE,cAAc,GAAGrE,MAAM,CAAC8D,YAAY,CAAC,QAAQ,EAAE;QAAER,IAAI,EAAE;MAAmB,CAAC,CAAC;MAClF,MAAMgB,SAAS,GAAGD,cAAc,CAAC,CAAC,CAAC;MACnCjE,SAAS,CAACqD,KAAK,CAACa,SAAS,CAAC;IAC5B,CAAC,CAAC;IAEFpB,MAAM,CAAC,MAAMlD,MAAM,CAACuE,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAACX,iBAAiB,CAAC,CAAC;IACvEV,MAAM,CAAC,MAAMlD,MAAM,CAACuE,UAAU,CAACxD,mBAAmB,CAAC,CAAC,CAAC6C,iBAAiB,CAAC,CAAC;IACxEV,MAAM,CAAC,MAAMlD,MAAM,CAACuE,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAACX,iBAAiB,CAAC,CAAC;EACzE,CAAC,CAAC;EAEFjB,EAAE,CAAC,8CAA8C,EAAE,YAAY;IAC7DzC,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACjBkC,uBAAuB,EAAE;QACvBtC,MAAM;QACNE,SAAS,EAAEC,yBAAyB;QACpCoC,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IACF,MAAMC,YAAY,GAAGhD,MAAM,CAACiD,cAAc,CAAC,wBAAwB,CAAC;IACpEC,MAAM,CAACF,YAAY,CAAC,CAACG,YAAY,CAAC,CAAC,CAAC;IACpC,MAAMC,SAAS,GAAGjD,MAAM,CAAC6C,YAAY,CAAC,CAAC,CAAC,CAAC;IACzCI,SAAS,CAACG,SAAS,CAAC,uBAAuB,CAAC;IAC5CH,SAAS,CAACG,SAAS,CAAC,qBAAqB,CAAC;IAC1CH,SAAS,CAACG,SAAS,CAAC,mCAAmC,CAAC;IACxDH,SAAS,CAACG,SAAS,CAAC,mBAAmB,CAAC;IACxCH,SAAS,CAACG,SAAS,CAAC,iBAAiB,CAAC;IACtCH,SAAS,CAACG,SAAS,CAAC,OAAO,CAAC;IAC5BH,SAAS,CAACG,SAAS,CAAC,UAAU,CAAC;IAC/BH,SAAS,CAACG,SAAS,CAAC,OAAO,CAAC;IAC5BH,SAAS,CAACG,SAAS,CAAC,SAAS,CAAC;IAC9BH,SAAS,CAACG,SAAS,CAAC,cAAc,CAAC;IACnCH,SAAS,CAACG,SAAS,CAAC,cAAc,CAAC;IACnCH,SAAS,CAACG,SAAS,CAAC,oBAAoB,CAAC;IACzCH,SAAS,CAACG,SAAS,CAAC,mBAAmB,CAAC;IACxCH,SAAS,CAACG,SAAS,CAAC,YAAY,CAAC;IACjCH,SAAS,CAACG,SAAS,CAAC,yBAAyB,CAAC;IAC9CH,SAAS,CAACG,SAAS,CAAC,qBAAqB,CAAC;IAC1CH,SAAS,CAACG,SAAS,CAAC,cAAc,CAAC;IACnCH,SAAS,CAACG,SAAS,CAAC,UAAU,CAAC;EACjC,CAAC,CAAC;EAEFZ,EAAE,CAAC,oGAAoG,EAAE,YAAY;IACnH,MAAMqD,8BAA8B,GAAG,CACrC;MACE,GAAGvF,yBAAyB,CAAC,CAAC,CAAC;MAC/BiF,QAAQ,EAAE,CACR;QACE,GAAGjF,yBAAyB,CAAC,CAAC,CAAC,CAACiF,QAAQ,CAAC,CAAC,CAAC;QAC3CC,oBAAoB,EAAE;UACpB,GAAGlF,yBAAyB,CAAC,CAAC,CAAC,CAACiF,QAAQ,CAAC,CAAC,CAAC,CAACC,oBAAoB;UAChEM,iCAAiC,EAAE;QACrC;MACF,CAAC;IAEL,CAAC,CACF;IAED/F,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACjBkC,uBAAuB,EAAE;QACvBtC,MAAM;QACNE,SAAS,EAAEwF,8BAA8B;QACzCnD,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IACFG,MAAM,CAAClD,MAAM,CAAC0D,WAAW,CAAC,aAAa,CAAC,CAAC,CAACwC,GAAG,CAACtC,iBAAiB,CAAC,CAAC;EACnE,CAAC,CAAC;EAEFjB,EAAE,CAAC,8DAA8D,EAAE,YAAY;IAC7E,IAAIwD,YAAY;IAEhBxF,MAAM,CAAC6D,GAAG,CACR5D,IAAI,CAAC6D,IAAI,CAAC,0BAA0B,EAAE,CAACC,GAAG,EAAEC,GAAG,EAAEC,GAAG,KAAK;MACvDuB,YAAY,GAAGzB,GAAG,CAAC0B,IAAI,CAACb,IAAI;MAC5B,OAAOZ,GAAG,CAACC,GAAG,CAACC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC,CACH,CAAC;IAED3E,MAAM,cAACkB,IAAA,CAACV,MAAM,IAAE,CAAC,EAAE;MACjBkC,uBAAuB,EAAE;QACvBtC,MAAM;QACNE,SAAS,EAAE,CAACA,SAAS,CAAC,CAAC,CAAC,CAAC;QACzBqC,eAAe,EAAEtC,qBAAqB,CAACuC,QAAQ,CAACD,eAAe;QAC/DE,eAAe,EAAExC,qBAAqB,CAACuC,QAAQ,CAACC;MAClD;IACF,CAAC,CAAC;IAEF,MAAM9C,GAAG,CAAC,YAAY;MACpB,MAAMoE,cAAc,GAAGrE,MAAM,CAAC8D,YAAY,CAAC,QAAQ,EAAE;QAAER,IAAI,EAAE;MAAmB,CAAC,CAAC;MAClF,MAAMgB,SAAS,GAAGD,cAAc,CAAC,CAAC,CAAC;MACnCjE,SAAS,CAACqD,KAAK,CAACa,SAAS,CAAC;IAC5B,CAAC,CAAC;IAEFpB,MAAM,CAACiD,YAAY,CAACd,aAAa,CAACgB,sBAAsB,CAAC,CAACC,OAAO,CAAC;MAChEf,IAAI,EAAE,CACJ;QACEgB,IAAI,EAAE,uBAAuB;QAC7BpB,EAAE,EAAE;MACN,CAAC;IAEL,CAAC,CAAC;IAEF,MAAM9E,OAAO,CAAC,MAAML,MAAM,CAACuE,UAAU,CAAC,iCAAiC,CAAC,CAAC;IACzErB,MAAM,CAAClD,MAAM,CAACuD,SAAS,CAAC,iCAAiC,CAAC,CAAC,CAACK,iBAAiB,CAAC,CAAC;EACjF,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
|