From 72177137112fa0944b39f600053d18c171cf8c7c Mon Sep 17 00:00:00 2001
From: PARKGEONTAE <112490505+prkgnt@users.noreply.github.com>
Date: Tue, 21 Jan 2025 14:55:26 +0900
Subject: [PATCH 1/5] =?UTF-8?q?feat:=20error=20=EA=B5=AC=EB=B6=84?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/app/(home)/error.tsx | 31 +++++++++++++++++++++++++
src/app/{error.tsx => global-error.tsx} | 6 +++--
src/app/profile/error.tsx | 31 +++++++++++++++++++++++++
3 files changed, 66 insertions(+), 2 deletions(-)
create mode 100644 src/app/(home)/error.tsx
rename src/app/{error.tsx => global-error.tsx} (69%)
create mode 100644 src/app/profile/error.tsx
diff --git a/src/app/(home)/error.tsx b/src/app/(home)/error.tsx
new file mode 100644
index 0000000..6d8bf2b
--- /dev/null
+++ b/src/app/(home)/error.tsx
@@ -0,0 +1,31 @@
+"use client";
+
+import { useEffect, useState } from "react";
+import Link from "next/link";
+import { useRouter } from "next/navigation";
+import { createPortal } from "react-dom";
+import LoginModal from "../_components/LoginModal/LoginModal";
+
+export default function Error({ error }: { error: Error }) {
+ const router = useRouter();
+ const [isLoginModalOpened, setIsLoginModalOpened] = useState(false);
+ const closeLoginModal = () => {
+ setIsLoginModalOpened(false);
+ router.replace("/");
+ };
+ useEffect(() => {
+ if (error.message === "Auth Error") {
+ setIsLoginModalOpened(true);
+ }
+ }, []);
+
+ return (
+ <>
+ {isLoginModalOpened &&
+ createPortal(
+