docs(controllerClass, config)

Aplikuje dekoratory Swaggera do klasy kontrolera spoza jej pliku, jako efekt uboczny przy imporcie.

Sygnatura

Wywołaj to na najwyższym poziomie pliku *.controller.docs.ts, gdzie działa jako efekt uboczny przy imporcie.

Bezpieczeństwo typów

W pełni bezpieczne typowo: config.methods akceptuje wyłącznie klucze istniejące w klasie kontrolera. Literówki są wychwytywane w czasie kompilacji.

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

Pola config

  • config.classDecorators: ClassDecorator[], aplikowane do konstruktora klasy (np. ApiTags, ApiBearerAuth).
  • config.methods: Partial<Record<keyof T, MethodDecorator[]>>, tablice dekoratorów kluczowane nazwą metody, aplikowane w kolejności.
  • config.group: string, logiczna nazwa grupy dla rozszerzenia ReDoc x-tagGroups.
  • config.tags: string[], nazwy tagów powiązane z group. Muszą zgadzać się z tym, co przekazujesz do ApiTags().

Zachowanie w czasie działania

Nieistniejący klucz metody

Jeśli klucz metody nie istnieje w kontrolerze w czasie działania, zapisywane jest ostrzeżenie, a ten wpis jest pomijany, ale reszta pliku docs jest nadal stosowana.