plugins: update all other plugins to fit new frontend system naming patterns

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
This commit is contained in:
Patrik Oldsberg
2023-12-13 17:39:18 +01:00
parent 2d708d8785
commit 58141224d3
21 changed files with 116 additions and 96 deletions
+15
View File
@@ -0,0 +1,15 @@
---
'@backstage/plugin-catalog-import': patch
'@backstage/plugin-stack-overflow': patch
'@backstage/plugin-user-settings': patch
'@backstage/plugin-search-react': patch
'@backstage/plugin-tech-radar': patch
'@backstage/plugin-graphiql': patch
'@backstage/plugin-techdocs': patch
'@backstage/plugin-explore': patch
'@backstage/plugin-search': patch
'@backstage/plugin-home': patch
'@backstage/plugin-adr': patch
---
Updated `/alpha` exports to fit new naming patterns.
+1 -1
View File
@@ -8,7 +8,7 @@ import { ExtensionDefinition } from '@backstage/frontend-plugin-api';
import { TranslationRef } from '@backstage/core-plugin-api/alpha';
// @alpha (undocumented)
export const AdrSearchResultListItemExtension: ExtensionDefinition<{
export const adrSearchResultListItemExtension: ExtensionDefinition<{
lineClamp: number;
noTrack: boolean;
}>;
+2 -2
View File
@@ -29,7 +29,7 @@ function isAdrDocument(result: any): result is AdrDocument {
}
/** @alpha */
export const AdrSearchResultListItemExtension =
export const adrSearchResultListItemExtension =
createSearchResultListItemExtension({
configSchema: createSchemaFromZod(z =>
z.object({
@@ -53,5 +53,5 @@ export const AdrSearchResultListItemExtension =
/** @alpha */
export default createPlugin({
id: 'adr',
extensions: [AdrSearchResultListItemExtension],
extensions: [adrSearchResultListItemExtension],
});
+3 -3
View File
@@ -40,7 +40,7 @@ import { catalogApiRef } from '@backstage/plugin-catalog-react';
// TODO: It's currently possible to override the import page with a custom one. We need to decide
// whether this type of override is typically done with an input or by overriding the entire extension.
const CatalogImportPageExtension = createPageExtension({
const catalogImportPage = createPageExtension({
defaultPath: '/catalog-import',
routeRef: convertLegacyRouteRef(rootRouteRef),
loader: () =>
@@ -49,7 +49,7 @@ const CatalogImportPageExtension = createPageExtension({
),
});
const CatalogImportService = createApiExtension({
const catalogImportApi = createApiExtension({
factory: createApiFactory({
api: catalogImportApiRef,
deps: {
@@ -82,7 +82,7 @@ const CatalogImportService = createApiExtension({
/** @alpha */
export default createPlugin({
id: 'catalog-import',
extensions: [CatalogImportService, CatalogImportPageExtension],
extensions: [catalogImportApi, catalogImportPage],
routes: {
importPage: convertLegacyRouteRef(rootRouteRef),
},
+1 -1
View File
@@ -11,7 +11,7 @@ const _default: BackstagePlugin<{}, {}>;
export default _default;
// @alpha (undocumented)
export const ExploreSearchResultListItemExtension: ExtensionDefinition<{
export const exploreSearchResultListItem: ExtensionDefinition<{
noTrack?: boolean | undefined;
}>;
+8 -9
View File
@@ -18,17 +18,16 @@ import { createPlugin } from '@backstage/frontend-plugin-api';
import { createSearchResultListItemExtension } from '@backstage/plugin-search-react/alpha';
/** @alpha */
export const ExploreSearchResultListItemExtension =
createSearchResultListItemExtension({
predicate: result => result.type === 'tools',
component: () =>
import('./components/ToolSearchResultListItem').then(
m => m.ToolSearchResultListItem,
),
});
export const exploreSearchResultListItem = createSearchResultListItemExtension({
predicate: result => result.type === 'tools',
component: () =>
import('./components/ToolSearchResultListItem').then(
m => m.ToolSearchResultListItem,
),
});
/** @alpha */
export default createPlugin({
id: 'explore',
extensions: [ExploreSearchResultListItemExtension],
extensions: [exploreSearchResultListItem],
});
+4 -4
View File
@@ -33,13 +33,13 @@ export default _default;
export const graphiqlBrowseApi: ExtensionDefinition<{}>;
// @alpha (undocumented)
export const GraphiqlPage: ExtensionDefinition<{
path: string;
export const graphiqlNavItem: ExtensionDefinition<{
title: string;
}>;
// @alpha (undocumented)
export const graphiqlPageSidebarItem: ExtensionDefinition<{
title: string;
export const graphiqlPage: ExtensionDefinition<{
path: string;
}>;
// (No @packageDocumentation comment for this package)
+22 -20
View File
@@ -40,7 +40,7 @@ import {
} from '@backstage/core-compat-api';
/** @alpha */
export const GraphiqlPage = createPageExtension({
export const graphiqlPage = createPageExtension({
defaultPath: '/graphiql',
routeRef: convertLegacyRouteRef(graphiQLRouteRef),
loader: () =>
@@ -48,7 +48,7 @@ export const GraphiqlPage = createPageExtension({
});
/** @alpha */
export const graphiqlPageSidebarItem = createNavItemExtension({
export const graphiqlNavItem = createNavItemExtension({
title: 'GraphiQL',
icon: GraphiQLIcon as IconComponent,
routeRef: convertLegacyRouteRef(graphiQLRouteRef),
@@ -56,7 +56,7 @@ export const graphiqlPageSidebarItem = createNavItemExtension({
/** @internal */
const endpointDataRef = createExtensionDataRef<GraphQLEndpoint>(
'plugin.graphiql.endpoint',
'graphiql.graphiql-endpoint',
);
/** @alpha */
@@ -102,29 +102,31 @@ export function createGraphiQLEndpointExtension<TConfig extends {}>(options: {
}
/** @alpha */
const gitlabGraphiQLBrowseExtension = createGraphiQLEndpointExtension({
name: 'gitlab',
disabled: true,
configSchema: createSchemaFromZod(z =>
z
.object({
id: z.string().default('gitlab'),
title: z.string().default('GitLab'),
url: z.string().default('https://gitlab.com/api/graphql'),
})
.default({}),
),
factory: ({ config }) => ({ endpoint: GraphQLEndpoints.create(config) }),
});
const graphiqlGitlabGraphiQLEndpointExtension = createGraphiQLEndpointExtension(
{
name: 'gitlab',
disabled: true,
configSchema: createSchemaFromZod(z =>
z
.object({
id: z.string().default('gitlab'),
title: z.string().default('GitLab'),
url: z.string().default('https://gitlab.com/api/graphql'),
})
.default({}),
),
factory: ({ config }) => ({ endpoint: GraphQLEndpoints.create(config) }),
},
);
/** @alpha */
export default createPlugin({
id: 'graphiql',
extensions: [
GraphiqlPage,
graphiqlPage,
graphiqlBrowseApi,
gitlabGraphiQLBrowseExtension,
graphiqlPageSidebarItem,
graphiqlGitlabGraphiQLEndpointExtension,
graphiqlNavItem,
],
routes: {
root: convertLegacyRouteRef(graphiQLRouteRef),
+2 -2
View File
@@ -33,7 +33,7 @@ const rootRouteRef = createRouteRef();
*/
export const titleExtensionDataRef = createExtensionDataRef<string>('title');
const HomepageCompositionRootExtension = createPageExtension({
const homePage = createPageExtension({
defaultPath: '/home',
routeRef: rootRouteRef,
inputs: {
@@ -65,5 +65,5 @@ const HomepageCompositionRootExtension = createPageExtension({
*/
export default createPlugin({
id: 'home',
extensions: [HomepageCompositionRootExtension],
extensions: [homePage],
});
+12 -9
View File
@@ -27,6 +27,18 @@ export function createSearchResultListItemExtension<
options: SearchResultItemExtensionOptions<TConfig>,
): ExtensionDefinition<TConfig>;
// @alpha (undocumented)
export namespace createSearchResultListItemExtension {
const // (undocumented)
itemDataRef: ConfigurableExtensionDataRef<
{
predicate?: SearchResultItemExtensionPredicate | undefined;
component: SearchResultItemExtensionComponent;
},
{}
>;
}
// @alpha (undocumented)
export type SearchResultItemExtensionComponent = <
P extends BaseSearchResultListItemProps,
@@ -34,15 +46,6 @@ export type SearchResultItemExtensionComponent = <
props: P,
) => JSX.Element | null;
// @alpha (undocumented)
export const searchResultItemExtensionData: ConfigurableExtensionDataRef<
{
predicate?: SearchResultItemExtensionPredicate | undefined;
component: SearchResultItemExtensionComponent;
},
{}
>;
// @alpha (undocumented)
export type SearchResultItemExtensionOptions<
TConfig extends {
+1 -2
View File
@@ -26,7 +26,6 @@ import React from 'react';
import {
BaseSearchResultListItemProps,
createSearchResultListItemExtension,
searchResultItemExtensionData as searchResultListItemExtensionData,
} from './alpha';
describe('createSearchResultListItemExtension', () => {
@@ -76,7 +75,7 @@ describe('createSearchResultListItemExtension', () => {
defaultPath: '/',
inputs: {
items: createExtensionInput({
item: searchResultListItemExtensionData,
item: createSearchResultListItemExtension.itemDataRef,
}),
},
loader: async ({ inputs }) => {
+9 -7
View File
@@ -47,12 +47,6 @@ export type SearchResultItemExtensionPredicate = (
result: SearchResult,
) => boolean;
/** @alpha */
export const searchResultItemExtensionData = createExtensionDataRef<{
predicate?: SearchResultItemExtensionPredicate;
component: SearchResultItemExtensionComponent;
}>('plugin.search.result.item.data');
/** @alpha */
export type SearchResultItemExtensionOptions<
TConfig extends { noTrack?: boolean },
@@ -109,7 +103,7 @@ export function createSearchResultListItemExtension<
},
configSchema,
output: {
item: searchResultItemExtensionData,
item: createSearchResultListItemExtension.itemDataRef,
},
factory({ config, node }) {
const ExtensionComponent = lazy(() =>
@@ -137,3 +131,11 @@ export function createSearchResultListItemExtension<
},
});
}
/** @alpha */
export namespace createSearchResultListItemExtension {
export const itemDataRef = createExtensionDataRef<{
predicate?: SearchResultItemExtensionPredicate;
component: SearchResultItemExtensionComponent;
}>('search.search-result-list-item.item');
}
+3 -3
View File
@@ -17,15 +17,15 @@ const _default: BackstagePlugin<
export default _default;
// @alpha (undocumented)
export const SearchApi: ExtensionDefinition<{}>;
export const searchApi: ExtensionDefinition<{}>;
// @alpha (undocumented)
export const SearchNavItem: ExtensionDefinition<{
export const searchNavItem: ExtensionDefinition<{
title: string;
}>;
// @alpha (undocumented)
export const SearchPage: ExtensionDefinition<{
export const searchPage: ExtensionDefinition<{
path: string;
noTrack: boolean;
}>;
+6 -6
View File
@@ -61,7 +61,7 @@ import {
} from '@backstage/plugin-search-react';
import { SearchResult } from '@backstage/plugin-search-common';
import { searchApiRef } from '@backstage/plugin-search-react';
import { searchResultItemExtensionData } from '@backstage/plugin-search-react/alpha';
import { createSearchResultListItemExtension } from '@backstage/plugin-search-react/alpha';
import { rootRouteRef } from './plugin';
import { SearchClient } from './apis';
@@ -73,7 +73,7 @@ import {
} from '@backstage/core-compat-api';
/** @alpha */
export const SearchApi = createApiExtension({
export const searchApi = createApiExtension({
factory: {
api: searchApiRef,
deps: { discoveryApi: discoveryApiRef, identityApi: identityApiRef },
@@ -100,7 +100,7 @@ const useSearchPageStyles = makeStyles((theme: Theme) => ({
}));
/** @alpha */
export const SearchPage = createPageExtension({
export const searchPage = createPageExtension({
routeRef: convertLegacyRouteRef(rootRouteRef),
configSchema: createSchemaFromZod(z =>
z.object({
@@ -110,7 +110,7 @@ export const SearchPage = createPageExtension({
),
inputs: {
items: createExtensionInput({
item: searchResultItemExtensionData,
item: createSearchResultListItemExtension.itemDataRef,
}),
},
loader: async ({ config, inputs }) => {
@@ -238,7 +238,7 @@ export const SearchPage = createPageExtension({
});
/** @alpha */
export const SearchNavItem = createNavItemExtension({
export const searchNavItem = createNavItemExtension({
routeRef: convertLegacyRouteRef(rootRouteRef),
title: 'Search',
icon: SearchIcon,
@@ -247,7 +247,7 @@ export const SearchNavItem = createNavItemExtension({
/** @alpha */
export default createPlugin({
id: 'search',
extensions: [SearchApi, SearchPage, SearchNavItem],
extensions: [searchApi, searchPage, searchNavItem],
routes: {
root: convertLegacyRouteRef(rootRouteRef),
},
+3 -3
View File
@@ -23,7 +23,7 @@ import { createSearchResultListItemExtension } from '@backstage/plugin-search-re
import { StackOverflowClient, stackOverflowApiRef } from './api';
/** @alpha */
const StackOverflowApi = createApiExtension({
const stackOverflowApi = createApiExtension({
factory: createApiFactory({
api: stackOverflowApiRef,
deps: { configApi: configApiRef },
@@ -32,7 +32,7 @@ const StackOverflowApi = createApiExtension({
});
/** @alpha */
const StackOverflowSearchResultListItem = createSearchResultListItemExtension({
const stackOverflowSearchResultListItem = createSearchResultListItemExtension({
predicate: result => result.type === 'stack-overflow',
component: () =>
import('./search/StackOverflowSearchResultListItem').then(
@@ -44,5 +44,5 @@ const StackOverflowSearchResultListItem = createSearchResultListItemExtension({
export default createPlugin({
id: 'stack-overflow',
// TODO: Migrate homepage cards when the declarative homepage plugin supports them
extensions: [StackOverflowApi, StackOverflowSearchResultListItem],
extensions: [stackOverflowApi, stackOverflowSearchResultListItem],
});
+2 -2
View File
@@ -17,10 +17,10 @@ const _default: BackstagePlugin<
export default _default;
// @alpha (undocumented)
export const sampleTechRadarApi: ExtensionDefinition<{}>;
export const techRadarApi: ExtensionDefinition<{}>;
// @alpha (undocumented)
export const TechRadarPage: ExtensionDefinition<{
export const techRadarPage: ExtensionDefinition<{
height: number;
width: number;
title: string;
+2 -2
View File
@@ -16,7 +16,7 @@
import { createExtensionTester } from '@backstage/frontend-test-utils';
import { screen } from '@testing-library/react';
import { TechRadarPage, sampleTechRadarApi } from './alpha';
import { techRadarPage, techRadarApi } from './alpha';
describe('TechRadarPage', () => {
beforeAll(() => {
@@ -27,7 +27,7 @@ describe('TechRadarPage', () => {
});
it('renders without exploding', async () => {
createExtensionTester(TechRadarPage).add(sampleTechRadarApi).render();
createExtensionTester(techRadarPage).add(techRadarApi).render();
await expect(screen.findByText('Tech Radar')).resolves.toBeInTheDocument();
});
+3 -3
View File
@@ -31,7 +31,7 @@ import {
import { rootRouteRef } from './plugin';
/** @alpha */
export const TechRadarPage = createPageExtension({
export const techRadarPage = createPageExtension({
defaultPath: '/tech-radar',
routeRef: convertLegacyRouteRef(rootRouteRef),
configSchema: createSchemaFromZod(z =>
@@ -53,14 +53,14 @@ export const TechRadarPage = createPageExtension({
});
/** @alpha */
export const sampleTechRadarApi = createApiExtension({
export const techRadarApi = createApiExtension({
factory: createApiFactory(techRadarApiRef, new SampleTechRadarApi()),
});
/** @alpha */
export default createPlugin({
id: 'tech-radar',
extensions: [TechRadarPage, sampleTechRadarApi],
extensions: [techRadarPage, techRadarApi],
routes: {
root: convertLegacyRouteRef(rootRouteRef),
},
+1 -1
View File
@@ -23,7 +23,7 @@ const _default: BackstagePlugin<
export default _default;
// @alpha (undocumented)
export const TechDocsSearchResultListItemExtension: ExtensionDefinition<{
export const techDocsSearchResultListItemExtension: ExtensionDefinition<{
lineClamp: number;
noTrack: boolean;
asListItem: boolean;
+14 -14
View File
@@ -48,7 +48,7 @@ import {
import { createEntityContentExtension } from '@backstage/plugin-catalog-react/alpha';
/** @alpha */
const techDocsStorage = createApiExtension({
const techDocsStorageApi = createApiExtension({
factory: createApiFactory({
api: techdocsStorageApiRef,
deps: {
@@ -68,7 +68,7 @@ const techDocsStorage = createApiExtension({
});
/** @alpha */
const techDocsClient = createApiExtension({
const techDocsClientApi = createApiExtension({
factory: createApiFactory({
api: techdocsApiRef,
deps: {
@@ -86,7 +86,7 @@ const techDocsClient = createApiExtension({
});
/** @alpha */
export const TechDocsSearchResultListItemExtension =
export const techDocsSearchResultListItemExtension =
createSearchResultListItemExtension({
configSchema: createSchemaFromZod(z =>
z.object({
@@ -113,7 +113,7 @@ export const TechDocsSearchResultListItemExtension =
*
* @alpha
*/
const TechDocsIndexPage = createPageExtension({
const techDocsPage = createPageExtension({
defaultPath: '/docs',
routeRef: convertLegacyRouteRef(rootRouteRef),
loader: () =>
@@ -127,7 +127,7 @@ const TechDocsIndexPage = createPageExtension({
*
* @alpha
*/
const TechDocsReaderPage = createPageExtension({
const techDocsReaderPage = createPageExtension({
name: 'reader',
defaultPath: '/docs/:namespace/:kind/:name',
routeRef: convertLegacyRouteRef(rootDocsRouteRef),
@@ -142,7 +142,7 @@ const TechDocsReaderPage = createPageExtension({
*
* @alpha
*/
const TechDocsEntityContent = createEntityContentExtension({
const techDocsEntityContent = createEntityContentExtension({
defaultPath: 'docs',
defaultTitle: 'TechDocs',
loader: () =>
@@ -150,7 +150,7 @@ const TechDocsEntityContent = createEntityContentExtension({
});
/** @alpha */
const TechDocsNavItem = createNavItemExtension({
const techDocsNavItem = createNavItemExtension({
icon: LibraryBooks,
title: 'Docs',
routeRef: convertLegacyRouteRef(rootRouteRef),
@@ -160,13 +160,13 @@ const TechDocsNavItem = createNavItemExtension({
export default createPlugin({
id: 'techdocs',
extensions: [
techDocsClient,
techDocsStorage,
TechDocsNavItem,
TechDocsIndexPage,
TechDocsReaderPage,
TechDocsEntityContent,
TechDocsSearchResultListItemExtension,
techDocsClientApi,
techDocsStorageApi,
techDocsNavItem,
techDocsPage,
techDocsReaderPage,
techDocsEntityContent,
techDocsSearchResultListItemExtension,
],
routes: {
root: convertLegacyRouteRef(rootRouteRef),
+2 -2
View File
@@ -29,7 +29,7 @@ import React from 'react';
export * from './translation';
const UserSettingsPage = createPageExtension({
const userSettingsPage = createPageExtension({
defaultPath: '/settings',
routeRef: convertLegacyRouteRef(settingsRouteRef),
inputs: {
@@ -55,7 +55,7 @@ const UserSettingsPage = createPageExtension({
*/
export default createPlugin({
id: 'user-settings',
extensions: [UserSettingsPage],
extensions: [userSettingsPage],
routes: {
root: convertLegacyRouteRef(settingsRouteRef),
},