diff --git a/src/assets/svg/error/auth-error.svg b/src/assets/svg/error/auth-error.svg
new file mode 100644
index 00000000..6a164071
--- /dev/null
+++ b/src/assets/svg/error/auth-error.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/src/page/Auth/FindPassword/SendAuthNumber/SendAuthNumber.module.scss b/src/page/Auth/FindPassword/SendAuthNumber/SendAuthNumber.module.scss
index e30531b8..ae3d1172 100644
--- a/src/page/Auth/FindPassword/SendAuthNumber/SendAuthNumber.module.scss
+++ b/src/page/Auth/FindPassword/SendAuthNumber/SendAuthNumber.module.scss
@@ -33,6 +33,14 @@
&--auth {
width: 255px;
}
+
+ &--error {
+ border: 1px solid #f7941e;
+ }
+
+ &--normal {
+ border: 1px solid #d2dae2;
+ }
}
&__label {
@@ -46,6 +54,14 @@
flex-direction: column;
gap: 8px;
}
+
+ &__error {
+ display: flex;
+ color: #f7941e;
+ font-size: 12px;
+ align-items: center;
+ gap: 8px;
+ }
}
.auth-button {
diff --git a/src/page/Auth/FindPassword/SendAuthNumber/index.tsx b/src/page/Auth/FindPassword/SendAuthNumber/index.tsx
index 3c9ad4ed..f33a0de0 100644
--- a/src/page/Auth/FindPassword/SendAuthNumber/index.tsx
+++ b/src/page/Auth/FindPassword/SendAuthNumber/index.tsx
@@ -1,6 +1,7 @@
import { Outlet } from 'react-router-dom';
import { ReactComponent as KoinLogo } from 'assets/svg/auth/koin-logo.svg';
-import { useState } from 'react';
+import { ReactComponent as ErrorIcon } from 'assets/svg/error/auth-error.svg';
+import { useEffect, useState } from 'react';
import cn from 'utils/ts/className';
import { useVerifyEmail, useSubmit } from 'query/auth';
import useEmailAuthStore from 'store/useEmailAuth';
@@ -10,7 +11,19 @@ export default function FindPassword() {
const { email, setEmail } = useEmailAuthStore();
const [verify, setVerify] = useState('');
const { verifyEmail } = useVerifyEmail();
- const submit = useSubmit();
+ const { authNumber } = useSubmit();
+
+ useEffect(() => {
+ const handleBeforeUnload = () => {
+ sessionStorage.removeItem('email-storage');
+ setEmail('');
+ };
+ window.addEventListener('beforeunload', handleBeforeUnload);
+
+ return () => {
+ window.removeEventListener('beforeunload', handleBeforeUnload);
+ };
+ }, [setEmail]);
return (
<>
@@ -24,6 +37,8 @@ export default function FindPassword() {
className={cn({
[styles.form__input]: true,
[styles['form__input--auth']]: true,
+ [styles['form__input--error']]: verifyEmail.errorMessage,
+ [styles['form__input--normal']]: verifyEmail.isSuccess,
})}
onChange={(e) => setEmail(e.target.value)}
type="text"
@@ -38,21 +53,36 @@ export default function FindPassword() {
{verifyEmail.isSuccess ? '재발송' : '인증번호 발송'}
+ {!verifyEmail.isSuccess && (
+
+ {verifyEmail.errorMessage && }
+ {verifyEmail.errorMessage}
+
+ )}