MeshSchema.fromJson constructor

MeshSchema.fromJson(
  1. Map<String, dynamic> json
)

Implementation

factory MeshSchema.fromJson(Map<String, dynamic> json) {
  final elements = <ElementType>[];

  String rootTagRef = json["\$root_tag_ref"];
  final prefix = "#/\$defs/";
  // emulate removeprefix
  String rootTagName = rootTagRef.startsWith(prefix) ? rootTagRef.substring(prefix.length) : rootTagRef;

  final defs = json["\$defs"] as Map;

  for (var elementJson in defs.values) {
    elements.add(ElementType.fromJson(elementJson));
  }

  return MeshSchema(rootTagName: rootTagName, elements: elements);
}