diff --git a/plugins/azure-devops/src/api/AzureDevOpsClient.ts b/plugins/azure-devops/src/api/AzureDevOpsClient.ts index ec727f4973..cbcc496725 100644 --- a/plugins/azure-devops/src/api/AzureDevOpsClient.ts +++ b/plugins/azure-devops/src/api/AzureDevOpsClient.ts @@ -42,9 +42,15 @@ export class AzureDevOpsClient implements AzureDevOpsApi { repoName: string, options?: RepoBuildOptions, ): Promise<{ items: RepoBuild[] }> { - const items = await this.get( - `repo-builds/${projectName}/${repoName}?top=${options?.top}`, - ); + const queryString = new URLSearchParams(); + if (options?.top) { + queryString.append('top', options.top.toString()); + } + const urlSegment = `repo-builds/${encodeURIComponent( + projectName, + )}/${encodeURIComponent(repoName)}?${queryString}`; + + const items = await this.get(urlSegment); return { items }; } @@ -53,9 +59,18 @@ export class AzureDevOpsClient implements AzureDevOpsApi { repoName: string, options?: PullRequestOptions, ): Promise<{ items: PullRequest[] }> { - const items = await this.get( - `pull-requests/${projectName}/${repoName}?top=${options?.top}&status=${options?.status}`, - ); + const queryString = new URLSearchParams(); + if (options?.top) { + queryString.append('top', options.top.toString()); + } + if (options?.status) { + queryString.append('status', options.status.toString()); + } + const urlSegment = `pull-requests/${encodeURIComponent( + projectName, + )}/${encodeURIComponent(repoName)}?${queryString}`; + + const items = await this.get(urlSegment); return { items }; } diff --git a/plugins/azure-devops/src/components/PullRequestStatusButtonGroup/PullRequestStatusButtonGroup.tsx b/plugins/azure-devops/src/components/PullRequestStatusButtonGroup/PullRequestStatusButtonGroup.tsx index 23a8738adc..f516bfb0e5 100644 --- a/plugins/azure-devops/src/components/PullRequestStatusButtonGroup/PullRequestStatusButtonGroup.tsx +++ b/plugins/azure-devops/src/components/PullRequestStatusButtonGroup/PullRequestStatusButtonGroup.tsx @@ -20,46 +20,34 @@ import { PullRequestStatus } from '@backstage/plugin-azure-devops-common'; import React from 'react'; export const PullRequestStatusButtonGroup = ({ - pullRequestStatusState, - setPullRequestsStatusState, + status, + setStatus, }: { - pullRequestStatusState: PullRequestStatus; - setPullRequestsStatusState: (pullRequestStatus: PullRequestStatus) => void; + status: PullRequestStatus; + setStatus: (pullRequestStatus: PullRequestStatus) => void; }) => { return (