UNPKG

@backstage-community/plugin-sonarqube

Version:
135 lines (124 loc) 5.68 kB
import { SonarQubeApi, FindingSummary } from '@backstage-community/plugin-sonarqube-react'; import * as _backstage_core_plugin_api from '@backstage/core-plugin-api'; import { DiscoveryApi, FetchApi } from '@backstage/core-plugin-api'; import * as _backstage_catalog_model from '@backstage/catalog-model'; import * as react_jsx_runtime from 'react/jsx-runtime'; import * as _backstage_core_components from '@backstage/core-components'; import { InfoCardVariants } from '@backstage/core-components'; import * as _backstage_core_plugin_api_alpha from '@backstage/core-plugin-api/alpha'; import { ReactNode } from 'react'; /** @public */ declare class SonarQubeClient implements SonarQubeApi { discoveryApi: DiscoveryApi; fetchApi: FetchApi; constructor(options: { discoveryApi: DiscoveryApi; fetchApi: FetchApi; }); private callApi; getFindingSummary({ componentKey, projectInstance, }?: { componentKey?: string; projectInstance?: string; }): Promise<FindingSummary | undefined>; settledResponseOf(responses: PromiseSettledResult<any>[]): Array<any>; getFindingSummaries(components: Array<{ projectInstance: string | undefined; componentKey: string; }>): Promise<Map<string, FindingSummary>>; } /** @public */ type DuplicationRating = { greaterThan: number; rating: '1.0' | '2.0' | '3.0' | '4.0' | '5.0'; }; /** @public */ declare const SonarQubeCard: (props: { variant?: InfoCardVariants; duplicationRatings?: DuplicationRating[]; missingAnnotationReadMoreUrl?: string; }) => react_jsx_runtime.JSX.Element; /** @public */ type SonarQubeContentPageProps = { title?: string; supportTitle?: string; missingAnnotationReadMoreUrl?: string; }; /** * @public */ type SonarOverviewProps = { relationType: string; entityKind: string; }; /** * @public */ declare const SonarQubeRelatedEntitiesOverview: (props: SonarOverviewProps) => react_jsx_runtime.JSX.Element; /** * @public */ type SonarQubeTableProps = { tableContent: any[] | undefined; title?: string; options?: any | undefined; emptyContent?: ReactNode; localization?: any; }; /** * @public */ declare const SonarQubeTable: ({ tableContent, title, options, emptyContent, localization, }: SonarQubeTableProps) => react_jsx_runtime.JSX.Element; /** * @public * * @deprecated use the same type from `@backstage-community/plugin-sonarqube-react` instead */ declare const isSonarQubeAvailable: (entity: _backstage_catalog_model.Entity) => boolean; /** * @public * * @deprecated use the same type from `@backstage-community/plugin-sonarqube-react` instead */ declare const SONARQUBE_PROJECT_KEY_ANNOTATION = "sonarqube.org/project-key"; /** @public */ declare const sonarQubePlugin: _backstage_core_plugin_api.BackstagePlugin<{}, {}, {}>; /** @public */ declare const EntitySonarQubeCard: (props: { variant?: _backstage_core_components.InfoCardVariants | undefined; duplicationRatings?: DuplicationRating[] | undefined; missingAnnotationReadMoreUrl?: string | undefined; }) => react_jsx_runtime.JSX.Element; /** @public */ declare const EntitySonarQubeContentPage: (props: SonarQubeContentPageProps) => react_jsx_runtime.JSX.Element; /** * @public */ declare const sonarqubeTranslationRef: _backstage_core_plugin_api_alpha.TranslationRef<"sonarqube", { readonly title: "SonarQube Dashboard"; readonly "sonarQubeCard.title": "Code Quality"; readonly "sonarQubeCard.deepLinkTitle": "View more"; readonly "sonarQubeCard.bugReportRatingCardTitle": "Bugs"; readonly "sonarQubeCard.vulnerabilitiesRatingCardTitle": "Vulnerabilities"; readonly "sonarQubeCard.codeSmellsRatingCardTitle": "Code Smells"; readonly "sonarQubeCard.hotspotsReviewedTitle": "Hotspots Reviewed"; readonly "sonarQubeCard.coverageRatingCardTitle": "Coverage"; readonly "sonarQubeCard.duplicationsRatingCard": "Duplications"; readonly "sonarQubeCard.qualityBadgeTooltip": "View SonarQube Dashboard"; readonly "sonarQubeCard.emptyState.title": "No information to display"; readonly "sonarQubeCard.emptyState.description": "There is no SonarQube project with key '{{ projectTitle }}', check that project exists and permissions."; readonly "sonarQubeCard.noSonarQubeError.hasAnnotation": "There is no SonarQube project with key '{{project}}'"; readonly "sonarQubeCard.noSonarQubeError.noAnnotation": "No SonarQube annotation found"; readonly "sonarQubeCard.qualityBadgeLabel.notComputed": "Not computed"; readonly "sonarQubeCard.qualityBadgeLabel.gatePassed": "Gate passed"; readonly "sonarQubeCard.qualityBadgeLabel.gateFailed": "Gate failed"; readonly "sonarQubeTable.columnsTitle.name": "Name"; readonly "sonarQubeTable.columnsTitle.vulnerabilities": "Vulnerabilities"; readonly "sonarQubeTable.columnsTitle.bugs": "Bugs"; readonly "sonarQubeTable.columnsTitle.coverage": "Coverage"; readonly "sonarQubeTable.columnsTitle.lastAnalysis": "Last Analysis"; readonly "sonarQubeTable.columnsTitle.qualityGate": "Quality Gate"; readonly "sonarQubeTable.columnsTitle.codeSmells": "Code Smells"; readonly "sonarQubeTable.columnsTitle.hotspotsReviewed": "Hotspots Reviewed"; readonly "sonarQubeTable.columnsTitle.duplications": "Duplications"; }>; export { type DuplicationRating, EntitySonarQubeCard, EntitySonarQubeContentPage, SONARQUBE_PROJECT_KEY_ANNOTATION, type SonarOverviewProps, SonarQubeCard, SonarQubeClient, type SonarQubeContentPageProps, SonarQubeRelatedEntitiesOverview, SonarQubeTable, type SonarQubeTableProps, isSonarQubeAvailable, sonarQubePlugin, sonarqubeTranslationRef };