-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
/
Copy patheslint.config.mjs
71 lines (70 loc) · 1.63 KB
/
eslint.config.mjs
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
import antfu from '@antfu/eslint-config'
import eslintPluginJsonSchemaValidator from 'eslint-plugin-json-schema-validator'
export default antfu(
{
formatters: true,
typescript: true,
},
...eslintPluginJsonSchemaValidator.configs['flat/recommended'],
{
rules: {
'new-cap': [
'error',
{ newIsCapExceptions: ['iFrame'], capIsNew: false, newIsCap: true, properties: true },
],
'jsonc/sort-keys': [
'error',
{
pathPattern: '^$',
order: [
'$schema',
'apiVersion',
'author',
'contributors',
'service',
'altnames',
'description',
'url',
'regExp',
'version',
'logo',
'thumbnail',
'color',
'category',
'tags',
'iframe',
'iFrameRegExp',
'readLogs',
'settings',
'mobile',
],
},
{
pathPattern: '^settings$',
order: ['id', 'title', 'icon', 'value', 'placeholder', 'if'],
},
{
pathPattern: '^settings\\.if$',
order: { type: 'asc' },
},
{
pathPattern: '^description$',
order: { type: 'asc' },
},
],
'json-schema-validator/no-invalid': 'error',
},
},
{
files: ['websites/**/*.ts'],
languageOptions: {
parser: await import('@typescript-eslint/parser'),
parserOptions: {
project: './tsconfig.base.json',
},
},
rules: {
'ts/no-deprecated': 'error',
},
},
)