acacode / acacode/swagger-typescript-api

additionalProperties management problem in Swagger 2

Open
#343 3 comments 0 reactions 1 assignee Claimed by @js2me View on GitHub
bug
Dominant language
TypeScript
Stars
4.1k
Forks
436
PR merge metrics
No merged PRs in 30d

Description

In swagger 2, additionalProperties are very limited. They didn't support the true and {} values.
To replace this they define it like this

```
MyObject:
type: object
properties:
id:
type: string
additionalProperties:
type: object
```

It works only because in java like words String, Boolean and Numbers are Objects

in swagger 2, it must be transpiled in

```
export interface MyObject {
id?: string;
[key: string]: {}; // or [key: string]: any
}
```

but for now it is transpiled in
```
export interface MyObject {
id?: string;
}
```

result is the same If I try to transpile below code
```
MyObject:
type: object
properties:
id:
type: string
additionalProperties: {}
```

The only case the correctly works is
```
MyObject:
type: object
properties:
id:
type: string
additionalProperties: true
```

Swagger file is correctly converted with Swager.io typescript generators

Is it possible to fix it ?

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.