dbastrikin ea11a423e0 fix: prevent GoRouter recreation on auth state change
routerProvider was watching authProvider and returning a new GoRouter
on every status transition (unknown → authenticated). This caused
MaterialApp.router to rebuild the entire navigation tree, which
triggered all data providers to start loading before auth was confirmed.

Switch to refreshListenable pattern: GoRouter is created once,
_RouterNotifier fires notifyListeners() when auth changes, and GoRouter
re-runs redirect using ref.read(authProvider). Add /loading splash route
shown during AuthStatus.unknown so no authenticated screen (and no API
call) is initiated until the stored-token check completes.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-22 17:42:29 +02:00
Description
FoodAI — мобильное приложение, которое помогает пользователю управлять своим питанием: планировать меню, вести учёт калорий и контролировать запасы продуктов. Ключевая особенность — использование камеры телефона для распознавания продуктов, чеков и готовых блюд с автоматическим подсчётом калорий и подбором рецептов.
1.5 MiB
Languages
Dart 58.1%
Go 38.9%
PLpgSQL 2.6%
Makefile 0.2%
HTML 0.1%