Skip to content

Commit

Permalink
fix: do not handle nested properties in oneOf and anyOf compositions
Browse files Browse the repository at this point in the history
  • Loading branch information
mrlubos committed Oct 3, 2024
1 parent baaf986 commit dc696e0
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 2 deletions.
5 changes: 5 additions & 0 deletions .changeset/gorgeous-mayflies-joke.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'@hey-api/openapi-ts': patch
---

fix: skip nested properties in oneOf and anyOf compositions
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ export const getModelComposition = ({
composition.properties.push(model);
});

if (definition.required) {
if (definition.required && type === 'all-of') {
const requiredProperties = getRequiredPropertiesFromComposition({
definitions,
getModel,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,8 +81,9 @@ export const getModelComposition = ({
composition.properties = [...composition.properties, model];
});

if (definition.required) {
if (definition.required && type === 'all-of') {
const requiredProperties = getRequiredPropertiesFromComposition({
debug,
definitions,
getModel,
openApi,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,14 @@ import type { OpenApi } from '../interfaces/OpenApi';
import type { OpenApiSchema } from '../interfaces/OpenApiSchema';

export const getRequiredPropertiesFromComposition = ({
debug,
definitions,
getModel,
openApi,
required,
types,
}: {
debug?: boolean;
definitions: OpenApiSchema[];
getModel: GetModelFn;
openApi: OpenApi;
Expand All @@ -38,6 +40,7 @@ export const getRequiredPropertiesFromComposition = ({
return [
...properties,
...getModel({
debug,
definition: schema,
meta,
openApi,
Expand All @@ -49,6 +52,7 @@ export const getRequiredPropertiesFromComposition = ({
return [
...properties,
...getModel({
debug,

Check warning on line 55 in packages/openapi-ts/src/openApi/v3/parser/getRequiredPropertiesFromComposition.ts

View check run for this annotation

Codecov / codecov/patch

packages/openapi-ts/src/openApi/v3/parser/getRequiredPropertiesFromComposition.ts#L55

Added line #L55 was not covered by tests
definition,
openApi,
parentDefinition: definition,
Expand All @@ -63,5 +67,6 @@ export const getRequiredPropertiesFromComposition = ({
...property,
isRequired: true,
}));

return requiredProperties;
};

0 comments on commit dc696e0

Please sign in to comment.