@backstage/integration
Version:
Helpers for managing integrations towards external systems
33 lines (30 loc) • 900 B
JavaScript
import { basicIntegrations, defaultScmResolveUrl } from '../helpers.esm.js';
import { readGiteaConfig } from './config.esm.js';
import { getGiteaEditContentsUrl } from './core.esm.js';
class GiteaIntegration {
constructor(config) {
this.config = config;
}
static factory = ({ config }) => {
const configs = config.getOptionalConfigArray("integrations.gitea") ?? [];
const giteaConfigs = configs.map((c) => readGiteaConfig(c));
return basicIntegrations(
giteaConfigs.map((c) => new GiteaIntegration(c)),
(gitea) => gitea.config.host
);
};
get type() {
return "gitea";
}
get title() {
return this.config.host;
}
resolveUrl(options) {
return defaultScmResolveUrl(options);
}
resolveEditUrl(url) {
return getGiteaEditContentsUrl(this.config, url);
}
}
export { GiteaIntegration };
//# sourceMappingURL=GiteaIntegration.esm.js.map