From 0dbcc9a653cc590e5477cf44deed31ce6de482aa Mon Sep 17 00:00:00 2001
From: Philip Molares <philip.molares@udo.edu>
Date: Thu, 4 Feb 2021 13:44:08 +0100
Subject: [PATCH] Docs: Add api tags to group controller

For a better structure of the autogenerated apidoc website tags are used. Each Controller get it's own tag and will be put in a separate section.

See https://docs.nestjs.com/openapi/operations#tags

Signed-off-by: Philip Molares <philip.molares@udo.edu>
---
 src/api/private/tokens/tokens.controller.ts        | 2 ++
 src/api/public/me/me.controller.ts                 | 3 ++-
 src/api/public/media/media.controller.ts           | 3 ++-
 src/api/public/monitoring/monitoring.controller.ts | 3 ++-
 src/api/public/notes/notes.controller.ts           | 3 ++-
 5 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/src/api/private/tokens/tokens.controller.ts b/src/api/private/tokens/tokens.controller.ts
index e5aaf8e30..651982b13 100644
--- a/src/api/private/tokens/tokens.controller.ts
+++ b/src/api/private/tokens/tokens.controller.ts
@@ -18,7 +18,9 @@ import { AuthService } from '../../../auth/auth.service';
 import { TimestampMillis } from '../../../utils/timestamp';
 import { AuthTokenDto } from '../../../auth/auth-token.dto';
 import { AuthTokenWithSecretDto } from '../../../auth/auth-token-with-secret.dto';
+import { ApiTags } from '@nestjs/swagger';
 
+@ApiTags('tokens')
 @Controller('tokens')
 export class TokensController {
   constructor(
diff --git a/src/api/public/me/me.controller.ts b/src/api/public/me/me.controller.ts
index 2cb412f2b..89e8eef28 100644
--- a/src/api/public/me/me.controller.ts
+++ b/src/api/public/me/me.controller.ts
@@ -23,11 +23,12 @@ import { NoteMetadataDto } from '../../../notes/note-metadata.dto';
 import { NotesService } from '../../../notes/notes.service';
 import { UsersService } from '../../../users/users.service';
 import { TokenAuthGuard } from '../../../auth/token-auth.guard';
-import { ApiSecurity } from '@nestjs/swagger';
+import { ApiSecurity, ApiTags } from '@nestjs/swagger';
 import { HistoryEntryDto } from '../../../history/history-entry.dto';
 import { UserInfoDto } from '../../../users/user-info.dto';
 import { NotInDBError } from '../../../errors/errors';
 
+@ApiTags('me')
 @ApiSecurity('token')
 @Controller('me')
 export class MeController {
diff --git a/src/api/public/media/media.controller.ts b/src/api/public/media/media.controller.ts
index c1c211063..436e87b4c 100644
--- a/src/api/public/media/media.controller.ts
+++ b/src/api/public/media/media.controller.ts
@@ -28,9 +28,10 @@ import { ConsoleLoggerService } from '../../../logger/console-logger.service';
 import { MediaService } from '../../../media/media.service';
 import { MulterFile } from '../../../media/multer-file.interface';
 import { TokenAuthGuard } from '../../../auth/token-auth.guard';
-import { ApiSecurity } from '@nestjs/swagger';
+import { ApiSecurity, ApiTags } from '@nestjs/swagger';
 import { MediaUploadUrlDto } from '../../../media/media-upload-url.dto';
 
+@ApiTags('media')
 @ApiSecurity('token')
 @Controller('media')
 export class MediaController {
diff --git a/src/api/public/monitoring/monitoring.controller.ts b/src/api/public/monitoring/monitoring.controller.ts
index d90b81117..4d561f0a3 100644
--- a/src/api/public/monitoring/monitoring.controller.ts
+++ b/src/api/public/monitoring/monitoring.controller.ts
@@ -7,9 +7,10 @@
 import { Controller, Get, UseGuards } from '@nestjs/common';
 import { MonitoringService } from '../../../monitoring/monitoring.service';
 import { TokenAuthGuard } from '../../../auth/token-auth.guard';
-import { ApiSecurity } from '@nestjs/swagger';
+import { ApiSecurity, ApiTags } from '@nestjs/swagger';
 import { ServerStatusDto } from '../../../monitoring/server-status.dto';
 
+@ApiTags('monitoring')
 @ApiSecurity('token')
 @Controller('monitoring')
 export class MonitoringController {
diff --git a/src/api/public/notes/notes.controller.ts b/src/api/public/notes/notes.controller.ts
index b4f53e01c..e17bf4e98 100644
--- a/src/api/public/notes/notes.controller.ts
+++ b/src/api/public/notes/notes.controller.ts
@@ -27,13 +27,14 @@ import { NotesService } from '../../../notes/notes.service';
 import { RevisionsService } from '../../../revisions/revisions.service';
 import { MarkdownBody } from '../../utils/markdownbody-decorator';
 import { TokenAuthGuard } from '../../../auth/token-auth.guard';
-import { ApiSecurity } from '@nestjs/swagger';
+import { ApiSecurity, ApiTags } from '@nestjs/swagger';
 import { HistoryService } from '../../../history/history.service';
 import { NoteDto } from '../../../notes/note.dto';
 import { NoteMetadataDto } from '../../../notes/note-metadata.dto';
 import { RevisionMetadataDto } from '../../../revisions/revision-metadata.dto';
 import { RevisionDto } from '../../../revisions/revision.dto';
 
+@ApiTags('notes')
 @ApiSecurity('token')
 @Controller('notes')
 export class NotesController {