diff --git a/public/icons/logo.png b/public/icons/logo.png
new file mode 100644
index 00000000..34649118
Binary files /dev/null and b/public/icons/logo.png differ
diff --git a/src/app/icon.png b/src/app/icon.png
new file mode 100644
index 00000000..34649118
Binary files /dev/null and b/src/app/icon.png differ
diff --git a/src/app/layout.tsx b/src/app/layout.tsx
index cfbb2e30..f7c534d8 100644
--- a/src/app/layout.tsx
+++ b/src/app/layout.tsx
@@ -11,9 +11,9 @@ const myFont = localFont({
src: "../shared/fonts/PretendardVariable.woff2",
});
-export const metadata: Metadata = {
- title: "Create Next App",
- description: "Generated by create next app",
+export const metadata = {
+ title: "찰딱",
+ description: "중고거래 플랫폼 찰딱",
};
export default function RootLayout({
diff --git a/src/entities/post/model/constants/api.ts b/src/entities/post/model/constants/api.ts
index fb28a634..b7b7e958 100644
--- a/src/entities/post/model/constants/api.ts
+++ b/src/entities/post/model/constants/api.ts
@@ -1 +1 @@
-export const POST_PAGE_SIZE = 10;
+export const POST_PAGE_SIZE = 12;
diff --git a/src/entities/post/ui/list/PostList.tsx b/src/entities/post/ui/list/PostList.tsx
index efa20f37..e97fc45d 100644
--- a/src/entities/post/ui/list/PostList.tsx
+++ b/src/entities/post/ui/list/PostList.tsx
@@ -70,20 +70,24 @@ export default function PostList({
/>
-
- {posts.map((post, i) =>
- i === posts.length - 1 ? (
-
- ) : (
-
- ),
- )}
-
-
- {isFetchingNextPage && (
- 불러오는 중...
+ {posts.length === 0 && !isFetchingNextPage ? (
+
+
+ 해당 카테고리에 등록된 게시물이 없어요.
+
+
+ ) : (
+
+ {posts.map((post, i) =>
+ i === posts.length - 1 ? (
+
+ ) : (
+
+ ),
+ )}
+
)}
);
diff --git a/src/entities/user/ui/card/Profile.tsx b/src/entities/user/ui/card/Profile.tsx
index 26b7ecaf..046b1ca7 100644
--- a/src/entities/user/ui/card/Profile.tsx
+++ b/src/entities/user/ui/card/Profile.tsx
@@ -32,6 +32,32 @@ const Profile = ({
const { logout } = useAuthStore();
const { openModal, closeModal } = useModalStore();
+ const handleLogout = async () => {
+ const res = await fetch("/api/auth/logout", {
+ method: "POST",
+ credentials: "include",
+ });
+
+ if (res.ok) {
+ router.push("/login");
+ router.refresh();
+ logout();
+ openModal("normal", {
+ message: "로그아웃이 완료되었습니다.",
+ onClick: () => {
+ closeModal();
+ },
+ });
+ } else {
+ openModal("normal", {
+ message: "로그아웃에 실패했습니다.",
+ onClick: () => {
+ closeModal();
+ },
+ });
+ }
+ };
+
return (
@@ -75,7 +101,9 @@ const Profile = ({
-
{category}
+
+ {category || "—"}
+
관심 카테고리
@@ -87,30 +115,12 @@ const Profile = ({