acacode / swagger-typescript-api

Generate the API Client for Fetch or Axios from an OpenAPI Specification
MIT License
3.38k stars 361 forks source link

Array fields always as any if type specified as array #893

Open hlavavit opened 3 months ago

hlavavit commented 3 months ago

I got this kind of property on my object

        permissions:
          type: 
            - array
          items:
            enum:
              - DEBUG
              - EDIT
            type: string

it end up being generated as

  permissions: any[];

but when i change it to

        permissions:
          type: array
          items:
            enum:
              - DEBUG
              - EDIT
            type: string

it suddenly works and generates as

permissions: ("DEBUG" | "EDIT")[];

Happens with objects as well not just enums.

And it happens with json format as well there it works with "type":"array" and does not with "type":["array"]

Its needed for nullable arrays for example "type":["array","null"] since nullable has been removed with 3.1