mirror of
https://github.com/Such-Software/hash-wallet.git
synced 2026-10-24 06:48:38 +02:00
Flutter upgrade
This commit is contained in:
@@ -4,18 +4,18 @@ import 'package:flutter/material.dart';
|
||||
|
||||
class ChoicesListItem<ItemType> extends SettingsListItem {
|
||||
ChoicesListItem(
|
||||
{@required String title,
|
||||
@required this.selectedItem,
|
||||
@required this.items,
|
||||
{required String title,
|
||||
required this.selectedItem,
|
||||
required this.items,
|
||||
this.displayItem,
|
||||
void Function(ItemType item) onItemSelected})
|
||||
void Function(ItemType item)? onItemSelected})
|
||||
: _onItemSelected = onItemSelected,
|
||||
super(title);
|
||||
|
||||
final ItemType selectedItem;
|
||||
final List<ItemType> items;
|
||||
final String Function(ItemType item) displayItem;
|
||||
final void Function(ItemType item) _onItemSelected;
|
||||
final String Function(ItemType item)? displayItem;
|
||||
final void Function(ItemType item)? _onItemSelected;
|
||||
|
||||
void onItemSelected(dynamic item) {
|
||||
if (item is ItemType) {
|
||||
|
||||
@@ -4,14 +4,14 @@ import 'package:flutter/material.dart';
|
||||
|
||||
class LinkListItem extends SettingsListItem {
|
||||
LinkListItem(
|
||||
{@required String title,
|
||||
@required this.link,
|
||||
@required this.linkTitle,
|
||||
{required String title,
|
||||
required this.link,
|
||||
required this.linkTitle,
|
||||
this.icon,
|
||||
this.hasIconColor = false})
|
||||
: super(title);
|
||||
|
||||
final String icon;
|
||||
final String? icon;
|
||||
final String link;
|
||||
final String linkTitle;
|
||||
final bool hasIconColor;
|
||||
|
||||
@@ -2,29 +2,29 @@ import 'package:flutter/foundation.dart';
|
||||
import 'package:cake_wallet/view_model/settings/settings_list_item.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class PickerListItem<ItemType> extends SettingsListItem {
|
||||
class PickerListItem<ItemType extends Object> extends SettingsListItem {
|
||||
PickerListItem(
|
||||
{@required String title,
|
||||
@required this.selectedItem,
|
||||
@required this.items,
|
||||
{required String title,
|
||||
required this.selectedItem,
|
||||
required this.items,
|
||||
this.displayItem,
|
||||
this.images,
|
||||
this.searchHintText,
|
||||
this.isGridView = false,
|
||||
void Function(ItemType item) onItemSelected,
|
||||
bool Function(ItemType item, String searchText) matchingCriteria})
|
||||
void Function(ItemType item)? onItemSelected,
|
||||
bool Function(ItemType item, String searchText)? matchingCriteria})
|
||||
: _onItemSelected = onItemSelected,
|
||||
_matchingCriteria = matchingCriteria,
|
||||
super(title);
|
||||
|
||||
final ItemType Function() selectedItem;
|
||||
final List<ItemType> items;
|
||||
final String Function(ItemType item) displayItem;
|
||||
final void Function(ItemType item) _onItemSelected;
|
||||
final List<Image> images;
|
||||
final String searchHintText;
|
||||
final String Function(ItemType item)? displayItem;
|
||||
final void Function(ItemType item)? _onItemSelected;
|
||||
final List<Image>? images;
|
||||
final String? searchHintText;
|
||||
final bool isGridView;
|
||||
final bool Function(ItemType, String) _matchingCriteria;
|
||||
final bool Function(ItemType, String)? _matchingCriteria;
|
||||
|
||||
void onItemSelected(dynamic item) {
|
||||
if (item is ItemType) {
|
||||
@@ -34,7 +34,7 @@ class PickerListItem<ItemType> extends SettingsListItem {
|
||||
|
||||
bool matchingCriteria(dynamic item, String searchText) {
|
||||
if (item is ItemType) {
|
||||
return _matchingCriteria?.call(item, searchText);
|
||||
return _matchingCriteria?.call(item, searchText) ?? false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:cake_wallet/view_model/settings/settings_list_item.dart';
|
||||
|
||||
class RegularListItem extends SettingsListItem {
|
||||
RegularListItem({@required String title, this.handler}) : super(title);
|
||||
RegularListItem({required String title, this.handler}) : super(title);
|
||||
|
||||
final void Function(BuildContext context) handler;
|
||||
final void Function(BuildContext context)? handler;
|
||||
}
|
||||
@@ -39,13 +39,13 @@ class SettingsViewModel = SettingsViewModelBase with _$SettingsViewModel;
|
||||
List<TransactionPriority> priorityForWalletType(WalletType type) {
|
||||
switch (type) {
|
||||
case WalletType.monero:
|
||||
return monero.getTransactionPriorities();
|
||||
return monero!.getTransactionPriorities();
|
||||
case WalletType.bitcoin:
|
||||
return bitcoin.getTransactionPriorities();
|
||||
return bitcoin!.getTransactionPriorities();
|
||||
case WalletType.litecoin:
|
||||
return bitcoin.getLitecoinTransactionPriorities();
|
||||
return bitcoin!.getLitecoinTransactionPriorities();
|
||||
case WalletType.haven:
|
||||
return haven.getTransactionPriorities();
|
||||
return haven!.getTransactionPriorities();
|
||||
default:
|
||||
return [];
|
||||
}
|
||||
@@ -60,8 +60,9 @@ abstract class SettingsViewModelBase with Store {
|
||||
wallet)
|
||||
: itemHeaders = {},
|
||||
_walletType = wallet.type,
|
||||
_biometricAuth = BiometricAuth() {
|
||||
currentVersion = '';
|
||||
_biometricAuth = BiometricAuth(),
|
||||
sections = <List<SettingsListItem>>[],
|
||||
currentVersion = '' {
|
||||
PackageInfo.fromPlatform().then(
|
||||
(PackageInfo packageInfo) => currentVersion = packageInfo.version);
|
||||
|
||||
@@ -134,8 +135,10 @@ abstract class SettingsViewModelBase with Store {
|
||||
|
||||
if (wallet.type == WalletType.bitcoin
|
||||
|| wallet.type == WalletType.litecoin) {
|
||||
final rate = bitcoin.getFeeRate(wallet, _priority);
|
||||
return '${priority.labelWithRate(rate)}';
|
||||
final rate = bitcoin!.getFeeRate(wallet, _priority);
|
||||
// FIX-ME: BitcoinTransactionPriority
|
||||
// return '${priority.labelWithRate(rate)}';
|
||||
return '';
|
||||
}
|
||||
|
||||
return priority.toString();
|
||||
@@ -169,7 +172,7 @@ abstract class SettingsViewModelBase with Store {
|
||||
searchHintText: S.current.search_language,
|
||||
items: LanguageService.list.keys.toList(),
|
||||
displayItem: (dynamic code) {
|
||||
return LanguageService.list[code];
|
||||
return LanguageService.list[code] ?? '';
|
||||
},
|
||||
selectedItem: () => _settingsStore.languageCode,
|
||||
onItemSelected: (String code) {
|
||||
@@ -179,7 +182,7 @@ abstract class SettingsViewModelBase with Store {
|
||||
(e) => Image.asset("assets/images/flags/${LanguageService.localeCountryCode[e]}.png"))
|
||||
.toList(),
|
||||
matchingCriteria: (String code, String searchText) {
|
||||
return LanguageService.list[code].toLowerCase().contains(searchText);
|
||||
return LanguageService.list[code]?.toLowerCase().contains(searchText) ?? false;
|
||||
},
|
||||
),
|
||||
SwitcherListItem(
|
||||
@@ -256,8 +259,15 @@ abstract class SettingsViewModelBase with Store {
|
||||
_settingsStore.actionlistDisplayMode;
|
||||
|
||||
@computed
|
||||
TransactionPriority get transactionPriority =>
|
||||
_settingsStore.priority[_walletType];
|
||||
TransactionPriority get transactionPriority {
|
||||
final priority = _settingsStore.priority[_walletType];
|
||||
|
||||
if (priority == null) {
|
||||
throw Exception('Unexpected type ${_walletType.toString()}');
|
||||
}
|
||||
|
||||
return priority;
|
||||
}
|
||||
|
||||
@computed
|
||||
BalanceDisplayMode get balanceDisplayMode =>
|
||||
|
||||
@@ -4,9 +4,9 @@ import 'package:cake_wallet/view_model/settings/settings_list_item.dart';
|
||||
|
||||
class SwitcherListItem extends SettingsListItem {
|
||||
SwitcherListItem(
|
||||
{@required String title,
|
||||
@required this.value,
|
||||
@required this.onValueChange})
|
||||
{required String title,
|
||||
required this.value,
|
||||
required this.onValueChange})
|
||||
: super(title);
|
||||
|
||||
final bool Function() value;
|
||||
|
||||
@@ -2,5 +2,5 @@ import 'package:flutter/foundation.dart';
|
||||
import 'package:cake_wallet/view_model/settings/settings_list_item.dart';
|
||||
|
||||
class VersionListItem extends SettingsListItem {
|
||||
VersionListItem({@required String title}) : super(title);
|
||||
VersionListItem({required String title}) : super(title);
|
||||
}
|
||||
Reference in New Issue
Block a user