@gitlab/semantic-release-merge-request-analyzer
Version:
Semantic release plugin to determine version based on GitLab merge request labels
63 lines (59 loc) • 1.23 kB
JavaScript
/**
* Release types in order of precedence (highest first).
*/
export const releaseTypePrecedence = [
"major",
"premajor",
"minor",
"preminor",
"patch",
"prepatch",
"prerelease",
];
/**
* Emoji and title mappings for release note sections.
*/
export const releaseNoteSections = {
emojis: {
major: "💥",
premajor: "⚡",
minor: "🚀",
preminor: "✨",
patch: "🐛",
prepatch: "🔧",
prerelease: "🔖",
other: "🔄",
},
titles: {
major: "Breaking Changes",
premajor: "Pre-major Changes",
minor: "Features",
preminor: "Pre-minor Changes",
patch: "Bug Fixes",
prepatch: "Pre-patch Changes",
prerelease: "Pre-release Changes",
other: "Other Changes",
},
};
/**
* Default label configuration for release types.
*
* @returns {Object} Default label configuration.
*/
export function getDefaultLabelConfig() {
return {
major: ["breaking change"],
premajor: [],
minor: ["type::feature"],
preminor: [],
patch: ["type::bug"],
prepatch: [],
prerelease: [],
};
}
// You can also provide a default export if needed
export default {
getDefaultLabelConfig,
releaseTypePrecedence,
releaseNoteSections,
};