+ quotation provider
This commit is contained in:
@@ -1,5 +1,8 @@
|
||||
import 'package:flutter/widgets.dart';
|
||||
|
||||
import 'package:pshared/models/payment/methods/card_token.dart';
|
||||
import 'package:pshared/models/payment/methods/ledger.dart';
|
||||
import 'package:pshared/models/payment/methods/managed_wallet.dart';
|
||||
import 'package:pshared/models/payment/methods/type.dart';
|
||||
import 'package:pshared/models/payment/type.dart';
|
||||
|
||||
@@ -12,21 +15,31 @@ String getPaymentTypeLabel(BuildContext context, PaymentType type) {
|
||||
final l10n = AppLocalizations.of(context)!;
|
||||
return switch (type) {
|
||||
PaymentType.card => l10n.paymentTypeCard,
|
||||
PaymentType.cardToken => l10n.paymentTypeCardToken,
|
||||
PaymentType.bankAccount => l10n.paymentTypeBankAccount,
|
||||
PaymentType.iban => l10n.paymentTypeIban,
|
||||
PaymentType.wallet => l10n.paymentTypeWallet,
|
||||
PaymentType.cryptoAddress => l10n.paymentTypeCryptoAddress,
|
||||
PaymentType.managedWallet => l10n.paymentTypeManagedWallet,
|
||||
PaymentType.externalChain => l10n.paymentTypeCryptoAddress,
|
||||
PaymentType.ledger => l10n.paymentTypeLedger,
|
||||
};
|
||||
}
|
||||
|
||||
String? _displayString(PaymentMethod m) => switch (m.type) {
|
||||
PaymentType.card => maskCardNumber(m.cardData?.pan),
|
||||
PaymentType.cardToken => m.dataAsOrNull<CardTokenPaymentMethod>()?.maskedPan,
|
||||
PaymentType.bankAccount => m.bankAccountData?.accountNumber,
|
||||
PaymentType.iban => m.ibanData?.iban,
|
||||
PaymentType.wallet => m.walletData?.walletId,
|
||||
PaymentType.cryptoAddress => m.cryptoAddressData?.address,
|
||||
PaymentType.managedWallet => () {
|
||||
final data = m.dataAsOrNull<ManagedWalletPaymentMethod>();
|
||||
if (data == null) return null;
|
||||
return data.asset?.tokenSymbol ?? data.managedWalletRef;
|
||||
}(),
|
||||
PaymentType.externalChain => m.cryptoAddressData?.address,
|
||||
PaymentType.ledger => m.dataAsOrNull<LedgerPaymentMethod>()?.ledgerAccountRef,
|
||||
};
|
||||
|
||||
String getPaymentTypeDescription(BuildContext context, PaymentMethod m) {
|
||||
return _displayString(m) ?? AppLocalizations.of(context)!.notSet;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user