diff --git a/packages/app/src/App.tsx b/packages/app/src/App.tsx index 54eac880ec..53f1a9fe8f 100644 --- a/packages/app/src/App.tsx +++ b/packages/app/src/App.tsx @@ -133,6 +133,7 @@ const app = createApp({ }); bind(scaffolderPlugin.externalRoutes, { registerComponent: catalogImportPlugin.routes.importPage, + viewTechDoc: techdocsPlugin.routes.docRoot, }); bind(orgPlugin.externalRoutes, { catalogIndex: catalogPlugin.routes.catalogIndex, diff --git a/plugins/scaffolder/api-report.md b/plugins/scaffolder/api-report.md index 9541098934..8e2858e706 100644 --- a/plugins/scaffolder/api-report.md +++ b/plugins/scaffolder/api-report.md @@ -367,6 +367,14 @@ export const scaffolderPlugin: BackstagePlugin< }, { registerComponent: ExternalRouteRef; + viewTechDoc: ExternalRouteRef< + { + name: string; + kind: string; + namespace: string; + }, + true + >; }, {} >; diff --git a/plugins/scaffolder/src/plugin.ts b/plugins/scaffolder/src/plugin.ts index 7387232948..f9b359d93a 100644 --- a/plugins/scaffolder/src/plugin.ts +++ b/plugins/scaffolder/src/plugin.ts @@ -27,6 +27,7 @@ import { nextRouteRef, registerComponentRouteRef, rootRouteRef, + viewTechDocRouteRef, } from './routes'; import { createApiFactory, @@ -68,6 +69,7 @@ export const scaffolderPlugin = createPlugin({ }, externalRoutes: { registerComponent: registerComponentRouteRef, + viewTechDoc: viewTechDocRouteRef, }, }); diff --git a/plugins/scaffolder/src/routes.ts b/plugins/scaffolder/src/routes.ts index f862b043c1..2ef6583b08 100644 --- a/plugins/scaffolder/src/routes.ts +++ b/plugins/scaffolder/src/routes.ts @@ -24,6 +24,12 @@ export const registerComponentRouteRef = createExternalRouteRef({ optional: true, }); +export const viewTechDocRouteRef = createExternalRouteRef({ + id: 'view-techdoc', + optional: true, + params: ['namespace', 'kind', 'name'], +}); + export const rootRouteRef = createRouteRef({ id: 'scaffolder', });