tolerate nullable payment methods

This commit is contained in:
OmarHatem
2025-11-02 05:54:27 +01:00
parent 44a4a01b91
commit dd772d84f9
3 changed files with 14 additions and 15 deletions
+2 -2
View File
@@ -1159,8 +1159,8 @@ packages:
dependency: "direct main"
description:
path: "."
ref: "59b3ceec158d3393b20d0c596cab2abcc62ac8e4"
resolved-ref: "59b3ceec158d3393b20d0c596cab2abcc62ac8e4"
ref: d1242cea90f84b00200e7bcab914a5af750e23fb
resolved-ref: d1242cea90f84b00200e7bcab914a5af750e23fb
url: "https://github.com/cake-tech/trezor_connect"
source: git
version: "0.0.1"
+10 -10
View File
@@ -124,11 +124,11 @@ class OrderCard {
}
class PaymentData {
final CryptoPaymentData btc;
final CryptoPaymentData btc_ln;
final CryptoPaymentData xmr;
final CryptoPaymentData ltc;
final CryptoPaymentData ltc_mweb;
final CryptoPaymentData? btc;
final CryptoPaymentData? btc_ln;
final CryptoPaymentData? xmr;
final CryptoPaymentData? ltc;
final CryptoPaymentData? ltc_mweb;
final DateTime invoiceTime;
final DateTime expirationTime;
final int? commission;
@@ -146,11 +146,11 @@ class PaymentData {
factory PaymentData.fromMap(Map<String, dynamic> map) {
return PaymentData(
btc: CryptoPaymentData.fromMap(map['BTC'] as Map<String, dynamic>),
btc_ln: CryptoPaymentData.fromMap(map['BTC_LN'] as Map<String, dynamic>),
xmr: CryptoPaymentData.fromMap(map['XMR'] as Map<String, dynamic>),
ltc: CryptoPaymentData.fromMap(map['LTC'] as Map<String, dynamic>),
ltc_mweb: CryptoPaymentData.fromMap(map['LTC_MWEB'] as Map<String, dynamic>),
btc: map['BTC'] != null ? CryptoPaymentData.fromMap(map['BTC'] as Map<String, dynamic>) : null,
btc_ln: map['BTC_LN'] != null ? CryptoPaymentData.fromMap(map['BTC_LN'] as Map<String, dynamic>) : null,
xmr: map['XMR'] != null ? CryptoPaymentData.fromMap(map['XMR'] as Map<String, dynamic>) : null,
ltc: map['LTC'] != null ? CryptoPaymentData.fromMap(map['LTC'] as Map<String, dynamic>) : null,
ltc_mweb: map['LTC_MWEB'] != null ? CryptoPaymentData.fromMap(map['LTC_MWEB'] as Map<String, dynamic>) : null,
invoiceTime: DateTime.fromMillisecondsSinceEpoch(map['invoice_time'] as int),
expirationTime: DateTime.fromMillisecondsSinceEpoch(map['expiration_time'] as int),
commission: map['commission'] as int?,
@@ -1,6 +1,5 @@
import 'dart:async';
import 'package:cake_wallet/buy/buy_provider_description.dart';
import 'package:cake_wallet/order/order_provider_description.dart';
import 'package:cake_wallet/order/order.dart';
import 'package:cake_wallet/order/order_source_description.dart';
@@ -170,10 +169,10 @@ abstract class CakePayBuyCardViewModelBase with Store {
from: CakePayOrder.getCurrencyCodeFromPaymentMethod(selectedPaymentMethod!),
to: order!.fiatCurrencyCode,
createdAt: DateTime.now(),
amount: paymentData.amount ?? '',
amount: paymentData.amount,
receiveAmount: order!.totalReceiveAmount,
quantity: order!.quantity.toString(),
receiveAddress: paymentData.address ?? '',
receiveAddress: paymentData.address,
source: OrderSourceDescription.order,
giftCardProvider: OrderProviderDescription.cakePay,
walletId: sendViewModel.wallet.id);