-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathcommitlint.config.mjs
More file actions
128 lines (126 loc) · 2.88 KB
/
Copy pathcommitlint.config.mjs
File metadata and controls
128 lines (126 loc) · 2.88 KB
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
126
127
128
import { defineConfig } from 'cz-git';
const types = [
'🎉 init',
'✨ feat',
'🐛 fix',
'🚑️ hotfix',
'📝 docs',
'💄 style',
'♻️ refactor',
'⚡️ perf',
'✅ test',
'⬆️ update-deps',
'🔧 configs',
'🔨 chore',
'💥 breaking',
'🚀 deploy',
];
export default defineConfig({
parserPreset: {
parserOpts: {
headerPattern: /^(?<type>.+?)(?:\((?<scope>.*)\))?!?:\s(?<subject>.+)$/,
headerCorrespondence: ['type', 'scope', 'subject'],
},
},
rules: {
'body-leading-blank': [1, 'always'],
'body-max-line-length': [2, 'always', 100],
'footer-leading-blank': [1, 'always'],
'footer-max-line-length': [2, 'always', 100],
'header-max-length': [2, 'always', 100],
'header-trim': [2, 'always'],
'subject-case': [
2,
'never',
['sentence-case', 'start-case', 'pascal-case', 'upper-case'],
],
'subject-empty': [2, 'never'],
'subject-full-stop': [2, 'never', '.'],
'type-case': [2, 'always', 'lower-case'],
'type-empty': [2, 'never'],
'type-enum': [2, 'always', types],
},
prompt: {
alias: {
b: 'chore: bump dependencies',
c: 'chore: update config files',
f: 'docs: fix typos',
':': 'docs: update README',
},
themeColorCode: '38;5;046',
types: [
{
value: 'init',
name: 'init: 🎉 Begin a project.',
emoji: '🎉',
},
{
value: 'feat',
name: 'feat: ✨ A new feature',
emoji: '✨',
},
{
value: 'fix',
name: 'fix: 🐛 A bug fix',
emoji: '🐛',
},
{
value: 'hotfix',
name: 'hotfix: 🚑️ Critical hotfix.',
emoji: '🚑️',
},
{
value: 'docs',
name: 'docs: 📝 Documentation only changes',
emoji: '📝',
},
{
value: 'style',
name: 'style: 💄 Changes that do not affect the meaning of the code',
emoji: '💄',
},
{
value: 'refactor',
name: 'refactor: ♻️ A code change that neither fixes a bug nor adds a feature',
emoji: '♻️',
},
{
value: 'perf',
name: 'perf: ⚡️ A code change that improves performance',
emoji: '⚡️',
},
{
value: 'test',
name: 'test: ✅ Adding missing tests or correcting existing tests',
emoji: '✅',
},
{
value: 'update-deps',
name: 'update-deps: ⬆️ Upgrade dependencies.',
emoji: '⬆️',
},
{
value: 'configs',
name: 'configs: 🔧 Add or update configuration files.',
emoji: '🔧',
},
{
value: 'chore',
name: "chore: 🔨 Other changes that don't modify src or test files",
emoji: '🔨',
},
{
value: 'breaking',
name: 'breaking-change: 💥 Introduce breaking changes.',
emoji: '💥',
},
{
value: 'deploy',
name: 'deploy: 🚀 Deploy stuff.',
emoji: '🚀',
},
],
useEmoji: true,
emojiAlign: 'left',
},
});