tane/apps/app_seeds/lib
vjrj beb29915d8 feat(market): search + pull-to-refresh in the market list
Match the inventory patterns the market was missing:
- Search: OffersState gains a `query` + `visibleOffers` getter and
  OffersCubit.search() filters the already-discovered offers locally by
  summary (case-insensitive), never re-hitting the transport. The filter
  survives a refresh. Rounded search field mirrors inventory's.
- Pull-to-refresh: RefreshIndicator re-runs discovery for the current
  area (empty state included, so a swipe re-scans). Text filter kept.
- i18n: market.searchHint / market.noMatches (en/es/pt).

Note: the shared slang output (strings*.g.dart, incl. the generated
Asturian locale) is regenerated wholesale, so it also carries the
in-progress `ast` locale keys already present in the working tree.
2026-07-10 15:40:13 +02:00
..
data feat(block2): publish my seeds to the network (completes publish->discover) 2026-07-10 10:18:30 +02:00
db feat(inventory): photo-first drafts + on-device OCR (digitization R2+R4) 2026-07-09 21:23:46 +02:00
di feat(block2): show contact names (resolve peers' published profiles) 2026-07-10 12:47:48 +02:00
domain Solve lint issue 2026-07-10 10:34:43 +02:00
i18n feat(market): search + pull-to-refresh in the market list 2026-07-10 15:40:13 +02:00
security feat(backup): sealed backups + printable recovery sheet 2026-07-09 22:32:13 +02:00
services Merge branch 'spike/block2-derisking' 2026-07-10 13:40:07 +02:00
state feat(market): search + pull-to-refresh in the market list 2026-07-10 15:40:13 +02:00
ui feat(market): search + pull-to-refresh in the market list 2026-07-10 15:40:13 +02:00
app.dart feat(block2): show contact names (resolve peers' published profiles) 2026-07-10 12:47:48 +02:00
main.dart feat(block2): show contact names (resolve peers' published profiles) 2026-07-10 12:47:48 +02:00