RadMap.fromJson constructor

RadMap.fromJson(
  1. Map<String, dynamic> jsonMap
)

Implementation

factory RadMap.fromJson(Map<String, dynamic> jsonMap) {
  RadMap radonMap = RadMap({});
  jsonMap.forEach((key, value) {
    if (typesMap.containsKey(value.runtimeType.toString())) {
      // if the value is a dart type
      Type type = typesMap[value.runtimeType.toString()]!;
      if (value.runtimeType.toString() ==
          '_InternalLinkedHashMap<String, dynamic>') {
        radonMap[key] = RadTypes.instance(RadMap, value, {});
      } else {
        radonMap[key] = RadTypes.instance(type, value, {});
      }
    } else if (typesList.contains(value.runtimeType)) {
      // if the value is a RadonType
      radonMap[key] = RadTypes.instance(value.runtimeType, value, {});
    }
  });
  return radonMap;
}