From 24dced7352c44eb3f093bd7bd64a89206660226d Mon Sep 17 00:00:00 2001 From: Camila Belo Date: Sat, 21 Oct 2023 17:37:22 +0200 Subject: [PATCH] refactor(catalog): extract entity contentes extensions file Signed-off-by: Camila Belo --- plugins/catalog/src/alpha/entityContents.tsx | 46 ++++++++++++++++++++ plugins/catalog/src/alpha/plugin.tsx | 34 ++------------- 2 files changed, 49 insertions(+), 31 deletions(-) create mode 100644 plugins/catalog/src/alpha/entityContents.tsx diff --git a/plugins/catalog/src/alpha/entityContents.tsx b/plugins/catalog/src/alpha/entityContents.tsx new file mode 100644 index 0000000000..0e26373b5e --- /dev/null +++ b/plugins/catalog/src/alpha/entityContents.tsx @@ -0,0 +1,46 @@ +/* + * Copyright 2023 The Backstage Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import React from 'react'; +import { Grid } from '@material-ui/core'; +import { + coreExtensionData, + createExtensionInput, +} from '@backstage/frontend-plugin-api'; +import { createEntityContentExtension } from '@backstage/plugin-catalog-react/alpha'; + +export const OverviewEntityContent = createEntityContentExtension({ + id: 'overview', + defaultPath: '/', + defaultTitle: 'Overview', + disabled: false, + inputs: { + cards: createExtensionInput({ + element: coreExtensionData.reactElement, + }), + }, + loader: async ({ inputs }) => ( + + {inputs.cards.map(card => ( + + {card.element} + + ))} + + ), +}); + +export default [OverviewEntityContent]; diff --git a/plugins/catalog/src/alpha/plugin.tsx b/plugins/catalog/src/alpha/plugin.tsx index 2c85e2bc51..2f019ca33e 100644 --- a/plugins/catalog/src/alpha/plugin.tsx +++ b/plugins/catalog/src/alpha/plugin.tsx @@ -14,18 +14,10 @@ * limitations under the License. */ -import React from 'react'; -import Grid from '@material-ui/core/Grid'; - import { convertLegacyRouteRef } from '@backstage/core-plugin-api/alpha'; -import { - createPlugin, - coreExtensionData, - createExtensionInput, -} from '@backstage/frontend-plugin-api'; +import { createPlugin } from '@backstage/frontend-plugin-api'; import { entityRouteRef } from '@backstage/plugin-catalog-react'; -import { createEntityContentExtension } from '@backstage/plugin-catalog-react/alpha'; import { createComponentRouteRef, @@ -39,29 +31,9 @@ import pages from './pages'; import filters from './filters'; import navItems from './navItems'; import entityCards from './entityCards'; +import entityContents from './entityContents'; import searchResultItems from './searchResultItems'; -const OverviewEntityContent = createEntityContentExtension({ - id: 'overview', - defaultPath: '/', - defaultTitle: 'Overview', - disabled: false, - inputs: { - cards: createExtensionInput({ - element: coreExtensionData.reactElement, - }), - }, - loader: async ({ inputs }) => ( - - {inputs.cards.map(card => ( - - {card.element} - - ))} - - ), -}); - /** @alpha */ export default createPlugin({ id: 'catalog', @@ -80,7 +52,7 @@ export default createPlugin({ ...filters, ...navItems, ...entityCards, + ...entityContents, ...searchResultItems, - OverviewEntityContent, ], });