1 |
import { RuleConfigSeverity, type UserConfig } from "@commitlint/types"; |
2 |
|
3 |
const config: UserConfig = { |
4 |
extends: ["@commitlint/config-conventional"], |
5 |
parserPreset: "conventional-changelog-angular", |
6 |
rules: { |
7 |
"type-enum": [ |
8 |
RuleConfigSeverity.Error, |
9 |
"always", |
10 |
[ |
11 |
"feat", |
12 |
"fix", |
13 |
"docs", |
14 |
"style", |
15 |
"refactor", |
16 |
"perf", |
17 |
"test", |
18 |
"chore", |
19 |
"revert", |
20 |
"build", |
21 |
"ci", |
22 |
"release", |
23 |
"deps", |
24 |
"security", |
25 |
"i18n", |
26 |
"merge" |
27 |
] |
28 |
], |
29 |
"signed-off-by": [RuleConfigSeverity.Error, "always", "Signed-off-by: "], |
30 |
"body-max-length": [RuleConfigSeverity.Error, "always", 1024] |
31 |
}, |
32 |
prompt: { |
33 |
settings: {}, |
34 |
messages: { |
35 |
skip: ":skip", |
36 |
max: "upper %d chars", |
37 |
min: "%d chars at least", |
38 |
emptyWarning: "can not be empty", |
39 |
upperLimitWarning: "over limit", |
40 |
lowerLimitWarning: "below limit" |
41 |
}, |
42 |
questions: { |
43 |
type: { |
44 |
description: "Select the type of change that you're committing:", |
45 |
enum: { |
46 |
feat: { |
47 |
title: "Features", |
48 |
description: "A new feature", |
49 |
emoji: "✨" |
50 |
}, |
51 |
fix: { |
52 |
title: "Bug Fixes", |
53 |
description: "A bug fix", |
54 |
emoji: "🐛" |
55 |
}, |
56 |
docs: { |
57 |
title: "Documentation", |
58 |
description: "Documentation only changes", |
59 |
emoji: "📚" |
60 |
}, |
61 |
style: { |
62 |
title: "Styles", |
63 |
description: |
64 |
"Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)", |
65 |
emoji: "💎" |
66 |
}, |
67 |
refactor: { |
68 |
title: "Code Refactoring", |
69 |
description: "A code change that neither fixes a bug nor adds a feature", |
70 |
emoji: "📦" |
71 |
}, |
72 |
perf: { |
73 |
title: "Performance Improvements", |
74 |
description: "A code change that improves performance", |
75 |
emoji: "🚀" |
76 |
}, |
77 |
test: { |
78 |
title: "Tests", |
79 |
description: "Adding missing tests or correcting existing tests", |
80 |
emoji: "🚨" |
81 |
}, |
82 |
build: { |
83 |
title: "Builds", |
84 |
description: |
85 |
"Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)", |
86 |
emoji: "🛠" |
87 |
}, |
88 |
ci: { |
89 |
title: "Continuous Integrations", |
90 |
description: |
91 |
"Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)", |
92 |
emoji: "⚙️" |
93 |
}, |
94 |
chore: { |
95 |
title: "Chores", |
96 |
description: "Other changes that don't modify src or test files", |
97 |
emoji: "♻️" |
98 |
}, |
99 |
revert: { |
100 |
title: "Reverts", |
101 |
description: "Reverts a previous commit", |
102 |
emoji: "🗑" |
103 |
}, |
104 |
release: { |
105 |
title: "Release", |
106 |
description: "Create a release commit", |
107 |
emoji: "🔖" |
108 |
}, |
109 |
deps: { |
110 |
title: "Dependencies", |
111 |
description: "Update dependencies", |
112 |
emoji: "📦" |
113 |
}, |
114 |
security: { |
115 |
title: "Security", |
116 |
description: "Fix a security issue", |
117 |
emoji: "🔒" |
118 |
}, |
119 |
i18n: { |
120 |
title: "Internationalization", |
121 |
description: "Internationalization or localization changes", |
122 |
emoji: "🌐" |
123 |
} |
124 |
} |
125 |
}, |
126 |
scope: { |
127 |
description: "What is the scope of this change (e.g. component or file name)" |
128 |
}, |
129 |
subject: { |
130 |
description: "Write a short, imperative tense description of the change" |
131 |
}, |
132 |
body: { |
133 |
description: "Provide a longer description of the change" |
134 |
}, |
135 |
isBreaking: { |
136 |
description: "Are there any breaking changes?" |
137 |
}, |
138 |
breakingBody: { |
139 |
description: |
140 |
"A BREAKING CHANGE commit requires a body. Please enter a longer description of the commit itself" |
141 |
}, |
142 |
breaking: { |
143 |
description: "Describe the breaking changes" |
144 |
}, |
145 |
isIssueAffected: { |
146 |
description: "Does this change affect any open issues?" |
147 |
}, |
148 |
issuesBody: { |
149 |
description: |
150 |
"If issues are closed, the commit requires a body. Please enter a longer description of the commit itself" |
151 |
}, |
152 |
issues: { |
153 |
description: 'Add issue references (e.g. "fix #123", "re #123".)' |
154 |
} |
155 |
} |
156 |
} |
157 |
}; |
158 |
|
159 |
export default config; |