diff --git a/packages/app-next-example-plugin/api-report.md b/packages/app-next-example-plugin/api-report.md index 06d325b844..3f8b821559 100644 --- a/packages/app-next-example-plugin/api-report.md +++ b/packages/app-next-example-plugin/api-report.md @@ -40,6 +40,11 @@ const examplePlugin: FrontendPlugin< } >; inputs: {}; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; } >; diff --git a/packages/frontend-plugin-api/api-report.md b/packages/frontend-plugin-api/api-report.md index fc62582af0..1b202098cb 100644 --- a/packages/frontend-plugin-api/api-report.md +++ b/packages/frontend-plugin-api/api-report.md @@ -453,6 +453,7 @@ export function createComponentExtension(options: { } >; }; + params: never; kind: 'component'; namespace: undefined; name: string; @@ -520,6 +521,7 @@ export function createExtension< >; output: UOutput; inputs: TInputs; + params: never; kind: string | undefined extends TKind ? undefined : TKind; namespace: string | undefined extends TNamespace ? undefined : TNamespace; name: string | undefined extends TName ? undefined : TName; @@ -569,6 +571,7 @@ export function createExtension< >; output: UOutput; inputs: TInputs; + params: never; kind: string | undefined extends TKind ? undefined : TKind; namespace: string | undefined extends TNamespace ? undefined : TNamespace; name: string | undefined extends TName ? undefined : TName; @@ -983,6 +986,7 @@ export interface ExtensionBlueprint< configInput: T['configInput']; output: T['output']; inputs: T['inputs']; + params: T['params']; }>; // @deprecated (undocumented) make< @@ -1093,6 +1097,7 @@ export interface ExtensionBlueprint< kind: T['kind']; namespace: undefined; name: string | undefined extends TNewName ? T['name'] : TNewName; + params: T['params']; }>; // @deprecated (undocumented) makeWithOverrides< @@ -1306,45 +1311,60 @@ export type ExtensionDefinition< >; }, >( - args: { - attachTo?: { - id: string; - input: string; - }; - disabled?: boolean; - inputs?: TExtraInputs & { - [KName in keyof T['inputs']]?: `Error: Input '${KName & - string}' is already defined in parent definition`; - }; - output?: Array; - config?: { - schema: TExtensionConfigSchema & { - [KName in keyof T['config']]?: `Error: Config key '${KName & - string}' is already defined in parent schema`; + args: Expand< + { + attachTo?: { + id: string; + input: string; }; - }; - factory?( - originalFactory: (context?: { - config?: T['config']; - inputs?: ResolveInputValueOverrides>; - }) => ExtensionDataContainer>, - context: { - node: AppNode; - apis: ApiHolder; - config: T['config'] & { - [key in keyof TExtensionConfigSchema]: z.infer< - ReturnType - >; + disabled?: boolean; + inputs?: TExtraInputs & { + [KName in keyof T['inputs']]?: `Error: Input '${KName & + string}' is already defined in parent definition`; + }; + output?: Array; + config?: { + schema: TExtensionConfigSchema & { + [KName in keyof T['config']]?: `Error: Config key '${KName & + string}' is already defined in parent schema`; }; - inputs: Expand>; - }, - ): Iterable; - } & VerifyExtensionFactoryOutput< - AnyExtensionDataRef extends UNewOutput - ? NonNullable - : UNewOutput, - UFactoryOutput - >, + }; + factory?( + originalFactory: ( + context?: Expand< + { + config?: T['config']; + inputs?: ResolveInputValueOverrides>; + } & ([T['params']] extends [never] + ? {} + : { + params?: Partial; + }) + >, + ) => ExtensionDataContainer>, + context: { + node: AppNode; + apis: ApiHolder; + config: T['config'] & { + [key in keyof TExtensionConfigSchema]: z.infer< + ReturnType + >; + }; + inputs: Expand>; + }, + ): Iterable; + } & ([T['params']] extends [never] + ? {} + : { + params?: Partial; + }) + > & + VerifyExtensionFactoryOutput< + AnyExtensionDataRef extends UNewOutput + ? NonNullable + : UNewOutput, + UFactoryOutput + >, ): ExtensionDefinition<{ kind: T['kind']; namespace: T['namespace']; @@ -1388,6 +1408,7 @@ export type ExtensionDefinitionParameters = { } >; }; + params?: object; }; // @public (undocumented) diff --git a/plugins/api-docs/api-report-alpha.md b/plugins/api-docs/api-report-alpha.md index bb2da7bc0b..9800406be3 100644 --- a/plugins/api-docs/api-report-alpha.md +++ b/plugins/api-docs/api-report-alpha.md @@ -41,6 +41,11 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + title: string; + icon: IconComponent; + routeRef: RouteRef; + }; }>; 'api:api-docs/config': ExtensionDefinition<{ kind: 'api'; @@ -54,6 +59,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'page:api-docs': ExtensionDefinition<{ config: { @@ -92,6 +100,11 @@ const _default: FrontendPlugin< kind: 'page'; namespace: undefined; name: undefined; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; 'entity-card:api-docs/has-apis': ExtensionDefinition<{ kind: 'entity-card'; @@ -124,6 +137,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:api-docs/definition': ExtensionDefinition<{ kind: 'entity-card'; @@ -156,6 +173,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:api-docs/consumed-apis': ExtensionDefinition<{ kind: 'entity-card'; @@ -188,6 +209,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:api-docs/provided-apis': ExtensionDefinition<{ kind: 'entity-card'; @@ -220,6 +245,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:api-docs/consuming-components': ExtensionDefinition<{ kind: 'entity-card'; @@ -252,6 +281,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:api-docs/providing-components': ExtensionDefinition<{ kind: 'entity-card'; @@ -284,6 +317,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-content:api-docs/definition': ExtensionDefinition<{ kind: 'entity-content'; @@ -333,6 +370,13 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + defaultPath: string; + defaultTitle: string; + routeRef?: RouteRef | undefined; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-content:api-docs/apis': ExtensionDefinition<{ kind: 'entity-content'; @@ -382,6 +426,13 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + defaultPath: string; + defaultTitle: string; + routeRef?: RouteRef | undefined; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; } >; diff --git a/plugins/app-visualizer/api-report.md b/plugins/app-visualizer/api-report.md index e542674845..3f3813f5ee 100644 --- a/plugins/app-visualizer/api-report.md +++ b/plugins/app-visualizer/api-report.md @@ -41,6 +41,11 @@ const visualizerPlugin: FrontendPlugin< } >; inputs: {}; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; 'nav-item:app-visualizer': ExtensionDefinition<{ kind: 'nav-item'; @@ -58,6 +63,11 @@ const visualizerPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + title: string; + icon: IconComponent; + routeRef: RouteRef; + }; }>; } >; diff --git a/plugins/app/api-report.md b/plugins/app/api-report.md index 6f2e6e0463..e6ef06eebf 100644 --- a/plugins/app/api-report.md +++ b/plugins/app/api-report.md @@ -46,6 +46,7 @@ const appPlugin: FrontendPlugin< } >; }; + params: never; kind: undefined; namespace: undefined; name: undefined; @@ -62,6 +63,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'app/layout': ExtensionDefinition<{ config: {}; @@ -87,6 +91,7 @@ const appPlugin: FrontendPlugin< } >; }; + params: never; kind: undefined; namespace: undefined; name: 'layout'; @@ -130,6 +135,7 @@ const appPlugin: FrontendPlugin< } >; }; + params: never; kind: undefined; namespace: undefined; name: 'nav'; @@ -195,6 +201,7 @@ const appPlugin: FrontendPlugin< } >; }; + params: never; kind: undefined; namespace: undefined; name: 'root'; @@ -224,6 +231,7 @@ const appPlugin: FrontendPlugin< } >; }; + params: never; kind: undefined; namespace: undefined; name: 'routes'; @@ -248,6 +256,9 @@ const appPlugin: FrontendPlugin< kind: 'api'; namespace: undefined; name: 'app-theme'; + params: { + factory: AnyApiFactory; + }; }>; 'theme:app/light': ExtensionDefinition<{ kind: 'theme'; @@ -257,6 +268,9 @@ const appPlugin: FrontendPlugin< configInput: {}; output: ConfigurableExtensionDataRef; inputs: {}; + params: { + theme: AppTheme; + }; }>; 'theme:app/dark': ExtensionDefinition<{ kind: 'theme'; @@ -266,6 +280,9 @@ const appPlugin: FrontendPlugin< configInput: {}; output: ConfigurableExtensionDataRef; inputs: {}; + params: { + theme: AppTheme; + }; }>; 'api:app/components': ExtensionDefinition<{ config: {}; @@ -294,6 +311,9 @@ const appPlugin: FrontendPlugin< kind: 'api'; namespace: undefined; name: 'components'; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/icons': ExtensionDefinition<{ config: {}; @@ -321,6 +341,9 @@ const appPlugin: FrontendPlugin< kind: 'api'; namespace: undefined; name: 'icons'; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/feature-flags': ExtensionDefinition<{ kind: 'api'; @@ -334,6 +357,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/translations': ExtensionDefinition<{ config: {}; @@ -366,6 +392,9 @@ const appPlugin: FrontendPlugin< kind: 'api'; namespace: undefined; name: 'translations'; + params: { + factory: AnyApiFactory; + }; }>; 'app-root-element:app/oauth-request-dialog': ExtensionDefinition<{ kind: 'app-root-element'; @@ -379,6 +408,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + element: JSX.Element | (() => JSX.Element); + }; }>; 'app-root-element:app/alert-display': ExtensionDefinition<{ config: { @@ -414,6 +446,9 @@ const appPlugin: FrontendPlugin< kind: 'app-root-element'; namespace: undefined; name: 'alert-display'; + params: { + element: JSX.Element | (() => JSX.Element); + }; }>; 'api:app/discovery': ExtensionDefinition<{ kind: 'api'; @@ -427,6 +462,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/alert': ExtensionDefinition<{ kind: 'api'; @@ -440,6 +478,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/analytics': ExtensionDefinition<{ kind: 'api'; @@ -453,6 +494,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/error': ExtensionDefinition<{ kind: 'api'; @@ -466,6 +510,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/storage': ExtensionDefinition<{ kind: 'api'; @@ -479,6 +526,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/fetch': ExtensionDefinition<{ kind: 'api'; @@ -492,6 +542,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/oauth-request': ExtensionDefinition<{ kind: 'api'; @@ -505,6 +558,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/google-auth': ExtensionDefinition<{ kind: 'api'; @@ -518,6 +574,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/microsoft-auth': ExtensionDefinition<{ kind: 'api'; @@ -531,6 +590,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/github-auth': ExtensionDefinition<{ kind: 'api'; @@ -544,6 +606,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/okta-auth': ExtensionDefinition<{ kind: 'api'; @@ -557,6 +622,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/gitlab-auth': ExtensionDefinition<{ kind: 'api'; @@ -570,6 +638,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/onelogin-auth': ExtensionDefinition<{ kind: 'api'; @@ -583,6 +654,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/bitbucket-auth': ExtensionDefinition<{ kind: 'api'; @@ -596,6 +670,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/bitbucket-server-auth': ExtensionDefinition<{ kind: 'api'; @@ -609,6 +686,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/atlassian-auth': ExtensionDefinition<{ kind: 'api'; @@ -622,6 +702,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/vmware-cloud-auth': ExtensionDefinition<{ kind: 'api'; @@ -635,6 +718,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:app/permission': ExtensionDefinition<{ kind: 'api'; @@ -648,6 +734,9 @@ const appPlugin: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; } >; diff --git a/plugins/catalog-graph/api-report-alpha.md b/plugins/catalog-graph/api-report-alpha.md index 65f8af3764..67b1478597 100644 --- a/plugins/catalog-graph/api-report-alpha.md +++ b/plugins/catalog-graph/api-report-alpha.md @@ -91,6 +91,10 @@ const _default: FrontendPlugin< kind: 'entity-card'; namespace: undefined; name: 'relations'; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'page:catalog-graph': ExtensionDefinition<{ config: { @@ -153,6 +157,11 @@ const _default: FrontendPlugin< kind: 'page'; namespace: undefined; name: undefined; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; } >; diff --git a/plugins/catalog-import/api-report-alpha.md b/plugins/catalog-import/api-report-alpha.md index 3eed9ce3e4..6c3e80a477 100644 --- a/plugins/catalog-import/api-report-alpha.md +++ b/plugins/catalog-import/api-report-alpha.md @@ -30,6 +30,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'page:catalog-import': ExtensionDefinition<{ kind: 'page'; @@ -56,6 +59,11 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; } >; diff --git a/plugins/catalog/api-report-alpha.md b/plugins/catalog/api-report-alpha.md index 62e631dd4a..c6b4a02871 100644 --- a/plugins/catalog/api-report-alpha.md +++ b/plugins/catalog/api-report-alpha.md @@ -20,6 +20,7 @@ import { JSX as JSX_2 } from 'react'; import { RouteRef } from '@backstage/frontend-plugin-api'; import { SearchResultItemExtensionComponent } from '@backstage/plugin-search-react/alpha'; import { SearchResultItemExtensionPredicate } from '@backstage/plugin-search-react/alpha'; +import { SearchResultListItemBlueprintParams } from '@backstage/plugin-search-react/alpha'; import { TranslationRef } from '@backstage/core-plugin-api/alpha'; // @alpha @@ -158,6 +159,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'nav-item:catalog': ExtensionDefinition<{ kind: 'nav-item'; @@ -175,6 +179,11 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + title: string; + icon: IconComponent; + routeRef: RouteRef; + }; }>; 'api:catalog/starred-entities': ExtensionDefinition<{ kind: 'api'; @@ -188,6 +197,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:catalog/entity-presentation': ExtensionDefinition<{ kind: 'api'; @@ -201,6 +213,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'entity-card:catalog/about': ExtensionDefinition<{ kind: 'entity-card'; @@ -229,6 +244,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:catalog/links': ExtensionDefinition<{ kind: 'entity-card'; @@ -257,6 +276,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:catalog/labels': ExtensionDefinition<{ kind: 'entity-card'; @@ -285,6 +308,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:catalog/depends-on-components': ExtensionDefinition<{ kind: 'entity-card'; @@ -313,6 +340,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:catalog/depends-on-resources': ExtensionDefinition<{ kind: 'entity-card'; @@ -341,6 +372,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:catalog/has-components': ExtensionDefinition<{ kind: 'entity-card'; @@ -369,6 +404,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:catalog/has-resources': ExtensionDefinition<{ kind: 'entity-card'; @@ -397,6 +436,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:catalog/has-subcomponents': ExtensionDefinition<{ kind: 'entity-card'; @@ -425,6 +468,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:catalog/has-subdomains': ExtensionDefinition<{ kind: 'entity-card'; @@ -453,6 +500,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:catalog/has-systems': ExtensionDefinition<{ kind: 'entity-card'; @@ -481,6 +532,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-content:catalog/overview': ExtensionDefinition<{ config: { @@ -548,6 +603,13 @@ const _default: FrontendPlugin< kind: 'entity-content'; namespace: undefined; name: 'overview'; + params: { + loader: () => Promise; + defaultPath: string; + defaultTitle: string; + routeRef?: RouteRef | undefined; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'catalog-filter:catalog/tag': ExtensionDefinition<{ kind: 'catalog-filter'; @@ -561,6 +623,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + loader: () => Promise; + }; }>; 'catalog-filter:catalog/kind': ExtensionDefinition<{ config: { @@ -586,6 +651,9 @@ const _default: FrontendPlugin< kind: 'catalog-filter'; namespace: undefined; name: 'kind'; + params: { + loader: () => Promise; + }; }>; 'catalog-filter:catalog/type': ExtensionDefinition<{ kind: 'catalog-filter'; @@ -599,6 +667,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + loader: () => Promise; + }; }>; 'catalog-filter:catalog/mode': ExtensionDefinition<{ config: { @@ -624,6 +695,9 @@ const _default: FrontendPlugin< kind: 'catalog-filter'; namespace: undefined; name: 'mode'; + params: { + loader: () => Promise; + }; }>; 'catalog-filter:catalog/namespace': ExtensionDefinition<{ kind: 'catalog-filter'; @@ -637,6 +711,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + loader: () => Promise; + }; }>; 'catalog-filter:catalog/lifecycle': ExtensionDefinition<{ kind: 'catalog-filter'; @@ -650,6 +727,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + loader: () => Promise; + }; }>; 'catalog-filter:catalog/processing-status': ExtensionDefinition<{ kind: 'catalog-filter'; @@ -663,6 +743,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + loader: () => Promise; + }; }>; 'catalog-filter:catalog/list': ExtensionDefinition<{ config: { @@ -688,6 +771,9 @@ const _default: FrontendPlugin< kind: 'catalog-filter'; namespace: undefined; name: 'list'; + params: { + loader: () => Promise; + }; }>; 'page:catalog': ExtensionDefinition<{ config: { @@ -718,6 +804,11 @@ const _default: FrontendPlugin< kind: 'page'; namespace: undefined; name: undefined; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; 'page:catalog/entity': ExtensionDefinition<{ config: { @@ -775,6 +866,11 @@ const _default: FrontendPlugin< kind: 'page'; namespace: undefined; name: 'entity'; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; 'search-result-list-item:catalog': ExtensionDefinition<{ kind: 'search-result-list-item'; @@ -795,6 +891,7 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: SearchResultListItemBlueprintParams; }>; } >; diff --git a/plugins/devtools/api-report-alpha.md b/plugins/devtools/api-report-alpha.md index 7fb16734f1..9a9bbbb463 100644 --- a/plugins/devtools/api-report-alpha.md +++ b/plugins/devtools/api-report-alpha.md @@ -31,6 +31,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'page:devtools': ExtensionDefinition<{ kind: 'page'; @@ -57,6 +60,11 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; 'nav-item:devtools': ExtensionDefinition<{ kind: 'nav-item'; @@ -74,6 +82,11 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + title: string; + icon: IconComponent; + routeRef: RouteRef; + }; }>; } >; diff --git a/plugins/home/api-report-alpha.md b/plugins/home/api-report-alpha.md index 7b4b157eb2..71aa85d0f5 100644 --- a/plugins/home/api-report-alpha.md +++ b/plugins/home/api-report-alpha.md @@ -62,6 +62,11 @@ const _default: FrontendPlugin< kind: 'page'; namespace: undefined; name: undefined; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; } >; diff --git a/plugins/kubernetes/api-report-alpha.md b/plugins/kubernetes/api-report-alpha.md index 852a5c6c1a..4ffdc36a96 100644 --- a/plugins/kubernetes/api-report-alpha.md +++ b/plugins/kubernetes/api-report-alpha.md @@ -33,6 +33,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'page:kubernetes': ExtensionDefinition<{ kind: 'page'; @@ -55,6 +58,11 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; 'entity-content:kubernetes/kubernetes': ExtensionDefinition<{ kind: 'entity-content'; @@ -100,6 +108,13 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + defaultPath: string; + defaultTitle: string; + routeRef?: RouteRef | undefined; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'api:kubernetes/proxy': ExtensionDefinition<{ kind: 'api'; @@ -113,6 +128,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:kubernetes/auth-providers': ExtensionDefinition<{ kind: 'api'; @@ -126,6 +144,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'api:kubernetes/cluster-link-formatter': ExtensionDefinition<{ kind: 'api'; @@ -139,6 +160,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; } >; diff --git a/plugins/org/api-report-alpha.md b/plugins/org/api-report-alpha.md index a8c6bd70ec..5a88d229ce 100644 --- a/plugins/org/api-report-alpha.md +++ b/plugins/org/api-report-alpha.md @@ -48,6 +48,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:org/members-list': ExtensionDefinition<{ kind: 'entity-card'; @@ -80,6 +84,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:org/ownership': ExtensionDefinition<{ kind: 'entity-card'; @@ -112,6 +120,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'entity-card:org/user-profile': ExtensionDefinition<{ kind: 'entity-card'; @@ -144,6 +156,10 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + loader: () => Promise; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; } >; diff --git a/plugins/scaffolder/api-report-alpha.md b/plugins/scaffolder/api-report-alpha.md index cd4cd7ce3c..47c041e0d8 100644 --- a/plugins/scaffolder/api-report-alpha.md +++ b/plugins/scaffolder/api-report-alpha.md @@ -56,6 +56,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'page:scaffolder': ExtensionDefinition<{ kind: 'page'; @@ -82,6 +85,11 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; 'nav-item:scaffolder': ExtensionDefinition<{ kind: 'nav-item'; @@ -99,6 +107,11 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + title: string; + icon: IconComponent; + routeRef: RouteRef; + }; }>; } >; diff --git a/plugins/search/api-report-alpha.md b/plugins/search/api-report-alpha.md index fe06873bd4..ed54b23a2f 100644 --- a/plugins/search/api-report-alpha.md +++ b/plugins/search/api-report-alpha.md @@ -34,6 +34,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'nav-item:search': ExtensionDefinition<{ kind: 'nav-item'; @@ -51,6 +54,11 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + title: string; + icon: IconComponent; + routeRef: RouteRef; + }; }>; 'page:search': ExtensionDefinition<{ config: { @@ -96,6 +104,11 @@ const _default: FrontendPlugin< kind: 'page'; namespace: undefined; name: undefined; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; } >; @@ -110,6 +123,9 @@ export const searchApi: ExtensionDefinition<{ configInput: {}; output: ConfigurableExtensionDataRef; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; // @alpha (undocumented) @@ -129,6 +145,11 @@ export const searchNavItem: ExtensionDefinition<{ {} >; inputs: {}; + params: { + title: string; + icon: IconComponent; + routeRef: RouteRef; + }; }>; // @alpha (undocumented) @@ -172,6 +193,11 @@ export const searchPage: ExtensionDefinition<{ kind: 'page'; namespace: undefined; name: undefined; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; // (No @packageDocumentation comment for this package) diff --git a/plugins/techdocs/api-report-alpha.md b/plugins/techdocs/api-report-alpha.md index dfe5dc2cc2..6be48f4331 100644 --- a/plugins/techdocs/api-report-alpha.md +++ b/plugins/techdocs/api-report-alpha.md @@ -16,6 +16,7 @@ import { default as React_2 } from 'react'; import { RouteRef } from '@backstage/frontend-plugin-api'; import { SearchResultItemExtensionComponent } from '@backstage/plugin-search-react/alpha'; import { SearchResultItemExtensionPredicate } from '@backstage/plugin-search-react/alpha'; +import { SearchResultListItemBlueprintParams } from '@backstage/plugin-search-react/alpha'; // @alpha (undocumented) const _default: FrontendPlugin< @@ -42,6 +43,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'page:techdocs': ExtensionDefinition<{ kind: 'page'; @@ -68,6 +72,11 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; 'nav-item:techdocs': ExtensionDefinition<{ kind: 'nav-item'; @@ -85,6 +94,11 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + title: string; + icon: IconComponent; + routeRef: RouteRef; + }; }>; 'api:techdocs/storage': ExtensionDefinition<{ kind: 'api'; @@ -98,6 +112,9 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + factory: AnyApiFactory; + }; }>; 'search-result-list-item:techdocs': ExtensionDefinition<{ config: { @@ -136,6 +153,7 @@ const _default: FrontendPlugin< kind: 'search-result-list-item'; namespace: undefined; name: undefined; + params: SearchResultListItemBlueprintParams; }>; 'page:techdocs/reader': ExtensionDefinition<{ kind: 'page'; @@ -162,6 +180,11 @@ const _default: FrontendPlugin< } >; inputs: {}; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; 'entity-content:techdocs': ExtensionDefinition<{ config: { @@ -223,6 +246,13 @@ const _default: FrontendPlugin< kind: 'entity-content'; namespace: undefined; name: undefined; + params: { + loader: () => Promise; + defaultPath: string; + defaultTitle: string; + routeRef?: RouteRef | undefined; + filter?: string | ((entity: Entity) => boolean) | undefined; + }; }>; 'empty-state:techdocs/entity-content': ExtensionDefinition<{ config: {}; @@ -243,6 +273,7 @@ const _default: FrontendPlugin< } >; }; + params: never; kind: 'empty-state'; namespace: undefined; name: 'entity-content'; @@ -289,6 +320,7 @@ export const techDocsSearchResultListItemExtension: ExtensionDefinition<{ kind: 'search-result-list-item'; namespace: undefined; name: undefined; + params: SearchResultListItemBlueprintParams; }>; // (No @packageDocumentation comment for this package) diff --git a/plugins/user-settings/api-report-alpha.md b/plugins/user-settings/api-report-alpha.md index 199dbba582..8dcba01f68 100644 --- a/plugins/user-settings/api-report-alpha.md +++ b/plugins/user-settings/api-report-alpha.md @@ -36,6 +36,11 @@ const _default: FrontendPlugin< {} >; inputs: {}; + params: { + title: string; + icon: IconComponent; + routeRef: RouteRef; + }; }>; 'page:user-settings': ExtensionDefinition<{ config: { @@ -74,6 +79,11 @@ const _default: FrontendPlugin< kind: 'page'; namespace: undefined; name: undefined; + params: { + defaultPath: string; + loader: () => Promise; + routeRef?: RouteRef | undefined; + }; }>; } >; @@ -96,6 +106,11 @@ export const settingsNavItem: ExtensionDefinition<{ {} >; inputs: {}; + params: { + title: string; + icon: IconComponent; + routeRef: RouteRef; + }; }>; // @alpha (undocumented)