From dcff052c2a1094cac66904a87db36aeb66b1644c Mon Sep 17 00:00:00 2001 From: bharatkk-metron Date: Wed, 24 Jul 2024 10:42:53 +0530 Subject: [PATCH] linting error removed --- src/provider/SonarqubeClient.ts | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/src/provider/SonarqubeClient.ts b/src/provider/SonarqubeClient.ts index 3a1118e..40b1b9f 100644 --- a/src/provider/SonarqubeClient.ts +++ b/src/provider/SonarqubeClient.ts @@ -55,9 +55,9 @@ export class SonarqubeClient { } async fetchSystemInfo() { - return this.makeSingularRequest('/system/info') as Promise< - SonarqubeSystemInfo - >; + return this.makeSingularRequest( + '/system/info', + ) as Promise; } async iterateProjects( @@ -161,9 +161,9 @@ export class SonarqubeClient { } async fetchAuthenticationValidate(): Promise { - return this.makeSingularRequest('/authentication/validate') as Promise< - ValidationResponse - >; + return this.makeSingularRequest( + '/authentication/validate', + ) as Promise; } private async makeRequest( @@ -242,10 +242,22 @@ export class SonarqubeClient { const paginationQueryParms = PaginationQueryParams[endpointVersion]; + const sanitizedParams: Record = {}; + if (params) { + Object.keys(params).forEach((key) => { + const value = params[key]; + if (value !== undefined) { + sanitizedParams[key] = Array.isArray(value) + ? value.join(',') + : value; + } + }); + } + const searchParams = new URLSearchParams({ [paginationQueryParms.pageIndex]: String(page), [paginationQueryParms.pageSize]: String(ITEMS_PER_PAGE), - ...params, + ...sanitizedParams, }); const parametizedEndpoint = `${endpoint}?${searchParams.toString()}`;