diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 000000000..69e1b9e7c Binary files /dev/null and b/.DS_Store differ diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 000000000..23830fb42 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "git.ignoreLimitWarning": true +} diff --git a/omechu-app/middleware.ts b/omechu-app/middleware.ts new file mode 100644 index 000000000..69c1a327b --- /dev/null +++ b/omechu-app/middleware.ts @@ -0,0 +1,33 @@ +import { NextResponse } from "next/server"; +import type { NextRequest } from "next/server"; + +// NOTE: middleware 함수는 모든 요청에 대해 실행되어 라우팅 또는 리디렉션 등을 처리할 수 있음 +export function middleware(request: NextRequest) { + const { pathname, searchParams } = request.nextUrl; + + // CASE 1: /restaurant-detail?id=123 형식으로 접근 시 → /restaurant-detail/123 으로 리디렉션 + if (pathname === "/restaurant-detail" && searchParams.has("id")) { + const id = searchParams.get("id"); + const url = request.nextUrl.clone(); + url.pathname = `/restaurant-detail/${id}`; // 동적 세그먼트 경로로 변경 + url.search = ""; // 기존 쿼리스트링 제거 + return NextResponse.redirect(url); + } + + // CASE 2: /restaurant-detail/map?id=123 형식으로 접근 시 → /restaurant-detail/map/123 으로 리디렉션 + if (pathname === "/restaurant-detail/map" && searchParams.has("id")) { + const id = searchParams.get("id"); + const url = request.nextUrl.clone(); + url.pathname = `/restaurant-detail/map/${id}`; // 동적 세그먼트 경로로 변경 + url.search = ""; // 기존 쿼리스트링 제거 + return NextResponse.redirect(url); + } + + // 기본적으로는 요청을 그대로 통과시킴 + return NextResponse.next(); +} + +// NOTE: matcher를 설정하면 특정 경로에만 middleware를 적용 가능 (선택사항) +export const config = { + matcher: ["/restaurant-detail", "/restaurant-detail/map"], +}; diff --git a/omechu-app/public/arrow_down.png b/omechu-app/public/arrow_down.png new file mode 100644 index 000000000..1f973fd7d Binary files /dev/null and b/omechu-app/public/arrow_down.png differ diff --git a/omechu-app/public/arrow_up.png b/omechu-app/public/arrow_up.png new file mode 100644 index 000000000..24c459acf Binary files /dev/null and b/omechu-app/public/arrow_up.png differ diff --git a/omechu-app/public/menu_dots_vertical.png b/omechu-app/public/menu_dots_vertical.png new file mode 100644 index 000000000..7cf58b7cf Binary files /dev/null and b/omechu-app/public/menu_dots_vertical.png differ diff --git a/omechu-app/public/report.png b/omechu-app/public/report.png new file mode 100644 index 000000000..5f4efac32 Binary files /dev/null and b/omechu-app/public/report.png differ diff --git a/omechu-app/public/restaurant/avatar1.png b/omechu-app/public/restaurant/avatar1.png new file mode 100644 index 000000000..c377b1f3b Binary files /dev/null and b/omechu-app/public/restaurant/avatar1.png differ diff --git a/omechu-app/public/restaurant/avatar2.png b/omechu-app/public/restaurant/avatar2.png new file mode 100644 index 000000000..aa1bd3bec Binary files /dev/null and b/omechu-app/public/restaurant/avatar2.png differ diff --git a/omechu-app/public/restaurant/avatar3.png b/omechu-app/public/restaurant/avatar3.png new file mode 100644 index 000000000..95b59ad34 Binary files /dev/null and b/omechu-app/public/restaurant/avatar3.png differ diff --git "a/omechu-app/public/restaurant/\354\230\244\353\240\210\353\205\270\353\235\274\353\251\230\355\225\251\354\240\225.png" "b/omechu-app/public/restaurant/\354\230\244\353\240\210\353\205\270\353\235\274\353\251\230\355\225\251\354\240\225.png" new file mode 100644 index 000000000..7b2a94c2c Binary files /dev/null and "b/omechu-app/public/restaurant/\354\230\244\353\240\210\353\205\270\353\235\274\353\251\230\355\225\251\354\240\225.png" differ diff --git a/omechu-app/public/restaurant_blank.png b/omechu-app/public/restaurant_blank.png new file mode 100644 index 000000000..e4000b40b Binary files /dev/null and b/omechu-app/public/restaurant_blank.png differ diff --git a/omechu-app/public/restaurant_location.png b/omechu-app/public/restaurant_location.png new file mode 100644 index 000000000..27565007d Binary files /dev/null and b/omechu-app/public/restaurant_location.png differ diff --git a/omechu-app/public/restaurant_menu.png b/omechu-app/public/restaurant_menu.png new file mode 100644 index 000000000..56e27e9e1 Binary files /dev/null and b/omechu-app/public/restaurant_menu.png differ diff --git a/omechu-app/public/restaurant_time_table.png b/omechu-app/public/restaurant_time_table.png new file mode 100644 index 000000000..d3b0485ae Binary files /dev/null and b/omechu-app/public/restaurant_time_table.png differ diff --git a/omechu-app/public/thumbs-up-fill.png b/omechu-app/public/thumbs-up-fill.png new file mode 100644 index 000000000..3e0f08017 Binary files /dev/null and b/omechu-app/public/thumbs-up-fill.png differ diff --git a/omechu-app/public/thumbs-up.png b/omechu-app/public/thumbs-up.png new file mode 100644 index 000000000..61566b2fb Binary files /dev/null and b/omechu-app/public/thumbs-up.png differ diff --git a/omechu-app/src/app/ClientLayout.tsx b/omechu-app/src/app/ClientLayout.tsx index ae33f6045..243e7b189 100644 --- a/omechu-app/src/app/ClientLayout.tsx +++ b/omechu-app/src/app/ClientLayout.tsx @@ -29,15 +29,24 @@ export default function ClientLayout({ "/mypage/user-info-setup/condition", "/mypage/user-info-setup/allergy", "/mypage/recommended-list", + "/mainpage/question-answer/meal-time", + "/mainpage/question-answer/purpose", + "/mainpage/question-answer/state", + "/mainpage/question-answer/who", + "/mainpage/question-answer/budget", + "/mainpage/question-answer/middle-question", + "/mainpage/meal-answer", + "/mainpage/location-answer", + "/mypage/recommended-list", + // 마이페이지-이용약관 + "/mypage/terms", // 마이페이지-설정 "/mypage/settings", "/mypage/settings/account-settings", "/mypage/settings/account-settings/change-password", + // 마이페이지-이용약관 "/mypage/terms", - "/mypage/terms/service", - "/mypage/terms/personal-info", - "/mypage/terms/location-info", // 로그인, 회원가입, 온보딩 페이지 "/auth/signin", @@ -50,6 +59,14 @@ export default function ClientLayout({ "/onboarding/4", "/onboarding/5", "/onboarding/6", + + // 마이페이지-이용약관 + "/mypage/terms/service", + "/mypage/terms/personal-info", + "/mypage/terms/location-info", + + //맛집-상세페이지 + "/restaurant-detail", ]; const showBottomNav = !noBottomNavRoutes.includes(pathname); diff --git a/omechu-app/src/app/auth/signup/page.tsx b/omechu-app/src/app/auth/signup/page.tsx index f5f2423c1..ec041c0e4 100644 --- a/omechu-app/src/app/auth/signup/page.tsx +++ b/omechu-app/src/app/auth/signup/page.tsx @@ -66,7 +66,7 @@ export default function Signup() { return (
-

+

회원 정보를 입력해 주세요

@@ -149,7 +149,7 @@ export default function Signup() { onChange={handleAllAgreement} className="peer relative appearance-none w-5 h-5 border-2 border-gray-300 rounded-full cursor-pointer checked:bg-[#00B2FF] checked:border-transparent focus:outline-none" /> - + -
+