normalizeKey function

dynamic normalizeKey(
  1. dynamic key
)

Implementation

normalizeKey(dynamic key) {
  if (key is num &&
      (key == double.nan ||
          key == double.infinity ||
          key == double.negativeInfinity)) {
    return null;
  }
  if (key is DateTime) {
    return key.toIso8601String();
  }
  if (key is List) {
    return key.map((e) => normalizeKey(key));
  }
  if (key is Map) {
    return key
        .map((key, value) => MapEntry(normalizeKey(key), normalizeKey(value)));
  }
  return key;
}