{"version":3,"file":"static/chunks/pages/user/sign-up-d84d6aa6584621f4.js","mappings":"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","sources":["webpack://_N_E/?9145","webpack://_N_E/./node_modules/@mui/icons-material/DoNotDisturbAlt.js","webpack://_N_E/./node_modules/@mui/icons-material/ExpandCircleDownOutlined.js","webpack://_N_E/./node_modules/@mui/icons-material/VisibilityOffOutlined.js","webpack://_N_E/./node_modules/@mui/icons-material/VisibilityOutlined.js","webpack://_N_E/./src/components/buyer-signup-form-v3/setup/Common/CardContainer.tsx","webpack://_N_E/./src/components/buyer-signup-form-v3/setup/Common/InfoSecurityNotice.tsx","webpack://_N_E/./src/components/buyer-signup-form-v3/setup/Common/NavigationButtons.tsx","webpack://_N_E/./src/components/common/why-need.tsx","webpack://_N_E/./src/hooks/use-vanity-codes/index.tsx","webpack://_N_E/./src/components/buyer-signup-form-v3/setup/sign-up/SignUpVerifyStepOne.tsx","webpack://_N_E/./src/components/buyer-signup-form-v3/setup/VerificationInputCodeComponent.tsx","webpack://_N_E/./src/components/buyer-signup-form-v3/setup/sign-up/SignUpVerifyStepTwo.tsx","webpack://_N_E/./src/components/buyer-signup-form-v3/SignupCardComponent.tsx","webpack://_N_E/./src/components/buyer-signup-form-v3/index.tsx","webpack://_N_E/./src/pages/user/sign-up/index.tsx"],"sourcesContent":["\n (window.__NEXT_P = window.__NEXT_P || []).push([\n \"/user/sign-up\",\n function () {\n return require(\"private-next-pages/user/sign-up/index.tsx\");\n }\n ]);\n if(module.hot) {\n module.hot.dispose(function () {\n window.__NEXT_P.push([\"/user/sign-up\"])\n });\n }\n ","\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2M4 12c0-4.4 3.6-8 8-8 1.8 0 3.5.6 4.9 1.7L5.7 16.9C4.6 15.5 4 13.8 4 12m8 8c-1.8 0-3.5-.6-4.9-1.7L18.3 7.1C19.4 8.5 20 10.2 20 12c0 4.4-3.6 8-8 8\"\n}), 'DoNotDisturbAlt');","\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M15.08 9.59 12 12.67 8.92 9.59 7.5 11l4.5 4.5 4.5-4.5zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8\"\n}), 'ExpandCircleDownOutlined');","\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 6c3.79 0 7.17 2.13 8.82 5.5-.59 1.22-1.42 2.27-2.41 3.12l1.41 1.41c1.39-1.23 2.49-2.77 3.18-4.53C21.27 7.11 17 4 12 4c-1.27 0-2.49.2-3.64.57l1.65 1.65C10.66 6.09 11.32 6 12 6m-1.07 1.14L13 9.21c.57.25 1.03.71 1.28 1.28l2.07 2.07c.08-.34.14-.7.14-1.07C16.5 9.01 14.48 7 12 7c-.37 0-.72.05-1.07.14M2.01 3.87l2.68 2.68C3.06 7.83 1.77 9.53 1 11.5 2.73 15.89 7 19 12 19c1.52 0 2.98-.29 4.32-.82l3.42 3.42 1.41-1.41L3.42 2.45zm7.5 7.5 2.61 2.61c-.04.01-.08.02-.12.02-1.38 0-2.5-1.12-2.5-2.5 0-.05.01-.08.01-.13m-3.4-3.4 1.75 1.75c-.23.55-.36 1.15-.36 1.78 0 2.48 2.02 4.5 4.5 4.5.63 0 1.23-.13 1.77-.36l.98.98c-.88.24-1.8.38-2.75.38-3.79 0-7.17-2.13-8.82-5.5.7-1.43 1.72-2.61 2.93-3.53\"\n}), 'VisibilityOffOutlined');","\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M12 6c3.79 0 7.17 2.13 8.82 5.5C19.17 14.87 15.79 17 12 17s-7.17-2.13-8.82-5.5C4.83 8.13 8.21 6 12 6m0-2C7 4 2.73 7.11 1 11.5 2.73 15.89 7 19 12 19s9.27-3.11 11-7.5C21.27 7.11 17 4 12 4m0 5c1.38 0 2.5 1.12 2.5 2.5S13.38 14 12 14s-2.5-1.12-2.5-2.5S10.62 9 12 9m0-2c-2.48 0-4.5 2.02-4.5 4.5S9.52 16 12 16s4.5-2.02 4.5-4.5S14.48 7 12 7\"\n}), 'VisibilityOutlined');","import { Card } from '@mui/material';\nimport React from 'react';\n\nexport default function CardContainer({ children }) {\n return (\n <Card\n sx={(theme) => ({\n [theme.breakpoints.up('lg')]: {\n borderRadius: '31.5px',\n padding: '24px 36px',\n width: '480px',\n display: 'flex',\n flexDirection: 'column',\n gap: '1rem',\n boxShadow: '0px 0px 15px rgba(0, 0, 0, 0.1)',\n border: '1px solid #e0e0e0',\n minHeight: '654px',\n position: 'relative',\n marginLeft: 'auto',\n marginRight: '0',\n },\n })}\n >\n {children}\n </Card>\n );\n}\n","import React, { useState } from 'react';\nimport { Box, Dialog, DialogTitle, IconButton, Typography } from '@mui/material';\nimport Image from \"next/image\";\nimport { useTranslation } from 'react-i18next';\n\nconst HeadingStyle = {\n fontFamily: 'PlusJakartaSans',\n fontSize: '16px',\n fontWeight: 600,\n lineHeight: '25.2px',\n marginBottom: '0.8rem',\n color: '#01130F',\n};\n\nconst ParagraphStyle = {\n fontFamily: 'PlusJakartaSans',\n fontSize: '14px',\n fontWeight: 400,\n lineHeight: '21px',\n marginBottom: '1rem',\n marginLeft: '1.5rem',\n color: '#3C3C3C',\n};\n\nconst BulletPointStyle = {\n fontFamily: 'PlusJakartaSans',\n fontSize: '14px',\n fontWeight: 400,\n lineHeight: '21px',\n marginBottom: '1rem',\n marginLeft: '2.5rem',\n color: '#3C3C3C',\n};\n\nconst InfoSecurityNotice = () => {\n const [open, setOpen] = useState<boolean>(false);\n const { t } = useTranslation();\n\n return (<>\n <Box display=\"flex\" alignItems=\"center\" justifyContent=\"center\" gap=\"0.5rem\" mt={1}>\n <Image\n src=\"/images/lock-keyhole-minimalistic-unlocked-svgrepo-com-1.png\"\n alt=\"lock\"\n width={29}\n height={31}\n style={{\n maxWidth: \"29px\",\n height: \"31px\"\n }} />\n <Box>\n <Typography\n variant=\"body2\"\n sx={{\n fontFamily: 'PlusJakartaSans',\n fontSize: '14px',\n color: '#3C3C3C',\n lineHeight: '18px',\n fontWeight: '400',\n }}\n >\n {t('Your info is secured with Bank Level Encryption.')}{' '}\n </Typography>\n <Typography\n variant=\"body2\"\n component=\"a\"\n href=\"#\"\n sx={{\n fontSize: '12px',\n fontFamily: 'PlusJakartaSans',\n color: '#0AAA82',\n fontWeight: '400',\n textDecoration: 'none',\n '&:hover': {\n textDecoration: 'underline',\n },\n display: 'flex',\n alignItems: 'center',\n gap: '4px',\n }}\n onClick={() => setOpen(true)}\n >\n {t('See how we prioritize your security and use of Data')}{' '}\n <Image\n src=\"/images/arrow-up-right.png\"\n alt=\"arrow\"\n width={14}\n height={14}\n style={{\n maxWidth: \"14px\",\n height: \"14px\"\n }} />\n </Typography>\n </Box>\n </Box>\n <Dialog\n fullWidth={true}\n maxWidth=\"lg\"\n open={open}\n onClose={() => setOpen(false)}\n sx={{\n '& .MuiDialog-container': {\n paddingTop: '10rem',\n },\n '& .MuiDialog-paper': {\n borderRadius: '35px 35px 0px 0px',\n marginBottom: '-2rem',\n height: '100%',\n },\n }}\n >\n <DialogTitle>\n <Box display=\"flex\" alignItems=\"center\" justifyContent=\"space-between\">\n <Typography\n sx={{\n fontFamily: 'PlusJakartaSans',\n fontSize: '20px',\n fontWeight: 700,\n lineHeight: '25.2px',\n }}\n >\n {t('Privacy Policy')}\n </Typography>\n <IconButton aria-label=\"close\" onClick={() => setOpen(false)}>\n <Image\n src=\"/icons/circle-slash.png\"\n alt=\"close\"\n width={24}\n height={24}\n style={{\n maxWidth: \"24px\",\n height: \"24px\"\n }} />\n </IconButton>\n </Box>\n </DialogTitle>\n <Box\n paddingLeft={3.25}\n paddingRight={3.25}\n paddingBottom={3.25}\n textAlign=\"justify\"\n sx={{ overflowY: 'scroll' }}\n >\n <Typography sx={HeadingStyle}>{t('Encryption Disclosure')}</Typography>\n <Typography sx={ParagraphStyle}>\n {t('This document serves as a disclosure statement outlining the utilization and implications of 256-bit encryption on My Home Pathway\\'s platform. Please read this disclosure carefully to understand the security measures implemented to protect your sensitive information.')}\n </Typography>\n <Typography sx={HeadingStyle}>{t('1. Encryption Overview:')}</Typography>\n <Typography sx={BulletPointStyle}>\n <b>1.1</b> {t('My Home Pathway employs 256-bit encryption technology to secure data transmissions between your web browser and My Home Pathway\\'s servers.')}\n </Typography>\n <Typography sx={BulletPointStyle}>\n <b>1.2</b> {t('The encryption algorithm employed is based on the Advanced Encryption Standard (AES) with a 256-bit key length, which provides a high level of security and confidentiality.')}\n </Typography>\n\n <Typography sx={HeadingStyle}>{t('2. Purpose of Encryption:')}</Typography>\n <Typography sx={BulletPointStyle}>\n <b>2.1</b> {t('The primary purpose of implementing 256-bit encryption is to safeguard sensitive data transmitted over the internet, including personal information, financial details, and any other confidential data that may be provided by users.')}\n </Typography>\n <Typography sx={BulletPointStyle}>\n <b>2.2</b> {t('Encryption ensures that information shared between your web browser and My Home Pathway remains secure and protected from unauthorized access, interception, or tampering during transmission.')}\n </Typography>\n\n <Typography sx={HeadingStyle}>{t('3. Security Measures:')}</Typography>\n <Typography sx={BulletPointStyle}>\n <b>3.1</b> {t('My Home Pathway employs industry-standard security practices to ensure the integrity of the encryption process.')}\n </Typography>\n <Typography sx={BulletPointStyle}>\n <b>3.2</b> {t('The encryption keys utilized are randomly generated and securely managed to prevent unauthorized access.')}\n </Typography>\n <Typography sx={BulletPointStyle}>\n <b>3.3</b> {t('Regular security audits and vulnerability assessments are conducted to identify and address potential weaknesses in the encryption implementation.')}\n </Typography>\n <Typography sx={BulletPointStyle}>\n <b>3.4</b> {t('Measures are in place to protect against known cryptographic attacks, including brute-force attacks and cryptographic vulnerabilities.')}\n </Typography>\n\n <Typography sx={HeadingStyle}>{t('4. Limitations:')}</Typography>\n <Typography sx={BulletPointStyle}>\n <b>4.1</b> {t('While 256-bit encryption provides a high level of security, it is important to note that no security measure is entirely foolproof. Although the encryption employed by My Home Pathway is considered robust, it is still subject to potential vulnerabilities arising from external factors beyond My Home Pathway\\'s control.')}\n </Typography>\n <Typography sx={BulletPointStyle}>\n <b>4.2</b> {t('Users are responsible for maintaining the security of their own devices, such as ensuring up-to-date antivirus software, secure network connections, and proper handling of login credentials.')}\n </Typography>\n <Typography sx={BulletPointStyle}>\n <b>4.3</b> {t('My Home Pathway cannot guarantee absolute protection against all forms of unauthorized access, hacking, or data breaches, as these risks exist in any online environment.')}\n </Typography>\n\n <Typography sx={HeadingStyle}>{t('5. User Obligations:')}</Typography>\n <Typography sx={BulletPointStyle}>\n <b>5.1</b> {t('Users are encouraged to exercise caution when sharing personal information or engaging in sensitive transactions online, even with the implementation of 256-bit encryption.')}\n </Typography>\n <Typography sx={BulletPointStyle}>\n <b>5.2</b> {t('Users should be aware of and comply with any additional security measures or guidelines provided by My Home Pathway to enhance their protection.')}\n </Typography>\n <Typography sx={BulletPointStyle}>\n <b>5.3</b> {t('In the event of suspected security breaches or unauthorized access, users are advised to report such incidents to My Home Pathway\\'s designated authorities promptly.')}\n </Typography>\n <Typography sx={ParagraphStyle}>\n {t('By accessing and using My Home Pathway, you acknowledge that you have read, understood, and agreed to the terms outlined in this 256-bit Encryption Disclosure. Should you have any questions or concerns regarding the encryption implementation, please contact My Home Pathway\\'s designated support channels for further assistance.')}\n </Typography>\n <Typography sx={ParagraphStyle}>\n <a href=\"mailto:support@myhomepathway.com\" style={{ textDecoration: 'underline' }}>\n support@myhomepathway.com\n </a>\n </Typography>\n </Box>\n </Dialog>\n </>);\n};\n\nexport default InfoSecurityNotice;\n","import React from 'react';\nimport { Box, Button } from '@mui/material';\nimport Image from \"next/image\";\nimport { useTranslation } from 'react-i18next';\n\n\ntype NavigationButtonsProps = {\n hideBackButton?: boolean;\n setStep: React.Dispatch<React.SetStateAction<number>>;\n onSubmit?: ((e?: React.FormEvent) => void | Promise<void>);\n nextValue?: string;\n activeNow?: any;\n}\n\nconst NavigationButtons = ({ hideBackButton, setStep, onSubmit, nextValue = 'Next', activeNow }: NavigationButtonsProps) => {\n const { t } = useTranslation();\n \n const goBack = () => {\n setStep((prevStep) => {\n if (prevStep === 1) {\n return prevStep;\n }\n return prevStep - 1;\n });\n };\n\n\n\n return (\n (<Box display=\"flex\" justifyContent=\"space-between\" alignItems=\"center\" mx={'10px'}>\n {/* Back Button */}\n {!hideBackButton && (\n <Box\n component={'button'}\n onClick={goBack} // Decrease step by 1 when \"Back\" is clicked\n sx={{\n width: '100%', // Make sure button fills its grid item\n textTransform: 'none',\n color: '#01130F',\n fontSize: '20px',\n padding: '12px 10px',\n borderRadius: '35px',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-start',\n gap: '5px',\n textAlign: 'left',\n hover: {\n backgroundColor: 'white',\n cursor: 'pointer',\n },\n }}\n >\n <Box>\n <Image\n src=\"/images/arrow-right.png\"\n alt=\"Arrow Right\"\n width=\"12\"\n height=\"17\"\n style={{\n marginTop: '1px',\n maxWidth: \"12px\",\n height: \"17px\"\n }} />\n </Box>{' '}\n {t('Back')}\n </Box>\n )}\n {/* Next Button */}\n <Button\n variant=\"text\"\n onClick={onSubmit} // Increment step by 1 when \"Next\" is clicked\n disabled={!activeNow}\n sx={{\n width: '100%', // Make sure button fills its grid item\n fontWeight: 600,\n fontSize: '20px',\n borderRadius: '35px',\n border: '1px solid #C5C5C5',\n backgroundColor: activeNow ? '#0AAA82' : '#F2F1F4' , \n textTransform: 'none',\n padding: '15px 0',\n\n color: activeNow ? 'white' : '#757575',\n '&:hover': {\n backgroundColor: '#0AAA82',\n color: 'white',\n },\n }}\n >\n {t(nextValue)}\n </Button>\n </Box>)\n );\n};\n\nexport default NavigationButtons;\n","import { Box, Typography } from '@mui/material';\nimport React, { useState, useRef, useEffect } from 'react';\nimport ExpandCircleDownOutlinedIcon from '@mui/icons-material/ExpandCircleDownOutlined';\n\nconst WhyNeed = ({title, description}: {title: string, description: string}) => {\n const [toggle, setToggle] = useState<boolean>(false);\n const contentRef = useRef<HTMLDivElement>(null);\n const [height, setHeight] = useState<number>(0);\n\n useEffect(() => {\n if (contentRef.current) {\n setHeight(toggle ? contentRef.current.scrollHeight + 8 : 0);\n }\n }, [toggle]);\n\n const handleToggle = () => {\n setToggle(!toggle);\n };\n\n return (\n <Box \n sx={{ \n width: '100%', \n marginTop: '1rem',\n position: 'relative',\n backgroundColor: 'inherit'\n }}\n >\n <Box\n sx={{ \n display: 'flex', \n alignItems: 'center', \n gap: 1, \n cursor: 'pointer',\n userSelect: 'none',\n backgroundColor: 'inherit',\n position: 'relative',\n zIndex: 1\n }}\n onClick={handleToggle}\n >\n <ExpandCircleDownOutlinedIcon\n sx={{\n transform: toggle ? 'rotate(180deg)' : 'rotate(0deg)',\n color: toggle ? '#0AAA82' : 'black',\n transition: 'transform 0.3s ease, color 0.3s ease',\n flexShrink: 0\n }}\n />\n <Typography\n variant=\"subtitle1\"\n sx={{\n color: toggle ? '#0AAA82' : 'black',\n transition: 'color 0.3s ease',\n }}\n >\n {title}\n </Typography>\n </Box>\n <Box\n sx={{\n overflow: 'hidden',\n transition: 'height 0.65s ease',\n height: `${height}px`,\n backgroundColor: 'inherit',\n position: 'relative'\n }}\n >\n <div ref={contentRef}>\n <Typography\n variant=\"subtitle1\"\n sx={{\n marginTop: '0.5rem',\n marginBottom: '0.5rem',\n paddingLeft: '1.5rem',\n color: '#3C3C3C',\n fontSize: '14px',\n opacity: height > 0 ? 1 : 0,\n transition: 'opacity 0.65s ease',\n transitionDelay: height > 0 ? '0.1s' : '0s',\n lineHeight: '1.5',\n }}\n >\n {description}\n </Typography>\n </div>\n </Box>\n </Box>\n );\n};\n\nexport default WhyNeed;\n","import { useBuyerSignupInfo } from '@hooks/use-buyer-sign-info';\nimport { ApiService } from '@services/Api';\nimport { create } from 'zustand';\nimport { devtools } from 'zustand/middleware';\n\nconst storeName = 'vanity-codes';\nconst t = (actionName) => {\n return `${storeName}/${actionName}`;\n};\n\nexport interface IVanityCodes {\n partnerCode: string;\n lenderCode: string;\n associateId: string;\n referredBy: string;\n}\n\nexport interface IVanityStore {\n codes: IVanityCodes | null;\n setVanityCodes: (currentModal: IVanityCodes) => void;\n validateCodes: () => Promise<boolean>;\n vanityURLStatus: boolean;\n validated: boolean;\n validating: boolean;\n}\n\nexport const useVanityCodes = create<IVanityStore>()(\n devtools(\n (set, get) => ({\n codes: null,\n vanityURLStatus: false,\n validated: false,\n validating: false,\n setVanityCodes: (codes) =>\n set((store) => ({ codes: { ...store.codes, ...codes } }), false, t`setCode`),\n validateCodes: async () => {\n const { codes } = get();\n\n const buyerInfo = {\n accessCode: [],\n partnerCodeStatus: false,\n associateIdStatus: false,\n };\n if (!codes.partnerCode) buyerInfo['partnerCode'] = '';\n if (!codes.lenderCode) buyerInfo['lenderCode'] = '';\n if (!codes.associateId) buyerInfo['associateId'] = '';\n\n useBuyerSignupInfo.getState().setBuyerInfo(buyerInfo);\n\n if (!codes.partnerCode && !codes.lenderCode && !codes.associateId) {\n return false;\n }\n set(\n {\n validating: true,\n validated: false,\n },\n false,\n t`validating`,\n );\n try {\n const res = await ApiService.signUpVerifyPartnerCode({\n ...codes,\n });\n if (!res.data) return false;\n const isPartnerCodeVerified = res?.data;\n\n if (\n // if its just the associate id and the status is false\n (codes.associateId && !isPartnerCodeVerified.associateIdStatus) ||\n // if its partner / lender code with associate id or status and any one of it is invalid\n ((codes.partnerCode || codes.lenderCode) &&\n codes.associateId &&\n (!isPartnerCodeVerified.partnerCodeStatus ||\n !isPartnerCodeVerified.associateIdStatus)) ||\n // if its a partner / lender code and its not valid\n ((codes.partnerCode || codes.lenderCode) && !isPartnerCodeVerified.partnerCodeStatus)\n ) {\n set(\n {\n codes: null,\n vanityURLStatus: false,\n validated: true,\n validating: false,\n },\n false,\n t`un-validate-vanity-codes`,\n );\n return false;\n }\n\n // checks the status of the\n const vanityURLStatus =\n // if associateId with employeeId\n codes?.associateId && (codes.partnerCode || codes.lenderCode)\n ? isPartnerCodeVerified.partnerCodeStatus && isPartnerCodeVerified.associateIdStatus\n : // if just partnerCode or lenderCode\n codes.partnerCode || codes.lenderCode\n ? isPartnerCodeVerified.partnerCodeStatus\n : // just associateId\n isPartnerCodeVerified.associateIdStatus;\n\n set(\n {\n codes: { ...codes },\n vanityURLStatus,\n validated: true,\n validating: false,\n },\n false,\n t`validate-vanity-codes`,\n );\n\n // if some verified or some code valid\n if (\n isPartnerCodeVerified &&\n (isPartnerCodeVerified?.partnerCodeStatus || isPartnerCodeVerified.associateIdStatus)\n )\n useBuyerSignupInfo.getState().setBuyerInfo({\n partnerCode: codes.partnerCode,\n lenderCode: codes.lenderCode,\n associateId: codes.associateId,\n accessCode: [\n {\n partnerCode: codes.partnerCode,\n lenderCode: codes.lenderCode,\n associateId: codes.associateId,\n },\n ],\n partnerCodeStatus: isPartnerCodeVerified?.partnerCodeStatus,\n associateIdStatus: isPartnerCodeVerified.associateIdStatus,\n });\n // set buyer info to defaults\n else\n useBuyerSignupInfo.getState().setBuyerInfo({\n partnerCode: '',\n lenderCode: '',\n associateId: '',\n accessCode: [],\n partnerCodeStatus: isPartnerCodeVerified?.partnerCodeStatus,\n associateIdStatus: isPartnerCodeVerified.associateIdStatus,\n });\n return true;\n } catch (e) {\n return false;\n }\n },\n }),\n {\n name: storeName,\n enabled: process.env.NODE_ENV === 'development',\n },\n ),\n);\n","import React, { useState, useEffect } from 'react';\nimport {\n Box,\n Button,\n Typography,\n Input,\n Checkbox,\n FormControlLabel,\n InputAdornment,\n} from '@mui/material';\nimport { isValidPhoneNumber } from 'libphonenumber-js';\nimport Image from 'next/image';\nimport CardContainer from '../Common/CardContainer';\nimport PhoneInputWithCountrySelect from 'react-phone-number-input';\nimport WhyNeed from '@components/common/why-need';\nimport NavigationButtons from '../Common/NavigationButtons';\nimport InfoSecurityNotice from '../Common/InfoSecurityNotice';\nimport { useMutation } from 'react-query';\nimport { createVerificationCode } from '@services/Api/controllers';\nimport toast from 'react-hot-toast';\nimport { useTranslation } from 'react-i18next';\n\nconst SignUpVerifyStepOne = ({\n setStep,\n phoneNumber,\n setPhoneNumber,\n onUpdatePersonalInfo,\n values,\n error,\n cardTitle = 'Contact Details',\n cardSubTitle = 'Details about you',\n email,\n}: {\n setStep: (step: number) => void;\n phoneNumber: string;\n setPhoneNumber: (phoneNumber: string) => void;\n onUpdatePersonalInfo?: (values: any) => void;\n values?: any;\n error?: any;\n cardTitle?: string;\n cardSubTitle?: string;\n email: string;\n}) => {\n const { t } = useTranslation();\n const [consentSMS, setConsentSMS] = useState(false);\n const [consentEmail, setConsentEmail] = useState(false);\n const [errorField, setErrorField] = useState('');\n const [isValidPhone, setIsValidPhone] = useState(false);\n const [successMessage, setSuccessMessage] = useState('');\n\n useEffect(() => {\n if (values) {\n setPhoneNumber(values.phone || '');\n setConsentSMS(values.consentSMS || false);\n setConsentEmail(values.consentEmail || false);\n }\n }, [values]);\n\n // const validatePhoneNumber = (phone: string): { isValid: boolean; error: string } => {\n // // Remove all non-digit characters\n // const digits = phone.replace(/\\D/g, '');\n\n // // Check if it starts with country code 1\n // if (!phone.startsWith('+1')) {\n // return { isValid: false, error: t('Please enter a valid US phone number starting with +1') };\n // }\n\n // // Remove country code for length check\n // const nationalNumber = digits.slice(1);\n\n // // Check exact length (must be exactly 10 digits after removing country code)\n // if (nationalNumber.length !== 10) {\n // return { isValid: false, error: t('Phone number must be exactly 10 digits') };\n // }\n\n // // Check area code (first 3 digits)\n // const areaCode = nationalNumber.slice(0, 3);\n // if (!/^[2-9]\\d{2}$/.test(areaCode)) {\n // return { isValid: false, error: t('Area code must start with 2-9 and be between 200-999') };\n // }\n\n // // Check for N11 codes\n // if (areaCode[1] === areaCode[2]) {\n // return { isValid: false, error: t('Invalid area code pattern') };\n // }\n\n // // Check for 5xx area codes\n // if (areaCode[0] === '5' && areaCode[1] === '9') {\n // return { isValid: false, error: t('Invalid area code combination') };\n // }\n\n // // Check exchange code (next 3 digits)\n // const exchangeCode = nationalNumber.slice(3, 6);\n // if (!/^[2-9]\\d{2}$/.test(exchangeCode)) {\n // return { isValid: false, error: t('Exchange code must start with 2-9') };\n // }\n\n // // Check for 555 exchange\n // if (exchangeCode === '555') {\n // return { isValid: false, error: t('Invalid exchange code') };\n // }\n\n // // Check for repeated digits (like 222-222-2222)\n // const subscriber = nationalNumber.slice(6);\n // if (new Set(nationalNumber).size <= 2) {\n // return { isValid: false, error: t('Phone number cannot contain too many repeated digits') };\n // }\n\n // return { isValid: true, error: '' };\n // };\n\n const formatPhoneNumberForDisplay = (value: string): string => {\n if (!value) return '';\n\n // Remove all non-digit characters\n let digits = value.replace(/\\D/g, '');\n\n // Handle pasted numbers that might start with 1\n if (digits.startsWith('1')) {\n digits = digits.slice(1);\n }\n\n // Limit to exactly 10 digits\n digits = digits.slice(0, 10);\n\n // Format the number for display\n let formatted = '+1 ';\n if (digits.length > 0) {\n formatted += '(';\n formatted += digits.slice(0, 3);\n if (digits.length > 3) {\n formatted += ') ';\n formatted += digits.slice(3, 6);\n if (digits.length > 6) {\n formatted += '-';\n formatted += digits.slice(6);\n }\n }\n }\n\n return formatted;\n };\n\n const formatPhoneNumberForAPI = (phone: string): string => {\n // Remove all non-digit characters and +1 prefix\n const digits = phone.replace(/\\D/g, '').replace(/^1/, '');\n\n // Format as (XXX) XXX-XXXX\n return `(${digits.slice(0, 3)}) ${digits.slice(3, 6)}-${digits.slice(6)}`;\n };\n\n const handlePhoneChange = (value: string) => {\n if (!value) {\n setErrorField(t('Phone number is required'));\n setIsValidPhone(false);\n setPhoneNumber('');\n setSuccessMessage('');\n return;\n }\n\n // Handle pasted value\n const isPasted = value.length > 4;\n let formattedNumber;\n\n if (isPasted) {\n formattedNumber = formatPhoneNumberForDisplay(value);\n const isValid = isValidPhoneNumber(formattedNumber);\n setIsValidPhone(isValid);\n setErrorField(isValid ? '' : t('Phone number is invalid'));\n setSuccessMessage(isValid ? t('Phone number is valid') : '');\n } else {\n formattedNumber = formatPhoneNumberForDisplay(value);\n const digits = formattedNumber.replace(/\\D/g, '');\n\n if (digits.length === 11) {\n const isValid = isValidPhoneNumber(formattedNumber);\n setIsValidPhone(isValid);\n setErrorField(isValid ? '' : t('Phone number is invalid'));\n setSuccessMessage(isValid ? t('Phone number is valid') : '');\n } else {\n setIsValidPhone(false);\n setErrorField('');\n setSuccessMessage('');\n }\n }\n\n setPhoneNumber(formattedNumber);\n };\n\n const handlePhoneVerification = async (phone: string) => {\n try {\n const isValid = isValidPhoneNumber(phone);\n if (!isValid) {\n setErrorField(t('Phone number is invalid'));\n return;\n }\n\n // Format phone number for API call\n // const formattedPhoneForAPI = formatPhoneNumberForAPI(phone);\n\n const response = await createVerificationCode({ phone });\n if (response?.data?.status === 'pending') {\n toast.success(t('Verification code sent successfully'));\n setStep(4);\n } else if (response?.data?.message) {\n setErrorField(response?.data?.message);\n }\n } catch (error) {\n if (error?.data?.metadata?.details?.phone) {\n setErrorField(error.data.metadata.details.phone);\n } else {\n setErrorField(error?.data?.message || t('Failed to send verification code'));\n }\n console.error(t('Failed to send verification code:'), error);\n }\n };\n\n const handleSubmit = async (e) => {\n e?.preventDefault();\n if (!phoneNumber) {\n setErrorField(t('Phone number is required'));\n return;\n }\n if (!isValidPhone) {\n setErrorField(t('Please enter a valid US phone number'));\n return;\n }\n await handlePhoneVerification(phoneNumber);\n };\n\n return (\n <Box\n sx={(theme) => ({\n [theme.breakpoints.up('lg')]: {\n borderRadius: '31.5px',\n width: '480px',\n display: 'flex',\n flexDirection: 'column',\n gap: '1rem',\n boxShadow: '0px 0px 15px rgba(0, 0, 0, 0.1)',\n border: '1px solid #e0e0e0',\n minHeight: '654px',\n position: 'relative',\n marginLeft: 'auto',\n marginRight: '0',\n },\n })}\n >\n <Box\n sx={{\n padding: { xs: '16px', sm: '24px 36px' },\n }}\n component=\"form\"\n onSubmit={handleSubmit}\n display=\"flex\"\n flexDirection=\"column\"\n >\n <Typography\n variant=\"h6\"\n sx={{\n fontWeight: 700,\n fontSize: '18px',\n lineHeight: '24px',\n fontFamily: 'PlusJakartaSans',\n }}\n >\n {t(cardTitle)}\n </Typography>\n <Typography\n variant=\"body2\"\n sx={{\n fontSize: '12px',\n fontWeight: 400,\n color: '#000',\n marginBottom: '20px',\n fontFamily: 'PlusJakartaSans',\n mt: 1,\n }}\n >\n {t(cardSubTitle)}\n </Typography>\n\n <Typography\n variant=\"body1\"\n sx={{\n fontSize: '14px',\n fontWeight: 400,\n marginBottom: '8px',\n fontFamily: 'PlusJakartaSans',\n }}\n >\n {t('Email Address')}\n </Typography>\n <Box sx={{ position: 'relative' }}>\n <Input\n placeholder={t('email@example.com')}\n fullWidth\n disableUnderline\n sx={{\n border: '1px solid #e0e0e0',\n borderRadius: '35px',\n padding: '10px 20px',\n backgroundColor: '#FCFCFC',\n fontFamily: 'PlusJakartaSans',\n color: '#000',\n }}\n disabled\n value={email}\n startAdornment={\n <InputAdornment position=\"start\">\n <Image\n src=\"/images/mail.png\"\n alt={t('email icon')}\n width={20}\n height={20}\n style={{\n marginRight: '10px',\n maxWidth: '20px',\n height: '20px',\n }}\n />\n </InputAdornment>\n }\n />\n </Box>\n\n <Box mt={2}>\n <Typography\n variant=\"body1\"\n sx={{\n fontSize: '14px',\n fontWeight: 400,\n marginBottom: '8px',\n marginTop: '8px',\n fontFamily: 'PlusJakartaSans',\n }}\n >\n {t('Phone Number')}\n </Typography>\n </Box>\n <Box display=\"flex\" alignItems=\"center\" gap=\"8px\">\n <Box\n sx={{\n border: '1px solid #e0e0e0',\n width: '95px',\n borderRadius: '35px',\n padding: '12px 20px',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n fontFamily: 'PlusJakartaSans',\n }}\n >\n <Image\n src=\"/images/usa-logo.png\"\n alt={t('flag icon')}\n width={43}\n height={26}\n style={{\n maxWidth: '43px',\n height: '26px',\n }}\n />\n </Box>\n <Box className=\"flex flex-col gap-1\">\n <PhoneInputWithCountrySelect\n placeholder={t('+1 (234) 567-8901')}\n value={phoneNumber}\n onChange={handlePhoneChange}\n countries={['US']}\n defaultCountry=\"US\"\n international\n withCountryCallingCode\n inputStyle={{\n border: errorField\n ? '1px solid #E53935'\n : successMessage\n ? '1px solid #4CAF50'\n : '1px solid #e0e0e0',\n borderRadius: '35px',\n padding: '10px 20px',\n fontFamily: 'PlusJakartaSans',\n width: '100%',\n backgroundColor: '#FCFCFC',\n }}\n countrySelectComponent={() => <></>}\n onKeyDown={(e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n if (isValidPhone && phoneNumber && consentSMS) {\n handleSubmit(e);\n }\n }\n }}\n style={{\n border: errorField\n ? '1px solid #E53935'\n : successMessage\n ? '1px solid #4CAF50'\n : '1px solid #e0e0e0',\n borderRadius: '35px',\n padding: '10px 20px',\n fontFamily: 'PlusJakartaSans',\n width: '100%',\n backgroundColor: '#FCFCFC',\n }}\n numberInputProps={{\n style: {\n border: 'none',\n fontFamily: 'PlusJakartaSans',\n width: '100%',\n outline: 'none',\n backgroundColor: 'transparent',\n },\n maxLength: 17, // \"+1 (234) 567-8901\" is 17 characters\n onKeyDown: (e) => {\n const input = e.target as HTMLInputElement;\n const digits = input.value.replace(/\\D/g, '');\n\n // Allow backspace, delete, arrow keys, and tab\n if (\n e.key === 'Backspace' ||\n e.key === 'Delete' ||\n e.key === 'ArrowLeft' ||\n e.key === 'ArrowRight' ||\n e.key === 'Tab'\n ) {\n return;\n }\n\n // Prevent typing more digits if we already have 11 digits\n if (digits.length >= 11 && /\\d/.test(e.key)) {\n e.preventDefault();\n }\n },\n }}\n />\n\n {(errorField || successMessage) && (\n <Typography\n variant=\"body2\"\n marginLeft={3}\n sx={{\n color: errorField ? '#E53935' : '#4CAF50',\n display: 'flex',\n alignItems: 'center',\n fontSize: '12px',\n fontWeight: 400,\n lineHeight: '15.12px',\n }}\n >\n {t(errorField || successMessage)}\n </Typography>\n )}\n </Box>\n </Box>\n\n <Typography\n variant=\"body2\"\n sx={{\n fontSize: '10px',\n fontWeight: 400,\n color: '#696767',\n marginTop: '30px',\n lineHeight: '12.5px',\n fontFamily: 'PlusJakartaSans',\n }}\n >\n {t(\n 'I consent for My Home communicating with me via the options below to help build my risk profile, marketing, and promotional services. I understand that my information will not be shared externally with other parties or companies without my consent to do so.',\n )}\n </Typography>\n <Box display=\"flex\" gap=\"20px\" mt=\"8px\">\n <FormControlLabel\n control={\n <Checkbox\n checked={consentSMS}\n onChange={(e) => setConsentSMS(e.target.checked)}\n sx={{\n color: '#696767',\n '&.Mui-checked': {\n color: '#088456',\n },\n }}\n />\n }\n label={t('SMS')}\n sx={{\n '.MuiTypography-root': {\n fontSize: '14px',\n color: '#696767',\n fontFamily: 'PlusJakartaSans',\n },\n }}\n />\n <FormControlLabel\n control={\n <Checkbox\n checked={consentEmail}\n onChange={(e) => setConsentEmail(e.target.checked)}\n sx={{\n color: '#696767',\n '&.Mui-checked': {\n color: '#088456',\n },\n }}\n />\n }\n label={t('Email')}\n sx={{\n '.MuiTypography-root': {\n fontSize: '12px',\n color: '#696767',\n fontFamily: 'PlusJakartaSans',\n },\n }}\n />\n </Box>\n <WhyNeed\n title={t('Why verifying its me?')}\n description={t(\n 'Verification reduces the likelihood of fake or duplicate accounts, improving user authenticity on our platform.',\n )}\n />\n <Box\n display=\"flex\"\n justifyContent=\"end\"\n gap={3}\n flexDirection={'column'}\n height={'100%'}\n mb={3}\n mt={'27px'}\n >\n <NavigationButtons\n setStep={setStep}\n onSubmit={handleSubmit}\n activeNow={phoneNumber && isValidPhone}\n />\n <InfoSecurityNotice />\n </Box>\n </Box>\n </Box>\n );\n};\n\nexport default SignUpVerifyStepOne;\n","import { Box, TextField, Typography } from '@mui/material';\nimport { createVerificationCode } from '@services/Api/controllers';\nimport { useState, useRef, useEffect } from 'react';\nimport toast from 'react-hot-toast';\n\nconst VerificationCodeInput = ({\n length = 6,\n onComplete,\n setStep,\n errorField: externalErrorField,\n phone,\n}) => {\n const [values, setValues] = useState(Array(length).fill(''));\n const [error, setError] = useState(false);\n const [timer, setTimer] = useState(60);\n const [isResendDisabled, setIsResendDisabled] = useState(true);\n const inputRefs = useRef([]);\n\n useEffect(() => {\n startTimer();\n }, []);\n\n useEffect(() => {\n setError(externalErrorField);\n }, [externalErrorField]);\n\n const startTimer = () => {\n setTimer(60);\n setIsResendDisabled(true);\n const interval = setInterval(() => {\n setTimer((prevTimer) => {\n if (prevTimer <= 1) {\n clearInterval(interval);\n setIsResendDisabled(false);\n return 0;\n }\n return prevTimer - 1;\n });\n }, 1000);\n };\n\n const handleChange = (index, value) => {\n if (isNaN(value)) return;\n\n const newValues = [...values];\n newValues[index] = value;\n setValues(newValues);\n\n setError(false);\n\n if (value && index < length - 1) {\n inputRefs.current[index + 1].focus();\n }\n\n if (value && index === length - 1 && newValues.every((val) => val !== '')) {\n onComplete(newValues.join(''));\n }\n };\n\n const handleKeyDown = (index, e) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n return;\n }\n\n if (e.key === 'Backspace' && !values[index] && index > 0) {\n inputRefs.current[index - 1].focus();\n }\n };\n\n const clearValues = () => {\n setValues(Array(length).fill(''));\n setError(false);\n inputRefs.current[0]?.focus();\n };\n\n const handleResendCode = async () => {\n if (isResendDisabled) return;\n\n clearValues();\n try {\n const response = await createVerificationCode({ phone, isResend: true });\n if (response?.data?.status === 'pending') {\n toast.success(response?.data?.message || 'Verification code Re-sent successfully');\n startTimer();\n }\n } catch (error) {\n console.error('Failed to send verification code:', error);\n toast.error('Failed to resend verification code');\n }\n };\n\n const formatTime = (seconds) => {\n const mins = Math.floor(seconds / 60);\n const secs = seconds % 60;\n return `${mins.toString().padStart(2, '0')}:${secs.toString().padStart(2, '0')}`;\n };\n\n return (\n <Box sx={{ width: '100%' }}>\n <Box marginBottom={{ xs: '30px', sm: '50px' }}>\n <Box\n display=\"flex\"\n gap={{ xs: 0.5, sm: 1 }}\n marginTop=\"10px\"\n sx={(theme) => ({\n [theme.breakpoints.only('xs')]: {\n flexWrap: 'nowrap',\n justifyContent: 'center',\n width: '100%',\n overflowX: 'auto',\n },\n })}\n >\n {values.map((value, index) => (\n <TextField\n aria-label={`Digit ${index + 1} of verification code`}\n placeholder=\"-\"\n key={index}\n value={value}\n onChange={(e) => handleChange(index, e.target.value)}\n onKeyDown={(e) => handleKeyDown(index, e)}\n inputRef={(el) => (inputRefs.current[index] = el)}\n slotProps={{\n htmlInput: {\n maxLength: 1,\n type: 'tel',\n inputMode: 'numeric',\n pattern: '[0-9]*',\n autoComplete: 'one-time-code',\n },\n }}\n variant=\"outlined\"\n size=\"medium\"\n sx={{\n flex: { xs: '0 0 47px', sm: '0 0 55px', md: '0 0 60px' },\n minWidth: 0,\n '& .MuiOutlinedInput-root': {\n height: { xs: '48px', sm: '60px', md: '75px' },\n borderRadius: '25px',\n '& fieldset': {\n borderColor: error ? '#FF0000' : '#C5C5C5',\n },\n '&:hover fieldset': {\n borderColor: error ? '#FF0000' : '#2CE25D',\n },\n '&.Mui-focused fieldset': {\n borderColor: error ? '#FF0000' : '#2CE25D',\n borderWidth: '3px',\n },\n '& input': {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n textAlign: 'center',\n height: '100%',\n padding: 0,\n color: error ? '#FF0000' : '#01130F',\n fontSize: { xs: '20px', sm: '24px', md: '30px' },\n fontFamily: 'PlusJakartaSans',\n },\n },\n }}\n />\n ))}\n </Box>\n {error && (\n <Typography\n variant=\"body2\"\n sx={{\n color: '#FF0000',\n fontFamily: 'PlusJakartaSans',\n marginTop: '10px',\n fontSize: { xs: '12px', sm: '14px' },\n textAlign: 'center',\n }}\n >\n Please enter a valid code!\n </Typography>\n )}\n </Box>\n <Box\n display=\"flex\"\n justifyContent=\"space-between\"\n gap={{ xs: 1, sm: 3 }}\n mb={3}\n sx={{ width: '100%', flexWrap: { xs: 'wrap', sm: 'nowrap' } }}\n >\n <Typography\n variant=\"body2\"\n sx={{\n border: '1px solid #C5C5C5',\n borderRadius: '35px',\n padding: { xs: '8px', sm: '10px' },\n width: { xs: '50px', sm: '60px' },\n textAlign: 'center',\n fontSize: { xs: '10px', sm: '12px' },\n height: { xs: '30px', sm: '37px' },\n color: '#696767',\n fontFamily: 'PlusJakartaSans',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n fontWeight: '500',\n }}\n >\n {formatTime(timer)}\n </Typography>\n\n <Typography\n variant=\"body2\"\n sx={{\n display: 'flex',\n alignItems: 'center',\n gap: '5px',\n border: '1px solid #C5C5C5',\n borderRadius: '35px',\n padding: { xs: '8px', sm: '10px' },\n width: { xs: '90px', sm: '102px' },\n height: { xs: '30px', sm: '35px' },\n textAlign: 'center',\n fontSize: { xs: '10px', sm: '12px' },\n color: isResendDisabled ? '#C5C5C5' : '#696767',\n fontFamily: 'PlusJakartaSans',\n cursor: isResendDisabled ? 'not-allowed' : 'pointer',\n opacity: isResendDisabled ? 0.7 : 1,\n justifyContent: 'center',\n fontWeight: isResendDisabled ? 'normal' : '500',\n }}\n onClick={handleResendCode}\n >\n Resend Code\n </Typography>\n </Box>\n </Box>\n );\n};\n\nexport default VerificationCodeInput;\n","import React, { useState, useEffect } from 'react';\nimport { Box, Typography } from '@mui/material';\nimport InfoSecurityNotice from '../Common/InfoSecurityNotice';\nimport CardContainer from '../Common/CardContainer';\nimport NavigationButtons from '../Common/NavigationButtons';\nimport WhyNeed from '@components/common/why-need';\nimport VerificationCodeInput from '../VerificationInputCodeComponent';\nimport { createVerificationCode, verifyPhoneCode } from '@services/Api/controllers';\nimport { useBuyerSignupInfo } from '@hooks/use-buyer-sign-info';\nimport { useTranslation } from 'react-i18next';\nimport { commonRoutes } from '@utils/constants';\nimport { useRouter } from 'next/router';\nimport { useAuthUser } from '@hooks/use-auth';\nimport toast from 'react-hot-toast';\n\nconst SignUpVerifyStepTwo = ({ setStep, signupNewUser, phone }) => {\n const { t } = useTranslation();\n const [verificationCode, setVerificationCode] = useState('');\n const [errorField, setErrorField] = useState(false);\n const { email } = useBuyerSignupInfo();\n const { signedIn } = useAuthUser();\n const router = useRouter();\n\n const handlePhoneVerification = async () => {\n try {\n const response = await verifyPhoneCode({ email, verificationCode, phone });\n if (response && response.data?.success) {\n await signupNewUser(verificationCode);\n if (signedIn) {\n toast.success(t('Phone number verified successfully'));\n router.replace(commonRoutes.buyer.auth.onboarding);\n }\n }\n } catch (error) {\n console.error(t('Failed to verify code:'), error);\n toast.error(t('Failed to verify code'));\n setErrorField(true);\n }\n };\n\n const handleSubmit = () => {\n handlePhoneVerification();\n };\n\n const handleComplete = async (code) => {\n setVerificationCode(code);\n setErrorField(false);\n };\n\n return (\n <CardContainer>\n <Box\n component=\"form\"\n onSubmit={handleSubmit}\n display=\"flex\"\n flexDirection=\"column\"\n sx={(theme) => ({\n [theme.breakpoints.only('xs')]: {\n position: 'relative',\n width: '100%',\n maxWidth: '600px',\n margin: '0 auto',\n padding: '10px',\n },\n })}\n >\n <Typography\n variant=\"h6\"\n sx={{\n fontWeight: 700,\n fontSize: '18px',\n lineHeight: '24px',\n fontFamily: 'PlusJakartaSans',\n wordBreak: 'break-word',\n }}\n >\n {t('Verify its you')}\n </Typography>\n <Typography\n variant=\"body2\"\n sx={{\n fontSize: '12px',\n fontWeight: 400,\n color: '#696767',\n marginBottom: '20px',\n fontFamily: 'PlusJakartaSans',\n wordBreak: 'break-word',\n }}\n >\n {t('Verify your phone')}\n </Typography>\n\n <Typography\n variant=\"h4\"\n sx={{\n fontWeight: 700,\n fontFamily: 'PlusJakartaSans',\n wordBreak: 'break-word',\n }}\n >\n {phone || ''}\n </Typography>\n\n <WhyNeed\n title={t('Why do I need to verify my phone number?')}\n description={t(\n 'Phone verification helps ensure that only you can access your account, especially when you are setting up two-factor authentication(2FA)',\n )}\n />\n\n <Typography\n variant=\"body2\"\n sx={{\n fontSize: '12px',\n fontWeight: 400,\n color: '#696767',\n marginBottom: '20px',\n fontFamily: 'PlusJakartaSans',\n wordBreak: 'break-word',\n }}\n >\n {t('Enter the 6 digit code sent to your we texted to')}\n </Typography>\n\n <VerificationCodeInput\n length={6}\n onComplete={handleComplete}\n setStep={setStep}\n errorField={errorField}\n phone={phone}\n />\n\n <Box\n display=\"flex\"\n justifyContent=\"end\"\n gap={3}\n flexDirection={'column'}\n mt={'auto'}\n mb={3}\n >\n <NavigationButtons\n setStep={setStep}\n onSubmit={handleSubmit}\n activeNow={verificationCode.length === 6}\n />\n <InfoSecurityNotice />\n </Box>\n </Box>\n </CardContainer>\n );\n};\n\nexport default SignUpVerifyStepTwo;\n","import React, { useState, useEffect } from 'react';\nimport { Box, Button, Card, IconButton, Input, InputAdornment, Typography } from '@mui/material';\nimport { BuyerSocialSigninV2 } from '@components/social-logins-v2';\nimport Image from 'next/image';\nimport { commonRoutes, localStorageDataRef, validEmail } from '@utils';\nimport DoNotDisturbAltIcon from '@mui/icons-material/DoNotDisturbAlt';\nimport { TermsAndConditions } from './TermsAndConditions';\nimport GreenButton from './setup/Common/GreenButton';\nimport { BuyerFormFields, useBuyerSignupInfo } from '@hooks';\nimport { useRouter } from 'next/router';\nimport { useVanityCodes } from '@hooks/use-vanity-codes';\nimport { ApiService, EAuthenticationType, EUserType } from '@services/Api';\nimport { encryptText } from '@utils/encryptionDecryption';\nimport Link from 'next/link';\nimport VisibilityOffIcon from '@mui/icons-material/VisibilityOffOutlined';\nimport VisibilityIcon from '@mui/icons-material/VisibilityOutlined';\nimport SignUpVerifyStepOne from './setup/sign-up/SignUpVerifyStepOne';\nimport SignUpVerifyStepTwo from './setup/sign-up/SignUpVerifyStepTwo';\nimport { useTranslation } from 'react-i18next';\nimport toast from 'react-hot-toast';\nimport UerSignUpPhoneModal from './UserPhoneModal';\nimport TrackingService, { TrackingSourceType, TrackingEventType, TrackingAuthType } from '@services/tracking';\n\ntype PasswordRule = {\n rule: string;\n checkValidity: (passwordValue: string) => boolean;\n};\n\ntype PasswordRules = {\n [key: string]: PasswordRule;\n};\n\ntype EmailCheckReturnType = {\n authenticationId: string;\n type: EAuthenticationType;\n email: string;\n userType: EUserType;\n status: string;\n message: string;\n};\n\ninterface SignupCardComponentProps {\n signup: (values: BuyerFormFields) => void;\n errorField: boolean;\n}\n\nexport const SignupCardComponent = ({ signup, errorField }: SignupCardComponentProps) => {\n const { t } = useTranslation();\n const [step, setStep] = useState(1); // State to control the step of the form\n const { setBuyerInfo, authenticationId, ...rest } = useBuyerSignupInfo();\n\n const { codes } = useVanityCodes();\n\n const router = useRouter();\n\n const passwordRules: PasswordRules = {\n '8-characters': {\n rule: t('8 or more characters'),\n checkValidity: (passwordValue: string) => passwordValue.length >= 8,\n },\n 'upper-lower-case': {\n rule: t('Upper and lowercase letters'),\n checkValidity: (passwordValue: string) =>\n /[a-z]/.test(passwordValue) && /[A-Z]/.test(passwordValue),\n },\n number: {\n rule: t('At least one number'),\n checkValidity: (passwordValue: string) => /\\d/.test(passwordValue),\n },\n };\n\n const initialRulesValidity = Object.keys(passwordRules).reduce((acc, key) => {\n acc[key] = false;\n return acc;\n }, {} as { [key: string]: boolean });\n\n const [showPassword, setShowPassword] = useState<boolean>(false);\n const handleClickShowPassword = () => setShowPassword((show) => !show);\n\n const handleMouseDownPassword = (event: React.MouseEvent<HTMLButtonElement>) => {\n event.preventDefault();\n };\n\n const handleMouseUpPassword = (event: React.MouseEvent<HTMLButtonElement>) => {\n event.preventDefault();\n };\n\n const [email, setEmail] = useState<string>('');\n const [emailError, setEmailError] = useState<string>('');\n const [isEmailValid, setIsEmailValid] = useState<Boolean>(false);\n\n // Step 2 state\n const [firstName, setFirstName] = useState('');\n const [lastName, setLastName] = useState('');\n const [password, setPassword] = useState('');\n const [firstNameError, setFirstNameError] = useState('');\n const [lastNameError, setLastNameError] = useState('');\n const [rulesValidity, setRulesValidity] = useState(initialRulesValidity);\n const [visitorId, setVisitorId] = useState('');\n const [campaignSource, setCampaignSource] = useState('');\n\n // Step 3 state\n const [phoneNumber, setPhoneNumber] = useState('');\n const [isLanded, setIsLanded] = useState('');\n const [logged, setLogged] = useState(false);\n const [campaignFrequency, setCampaignFrequency] = useState('');\n const [campaignMonth, setCampaignMonth] = useState('');\n\n useEffect(() => {\n if (!router.isReady || logged) return; // Wait for router to be ready\n\n console.log(\"🚀 Query Params:\", router.query);\n\n const { ln, v_id, m, e, f, email } = router.query;\n\n console.log({ e, m })\n\n // Set email field if provided in query params\n if (email && typeof email === 'string') {\n try {\n const decodedEmail = atob(email);\n setEmail(decodedEmail);\n // Validate the decoded email\n setIsEmailValid(validEmail.test(decodedEmail));\n setEmailError('');\n } catch (error) {\n console.error('Failed to decode email parameter:', error);\n }\n }\n\n if (ln === \"1\") setIsLanded(TrackingSourceType.LANDING_PAGE_1);\n else if (ln === \"2\") setIsLanded(TrackingSourceType.LANDING_PAGE_2);\n else if (ln === \"cal\") setIsLanded(TrackingSourceType.MORTGAGE_CALCULATOR);\n else if (ln === \"hn\") setIsLanded(TrackingSourceType.HOME_NURTURE);\n\n if (e === undefined) {\n setCampaignSource(TrackingSourceType.MAILER);\n setCampaignMonth(m as string);\n }\n else if (m === undefined) {\n console.log(\"in mailer\")\n setCampaignSource(TrackingSourceType.EMAIL);\n setCampaignMonth(e as string);\n }\n\n else setIsLanded(TrackingSourceType.UNKNOWN);\n\n setCampaignFrequency(f as string);\n\n if (!v_id) {\n console.log(\"⌠No v_id, stopping.\");\n return;\n }\n setVisitorId(v_id as string);\n let source = TrackingSourceType.UNKNOWN;\n if (ln === \"cal\") source = TrackingSourceType.MORTGAGE_CALCULATOR;\n else if (ln === \"1\") source = TrackingSourceType.LANDING_PAGE_1;\n else if (ln === \"2\") source = TrackingSourceType.LANDING_PAGE_2;\n else if (ln === \"hn\") source = TrackingSourceType.HOME_NURTURE;\n else if (e) source = TrackingSourceType.EMAIL;\n else if (m) source = TrackingSourceType.MAILER;\n\n console.log(`📢 Logging Visit: ${source}`);\n setLogged(true);\n TrackingService.trackPageVisit(source, v_id as string, e ? 'Email Campaign' : m ? 'Mailer Campaign' : null, m ? m as string : e as string, f as string);\n }, [router.isReady, router.query, logged]);\n\n const handleNextClickAfterEmail = async () => {\n if (isEmailValid && !emailError) {\n try {\n const { ln, v_id, e, m, f } = router.query;\n let source = TrackingSourceType.UNKNOWN;\n\n if (ln === '1') source = TrackingSourceType.LANDING_PAGE_1;\n else if (ln === '2') source = TrackingSourceType.LANDING_PAGE_2;\n else if (ln === 'cal') source = TrackingSourceType.MORTGAGE_CALCULATOR;\n else if (ln === 'hn') source = TrackingSourceType.HOME_NURTURE;\n\n await TrackingService.trackFormStepCompleted(source, 1, v_id as string, e ? 'Email Campaign' : m ? 'Mailer Campaign' : null, m ? m as string : e as string, f as string);\n\n const response = await ApiService.startAuthenticationByEmail({\n email,\n userType: EUserType.buyer,\n type: EAuthenticationType.signup,\n referredBy: codes?.referredBy,\n });\n\n const data: EmailCheckReturnType = response.data;\n\n // Save email and authenticationId\n setBuyerInfo({\n email: data.email,\n authenticationId: data.authenticationId,\n step: 2,\n isEmailVerified: false,\n });\n\n if (response?.data?.status === 'success') {\n setStep(2);\n }\n } catch (error) {\n if (error?.data?.error === 'user_already_exists') {\n setEmailError(t('Email already exists, please sign in'));\n toast.error('Email already exists, please sign in');\n } else {\n const errorMessage =\n error?.data?.message || 'We encountered an error. Please try again in a few minutes.';\n toast.error(errorMessage);\n }\n }\n }\n };\n\n const handleNextClickAfterPersonalInfo = () => {\n if (firstName && lastName && password) {\n const { ln, v_id, e, m, f } = router.query;\n let source = TrackingSourceType.UNKNOWN;\n\n if (ln === '1') source = TrackingSourceType.LANDING_PAGE_1;\n else if (ln === '2') source = TrackingSourceType.LANDING_PAGE_2;\n else if (ln === 'cal') source = TrackingSourceType.MORTGAGE_CALCULATOR;\n else if (ln === 'hn') source = TrackingSourceType.HOME_NURTURE;\n\n TrackingService.trackFormStepCompleted(source, 2, v_id as string, e ? 'Email Campaign' : m ? 'Mailer Campaign' : null, m ? m as string : e as string, f as string);\n\n setStep(3);\n setBuyerInfo({\n firstName,\n lastName,\n password,\n step: 3,\n });\n }\n };\n\n const resetFields = () => {\n setEmail('');\n setEmailError('');\n setIsEmailValid(false);\n setFirstName('');\n setLastName('');\n setPassword('');\n setRulesValidity(initialRulesValidity);\n };\n\n // Restore step 2 data when going back from step 3\n useEffect(() => {\n if (step === 2 && rest.firstName && rest.lastName && rest.password) {\n setFirstName(rest.firstName);\n setLastName(rest.lastName);\n setPassword(rest.password);\n }\n }, [step, rest.firstName, rest.lastName, rest.password]);\n\n const handleEmailChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const newEmail = event.target.value;\n setEmail(newEmail);\n setEmailError('');\n\n // Regex for validating email address\n setIsEmailValid(validEmail.test(newEmail));\n };\n\n const signupNewUser = async (phoneVerificationCode) => {\n if (\n firstName.length &&\n lastName.length &&\n firstName.length <= 40 &&\n lastName.length <= 40 &&\n !firstNameError &&\n !lastNameError &&\n Object.keys(rulesValidity).every((rule) => rulesValidity[rule])\n ) {\n let emailSplit = email.split('@')[0].toLowerCase();\n if (emailSplit.length > 8) {\n emailSplit = emailSplit.slice(0, 8);\n }\n\n const encryptedPassword = encryptText(password, emailSplit);\n\n // if(!authenticationId) {\n // alert('step 3');\n // return;\n // }\n\n // console.log(\"step passed\")\n\n let fieldValues = {\n authenticationId: authenticationId,\n firstName: firstName,\n lastName: lastName,\n email: email,\n password: encryptedPassword,\n verificationCode: phoneVerificationCode,\n accessCode: rest.accessCode ?? undefined,\n partnerCode: rest.partnerCode ?? undefined,\n lenderCode: rest.lenderCode ?? undefined,\n associateId: rest.associateIdStatus ? rest.associateId : undefined,\n housePriceGoal: 0,\n expectedPurchaseMonthsPeriod: 0,\n phone: phoneNumber,\n wishedLocations: [],\n provider: rest.provider,\n inviteId: localStorage.getItem(localStorageDataRef.acceptInvite),\n campaignFrequency: campaignFrequency,\n campaignMonth: campaignMonth,\n campaignSource: campaignSource,\n isLanded: isLanded,\n visitorId: visitorId,\n };\n if (phoneVerificationCode) {\n // Track form step completion before signup\n const { ln, v_id, e, m, f } = router.query;\n let source = TrackingSourceType.UNKNOWN;\n\n if (ln === '1') source = TrackingSourceType.LANDING_PAGE_1;\n else if (ln === '2') source = TrackingSourceType.LANDING_PAGE_2;\n else if (ln === 'cal') source = TrackingSourceType.MORTGAGE_CALCULATOR;\n else if (ln === 'hn') source = TrackingSourceType.HOME_NURTURE;\n\n await TrackingService.trackFormStepCompleted(source, 3, v_id as string, e ? 'Email Campaign' : m ? 'Mailer Campaign' : null, m ? m as string : e as string, f as string);\n\n // Add tracking metadata to the signup data\n const trackingMetadata = {\n source,\n variant: v_id as string,\n };\n\n // Call the signup function with tracking metadata\n signup({\n ...fieldValues,\n verificationCode: phoneVerificationCode,\n metadata: trackingMetadata\n } as any);\n\n // Track completed signup\n await TrackingService.trackSignupCompleted(\n source,\n TrackingAuthType.EMAIL_PASSWORD,\n email,\n v_id as string,\n e ? 'Email Campaign' : m ? 'Mailer Campaign' : null,\n m ? m as string : e as string,\n f as string\n );\n }\n }\n };\n\n // Handle change for first name\n const handleFirstNameChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const value = event.target.value;\n setFirstName(value);\n if (value.length > 40) {\n setFirstNameError(t('First name cannot exceed 40 characters'));\n } else {\n setFirstNameError('');\n }\n };\n\n // Handle change for last name\n const handleLastNameChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const value = event.target.value;\n setLastName(value);\n if (value.length > 40) {\n setLastNameError(t('Last name cannot exceed 40 characters'));\n } else {\n setLastNameError('');\n }\n };\n\n // Handle change for password\n const handlePasswordChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const newPassword = event.target.value;\n setPassword(event.target.value);\n\n setRulesValidity((prevRulesValidity) => {\n const newRulesValidity = { ...prevRulesValidity };\n Object.keys(passwordRules).forEach((key) => {\n newRulesValidity[key] = passwordRules[key].checkValidity(newPassword);\n });\n return newRulesValidity;\n });\n };\n\n return (\n <Box\n sx={(theme) => ({\n [theme.breakpoints.down('sm')]: {\n position: 'fixed',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n height: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n zIndex: 1300,\n padding: '16px',\n overflow: 'hidden',\n },\n })}\n >\n {step < 3 && (\n <Card\n sx={{\n borderRadius: '31.5px',\n padding: { xs: '16px', sm: '24px 36px' },\n width: { xs: '100%', sm: '90%', md: '432px' },\n maxWidth: '432px',\n minHeight: { xs: 'auto', sm: '628px' },\n height: 'auto',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-between',\n bgcolor: 'white',\n boxShadow: '0px 4px 20px rgba(0, 0, 0, 0.1)',\n margin: 'auto',\n }}\n >\n <Box display=\"flex\" flexDirection=\"column\" gap=\"0.8rem\" marginTop={2}>\n <Box display=\"flex\" flexDirection=\"column\" gap=\"0.3rem\" marginLeft={2}>\n <Typography\n variant=\"h5\"\n sx={{\n fontFamily: 'PlusJakartaSans',\n fontWeight: 700,\n fontSize: { xs: '16px', sm: '18px' },\n lineHeight: '22.68px',\n color: '#01130F',\n }}\n >\n {t('Sign Up')}\n </Typography>\n <Typography\n variant=\"body2\"\n sx={{\n fontFamily: 'PlusJakartaSans',\n fontSize: { xs: '11px', sm: '12.6px' },\n fontWeight: 500,\n lineHeight: '15.88px',\n color: '#696767',\n }}\n >\n {t('Setup your account')}\n </Typography>\n </Box>\n {/* Step 1: Initial Form */}\n {step === 1 && (\n <>\n <Box\n sx={{\n marginTop: { xs: '0.5rem', sm: '1rem' },\n }}\n >\n <BuyerSocialSigninV2\n actionLabelProp={t('Sign up')}\n signup={signup}\n buttonStyle={{\n fontFamily: 'PlusJakartaSans',\n fontWeight: 600,\n fontSize: '12px',\n borderRadius: '50px',\n border: '1px solid #C5C5C5',\n padding: '14px 16px',\n boxShadow: 'none',\n display: 'flex',\n justifyContent: 'flex-start',\n alignItems: 'center',\n }}\n />\n </Box>\n <Typography\n variant=\"body2\"\n sx={{\n fontFamily: 'PlusJakartaSans',\n // Fix: Use an array for responsive fontSize values\n fontSize: { xs: '11px', sm: '12.6px' },\n fontWeight: 500,\n textAlign: 'left',\n marginLeft: { xs: '0.5rem', sm: '1rem' },\n lineHeight: '15.88px',\n color: '#696767',\n }}\n >\n {t('or')}\n </Typography>\n <Box display=\"flex\" flexDirection=\"column\" gap={{ xs: '0.5rem', sm: '1rem' }}>\n <Box display=\"flex\" flexDirection=\"column\" gap={1}>\n <Input\n placeholder={t('Your email address')}\n name=\"email\"\n fullWidth\n disableUnderline\n value={email}\n onChange={handleEmailChange}\n error={(email.length > 0 && !isEmailValid) || !!emailError}\n sx={{\n border: '1px solid #C5C5C5',\n borderRadius: '35px',\n // Fix: Use an array for responsive padding values\n padding: { xs: '8px 16px', sm: '10px 20px' },\n '&.Mui-error': {\n borderColor: '#E53935',\n },\n }}\n />\n {emailError && (\n <Typography\n variant=\"body2\"\n marginLeft={3}\n sx={{\n color: '#E53935',\n display: 'flex',\n alignItems: 'center',\n // Fix: Use an array for responsive fontSize values\n fontSize: { xs: '10px', sm: '12px' },\n fontFamily: 'PlusJakartaSans',\n fontWeight: 400,\n lineHeight: '15.12px',\n }}\n >\n {t(emailError)}\n </Typography>\n )}\n </Box>\n <GreenButton\n onClick={handleNextClickAfterEmail}\n disabled={!isEmailValid || !!emailError}\n sx={{\n padding: { xs: '8px', sm: '10px' },\n }}\n >\n {t('Next')}\n </GreenButton>\n </Box>\n </>\n )}\n\n {/* Step 2: Show after clicking 'Next' */}\n {step === 2 && (\n <Box display=\"flex\" flexDirection=\"column\" gap={{ xs: '1.5rem', sm: '3rem' }}>\n <Box\n display=\"flex\"\n justifyContent=\"space-between\"\n alignItems=\"center\"\n paddingX={{ xs: '8px', sm: '18.4px' }}\n >\n <Typography\n sx={{\n color: '#696767',\n fontFamily: 'PlusJakartaSans',\n fontSize: { xs: '14px', sm: '16px' },\n fontWeight: 600,\n lineHeight: '20.16px',\n }}\n >\n {email}\n </Typography>\n <Box sx={{ cursor: 'pointer' }} width={18} height={18} onClick={() => setStep(1)}>\n <Image\n src={'/images/undo-2.png'}\n alt={t('Go back')}\n width={18}\n height={18}\n style={{\n maxWidth: '18px',\n height: '18px',\n }}\n />\n </Box>\n </Box>\n <Box display=\"flex\" flexDirection=\"column\" gap={{ xs: '1rem', sm: '2rem' }}>\n <Typography\n sx={{\n color: '#696767',\n fontSize: { xs: '12px', sm: '14px' },\n fontFamily: 'PlusJakartaSans',\n fontWeight: 500,\n lineHeight: '17.64px',\n paddingLeft: '2px',\n }}\n marginLeft={{ xs: '8px', sm: '16px' }}\n >\n {t('Use same name of government Issued ID')}\n </Typography>\n <Box display=\"flex\" flexDirection=\"column\" gap={1}>\n <Input\n placeholder={t('First Name')}\n type=\"text\"\n name=\"firstName\"\n fullWidth\n disableUnderline\n value={firstName}\n onChange={handleFirstNameChange}\n error={!!firstNameError}\n sx={{\n border: '1px solid #C5C5C5',\n borderRadius: '35px',\n padding: { xs: '8px 16px', sm: '10px 20px' },\n '&.Mui-error': {\n borderColor: '#E53935',\n },\n }}\n />\n {firstNameError && (\n <Typography\n variant=\"body2\"\n marginLeft={3}\n sx={{\n color: '#E53935',\n display: 'flex',\n alignItems: 'center',\n fontSize: { xs: '10px', sm: '12px' },\n fontFamily: 'PlusJakartaSans',\n fontWeight: 400,\n lineHeight: '15.12px',\n }}\n >\n {firstNameError}\n </Typography>\n )}\n <Input\n placeholder={t('Last Name')}\n type=\"text\"\n name=\"lastName\"\n fullWidth\n disableUnderline\n value={lastName}\n onChange={handleLastNameChange}\n error={!!lastNameError}\n sx={{\n border: '1px solid #C5C5C5',\n borderRadius: '35px',\n padding: { xs: '8px 16px', sm: '10px 20px' },\n '&.Mui-error': {\n borderColor: '#E53935',\n },\n }}\n />\n {lastNameError && (\n <Typography\n variant=\"body2\"\n marginLeft={3}\n sx={{\n color: '#E53935',\n display: 'flex',\n alignItems: 'center',\n fontSize: { xs: '10px', sm: '12px' },\n fontFamily: 'PlusJakartaSans',\n fontWeight: 400,\n lineHeight: '15.12px',\n }}\n >\n {lastNameError}\n </Typography>\n )}\n </Box>\n\n <Input\n placeholder={t('Password')}\n type={showPassword ? 'text' : 'password'}\n fullWidth\n disableUnderline\n value={password}\n onChange={handlePasswordChange}\n sx={{\n border: '1px solid #C5C5C5',\n borderRadius: '35px',\n padding: { xs: '8px 16px', sm: '10px 20px' },\n '& input[type=\"password\"]::-ms-reveal': { display: 'none' },\n '& input[type=\"password\"]::-ms-clear': { display: 'none' },\n }}\n endAdornment={\n <InputAdornment position=\"end\">\n <IconButton\n aria-label={t('toggle password visibility')}\n onClick={handleClickShowPassword}\n onMouseDown={handleMouseDownPassword}\n onMouseUp={handleMouseUpPassword}\n edge=\"end\"\n >\n {showPassword ? <VisibilityOffIcon /> : <VisibilityIcon />}\n </IconButton>\n </InputAdornment>\n }\n />\n </Box>\n {password.length > 0 && (\n <Box\n display=\"flex\"\n flexDirection=\"column\"\n marginLeft={3}\n rowGap={{ xs: '4px', sm: '8px' }}\n >\n {Object.keys(passwordRules).map((key) => (\n <Box display=\"flex\" gap={1} key={key}>\n {rulesValidity[key] ? (\n <Image\n src={'/icons/squircle.png'}\n alt={t('Rule passes')}\n width={16}\n height={16}\n style={{\n maxWidth: '16px',\n height: '16px',\n }}\n />\n ) : (\n <DoNotDisturbAltIcon\n sx={{\n width: '16px',\n height: '16px',\n color: '#E53935',\n rotate: '90deg',\n }}\n />\n )}\n <Typography\n variant=\"body2\"\n sx={{\n color: '#01130F',\n display: 'flex',\n alignItems: 'center',\n fontSize: { xs: '10px', sm: '12px' },\n fontFamily: 'PlusJakartaSans',\n fontWeight: 400,\n lineHeight: '15.12px',\n }}\n >\n {t(passwordRules[key].rule)}\n </Typography>\n </Box>\n ))}\n </Box>\n )}\n <GreenButton\n onClick={handleNextClickAfterPersonalInfo}\n disabled={\n !firstName ||\n !lastName ||\n firstName.length > 40 ||\n lastName.length > 40 ||\n !!firstNameError ||\n !!lastNameError ||\n !Object.keys(rulesValidity).every((rule) => rulesValidity[rule])\n }\n sx={{\n padding: { xs: '8px', sm: '10px' },\n }}\n >\n {t('Next')}\n </GreenButton>\n </Box>\n )}\n </Box>\n\n {/* Keep the Terms and Privacy Policy section consistent */}\n <Box\n width=\"100%\"\n display=\"flex\"\n flexWrap=\"wrap\"\n marginX=\"auto\"\n flexDirection=\"column\"\n justifyContent=\"center\"\n sx={{\n marginTop: { xs: '1rem', sm: '2rem' },\n }}\n >\n <TermsAndConditions />\n\n {step === 1 && (\n <Typography\n variant=\"body2\"\n sx={{\n fontFamily: 'PlusJakartaSans',\n fontSize: { xs: '10px', sm: '12px' },\n fontWeight: 600,\n lineHeight: '15.12px',\n textAlign: 'center',\n width: 'auto',\n display: 'flex',\n gap: '0.5rem',\n justifyContent: 'center',\n color: '#3C3C3C',\n marginTop: { xs: '0.5rem', sm: '1rem' },\n }}\n >\n {t('Already have an account?')} \n <Link href={commonRoutes.buyer.signin} className=\"auth-link\">\n {t('Sign in instead')}\n </Link>\n </Typography>\n )}\n </Box>\n </Card>\n )}\n {step === 3 && (\n <Card\n sx={(theme) => ({\n borderRadius: '31.5px',\n [theme.breakpoints.down('sm')]: {\n padding: { xs: '16px', sm: '24px 36px' },\n maxWidth: '432px',\n maxHeight: {\n xs: 'calc(100vh - 80px)',\n sm: '628px',\n },\n overflowY: 'auto',\n boxShadow: '0px 4px 20px rgba(0, 0, 0, 0.1)',\n margin: 'auto',\n },\n })}\n >\n <SignUpVerifyStepOne\n setStep={setStep}\n phoneNumber={phoneNumber}\n setPhoneNumber={setPhoneNumber}\n email={email}\n cardTitle={t('Verify Its You')}\n cardSubTitle={t('Verify your Mobile Number')}\n />\n </Card>\n )}\n {step === 4 && (\n <SignUpVerifyStepTwo setStep={setStep} signupNewUser={signupNewUser} phone={phoneNumber} />\n )}\n </Box>\n );\n};\n","import { Container, Grid, Box } from '@mui/material';\nimport { BackButtonComponent } from './BackButtonComponent';\nimport { HeroTextComponent } from './HeroTextComponent';\nimport { PartnerSupportComponent } from './PartnerSupportComponent';\nimport { BreadcrumbComponent } from './BreadcrumbComponent';\nimport { ApiService } from '@services/Api';\nimport { FC, useEffect, useState } from 'react';\nimport { commonRoutes, localStorageDataRef } from '@utils';\nimport { BuyerFormFields, useAuthUser } from '@hooks';\nimport FinalStep from './setup/Common/FinalStep';\nimport { SignupCardComponent } from './SignupCardComponent';\nimport { AuthLayout } from '@components/layout';\nimport LanguageSelect from '@components/common/LanguageSelect';\nimport { useRouter } from 'next/router';\n\ninterface Props {\n onSubmit: (values: ApiService.SignUpBuyerBody) => void;\n errorField?: boolean;\n}\n\nexport const BuyerSignupForm: FC<Props> = ({ onSubmit, errorField }) => {\n const { firstName, signedIn } = useAuthUser();\n const router = useRouter();\n\n useEffect(() => {\n if (signedIn) {\n router.replace(commonRoutes.buyer.auth.onboarding);\n }\n }, [signedIn, router]);\n\n const signup = async (values: BuyerFormFields) => {\n if (!values.authenticationId) {\n alert('step 2');\n return;\n }\n let partnerCode = null;\n if (values.accessCode && values.accessCode.length > 0) {\n partnerCode = values?.partnerCode;\n }\n const valuesToSubmit: ApiService.SignUpBuyerBody = {\n authenticationId: values.authenticationId,\n firstName: values.firstName,\n lastName: values.lastName,\n email: values.email,\n password: values.password,\n verificationCode: values.verificationCode,\n accessCode: values.partnerCode ?? undefined,\n partnerCode: values.partnerCode ?? undefined,\n lenderCode: values.lenderCode ?? undefined,\n associateId: values.associateIdStatus ? values.associateId : undefined,\n housePriceGoal: 0,\n expectedPurchaseMonthsPeriod: 0,\n phone: values.phone,\n wishedLocations: [],\n visitorId: values.visitorId,\n isLanded: values.isLanded,\n campaignFrequency: values.campaignFrequency,\n campaignMonth: values.campaignMonth,\n campaignSource: values.campaignSource,\n acceptPhoneConsent: values.acceptPhoneConsent,\n provider: values.provider,\n inviteId: localStorage.getItem(localStorageDataRef.acceptInvite),\n } as any;\n\n onSubmit(valuesToSubmit);\n };\n\n return (\n <AuthLayout>\n <Container\n maxWidth=\"xl\"\n sx={{ mt: 10, height: '100vh', overflowY: 'auto', overflowX: 'hidden' }}\n >\n <Grid container spacing={4}>\n {/* Left side - Hero text and breadcrumbs */}\n <Grid item xs={12} md={6}>\n <Box sx={{ height: '100%', display: 'flex', flexDirection: 'column', justifyContent: 'start', gap: 3 }}>\n <BackButtonComponent />\n <HeroTextComponent />\n </Box>\n </Grid>\n\n {/* Right side - Sign in form and language selector */}\n <Grid item xs={12} md={6}>\n <Box className=\"justify-end items-end\" sx={{ height: '100%', display: 'flex', flexDirection: 'column', gap: 3 }}>\n {/* {signedIn ? (\n <FinalStep name={firstName} />\n ) : (\n <SignupCardComponent signup={signup} errorField={errorField} />\n )} */}\n <SignupCardComponent signup={signup} errorField={errorField} />\n\n <Box sx={{ display: 'flex', justifyContent: 'flex-end', mt: 2, mb: 2 }}>\n <LanguageSelect />\n </Box>\n </Box>\n </Grid>\n </Grid>\n </Container>\n </AuthLayout>\n\n // <Container maxWidth=\"xl\">\n // <Grid className=\"signup-container\" spacing={2} marginY={8}>\n // <Grid maxWidth=\"650px\" className=\"signup-text-area\">\n // <BackButtonComponent />\n // <HeroTextComponent />\n // </Grid>\n // <Grid className=\"login-area\">\n // {signedIn ? <FinalStep name={firstName} /> : <SignupCardComponent signup={signup} errorField={errorField} />}\n // </Grid>\n // <Grid className=\"partners-area\">\n // <PartnerSupportComponent />\n // </Grid>\n // <Box display=\"flex\" className=\"breadcrumbs-area\" flexWrap=\"wrap\" gap={2}>\n // <BreadcrumbComponent active={1} />\n // </Box>\n // </Grid>\n // </Container>\n );\n};\n","import { useAuthUser, useBuyerSignupInfo, useIsMounted } from '@hooks';\nimport { localStorageDataRef } from '@utils';\nimport { AxiosRequestConfig } from 'axios';\nimport { useVanityCodes } from '@hooks/use-vanity-codes';\nimport { useRouter } from 'next/router';\nimport { NextPageWithLayout } from 'pages/_app';\nimport { useCallback, useEffect, useState } from 'react';\nimport { toast } from 'react-hot-toast';\nimport { useMutation } from 'react-query';\nimport { ApiService } from '@services/Api';\nimport { AuthLayout } from '../../../components/layout';\nimport { Loading } from '../../../components/loading';\nimport { BuyerSignupForm } from '../../../components/buyer-signup-form-v3';\nimport { g } from '@lib/gtag';\n\nconst BuyerSignupPage: NextPageWithLayout = () => {\n const router = useRouter();\n const [errorField, setErrorField] = useState(false);\n\n const { updateUserInfo, signedIn } = useAuthUser();\n const {\n codes,\n setVanityCodes,\n validateCodes,\n validated: vanityCodeValidated,\n validating: vanityCodeValidating,\n vanityURLStatus,\n } = useVanityCodes();\n const signUpBuyerMutation = useMutation(\n async (values: ApiService.SignUpBuyerBody) => {\n console.log(\"🚀 ~ values.authenticationId:\", values.authenticationId)\n if (!values.authenticationId) {\n alert('step 1');\n return;\n }\n const resp = await ApiService.signUpBuyer(values);\n return resp.data;\n },\n {\n onSuccess: async (response) => {\n const remappedUserType = response.user.userType === 'buyer' ? 'buyer' : 'partner';\n updateUserInfo({\n ...response.user,\n userType: remappedUserType,\n accessToken: response.accessToken,\n signedIn: true,\n });\n g.event({\n action: 'sign_up',\n value: {\n user_id: response.user.id,\n partnerName: response.user.partnerName,\n lenderName: response.user.lenderName,\n invitedCoBorrower: response.buyer.coBorrowerInvited,\n coBorrower: response.buyer.coBorrower,\n coBorrowerEmail: response.buyer.coBorrowersEmail,\n },\n });\n localStorage.removeItem(localStorageDataRef.acceptInvite);\n localStorage.removeItem(localStorageDataRef.acceptInviteDate);\n },\n onError: (error: AxiosRequestConfig) => {\n console.error(error.data);\n toast.error(error.data.message);\n localStorage.removeItem(localStorageDataRef.acceptInvite);\n localStorage.removeItem(localStorageDataRef.acceptInviteDate);\n setErrorField(true);\n },\n },\n );\n\n const validateAndSetVanityCodes = useCallback(async () => {\n await validateCodes();\n }, [validateCodes]);\n\n useEffect(() => {\n if (!router.isReady) return;\n const query = router.query;\n setVanityCodes({\n partnerCode: (query?.pc as string) || '',\n lenderCode: (query?.lc as string) || '',\n associateId: (query?.associateId as string) || '',\n referredBy: (query?.referredBy as string) || '',\n });\n validateAndSetVanityCodes();\n }, [setVanityCodes, router.query, router.isReady, validateAndSetVanityCodes]);\n\n const isMounted = useIsMounted();\n\n if (!signedIn) {\n useBuyerSignupInfo.getState().reset();\n }\n\n // // vanity code invalid\n // if (vanityCodeValidated && !vanityURLStatus)\n // return (\n // <SignLayout>\n // <div className=\"grid min-h-max min-w-screen place-items-center\">\n // <ErrorState type=\"wrong_associate_id\" />\n // </div>\n // </SignLayout>\n // );\n\n return (\n <AuthLayout>\n <Loading isLoading={signUpBuyerMutation.isLoading || vanityCodeValidating} />\n {isMounted && (\n <BuyerSignupForm\n onSubmit={(values) => {\n signUpBuyerMutation.mutate(values);\n }}\n errorField={errorField}\n />\n )}\n </AuthLayout>\n );\n};\n\nexport default BuyerSignupPage;\n"],"names":["_interopRequireDefault","require","exports","_createSvgIcon","_jsxRuntime","default","jsx","d","CardContainer","children","Card","sx","theme","up","borderRadius","padding","width","display","flexDirection","gap","boxShadow","border","minHeight","position","marginLeft","marginRight","HeadingStyle","fontFamily","fontSize","fontWeight","lineHeight","marginBottom","color","ParagraphStyle","BulletPointStyle","open","setOpen","useState","t","useTranslation","Box","alignItems","justifyContent","mt","Image","src","alt","height","style","maxWidth","Typography","variant","component","href","textDecoration","onClick","Dialog","fullWidth","onClose","paddingTop","DialogTitle","IconButton","aria-label","paddingLeft","paddingRight","paddingBottom","textAlign","overflowY","b","a","hideBackButton","NavigationButtons","setStep","onSubmit","nextValue","activeNow","mx","goBack","prevStep","textTransform","hover","backgroundColor","cursor","marginTop","Button","disabled","title","WhyNeed","toggle","setToggle","contentRef","useRef","setHeight","useEffect","current","scrollHeight","userSelect","zIndex","handleToggle","ExpandCircleDownOutlinedIcon","transform","transition","flexShrink","overflow","div","ref","opacity","transitionDelay","description","storeName","actionName","useVanityCodes","create","devtools","set","get","vanityURLStatus","validated","validating","setVanityCodes","codes","store","validateCodes","buyerInfo","accessCode","partnerCodeStatus","associateIdStatus","partnerCode","lenderCode","associateId","useBuyerSignupInfo","getState","setBuyerInfo","res","ApiService","data","isPartnerCodeVerified","e","name","enabled","process","SignUpVerifyStepOne","phoneNumber","setPhoneNumber","onUpdatePersonalInfo","values","error","cardTitle","cardSubTitle","email","consentSMS","setConsentSMS","consentEmail","setConsentEmail","errorField","setErrorField","isValidPhone","setIsValidPhone","successMessage","setSuccessMessage","phone","formatPhoneNumberForDisplay","value","digits","replace","startsWith","slice","formatted","length","handlePhoneVerification","response","isValidPhoneNumber","createVerificationCode","status","toast","success","message","metadata","details","console","handleSubmit","preventDefault","breakpoints","xs","sm","Input","placeholder","disableUnderline","startAdornment","InputAdornment","className","PhoneInputWithCountrySelect","onChange","handlePhoneChange","formattedNumber","isPasted","isValid","countries","defaultCountry","international","withCountryCallingCode","inputStyle","countrySelectComponent","onKeyDown","key","numberInputProps","outline","maxLength","target","test","FormControlLabel","control","Checkbox","checked","label","mb","InfoSecurityNotice","onComplete","VerificationCodeInput","externalErrorField","setValues","Array","fill","setError","timer","setTimer","isResendDisabled","setIsResendDisabled","inputRefs","startTimer","interval","setInterval","prevTimer","handleChange","index","isNaN","newValues","focus","every","val","join","handleKeyDown","clearValues","handleResendCode","isResend","only","flexWrap","overflowX","map","TextField","inputRef","el","slotProps","htmlInput","type","inputMode","pattern","autoComplete","size","flex","md","minWidth","borderColor","borderWidth","formatTime","mins","Math","floor","seconds","secs","toString","padStart","SignUpVerifyStepTwo","signupNewUser","verificationCode","setVerificationCode","signedIn","useAuthUser","router","useRouter","verifyPhoneCode","commonRoutes","buyer","auth","onboarding","handleComplete","code","margin","wordBreak","SignupCardComponent","signup","step","authenticationId","rest","passwordRules","rule","checkValidity","passwordValue","number","initialRulesValidity","Object","keys","reduce","acc","showPassword","setShowPassword","setEmail","emailError","setEmailError","isEmailValid","setIsEmailValid","firstName","setFirstName","lastName","setLastName","password","setPassword","firstNameError","setFirstNameError","lastNameError","setLastNameError","rulesValidity","setRulesValidity","visitorId","setVisitorId","campaignSource","setCampaignSource","isLanded","setIsLanded","logged","setLogged","campaignFrequency","setCampaignFrequency","campaignMonth","setCampaignMonth","isReady","log","query","ln","v_id","m","f","decodedEmail","atob","validEmail","TrackingSourceType","LANDING_PAGE_1","LANDING_PAGE_2","MORTGAGE_CALCULATOR","HOME_NURTURE","undefined","MAILER","EMAIL","UNKNOWN","source","TrackingService","trackPageVisit","handleNextClickAfterEmail","trackFormStepCompleted","userType","EUserType","EAuthenticationType","referredBy","isEmailVerified","errorMessage","phoneVerificationCode","emailSplit","split","toLowerCase","fieldValues","encryptText","housePriceGoal","expectedPurchaseMonthsPeriod","wishedLocations","provider","inviteId","localStorage","getItem","localStorageDataRef","acceptInvite","trackingMetadata","trackSignupCompleted","TrackingAuthType","EMAIL_PASSWORD","down","top","left","right","bottom","bgcolor","BuyerSocialSigninV2","actionLabelProp","buttonStyle","handleEmailChange","newEmail","event","GreenButton","paddingX","handleFirstNameChange","handleLastNameChange","handlePasswordChange","newPassword","newRulesValidity","prevRulesValidity","forEach","endAdornment","handleClickShowPassword","show","onMouseDown","handleMouseDownPassword","onMouseUp","handleMouseUpPassword","edge","VisibilityOffIcon","VisibilityIcon","rowGap","DoNotDisturbAltIcon","rotate","handleNextClickAfterPersonalInfo","marginX","TermsAndConditions","Link","signin","maxHeight","BuyerSignupForm","alert","valuesToSubmit","acceptPhoneConsent","AuthLayout","Container","Grid","container","spacing","item","BackButtonComponent","HeroTextComponent","LanguageSelect","BuyerSignupPage","updateUserInfo","vanityCodeValidated","vanityCodeValidating","signUpBuyerMutation","useMutation","resp","onSuccess","remappedUserType","user","accessToken","g","action","user_id","id","partnerName","lenderName","invitedCoBorrower","coBorrowerInvited","coBorrower","coBorrowerEmail","coBorrowersEmail","removeItem","acceptInviteDate","onError","validateAndSetVanityCodes","useCallback","pc","lc","isMounted","useIsMounted","reset","Loading","isLoading","mutate"],"sourceRoot":""}