feat(app): hint isolation distance when sowing a cross-pollinating crop
Some checks failed
ci / test-commons-core (push) Successful in 58s
ci / analyze (push) Successful in 1m49s
site / deploy (push) Successful in 38s
ci / test-app-seeds (push) Has been cancelled

One passive line in the batch story after a 'sown today' tap — 'this
species crosses, grow it ~400 m from others' — sourced from the bundled
seed-saving guidance (family default + species override). Selfers get
nothing: the trap is recording isolation religiously for beans where it
never mattered. No input fields, no schema change.
This commit is contained in:
vjrj 2026-07-18 12:31:42 +02:00
parent f1aa8f8e66
commit 1a826477f2
8 changed files with 116 additions and 7 deletions

View file

@ -237,6 +237,10 @@ class _DetailView extends StatelessWidget {
cubit: cubit,
lot: lot,
viabilityYears: detail.viabilityYears,
guide: SeedSavingCatalog.guideFor(
scientificName: detail.scientificName,
family: detail.family ?? detail.category,
),
),
_PlantaresSection(varietyId: detail.id),
],
@ -375,6 +379,7 @@ class _LotTile extends StatelessWidget {
required this.cubit,
required this.lot,
required this.viabilityYears,
this.guide,
});
final VarietyDetailCubit cubit;
@ -383,6 +388,10 @@ class _LotTile extends StatelessWidget {
/// Typical seed longevity of the variety's species (years), or null.
final int? viabilityYears;
/// Bundled seed-saving guidance for the species, or null lets the history
/// sheet drop a one-line isolation hint when a crosser is sown.
final SeedSavingGuide? guide;
@override
Widget build(BuildContext context) {
final t = context.t;
@ -443,6 +452,7 @@ class _LotTile extends StatelessWidget {
context,
repository: context.read<VarietyRepository>(),
lot: lot,
guide: guide,
),
),
IconButton(