grantila / typeconv

Convert between JSON Schema, TypeScript, GraphQL, Open API and SureType
MIT License
421 stars 8 forks source link

Error when optional property redefined on extended objects as required #43

Open ChrisMBarr opened 4 months ago

ChrisMBarr commented 4 months ago

If I extend a type and mark an optional base property as required on the extended type like this:

export interface IBase {
  foo: string;
  bar?: string;
}

export interface IExtended extends IBase {
  other: string;
  bar: string; //this causes an error!
}

and I run this con the CLI

typeconv --from-type ts --to-type oapi --output-directory swagger-schemas --oapi-format json --oapi-version 3 \"interfaces/**/*.ts\"

It produces this error

Cannot read properties of undefined (reading 'length')