Closed
Description
Description
This was working before ver 7 and it creates working code for my usecase.
This is what creates problem for me:
This is request body that can accept one of these options.
schema:
oneOf:
- $ref: '#/components/schemas/Model1'
- $ref: '#/components/schemas/Model2'
discriminator:
propertyName: template
mapping:
model1: '#/components/schemas/Model1'
model2: '#/components/schemas/Model2'
Here we define descriminator, redocly populates last 2 rows of mapping, it was not problem with 6.7.0
Document:
type: object
properties:
template:
$ref: '#/components/schemas/TemplateField'
discriminator:
propertyName: template
mapping:
model2: '#/components/schemas/Model2'
model1: '#/components/schemas/Model1'
Model1: '#/components/schemas/Model1'
Model2: '#/components/schemas/Model2'
Generated code with v6.7.0, perfectly fine for my needs.
Model1: {
template: "model1";
} & Omit<components["schemas"]["Document"], "template"> & {
data: {
page: number;
batch: {
sku: string;
name: string;
};
totalPages: number;
images: components["schemas"]["ImageUrlObject"][];
};
};
Generated code with v7.0.0
Model1: Omit<components["schemas"]["Document"], "template"> & {
data: {
page: number;
batch: {
sku: string;
name: string;
};
totalPages: number;
images: components["schemas"]["ImageUrlObject"][];
};
} & {
/**
* @description discriminator enum property added by openapi-typescript
* @enum {string}
*/
template: "model1";
} & {
/**
* @description discriminator enum property added by openapi-typescript
* @enum {string}
*/
template: "model2" | "Model1";
};
Thanks!
Checklist
- [ x] My OpenAPI schema passes the Redocly validator (
npx @redocly/cli@latest lint
) - I’m willing to open a PR (see CONTRIBUTING.md)