From 2bd4c9994fea9adfd12b764042f49c8db74ef705 Mon Sep 17 00:00:00 2001 From: rumpumpum Date: Wed, 19 Nov 2025 22:01:05 +0900 Subject: [PATCH 1/6] =?UTF-8?q?refactor(container):=20=EB=B2=A0=EB=B2=A8?= =?UTF-8?q?=20=ED=85=8C=EB=91=90=EB=A6=AC=20=EB=9E=98=ED=8D=BC=EC=99=80=20?= =?UTF-8?q?=EC=8A=A4=ED=81=AC=EB=A1=A4=EB=B0=94=EB=A5=BC=20=EB=B6=84?= =?UTF-8?q?=EB=A6=AC=ED=95=98=EC=97=AC=20=EA=B0=A4=EB=9F=AC=EB=A6=AC=20?= =?UTF-8?q?=EB=A6=AC=EC=8A=A4=ED=8A=B8=EC=97=90=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Container/BevelScrollContainer.tsx | 11 +++ src/features/minihome/gallery/GalleryList.tsx | 89 +++++++++---------- 2 files changed, 54 insertions(+), 46 deletions(-) create mode 100644 src/components/Container/BevelScrollContainer.tsx diff --git a/src/components/Container/BevelScrollContainer.tsx b/src/components/Container/BevelScrollContainer.tsx new file mode 100644 index 0000000..62b9ff5 --- /dev/null +++ b/src/components/Container/BevelScrollContainer.tsx @@ -0,0 +1,11 @@ +import type { PropsWithChildren } from "react"; + +export default function BevelScrollContainer({ children }: PropsWithChildren) { + return ( +
+
+ {children} +
+
+ ); +} diff --git a/src/features/minihome/gallery/GalleryList.tsx b/src/features/minihome/gallery/GalleryList.tsx index 031256d..b6ea67e 100644 --- a/src/features/minihome/gallery/GalleryList.tsx +++ b/src/features/minihome/gallery/GalleryList.tsx @@ -1,4 +1,5 @@ import Button from "@/components/Button/Button"; +import BevelScrollContainer from "@/components/Container/BevelScrollContainer"; import type { GalleryImage } from "./types/gallery.types"; @@ -43,53 +44,49 @@ export default function GalleryList({ const statusContent = renderStatus(); return ( - // 베벨 테두리 래퍼 -
- {/* 내부 컨텐츠 */} -
- {/* 헤더 */} -
-

사진첩

-
- {isMine && ( - - )} - {statusContent && ( -
{statusContent}
- )} -
+ + {/* 헤더 */} +
+

사진첩

+
+ {isMine && ( + + )} + {statusContent && ( +
{statusContent}
+ )}
- - {hasImages ? ( - /* 이미지 그리드 영역 */ -
- {images.map((image) => ( - - ))} -
- ) : null}
-
+ + {hasImages ? ( + /* 이미지 그리드 영역 */ +
+ {images.map((image) => ( + + ))} +
+ ) : null} + ); } From 2765d1b9c77751f2807d8ef7bc35d68fcb167d8c Mon Sep 17 00:00:00 2001 From: rumpumpum Date: Wed, 19 Nov 2025 22:15:07 +0900 Subject: [PATCH 2/6] =?UTF-8?q?refactor(container):=20=EB=B2=A0=EB=B2=A8?= =?UTF-8?q?=20=EC=8A=A4=ED=81=AC=EB=A1=A4=20=EC=BB=A8=ED=85=8C=EC=9D=B4?= =?UTF-8?q?=EB=84=88=20=EA=B2=8C=EC=8B=9C=EA=B8=80=20=EB=A6=AC=EC=8A=A4?= =?UTF-8?q?=ED=8A=B8=EC=97=90=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/Container/BevelScrollContainer.tsx | 4 +--- src/features/minihome/post/list/PostList.tsx | 7 ++++--- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/components/Container/BevelScrollContainer.tsx b/src/components/Container/BevelScrollContainer.tsx index 62b9ff5..cd99d23 100644 --- a/src/components/Container/BevelScrollContainer.tsx +++ b/src/components/Container/BevelScrollContainer.tsx @@ -3,9 +3,7 @@ import type { PropsWithChildren } from "react"; export default function BevelScrollContainer({ children }: PropsWithChildren) { return (
-
- {children} -
+
{children}
); } diff --git a/src/features/minihome/post/list/PostList.tsx b/src/features/minihome/post/list/PostList.tsx index 6c2959c..dba8418 100644 --- a/src/features/minihome/post/list/PostList.tsx +++ b/src/features/minihome/post/list/PostList.tsx @@ -1,5 +1,6 @@ import { useEffect, useState } from "react"; +import BevelScrollContainer from "@/components/Container/BevelScrollContainer"; import { useAuthUser } from "@/hooks/useAuthUser"; import type { PostWithCounts } from "@/types/post.types"; import supabase from "@/utils/supabase"; @@ -69,8 +70,8 @@ export default function PostList({ onPostClick, ownerId }: PostListProps) { } return ( -
-
+ +
{posts.length > 0 ? ( posts.map((post) => ( 작성된 게시글이 없습니다.
)}
-
+ ); } From 18b6d30eddb6fd2cb22e3574a898e76e7e2f518f Mon Sep 17 00:00:00 2001 From: rumpumpum Date: Wed, 19 Nov 2025 22:22:51 +0900 Subject: [PATCH 3/6] =?UTF-8?q?refactor(container):=20=EB=B2=A0=EB=B2=A8?= =?UTF-8?q?=20=EC=8A=A4=ED=81=AC=EB=A1=A4=20=EC=BB=A8=ED=85=8C=EC=9D=B4?= =?UTF-8?q?=EB=84=88=20=EB=B0=A9=EB=AA=85=EB=A1=9D=EC=97=90=20=EC=A0=81?= =?UTF-8?q?=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/features/minihome/guestbook/GuestBook.tsx | 59 ++++++++++--------- 1 file changed, 31 insertions(+), 28 deletions(-) diff --git a/src/features/minihome/guestbook/GuestBook.tsx b/src/features/minihome/guestbook/GuestBook.tsx index a49cf2a..2c1fb64 100644 --- a/src/features/minihome/guestbook/GuestBook.tsx +++ b/src/features/minihome/guestbook/GuestBook.tsx @@ -1,5 +1,6 @@ import { useEffect, useState } from "react"; +import BevelScrollContainer from "@/components/Container/BevelScrollContainer"; import { useAuthStore } from "@/stores/useAuthStore"; import { @@ -126,34 +127,36 @@ export default function GuestBook({ ownerId }: { ownerId: string | undefined }) {!isMine && }
전체 방명록 {data.length} -
-
    - {data.map((entry) => ( -
  • - handleEntryDelete(entry.id)} - > - {entry.comments.length > 0 ? ( - handleReplyDelete(entry.id, entry.comments[0].id)} - /> - ) : ( - isMine && - )} - -
  • - ))} -
+
+ +
    + {data.map((entry) => ( +
  • + handleEntryDelete(entry.id)} + > + {entry.comments.length > 0 ? ( + handleReplyDelete(entry.id, entry.comments[0].id)} + /> + ) : ( + isMine && + )} + +
  • + ))} +
