@spacelift-io/backstage-integration-frontend
Version:
Backstage plugin for integrating Spacelift.io with Backstage
31 lines (28 loc) • 941 B
JavaScript
import { createPlugin, createApiFactory, fetchApiRef, discoveryApiRef, createRoutableExtension } from '@backstage/core-plugin-api';
import { SpaceliftApi, spaceliftApiRef } from './api/SpaceliftApiClient.esm.js';
import { rootRouteRef } from './routes.esm.js';
const spaceliftIoPlugin = createPlugin({
id: "spacelift",
routes: {
root: rootRouteRef
},
apis: [
createApiFactory({
api: spaceliftApiRef,
deps: {
discoveryApi: discoveryApiRef,
fetchApi: fetchApiRef
},
factory: ({ discoveryApi, fetchApi }) => new SpaceliftApi(discoveryApi, fetchApi)
})
]
});
const SpaceliftIoPage = spaceliftIoPlugin.provide(
createRoutableExtension({
name: "SpaceliftIoPage",
component: () => import('./components/Stacks/index.esm.js').then((m) => m.StacksPage),
mountPoint: rootRouteRef
})
);
export { SpaceliftIoPage, spaceliftIoPlugin };
//# sourceMappingURL=plugin.esm.js.map