@gabortorma/mwm
Version:
Multi-repo Workspace Manager
104 lines (101 loc) • 2.84 kB
JavaScript
export { d as defineMWMConfig } from './shared/mwm.Bxg0O5XR.mjs';
import defu from 'defu';
import 'c12';
function defineConfigForWorkspace(commitMessage, tagName, tagAnnotation = commitMessage) {
return {
git: {
requireCleanWorkingDir: true,
commitMessage,
tagAnnotation,
tagName,
requireCommits: true,
requireCommitsFail: false
},
github: {
release: true
},
npm: {
publish: false
}
};
}
function defineConfigForPackage(commitMessage, tagName, tagAnnotation = commitMessage) {
return {
git: {
commitMessage,
tagAnnotation,
tagName,
requireCommits: true,
requireCommitsFail: false
},
github: {
release: true
},
npm: {
publish: true
}
};
}
function defineConfigForRelease(commitMessage, tagName, tagAnnotation = commitMessage) {
return {
git: {
commitMessage,
tagAnnotation,
tagName,
requireCommits: true,
requireCommitsFail: false
},
github: {
release: true
},
npm: {
publish: true
}
};
}
function defineConfigForNuxt(commitMessage, tagName, tagAnnotation = commitMessage) {
return {
git: {
commitMessage,
tagAnnotation,
tagName,
requireCommits: true,
requireCommitsFail: false
},
github: {
release: true
},
npm: {
publish: true
}
};
}
function defineConfigForNuxtLayer(commitMessage, tagName, tagAnnotation = commitMessage) {
return defineConfigForNuxt(commitMessage, tagName, tagAnnotation);
}
function defineConfigForNuxtModule(commitMessage, tagName, tagAnnotation = commitMessage) {
return defineConfigForNuxt(commitMessage, tagName, tagAnnotation);
}
function defineConfigForNitroPlugin(commitMessage, tagName, tagAnnotation = commitMessage) {
return defineConfigForNuxt(commitMessage, tagName, tagAnnotation);
}
function defineReleaseItConfig(preset, name, config) {
const versionTemplate = "${version}";
const commitMessage = name ? `Release: ${name} ${versionTemplate}` : `Release: ${versionTemplate}`;
const tagName = name ? `${name}-v${versionTemplate}` : `v${versionTemplate}`;
switch (preset) {
case "workspace":
return defu(config, defineConfigForWorkspace(commitMessage, tagName));
case "package":
return defu(config, defineConfigForPackage(commitMessage, tagName));
case "release":
return defu(config, defineConfigForRelease(commitMessage, tagName));
case "nuxt-layer":
return defu(config, defineConfigForNuxtLayer(commitMessage, tagName));
case "nuxt-module":
return defu(config, defineConfigForNuxtModule(commitMessage, tagName));
case "nitro-plugin":
return defu(config, defineConfigForNitroPlugin(commitMessage, tagName));
}
}
export { defineReleaseItConfig };