Merge pull request #26045 from backstage/rugvip/object

frontend-plugin-api: store extension ID parts in an object type parameter
This commit is contained in:
Patrik Oldsberg
2024-08-16 11:45:17 +02:00
committed by GitHub
21 changed files with 622 additions and 376 deletions
+55 -33
View File
@@ -38,18 +38,22 @@ const _default: BackstagePlugin<
{}
>,
{},
'nav-item',
undefined,
undefined
{
kind: 'nav-item';
namespace: undefined;
name: undefined;
}
>;
'api:api-docs/config': ExtensionDefinition<
{},
{},
ConfigurableExtensionDataRef<AnyApiFactory, 'core.api.factory', {}>,
{},
'api',
undefined,
'config'
{
kind: 'api';
namespace: undefined;
name: 'config';
}
>;
'page:api-docs': ExtensionDefinition<
{
@@ -84,9 +88,11 @@ const _default: BackstagePlugin<
}
>;
},
'page',
undefined,
undefined
{
kind: 'page';
namespace: undefined;
name: undefined;
}
>;
'entity-card:api-docs/has-apis': ExtensionDefinition<
{
@@ -115,9 +121,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'has-apis'
{
kind: 'entity-card';
namespace: undefined;
name: 'has-apis';
}
>;
'entity-card:api-docs/definition': ExtensionDefinition<
{
@@ -146,9 +154,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'definition'
{
kind: 'entity-card';
namespace: undefined;
name: 'definition';
}
>;
'entity-card:api-docs/consumed-apis': ExtensionDefinition<
{
@@ -177,9 +187,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'consumed-apis'
{
kind: 'entity-card';
namespace: undefined;
name: 'consumed-apis';
}
>;
'entity-card:api-docs/provided-apis': ExtensionDefinition<
{
@@ -208,9 +220,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'provided-apis'
{
kind: 'entity-card';
namespace: undefined;
name: 'provided-apis';
}
>;
'entity-card:api-docs/consuming-components': ExtensionDefinition<
{
@@ -239,9 +253,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'consuming-components'
{
kind: 'entity-card';
namespace: undefined;
name: 'consuming-components';
}
>;
'entity-card:api-docs/providing-components': ExtensionDefinition<
{
@@ -270,9 +286,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'providing-components'
{
kind: 'entity-card';
namespace: undefined;
name: 'providing-components';
}
>;
'entity-content:api-docs/definition': ExtensionDefinition<
{
@@ -314,9 +332,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-content',
undefined,
'definition'
{
kind: 'entity-content';
namespace: undefined;
name: 'definition';
}
>;
'entity-content:api-docs/apis': ExtensionDefinition<
{
@@ -358,9 +378,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-content',
undefined,
'apis'
{
kind: 'entity-content';
namespace: undefined;
name: 'apis';
}
>;
}
>;
+10 -6
View File
@@ -37,9 +37,11 @@ const visualizerPlugin: BackstagePlugin<
}
>,
{},
'page',
undefined,
undefined
{
kind: 'page';
namespace: undefined;
name: undefined;
}
>;
'nav-item:app-visualizer': ExtensionDefinition<
{},
@@ -54,9 +56,11 @@ const visualizerPlugin: BackstagePlugin<
{}
>,
{},
'nav-item',
undefined,
undefined
{
kind: 'nav-item';
namespace: undefined;
name: undefined;
}
>;
}
>;
+10 -6
View File
@@ -87,9 +87,11 @@ const _default: BackstagePlugin<
}
>;
},
'entity-card',
undefined,
'relations'
{
kind: 'entity-card';
namespace: undefined;
name: 'relations';
}
>;
'page:catalog-graph': ExtensionDefinition<
{
@@ -148,9 +150,11 @@ const _default: BackstagePlugin<
}
>;
},
'page',
undefined,
undefined
{
kind: 'page';
namespace: undefined;
name: undefined;
}
>;
}
>;
+10 -6
View File
@@ -23,9 +23,11 @@ const _default: BackstagePlugin<
{},
ConfigurableExtensionDataRef<AnyApiFactory, 'core.api.factory', {}>,
{},
'api',
undefined,
undefined
{
kind: 'api';
namespace: undefined;
name: undefined;
}
>;
'page:catalog-import': ExtensionDefinition<
{
@@ -48,9 +50,11 @@ const _default: BackstagePlugin<
}
>,
{},
'page',
undefined,
undefined
{
kind: 'page';
namespace: undefined;
name: undefined;
}
>;
}
>;
+20 -12
View File
@@ -123,9 +123,11 @@ export function createEntityCardExtension<
TConfig,
never,
never,
string | undefined,
string | undefined,
string | undefined
{
kind?: string | undefined;
namespace?: string | undefined;
name?: string | undefined;
}
>;
// @alpha @deprecated (undocumented)
@@ -162,16 +164,20 @@ export function createEntityContentExtension<
},
never,
never,
string | undefined,
string | undefined,
string | undefined
{
kind?: string | undefined;
namespace?: string | undefined;
name?: string | undefined;
}
>;
// @alpha
export const EntityCardBlueprint: ExtensionBlueprint<
'entity-card',
undefined,
undefined,
{
kind: 'entity-card';
namespace: undefined;
name: undefined;
},
{
loader: () => Promise<JSX.Element>;
filter?: string | ((entity: Entity) => boolean) | undefined;
@@ -214,9 +220,11 @@ export const EntityCardBlueprint: ExtensionBlueprint<
// @alpha
export const EntityContentBlueprint: ExtensionBlueprint<
'entity-content',
undefined,
undefined,
{
kind: 'entity-content';
namespace: undefined;
name: undefined;
},
{
loader: () => Promise<JSX.Element>;
defaultPath: string;
+135 -81
View File
@@ -27,9 +27,11 @@ import { TranslationRef } from '@backstage/core-plugin-api/alpha';
// @alpha
export const CatalogFilterBlueprint: ExtensionBlueprint<
'catalog-filter',
undefined,
undefined,
{
kind: 'catalog-filter';
namespace: undefined;
name: undefined;
},
{
loader: () => Promise<JSX.Element>;
},
@@ -140,9 +142,11 @@ export function createCatalogFilterExtension<
TConfig,
never,
never,
string | undefined,
string | undefined,
string | undefined
{
kind?: string | undefined;
namespace?: string | undefined;
name?: string | undefined;
}
>;
// @alpha (undocumented)
@@ -182,27 +186,33 @@ const _default: BackstagePlugin<
{}
>,
{},
'nav-item',
undefined,
undefined
{
kind: 'nav-item';
namespace: undefined;
name: undefined;
}
>;
'api:catalog/starred-entities': ExtensionDefinition<
{},
{},
ConfigurableExtensionDataRef<AnyApiFactory, 'core.api.factory', {}>,
{},
'api',
undefined,
'starred-entities'
{
kind: 'api';
namespace: undefined;
name: 'starred-entities';
}
>;
'api:catalog/entity-presentation': ExtensionDefinition<
{},
{},
ConfigurableExtensionDataRef<AnyApiFactory, 'core.api.factory', {}>,
{},
'api',
undefined,
'entity-presentation'
{
kind: 'api';
namespace: undefined;
name: 'entity-presentation';
}
>;
'entity-card:catalog/about': ExtensionDefinition<
{
@@ -227,9 +237,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'about'
{
kind: 'entity-card';
namespace: undefined;
name: 'about';
}
>;
'entity-card:catalog/links': ExtensionDefinition<
{
@@ -254,9 +266,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'links'
{
kind: 'entity-card';
namespace: undefined;
name: 'links';
}
>;
'entity-card:catalog/labels': ExtensionDefinition<
{
@@ -281,9 +295,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'labels'
{
kind: 'entity-card';
namespace: undefined;
name: 'labels';
}
>;
'entity-card:catalog/depends-on-components': ExtensionDefinition<
{
@@ -308,9 +324,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'depends-on-components'
{
kind: 'entity-card';
namespace: undefined;
name: 'depends-on-components';
}
>;
'entity-card:catalog/depends-on-resources': ExtensionDefinition<
{
@@ -335,9 +353,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'depends-on-resources'
{
kind: 'entity-card';
namespace: undefined;
name: 'depends-on-resources';
}
>;
'entity-card:catalog/has-components': ExtensionDefinition<
{
@@ -362,9 +382,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'has-components'
{
kind: 'entity-card';
namespace: undefined;
name: 'has-components';
}
>;
'entity-card:catalog/has-resources': ExtensionDefinition<
{
@@ -389,9 +411,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'has-resources'
{
kind: 'entity-card';
namespace: undefined;
name: 'has-resources';
}
>;
'entity-card:catalog/has-subcomponents': ExtensionDefinition<
{
@@ -416,9 +440,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'has-subcomponents'
{
kind: 'entity-card';
namespace: undefined;
name: 'has-subcomponents';
}
>;
'entity-card:catalog/has-subdomains': ExtensionDefinition<
{
@@ -443,9 +469,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'has-subdomains'
{
kind: 'entity-card';
namespace: undefined;
name: 'has-subdomains';
}
>;
'entity-card:catalog/has-systems': ExtensionDefinition<
{
@@ -470,9 +498,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'has-systems'
{
kind: 'entity-card';
namespace: undefined;
name: 'has-systems';
}
>;
'entity-content:catalog/overview': ExtensionDefinition<
{
@@ -536,18 +566,22 @@ const _default: BackstagePlugin<
}
>;
},
'entity-content',
undefined,
'overview'
{
kind: 'entity-content';
namespace: undefined;
name: 'overview';
}
>;
'catalog-filter:catalog/tag': ExtensionDefinition<
{},
{},
ConfigurableExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>,
{},
'catalog-filter',
undefined,
'tag'
{
kind: 'catalog-filter';
namespace: undefined;
name: 'tag';
}
>;
'catalog-filter:catalog/kind': ExtensionDefinition<
{
@@ -566,18 +600,22 @@ const _default: BackstagePlugin<
}
>;
},
'catalog-filter',
undefined,
'kind'
{
kind: 'catalog-filter';
namespace: undefined;
name: 'kind';
}
>;
'catalog-filter:catalog/type': ExtensionDefinition<
{},
{},
ConfigurableExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>,
{},
'catalog-filter',
undefined,
'type'
{
kind: 'catalog-filter';
namespace: undefined;
name: 'type';
}
>;
'catalog-filter:catalog/mode': ExtensionDefinition<
{
@@ -596,36 +634,44 @@ const _default: BackstagePlugin<
}
>;
},
'catalog-filter',
undefined,
'mode'
{
kind: 'catalog-filter';
namespace: undefined;
name: 'mode';
}
>;
'catalog-filter:catalog/namespace': ExtensionDefinition<
{},
{},
ConfigurableExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>,
{},
'catalog-filter',
undefined,
'namespace'
{
kind: 'catalog-filter';
namespace: undefined;
name: 'namespace';
}
>;
'catalog-filter:catalog/lifecycle': ExtensionDefinition<
{},
{},
ConfigurableExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>,
{},
'catalog-filter',
undefined,
'lifecycle'
{
kind: 'catalog-filter';
namespace: undefined;
name: 'lifecycle';
}
>;
'catalog-filter:catalog/processing-status': ExtensionDefinition<
{},
{},
ConfigurableExtensionDataRef<JSX_2.Element, 'core.reactElement', {}>,
{},
'catalog-filter',
undefined,
'processing-status'
{
kind: 'catalog-filter';
namespace: undefined;
name: 'processing-status';
}
>;
'catalog-filter:catalog/list': ExtensionDefinition<
{
@@ -644,9 +690,11 @@ const _default: BackstagePlugin<
}
>;
},
'catalog-filter',
undefined,
'list'
{
kind: 'catalog-filter';
namespace: undefined;
name: 'list';
}
>;
'page:catalog': ExtensionDefinition<
{
@@ -677,9 +725,11 @@ const _default: BackstagePlugin<
}
>;
},
'page',
undefined,
undefined
{
kind: 'page';
namespace: undefined;
name: undefined;
}
>;
'page:catalog/entity': ExtensionDefinition<
{
@@ -737,9 +787,11 @@ const _default: BackstagePlugin<
}
>;
},
'page',
undefined,
'entity'
{
kind: 'page';
namespace: undefined;
name: 'entity';
}
>;
'search-result-list-item:catalog': ExtensionDefinition<
{
@@ -757,9 +809,11 @@ const _default: BackstagePlugin<
{}
>,
{},
'search-result-list-item',
undefined,
undefined
{
kind: 'search-result-list-item';
namespace: undefined;
name: undefined;
}
>;
}
>;
+15 -9
View File
@@ -24,9 +24,11 @@ const _default: BackstagePlugin<
{},
ConfigurableExtensionDataRef<AnyApiFactory, 'core.api.factory', {}>,
{},
'api',
undefined,
undefined
{
kind: 'api';
namespace: undefined;
name: undefined;
}
>;
'page:devtools': ExtensionDefinition<
{
@@ -49,9 +51,11 @@ const _default: BackstagePlugin<
}
>,
{},
'page',
undefined,
undefined
{
kind: 'page';
namespace: undefined;
name: undefined;
}
>;
'nav-item:devtools': ExtensionDefinition<
{},
@@ -66,9 +70,11 @@ const _default: BackstagePlugin<
{}
>,
{},
'nav-item',
undefined,
undefined
{
kind: 'nav-item';
namespace: undefined;
name: undefined;
}
>;
}
>;
+5 -3
View File
@@ -62,9 +62,11 @@ const _default: BackstagePlugin<
}
>;
},
'page',
undefined,
undefined
{
kind: 'page';
namespace: undefined;
name: undefined;
}
>;
}
>;
+25 -15
View File
@@ -38,9 +38,11 @@ const _default: BackstagePlugin<
}
>,
{},
'page',
undefined,
undefined
{
kind: 'page';
namespace: undefined;
name: undefined;
}
>;
'entity-content:kubernetes/kubernetes': ExtensionDefinition<
{
@@ -78,36 +80,44 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-content',
undefined,
'kubernetes'
{
kind: 'entity-content';
namespace: undefined;
name: 'kubernetes';
}
>;
'api:kubernetes/proxy': ExtensionDefinition<
{},
{},
ConfigurableExtensionDataRef<AnyApiFactory, 'core.api.factory', {}>,
{},
'api',
undefined,
'proxy'
{
kind: 'api';
namespace: undefined;
name: 'proxy';
}
>;
'api:kubernetes/auth-providers': ExtensionDefinition<
{},
{},
ConfigurableExtensionDataRef<AnyApiFactory, 'core.api.factory', {}>,
{},
'api',
undefined,
'auth-providers'
{
kind: 'api';
namespace: undefined;
name: 'auth-providers';
}
>;
'api:kubernetes/cluster-link-formatter': ExtensionDefinition<
{},
{},
ConfigurableExtensionDataRef<AnyApiFactory, 'core.api.factory', {}>,
{},
'api',
undefined,
'cluster-link-formatter'
{
kind: 'api';
namespace: undefined;
name: 'cluster-link-formatter';
}
>;
}
>;
+20 -12
View File
@@ -44,9 +44,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'group-profile'
{
kind: 'entity-card';
namespace: undefined;
name: 'group-profile';
}
>;
'entity-card:org/members-list': ExtensionDefinition<
{
@@ -75,9 +77,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'members-list'
{
kind: 'entity-card';
namespace: undefined;
name: 'members-list';
}
>;
'entity-card:org/ownership': ExtensionDefinition<
{
@@ -106,9 +110,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'ownership'
{
kind: 'entity-card';
namespace: undefined;
name: 'ownership';
}
>;
'entity-card:org/user-profile': ExtensionDefinition<
{
@@ -137,9 +143,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-card',
undefined,
'user-profile'
{
kind: 'entity-card';
namespace: undefined;
name: 'user-profile';
}
>;
}
>;
+15 -9
View File
@@ -48,9 +48,11 @@ const _default: BackstagePlugin<
{},
ConfigurableExtensionDataRef<AnyApiFactory, 'core.api.factory', {}>,
{},
'api',
undefined,
undefined
{
kind: 'api';
namespace: undefined;
name: undefined;
}
>;
'page:scaffolder': ExtensionDefinition<
{
@@ -73,9 +75,11 @@ const _default: BackstagePlugin<
}
>,
{},
'page',
undefined,
undefined
{
kind: 'page';
namespace: undefined;
name: undefined;
}
>;
'nav-item:scaffolder': ExtensionDefinition<
{},
@@ -90,9 +94,11 @@ const _default: BackstagePlugin<
{}
>,
{},
'nav-item',
undefined,
undefined
{
kind: 'nav-item';
namespace: undefined;
name: undefined;
}
>;
}
>;
+10 -6
View File
@@ -31,9 +31,11 @@ export function createSearchResultListItemExtension<
TConfig,
never,
never,
string | undefined,
string | undefined,
string | undefined
{
kind?: string | undefined;
namespace?: string | undefined;
name?: string | undefined;
}
>;
// @alpha @deprecated (undocumented)
@@ -82,9 +84,11 @@ export type SearchResultItemExtensionPredicate = (
// @alpha
export const SearchResultListItemBlueprint: ExtensionBlueprint<
'search-result-list-item',
undefined,
undefined,
{
kind: 'search-result-list-item';
namespace: undefined;
name: undefined;
},
SearchResultListItemBlueprintParams,
ConfigurableExtensionDataRef<
{
+30 -18
View File
@@ -27,9 +27,11 @@ const _default: BackstagePlugin<
{},
ConfigurableExtensionDataRef<AnyApiFactory, 'core.api.factory', {}>,
{},
'api',
undefined,
undefined
{
kind: 'api';
namespace: undefined;
name: undefined;
}
>;
'nav-item:search': ExtensionDefinition<
{},
@@ -44,9 +46,11 @@ const _default: BackstagePlugin<
{}
>,
{},
'nav-item',
undefined,
undefined
{
kind: 'nav-item';
namespace: undefined;
name: undefined;
}
>;
'page:search': ExtensionDefinition<
{
@@ -88,9 +92,11 @@ const _default: BackstagePlugin<
}
>;
},
'page',
undefined,
undefined
{
kind: 'page';
namespace: undefined;
name: undefined;
}
>;
}
>;
@@ -102,9 +108,11 @@ export const searchApi: ExtensionDefinition<
{},
ConfigurableExtensionDataRef<AnyApiFactory, 'core.api.factory', {}>,
{},
'api',
undefined,
undefined
{
kind: 'api';
namespace: undefined;
name: undefined;
}
>;
// @alpha (undocumented)
@@ -121,9 +129,11 @@ export const searchNavItem: ExtensionDefinition<
{}
>,
{},
'nav-item',
undefined,
undefined
{
kind: 'nav-item';
namespace: undefined;
name: undefined;
}
>;
// @alpha (undocumented)
@@ -163,9 +173,11 @@ export const searchPage: ExtensionDefinition<
}
>;
},
'page',
undefined,
undefined
{
kind: 'page';
namespace: undefined;
name: undefined;
}
>;
// (No @packageDocumentation comment for this package)
+30 -18
View File
@@ -43,18 +43,22 @@ const _default: BackstagePlugin<
{}
>,
{},
'nav-item',
undefined,
undefined
{
kind: 'nav-item';
namespace: undefined;
name: undefined;
}
>;
'api:techdocs/storage': ExtensionDefinition<
{},
{},
ConfigurableExtensionDataRef<AnyApiFactory, 'core.api.factory', {}>,
{},
'api',
undefined,
'storage'
{
kind: 'api';
namespace: undefined;
name: 'storage';
}
>;
'search-result-list-item:techdocs': ExtensionDefinition<
{
@@ -90,9 +94,11 @@ const _default: BackstagePlugin<
}
>;
},
'search-result-list-item',
undefined,
undefined
{
kind: 'search-result-list-item';
namespace: undefined;
name: undefined;
}
>;
'page:techdocs/reader': ExtensionDefinition<
{
@@ -115,9 +121,11 @@ const _default: BackstagePlugin<
}
>,
{},
'page',
undefined,
'reader'
{
kind: 'page';
namespace: undefined;
name: 'reader';
}
>;
'entity-content:techdocs': ExtensionDefinition<
{
@@ -159,9 +167,11 @@ const _default: BackstagePlugin<
}
>,
{},
'entity-content',
undefined,
undefined
{
kind: 'entity-content';
namespace: undefined;
name: undefined;
}
>;
}
>;
@@ -202,9 +212,11 @@ export const techDocsSearchResultListItemExtension: ExtensionDefinition<
}
>;
},
'search-result-list-item',
undefined,
undefined
{
kind: 'search-result-list-item';
namespace: undefined;
name: undefined;
}
>;
// (No @packageDocumentation comment for this package)
+15 -9
View File
@@ -33,9 +33,11 @@ const _default: BackstagePlugin<
{}
>,
{},
'nav-item',
undefined,
undefined
{
kind: 'nav-item';
namespace: undefined;
name: undefined;
}
>;
'page:user-settings': ExtensionDefinition<
{
@@ -74,9 +76,11 @@ const _default: BackstagePlugin<
}
>;
},
'page',
undefined,
undefined
{
kind: 'page';
namespace: undefined;
name: undefined;
}
>;
}
>;
@@ -96,9 +100,11 @@ export const settingsNavItem: ExtensionDefinition<
{}
>,
{},
'nav-item',
undefined,
undefined
{
kind: 'nav-item';
namespace: undefined;
name: undefined;
}
>;
// @alpha (undocumented)