diff --git a/plugins/pagerduty/api-report.md b/plugins/pagerduty/api-report.md index b460086976..854b7b6f29 100644 --- a/plugins/pagerduty/api-report.md +++ b/plugins/pagerduty/api-report.md @@ -7,6 +7,7 @@ import { ApiRef } from '@backstage/core-plugin-api'; import { BackstagePlugin } from '@backstage/core-plugin-api'; +import { CardExtensionProps } from '@backstage/plugin-home'; import { ConfigApi } from '@backstage/core-plugin-api'; import { DiscoveryApi } from '@backstage/core-plugin-api'; import { Entity } from '@backstage/catalog-model'; @@ -14,7 +15,14 @@ import { FetchApi } from '@backstage/core-plugin-api'; import { ReactNode } from 'react'; // @public (undocumented) -export const EntityPagerDutyCard: (props: PagerDutyCardProps) => JSX.Element; +export const EntityPagerDutyCard: ( + props: EntityPagerDutyCardProps, +) => JSX.Element; + +// @public (undocumented) +export type EntityPagerDutyCardProps = { + readOnly?: boolean; +}; // @public (undocumented) const isPluginApplicableToEntity: (entity: Entity) => boolean; @@ -31,6 +39,9 @@ export interface PagerDutyApi { ): Promise; getOnCallByPolicyId(policyId: string): Promise; getServiceByEntity(entity: Entity): Promise; + getServiceByPagerDutyEntity( + pagerDutyEntity: PagerDutyEntity, + ): Promise; triggerAlarm(request: PagerDutyTriggerAlarmRequest): Promise; } @@ -44,14 +55,6 @@ export type PagerDutyAssignee = { html_url: string; }; -// @public (undocumented) -export const PagerDutyCard: (props: PagerDutyCardProps) => JSX.Element; - -// @public (undocumented) -export type PagerDutyCardProps = { - readOnly?: boolean; -}; - // @public (undocumented) export type PagerDutyChangeEvent = { id: string; @@ -98,6 +101,10 @@ export class PagerDutyClient implements PagerDutyApi { // (undocumented) getServiceByEntity(entity: Entity): Promise; // (undocumented) + getServiceByPagerDutyEntity( + pagerDutyEntity: PagerDutyEntity, + ): Promise; + // (undocumented) triggerAlarm(request: PagerDutyTriggerAlarmRequest): Promise; } @@ -119,6 +126,16 @@ export type PagerDutyEntity = { name: string; }; +// @public (undocumented) +export const PagerDutyHomepageCard: ( + props: CardExtensionProps, +) => JSX.Element; + +// @public (undocumented) +export type PagerDutyHomepageCardProps = PagerDutyEntity & { + readOnly?: boolean; +}; + // @public (undocumented) export type PagerDutyIncident = { id: string; diff --git a/plugins/pagerduty/src/components/EntityPagerDutyCard/index.tsx b/plugins/pagerduty/src/components/EntityPagerDutyCard/index.tsx index e9e70e8f1b..50e6f3a096 100644 --- a/plugins/pagerduty/src/components/EntityPagerDutyCard/index.tsx +++ b/plugins/pagerduty/src/components/EntityPagerDutyCard/index.tsx @@ -28,12 +28,12 @@ export const isPluginApplicableToEntity = (entity: Entity) => ); /** @public */ -export type PagerDutyCardProps = { +export type EntityPagerDutyCardProps = { readOnly?: boolean; }; /** @public */ -export const EntityPagerDutyCard = (props: PagerDutyCardProps) => { +export const EntityPagerDutyCard = (props: EntityPagerDutyCardProps) => { const { readOnly } = props; const { entity } = useEntity(); const pagerDutyEntity = getPagerDutyEntity(entity); diff --git a/plugins/pagerduty/src/components/PagerDutyHomepageCard/Content.tsx b/plugins/pagerduty/src/components/PagerDutyHomepageCard/Content.tsx index 479e1f621d..017c83e564 100644 --- a/plugins/pagerduty/src/components/PagerDutyHomepageCard/Content.tsx +++ b/plugins/pagerduty/src/components/PagerDutyHomepageCard/Content.tsx @@ -19,11 +19,11 @@ import { PagerDutyEntity } from '../../types'; import { PagerDutyCard } from '../PagerDutyCard'; /** @public */ -export type PagerDutyCardProps = PagerDutyEntity & { +export type PagerDutyHomepageCardProps = PagerDutyEntity & { readOnly?: boolean; }; /** @public */ -export const Content = (props: PagerDutyCardProps) => { +export const Content = (props: PagerDutyHomepageCardProps) => { return ; }; diff --git a/plugins/pagerduty/src/components/PagerDutyHomepageCard/index.ts b/plugins/pagerduty/src/components/PagerDutyHomepageCard/index.ts index fdbeb7cb70..834c01199f 100644 --- a/plugins/pagerduty/src/components/PagerDutyHomepageCard/index.ts +++ b/plugins/pagerduty/src/components/PagerDutyHomepageCard/index.ts @@ -14,3 +14,4 @@ * limitations under the License. */ export { Content } from './Content'; +export type { PagerDutyHomepageCardProps } from './Content'; diff --git a/plugins/pagerduty/src/components/index.ts b/plugins/pagerduty/src/components/index.ts index cd093498d1..892290e401 100644 --- a/plugins/pagerduty/src/components/index.ts +++ b/plugins/pagerduty/src/components/index.ts @@ -23,9 +23,8 @@ export type { PagerDutyUser, } from './types'; -export type { PagerDutyCardProps } from './PagerDutyCard'; - -export { PagerDutyCard } from './PagerDutyCard'; +export type { EntityPagerDutyCardProps } from './EntityPagerDutyCard'; +export type { PagerDutyHomepageCardProps } from './PagerDutyHomepageCard'; export { isPluginApplicableToEntity, diff --git a/plugins/pagerduty/src/plugin.ts b/plugins/pagerduty/src/plugin.ts index 28ed6861b6..b31c2fdbd3 100644 --- a/plugins/pagerduty/src/plugin.ts +++ b/plugins/pagerduty/src/plugin.ts @@ -24,7 +24,7 @@ import { createComponentExtension, } from '@backstage/core-plugin-api'; import { createCardExtension } from '@backstage/plugin-home'; -import { PagerDutyCardProps } from './components/PagerDutyHomepageCard/Content'; +import { PagerDutyHomepageCardProps } from './components/PagerDutyHomepageCard/Content'; export const rootRouteRef = createRouteRef({ id: 'pagerduty', @@ -69,7 +69,7 @@ export const homePlugin = createPlugin({ /** @public */ export const PagerDutyHomepageCard = homePlugin.provide( - createCardExtension({ + createCardExtension({ name: 'PagerDutyHomepageCard', title: 'Pager Duty Homepage Card', components: () => import('./components/PagerDutyHomepageCard'),