@unite-us/app-create-referral 0.15.75 → 0.15.77
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.
|
@@ -46,7 +46,7 @@ function CapsInfo(_ref2) {
|
|
|
46
46
|
const serviceEnd = get(formValues, 'paymentAuthForm.service_end');
|
|
47
47
|
let requestedEndDate = serviceEnd && moment.unix(serviceEnd).toISOString();
|
|
48
48
|
const pays5590RefactorInsuranceFilters = useFeatureFlag('pays5590RefactorInsuranceFilters', false);
|
|
49
|
-
const updateEditAuthorizationsFeatureEnabled = useFeatureFlag('
|
|
49
|
+
const updateEditAuthorizationsFeatureEnabled = useFeatureFlag('pays5650UpdateEditAuthorizations', false);
|
|
50
50
|
if (pays5590RefactorInsuranceFilters) {
|
|
51
51
|
requestedStartDate = serviceStart && moment(requestedStartDate).add(1, 'day').toISOString();
|
|
52
52
|
requestedEndDate = serviceEnd && moment(requestedEndDate).subtract(1, 'day').toISOString();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CapsInfo.js","names":["React","useEffect","useMemo","PropTypes","moment","get","isNumber","UTILIZATION_ERROR","DATES_ERROR","PreviousAuthorizationRequestsDetails","formatShortDate","LineItem","usePerson","useFind","Spend","ErrorMessage","useFeatureFlag","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","InformationText","_ref","name","value","isLoaded","field","fieldClassName","valueClassName","children","propTypes","oneOfType","string","element","isRequired","node","number","bool","CapsInfo","_ref2","formValues","feeScheduleProgram","isCostBased","setReferralErrors","serviceStart","requestedStartDate","unix","toISOString","serviceEnd","requestedEndDate","pays5590RefactorInsuranceFilters","updateEditAuthorizationsFeatureEnabled","add","subtract","person","data","authorizedSpendsData","isSuccess","isFindAuthorizedSpendSuccess","_objectSpread","id","fee_schedule_program","requested_starts_at","requested_ends_at","exclude_service_authorizations","non_original_from_requested","queryConfig","enabled","placeholderData","undefined","insurancesData","isFindInsuranceSuccess","state","fee_schedule","enrolled_before","expired_after","queryClient","insurances","invalidInsuranceAuthorizationDates","length","unit","authorizationSpends","totalApprovedSpend","totalRequestedSpend","totalCap","capStartsAt","capEndsAt","authorizationSpendsErrors","availableCap","formattedAvailableAmount","amount","showClientUtilizationError","some","e","title","showPassthroughDatesError","startDate","utc","startOf","endDate","endOf","hasCap","has_cap","formattedCap","formattedTotalApprovedSpend","formattedTotalRequestedSpend","formattedCapPeriod","concat","amountRequested","parseInt","isAmountExceeded","errors","service","passthrough_dates","invalid_insurance_auth_dates","amount_exceeded","className","isValid","capInfo","amountAvailable","object","func"],"sources":["../../../src/components/service_authorization/CapsInfo.jsx"],"sourcesContent":["import React, { useEffect, useMemo } from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { get, isNumber } from 'lodash';\nimport { UTILIZATION_ERROR, DATES_ERROR } from './messageConstants';\nimport PreviousAuthorizationRequestsDetails from './PreviousAuthorizationRequestsDetails';\nimport formatShortDate from './formatShortDate';\nimport LineItem from '../../pages/builder/LineItem';\nimport usePerson from '../../hooks/usePerson';\nimport { useFind } from '../../api/ApiHooks';\nimport Spend from './Spend';\nimport ErrorMessage from '../../common/form/ErrorMessage';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\n\nfunction InformationText({\n name, value, isLoaded\n}) {\n return (\n <LineItem\n field={name}\n fieldClassName=\"col-span-1 p-0 text-dark-grey\"\n valueClassName=\"flex text-dark-blue\"\n isLoaded={isLoaded}\n >\n {value}\n </LineItem>\n );\n}\n\nInformationText.propTypes = {\n name: PropTypes.oneOfType([PropTypes.string, PropTypes.element]).isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.node, PropTypes.number]).isRequired,\n isLoaded: PropTypes.bool.isRequired,\n};\n\nfunction CapsInfo({\n formValues,\n feeScheduleProgram,\n isCostBased,\n setReferralErrors,\n}) {\n const serviceStart = get(formValues, 'paymentAuthForm.service_start');\n let requestedStartDate = serviceStart && moment.unix(serviceStart).toISOString();\n const serviceEnd = get(formValues, 'paymentAuthForm.service_end');\n let requestedEndDate = serviceEnd && moment.unix(serviceEnd).toISOString();\n\n const pays5590RefactorInsuranceFilters = useFeatureFlag('pays5590RefactorInsuranceFilters', false);\n const updateEditAuthorizationsFeatureEnabled = useFeatureFlag('pays-5650-update-edit-authorizations', false);\n\n if (pays5590RefactorInsuranceFilters) {\n requestedStartDate = serviceStart && moment(requestedStartDate).add(1, 'day').toISOString();\n requestedEndDate = serviceEnd && moment(requestedEndDate).subtract(1, 'day').toISOString();\n }\n \n const person = usePerson();\n const { \n data: authorizedSpendsData, \n isSuccess: isFindAuthorizedSpendSuccess, \n } = useFind(\n 'authorized_spend',\n {\n person: person?.id,\n fee_schedule_program: feeScheduleProgram?.id,\n requested_starts_at: requestedStartDate,\n requested_ends_at: requestedEndDate,\n ...(updateEditAuthorizationsFeatureEnabled && {\n exclude_service_authorizations: {\n non_original_from_requested: true,\n },\n }),\n },\n { \n queryConfig: { \n enabled: !!(person?.id && feeScheduleProgram?.id),\n placeholderData: undefined,\n } \n }\n );\n\n const { \n data: insurancesData,\n isSuccess: isFindInsuranceSuccess,\n } = useFind(\n 'insurance',\n {\n person: person?.id,\n state: 'active',\n 'plan.fee_schedules': feeScheduleProgram?.fee_schedule.id,\n enrolled_before: requestedStartDate,\n expired_after: requestedEndDate,\n },\n {\n queryClient: {\n enabled: !!feeScheduleProgram?.id,\n placeholderData: undefined,\n }\n }\n );\n const insurances = get(insurancesData, 'data.data', []);\n const invalidInsuranceAuthorizationDates = !insurances?.length;\n\n const unit = get(feeScheduleProgram, 'unit');\n const authorizationSpends = get(authorizedSpendsData, 'data.data', []); //todo use this on the modal\n const totalApprovedSpend = get(authorizedSpendsData, 'data.meta.total_approved_spend', 0);\n const totalRequestedSpend = get(authorizedSpendsData, 'data.meta.total_requested_spend', 0);\n const totalCap = get(authorizedSpendsData, 'data.meta.total_cap', 0);\n const capStartsAt = get(authorizedSpendsData, 'data.meta.cap_starts_at', null);\n const capEndsAt = get(authorizedSpendsData, 'data.meta.cap_ends_at', null);\n const authorizationSpendsErrors = get(authorizedSpendsData, 'data.meta.errors', []);\n const availableCap = get(authorizedSpendsData, 'data.meta.available_cap', 0);\n const formattedAvailableAmount = <Spend isCostBased={isCostBased} amount={availableCap} unit={unit}/>;\n\n const showClientUtilizationError = authorizationSpendsErrors.some((e) => e.title === UTILIZATION_ERROR);\n const showPassthroughDatesError = authorizationSpendsErrors.some((e) => e.title === DATES_ERROR);\n\n const startDate = moment(capStartsAt).utc().startOf('day');\n const endDate = moment(capEndsAt).utc().endOf('day');\n const hasCap = feeScheduleProgram?.has_cap;\n const formattedCap = hasCap ? <Spend amount={totalCap} unit={unit} isCostBased={isCostBased}/> : 'No Cap';\n const formattedTotalApprovedSpend = <Spend isCostBased={isCostBased} amount={totalApprovedSpend} unit={unit}/>;\n const formattedTotalRequestedSpend = <Spend isCostBased={isCostBased} amount={totalRequestedSpend} unit={unit}/>;\n const formattedCapPeriod = (hasCap && !capStartsAt) ?\n 'Lifetime' : `${formatShortDate(startDate)} - ${formatShortDate(endDate)}`;\n\n\n const amountRequested = parseInt(get(formValues, 'paymentAuthForm.amount_requested'), 10);\n const isAmountExceeded = isNumber(amountRequested) && hasCap && (amountRequested > availableCap);\n\n const errors = useMemo(() => {\n return {\n service: !!showClientUtilizationError,\n passthrough_dates: !!showPassthroughDatesError,\n invalid_insurance_auth_dates: !!invalidInsuranceAuthorizationDates,\n amount_exceeded: !!isAmountExceeded,\n };\n }, [\n showClientUtilizationError,\n showPassthroughDatesError,\n invalidInsuranceAuthorizationDates,\n isAmountExceeded,\n ]);\n\n useEffect(() => {\n setReferralErrors(errors);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n errors,\n ]);\n\n return (\n <div className=\"mb-12 grid grid-cols-2 gap-2\" data-testid=\"caps-info-section\">\n { hasCap && (\n <InformationText\n name={<span className=\"font-bold\">AMOUNT AVAILABLE FOR AUTHORIZATION</span>}\n value={(\n <span className=\"font-bold\">\n {formattedAvailableAmount}\n </span>\n )}\n isLoaded={isFindAuthorizedSpendSuccess}\n />\n )}\n <InformationText\n name=\"Amount Currently Authorized\"\n value={formattedTotalApprovedSpend}\n isLoaded={isFindAuthorizedSpendSuccess}\n />\n { hasCap && (\n <>\n <InformationText name=\"Cap\" value={formattedCap} isLoaded={isFindAuthorizedSpendSuccess} />\n {startDate?.isValid() &&\n (<InformationText name=\"Cap Period\" value={formattedCapPeriod} isLoaded={isFindAuthorizedSpendSuccess} />)}\n </>\n )}\n <InformationText\n name=\"Amount Pending Authorization\"\n value={\n formattedTotalRequestedSpend\n }\n isLoaded={isFindAuthorizedSpendSuccess}\n />\n <div>\n <PreviousAuthorizationRequestsDetails\n authorizationSpends={authorizationSpends}\n totalApprovedSpend={formattedTotalApprovedSpend}\n totalRequestedSpend={formattedTotalRequestedSpend}\n unit={unit}\n isCostBased={isCostBased}\n capInfo={{hasCap, formattedCap, formattedCapPeriod, startDate}}\n amountAvailable={formattedAvailableAmount}\n />\n </div>\n {isAmountExceeded && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n The amount requested is more than the amount available for authorization.\n Please adjust the amount requested, or search for another program\n to meet the client's needs.\n </ErrorMessage>\n </div>\n )}\n {showClientUtilizationError && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n The client is already receiving this service through either a passthrough or non-passthrough service within this program group.\n </ErrorMessage>\n </div>\n )}\n {showPassthroughDatesError && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n Clients can only receive services from this program for 30 days or until their social coverage ends,\n whichever comes first.\n </ErrorMessage>\n </div>\n )}\n {(isFindInsuranceSuccess && isFindAuthorizedSpendSuccess) && invalidInsuranceAuthorizationDates && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n The service delivery dates requested fall outside the client's\n enrollment dates for all enrolled plans. Please edit the service delivery dates.\n </ErrorMessage>\n </div>\n )}\n </div>\n );\n}\n\nCapsInfo.propTypes = {\n formValues: PropTypes.object.isRequired,\n feeScheduleProgram: PropTypes.object.isRequired,\n isCostBased: PropTypes.bool.isRequired,\n setReferralErrors: PropTypes.func.isRequired,\n};\n\nexport default CapsInfo;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"CapsInfo.js","names":["React","useEffect","useMemo","PropTypes","moment","get","isNumber","UTILIZATION_ERROR","DATES_ERROR","PreviousAuthorizationRequestsDetails","formatShortDate","LineItem","usePerson","useFind","Spend","ErrorMessage","useFeatureFlag","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","InformationText","_ref","name","value","isLoaded","field","fieldClassName","valueClassName","children","propTypes","oneOfType","string","element","isRequired","node","number","bool","CapsInfo","_ref2","formValues","feeScheduleProgram","isCostBased","setReferralErrors","serviceStart","requestedStartDate","unix","toISOString","serviceEnd","requestedEndDate","pays5590RefactorInsuranceFilters","updateEditAuthorizationsFeatureEnabled","add","subtract","person","data","authorizedSpendsData","isSuccess","isFindAuthorizedSpendSuccess","_objectSpread","id","fee_schedule_program","requested_starts_at","requested_ends_at","exclude_service_authorizations","non_original_from_requested","queryConfig","enabled","placeholderData","undefined","insurancesData","isFindInsuranceSuccess","state","fee_schedule","enrolled_before","expired_after","queryClient","insurances","invalidInsuranceAuthorizationDates","length","unit","authorizationSpends","totalApprovedSpend","totalRequestedSpend","totalCap","capStartsAt","capEndsAt","authorizationSpendsErrors","availableCap","formattedAvailableAmount","amount","showClientUtilizationError","some","e","title","showPassthroughDatesError","startDate","utc","startOf","endDate","endOf","hasCap","has_cap","formattedCap","formattedTotalApprovedSpend","formattedTotalRequestedSpend","formattedCapPeriod","concat","amountRequested","parseInt","isAmountExceeded","errors","service","passthrough_dates","invalid_insurance_auth_dates","amount_exceeded","className","isValid","capInfo","amountAvailable","object","func"],"sources":["../../../src/components/service_authorization/CapsInfo.jsx"],"sourcesContent":["import React, { useEffect, useMemo } from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { get, isNumber } from 'lodash';\nimport { UTILIZATION_ERROR, DATES_ERROR } from './messageConstants';\nimport PreviousAuthorizationRequestsDetails from './PreviousAuthorizationRequestsDetails';\nimport formatShortDate from './formatShortDate';\nimport LineItem from '../../pages/builder/LineItem';\nimport usePerson from '../../hooks/usePerson';\nimport { useFind } from '../../api/ApiHooks';\nimport Spend from './Spend';\nimport ErrorMessage from '../../common/form/ErrorMessage';\nimport { useFeatureFlag } from '../../utils/useFeatureFlag';\n\nfunction InformationText({\n name, value, isLoaded\n}) {\n return (\n <LineItem\n field={name}\n fieldClassName=\"col-span-1 p-0 text-dark-grey\"\n valueClassName=\"flex text-dark-blue\"\n isLoaded={isLoaded}\n >\n {value}\n </LineItem>\n );\n}\n\nInformationText.propTypes = {\n name: PropTypes.oneOfType([PropTypes.string, PropTypes.element]).isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.node, PropTypes.number]).isRequired,\n isLoaded: PropTypes.bool.isRequired,\n};\n\nfunction CapsInfo({\n formValues,\n feeScheduleProgram,\n isCostBased,\n setReferralErrors,\n}) {\n const serviceStart = get(formValues, 'paymentAuthForm.service_start');\n let requestedStartDate = serviceStart && moment.unix(serviceStart).toISOString();\n const serviceEnd = get(formValues, 'paymentAuthForm.service_end');\n let requestedEndDate = serviceEnd && moment.unix(serviceEnd).toISOString();\n\n const pays5590RefactorInsuranceFilters = useFeatureFlag('pays5590RefactorInsuranceFilters', false);\n const updateEditAuthorizationsFeatureEnabled = useFeatureFlag('pays5650UpdateEditAuthorizations', false);\n\n if (pays5590RefactorInsuranceFilters) {\n requestedStartDate = serviceStart && moment(requestedStartDate).add(1, 'day').toISOString();\n requestedEndDate = serviceEnd && moment(requestedEndDate).subtract(1, 'day').toISOString();\n }\n \n const person = usePerson();\n const { \n data: authorizedSpendsData, \n isSuccess: isFindAuthorizedSpendSuccess, \n } = useFind(\n 'authorized_spend',\n {\n person: person?.id,\n fee_schedule_program: feeScheduleProgram?.id,\n requested_starts_at: requestedStartDate,\n requested_ends_at: requestedEndDate,\n ...(updateEditAuthorizationsFeatureEnabled && {\n exclude_service_authorizations: {\n non_original_from_requested: true,\n },\n }),\n },\n { \n queryConfig: { \n enabled: !!(person?.id && feeScheduleProgram?.id),\n placeholderData: undefined,\n } \n }\n );\n\n const { \n data: insurancesData,\n isSuccess: isFindInsuranceSuccess,\n } = useFind(\n 'insurance',\n {\n person: person?.id,\n state: 'active',\n 'plan.fee_schedules': feeScheduleProgram?.fee_schedule.id,\n enrolled_before: requestedStartDate,\n expired_after: requestedEndDate,\n },\n {\n queryClient: {\n enabled: !!feeScheduleProgram?.id,\n placeholderData: undefined,\n }\n }\n );\n const insurances = get(insurancesData, 'data.data', []);\n const invalidInsuranceAuthorizationDates = !insurances?.length;\n\n const unit = get(feeScheduleProgram, 'unit');\n const authorizationSpends = get(authorizedSpendsData, 'data.data', []); //todo use this on the modal\n const totalApprovedSpend = get(authorizedSpendsData, 'data.meta.total_approved_spend', 0);\n const totalRequestedSpend = get(authorizedSpendsData, 'data.meta.total_requested_spend', 0);\n const totalCap = get(authorizedSpendsData, 'data.meta.total_cap', 0);\n const capStartsAt = get(authorizedSpendsData, 'data.meta.cap_starts_at', null);\n const capEndsAt = get(authorizedSpendsData, 'data.meta.cap_ends_at', null);\n const authorizationSpendsErrors = get(authorizedSpendsData, 'data.meta.errors', []);\n const availableCap = get(authorizedSpendsData, 'data.meta.available_cap', 0);\n const formattedAvailableAmount = <Spend isCostBased={isCostBased} amount={availableCap} unit={unit}/>;\n\n const showClientUtilizationError = authorizationSpendsErrors.some((e) => e.title === UTILIZATION_ERROR);\n const showPassthroughDatesError = authorizationSpendsErrors.some((e) => e.title === DATES_ERROR);\n\n const startDate = moment(capStartsAt).utc().startOf('day');\n const endDate = moment(capEndsAt).utc().endOf('day');\n const hasCap = feeScheduleProgram?.has_cap;\n const formattedCap = hasCap ? <Spend amount={totalCap} unit={unit} isCostBased={isCostBased}/> : 'No Cap';\n const formattedTotalApprovedSpend = <Spend isCostBased={isCostBased} amount={totalApprovedSpend} unit={unit}/>;\n const formattedTotalRequestedSpend = <Spend isCostBased={isCostBased} amount={totalRequestedSpend} unit={unit}/>;\n const formattedCapPeriod = (hasCap && !capStartsAt) ?\n 'Lifetime' : `${formatShortDate(startDate)} - ${formatShortDate(endDate)}`;\n\n\n const amountRequested = parseInt(get(formValues, 'paymentAuthForm.amount_requested'), 10);\n const isAmountExceeded = isNumber(amountRequested) && hasCap && (amountRequested > availableCap);\n\n const errors = useMemo(() => {\n return {\n service: !!showClientUtilizationError,\n passthrough_dates: !!showPassthroughDatesError,\n invalid_insurance_auth_dates: !!invalidInsuranceAuthorizationDates,\n amount_exceeded: !!isAmountExceeded,\n };\n }, [\n showClientUtilizationError,\n showPassthroughDatesError,\n invalidInsuranceAuthorizationDates,\n isAmountExceeded,\n ]);\n\n useEffect(() => {\n setReferralErrors(errors);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n errors,\n ]);\n\n return (\n <div className=\"mb-12 grid grid-cols-2 gap-2\" data-testid=\"caps-info-section\">\n { hasCap && (\n <InformationText\n name={<span className=\"font-bold\">AMOUNT AVAILABLE FOR AUTHORIZATION</span>}\n value={(\n <span className=\"font-bold\">\n {formattedAvailableAmount}\n </span>\n )}\n isLoaded={isFindAuthorizedSpendSuccess}\n />\n )}\n <InformationText\n name=\"Amount Currently Authorized\"\n value={formattedTotalApprovedSpend}\n isLoaded={isFindAuthorizedSpendSuccess}\n />\n { hasCap && (\n <>\n <InformationText name=\"Cap\" value={formattedCap} isLoaded={isFindAuthorizedSpendSuccess} />\n {startDate?.isValid() &&\n (<InformationText name=\"Cap Period\" value={formattedCapPeriod} isLoaded={isFindAuthorizedSpendSuccess} />)}\n </>\n )}\n <InformationText\n name=\"Amount Pending Authorization\"\n value={\n formattedTotalRequestedSpend\n }\n isLoaded={isFindAuthorizedSpendSuccess}\n />\n <div>\n <PreviousAuthorizationRequestsDetails\n authorizationSpends={authorizationSpends}\n totalApprovedSpend={formattedTotalApprovedSpend}\n totalRequestedSpend={formattedTotalRequestedSpend}\n unit={unit}\n isCostBased={isCostBased}\n capInfo={{hasCap, formattedCap, formattedCapPeriod, startDate}}\n amountAvailable={formattedAvailableAmount}\n />\n </div>\n {isAmountExceeded && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n The amount requested is more than the amount available for authorization.\n Please adjust the amount requested, or search for another program\n to meet the client's needs.\n </ErrorMessage>\n </div>\n )}\n {showClientUtilizationError && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n The client is already receiving this service through either a passthrough or non-passthrough service within this program group.\n </ErrorMessage>\n </div>\n )}\n {showPassthroughDatesError && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n Clients can only receive services from this program for 30 days or until their social coverage ends,\n whichever comes first.\n </ErrorMessage>\n </div>\n )}\n {(isFindInsuranceSuccess && isFindAuthorizedSpendSuccess) && invalidInsuranceAuthorizationDates && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n The service delivery dates requested fall outside the client's\n enrollment dates for all enrolled plans. Please edit the service delivery dates.\n </ErrorMessage>\n </div>\n )}\n </div>\n );\n}\n\nCapsInfo.propTypes = {\n formValues: PropTypes.object.isRequired,\n feeScheduleProgram: PropTypes.object.isRequired,\n isCostBased: PropTypes.bool.isRequired,\n setReferralErrors: PropTypes.func.isRequired,\n};\n\nexport default CapsInfo;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -211,7 +211,7 @@ export default function ReferralsSent(_ref) {
|
|
|
211
211
|
})]
|
|
212
212
|
}), /*#__PURE__*/_jsxs("div", {
|
|
213
213
|
className: "flex justify-center gap-4 ".concat(isEmrSource ? 'pt-10' : 'mt-6'),
|
|
214
|
-
children: [/*#__PURE__*/_jsx(Button, {
|
|
214
|
+
children: [!isEmrSource && /*#__PURE__*/_jsx(Button, {
|
|
215
215
|
id: "clientProfile",
|
|
216
216
|
onClick: () => {
|
|
217
217
|
CALLBACKS.onReferralCompleted();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReferralsSent.js","names":["Button","Icon","compact","get","React","useState","useEffect","NEXT_STEPS","CALLBACKS","APP_ENVIRONMENT","INITIAL_ADDRESSES","COMPONENTS","coreApi","useAppCreateReferralContext","useUpdateResourceList","useCreateResourceList","useCreateShareEvent","isUnlistedProgram","filterProgramsUnlisted","CreateReferralContainer","getProgramServicesPayload","urls","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","REFERRAL_STATUS","FAILED","PARTIAL","SUCCESS","MESSAGES","FORWARD","DEFAULT","CREATE","ReferralsSent","_ref","referrals","isSuccessfullyForwarded","referralsResultDetail","isForwardReferralPath","state","currentEmployee","source","resourceListId","shareDrawerOpen","setShareDrawerOpen","selectedProgramsWithName","setSelectedProgramsWithName","successfullySentStatus","setSuccessfullySentStatus","updateResourceList","createResourceList","createShareEvent","ShareDrawer","isEmrSource","clientProfileBtnText","isUnlistedReferral","length","nextSteps","slice","newReferrals","referralsWithPrograms","Set","flatMap","r","programs","referralServices","service","programsWithName","filter","program","map","_program$provider","_program$services","id","name","isSensitive","provider","sensitive","services","some","s","_referralServices$fin","find","rs","window","history","pushState","location","href","handlePopState","event","preventDefault","onReferralCompleted","addEventListener","removeEventListener","saveShareEvent","shareMethod","language","programServicesPayload","currentResourceListId","response","data","Error","sent_to_ehr","notify","success","error","windowMessage","status","concat","messageType","totalReferrals","successfulReferrals","referral","sent","referralStatus","_ref2","_error$includes","index","referralName","isNetworkError","includes","call","className","children","icon","size","onClick","open","addHttpIfNeeded","title","color","isStepReferralSent","item","label","omitDefaultStyles","outline","iconLeft","primary","disabled","employeeId","SHARES_URL","sharesUrl","show","onClose","onShare","_ref3","resourceType","resources","providerId","initialAddresses"],"sources":["../../../src/pages/review/ReferralsSent.js"],"sourcesContent":["import { Button, Icon } from '@unite-us/app-components';\nimport { compact, get } from 'lodash';\nimport React, { useState, useEffect } from 'react';\nimport {\n NEXT_STEPS,\n} from '../builder/constants';\nimport { CALLBACKS, APP_ENVIRONMENT, INITIAL_ADDRESSES, COMPONENTS } from '../../api/config';\nimport { coreApi } from '../../api/config';\nimport { useAppCreateReferralContext } from '../../context/AppCreateReferralProvider';\nimport useUpdateResourceList from '../../hooks/useUpdateResourceList';\nimport useCreateResourceList from '../../hooks/useCreateResourceList';\nimport useCreateShareEvent from '../../hooks/useCreateShareEvent';\nimport { isUnlistedProgram, filterProgramsUnlisted } from '../builder/utils';\nimport CreateReferralContainer from '../../components/CreateReferralContainer';\nimport getProgramServicesPayload from '../../utils/getProgramServicesPayload';\nimport { urls } from '@unite-us/client-utils';\n\nconst REFERRAL_STATUS = {\n FAILED: 'failed',\n PARTIAL: 'partial',\n SUCCESS: 'success',\n};\n\nconst MESSAGES = {\n FORWARD: {\n [REFERRAL_STATUS.SUCCESS]: 'Referrals Successfully Forwarded!',\n [REFERRAL_STATUS.PARTIAL]: 'Some Referrals Successfully Forwarded',\n DEFAULT: 'Referrals Not Forwarded!'\n },\n CREATE: {\n [REFERRAL_STATUS.SUCCESS]: 'Referrals Successfully Created!',\n [REFERRAL_STATUS.PARTIAL]: 'Some Referrals Successfully Created',\n DEFAULT: 'Referrals Not Created'\n }\n};\n\nexport default function ReferralsSent({ referrals, isSuccessfullyForwarded, referralsResultDetail, isForwardReferralPath }) {\n const { state: { currentEmployee, source, resourceListId } } = useAppCreateReferralContext();\n const [shareDrawerOpen, setShareDrawerOpen] = useState(false);\n const [selectedProgramsWithName, setSelectedProgramsWithName] = useState([]);\n const [successfullySentStatus, setSuccessfullySentStatus] = useState(null);\n const updateResourceList = useUpdateResourceList(resourceListId);\n const createResourceList = useCreateResourceList();\n const createShareEvent = useCreateShareEvent();\n const { ShareDrawer } = COMPONENTS;\n const isEmrSource = source === 'emr';\n const clientProfileBtnText = isEmrSource ? 'Go to client’s profile' : 'Go to Face Sheet';\n\n const isUnlistedReferral = filterProgramsUnlisted(referrals).length === 0;\n const nextSteps = isUnlistedReferral ? NEXT_STEPS.slice(2) : NEXT_STEPS;\n\n useEffect(() => {\n const newReferrals = compact(referrals);\n const referralsWithPrograms = [...new Set(newReferrals.flatMap((r) => r.programs))];\n const referralServices = [...new Set(newReferrals.flatMap((r) => r.service))];\n const programsWithName = referralsWithPrograms.filter(program => !isUnlistedProgram(program)).map(program => ({\n id: program.id, \n name: program.name, \n isSensitive: program.provider?.sensitive || program.services?.some(s => referralServices?.find(rs => rs.id === s.id)?.sensitive),\n }));\n setSelectedProgramsWithName(programsWithName);\n }, [referrals]);\n\n useEffect(() => {\n window.history.pushState(null, null, window.location.href);\n\n const handlePopState = (event) => {\n event.preventDefault();\n CALLBACKS.onReferralCompleted();\n };\n window.addEventListener('popstate', handlePopState);\n return () => window.removeEventListener('popstate', handlePopState);\n }, []);\n\n async function saveShareEvent(shareMethod, language) {\n const programServicesPayload = getProgramServicesPayload(filterProgramsUnlisted(referrals));\n let currentResourceListId = resourceListId;\n if (!currentResourceListId) {\n try {\n const { response } = await createResourceList({ language, source, programServicesPayload });\n \n if (!response || !response.data || !response.data.data) {\n throw new Error('Invalid response structure from createResourceList');\n }\n \n if (response.data.data.sent_to_ehr) {\n CALLBACKS.notify.success(\"The resource list is being sent to the EHR system\");\n }\n \n currentResourceListId = response.data.data.id;\n } catch (error) {\n CALLBACKS.notify.error(\"Failed to create resource list\");\n throw error;\n }\n } else {\n updateResourceList({ programServicesPayload });\n }\n \n createShareEvent(referrals, currentResourceListId, shareMethod);\n }\n\n const windowMessage = () => {\n if (!referrals.status && !successfullySentStatus) {\n return `Referrals Successfully ${isSuccessfullyForwarded ? 'Forwarded' : 'Created'}!`;\n }\n const messageType = isForwardReferralPath ? 'FORWARD' : 'CREATE';\n return MESSAGES[messageType][successfullySentStatus] || MESSAGES[messageType].DEFAULT;\n };\n\n useEffect(() => {\n if (!referralsResultDetail || referralsResultDetail.length === 0) {\n setSuccessfullySentStatus(null);\n return;\n }\n\n const totalReferrals = referralsResultDetail.length;\n const successfulReferrals = referralsResultDetail.filter(referral => referral.sent).length;\n\n if (successfulReferrals === 0) {\n setSuccessfullySentStatus(REFERRAL_STATUS.FAILED);\n } else if (successfulReferrals < totalReferrals) {\n setSuccessfullySentStatus(REFERRAL_STATUS.PARTIAL);\n } else {\n setSuccessfullySentStatus(REFERRAL_STATUS.SUCCESS);\n }\n }, [referralsResultDetail]);\n\n const referralStatus = () => {\n return referralsResultDetail && referralsResultDetail.map(({sent, error, index}) => {\n const referralName = `Referral ${index + 1}: ${get(referrals[index], 'service.name')}`\n const isNetworkError = error?.includes?.('network') || false;\n\n return (\n <div className='flex flex-col p-4 pb-4 mx-auto border border-solid\n border-table-border-color'>\n <h1 className=\"uppercase font-black text-grey text-base mr-4\">{referralName}</h1>\n <div className='flex flex-row items-center'>\n {!sent ? (\n <>\n <Icon className=\"text-white fill-current bg-red rounded-full p-1 mr-4\" icon={'Cross'} size={10} />\n <h2 className=\"text-base font-black text-red\">{`${isNetworkError ? error : \"Error: Referral creation failed. Get help resolving the issue by reaching out to \"}`}\n {!isNetworkError && (\n <button\n id=\"website-link\"\n className=\"text-base ui-contact-information__icon-text--website pl-quarter underline text-blue-600\"\n onClick={() => {\n window.open(urls.addHttpIfNeeded('support@uniteus.com'), '_blank', 'noopener,noreferrer');\n }}\n title={'Organization Website'}\n >\n {'support@uniteus.com.'}\n </button>\n )}\n\n </h2>\n </>\n ) : (\n <>\n <Icon className=\"mr-4\" color={'green'} icon={'CheckCircle'} size={18} />\n <h2 className=\"text-base font-black text-dark-green\">Referral successfully created.</h2>\n </>\n )}\n </div>\n </div>\n )\n })\n }\n\n return (\n <>\n <CreateReferralContainer isStepReferralSent={true}>\n <div className='flex justify-around'>\n <div className={`p-10 bg-white ${successfullySentStatus === REFERRAL_STATUS.SUCCESS ? \"w-3/6\" : \"w-4/6\"} my-10`}>\n <h1 className={`text-4xl ${isEmrSource ? 'mb-10':'mb-15'} text-center font-proxima-nova font-semibold`}>{windowMessage()}</h1>\n\n <div className='space-y-2'>\n {referralStatus()}\n </div>\n\n {successfullySentStatus !== REFERRAL_STATUS.FAILED && (\n <div className={`${successfullySentStatus === REFERRAL_STATUS.SUCCESS ? \"space-y-2\" : \"w-6/12\"} p-4 mt-6 text-center mx-auto bg-white-grey border border-solid\n border-table-border-color rounded`}>\n <h1 className={`font-black text-center text-lg pb-2 ${isEmrSource && 'pt-5'}`}>Next Steps</h1>\n <div className={`text-left p-2 ${isEmrSource && 'pb-5'}`}>\n {nextSteps.map((item) => (\n <li className='list-none mb-1' key={item}>- {item}</li>\n ))}\n </div>\n </div>\n )}\n\n <div className={`flex justify-center gap-4 ${isEmrSource ? 'pt-10':'mt-6'}`}>\n <Button\n id=\"clientProfile\"\n onClick={() => {\n CALLBACKS.onReferralCompleted();\n }}\n className={`font-semibold normal-case w-64 rounded ${isEmrSource && 'border-black'}`}\n label={clientProfileBtnText}\n omitDefaultStyles={isEmrSource}\n outline={true}\n />\n\n {!isUnlistedReferral &&\n <Button\n id=\"share\"\n iconLeft={<Icon icon=\"IconMailForward\" color=\"white\" />}\n onClick={() => {\n setShareDrawerOpen(true);\n }}\n primary\n className=\"font-semibold bg-current-blue normal-case w-64\"\n label=\"Share Resources\"\n disabled={successfullySentStatus === REFERRAL_STATUS.FAILED}\n />\n }\n </div>\n\n <ShareDrawer\n employeeId={currentEmployee?.id}\n coreApi={coreApi}\n SHARES_URL={APP_ENVIRONMENT.sharesUrl}\n show={shareDrawerOpen}\n onClose={() => setShareDrawerOpen(false)}\n onShare={({ shareMethod, language }) => saveShareEvent(shareMethod, language)}\n resourceType=\"program\"\n resources={selectedProgramsWithName}\n providerId={APP_ENVIRONMENT.providerId}\n initialAddresses={INITIAL_ADDRESSES}\n />\n </div>\n </div>\n </CreateReferralContainer>\n </>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ReferralsSent.js","names":["Button","Icon","compact","get","React","useState","useEffect","NEXT_STEPS","CALLBACKS","APP_ENVIRONMENT","INITIAL_ADDRESSES","COMPONENTS","coreApi","useAppCreateReferralContext","useUpdateResourceList","useCreateResourceList","useCreateShareEvent","isUnlistedProgram","filterProgramsUnlisted","CreateReferralContainer","getProgramServicesPayload","urls","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","REFERRAL_STATUS","FAILED","PARTIAL","SUCCESS","MESSAGES","FORWARD","DEFAULT","CREATE","ReferralsSent","_ref","referrals","isSuccessfullyForwarded","referralsResultDetail","isForwardReferralPath","state","currentEmployee","source","resourceListId","shareDrawerOpen","setShareDrawerOpen","selectedProgramsWithName","setSelectedProgramsWithName","successfullySentStatus","setSuccessfullySentStatus","updateResourceList","createResourceList","createShareEvent","ShareDrawer","isEmrSource","clientProfileBtnText","isUnlistedReferral","length","nextSteps","slice","newReferrals","referralsWithPrograms","Set","flatMap","r","programs","referralServices","service","programsWithName","filter","program","map","_program$provider","_program$services","id","name","isSensitive","provider","sensitive","services","some","s","_referralServices$fin","find","rs","window","history","pushState","location","href","handlePopState","event","preventDefault","onReferralCompleted","addEventListener","removeEventListener","saveShareEvent","shareMethod","language","programServicesPayload","currentResourceListId","response","data","Error","sent_to_ehr","notify","success","error","windowMessage","status","concat","messageType","totalReferrals","successfulReferrals","referral","sent","referralStatus","_ref2","_error$includes","index","referralName","isNetworkError","includes","call","className","children","icon","size","onClick","open","addHttpIfNeeded","title","color","isStepReferralSent","item","label","omitDefaultStyles","outline","iconLeft","primary","disabled","employeeId","SHARES_URL","sharesUrl","show","onClose","onShare","_ref3","resourceType","resources","providerId","initialAddresses"],"sources":["../../../src/pages/review/ReferralsSent.js"],"sourcesContent":["import { Button, Icon } from '@unite-us/app-components';\nimport { compact, get } from 'lodash';\nimport React, { useState, useEffect } from 'react';\nimport {\n NEXT_STEPS,\n} from '../builder/constants';\nimport { CALLBACKS, APP_ENVIRONMENT, INITIAL_ADDRESSES, COMPONENTS } from '../../api/config';\nimport { coreApi } from '../../api/config';\nimport { useAppCreateReferralContext } from '../../context/AppCreateReferralProvider';\nimport useUpdateResourceList from '../../hooks/useUpdateResourceList';\nimport useCreateResourceList from '../../hooks/useCreateResourceList';\nimport useCreateShareEvent from '../../hooks/useCreateShareEvent';\nimport { isUnlistedProgram, filterProgramsUnlisted } from '../builder/utils';\nimport CreateReferralContainer from '../../components/CreateReferralContainer';\nimport getProgramServicesPayload from '../../utils/getProgramServicesPayload';\nimport { urls } from '@unite-us/client-utils';\n\nconst REFERRAL_STATUS = {\n FAILED: 'failed',\n PARTIAL: 'partial',\n SUCCESS: 'success',\n};\n\nconst MESSAGES = {\n FORWARD: {\n [REFERRAL_STATUS.SUCCESS]: 'Referrals Successfully Forwarded!',\n [REFERRAL_STATUS.PARTIAL]: 'Some Referrals Successfully Forwarded',\n DEFAULT: 'Referrals Not Forwarded!'\n },\n CREATE: {\n [REFERRAL_STATUS.SUCCESS]: 'Referrals Successfully Created!',\n [REFERRAL_STATUS.PARTIAL]: 'Some Referrals Successfully Created',\n DEFAULT: 'Referrals Not Created'\n }\n};\n\nexport default function ReferralsSent({ referrals, isSuccessfullyForwarded, referralsResultDetail, isForwardReferralPath }) {\n const { state: { currentEmployee, source, resourceListId } } = useAppCreateReferralContext();\n const [shareDrawerOpen, setShareDrawerOpen] = useState(false);\n const [selectedProgramsWithName, setSelectedProgramsWithName] = useState([]);\n const [successfullySentStatus, setSuccessfullySentStatus] = useState(null);\n const updateResourceList = useUpdateResourceList(resourceListId);\n const createResourceList = useCreateResourceList();\n const createShareEvent = useCreateShareEvent();\n const { ShareDrawer } = COMPONENTS;\n const isEmrSource = source === 'emr';\n const clientProfileBtnText = isEmrSource ? 'Go to client’s profile' : 'Go to Face Sheet';\n\n const isUnlistedReferral = filterProgramsUnlisted(referrals).length === 0;\n const nextSteps = isUnlistedReferral ? NEXT_STEPS.slice(2) : NEXT_STEPS;\n\n useEffect(() => {\n const newReferrals = compact(referrals);\n const referralsWithPrograms = [...new Set(newReferrals.flatMap((r) => r.programs))];\n const referralServices = [...new Set(newReferrals.flatMap((r) => r.service))];\n const programsWithName = referralsWithPrograms.filter(program => !isUnlistedProgram(program)).map(program => ({\n id: program.id, \n name: program.name, \n isSensitive: program.provider?.sensitive || program.services?.some(s => referralServices?.find(rs => rs.id === s.id)?.sensitive),\n }));\n setSelectedProgramsWithName(programsWithName);\n }, [referrals]);\n\n useEffect(() => {\n window.history.pushState(null, null, window.location.href);\n\n const handlePopState = (event) => {\n event.preventDefault();\n CALLBACKS.onReferralCompleted();\n };\n window.addEventListener('popstate', handlePopState);\n return () => window.removeEventListener('popstate', handlePopState);\n }, []);\n\n async function saveShareEvent(shareMethod, language) {\n const programServicesPayload = getProgramServicesPayload(filterProgramsUnlisted(referrals));\n let currentResourceListId = resourceListId;\n if (!currentResourceListId) {\n try {\n const { response } = await createResourceList({ language, source, programServicesPayload });\n \n if (!response || !response.data || !response.data.data) {\n throw new Error('Invalid response structure from createResourceList');\n }\n \n if (response.data.data.sent_to_ehr) {\n CALLBACKS.notify.success(\"The resource list is being sent to the EHR system\");\n }\n \n currentResourceListId = response.data.data.id;\n } catch (error) {\n CALLBACKS.notify.error(\"Failed to create resource list\");\n throw error;\n }\n } else {\n updateResourceList({ programServicesPayload });\n }\n \n createShareEvent(referrals, currentResourceListId, shareMethod);\n }\n\n const windowMessage = () => {\n if (!referrals.status && !successfullySentStatus) {\n return `Referrals Successfully ${isSuccessfullyForwarded ? 'Forwarded' : 'Created'}!`;\n }\n const messageType = isForwardReferralPath ? 'FORWARD' : 'CREATE';\n return MESSAGES[messageType][successfullySentStatus] || MESSAGES[messageType].DEFAULT;\n };\n\n useEffect(() => {\n if (!referralsResultDetail || referralsResultDetail.length === 0) {\n setSuccessfullySentStatus(null);\n return;\n }\n\n const totalReferrals = referralsResultDetail.length;\n const successfulReferrals = referralsResultDetail.filter(referral => referral.sent).length;\n\n if (successfulReferrals === 0) {\n setSuccessfullySentStatus(REFERRAL_STATUS.FAILED);\n } else if (successfulReferrals < totalReferrals) {\n setSuccessfullySentStatus(REFERRAL_STATUS.PARTIAL);\n } else {\n setSuccessfullySentStatus(REFERRAL_STATUS.SUCCESS);\n }\n }, [referralsResultDetail]);\n\n const referralStatus = () => {\n return referralsResultDetail && referralsResultDetail.map(({sent, error, index}) => {\n const referralName = `Referral ${index + 1}: ${get(referrals[index], 'service.name')}`\n const isNetworkError = error?.includes?.('network') || false;\n\n return (\n <div className='flex flex-col p-4 pb-4 mx-auto border border-solid\n border-table-border-color'>\n <h1 className=\"uppercase font-black text-grey text-base mr-4\">{referralName}</h1>\n <div className='flex flex-row items-center'>\n {!sent ? (\n <>\n <Icon className=\"text-white fill-current bg-red rounded-full p-1 mr-4\" icon={'Cross'} size={10} />\n <h2 className=\"text-base font-black text-red\">{`${isNetworkError ? error : \"Error: Referral creation failed. Get help resolving the issue by reaching out to \"}`}\n {!isNetworkError && (\n <button\n id=\"website-link\"\n className=\"text-base ui-contact-information__icon-text--website pl-quarter underline text-blue-600\"\n onClick={() => {\n window.open(urls.addHttpIfNeeded('support@uniteus.com'), '_blank', 'noopener,noreferrer');\n }}\n title={'Organization Website'}\n >\n {'support@uniteus.com.'}\n </button>\n )}\n\n </h2>\n </>\n ) : (\n <>\n <Icon className=\"mr-4\" color={'green'} icon={'CheckCircle'} size={18} />\n <h2 className=\"text-base font-black text-dark-green\">Referral successfully created.</h2>\n </>\n )}\n </div>\n </div>\n )\n })\n }\n\n return (\n <>\n <CreateReferralContainer isStepReferralSent={true}>\n <div className='flex justify-around'>\n <div className={`p-10 bg-white ${successfullySentStatus === REFERRAL_STATUS.SUCCESS ? \"w-3/6\" : \"w-4/6\"} my-10`}>\n <h1 className={`text-4xl ${isEmrSource ? 'mb-10':'mb-15'} text-center font-proxima-nova font-semibold`}>{windowMessage()}</h1>\n\n <div className='space-y-2'>\n {referralStatus()}\n </div>\n\n {successfullySentStatus !== REFERRAL_STATUS.FAILED && (\n <div className={`${successfullySentStatus === REFERRAL_STATUS.SUCCESS ? \"space-y-2\" : \"w-6/12\"} p-4 mt-6 text-center mx-auto bg-white-grey border border-solid\n border-table-border-color rounded`}>\n <h1 className={`font-black text-center text-lg pb-2 ${isEmrSource && 'pt-5'}`}>Next Steps</h1>\n <div className={`text-left p-2 ${isEmrSource && 'pb-5'}`}>\n {nextSteps.map((item) => (\n <li className='list-none mb-1' key={item}>- {item}</li>\n ))}\n </div>\n </div>\n )}\n\n <div className={`flex justify-center gap-4 ${isEmrSource ? 'pt-10':'mt-6'}`}>\n {!isEmrSource &&\n <Button\n id=\"clientProfile\"\n onClick={() => {\n CALLBACKS.onReferralCompleted();\n }}\n className={`font-semibold normal-case w-64 rounded ${isEmrSource && 'border-black'}`}\n label={clientProfileBtnText}\n omitDefaultStyles={isEmrSource}\n outline={true}\n />\n } \n\n {!isUnlistedReferral &&\n <Button\n id=\"share\"\n iconLeft={<Icon icon=\"IconMailForward\" color=\"white\" />}\n onClick={() => {\n setShareDrawerOpen(true);\n }}\n primary\n className=\"font-semibold bg-current-blue normal-case w-64\"\n label=\"Share Resources\"\n disabled={successfullySentStatus === REFERRAL_STATUS.FAILED}\n />\n }\n </div>\n\n <ShareDrawer\n employeeId={currentEmployee?.id}\n coreApi={coreApi}\n SHARES_URL={APP_ENVIRONMENT.sharesUrl}\n show={shareDrawerOpen}\n onClose={() => setShareDrawerOpen(false)}\n onShare={({ shareMethod, language }) => saveShareEvent(shareMethod, language)}\n resourceType=\"program\"\n resources={selectedProgramsWithName}\n providerId={APP_ENVIRONMENT.providerId}\n initialAddresses={INITIAL_ADDRESSES}\n />\n </div>\n </div>\n </CreateReferralContainer>\n </>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|