edit wallet token list

This commit is contained in:
julian 2023-03-23 16:28:20 -06:00
parent 1fd7e129e2
commit c51ef8ee26
3 changed files with 28 additions and 18 deletions

View file

@ -80,7 +80,7 @@ class _AddTokenViewState extends ConsumerState<AddTokenView> {
.getManager(widget.walletId)
.wallet as EthereumWallet;
await ethWallet.addTokenContracts(selectedTokens);
await ethWallet.updateTokenContracts(selectedTokens);
if (mounted) {
Navigator.of(context).pop(42);
}
@ -121,6 +121,16 @@ class _AddTokenViewState extends ConsumerState<AddTokenView> {
tokenEntities.addAll(contracts.map((e) => AddTokenListElementData(e)));
final walletContracts = (ref
.read(walletsChangeNotifierProvider)
.getManager(widget.walletId)
.wallet as EthereumWallet)
.getWalletTokenContractAddresses();
for (var e in tokenEntities) {
e.selected = walletContracts.contains(e.token.address);
}
super.initState();
}

View file

@ -27,7 +27,7 @@ class AddTokenText extends StatelessWidget {
height: 4,
),
Text(
"Add Tokens",
"Edit Tokens",
textAlign: TextAlign.center,
style: isDesktop
? STextStyles.desktopH2(context)

View file

@ -62,10 +62,10 @@ class EthereumWallet extends CoinServiceAPI with WalletCache, WalletDB {
Timer? timer;
Timer? _networkAliveTimer;
Future<void> addTokenContracts(List<String> contractAddresses) async {
final set = getWalletTokenContractAddresses().toSet();
set.addAll(contractAddresses);
await updateWalletTokenContractAddresses(set.toList());
Future<void> updateTokenContracts(List<String> contractAddresses) async {
// final set = getWalletTokenContractAddresses().toSet();
// set.addAll(contractAddresses);
await updateWalletTokenContractAddresses(contractAddresses);
GlobalEventBus.instance.fire(
UpdatedInBackgroundEvent(
@ -75,18 +75,18 @@ class EthereumWallet extends CoinServiceAPI with WalletCache, WalletDB {
);
}
Future<void> removeTokenContract(String contractAddress) async {
final set = getWalletTokenContractAddresses().toSet();
set.removeWhere((e) => e == contractAddress);
await updateWalletTokenContractAddresses(set.toList());
GlobalEventBus.instance.fire(
UpdatedInBackgroundEvent(
"$contractAddress removed for: $walletId $walletName",
walletId,
),
);
}
// Future<void> removeTokenContract(String contractAddress) async {
// final set = getWalletTokenContractAddresses().toSet();
// set.removeWhere((e) => e == contractAddress);
// await updateWalletTokenContractAddresses(set.toList());
//
// GlobalEventBus.instance.fire(
// UpdatedInBackgroundEvent(
// "$contractAddress removed for: $walletId $walletName",
// walletId,
// ),
// );
// }
@override
String get walletId => _walletId;