petitspas/frontend/lib/main.dart
Julien Martin e887562a1c fix(front): activer path URL strategy pour create-password (#118)
Active usePathUrlStrategy pour que les deep links web /create-password?token=... soient correctement résolus sans redirection implicite vers #login, et déclare flutter_web_plugins côté front.

Made-with: Cursor
2026-04-23 12:09:46 +02:00

45 lines
1.7 KiB
Dart

import 'package:flutter/material.dart';
import 'package:flutter_web_plugins/url_strategy.dart';
import 'package:google_fonts/google_fonts.dart';
import 'package:flutter_localizations/flutter_localizations.dart'; // Import pour la localisation
// import 'package:provider/provider.dart'; // Supprimer Provider
import 'config/app_router.dart'; // <-- Importer le bon routeur (GoRouter)
// import 'theme/app_theme.dart'; // Supprimer AppTheme
// import 'theme/theme_provider.dart'; // Supprimer ThemeProvider
void main() {
// Permet les URLs web propres (/create-password?token=...) sans hash.
usePathUrlStrategy();
runApp(const MyApp()); // Exécution simple
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
// Pas besoin de Provider.of ici
return MaterialApp.router( // <-- Utilisation de MaterialApp.router
title: 'P\'titsPas',
theme: ThemeData.light().copyWith( // Utiliser un thème simple par défaut
textTheme: GoogleFonts.meriendaTextTheme(
ThemeData.light().textTheme,
),
// TODO: Définir les couleurs principales si besoin
),
localizationsDelegates: const [ // Configuration pour la localisation
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
],
supportedLocales: const [ // Langues supportées
Locale('fr', 'FR'), // Français
// Locale('en', 'US'), // Anglais, si besoin
],
locale: const Locale('fr', 'FR'), // Forcer la locale française par défaut
routerConfig: AppRouter.router, // <-- Passer la configuration du GoRouter
debugShowCheckedModeBanner: false,
);
}
}