@@ -9,7 +9,7 @@ import { COMPONENT_REGEXP, buildComponentComment } from './MarkdownRenderer';
9
9
import { RedocNormalizedOptions } from './RedocNormalizedOptions' ;
10
10
import { appendToMdHeading } from '../utils/index' ;
11
11
12
- export type MergedOpenAPISchema = OpenAPISchema & { namedParents ?: string [ ] } ;
12
+ export type MergedOpenAPISchema = OpenAPISchema & { parentRefs ?: string [ ] } ;
13
13
14
14
/**
15
15
* Helper class to keep track of visited references to avoid
@@ -166,7 +166,7 @@ export class OpenAPIParser {
166
166
*/
167
167
mergeAllOf (
168
168
schema : OpenAPISchema ,
169
- $ref : string ,
169
+ $ref ? : string ,
170
170
forceCircular : boolean = false ,
171
171
) : MergedOpenAPISchema {
172
172
if ( schema . allOf === undefined ) {
@@ -176,14 +176,14 @@ export class OpenAPIParser {
176
176
let receiver : MergedOpenAPISchema = {
177
177
...schema ,
178
178
allOf : undefined ,
179
- namedParents : [ ] ,
179
+ parentRefs : [ ] ,
180
180
} ;
181
181
182
- const allOfSchemas = schema . allOf . map ( ( subSchema , idx ) => {
182
+ const allOfSchemas = schema . allOf . map ( subSchema => {
183
183
const resolved = this . deref ( subSchema , forceCircular ) ;
184
- const subRef = subSchema . $ref || $ref + '/allOf/' + idx ;
184
+ const subRef = subSchema . $ref || undefined ;
185
185
const subMerged = this . mergeAllOf ( resolved , subRef , forceCircular ) ;
186
- receiver . namedParents ! . push ( ...( subMerged . namedParents || [ ] ) ) ;
186
+ receiver . parentRefs ! . push ( ...( subMerged . parentRefs || [ ] ) ) ;
187
187
return {
188
188
$ref : subRef ,
189
189
schema : subMerged ,
@@ -219,9 +219,9 @@ export class OpenAPIParser {
219
219
receiver . required = ( receiver . required || [ ] ) . concat ( subSchema . required ) ;
220
220
}
221
221
222
- if ( isNamedDefinition ( subSchemaRef ) ) {
223
- receiver . namedParents ! . push ( subSchemaRef ) ;
224
- if ( receiver . title === undefined ) {
222
+ if ( subSchemaRef ) {
223
+ receiver . parentRefs ! . push ( subSchemaRef ) ;
224
+ if ( receiver . title === undefined && isNamedDefinition ( subSchemaRef ) ) {
225
225
receiver . title = JsonPointer . baseName ( subSchemaRef ) ;
226
226
}
227
227
}
0 commit comments