feat(block2): show contact names (resolve peers' published profiles)
Closes the profile loop — peers now appear by name, not a raw key. - ProfileCache: keystore-backed cache of peers' published display names (works offline) + shortPubkey() fallback. - Chat: the app bar shows the peer's name (cached first, then freshened from their kind:0 over the session); falls back to a short key. - Inbox: each conversation shows the cached name, and missing names are resolved over one session and cached. - Wired via DI + TaneApp(profileCache). Analyzer clean; ProfileCache covered by a plain test.
This commit is contained in:
parent
b96b6e45cc
commit
9cc1a5e171
7 changed files with 149 additions and 13 deletions
|
|
@ -29,6 +29,7 @@ import '../services/recovery_sheet_service.dart';
|
|||
import '../services/share_catalog_service.dart';
|
||||
import '../services/message_store.dart';
|
||||
import '../services/offer_outbox.dart';
|
||||
import '../services/profile_cache.dart';
|
||||
import '../services/profile_store.dart';
|
||||
import '../services/social_service.dart';
|
||||
import '../services/social_settings.dart';
|
||||
|
|
@ -94,6 +95,7 @@ Future<void> configureDependencies() async {
|
|||
..registerSingleton<OfferOutbox>(OfferOutbox(secretStore))
|
||||
..registerSingleton<MessageStore>(MessageStore(secretStore))
|
||||
..registerSingleton<ProfileStore>(ProfileStore(secretStore))
|
||||
..registerSingleton<ProfileCache>(ProfileCache(secretStore))
|
||||
..registerSingleton<ExportImportService>(
|
||||
ExportImportService(
|
||||
repository: varietyRepository,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue