feat(block2): market screen — discover seeds near you (offers UI)
Wires the 'coming soon' market card to a real discovery screen (mockups 04/05): - MarketScreen: opens an OfferTransport lazily; local-first, so it degrades to a human 'set up sharing' prompt when no relay/area is set or the net is down. - Discovers offers by the saved coarse area, lists them with human reciprocity labels (gift/swap/for sale), 'near you' (never exact location), price only for sales. Config sheet to set area + community servers (no bundled public relays). - Threaded via TaneApp(social, socialSettings) — null keeps the card 'coming soon' (so Block 1 tests pass unchanged); main wires it live. - i18n en/es/pt (market.*), reuses share.* for type labels. 3 market widget tests + home tests green; app_seeds analyzes clean.
This commit is contained in:
parent
528b499209
commit
c696956ee2
8 changed files with 637 additions and 16 deletions
|
|
@ -327,5 +327,23 @@
|
|||
"cutting": { "singular": "cutting", "plural": "cuttings" },
|
||||
"grams": { "singular": "gram", "plural": "grams" },
|
||||
"count": { "singular": "seed", "plural": "seeds" }
|
||||
},
|
||||
"market": {
|
||||
"title": "Seeds near you",
|
||||
"subtitle": "What others are sharing nearby",
|
||||
"notSetUp": "Sharing isn't set up yet",
|
||||
"notSetUpBody": "Add a community server and your area to see and share seeds nearby. Everything stays coarse — never your exact address.",
|
||||
"setUp": "Set up sharing",
|
||||
"searching": "Looking around your area…",
|
||||
"empty": "No seeds shared near you yet",
|
||||
"near": "Near you",
|
||||
"configTitle": "Sharing setup",
|
||||
"areaLabel": "Area code",
|
||||
"areaHelp": "Kept coarse on purpose — roughly your zone, never an exact spot.",
|
||||
"serversLabel": "Community servers",
|
||||
"serversHelp": "One address per line — run by seed networks or collectives, not a company.",
|
||||
"save": "Save",
|
||||
"saved": "Saved",
|
||||
"wanted": "Wanted"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -327,5 +327,23 @@
|
|||
"cutting": { "singular": "esqueje", "plural": "esquejes" },
|
||||
"grams": { "singular": "gramo", "plural": "gramos" },
|
||||
"count": { "singular": "semilla", "plural": "semillas" }
|
||||
},
|
||||
"market": {
|
||||
"title": "Semillas cerca de ti",
|
||||
"subtitle": "Lo que otras personas comparten cerca",
|
||||
"notSetUp": "Aún no has configurado el compartir",
|
||||
"notSetUpBody": "Añade un servidor comunitario y tu zona para ver y compartir semillas cerca. Todo se mantiene aproximado — nunca tu dirección exacta.",
|
||||
"setUp": "Configurar el compartir",
|
||||
"searching": "Buscando por tu zona…",
|
||||
"empty": "Aún no hay semillas compartidas cerca de ti",
|
||||
"near": "Cerca de ti",
|
||||
"configTitle": "Configuración de compartir",
|
||||
"areaLabel": "Código de zona",
|
||||
"areaHelp": "Se mantiene aproximado a propósito — tu zona a grandes rasgos, nunca un punto exacto.",
|
||||
"serversLabel": "Servidores comunitarios",
|
||||
"serversHelp": "Una dirección por línea — de redes de semillas o colectivos, no de una empresa.",
|
||||
"save": "Guardar",
|
||||
"saved": "Guardado",
|
||||
"wanted": "Busco"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -323,5 +323,23 @@
|
|||
"cutting": { "singular": "estaca", "plural": "estacas" },
|
||||
"grams": { "singular": "grama", "plural": "gramas" },
|
||||
"count": { "singular": "semente", "plural": "sementes" }
|
||||
},
|
||||
"market": {
|
||||
"title": "Sementes perto de ti",
|
||||
"subtitle": "O que outras pessoas partilham por perto",
|
||||
"notSetUp": "Ainda não configuraste a partilha",
|
||||
"notSetUpBody": "Adiciona um servidor comunitário e a tua zona para ver e partilhar sementes por perto. Tudo fica aproximado — nunca a tua morada exata.",
|
||||
"setUp": "Configurar a partilha",
|
||||
"searching": "A procurar pela tua zona…",
|
||||
"empty": "Ainda não há sementes partilhadas perto de ti",
|
||||
"near": "Perto de ti",
|
||||
"configTitle": "Configuração de partilha",
|
||||
"areaLabel": "Código de zona",
|
||||
"areaHelp": "Mantém-se aproximado de propósito — a tua zona em geral, nunca um ponto exato.",
|
||||
"serversLabel": "Servidores comunitários",
|
||||
"serversHelp": "Um endereço por linha — de redes de sementes ou coletivos, não de uma empresa.",
|
||||
"save": "Guardar",
|
||||
"saved": "Guardado",
|
||||
"wanted": "Procuro"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue