+ {/* 중앙 그래픽 자리 */}
+
+
그래픽,,들어갈 자리,,
+
+ {/* SEEAT 로고 */}
+
-
-
+ {/* 소셜 로그인 버튼 */}
+
+
+ {/* 카카오 로그인 */}
+
-
+ {/* 네이버 로그인 */}
+
+
);
diff --git a/src/pages/splash/SplashPage.tsx b/src/pages/splash/SplashPage.tsx
index 4d06ade..6212dff 100644
--- a/src/pages/splash/SplashPage.tsx
+++ b/src/pages/splash/SplashPage.tsx
@@ -1,4 +1,3 @@
-// src/pages/splash/SplashPage.tsx
import { useEffect } from 'react';
import { useNavigate } from 'react-router-dom';
@@ -8,14 +7,14 @@ function SplashPage() {
useEffect(() => {
const timer = setTimeout(() => {
navigate('/login');
- }, 2000); // 2초 뒤 이동
+ }, 2000);
- return () => clearTimeout(timer); // cleanup
+ return () => clearTimeout(timer);
}, [navigate]);
return (
-
-
SEEAT
+
+
SEEAT
);
}
diff --git a/src/routes/route.tsx b/src/routes/route.tsx
index 660679b..cf36b12 100644
--- a/src/routes/route.tsx
+++ b/src/routes/route.tsx
@@ -27,7 +27,7 @@ const router = createBrowserRouter([
path: '/home',
element:
,
},
- //리뷰
+ // 리뷰
{
path: '/review',
children: [
@@ -39,12 +39,12 @@ const router = createBrowserRouter([
{ path: 'form', element:
},
],
},
-
- //마이
+ // 마이
{
path: '/my',
element:
,
},
+ // 온보딩
{
path: '/onboarding/nickname',
element:
,
diff --git a/src/store/useOnboardingStore.ts b/src/store/useOnboardingStore.ts
index 400d41b..aba82d9 100644
--- a/src/store/useOnboardingStore.ts
+++ b/src/store/useOnboardingStore.ts
@@ -12,13 +12,14 @@ interface OnboardingState {
setCinemaFormat: (format: CinemaFormat) => void;
genre: GenreType[];
setGenre: (genres: GenreType[]) => void;
+ setSelectedCinemas: (cinemas: CinemaType[]) => void;
}
export const useOnboardingStore = create
((set, get) => ({
genre: [],
setGenre: (genres) => set({ genre: genres }),
-
+
nickname: '',
selectedGenres: [],
selectedCinemas: [],
@@ -47,4 +48,6 @@ export const useOnboardingStore = create((set, get) => ({
},
setCinemaFormat: (format) => set({ cinemaFormat: format }),
+
+ setSelectedCinemas: (cinemas) => set({ selectedCinemas: cinemas }), // ✅ 추가
}));
\ No newline at end of file
diff --git a/src/types/onboarding.ts b/src/types/onboarding.ts
index aa4043f..d462454 100644
--- a/src/types/onboarding.ts
+++ b/src/types/onboarding.ts
@@ -1,4 +1,29 @@
-export type GenreType = '액션' | '로맨스' | 'SF' | '공포' | '코미디' | '다큐' | '애니메이션';
-export type CinemaType = 'CGV 강남' | '롯데시네마 홍대' | '메가박스 코엑스'| 'CGV 용산' | '메가박스 성수';
+export type GenreType =
+ | '액션' | '호러' | '스릴러' | '코미디'
+ | 'SF' | '로맨스' | '판타지' | '미스터리'
+ | '범죄' | '모험' | '전쟁' | '역사'
+ | '뮤지컬' | '애니메이션' | '드라마';
-export type CinemaFormat = 'IMAX' | 'Dolby Cinema';
\ No newline at end of file
+ export const genreOptions: GenreType[] = [
+ '액션', '호러', '스릴러', '코미디',
+ 'SF', '로맨스', '판타지', '미스터리',
+ '범죄', '모험', '전쟁', '역사',
+ '뮤지컬', '애니메이션', '드라마',
+];
+
+export type CinemaType = string;
+
+export type CinemaFormat = 'IMAX' | 'Dolby';
+
+export const theaterData: Record = {
+ IMAX: [],
+ Dolby: [
+ '남양주현대아울렛 스페이스원',
+ '대구 신세계(동대구)',
+ '대전신세계아트앤사이언스',
+ '송도(트리플스트리트)',
+ '수원AK플라자(수원역)',
+ '안성스타필드',
+ '코엑스',
+ ],
+};
\ No newline at end of file