mirror of
https://github.com/Such-Software/hash-wallet.git
synced 2026-11-12 08:53:57 +01:00
v6.3.0 Release Candidate (#3414)
* v6.3.0 Release Candidate - the new transaction history - Radar in Apps screen - Zcash update - Flutter update - Parts of the Refactor should improve how amounts are handled in the app and fix any issue with amounts improve handling sending to aliases - Improvements for Cake Pay mobile - Bug fixes * don't use memo for note/message values * save message in QR locally in the notes field * Make stealth addresses generated from silent payment, not reliant on output index (#3420) * - fix swaps showing only on primary account - switch tron default node - privacy fixes * - enlarge destination tag and make it copiable - migrate users on hashvault - minor fix
This commit is contained in:
@@ -124,7 +124,7 @@ abstract class BitcoinWalletAddressesBase extends ElectrumWalletAddresses with S
|
||||
|
||||
Future<PaymentURI> getPaymentRequestUri(String amount) async {
|
||||
if (addressPageType is LightningAddressType && lightningWallet != null) {
|
||||
final amountSats = amount.isNotEmpty ? parseFixed(amount, 8) : null;
|
||||
final amountSats = amount.isNotEmpty ? tryParseFixed(amount, 8) : null;
|
||||
final lnUrl = getLnurlOfLightningAddress(address);
|
||||
if (amountSats == null) {
|
||||
return LightningPaymentRequest(address: address, lnURL: lnUrl, amount: amount);
|
||||
|
||||
@@ -1536,7 +1536,7 @@ abstract class ElectrumWalletBase
|
||||
network: network,
|
||||
memo: estimatedTx.memo,
|
||||
inputOrdering: BitcoinOrdering.shuffle,
|
||||
outputOrdering: BitcoinOrdering.none,
|
||||
outputOrdering: BitcoinOrdering.shuffle,
|
||||
enableRBF: !estimatedTx.spendsUnconfirmedTX,
|
||||
);
|
||||
}
|
||||
@@ -1594,6 +1594,7 @@ abstract class ElectrumWalletBase
|
||||
isSendAll: estimatedTx.isSendAll,
|
||||
hasTaprootInputs: hasTaprootInputs,
|
||||
utxos: estimatedTx.utxos,
|
||||
derivedOutputs: updatedOutputs,
|
||||
publicKeys: estimatedTx.publicKeys,
|
||||
isViewOnly: keys.privateKey.isEmpty,
|
||||
)..addListener((transaction) async {
|
||||
@@ -2297,7 +2298,7 @@ abstract class ElectrumWalletBase
|
||||
network: network,
|
||||
memo: memo,
|
||||
inputOrdering: BitcoinOrdering.shuffle,
|
||||
outputOrdering: BitcoinOrdering.none,
|
||||
outputOrdering: BitcoinOrdering.shuffle,
|
||||
enableRBF: true,
|
||||
);
|
||||
|
||||
|
||||
@@ -31,6 +31,7 @@ class PendingBitcoinTransaction with PendingTransaction {
|
||||
this.hasTaprootInputs = false,
|
||||
this.isMweb = false,
|
||||
this.utxos = const [],
|
||||
this.derivedOutputs = const [],
|
||||
this.publicKeys,
|
||||
this.commitOverride,
|
||||
this.unsignedPsbt,
|
||||
@@ -47,6 +48,9 @@ class PendingBitcoinTransaction with PendingTransaction {
|
||||
final bool hasTaprootInputs;
|
||||
final bool isViewOnly;
|
||||
List<UtxoWithAddress> utxos;
|
||||
|
||||
final List<BitcoinOutput> derivedOutputs;
|
||||
|
||||
bool isMweb;
|
||||
String? changeAddressOverride;
|
||||
String? idOverride;
|
||||
@@ -79,6 +83,13 @@ class PendingBitcoinTransaction with PendingTransaction {
|
||||
|
||||
bool get hasSilentPayment => _tx.hasSilentPayment;
|
||||
|
||||
List<String?> get stealthAddresses => derivedOutputs
|
||||
.where((out) => !out.isChange)
|
||||
.map((out) => out.isSilentPayment
|
||||
? out.address.toAddress(network ?? BitcoinNetwork.mainnet)
|
||||
: null)
|
||||
.toList();
|
||||
|
||||
PendingChange? get change {
|
||||
try {
|
||||
final change = _tx.outputs.firstWhere((out) => out.isChange);
|
||||
|
||||
Reference in New Issue
Block a user