49 lines
1.5 KiB
Dart
49 lines
1.5 KiB
Dart
import 'package:board_game/board_game.dart';
|
|
import 'package:flutter/material.dart';
|
|
import 'package:key_value_storage/key_value_storage.dart';
|
|
import 'package:provider/provider.dart';
|
|
import 'package:user_repository/user_repository.dart';
|
|
|
|
void main() {
|
|
runApp(
|
|
MultiProvider(
|
|
providers: [
|
|
// Ton provider UserRepository
|
|
Provider(
|
|
create: (context) => LocalUserRepository(
|
|
keyValueStorage: KeyValueStorage(),
|
|
),
|
|
),
|
|
// Providers pour la gestion de l'état
|
|
ChangeNotifierProvider(create: (context) => CellListProvider()),
|
|
ChangeNotifierProvider(create: (context) => ArticleListProvider()),
|
|
ChangeNotifierProvider(create: (context) => SettingsProvider()),
|
|
ChangeNotifierProvider(
|
|
create: (context) =>
|
|
UserProvider(context.read<LocalUserRepository>()),
|
|
),
|
|
],
|
|
child: const MainApp(), // Maintenant MainApp a accès aux providers
|
|
),
|
|
);
|
|
}
|
|
|
|
class MainApp extends StatelessWidget {
|
|
const MainApp({super.key});
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return MaterialApp(
|
|
debugShowCheckedModeBanner: false,
|
|
theme: context.watch<SettingsProvider>().state.theme,
|
|
title: 'Little Strategy Game',
|
|
routes: {
|
|
'/': (context) => const LoginScreen(),
|
|
'/lobby': (context) => const Lobby(),
|
|
'/settings': (context) => const Settings(),
|
|
'/blog': (context) => const Blog(),
|
|
},
|
|
);
|
|
}
|
|
}
|