@storm-software/git-tools
Version:
Tools for managing Git repositories within a Nx workspace.
272 lines (266 loc) • 8.09 kB
JavaScript
// ../conventional-changelog/src/commit-types.ts
var DEFAULT_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
}
}
};
// ../conventional-changelog/src/utilities/constants.ts
var CHANGELOG_COMMIT_TYPES_OBJECT = Object.freeze(
Object.entries(DEFAULT_COMMIT_TYPES).reduce(
(ret, [key, commitType]) => {
ret[key] = {
...commitType.changelog,
type: key,
section: commitType.changelog?.title || commitType.title,
hidden: commitType.changelog?.hidden
};
return ret;
},
{}
)
);
var CHANGELOG_COMMIT_TYPES = [
CHANGELOG_COMMIT_TYPES_OBJECT.feat,
CHANGELOG_COMMIT_TYPES_OBJECT.fix,
CHANGELOG_COMMIT_TYPES_OBJECT.chore,
CHANGELOG_COMMIT_TYPES_OBJECT.deps,
CHANGELOG_COMMIT_TYPES_OBJECT.docs,
CHANGELOG_COMMIT_TYPES_OBJECT.style,
CHANGELOG_COMMIT_TYPES_OBJECT.refactor,
CHANGELOG_COMMIT_TYPES_OBJECT.perf,
CHANGELOG_COMMIT_TYPES_OBJECT.build,
CHANGELOG_COMMIT_TYPES_OBJECT.ci,
CHANGELOG_COMMIT_TYPES_OBJECT.test
];
CHANGELOG_COMMIT_TYPES.map(
(entry) => entry.type
);
CHANGELOG_COMMIT_TYPES.map(
(entry) => entry.section
);
// ../conventional-changelog/src/configs/minimal.ts
var changelogs = {
props: {
ignoreCommits: void 0,
types: CHANGELOG_COMMIT_TYPES,
bumpStrict: true,
scope: void 0,
scopeOnly: false
}
};
var commitlint = {
helpUrl: "https://developer.stormsoftware.com/commitlint/minimal",
rules: {
"body-leading-blank": [1 /* Warning */, "always"],
"body-max-length": [2 /* Error */, "always", 600],
"footer-leading-blank": [1 /* Warning */, "always"],
"footer-max-line-length": [2 /* Error */, "always", 150],
"header-max-length": [2 /* Error */, "always", 150],
"header-trim": [2 /* Error */, "always"],
"subject-case": [2 /* Error */, "always", ["sentence-case"]],
"subject-empty": [2 /* Error */, "never"],
"subject-full-stop": [2 /* Error */, "never", "."],
"subject-max-length": [2 /* Error */, "always", 150],
"subject-min-length": [2 /* Error */, "always", 3],
"type-case": [2 /* Error */, "always", "kebab-case"],
"type-empty": [2 /* Error */, "never"],
"type-enum": [
2 /* Error */,
"always",
Object.keys(DEFAULT_COMMIT_TYPES)
],
"type-max-length": [2 /* Error */, "always", 20],
"type-min-length": [2 /* Error */, "always", 3],
"scope-empty": [2 /* Error */, "always"]
},
settings: {
enableMultipleScopes: false,
disableEmoji: true,
breakingChangePrefix: "\u{1F4A3} ",
closedIssuePrefix: "\u2705 ",
format: "{type}: {emoji}{subject}"
}
};
var config = {
types: DEFAULT_COMMIT_TYPES,
changelogs,
commitlint
};
var minimal_default = config;
// ../conventional-changelog/src/configs/monorepo.ts
var changelogs2 = {
props: {
ignoreCommits: void 0,
types: CHANGELOG_COMMIT_TYPES,
bumpStrict: true,
scope: ["monorepo"],
scopeOnly: true
}
};
var commitlint2 = {
helpUrl: "https://developer.stormsoftware.com/commitlint/monorepo",
rules: {
"body-leading-blank": [1 /* Warning */, "always"],
"body-max-length": [2 /* Error */, "always", 600],
"footer-leading-blank": [1 /* Warning */, "always"],
"footer-max-line-length": [2 /* Error */, "always", 150],
"header-max-length": [2 /* Error */, "always", 150],
"header-trim": [2 /* Error */, "always"],
"subject-case": [2 /* Error */, "always", ["sentence-case"]],
"subject-empty": [2 /* Error */, "never"],
"subject-full-stop": [2 /* Error */, "never", "."],
"subject-max-length": [2 /* Error */, "always", 150],
"subject-min-length": [2 /* Error */, "always", 3],
"type-case": [2 /* Error */, "always", "kebab-case"],
"type-empty": [2 /* Error */, "never"],
"type-enum": [
2 /* Error */,
"always",
Object.keys(DEFAULT_COMMIT_TYPES)
],
"type-max-length": [2 /* Error */, "always", 20],
"type-min-length": [2 /* Error */, "always", 3],
"scope-case": [2 /* Error */, "always", ["kebab-case"]],
"scope-empty": [2 /* Error */, "never"]
},
settings: {
enableMultipleScopes: false,
disableEmoji: true,
breakingChangePrefix: "\u{1F4A3} ",
closedIssuePrefix: "\u2705 ",
format: "{type}({scope}): {emoji}{subject}"
}
};
var config2 = {
types: DEFAULT_COMMIT_TYPES,
changelogs: changelogs2,
commitlint: commitlint2
};
var monorepo_default = config2;
// ../conventional-changelog/src/configs/index.ts
var COMMIT_CONFIGS = { minimal: minimal_default, monorepo: monorepo_default };
export { COMMIT_CONFIGS, DEFAULT_COMMIT_TYPES };