Schema.fromJson constructor
Creates a Schema from a JSON object.
Implementation
factory Schema.fromJson(Map<String, dynamic> json) {
final extensions = <String, dynamic>{};
json.forEach((key, value) {
if (key.startsWith('x-')) {
extensions[key] = value;
}
});
dynamic parsedAdditionalProperties;
if (json.containsKey('additionalProperties')) {
final ap = json['additionalProperties'];
if (ap is bool) {
parsedAdditionalProperties = ap;
} else if (ap is Map<String, dynamic>) {
parsedAdditionalProperties = Schema.fromJson(ap);
}
}
dynamic parsedType;
if (json.containsKey('type')) {
final t = json['type'];
if (t is String) {
parsedType = t;
} else if (t is List) {
parsedType = t.cast<String>();
}
}
return _$SchemaFromJson(json).copyWith(
extensions: extensions,
additionalProperties: parsedAdditionalProperties,
type: parsedType,
);
}