toMap method

  1. @override
Map<String, dynamic> toMap()

Converts the BaseDataModel object to a Map representation.

Returns a Map containing the key-value pairs of the object's properties.

Implementation

@override
Map<String, dynamic> toMap() {
  return <String, dynamic>{
    'id': id.toSerializable,
    'title': title.toSerializable,
    'body': body.toSerializable,
    'data': data.toSerializable,
    'imageUrl': imageUrl.toSerializable,
    'icon': icon.toSerializable,
    'sound': sound.toSerializable,
    'badge': badge.toSerializable,
    'tag': tag.toSerializable,
    'channelId': channelId.toSerializable,
    'channelName': channelName.toSerializable,
    'channelDescription': channelDescription.toSerializable,
    'importance': importance.value.toSerializable,
    'priority': priority.value.toSerializable,
    'timestamp': timestamp.toSerializable,
    'largeIcon': largeIcon.toSerializable,
    'bigPicture': bigPicture.toSerializable,
    'actions': actions
        .map((NotificationAction action) => action.toMap())
        .toList()
        .toSerializable,
    'color': color.toSerializable,
    'vibrationPattern': vibrationPattern.toSerializable,
    'category': category.toSerializable,
    'threadIdentifier': threadIdentifier.toSerializable,
    'collapseKey': collapseKey.toSerializable,
    'ttl': ttl.toSerializable,
    'deliveryDelay': deliveryDelay.toSerializable,
    'isScheduled': isScheduled.toSerializable,
    'scheduledDateTime': scheduledDateTime.toSerializable,
    'repeatInterval': repeatInterval?.name.toSerializable,
    'payload': payload.toSerializable,
    'showTimestamp': showTimestamp.toSerializable,
    'ongoing': ongoing.toSerializable,
    'autoCancel': autoCancel.toSerializable,
    'silent': silent.toSerializable,
    'publicVersion': publicVersion?.toMap().toSerializable,
    'ticker': ticker.toSerializable,
    'whenTimestamp': whenTimestamp.toSerializable,
    'usesChronometer': usesChronometer.toSerializable,
    'chronometerCountDown': chronometerCountDown.toSerializable,
    'enableLights': enableLights.toSerializable,
    'enableVibration': enableVibration.toSerializable,
    'playSound': playSound.toSerializable,
    'criticalAlert': criticalAlert.toSerializable,
    'interruptionLevel': interruptionLevel.name.toSerializable,
  };
}