From dbce8c6adde38b208396838dd4774409c44410ff Mon Sep 17 00:00:00 2001 From: jaeml06 Date: Sat, 24 Jan 2026 11:11:12 +0900 Subject: [PATCH 1/2] =?UTF-8?q?feat:=20=EC=BA=98=EB=A6=B0=EB=8D=94=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80=20=EC=95=84=EC=9D=B4=EC=BD=98=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/shared/assets/icons/IcCalendarAdd.tsx | 37 +++++++++++++++++++++++ src/shared/assets/icons/index.ts | 2 ++ 2 files changed, 39 insertions(+) create mode 100644 src/shared/assets/icons/IcCalendarAdd.tsx diff --git a/src/shared/assets/icons/IcCalendarAdd.tsx b/src/shared/assets/icons/IcCalendarAdd.tsx new file mode 100644 index 0000000..b847c24 --- /dev/null +++ b/src/shared/assets/icons/IcCalendarAdd.tsx @@ -0,0 +1,37 @@ +import type { HTMLAttributes } from 'react'; + +export default function IcCalendarAdd(props: HTMLAttributes) { + return ( +
+
+
+ + + +
+
+
+ ); +} diff --git a/src/shared/assets/icons/index.ts b/src/shared/assets/icons/index.ts index 324e97a..591a80b 100644 --- a/src/shared/assets/icons/index.ts +++ b/src/shared/assets/icons/index.ts @@ -2,6 +2,7 @@ import ArrowDown from './ArrowDown'; import ArrowNext from './ArrowNext'; import ArrowPrev from './ArrowPrev'; import ArrowUp from './ArrowUp'; +import IcCalendarAdd from './IcCalendarAdd'; import IcCheckboxChecked from './IcCheckboxChecked'; import IcCheckboxDefault from './IcCheckboxDefault'; import IcCircleCheckFilled from './IcCircleCheckFilled'; @@ -22,6 +23,7 @@ export const icons = { arrow_next: ArrowNext, arrow_prev: ArrowPrev, arrow_up: ArrowUp, + ic_calendar_add: IcCalendarAdd, ic_circle_check_filled: IcCircleCheckFilled, ic_circle_check_outline: IcCircleCheckOutline, ic_circle_x_filled: IcCircleXFilled, From 912aa897f30838e3fa945d830228dad9f3cb143f Mon Sep 17 00:00:00 2001 From: jaeml06 Date: Sat, 24 Jan 2026 11:22:39 +0900 Subject: [PATCH 2/2] =?UTF-8?q?feat:=20=ED=88=AC=ED=91=9C=EC=9E=90=20?= =?UTF-8?q?=ED=97=A4=EB=8D=94=20=EC=BA=98=EB=A6=B0=EB=8D=94=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80=20=EC=95=84=EC=9D=B4=EC=BD=98=20=EB=B3=80=EA=B2=BD=20?= =?UTF-8?q?=EB=B0=8F=20=EB=A7=81=ED=81=AC=20=EC=83=9D=EC=84=B1=20=EB=B0=94?= =?UTF-8?q?=ED=85=80=20=EC=8B=9C=ED=8A=B8=20=EA=B5=AC=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../meet/[meetingId]/ParticipantHeader.tsx | 24 ++++----- .../RegisterSequenceBottomSheet.tsx | 52 +++++++++++++++++++ 2 files changed, 63 insertions(+), 13 deletions(-) create mode 100644 src/shared/ui/bottom-sheet/RegisterSequenceBottomSheet.tsx diff --git a/src/app/meet/[meetingId]/ParticipantHeader.tsx b/src/app/meet/[meetingId]/ParticipantHeader.tsx index cba04bc..3e16ec6 100644 --- a/src/app/meet/[meetingId]/ParticipantHeader.tsx +++ b/src/app/meet/[meetingId]/ParticipantHeader.tsx @@ -1,10 +1,8 @@ 'use client'; -import { useRouter } from 'next/navigation'; - import { useDisclosure } from '@/shared/hooks/useDisclosure'; import LinkShareBottomSheet from '@/shared/ui/bottom-sheet/LinkShareBottomSheet'; -import { Menu } from '@/shared/ui/menu'; +import RegisterSequenceBottomSheet from '@/shared/ui/bottom-sheet/RegisterSequenceBottomSheet'; import { TopBar } from '@/shared/ui/top-bar'; interface ParticipantHeaderProps { @@ -18,7 +16,6 @@ export default function ParticipantHeader({ url, className, }: ParticipantHeaderProps) { - const router = useRouter(); const { isOpen: isShareOpen, open: openShare, @@ -26,9 +23,9 @@ export default function ParticipantHeader({ } = useDisclosure(); const { - isOpen: isMenuOpen, - open: openMenu, - close: closeMenu, + isOpen: isRegisterOpen, + open: openRegister, + close: closeRegister, } = useDisclosure(); return ( @@ -36,15 +33,11 @@ export default function ParticipantHeader({
- - - router.push('/')}>모임 생성하기 -
+ + ); } diff --git a/src/shared/ui/bottom-sheet/RegisterSequenceBottomSheet.tsx b/src/shared/ui/bottom-sheet/RegisterSequenceBottomSheet.tsx new file mode 100644 index 0000000..6dc50ba --- /dev/null +++ b/src/shared/ui/bottom-sheet/RegisterSequenceBottomSheet.tsx @@ -0,0 +1,52 @@ +'use client'; + +import { useRouter } from 'next/navigation'; + +import BottomSheet from '@/shared/ui/bottom-sheet/BottomSheet'; +import Button from '@/shared/ui/button/Button'; + +interface RegisterSequenceBottomSheetProps { + isOpen: boolean; + onClose: () => void; +} + +export default function RegisterSequenceBottomSheet({ + isOpen, + onClose, +}: RegisterSequenceBottomSheetProps) { + const router = useRouter(); + + const handleCreateNewLink = () => { + router.push('/'); + }; + + return ( + +
+

+ 새로운 투표 링크를 만드시겠어요? +

+

+ 다른 모임 투표 링크가 생성돼요 +

+ +
+ + +
+
+
+ ); +}