UNPKG

@roadiehq/backstage-plugin-argo-cd

Version:
60 lines (57 loc) 1.98 kB
import { createRouteRef, createPlugin, createApiFactory, discoveryApiRef, identityApiRef, configApiRef, createRoutableExtension, createComponentExtension } from '@backstage/core-plugin-api'; import { argoCDApiRef, ArgoCDApiClient } from './api/index.esm.js'; const entityContentRouteRef = createRouteRef({ id: "ArgoCD Entity Content" }); const argocdPlugin = createPlugin({ id: "argocd", apis: [ createApiFactory({ api: argoCDApiRef, deps: { discoveryApi: discoveryApiRef, identityApi: identityApiRef, configApi: configApiRef }, factory: ({ discoveryApi, identityApi, configApi }) => new ArgoCDApiClient({ discoveryApi, identityApi, backendBaseUrl: configApi.getString("backend.baseUrl"), useNamespacedApps: Boolean( configApi.getOptionalBoolean("argocd.namespacedApps") ), searchInstances: Boolean( configApi.getOptionalConfigArray("argocd.appLocatorMethods")?.length ) }) }) ], routes: { entityContent: entityContentRouteRef } }); const EntityArgoCDContent = argocdPlugin.provide( createRoutableExtension({ name: "EntityArgoCDContent", component: () => import('./Router.esm.js').then((m) => m.Router), mountPoint: entityContentRouteRef }) ); const EntityArgoCDOverviewCard = argocdPlugin.provide( createComponentExtension({ name: "EntityArgoCDOverviewCard", component: { lazy: () => import('./components/ArgoCDDetailsCard.esm.js').then((m) => m.ArgoCDDetailsCard) } }) ); const EntityArgoCDHistoryCard = argocdPlugin.provide( createComponentExtension({ name: "EntityArgoCDHistoryCard", component: { lazy: () => import('./components/ArgoCDHistoryCard.esm.js').then((m) => m.ArgoCDHistoryCard) } }) ); export { EntityArgoCDContent, EntityArgoCDHistoryCard, EntityArgoCDOverviewCard, argocdPlugin, entityContentRouteRef }; //# sourceMappingURL=plugin.esm.js.map