From 3e6eca178e2aef3a4d0e1899b680c1a3c3d83c4b Mon Sep 17 00:00:00 2001 From: Aftab3008 Date: Fri, 3 Jul 2026 00:27:06 +0530 Subject: [PATCH] Improve: improve the parsing of isNaN using built in nestjs handlers --- apps/api/src/app/admin/admin.controller.ts | 9 +++++---- .../asset-profiles/asset-profiles.controller.ts | 9 +++++---- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/apps/api/src/app/admin/admin.controller.ts b/apps/api/src/app/admin/admin.controller.ts index a6f6e8b6f..019468dfd 100644 --- a/apps/api/src/app/admin/admin.controller.ts +++ b/apps/api/src/app/admin/admin.controller.ts @@ -40,6 +40,7 @@ import { Inject, Logger, Param, + ParseIntPipe, Patch, Post, Put, @@ -319,12 +320,12 @@ export class AdminController { @HasPermission(permissions.accessAdminControl) @UseGuards(AuthGuard('jwt'), HasPermissionGuard) public async getUsers( - @Query('skip') skip?: number, - @Query('take') take?: number + @Query('skip', new ParseIntPipe({ optional: true })) skip?: number, + @Query('take', new ParseIntPipe({ optional: true })) take?: number ): Promise { return this.adminService.getUsers({ - skip: isNaN(skip) ? undefined : skip, - take: isNaN(take) ? undefined : take + skip, + take }); } diff --git a/apps/api/src/app/endpoints/asset-profiles/asset-profiles.controller.ts b/apps/api/src/app/endpoints/asset-profiles/asset-profiles.controller.ts index fcddb0bc3..0ad94890d 100644 --- a/apps/api/src/app/endpoints/asset-profiles/asset-profiles.controller.ts +++ b/apps/api/src/app/endpoints/asset-profiles/asset-profiles.controller.ts @@ -22,6 +22,7 @@ import { HttpException, Inject, Param, + ParseIntPipe, Patch, Query, UseGuards, @@ -51,10 +52,10 @@ export class AssetProfilesController { @Query('dataSource') filterByDataSource?: string, @Query('presetId') presetId?: MarketDataPreset, @Query('query') filterBySearchQuery?: string, - @Query('skip') skip?: number, + @Query('skip', new ParseIntPipe({ optional: true })) skip?: number, @Query('sortColumn') sortColumn?: string, @Query('sortDirection') sortDirection?: Prisma.SortOrder, - @Query('take') take?: number + @Query('take', new ParseIntPipe({ optional: true })) take?: number ): Promise { const filters = this.apiService.buildFiltersFromQueryParams({ filterByAssetSubClasses, @@ -67,8 +68,8 @@ export class AssetProfilesController { presetId, sortColumn, sortDirection, - skip: isNaN(skip) ? undefined : skip, - take: isNaN(take) ? undefined : take + skip, + take }); }