-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.json
More file actions
106 lines (104 loc) · 3.28 KB
/
index.json
File metadata and controls
106 lines (104 loc) · 3.28 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
{
"$schema": "./node_modules/oxlint/configuration_schema.json",
"plugins": [
"import",
"typescript",
"oxc",
"unicorn",
"vitest",
"jest"
],
"env": {
"es2024": true
},
"categories": {
"perf": "error",
"correctness": "error",
"pedantic": "error"
},
"rules": {
// ============================================================
// Core/ESLint rules
// ============================================================
// Allow using any TypeScript types without restrictions
"ban-types": "off",
// Switch statements don't require a default case
"default-case": "off",
// Functions don't require explicit return type annotations
"explicit-function-return-type": "off",
// No limit on the number of classes per file
"max-classes-per-file": "off",
// Warn when nesting exceeds 5 levels to maintain readability
"max-depth": [
"warn",
{
"max": 5
}
],
// No limit on the number of import/require statements per file
"max-dependencies": "off",
// No limit on file length
"max-lines": "off",
// No limit on function length
"max-lines-per-function": "off",
// Allow using async/await syntax
"no-async-await": "off",
// Allow await inside loops
"no-await-in-loop": "off",
// Allow bitwise operators (&, |, ^, ~, <<, >>, >>>)
"no-bitwise": "off",
// Allow CommonJS require/module.exports
"no-commonjs": "off",
// Allow console statements
"no-console": "warn",
// Allow default exports
"no-default-export": "off",
// Warn about disabled tests to prevent them from being forgotten
"no-disabled-tests": "warn",
// Allow if statements without else after an else block
"no-lonely-if": "off",
// Allow TypeScript non-null assertions (!)
"no-non-null-assertion": "off",
// Allow optional chaining (?.)
"no-optional-chaining": "off",
// Allow unary ++ and -- operators
"no-plusplus": "off",
// Allow rest/spread syntax (...obj, { ...rest })
"no-rest-spread-properties": "off",
// Allow using undefined as a value
"no-undefined": "off",
// Allow unused variables (handled by TypeScript)
"no-unused-vars": "off",
// Allow explicit return of undefined
"no-useless-undefined": "off",
// Don't enforce String.codePointAt over String.charCodeAt
"prefer-code-point": "off",
// Don't enforce Math.trunc over bitwise operations
"prefer-math-trunc": "off",
// Don't enforce querySelector over getElementById
"prefer-query-selector": "off",
// Don't enforce String.slice over String.substr/substring
"prefer-string-slice": "off",
// Warn about async functions that don't use await
"require-await": "warn",
// ============================================================
// Unicorn plugin rules
// ============================================================
// Prefer using `undefined` over `null` for consistency
"unicorn/no-null": "error",
// Don't enforce Set.has() over Array.includes()
"unicorn/prefer-set-has": "off",
// ============================================================
// Vitest plugin rules
// ============================================================
// Always use `test()` instead of `it()` for consistency
// Uses 'jest' because they use the same logic, apparently
"jest/consistent-test-it": [
"error",
{
"fn": "test",
"withinDescribe": "test"
}
]
}
}