/// Modèle portefeuille électronique. class Wallet { const Wallet({ required this.currency, required this.currentBalance, this.status = 'active', }); final String currency; final double currentBalance; final String status; factory Wallet.fromJson(Map json) { return Wallet( currency: json['currency'] as String? ?? 'EUR', currentBalance: (json['current_balance'] as num?)?.toDouble() ?? 0, status: json['status'] as String? ?? 'active', ); } } /// Mouvement sur le portefeuille. class WalletTransaction { const WalletTransaction({ required this.uuid, required this.type, required this.amount, required this.balanceAfter, required this.createdAt, }); final String uuid; final String type; final double amount; final double balanceAfter; final DateTime? createdAt; factory WalletTransaction.fromJson(Map json) { return WalletTransaction( uuid: json['uuid'] as String, type: json['type'] as String, amount: (json['amount'] as num?)?.toDouble() ?? 0, balanceAfter: (json['balance_after'] as num?)?.toDouble() ?? 0, createdAt: json['created_at'] != null ? DateTime.tryParse(json['created_at'] as String) : null, ); } }