pr-sizewise
Version:
A CLI tool that measures and reports pull request sizes for GitHub and GitLab, helping teams maintain manageable code changes.
38 lines • 1.25 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ENV_MAPPINGS = void 0;
exports.createProvider = createProvider;
const github_1 = require("./github");
const gitlab_1 = require("./gitlab");
const errors_1 = require("../utils/errors");
/**
* Creates a VCS provider instance based on configuration
*/
function createProvider(config) {
switch (config.platform) {
case 'github':
return new github_1.GitHubProvider();
case 'gitlab':
return new gitlab_1.GitLabProvider();
default:
throw new errors_1.PlatformError(`Unsupported platform: ${config.platform}`);
}
}
/**
* Environment variable mappings for different platforms
*/
exports.ENV_MAPPINGS = {
gitlab: {
token: ['GITLAB_TOKEN', 'CI_JOB_TOKEN'],
host: ['GITLAB_HOST', 'CI_SERVER_URL'],
projectId: ['CI_PROJECT_ID', 'GITLAB_PROJECT_ID'],
pullRequestId: ['CI_MERGE_REQUEST_IID', 'GITLAB_MR_IID'],
},
github: {
token: ['GITHUB_TOKEN', 'GH_TOKEN'],
host: ['GITHUB_SERVER_URL', 'GITHUB_HOST'],
projectId: ['GITHUB_REPOSITORY'],
pullRequestId: ['GITHUB_EVENT_NUMBER', 'PR_NUMBER'],
},
};
//# sourceMappingURL=factory.js.map