mapOrNull method

  1. @override
MostProperty? mapOrNull(
  1. MostJsonSchemaPropertyParser propertyParser,
  2. PropertySpec spec
)
override

Resolves spec to a MostProperty or return null.

Implementation

@override
MostProperty? mapOrNull(
  MostJsonSchemaPropertyParser propertyParser,
  PropertySpec spec,
) {
  if (spec.propertySchema.properties.isNotEmpty) return null;
  if (spec.propertySchema.type != SchemaType.string) return null;
  if (spec.propertySchema.enumValues?.isNotEmpty ?? false) return null;

  return StringMostProperty(
    title: spec.title,
    description: spec.description,
    propertyName: spec.propertyName,
    required: spec.required,
    parent: spec.parent,
    pattern: spec.propertySchema.pattern,
  );
}