import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import 'screens/conversation_list_screen.dart'; import 'screens/onboarding_tone_screen.dart'; import 'screens/signup_screen.dart'; import 'state/session_state.dart'; Future main() async { WidgetsFlutterBinding.ensureInitialized(); final session = SessionState(); await session.restore(); runApp(BunsinApp(session: session)); } class BunsinApp extends StatelessWidget { const BunsinApp({super.key, required this.session}); final SessionState session; @override Widget build(BuildContext context) { return ChangeNotifierProvider.value( value: session, child: MaterialApp( title: '분신', theme: ThemeData( colorScheme: ColorScheme.fromSeed( seedColor: const Color(0xFF1F6F5B), brightness: Brightness.light, ), useMaterial3: true, ), home: Consumer( builder: (context, s, _) { if (s.user == null) return const SignupScreen(); if (!s.toneOnboardingDone) return const OnboardingToneScreen(); return const ConversationListScreen(); }, ), ), ); } }