+
From 259f9f641ee792db0189b4cb9cea46c06bdd3114 Mon Sep 17 00:00:00 2001 From: rumpumpum Date: Wed, 19 Nov 2025 22:38:19 +0900 Subject: [PATCH 4/6] =?UTF-8?q?refactor(container):=20=EB=B2=A0=EB=B2=A8?= =?UTF-8?q?=20=EC=8A=A4=ED=81=AC=EB=A1=A4=20=EC=BB=A8=ED=85=8C=EC=9D=B4?= =?UTF-8?q?=EB=84=88=20Friends=EC=9D=98=20Search,Request,Friends=EC=97=90?= =?UTF-8?q?=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/features/friends/list/List.tsx | 7 ++++--- src/features/friends/request/Request.tsx | 7 ++++--- src/features/friends/search/Search.tsx | 9 +++++---- 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/features/friends/list/List.tsx b/src/features/friends/list/List.tsx index 3a0cbd9..69aba57 100644 --- a/src/features/friends/list/List.tsx +++ b/src/features/friends/list/List.tsx @@ -2,6 +2,7 @@ import { Home, UserMinus2 } from "lucide-react"; import { useEffect, useState } from "react"; import Button from "@/components/Button/Button"; +import BevelScrollContainer from "@/components/Container/BevelScrollContainer"; import { useAuthStore } from "@/stores/useAuthStore"; import { useWindowStore } from "@/stores/useWindowStore"; @@ -49,8 +50,8 @@ export default function List() { return (
친구 목록 {friends.length} -
-
+
+
    {friends.map((friend) => { const profile = @@ -95,7 +96,7 @@ export default function List() { ); })}
-
+
); diff --git a/src/features/friends/request/Request.tsx b/src/features/friends/request/Request.tsx index aa00154..5e98126 100644 --- a/src/features/friends/request/Request.tsx +++ b/src/features/friends/request/Request.tsx @@ -1,6 +1,7 @@ import { useEffect, useState } from "react"; import Button from "@/components/Button/Button"; +import BevelScrollContainer from "@/components/Container/BevelScrollContainer"; import { useAuthStore } from "@/stores/useAuthStore"; import { acceptFriendRequest, getFriendRequests, rejectFriendRequest } from "../api/friends"; @@ -52,8 +53,8 @@ export default function Request() { return (
친구 신청 {requests.length} -
-
+
+
    {requests.map((request) => (
  • @@ -86,7 +87,7 @@ export default function Request() {
  • ))}
-
+
); diff --git a/src/features/friends/search/Search.tsx b/src/features/friends/search/Search.tsx index b153425..4cb131d 100644 --- a/src/features/friends/search/Search.tsx +++ b/src/features/friends/search/Search.tsx @@ -1,6 +1,7 @@ import { useEffect, useState } from "react"; import Button from "@/components/Button/Button"; +import BevelScrollContainer from "@/components/Container/BevelScrollContainer"; import Input from "@/components/Input/Input"; import { useAuthStore } from "@/stores/useAuthStore"; import { useWindowStore } from "@/stores/useWindowStore"; @@ -68,9 +69,9 @@ export default function Search() { {hasSearched && (
검색 결과 {results.length} -
-
-
    +
    + +
      {results.map((Profile) => (
    • @@ -100,7 +101,7 @@ export default function Search() {
    • ))}
    -
    +
)} From 815ecb7f265b4d0ce40a913bf3c569ed1778f86a Mon Sep 17 00:00:00 2001 From: rumpumpum Date: Wed, 19 Nov 2025 23:23:53 +0900 Subject: [PATCH 5/6] =?UTF-8?q?refactor(container):=20props=EB=A1=9C=20cla?= =?UTF-8?q?ssName=EC=9D=84=20=EB=B0=9B=EA=B2=8C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/Container/BevelScrollContainer.tsx | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/components/Container/BevelScrollContainer.tsx b/src/components/Container/BevelScrollContainer.tsx index cd99d23..5e11458 100644 --- a/src/components/Container/BevelScrollContainer.tsx +++ b/src/components/Container/BevelScrollContainer.tsx @@ -1,9 +1,17 @@ import type { PropsWithChildren } from "react"; +import { twMerge } from "tailwind-merge"; -export default function BevelScrollContainer({ children }: PropsWithChildren) { +export default function BevelScrollContainer({ + children, + className, +}: PropsWithChildren<{ className?: string }>) { return (
-
{children}
+
+ {children} +
); } From f6a1308b52c3e676cbfe624209433a4b3a7e10d3 Mon Sep 17 00:00:00 2001 From: rumpumpum Date: Wed, 19 Nov 2025 23:27:07 +0900 Subject: [PATCH 6/6] =?UTF-8?q?style(container):=20=ED=8C=A8=EB=94=A9?= =?UTF-8?q?=EC=9D=84=204=EC=97=90=EC=84=9C=203=EC=9C=BC=EB=A1=9C=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/Container/BevelScrollContainer.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/Container/BevelScrollContainer.tsx b/src/components/Container/BevelScrollContainer.tsx index 5e11458..0ac0dd0 100644 --- a/src/components/Container/BevelScrollContainer.tsx +++ b/src/components/Container/BevelScrollContainer.tsx @@ -8,7 +8,7 @@ export default function BevelScrollContainer({ return (
{children}