From 4027ea84808ce358397ab1b9a62d2d5977a57291 Mon Sep 17 00:00:00 2001 From: junjeeong Date: Sun, 10 Nov 2024 11:13:21 +0900 Subject: [PATCH 1/2] =?UTF-8?q?Feat:=20FolderTag=20handleSubmit=20?= =?UTF-8?q?=ED=95=A8=EC=88=98=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/FolderTag.tsx | 40 +++++++++++++++++++++---------- components/link/ContentHeader.tsx | 12 ++++++++++ components/link/FolderToolbar.tsx | 17 +++++++++++++ components/link/LinkList.tsx | 12 ++++++++++ 4 files changed, 69 insertions(+), 12 deletions(-) create mode 100644 components/link/ContentHeader.tsx create mode 100644 components/link/FolderToolbar.tsx create mode 100644 components/link/LinkList.tsx diff --git a/components/FolderTag.tsx b/components/FolderTag.tsx index 4cf93fa..876e8fd 100644 --- a/components/FolderTag.tsx +++ b/components/FolderTag.tsx @@ -1,22 +1,38 @@ -interface FolderData { - id: number; - createdAt: string; - name: string; - linkCount: number; +import { useRouter } from "next/router"; +import { FolderData } from "@/types/folderTypes"; + +interface FolderTagProps { + list: FolderData[]; } -const FolderTag = (list: FolderData[]) => { - const folderStyle = "py-[8px] px-[12px] border border-[#6D6AFE] rounded-md"; +const FolderTag = ({ list }: FolderTagProps) => { + const router = useRouter(); + const { folder: currentFolderId } = router.query; + + const folderStyle = + "py-[8px] px-[12px] border border-purple100 rounded-md hover:bg-purple100 hover:text-white"; + + const handleSubmit = (id: number) => { + router.push({ + pathname: router.pathname, + query: { ...router.query, folder: id }, + }); + }; return ( -
-
전체
+
+ ); }; diff --git a/components/link/ContentHeader.tsx b/components/link/ContentHeader.tsx new file mode 100644 index 0000000..fd97e72 --- /dev/null +++ b/components/link/ContentHeader.tsx @@ -0,0 +1,12 @@ +import ActionButtons from "./ActionButtons"; + +const ContentHeader = () => { + return ( +
+

유용한 글

+ +
+ ); +}; + +export default ContentHeader; diff --git a/components/link/FolderToolbar.tsx b/components/link/FolderToolbar.tsx new file mode 100644 index 0000000..a02c6d0 --- /dev/null +++ b/components/link/FolderToolbar.tsx @@ -0,0 +1,17 @@ +import { FolderData } from "@/types/folderTypes"; +import FolderTag from "../FolderTag"; + +interface FolderToolbarProps { + folders: FolderData[]; +} + +const FolderToolbar = ({ folders }: FolderToolbarProps) => { + return ( +
+ {folders && } + +
+ ); +}; + +export default FolderToolbar; diff --git a/components/link/LinkList.tsx b/components/link/LinkList.tsx new file mode 100644 index 0000000..e3385ef --- /dev/null +++ b/components/link/LinkList.tsx @@ -0,0 +1,12 @@ +import { LinkData } from "@/types/linkTypes"; +import LinkCard from "../LinkCard"; + +interface LinkListProps { + links: LinkData[]; +} + +const LinkList = ({ links }: LinkListProps) => { + return links.map((link) => ); +}; + +export default LinkList; From 787d8e89d957bbbb944c715f23088938ade2559e Mon Sep 17 00:00:00 2001 From: junjeeong Date: Sun, 10 Nov 2024 11:36:56 +0900 Subject: [PATCH 2/2] =?UTF-8?q?Feat:=20tag=20hover=20=EA=B8=B0=EB=8A=A5,?= =?UTF-8?q?=20=EC=84=A0=ED=83=9D=EB=90=9C=20tag=20=EB=B0=B0=EA=B2=BD?= =?UTF-8?q?=EC=83=89=20=EC=B6=94=EA=B0=80,=20tag=20=EB=88=8C=EB=A0=80?= =?UTF-8?q?=EC=9D=84=20=EB=95=8C=20router.push=20=ED=95=98=EB=8A=94=20?= =?UTF-8?q?=EA=B8=B0=EB=8A=A5=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/FolderTag.tsx | 6 +++--- components/link/ContentHeader.tsx | 12 ------------ components/link/FolderToolbar.tsx | 17 ----------------- components/link/LinkList.tsx | 12 ------------ types/folderTypes.ts | 6 ++++++ 5 files changed, 9 insertions(+), 44 deletions(-) delete mode 100644 components/link/ContentHeader.tsx delete mode 100644 components/link/FolderToolbar.tsx delete mode 100644 components/link/LinkList.tsx create mode 100644 types/folderTypes.ts diff --git a/components/FolderTag.tsx b/components/FolderTag.tsx index 876e8fd..54b528b 100644 --- a/components/FolderTag.tsx +++ b/components/FolderTag.tsx @@ -2,10 +2,10 @@ import { useRouter } from "next/router"; import { FolderData } from "@/types/folderTypes"; interface FolderTagProps { - list: FolderData[]; + folderList: FolderData[]; } -const FolderTag = ({ list }: FolderTagProps) => { +const FolderTag = ({ folderList }: FolderTagProps) => { const router = useRouter(); const { folder: currentFolderId } = router.query; @@ -22,7 +22,7 @@ const FolderTag = ({ list }: FolderTagProps) => { return (
    - {list.map((folder) => ( + {folderList.map((folder) => ( - - ); -}; - -export default FolderToolbar; diff --git a/components/link/LinkList.tsx b/components/link/LinkList.tsx deleted file mode 100644 index e3385ef..0000000 --- a/components/link/LinkList.tsx +++ /dev/null @@ -1,12 +0,0 @@ -import { LinkData } from "@/types/linkTypes"; -import LinkCard from "../LinkCard"; - -interface LinkListProps { - links: LinkData[]; -} - -const LinkList = ({ links }: LinkListProps) => { - return links.map((link) => ); -}; - -export default LinkList; diff --git a/types/folderTypes.ts b/types/folderTypes.ts new file mode 100644 index 0000000..8db6c6d --- /dev/null +++ b/types/folderTypes.ts @@ -0,0 +1,6 @@ +export interface FolderData { + id: number; + createdAt: string; + name: string; + linkCount: number; +}