Skip to content

Commit 7086776

Browse files
authored
Merge pull request ferdikoomen#916 from sjoerdmulder/feature/discriminator-cleanup
Small cleanup
2 parents d76bcb7 + cb4732d commit 7086776

File tree

1 file changed

+7
-9
lines changed

1 file changed

+7
-9
lines changed

src/utils/discriminator.ts

+7-9
Original file line numberDiff line numberDiff line change
@@ -13,18 +13,16 @@ function inverseDictionary(map: Dictionary<string>): Dictionary<string> {
1313
}
1414

1515
export function findOneOfParentDiscriminator(openApi: OpenApi, parent?: Model): OpenApiDiscriminator | undefined {
16-
if (openApi.components) {
16+
if (openApi.components && parent) {
1717
for (const definitionName in openApi.components.schemas) {
1818
if (openApi.components.schemas.hasOwnProperty(definitionName)) {
1919
const schema = openApi.components.schemas[definitionName];
20-
if (parent && schema.oneOf?.length && schema.discriminator) {
21-
const isPartOf =
22-
schema.oneOf
23-
.map(definition => definition.$ref && stripNamespace(definition.$ref) === parent.name)
24-
.filter(Boolean).length > 0;
25-
if (isPartOf) {
26-
return schema.discriminator;
27-
}
20+
if (
21+
schema.discriminator &&
22+
schema.oneOf?.length &&
23+
schema.oneOf.some(definition => definition.$ref && stripNamespace(definition.$ref) == parent.name)
24+
) {
25+
return schema.discriminator;
2826
}
2927
}
3028
}

0 commit comments

Comments
 (0)