@w0s/eslint-config 9.0.0 → 9.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/eslint.config.js CHANGED
@@ -56,7 +56,6 @@ export default defineConfig(
56
56
  },
57
57
  ],
58
58
  'import/no-unresolved': 'off',
59
- '@typescript-eslint/no-extraneous-class': 'off',
60
59
  '@typescript-eslint/no-unused-vars': [
61
60
  'error',
62
61
  {
@@ -66,6 +65,7 @@ export default defineConfig(
66
65
  '@typescript-eslint/strict-boolean-expressions': [
67
66
  'error',
68
67
  {
68
+ allowNullableBoolean: true,
69
69
  allowNullableObject: false,
70
70
  allowNumber: false,
71
71
  allowString: false,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@w0s/eslint-config",
3
- "version": "9.0.0",
3
+ "version": "9.1.0",
4
4
  "description": "ESLint configuration file used on `w0s.jp`",
5
5
  "keywords": [
6
6
  "eslint",
@@ -1,147 +1,148 @@
1
- /** @type {import("eslint").Linter.Config} */
2
- export default {
3
- rules: {
4
- 'arrow-body-style': 'error', // eslint-config-airbnb-base@15.0.0; es6
5
- 'block-scoped-var': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
6
- camelcase: [
7
- 'error',
8
- {
9
- properties: 'never',
10
- },
11
- ], // eslint-config-airbnb-base@15.0.0; style
12
- 'class-methods-use-this': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
13
- 'consistent-return': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
14
- curly: 'error',
15
- 'default-case': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
16
- 'default-case-last': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
17
- 'default-param-last': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
18
- 'dot-notation': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
19
- eqeqeq: 'error',
20
- 'func-names': 'warn', // eslint-config-airbnb-base@15.0.0; style
21
- 'func-style': 'error',
22
- 'grouped-accessor-pairs': ['error', 'getBeforeSet'],
23
- 'guard-for-in': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
24
- 'logical-assignment-operators': 'error',
25
- 'max-classes-per-file': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
26
- 'new-cap': 'error',
27
- 'no-alert': 'warn', // eslint-config-airbnb-base@15.0.0; best-practices
28
- 'no-array-constructor': 'error', // eslint-config-airbnb-base@15.0.0; style
29
- 'no-bitwise': 'error', // eslint-config-airbnb-base@15.0.0; style
30
- 'no-caller': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
31
- 'no-continue': 'error', // eslint-config-airbnb-base@15.0.0; style
32
- 'no-else-return': 'error',
33
- 'no-empty': [
34
- 'error',
35
- {
36
- allowEmptyCatch: true,
37
- },
38
- ], // ✅
39
- 'no-empty-function': 'error',
40
- 'no-empty-static-block': 'error',
41
- 'no-eval': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
42
- 'no-extend-native': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
43
- 'no-extra-bind': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
44
- 'no-extra-label': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
45
- 'no-implicit-coercion': 'error',
46
- 'no-implicit-globals': 'error',
47
- 'no-implied-eval': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
48
- 'no-invalid-this': 'error',
49
- 'no-iterator': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
50
- 'no-label-var': 'error', // eslint-config-airbnb-base@15.0.0; variables
51
- 'no-labels': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
52
- 'no-lone-blocks': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
53
- 'no-lonely-if': 'error', // eslint-config-airbnb-base@15.0.0; style
54
- 'no-loop-func': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
55
- 'no-multi-assign': 'error', // eslint-config-airbnb-base@15.0.0; style
56
- 'no-multi-str': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
57
- 'no-nested-ternary': 'error', // eslint-config-airbnb-base@15.0.0; style
58
- 'no-new': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
59
- 'no-new-func': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
60
- 'no-new-wrappers': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
61
- 'no-object-constructor': 'error',
62
- 'no-octal-escape': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
63
- 'no-param-reassign': [
64
- 'error',
65
- {
66
- props: false,
67
- },
68
- ],
69
- 'no-plusplus': 'error', // eslint-config-airbnb-base@15.0.0; style
70
- 'no-proto': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
71
- 'no-restricted-globals': ['error', 'isFinite', 'isNaN'], // eslint-config-airbnb-base@15.0.0; variables
72
- 'no-restricted-syntax': ['error', 'ForInStatement', 'LabeledStatement', 'WithStatement'], // eslint-config-airbnb-base@15.0.0; style
73
- 'no-return-assign': ['error', 'always'], // eslint-config-airbnb-base@15.0.0; best-practices
74
- 'no-script-url': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
75
- 'no-sequences': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
76
- 'no-shadow': 'error', // eslint-config-airbnb-base@15.0.0; variables
77
- 'no-throw-literal': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
78
- 'no-undef-init': 'error', // eslint-config-airbnb-base@15.0.0; variables
79
- 'no-underscore-dangle': 'error', // eslint-config-airbnb-base@15.0.0; style
80
- 'no-unneeded-ternary': [
81
- 'error',
82
- {
83
- defaultAssignment: false,
84
- },
85
- ], // eslint-config-airbnb-base@15.0.0; style
86
- 'no-unused-expressions': [
87
- 'error',
88
- {
89
- allowShortCircuit: false,
90
- allowTernary: false,
91
- allowTaggedTemplates: false,
92
- },
93
- ], // eslint-config-airbnb-base@15.0.0; best-practices
94
- 'no-use-before-define': 'error', // eslint-config-airbnb-base@15.0.0; variables
95
- 'no-useless-computed-key': 'error', // eslint-config-airbnb-base@15.0.0; es6
96
- 'no-useless-constructor': 'error', // eslint-config-airbnb-base@15.0.0; es6
97
- 'no-useless-rename': 'error', // eslint-config-airbnb-base@15.0.0; es6
98
- 'no-useless-call': 'error',
99
- 'no-useless-concat': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
100
- 'no-useless-return': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
101
- 'no-var': 'error', // eslint-config-airbnb-base@15.0.0; es6
102
- 'no-void': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
103
- 'object-shorthand': ['error', 'methods'],
104
- 'one-var': ['error', 'never'], // eslint-config-airbnb-base@15.0.0; style
105
- 'operator-assignment': ['error', 'always'], // eslint-config-airbnb-base@15.0.0; style
106
- 'prefer-arrow-callback': 'error', // eslint-config-airbnb-base@15.0.0; es6
107
- 'prefer-const': [
108
- 'error',
109
- {
110
- destructuring: 'any',
111
- ignoreReadBeforeAssign: true,
112
- },
113
- ], // eslint-config-airbnb-base@15.0.0; es6
114
- 'prefer-destructuring': [
115
- 'error',
116
- {
117
- VariableDeclarator: {
118
- array: false,
119
- object: true,
120
- },
121
- AssignmentExpression: {
122
- array: true,
123
- object: false,
124
- },
125
- },
126
- ], // eslint-config-airbnb-base@15.0.0; es6
127
- 'prefer-exponentiation-operator': 'error', // eslint-config-airbnb-base@15.0.0; style
128
- 'prefer-numeric-literals': 'error', // eslint-config-airbnb-base@15.0.0; es6
129
- 'prefer-object-has-own': 'error',
130
- 'prefer-object-spread': 'error', // eslint-config-airbnb-base@15.0.0; style
131
- 'prefer-promise-reject-errors': 'error',
132
- 'prefer-regex-literals': [
133
- 'error',
134
- {
135
- disallowRedundantWrapping: true,
136
- },
137
- ], // eslint-config-airbnb-base@15.0.0; best-practices
138
- 'prefer-rest-params': 'error', // eslint-config-airbnb-base@15.0.0; es6
139
- 'prefer-spread': 'error', // eslint-config-airbnb-base@15.0.0; es6
140
- 'prefer-template': 'error', // eslint-config-airbnb-base@15.0.0; es6
141
- radix: 'error', // eslint-config-airbnb-base@15.0.0; best-practices
142
- 'require-await': 'error',
143
- strict: 'error',
144
- 'symbol-description': 'error', // eslint-config-airbnb-base@15.0.0; es6
145
- yoda: 'error', // eslint-config-airbnb-base@15.0.0; best-practices
146
- },
147
- };
1
+ /** @type {import("eslint").Linter.Config} */
2
+ export default {
3
+ rules: {
4
+ 'arrow-body-style': 'error', // eslint-config-airbnb-base@15.0.0; es6
5
+ 'block-scoped-var': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
6
+ camelcase: [
7
+ 'error',
8
+ {
9
+ properties: 'never',
10
+ },
11
+ ], // eslint-config-airbnb-base@15.0.0; style
12
+ 'class-methods-use-this': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
13
+ 'consistent-return': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
14
+ curly: 'error',
15
+ 'default-case': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
16
+ 'default-case-last': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
17
+ 'default-param-last': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
18
+ 'dot-notation': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
19
+ eqeqeq: 'error',
20
+ 'func-names': 'warn', // eslint-config-airbnb-base@15.0.0; style
21
+ 'func-style': 'error',
22
+ 'grouped-accessor-pairs': ['error', 'getBeforeSet'],
23
+ 'guard-for-in': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
24
+ 'logical-assignment-operators': 'error',
25
+ 'max-classes-per-file': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
26
+ 'new-cap': 'error',
27
+ 'no-alert': 'warn', // eslint-config-airbnb-base@15.0.0; best-practices
28
+ 'no-array-constructor': 'error', // eslint-config-airbnb-base@15.0.0; style
29
+ 'no-bitwise': 'error', // eslint-config-airbnb-base@15.0.0; style
30
+ 'no-caller': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
31
+ 'no-continue': 'error', // eslint-config-airbnb-base@15.0.0; style
32
+ 'no-else-return': 'error',
33
+ 'no-empty': [
34
+ 'error',
35
+ {
36
+ allowEmptyCatch: true,
37
+ },
38
+ ], // ✅
39
+ 'no-empty-function': 'error',
40
+ 'no-empty-static-block': 'error',
41
+ 'no-eval': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
42
+ 'no-extend-native': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
43
+ 'no-extra-bind': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
44
+ 'no-extra-label': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
45
+ 'no-implicit-coercion': 'error',
46
+ 'no-implicit-globals': 'error',
47
+ 'no-implied-eval': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
48
+ 'no-invalid-this': 'error',
49
+ 'no-iterator': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
50
+ 'no-label-var': 'error', // eslint-config-airbnb-base@15.0.0; variables
51
+ 'no-labels': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
52
+ 'no-lone-blocks': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
53
+ 'no-lonely-if': 'error', // eslint-config-airbnb-base@15.0.0; style
54
+ 'no-loop-func': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
55
+ 'no-multi-assign': 'error', // eslint-config-airbnb-base@15.0.0; style
56
+ 'no-multi-str': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
57
+ 'no-nested-ternary': 'error', // eslint-config-airbnb-base@15.0.0; style
58
+ 'no-new': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
59
+ 'no-new-func': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
60
+ 'no-new-wrappers': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
61
+ 'no-object-constructor': 'error',
62
+ 'no-octal-escape': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
63
+ 'no-param-reassign': [
64
+ 'error',
65
+ {
66
+ props: false,
67
+ },
68
+ ],
69
+ 'no-plusplus': 'error', // eslint-config-airbnb-base@15.0.0; style
70
+ 'no-proto': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
71
+ 'no-restricted-globals': ['error', 'isFinite', 'isNaN'], // eslint-config-airbnb-base@15.0.0; variables
72
+ 'no-restricted-syntax': ['error', 'ForInStatement', 'LabeledStatement', 'WithStatement'], // eslint-config-airbnb-base@15.0.0; style
73
+ 'no-return-assign': ['error', 'always'], // eslint-config-airbnb-base@15.0.0; best-practices
74
+ 'no-script-url': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
75
+ 'no-sequences': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
76
+ 'no-shadow': 'error', // eslint-config-airbnb-base@15.0.0; variables
77
+ 'no-throw-literal': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
78
+ 'no-undef-init': 'error', // eslint-config-airbnb-base@15.0.0; variables
79
+ 'no-underscore-dangle': 'error', // eslint-config-airbnb-base@15.0.0; style
80
+ 'no-unneeded-ternary': [
81
+ 'error',
82
+ {
83
+ defaultAssignment: false,
84
+ },
85
+ ], // eslint-config-airbnb-base@15.0.0; style
86
+ 'no-unused-expressions': [
87
+ 'error',
88
+ {
89
+ allowShortCircuit: false,
90
+ allowTernary: false,
91
+ allowTaggedTemplates: false,
92
+ },
93
+ ], // eslint-config-airbnb-base@15.0.0; best-practices
94
+ 'no-use-before-define': 'error', // eslint-config-airbnb-base@15.0.0; variables
95
+ 'no-useless-computed-key': 'error', // eslint-config-airbnb-base@15.0.0; es6
96
+ 'no-useless-constructor': 'error', // eslint-config-airbnb-base@15.0.0; es6
97
+ 'no-useless-rename': 'error', // eslint-config-airbnb-base@15.0.0; es6
98
+ 'no-useless-call': 'error',
99
+ 'no-useless-concat': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
100
+ 'no-useless-return': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
101
+ 'no-var': 'error', // eslint-config-airbnb-base@15.0.0; es6
102
+ 'no-void': 'error', // eslint-config-airbnb-base@15.0.0; best-practices
103
+ 'object-shorthand': ['error', 'methods'],
104
+ 'one-var': ['error', 'never'], // eslint-config-airbnb-base@15.0.0; style
105
+ 'operator-assignment': ['error', 'always'], // eslint-config-airbnb-base@15.0.0; style
106
+ 'prefer-arrow-callback': 'error', // eslint-config-airbnb-base@15.0.0; es6
107
+ 'prefer-const': [
108
+ 'error',
109
+ {
110
+ destructuring: 'any',
111
+ ignoreReadBeforeAssign: true,
112
+ },
113
+ ], // eslint-config-airbnb-base@15.0.0; es6
114
+ 'prefer-destructuring': [
115
+ 'error',
116
+ {
117
+ VariableDeclarator: {
118
+ array: false,
119
+ object: true,
120
+ },
121
+ AssignmentExpression: {
122
+ array: true,
123
+ object: false,
124
+ },
125
+ },
126
+ ], // eslint-config-airbnb-base@15.0.0; es6
127
+ 'prefer-exponentiation-operator': 'error', // eslint-config-airbnb-base@15.0.0; style
128
+ 'prefer-numeric-literals': 'error', // eslint-config-airbnb-base@15.0.0; es6
129
+ 'prefer-object-has-own': 'error',
130
+ 'prefer-object-spread': 'error', // eslint-config-airbnb-base@15.0.0; style
131
+ 'prefer-promise-reject-errors': 'error',
132
+ 'prefer-regex-literals': [
133
+ 'error',
134
+ {
135
+ disallowRedundantWrapping: true,
136
+ },
137
+ ], // eslint-config-airbnb-base@15.0.0; best-practices
138
+ 'prefer-rest-params': 'error', // eslint-config-airbnb-base@15.0.0; es6
139
+ 'prefer-spread': 'error', // eslint-config-airbnb-base@15.0.0; es6
140
+ 'prefer-template': 'error', // eslint-config-airbnb-base@15.0.0; es6
141
+ radix: 'error', // eslint-config-airbnb-base@15.0.0; best-practices
142
+ 'require-await': 'error',
143
+ 'require-unicode-regexp': 'error',
144
+ strict: 'error',
145
+ 'symbol-description': 'error', // eslint-config-airbnb-base@15.0.0; es6
146
+ yoda: 'error', // eslint-config-airbnb-base@15.0.0; best-practices
147
+ },
148
+ };