diff --git a/lib/globals.dart b/lib/globals.dart index 7ba792664b1a5d3598c4de3dcd1e87e1236b791c..0f5428187fc7d03a853e7168ecd7c30b6018415b 100644 --- a/lib/globals.dart +++ b/lib/globals.dart @@ -10,10 +10,11 @@ import 'package:shared_preferences/shared_preferences.dart'; // Files paths Directory? appPath; -String? appVersion; -SharedPreferences? prefs; -String? endPointGVA; -int? ramSys; +late String appVersion; +late SharedPreferences prefs; +late String endPointGVA; +const int pinLength = 5; + late Box<WalletData> walletBox; late Box<ChestData> chestBox; late Box configBox; diff --git a/lib/main.dart b/lib/main.dart index 5ce5d9770182cc66079cf6fb1242a9e30cf5c749..c8917218600ed43bfe5498de3345e3493f08066f 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -19,18 +19,18 @@ import 'dart:async'; import 'dart:io'; import 'package:flutter/services.dart'; import 'package:gecko/globals.dart'; -import 'package:gecko/models/cesium_plus.dart'; -import 'package:gecko/models/change_pin.dart'; +import 'package:gecko/providers/cesium_plus.dart'; +import 'package:gecko/providers/change_pin.dart'; import 'package:gecko/models/chest_data.dart'; -import 'package:gecko/models/chest_provider.dart'; +import 'package:gecko/providers/chest_provider.dart'; import 'package:gecko/models/g1_wallets_list.dart'; -import 'package:gecko/models/generate_wallets.dart'; -import 'package:gecko/models/wallets_profiles.dart'; -import 'package:gecko/models/home.dart'; -import 'package:gecko/models/my_wallets.dart'; -import 'package:gecko/models/search.dart'; +import 'package:gecko/providers/generate_wallets.dart'; +import 'package:gecko/providers/wallets_profiles.dart'; +import 'package:gecko/providers/home.dart'; +import 'package:gecko/providers/my_wallets.dart'; +import 'package:gecko/providers/search.dart'; import 'package:gecko/models/wallet_data.dart'; -import 'package:gecko/models/wallet_options.dart'; +import 'package:gecko/providers/wallet_options.dart'; import 'package:gecko/screens/home.dart'; import 'package:flutter/material.dart'; import 'package:gecko/screens/myWallets/wallets_home.dart'; diff --git a/lib/models/cesium_plus.dart b/lib/providers/cesium_plus.dart similarity index 100% rename from lib/models/cesium_plus.dart rename to lib/providers/cesium_plus.dart diff --git a/lib/models/change_pin.dart b/lib/providers/change_pin.dart similarity index 61% rename from lib/models/change_pin.dart rename to lib/providers/change_pin.dart index 965c269393fb96251d25eca7a792f2ddfdba5a4c..422cf2b9868a87bbe36591a1d7b0836813539610 100644 --- a/lib/models/change_pin.dart +++ b/lib/providers/change_pin.dart @@ -9,16 +9,22 @@ class ChangePinProvider with ChangeNotifier { NewWallet? get badWallet => null; - NewWallet? changePin(String _oldPin, {String? newCustomPin}) { + Future<NewWallet?> changePin(String _oldPin, {String? newCustomPin}) async { + final NewWallet newWalletFile; try { - final _dewif = chestBox.get(configBox.get('currentChest'))!.dewif!; - - // TODO: Durt: Detect if CesiumWallet - NewWallet newWalletFile = Dewif().changePassword( - dewif: _dewif, - oldPassword: _oldPin.toUpperCase(), - newPassword: newCustomPin); - + final _chest = chestBox.get(configBox.get('currentChest'))!; + + if (_chest.isCesium!) { + newWalletFile = await Dewif().changeCesiumPassword( + dewif: _chest.dewif!, + oldPassword: _oldPin.toUpperCase(), + newPassword: newCustomPin); + } else { + newWalletFile = await Dewif().changePassword( + dewif: _chest.dewif!, + oldPassword: _oldPin.toUpperCase(), + newPassword: newCustomPin); + } newPin.text = pinToGive = newWalletFile.password; ischangedPin = true; // notifyListeners(); diff --git a/lib/models/chest_provider.dart b/lib/providers/chest_provider.dart similarity index 100% rename from lib/models/chest_provider.dart rename to lib/providers/chest_provider.dart diff --git a/lib/models/generate_wallets.dart b/lib/providers/generate_wallets.dart similarity index 98% rename from lib/models/generate_wallets.dart rename to lib/providers/generate_wallets.dart index 6cefd849044e06520b3f682c7a9bfba5f8c09356..a364cb1239df94b1451ce39f83de358f1c854fee 100644 --- a/lib/models/generate_wallets.dart +++ b/lib/providers/generate_wallets.dart @@ -155,8 +155,8 @@ class GenerateWalletsProvider with ChangeNotifier { Future<NewWallet?> generateWallet(String generatedMnemonic, {required bool isImport}) async { try { - actualWallet = Dewif().generateDewif( - generatedMnemonic, randomSecretCode(5), + actualWallet = await Dewif().generateDewif( + generatedMnemonic, randomSecretCode(pinLength), lang: 'french'); } catch (e) { log.e(e); @@ -172,7 +172,7 @@ class GenerateWalletsProvider with ChangeNotifier { } String changePinCode({required bool reload}) { - pin.text = randomSecretCode(5); + pin.text = randomSecretCode(pinLength); if (reload) { notifyListeners(); } @@ -258,7 +258,7 @@ class GenerateWalletsProvider with ChangeNotifier { log.d(pin.text); NewWallet cesiumDewif = - Dewif().generateCesiumDewif(cesiumWallet.seed, pin.text); + await Dewif().generateCesiumDewif(cesiumWallet.seed, pin.text); ChestData cesiumChest = ChestData( dewif: cesiumDewif.dewif, diff --git a/lib/models/home.dart b/lib/providers/home.dart similarity index 93% rename from lib/models/home.dart rename to lib/providers/home.dart index 3160c3c3b9ab7c586991a2754514f49bf2ed19fb..07f0a6bd05f7a4ee93dddf2d98a7057aa485f8eb 100644 --- a/lib/models/home.dart +++ b/lib/providers/home.dart @@ -8,9 +8,9 @@ import 'package:flutter/services.dart'; import 'dart:async'; import 'package:gecko/globals.dart'; import 'package:hive_flutter/hive_flutter.dart'; -import 'package:package_info/package_info.dart'; import 'package:flutter/foundation.dart' show kIsWeb; import 'package:path_provider/path_provider.dart' as pp; +import 'package:package_info_plus/package_info_plus.dart'; class HomeProvider with ChangeNotifier { bool? isSearching; @@ -49,14 +49,9 @@ class HomeProvider with ChangeNotifier { Future<String> getAppVersion() async { String version; String buildNumber; - if (kIsWeb || Platform.isLinux) { - version = "undefined"; - buildNumber = "undefined"; - } else { - PackageInfo packageInfo = await PackageInfo.fromPlatform(); - version = packageInfo.version; - buildNumber = packageInfo.buildNumber; - } + PackageInfo packageInfo = await PackageInfo.fromPlatform(); + version = packageInfo.version; + buildNumber = packageInfo.buildNumber; notifyListeners(); return version + '+' + buildNumber; @@ -151,7 +146,7 @@ class HomeProvider with ChangeNotifier { _message = "Aucun noeud Duniter disponible, veuillez réessayer ultérieurement"; } else { - _message = "Vous êtes connecté au noeud\n${endPointGVA!.split('/')[2]}"; + _message = "Vous êtes connecté au noeud\n${endPointGVA.split('/')[2]}"; } final snackBar = SnackBar( content: Text(_message), duration: const Duration(seconds: 2)); diff --git a/lib/models/my_wallets.dart b/lib/providers/my_wallets.dart similarity index 100% rename from lib/models/my_wallets.dart rename to lib/providers/my_wallets.dart diff --git a/lib/models/search.dart b/lib/providers/search.dart similarity index 97% rename from lib/models/search.dart rename to lib/providers/search.dart index d2fd4627b9099cc9a5807c3f89eb5c0a912b8706..bacad734b23b99f7584a044bf6d94110dc46e650 100644 --- a/lib/models/search.dart +++ b/lib/providers/search.dart @@ -2,7 +2,7 @@ import 'package:dio/dio.dart'; import 'package:flutter/material.dart'; import 'package:gecko/globals.dart'; import 'package:gecko/models/g1_wallets_list.dart'; -import 'package:gecko/models/wallets_profiles.dart'; +import 'package:gecko/providers/wallets_profiles.dart'; class SearchProvider with ChangeNotifier { TextEditingController searchController = TextEditingController(); diff --git a/lib/models/wallet_options.dart b/lib/providers/wallet_options.dart similarity index 95% rename from lib/models/wallet_options.dart rename to lib/providers/wallet_options.dart index 9690275625584ae179c3c29615cd09fd64f2e901..5427c31497f060883ecdd2d2062caadb01e974c1 100644 --- a/lib/models/wallet_options.dart +++ b/lib/providers/wallet_options.dart @@ -6,7 +6,7 @@ import 'package:flutter/material.dart'; import 'dart:async'; import 'package:gecko/globals.dart'; import 'package:gecko/models/chest_data.dart'; -import 'package:gecko/models/my_wallets.dart'; +import 'package:gecko/providers/my_wallets.dart'; import 'package:gecko/models/wallet_data.dart'; import 'package:image_picker/image_picker.dart'; import 'package:truncate/truncate.dart'; @@ -94,7 +94,7 @@ class WalletOptionsProvider with ChangeNotifier { } int getPinLenght(_walletNbr) { - // TODO: Get real Dewif lenght + // TODOo: Get real Dewif lenght // String _localDewif; // if (_walletNbr is int || _walletNbr == null) { // _localDewif = chestBox.get(configBox.get('currentChest')).dewif; @@ -105,10 +105,11 @@ class WalletOptionsProvider with ChangeNotifier { // final int _pinLenght = DubpRust.getDewifSecretCodeLen( // dewif: _localDewif, secretCodeType: SecretCodeType.letters); - return 5; + return pinLength; } - void _renameWallet(List<int?> _walletID, _newName, {required bool isCesium}) async { + void _renameWallet(List<int?> _walletID, _newName, + {required bool isCesium}) async { if (isCesium) { ChestData _chestTarget = chestBox.get(_walletID[0])!; _chestTarget.name = _newName; @@ -144,7 +145,8 @@ class WalletOptionsProvider with ChangeNotifier { } Future<int> deleteWallet(context, WalletData wallet) async { - final bool _answer = await (_confirmDeletingWallet(context, wallet.name) as FutureOr<bool>); + final bool _answer = + await (_confirmDeletingWallet(context, wallet.name) as FutureOr<bool>); if (_answer) { walletBox.delete(wallet.key); diff --git a/lib/models/wallets_profiles.dart b/lib/providers/wallets_profiles.dart similarity index 98% rename from lib/models/wallets_profiles.dart rename to lib/providers/wallets_profiles.dart index 562b094a13a33ba437b7fbfea251bf71f4012ffd..75fc2d60031fc783f468729aa5cdd511700cdb0a 100644 --- a/lib/models/wallets_profiles.dart +++ b/lib/providers/wallets_profiles.dart @@ -3,7 +3,7 @@ import 'dart:io'; import 'package:durt/durt.dart'; import 'package:flutter/material.dart'; import 'package:gecko/globals.dart'; -import 'package:gecko/models/my_wallets.dart'; +import 'package:gecko/providers/my_wallets.dart'; import 'package:gecko/models/wallet_data.dart'; import 'package:gecko/screens/wallet_view.dart'; import 'package:graphql_flutter/graphql_flutter.dart'; @@ -73,7 +73,7 @@ class WalletsProfilesProvider with ChangeNotifier { derivation = defaultWallet!.derivation; } - String result = await Gva(node: endPointGVA!).pay( + String result = await Gva(node: endPointGVA).pay( recipient: pubkey!, amount: double.parse(payAmount.text), dewif: dewif, diff --git a/lib/screens/history.dart b/lib/screens/history.dart index 8ed13fda7599997f50006a629f5f10d8ce52b8af..315e733dbf28456c15a0288394c537e069ccb2e2 100644 --- a/lib/screens/history.dart +++ b/lib/screens/history.dart @@ -1,8 +1,8 @@ import 'package:flutter/services.dart'; import 'package:gecko/globals.dart'; -import 'package:gecko/models/cesium_plus.dart'; +import 'package:gecko/providers/cesium_plus.dart'; import 'package:gecko/models/queries.dart'; -import 'package:gecko/models/wallets_profiles.dart'; +import 'package:gecko/providers/wallets_profiles.dart'; import 'package:flutter/material.dart'; import 'package:gecko/screens/avatar_fullscreen.dart'; import 'package:gecko/screens/wallet_view.dart'; diff --git a/lib/screens/home.dart b/lib/screens/home.dart index 0523d23c6887a0a3a02db482f1a0a5072463379b..7f25c5ae640614d622ced9e9887617880243e260 100644 --- a/lib/screens/home.dart +++ b/lib/screens/home.dart @@ -1,10 +1,10 @@ import 'package:bubble/bubble.dart'; import 'package:gecko/globals.dart'; -import 'package:gecko/models/chest_provider.dart'; -import 'package:gecko/models/wallets_profiles.dart'; +import 'package:gecko/providers/chest_provider.dart'; +import 'package:gecko/providers/wallets_profiles.dart'; import 'package:flutter/material.dart'; -import 'package:gecko/models/home.dart'; -import 'package:gecko/models/my_wallets.dart'; +import 'package:gecko/providers/home.dart'; +import 'package:gecko/providers/my_wallets.dart'; import 'package:gecko/models/wallet_data.dart'; import 'package:gecko/screens/myWallets/restore_chest.dart'; import 'package:gecko/screens/myWallets/unlocking_wallet.dart'; diff --git a/lib/screens/myWallets/cesium_wallet_options.dart b/lib/screens/myWallets/cesium_wallet_options.dart index d71bd46605632e3e5023ed41bf2591e06927275c..a08143adac3446d994402c8a57df89ae20e384bc 100644 --- a/lib/screens/myWallets/cesium_wallet_options.dart +++ b/lib/screens/myWallets/cesium_wallet_options.dart @@ -4,11 +4,11 @@ import 'dart:ui'; import 'package:flutter/material.dart'; import 'package:gecko/globals.dart'; import 'package:gecko/models/chest_data.dart'; -import 'package:gecko/models/chest_provider.dart'; -import 'package:gecko/models/wallets_profiles.dart'; -import 'package:gecko/models/my_wallets.dart'; +import 'package:gecko/providers/chest_provider.dart'; +import 'package:gecko/providers/wallets_profiles.dart'; +import 'package:gecko/providers/my_wallets.dart'; import 'package:gecko/models/queries.dart'; -import 'package:gecko/models/wallet_options.dart'; +import 'package:gecko/providers/wallet_options.dart'; import 'package:gecko/screens/history.dart'; import 'package:gecko/screens/myWallets/change_pin.dart'; import 'package:graphql_flutter/graphql_flutter.dart'; diff --git a/lib/screens/myWallets/change_pin.dart b/lib/screens/myWallets/change_pin.dart index 17b1a823b21f7df33eea19458a2dc7bcf2092049..1366e67bfa5d66290fd6ab028bb13ec6a6638114 100644 --- a/lib/screens/myWallets/change_pin.dart +++ b/lib/screens/myWallets/change_pin.dart @@ -2,8 +2,8 @@ import 'package:flutter/material.dart'; import 'package:durt/durt.dart'; import 'package:flutter/services.dart'; import 'package:gecko/globals.dart'; -import 'package:gecko/models/change_pin.dart'; -import 'package:gecko/models/my_wallets.dart'; +import 'package:gecko/providers/change_pin.dart'; +import 'package:gecko/providers/my_wallets.dart'; import 'dart:io'; import 'package:provider/provider.dart'; @@ -49,7 +49,7 @@ class ChangePinScreen extends StatelessWidget with ChangeNotifier { child: Column(children: <Widget>[ StatefulWrapper( onInit: () { - _changePin.newPin.text = randomSecretCode(5); + _changePin.newPin.text = randomSecretCode(pinLength); }, child: Container(), ), @@ -80,7 +80,7 @@ class ChangePinScreen extends StatelessWidget with ChangeNotifier { icon: const Icon(Icons.replay), color: orangeC, onPressed: () async { - _changePin.newPin.text = randomSecretCode(5); + _changePin.newPin.text = randomSecretCode(pinLength); }, ), ], @@ -95,12 +95,12 @@ class ChangePinScreen extends StatelessWidget with ChangeNotifier { primary: Colors.green[400], //smoothYellow, // background onPrimary: Colors.black, // foreground ), - onPressed: () { - NewWallet _newWalletFile = _changePin.changePin( + onPressed: () async { + NewWallet? _newWalletFile = await _changePin.changePin( walletProvider.pinCode, - newCustomPin: _changePin.newPin.text)!; + newCustomPin: _changePin.newPin.text); _changePin.newPin.text = ''; - _changePin.storeNewPinChest(context, _newWalletFile); + _changePin.storeNewPinChest(context, _newWalletFile!); walletProvider.pinCode = _changePin.newPin.text; }, child: const Text( diff --git a/lib/screens/myWallets/chest_options.dart b/lib/screens/myWallets/chest_options.dart index 3941562c98982aa8c90b6bda12d830eb61bfeebc..5b6e524070f25f6d3ddbacd769fd97f4db30a008 100644 --- a/lib/screens/myWallets/chest_options.dart +++ b/lib/screens/myWallets/chest_options.dart @@ -2,8 +2,8 @@ import 'package:flutter/material.dart'; import 'package:gecko/globals.dart'; import 'package:gecko/models/chest_data.dart'; import 'package:flutter/services.dart'; -import 'package:gecko/models/chest_provider.dart'; -import 'package:gecko/models/my_wallets.dart'; +import 'package:gecko/providers/chest_provider.dart'; +import 'package:gecko/providers/my_wallets.dart'; import 'package:gecko/screens/myWallets/change_pin.dart'; import 'package:provider/provider.dart'; diff --git a/lib/screens/myWallets/choose_chest.dart b/lib/screens/myWallets/choose_chest.dart index 1d2622f8794fbfd4e9b234b62ac018774111f929..a07736913c8d8a9503fae1262234f4206b3aa456 100644 --- a/lib/screens/myWallets/choose_chest.dart +++ b/lib/screens/myWallets/choose_chest.dart @@ -1,6 +1,6 @@ import 'package:flutter/services.dart'; import 'package:gecko/globals.dart'; -import 'package:gecko/models/my_wallets.dart'; +import 'package:gecko/providers/my_wallets.dart'; import 'package:gecko/models/wallet_data.dart'; import 'package:flutter/material.dart'; import 'package:gecko/screens/myWallets/generate_wallets.dart'; diff --git a/lib/screens/myWallets/confirm_wallet_storage.dart b/lib/screens/myWallets/confirm_wallet_storage.dart index 5e86205a6233fcae725b902b4dbbb7bade0e5abd..b7cd52223fa6044da66d69dffd5cc051ded071cb 100644 --- a/lib/screens/myWallets/confirm_wallet_storage.dart +++ b/lib/screens/myWallets/confirm_wallet_storage.dart @@ -3,8 +3,8 @@ import 'package:durt/durt.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:gecko/globals.dart'; -import 'package:gecko/models/generate_wallets.dart'; -import 'package:gecko/models/my_wallets.dart'; +import 'package:gecko/providers/generate_wallets.dart'; +import 'package:gecko/providers/my_wallets.dart'; import 'package:gecko/screens/myWallets/unlocking_wallet.dart'; import 'package:provider/provider.dart'; diff --git a/lib/screens/myWallets/generate_wallets.dart b/lib/screens/myWallets/generate_wallets.dart index 74eafeb801cc2f124ce7838ed9dc8c522ed54980..17204d6cefd2a9565faf266bfe226384ddd95fd0 100644 --- a/lib/screens/myWallets/generate_wallets.dart +++ b/lib/screens/myWallets/generate_wallets.dart @@ -1,7 +1,7 @@ import 'package:durt/durt.dart'; import 'package:flutter/services.dart'; import 'package:gecko/globals.dart'; -import 'package:gecko/models/generate_wallets.dart'; +import 'package:gecko/providers/generate_wallets.dart'; import 'package:gecko/screens/myWallets/confirm_wallet_storage.dart'; import 'package:flutter/material.dart'; import 'package:printing/printing.dart'; @@ -31,7 +31,7 @@ class GenerateFastChestScreen extends StatelessWidget { _generateWalletProvider.generateWordList(); _generateWalletProvider.mnemonicController.text = _generateWalletProvider.generatedMnemonic!; - _generateWalletProvider.pin.text = randomSecretCode(5); + _generateWalletProvider.pin.text = randomSecretCode(pinLength); } return Scaffold( @@ -115,8 +115,8 @@ class GenerateFastChestScreen extends StatelessWidget { ? () async { _generateWalletProvider.nbrWord = _generateWalletProvider.getRandomInt(); - _generateWalletProvider.actualWallet = Dewif() - .generateDewif( + _generateWalletProvider.actualWallet = + await Dewif().generateDewif( _generateWalletProvider .generatedMnemonic!, _generateWalletProvider.pin.text, diff --git a/lib/screens/myWallets/import_cesium_wallet.dart b/lib/screens/myWallets/import_cesium_wallet.dart index 84a1052d501564d88237fdf3c94f87c86dc3824a..ff707f1d7bc252e587f59a77b50fe69404b10c4e 100644 --- a/lib/screens/myWallets/import_cesium_wallet.dart +++ b/lib/screens/myWallets/import_cesium_wallet.dart @@ -2,11 +2,11 @@ import 'dart:async'; import 'package:durt/durt.dart'; import 'package:flutter/services.dart'; import 'package:gecko/globals.dart'; -import 'package:gecko/models/generate_wallets.dart'; +import 'package:gecko/providers/generate_wallets.dart'; import 'package:flutter/material.dart'; -import 'package:gecko/models/my_wallets.dart'; +import 'package:gecko/providers/my_wallets.dart'; import 'package:gecko/models/wallet_data.dart'; -import 'package:gecko/models/wallet_options.dart'; +import 'package:gecko/providers/wallet_options.dart'; import 'package:gecko/screens/myWallets/unlocking_wallet.dart'; import 'package:provider/provider.dart'; @@ -25,7 +25,7 @@ class ImportWalletScreen extends StatelessWidget { MyWalletsProvider _myWalletProvider = Provider.of<MyWalletsProvider>(context, listen: false); - _generateWalletProvider.pin.text = randomSecretCode(5); + _generateWalletProvider.pin.text = randomSecretCode(pinLength); return WillPopScope( onWillPop: () { _generateWalletProvider.resetCesiumImportView(); diff --git a/lib/screens/myWallets/restore_chest.dart b/lib/screens/myWallets/restore_chest.dart index 2e1f47762d47013d44aef31e6d88d005827a6a26..79c798e8d8cc6c9a4639f81f917fe6334e95b8bb 100644 --- a/lib/screens/myWallets/restore_chest.dart +++ b/lib/screens/myWallets/restore_chest.dart @@ -2,7 +2,7 @@ import 'package:bubble/bubble.dart'; import 'package:flutter/services.dart'; import 'package:gecko/globals.dart'; import 'package:flutter/material.dart'; -import 'package:gecko/models/generate_wallets.dart'; +import 'package:gecko/providers/generate_wallets.dart'; import 'package:gecko/screens/common_elements.dart'; import 'package:gecko/screens/onBoarding/11.dart'; import 'package:provider/provider.dart'; diff --git a/lib/screens/myWallets/unlocking_wallet.dart b/lib/screens/myWallets/unlocking_wallet.dart index 3e3f71a6d54d0c83eafd550f711bdc73f748e0cb..ba9b35549f83e1a3d1ec6d61dedfec45b49b72c8 100644 --- a/lib/screens/myWallets/unlocking_wallet.dart +++ b/lib/screens/myWallets/unlocking_wallet.dart @@ -1,10 +1,10 @@ import 'dart:async'; import 'package:flutter/services.dart'; import 'package:gecko/models/chest_data.dart'; -import 'package:gecko/models/wallets_profiles.dart'; -import 'package:gecko/models/my_wallets.dart'; +import 'package:gecko/providers/wallets_profiles.dart'; +import 'package:gecko/providers/my_wallets.dart'; import 'package:gecko/models/wallet_data.dart'; -import 'package:gecko/models/wallet_options.dart'; +import 'package:gecko/providers/wallet_options.dart'; import 'package:flutter/material.dart'; import 'package:gecko/screens/myWallets/cesium_wallet_options.dart'; import 'package:gecko/screens/myWallets/choose_chest.dart'; @@ -52,21 +52,22 @@ class UnlockingWallet extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.start, children: <Widget>[ Stack(children: <Widget>[ - Positioned( - top: statusBarHeight + 10, - left: 15, - child: Builder( - builder: (context) => IconButton( - key: const Key('popButton'), - icon: const Icon( - Icons.arrow_back, - color: Colors.black, - size: 25, + Positioned( + top: statusBarHeight + 10, + left: 15, + child: Builder( + builder: (context) => IconButton( + key: const Key('popButton'), + icon: const Icon( + Icons.arrow_back, + color: Colors.black, + size: 25, + ), + onPressed: () => Navigator.pop(context), ), - onPressed: () => Navigator.pop(context), ), ), - ),Column(children: <Widget>[ + Column(children: <Widget>[ SizedBox(height: isTall ? 100 : 20), Row( mainAxisAlignment: MainAxisAlignment.center, @@ -129,7 +130,8 @@ class UnlockingWallet extends StatelessWidget { ), )), ]), - ]),]), + ]), + ]), )); } diff --git a/lib/screens/myWallets/wallet_options.dart b/lib/screens/myWallets/wallet_options.dart index 9585b44c58fa76f2e5c64b5d5d241ea914e29650..519e212b61a255e16ab1c8d7e8142ce35c62dbb2 100644 --- a/lib/screens/myWallets/wallet_options.dart +++ b/lib/screens/myWallets/wallet_options.dart @@ -3,11 +3,11 @@ import 'dart:io'; import 'dart:ui'; import 'package:flutter/material.dart'; import 'package:gecko/globals.dart'; -import 'package:gecko/models/my_wallets.dart'; +import 'package:gecko/providers/my_wallets.dart'; import 'package:gecko/models/queries.dart'; import 'package:gecko/models/wallet_data.dart'; -import 'package:gecko/models/wallet_options.dart'; -import 'package:gecko/models/wallets_profiles.dart'; +import 'package:gecko/providers/wallet_options.dart'; +import 'package:gecko/providers/wallets_profiles.dart'; import 'package:gecko/screens/history.dart'; import 'package:graphql_flutter/graphql_flutter.dart'; import 'package:provider/provider.dart'; diff --git a/lib/screens/myWallets/wallets_home.dart b/lib/screens/myWallets/wallets_home.dart index f3057c9ca9d0586f9f37b3763bdb25a6265b17d9..95c2ec661e7402cad478879b847c9c76cb6a3687 100644 --- a/lib/screens/myWallets/wallets_home.dart +++ b/lib/screens/myWallets/wallets_home.dart @@ -1,7 +1,7 @@ import 'package:flutter/services.dart'; import 'package:gecko/globals.dart'; import 'package:gecko/models/chest_data.dart'; -import 'package:gecko/models/my_wallets.dart'; +import 'package:gecko/providers/my_wallets.dart'; import 'package:gecko/models/queries.dart'; import 'package:gecko/models/wallet_data.dart'; import 'package:flutter/material.dart'; diff --git a/lib/screens/onBoarding/11.dart b/lib/screens/onBoarding/11.dart index 9c670eba7f443c3932803cc0ca8f4e9cd3c7567c..0c8822240932e34768da30ffccc4a72ef3b3c72d 100644 --- a/lib/screens/onBoarding/11.dart +++ b/lib/screens/onBoarding/11.dart @@ -2,7 +2,7 @@ import 'package:flutter/services.dart'; import 'package:flutter/material.dart'; import 'package:gecko/globals.dart'; -import 'package:gecko/models/generate_wallets.dart'; +import 'package:gecko/providers/generate_wallets.dart'; import 'package:gecko/screens/common_elements.dart'; import 'package:gecko/screens/onBoarding/12.dart'; import 'package:provider/provider.dart'; diff --git a/lib/screens/onBoarding/12.dart b/lib/screens/onBoarding/12.dart index 05345e2a53068f96103774eaa83878b9d3efc63d..97b66f5a62cd12f4d7774dccb7840b7916560a2f 100644 --- a/lib/screens/onBoarding/12.dart +++ b/lib/screens/onBoarding/12.dart @@ -5,9 +5,9 @@ import 'package:durt/durt.dart'; import 'package:flutter/services.dart'; import 'package:flutter/material.dart'; import 'package:gecko/globals.dart'; -import 'package:gecko/models/generate_wallets.dart'; -import 'package:gecko/models/my_wallets.dart'; -import 'package:gecko/models/wallet_options.dart'; +import 'package:gecko/providers/generate_wallets.dart'; +import 'package:gecko/providers/my_wallets.dart'; +import 'package:gecko/providers/wallet_options.dart'; import 'package:gecko/screens/common_elements.dart'; import 'package:gecko/screens/onBoarding/13_congratulations.dart'; import 'package:pin_code_fields/pin_code_fields.dart'; @@ -111,17 +111,17 @@ class OnboardingStepFourteen extends StatelessWidget { blurRadius: 10, ) ], - onCompleted: (_pin) { + onCompleted: (_pin) async { _myWalletProvider.pinCode = _pin; _myWalletProvider.pinLenght = _pinLenght; log.d(_pin + ' || ' + _generateWalletProvider.pin.text); if (_pin.toUpperCase() == _generateWalletProvider.pin.text) { pinColor = Colors.green[500]; - NewWallet generatedWallet = Dewif().generateDewif( + NewWallet generatedWallet = await Dewif().generateDewif( _generateWalletProvider.generatedMnemonic!, _generateWalletProvider.pin.text, lang: 'french'); - _generateWalletProvider.storeHDWChest( + await _generateWalletProvider.storeHDWChest( generatedWallet, 'Mon portefeuille courant', context); _myWalletProvider.readAllWallets(_currentChest); scheduleMicrotask(() { diff --git a/lib/screens/onBoarding/7.dart b/lib/screens/onBoarding/7.dart index cda32c8572dcb5042e81226875edca63716f898e..c2d96c3e20d18fafa9e30ce0d3aeaa7e1b5ed43c 100644 --- a/lib/screens/onBoarding/7.dart +++ b/lib/screens/onBoarding/7.dart @@ -3,7 +3,7 @@ import 'package:flutter/services.dart'; import 'package:flutter/material.dart'; import 'package:gecko/globals.dart'; -import 'package:gecko/models/generate_wallets.dart'; +import 'package:gecko/providers/generate_wallets.dart'; import 'package:gecko/screens/common_elements.dart'; import 'package:gecko/screens/onBoarding/8.dart'; import 'package:printing/printing.dart'; diff --git a/lib/screens/onBoarding/8.dart b/lib/screens/onBoarding/8.dart index cca131098e87135ab6a774ce5d3c598b333c01cf..c9ec4ca9eacabace88a93ce0d290ded0274dac3b 100644 --- a/lib/screens/onBoarding/8.dart +++ b/lib/screens/onBoarding/8.dart @@ -2,7 +2,7 @@ import 'package:flutter/services.dart'; import 'package:flutter/material.dart'; import 'package:gecko/globals.dart'; -import 'package:gecko/models/generate_wallets.dart'; +import 'package:gecko/providers/generate_wallets.dart'; import 'package:gecko/screens/common_elements.dart'; import 'package:gecko/screens/onBoarding/9.dart'; import 'package:provider/provider.dart'; diff --git a/lib/screens/search.dart b/lib/screens/search.dart index 5357a24402753c8cb8e2747f628a1ef84d520394..25a2513f3b0b801200f3947b09c942507c36d7a1 100644 --- a/lib/screens/search.dart +++ b/lib/screens/search.dart @@ -1,7 +1,7 @@ import 'package:flutter/services.dart'; import 'package:gecko/globals.dart'; import 'package:flutter/material.dart'; -import 'package:gecko/models/search.dart'; +import 'package:gecko/providers/search.dart'; import 'package:gecko/screens/search_result.dart'; import 'package:provider/provider.dart'; // import 'package:gecko/models/home.dart'; diff --git a/lib/screens/search_result.dart b/lib/screens/search_result.dart index fabf899ef87d2d0ea8d3d9f0a937e07564d961f2..347aacea56e4487d2f6b66f21a4a513c09147b57 100644 --- a/lib/screens/search_result.dart +++ b/lib/screens/search_result.dart @@ -1,10 +1,10 @@ import 'package:flutter/services.dart'; import 'package:gecko/globals.dart'; import 'package:flutter/material.dart'; -import 'package:gecko/models/cesium_plus.dart'; +import 'package:gecko/providers/cesium_plus.dart'; import 'package:gecko/models/g1_wallets_list.dart'; -import 'package:gecko/models/wallets_profiles.dart'; -import 'package:gecko/models/search.dart'; +import 'package:gecko/providers/wallets_profiles.dart'; +import 'package:gecko/providers/search.dart'; import 'package:gecko/screens/wallet_view.dart'; import 'package:provider/provider.dart'; diff --git a/lib/screens/settings.dart b/lib/screens/settings.dart index 8e69cdb3a49425efd221f71eb8117d8161299b20..8ce70c29904b29ca8df881964d76fb2367072999 100644 --- a/lib/screens/settings.dart +++ b/lib/screens/settings.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:durt/durt.dart'; import 'package:flutter/services.dart'; -import 'package:gecko/models/my_wallets.dart'; +import 'package:gecko/providers/my_wallets.dart'; import 'package:gecko/screens/myWallets/generate_wallets.dart'; import 'dart:io'; import 'package:gecko/screens/myWallets/import_cesium_wallet.dart'; diff --git a/lib/screens/wallet_view.dart b/lib/screens/wallet_view.dart index f272948440703bde5df846685ceb60eafe1773ca..f9db775df62c353f4801b68052f9d2a80d305595 100644 --- a/lib/screens/wallet_view.dart +++ b/lib/screens/wallet_view.dart @@ -1,10 +1,10 @@ import 'package:flutter/services.dart'; import 'package:gecko/globals.dart'; import 'package:flutter/material.dart'; -import 'package:gecko/models/cesium_plus.dart'; -import 'package:gecko/models/my_wallets.dart'; +import 'package:gecko/providers/cesium_plus.dart'; +import 'package:gecko/providers/my_wallets.dart'; import 'package:gecko/models/wallet_data.dart'; -import 'package:gecko/models/wallets_profiles.dart'; +import 'package:gecko/providers/wallets_profiles.dart'; import 'package:gecko/models/queries.dart'; import 'package:gecko/screens/avatar_fullscreen.dart'; import 'package:gecko/screens/common_elements.dart'; diff --git a/pubspec.lock b/pubspec.lock index 8d8688f2d5ed40f424640eac19309401a8b5d331..b5a2db7ca007871ac8147f90d49cf8eab8baf7a6 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -301,7 +301,7 @@ packages: name: durt url: "https://pub.dartlang.org" source: hosted - version: "0.1.4" + version: "0.1.5" fake_async: dependency: transitive description: @@ -696,15 +696,8 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.0.2" - package_info: - dependency: "direct main" - description: - name: package_info - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.2" package_info_plus: - dependency: transitive + dependency: "direct main" description: name: package_info_plus url: "https://pub.dartlang.org" diff --git a/pubspec.yaml b/pubspec.yaml index a240afe0ce653f884f72225a820bfda6ffbcd839..c6b55fbbc747eb47c516e7deee8619184ddb8971 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.4+4 +version: 0.0.4+5 environment: sdk: '>=2.12.0 <3.0.0' @@ -39,7 +39,6 @@ dependencies: intl: ^0.17.0 jdenticon_dart: ^2.0.0 logger: ^1.1.0 - package_info: ^2.0.2 path_provider: ^2.0.3 pdf: ^3.5.0 permission_handler: ^8.3.0 @@ -63,7 +62,8 @@ dependencies: pull_to_refresh: ^2.0.0 dio: ^4.0.4 desktop_window: ^0.4.0 - durt: ^0.1.4 + durt: ^0.1.5 + package_info_plus: ^1.3.0 flutter_icons: android: "ic_launcher"