refactor: Stop re-exporting types from @backstage/plugin-azure-devops-backend.

Signed-off-by: Marley Powell <Marley.Powell@exclaimer.com>
This commit is contained in:
Marley Powell
2021-11-08 14:55:07 +00:00
parent 236756d0f2
commit b4ab81cad9
11 changed files with 43 additions and 138 deletions
+3 -42
View File
@@ -4,13 +4,13 @@
```ts
import { Build } from 'azure-devops-node-api/interfaces/BuildInterfaces';
import { BuildResult } from 'azure-devops-node-api/interfaces/BuildInterfaces';
import { BuildStatus } from 'azure-devops-node-api/interfaces/BuildInterfaces';
import { Config } from '@backstage/config';
import express from 'express';
import { GitRepository } from 'azure-devops-node-api/interfaces/GitInterfaces';
import { Logger as Logger_2 } from 'winston';
import { PullRequestStatus } from 'azure-devops-node-api/interfaces/GitInterfaces';
import { PullRequest } from '@backstage/plugin-azure-devops-common';
import { PullRequestOptions } from '@backstage/plugin-azure-devops-common';
import { RepoBuild } from '@backstage/plugin-azure-devops-common';
import { WebApi } from 'azure-devops-node-api';
// Warning: (ae-missing-release-tag) "AzureDevOpsApi" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
@@ -29,8 +29,6 @@ export class AzureDevOpsApi {
projectName: string,
repoName: string,
): Promise<GitRepository>;
// Warning: (ae-forgotten-export) The symbol "PullRequestOptions" needs to be exported by the entry point index.d.ts
//
// (undocumented)
getPullRequests(
projectName: string,
@@ -45,48 +43,11 @@ export class AzureDevOpsApi {
): Promise<RepoBuild[]>;
}
export { BuildResult };
export { BuildStatus };
// Warning: (ae-missing-release-tag) "createRouter" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export function createRouter(options: RouterOptions): Promise<express.Router>;
// Warning: (ae-missing-release-tag) "PullRequest" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export type PullRequest = {
pullRequestId?: number;
repoName?: string;
title?: string;
uniqueName?: string;
createdBy?: string;
creationDate?: Date;
sourceRefName?: string;
targetRefName?: string;
status?: PullRequestStatus;
isDraft?: boolean;
link: string;
};
// Warning: (ae-missing-release-tag) "RepoBuild" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
export type RepoBuild = {
id?: number;
title: string;
link?: string;
status?: BuildStatus;
result?: BuildResult;
queueTime?: Date;
startTime?: Date;
finishTime?: Date;
source: string;
uniqueName?: string;
};
// Warning: (ae-missing-release-tag) "RouterOptions" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
@@ -22,6 +22,7 @@
"dependencies": {
"@backstage/backend-common": "^0.9.8",
"@backstage/config": "^0.1.11",
"@backstage/plugin-azure-devops-common": "^0.0.1",
"@types/express": "^4.17.6",
"azure-devops-node-api": "^11.0.1",
"express": "^4.17.1",
@@ -16,17 +16,21 @@
import {
Build,
DefinitionReference,
} from 'azure-devops-node-api/interfaces/BuildInterfaces';
import {
BuildResult,
BuildStatus,
GitPullRequest,
GitRepository,
PullRequest,
PullRequestStatus,
RepoBuild,
} from './types';
} from '@backstage/plugin-azure-devops-common';
import {
GitPullRequest,
GitRepository,
} from 'azure-devops-node-api/interfaces/GitInterfaces';
import { mappedPullRequest, mappedRepoBuild } from './AzureDevOpsApi';
import { DefinitionReference } from 'azure-devops-node-api/interfaces/BuildInterfaces';
import { IdentityRef } from 'azure-devops-node-api/interfaces/common/VSSInterfaces';
describe('AzureDevOpsApi', () => {
@@ -15,17 +15,19 @@
*/
import {
Build,
BuildResult,
BuildStatus,
GitPullRequest,
GitPullRequestSearchCriteria,
GitRepository,
PullRequest,
PullRequestOptions,
RepoBuild,
} from './types';
} from '@backstage/plugin-azure-devops-common';
import {
GitPullRequest,
GitPullRequestSearchCriteria,
GitRepository,
} from 'azure-devops-node-api/interfaces/GitInterfaces';
import { Build } from 'azure-devops-node-api/interfaces/BuildInterfaces';
import { Logger } from 'winston';
import { WebApi } from 'azure-devops-node-api';
@@ -15,5 +15,3 @@
*/
export { AzureDevOpsApi } from './AzureDevOpsApi';
export { BuildResult, BuildStatus } from './types';
export type { RepoBuild, PullRequest } from './types';
@@ -1,67 +0,0 @@
/*
* Copyright 2021 The Backstage Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import {
Build,
BuildResult,
BuildStatus,
} from 'azure-devops-node-api/interfaces/BuildInterfaces';
import {
GitPullRequest,
GitPullRequestSearchCriteria,
GitRepository,
PullRequestStatus,
} from 'azure-devops-node-api/interfaces/GitInterfaces';
export { BuildResult, BuildStatus, PullRequestStatus };
export type {
Build,
GitPullRequest,
GitPullRequestSearchCriteria,
GitRepository,
};
export type RepoBuild = {
id?: number;
title: string;
link?: string;
status?: BuildStatus;
result?: BuildResult;
queueTime?: Date;
startTime?: Date;
finishTime?: Date;
source: string;
uniqueName?: string;
};
export type PullRequest = {
pullRequestId?: number;
repoName?: string;
title?: string;
uniqueName?: string;
createdBy?: string;
creationDate?: Date;
sourceRefName?: string;
targetRefName?: string;
status?: PullRequestStatus;
isDraft?: boolean;
link: string;
};
export type PullRequestOptions = {
top: number;
status: PullRequestStatus;
};
+1 -2
View File
@@ -13,6 +13,5 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
export { AzureDevOpsApi, BuildResult, BuildStatus } from './api';
export type { RepoBuild, PullRequest } from './api';
export { AzureDevOpsApi } from './api';
export * from './service/router';
@@ -14,22 +14,22 @@
* limitations under the License.
*/
import { getVoidLogger } from '@backstage/backend-common';
import { ConfigReader } from '@backstage/config';
import express from 'express';
import request from 'supertest';
import { AzureDevOpsApi } from '../api';
import { createRouter } from './router';
import { PullRequest, RepoBuild } from '../api/types';
import {
GitRepository,
PullRequestStatus,
} from 'azure-devops-node-api/interfaces/GitInterfaces';
import {
Build,
BuildResult,
BuildStatus,
} from 'azure-devops-node-api/interfaces/BuildInterfaces';
PullRequest,
PullRequestStatus,
RepoBuild,
} from '@backstage/plugin-azure-devops-common';
import { AzureDevOpsApi } from '../api';
import { Build } from 'azure-devops-node-api/interfaces/BuildInterfaces';
import { ConfigReader } from '@backstage/config';
import { GitRepository } from 'azure-devops-node-api/interfaces/GitInterfaces';
import { createRouter } from './router';
import express from 'express';
import { getVoidLogger } from '@backstage/backend-common';
import request from 'supertest';
describe('createRouter', () => {
let azureDevOpsApi: jest.Mocked<AzureDevOpsApi>;
@@ -14,7 +14,10 @@
* limitations under the License.
*/
import { PullRequestOptions, PullRequestStatus } from '../api/types';
import {
PullRequestOptions,
PullRequestStatus,
} from '@backstage/plugin-azure-devops-common';
import { WebApi, getPersonalAccessTokenHandler } from 'azure-devops-node-api';
import { AzureDevOpsApi } from '../api';
@@ -14,7 +14,10 @@
* limitations under the License.
*/
import { RepoBuild, RepoBuildOptions } from '../api/types';
import {
RepoBuild,
RepoBuildOptions,
} from '@backstage/plugin-azure-devops-common';
import { AZURE_DEVOPS_DEFAULT_TOP } from '../constants';
import { Entity } from '@backstage/catalog-model';