@immobiliarelabs/backstage-plugin-gitlab
Version:
139 lines (136 loc) • 4.26 kB
JavaScript
import { createRouteRef, createPlugin, createApiFactory, configApiRef, discoveryApiRef, identityApiRef, gitlabAuthApiRef, createRoutableExtension, createComponentExtension } from '@backstage/core-plugin-api';
import { GitlabCIApiRef } from './api/GitlabCIApi.esm.js';
import { GitlabCIClient } from './api/GitlabCIClient.esm.js';
const rootRouteRef = createRouteRef({
id: "Gitlab"
});
const gitlabPlugin = createPlugin({
id: "Gitlab",
apis: [
createApiFactory({
api: GitlabCIApiRef,
deps: {
configApi: configApiRef,
discoveryApi: discoveryApiRef,
identityApi: identityApiRef,
gitlabAuthApi: gitlabAuthApiRef
},
factory: ({
configApi,
discoveryApi,
identityApi,
gitlabAuthApi
}) => GitlabCIClient.setupAPI({
discoveryApi,
identityApi,
codeOwnersPath: configApi.getOptionalString(
"gitlab.defaultCodeOwnersPath"
),
readmePath: configApi.getOptionalString(
"gitlab.defaultReadmePath"
),
gitlabAuthApi,
useOAuth: configApi.getOptionalBoolean("gitlab.useOAuth"),
cache: {
enabled: configApi.getOptionalBoolean(
"gitlab.cache.enabled"
),
ttl: configApi.getOptionalNumber("gitlab.cache.ttl")
}
})
})
]
});
const EntityGitlabContent = gitlabPlugin.provide(
createRoutableExtension({
name: "EntityGitlabContent",
component: () => import('./components/GitlabCI/index.esm.js').then((m) => m.GitlabCI),
mountPoint: rootRouteRef
})
);
const EntityGitlabLanguageCard = gitlabPlugin.provide(
createComponentExtension({
name: "EntityGitlabLanguageCard",
component: {
lazy: () => import('./components/widgets/index.esm.js').then(
(m) => m.LanguagesCard
)
}
})
);
const EntityGitlabPeopleCard = gitlabPlugin.provide(
createComponentExtension({
name: "EntityGitlabPeopleCard",
component: {
lazy: () => import('./components/widgets/index.esm.js').then((m) => m.PeopleCard)
}
})
);
const EntityGitlabMergeRequestsTable = gitlabPlugin.provide(
createComponentExtension({
name: "EntityGitlabMergeRequestsTable",
component: {
lazy: () => import('./components/widgets/index.esm.js').then(
(m) => m.MergeRequestsTable
)
}
})
);
const EntityGitlabMergeRequestStatsCard = gitlabPlugin.provide(
createComponentExtension({
name: "EntityGitlabMergeRequestStatsCard",
component: {
lazy: () => import('./components/widgets/index.esm.js').then(
(m) => m.MergeRequestStats
)
}
})
);
const EntityGitlabPipelinesTable = gitlabPlugin.provide(
createComponentExtension({
name: "EntityGitlabPipelinesTable",
component: {
lazy: () => import('./components/widgets/index.esm.js').then(
(m) => m.PipelinesTable
)
}
})
);
const EntityGitlabReleasesCard = gitlabPlugin.provide(
createComponentExtension({
name: "EntityGitlabReleasesCard",
component: {
lazy: () => import('./components/widgets/index.esm.js').then(
(m) => m.ReleasesCard
)
}
})
);
const EntityGitlabCoverageCard = gitlabPlugin.provide(
createComponentExtension({
name: "EntityGitlabCoverageCard",
component: {
lazy: () => import('./components/widgets/index.esm.js').then(
(m) => m.CoverageCard
)
}
})
);
const EntityGitlabIssuesTable = gitlabPlugin.provide(
createComponentExtension({
name: "EntityGitlabIssuesTable",
component: {
lazy: () => import('./components/widgets/index.esm.js').then((m) => m.IssuesTable)
}
})
);
const EntityGitlabReadmeCard = gitlabPlugin.provide(
createComponentExtension({
name: "EntityGitlabReadmeCard",
component: {
lazy: () => import('./components/widgets/index.esm.js').then((m) => m.ReadmeCard)
}
})
);
export { EntityGitlabContent, EntityGitlabCoverageCard, EntityGitlabIssuesTable, EntityGitlabLanguageCard, EntityGitlabMergeRequestStatsCard, EntityGitlabMergeRequestsTable, EntityGitlabPeopleCard, EntityGitlabPipelinesTable, EntityGitlabReadmeCard, EntityGitlabReleasesCard, gitlabPlugin, rootRouteRef };
//# sourceMappingURL=plugin.esm.js.map