From df441249b034dc700327f555bbc807c6fd4031a8 Mon Sep 17 00:00:00 2001 From: Pixo Date: Wed, 12 Jul 2023 12:42:07 +0200 Subject: [PATCH] [_]: Add log to trash get paginated items --- src/modules/trash/trash.controller.ts | 44 ++++++++++++++++++--------- 1 file changed, 30 insertions(+), 14 deletions(-) diff --git a/src/modules/trash/trash.controller.ts b/src/modules/trash/trash.controller.ts index 7dcc5df67..818f30c7e 100644 --- a/src/modules/trash/trash.controller.ts +++ b/src/modules/trash/trash.controller.ts @@ -61,6 +61,7 @@ export class TrashController { @Query('limit') limit: number, @Query('offset') offset: number, @Query('type') type: 'files' | 'folders', + @Res({ passthrough: true }) res: Response, ) { if (!limit || offset === undefined || !type) { throw new BadRequestException(); @@ -74,23 +75,38 @@ export class TrashController { throw new BadRequestException('Limit should be between 1 and 50'); } - let result: File[] | Folder[]; + try { + let result: File[] | Folder[]; - if (type === 'files') { - result = await this.fileUseCases.getFiles( - user.id, - { status: FileStatus.TRASHED }, - { limit, offset }, - ); - } else { - result = await this.folderUseCases.getFolders( - user.id, - { deleted: true, removed: false }, - { limit, offset }, + if (type === 'files') { + result = await this.fileUseCases.getFiles( + user.id, + { status: FileStatus.TRASHED }, + { limit, offset }, + ); + } else { + result = await this.folderUseCases.getFolders( + user.id, + { deleted: true, removed: false }, + { limit, offset }, + ); + } + + return { result }; + } catch (error) { + const { email, uuid } = user; + new Logger().error( + `[TRASH/GET_PAGINATED] ERROR: ${ + (error as Error).message + } USER: ${JSON.stringify({ + email, + uuid, + })} STACK: ${(error as Error).stack}`, ); - } + res.status(HttpStatus.INTERNAL_SERVER_ERROR); - return { result }; + return { error: 'Internal Server Error' }; + } } // @UseGuards(ThrottlerGuard)