-
Notifications
You must be signed in to change notification settings - Fork 9
Expand file tree
/
Copy path.lintstagedrc.js
More file actions
44 lines (37 loc) · 1.34 KB
/
.lintstagedrc.js
File metadata and controls
44 lines (37 loc) · 1.34 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
/**
* Lint-Staged Configuration
* =========================
* Runs on staged files during pre-commit hook.
*
* Rules:
* - TypeScript/TSX: ESLint (fix) + Prettier
* - JavaScript/JSX: ESLint (fix) + Prettier
* - CSS/SCSS: Stylelint (fix) + Prettier
* - JSON/YAML/MD: Prettier only
* - Public JS files: Prettier only (service workers have special globals)
*/
module.exports = {
// TypeScript/React files in src directories
'packages/**/src/**/*.{ts,tsx}': [
'eslint --fix --max-warnings=0 --no-warn-ignored',
'prettier --write'
],
// JavaScript/React files in src directories
'packages/**/src/**/*.{js,jsx}': [
'eslint --fix --max-warnings=0 --no-warn-ignored',
'prettier --write'
],
// Public directory files (service workers, etc.) - format only
'packages/**/public/**/*.{js,ts}': ['prettier --write'],
// CSS/SCSS files - lint and format
'packages/**/*.{css,scss}': ['stylelint --fix --allow-empty-input', 'prettier --write'],
// Config files at root and in packages
'*.{json,yml,yaml}': ['prettier --write'],
'packages/**/*.{json,yml,yaml}': ['prettier --write'],
// Markdown files
'*.md': ['prettier --write'],
'packages/**/*.md': ['prettier --write'],
// Config JS files (eslint, prettier, next, etc.)
'*.{js,cjs,mjs}': ['prettier --write'],
'packages/**/*.config.{js,ts,mjs}': ['prettier --write']
}