fromMap static method

InvoiceStatusChangedEvent fromMap(
  1. Map<String, dynamic> map
)

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>?,
  );
}