mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2025-05-22 17:14:41 +00:00
fix: address list
This commit is contained in:
parent
309dca9ac9
commit
be1b964967
5 changed files with 19 additions and 5 deletions
cw_bitcoin/lib
bitcoin_wallet_addresses.dartelectrum_wallet.dartelectrum_wallet_addresses.dartlitecoin_wallet_addresses.dart
cw_bitcoin_cash/lib/src
|
@ -31,6 +31,9 @@ abstract class BitcoinWalletAddressesBase extends ElectrumWalletAddresses with S
|
||||||
silentPaymentWallets = [silentPaymentWallet!];
|
silentPaymentWallets = [silentPaymentWallet!];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
final walletAddressTypes = BITCOIN_ADDRESS_TYPES;
|
||||||
|
|
||||||
static const OLD_SP_PATH = "m/352'/1'/0'/#'/0";
|
static const OLD_SP_PATH = "m/352'/1'/0'/#'/0";
|
||||||
static const BITCOIN_ADDRESS_TYPES = [
|
static const BITCOIN_ADDRESS_TYPES = [
|
||||||
SegwitAddressType.p2wpkh,
|
SegwitAddressType.p2wpkh,
|
||||||
|
@ -53,6 +56,8 @@ abstract class BitcoinWalletAddressesBase extends ElectrumWalletAddresses with S
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<void> init() async {
|
Future<void> init() async {
|
||||||
|
super.init();
|
||||||
|
|
||||||
// TODO: if restored from snapshot
|
// TODO: if restored from snapshot
|
||||||
|
|
||||||
if (allAddresses.where((address) => address.type == SegwitAddressType.p2wpkh).isEmpty) {
|
if (allAddresses.where((address) => address.type == SegwitAddressType.p2wpkh).isEmpty) {
|
||||||
|
|
|
@ -1349,7 +1349,7 @@ abstract class ElectrumWalletBase
|
||||||
|
|
||||||
await save();
|
await save();
|
||||||
} else if (response.completed) {
|
} else if (response.completed) {
|
||||||
checkAddressesGap();
|
// checkAddressesGap();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -65,17 +65,17 @@ abstract class ElectrumWalletAddressesBase extends WalletAddresses with Store {
|
||||||
|
|
||||||
@computed
|
@computed
|
||||||
List<BaseBitcoinAddressRecord> get selectedReceiveAddresses =>
|
List<BaseBitcoinAddressRecord> get selectedReceiveAddresses =>
|
||||||
receiveAddressesByType[_addressPageType]!;
|
receiveAddressesByType[_addressPageType] ?? [];
|
||||||
|
|
||||||
@computed
|
@computed
|
||||||
List<BaseBitcoinAddressRecord> get selectedChangeAddresses =>
|
List<BaseBitcoinAddressRecord> get selectedChangeAddresses =>
|
||||||
receiveAddressesByType[_addressPageType]!;
|
changeAddressesByType[_addressPageType] ?? [];
|
||||||
|
|
||||||
List<BaseBitcoinAddressRecord> getAddressesByType(
|
List<BaseBitcoinAddressRecord> getAddressesByType(
|
||||||
BitcoinAddressType type, [
|
BitcoinAddressType type, [
|
||||||
bool isChange = false,
|
bool isChange = false,
|
||||||
]) =>
|
]) =>
|
||||||
isChange ? changeAddressesByType[type]! : receiveAddressesByType[type]!;
|
(isChange ? changeAddressesByType[type] : receiveAddressesByType[type]) ?? [];
|
||||||
|
|
||||||
@computed
|
@computed
|
||||||
BitcoinAddressType get addressPageType => _addressPageType;
|
BitcoinAddressType get addressPageType => _addressPageType;
|
||||||
|
@ -282,7 +282,6 @@ abstract class ElectrumWalletAddressesBase extends WalletAddresses with Store {
|
||||||
|
|
||||||
@action
|
@action
|
||||||
void updateAddressesByType() {
|
void updateAddressesByType() {
|
||||||
receiveAddressesByType.clear();
|
|
||||||
walletAddressTypes.forEach((type) {
|
walletAddressTypes.forEach((type) {
|
||||||
receiveAddressesByType[type] =
|
receiveAddressesByType[type] =
|
||||||
_allAddresses.where((addr) => _isAddressByType(addr, type)).toList();
|
_allAddresses.where((addr) => _isAddressByType(addr, type)).toList();
|
||||||
|
|
|
@ -37,6 +37,11 @@ abstract class LitecoinWalletAddressesBase extends ElectrumWalletAddresses with
|
||||||
printV("initialized with ${mwebAddrs.length} mweb addresses");
|
printV("initialized with ${mwebAddrs.length} mweb addresses");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
final walletAddressTypes = LITECOIN_ADDRESS_TYPES;
|
||||||
|
|
||||||
|
static const LITECOIN_ADDRESS_TYPES = [SegwitAddressType.p2wpkh];
|
||||||
|
|
||||||
final ObservableList<LitecoinMWEBAddressRecord> mwebAddresses;
|
final ObservableList<LitecoinMWEBAddressRecord> mwebAddresses;
|
||||||
|
|
||||||
late final Bip32Slip10Secp256k1? mwebHd;
|
late final Bip32Slip10Secp256k1? mwebHd;
|
||||||
|
|
|
@ -20,6 +20,11 @@ abstract class BitcoinCashWalletAddressesBase extends ElectrumWalletAddresses wi
|
||||||
super.initialAddressPageType,
|
super.initialAddressPageType,
|
||||||
}) : super(walletInfo);
|
}) : super(walletInfo);
|
||||||
|
|
||||||
|
@override
|
||||||
|
final walletAddressTypes = BITCOIN_CASH_ADDRESS_TYPES;
|
||||||
|
|
||||||
|
static const BITCOIN_CASH_ADDRESS_TYPES = [P2pkhAddressType.p2pkh];
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<void> init() async {
|
Future<void> init() async {
|
||||||
await generateInitialAddresses(type: P2pkhAddressType.p2pkh);
|
await generateInitialAddresses(type: P2pkhAddressType.p2pkh);
|
||||||
|
|
Loading…
Reference in a new issue