diff --git a/package.json b/package.json
index 420790f..686df70 100644
--- a/package.json
+++ b/package.json
@@ -31,6 +31,7 @@
"next": "14.1.3",
"nookies": "^2.5.2",
"qrcode": "^1.5.3",
+ "qrcode.react": "^3.1.0",
"qs": "^6.12.0",
"react": "^18",
"react-dom": "^18",
diff --git a/public/img/logo_qrcode.svg b/public/img/logo_qrcode.svg
new file mode 100644
index 0000000..b8478f2
--- /dev/null
+++ b/public/img/logo_qrcode.svg
@@ -0,0 +1,4 @@
+
diff --git a/src/components/Header/Auth.tsx b/src/components/Header/Auth.tsx
index 6924665..b4bf865 100644
--- a/src/components/Header/Auth.tsx
+++ b/src/components/Header/Auth.tsx
@@ -2,11 +2,11 @@
import { useShallow } from 'zustand/react/shallow';
-import { LoginProvider } from '@/components/Login/loginContext';
+import { LoginProvider } from '@/components/Login/LoginContext';
import HeaderAvatar from './HeaderAvatar';
-import { LoginModal } from '@/components';
+import { Login } from '@/components';
import { useUserStore } from '@/store';
export default function Auth() {
@@ -18,7 +18,7 @@ export default function Auth() {
) : (
-
+
)}
diff --git a/src/components/Login/Footer.tsx b/src/components/Login/Footer.tsx
new file mode 100644
index 0000000..c629549
--- /dev/null
+++ b/src/components/Login/Footer.tsx
@@ -0,0 +1,21 @@
+export default function Footer() {
+ return (
+
+ );
+}
diff --git a/src/components/Login/Login.tsx b/src/components/Login/Login.tsx
new file mode 100644
index 0000000..4e01d0f
--- /dev/null
+++ b/src/components/Login/Login.tsx
@@ -0,0 +1,46 @@
+'use client';
+
+import { useState, useContext } from 'react';
+
+import { Dialog, DialogContent, DialogTrigger, DialogClose } from '@/components/ui/dialog';
+
+import Footer from './Footer';
+import { LoginContext } from './LoginContext';
+import LoginPhone from './LoginPhone';
+import LoginQrcode from './LoginQrcode';
+import Tab from './Tab';
+
+import { IconClose } from '@/components';
+
+export default function Login() {
+ const { state, dispatch } = useContext(LoginContext);
+ const [currentTab, setCurrent] = useState('qrCode');
+
+ return (
+
+ );
+}
diff --git a/src/components/Login/loginContext.tsx b/src/components/Login/LoginContext.tsx
similarity index 100%
rename from src/components/Login/loginContext.tsx
rename to src/components/Login/LoginContext.tsx
diff --git a/src/components/Login/LoginForm.tsx b/src/components/Login/LoginForm.tsx
index 4d63709..5b08008 100644
--- a/src/components/Login/LoginForm.tsx
+++ b/src/components/Login/LoginForm.tsx
@@ -124,7 +124,7 @@ export default function LoginForm({ className }: { className?: string }) {
-
+
@@ -159,7 +159,7 @@ export default function LoginForm({ className }: { className?: string }) {