FieldInstance.fromJson constructor

FieldInstance.fromJson(
  1. Map<String, dynamic> json,
  2. Map<String, FieldPrototype> fieldPrototypes,
  3. Map<String, DataHandler> dataHandlers
)

Implementation

factory FieldInstance.fromJson(
  Map<String, dynamic> json,
  Map<String, FieldPrototype> fieldPrototypes,
  Map<String, DataHandler> dataHandlers,
) {
  if (!fieldPrototypes.containsKey(json['idName'].toString())) {
    throw Exception('Field prototype not found');
  }

  final prototype = fieldPrototypes[json['idName'].toString()]!;

  return FieldInstance(
    prototype: prototype,
    data: json['data'] != 'null'
        ? dataHandlers[prototype.dataType.toString()]?.fromJson(json['data'])
        : null,
  );
}