fromJson static method

GizmoSpec? fromJson(
  1. Object? json
)

Decodes a gizmo block, skipping malformed or unknown primitives; null when json is not a gizmo block at all.

Implementation

static GizmoSpec? fromJson(Object? json) {
  if (json is! Map) return null;
  final primitives = json['primitives'];
  if (primitives is! List) return null;
  return GizmoSpec([
    for (final entry in primitives)
      if (GizmoPrimitive.fromJson(entry) case final primitive?) primitive,
  ]);
}