@acuteinfo/common-screens 1.0.13 → 1.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1434,7 +1434,7 @@ const AuthControllerWrapper = ({ bannerDetails, logoUrl, loginFn, veirfyUsername
1434
1434
  });
1435
1435
  }
1436
1436
  };
1437
- return (jsx(Fragment$1, { children: jsxs(Grid, { container: true, style: { height: "100vh", overflow: "hidden" }, children: [jsx(BankDetails, { bannerDetails: bannerDetails }), jsxs(Grid, { item: true, xs: 11, md: 6, lg: 6, sm: 6, children: [jsx(Grid, { container: true, direction: "row", justifyContent: "flex-end", alignItems: "center", padding: "25px", children: jsx(Tooltip, { describeChild: true, title: "Enfinity-CBS-UI-V1.0.17", children: jsx("img", { src: Boolean(dashboardLogoURL) ? dashboardLogoURL : "", alt: "Logo" }) }) }), jsx(Grid, { container: true, direction: "row", justifyContent: "flex-end", alignItems: "center", padding: "0 35px 0 0", children: jsx(LanguageComponent, {}) }), openpwdreset ? (jsx(PasswordRotation, { classes: classes, ResetPassword: ResetPassword, open: openpwdreset, username: loginState.username, accessToken: loginState.access_token, tokenType: loginState.token_type, handleClose: handlePasswordRotationClose })) : (jsx(Fragment$1, { children: loginState.currentFlow === "username" ? (jsx(UsernamePasswordField, { classes: classes, loginState: loginState, verifyUsernamePassword: verifyUsernamePassword, forgotPasswordEndpoint: forgotPasswordEndpoint }, "username")) : (jsx(Fragment$1, { children: loginState.authType === "OTP" ? (jsx(OTPModel, { OTPResendRequest: OTPResendRequest, classes: classes, loginState: loginState, VerifyOTP: VerifyOTP, previousStep: changeUserName, OTPError: t(loginState?.OtpuserMessage ?? ""), setOTPError: (error) => {
1437
+ return (jsx(Fragment$1, { children: jsxs(Grid, { container: true, style: { height: "100vh", overflow: "hidden" }, children: [jsx(BankDetails, { bannerDetails: bannerDetails }), jsxs(Grid, { item: true, xs: 11, md: 6, lg: 6, sm: 6, children: [jsx(Grid, { container: true, direction: "row", justifyContent: "flex-end", alignItems: "center", padding: "25px", maxWidth: "150px", children: jsx(Tooltip, { describeChild: true, title: "Enfinity-CBS-UI-V1.0.17", children: jsx("img", { src: Boolean(dashboardLogoURL) ? dashboardLogoURL : "", alt: "Logo", width: "100%" }) }) }), jsx(Grid, { container: true, direction: "row", justifyContent: "flex-end", alignItems: "center", padding: "0 35px 0 0", maxWidth: "170px", overflow: "hidden", children: jsx(LanguageComponent, {}) }), openpwdreset ? (jsx(PasswordRotation, { classes: classes, ResetPassword: ResetPassword, open: openpwdreset, username: loginState.username, accessToken: loginState.access_token, tokenType: loginState.token_type, handleClose: handlePasswordRotationClose })) : (jsx(Fragment$1, { children: loginState.currentFlow === "username" ? (jsx(UsernamePasswordField, { classes: classes, loginState: loginState, verifyUsernamePassword: verifyUsernamePassword, forgotPasswordEndpoint: forgotPasswordEndpoint }, "username")) : (jsx(Fragment$1, { children: loginState.authType === "OTP" ? (jsx(OTPModel, { OTPResendRequest: OTPResendRequest, classes: classes, loginState: loginState, VerifyOTP: VerifyOTP, previousStep: changeUserName, OTPError: t(loginState?.OtpuserMessage ?? ""), setOTPError: (error) => {
1438
1438
  dispath({
1439
1439
  type: "OTPVerificationFailed",
1440
1440
  payload: { error: error },
@@ -1912,7 +1912,7 @@ const ForgotPasswordControllerWrapper = ({ screenFlag, updatenewPassword, veirfy
1912
1912
  });
1913
1913
  }
1914
1914
  };
1915
- return (jsx(Fragment$1, { children: jsxs(Grid, { container: true, style: { height: "100vh", overflow: "hidden" }, children: [jsx(BankDetails, { bannerDetails: bannerDetails }), jsxs(Grid, { item: true, xs: 6, md: 6, lg: 6, sm: 6, children: [jsx(Grid, { container: true, direction: "row", justifyContent: "flex-end", alignItems: "center", padding: "31px", children: jsx("img", { src: Boolean(dashboardLogoURL) ? dashboardLogoURL : "", alt: "Logo" }) }), jsx(Grid, { container: true, direction: "row", justifyContent: "flex-end", alignItems: "center", padding: "0 35px 0 0", maxWidth: "200px", children: jsx(LanguageComponent, {}) }), jsx(Container, { maxWidth: "xs", children: jsxs(Grid, { alignItems: "center", style: { paddingTop: "20px" }, children: [jsx("h2", { style: { margin: "10px 0" }, children: loginState.workingState === 1
1915
+ return (jsx(Fragment$1, { children: jsxs(Grid, { container: true, style: { height: "100vh", overflow: "hidden" }, children: [jsx(BankDetails, { bannerDetails: bannerDetails }), jsxs(Grid, { item: true, xs: 6, md: 6, lg: 6, sm: 6, children: [jsx(Grid, { container: true, direction: "row", justifyContent: "flex-end", alignItems: "center", padding: "31px", maxWidth: "150px", children: jsx("img", { src: Boolean(dashboardLogoURL) ? dashboardLogoURL : "", alt: "Logo", width: "100%" }) }), jsx(Grid, { container: true, direction: "row", justifyContent: "flex-end", alignItems: "center", padding: "0 35px 0 0", maxWidth: "170px", overflow: "hidden", children: jsx(LanguageComponent, {}) }), jsx(Container, { maxWidth: "xs", children: jsxs(Grid, { alignItems: "center", style: { paddingTop: "20px" }, children: [jsx("h2", { style: { margin: "10px 0" }, children: loginState.workingState === 1
1916
1916
  ? t("Setnewpassword")
1917
1917
  : screenFlag === "totp"
1918
1918
  ? "Forgot TOTP"
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/pages/auth/style.ts","../src/pages/auth/usernamePassword.tsx","../src/pages/auth/otpPopup.tsx","../node_modules/style-inject/dist/style-inject.es.js","../src/pages/auth/verifyFinger.tsx","../src/pages/auth/api.ts","../src/pages/auth/biometric.ts","../src/pages/auth/utils.ts","../src/pages/auth/bankDetails.tsx","../src/pages/auth/passwordRotation.tsx","../src/pages/auth/authController.tsx","../src/pages/auth/forgotPasswordField.tsx","../src/pages/auth/forgotPassword.tsx"],"sourcesContent":["import { makeStyles } from \"@mui/styles\";\r\n\r\nexport const useStyles = makeStyles((theme: any) => ({\r\n wrapper: {\r\n minHeight: \"100vh\",\r\n boxShadow: \"0 3px 6px rgba(0,0,0,0.03)\",\r\n // background: \"#fff\",\r\n background: \"var(--theme-color2)\",\r\n },\r\n loginEmp: {\r\n background: \"#fff\",\r\n padding: theme.spacing(2, 4),\r\n display: \"flex\",\r\n maxWidth: \"400px\",\r\n margin: \"auto\",\r\n boxShadow: \"0 0 20px rgba(0,0,0,0.06)\",\r\n borderRadius: \"8px\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n width: \"100%\",\r\n },\r\n },\r\n formWrap: {\r\n marginTop: theme.spacing(2),\r\n },\r\n loginBtn: {\r\n minWidth: \"100% !important\",\r\n margin: theme.spacing(2, 0),\r\n fontSize: \"1rem\",\r\n padding: \"10px .75rem\",\r\n background: \"rgb(128,0,0)\",\r\n border: 0,\r\n color: \"#fff !important\",\r\n fontWeight: 600,\r\n letterSpacing: \"0.02857em\",\r\n boxShadow: \"none\",\r\n textTransform: \"capitalize\",\r\n alignSelf: \"flex-end\",\r\n \"&:hover\": {\r\n background: \"#fedad8\",\r\n boxShadow: \"none\",\r\n },\r\n },\r\n OTPTimer: {\r\n marginTop: \"10px\",\r\n color: theme.palette.primary.main,\r\n fontWeight: 600,\r\n },\r\n resendLink: {\r\n marginTop: \"10px\",\r\n cursor: \"pointer\",\r\n color: theme.palette.secondary.main,\r\n fontWeight: 600,\r\n fontSize: \"0.875 rem\",\r\n },\r\n logo: {\r\n marginBottom: theme.spacing(1),\r\n },\r\n\r\n loginLeft: {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n display: \"none\",\r\n },\r\n },\r\n loginRight: {\r\n background: \"#fff\",\r\n padding: theme.spacing(2, 4),\r\n display: \"flex\",\r\n maxWidth: \"400px\",\r\n margin: \"auto\",\r\n boxShadow: \"0 0 20px rgba(0,0,0,0.06)\",\r\n borderRadius: \"8px\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n width: \"100%\",\r\n },\r\n \"& img\": {\r\n alignSelf: \"center\",\r\n },\r\n },\r\n\r\n loginImg: {},\r\n\r\n verifybutton: {\r\n alignSelf: \"center\",\r\n // marginBottom: \"10px\",\r\n // marginTop: \"10px\",\r\n padding: \"5px\",\r\n },\r\n otpButtons: {\r\n // padding: \"10px\",\r\n },\r\n\r\n divflex: {\r\n display: \"flex\",\r\n },\r\n otpinputpadding: {\r\n \"& input\": {\r\n marginRight: \"25px !important\",\r\n border: \"1.42444px solid var(--theme-color3)\",\r\n borderRadius: \"10px\",\r\n width: \"45px !important\",\r\n height: \"45px !important\",\r\n marginBottom: \"15px\",\r\n boxShadow: \"0px 5.69775px 11.3955px rgba(66, 99, 199, 0.16)\",\r\n },\r\n },\r\n ibtnvisible: {\r\n // padding: \"7px !important\",\r\n // alignItems: \"baseline\",\r\n marginBottom: \"15px\",\r\n },\r\n btnvisibleoff: {\r\n display: \"none\",\r\n },\r\n OTPalignName: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n // justifyContent: \"space-between\",\r\n marginBottom: \"12px\",\r\n color: \"#1C1C1C\",\r\n fonWeight: \"400\",\r\n fontSize: \"17px\",\r\n lineHeight: \"33px\",\r\n },\r\n resendOTPalign: {\r\n color: \"var(--theme-color3)\",\r\n fonWeight: \"400\",\r\n fontSize: \"17px\",\r\n lineHeight: \"33px\",\r\n margin: \"0 auto\",\r\n // marginTop: \"15px\",\r\n // display: \"block !important\",\r\n },\r\n resendbtnLink: {\r\n textDecoration: \"underline\",\r\n color: \"var(--theme-color3)\",\r\n cursor: \"pointer\",\r\n \"&:hover\": {\r\n textDecoration: \"underline\",\r\n color: \"var(--theme-color3)\",\r\n },\r\n },\r\n dialogTitleClass: {\r\n background: \"var(--theme-color5)\",\r\n padding: \"6px 15px !important\",\r\n margin: \"10px\",\r\n color: \"var(--theme-color2)\",\r\n borderRadius: \"4px\",\r\n \"& h2\": {\r\n fontWeight: \"500 !important\",\r\n },\r\n },\r\n lang_svg: {\r\n marginRight: \"10px\",\r\n width: \"22px\",\r\n height: \"22px\",\r\n },\r\n dialogContent: {\r\n padding: \"0px 15px\",\r\n \"& p\": {\r\n whiteSpace: \"pre-wrap\",\r\n color: \"black\",\r\n marginTop: \"8px\",\r\n marginBottom: \"6px\",\r\n },\r\n },\r\n button: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n flexDirection: \"column\",\r\n margin: \"6px\",\r\n background: \"var(--theme-color1)\",\r\n \"&:hover\": {\r\n background: \"var(--theme-color1) !important\",\r\n },\r\n },\r\n}));\r\n","import { GradientButton, TextField } from \"@acuteinfo/common-base\";\r\n\r\nimport { Fragment, useState, useEffect, useRef } from \"react\";\r\n// import { TextField } from \"components/styledComponent/textfield\";\r\n// import { GradientButton } from \"components/styledComponent/button\";\r\nimport Visibility from \"@mui/icons-material/Visibility\";\r\nimport VisibilityOff from \"@mui/icons-material/VisibilityOff\";\r\nimport { CircularProgress, IconButton, InputAdornment } from \"@mui/material\";\r\nimport { Container } from \"@mui/material\";\r\nimport { Grid } from \"@mui/material\";\r\nimport { useTranslation } from \"react-i18next\";\r\n// import { Language_App } from \"pages_audit/appBar/language\";\r\nexport const UsernamePasswordField = ({\r\n classes,\r\n loginState,\r\n verifyUsernamePassword,\r\n forgotPasswordEndpoint\r\n}) => {\r\n const [input, setInput] = useState({ userName: \"\", password: \"\" });\r\n const [showPasswordTime, setShowPasswordTime] = useState(0);\r\n const showPassword = Date.now() < showPasswordTime;\r\n const [, forceUpdate] = useState<any | null>();\r\n const timerRef = useRef<any>(null);\r\n const { t } = useTranslation();\r\n useEffect(() => {\r\n return () => clearTimeout(timerRef.current);\r\n }, []);\r\n const handleChange = (event) => {\r\n const name = event.target.name;\r\n const value = event.target.value;\r\n if (name === \"userName\" && value) {\r\n loginState.isUsernameError = false;\r\n }\r\n if (name === \"password\" && value) {\r\n loginState.isPasswordError = false;\r\n }\r\n\r\n setInput((values) => ({ ...values, [name]: value }));\r\n };\r\n const inputRef = useRef<any>(null);\r\n const inputPassRef = useRef<any>(null);\r\n const inputButtonRef = useRef<any>(null);\r\n\r\n useEffect(() => {\r\n let timeoutCd;\r\n if (loginState.isUsernameError) {\r\n timeoutCd = setTimeout(() => {\r\n inputRef?.current?.focus?.();\r\n }, 1000);\r\n } else if (loginState.isPasswordError) {\r\n timeoutCd = setTimeout(() => {\r\n inputPassRef?.current?.focus?.();\r\n }, 1000);\r\n }\r\n return () => {\r\n if (timeoutCd) {\r\n clearTimeout(timeoutCd);\r\n }\r\n };\r\n }, [loginState.isUsernameError, loginState.isPasswordError]);\r\n useEffect(() => {\r\n let timeoutCd;\r\n if (loginState?.otpmodelClose ?? false) {\r\n setInput((values) => ({ ...values, password: \"\" }));\r\n timeoutCd = setTimeout(() => {\r\n inputPassRef?.current?.focus?.();\r\n }, 1500);\r\n }\r\n return () => {\r\n if (timeoutCd) {\r\n clearTimeout(timeoutCd);\r\n }\r\n };\r\n }, [loginState.otpmodelClose]);\r\n\r\n return (\r\n <Fragment>\r\n <Container maxWidth=\"xs\">\r\n <Grid alignItems=\"center\" style={{ paddingTop: \"20px\" }}>\r\n <div\r\n style={{\r\n color: \"#000000 !important\",\r\n fontSize: \"30px\",\r\n fontWeight: \"600\",\r\n // fontFamily: \"Poppins\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n lineHeight: \"150%\",\r\n }}\r\n >\r\n <h3>{t(\"SignIn\")}</h3>\r\n </div>\r\n <div\r\n className=\"\"\r\n style={{\r\n color: \"#949597\",\r\n fontSize: \"16px\",\r\n fontWeight: \"400\",\r\n // fontFamily: \"Poppins\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n\r\n width: \"360px\",\r\n }}\r\n >\r\n {t(\"SignInWithUserIDandPassword\")}\r\n </div>\r\n <div className={classes.formWrap}>\r\n <TextField\r\n // variant=\"filled\"\r\n // color=\"secondary\"\r\n autoFocus={true}\r\n label={t(\"UserID\")}\r\n // placeholder=\"User ID\"\r\n placeholder={String(t(\"UserID\"))}\r\n style={{\r\n marginTop: \"10px\",\r\n marginBottom: \"17px\",\r\n }}\r\n fullWidth\r\n type={\"text\"}\r\n name=\"userName\"\r\n value={input.userName.trimStart() || \"\"}\r\n onChange={handleChange}\r\n error={loginState.isUsernameError}\r\n helperText={\r\n loginState.isUsernameError\r\n ? t(loginState.userMessageforusername)\r\n : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={loginState.loading}\r\n autoComplete=\"off\"\r\n ref={inputRef}\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n inputProps={{\r\n maxLength: \"16\",\r\n }}\r\n />\r\n\r\n <div\r\n style={{\r\n display: \"flex\",\r\n flexDirection: \"row-reverse\",\r\n marginTop: \"8px\",\r\n }}\r\n >\r\n <TextField\r\n key=\"employee\"\r\n label={t(\"Password\")}\r\n // variant=\"filled\"\r\n // color=\"secondary\"\r\n\r\n placeholder={String(t(\"EnterPassword\"))}\r\n InputLabelProps={{\r\n shrink: true,\r\n }}\r\n fullWidth\r\n type={showPassword ? \"text\" : \"password\"}\r\n name=\"password\"\r\n value={input.password}\r\n onChange={handleChange}\r\n error={loginState.isPasswordError}\r\n helperText={\r\n loginState.isPasswordError\r\n ? t(loginState.userMessageforpassword)\r\n : \"\"\r\n }\r\n disabled={loginState.loading}\r\n ref={inputPassRef}\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n InputProps={{\r\n endAdornment: (\r\n <InputAdornment position=\"end\">\r\n <IconButton\r\n aria-label=\"toggle password visibility\"\r\n onClick={() => {\r\n if (!showPassword) {\r\n setShowPasswordTime(Date.now() + 5000);\r\n timerRef.current = setTimeout(\r\n () => forceUpdate(Date.now()),\r\n 5000,\r\n );\r\n } else if (showPassword) setShowPasswordTime(0);\r\n }}\r\n onMouseDown={(e) => e.preventDefault()}\r\n disabled={loginState.loading}\r\n >\r\n {showPassword ? <Visibility /> : <VisibilityOff />}\r\n </IconButton>\r\n </InputAdornment>\r\n ),\r\n }}\r\n inputProps={{ maxLength: \"16\" }}\r\n />\r\n </div>\r\n <div style={{ marginTop: \"20px\", display: \"flex\" }}>\r\n <div style={{ flex: \"auto\", textAlign: \"end\" }}>\r\n <a\r\n href={forgotPasswordEndpoint ?? \"\"}\r\n style={{ color: \"var(--theme-color3)\" }}\r\n >\r\n {t(\"ForgotPassword\")}\r\n </a>\r\n </div>\r\n </div>\r\n <div style={{ marginTop: \"20px\", display: \"flex\" }}>\r\n <div\r\n style={{\r\n flex: \"auto\",\r\n textAlign: \"center\",\r\n marginTop: \"5px\",\r\n marginBottom: \"17px\",\r\n }}\r\n >\r\n <GradientButton\r\n style={{\r\n borderRadius: loginState.loading ? \"50%\" : \"10px\",\r\n height: loginState.loading ? \"40px\" : \"100%\",\r\n width: loginState.loading ? \"0px\" : \"100%\",\r\n minWidth: loginState.loading ? \"40px\" : \"80px\",\r\n }}\r\n fullWidth\r\n disabled={loginState.loading}\r\n onClick={() =>\r\n verifyUsernamePassword(\r\n (input.userName || \"\").toLowerCase(),\r\n input.password,\r\n )\r\n }\r\n ref={inputButtonRef}\r\n // endicon={loginState.loading ? null : \"East\"}\r\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\r\n >\r\n {loginState.loading ? (\r\n <CircularProgress size={25} thickness={4.6} />\r\n ) : (\r\n t(\"Next\")\r\n )}\r\n </GradientButton>\r\n </div>\r\n </div>\r\n </div>\r\n </Grid>\r\n </Container>\r\n </Fragment>\r\n );\r\n};\r\n","import { FormHelperText } from \"@mui/material\";\r\nimport { GradientButton } from \"@acuteinfo/common-base\";\r\nimport { Fragment, useState, useRef, useEffect } from \"react\";\r\nimport OTPInput, { ResendOTP } from \"otp-input-react\";\r\nimport Visibility from \"@mui/icons-material/Visibility\";\r\nimport VisibilityOff from \"@mui/icons-material/VisibilityOff\";\r\nimport { CircularProgress } from \"@mui/material\";\r\nimport { Container } from \"@mui/material\";\r\nimport IconButton from \"@mui/material/IconButton\";\r\nimport { Grid } from \"@mui/material\";\r\nimport clsx from \"clsx\";\r\nimport { useSnackbar } from \"notistack\";\r\nimport { useTranslation } from \"react-i18next\";\r\nexport const OTPModel = ({\r\n classes,\r\n OTPResendRequest,\r\n open,\r\n handleClose,\r\n loginState,\r\n VerifyOTP,\r\n OTPError,\r\n setOTPError,\r\n previousStep,\r\n setNewRequestID = (id) => {},\r\n otpresendCount = 0,\r\n resendFlag,\r\n}) => {\r\n const [OTP, setOTP] = useState(\"\");\r\n const [showPasswordTime, setShowPasswordTime] = useState(0);\r\n const showPassword = Date.now() < showPasswordTime;\r\n const [, forceUpdate] = useState<any | null>();\r\n const timerRef = useRef<any>(null);\r\n useEffect(() => {\r\n return () => clearTimeout(timerRef.current);\r\n }, []);\r\n const [btnshow, setbtnshow] = useState(false);\r\n const inputButtonRef = useRef<any>(null);\r\n const [resendotpLoading, setResendotpLoading] = useState(false);\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { t } = useTranslation();\r\n // const renderButton = (buttonProps) => {\r\n // let { remainingTime, ...other } = buttonProps;\r\n // return resendotpLoading ? (\r\n // <a\r\n // remainingtime={remainingTime}\r\n // {...other}\r\n // className={clsx(\r\n // classes.resendbtnLink,\r\n // !btnshow && classes.btnvisibleoff\r\n // )}\r\n // >\r\n // {t(\"otp.ResendOTP\")}\r\n // </a>\r\n // ) : null;\r\n // };\r\n const renderButton = (buttonProps) => {\r\n let { remainingTime, ...other } = buttonProps;\r\n return resendotpLoading ? (\r\n <a\r\n className={clsx(\r\n classes.resendbtnLink,\r\n !btnshow && classes.btnvisibleoff,\r\n )}\r\n style={{ cursor: \"wait\" }}\r\n >\r\n {/* {t(\"otp.ResendOTP\")} {<CircularProgress size={20} color=\"secondary\" />} */}\r\n {t(\"otp.GetNewOTP\")} {<CircularProgress size={20} color=\"secondary\" />}\r\n </a>\r\n ) : (\r\n <a\r\n remainingtime={remainingTime}\r\n {...other}\r\n className={clsx(\r\n classes.resendbtnLink,\r\n !btnshow && classes.btnvisibleoff,\r\n )}\r\n >\r\n {/* {t(\"otp.ResendOTP\")} */}\r\n {t(\"otp.GetNewOTP\")}\r\n </a>\r\n );\r\n };\r\n\r\n const ClickEventHandler = () => {\r\n if (!Boolean(OTP) || OTP.length < 6) {\r\n setOTPError(\"otp.EnterOTPDigit\");\r\n } else {\r\n setOTPError(\"\");\r\n VerifyOTP(OTP);\r\n }\r\n };\r\n\r\n const handleResendClick = async () => {\r\n setResendotpLoading(true);\r\n const { status, data, message } = await OTPResendRequest(\r\n resendFlag === \"FORGET_PW\" || resendFlag === \"FORGT_TOTP\"\r\n ? loginState?.requestCd\r\n : loginState?.transactionID,\r\n loginState?.username,\r\n resendFlag,\r\n loginState.auth_data?.[0]?.company_ID,\r\n loginState.auth_data?.[0]?.branch_cd,\r\n );\r\n setResendotpLoading(false);\r\n if (status === \"0\") {\r\n setNewRequestID(data?.TRAN_CD);\r\n setbtnshow(false);\r\n enqueueSnackbar(message, { variant: \"success\" });\r\n } else {\r\n enqueueSnackbar(message, { variant: \"error\" });\r\n }\r\n };\r\n const handleCloseEvent = () => {\r\n setOTPError(\"\");\r\n setOTP(\"\");\r\n handleClose(\"\");\r\n };\r\n const renderTime = (remainingtime) => {\r\n if (parseInt(remainingtime) === 0) {\r\n setTimeout(() => {\r\n setbtnshow(true);\r\n }, 700);\r\n }\r\n return (\r\n <span className={clsx(btnshow && classes.btnvisibleoff)}>\r\n {t(\"otp.OtpExpired\")} {remainingtime} {t(\"otp.second\")}\r\n {/* {t(\"otp.ValidFor\")} {remainingtime} */}\r\n </span>\r\n );\r\n };\r\n\r\n useEffect(() => {\r\n if (loginState?.otpmodelClose ?? false) {\r\n handleCloseEvent();\r\n }\r\n }, [loginState.otpmodelClose]);\r\n return (\r\n <Fragment>\r\n <Container maxWidth=\"sm\">\r\n <Grid alignItems=\"center\" marginTop={\"4em\"}>\r\n <div\r\n // className={classes.formWrap}\r\n style={\r\n {\r\n // marginRight: \"25px\",\r\n // width: \"100%\",\r\n // position: \"relative\",\r\n // right: \"42px\",\r\n // bottom: \"13px\",\r\n }\r\n }\r\n >\r\n <div\r\n style={{\r\n color: \"#000000\",\r\n fontSize: \"30px\",\r\n fontWeight: \"600\",\r\n // fontFamily: \"Poppins\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n lineHeight: \"150%\",\r\n marginBottom: \"10px\",\r\n }}\r\n >\r\n {t(\"otp.OTPAuthentication\")}\r\n </div>\r\n <div\r\n style={{\r\n color: \"#949597\",\r\n fontSize: \"16px\",\r\n fontWeight: \"400\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n lineHeight: \"33px\",\r\n }}\r\n >\r\n {t(\"otp.EnterOTP\")}\r\n </div>\r\n {/* <div\r\n style={{\r\n color: \"#949597\",\r\n fontSize: \"16px\",\r\n fontWeight: \"400\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n lineHeight: \"33px\",\r\n }}\r\n >\r\n {t(\"otp.GenerateNewOTP\")}\r\n </div> */}\r\n\r\n <div className={classes.OTPalignName}>\r\n {t(\"otp.Hello\")}{\" \"}\r\n {loginState?.username\r\n ? loginState.username.charAt(0).toUpperCase() +\r\n loginState.username.slice(1)\r\n : null}\r\n <ResendOTP\r\n // onResendClick={() => setbtnshow(false)}\r\n onResendClick={handleResendClick}\r\n // onTimerComplete={() => setbtnshow(true)}\r\n renderButton={renderButton}\r\n renderTime={renderTime}\r\n maxTime={loginState?.otpValidFor ?? 60}\r\n className={classes.resendOTPalign}\r\n />\r\n </div>\r\n <div\r\n className={classes.divflex}\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n >\r\n <OTPInput\r\n value={OTP}\r\n onChange={setOTP}\r\n autoFocus\r\n OTPLength={6}\r\n otpType=\"number\"\r\n disabled={false}\r\n secure={!showPassword}\r\n className={classes.otpinputpadding}\r\n />\r\n <IconButton\r\n aria-label=\"toggle password visibility\"\r\n onClick={() => {\r\n if (!showPassword) {\r\n setShowPasswordTime(Date.now() + 5000);\r\n timerRef.current = setTimeout(\r\n () => forceUpdate(Date.now()),\r\n 5000,\r\n );\r\n } else if (showPassword) setShowPasswordTime(0);\r\n }}\r\n onMouseDown={(e) => e.preventDefault()}\r\n disabled={loginState.otploading}\r\n className={classes.ibtnvisible}\r\n >\r\n {showPassword ? <Visibility /> : <VisibilityOff />}\r\n </IconButton>\r\n </div>\r\n {Boolean(OTPError) ? (\r\n <FormHelperText style={{ color: \"red\" }}>\r\n {OTPError}\r\n </FormHelperText>\r\n ) : null}\r\n <div\r\n style={{\r\n display: \"flex\",\r\n gap: \"10px\",\r\n margin: \"42px 0 0 42px\",\r\n width: \"60%\",\r\n }}\r\n >\r\n <GradientButton\r\n // fullWidth\r\n disabled={loginState.otploading}\r\n onClick={() => {\r\n previousStep(false, \"\");\r\n }}\r\n className={classes.otpButtons}\r\n // color={\"var(--theme-color3) \"}\r\n sx={{\r\n border: \"var(--theme-color3)1px solid\",\r\n minWidth: \"50%\",\r\n background: \"var(--theme-color2)\",\r\n borderRadius: \"10px\",\r\n \"&:hover\": {\r\n background: \"var(--theme-color2) !important\",\r\n },\r\n }}\r\n // customstyle = {{color : \"var(--theme-color3) !important\"}}\r\n // starticon={\"West\"}\r\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\r\n >\r\n {t(\"otp.Back\")}\r\n </GradientButton>\r\n <GradientButton\r\n style={{\r\n borderRadius: loginState.loading ? \"50%\" : \"10px\",\r\n height: loginState.loading ? \"40px\" : \"100%\",\r\n width: loginState.loading ? \"0px\" : \"100%\",\r\n minWidth: loginState.loading ? \"40px\" : \"80px\",\r\n }}\r\n fullWidth\r\n disabled={loginState.loading}\r\n onClick={ClickEventHandler}\r\n ref={inputButtonRef}\r\n className={classes.otpButtons}\r\n // endicon={loginState.loading ? null : \"TaskAlt\"}\r\n // rotateIcon=\"scale(1.4)\"\r\n >\r\n {loginState.loading ? (\r\n <CircularProgress size={25} thickness={4.6} />\r\n ) : (\r\n t(\"otp.VerifyOTP\")\r\n )}\r\n </GradientButton>\r\n </div>\r\n </div>\r\n </Grid>\r\n </Container>\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport const OTPModelForm = ({\r\n classes,\r\n OTPResendRequest,\r\n handleClose,\r\n loginState,\r\n VerifyOTP,\r\n OTPError,\r\n setOTPError,\r\n resendFlag,\r\n setNewRequestID = (id) => {},\r\n otpresendCount = 0,\r\n}) => {\r\n const [OTP, setOTP] = useState(\"\");\r\n const [showPasswordTime, setShowPasswordTime] = useState(0);\r\n const showPassword = Date.now() < showPasswordTime;\r\n const [, forceUpdate] = useState<any | null>();\r\n const timerRef = useRef<any>(null);\r\n useEffect(() => {\r\n return () => clearTimeout(timerRef.current);\r\n }, []);\r\n const [btnshow, setbtnshow] = useState(false);\r\n const [resendotpLoading, setResendotpLoading] = useState(false);\r\n const inputButtonRef = useRef<any>(null);\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { t } = useTranslation();\r\n const renderButton = (buttonProps) => {\r\n let { remainingTime, ...other } = buttonProps;\r\n return resendotpLoading ? (\r\n <a\r\n className={clsx(\r\n classes.resendbtnLink,\r\n !btnshow && classes.btnvisibleoff,\r\n )}\r\n style={{ cursor: \"wait\" }}\r\n >\r\n {/* {t(\"otp.ResendOTP\")} {<CircularProgress size={20} color=\"secondary\" />} */}\r\n {t(\"otp.GetNewOTP\")} {<CircularProgress size={20} color=\"secondary\" />}\r\n </a>\r\n ) : (\r\n <a\r\n remainingtime={remainingTime}\r\n {...other}\r\n className={clsx(\r\n classes.resendbtnLink,\r\n !btnshow && classes.btnvisibleoff,\r\n )}\r\n >\r\n {/* {t(\"otp.ResendOTP\")} */}\r\n {t(\"otp.GetNewOTP\")}\r\n </a>\r\n );\r\n };\r\n const ClickEventHandler = () => {\r\n if (!Boolean(OTP) || OTP.length < 6) {\r\n setOTPError(\"otp.EnterOTPDigit\");\r\n } else {\r\n setOTPError(\"\");\r\n VerifyOTP(OTP);\r\n }\r\n };\r\n const handleResendClick = async () => {\r\n setResendotpLoading(true);\r\n const { status, data, message } = await OTPResendRequest(\r\n resendFlag === \"FORGET_PW\"\r\n ? loginState?.requestCd\r\n : loginState?.transactionID,\r\n loginState?.username,\r\n resendFlag,\r\n loginState?.company_ID,\r\n loginState?.branch_cd,\r\n );\r\n setResendotpLoading(false);\r\n if (status === \"0\") {\r\n setNewRequestID(data?.TRAN_CD);\r\n setbtnshow(false);\r\n enqueueSnackbar(message, { variant: \"success\" });\r\n } else {\r\n enqueueSnackbar(message, { variant: \"error\" });\r\n }\r\n };\r\n const handleCloseEvent = () => {\r\n setOTPError(\"\");\r\n setOTP(\"\");\r\n handleClose();\r\n };\r\n const renderTime = (remainingtime) => {\r\n if (parseInt(remainingtime) === 0) {\r\n setTimeout(() => {\r\n setbtnshow(true);\r\n }, 700);\r\n }\r\n return (\r\n <span className={clsx(btnshow && classes.btnvisibleoff)}>\r\n {t(\"otp.OtpExpired\")} {remainingtime}\r\n </span>\r\n );\r\n };\r\n useEffect(() => {\r\n if (loginState?.otpmodelClose ?? false) {\r\n handleCloseEvent();\r\n }\r\n }, [loginState.otpmodelClose]);\r\n\r\n return (\r\n <Fragment>\r\n <Grid alignItems=\"center\">\r\n <div>\r\n <div\r\n style={{\r\n color: \"#000000\",\r\n fontSize: \"30px\",\r\n fontWeight: \"600\",\r\n // fontFamily: \"Poppins\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n lineHeight: \"150%\",\r\n marginBottom: \"10px\",\r\n }}\r\n >\r\n {t(\"otp.OTPAuthentication\")}\r\n </div>\r\n {/* <div\r\n style={{\r\n color: \"#949597\",\r\n fontSize: \"16px\",\r\n fontWeight: \"400\",\r\n alignItems: \"center\",\r\n lineHeight: \"33px\",\r\n }}\r\n >\r\n {t(\"otp.GenerateNewOTP\")}\r\n </div> */}\r\n <div className={classes.OTPalignName}>\r\n {t(\"otp.Hello\")}{\" \"}\r\n {loginState?.username\r\n ? loginState.username.charAt(0).toUpperCase() +\r\n loginState.username.slice(1)\r\n : null}\r\n {loginState.otploading ||\r\n otpresendCount >= 3 ||\r\n loginState?.auth_type === \"TOTP\" ? null : (\r\n <ResendOTP\r\n onResendClick={handleResendClick}\r\n // onTimerComplete={() => setbtnshow(true)}\r\n renderButton={renderButton}\r\n renderTime={renderTime}\r\n maxTime={loginState?.otpValidFor ?? 60}\r\n className={classes.resendOTPalign}\r\n />\r\n )}\r\n </div>\r\n <div\r\n className={classes.divflex}\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n >\r\n <OTPInput\r\n value={OTP}\r\n onChange={setOTP}\r\n autoFocus\r\n OTPLength={6}\r\n otpType=\"number\"\r\n disabled={false}\r\n secure={!showPassword}\r\n className={classes.otpinputpadding}\r\n />\r\n\r\n {/* <IconButton\r\n aria-label=\"toggle password visibility\"\r\n // onClick={() => {\r\n // if (!showPassword) {\r\n // setShowPasswordTime(Date.now() + 5000);\r\n // timerRef.current = setTimeout(\r\n // () => forceUpdate(Date.now()),\r\n // 5000\r\n // );\r\n // } else if (showPassword) setShowPasswordTime(0);\r\n // }}\r\n onMouseDown={(e) => e.preventDefault()}\r\n disabled={loginState.otploading}\r\n className={classes.ibtnvisible}\r\n >\r\n {showPassword ? <VisibilityOffIcon /> : <VisibilityIcon />}\r\n </IconButton> */}\r\n <IconButton\r\n aria-label=\"toggle password visibility\"\r\n onClick={() => {\r\n if (!showPassword) {\r\n setShowPasswordTime(Date.now() + 5000);\r\n timerRef.current = setTimeout(\r\n () => forceUpdate(Date.now()),\r\n 5000,\r\n );\r\n } else if (showPassword) setShowPasswordTime(0);\r\n }}\r\n onMouseDown={(e) => e.preventDefault()}\r\n disabled={loginState.otploading}\r\n className={classes.ibtnvisible}\r\n >\r\n {showPassword ? <Visibility /> : <VisibilityOff />}\r\n </IconButton>\r\n </div>\r\n {Boolean(OTPError) ? (\r\n <FormHelperText style={{ color: \"red\" }}>{OTPError}</FormHelperText>\r\n ) : null}\r\n {loginState?.auth_type === \"TOTP\" ? (\r\n <div style={{ flex: \"auto\" }}>\r\n <a href=\"forgot-totp\" style={{ color: \"var(--theme-color3)\" }}>\r\n Forgot TOTP\r\n </a>\r\n </div>\r\n ) : (\r\n <></>\r\n )}\r\n\r\n <div\r\n style={{\r\n display: \"flex\",\r\n gap: \"10px\",\r\n margin: \"42px 0 0 42px\",\r\n width: \"60%\",\r\n }}\r\n >\r\n <GradientButton\r\n fullWidth\r\n disabled={loginState.otploading}\r\n onClick={handleCloseEvent}\r\n className={classes.otpButtons}\r\n // starticon={\"West\"}\r\n // color={\"var(--theme-color2) !important\"}\r\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\r\n style={{\r\n border: \"var(--theme-color3)1px solid\",\r\n color: \"var(--theme-color2)\",\r\n // background: \"var(--theme-color2)\",\r\n borderRadius: \"10px\",\r\n minWidth: \"48%\",\r\n }}\r\n >\r\n {t(\"otp.Back\")}\r\n </GradientButton>\r\n <GradientButton\r\n style={{\r\n borderRadius: loginState.otploading ? \"50%\" : \"10px\",\r\n height: loginState.otploading ? \"40px\" : \"100%\",\r\n width: loginState.otploading ? \"0px\" : \"100%\",\r\n minWidth: loginState.otploading ? \"40px\" : \"80px\",\r\n }}\r\n // fullWidth\r\n disabled={loginState.loading}\r\n onClick={ClickEventHandler}\r\n ref={inputButtonRef}\r\n className={classes.otpButtons}\r\n >\r\n {loginState.otploading ? (\r\n <CircularProgress size={25} thickness={4.6} />\r\n ) : (\r\n t(\"otp.VerifyOTP\")\r\n )}\r\n </GradientButton>\r\n </div>\r\n </div>\r\n </Grid>\r\n </Fragment>\r\n );\r\n};\r\n","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import { Fragment } from \"react\";\r\nimport { GradientButton } from \"@acuteinfo/common-base\";\r\nimport FingerprintSharpIcon from \"@mui/icons-material/FingerprintSharp\";\r\nimport { CircularProgress, Container, Typography } from \"@mui/material\";\r\nimport { Grid } from \"@mui/material\";\r\nimport \"./verify.css\";\r\nimport { useTranslation } from \"react-i18next\";\r\nexport const VerifyFinger = ({\r\n classes,\r\n loginState,\r\n verifyFinger,\r\n previousStep,\r\n}) => {\r\n const { t } = useTranslation();\r\n return (\r\n <Fragment>\r\n <Container maxWidth=\"xs\">\r\n <Grid alignItems=\"center\">\r\n <div\r\n style={{\r\n marginRight: \"25px\",\r\n width: \"102%\",\r\n // marginBottom: \"55px\",\r\n }}\r\n >\r\n <br />\r\n <div\r\n style={{\r\n color: \"#000000\",\r\n fontSize: \"34px\",\r\n fontWeight: \"600\",\r\n // fontFamily: \"Poppins\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n lineHeight: \"150%\",\r\n marginBottom: \"10px\",\r\n }}\r\n >\r\n {t(\"Biometric.BiometrixAuthentication\")}\r\n </div>\r\n <div\r\n style={{\r\n color: \"#949597\",\r\n fontSize: \"18px\",\r\n fontWeight: \"400\",\r\n // fontFamily: \"Poppins\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n lineHeight: \"33px\",\r\n // marginBottom: \"10px\",\r\n }}\r\n >\r\n {t(\"Biometric.Kindlyplaceyoufinger\")}\r\n </div>\r\n <br />\r\n <Typography variant=\"h5\" style={{ color: \"#000000\" }}>\r\n {t(\"otp.Hello\")} {\"\"}\r\n {` ${\r\n loginState?.username\r\n ? loginState.username.charAt(0).toUpperCase() +\r\n loginState.username.slice(1)\r\n : null\r\n }`}\r\n </Typography>\r\n <br />\r\n <div\r\n className={\r\n loginState?.isBiometricError\r\n ? classes.eFingerUi\r\n : classes.fingerUi\r\n }\r\n >\r\n <div className=\"spinner-wrap\">\r\n <FingerprintSharpIcon\r\n sx={{\r\n fontSize: \"80px\",\r\n opacity: \"0.4\",\r\n borderRadius: \"50%\",\r\n display: \"flex\",\r\n margin: \"0 auto\",\r\n \"&:after\": {\r\n borderBottom: \"2px solid #26A456\",\r\n },\r\n }}\r\n className={\r\n loginState?.isBiometricError ? classes.FingerIcon : null\r\n }\r\n color={loginState?.isBiometricError ? \"error\" : \"inherit\"}\r\n />\r\n {loginState?.isScanning ? (\r\n <>\r\n <div\r\n className=\"spinner-item\"\r\n style={{\r\n border: loginState?.isScanning\r\n ? \"1px solid #949597\"\r\n : \" 1px solid red\",\r\n }}\r\n ></div>\r\n <div\r\n className=\"spinner-item spinner-item--2\"\r\n style={{\r\n border: loginState?.isScanning\r\n ? \"1px solid #949597\"\r\n : \"1px solid red\",\r\n }}\r\n ></div>\r\n <div\r\n className=\"spinner-item spinner-item--3\"\r\n style={{\r\n border: loginState?.isScanning\r\n ? \"1px solid #949597\"\r\n : \"1px solid red\",\r\n }}\r\n ></div>\r\n </>\r\n ) : null}\r\n </div>\r\n </div>\r\n\r\n <div className={classes.biometric}>\r\n <div style={{ marginTop: \"50px\" }}>\r\n <div className={loginState.isScanning ? \"progress\" : \"hide\"}>\r\n <div\r\n className=\"bar\"\r\n style={{ width: loginState.isScanning ? \"30%\" : \"0%\" }}\r\n ></div>\r\n </div>\r\n <h3\r\n style={{\r\n display: \"flex\",\r\n marginTop: \"20px\",\r\n justifyContent: \"space-around\",\r\n color: loginState?.isBiometricError\r\n ? \"rgb(255 0 0 / 65%)\"\r\n : \"inherit\",\r\n }}\r\n >\r\n {loginState?.isBiometricError\r\n ? loginState?.userMessage\r\n : loginState?.loading\r\n ? t(\"Biometric.Loading\")\r\n : loginState?.isScanning\r\n ? t(\"Biometric.Scanning\")\r\n : null}\r\n </h3>\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n style={{\r\n display: \"flex\",\r\n justifyContent: \"center\",\r\n margin: \"42px 0 0 42px\",\r\n // margin: \"38px 0 0 0\",\r\n gap: \"10px\",\r\n }}\r\n >\r\n <GradientButton\r\n fullWidth\r\n disabled={loginState.loading}\r\n onClick={() => {\r\n previousStep(false, \"\");\r\n }}\r\n className={classes.otpButtons}\r\n // starticon={\"West\"}\r\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\r\n // color={\"var(--theme-color3) !important\"}\r\n style={{\r\n border: \"var(--theme-color3)1px solid\",\r\n color: \"var(--theme-color3)\",\r\n background: \"var(--theme-color2)\",\r\n borderRadius: \"10px\",\r\n minWidth: \"48%\",\r\n }}\r\n >\r\n {t(\"otp.Back\")}\r\n </GradientButton>\r\n <GradientButton\r\n style={{\r\n borderRadius: loginState.loading ? \"50%\" : \"10px\",\r\n height: loginState.loading ? \"40px\" : \"100%\",\r\n width: loginState.loading ? \"0px\" : \"100%\",\r\n minWidth: loginState.loading ? \"40px\" : \"80px\",\r\n // width: loginState.loading ? \"0px\" : \"90%\",\r\n // minWidth: loginState.loading ? \"40px\" : \"80px\",\r\n }}\r\n disabled={loginState.loading}\r\n onKeyDown={(e) => e.keyCode === 13 && verifyFinger}\r\n onClick={verifyFinger}\r\n className={classes.otpButtons}\r\n >\r\n {loginState.loading ? (\r\n <CircularProgress\r\n size={25}\r\n thickness={4.6}\r\n style={{ color: \"#fff\" }}\r\n />\r\n ) : (\r\n t(\"Biometric.Verify\")\r\n )}\r\n </GradientButton>\r\n </div>\r\n </Grid>\r\n </Container>\r\n </Fragment>\r\n );\r\n};\r\n","export const capture = async () => {\r\n var MFS100Request = {\r\n Quality: 60,\r\n TimeOut: 10,\r\n };\r\n var jsondata = JSON.stringify(MFS100Request);\r\n const rawResponse = await fetch(\"http://localhost:8004/mfs100/capture\", {\r\n method: \"POST\",\r\n headers: {\r\n Accept: \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: jsondata,\r\n });\r\n const content = await rawResponse.json();\r\n return content;\r\n};\r\n","import CryptoJS from \"crypto-js\";\r\n\r\nconst decryptString = (encryptString: string) => {\r\n var secretKey = \"SUPERACUTE@MKS\";\r\n var keyBytes = CryptoJS.PBKDF2(secretKey, \"Ivan Medvedev\", {\r\n keySize: 48 / 4,\r\n iterations: 1000,\r\n });\r\n console.log(keyBytes.toString());\r\n\r\n // take first 32 bytes as key (like in C# code)\r\n var key = new CryptoJS.lib.WordArray.init(keyBytes.words, 32);\r\n\r\n // // skip first 32 bytes and take next 16 bytes as IV\r\n var iv = new CryptoJS.lib.WordArray.init(keyBytes.words.splice(32 / 4), 16);\r\n\r\n // console.log(key.toString());\r\n //console.log(encryptString, CryptoJS.enc.Base64.parse(encryptString));\r\n\r\n var dec = CryptoJS.AES.decrypt(\r\n {\r\n ciphertext: CryptoJS.enc.Base64.parse(\r\n CryptoJS.enc.Base64.parse(encryptString).toString(CryptoJS.enc.Utf8),\r\n ),\r\n },\r\n key,\r\n {\r\n iv: iv,\r\n },\r\n );\r\n console.log(\"CryptoJS.AES.decrypt\", dec);\r\n return dec.toString(CryptoJS.enc.Utf8).split(String.fromCharCode(0)).join(\"\");\r\n return dec.toString();\r\n};\r\n\r\nexport const matchFinger = async (rows: any, captureFinger: string) => {\r\n var promise = new Promise((resolve, reject) => {\r\n //console.log(\"matchFinger\", rows, typeof rows);\r\n if (typeof rows === \"string\") {\r\n rows = JSON.parse(rows);\r\n }\r\n rows.forEach(async (element: any, i: number) => {\r\n try {\r\n var galleryTemplate = decryptString(element.IMG_DATA);\r\n var MFS100Request = {\r\n GalleryTemplate: galleryTemplate,\r\n ProbTemplate: captureFinger,\r\n BioType: \"Iso\",\r\n };\r\n var jsondata = JSON.stringify(MFS100Request);\r\n await fetch(\"http://localhost:8004/mfs100/verify\", {\r\n method: \"POST\",\r\n headers: {\r\n Accept: \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: jsondata,\r\n })\r\n .then((response: any) => response.json())\r\n .then((response: any) => {\r\n if (response?.ErrorCode === \"0\" && response[\"Status\"]) {\r\n resolve({\r\n status: true,\r\n errorCode: \"0\",\r\n errorMessage: \"\",\r\n isError: false,\r\n sr_cd: element.SR_CD,\r\n });\r\n return;\r\n }\r\n\r\n if (rows.length === i + 1) {\r\n resolve({\r\n status: false,\r\n errorCode: response.ErrorCode,\r\n errorMessage: response.ErrorMessage,\r\n isError: false,\r\n });\r\n return;\r\n }\r\n })\r\n .catch((reason) => {\r\n resolve({\r\n status: false,\r\n errorCode: \"999\",\r\n errorMessage: reason,\r\n isError: true,\r\n });\r\n });\r\n } catch (err) {\r\n console.log(err);\r\n resolve({\r\n status: false,\r\n errorCode: \"999\",\r\n errorMessage: \"Something went wrong!\",\r\n isError: true,\r\n });\r\n }\r\n });\r\n });\r\n return promise;\r\n};\r\n","export const isBase64 = (str: string): boolean => {\r\n if (typeof str !== \"string\") {\r\n return false;\r\n }\r\n const base64Regex =\r\n /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/;\r\n\r\n return base64Regex.test(str);\r\n};\r\n","import { useEffect, useState, useRef, useMemo } from \"react\";\r\nimport { useStyles } from \"./style\";\r\nimport { Grid } from \"@mui/material\";\r\nimport { Container } from \"@mui/material\";\r\nimport { utilFunction } from \"@acuteinfo/common-base\";\r\nimport { isBase64 } from \"./utils\";\r\n\r\nexport const BankDetails = ({ bannerDetails }: any) => {\r\n const [loginImageURL, setLoginImageURL] = useState<any | null>(null);\r\n const urlObj = useRef<any>(null);\r\n const classes = useStyles();\r\n\r\n const banner = useMemo(() => bannerDetails, []);\r\n\r\n useEffect(() => {\r\n if (Boolean(banner?.bannerImg)) {\r\n if (isBase64(banner?.bannerImg)) {\r\n let blob = utilFunction.base64toBlob(banner?.bannerImg);\r\n urlObj.current =\r\n typeof blob === \"object\" && Boolean(blob)\r\n ? URL.createObjectURL(blob)\r\n : \"\";\r\n setLoginImageURL(urlObj.current);\r\n }\r\n else {\r\n setLoginImageURL(banner?.bannerImg);\r\n }\r\n }\r\n }, [banner]);\r\n return (\r\n <>\r\n {/* <Grid container style={{ height: \"100vh\", overflow: \"hidden\" }}> */}\r\n <Grid item xs={6} md={6} lg={6} className={classes.loginLeft}>\r\n <Grid item xs={12} md={12} lg={12} style={{ height: \"70vh\" }}>\r\n <img\r\n alt=\"\"\r\n style={{\r\n width: \"100%\",\r\n height: \"100%\",\r\n objectFit: \"cover\",\r\n objectPosition: \"center\",\r\n }}\r\n src={Boolean(loginImageURL) ? loginImageURL : \"\"}\r\n />\r\n </Grid>\r\n <Grid\r\n item\r\n xs={12}\r\n md={12}\r\n lg={12}\r\n style={{\r\n height: \"30vh\",\r\n background: \"var(--theme-color5)\",\r\n }}\r\n >\r\n <Container maxWidth=\"sm\">\r\n <div\r\n className=\"text\"\r\n style={{\r\n color: \"white\",\r\n fontStyle: \"normal\",\r\n fontSize: \"35px\",\r\n paddingTop: \"30px\",\r\n }}\r\n >\r\n {banner?.bannerTitle ?? \"\"}\r\n <span style={{ marginLeft: \"8px\", fontWeight: \"900\" }}>\r\n {/* EasyBank */}\r\n </span>\r\n </div>\r\n <div\r\n style={{\r\n lineHeight: \"27px\",\r\n fontSize: \"15px\",\r\n fontWeight: \"500px\",\r\n letterSpacing: \"0.02em\",\r\n color: \"#ebedee\",\r\n maxWidth: \"464px\",\r\n }}\r\n >\r\n {banner?.bannerNote ?? \"\"}\r\n </div>\r\n </Container>\r\n </Grid>\r\n </Grid>\r\n {/* </Grid> */}\r\n </>\r\n );\r\n};\r\n","import {\r\n TextField,\r\n GradientButton,\r\n utilFunction,\r\n} from \"@acuteinfo/common-base\";\r\n\r\nimport {\r\n CircularProgress,\r\n Container,\r\n FormHelperText,\r\n Grid,\r\n} from \"@mui/material\";\r\nimport { Fragment, useRef, useState } from \"react\";\r\n// import { ResetPassword } from \"./api\";\r\nimport { useSnackbar } from \"notistack\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nexport const PasswordRotation = ({\r\n classes,\r\n ResetPassword,\r\n open,\r\n username,\r\n accessToken,\r\n tokenType,\r\n handleClose,\r\n}) => {\r\n const inputButtonRef = useRef<any>(null);\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { t } = useTranslation();\r\n const [input, setInput] = useState({\r\n userName: username,\r\n oldpassword: \"\",\r\n password: \"\",\r\n confirmpassword: \"\",\r\n });\r\n const [pwdReset, setPasswordReset] = useState({\r\n isError: false,\r\n errorMessage: \"\",\r\n isLoading: false,\r\n isoldPwdError: false,\r\n oldpassworderror: \"\",\r\n isnewpwdError: false,\r\n newpassworderror: \"\",\r\n isconfirmnewpwdError: false,\r\n confirmnewpassworderror: \"\",\r\n });\r\n\r\n const handleCloseEvent = () => {\r\n handleClose(\"\");\r\n };\r\n const ClickEventHandler = async () => {\r\n let isError = false;\r\n let setPwdData = {\r\n isError: false,\r\n errorMessage: \"\",\r\n isLoading: false,\r\n isoldPwdError: false,\r\n oldpassworderror: \"\",\r\n isnewpwdError: false,\r\n newpassworderror: \"\",\r\n isconfirmnewpwdError: false,\r\n confirmnewpassworderror: \"\",\r\n };\r\n if (!Boolean(input.oldpassword)) {\r\n setPwdData.isoldPwdError = true;\r\n setPwdData.oldpassworderror = \"Current Password is required.\";\r\n isError = true;\r\n }\r\n\r\n let pwdData = utilFunction.ValidatePassword(input.password);\r\n if (Boolean(pwdData)) {\r\n setPwdData.isnewpwdError = true;\r\n setPwdData.newpassworderror = pwdData;\r\n isError = true;\r\n }\r\n if (\r\n Boolean(input.oldpassword) &&\r\n Boolean(input.password) &&\r\n input.oldpassword === input.password\r\n ) {\r\n setPwdData.isnewpwdError = true;\r\n setPwdData.newpassworderror =\r\n \"The new password cannot be the same as the old password\";\r\n isError = true;\r\n }\r\n if (!Boolean(input.confirmpassword)) {\r\n setPwdData.isconfirmnewpwdError = true;\r\n setPwdData.confirmnewpassworderror = \"Confirm new password is required.\";\r\n isError = true;\r\n } else if (\r\n Boolean(input.password) &&\r\n input.password !== input.confirmpassword\r\n ) {\r\n setPwdData.isconfirmnewpwdError = true;\r\n setPwdData.confirmnewpassworderror =\r\n \"New Password and Confirm Password did not matched\";\r\n isError = true;\r\n }\r\n if (isError) {\r\n setPasswordReset(setPwdData);\r\n } else {\r\n setPasswordReset((values) => ({ ...values, isLoading: true }));\r\n let response = await ResetPassword(\r\n input.userName,\r\n input.oldpassword,\r\n input.password,\r\n accessToken,\r\n tokenType,\r\n );\r\n setPasswordReset((values) => ({ ...values, isLoading: false }));\r\n if (response.status === \"0\") {\r\n enqueueSnackbar(\"Password successfully changed.\", {\r\n variant: \"success\",\r\n });\r\n handleClose(\"0\");\r\n } else {\r\n setPasswordReset((values) => ({\r\n ...values,\r\n isError: true,\r\n errorMessage: response.message,\r\n }));\r\n }\r\n }\r\n };\r\n const handleChange = (event) => {\r\n const name = event.target.name;\r\n let value = event.target.value;\r\n if (name === \"oldpassword\" && Boolean(value)) {\r\n setPasswordReset((values) => ({ ...values, isoldPwdError: false }));\r\n } else if (name === \"password\" && Boolean(value)) {\r\n setPasswordReset((values) => ({ ...values, isnewpwdError: false }));\r\n } else if (name === \"confirmpassword\" && Boolean(value)) {\r\n setPasswordReset((values) => ({\r\n ...values,\r\n isconfirmnewpwdError: false,\r\n }));\r\n }\r\n setInput((values) => ({ ...values, [name]: value }));\r\n };\r\n\r\n return (\r\n <Fragment>\r\n <Container maxWidth=\"xs\">\r\n <Grid alignItems=\"center\">\r\n <div\r\n style={{\r\n color: \"#000000 !important\",\r\n fontSize: \"30px\",\r\n fontWeight: \"600\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n }}\r\n >\r\n <h3>Password Rotation</h3>\r\n </div>\r\n <div\r\n className=\"\"\r\n style={{\r\n color: \"#949597\",\r\n fontSize: \"18px\",\r\n fontWeight: \"400\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n width: \"360px\",\r\n }}\r\n >\r\n Please Verify OTP\r\n </div>\r\n <div className={classes.formWrap}>\r\n <TextField\r\n label={\"User ID\"}\r\n placeholder=\"Enter User ID\"\r\n fullWidth\r\n type={\"text\"}\r\n name=\"userName\"\r\n value={input.userName || \"\"}\r\n onChange={handleChange}\r\n InputLabelProps={{ shrink: true }}\r\n disabled={true}\r\n autoComplete=\"off\"\r\n inputProps={{ maxLength: 16 }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n <TextField\r\n autoFocus={true}\r\n label={\"Current Password\"}\r\n placeholder=\"Enter Current Password\"\r\n fullWidth\r\n type={\"password\"}\r\n name=\"oldpassword\"\r\n value={input.oldpassword || \"\"}\r\n onChange={handleChange}\r\n error={pwdReset.isoldPwdError}\r\n helperText={\r\n pwdReset.isoldPwdError ? t(pwdReset.oldpassworderror) : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={pwdReset.isLoading}\r\n autoComplete=\"off\"\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n inputProps={{ maxLength: 16 }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n <TextField\r\n label={\"New Password\"}\r\n placeholder=\"Enter New Password\"\r\n fullWidth\r\n type={\"password\"}\r\n name=\"password\"\r\n value={input.password || \"\"}\r\n onChange={handleChange}\r\n error={pwdReset.isnewpwdError}\r\n helperText={\r\n pwdReset.isnewpwdError ? t(pwdReset.newpassworderror) : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={pwdReset.isLoading}\r\n autoComplete=\"off\"\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n inputProps={{ maxLength: 16 }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n <TextField\r\n label={\"Confirm New Password\"}\r\n placeholder=\"Enter confirm new password\"\r\n fullWidth\r\n type={\"password\"}\r\n name=\"confirmpassword\"\r\n value={input.confirmpassword || \"\"}\r\n onChange={handleChange}\r\n error={pwdReset.isconfirmnewpwdError}\r\n helperText={\r\n pwdReset.isconfirmnewpwdError\r\n ? t(pwdReset.confirmnewpassworderror)\r\n : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={pwdReset.isLoading}\r\n autoComplete=\"off\"\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n inputProps={{ maxLength: 16 }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n {pwdReset.isError ? (\r\n <FormHelperText style={{ color: \"red\" }}>\r\n {pwdReset.errorMessage}\r\n </FormHelperText>\r\n ) : null}\r\n </div>\r\n <div\r\n style={{\r\n display: \"flex\",\r\n gap: \"10px\",\r\n margin: \"20px 0 0 10px\",\r\n width: \"94%\",\r\n }}\r\n >\r\n <GradientButton\r\n fullWidth\r\n disabled={pwdReset.isLoading}\r\n onClick={handleCloseEvent}\r\n className={classes.otpButtons}\r\n style={{\r\n border: \"var(--theme-color3)1px solid\",\r\n color: \"var(--theme-color3)\",\r\n // pebbackground: \"var(--theme-color2)\",\r\n borderRadius: \"10px\",\r\n }}\r\n >\r\n Back\r\n </GradientButton>\r\n <GradientButton\r\n style={{\r\n borderRadius: pwdReset.isLoading ? \"50%\" : \"10px\",\r\n height: pwdReset.isLoading ? \"40px\" : \"100%\",\r\n width: pwdReset.isLoading ? \"0px\" : \"100%\",\r\n minWidth: pwdReset.isLoading ? \"40px\" : \"80px\",\r\n }}\r\n fullWidth\r\n disabled={pwdReset.isLoading}\r\n onClick={ClickEventHandler}\r\n ref={inputButtonRef}\r\n className={classes.otpButtons}\r\n >\r\n {pwdReset.isLoading ? (\r\n <CircularProgress size={25} thickness={4.6} />\r\n ) : (\r\n \"Update\"\r\n )}\r\n </GradientButton>\r\n </div>\r\n </Grid>\r\n </Container>\r\n </Fragment>\r\n );\r\n};\r\n","import { utilFunction } from \"@acuteinfo/common-base\";\r\n\r\nimport { useReducer, useEffect, useState, useRef } from \"react\";\r\nimport { useStyles } from \"./style\";\r\nimport { UsernamePasswordField } from \"./usernamePassword\";\r\nimport { OTPModel, OTPModelForm } from \"./otpPopup\";\r\nimport { VerifyFinger } from \"./verifyFinger\";\r\nimport * as API from \"./api\";\r\nimport { matchFinger } from \"./biometric\";\r\nimport { Grid, Tooltip } from \"@mui/material\";\r\nimport { BankDetails } from \"./bankDetails\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { PasswordRotation } from \"./passwordRotation\";\r\nimport { isBase64 } from \"./utils\";\r\n\r\nconst inititalState = {\r\n username: \"\",\r\n firstName: \"\",\r\n lastName: \"\",\r\n loading: false,\r\n otploading: false,\r\n isError: false,\r\n isUsernameError: false,\r\n isPasswordError: false,\r\n userMessage: \"\",\r\n OtpuserMessage: \"\",\r\n userMessageforpassword: \"\",\r\n userMessageforusername: \"\",\r\n currentFlow: \"username\",\r\n transactionID: \"\",\r\n access_token: \"\",\r\n token_type: \"\",\r\n otpmodelClose: false,\r\n authType: \"\",\r\n isScanning: false,\r\n auth_data: [],\r\n company_ID: \"\",\r\n Branch_CD: \"\",\r\n auth_type: \"O\",\r\n otpValidFor: 60,\r\n};\r\n\r\nconst reducer = (state, action) => {\r\n switch (action.type) {\r\n case \"inititateUserFingerVerification\":\r\n case \"inititateOTPVerification\": {\r\n return {\r\n ...state,\r\n loading: true,\r\n isError: false,\r\n isUsernameError: false,\r\n isPasswordError: false,\r\n isOTPError: false,\r\n isBiometricError: false,\r\n userMessage: \"\",\r\n };\r\n }\r\n case \"inititateUserFingerScanner\": {\r\n return { ...state, isScanning: true, isBiometricError: false };\r\n }\r\n case \"usernameandpasswordrequired\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n isError: true,\r\n isUsernameError: true,\r\n isPasswordError: true,\r\n otploading: false,\r\n userMessage: action?.payload?.error,\r\n userMessageforpassword: action?.payload?.errorPassword,\r\n userMessageforusername: action?.payload?.errorUsername,\r\n username: \"\",\r\n transactionID: \"\",\r\n };\r\n }\r\n case \"passwordVerificationFailure\":\r\n return {\r\n ...state,\r\n loading: false,\r\n isError: true,\r\n isUsernameError: false,\r\n isPasswordError: true,\r\n otploading: false,\r\n userMessage: action?.payload?.error,\r\n userMessageforpassword: action?.payload?.errorPassword,\r\n username: \"\",\r\n transactionID: \"\",\r\n };\r\n case \"usernameVerificationFailure\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n isError: true,\r\n isUsernameError: true,\r\n isPasswordError: false,\r\n otploading: false,\r\n userMessage: action?.payload?.error,\r\n userMessageforusername: action?.payload?.errorUsername,\r\n username: \"\",\r\n transactionID: \"\",\r\n };\r\n }\r\n case \"inititatePasswordVerification\": {\r\n return {\r\n ...state,\r\n loading: true,\r\n isError: false,\r\n isUsernameError: false,\r\n isPasswordError: false,\r\n otploading: false,\r\n userMessage: \"\",\r\n userMessageforusername: \"\",\r\n userMessageforpassword: \"\",\r\n username: \"\",\r\n transactionID: \"\",\r\n access_token: \"\",\r\n };\r\n }\r\n case \"passwordRotation\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n username: action?.payload?.username,\r\n access_token: action?.payload?.access_token,\r\n token_type: action?.payload?.token_type,\r\n };\r\n }\r\n case \"passwordRotationsuccess\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n otpmodelClose: Boolean(action?.payload?.otpmodelclose),\r\n };\r\n }\r\n case \"passwordVerificationSuccessful\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n otploading: false,\r\n transactionID: action?.payload?.transactionID,\r\n username: action?.payload?.username,\r\n auth_type: action?.payload?.auth_type,\r\n OtpuserMessage: \"\",\r\n access_token: action?.payload?.access_token,\r\n token_type: action?.payload?.token_type,\r\n otpmodelClose: false,\r\n currentFlow: \"OTP\",\r\n authType: action?.payload?.authType,\r\n auth_data: action?.payload?.auth_data,\r\n otpValidFor: action?.payload?.otpValidFor,\r\n company_ID: action?.paylod?.company_ID,\r\n };\r\n }\r\n case \"inititatebiometricVerification\": {\r\n return {\r\n ...state,\r\n loading: true,\r\n otploading: true,\r\n OtpuserMessage: \"\",\r\n otpmodelClose: false,\r\n };\r\n }\r\n case \"biometricVerificationFailure\":\r\n return {\r\n ...state,\r\n loading: false,\r\n isError: true,\r\n isBiometricError: true,\r\n userMessage: action?.payload?.error,\r\n isScanning: false,\r\n };\r\n case \"biometricVerificationSuccessful\":\r\n return {\r\n ...state,\r\n loading: false,\r\n isError: false,\r\n isBiometricError: false,\r\n state: action.payload,\r\n isScanning: false,\r\n };\r\n case \"OTPVerificationComplate\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n otploading: false,\r\n OtpuserMessage: \"\",\r\n };\r\n }\r\n case \"OTPVerificationFailed\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n otploading: false,\r\n OtpuserMessage: action?.payload?.error,\r\n otpmodelClose: Boolean(action?.payload?.otpmodelclose),\r\n };\r\n }\r\n case \"OTPResendSuccess\": {\r\n return {\r\n ...state,\r\n transactionID: action?.payload?.transactionID,\r\n };\r\n }\r\n case \"backToUsernameVerification\": {\r\n return {\r\n ...inititalState,\r\n isPasswordError: action?.payload?.isError,\r\n userMessageforpassword: action?.payload?.errorMessage,\r\n };\r\n }\r\n\r\n default: {\r\n return state;\r\n }\r\n }\r\n};\r\n\r\ninterface AuthControllerProps {\r\n bannerDetails: {\r\n bannerImg: string;\r\n bannerTitle: string;\r\n bannerNote: string;\r\n };\r\n logoUrl: string;\r\n loginFn: Function;\r\n veirfyUsernameandPassword: Function;\r\n verifyOTP: Function;\r\n OTPResendRequest: Function;\r\n ResetPassword: Function;\r\n LanguageComponent: React.ComponentType<any>;\r\n forgotPasswordEndpoint: string;\r\n}\r\n\r\nexport const AuthControllerWrapper: React.FC<AuthControllerProps> = ({\r\n bannerDetails,\r\n logoUrl,\r\n loginFn,\r\n veirfyUsernameandPassword,\r\n verifyOTP,\r\n OTPResendRequest,\r\n ResetPassword,\r\n LanguageComponent,\r\n forgotPasswordEndpoint\r\n}) => {\r\n console.log(\"logoUrl\", logoUrl, typeof logoUrl)\r\n // const { isLoggedIn, login } = useContext(AuthContext);\r\n const classes = useStyles();\r\n // const navigate = useNavigate();\r\n const [loginState, dispath] = useReducer(reducer, inititalState);\r\n const [openpwdreset, setOpenPwdReset] = useState(false);\r\n const failureCount = useRef(0);\r\n const [dashboardLogoURL, setDashboardLogoURL] = useState<any | null>(null);\r\n const urlObj = useRef<any>(null);\r\n const { t } = useTranslation();\r\n const otpResendRef = useRef(1);\r\n\r\n useEffect(() => {\r\n if (Boolean(logoUrl)) {\r\n if (isBase64(logoUrl)) {\r\n let blob = utilFunction.base64toBlob(logoUrl);\r\n urlObj.current =\r\n typeof blob === \"object\" && Boolean(blob)\r\n ? URL.createObjectURL(blob)\r\n : \"\";\r\n setDashboardLogoURL(urlObj.current);\r\n }\r\n else {\r\n setDashboardLogoURL(logoUrl);\r\n }\r\n }\r\n }, [logoUrl]);\r\n\r\n const verifyUsernamePassword = async (username, password) => {\r\n if (Boolean(username) && Boolean(password)) {\r\n dispath({ type: \"inititatePasswordVerification\" });\r\n const { status, data, message, responseType, access_token } =\r\n await veirfyUsernameandPassword(username, password);\r\n if (status === \"0\" && responseType === \"S\") {\r\n dispath({\r\n type: \"passwordRotation\",\r\n payload: {\r\n username: username,\r\n access_token: access_token?.access_token,\r\n token_type: access_token?.token_type,\r\n },\r\n });\r\n setOpenPwdReset(true);\r\n } else if (status === \"0\") {\r\n dispath({\r\n type: \"passwordVerificationSuccessful\",\r\n payload: {\r\n transactionID: data?.REQUEST_CD,\r\n username: username,\r\n access_token: access_token?.access_token,\r\n token_type: access_token?.token_type,\r\n authType: data?.AUTH_TYPE,\r\n auth_data: [\r\n {\r\n company_ID: data?.BASE_COMP_CD ?? \"\",\r\n branch_cd: data?.BASE_BRANCH_CD,\r\n },\r\n ],\r\n otpValidFor: data?.OTP_VALID,\r\n },\r\n });\r\n } else {\r\n dispath({\r\n type: \"passwordVerificationFailure\",\r\n payload: { error: message, errorPassword: message },\r\n });\r\n }\r\n } else if (!Boolean(username) && !Boolean(password)) {\r\n dispath({\r\n type: \"usernameandpasswordrequired\",\r\n payload: {\r\n error: \"UsernamenandPasswordisRequired\",\r\n errorUsername: \"UsernameisRequired\",\r\n errorPassword: \"PasswordisRequired\",\r\n },\r\n });\r\n } else if (!Boolean(username)) {\r\n dispath({\r\n type: \"usernameVerificationFailure\",\r\n payload: {\r\n error: \"UsernameisRequired\",\r\n errorUsername: \"UsernameisRequired\",\r\n },\r\n });\r\n } else {\r\n dispath({\r\n type: \"passwordVerificationFailure\",\r\n payload: {\r\n error: \"PasswordisRequired\",\r\n errorPassword: \"PasswordisRequired\",\r\n },\r\n });\r\n }\r\n };\r\n\r\n const VerifyOTP = async (OTPNumber) => {\r\n if (Boolean(OTPNumber) && OTPNumber.toString().length === 6) {\r\n dispath({ type: \"inititateOTPVerification\" });\r\n const { status, data, message } = await verifyOTP(\r\n loginState.transactionID,\r\n // loginState.app_transactionId,\r\n loginState.username,\r\n OTPNumber,\r\n loginState.access_token,\r\n loginState.token_type,\r\n loginState.authType,\r\n );\r\n console.log(\"menuapierror\", message);\r\n if (status === \"0\") {\r\n // try {\r\n // audio.play();\r\n // } catch (error) {\r\n // console.log(error);\r\n // }\r\n dispath({ type: \"OTPVerificationComplate\" });\r\n loginFn(data);\r\n } else if (status === \"999\") {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: message, otpmodelclose: true },\r\n });\r\n // enqueueSnackbar(message, { variant: \"error\" });\r\n } else {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: message, otpmodelclose: false },\r\n });\r\n }\r\n } else {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: \"Please enter a 6 digit OTP number\" },\r\n });\r\n }\r\n };\r\n\r\n const handlePasswordRotationClose = (flag) => {\r\n if (flag === \"0\") {\r\n dispath({\r\n type: \"passwordRotationsuccess\",\r\n payload: { otpmodelclose: true },\r\n });\r\n }\r\n setOpenPwdReset(false);\r\n };\r\n const changeUserName = (isError = false, errorMessage = \"\") => {\r\n dispath({\r\n type: \"backToUsernameVerification\",\r\n payload: {\r\n isError: isError,\r\n errorMessage: errorMessage,\r\n },\r\n });\r\n };\r\n const verifyFinger = async () => {\r\n try {\r\n dispath({ type: \"inititateUserFingerScanner\" });\r\n const fingerResponse = await API.capture();\r\n if (fingerResponse?.ErrorCode === \"0\") {\r\n dispath({ type: \"inititateUserFingerVerification\" });\r\n const promise: any = await matchFinger(\r\n loginState.auth_data,\r\n fingerResponse.IsoTemplate,\r\n );\r\n if (promise.isError) {\r\n dispath({\r\n type: \"biometricVerificationFailure\",\r\n payload: {\r\n error: promise?.errorMessage ?? \"Something went wrong.\",\r\n },\r\n });\r\n } else {\r\n const { status, data, message } = await verifyOTP(\r\n loginState.transactionID,\r\n loginState.username,\r\n String(promise?.sr_cd ?? \"0\"),\r\n loginState.access_token,\r\n loginState.token_type,\r\n loginState.authType,\r\n promise.status ? \"Y\" : \"N\",\r\n );\r\n if (status === \"0\" && promise.status) {\r\n dispath({ type: \"biometricVerificationSuccessful\" });\r\n loginFn(data);\r\n } else if (status === \"0\" && !promise.status) {\r\n failureCount.current = failureCount.current + 1;\r\n dispath({\r\n type: \"biometricVerificationFailure\",\r\n payload: {\r\n error: \"Finger Not Match.Please Try Again\",\r\n },\r\n });\r\n if (failureCount.current >= 3)\r\n changeUserName(true, \"Finger Not Match.Please Try Again\");\r\n } else if (status === \"99\") {\r\n dispath({\r\n type: \"biometricVerificationFailure\",\r\n payload: {\r\n error: message ?? \"Finger Not Match.Please Try Again\",\r\n },\r\n });\r\n } else if (status === \"999\") {\r\n dispath({\r\n type: \"biometricVerificationFailure\",\r\n payload: {\r\n error: message ?? \"Finger Not Match.Please Try Again\",\r\n },\r\n });\r\n changeUserName(\r\n true,\r\n message ?? \"Finger Not Match.Please Try Again\",\r\n );\r\n } else {\r\n dispath({\r\n type: \"biometricVerificationFailure\",\r\n payload: {\r\n error: message ?? \"Finger Not Match.Please Try Again\",\r\n },\r\n });\r\n }\r\n }\r\n } else {\r\n dispath({\r\n type: \"biometricVerificationFailure\",\r\n payload: {\r\n error:\r\n fingerResponse?.ErrorMessage ?? t(\"Biometric.MFS100NotFound\"),\r\n },\r\n });\r\n }\r\n } catch (e: any) {\r\n dispath({\r\n type: \"biometricVerificationFailure\",\r\n payload: {\r\n error: e?.message ?? t(\"Biometric.Unknownerroroccured\"),\r\n },\r\n });\r\n }\r\n };\r\n return (\r\n <>\r\n <Grid container style={{ height: \"100vh\", overflow: \"hidden\" }}>\r\n <BankDetails bannerDetails={bannerDetails} />\r\n <Grid item xs={11} md={6} lg={6} sm={6}>\r\n <Grid\r\n container\r\n direction=\"row\"\r\n justifyContent=\"flex-end\"\r\n alignItems=\"center\"\r\n padding={\"25px\"}\r\n >\r\n <Tooltip describeChild title=\"Enfinity-CBS-UI-V1.0.17\">\r\n <img\r\n src={Boolean(dashboardLogoURL) ? dashboardLogoURL : \"\"}\r\n alt=\"Logo\"\r\n />\r\n </Tooltip>\r\n </Grid>\r\n\r\n {/* long dropdown */}\r\n <Grid\r\n container\r\n direction=\"row\"\r\n justifyContent=\"flex-end\"\r\n alignItems=\"center\"\r\n padding={\"0 35px 0 0\"}\r\n >\r\n <LanguageComponent />\r\n </Grid>\r\n\r\n {openpwdreset ? (\r\n <PasswordRotation\r\n classes={classes}\r\n ResetPassword={ResetPassword}\r\n open={openpwdreset}\r\n username={loginState.username}\r\n accessToken={loginState.access_token}\r\n tokenType={loginState.token_type}\r\n handleClose={handlePasswordRotationClose}\r\n />\r\n ) : (\r\n <>\r\n {loginState.currentFlow === \"username\" ? (\r\n <UsernamePasswordField\r\n key=\"username\"\r\n classes={classes}\r\n loginState={loginState}\r\n verifyUsernamePassword={verifyUsernamePassword}\r\n forgotPasswordEndpoint={forgotPasswordEndpoint}\r\n />\r\n ) : (\r\n <>\r\n {loginState.authType === \"OTP\" ? (\r\n <OTPModel\r\n key=\"otp\"\r\n OTPResendRequest={OTPResendRequest}\r\n classes={classes}\r\n loginState={loginState}\r\n VerifyOTP={VerifyOTP}\r\n previousStep={changeUserName}\r\n OTPError={t(loginState?.OtpuserMessage ?? \"\")}\r\n setOTPError={(error) => {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: error },\r\n });\r\n }}\r\n open={true}\r\n handleClose={changeUserName}\r\n resendFlag={\"LOGIN\"}\r\n setNewRequestID={(newRequestID) => {\r\n dispath({\r\n type: \"OTPResendSuccess\",\r\n payload: { transactionID: newRequestID },\r\n });\r\n otpResendRef.current = otpResendRef.current + 1;\r\n }}\r\n otpresendCount={otpResendRef.current}\r\n />\r\n ) : loginState.authType === \"TOTP\" ? (\r\n <>\r\n {\" \"}\r\n <OTPModelForm\r\n key={\"OTPForm\"}\r\n OTPResendRequest={OTPResendRequest}\r\n classes={classes}\r\n // handleClose={() => {}}\r\n handleClose={changeUserName}\r\n loginState={loginState}\r\n VerifyOTP={VerifyOTP}\r\n OTPError={loginState?.OtpuserMessage ?? \"\"}\r\n setOTPError={(error) => {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: error },\r\n });\r\n }}\r\n resendFlag={\"LOGIN\"}\r\n setNewRequestID={(newRequestID) => {\r\n dispath({\r\n type: \"OTPResendSuccess\",\r\n payload: { transactionID: newRequestID },\r\n });\r\n otpResendRef.current = otpResendRef.current + 1;\r\n }}\r\n otpresendCount={otpResendRef.current}\r\n />\r\n </>\r\n ) : (\r\n <VerifyFinger\r\n key=\"biometric\"\r\n classes={classes}\r\n loginState={loginState}\r\n verifyFinger={verifyFinger}\r\n previousStep={changeUserName}\r\n />\r\n )}\r\n </>\r\n )}\r\n </>\r\n )}\r\n </Grid>\r\n </Grid>\r\n </>\r\n );\r\n};\r\n","import { TextField, GradientButton } from \"@acuteinfo/common-base\";\r\n\r\nimport { Fragment, useState, useEffect, useRef } from \"react\";\r\nimport {\r\n CircularProgress,\r\n FormHelperText,\r\n IconButton,\r\n InputAdornment,\r\n} from \"@mui/material\";\r\nimport Visibility from \"@mui/icons-material/Visibility\";\r\nimport VisibilityOff from \"@mui/icons-material/VisibilityOff\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nexport const ForgotPasswordFields = ({ classes, loginState, onSubmit, navigate, loginPageEndpoint }) => {\r\n console.log(\"lginstate\", loginState)\r\n const [input, setInput] = useState({\r\n userName: loginState.workingState === 1 ? loginState?.username : \"\",\r\n mobileno: \"\",\r\n password: \"\",\r\n confirmpassword: \"\",\r\n });\r\n console.log(\"input\", input)\r\n const inputRef = useRef<any>(null);\r\n const inputPassRef = useRef<any>(null);\r\n const inputButtonRef = useRef<any>(null);\r\n const [showPasswordTime, setShowPasswordTime] = useState(0);\r\n const [showConfirmPasswordTime, setShowConfirmPasswordTime] = useState(0);\r\n const showPassword = Date.now() < showPasswordTime;\r\n const showConfirmPassword = Date.now() < showConfirmPasswordTime;\r\n const [, forceUpdate] = useState<any | null>();\r\n const timerRef = useRef<any>(null);\r\n\r\n useEffect(() => {\r\n return () => clearTimeout(timerRef.current);\r\n }, []);\r\n // const navigate = useNavigate();\r\n const { t } = useTranslation();\r\n const handleChange = (event) => {\r\n const name = event.target.name;\r\n let value = event.target.value;\r\n if (name === \"userName\" && value) {\r\n loginState.isUsernameError = false;\r\n }\r\n if (name === \"mobileno\" && value) {\r\n value = value.replace(/\\D/g, \"\");\r\n if (Boolean(value)) {\r\n loginState.isMobileError = false;\r\n }\r\n }\r\n setInput((values) => ({ ...values, [name]: value }));\r\n };\r\n useEffect(() => {\r\n if (loginState.workingState === 1) {\r\n setTimeout(() => {\r\n inputPassRef?.current?.focus?.();\r\n }, 2000);\r\n }\r\n }, [loginState.workingState]);\r\n return (\r\n <Fragment>\r\n <div className={classes.formWrap}>\r\n <TextField\r\n autoFocus={true}\r\n label={t(\"UserID\")}\r\n placeholder={String(t(\"UserID\"))}\r\n fullWidth\r\n type={\"text\"}\r\n name=\"userName\"\r\n value={input.userName || \"\"}\r\n onChange={handleChange}\r\n error={loginState.isUsernameError}\r\n helperText={\r\n loginState.isUsernameError\r\n ? t(loginState.userMessageforusername)\r\n : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={\r\n loginState.loading\r\n ? true\r\n : loginState.workingState === 0\r\n ? false\r\n : true\r\n }\r\n autoComplete=\"off\"\r\n ref={inputRef}\r\n inputProps={{ maxLength: 16 }}\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n {loginState.workingState === 0 ? (\r\n <TextField\r\n label={t(\"MobileNo\")}\r\n placeholder=\"Enter Mobile No.\"\r\n // placeholder={String(t(\"EnterMobileNo\"))}\r\n fullWidth\r\n type={\"text\"}\r\n name=\"mobileno\"\r\n value={input.mobileno || \"\"}\r\n onChange={handleChange}\r\n error={loginState.isMobileError}\r\n helperText={\r\n loginState.isMobileError\r\n ? t(loginState.userMessageforMobileno)\r\n : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={\r\n loginState.loading\r\n ? true\r\n : loginState.workingState === 0\r\n ? false\r\n : true\r\n }\r\n autoComplete=\"off\"\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n inputProps={{ maxLength: 13 }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n ) : null}\r\n {loginState.workingState === 1 ? (\r\n <>\r\n <TextField\r\n autoFocus={true}\r\n label={t(\"Password\")}\r\n placeholder=\"Enter Password\"\r\n fullWidth\r\n type={showPassword ? \"text\" : \"password\"}\r\n name=\"password\"\r\n value={input.password || \"\"}\r\n onChange={handleChange}\r\n error={loginState.isPasswordError}\r\n helperText={\r\n loginState.isPasswordError\r\n ? t(loginState.userMessageforPassword)\r\n : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={loginState.loading}\r\n autoComplete=\"off\"\r\n ref={inputPassRef}\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n InputProps={{\r\n endAdornment: (\r\n <InputAdornment position=\"end\">\r\n <IconButton\r\n aria-label=\"toggle password visibility\"\r\n onClick={() => {\r\n if (!showPassword) {\r\n setShowPasswordTime(Date.now() + 5000);\r\n timerRef.current = setTimeout(\r\n () => forceUpdate(Date.now()),\r\n 5000\r\n );\r\n } else if (showPassword) setShowPasswordTime(0);\r\n }}\r\n onMouseDown={(e) => e.preventDefault()}\r\n disabled={loginState.loading}\r\n >\r\n {showPassword ? <Visibility /> : <VisibilityOff />}\r\n </IconButton>\r\n </InputAdornment>\r\n ),\r\n }}\r\n inputProps={{ maxLength: 16 }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n <TextField\r\n label={t(\"ConfirmPassword\")}\r\n placeholder={String(t(\"EnterConfirmPassword\"))}\r\n fullWidth\r\n type={showConfirmPassword ? \"text\" : \"password\"}\r\n name=\"confirmpassword\"\r\n value={input.confirmpassword || \"\"}\r\n onChange={handleChange}\r\n error={loginState.isConfirmPasswordError}\r\n helperText={\r\n loginState.isConfirmPasswordError\r\n ? t(loginState.userMessageforconfirmPassword)\r\n : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={loginState.loading}\r\n autoComplete=\"off\"\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n InputProps={{\r\n endAdornment: (\r\n <InputAdornment position=\"end\">\r\n <IconButton\r\n aria-label=\"toggle password visibility\"\r\n onClick={() => {\r\n if (!showConfirmPassword) {\r\n setShowConfirmPasswordTime(Date.now() + 5000);\r\n timerRef.current = setTimeout(\r\n () => forceUpdate(Date.now()),\r\n 5000\r\n );\r\n } else if (showConfirmPassword)\r\n setShowConfirmPasswordTime(0);\r\n }}\r\n onMouseDown={(e) => e.preventDefault()}\r\n disabled={loginState.loading}\r\n >\r\n {showConfirmPassword ? <Visibility /> : <VisibilityOff />}\r\n </IconButton>\r\n </InputAdornment>\r\n ),\r\n }}\r\n inputProps={{ maxLength: 16 }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n </>\r\n ) : null}\r\n {loginState.isApiError ? (\r\n <FormHelperText style={{ color: \"red\" }}>\r\n {loginState.apierrorMessage}\r\n </FormHelperText>\r\n ) : null}\r\n <div\r\n style={{\r\n marginTop: \"20px\",\r\n display: \"flex\",\r\n flexDirection: \"row-reverse\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n flex: \"auto\",\r\n textAlign: \"center\",\r\n marginTop: \"5px\",\r\n marginBottom: \"17px\",\r\n }}\r\n >\r\n <div>\r\n <GradientButton\r\n style={{ borderRadius: \"10px\", marginRight: \"5px\" }}\r\n // fullWidth\r\n\r\n disabled={loginState.loading}\r\n onClick={() => {\r\n navigate(loginPageEndpoint);\r\n }}\r\n // starticon={\"West\"}\r\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\r\n >\r\n {t(\"backtologin\")}\r\n </GradientButton>\r\n\r\n <GradientButton\r\n style={{ borderRadius: \"10px\" }}\r\n disabled={loginState.loading}\r\n onClick={() => {\r\n onSubmit(input, loginState.workingState);\r\n }}\r\n ref={inputButtonRef}\r\n // endicon={loginState.loading ? null : \"East\"}\r\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\r\n >\r\n {loginState.loading ? (\r\n <CircularProgress size={25} thickness={4.6} />\r\n ) : (\r\n t(\"Next\")\r\n )}\r\n </GradientButton>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </Fragment>\r\n );\r\n};\r\n","import { useReducer, useState, useRef, useEffect } from \"react\";\r\nimport { NavigateFunction } from \"react-router-dom\";\r\nimport { useStyles } from \"./style\";\r\nimport { ForgotPasswordFields } from \"./forgotPasswordField\";\r\nimport { OTPModelForm } from \"./otpPopup\";\r\nimport { utilFunction } from \"@acuteinfo/common-base\";\r\nimport { useSnackbar } from \"notistack\";\r\nimport { Container, Grid } from \"@mui/material\";\r\nimport { BankDetails } from \"./bankDetails\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { t } from \"i18next\";\r\nimport { isBase64 } from \"./utils\";\r\n\r\nexport const ValidatePassword = (pwd) => {\r\n console.log(\"pwd\", pwd)\r\n // if (!Boolean(pwd)) {\r\n // return \"Password is Required\";\r\n // } else if (pwd.length < 8 || pwd.length > 16) {\r\n // return \"Password must be between 8 and 16 characters long.\";\r\n // }\r\n // return \"\";\r\n\r\n if (!Boolean(pwd)) {\r\n console.log(\"in if\")\r\n // return t(\"PasswordisRequired\");\r\n return \"Password is Required\";\r\n } else if (!/(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])(?=.*\\W)(?!.*\\s)/.test(pwd)) {\r\n console.log(\"in else if 1\")\r\n return t(\"EnterPasswordPolicy\");\r\n } else if (pwd.length < 8 || pwd.length > 16) {\r\n // return t(\"EnterPasswordValid\");\r\n console.log(\"in else if 2\")\r\n return t(\"EnterPasswordValid\");\r\n // return \"Password must be between 8 and 16 characters long.\";\r\n }\r\n console.log(\"return\")\r\n return \"\";\r\n};\r\n\r\nconst inititalState = {\r\n isUsernameError: false,\r\n userMessageforusername: \"\",\r\n loading: false,\r\n isMobileError: false,\r\n userMessageforMobileno: \"\",\r\n isPasswordError: false,\r\n userMessageforPassword: \"\",\r\n isConfirmPasswordError: false,\r\n userMessageforconfirmPassword: \"\",\r\n workingState: 0,\r\n isApiError: false,\r\n apierrorMessage: \"\",\r\n otploading: false,\r\n OtpuserMessage: \"\",\r\n otpmodelClose: false,\r\n requestCd: \"\",\r\n username: \"\",\r\n auth_type: \"O\",\r\n transactionID: \"\",\r\n};\r\nconst reducer = (state, action) => {\r\n switch (action.type) {\r\n case \"verifyUserNameandMobileNoFailed\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n isUsernameError: action?.payload?.isUsernameError ?? false,\r\n isMobileError: action?.payload?.isMobileError ?? false,\r\n userMessageforusername: action?.payload?.userMessageforusername ?? \"\",\r\n userMessageforMobileno: action?.payload?.userMessageforMobileno ?? \"\",\r\n isApiError: action?.payload?.isApiError ?? false,\r\n apierrorMessage: action?.payload?.apierrorMessage ?? \"\",\r\n requestCd: \"\",\r\n username: \"\",\r\n };\r\n }\r\n case \"initverifyUserNameandMobileNo\": {\r\n return {\r\n ...state,\r\n loading: true,\r\n isUsernameError: false,\r\n isMobileError: false,\r\n requestCd: \"\",\r\n username: \"\",\r\n };\r\n }\r\n case \"verifyUserNameandMobileNoSuccess\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n isUsernameError: false,\r\n isMobileError: false,\r\n workingState: 0,\r\n isApiError: false,\r\n apierrorMessage: \"\",\r\n requestCd: action?.payload?.requestCd ?? \"\",\r\n username: action?.payload?.username ?? \"\",\r\n auth_type: action?.payload?.auth_type,\r\n company_ID: action?.payload?.company_ID,\r\n branch_cd: action?.payload?.branch_cd,\r\n otpValidFor: action?.payload?.otpValidFor,\r\n };\r\n }\r\n case \"inititateOTPVerification\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n otploading: true,\r\n OtpuserMessage: \"\",\r\n otpmodelClose: false,\r\n };\r\n }\r\n case \"OTPVerificationComplate\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n otploading: false,\r\n OtpuserMessage: \"\",\r\n workingState: 1,\r\n otpmodelClose: Boolean(action?.payload?.otpmodelclose),\r\n };\r\n }\r\n case \"OTPVerificationFailed\": {\r\n return {\r\n ...state,\r\n otploading: false,\r\n OtpuserMessage: action?.payload?.error,\r\n otpmodelClose: Boolean(action?.payload?.otpmodelclose),\r\n };\r\n }\r\n case \"verifyPasswordFailed\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n isPasswordError: action?.payload?.isPasswordError ?? false,\r\n isConfirmPasswordError:\r\n action?.payload?.isConfirmPasswordError ?? false,\r\n userMessageforPassword: action?.payload?.userMessageforPassword ?? \"\",\r\n userMessageforconfirmPassword:\r\n action?.payload?.userMessageforconfirmPassword ?? \"\",\r\n isApiError: false,\r\n apierrorMessage: \"\",\r\n };\r\n }\r\n case \"initverifyPasswordSetReq\": {\r\n return {\r\n ...state,\r\n loading: true,\r\n isPasswordError: false,\r\n isConfirmPasswordError: false,\r\n };\r\n }\r\n case \"passwordRegistaredSuccess\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n isPasswordError: false,\r\n isConfirmPasswordError: false,\r\n };\r\n }\r\n case \"OTPResendSuccess\": {\r\n return {\r\n ...state,\r\n requestCd: action?.payload?.requestCd,\r\n };\r\n }\r\n default: {\r\n return state;\r\n }\r\n }\r\n};\r\n\r\ninterface ForgotPasswordControllerProps {\r\n bannerDetails: {\r\n bannerImg: string;\r\n bannerTitle: string;\r\n bannerNote: string;\r\n };\r\n logoUrl: string;\r\n updatenewPassword: Function;\r\n veirfyUsernameandMobileNo: Function;\r\n verifyOTPForPWDReset: Function,\r\n LanguageComponent: React.ComponentType<any>;\r\n screenFlag: \"password\" | \"totp\",\r\n navigate: NavigateFunction,\r\n loginPageEndpoint: string;\r\n}\r\n\r\nexport const ForgotPasswordControllerWrapper: React.FC<ForgotPasswordControllerProps> = ({\r\n screenFlag,\r\n updatenewPassword,\r\n veirfyUsernameandMobileNo,\r\n verifyOTPForPWDReset,\r\n logoUrl,\r\n LanguageComponent,\r\n bannerDetails,\r\n navigate,\r\n loginPageEndpoint\r\n}) => {\r\n const classes = useStyles();\r\n const [loginState, dispath] = useReducer(reducer, inititalState);\r\n const [open, setOpen] = useState(false);\r\n const { enqueueSnackbar } = useSnackbar();\r\n const otpResendRef = useRef(1);\r\n const { t } = useTranslation();\r\n const [dashboardLogoURL, setDashboardLogoURL] = useState<any | null>(null);\r\n const urlObj = useRef<any>(null);\r\n\r\n useEffect(() => {\r\n if (Boolean(logoUrl)) {\r\n if (isBase64(logoUrl)) {\r\n let blob = utilFunction.base64toBlob(logoUrl);\r\n urlObj.current =\r\n typeof blob === \"object\" && Boolean(blob)\r\n ? URL.createObjectURL(blob)\r\n : \"\";\r\n setDashboardLogoURL(urlObj.current);\r\n }\r\n else {\r\n setDashboardLogoURL(logoUrl);\r\n }\r\n }\r\n }, [logoUrl]);\r\n\r\n const onSubmitHandel = async (data, flag) => {\r\n if (verifyRequestData(data, flag)) {\r\n if (flag === 0) {\r\n dispath({ type: \"initverifyUserNameandMobileNo\" });\r\n const {\r\n status,\r\n data: resdata,\r\n message,\r\n } = await veirfyUsernameandMobileNo(\r\n data?.userName.toLowerCase(),\r\n data?.mobileno,\r\n screenFlag\r\n );\r\n\r\n if (status === \"0\") {\r\n dispath({\r\n type: \"verifyUserNameandMobileNoSuccess\",\r\n payload: {\r\n requestCd: String(resdata?.TRAN_CD ?? \"\"),\r\n username: data?.userName,\r\n auth_type: resdata?.AUTH_TYPE,\r\n company_ID: resdata?.COMP_CD,\r\n branch_cd: resdata?.BRANCH_CD,\r\n otpValidFor: resdata?.OTP_VALID,\r\n },\r\n });\r\n setOpen(true);\r\n } else {\r\n dispath({\r\n type: \"verifyUserNameandMobileNoFailed\",\r\n payload: {\r\n isApiError: true,\r\n apierrorMessage: message,\r\n },\r\n });\r\n }\r\n } else if (flag === 1) {\r\n dispath({ type: \"initverifyPasswordSetReq\" });\r\n const {\r\n status,\r\n data: resdata,\r\n message,\r\n } = await updatenewPassword(\r\n loginState?.requestCd,\r\n loginState?.username,\r\n data?.password\r\n );\r\n if (status === \"0\") {\r\n dispath({ type: \"passwordRegistaredSuccess\" });\r\n enqueueSnackbar(\"Password successfully reset\", {\r\n variant: \"success\",\r\n });\r\n navigate(loginPageEndpoint);\r\n } else if (status === \"99\") {\r\n dispath({\r\n type: \"verifyPasswordFailed\",\r\n payload: {\r\n isApiError: true,\r\n apierrorMessage: message,\r\n },\r\n });\r\n } else {\r\n enqueueSnackbar(message, {\r\n variant: \"error\",\r\n });\r\n navigate(loginPageEndpoint);\r\n }\r\n }\r\n }\r\n };\r\n\r\n const verifyRequestData = (data, flag) => {\r\n if (flag === 0) {\r\n let validationData = {\r\n isUsernameError: false,\r\n isMobileError: false,\r\n userMessageforusername: \"\",\r\n userMessageforMobileno: \"\",\r\n };\r\n if (!Boolean(data.userName)) {\r\n validationData.isUsernameError = true;\r\n validationData.userMessageforusername = \"UsernameisRequired\";\r\n }\r\n if (!Boolean(data.mobileno)) {\r\n validationData.isMobileError = true;\r\n validationData.userMessageforMobileno = \"MobileNoisRequired\";\r\n } else if (\r\n isNaN(data.mobileno) ||\r\n (data.mobileno.length !== 10 && data.mobileno.length !== 13)\r\n ) {\r\n validationData.isMobileError = true;\r\n validationData.userMessageforMobileno = \"Please enter valid Mobile No.\";\r\n }\r\n dispath({\r\n type: \"verifyUserNameandMobileNoFailed\",\r\n payload: validationData,\r\n });\r\n return !(validationData.isMobileError || validationData.isUsernameError);\r\n } else if (flag === 1) {\r\n let validationData = {\r\n isPasswordError: false,\r\n userMessageforPassword: \"\",\r\n isConfirmPasswordError: false,\r\n userMessageforconfirmPassword: \"\",\r\n };\r\n let pwdverify = ValidatePassword(data.password);\r\n console.log(\"pwdverify\", pwdverify)\r\n if (Boolean(pwdverify)) {\r\n validationData.isPasswordError = true;\r\n validationData.userMessageforPassword = pwdverify;\r\n }\r\n if (!Boolean(data.confirmpassword)) {\r\n validationData.isConfirmPasswordError = true;\r\n validationData.userMessageforconfirmPassword =\r\n \"Confirmpasswordisrequired\";\r\n } else if (\r\n Boolean(data.password) &&\r\n data.password !== data.confirmpassword\r\n ) {\r\n validationData.isConfirmPasswordError = true;\r\n validationData.userMessageforconfirmPassword =\r\n \"New Password and Confirm Password did not matched\";\r\n }\r\n dispath({\r\n type: \"verifyPasswordFailed\",\r\n payload: validationData,\r\n });\r\n return !(\r\n validationData.isConfirmPasswordError || validationData.isPasswordError\r\n );\r\n }\r\n return true;\r\n };\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n const changeUserName = () => {\r\n dispath({\r\n type: \"backToUsernameVerification\",\r\n });\r\n };\r\n\r\n const VerifyOTP = async (OTPNumber) => {\r\n if (Boolean(OTPNumber) && OTPNumber.toString().length === 6) {\r\n dispath({ type: \"inititateOTPVerification\" });\r\n const {\r\n status,\r\n data: resdata,\r\n message,\r\n } = await verifyOTPForPWDReset(\r\n loginState?.requestCd,\r\n loginState?.username,\r\n OTPNumber,\r\n loginState?.auth_type,\r\n screenFlag\r\n );\r\n if (status === \"0\") {\r\n if (screenFlag === \"totp\") {\r\n enqueueSnackbar(message, {\r\n variant: \"success\",\r\n });\r\n navigate(loginPageEndpoint);\r\n } else {\r\n dispath({\r\n type: \"OTPVerificationComplate\",\r\n payload: { otpmodelclose: true },\r\n });\r\n }\r\n } else if (status === \"99\") {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: message },\r\n });\r\n } else {\r\n enqueueSnackbar(message, {\r\n variant: \"error\",\r\n });\r\n navigate(loginPageEndpoint);\r\n }\r\n } else {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: \"Please enter a 6 digit OTP number\" },\r\n });\r\n }\r\n };\r\n return (\r\n <>\r\n <Grid container style={{ height: \"100vh\", overflow: \"hidden\" }}>\r\n <BankDetails bannerDetails={bannerDetails} />\r\n <Grid item xs={6} md={6} lg={6} sm={6}>\r\n <Grid\r\n container\r\n direction=\"row\"\r\n justifyContent=\"flex-end\"\r\n alignItems=\"center\"\r\n padding={\"31px\"}\r\n >\r\n <img src={Boolean(dashboardLogoURL) ? dashboardLogoURL : \"\"} alt=\"Logo\" />\r\n </Grid>\r\n <Grid\r\n container\r\n direction=\"row\"\r\n justifyContent=\"flex-end\"\r\n alignItems=\"center\"\r\n padding={\"0 35px 0 0\"}\r\n maxWidth={\"200px\"}\r\n >\r\n <LanguageComponent />\r\n </Grid>\r\n <Container maxWidth=\"xs\">\r\n <Grid alignItems=\"center\" style={{ paddingTop: \"20px\" }}>\r\n <h2 style={{ margin: \"10px 0\" }}>\r\n {loginState.workingState === 1\r\n ? t(\"Setnewpassword\")\r\n : screenFlag === \"totp\"\r\n ? \"Forgot TOTP\"\r\n : t(\"ForgotPassword\")}\r\n </h2>\r\n {open ? (\r\n <OTPModelForm\r\n classes={classes}\r\n handleClose={handleClose}\r\n loginState={loginState}\r\n VerifyOTP={VerifyOTP}\r\n OTPError={t(loginState?.OtpuserMessage ?? \"\")}\r\n setOTPError={(error) => {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: error },\r\n });\r\n }}\r\n resendFlag={\"FORGET_PW\"}\r\n setNewRequestID={(newRequestID) => {\r\n dispath({\r\n type: \"OTPResendSuccess\",\r\n payload: { requestCd: newRequestID },\r\n });\r\n otpResendRef.current = otpResendRef.current + 1;\r\n }}\r\n otpresendCount={otpResendRef.current}\r\n OTPResendRequest={undefined}\r\n />\r\n ) : (\r\n <ForgotPasswordFields\r\n classes={classes}\r\n loginState={loginState}\r\n onSubmit={onSubmitHandel}\r\n navigate={navigate}\r\n loginPageEndpoint={loginPageEndpoint}\r\n />\r\n )}\r\n </Grid>\r\n </Container>\r\n </Grid>\r\n </Grid>\r\n </>\r\n );\r\n};"],"names":["_jsx","_jsxs","IconButton","_Fragment","inititalState","reducer","API.capture"],"mappings":"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","x_google_ignoreList":[3]}
1
+ {"version":3,"file":"index.js","sources":["../src/pages/auth/style.ts","../src/pages/auth/usernamePassword.tsx","../src/pages/auth/otpPopup.tsx","../node_modules/style-inject/dist/style-inject.es.js","../src/pages/auth/verifyFinger.tsx","../src/pages/auth/api.ts","../src/pages/auth/biometric.ts","../src/pages/auth/utils.ts","../src/pages/auth/bankDetails.tsx","../src/pages/auth/passwordRotation.tsx","../src/pages/auth/authController.tsx","../src/pages/auth/forgotPasswordField.tsx","../src/pages/auth/forgotPassword.tsx"],"sourcesContent":["import { makeStyles } from \"@mui/styles\";\r\n\r\nexport const useStyles = makeStyles((theme: any) => ({\r\n wrapper: {\r\n minHeight: \"100vh\",\r\n boxShadow: \"0 3px 6px rgba(0,0,0,0.03)\",\r\n // background: \"#fff\",\r\n background: \"var(--theme-color2)\",\r\n },\r\n loginEmp: {\r\n background: \"#fff\",\r\n padding: theme.spacing(2, 4),\r\n display: \"flex\",\r\n maxWidth: \"400px\",\r\n margin: \"auto\",\r\n boxShadow: \"0 0 20px rgba(0,0,0,0.06)\",\r\n borderRadius: \"8px\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n width: \"100%\",\r\n },\r\n },\r\n formWrap: {\r\n marginTop: theme.spacing(2),\r\n },\r\n loginBtn: {\r\n minWidth: \"100% !important\",\r\n margin: theme.spacing(2, 0),\r\n fontSize: \"1rem\",\r\n padding: \"10px .75rem\",\r\n background: \"rgb(128,0,0)\",\r\n border: 0,\r\n color: \"#fff !important\",\r\n fontWeight: 600,\r\n letterSpacing: \"0.02857em\",\r\n boxShadow: \"none\",\r\n textTransform: \"capitalize\",\r\n alignSelf: \"flex-end\",\r\n \"&:hover\": {\r\n background: \"#fedad8\",\r\n boxShadow: \"none\",\r\n },\r\n },\r\n OTPTimer: {\r\n marginTop: \"10px\",\r\n color: theme.palette.primary.main,\r\n fontWeight: 600,\r\n },\r\n resendLink: {\r\n marginTop: \"10px\",\r\n cursor: \"pointer\",\r\n color: theme.palette.secondary.main,\r\n fontWeight: 600,\r\n fontSize: \"0.875 rem\",\r\n },\r\n logo: {\r\n marginBottom: theme.spacing(1),\r\n },\r\n\r\n loginLeft: {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n display: \"none\",\r\n },\r\n },\r\n loginRight: {\r\n background: \"#fff\",\r\n padding: theme.spacing(2, 4),\r\n display: \"flex\",\r\n maxWidth: \"400px\",\r\n margin: \"auto\",\r\n boxShadow: \"0 0 20px rgba(0,0,0,0.06)\",\r\n borderRadius: \"8px\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n width: \"100%\",\r\n },\r\n \"& img\": {\r\n alignSelf: \"center\",\r\n },\r\n },\r\n\r\n loginImg: {},\r\n\r\n verifybutton: {\r\n alignSelf: \"center\",\r\n // marginBottom: \"10px\",\r\n // marginTop: \"10px\",\r\n padding: \"5px\",\r\n },\r\n otpButtons: {\r\n // padding: \"10px\",\r\n },\r\n\r\n divflex: {\r\n display: \"flex\",\r\n },\r\n otpinputpadding: {\r\n \"& input\": {\r\n marginRight: \"25px !important\",\r\n border: \"1.42444px solid var(--theme-color3)\",\r\n borderRadius: \"10px\",\r\n width: \"45px !important\",\r\n height: \"45px !important\",\r\n marginBottom: \"15px\",\r\n boxShadow: \"0px 5.69775px 11.3955px rgba(66, 99, 199, 0.16)\",\r\n },\r\n },\r\n ibtnvisible: {\r\n // padding: \"7px !important\",\r\n // alignItems: \"baseline\",\r\n marginBottom: \"15px\",\r\n },\r\n btnvisibleoff: {\r\n display: \"none\",\r\n },\r\n OTPalignName: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n // justifyContent: \"space-between\",\r\n marginBottom: \"12px\",\r\n color: \"#1C1C1C\",\r\n fonWeight: \"400\",\r\n fontSize: \"17px\",\r\n lineHeight: \"33px\",\r\n },\r\n resendOTPalign: {\r\n color: \"var(--theme-color3)\",\r\n fonWeight: \"400\",\r\n fontSize: \"17px\",\r\n lineHeight: \"33px\",\r\n margin: \"0 auto\",\r\n // marginTop: \"15px\",\r\n // display: \"block !important\",\r\n },\r\n resendbtnLink: {\r\n textDecoration: \"underline\",\r\n color: \"var(--theme-color3)\",\r\n cursor: \"pointer\",\r\n \"&:hover\": {\r\n textDecoration: \"underline\",\r\n color: \"var(--theme-color3)\",\r\n },\r\n },\r\n dialogTitleClass: {\r\n background: \"var(--theme-color5)\",\r\n padding: \"6px 15px !important\",\r\n margin: \"10px\",\r\n color: \"var(--theme-color2)\",\r\n borderRadius: \"4px\",\r\n \"& h2\": {\r\n fontWeight: \"500 !important\",\r\n },\r\n },\r\n lang_svg: {\r\n marginRight: \"10px\",\r\n width: \"22px\",\r\n height: \"22px\",\r\n },\r\n dialogContent: {\r\n padding: \"0px 15px\",\r\n \"& p\": {\r\n whiteSpace: \"pre-wrap\",\r\n color: \"black\",\r\n marginTop: \"8px\",\r\n marginBottom: \"6px\",\r\n },\r\n },\r\n button: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n flexDirection: \"column\",\r\n margin: \"6px\",\r\n background: \"var(--theme-color1)\",\r\n \"&:hover\": {\r\n background: \"var(--theme-color1) !important\",\r\n },\r\n },\r\n}));\r\n","import { GradientButton, TextField } from \"@acuteinfo/common-base\";\r\n\r\nimport { Fragment, useState, useEffect, useRef } from \"react\";\r\n// import { TextField } from \"components/styledComponent/textfield\";\r\n// import { GradientButton } from \"components/styledComponent/button\";\r\nimport Visibility from \"@mui/icons-material/Visibility\";\r\nimport VisibilityOff from \"@mui/icons-material/VisibilityOff\";\r\nimport { CircularProgress, IconButton, InputAdornment } from \"@mui/material\";\r\nimport { Container } from \"@mui/material\";\r\nimport { Grid } from \"@mui/material\";\r\nimport { useTranslation } from \"react-i18next\";\r\n// import { Language_App } from \"pages_audit/appBar/language\";\r\nexport const UsernamePasswordField = ({\r\n classes,\r\n loginState,\r\n verifyUsernamePassword,\r\n forgotPasswordEndpoint\r\n}) => {\r\n const [input, setInput] = useState({ userName: \"\", password: \"\" });\r\n const [showPasswordTime, setShowPasswordTime] = useState(0);\r\n const showPassword = Date.now() < showPasswordTime;\r\n const [, forceUpdate] = useState<any | null>();\r\n const timerRef = useRef<any>(null);\r\n const { t } = useTranslation();\r\n useEffect(() => {\r\n return () => clearTimeout(timerRef.current);\r\n }, []);\r\n const handleChange = (event) => {\r\n const name = event.target.name;\r\n const value = event.target.value;\r\n if (name === \"userName\" && value) {\r\n loginState.isUsernameError = false;\r\n }\r\n if (name === \"password\" && value) {\r\n loginState.isPasswordError = false;\r\n }\r\n\r\n setInput((values) => ({ ...values, [name]: value }));\r\n };\r\n const inputRef = useRef<any>(null);\r\n const inputPassRef = useRef<any>(null);\r\n const inputButtonRef = useRef<any>(null);\r\n\r\n useEffect(() => {\r\n let timeoutCd;\r\n if (loginState.isUsernameError) {\r\n timeoutCd = setTimeout(() => {\r\n inputRef?.current?.focus?.();\r\n }, 1000);\r\n } else if (loginState.isPasswordError) {\r\n timeoutCd = setTimeout(() => {\r\n inputPassRef?.current?.focus?.();\r\n }, 1000);\r\n }\r\n return () => {\r\n if (timeoutCd) {\r\n clearTimeout(timeoutCd);\r\n }\r\n };\r\n }, [loginState.isUsernameError, loginState.isPasswordError]);\r\n useEffect(() => {\r\n let timeoutCd;\r\n if (loginState?.otpmodelClose ?? false) {\r\n setInput((values) => ({ ...values, password: \"\" }));\r\n timeoutCd = setTimeout(() => {\r\n inputPassRef?.current?.focus?.();\r\n }, 1500);\r\n }\r\n return () => {\r\n if (timeoutCd) {\r\n clearTimeout(timeoutCd);\r\n }\r\n };\r\n }, [loginState.otpmodelClose]);\r\n\r\n return (\r\n <Fragment>\r\n <Container maxWidth=\"xs\">\r\n <Grid alignItems=\"center\" style={{ paddingTop: \"20px\" }}>\r\n <div\r\n style={{\r\n color: \"#000000 !important\",\r\n fontSize: \"30px\",\r\n fontWeight: \"600\",\r\n // fontFamily: \"Poppins\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n lineHeight: \"150%\",\r\n }}\r\n >\r\n <h3>{t(\"SignIn\")}</h3>\r\n </div>\r\n <div\r\n className=\"\"\r\n style={{\r\n color: \"#949597\",\r\n fontSize: \"16px\",\r\n fontWeight: \"400\",\r\n // fontFamily: \"Poppins\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n\r\n width: \"360px\",\r\n }}\r\n >\r\n {t(\"SignInWithUserIDandPassword\")}\r\n </div>\r\n <div className={classes.formWrap}>\r\n <TextField\r\n // variant=\"filled\"\r\n // color=\"secondary\"\r\n autoFocus={true}\r\n label={t(\"UserID\")}\r\n // placeholder=\"User ID\"\r\n placeholder={String(t(\"UserID\"))}\r\n style={{\r\n marginTop: \"10px\",\r\n marginBottom: \"17px\",\r\n }}\r\n fullWidth\r\n type={\"text\"}\r\n name=\"userName\"\r\n value={input.userName.trimStart() || \"\"}\r\n onChange={handleChange}\r\n error={loginState.isUsernameError}\r\n helperText={\r\n loginState.isUsernameError\r\n ? t(loginState.userMessageforusername)\r\n : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={loginState.loading}\r\n autoComplete=\"off\"\r\n ref={inputRef}\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n inputProps={{\r\n maxLength: \"16\",\r\n }}\r\n />\r\n\r\n <div\r\n style={{\r\n display: \"flex\",\r\n flexDirection: \"row-reverse\",\r\n marginTop: \"8px\",\r\n }}\r\n >\r\n <TextField\r\n key=\"employee\"\r\n label={t(\"Password\")}\r\n // variant=\"filled\"\r\n // color=\"secondary\"\r\n\r\n placeholder={String(t(\"EnterPassword\"))}\r\n InputLabelProps={{\r\n shrink: true,\r\n }}\r\n fullWidth\r\n type={showPassword ? \"text\" : \"password\"}\r\n name=\"password\"\r\n value={input.password}\r\n onChange={handleChange}\r\n error={loginState.isPasswordError}\r\n helperText={\r\n loginState.isPasswordError\r\n ? t(loginState.userMessageforpassword)\r\n : \"\"\r\n }\r\n disabled={loginState.loading}\r\n ref={inputPassRef}\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n InputProps={{\r\n endAdornment: (\r\n <InputAdornment position=\"end\">\r\n <IconButton\r\n aria-label=\"toggle password visibility\"\r\n onClick={() => {\r\n if (!showPassword) {\r\n setShowPasswordTime(Date.now() + 5000);\r\n timerRef.current = setTimeout(\r\n () => forceUpdate(Date.now()),\r\n 5000,\r\n );\r\n } else if (showPassword) setShowPasswordTime(0);\r\n }}\r\n onMouseDown={(e) => e.preventDefault()}\r\n disabled={loginState.loading}\r\n >\r\n {showPassword ? <Visibility /> : <VisibilityOff />}\r\n </IconButton>\r\n </InputAdornment>\r\n ),\r\n }}\r\n inputProps={{ maxLength: \"16\" }}\r\n />\r\n </div>\r\n <div style={{ marginTop: \"20px\", display: \"flex\" }}>\r\n <div style={{ flex: \"auto\", textAlign: \"end\" }}>\r\n <a\r\n href={forgotPasswordEndpoint ?? \"\"}\r\n style={{ color: \"var(--theme-color3)\" }}\r\n >\r\n {t(\"ForgotPassword\")}\r\n </a>\r\n </div>\r\n </div>\r\n <div style={{ marginTop: \"20px\", display: \"flex\" }}>\r\n <div\r\n style={{\r\n flex: \"auto\",\r\n textAlign: \"center\",\r\n marginTop: \"5px\",\r\n marginBottom: \"17px\",\r\n }}\r\n >\r\n <GradientButton\r\n style={{\r\n borderRadius: loginState.loading ? \"50%\" : \"10px\",\r\n height: loginState.loading ? \"40px\" : \"100%\",\r\n width: loginState.loading ? \"0px\" : \"100%\",\r\n minWidth: loginState.loading ? \"40px\" : \"80px\",\r\n }}\r\n fullWidth\r\n disabled={loginState.loading}\r\n onClick={() =>\r\n verifyUsernamePassword(\r\n (input.userName || \"\").toLowerCase(),\r\n input.password,\r\n )\r\n }\r\n ref={inputButtonRef}\r\n // endicon={loginState.loading ? null : \"East\"}\r\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\r\n >\r\n {loginState.loading ? (\r\n <CircularProgress size={25} thickness={4.6} />\r\n ) : (\r\n t(\"Next\")\r\n )}\r\n </GradientButton>\r\n </div>\r\n </div>\r\n </div>\r\n </Grid>\r\n </Container>\r\n </Fragment>\r\n );\r\n};\r\n","import { FormHelperText } from \"@mui/material\";\r\nimport { GradientButton } from \"@acuteinfo/common-base\";\r\nimport { Fragment, useState, useRef, useEffect } from \"react\";\r\nimport OTPInput, { ResendOTP } from \"otp-input-react\";\r\nimport Visibility from \"@mui/icons-material/Visibility\";\r\nimport VisibilityOff from \"@mui/icons-material/VisibilityOff\";\r\nimport { CircularProgress } from \"@mui/material\";\r\nimport { Container } from \"@mui/material\";\r\nimport IconButton from \"@mui/material/IconButton\";\r\nimport { Grid } from \"@mui/material\";\r\nimport clsx from \"clsx\";\r\nimport { useSnackbar } from \"notistack\";\r\nimport { useTranslation } from \"react-i18next\";\r\nexport const OTPModel = ({\r\n classes,\r\n OTPResendRequest,\r\n open,\r\n handleClose,\r\n loginState,\r\n VerifyOTP,\r\n OTPError,\r\n setOTPError,\r\n previousStep,\r\n setNewRequestID = (id) => {},\r\n otpresendCount = 0,\r\n resendFlag,\r\n}) => {\r\n const [OTP, setOTP] = useState(\"\");\r\n const [showPasswordTime, setShowPasswordTime] = useState(0);\r\n const showPassword = Date.now() < showPasswordTime;\r\n const [, forceUpdate] = useState<any | null>();\r\n const timerRef = useRef<any>(null);\r\n useEffect(() => {\r\n return () => clearTimeout(timerRef.current);\r\n }, []);\r\n const [btnshow, setbtnshow] = useState(false);\r\n const inputButtonRef = useRef<any>(null);\r\n const [resendotpLoading, setResendotpLoading] = useState(false);\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { t } = useTranslation();\r\n // const renderButton = (buttonProps) => {\r\n // let { remainingTime, ...other } = buttonProps;\r\n // return resendotpLoading ? (\r\n // <a\r\n // remainingtime={remainingTime}\r\n // {...other}\r\n // className={clsx(\r\n // classes.resendbtnLink,\r\n // !btnshow && classes.btnvisibleoff\r\n // )}\r\n // >\r\n // {t(\"otp.ResendOTP\")}\r\n // </a>\r\n // ) : null;\r\n // };\r\n const renderButton = (buttonProps) => {\r\n let { remainingTime, ...other } = buttonProps;\r\n return resendotpLoading ? (\r\n <a\r\n className={clsx(\r\n classes.resendbtnLink,\r\n !btnshow && classes.btnvisibleoff,\r\n )}\r\n style={{ cursor: \"wait\" }}\r\n >\r\n {/* {t(\"otp.ResendOTP\")} {<CircularProgress size={20} color=\"secondary\" />} */}\r\n {t(\"otp.GetNewOTP\")} {<CircularProgress size={20} color=\"secondary\" />}\r\n </a>\r\n ) : (\r\n <a\r\n remainingtime={remainingTime}\r\n {...other}\r\n className={clsx(\r\n classes.resendbtnLink,\r\n !btnshow && classes.btnvisibleoff,\r\n )}\r\n >\r\n {/* {t(\"otp.ResendOTP\")} */}\r\n {t(\"otp.GetNewOTP\")}\r\n </a>\r\n );\r\n };\r\n\r\n const ClickEventHandler = () => {\r\n if (!Boolean(OTP) || OTP.length < 6) {\r\n setOTPError(\"otp.EnterOTPDigit\");\r\n } else {\r\n setOTPError(\"\");\r\n VerifyOTP(OTP);\r\n }\r\n };\r\n\r\n const handleResendClick = async () => {\r\n setResendotpLoading(true);\r\n const { status, data, message } = await OTPResendRequest(\r\n resendFlag === \"FORGET_PW\" || resendFlag === \"FORGT_TOTP\"\r\n ? loginState?.requestCd\r\n : loginState?.transactionID,\r\n loginState?.username,\r\n resendFlag,\r\n loginState.auth_data?.[0]?.company_ID,\r\n loginState.auth_data?.[0]?.branch_cd,\r\n );\r\n setResendotpLoading(false);\r\n if (status === \"0\") {\r\n setNewRequestID(data?.TRAN_CD);\r\n setbtnshow(false);\r\n enqueueSnackbar(message, { variant: \"success\" });\r\n } else {\r\n enqueueSnackbar(message, { variant: \"error\" });\r\n }\r\n };\r\n const handleCloseEvent = () => {\r\n setOTPError(\"\");\r\n setOTP(\"\");\r\n handleClose(\"\");\r\n };\r\n const renderTime = (remainingtime) => {\r\n if (parseInt(remainingtime) === 0) {\r\n setTimeout(() => {\r\n setbtnshow(true);\r\n }, 700);\r\n }\r\n return (\r\n <span className={clsx(btnshow && classes.btnvisibleoff)}>\r\n {t(\"otp.OtpExpired\")} {remainingtime} {t(\"otp.second\")}\r\n {/* {t(\"otp.ValidFor\")} {remainingtime} */}\r\n </span>\r\n );\r\n };\r\n\r\n useEffect(() => {\r\n if (loginState?.otpmodelClose ?? false) {\r\n handleCloseEvent();\r\n }\r\n }, [loginState.otpmodelClose]);\r\n return (\r\n <Fragment>\r\n <Container maxWidth=\"sm\">\r\n <Grid alignItems=\"center\" marginTop={\"4em\"}>\r\n <div\r\n // className={classes.formWrap}\r\n style={\r\n {\r\n // marginRight: \"25px\",\r\n // width: \"100%\",\r\n // position: \"relative\",\r\n // right: \"42px\",\r\n // bottom: \"13px\",\r\n }\r\n }\r\n >\r\n <div\r\n style={{\r\n color: \"#000000\",\r\n fontSize: \"30px\",\r\n fontWeight: \"600\",\r\n // fontFamily: \"Poppins\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n lineHeight: \"150%\",\r\n marginBottom: \"10px\",\r\n }}\r\n >\r\n {t(\"otp.OTPAuthentication\")}\r\n </div>\r\n <div\r\n style={{\r\n color: \"#949597\",\r\n fontSize: \"16px\",\r\n fontWeight: \"400\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n lineHeight: \"33px\",\r\n }}\r\n >\r\n {t(\"otp.EnterOTP\")}\r\n </div>\r\n {/* <div\r\n style={{\r\n color: \"#949597\",\r\n fontSize: \"16px\",\r\n fontWeight: \"400\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n lineHeight: \"33px\",\r\n }}\r\n >\r\n {t(\"otp.GenerateNewOTP\")}\r\n </div> */}\r\n\r\n <div className={classes.OTPalignName}>\r\n {t(\"otp.Hello\")}{\" \"}\r\n {loginState?.username\r\n ? loginState.username.charAt(0).toUpperCase() +\r\n loginState.username.slice(1)\r\n : null}\r\n <ResendOTP\r\n // onResendClick={() => setbtnshow(false)}\r\n onResendClick={handleResendClick}\r\n // onTimerComplete={() => setbtnshow(true)}\r\n renderButton={renderButton}\r\n renderTime={renderTime}\r\n maxTime={loginState?.otpValidFor ?? 60}\r\n className={classes.resendOTPalign}\r\n />\r\n </div>\r\n <div\r\n className={classes.divflex}\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n >\r\n <OTPInput\r\n value={OTP}\r\n onChange={setOTP}\r\n autoFocus\r\n OTPLength={6}\r\n otpType=\"number\"\r\n disabled={false}\r\n secure={!showPassword}\r\n className={classes.otpinputpadding}\r\n />\r\n <IconButton\r\n aria-label=\"toggle password visibility\"\r\n onClick={() => {\r\n if (!showPassword) {\r\n setShowPasswordTime(Date.now() + 5000);\r\n timerRef.current = setTimeout(\r\n () => forceUpdate(Date.now()),\r\n 5000,\r\n );\r\n } else if (showPassword) setShowPasswordTime(0);\r\n }}\r\n onMouseDown={(e) => e.preventDefault()}\r\n disabled={loginState.otploading}\r\n className={classes.ibtnvisible}\r\n >\r\n {showPassword ? <Visibility /> : <VisibilityOff />}\r\n </IconButton>\r\n </div>\r\n {Boolean(OTPError) ? (\r\n <FormHelperText style={{ color: \"red\" }}>\r\n {OTPError}\r\n </FormHelperText>\r\n ) : null}\r\n <div\r\n style={{\r\n display: \"flex\",\r\n gap: \"10px\",\r\n margin: \"42px 0 0 42px\",\r\n width: \"60%\",\r\n }}\r\n >\r\n <GradientButton\r\n // fullWidth\r\n disabled={loginState.otploading}\r\n onClick={() => {\r\n previousStep(false, \"\");\r\n }}\r\n className={classes.otpButtons}\r\n // color={\"var(--theme-color3) \"}\r\n sx={{\r\n border: \"var(--theme-color3)1px solid\",\r\n minWidth: \"50%\",\r\n background: \"var(--theme-color2)\",\r\n borderRadius: \"10px\",\r\n \"&:hover\": {\r\n background: \"var(--theme-color2) !important\",\r\n },\r\n }}\r\n // customstyle = {{color : \"var(--theme-color3) !important\"}}\r\n // starticon={\"West\"}\r\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\r\n >\r\n {t(\"otp.Back\")}\r\n </GradientButton>\r\n <GradientButton\r\n style={{\r\n borderRadius: loginState.loading ? \"50%\" : \"10px\",\r\n height: loginState.loading ? \"40px\" : \"100%\",\r\n width: loginState.loading ? \"0px\" : \"100%\",\r\n minWidth: loginState.loading ? \"40px\" : \"80px\",\r\n }}\r\n fullWidth\r\n disabled={loginState.loading}\r\n onClick={ClickEventHandler}\r\n ref={inputButtonRef}\r\n className={classes.otpButtons}\r\n // endicon={loginState.loading ? null : \"TaskAlt\"}\r\n // rotateIcon=\"scale(1.4)\"\r\n >\r\n {loginState.loading ? (\r\n <CircularProgress size={25} thickness={4.6} />\r\n ) : (\r\n t(\"otp.VerifyOTP\")\r\n )}\r\n </GradientButton>\r\n </div>\r\n </div>\r\n </Grid>\r\n </Container>\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport const OTPModelForm = ({\r\n classes,\r\n OTPResendRequest,\r\n handleClose,\r\n loginState,\r\n VerifyOTP,\r\n OTPError,\r\n setOTPError,\r\n resendFlag,\r\n setNewRequestID = (id) => {},\r\n otpresendCount = 0,\r\n}) => {\r\n const [OTP, setOTP] = useState(\"\");\r\n const [showPasswordTime, setShowPasswordTime] = useState(0);\r\n const showPassword = Date.now() < showPasswordTime;\r\n const [, forceUpdate] = useState<any | null>();\r\n const timerRef = useRef<any>(null);\r\n useEffect(() => {\r\n return () => clearTimeout(timerRef.current);\r\n }, []);\r\n const [btnshow, setbtnshow] = useState(false);\r\n const [resendotpLoading, setResendotpLoading] = useState(false);\r\n const inputButtonRef = useRef<any>(null);\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { t } = useTranslation();\r\n const renderButton = (buttonProps) => {\r\n let { remainingTime, ...other } = buttonProps;\r\n return resendotpLoading ? (\r\n <a\r\n className={clsx(\r\n classes.resendbtnLink,\r\n !btnshow && classes.btnvisibleoff,\r\n )}\r\n style={{ cursor: \"wait\" }}\r\n >\r\n {/* {t(\"otp.ResendOTP\")} {<CircularProgress size={20} color=\"secondary\" />} */}\r\n {t(\"otp.GetNewOTP\")} {<CircularProgress size={20} color=\"secondary\" />}\r\n </a>\r\n ) : (\r\n <a\r\n remainingtime={remainingTime}\r\n {...other}\r\n className={clsx(\r\n classes.resendbtnLink,\r\n !btnshow && classes.btnvisibleoff,\r\n )}\r\n >\r\n {/* {t(\"otp.ResendOTP\")} */}\r\n {t(\"otp.GetNewOTP\")}\r\n </a>\r\n );\r\n };\r\n const ClickEventHandler = () => {\r\n if (!Boolean(OTP) || OTP.length < 6) {\r\n setOTPError(\"otp.EnterOTPDigit\");\r\n } else {\r\n setOTPError(\"\");\r\n VerifyOTP(OTP);\r\n }\r\n };\r\n const handleResendClick = async () => {\r\n setResendotpLoading(true);\r\n const { status, data, message } = await OTPResendRequest(\r\n resendFlag === \"FORGET_PW\"\r\n ? loginState?.requestCd\r\n : loginState?.transactionID,\r\n loginState?.username,\r\n resendFlag,\r\n loginState?.company_ID,\r\n loginState?.branch_cd,\r\n );\r\n setResendotpLoading(false);\r\n if (status === \"0\") {\r\n setNewRequestID(data?.TRAN_CD);\r\n setbtnshow(false);\r\n enqueueSnackbar(message, { variant: \"success\" });\r\n } else {\r\n enqueueSnackbar(message, { variant: \"error\" });\r\n }\r\n };\r\n const handleCloseEvent = () => {\r\n setOTPError(\"\");\r\n setOTP(\"\");\r\n handleClose();\r\n };\r\n const renderTime = (remainingtime) => {\r\n if (parseInt(remainingtime) === 0) {\r\n setTimeout(() => {\r\n setbtnshow(true);\r\n }, 700);\r\n }\r\n return (\r\n <span className={clsx(btnshow && classes.btnvisibleoff)}>\r\n {t(\"otp.OtpExpired\")} {remainingtime}\r\n </span>\r\n );\r\n };\r\n useEffect(() => {\r\n if (loginState?.otpmodelClose ?? false) {\r\n handleCloseEvent();\r\n }\r\n }, [loginState.otpmodelClose]);\r\n\r\n return (\r\n <Fragment>\r\n <Grid alignItems=\"center\">\r\n <div>\r\n <div\r\n style={{\r\n color: \"#000000\",\r\n fontSize: \"30px\",\r\n fontWeight: \"600\",\r\n // fontFamily: \"Poppins\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n lineHeight: \"150%\",\r\n marginBottom: \"10px\",\r\n }}\r\n >\r\n {t(\"otp.OTPAuthentication\")}\r\n </div>\r\n {/* <div\r\n style={{\r\n color: \"#949597\",\r\n fontSize: \"16px\",\r\n fontWeight: \"400\",\r\n alignItems: \"center\",\r\n lineHeight: \"33px\",\r\n }}\r\n >\r\n {t(\"otp.GenerateNewOTP\")}\r\n </div> */}\r\n <div className={classes.OTPalignName}>\r\n {t(\"otp.Hello\")}{\" \"}\r\n {loginState?.username\r\n ? loginState.username.charAt(0).toUpperCase() +\r\n loginState.username.slice(1)\r\n : null}\r\n {loginState.otploading ||\r\n otpresendCount >= 3 ||\r\n loginState?.auth_type === \"TOTP\" ? null : (\r\n <ResendOTP\r\n onResendClick={handleResendClick}\r\n // onTimerComplete={() => setbtnshow(true)}\r\n renderButton={renderButton}\r\n renderTime={renderTime}\r\n maxTime={loginState?.otpValidFor ?? 60}\r\n className={classes.resendOTPalign}\r\n />\r\n )}\r\n </div>\r\n <div\r\n className={classes.divflex}\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n >\r\n <OTPInput\r\n value={OTP}\r\n onChange={setOTP}\r\n autoFocus\r\n OTPLength={6}\r\n otpType=\"number\"\r\n disabled={false}\r\n secure={!showPassword}\r\n className={classes.otpinputpadding}\r\n />\r\n\r\n {/* <IconButton\r\n aria-label=\"toggle password visibility\"\r\n // onClick={() => {\r\n // if (!showPassword) {\r\n // setShowPasswordTime(Date.now() + 5000);\r\n // timerRef.current = setTimeout(\r\n // () => forceUpdate(Date.now()),\r\n // 5000\r\n // );\r\n // } else if (showPassword) setShowPasswordTime(0);\r\n // }}\r\n onMouseDown={(e) => e.preventDefault()}\r\n disabled={loginState.otploading}\r\n className={classes.ibtnvisible}\r\n >\r\n {showPassword ? <VisibilityOffIcon /> : <VisibilityIcon />}\r\n </IconButton> */}\r\n <IconButton\r\n aria-label=\"toggle password visibility\"\r\n onClick={() => {\r\n if (!showPassword) {\r\n setShowPasswordTime(Date.now() + 5000);\r\n timerRef.current = setTimeout(\r\n () => forceUpdate(Date.now()),\r\n 5000,\r\n );\r\n } else if (showPassword) setShowPasswordTime(0);\r\n }}\r\n onMouseDown={(e) => e.preventDefault()}\r\n disabled={loginState.otploading}\r\n className={classes.ibtnvisible}\r\n >\r\n {showPassword ? <Visibility /> : <VisibilityOff />}\r\n </IconButton>\r\n </div>\r\n {Boolean(OTPError) ? (\r\n <FormHelperText style={{ color: \"red\" }}>{OTPError}</FormHelperText>\r\n ) : null}\r\n {loginState?.auth_type === \"TOTP\" ? (\r\n <div style={{ flex: \"auto\" }}>\r\n <a href=\"forgot-totp\" style={{ color: \"var(--theme-color3)\" }}>\r\n Forgot TOTP\r\n </a>\r\n </div>\r\n ) : (\r\n <></>\r\n )}\r\n\r\n <div\r\n style={{\r\n display: \"flex\",\r\n gap: \"10px\",\r\n margin: \"42px 0 0 42px\",\r\n width: \"60%\",\r\n }}\r\n >\r\n <GradientButton\r\n fullWidth\r\n disabled={loginState.otploading}\r\n onClick={handleCloseEvent}\r\n className={classes.otpButtons}\r\n // starticon={\"West\"}\r\n // color={\"var(--theme-color2) !important\"}\r\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\r\n style={{\r\n border: \"var(--theme-color3)1px solid\",\r\n color: \"var(--theme-color2)\",\r\n // background: \"var(--theme-color2)\",\r\n borderRadius: \"10px\",\r\n minWidth: \"48%\",\r\n }}\r\n >\r\n {t(\"otp.Back\")}\r\n </GradientButton>\r\n <GradientButton\r\n style={{\r\n borderRadius: loginState.otploading ? \"50%\" : \"10px\",\r\n height: loginState.otploading ? \"40px\" : \"100%\",\r\n width: loginState.otploading ? \"0px\" : \"100%\",\r\n minWidth: loginState.otploading ? \"40px\" : \"80px\",\r\n }}\r\n // fullWidth\r\n disabled={loginState.loading}\r\n onClick={ClickEventHandler}\r\n ref={inputButtonRef}\r\n className={classes.otpButtons}\r\n >\r\n {loginState.otploading ? (\r\n <CircularProgress size={25} thickness={4.6} />\r\n ) : (\r\n t(\"otp.VerifyOTP\")\r\n )}\r\n </GradientButton>\r\n </div>\r\n </div>\r\n </Grid>\r\n </Fragment>\r\n );\r\n};\r\n","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import { Fragment } from \"react\";\r\nimport { GradientButton } from \"@acuteinfo/common-base\";\r\nimport FingerprintSharpIcon from \"@mui/icons-material/FingerprintSharp\";\r\nimport { CircularProgress, Container, Typography } from \"@mui/material\";\r\nimport { Grid } from \"@mui/material\";\r\nimport \"./verify.css\";\r\nimport { useTranslation } from \"react-i18next\";\r\nexport const VerifyFinger = ({\r\n classes,\r\n loginState,\r\n verifyFinger,\r\n previousStep,\r\n}) => {\r\n const { t } = useTranslation();\r\n return (\r\n <Fragment>\r\n <Container maxWidth=\"xs\">\r\n <Grid alignItems=\"center\">\r\n <div\r\n style={{\r\n marginRight: \"25px\",\r\n width: \"102%\",\r\n // marginBottom: \"55px\",\r\n }}\r\n >\r\n <br />\r\n <div\r\n style={{\r\n color: \"#000000\",\r\n fontSize: \"34px\",\r\n fontWeight: \"600\",\r\n // fontFamily: \"Poppins\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n lineHeight: \"150%\",\r\n marginBottom: \"10px\",\r\n }}\r\n >\r\n {t(\"Biometric.BiometrixAuthentication\")}\r\n </div>\r\n <div\r\n style={{\r\n color: \"#949597\",\r\n fontSize: \"18px\",\r\n fontWeight: \"400\",\r\n // fontFamily: \"Poppins\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n lineHeight: \"33px\",\r\n // marginBottom: \"10px\",\r\n }}\r\n >\r\n {t(\"Biometric.Kindlyplaceyoufinger\")}\r\n </div>\r\n <br />\r\n <Typography variant=\"h5\" style={{ color: \"#000000\" }}>\r\n {t(\"otp.Hello\")} {\"\"}\r\n {` ${\r\n loginState?.username\r\n ? loginState.username.charAt(0).toUpperCase() +\r\n loginState.username.slice(1)\r\n : null\r\n }`}\r\n </Typography>\r\n <br />\r\n <div\r\n className={\r\n loginState?.isBiometricError\r\n ? classes.eFingerUi\r\n : classes.fingerUi\r\n }\r\n >\r\n <div className=\"spinner-wrap\">\r\n <FingerprintSharpIcon\r\n sx={{\r\n fontSize: \"80px\",\r\n opacity: \"0.4\",\r\n borderRadius: \"50%\",\r\n display: \"flex\",\r\n margin: \"0 auto\",\r\n \"&:after\": {\r\n borderBottom: \"2px solid #26A456\",\r\n },\r\n }}\r\n className={\r\n loginState?.isBiometricError ? classes.FingerIcon : null\r\n }\r\n color={loginState?.isBiometricError ? \"error\" : \"inherit\"}\r\n />\r\n {loginState?.isScanning ? (\r\n <>\r\n <div\r\n className=\"spinner-item\"\r\n style={{\r\n border: loginState?.isScanning\r\n ? \"1px solid #949597\"\r\n : \" 1px solid red\",\r\n }}\r\n ></div>\r\n <div\r\n className=\"spinner-item spinner-item--2\"\r\n style={{\r\n border: loginState?.isScanning\r\n ? \"1px solid #949597\"\r\n : \"1px solid red\",\r\n }}\r\n ></div>\r\n <div\r\n className=\"spinner-item spinner-item--3\"\r\n style={{\r\n border: loginState?.isScanning\r\n ? \"1px solid #949597\"\r\n : \"1px solid red\",\r\n }}\r\n ></div>\r\n </>\r\n ) : null}\r\n </div>\r\n </div>\r\n\r\n <div className={classes.biometric}>\r\n <div style={{ marginTop: \"50px\" }}>\r\n <div className={loginState.isScanning ? \"progress\" : \"hide\"}>\r\n <div\r\n className=\"bar\"\r\n style={{ width: loginState.isScanning ? \"30%\" : \"0%\" }}\r\n ></div>\r\n </div>\r\n <h3\r\n style={{\r\n display: \"flex\",\r\n marginTop: \"20px\",\r\n justifyContent: \"space-around\",\r\n color: loginState?.isBiometricError\r\n ? \"rgb(255 0 0 / 65%)\"\r\n : \"inherit\",\r\n }}\r\n >\r\n {loginState?.isBiometricError\r\n ? loginState?.userMessage\r\n : loginState?.loading\r\n ? t(\"Biometric.Loading\")\r\n : loginState?.isScanning\r\n ? t(\"Biometric.Scanning\")\r\n : null}\r\n </h3>\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n style={{\r\n display: \"flex\",\r\n justifyContent: \"center\",\r\n margin: \"42px 0 0 42px\",\r\n // margin: \"38px 0 0 0\",\r\n gap: \"10px\",\r\n }}\r\n >\r\n <GradientButton\r\n fullWidth\r\n disabled={loginState.loading}\r\n onClick={() => {\r\n previousStep(false, \"\");\r\n }}\r\n className={classes.otpButtons}\r\n // starticon={\"West\"}\r\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\r\n // color={\"var(--theme-color3) !important\"}\r\n style={{\r\n border: \"var(--theme-color3)1px solid\",\r\n color: \"var(--theme-color3)\",\r\n background: \"var(--theme-color2)\",\r\n borderRadius: \"10px\",\r\n minWidth: \"48%\",\r\n }}\r\n >\r\n {t(\"otp.Back\")}\r\n </GradientButton>\r\n <GradientButton\r\n style={{\r\n borderRadius: loginState.loading ? \"50%\" : \"10px\",\r\n height: loginState.loading ? \"40px\" : \"100%\",\r\n width: loginState.loading ? \"0px\" : \"100%\",\r\n minWidth: loginState.loading ? \"40px\" : \"80px\",\r\n // width: loginState.loading ? \"0px\" : \"90%\",\r\n // minWidth: loginState.loading ? \"40px\" : \"80px\",\r\n }}\r\n disabled={loginState.loading}\r\n onKeyDown={(e) => e.keyCode === 13 && verifyFinger}\r\n onClick={verifyFinger}\r\n className={classes.otpButtons}\r\n >\r\n {loginState.loading ? (\r\n <CircularProgress\r\n size={25}\r\n thickness={4.6}\r\n style={{ color: \"#fff\" }}\r\n />\r\n ) : (\r\n t(\"Biometric.Verify\")\r\n )}\r\n </GradientButton>\r\n </div>\r\n </Grid>\r\n </Container>\r\n </Fragment>\r\n );\r\n};\r\n","export const capture = async () => {\r\n var MFS100Request = {\r\n Quality: 60,\r\n TimeOut: 10,\r\n };\r\n var jsondata = JSON.stringify(MFS100Request);\r\n const rawResponse = await fetch(\"http://localhost:8004/mfs100/capture\", {\r\n method: \"POST\",\r\n headers: {\r\n Accept: \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: jsondata,\r\n });\r\n const content = await rawResponse.json();\r\n return content;\r\n};\r\n","import CryptoJS from \"crypto-js\";\r\n\r\nconst decryptString = (encryptString: string) => {\r\n var secretKey = \"SUPERACUTE@MKS\";\r\n var keyBytes = CryptoJS.PBKDF2(secretKey, \"Ivan Medvedev\", {\r\n keySize: 48 / 4,\r\n iterations: 1000,\r\n });\r\n console.log(keyBytes.toString());\r\n\r\n // take first 32 bytes as key (like in C# code)\r\n var key = new CryptoJS.lib.WordArray.init(keyBytes.words, 32);\r\n\r\n // // skip first 32 bytes and take next 16 bytes as IV\r\n var iv = new CryptoJS.lib.WordArray.init(keyBytes.words.splice(32 / 4), 16);\r\n\r\n // console.log(key.toString());\r\n //console.log(encryptString, CryptoJS.enc.Base64.parse(encryptString));\r\n\r\n var dec = CryptoJS.AES.decrypt(\r\n {\r\n ciphertext: CryptoJS.enc.Base64.parse(\r\n CryptoJS.enc.Base64.parse(encryptString).toString(CryptoJS.enc.Utf8),\r\n ),\r\n },\r\n key,\r\n {\r\n iv: iv,\r\n },\r\n );\r\n console.log(\"CryptoJS.AES.decrypt\", dec);\r\n return dec.toString(CryptoJS.enc.Utf8).split(String.fromCharCode(0)).join(\"\");\r\n return dec.toString();\r\n};\r\n\r\nexport const matchFinger = async (rows: any, captureFinger: string) => {\r\n var promise = new Promise((resolve, reject) => {\r\n //console.log(\"matchFinger\", rows, typeof rows);\r\n if (typeof rows === \"string\") {\r\n rows = JSON.parse(rows);\r\n }\r\n rows.forEach(async (element: any, i: number) => {\r\n try {\r\n var galleryTemplate = decryptString(element.IMG_DATA);\r\n var MFS100Request = {\r\n GalleryTemplate: galleryTemplate,\r\n ProbTemplate: captureFinger,\r\n BioType: \"Iso\",\r\n };\r\n var jsondata = JSON.stringify(MFS100Request);\r\n await fetch(\"http://localhost:8004/mfs100/verify\", {\r\n method: \"POST\",\r\n headers: {\r\n Accept: \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: jsondata,\r\n })\r\n .then((response: any) => response.json())\r\n .then((response: any) => {\r\n if (response?.ErrorCode === \"0\" && response[\"Status\"]) {\r\n resolve({\r\n status: true,\r\n errorCode: \"0\",\r\n errorMessage: \"\",\r\n isError: false,\r\n sr_cd: element.SR_CD,\r\n });\r\n return;\r\n }\r\n\r\n if (rows.length === i + 1) {\r\n resolve({\r\n status: false,\r\n errorCode: response.ErrorCode,\r\n errorMessage: response.ErrorMessage,\r\n isError: false,\r\n });\r\n return;\r\n }\r\n })\r\n .catch((reason) => {\r\n resolve({\r\n status: false,\r\n errorCode: \"999\",\r\n errorMessage: reason,\r\n isError: true,\r\n });\r\n });\r\n } catch (err) {\r\n console.log(err);\r\n resolve({\r\n status: false,\r\n errorCode: \"999\",\r\n errorMessage: \"Something went wrong!\",\r\n isError: true,\r\n });\r\n }\r\n });\r\n });\r\n return promise;\r\n};\r\n","export const isBase64 = (str: string): boolean => {\r\n if (typeof str !== \"string\") {\r\n return false;\r\n }\r\n const base64Regex =\r\n /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/;\r\n\r\n return base64Regex.test(str);\r\n};\r\n","import { useEffect, useState, useRef, useMemo } from \"react\";\r\nimport { useStyles } from \"./style\";\r\nimport { Grid } from \"@mui/material\";\r\nimport { Container } from \"@mui/material\";\r\nimport { utilFunction } from \"@acuteinfo/common-base\";\r\nimport { isBase64 } from \"./utils\";\r\n\r\nexport const BankDetails = ({ bannerDetails }: any) => {\r\n const [loginImageURL, setLoginImageURL] = useState<any | null>(null);\r\n const urlObj = useRef<any>(null);\r\n const classes = useStyles();\r\n\r\n const banner = useMemo(() => bannerDetails, []);\r\n\r\n useEffect(() => {\r\n if (Boolean(banner?.bannerImg)) {\r\n if (isBase64(banner?.bannerImg)) {\r\n let blob = utilFunction.base64toBlob(banner?.bannerImg);\r\n urlObj.current =\r\n typeof blob === \"object\" && Boolean(blob)\r\n ? URL.createObjectURL(blob)\r\n : \"\";\r\n setLoginImageURL(urlObj.current);\r\n }\r\n else {\r\n setLoginImageURL(banner?.bannerImg);\r\n }\r\n }\r\n }, [banner]);\r\n return (\r\n <>\r\n {/* <Grid container style={{ height: \"100vh\", overflow: \"hidden\" }}> */}\r\n <Grid item xs={6} md={6} lg={6} className={classes.loginLeft}>\r\n <Grid item xs={12} md={12} lg={12} style={{ height: \"70vh\" }}>\r\n <img\r\n alt=\"\"\r\n style={{\r\n width: \"100%\",\r\n height: \"100%\",\r\n objectFit: \"cover\",\r\n objectPosition: \"center\",\r\n }}\r\n src={Boolean(loginImageURL) ? loginImageURL : \"\"}\r\n />\r\n </Grid>\r\n <Grid\r\n item\r\n xs={12}\r\n md={12}\r\n lg={12}\r\n style={{\r\n height: \"30vh\",\r\n background: \"var(--theme-color5)\",\r\n }}\r\n >\r\n <Container maxWidth=\"sm\">\r\n <div\r\n className=\"text\"\r\n style={{\r\n color: \"white\",\r\n fontStyle: \"normal\",\r\n fontSize: \"35px\",\r\n paddingTop: \"30px\",\r\n }}\r\n >\r\n {banner?.bannerTitle ?? \"\"}\r\n <span style={{ marginLeft: \"8px\", fontWeight: \"900\" }}>\r\n {/* EasyBank */}\r\n </span>\r\n </div>\r\n <div\r\n style={{\r\n lineHeight: \"27px\",\r\n fontSize: \"15px\",\r\n fontWeight: \"500px\",\r\n letterSpacing: \"0.02em\",\r\n color: \"#ebedee\",\r\n maxWidth: \"464px\",\r\n }}\r\n >\r\n {banner?.bannerNote ?? \"\"}\r\n </div>\r\n </Container>\r\n </Grid>\r\n </Grid>\r\n {/* </Grid> */}\r\n </>\r\n );\r\n};\r\n","import {\r\n TextField,\r\n GradientButton,\r\n utilFunction,\r\n} from \"@acuteinfo/common-base\";\r\n\r\nimport {\r\n CircularProgress,\r\n Container,\r\n FormHelperText,\r\n Grid,\r\n} from \"@mui/material\";\r\nimport { Fragment, useRef, useState } from \"react\";\r\n// import { ResetPassword } from \"./api\";\r\nimport { useSnackbar } from \"notistack\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nexport const PasswordRotation = ({\r\n classes,\r\n ResetPassword,\r\n open,\r\n username,\r\n accessToken,\r\n tokenType,\r\n handleClose,\r\n}) => {\r\n const inputButtonRef = useRef<any>(null);\r\n const { enqueueSnackbar } = useSnackbar();\r\n const { t } = useTranslation();\r\n const [input, setInput] = useState({\r\n userName: username,\r\n oldpassword: \"\",\r\n password: \"\",\r\n confirmpassword: \"\",\r\n });\r\n const [pwdReset, setPasswordReset] = useState({\r\n isError: false,\r\n errorMessage: \"\",\r\n isLoading: false,\r\n isoldPwdError: false,\r\n oldpassworderror: \"\",\r\n isnewpwdError: false,\r\n newpassworderror: \"\",\r\n isconfirmnewpwdError: false,\r\n confirmnewpassworderror: \"\",\r\n });\r\n\r\n const handleCloseEvent = () => {\r\n handleClose(\"\");\r\n };\r\n const ClickEventHandler = async () => {\r\n let isError = false;\r\n let setPwdData = {\r\n isError: false,\r\n errorMessage: \"\",\r\n isLoading: false,\r\n isoldPwdError: false,\r\n oldpassworderror: \"\",\r\n isnewpwdError: false,\r\n newpassworderror: \"\",\r\n isconfirmnewpwdError: false,\r\n confirmnewpassworderror: \"\",\r\n };\r\n if (!Boolean(input.oldpassword)) {\r\n setPwdData.isoldPwdError = true;\r\n setPwdData.oldpassworderror = \"Current Password is required.\";\r\n isError = true;\r\n }\r\n\r\n let pwdData = utilFunction.ValidatePassword(input.password);\r\n if (Boolean(pwdData)) {\r\n setPwdData.isnewpwdError = true;\r\n setPwdData.newpassworderror = pwdData;\r\n isError = true;\r\n }\r\n if (\r\n Boolean(input.oldpassword) &&\r\n Boolean(input.password) &&\r\n input.oldpassword === input.password\r\n ) {\r\n setPwdData.isnewpwdError = true;\r\n setPwdData.newpassworderror =\r\n \"The new password cannot be the same as the old password\";\r\n isError = true;\r\n }\r\n if (!Boolean(input.confirmpassword)) {\r\n setPwdData.isconfirmnewpwdError = true;\r\n setPwdData.confirmnewpassworderror = \"Confirm new password is required.\";\r\n isError = true;\r\n } else if (\r\n Boolean(input.password) &&\r\n input.password !== input.confirmpassword\r\n ) {\r\n setPwdData.isconfirmnewpwdError = true;\r\n setPwdData.confirmnewpassworderror =\r\n \"New Password and Confirm Password did not matched\";\r\n isError = true;\r\n }\r\n if (isError) {\r\n setPasswordReset(setPwdData);\r\n } else {\r\n setPasswordReset((values) => ({ ...values, isLoading: true }));\r\n let response = await ResetPassword(\r\n input.userName,\r\n input.oldpassword,\r\n input.password,\r\n accessToken,\r\n tokenType,\r\n );\r\n setPasswordReset((values) => ({ ...values, isLoading: false }));\r\n if (response.status === \"0\") {\r\n enqueueSnackbar(\"Password successfully changed.\", {\r\n variant: \"success\",\r\n });\r\n handleClose(\"0\");\r\n } else {\r\n setPasswordReset((values) => ({\r\n ...values,\r\n isError: true,\r\n errorMessage: response.message,\r\n }));\r\n }\r\n }\r\n };\r\n const handleChange = (event) => {\r\n const name = event.target.name;\r\n let value = event.target.value;\r\n if (name === \"oldpassword\" && Boolean(value)) {\r\n setPasswordReset((values) => ({ ...values, isoldPwdError: false }));\r\n } else if (name === \"password\" && Boolean(value)) {\r\n setPasswordReset((values) => ({ ...values, isnewpwdError: false }));\r\n } else if (name === \"confirmpassword\" && Boolean(value)) {\r\n setPasswordReset((values) => ({\r\n ...values,\r\n isconfirmnewpwdError: false,\r\n }));\r\n }\r\n setInput((values) => ({ ...values, [name]: value }));\r\n };\r\n\r\n return (\r\n <Fragment>\r\n <Container maxWidth=\"xs\">\r\n <Grid alignItems=\"center\">\r\n <div\r\n style={{\r\n color: \"#000000 !important\",\r\n fontSize: \"30px\",\r\n fontWeight: \"600\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n }}\r\n >\r\n <h3>Password Rotation</h3>\r\n </div>\r\n <div\r\n className=\"\"\r\n style={{\r\n color: \"#949597\",\r\n fontSize: \"18px\",\r\n fontWeight: \"400\",\r\n alignItems: \"center\",\r\n fontStyle: \"normal\",\r\n width: \"360px\",\r\n }}\r\n >\r\n Please Verify OTP\r\n </div>\r\n <div className={classes.formWrap}>\r\n <TextField\r\n label={\"User ID\"}\r\n placeholder=\"Enter User ID\"\r\n fullWidth\r\n type={\"text\"}\r\n name=\"userName\"\r\n value={input.userName || \"\"}\r\n onChange={handleChange}\r\n InputLabelProps={{ shrink: true }}\r\n disabled={true}\r\n autoComplete=\"off\"\r\n inputProps={{ maxLength: 16 }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n <TextField\r\n autoFocus={true}\r\n label={\"Current Password\"}\r\n placeholder=\"Enter Current Password\"\r\n fullWidth\r\n type={\"password\"}\r\n name=\"oldpassword\"\r\n value={input.oldpassword || \"\"}\r\n onChange={handleChange}\r\n error={pwdReset.isoldPwdError}\r\n helperText={\r\n pwdReset.isoldPwdError ? t(pwdReset.oldpassworderror) : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={pwdReset.isLoading}\r\n autoComplete=\"off\"\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n inputProps={{ maxLength: 16 }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n <TextField\r\n label={\"New Password\"}\r\n placeholder=\"Enter New Password\"\r\n fullWidth\r\n type={\"password\"}\r\n name=\"password\"\r\n value={input.password || \"\"}\r\n onChange={handleChange}\r\n error={pwdReset.isnewpwdError}\r\n helperText={\r\n pwdReset.isnewpwdError ? t(pwdReset.newpassworderror) : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={pwdReset.isLoading}\r\n autoComplete=\"off\"\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n inputProps={{ maxLength: 16 }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n <TextField\r\n label={\"Confirm New Password\"}\r\n placeholder=\"Enter confirm new password\"\r\n fullWidth\r\n type={\"password\"}\r\n name=\"confirmpassword\"\r\n value={input.confirmpassword || \"\"}\r\n onChange={handleChange}\r\n error={pwdReset.isconfirmnewpwdError}\r\n helperText={\r\n pwdReset.isconfirmnewpwdError\r\n ? t(pwdReset.confirmnewpassworderror)\r\n : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={pwdReset.isLoading}\r\n autoComplete=\"off\"\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n inputProps={{ maxLength: 16 }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n {pwdReset.isError ? (\r\n <FormHelperText style={{ color: \"red\" }}>\r\n {pwdReset.errorMessage}\r\n </FormHelperText>\r\n ) : null}\r\n </div>\r\n <div\r\n style={{\r\n display: \"flex\",\r\n gap: \"10px\",\r\n margin: \"20px 0 0 10px\",\r\n width: \"94%\",\r\n }}\r\n >\r\n <GradientButton\r\n fullWidth\r\n disabled={pwdReset.isLoading}\r\n onClick={handleCloseEvent}\r\n className={classes.otpButtons}\r\n style={{\r\n border: \"var(--theme-color3)1px solid\",\r\n color: \"var(--theme-color3)\",\r\n // pebbackground: \"var(--theme-color2)\",\r\n borderRadius: \"10px\",\r\n }}\r\n >\r\n Back\r\n </GradientButton>\r\n <GradientButton\r\n style={{\r\n borderRadius: pwdReset.isLoading ? \"50%\" : \"10px\",\r\n height: pwdReset.isLoading ? \"40px\" : \"100%\",\r\n width: pwdReset.isLoading ? \"0px\" : \"100%\",\r\n minWidth: pwdReset.isLoading ? \"40px\" : \"80px\",\r\n }}\r\n fullWidth\r\n disabled={pwdReset.isLoading}\r\n onClick={ClickEventHandler}\r\n ref={inputButtonRef}\r\n className={classes.otpButtons}\r\n >\r\n {pwdReset.isLoading ? (\r\n <CircularProgress size={25} thickness={4.6} />\r\n ) : (\r\n \"Update\"\r\n )}\r\n </GradientButton>\r\n </div>\r\n </Grid>\r\n </Container>\r\n </Fragment>\r\n );\r\n};\r\n","import { utilFunction } from \"@acuteinfo/common-base\";\r\n\r\nimport { useReducer, useEffect, useState, useRef } from \"react\";\r\nimport { useStyles } from \"./style\";\r\nimport { UsernamePasswordField } from \"./usernamePassword\";\r\nimport { OTPModel, OTPModelForm } from \"./otpPopup\";\r\nimport { VerifyFinger } from \"./verifyFinger\";\r\nimport * as API from \"./api\";\r\nimport { matchFinger } from \"./biometric\";\r\nimport { Grid, Tooltip } from \"@mui/material\";\r\nimport { BankDetails } from \"./bankDetails\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { PasswordRotation } from \"./passwordRotation\";\r\nimport { isBase64 } from \"./utils\";\r\n\r\nconst inititalState = {\r\n username: \"\",\r\n firstName: \"\",\r\n lastName: \"\",\r\n loading: false,\r\n otploading: false,\r\n isError: false,\r\n isUsernameError: false,\r\n isPasswordError: false,\r\n userMessage: \"\",\r\n OtpuserMessage: \"\",\r\n userMessageforpassword: \"\",\r\n userMessageforusername: \"\",\r\n currentFlow: \"username\",\r\n transactionID: \"\",\r\n access_token: \"\",\r\n token_type: \"\",\r\n otpmodelClose: false,\r\n authType: \"\",\r\n isScanning: false,\r\n auth_data: [],\r\n company_ID: \"\",\r\n Branch_CD: \"\",\r\n auth_type: \"O\",\r\n otpValidFor: 60,\r\n};\r\n\r\nconst reducer = (state, action) => {\r\n switch (action.type) {\r\n case \"inititateUserFingerVerification\":\r\n case \"inititateOTPVerification\": {\r\n return {\r\n ...state,\r\n loading: true,\r\n isError: false,\r\n isUsernameError: false,\r\n isPasswordError: false,\r\n isOTPError: false,\r\n isBiometricError: false,\r\n userMessage: \"\",\r\n };\r\n }\r\n case \"inititateUserFingerScanner\": {\r\n return { ...state, isScanning: true, isBiometricError: false };\r\n }\r\n case \"usernameandpasswordrequired\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n isError: true,\r\n isUsernameError: true,\r\n isPasswordError: true,\r\n otploading: false,\r\n userMessage: action?.payload?.error,\r\n userMessageforpassword: action?.payload?.errorPassword,\r\n userMessageforusername: action?.payload?.errorUsername,\r\n username: \"\",\r\n transactionID: \"\",\r\n };\r\n }\r\n case \"passwordVerificationFailure\":\r\n return {\r\n ...state,\r\n loading: false,\r\n isError: true,\r\n isUsernameError: false,\r\n isPasswordError: true,\r\n otploading: false,\r\n userMessage: action?.payload?.error,\r\n userMessageforpassword: action?.payload?.errorPassword,\r\n username: \"\",\r\n transactionID: \"\",\r\n };\r\n case \"usernameVerificationFailure\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n isError: true,\r\n isUsernameError: true,\r\n isPasswordError: false,\r\n otploading: false,\r\n userMessage: action?.payload?.error,\r\n userMessageforusername: action?.payload?.errorUsername,\r\n username: \"\",\r\n transactionID: \"\",\r\n };\r\n }\r\n case \"inititatePasswordVerification\": {\r\n return {\r\n ...state,\r\n loading: true,\r\n isError: false,\r\n isUsernameError: false,\r\n isPasswordError: false,\r\n otploading: false,\r\n userMessage: \"\",\r\n userMessageforusername: \"\",\r\n userMessageforpassword: \"\",\r\n username: \"\",\r\n transactionID: \"\",\r\n access_token: \"\",\r\n };\r\n }\r\n case \"passwordRotation\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n username: action?.payload?.username,\r\n access_token: action?.payload?.access_token,\r\n token_type: action?.payload?.token_type,\r\n };\r\n }\r\n case \"passwordRotationsuccess\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n otpmodelClose: Boolean(action?.payload?.otpmodelclose),\r\n };\r\n }\r\n case \"passwordVerificationSuccessful\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n otploading: false,\r\n transactionID: action?.payload?.transactionID,\r\n username: action?.payload?.username,\r\n auth_type: action?.payload?.auth_type,\r\n OtpuserMessage: \"\",\r\n access_token: action?.payload?.access_token,\r\n token_type: action?.payload?.token_type,\r\n otpmodelClose: false,\r\n currentFlow: \"OTP\",\r\n authType: action?.payload?.authType,\r\n auth_data: action?.payload?.auth_data,\r\n otpValidFor: action?.payload?.otpValidFor,\r\n company_ID: action?.paylod?.company_ID,\r\n };\r\n }\r\n case \"inititatebiometricVerification\": {\r\n return {\r\n ...state,\r\n loading: true,\r\n otploading: true,\r\n OtpuserMessage: \"\",\r\n otpmodelClose: false,\r\n };\r\n }\r\n case \"biometricVerificationFailure\":\r\n return {\r\n ...state,\r\n loading: false,\r\n isError: true,\r\n isBiometricError: true,\r\n userMessage: action?.payload?.error,\r\n isScanning: false,\r\n };\r\n case \"biometricVerificationSuccessful\":\r\n return {\r\n ...state,\r\n loading: false,\r\n isError: false,\r\n isBiometricError: false,\r\n state: action.payload,\r\n isScanning: false,\r\n };\r\n case \"OTPVerificationComplate\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n otploading: false,\r\n OtpuserMessage: \"\",\r\n };\r\n }\r\n case \"OTPVerificationFailed\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n otploading: false,\r\n OtpuserMessage: action?.payload?.error,\r\n otpmodelClose: Boolean(action?.payload?.otpmodelclose),\r\n };\r\n }\r\n case \"OTPResendSuccess\": {\r\n return {\r\n ...state,\r\n transactionID: action?.payload?.transactionID,\r\n };\r\n }\r\n case \"backToUsernameVerification\": {\r\n return {\r\n ...inititalState,\r\n isPasswordError: action?.payload?.isError,\r\n userMessageforpassword: action?.payload?.errorMessage,\r\n };\r\n }\r\n\r\n default: {\r\n return state;\r\n }\r\n }\r\n};\r\n\r\ninterface AuthControllerProps {\r\n bannerDetails: {\r\n bannerImg: string;\r\n bannerTitle: string;\r\n bannerNote: string;\r\n };\r\n logoUrl: string;\r\n loginFn: Function;\r\n veirfyUsernameandPassword: Function;\r\n verifyOTP: Function;\r\n OTPResendRequest: Function;\r\n ResetPassword: Function;\r\n LanguageComponent: React.ComponentType<any>;\r\n forgotPasswordEndpoint: string;\r\n}\r\n\r\nexport const AuthControllerWrapper: React.FC<AuthControllerProps> = ({\r\n bannerDetails,\r\n logoUrl,\r\n loginFn,\r\n veirfyUsernameandPassword,\r\n verifyOTP,\r\n OTPResendRequest,\r\n ResetPassword,\r\n LanguageComponent,\r\n forgotPasswordEndpoint\r\n}) => {\r\n console.log(\"logoUrl\", logoUrl, typeof logoUrl)\r\n // const { isLoggedIn, login } = useContext(AuthContext);\r\n const classes = useStyles();\r\n // const navigate = useNavigate();\r\n const [loginState, dispath] = useReducer(reducer, inititalState);\r\n const [openpwdreset, setOpenPwdReset] = useState(false);\r\n const failureCount = useRef(0);\r\n const [dashboardLogoURL, setDashboardLogoURL] = useState<any | null>(null);\r\n const urlObj = useRef<any>(null);\r\n const { t } = useTranslation();\r\n const otpResendRef = useRef(1);\r\n\r\n useEffect(() => {\r\n if (Boolean(logoUrl)) {\r\n if (isBase64(logoUrl)) {\r\n let blob = utilFunction.base64toBlob(logoUrl);\r\n urlObj.current =\r\n typeof blob === \"object\" && Boolean(blob)\r\n ? URL.createObjectURL(blob)\r\n : \"\";\r\n setDashboardLogoURL(urlObj.current);\r\n }\r\n else {\r\n setDashboardLogoURL(logoUrl);\r\n }\r\n }\r\n }, [logoUrl]);\r\n\r\n const verifyUsernamePassword = async (username, password) => {\r\n if (Boolean(username) && Boolean(password)) {\r\n dispath({ type: \"inititatePasswordVerification\" });\r\n const { status, data, message, responseType, access_token } =\r\n await veirfyUsernameandPassword(username, password);\r\n if (status === \"0\" && responseType === \"S\") {\r\n dispath({\r\n type: \"passwordRotation\",\r\n payload: {\r\n username: username,\r\n access_token: access_token?.access_token,\r\n token_type: access_token?.token_type,\r\n },\r\n });\r\n setOpenPwdReset(true);\r\n } else if (status === \"0\") {\r\n dispath({\r\n type: \"passwordVerificationSuccessful\",\r\n payload: {\r\n transactionID: data?.REQUEST_CD,\r\n username: username,\r\n access_token: access_token?.access_token,\r\n token_type: access_token?.token_type,\r\n authType: data?.AUTH_TYPE,\r\n auth_data: [\r\n {\r\n company_ID: data?.BASE_COMP_CD ?? \"\",\r\n branch_cd: data?.BASE_BRANCH_CD,\r\n },\r\n ],\r\n otpValidFor: data?.OTP_VALID,\r\n },\r\n });\r\n } else {\r\n dispath({\r\n type: \"passwordVerificationFailure\",\r\n payload: { error: message, errorPassword: message },\r\n });\r\n }\r\n } else if (!Boolean(username) && !Boolean(password)) {\r\n dispath({\r\n type: \"usernameandpasswordrequired\",\r\n payload: {\r\n error: \"UsernamenandPasswordisRequired\",\r\n errorUsername: \"UsernameisRequired\",\r\n errorPassword: \"PasswordisRequired\",\r\n },\r\n });\r\n } else if (!Boolean(username)) {\r\n dispath({\r\n type: \"usernameVerificationFailure\",\r\n payload: {\r\n error: \"UsernameisRequired\",\r\n errorUsername: \"UsernameisRequired\",\r\n },\r\n });\r\n } else {\r\n dispath({\r\n type: \"passwordVerificationFailure\",\r\n payload: {\r\n error: \"PasswordisRequired\",\r\n errorPassword: \"PasswordisRequired\",\r\n },\r\n });\r\n }\r\n };\r\n\r\n const VerifyOTP = async (OTPNumber) => {\r\n if (Boolean(OTPNumber) && OTPNumber.toString().length === 6) {\r\n dispath({ type: \"inititateOTPVerification\" });\r\n const { status, data, message } = await verifyOTP(\r\n loginState.transactionID,\r\n // loginState.app_transactionId,\r\n loginState.username,\r\n OTPNumber,\r\n loginState.access_token,\r\n loginState.token_type,\r\n loginState.authType,\r\n );\r\n console.log(\"menuapierror\", message);\r\n if (status === \"0\") {\r\n // try {\r\n // audio.play();\r\n // } catch (error) {\r\n // console.log(error);\r\n // }\r\n dispath({ type: \"OTPVerificationComplate\" });\r\n loginFn(data);\r\n } else if (status === \"999\") {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: message, otpmodelclose: true },\r\n });\r\n // enqueueSnackbar(message, { variant: \"error\" });\r\n } else {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: message, otpmodelclose: false },\r\n });\r\n }\r\n } else {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: \"Please enter a 6 digit OTP number\" },\r\n });\r\n }\r\n };\r\n\r\n const handlePasswordRotationClose = (flag) => {\r\n if (flag === \"0\") {\r\n dispath({\r\n type: \"passwordRotationsuccess\",\r\n payload: { otpmodelclose: true },\r\n });\r\n }\r\n setOpenPwdReset(false);\r\n };\r\n const changeUserName = (isError = false, errorMessage = \"\") => {\r\n dispath({\r\n type: \"backToUsernameVerification\",\r\n payload: {\r\n isError: isError,\r\n errorMessage: errorMessage,\r\n },\r\n });\r\n };\r\n const verifyFinger = async () => {\r\n try {\r\n dispath({ type: \"inititateUserFingerScanner\" });\r\n const fingerResponse = await API.capture();\r\n if (fingerResponse?.ErrorCode === \"0\") {\r\n dispath({ type: \"inititateUserFingerVerification\" });\r\n const promise: any = await matchFinger(\r\n loginState.auth_data,\r\n fingerResponse.IsoTemplate,\r\n );\r\n if (promise.isError) {\r\n dispath({\r\n type: \"biometricVerificationFailure\",\r\n payload: {\r\n error: promise?.errorMessage ?? \"Something went wrong.\",\r\n },\r\n });\r\n } else {\r\n const { status, data, message } = await verifyOTP(\r\n loginState.transactionID,\r\n loginState.username,\r\n String(promise?.sr_cd ?? \"0\"),\r\n loginState.access_token,\r\n loginState.token_type,\r\n loginState.authType,\r\n promise.status ? \"Y\" : \"N\",\r\n );\r\n if (status === \"0\" && promise.status) {\r\n dispath({ type: \"biometricVerificationSuccessful\" });\r\n loginFn(data);\r\n } else if (status === \"0\" && !promise.status) {\r\n failureCount.current = failureCount.current + 1;\r\n dispath({\r\n type: \"biometricVerificationFailure\",\r\n payload: {\r\n error: \"Finger Not Match.Please Try Again\",\r\n },\r\n });\r\n if (failureCount.current >= 3)\r\n changeUserName(true, \"Finger Not Match.Please Try Again\");\r\n } else if (status === \"99\") {\r\n dispath({\r\n type: \"biometricVerificationFailure\",\r\n payload: {\r\n error: message ?? \"Finger Not Match.Please Try Again\",\r\n },\r\n });\r\n } else if (status === \"999\") {\r\n dispath({\r\n type: \"biometricVerificationFailure\",\r\n payload: {\r\n error: message ?? \"Finger Not Match.Please Try Again\",\r\n },\r\n });\r\n changeUserName(\r\n true,\r\n message ?? \"Finger Not Match.Please Try Again\",\r\n );\r\n } else {\r\n dispath({\r\n type: \"biometricVerificationFailure\",\r\n payload: {\r\n error: message ?? \"Finger Not Match.Please Try Again\",\r\n },\r\n });\r\n }\r\n }\r\n } else {\r\n dispath({\r\n type: \"biometricVerificationFailure\",\r\n payload: {\r\n error:\r\n fingerResponse?.ErrorMessage ?? t(\"Biometric.MFS100NotFound\"),\r\n },\r\n });\r\n }\r\n } catch (e: any) {\r\n dispath({\r\n type: \"biometricVerificationFailure\",\r\n payload: {\r\n error: e?.message ?? t(\"Biometric.Unknownerroroccured\"),\r\n },\r\n });\r\n }\r\n };\r\n return (\r\n <>\r\n <Grid container style={{ height: \"100vh\", overflow: \"hidden\" }}>\r\n <BankDetails bannerDetails={bannerDetails} />\r\n <Grid item xs={11} md={6} lg={6} sm={6}>\r\n <Grid\r\n container\r\n direction=\"row\"\r\n justifyContent=\"flex-end\"\r\n alignItems=\"center\"\r\n padding={\"25px\"}\r\n maxWidth={\"150px\"}\r\n >\r\n <Tooltip describeChild title=\"Enfinity-CBS-UI-V1.0.17\">\r\n <img\r\n src={Boolean(dashboardLogoURL) ? dashboardLogoURL : \"\"}\r\n alt=\"Logo\"\r\n width={\"100%\"}\r\n />\r\n </Tooltip>\r\n </Grid>\r\n\r\n {/* long dropdown */}\r\n <Grid\r\n container\r\n direction=\"row\"\r\n justifyContent=\"flex-end\"\r\n alignItems=\"center\"\r\n padding={\"0 35px 0 0\"}\r\n maxWidth={\"170px\"}\r\n overflow={\"hidden\"}\r\n >\r\n <LanguageComponent />\r\n </Grid>\r\n\r\n {openpwdreset ? (\r\n <PasswordRotation\r\n classes={classes}\r\n ResetPassword={ResetPassword}\r\n open={openpwdreset}\r\n username={loginState.username}\r\n accessToken={loginState.access_token}\r\n tokenType={loginState.token_type}\r\n handleClose={handlePasswordRotationClose}\r\n />\r\n ) : (\r\n <>\r\n {loginState.currentFlow === \"username\" ? (\r\n <UsernamePasswordField\r\n key=\"username\"\r\n classes={classes}\r\n loginState={loginState}\r\n verifyUsernamePassword={verifyUsernamePassword}\r\n forgotPasswordEndpoint={forgotPasswordEndpoint}\r\n />\r\n ) : (\r\n <>\r\n {loginState.authType === \"OTP\" ? (\r\n <OTPModel\r\n key=\"otp\"\r\n OTPResendRequest={OTPResendRequest}\r\n classes={classes}\r\n loginState={loginState}\r\n VerifyOTP={VerifyOTP}\r\n previousStep={changeUserName}\r\n OTPError={t(loginState?.OtpuserMessage ?? \"\")}\r\n setOTPError={(error) => {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: error },\r\n });\r\n }}\r\n open={true}\r\n handleClose={changeUserName}\r\n resendFlag={\"LOGIN\"}\r\n setNewRequestID={(newRequestID) => {\r\n dispath({\r\n type: \"OTPResendSuccess\",\r\n payload: { transactionID: newRequestID },\r\n });\r\n otpResendRef.current = otpResendRef.current + 1;\r\n }}\r\n otpresendCount={otpResendRef.current}\r\n />\r\n ) : loginState.authType === \"TOTP\" ? (\r\n <>\r\n {\" \"}\r\n <OTPModelForm\r\n key={\"OTPForm\"}\r\n OTPResendRequest={OTPResendRequest}\r\n classes={classes}\r\n // handleClose={() => {}}\r\n handleClose={changeUserName}\r\n loginState={loginState}\r\n VerifyOTP={VerifyOTP}\r\n OTPError={loginState?.OtpuserMessage ?? \"\"}\r\n setOTPError={(error) => {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: error },\r\n });\r\n }}\r\n resendFlag={\"LOGIN\"}\r\n setNewRequestID={(newRequestID) => {\r\n dispath({\r\n type: \"OTPResendSuccess\",\r\n payload: { transactionID: newRequestID },\r\n });\r\n otpResendRef.current = otpResendRef.current + 1;\r\n }}\r\n otpresendCount={otpResendRef.current}\r\n />\r\n </>\r\n ) : (\r\n <VerifyFinger\r\n key=\"biometric\"\r\n classes={classes}\r\n loginState={loginState}\r\n verifyFinger={verifyFinger}\r\n previousStep={changeUserName}\r\n />\r\n )}\r\n </>\r\n )}\r\n </>\r\n )}\r\n </Grid>\r\n </Grid>\r\n </>\r\n );\r\n};\r\n","import { TextField, GradientButton } from \"@acuteinfo/common-base\";\r\n\r\nimport { Fragment, useState, useEffect, useRef } from \"react\";\r\nimport {\r\n CircularProgress,\r\n FormHelperText,\r\n IconButton,\r\n InputAdornment,\r\n} from \"@mui/material\";\r\nimport Visibility from \"@mui/icons-material/Visibility\";\r\nimport VisibilityOff from \"@mui/icons-material/VisibilityOff\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nexport const ForgotPasswordFields = ({ classes, loginState, onSubmit, navigate, loginPageEndpoint }) => {\r\n console.log(\"lginstate\", loginState)\r\n const [input, setInput] = useState({\r\n userName: loginState.workingState === 1 ? loginState?.username : \"\",\r\n mobileno: \"\",\r\n password: \"\",\r\n confirmpassword: \"\",\r\n });\r\n console.log(\"input\", input)\r\n const inputRef = useRef<any>(null);\r\n const inputPassRef = useRef<any>(null);\r\n const inputButtonRef = useRef<any>(null);\r\n const [showPasswordTime, setShowPasswordTime] = useState(0);\r\n const [showConfirmPasswordTime, setShowConfirmPasswordTime] = useState(0);\r\n const showPassword = Date.now() < showPasswordTime;\r\n const showConfirmPassword = Date.now() < showConfirmPasswordTime;\r\n const [, forceUpdate] = useState<any | null>();\r\n const timerRef = useRef<any>(null);\r\n\r\n useEffect(() => {\r\n return () => clearTimeout(timerRef.current);\r\n }, []);\r\n // const navigate = useNavigate();\r\n const { t } = useTranslation();\r\n const handleChange = (event) => {\r\n const name = event.target.name;\r\n let value = event.target.value;\r\n if (name === \"userName\" && value) {\r\n loginState.isUsernameError = false;\r\n }\r\n if (name === \"mobileno\" && value) {\r\n value = value.replace(/\\D/g, \"\");\r\n if (Boolean(value)) {\r\n loginState.isMobileError = false;\r\n }\r\n }\r\n setInput((values) => ({ ...values, [name]: value }));\r\n };\r\n useEffect(() => {\r\n if (loginState.workingState === 1) {\r\n setTimeout(() => {\r\n inputPassRef?.current?.focus?.();\r\n }, 2000);\r\n }\r\n }, [loginState.workingState]);\r\n return (\r\n <Fragment>\r\n <div className={classes.formWrap}>\r\n <TextField\r\n autoFocus={true}\r\n label={t(\"UserID\")}\r\n placeholder={String(t(\"UserID\"))}\r\n fullWidth\r\n type={\"text\"}\r\n name=\"userName\"\r\n value={input.userName || \"\"}\r\n onChange={handleChange}\r\n error={loginState.isUsernameError}\r\n helperText={\r\n loginState.isUsernameError\r\n ? t(loginState.userMessageforusername)\r\n : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={\r\n loginState.loading\r\n ? true\r\n : loginState.workingState === 0\r\n ? false\r\n : true\r\n }\r\n autoComplete=\"off\"\r\n ref={inputRef}\r\n inputProps={{ maxLength: 16 }}\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n {loginState.workingState === 0 ? (\r\n <TextField\r\n label={t(\"MobileNo\")}\r\n placeholder=\"Enter Mobile No.\"\r\n // placeholder={String(t(\"EnterMobileNo\"))}\r\n fullWidth\r\n type={\"text\"}\r\n name=\"mobileno\"\r\n value={input.mobileno || \"\"}\r\n onChange={handleChange}\r\n error={loginState.isMobileError}\r\n helperText={\r\n loginState.isMobileError\r\n ? t(loginState.userMessageforMobileno)\r\n : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={\r\n loginState.loading\r\n ? true\r\n : loginState.workingState === 0\r\n ? false\r\n : true\r\n }\r\n autoComplete=\"off\"\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n inputProps={{ maxLength: 13 }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n ) : null}\r\n {loginState.workingState === 1 ? (\r\n <>\r\n <TextField\r\n autoFocus={true}\r\n label={t(\"Password\")}\r\n placeholder=\"Enter Password\"\r\n fullWidth\r\n type={showPassword ? \"text\" : \"password\"}\r\n name=\"password\"\r\n value={input.password || \"\"}\r\n onChange={handleChange}\r\n error={loginState.isPasswordError}\r\n helperText={\r\n loginState.isPasswordError\r\n ? t(loginState.userMessageforPassword)\r\n : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={loginState.loading}\r\n autoComplete=\"off\"\r\n ref={inputPassRef}\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n InputProps={{\r\n endAdornment: (\r\n <InputAdornment position=\"end\">\r\n <IconButton\r\n aria-label=\"toggle password visibility\"\r\n onClick={() => {\r\n if (!showPassword) {\r\n setShowPasswordTime(Date.now() + 5000);\r\n timerRef.current = setTimeout(\r\n () => forceUpdate(Date.now()),\r\n 5000\r\n );\r\n } else if (showPassword) setShowPasswordTime(0);\r\n }}\r\n onMouseDown={(e) => e.preventDefault()}\r\n disabled={loginState.loading}\r\n >\r\n {showPassword ? <Visibility /> : <VisibilityOff />}\r\n </IconButton>\r\n </InputAdornment>\r\n ),\r\n }}\r\n inputProps={{ maxLength: 16 }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n <TextField\r\n label={t(\"ConfirmPassword\")}\r\n placeholder={String(t(\"EnterConfirmPassword\"))}\r\n fullWidth\r\n type={showConfirmPassword ? \"text\" : \"password\"}\r\n name=\"confirmpassword\"\r\n value={input.confirmpassword || \"\"}\r\n onChange={handleChange}\r\n error={loginState.isConfirmPasswordError}\r\n helperText={\r\n loginState.isConfirmPasswordError\r\n ? t(loginState.userMessageforconfirmPassword)\r\n : \"\"\r\n }\r\n InputLabelProps={{ shrink: true }}\r\n disabled={loginState.loading}\r\n autoComplete=\"off\"\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\") {\r\n inputButtonRef?.current?.click?.();\r\n }\r\n }}\r\n InputProps={{\r\n endAdornment: (\r\n <InputAdornment position=\"end\">\r\n <IconButton\r\n aria-label=\"toggle password visibility\"\r\n onClick={() => {\r\n if (!showConfirmPassword) {\r\n setShowConfirmPasswordTime(Date.now() + 5000);\r\n timerRef.current = setTimeout(\r\n () => forceUpdate(Date.now()),\r\n 5000\r\n );\r\n } else if (showConfirmPassword)\r\n setShowConfirmPasswordTime(0);\r\n }}\r\n onMouseDown={(e) => e.preventDefault()}\r\n disabled={loginState.loading}\r\n >\r\n {showConfirmPassword ? <Visibility /> : <VisibilityOff />}\r\n </IconButton>\r\n </InputAdornment>\r\n ),\r\n }}\r\n inputProps={{ maxLength: 16 }}\r\n style={{ paddingBottom: \"8px\" }}\r\n />\r\n </>\r\n ) : null}\r\n {loginState.isApiError ? (\r\n <FormHelperText style={{ color: \"red\" }}>\r\n {loginState.apierrorMessage}\r\n </FormHelperText>\r\n ) : null}\r\n <div\r\n style={{\r\n marginTop: \"20px\",\r\n display: \"flex\",\r\n flexDirection: \"row-reverse\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n flex: \"auto\",\r\n textAlign: \"center\",\r\n marginTop: \"5px\",\r\n marginBottom: \"17px\",\r\n }}\r\n >\r\n <div>\r\n <GradientButton\r\n style={{ borderRadius: \"10px\", marginRight: \"5px\" }}\r\n // fullWidth\r\n\r\n disabled={loginState.loading}\r\n onClick={() => {\r\n navigate(loginPageEndpoint);\r\n }}\r\n // starticon={\"West\"}\r\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\r\n >\r\n {t(\"backtologin\")}\r\n </GradientButton>\r\n\r\n <GradientButton\r\n style={{ borderRadius: \"10px\" }}\r\n disabled={loginState.loading}\r\n onClick={() => {\r\n onSubmit(input, loginState.workingState);\r\n }}\r\n ref={inputButtonRef}\r\n // endicon={loginState.loading ? null : \"East\"}\r\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\r\n >\r\n {loginState.loading ? (\r\n <CircularProgress size={25} thickness={4.6} />\r\n ) : (\r\n t(\"Next\")\r\n )}\r\n </GradientButton>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </Fragment>\r\n );\r\n};\r\n","import { useReducer, useState, useRef, useEffect } from \"react\";\r\nimport { NavigateFunction } from \"react-router-dom\";\r\nimport { useStyles } from \"./style\";\r\nimport { ForgotPasswordFields } from \"./forgotPasswordField\";\r\nimport { OTPModelForm } from \"./otpPopup\";\r\nimport { utilFunction } from \"@acuteinfo/common-base\";\r\nimport { useSnackbar } from \"notistack\";\r\nimport { Container, Grid } from \"@mui/material\";\r\nimport { BankDetails } from \"./bankDetails\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { t } from \"i18next\";\r\nimport { isBase64 } from \"./utils\";\r\n\r\nexport const ValidatePassword = (pwd) => {\r\n console.log(\"pwd\", pwd)\r\n // if (!Boolean(pwd)) {\r\n // return \"Password is Required\";\r\n // } else if (pwd.length < 8 || pwd.length > 16) {\r\n // return \"Password must be between 8 and 16 characters long.\";\r\n // }\r\n // return \"\";\r\n\r\n if (!Boolean(pwd)) {\r\n console.log(\"in if\")\r\n // return t(\"PasswordisRequired\");\r\n return \"Password is Required\";\r\n } else if (!/(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])(?=.*\\W)(?!.*\\s)/.test(pwd)) {\r\n console.log(\"in else if 1\")\r\n return t(\"EnterPasswordPolicy\");\r\n } else if (pwd.length < 8 || pwd.length > 16) {\r\n // return t(\"EnterPasswordValid\");\r\n console.log(\"in else if 2\")\r\n return t(\"EnterPasswordValid\");\r\n // return \"Password must be between 8 and 16 characters long.\";\r\n }\r\n console.log(\"return\")\r\n return \"\";\r\n};\r\n\r\nconst inititalState = {\r\n isUsernameError: false,\r\n userMessageforusername: \"\",\r\n loading: false,\r\n isMobileError: false,\r\n userMessageforMobileno: \"\",\r\n isPasswordError: false,\r\n userMessageforPassword: \"\",\r\n isConfirmPasswordError: false,\r\n userMessageforconfirmPassword: \"\",\r\n workingState: 0,\r\n isApiError: false,\r\n apierrorMessage: \"\",\r\n otploading: false,\r\n OtpuserMessage: \"\",\r\n otpmodelClose: false,\r\n requestCd: \"\",\r\n username: \"\",\r\n auth_type: \"O\",\r\n transactionID: \"\",\r\n};\r\nconst reducer = (state, action) => {\r\n switch (action.type) {\r\n case \"verifyUserNameandMobileNoFailed\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n isUsernameError: action?.payload?.isUsernameError ?? false,\r\n isMobileError: action?.payload?.isMobileError ?? false,\r\n userMessageforusername: action?.payload?.userMessageforusername ?? \"\",\r\n userMessageforMobileno: action?.payload?.userMessageforMobileno ?? \"\",\r\n isApiError: action?.payload?.isApiError ?? false,\r\n apierrorMessage: action?.payload?.apierrorMessage ?? \"\",\r\n requestCd: \"\",\r\n username: \"\",\r\n };\r\n }\r\n case \"initverifyUserNameandMobileNo\": {\r\n return {\r\n ...state,\r\n loading: true,\r\n isUsernameError: false,\r\n isMobileError: false,\r\n requestCd: \"\",\r\n username: \"\",\r\n };\r\n }\r\n case \"verifyUserNameandMobileNoSuccess\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n isUsernameError: false,\r\n isMobileError: false,\r\n workingState: 0,\r\n isApiError: false,\r\n apierrorMessage: \"\",\r\n requestCd: action?.payload?.requestCd ?? \"\",\r\n username: action?.payload?.username ?? \"\",\r\n auth_type: action?.payload?.auth_type,\r\n company_ID: action?.payload?.company_ID,\r\n branch_cd: action?.payload?.branch_cd,\r\n otpValidFor: action?.payload?.otpValidFor,\r\n };\r\n }\r\n case \"inititateOTPVerification\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n otploading: true,\r\n OtpuserMessage: \"\",\r\n otpmodelClose: false,\r\n };\r\n }\r\n case \"OTPVerificationComplate\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n otploading: false,\r\n OtpuserMessage: \"\",\r\n workingState: 1,\r\n otpmodelClose: Boolean(action?.payload?.otpmodelclose),\r\n };\r\n }\r\n case \"OTPVerificationFailed\": {\r\n return {\r\n ...state,\r\n otploading: false,\r\n OtpuserMessage: action?.payload?.error,\r\n otpmodelClose: Boolean(action?.payload?.otpmodelclose),\r\n };\r\n }\r\n case \"verifyPasswordFailed\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n isPasswordError: action?.payload?.isPasswordError ?? false,\r\n isConfirmPasswordError:\r\n action?.payload?.isConfirmPasswordError ?? false,\r\n userMessageforPassword: action?.payload?.userMessageforPassword ?? \"\",\r\n userMessageforconfirmPassword:\r\n action?.payload?.userMessageforconfirmPassword ?? \"\",\r\n isApiError: false,\r\n apierrorMessage: \"\",\r\n };\r\n }\r\n case \"initverifyPasswordSetReq\": {\r\n return {\r\n ...state,\r\n loading: true,\r\n isPasswordError: false,\r\n isConfirmPasswordError: false,\r\n };\r\n }\r\n case \"passwordRegistaredSuccess\": {\r\n return {\r\n ...state,\r\n loading: false,\r\n isPasswordError: false,\r\n isConfirmPasswordError: false,\r\n };\r\n }\r\n case \"OTPResendSuccess\": {\r\n return {\r\n ...state,\r\n requestCd: action?.payload?.requestCd,\r\n };\r\n }\r\n default: {\r\n return state;\r\n }\r\n }\r\n};\r\n\r\ninterface ForgotPasswordControllerProps {\r\n bannerDetails: {\r\n bannerImg: string;\r\n bannerTitle: string;\r\n bannerNote: string;\r\n };\r\n logoUrl: string;\r\n updatenewPassword: Function;\r\n veirfyUsernameandMobileNo: Function;\r\n verifyOTPForPWDReset: Function,\r\n LanguageComponent: React.ComponentType<any>;\r\n screenFlag: \"password\" | \"totp\",\r\n navigate: NavigateFunction,\r\n loginPageEndpoint: string;\r\n}\r\n\r\nexport const ForgotPasswordControllerWrapper: React.FC<ForgotPasswordControllerProps> = ({\r\n screenFlag,\r\n updatenewPassword,\r\n veirfyUsernameandMobileNo,\r\n verifyOTPForPWDReset,\r\n logoUrl,\r\n LanguageComponent,\r\n bannerDetails,\r\n navigate,\r\n loginPageEndpoint\r\n}) => {\r\n const classes = useStyles();\r\n const [loginState, dispath] = useReducer(reducer, inititalState);\r\n const [open, setOpen] = useState(false);\r\n const { enqueueSnackbar } = useSnackbar();\r\n const otpResendRef = useRef(1);\r\n const { t } = useTranslation();\r\n const [dashboardLogoURL, setDashboardLogoURL] = useState<any | null>(null);\r\n const urlObj = useRef<any>(null);\r\n\r\n useEffect(() => {\r\n if (Boolean(logoUrl)) {\r\n if (isBase64(logoUrl)) {\r\n let blob = utilFunction.base64toBlob(logoUrl);\r\n urlObj.current =\r\n typeof blob === \"object\" && Boolean(blob)\r\n ? URL.createObjectURL(blob)\r\n : \"\";\r\n setDashboardLogoURL(urlObj.current);\r\n }\r\n else {\r\n setDashboardLogoURL(logoUrl);\r\n }\r\n }\r\n }, [logoUrl]);\r\n\r\n const onSubmitHandel = async (data, flag) => {\r\n if (verifyRequestData(data, flag)) {\r\n if (flag === 0) {\r\n dispath({ type: \"initverifyUserNameandMobileNo\" });\r\n const {\r\n status,\r\n data: resdata,\r\n message,\r\n } = await veirfyUsernameandMobileNo(\r\n data?.userName.toLowerCase(),\r\n data?.mobileno,\r\n screenFlag\r\n );\r\n\r\n if (status === \"0\") {\r\n dispath({\r\n type: \"verifyUserNameandMobileNoSuccess\",\r\n payload: {\r\n requestCd: String(resdata?.TRAN_CD ?? \"\"),\r\n username: data?.userName,\r\n auth_type: resdata?.AUTH_TYPE,\r\n company_ID: resdata?.COMP_CD,\r\n branch_cd: resdata?.BRANCH_CD,\r\n otpValidFor: resdata?.OTP_VALID,\r\n },\r\n });\r\n setOpen(true);\r\n } else {\r\n dispath({\r\n type: \"verifyUserNameandMobileNoFailed\",\r\n payload: {\r\n isApiError: true,\r\n apierrorMessage: message,\r\n },\r\n });\r\n }\r\n } else if (flag === 1) {\r\n dispath({ type: \"initverifyPasswordSetReq\" });\r\n const {\r\n status,\r\n data: resdata,\r\n message,\r\n } = await updatenewPassword(\r\n loginState?.requestCd,\r\n loginState?.username,\r\n data?.password\r\n );\r\n if (status === \"0\") {\r\n dispath({ type: \"passwordRegistaredSuccess\" });\r\n enqueueSnackbar(\"Password successfully reset\", {\r\n variant: \"success\",\r\n });\r\n navigate(loginPageEndpoint);\r\n } else if (status === \"99\") {\r\n dispath({\r\n type: \"verifyPasswordFailed\",\r\n payload: {\r\n isApiError: true,\r\n apierrorMessage: message,\r\n },\r\n });\r\n } else {\r\n enqueueSnackbar(message, {\r\n variant: \"error\",\r\n });\r\n navigate(loginPageEndpoint);\r\n }\r\n }\r\n }\r\n };\r\n\r\n const verifyRequestData = (data, flag) => {\r\n if (flag === 0) {\r\n let validationData = {\r\n isUsernameError: false,\r\n isMobileError: false,\r\n userMessageforusername: \"\",\r\n userMessageforMobileno: \"\",\r\n };\r\n if (!Boolean(data.userName)) {\r\n validationData.isUsernameError = true;\r\n validationData.userMessageforusername = \"UsernameisRequired\";\r\n }\r\n if (!Boolean(data.mobileno)) {\r\n validationData.isMobileError = true;\r\n validationData.userMessageforMobileno = \"MobileNoisRequired\";\r\n } else if (\r\n isNaN(data.mobileno) ||\r\n (data.mobileno.length !== 10 && data.mobileno.length !== 13)\r\n ) {\r\n validationData.isMobileError = true;\r\n validationData.userMessageforMobileno = \"Please enter valid Mobile No.\";\r\n }\r\n dispath({\r\n type: \"verifyUserNameandMobileNoFailed\",\r\n payload: validationData,\r\n });\r\n return !(validationData.isMobileError || validationData.isUsernameError);\r\n } else if (flag === 1) {\r\n let validationData = {\r\n isPasswordError: false,\r\n userMessageforPassword: \"\",\r\n isConfirmPasswordError: false,\r\n userMessageforconfirmPassword: \"\",\r\n };\r\n let pwdverify = ValidatePassword(data.password);\r\n console.log(\"pwdverify\", pwdverify)\r\n if (Boolean(pwdverify)) {\r\n validationData.isPasswordError = true;\r\n validationData.userMessageforPassword = pwdverify;\r\n }\r\n if (!Boolean(data.confirmpassword)) {\r\n validationData.isConfirmPasswordError = true;\r\n validationData.userMessageforconfirmPassword =\r\n \"Confirmpasswordisrequired\";\r\n } else if (\r\n Boolean(data.password) &&\r\n data.password !== data.confirmpassword\r\n ) {\r\n validationData.isConfirmPasswordError = true;\r\n validationData.userMessageforconfirmPassword =\r\n \"New Password and Confirm Password did not matched\";\r\n }\r\n dispath({\r\n type: \"verifyPasswordFailed\",\r\n payload: validationData,\r\n });\r\n return !(\r\n validationData.isConfirmPasswordError || validationData.isPasswordError\r\n );\r\n }\r\n return true;\r\n };\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n const changeUserName = () => {\r\n dispath({\r\n type: \"backToUsernameVerification\",\r\n });\r\n };\r\n\r\n const VerifyOTP = async (OTPNumber) => {\r\n if (Boolean(OTPNumber) && OTPNumber.toString().length === 6) {\r\n dispath({ type: \"inititateOTPVerification\" });\r\n const {\r\n status,\r\n data: resdata,\r\n message,\r\n } = await verifyOTPForPWDReset(\r\n loginState?.requestCd,\r\n loginState?.username,\r\n OTPNumber,\r\n loginState?.auth_type,\r\n screenFlag\r\n );\r\n if (status === \"0\") {\r\n if (screenFlag === \"totp\") {\r\n enqueueSnackbar(message, {\r\n variant: \"success\",\r\n });\r\n navigate(loginPageEndpoint);\r\n } else {\r\n dispath({\r\n type: \"OTPVerificationComplate\",\r\n payload: { otpmodelclose: true },\r\n });\r\n }\r\n } else if (status === \"99\") {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: message },\r\n });\r\n } else {\r\n enqueueSnackbar(message, {\r\n variant: \"error\",\r\n });\r\n navigate(loginPageEndpoint);\r\n }\r\n } else {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: \"Please enter a 6 digit OTP number\" },\r\n });\r\n }\r\n };\r\n return (\r\n <>\r\n <Grid container style={{ height: \"100vh\", overflow: \"hidden\" }}>\r\n <BankDetails bannerDetails={bannerDetails} />\r\n <Grid item xs={6} md={6} lg={6} sm={6}>\r\n <Grid\r\n container\r\n direction=\"row\"\r\n justifyContent=\"flex-end\"\r\n alignItems=\"center\"\r\n padding={\"31px\"}\r\n maxWidth={\"150px\"}\r\n >\r\n <img src={Boolean(dashboardLogoURL) ? dashboardLogoURL : \"\"} alt=\"Logo\" width={\"100%\"} />\r\n </Grid>\r\n <Grid\r\n container\r\n direction=\"row\"\r\n justifyContent=\"flex-end\"\r\n alignItems=\"center\"\r\n padding={\"0 35px 0 0\"}\r\n maxWidth={\"170px\"}\r\n overflow={\"hidden\"}\r\n >\r\n <LanguageComponent />\r\n </Grid>\r\n <Container maxWidth=\"xs\">\r\n <Grid alignItems=\"center\" style={{ paddingTop: \"20px\" }}>\r\n <h2 style={{ margin: \"10px 0\" }}>\r\n {loginState.workingState === 1\r\n ? t(\"Setnewpassword\")\r\n : screenFlag === \"totp\"\r\n ? \"Forgot TOTP\"\r\n : t(\"ForgotPassword\")}\r\n </h2>\r\n {open ? (\r\n <OTPModelForm\r\n classes={classes}\r\n handleClose={handleClose}\r\n loginState={loginState}\r\n VerifyOTP={VerifyOTP}\r\n OTPError={t(loginState?.OtpuserMessage ?? \"\")}\r\n setOTPError={(error) => {\r\n dispath({\r\n type: \"OTPVerificationFailed\",\r\n payload: { error: error },\r\n });\r\n }}\r\n resendFlag={\"FORGET_PW\"}\r\n setNewRequestID={(newRequestID) => {\r\n dispath({\r\n type: \"OTPResendSuccess\",\r\n payload: { requestCd: newRequestID },\r\n });\r\n otpResendRef.current = otpResendRef.current + 1;\r\n }}\r\n otpresendCount={otpResendRef.current}\r\n OTPResendRequest={undefined}\r\n />\r\n ) : (\r\n <ForgotPasswordFields\r\n classes={classes}\r\n loginState={loginState}\r\n onSubmit={onSubmitHandel}\r\n navigate={navigate}\r\n loginPageEndpoint={loginPageEndpoint}\r\n />\r\n )}\r\n </Grid>\r\n </Container>\r\n </Grid>\r\n </Grid>\r\n </>\r\n );\r\n};"],"names":["_jsx","_jsxs","IconButton","_Fragment","inititalState","reducer","API.capture"],"mappings":"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","x_google_ignoreList":[3]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acuteinfo/common-screens",
3
- "version": "1.0.13",
3
+ "version": "1.0.14",
4
4
  "license": "MIT",
5
5
  "keywords": [
6
6
  "react",