diff --git a/lib/g1/api.dart b/lib/g1/api.dart index 7ec06ca7959daa6fd95e65da8ba1cbce12bc82b4..d69338ee81a72f300efbf2141968e64d39d19864 100644 --- a/lib/g1/api.dart +++ b/lib/g1/api.dart @@ -69,6 +69,7 @@ Future<List<Contact>> searchWot(String searchTerm) async { for (final dynamic result in results) { final Map<String, dynamic> resultMap = result as Map<String, dynamic>; final String pubKey = resultMap['pubkey'] as String; + // ignore: avoid_dynamic_calls final String nick = resultMap['uids'][0]['uid']! as String; contacts.add(Contact(nick: nick, pubkey: pubKey)); } @@ -91,6 +92,7 @@ Future<Contact> getWot(Contact contact) async { final List<dynamic> uids = (results[0] as Map<String, dynamic>)['uids'] as List<dynamic>; if (uids.isNotEmpty) { + // ignore: avoid_dynamic_calls return contact.copyWith(nick: uids[0]!['uid'] as String); } } @@ -123,7 +125,8 @@ Uint8List imageFromBase64String(String base64String) { base64Decode(base64String.substring(base64String.indexOf(',') + 1))); } -Future<Uint8List> _getAvata2r(String pubKey) async { +@Deprecated('use getProfile') +Future<Uint8List> getAvatar(String pubKey) async { final String dataImage = await _getDataImageFromKey(pubKey); return imageFromBase64String(dataImage); } @@ -171,13 +174,13 @@ Future<void> fetchCesiumPlusNodes({bool force = false}) async { int duniterNodesWorking() => NodeManager() .nodeList(NodeType.duniter) - .where((n) => n.errors < NodeManager.maxNodeErrors) + .where((Node n) => n.errors < NodeManager.maxNodeErrors) .toList() .length; int cesiumPlusNodesWorking() => NodeManager() .nodeList(NodeType.cesiumPlus) - .where((n) => n.errors < NodeManager.maxNodeErrors) + .where((Node n) => n.errors < NodeManager.maxNodeErrors) .toList() .length; diff --git a/lib/ui/widgets/fifth_screen/import_dialog.dart b/lib/ui/widgets/fifth_screen/import_dialog.dart index b7b754bf6c2340beee43293818b11d062b72047b..15704e34c1c4e425a9a5d94fb2fe9107cc7b0cb8 100644 --- a/lib/ui/widgets/fifth_screen/import_dialog.dart +++ b/lib/ui/widgets/fifth_screen/import_dialog.dart @@ -109,8 +109,8 @@ class ImportDialog extends StatelessWidget { await reader.onLoadEnd.first; try { - final String jsonString = reader.result as String; - if (!kReleaseMode) { + final String? jsonString = reader.result as String?; + if (jsonString != null && !kReleaseMode) { logger(jsonString); } completer.complete(jsonString); diff --git a/lib/ui/widgets/fifth_screen/pattern_util.dart b/lib/ui/widgets/fifth_screen/pattern_util.dart index ce69d74a033d9bebbb66f63b98834992e852c0f8..9fae1f52c9caf34f5efca8600ebd9a41171c4e2c 100644 --- a/lib/ui/widgets/fifth_screen/pattern_util.dart +++ b/lib/ui/widgets/fifth_screen/pattern_util.dart @@ -4,7 +4,7 @@ extension BuildContextX on BuildContext { void replaceSnackbar({ required Widget content, }) { - final scaffoldMessenger = ScaffoldMessenger.of(this); + final ScaffoldMessengerState scaffoldMessenger = ScaffoldMessenger.of(this); scaffoldMessenger.removeCurrentSnackBar(); scaffoldMessenger.showSnackBar( SnackBar(content: content), diff --git a/lib/ui/widgets/second_screen/card_terminal.dart b/lib/ui/widgets/second_screen/card_terminal.dart index 1ebb37c6d2191208f6f367175366354c76f1784d..60f4577039cf839d40a59ea64ccf3a214f75df40 100644 --- a/lib/ui/widgets/second_screen/card_terminal.dart +++ b/lib/ui/widgets/second_screen/card_terminal.dart @@ -36,61 +36,62 @@ class _CardTerminalState extends State<CardTerminal> { @override Widget build(BuildContext context) { - _decimalSep = NumberFormat - .decimalPattern(context.locale.toString()) + _decimalSep = NumberFormat.decimalPattern(context.locale.toString()) .symbols .DECIMAL_SEP; _numbers[9] = _decimalSep; return Expanded( child: Center( - child: Card( - elevation: 8.0, - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(16.0), - ), - child: Container( - width: 320.0, - height: 700, - padding: const EdgeInsets.all(10.0), - decoration: BoxDecoration( - borderRadius: BorderRadius.circular(16.0), - gradient: LinearGradient( - begin: Alignment.topLeft, - end: Alignment.bottomRight, - colors: <Color>[ - Colors.grey[800]!, - Colors.grey[500]!, - ], - ), - ), - child: ListView( - //crossAxisAlignment: CrossAxisAlignment.center, - children: <Widget>[ - CardTerminalScreen(amount: _currentValue), - const SizedBox(height: 8.0), - Padding( - padding: const EdgeInsets.symmetric(vertical: 16.0), - child: GridView.count( - physics: const NeverScrollableScrollPhysics(), - shrinkWrap: true, - crossAxisCount: 3, - crossAxisSpacing: 8, - mainAxisSpacing: 8, - childAspectRatio: 1.75 / 1, - padding: EdgeInsets.zero, - children: <Widget>[ - for (int i = 0; i < _numbers.length + 3; i++) - _buildKeyboardButton(i) - ])) - ]), - ), - ))); + child: ListView(children: <Widget>[ + Card( + elevation: 8.0, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(16.0), + ), + child: Container( + width: 320.0, + height: 700, + padding: const EdgeInsets.all(10.0), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(16.0), + gradient: LinearGradient( + begin: Alignment.topLeft, + end: Alignment.bottomRight, + colors: <Color>[ + Colors.grey[800]!, + Colors.grey[500]!, + ], + ), + ), + child: Column( + //crossAxisAlignment: CrossAxisAlignment.center, + children: <Widget>[ + CardTerminalScreen(amount: _currentValue), + const SizedBox(height: 8.0), + Padding( + padding: const EdgeInsets.symmetric(vertical: 16.0), + child: GridView.count( + physics: const NeverScrollableScrollPhysics(), + shrinkWrap: true, + crossAxisCount: 3, + crossAxisSpacing: 8, + mainAxisSpacing: 8, + childAspectRatio: 1.75 / 1, + padding: EdgeInsets.zero, + children: <Widget>[ + for (int i = 0; i < _numbers.length + 3; i++) + _buildKeyboardButton(i) + ])) + ]), + ), + ) + ]))); } Widget _buildKeyboardButton(int index) { if (index == _backspaceIndex) { return RubberButton( - // Yellow, remove + // Yellow, remove bgColor: const Color(0xFFF7E378), icon: Icons.backspace, onPressed: () { @@ -103,7 +104,7 @@ class _CardTerminalState extends State<CardTerminal> { }); } else if (index == _submitIndex) { return RubberButton( - // Green, send + // Green, send bgColor: const Color(0xFF36B649), icon: Icons.subdirectory_arrow_left, onPressed: () { @@ -111,7 +112,7 @@ class _CardTerminalState extends State<CardTerminal> { }); } else if (index == _cancelIndex) { return RubberButton( - // Red, cancel + // Red, cancel bgColor: const Color(0xFFCD303D), icon: Icons.cancel, onPressed: () {