diff --git a/lib/globals.dart b/lib/globals.dart index 6bf48de99876225b9245dd95a41ccb55b0171a95..74b5b32a291cbbe98e1728e6ea3236cc9b74e95b 100644 --- a/lib/globals.dart +++ b/lib/globals.dart @@ -8,7 +8,7 @@ import 'package:logger/logger.dart'; import 'package:shared_preferences/shared_preferences.dart'; // Version of box data -const int dataVersion = 3; +const int dataVersion = 4; // Files paths Directory? appPath; diff --git a/lib/models/chest_data.dart b/lib/models/chest_data.dart index 7e04b13d8b863cac48fe41c0264d82310d60a9fd..34632b7c03c09e5d088b0251c0da333b57474869 100644 --- a/lib/models/chest_data.dart +++ b/lib/models/chest_data.dart @@ -19,14 +19,14 @@ class ChestData extends HiveObject { File? imageFile; @HiveField(4) - bool? isCesium; + int? memberWallet; ChestData({ this.name, this.defaultWallet, this.imageName, this.imageFile, - this.isCesium, + this.memberWallet, }); @override diff --git a/lib/models/chest_data.g.dart b/lib/models/chest_data.g.dart index b547a6b58fbc95302ee52e74e924008160e5a145..cf1aa52cd62489f22ba3b0dd4baaecb12cb5bfec 100644 --- a/lib/models/chest_data.g.dart +++ b/lib/models/chest_data.g.dart @@ -21,7 +21,7 @@ class ChestDataAdapter extends TypeAdapter<ChestData> { defaultWallet: fields[1] as int?, imageName: fields[2] as String?, imageFile: fields[3] as File?, - isCesium: fields[4] as bool?, + memberWallet: fields[4] as int?, ); } @@ -38,7 +38,7 @@ class ChestDataAdapter extends TypeAdapter<ChestData> { ..writeByte(3) ..write(obj.imageFile) ..writeByte(4) - ..write(obj.isCesium); + ..write(obj.memberWallet); } @override diff --git a/lib/providers/generate_wallets.dart b/lib/providers/generate_wallets.dart index 350d5b3fba496a73aa6200ba9c39daf0de99ae7f..d4560d03fae35840cc35ba12d671c157233f87d3 100644 --- a/lib/providers/generate_wallets.dart +++ b/lib/providers/generate_wallets.dart @@ -71,7 +71,6 @@ class GenerateWalletsProvider with ChangeNotifier { name: chestName, defaultWallet: 0, imageName: '${chestNumber % 8}.png', - isCesium: false, ); await chestBox.add(thisChest); int? chestKey = chestBox.keys.last; diff --git a/lib/providers/my_wallets.dart b/lib/providers/my_wallets.dart index 15101a4805026f7a794043e15bd03581aadf6b0b..a03832dc4a043f5b8d2921c7d9c5dde7c9dd535e 100644 --- a/lib/providers/my_wallets.dart +++ b/lib/providers/my_wallets.dart @@ -13,7 +13,7 @@ class MyWalletsProvider with ChangeNotifier { int? pinLenght; bool isNewDerivationLoading = false; - int? getCurrentChest() { + int getCurrentChest() { if (configBox.get('currentChest') == null) { configBox.put('currentChest', 0); } diff --git a/lib/providers/substrate_sdk.dart b/lib/providers/substrate_sdk.dart index feeac4da4160019424425f83126196c8fdc48a7e..bc6a6627b2a36298e7ef87199910c2f957d626bd 100644 --- a/lib/providers/substrate_sdk.dart +++ b/lib/providers/substrate_sdk.dart @@ -564,7 +564,27 @@ class SubstrateSdk with ChangeNotifier { return await idtyStatus(address) == 'Validated'; } + Future<String> getMemberAddress() async { + // TODO: Continue digging memberAddress detection + String memberAddress = ''; + walletBox.toMap().forEach((key, value) async { + final bool _isMember = await isMember(value.address!); + log.d(_isMember); + if (_isMember) { + final currentChestNumber = configBox.get('currentChest'); + ChestData _newChestData = chestBox.get(currentChestNumber)!; + _newChestData.memberWallet = value.number; + await chestBox.put(currentChestNumber, _newChestData); + memberAddress = value.address!; + return; + } + }); + log.d(memberAddress); + return memberAddress; + } + Future<Map<String, int>> certState(String from, String to) async { + // String from = await getMemberAddress(); if (from != to && await isMember(from)) { Map<String, int> _result = {}; final _certData = await getCertData(from, to); diff --git a/lib/screens/myWallets/wallet_options.dart b/lib/screens/myWallets/wallet_options.dart index fa1a4bf5657560f29a79cf42b19894d3036f5f8c..fd974a6acfa29ed45e80fe937699afc4f1121274 100644 --- a/lib/screens/myWallets/wallet_options.dart +++ b/lib/screens/myWallets/wallet_options.dart @@ -33,7 +33,7 @@ class WalletOptions extends StatelessWidget { log.d(_walletOptions.address.text); - final int _currentChest = _myWalletProvider.getCurrentChest()!; + final int _currentChest = _myWalletProvider.getCurrentChest(); // final currentWallet = _myWalletProvider.getDefaultWallet(); // log.d(_walletOptions.getAddress(_currentChest, 3)); diff --git a/pubspec.yaml b/pubspec.yaml index f790dadf79d8400362b6daf141f77e79f11fe0b3..43fad76c767bc97f170d490c2cc37a3b1d1a0ff1 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -5,7 +5,7 @@ description: Pay with G1. # pub.dev using `pub publish`. This is preferred for private packages. publish_to: 'none' # Remove this line if you wish to publish to pub.dev -version: 0.0.7+12 +version: 0.0.8+0 environment: sdk: '>=2.12.0 <3.0.0'