backport
Version:
A CLI tool that automates the process of backporting commits
22 lines • 1.05 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.copySourcePullRequestLabelsToTargetPullRequest = void 0;
const addLabelsToPullRequest_1 = require("../github/v3/addLabelsToPullRequest");
async function copySourcePullRequestLabelsToTargetPullRequest(options, commits, pullNumber) {
const labels = getNonBackportLabels(commits);
if (labels.length > 0) {
await (0, addLabelsToPullRequest_1.addLabelsToPullRequest)({ ...options, pullNumber, labels });
}
}
exports.copySourcePullRequestLabelsToTargetPullRequest = copySourcePullRequestLabelsToTargetPullRequest;
function getNonBackportLabels(commits) {
return commits.flatMap((commit) => {
if (!commit.sourcePullRequest) {
return [];
}
const backportLabels = commit.targetPullRequestStates.map((pr) => pr.label);
const labels = commit.sourcePullRequest.labels.filter((label) => !backportLabels.includes(label));
return labels;
});
}
//# sourceMappingURL=copySourcePullRequestLabels.js.map