@@ -68,7 +68,6 @@ export const DevToolsContentBlueprint = createExtensionBlueprint({
|
||||
},
|
||||
},
|
||||
*factory(params: DevToolsRouteBlueprintParams, { node, config }) {
|
||||
console.log('DevToolsContentBlueprint', params, config);
|
||||
const path = config.path ?? params.path;
|
||||
const title = config.title ?? params.title;
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
*/
|
||||
import { createExtensionDataRef } from '@backstage/frontend-plugin-api';
|
||||
|
||||
/** @internal */
|
||||
/** @public */
|
||||
export const contentTitleDataRef = createExtensionDataRef<string>().with({
|
||||
id: 'devtools.content-title',
|
||||
});
|
||||
|
||||
@@ -23,3 +23,4 @@ export {
|
||||
type DevToolsRouteBlueprintParams,
|
||||
DevToolsContentBlueprint,
|
||||
} from './devToolsContentBlueprint.tsx';
|
||||
export { contentTitleDataRef } from './extensionData';
|
||||
|
||||
@@ -32,6 +32,7 @@ import {
|
||||
} from '@backstage/core-compat-api';
|
||||
import BuildIcon from '@material-ui/icons/Build';
|
||||
import { rootRouteRef } from '../routes';
|
||||
import { contentTitleDataRef } from '@backstage/plugin-devtools-react';
|
||||
|
||||
/** @alpha */
|
||||
export const devToolsApi = ApiBlueprint.make({
|
||||
@@ -55,6 +56,7 @@ export const devToolsPage = PageBlueprint.makeWithOverrides({
|
||||
coreExtensionData.reactElement,
|
||||
coreExtensionData.routePath,
|
||||
coreExtensionData.routeRef.optional(),
|
||||
contentTitleDataRef,
|
||||
],
|
||||
{
|
||||
optional: true,
|
||||
@@ -65,10 +67,16 @@ export const devToolsPage = PageBlueprint.makeWithOverrides({
|
||||
return originalFactory({
|
||||
path: '/devtools',
|
||||
routeRef: convertLegacyRouteRef(rootRouteRef),
|
||||
loader: () =>
|
||||
import('../components/DevToolsPage').then(m =>
|
||||
compatWrapper(<m.DevToolsPage extensions={inputs.contents} />),
|
||||
),
|
||||
loader: () => {
|
||||
const extensions = inputs.contents.map(content => ({
|
||||
path: content.get(coreExtensionData.routePath),
|
||||
title: content.get(contentTitleDataRef),
|
||||
children: content.get(coreExtensionData.reactElement),
|
||||
}));
|
||||
return import('../components/DevToolsPage').then(m =>
|
||||
compatWrapper(<m.DevToolsPage extensions={extensions} />),
|
||||
);
|
||||
},
|
||||
});
|
||||
},
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user