fix: anyOf with sibling properties generates intersection instead of … #2608
+83
−37
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
…union
When a schema has both anyOf and properties at the same level, the properties should be intersected with the anyOf union, not included as another union member.
Before: { name?: string; } | Type1 | Type2
After: { name?: string; } & (Type1 | Type2)
This matches the OpenAPI spec semantics where sibling properties apply to all anyOf variants.
Closes #2380
Changes
What does this PR change? Link to any related issue(s).
How to Review
How can a reviewer review your changes? What should be kept in mind for this review?
Checklist
docs/updated (if necessary)pnpm run update:examplesrun (only applicable for openapi-typescript)