conventional-changelog
Version:
Generate a changelog from git metadata.
62 lines • 4.95 kB
JavaScript
import { hostsOptions } from './hosts/index.js';
export function getHostOptions(repository, context) {
const host = context?.host;
let type;
if (!host || host === repository?.host) {
type = repository?.type;
}
else {
const match = host.match(/github|bitbucket|gitlab/i);
type = match?.[0]?.toLowerCase();
}
if (type && (type in hostsOptions)) {
return hostsOptions[type];
}
return null;
}
export function guessNextTag(previousTag, version = '') {
if (previousTag) {
if (previousTag.startsWith('v') && !version.startsWith('v')) {
return `v${version}`;
}
if (!previousTag.startsWith('v') && version.startsWith('v')) {
return version.replace(/^v/, '');
}
return version;
}
if (!version.startsWith('v')) {
return `v${version}`;
}
return version;
}
export function isUnreleasedVersion(semverTags, version) {
const [lastTag] = semverTags;
return lastTag && version
&& (lastTag === version || lastTag === `v${version}`);
}
export const versionTagRegex = /tag:\s*(.*?)[,)]/i;
export const defaultVersionRegex = /tag:\s*[v=]?(.*?)[,)]/i;
export function defaultCommitTransform(commit, params) {
const { tags, options: { formatDate } } = params;
const prefix = tags?.prefix;
const versionRegex = prefix
? new RegExp(`tag:\\s*[v=]?${prefix}(.*?)[,)]`, 'i')
: defaultVersionRegex;
const { committerDate, gitTags } = commit;
const patch = {
committerDate: committerDate
? formatDate(committerDate)
: committerDate
};
if (typeof gitTags === 'string') {
const matches = gitTags.match(versionRegex);
if (matches) {
patch.version = matches[1];
}
}
return patch;
}
export function bindLogNamespace(namespace, log) {
return (messages) => log(namespace, messages);
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRS9DLE1BQU0sVUFBVSxjQUFjLENBQzVCLFVBQXFELEVBQ3JELE9BQTJDO0lBRTNDLE1BQU0sSUFBSSxHQUFHLE9BQU8sRUFBRSxJQUFJLENBQUE7SUFDMUIsSUFBSSxJQUFJLENBQUE7SUFFUixJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksS0FBSyxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDdkMsSUFBSSxHQUFHLFVBQVUsRUFBRSxJQUFJLENBQUE7SUFDekIsQ0FBQztTQUFNLENBQUM7UUFDTixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLDBCQUEwQixDQUFDLENBQUE7UUFFcEQsSUFBSSxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsRUFBRSxDQUFBO0lBQ2xDLENBQUM7SUFFRCxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxZQUFZLENBQUMsRUFBRSxDQUFDO1FBQ25DLE9BQU8sWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQzNCLENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUMxQixXQUFtQixFQUNuQixPQUFPLEdBQUcsRUFBRTtJQUVaLElBQUksV0FBVyxFQUFFLENBQUM7UUFDaEIsSUFBSSxXQUFXLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzVELE9BQU8sSUFBSSxPQUFPLEVBQUUsQ0FBQTtRQUN0QixDQUFDO1FBRUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzVELE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFDbEMsQ0FBQztRQUVELE9BQU8sT0FBTyxDQUFBO0lBQ2hCLENBQUM7SUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQzdCLE9BQU8sSUFBSSxPQUFPLEVBQUUsQ0FBQTtJQUN0QixDQUFDO0lBRUQsT0FBTyxPQUFPLENBQUE7QUFDaEIsQ0FBQztBQUVELE1BQU0sVUFBVSxtQkFBbUIsQ0FDakMsVUFBb0IsRUFDcEIsT0FBMkI7SUFFM0IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLFVBQVUsQ0FBQTtJQUU1QixPQUFPLE9BQU8sSUFBSSxPQUFPO1dBQ3BCLENBQUMsT0FBTyxLQUFLLE9BQU8sSUFBSSxPQUFPLEtBQUssSUFBSSxPQUFPLEVBQUUsQ0FBQyxDQUFBO0FBQ3pELENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsbUJBQW1CLENBQUE7QUFDbEQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsd0JBQXdCLENBQUE7QUFFM0QsTUFBTSxVQUFVLHNCQUFzQixDQUFDLE1BQWMsRUFBRSxNQUFjO0lBQ25FLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsVUFBVSxFQUFFLEVBQUUsR0FBRyxNQUFNLENBQUE7SUFDaEQsTUFBTSxNQUFNLEdBQUcsSUFBSSxFQUFFLE1BQU0sQ0FBQTtJQUMzQixNQUFNLFlBQVksR0FBRyxNQUFNO1FBQ3pCLENBQUMsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxnQkFBZ0IsTUFBTSxXQUFXLEVBQUUsR0FBRyxDQUFDO1FBQ3BELENBQUMsQ0FBQyxtQkFBbUIsQ0FBQTtJQUN2QixNQUFNLEVBQ0osYUFBYSxFQUNiLE9BQU8sRUFDUixHQUFHLE1BQU0sQ0FBQTtJQUNWLE1BQU0sS0FBSyxHQUFvQjtRQUM3QixhQUFhLEVBQUUsYUFBYTtZQUMxQixDQUFDLENBQUMsVUFBVyxDQUFDLGFBQWEsQ0FBQztZQUM1QixDQUFDLENBQUMsYUFBYTtLQUNsQixDQUFBO0lBRUQsSUFBSSxPQUFPLE9BQU8sS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUNoQyxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFBO1FBRTNDLElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixLQUFLLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUM1QixDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sS0FBSyxDQUFBO0FBQ2QsQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0IsQ0FDOUIsU0FBaUIsRUFDakIsR0FBVztJQUVYLE9BQU8sQ0FBQyxRQUEyQixFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFBO0FBQ2xFLENBQUMifQ==