feat(shell): home menu + navigation drawer (mockups 02/03)
The app now opens on a main menu instead of straight into the list: - HomeScreen (mockup 02): sprout logo over a faint seed-glyph watermark, with big "Your inventory" (→ /inventory) and "Open market" (Block 2, "coming soon") destinations. - AppDrawer (mockup 03): Inventory is live; the social items (market, profile, chat, wishlist, following, settings) are shown disabled with a "coming soon" tag so the roadmap is visible. Drawer is available on home and inventory. - Routing: / → home, /inventory → list, /variety/:id → detail. Tests: home shows the menu + navigates; drawer opens + navigates. quick-add flow updated to go home → inventory. 50 green; Linux runs.
This commit is contained in:
parent
17073dd560
commit
02a9d5bf39
11 changed files with 472 additions and 8 deletions
|
|
@ -8,13 +8,13 @@ import 'data/variety_repository.dart';
|
|||
import 'i18n/strings.g.dart';
|
||||
import 'state/inventory_cubit.dart';
|
||||
import 'state/variety_detail_cubit.dart';
|
||||
import 'ui/home_screen.dart';
|
||||
import 'ui/inventory_list_screen.dart';
|
||||
import 'ui/theme.dart';
|
||||
import 'ui/variety_detail_screen.dart';
|
||||
|
||||
/// Root widget. Provides the repository + inventory cubit to the tree and wires
|
||||
/// go_router. The list is `/`; `/variety/:id` is a placeholder detail route
|
||||
/// (the full item screen is a follow-on story).
|
||||
/// Root widget. Provides the repositories to the tree and wires go_router:
|
||||
/// `/` is the home menu, `/inventory` the list, `/variety/:id` the item detail.
|
||||
class TaneApp extends StatelessWidget {
|
||||
TaneApp({required this.repository, required this.species, super.key})
|
||||
: _router = _buildRouter(repository);
|
||||
|
|
@ -26,8 +26,9 @@ class TaneApp extends StatelessWidget {
|
|||
static GoRouter _buildRouter(VarietyRepository repository) {
|
||||
return GoRouter(
|
||||
routes: [
|
||||
GoRoute(path: '/', builder: (context, state) => const HomeScreen()),
|
||||
GoRoute(
|
||||
path: '/',
|
||||
path: '/inventory',
|
||||
builder: (context, state) => BlocProvider(
|
||||
create: (_) => InventoryCubit(repository),
|
||||
child: const InventoryListScreen(),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue