-
Notifications
You must be signed in to change notification settings - Fork 0
/
.commitlintrc.js
125 lines (124 loc) · 4.32 KB
/
.commitlintrc.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
const {
utils: { getProjects },
} = require("@commitlint/config-nx-scopes");
/** @type {import('cz-git').UserConfig} */
module.exports = {
rules: {
// @see: https://commitlint.js.org/#/reference-rules
"scope-enum": async (ctx) => [
2,
"always",
[
...(await getProjects(
ctx,
({ name }) => !name.includes("e2e") && !name.includes("sb"),
)),
],
],
},
prompt: {
enableMultipleScopes: true,
scopeEnumSeparator: ",",
alias: { fd: "docs: fix typos" },
messages: {
type: "Select the type of change that you're committing:",
scope: "Denote the SCOPE of this change (optional):",
customScope: "Denote the SCOPE of this change:",
subject:
"Write a SHORT, IMPERATIVE tense description of the change:\n",
body: 'Provide a LONGER description of the change (optional). Use "|" to break new line:\n',
breaking:
'List any BREAKING CHANGES (optional). Use "|" to break new line:\n',
footerPrefixesSelect:
"Select the ISSUES type of changeList by this change (optional):",
customFooterPrefix: "Input ISSUES prefix:",
footer: "List any ISSUES by this change. E.g.: #31, #34:\n",
confirmCommit:
"Are you sure you want to proceed with the commit above?",
},
types: [
{
value: "feat",
name: "feat: A new feature",
emoji: ":sparkles:",
},
{ value: "fix", name: "fix: A bug fix", emoji: ":bug:" },
{
value: "docs",
name: "docs: Documentation only changes",
emoji: ":memo:",
},
{
value: "style",
name: "style: Changes that do not affect the meaning of the code",
emoji: ":lipstick:",
},
{
value: "refactor",
name: "refactor: A code change that neither fixes a bug nor adds a feature",
emoji: ":recycle:",
},
{
value: "perf",
name: "perf: A code change that improves performance",
emoji: ":zap:",
},
{
value: "test",
name: "test: Adding missing tests or correcting existing tests",
emoji: ":white_check_mark:",
},
{
value: "build",
name: "build: Changes that affect the build system or external dependencies",
emoji: ":package:",
},
{
value: "ci",
name: "ci: Changes to our CI configuration files and scripts",
emoji: ":ferris_wheel:",
},
{
value: "chore",
name: "chore: Other changes that don't modify src or test files",
emoji: ":hammer:",
},
{
value: "revert",
name: "revert: Reverts a previous commit",
emoji: ":rewind:",
},
],
useEmoji: false,
emojiAlign: "center",
themeColorCode: "",
allowCustomScopes: true,
allowEmptyScopes: false,
customScopesAlign: "bottom",
customScopesAlias: "custom",
emptyScopesAlias: "empty",
upperCaseSubject: false,
markBreakingChangeMode: false,
allowBreakingChanges: ["feat", "fix"],
breaklineNumber: 100,
breaklineChar: "|",
skipQuestions: [],
issuePrefixes: [
{ value: "closed", name: "closed: ISSUES has been processed" },
],
customIssuePrefixAlign: "top",
emptyIssuePrefixAlias: "skip",
customIssuePrefixAlias: "custom",
allowCustomIssuePrefix: true,
allowEmptyIssuePrefix: true,
confirmColorize: true,
maxHeaderLength: 87,
maxSubjectLength: Infinity,
minSubjectLength: 0,
scopeOverrides: undefined,
defaultBody: "",
defaultIssues: "",
defaultScope: "",
defaultSubject: "",
},
};