forked from pixijs/pixijs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.eslintrc.json
113 lines (113 loc) · 4.32 KB
/
.eslintrc.json
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
{
"extends": ["@pixi/eslint-config"],
"plugins": ["import", "jsdoc", "simple-import-sort", "no-mixed-operators", "jest"],
"ignorePatterns": ["**/*.index.d.ts"],
"settings": {
"jsdoc": {
"mode": "typescript",
"tagNamePreference": {
"method": "method",
"function": "function",
"extends": "extends",
"typeParam": "typeParam",
"api": "api"
}
}
},
"parserOptions": {
"project": "./tsconfig.json"
},
"rules": {
"camelcase": [1, { "allow": ["^v\\d{1,}_\\d{1,}_\\d{1,}$"] }],
"@typescript-eslint/triple-slash-reference": [1, { "path": "always" }],
"@typescript-eslint/consistent-type-imports": [1, { "disallowTypeAnnotations": false }],
"@typescript-eslint/type-annotation-spacing": 1,
"jsdoc/multiline-blocks": [1, { "noMultilineBlocks": true, "minimumLengthForMultiline": 115 }],
"jsdoc/check-access": 1,
"jsdoc/check-alignment": 1,
"jsdoc/check-param-names": 1,
"jsdoc/check-property-names": 1,
"jsdoc/check-tag-names": 1,
"jsdoc/check-types": 1,
"jsdoc/check-values": 1,
"jsdoc/empty-tags": 1,
"jsdoc/implements-on-classes": 1,
"jsdoc/tag-lines": 1,
"jsdoc/no-multi-asterisks": [1, { "allowWhitespace": true }],
"jsdoc/require-param": 1,
"jsdoc/require-param-description": 0,
"jsdoc/require-param-name": 1,
"jsdoc/require-param-type": ["warn", { "contexts": ["TSMethodSignature"] }],
"jsdoc/require-property": 1,
"jsdoc/require-property-description": 1,
"jsdoc/require-property-name": 1,
"jsdoc/require-property-type": 1,
"jsdoc/require-returns-description": 1,
"jsdoc/require-hyphen-before-param-description": 1,
"jsdoc/valid-types": 1,
"no-mixed-operators": "off",
"no-mixed-operators/no-mixed-operators": 1,
"@typescript-eslint/no-unused-expressions": [1, { "allowShortCircuit": true, "allowTernary": true }],
"@typescript-eslint/no-floating-promises": "error",
"@typescript-eslint/prefer-readonly": "error",
"@typescript-eslint/explicit-member-accessibility": [
"error",
{
"accessibility": "explicit",
"overrides": {
"accessors": "off",
"constructors": "no-public",
"methods": "explicit",
"properties": "explicit",
"parameterProperties": "explicit"
}
}
],
"no-void": ["error", { "allowAsStatement": true }],
"@typescript-eslint/naming-convention": [
"error",
{
"selector": "memberLike",
"modifiers": ["private"],
"format": ["camelCase"],
"leadingUnderscore": "require"
}
],
"@typescript-eslint/no-unsafe-declaration-merging": 0,
"@typescript-eslint/no-duplicate-enum-values": 0
},
"overrides": [
{
"files": ["*.tests.ts", "*.test.ts"],
"plugins": ["jest"],
"extends": ["plugin:jest/recommended"],
"globals": {
"expect": false,
"assert": false,
"sinon": false
},
"rules": {
"@typescript-eslint/explicit-member-accessibility": 0,
"@typescript-eslint/no-unused-expressions": 0,
"@typescript-eslint/dot-notation": [
0,
{
"allowPrivateClassPropertyAccess": true,
"allowProtectedClassPropertyAccess": true,
"allowIndexSignaturePropertyAccess": true
}
],
"dot-notation": 0,
"jest/no-conditional-expect": "off",
"jest/no-standalone-expect": "off",
"jest/expect-expect": [
"error",
{
"assertFunctionNames": ["expect", "check32BitColorMatches", "assertRemovedFromParent"],
"additionalTestBlockFunctions": [""]
}
]
}
}
]
}