diff --git a/src/services/models/Schema.ts b/src/services/models/Schema.ts index afc45762..ebbc5d2f 100644 --- a/src/services/models/Schema.ts +++ b/src/services/models/Schema.ts @@ -418,7 +418,7 @@ function buildFields( options: RedocNormalizedOptions, ): FieldModel[] { const props = schema.properties || schema.prefixItems || schema.items || {}; - const patternProps = schema.patternProperties || {}; + let patternProps = schema.patternProperties || {}; const additionalProps = schema.additionalProperties || schema.unevaluatedProperties; const itemsProps = schema.prefixItems ? schema.items : schema.additionalItems; const defaults = schema.default; @@ -432,6 +432,10 @@ function buildFields( field = {}; } + if (field.patternProperties) { + patternProps = { ...patternProps, ...field.patternProperties }; + } + const required = schema.required === undefined ? false : schema.required.indexOf(fieldName) > -1;