Upgrade Flutter packages and fix breaking changes for Riverpod 3.0

Major package upgrades:
- Riverpod 2.x → 3.0.3 (breaking changes)
- flutter_appauth 7.0.0 → 11.0.0
- go_router 14.0.0 → 17.0.0
- permission_handler 11.3.0 → 12.0.1
- flutter_lints 5.0.0 → 6.0.0
- animate_do 3.1.2 → 4.2.0
- Plus 41 transitive dependency updates

Breaking changes fixed:

Riverpod 3.0 migration:
- Replace StateProvider with NotifierProvider pattern
- Update .valueOrNull to proper async value handling with .future
- Create LanguageNotifier and ThemeModeNotifier classes
- Fix all provider async value access patterns

Google Maps Navigation API updates:
- Rename GoogleMapsNavigationViewController to GoogleNavigationViewController
- Update Waypoint to NavigationWaypoint.withLatLngTarget
- Migrate controller methods to static GoogleMapsNavigator methods
- Update event listener types and callbacks

Localization system fixes:
- Update l10n.yaml synthetic-package configuration
- Fix import paths from flutter_gen to package imports
- Add errorTitle translation key for both en/fr
- Remove unnecessary null-aware operators (AppLocalizations is non-nullable)
- Regenerate localization files

iOS/macOS configuration:
- Update CocoaPods dependencies (AppAuth 1.7.5 → 2.0.0)
- Create missing Profile.xcconfig files for both platforms
- Sync Podfile.lock files with updated dependencies

Code quality:
- Fix all analyzer errors (0 errors remaining)
- Resolve deprecated API usage warnings
- Update async/await patterns for better error handling

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Jean-Philippe Brule
2025-11-16 01:25:16 -05:00
parent 96c9e59cf0
commit d8bdaed63e
16 changed files with 272 additions and 171 deletions
+4 -5
View File
@@ -1,7 +1,7 @@
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:google_navigation_flutter/google_navigation_flutter.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:planb_logistic/l10n/app_localizations.dart';
import '../models/delivery.dart';
import '../services/location_permission_service.dart';
import '../components/navigation_tc_dialog.dart';
@@ -186,8 +186,7 @@ class _NavigationPageState extends ConsumerState<NavigationPage> {
},
denied: () {
_showErrorDialog(
AppLocalizations.of(context)?.locationPermissionDenied ??
'Location permission denied. Navigation cannot proceed.',
AppLocalizations.of(context).locationPermissionDenied,
);
widget.onNavigationCancelled?.call();
},
@@ -233,7 +232,7 @@ class _NavigationPageState extends ConsumerState<NavigationPage> {
showDialog(
context: context,
builder: (context) => AlertDialog(
title: Text(AppLocalizations.of(context)?.error ?? 'Error'),
title: Text(AppLocalizations.of(context).errorTitle),
content: Text(message),
actions: [
TextButton(
@@ -241,7 +240,7 @@ class _NavigationPageState extends ConsumerState<NavigationPage> {
Navigator.of(context).pop();
widget.onNavigationCancelled?.call();
},
child: Text(AppLocalizations.of(context)?.ok ?? 'OK'),
child: Text(AppLocalizations.of(context).ok),
),
],
),