Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 | 89x 89x 88x 88x 88x 88x 88x 11x 1x 88x 88x 88x 88x | import { useEffect, useState } from "react";
import { Box } from "@mui/material";
import { checkPortals } from "@utils/routing";
import { useEnterprisePermissions } from "@components/AcquirerEnterprises/CreateEnterprise/hooks/useEnterprisePermissions";
import { useMerchantSidePanelContext } from "../../Provider/MerchantSidePanelProvider";
import { useQueryClient } from "react-query";
import { QKEY_LIST_ACQUIRER_MERCHANTS } from "@constants/queryKeys";
import SectionCardBase from "@shared/SidePanel/components/SectionCard/SectionCardBase";
import AssignmentSection from "./AssignmentSection/AssignmentSection";
import MCCInput from "./MCCInput";
import MerchantRiskCategoryInput from "./MerchantRiskCategoryInput";
import RecommendationInput from "./RecommendationInput";
import { SHOW_RISK_CATEGORY } from "../../constants";
import { useGetFeatureFlagValues } from "FeatureFlags/useGetFeatureFlagValues";
import ProcessorInput from "./ProcessorInput";
import { QueryBoundary } from "../QueryBoundary";
function KYBUnderwriterSponsorAssignCard() {
const { isMerchantProcessorEnabled } = useGetFeatureFlagValues();
const { data, isProvider, queries } = useMerchantSidePanelContext();
const { merchant_underwriting, modify_merchant } = useEnterprisePermissions();
const { isEnterprisePortal } = checkPortals();
const [localRiskValue, setLocalRiskValue] = useState(
data?.merchantInfo?.merchantRiskStatus,
);
const queryClient = useQueryClient();
useEffect(() => {
if (localRiskValue !== data?.merchantInfo?.merchantRiskStatus) {
setLocalRiskValue(data?.merchantInfo?.merchantRiskStatus);
}
}, [data?.merchantInfo?.merchantRiskStatus]);
const isHide = !merchant_underwriting && isEnterprisePortal;
const hideAssignee = (isHide && !modify_merchant) || isEnterprisePortal;
const refetchTableData = () => {
queryClient.invalidateQueries(QKEY_LIST_ACQUIRER_MERCHANTS);
};
return (
<SectionCardBase>
{!hideAssignee && <AssignmentSection />}
{!isProvider && (
<QueryBoundary
query={queries?.merchantQuery}
errorTitle="Merchant data could not be loaded"
>
<Box
mt={hideAssignee ? "0" : "16px"}
display="flex"
flexDirection="column"
gap="16px"
>
{isMerchantProcessorEnabled &&
!isProvider &&
!isEnterprisePortal && (
<ProcessorInput
processorValue={data?.merchantInfo?.processor}
isApproved={["approved", "suspended"].includes(
data?.status?.statusName || "",
)}
id={data?.merchantInfo?.merchantID}
/>
)}
<MCCInput
setLocalRiskValue={setLocalRiskValue}
enterpriseID={data.merchantInfo?.enterpriseID}
categoryCodeID={data.merchantInfo?.categoryCodeID}
categoryCodeName={data.merchantInfo?.categoryCodeName}
code={data.merchantInfo?.category}
riskStatus={data?.merchantInfo?.merchantRiskStatus}
onConfirmChangeSuccess={refetchTableData}
processor={data?.merchantInfo?.processor}
/>
{SHOW_RISK_CATEGORY && (
<MerchantRiskCategoryInput
localRiskValue={localRiskValue}
setLocalRiskValue={setLocalRiskValue}
categoryCodeID={data.merchantInfo?.categoryCodeID}
category={data.merchantInfo?.category}
categoryCodeName={data.merchantInfo?.categoryCodeName}
merchantRiskStatus={data.merchantInfo?.merchantRiskStatus}
onSaveSuccess={refetchTableData}
/>
)}
<RecommendationInput />
</Box>
</QueryBoundary>
)}
</SectionCardBase>
);
}
export default KYBUnderwriterSponsorAssignCard;
|