refactoring for recipient addition page

This commit is contained in:
Arseni
2026-01-29 19:22:30 +03:00
parent da8da04ae9
commit efa69b43b2
47 changed files with 1376 additions and 532 deletions

View File

@@ -3,6 +3,7 @@ import 'package:pshared/models/payment/methods/card.dart';
import 'package:pshared/models/payment/methods/crypto_address.dart';
import 'package:pshared/models/payment/methods/data.dart';
import 'package:pshared/models/payment/methods/iban.dart';
import 'package:pshared/models/payment/methods/ledger.dart';
import 'package:pshared/models/payment/methods/managed_wallet.dart';
import 'package:pshared/models/payment/methods/russian_bank.dart';
import 'package:pshared/models/payment/methods/wallet.dart';
@@ -46,6 +47,7 @@ class PaymentMethod implements PermissionBoundStorable, Describable {
WalletPaymentMethod? get walletData => dataAsOrNull<WalletPaymentMethod>();
ManagedWalletPaymentMethod? get managedWalletData => dataAsOrNull<ManagedWalletPaymentMethod>();
CryptoAddressPaymentMethod? get cryptoAddressData => dataAsOrNull<CryptoAddressPaymentMethod>();
LedgerPaymentMethod? get ledgerData => dataAsOrNull<LedgerPaymentMethod>();
@override
String get id => storable.id;

View File

@@ -0,0 +1,16 @@
import 'package:pshared/models/payment/methods/data.dart';
import 'package:pshared/models/payment/methods/type.dart';
import 'package:pshared/models/payment/type.dart';
class RecipientMethodDraft {
final PaymentType type;
final PaymentMethod? existing;
PaymentMethodData? data;
RecipientMethodDraft({
required this.type,
this.existing,
PaymentMethodData? data,
}) : data = data ?? existing?.data;
}