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 | 15x 15x 51x 51x 2x 9x | import { Box, Stack, styled } from "@mui/material";
import { FormProvider } from "react-hook-form";
import { StepCard } from "./StepCard";
import SignupNavigation from "./SignupNavigation";
import { useBusinessClassificationForm } from "../hooks/useBusinessClassificationForm";
import { FormProps, TMerchantClassification } from "../types";
import { CustomSkeleton } from "./CustomSkeleton";
import { CLASSIFICATION_ICON } from "../constants";
import ScrollableContent from "./ScrollableContent";
function GiveBusinessClassifications(props: FormProps) {
const {
methods,
values,
data,
handleSelect,
handleGoBack,
onSubmit,
isLoading,
} = useBusinessClassificationForm(props);
return (
<FormProvider {...methods}>
<Stack
width="100%"
component="form"
onSubmit={methods.handleSubmit(onSubmit)}
>
<ScrollableContent>
{isLoading ? (
<CustomSkeleton />
) : (
<CardContainer>
{data?.data?.map((data: any) => {
const Icon =
CLASSIFICATION_ICON[data?.name as TMerchantClassification];
return (
<StepCard
Icon={Icon}
key={data?.id}
onClick={() =>
handleSelect({
name: data?.name,
})
}
title={data?.displayName}
description={data?.description}
isOther={data?.name === "other"}
isSelected={values.name === data?.name}
/>
);
})}
</CardContainer>
)}
</ScrollableContent>
<SignupNavigation disabled={!values.name} handleGoBack={handleGoBack} />
</Stack>
</FormProvider>
);
}
export default GiveBusinessClassifications;
const CardContainer = styled(Box)(({ theme }) => ({
gap: "12px",
flexDirection: "column",
display: "flex",
}));
|