feat(mobile): Phase M-2 D3RO 디자인 시스템 모바일 적용

DS 컴포넌트 9개 (ScreenPanel, WaveBars, AppStatusBar, Header, FilterChip 신규),
5개 탭 + 로그인 화면 D3RO 인스트루먼트 미학 적용,
i18n 연결 (I18nProvider + 모바일 전용 키 80+개),
모노레포 workspaces에 apps/mobile 추가.
This commit is contained in:
yunchan8804 2026-04-13 17:32:31 +09:00
parent 541f04d02b
commit 55eb62189a
19 changed files with 10435 additions and 1073 deletions

View file

@ -1,30 +1,34 @@
// apps/mobile/app/_layout.tsx
// 루트 레이아웃 — Stack + AuthProvider
// Root layout — Stack + AuthProvider + I18nProvider
import { Stack } from 'expo-router'
import { StatusBar } from 'expo-status-bar'
import { GestureHandlerRootView } from 'react-native-gesture-handler'
import { SafeAreaProvider } from 'react-native-safe-area-context'
import { AuthProvider } from '../lib/auth-context'
import { I18nProvider } from '@d3ro/i18n'
import { d3roNativePalette } from '@d3ro/ui-native'
export default function RootLayout(): React.ReactElement {
return (
<GestureHandlerRootView style={{ flex: 1 }}>
<SafeAreaProvider>
<AuthProvider>
<StatusBar style="light" />
<Stack
screenOptions={{
headerStyle: { backgroundColor: '#19191b' },
headerTintColor: '#f25b29',
contentStyle: { backgroundColor: '#19191b' }
}}
>
<Stack.Screen name="index" options={{ headerShown: false }} />
<Stack.Screen name="login" options={{ headerShown: false }} />
<Stack.Screen name="(tabs)" options={{ headerShown: false }} />
</Stack>
</AuthProvider>
<I18nProvider initialLocale="ko">
<AuthProvider>
<StatusBar style="light" />
<Stack
screenOptions={{
headerStyle: { backgroundColor: d3roNativePalette.bg.app },
headerTintColor: d3roNativePalette.accent.amber,
contentStyle: { backgroundColor: d3roNativePalette.bg.app }
}}
>
<Stack.Screen name="index" options={{ headerShown: false }} />
<Stack.Screen name="login" options={{ headerShown: false }} />
<Stack.Screen name="(tabs)" options={{ headerShown: false }} />
</Stack>
</AuthProvider>
</I18nProvider>
</SafeAreaProvider>
</GestureHandlerRootView>
)