@w0s/eslint-config 8.3.0 → 8.5.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 +91 -89
- package/package.json +45 -45
package/eslint.config.js
CHANGED
|
@@ -1,89 +1,91 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import globals from 'globals';
|
|
5
|
-
// eslint-disable-next-line import/no-unresolved
|
|
6
|
-
import tseslint from 'typescript-eslint';
|
|
7
|
-
import eslintJs from '@eslint/js';
|
|
8
|
-
import configEslintLayoutFormatting from './rules/eslint/layout&formatting.js';
|
|
9
|
-
import configEslintPossibleProblems from './rules/eslint/possible-problems.js';
|
|
10
|
-
import configEslintSuggestions from './rules/eslint/suggestions.js';
|
|
11
|
-
import configImport from './rules/import.js';
|
|
12
|
-
import configJsdoc from './rules/jsdoc.js';
|
|
13
|
-
|
|
14
|
-
export default tseslint.config(
|
|
15
|
-
{
|
|
16
|
-
plugins: {
|
|
17
|
-
'@typescript-eslint': tseslint.plugin,
|
|
18
|
-
pluginJsdoc,
|
|
19
|
-
},
|
|
20
|
-
},
|
|
21
|
-
|
|
22
|
-
eslintJs.configs.recommended,
|
|
23
|
-
configEslintPossibleProblems,
|
|
24
|
-
configEslintSuggestions,
|
|
25
|
-
configEslintLayoutFormatting,
|
|
26
|
-
|
|
27
|
-
/* Plugins */
|
|
28
|
-
pluginImport.flatConfigs.recommended,
|
|
29
|
-
pluginJsdoc.configs['flat/recommended'],
|
|
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
|
-
|
|
1
|
+
import pluginImport from 'eslint-plugin-import';
|
|
2
|
+
import pluginJsdoc from 'eslint-plugin-jsdoc';
|
|
3
|
+
import pluginSafelyStorage from 'eslint-plugin-safely-storage';
|
|
4
|
+
import globals from 'globals';
|
|
5
|
+
// eslint-disable-next-line import/no-unresolved
|
|
6
|
+
import tseslint from 'typescript-eslint';
|
|
7
|
+
import eslintJs from '@eslint/js';
|
|
8
|
+
import configEslintLayoutFormatting from './rules/eslint/layout&formatting.js';
|
|
9
|
+
import configEslintPossibleProblems from './rules/eslint/possible-problems.js';
|
|
10
|
+
import configEslintSuggestions from './rules/eslint/suggestions.js';
|
|
11
|
+
import configImport from './rules/import.js';
|
|
12
|
+
import configJsdoc from './rules/jsdoc.js';
|
|
13
|
+
|
|
14
|
+
export default tseslint.config(
|
|
15
|
+
{
|
|
16
|
+
plugins: {
|
|
17
|
+
'@typescript-eslint': tseslint.plugin,
|
|
18
|
+
pluginJsdoc,
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
|
|
22
|
+
eslintJs.configs.recommended,
|
|
23
|
+
configEslintPossibleProblems,
|
|
24
|
+
configEslintSuggestions,
|
|
25
|
+
configEslintLayoutFormatting,
|
|
26
|
+
|
|
27
|
+
/* Plugins */
|
|
28
|
+
pluginImport.flatConfigs.recommended,
|
|
29
|
+
pluginJsdoc.configs['flat/recommended'],
|
|
30
|
+
...pluginSafelyStorage.configs.default,
|
|
31
|
+
configImport,
|
|
32
|
+
configJsdoc,
|
|
33
|
+
|
|
34
|
+
{
|
|
35
|
+
files: ['**/*.js'],
|
|
36
|
+
languageOptions: {
|
|
37
|
+
ecmaVersion: 'latest', // デフォルト値は 'latest' だが明示的な指定が必要
|
|
38
|
+
globals: globals.nodeBuiltin,
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
files: ['**/*.ts'],
|
|
43
|
+
languageOptions: {
|
|
44
|
+
parser: tseslint.parser,
|
|
45
|
+
parserOptions: {
|
|
46
|
+
project: true,
|
|
47
|
+
tsconfigRootDir: import.meta.dirname,
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
extends: [...tseslint.configs.strictTypeChecked, ...tseslint.configs.stylisticTypeChecked],
|
|
51
|
+
rules: {
|
|
52
|
+
...pluginJsdoc.configs['flat/recommended-typescript'].rules,
|
|
53
|
+
'dot-notation': 'off',
|
|
54
|
+
'import/no-unresolved': 'off',
|
|
55
|
+
'@typescript-eslint/no-extraneous-class': 'off',
|
|
56
|
+
'@typescript-eslint/no-unused-vars': [
|
|
57
|
+
'error',
|
|
58
|
+
{
|
|
59
|
+
caughtErrors: 'none',
|
|
60
|
+
},
|
|
61
|
+
],
|
|
62
|
+
'@typescript-eslint/strict-boolean-expressions': [
|
|
63
|
+
'error',
|
|
64
|
+
{
|
|
65
|
+
allowNullableBoolean: true,
|
|
66
|
+
},
|
|
67
|
+
],
|
|
68
|
+
},
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
files: ['**/*.config.js'],
|
|
72
|
+
rules: {
|
|
73
|
+
'import/no-extraneous-dependencies': 'off',
|
|
74
|
+
},
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
files: ['**/*.test.js', '**/*.test.ts'],
|
|
78
|
+
rules: {
|
|
79
|
+
'no-new': 'off',
|
|
80
|
+
'no-unused-expressions': 'off',
|
|
81
|
+
'import/no-extraneous-dependencies': 'off',
|
|
82
|
+
},
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
files: ['**/*.test.ts'],
|
|
86
|
+
rules: {
|
|
87
|
+
'@typescript-eslint/no-non-null-assertion': 'off',
|
|
88
|
+
'@typescript-eslint/no-unnecessary-type-assertion': 'off',
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
);
|
package/package.json
CHANGED
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@w0s/eslint-config",
|
|
3
|
-
"version": "8.
|
|
4
|
-
"description": "ESLint configuration file used on `w0s.jp`",
|
|
5
|
-
"keywords": [
|
|
6
|
-
"eslint",
|
|
7
|
-
"eslintconfig",
|
|
8
|
-
"eslint-config",
|
|
9
|
-
"styleguide"
|
|
10
|
-
],
|
|
11
|
-
"license": "MIT",
|
|
12
|
-
"author": "Saeki Tominaga",
|
|
13
|
-
"files": [
|
|
14
|
-
"rules"
|
|
15
|
-
],
|
|
16
|
-
"type": "module",
|
|
17
|
-
"main": "eslint.config.js",
|
|
18
|
-
"repository": {
|
|
19
|
-
"type": "git",
|
|
20
|
-
"url": "git+https://github.com/SaekiTominaga/config.git"
|
|
21
|
-
},
|
|
22
|
-
"scripts": {
|
|
23
|
-
"test": "node __tests__/index.test.js",
|
|
24
|
-
"prelint": "tsc",
|
|
25
|
-
"lint": "eslint __tests__/valid/**/*.{js,ts} __tests__/*.test.js rules/**/*.js eslint.config.js"
|
|
26
|
-
},
|
|
27
|
-
"dependencies": {
|
|
28
|
-
"@eslint/js": "^9.
|
|
29
|
-
"eslint-plugin-import": "^2.
|
|
30
|
-
"eslint-plugin-jsdoc": "^
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
"@types/node": "^
|
|
37
|
-
"eslint": "^9.
|
|
38
|
-
},
|
|
39
|
-
"peerDependencies": {
|
|
40
|
-
"eslint": "^9.12.0"
|
|
41
|
-
},
|
|
42
|
-
"publishConfig": {
|
|
43
|
-
"access": "public"
|
|
44
|
-
}
|
|
45
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@w0s/eslint-config",
|
|
3
|
+
"version": "8.5.0",
|
|
4
|
+
"description": "ESLint configuration file used on `w0s.jp`",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"eslint",
|
|
7
|
+
"eslintconfig",
|
|
8
|
+
"eslint-config",
|
|
9
|
+
"styleguide"
|
|
10
|
+
],
|
|
11
|
+
"license": "MIT",
|
|
12
|
+
"author": "Saeki Tominaga",
|
|
13
|
+
"files": [
|
|
14
|
+
"rules"
|
|
15
|
+
],
|
|
16
|
+
"type": "module",
|
|
17
|
+
"main": "eslint.config.js",
|
|
18
|
+
"repository": {
|
|
19
|
+
"type": "git",
|
|
20
|
+
"url": "git+https://github.com/SaekiTominaga/config.git"
|
|
21
|
+
},
|
|
22
|
+
"scripts": {
|
|
23
|
+
"test": "node __tests__/index.test.js",
|
|
24
|
+
"prelint": "tsc",
|
|
25
|
+
"lint": "eslint __tests__/valid/**/*.{js,ts} __tests__/*.test.js rules/**/*.js eslint.config.js"
|
|
26
|
+
},
|
|
27
|
+
"dependencies": {
|
|
28
|
+
"@eslint/js": "^9.34.0",
|
|
29
|
+
"eslint-plugin-import": "^2.32.0",
|
|
30
|
+
"eslint-plugin-jsdoc": "^54.1.1",
|
|
31
|
+
"eslint-plugin-safely-storage": "^1.0.2",
|
|
32
|
+
"globals": "^16.3.0",
|
|
33
|
+
"typescript-eslint": "^8.41.0"
|
|
34
|
+
},
|
|
35
|
+
"devDependencies": {
|
|
36
|
+
"@types/node": "^24.3.0",
|
|
37
|
+
"eslint": "^9.34.0"
|
|
38
|
+
},
|
|
39
|
+
"peerDependencies": {
|
|
40
|
+
"eslint": "^9.12.0"
|
|
41
|
+
},
|
|
42
|
+
"publishConfig": {
|
|
43
|
+
"access": "public"
|
|
44
|
+
}
|
|
45
|
+
}
|