diff --git a/.gitignore b/.gitignore index 4a76331..1b830d6 100644 --- a/.gitignore +++ b/.gitignore @@ -60,4 +60,5 @@ integration_test/duniter/data/chains/ # Ignore PC deps macos/ -windows/ \ No newline at end of file +windows/ +scripts/pushGecko \ No newline at end of file diff --git a/assets/translations/en.json b/assets/translations/en.json index 0b98c48..eb95125 100644 --- a/assets/translations/en.json +++ b/assets/translations/en.json @@ -201,5 +201,6 @@ "smithCantMigrateIdentity":"You can't migrate this identity while you're member of smith web", "received": "Received", "sent": "Sent", - "createIdentity": "Create a new \nidentity" + "createIdentity": "Create a new \nidentity", + "memberAccountOf": "Account of {}" } \ No newline at end of file diff --git a/assets/translations/es.json b/assets/translations/es.json index 262d239..cf0b689 100644 --- a/assets/translations/es.json +++ b/assets/translations/es.json @@ -202,5 +202,6 @@ "smithCantMigrateIdentity":"You can't migrate this identity while you're member of smith web", "received": "Received", "sent": "Sent", - "createIdentity": "Create a new \nidentity" + "createIdentity": "Create a new \nidentity", + "memberAccountOf": "Account of {}" } diff --git a/assets/translations/fr.json b/assets/translations/fr.json index 06ce1cb..68c74ea 100644 --- a/assets/translations/fr.json +++ b/assets/translations/fr.json @@ -202,5 +202,6 @@ "smithCantMigrateIdentity":"Vous ne pouvez pas migrer cette identité\ntant que vous êtes dans la toile forgerons", "received": "Reçus", "sent": "Envoyés", - "createIdentity": "Créer sa nouvelle\nidentité" + "createIdentity": "Créer sa nouvelle\nidentité", + "memberAccountOf": "Compte de {}" } diff --git a/lib/providers/duniter_indexer.dart b/lib/providers/duniter_indexer.dart index 644203b..e1727fa 100644 --- a/lib/providers/duniter_indexer.dart +++ b/lib/providers/duniter_indexer.dart @@ -249,6 +249,7 @@ class DuniterIndexer with ChangeNotifier { // Provider.of(context, listen: false); WalletsProfilesProvider walletsProfiles = Provider.of(context, listen: false); + final duniterIndexer = Provider.of(context, listen: false); if (indexerEndpoint == '') { return const Text('Aucun résultat'); } @@ -292,6 +293,11 @@ class DuniterIndexer with ChangeNotifier { return Text('noResult'.tr()); } + for (Map profile in identities) { + duniterIndexer.walletNameIndexer + .putIfAbsent(profile['pubkey'], () => profile['name']); + } + double avatarSize = 55; return Expanded( child: ListView(children: [ @@ -338,10 +344,7 @@ class DuniterIndexer with ChangeNotifier { walletsProfiles.address = profile['pubkey']; return WalletViewScreen( address: profile['pubkey'], - username: g1WalletsBox - .get(profile['pubkey']) - ?.id - ?.username, + username: name, avatar: g1WalletsBox.get(profile['pubkey'])?.avatar, ); diff --git a/lib/providers/wallets_profiles.dart b/lib/providers/wallets_profiles.dart index 9d27ea1..5782ab2 100644 --- a/lib/providers/wallets_profiles.dart +++ b/lib/providers/wallets_profiles.dart @@ -37,7 +37,10 @@ class WalletsProfilesProvider with ChangeNotifier { Navigator.push( context, MaterialPageRoute(builder: (context) { - return WalletViewScreen(address: barcode!.rawContent); + return WalletViewScreen( + address: barcode!.rawContent, + username: '', + ); }), ); } else { diff --git a/lib/screens/activity.dart b/lib/screens/activity.dart index 0fdedd0..ea775e7 100644 --- a/lib/screens/activity.dart +++ b/lib/screens/activity.dart @@ -367,7 +367,10 @@ class ActivityScreen extends StatelessWidget with ChangeNotifier { Navigator.push( context, MaterialPageRoute(builder: (context) { - return WalletViewScreen(address: repository[1]); + return WalletViewScreen( + address: repository[1], + username: username ?? '', + ); }), ); // Navigator.pop(context); diff --git a/lib/screens/my_contacts.dart b/lib/screens/my_contacts.dart index 2ffa39f..9b94517 100644 --- a/lib/screens/my_contacts.dart +++ b/lib/screens/my_contacts.dart @@ -112,10 +112,9 @@ class ContactsScreen extends StatelessWidget { g1Wallet.address; return WalletViewScreen( address: g1Wallet.address, - username: g1WalletsBox - .get(g1Wallet.address) - ?.id - ?.username, + username: + duniterIndexer.walletNameIndexer[ + g1Wallet.address]!, avatar: g1WalletsBox .get(g1Wallet.address) ?.avatar, diff --git a/lib/screens/search_result.dart b/lib/screens/search_result.dart index 26ed6a1..a3f3334 100644 --- a/lib/screens/search_result.dart +++ b/lib/screens/search_result.dart @@ -78,7 +78,6 @@ class SearchResultScreen extends StatelessWidget { if (snapshot.data?.isEmpty ?? true) { return duniterIndexer.searchIdentity( context, searchProvider.searchController.text); - // const Text('Aucun résultat'); } else { return Expanded( @@ -138,10 +137,9 @@ class SearchResultScreen extends StatelessWidget { g1Wallet.address; return WalletViewScreen( address: g1Wallet.address, - username: g1WalletsBox - .get(g1Wallet.address) - ?.id - ?.username, + username: duniterIndexer + .walletNameIndexer[ + g1Wallet.address]!, avatar: g1WalletsBox .get(g1Wallet.address) ?.avatar, diff --git a/lib/screens/wallet_view.dart b/lib/screens/wallet_view.dart index 02bb43a..820811a 100644 --- a/lib/screens/wallet_view.dart +++ b/lib/screens/wallet_view.dart @@ -28,10 +28,10 @@ import 'package:qr_flutter/qr_flutter.dart'; class WalletViewScreen extends StatelessWidget { const WalletViewScreen( - {required this.address, this.username, this.avatar, Key? key}) + {required this.address, required this.username, this.avatar, Key? key}) : super(key: key); final String address; - final String? username; + final String username; final Image? avatar; final double buttonSize = 100; final double buttonFontSize = 18; @@ -46,10 +46,13 @@ class WalletViewScreen extends StatelessWidget { Provider.of(context, listen: false); final myWalletProvider = Provider.of(context, listen: false); + final duniterIndexer = Provider.of(context, listen: false); WalletData? defaultWallet = myWalletProvider.getDefaultWallet(); sub.setCurrentWallet(defaultWallet); + log.d('aaaaaaaaaaaaaaaaaaa: $username'); + return Scaffold( backgroundColor: backgroundColor, resizeToAvoidBottomInset: true, @@ -101,9 +104,15 @@ class WalletViewScreen extends StatelessWidget { ) ], title: SizedBox( - height: 22, - child: Text('seeAWallet'.tr()), - ), + height: 22, + child: Text( + duniterIndexer.walletNameIndexer[walletProfile.address] == '' + ? 'seeAWallet'.tr() + : 'memberAccountOf'.tr(args: [ + duniterIndexer + .walletNameIndexer[walletProfile.address] ?? + '?' + ]))), ), bottomNavigationBar: homeProvider.bottomAppBar(context), body: SafeArea( diff --git a/lib/widgets/cert_tile.dart b/lib/widgets/cert_tile.dart index 97a431b..4ccef80 100644 --- a/lib/widgets/cert_tile.dart +++ b/lib/widgets/cert_tile.dart @@ -73,7 +73,10 @@ class CertTile extends StatelessWidget { Navigator.push( homeContext, MaterialPageRoute(builder: (context) { - return WalletViewScreen(address: repository['address']); + return WalletViewScreen( + address: repository['address'], + username: repository['name'], + ); }), ); }),