docs(controllerClass, config)

Wendet Swagger-Decorators auf eine Controller-Klasse an, außerhalb ihrer Datei, als Seiteneffekt beim Import.

Signatur

Ruf es auf oberster Ebene einer *.controller.docs.ts-Datei auf, wo es als Seiteneffekt beim Import läuft.

Typsicherheit

Vollständig typsicher: config.methods akzeptiert nur Keys, die auf der Controller-Klasse existieren. Tippfehler werden zur Compile-Zeit erkannt.

ts
docs(UsersController, {
  classDecorators: [ApiTags('users')],
  methods: {
    findAll: [...],    // ✔ exists on UsersController
    typoMethod: [...], // ✖ TypeScript error
  },
});

Config-Felder

  • config.classDecorators: ClassDecorator[], angewendet auf den Klassenkonstruktor (z. B. ApiTags, ApiBearerAuth).
  • config.methods: Partial<Record<keyof T, MethodDecorator[]>>, Decorator-Arrays nach Methodenname, in Reihenfolge angewendet.
  • config.group: string, logischer Gruppenname für ReDocs x-tagGroups-Erweiterung.
  • config.tags: string[], Tag-Namen, die mit group verknüpft sind. Müssen dem entsprechen, was du an ApiTags() übergibst.

Laufzeitverhalten

Nicht existierender Methoden-Key

Existiert ein Methoden-Key zur Laufzeit nicht auf dem Controller, wird eine Warnung geloggt und dieser Eintrag übersprungen – der Rest der Docs-Datei wird trotzdem angewendet.