Commit Graph

6 Commits

Author SHA1 Message Date
4a9377e0a9 auto-claude: subtask-4-3 - Create gRPC-based deliveries provider
Add grpcDeliveriesProvider as a gRPC-based alternative to deliveriesProvider.
The new provider uses GrpcCqrsApiClient.getDeliveries() for improved
performance and type safety. Follows the existing pattern with:
- FutureProvider.family pattern for route-specific queries
- Authentication check before API calls
- Result.when() for proper error handling
- Warehouse delivery appended at the end

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-20 13:09:56 -05:00
1d3c06bc4c auto-claude: subtask-4-2 - Create gRPC-based delivery routes provider
Add grpcDeliveryRoutesProvider to providers.dart that uses GrpcCqrsApiClient
for fetching delivery routes. Follows the same pattern as the HTTP-based
deliveryRoutesProvider: checks authentication, uses grpcClientProvider,
and handles Result<T> responses with proper error logging.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-20 13:08:49 -05:00
7c1832dd4f auto-claude: subtask-3-3 - Implement getDeliveries query method 2026-01-20 13:04:25 -05:00
f6ecc8b1ae auto-claude: subtask-3-1 - Create GrpcCqrsApiClient class with channel management
Implements the foundational gRPC client class with:
- Lazy ClientChannel initialization with proper credentials
- DeliveryServiceClient lazy initialization
- Authentication via Bearer token in gRPC metadata
- CallOptions builder with token injection
- gRPC error to ApiError mapping (status codes -> HTTP equivalents)
- Token refresh on UNAUTHENTICATED errors (single retry)
- Proper channel shutdown/terminate methods

The core _executeWithAuth and _executeCommandWithAuth methods provide
the foundation for query and command methods in subsequent subtasks.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-20 13:00:55 -05:00
6986a12b91 auto-claude: subtask-6-1 - Run flutter analyze to ensure no errors or warnings
Fixed all 39 analyzer issues:
- Removed unused import (animation_system.dart in collapsible_routes_sidebar.dart)
- Removed unused element (_buildActionButton in dark_mode_map.dart)
- Fixed unnecessary non-null assertions on AppLocalizations.of(context)
- Removed unnecessary type checks in providers.dart
- Used super parameters for key in navigation_tc_dialog.dart and status_colors.dart
- Replaced print statements with debugPrint in providers.dart and logging_interceptor.dart

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-20 11:54:12 -05:00
c53f4a3b2f auto-claude: subtask-5-1 - Remove orientation restriction to allow all orientations
Removed SystemChrome.setPreferredOrientations call that was restricting
the app to landscape-only mode. The app now supports all device orientations
by using Flutter's default behavior.

Also fixed a minor lint warning by replacing (_, __) with named parameters.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-20 11:47:26 -05:00