feat(catalog): create plugin and api extensions

Signed-off-by: Camila Belo <camilaibs@gmail.com>
This commit is contained in:
Camila Belo
2023-09-26 14:46:21 +02:00
parent 5d92f07ff6
commit f22ab808eb
2 changed files with 38 additions and 0 deletions
+1
View File
@@ -51,6 +51,7 @@
"@backstage/core-components": "workspace:^",
"@backstage/core-plugin-api": "workspace:^",
"@backstage/errors": "workspace:^",
"@backstage/frontend-plugin-api": "workspace:^",
"@backstage/integration-react": "workspace:^",
"@backstage/plugin-catalog-common": "workspace:^",
"@backstage/plugin-catalog-react": "workspace:^",
+37
View File
@@ -15,3 +15,40 @@
*/
export * from './translation';
import {
DiscoveryApi,
FetchApi,
discoveryApiRef,
fetchApiRef,
} from '@backstage/core-plugin-api';
import { CatalogClient } from '@backstage/catalog-client';
import {
createApiExtension,
createPlugin,
} from '@backstage/frontend-plugin-api';
import { catalogApiRef } from '@backstage/plugin-catalog-react';
/** @alpha */
export const CatalogApi = createApiExtension({
factory: {
api: catalogApiRef,
deps: {
discoveryApi: discoveryApiRef,
fetchApi: fetchApiRef,
},
factory: ({
discoveryApi,
fetchApi,
}: {
discoveryApi: DiscoveryApi;
fetchApi: FetchApi;
}) => new CatalogClient({ discoveryApi, fetchApi }),
},
});
/** @alpha */
export default createPlugin({
id: 'plugin.catalog',
extensions: [CatalogApi],
});