tane/apps/app_seeds/lib/ui/theme.dart
vjrj 48e9d15772 feat(ui): align inventory + detail with mockups (seed icons, green theme)
Visual pass toward docs/mockups (06 inventory, 07 item):
- Bundle the seedks icon font (chars a–k → seed pictograms: jar, packet, spoon…)
  and a SeedGlyph/QuantityKindIcon helper.
- Green app bar + pale-green canvas theme (buildTaneTheme).
- Inventory list: rounded-square photo thumbnail or green initial avatar, bold
  title, scientific-name subtitle, trailing edit pencil, styled category
  headers, rounded search field, seed-glyph empty state.
- Quantity selectors (quick-add + add-lot) show the seed pictogram + word;
  detail lot lines use the kind's glyph.
- Detail header restyled to mockup 07: category link + scientific name on the
  left, photo on the right.

watchInventory now also returns the linked species' scientific name (subtitle).
37 app tests green; seedks font verified in the Linux asset bundle.
2026-07-08 00:14:43 +02:00

35 lines
1 KiB
Dart

import 'package:flutter/material.dart';
/// Seed-green palette drawn from the mockups (docs/mockups): a green app bar and
/// a pale-green canvas.
const seedGreen = Color(0xFF3C8B2E);
const seedGreenDark = Color(0xFF1B5E20);
const seedCanvas = Color(0xFFEAF4E2);
const seedLink = Color(0xFF1E88C0);
ThemeData buildTaneTheme() {
final scheme = ColorScheme.fromSeed(
seedColor: seedGreen,
brightness: Brightness.light,
);
return ThemeData(
useMaterial3: true,
colorScheme: scheme,
scaffoldBackgroundColor: seedCanvas,
appBarTheme: const AppBarTheme(
backgroundColor: seedGreen,
foregroundColor: Colors.white,
elevation: 0,
centerTitle: false,
),
floatingActionButtonTheme: const FloatingActionButtonThemeData(
backgroundColor: seedGreen,
foregroundColor: Colors.white,
),
bottomSheetTheme: const BottomSheetThemeData(
backgroundColor: seedCanvas,
surfaceTintColor: Colors.transparent,
),
dividerTheme: const DividerThemeData(space: 1, thickness: 1),
);
}