From a285d5b6397b0fa9d6eda02273c5d77e2dafb826 Mon Sep 17 00:00:00 2001 From: Camila Belo Date: Fri, 29 Sep 2023 08:46:33 +0200 Subject: [PATCH] feat(catalog): migrate search result item extension Signed-off-by: Camila Belo --- plugins/catalog/package.json | 4 ++-- plugins/catalog/src/{alpha.ts => alpha.tsx} | 20 +++++++++++++++++--- 2 files changed, 19 insertions(+), 5 deletions(-) rename plugins/catalog/src/{alpha.ts => alpha.tsx} (75%) diff --git a/plugins/catalog/package.json b/plugins/catalog/package.json index 4ef0db4910..8ae615ec36 100644 --- a/plugins/catalog/package.json +++ b/plugins/catalog/package.json @@ -10,13 +10,13 @@ }, "exports": { ".": "./src/index.ts", - "./alpha": "./src/alpha.ts", + "./alpha": "./src/alpha.tsx", "./package.json": "./package.json" }, "typesVersions": { "*": { "alpha": [ - "src/alpha.ts" + "src/alpha.tsx" ], "package.json": [ "package.json" diff --git a/plugins/catalog/src/alpha.ts b/plugins/catalog/src/alpha.tsx similarity index 75% rename from plugins/catalog/src/alpha.ts rename to plugins/catalog/src/alpha.tsx index 82e592d5b7..5e78a52f9b 100644 --- a/plugins/catalog/src/alpha.ts +++ b/plugins/catalog/src/alpha.tsx @@ -14,8 +14,6 @@ * limitations under the License. */ -export * from './translation'; - import { createApiFactory, discoveryApiRef, @@ -31,6 +29,7 @@ import { catalogApiRef, starredEntitiesApiRef, } from '@backstage/plugin-catalog-react'; +import { createSearchResultListItemExtension } from '@backstage/plugin-search-react/alpha'; import { DefaultStarredEntitiesApi } from './apis'; /** @alpha */ @@ -55,8 +54,23 @@ export const StarredEntitiesApi = createApiExtension({ }), }); +/** @alpha */ +export const CatalogSearchResultListItemExtension = + createSearchResultListItemExtension({ + id: 'catalog', + predicate: result => result.type === 'software-catalog', + component: () => + import('./components/CatalogSearchResultListItem').then( + m => m.CatalogSearchResultListItem, + ), + }); + /** @alpha */ export default createPlugin({ id: 'catalog', - extensions: [CatalogApi, StarredEntitiesApi], + extensions: [ + CatalogApi, + StarredEntitiesApi, + CatalogSearchResultListItemExtension, + ], });