diff --git a/.changeset/friendly-weeks-cry.md b/.changeset/friendly-weeks-cry.md new file mode 100644 index 0000000000..e98be44f06 --- /dev/null +++ b/.changeset/friendly-weeks-cry.md @@ -0,0 +1,21 @@ +--- +'@backstage/create-app': patch +--- + +Rebind external route for catalog import plugin from `scaffolderPlugin.routes.root` to `catalogImportPlugin.routes.importPage`. + +To make this change to an existing app, make the following change to `packages/app/src/App.tsx` + +```diff +const App = createApp({ + ... + bindRoutes({ bind }) { + ... + bind(apiDocsPlugin.externalRoutes, { +- createComponent: scaffolderPlugin.routes.root, ++ registerApi: catalogImportPlugin.routes.importPage, + }); + ... + }, +}); +``` diff --git a/.changeset/serious-roses-stare.md b/.changeset/serious-roses-stare.md new file mode 100644 index 0000000000..ed6f20a6fa --- /dev/null +++ b/.changeset/serious-roses-stare.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-api-docs': minor +--- + +Renamed the `createComponent` external route to `registerApi` since it's now recommended to link to the entity registration page rather than the creation page. diff --git a/packages/app/src/App.tsx b/packages/app/src/App.tsx index 59f107c70d..21eb3aa38a 100644 --- a/packages/app/src/App.tsx +++ b/packages/app/src/App.tsx @@ -117,7 +117,7 @@ const app = createApp({ catalogEntity: catalogPlugin.routes.catalogEntity, }); bind(apiDocsPlugin.externalRoutes, { - createComponent: scaffolderPlugin.routes.root, + registerApi: catalogImportPlugin.routes.importPage, }); bind(explorePlugin.externalRoutes, { catalogEntity: catalogPlugin.routes.catalogEntity, diff --git a/packages/create-app/templates/default-app/packages/app/src/App.tsx b/packages/create-app/templates/default-app/packages/app/src/App.tsx index 8a535835b4..4c284e9c9a 100644 --- a/packages/create-app/templates/default-app/packages/app/src/App.tsx +++ b/packages/create-app/templates/default-app/packages/app/src/App.tsx @@ -37,7 +37,7 @@ const app = createApp({ viewTechDoc: techdocsPlugin.routes.docRoot, }); bind(apiDocsPlugin.externalRoutes, { - createComponent: scaffolderPlugin.routes.root, + registerApi: catalogImportPlugin.routes.importPage, }); bind(scaffolderPlugin.externalRoutes, { registerComponent: catalogImportPlugin.routes.importPage, diff --git a/plugins/api-docs/api-report.md b/plugins/api-docs/api-report.md index 6d5f16ac19..b626da89a5 100644 --- a/plugins/api-docs/api-report.md +++ b/plugins/api-docs/api-report.md @@ -47,7 +47,7 @@ const apiDocsPlugin: BackstagePlugin< root: RouteRef; }, { - createComponent: ExternalRouteRef; + registerApi: ExternalRouteRef; } >; export { apiDocsPlugin }; diff --git a/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx b/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx index 5ddda96daa..d38383f004 100644 --- a/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx +++ b/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx @@ -42,7 +42,7 @@ import { UserListPicker, } from '@backstage/plugin-catalog-react'; import React from 'react'; -import { createComponentRouteRef } from '../../routes'; +import { registerComponentRouteRef } from '../../routes'; const defaultColumns: TableColumn[] = [ CatalogTable.columns.createNameColumn({ defaultKind: 'API' }), @@ -77,7 +77,7 @@ export const DefaultApiExplorerPage = ({ const generatedSubtitle = `${ configApi.getOptionalString('organization.name') ?? 'Backstage' } API Explorer`; - const createComponentLink = useRouteRef(createComponentRouteRef); + const registerComponentLink = useRouteRef(registerComponentRouteRef); return ( All your APIs diff --git a/plugins/api-docs/src/plugin.ts b/plugins/api-docs/src/plugin.ts index 61695b4a7a..f1928f4443 100644 --- a/plugins/api-docs/src/plugin.ts +++ b/plugins/api-docs/src/plugin.ts @@ -17,7 +17,7 @@ import { ApiEntity } from '@backstage/catalog-model'; import { defaultDefinitionWidgets } from './components/ApiDefinitionCard'; import { apiDocsConfigRef } from './config'; -import { createComponentRouteRef, rootRoute } from './routes'; +import { registerComponentRouteRef, rootRoute } from './routes'; import { createApiFactory, createComponentExtension, @@ -45,7 +45,7 @@ export const apiDocsPlugin = createPlugin({ }), ], externalRoutes: { - createComponent: createComponentRouteRef, + registerApi: registerComponentRouteRef, }, }); diff --git a/plugins/api-docs/src/routes.ts b/plugins/api-docs/src/routes.ts index b7c152889e..2103672eb0 100644 --- a/plugins/api-docs/src/routes.ts +++ b/plugins/api-docs/src/routes.ts @@ -23,7 +23,7 @@ export const rootRoute = createRouteRef({ id: 'api-docs', }); -export const createComponentRouteRef = createExternalRouteRef({ - id: 'create-component', +export const registerComponentRouteRef = createExternalRouteRef({ + id: 'register-component', optional: true, });