fromMap static method
Create event from a map during deserialization This is a factory method that should be implemented by concrete event classes
Implementation
static InvoiceStatusChangedEvent fromMap(Map<String, dynamic> map) {
return InvoiceStatusChangedEvent(
invoiceId: map['invoiceId'] as String,
walletId: map['walletId'] as String,
oldStatus: InvoiceStatus.values.firstWhere(
(s) => s.name == map['oldStatus'],
),
newStatus: InvoiceStatus.values.firstWhere(
(s) => s.name == map['newStatus'],
),
reason: map['reason'] as String?,
eventId: map['eventId'] as String?,
timestamp: map['timestamp'] != null
? (map['timestamp'] is String
? DateTime.parse(map['timestamp'] as String)
: map['timestamp'] as DateTime)
: null,
version: map['version'] as int?,
metadata: map['metadata'] as Map<String, dynamic>?,
);
}