@storm-software/git-tools
Version:
Tools for managing Git repositories within a Nx workspace.
229 lines (220 loc) • 6.92 kB
JavaScript
;Object.defineProperty(exports, "__esModule", {value: true});// src/types.ts
var COMMIT_TYPES = {
/* --- Bumps version when selected --- */
"chore": {
"description": "Other changes that don't modify src or test files",
"title": "Chore",
"emoji": "\u2699\uFE0F ",
"semverBump": "patch",
"changelog": {
"title": "Miscellaneous",
"hidden": false
}
},
"fix": {
"description": "A change that resolves an issue previously identified with the package",
"title": "Bug Fix",
"emoji": "\u{1FAB2} ",
"semverBump": "patch",
"changelog": {
"title": "Bug Fixes",
"hidden": false
}
},
"feat": {
"description": "A change that adds a new feature to the package",
"title": "Feature",
"emoji": "\u{1F511} ",
"semverBump": "minor",
"changelog": {
"title": "Features",
"hidden": false
}
},
"ci": {
"description": "Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)",
"title": "Continuous Integration",
"emoji": "\u{1F9F0} ",
"semverBump": "patch",
"changelog": {
"title": "Continuous Integration",
"hidden": false
}
},
"refactor": {
"description": "A code change that neither fixes a bug nor adds a feature",
"title": "Code Refactoring",
"emoji": "\u{1F9EA} ",
"semverBump": "patch",
"changelog": {
"title": "Source Code Improvements",
"hidden": false
}
},
"style": {
"description": "Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)",
"title": "Style Improvements",
"emoji": "\u{1F48E} ",
"semverBump": "patch",
"changelog": {
"title": "Style Improvements",
"hidden": false
}
},
"perf": {
"description": "A code change that improves performance",
"title": "Performance Improvement",
"emoji": "\u23F1\uFE0F ",
"semverBump": "patch",
"changelog": {
"title": "Performance Improvements",
"hidden": false
}
},
/* --- Does not bump version when selected --- */
"docs": {
"description": "A change that only includes documentation updates",
"title": "Documentation",
"emoji": "\u{1F4DC} ",
"semverBump": "none",
"changelog": {
"title": "Documentation",
"hidden": false
}
},
"test": {
"description": "Adding missing tests or correcting existing tests",
"title": "Testing",
"emoji": "\u{1F6A8} ",
"semverBump": "none",
"changelog": {
"title": "Testing",
"hidden": true
}
},
/* --- Not included in commitlint but included in changelog --- */
"deps": {
"description": "Changes that add, update, or remove dependencies. This includes devDependencies and peerDependencies",
"title": "Dependencies",
"emoji": "\u{1F4E6} ",
"hidden": true,
"semverBump": "patch",
"changelog": {
"title": "Dependency Upgrades",
"hidden": false
}
},
/* --- Not included in commitlint or changelog --- */
"build": {
"description": "Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)",
"title": "Build",
"emoji": "\u{1F6E0} ",
"hidden": true,
"semverBump": "none",
"changelog": {
"title": "Build",
"hidden": true
}
},
"release": {
"description": "Publishing a commit containing a newly released version",
"title": "Publish Release",
"emoji": "\u{1F680} ",
"hidden": true,
"semverBump": "none",
"changelog": {
"title": "Publish Release",
"hidden": true
}
}
};
var DEFAULT_COMMIT_QUESTIONS = {
type: {
type: "select",
title: "Commit Type",
description: "Select the commit type that best describes your changes",
enum: Object.keys(COMMIT_TYPES).filter(
(type) => COMMIT_TYPES[type].hidden !== true
).reduce((ret, type) => {
ret[type] = COMMIT_TYPES[type];
return ret;
}, {}),
defaultValue: "chore",
maxLength: 20,
minLength: 3
},
scope: {
type: "select",
title: "Commit Scope",
description: "Select the monorepo project that is primarily impacted by this change",
enum: {},
defaultValue: "monorepo",
maxLength: 50,
minLength: 1
},
subject: {
type: "input",
title: "Commit Subject",
description: "Write a short, imperative tense description of the change",
maxLength: 150,
minLength: 3
},
body: {
type: "input",
title: "Commit Body",
description: "Provide a longer description of the change",
maxLength: 600
},
isBreaking: {
type: "confirm",
title: "Breaking Changes",
description: "Are there any breaking changes as a result of this commit?",
defaultValue: false
},
breakingBody: {
type: "input",
title: "Breaking Changes (Details)",
description: "A BREAKING CHANGE commit requires a body. Please enter a longer description of the commit itself",
when: (answers) => answers.isBreaking === true,
maxLength: 600,
minLength: 3
},
isIssueAffected: {
type: "confirm",
title: "Open Issue Affected",
description: "Does this change impact any open issues?",
defaultValue: false
},
issuesBody: {
type: "input",
title: "Open Issue Affected (Details)",
description: "If issues are closed, the commit requires a body. Please enter a longer description of the commit itself",
when: (answers) => answers.isIssueAffected === true,
maxLength: 600,
minLength: 3
}
};
var DEFAULT_COMMIT_PROMPT_MESSAGES = {
skip: "press enter to skip",
max: "must be %d chars at most",
min: "must be %d chars at least",
emptyWarning: "can not be empty",
upperLimitWarning: "%s is %d characters longer than the upper limit",
lowerLimitWarning: "%s is %d characters less than the lower limit",
closedIssueMessage: "Closes: "
};
var DEFAULT_COMMIT_MESSAGE_FORMAT = "{type}({scope}): {emoji}{subject}";
var DEFAULT_COMMIT_SETTINGS = {
enableMultipleScopes: false,
disableEmoji: true,
breakingChangePrefix: "\u{1F4A3} ",
closedIssuePrefix: "\u2705 ",
format: DEFAULT_COMMIT_MESSAGE_FORMAT
};
var RuleConfigSeverity = /* @__PURE__ */ ((RuleConfigSeverity2) => {
RuleConfigSeverity2[RuleConfigSeverity2["Disabled"] = 0] = "Disabled";
RuleConfigSeverity2[RuleConfigSeverity2["Warning"] = 1] = "Warning";
RuleConfigSeverity2[RuleConfigSeverity2["Error"] = 2] = "Error";
return RuleConfigSeverity2;
})(RuleConfigSeverity || {});
exports.COMMIT_TYPES = COMMIT_TYPES; exports.DEFAULT_COMMIT_QUESTIONS = DEFAULT_COMMIT_QUESTIONS; exports.DEFAULT_COMMIT_PROMPT_MESSAGES = DEFAULT_COMMIT_PROMPT_MESSAGES; exports.DEFAULT_COMMIT_MESSAGE_FORMAT = DEFAULT_COMMIT_MESSAGE_FORMAT; exports.DEFAULT_COMMIT_SETTINGS = DEFAULT_COMMIT_SETTINGS; exports.RuleConfigSeverity = RuleConfigSeverity;