refactor(api-docs): reorder extension definitions

Signed-off-by: Camila Belo <camilaibs@gmail.com>
This commit is contained in:
Camila Belo
2024-02-06 08:30:15 +01:00
parent fff681b45f
commit 46a220e846
2 changed files with 45 additions and 8 deletions
+30 -8
View File
@@ -32,7 +32,11 @@ import { ApiEntity } from '@backstage/catalog-model';
import { defaultDefinitionWidgets } from './components/ApiDefinitionCard';
import { rootRoute, registerComponentRouteRef } from './routes';
import { apiDocsConfigRef } from './config';
import { createEntityCardExtension } from '@backstage/plugin-catalog-react/alpha';
import {
createEntityCardExtension,
createEntityContentExtension,
} from '@backstage/plugin-catalog-react/alpha';
import { Grid } from '@material-ui/core';
const ApiDocsConfigApi = createApiExtension({
factory: createApiFactory({
@@ -70,6 +74,13 @@ const ApiDocsExplorerPage = createPageExtension({
),
});
const ApiDocsHasApisEntityCard = createEntityCardExtension({
name: 'has-apis',
// we are skipping variants, see: https://github.com/backstage/backstage/pull/22619#discussion_r1477333252
// and columns are too complex to map to zod
loader: () => import('./components/ApisCards').then(m => <m.HasApisCard />),
});
const ApiDocsDefinitionEntityCard = createEntityCardExtension({
name: 'api-definition',
loader: () =>
@@ -89,13 +100,6 @@ const ApiDocsConsumedApisEntityCard = createEntityCardExtension({
),
});
const ApiDocsHasApisEntityCard = createEntityCardExtension({
name: 'has-apis',
// we are skipping variants, see: https://github.com/backstage/backstage/pull/22619#discussion_r1477333252
// and columns are too complex to map to zod
loader: () => import('./components/ApisCards').then(m => <m.HasApisCard />),
});
const ApiDocsProvidedApisEntityCard = createEntityCardExtension({
name: 'provided-apis',
// we are skipping variants, see: https://github.com/backstage/backstage/pull/22619#discussion_r1477333252
@@ -126,6 +130,23 @@ const ApiDocsProvidingComponentsEntityCard = createEntityCardExtension({
),
});
const ApiDocsDefinitionEntityContent = createEntityContentExtension({
name: 'definition',
defaultPath: '/defintion',
defaultTitle: 'Definition',
filter: 'is:api',
loader: async () =>
import('./components/ApiDefinitionCard').then(m =>
compatWrapper(
<Grid container spacing={3}>
<Grid item xs={12}>
<m.ApiDefinitionCard />
</Grid>
</Grid>,
),
),
});
export default createPlugin({
id: 'api-docs',
routes: {
@@ -143,5 +164,6 @@ export default createPlugin({
ApiDocsConsumedApisEntityCard,
ApiDocsConsumingComponentsEntityCard,
ApiDocsProvidingComponentsEntityCard,
ApiDocsDefinitionEntityContent,
],
});