From d3f654a757ae21fda13baedd1487633da5087a9c Mon Sep 17 00:00:00 2001 From: Yun-Jinwoo Date: Fri, 20 Jun 2025 00:25:33 +0900 Subject: [PATCH 1/7] =?UTF-8?q?=E2=9C=A8=20feat:=20RegisterLayout=20?= =?UTF-8?q?=EC=BB=B4=ED=8F=AC=EB=84=8C=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 --- src/components/layout/RegisterLayout.tsx | 42 ++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 src/components/layout/RegisterLayout.tsx diff --git a/src/components/layout/RegisterLayout.tsx b/src/components/layout/RegisterLayout.tsx new file mode 100644 index 00000000..78c3933a --- /dev/null +++ b/src/components/layout/RegisterLayout.tsx @@ -0,0 +1,42 @@ +import { useNavigate } from 'react-router-dom'; +import Button from '../common/Button'; + +const TEXT_MAP = { + profile: { + header: '내 프로필', + content: '내 프로필을 등록하고 원하는 가게에 지원해 보세요.', + buttonText: '내 프로필 등록하기', + link: '/profile/edit', + }, + store: { + header: '내 가게', + content: '내 가게를 소개하고 공고도 등록해 보세요.', + buttonText: '가게 등록하기', + link: '/owner/store/edit', + }, +}; + +export default function RegisterLayout({ + type, +}: { + type: 'profile' | 'store'; +}) { + const navigate = useNavigate(); + const { header, content, buttonText, link } = TEXT_MAP[type]; + + return ( +
+

{header}

+
+

{content}

+ +
+
+ ); +} From a4266dc7fce30f11d872037c735952e8bd4bbd0b Mon Sep 17 00:00:00 2001 From: Yun-Jinwoo Date: Fri, 20 Jun 2025 00:41:41 +0900 Subject: [PATCH 2/7] =?UTF-8?q?=E2=9C=A8=20feat:=20=EB=93=B1=EB=A1=9D?= =?UTF-8?q?=ED=95=9C=20=EA=B3=B5=EA=B3=A0=EA=B0=80=20=EC=97=86=EB=8A=94=20?= =?UTF-8?q?=EA=B2=BD=EC=9A=B0=EC=99=80=20=EC=A7=80=EC=9B=90=20=EB=82=B4?= =?UTF-8?q?=EC=97=AD=EC=9D=B4=20=EC=97=86=EB=8A=94=20=EA=B2=BD=EC=9A=B0=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/layout/RegisterLayout.tsx | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/components/layout/RegisterLayout.tsx b/src/components/layout/RegisterLayout.tsx index 78c3933a..99acd248 100644 --- a/src/components/layout/RegisterLayout.tsx +++ b/src/components/layout/RegisterLayout.tsx @@ -14,12 +14,24 @@ const TEXT_MAP = { buttonText: '가게 등록하기', link: '/owner/store/edit', }, + application: { + header: '신청 내역', + content: '아직 신청 내역이 없어요.', + buttonText: '공고 보러가기', + link: '/', + }, + notice: { + header: '등록한 공고', + content: '공고를 등록해 보세요.', + buttonText: '공고 등록하기', + link: '/owner/post', + }, }; export default function RegisterLayout({ type, }: { - type: 'profile' | 'store'; + type: 'profile' | 'store' | 'application' | 'notice'; }) { const navigate = useNavigate(); const { header, content, buttonText, link } = TEXT_MAP[type]; From 0f02b707f7f2d7f3d5afea60e886f43d3c505e6d Mon Sep 17 00:00:00 2001 From: Yun-Jinwoo Date: Fri, 20 Jun 2025 00:43:32 +0900 Subject: [PATCH 3/7] =?UTF-8?q?=F0=9F=8E=A8=20style:=20=EC=95=84=EB=9E=98?= =?UTF-8?q?=20padding=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/layout/RegisterLayout.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/layout/RegisterLayout.tsx b/src/components/layout/RegisterLayout.tsx index 99acd248..014057c8 100644 --- a/src/components/layout/RegisterLayout.tsx +++ b/src/components/layout/RegisterLayout.tsx @@ -37,7 +37,7 @@ export default function RegisterLayout({ const { header, content, buttonText, link } = TEXT_MAP[type]; return ( -
+

{header}

{content}

From ac86ad2726226d838e1f0d879785838bbdf34ab3 Mon Sep 17 00:00:00 2001 From: Yun-Jinwoo Date: Fri, 20 Jun 2025 11:26:38 +0900 Subject: [PATCH 4/7] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20refactor:=20=ED=97=A4?= =?UTF-8?q?=EB=8D=94=20=EC=82=AD=EC=A0=9C,=20=EB=B0=95=EC=8A=A4=20?= =?UTF-8?q?=EB=B6=80=EB=B6=84=EB=A7=8C=20=EB=8B=B4=EB=8B=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/layout/RegisterLayout.tsx | 27 +++++++++--------------- 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/src/components/layout/RegisterLayout.tsx b/src/components/layout/RegisterLayout.tsx index 014057c8..1160183f 100644 --- a/src/components/layout/RegisterLayout.tsx +++ b/src/components/layout/RegisterLayout.tsx @@ -3,25 +3,21 @@ import Button from '../common/Button'; const TEXT_MAP = { profile: { - header: '내 프로필', content: '내 프로필을 등록하고 원하는 가게에 지원해 보세요.', buttonText: '내 프로필 등록하기', link: '/profile/edit', }, store: { - header: '내 가게', content: '내 가게를 소개하고 공고도 등록해 보세요.', buttonText: '가게 등록하기', link: '/owner/store/edit', }, application: { - header: '신청 내역', content: '아직 신청 내역이 없어요.', buttonText: '공고 보러가기', link: '/', }, notice: { - header: '등록한 공고', content: '공고를 등록해 보세요.', buttonText: '공고 등록하기', link: '/owner/post', @@ -34,21 +30,18 @@ export default function RegisterLayout({ type: 'profile' | 'store' | 'application' | 'notice'; }) { const navigate = useNavigate(); - const { header, content, buttonText, link } = TEXT_MAP[type]; + const { content, buttonText, link } = TEXT_MAP[type]; return ( -
-

{header}

-
-

{content}

- -
+
+

{content}

+
); } From cc884180e057f452bf38bbe7df85da1c08c6d2f9 Mon Sep 17 00:00:00 2001 From: Yun-Jinwoo Date: Fri, 20 Jun 2025 13:06:14 +0900 Subject: [PATCH 5/7] =?UTF-8?q?=F0=9F=8E=A8=20style:=20=EB=B2=84=ED=8A=BC?= =?UTF-8?q?=20=EC=82=AC=EC=9D=B4=EC=A6=88=20=ED=94=84=EB=A1=AD=EC=9C=BC?= =?UTF-8?q?=EB=A1=9C=20=ED=81=AC=EA=B8=B0=20=EC=A1=B0=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/profile/ProfileForm.tsx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/pages/profile/ProfileForm.tsx b/src/pages/profile/ProfileForm.tsx index 8944225d..02ff8743 100644 --- a/src/pages/profile/ProfileForm.tsx +++ b/src/pages/profile/ProfileForm.tsx @@ -1,3 +1,8 @@ +import RegisterLayout from '@/components/layout/RegisterLayout'; export default function ProfileForm() { - return
내 프로필 등록/편집 (알바님)
; + return ( +
+ +
+ ); } From 53c6823d3cac873ca1c71c1e7a332388d3262ec4 Mon Sep 17 00:00:00 2001 From: Yun-Jinwoo Date: Fri, 20 Jun 2025 13:11:18 +0900 Subject: [PATCH 6/7] =?UTF-8?q?=F0=9F=8E=A8=20style:=20=EB=B2=84=ED=8A=BC?= =?UTF-8?q?=20=EC=82=AC=EC=9D=B4=EC=A6=88=20=ED=94=84=EB=A1=AD=EC=9C=BC?= =?UTF-8?q?=EB=A1=9C=20=ED=81=AC=EA=B8=B0=20=EC=A1=B0=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/layout/RegisterLayout.tsx | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/src/components/layout/RegisterLayout.tsx b/src/components/layout/RegisterLayout.tsx index 1160183f..dcad051f 100644 --- a/src/components/layout/RegisterLayout.tsx +++ b/src/components/layout/RegisterLayout.tsx @@ -1,3 +1,4 @@ +import { useState, useEffect } from 'react'; import { useNavigate } from 'react-router-dom'; import Button from '../common/Button'; @@ -31,13 +32,29 @@ export default function RegisterLayout({ }) { const navigate = useNavigate(); const { content, buttonText, link } = TEXT_MAP[type]; + const [buttonSize, setButtonSize] = useState('medium'); + + useEffect(() => { + const handleResize = () => { + if (window.innerWidth >= 768) { + setButtonSize('large'); + } else { + setButtonSize('medium'); + } + }; + + handleResize(); + window.addEventListener('resize', handleResize); + + return () => window.removeEventListener('resize', handleResize); + }, []); return (

{content}