dev
dart 37 lines 1.29 KB
Raw
1 import 'package:bitcoin_base/bitcoin_base.dart';
2 import 'package:blockchain_utils/blockchain_utils.dart';
3 import 'package:cw_bitcoin/electrum_wallet_addresses.dart';
4 import 'package:cw_bitcoin/utils.dart';
5 import 'package:cw_core/payment_uris.dart';
6 import 'package:cw_core/wallet_info.dart';
7 import 'package:mobx/mobx.dart';
8
9 part 'bitcoin_cash_wallet_addresses.g.dart';
10
11 class BitcoinCashWalletAddresses = BitcoinCashWalletAddressesBase with _$BitcoinCashWalletAddresses;
12
13 abstract class BitcoinCashWalletAddressesBase extends ElectrumWalletAddresses with Store {
14 BitcoinCashWalletAddressesBase(
15 WalletInfo walletInfo, {
16 required super.mainHdByType,
17 required super.sideHdByType,
18 required super.legacyMainHd,
19 required super.legacySideHd,
20 required super.network,
21 required super.isHardwareWallet,
22 super.initialAddresses,
23 super.initialRegularAddressIndex,
24 super.initialChangeAddressIndex,
25 super.initialAddressPageType,
26 }) : super(walletInfo);
27
28 @override
29 String getAddress(
30 {required int index,
31 required Bip32Slip10Secp256k1 hd,
32 BitcoinAddressType? addressType}) =>
33 generateP2PKHAddress(hd: hd, index: index, network: network);
34
35 @override
36 PaymentURI getPaymentUri(String amount) => BitcoinCashURI(address: address, amount: amount);
37 }