acacode / acacode/swagger-typescript-api
Making fields required during use of allOf
- Lenguaje dominante
- TypeScript
- Estrellas
- 4.1k
- Forks
- 436
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
Sometime we have data structures which can be inherited in every way except for whether or not parts of them are required. For example, if you POST a request then this may have empty fields filled in with defaults, and the returned data could be always fully returned. Having `required` work on parts from an schema while using `anyOf` would be fantastic, and appears to be intended:
https://github.com/OAI/OpenAPI-Specification/issues/1870
**Example:**
```yml
schemas:
UserCreate:
type: object
required:
- email
properties:
name: string
email: string
image: string
UserResponse:
allOf:
- $ref: '#/components/schemas/UserCreate'
- type: object
required:
- id
- image
properties:
id: string
```
Right now this outputs:
```ts
export interface UserCreate {
name?: string;
email: string;
image?: string;
}
export type UserResponse = UserCreate & {
id: string;
}
```
But I would expect something more like:
```ts
export interface UserCreate {
name?: string;
email: string;
image?: string;
}
export type UserResponse = UserCreate & {
id: string;
image: string;
}
```
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Evaluación
Este issue todavía no se ha evaluado.