DeliveryStatusEntity.fromMap constructor

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

Creates delivery status from a map.

Implementation

factory DeliveryStatusEntity.fromMap(Map<String, dynamic> map) {
  return DeliveryStatusEntity(
    notificationId: map.parseDefault<String>('notificationId', ''),
    status: DeliveryStatus.values.firstWhere(
      (DeliveryStatus e) => e.name.compareWithoutCase(
        map.parseDefault<String>('status', DeliveryStatus.pending.name),
      ),
      orElse: () => DeliveryStatus.pending,
    ),
    timestamp: map.parse<DateTime>('timestamp') ?? DateTime.now(),
    errorMessage: map.parse<String>('errorMessage'),
    retryCount: map.parseDefault<int>('retryCount', 0),
    deliveredAt: map.parse<DateTime>('deliveredAt'),
    openedAt: map.parse<DateTime>('openedAt'),
    dismissedAt: map.parse<DateTime>('dismissedAt'),
    metadata: map.parseDefault<Map<String, dynamic>>(
      'metadata',
      <String, dynamic>{},
    ),
  );
}