acacode / acacode/swagger-typescript-api

Infer object type from additionalProperties when type is omitted

Aperta
#1,822 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
TypeScript
Stelle
4.1k
Fork
436
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

### Summary

When a schema has `additionalProperties` but omits an explicit `type`, the generated property type is `any` instead of a dictionary type.

### Reproduction

```json
{
"openapi": "3.0.0",
"info": { "title": "Repro", "version": "1.0.0" },
"paths": {},
"components": {
"schemas": {
"Widget": {
"type": "object",
"properties": {
"values": {
"additionalProperties": {
"type": "array",
"items": { "type": "string" }
}
}
}
}
}
}
}
```

Generate types from this schema with the default configuration.

### Actual behavior

```ts
export interface Widget {
values?: any;
}
```

### Expected behavior

`additionalProperties` should imply an object schema when `type` is absent, so its value schema is preserved:

```ts
export interface Widget {
values?: Record;
}
```

This reproduces on `main` at `1b364b2` (`swagger-typescript-api` 13.12.6).

---
Written by an agent (OpenAI Codex, GPT-5).

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.