- gen-l10n setup (flutter_localizations, intl, l10n.yaml, ARB en/fr) - localeProvider (persisted) wired into MaterialApp - language selector in the System page (alongside the color palette) - all user-facing strings across screens moved to AppLocalizations Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
31 lines
1022 B
Dart
31 lines
1022 B
Dart
import 'package:flutter/material.dart';
|
|
import '../../../l10n/app_localizations.dart';
|
|
|
|
/// Bandeau affichant le nombre de Pokémon découverts sur le total.
|
|
class PokedexCountBar extends StatelessWidget {
|
|
final int caught;
|
|
final int total;
|
|
const PokedexCountBar({super.key, required this.caught, required this.total});
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return Container(
|
|
padding: const EdgeInsets.symmetric(vertical: 12.0),
|
|
decoration: const BoxDecoration(
|
|
color: Color(0xFFB0BEC5),
|
|
border: Border(bottom: BorderSide(color: Color(0xFF78909C), width: 2)),
|
|
),
|
|
child: Column(
|
|
children: [
|
|
Text(
|
|
'${caught.toString().padLeft(3, '0')} / $total',
|
|
style: const TextStyle(fontSize: 32, fontWeight: FontWeight.bold),
|
|
),
|
|
Text(AppLocalizations.of(context)!.pokemonDiscovered,
|
|
style: const TextStyle(fontSize: 14, color: Colors.black54, letterSpacing: 1)),
|
|
],
|
|
),
|
|
);
|
|
}
|
|
}
|