eslint-config-aether 3.2.2 → 3.3.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/README.md CHANGED
@@ -2,7 +2,21 @@
2
2
 
3
3
  [![npm version](https://badgen.net/npm/v/eslint-config-aether?color=green)](https://www.npmjs.com/package/eslint-config-aether)
4
4
 
5
- A custom code style for [ESLint](https://eslint.org/).
5
+ An opinionated code style for [ESLint](https://eslint.org/) that provides type-aware linting, formatting, common runtime globals, and sensible defaults out of the box.
6
+
7
+ ## Installation
8
+
9
+ ```sh
10
+ npm install eslint-config-aether
11
+ ```
12
+
13
+ ## Usage
14
+
15
+ #### eslint.config.js
16
+
17
+ ```js
18
+ export { default } from "eslint-config-aether";
19
+ ```
6
20
 
7
21
  ## Preview
8
22
 
@@ -29,23 +43,9 @@ btn.addEventListener("click", () => {
29
43
  });
30
44
  ```
31
45
 
32
- ## Installation
33
-
34
- ```sh
35
- npm install eslint-config-aether
36
- ```
37
-
38
- ## Usage
39
-
40
- #### eslint.config.js
41
-
42
- ```js
43
- // Minimal config
44
- import { default } from "eslint-config-aether";
45
- ```
46
+ ## Customization
46
47
 
47
48
  ```js
48
- // Custom config
49
49
  import { defineConfig } from "eslint/config";
50
50
  import aether from "eslint-config-aether";
51
51
 
package/dist/index.js CHANGED
@@ -4,6 +4,7 @@ import { defineConfig } from "eslint/config";
4
4
  // src/base.ts
5
5
  import js from "@eslint/js";
6
6
  import stylistic from "@stylistic/eslint-plugin";
7
+ import jsdoc from "eslint-plugin-jsdoc";
7
8
  import globals from "globals";
8
9
  var base_default = {
9
10
  files: [
@@ -12,15 +13,19 @@ var base_default = {
12
13
  ],
13
14
  plugins: {
14
15
  "@stylistic": stylistic,
15
- js
16
+ js,
17
+ jsdoc
18
+ },
19
+ settings: {
20
+ jsdoc: {
21
+ maxLines: 2
22
+ }
16
23
  },
17
24
  languageOptions: {
18
25
  globals: {
19
26
  ...globals.browser,
20
- ...globals.es2026,
21
27
  ...globals.jquery,
22
- ...globals.node,
23
- ...globals.worker
28
+ ...globals.node
24
29
  }
25
30
  },
26
31
  extends: [
@@ -60,6 +65,7 @@ var base_default = {
60
65
  "args": "none",
61
66
  "caughtErrors": "none"
62
67
  }],
68
+ "no-useless-assignment": "warn",
63
69
  "no-var": "error",
64
70
  "prefer-const": "warn",
65
71
  "yoda": ["warn", "never"],
@@ -77,6 +83,7 @@ var base_default = {
77
83
  "@stylistic/indent": ["warn", "tab", {
78
84
  "SwitchCase": 1
79
85
  }],
86
+ "@stylistic/indent-binary-ops": ["warn", "tab"],
80
87
  "@stylistic/key-spacing": "warn",
81
88
  "@stylistic/keyword-spacing": ["warn", {
82
89
  "overrides": {
@@ -90,7 +97,10 @@ var base_default = {
90
97
  "@stylistic/lines-between-class-members": ["warn", "always", {
91
98
  "exceptAfterSingleLine": true
92
99
  }],
93
- "@stylistic/object-curly-spacing": ["warn", "always"],
100
+ "@stylistic/lines-around-comment": ["warn", {
101
+ "beforeBlockComment": true,
102
+ "afterBlockComment": true
103
+ }],
94
104
  "@stylistic/max-len": ["warn", {
95
105
  "code": 120,
96
106
  "tabWidth": 2,
@@ -106,6 +116,7 @@ var base_default = {
106
116
  "@stylistic/no-multi-spaces": "warn",
107
117
  "@stylistic/no-trailing-spaces": "warn",
108
118
  "@stylistic/no-whitespace-before-property": "warn",
119
+ "@stylistic/object-curly-spacing": ["warn", "always"],
109
120
  "@stylistic/padded-blocks": ["warn", "always", {
110
121
  "allowSingleLineBlocks": true
111
122
  }],
@@ -117,9 +128,17 @@ var base_default = {
117
128
  "@stylistic/space-in-parens": ["warn", "never"],
118
129
  "@stylistic/space-infix-ops": "warn",
119
130
  "@stylistic/space-unary-ops": "warn",
120
- "@stylistic/spaced-comment": ["warn", "always"],
131
+ "@stylistic/spaced-comment": ["warn", "always", {
132
+ "block": { "balanced": true }
133
+ }],
121
134
  "@stylistic/type-generic-spacing": "warn",
122
- "@stylistic/wrap-iife": "warn"
135
+ "@stylistic/wrap-iife": "warn",
136
+ "jsdoc/check-alignment": "warn",
137
+ "jsdoc/check-line-alignment": ["warn", "always"],
138
+ "jsdoc/require-jsdoc": "off",
139
+ "jsdoc/tag-lines": ["warn", "any", {
140
+ "startLines": 1
141
+ }]
123
142
  }
124
143
  };
125
144
 
@@ -135,7 +154,7 @@ var typechecked_default = {
135
154
  languageOptions: {
136
155
  parser: ts.parser,
137
156
  parserOptions: {
138
- project: ["tsconfig.json"]
157
+ projectService: true
139
158
  }
140
159
  },
141
160
  extends: [
@@ -159,6 +178,10 @@ var typechecked_default = {
159
178
  "selector": ["import"],
160
179
  "format": ["camelCase", "PascalCase"]
161
180
  },
181
+ {
182
+ "selector": "typeLike",
183
+ "format": ["PascalCase"]
184
+ },
162
185
  {
163
186
  "selector": ["variable", "accessor"],
164
187
  "format": ["camelCase", "UPPER_CASE"]
@@ -174,10 +197,6 @@ var typechecked_default = {
174
197
  "format": ["camelCase", "PascalCase", "UPPER_CASE"],
175
198
  "leadingUnderscore": "forbid"
176
199
  },
177
- {
178
- "selector": "typeLike",
179
- "format": ["PascalCase"]
180
- },
181
200
  {
182
201
  "selector": "enumMember",
183
202
  "format": ["UPPER_CASE"]
@@ -185,14 +204,6 @@ var typechecked_default = {
185
204
  {
186
205
  "selector": ["objectLiteralProperty", "objectLiteralMethod"],
187
206
  "format": null
188
- },
189
- {
190
- "selector": "interface",
191
- "format": ["PascalCase"],
192
- "custom": {
193
- "regex": "^I[A-Z]",
194
- "match": false
195
- }
196
207
  }
197
208
  ],
198
209
  "@typescript-eslint/no-empty-function": "off",
@@ -211,6 +222,7 @@ var typechecked_default = {
211
222
  "args": "none",
212
223
  "caughtErrors": "none"
213
224
  }],
225
+ "@typescript-eslint/prefer-for-of": "off",
214
226
  "@typescript-eslint/prefer-nullish-coalescing": "warn",
215
227
  "@typescript-eslint/prefer-optional-chain": "off",
216
228
  "@typescript-eslint/strict-boolean-expressions": ["error", {
@@ -223,10 +235,7 @@ var typechecked_default = {
223
235
  var eslintignore = {
224
236
  ignores: [
225
237
  "**/build/**",
226
- "**/dist/**",
227
- "**/vendor/**",
228
- "**/lib/**",
229
- "**/libs/**"
238
+ "**/dist/**"
230
239
  ]
231
240
  };
232
241
  var index_default = defineConfig([
@@ -1,2 +1,2 @@
1
- declare const _default: import("eslint/config").Config[];
1
+ declare const _default: import("eslint/config").ConfigObject[];
2
2
  export default _default;
package/package.json CHANGED
@@ -1,72 +1,82 @@
1
1
  {
2
- "name": "eslint-config-aether",
3
- "version": "3.2.2",
4
- "description": "A custom code style for ESLint.",
5
- "homepage": "https://github.com/vanruesc/eslint-config-aether",
6
- "main": "./dist/index.js",
7
- "license": "Zlib",
8
- "type": "module",
9
- "exports": {
10
- ".": {
11
- "types": "./dist/types/index.d.ts",
12
- "default": "./dist/index.js"
13
- }
14
- },
15
- "keywords": [
16
- "eslint",
17
- "eslintconfig",
18
- "lint",
19
- "hint",
20
- "style",
21
- "syntax",
22
- "check",
23
- "typescript",
24
- "ts"
25
- ],
26
- "author": {
27
- "name": "Raoul van Rüschen",
28
- "email": "vanruesc@outlook.de"
29
- },
30
- "repository": {
31
- "url": "git+https://github.com/vanruesc/eslint-config-aether.git"
32
- },
33
- "bugs": {
34
- "url": "https://github.com/vanruesc/eslint-config-aether/issues"
35
- },
36
- "files": [
37
- "dist"
38
- ],
39
- "scripts": {
40
- "build": "node esbuild",
41
- "clean": "del-cli dist test/generated",
42
- "dts": "tsc -p tsconfig.d.json",
43
- "copy": "copyfiles \"test/src/**\" test/generated -u 2",
44
- "predebug": "run-s clean dts build",
45
- "debug": "eslint --debug src",
46
- "fix": "eslint --fix test/generated",
47
- "report": "eslint src --format html --output-file eslintreport.html",
48
- "pretest": "run-s clean dts build copy fix",
49
- "test": "node --import tsx test/test.ts",
50
- "prepublishOnly": "run-s test"
51
- },
52
- "peerDependencies": {
53
- "eslint": "10.x.x"
54
- },
55
- "dependencies": {
56
- "@eslint/core": "1.x.x",
57
- "@eslint/js": "10.x.x",
58
- "@stylistic/eslint-plugin": "5.x.x",
59
- "globals": "17.x.x",
60
- "typescript-eslint": "8.x.x"
61
- },
62
- "devDependencies": {
63
- "@types/node": "26.x.x",
64
- "del-cli": "7.x.x",
65
- "esbuild": "0.28.x",
66
- "native-copyfiles": "2.x.x",
67
- "npm-run-all": "4.x.x",
68
- "tslib": "2.x.x",
69
- "tsx": "4.x.x",
70
- "typescript": "6.0.x"
71
- }
72
- }
2
+ "name": "eslint-config-aether",
3
+ "version": "3.3.0",
4
+ "description": "A custom code style for ESLint.",
5
+ "license": "Zlib",
6
+ "author": {
7
+ "name": "Raoul van Rüschen",
8
+ "email": "vanruesc@outlook.de"
9
+ },
10
+ "homepage": "https://github.com/vanruesc/eslint-config-aether",
11
+ "repository": {
12
+ "url": "git+https://github.com/vanruesc/eslint-config-aether.git"
13
+ },
14
+ "bugs": {
15
+ "url": "https://github.com/vanruesc/eslint-config-aether/issues"
16
+ },
17
+ "keywords": [
18
+ "eslint",
19
+ "eslintconfig",
20
+ "lint",
21
+ "hint",
22
+ "style",
23
+ "syntax",
24
+ "check",
25
+ "typescript",
26
+ "ts"
27
+ ],
28
+ "type": "module",
29
+ "main": "./dist/index.js",
30
+ "exports": {
31
+ ".": {
32
+ "types": "./dist/types/index.d.ts",
33
+ "default": "./dist/index.js"
34
+ }
35
+ },
36
+ "files": [
37
+ "dist"
38
+ ],
39
+ "engines": {
40
+ "node": ">= 22.22.2"
41
+ },
42
+ "devEngines": {
43
+ "packageManager": {
44
+ "name": "pnpm",
45
+ "version": ">=12 <13",
46
+ "onFail": "error"
47
+ }
48
+ },
49
+ "peerDependencies": {
50
+ "eslint": ">=10 <11"
51
+ },
52
+ "dependencies": {
53
+ "@eslint/core": "^1.2.1",
54
+ "@eslint/js": "^10.0.1",
55
+ "@stylistic/eslint-plugin": "^5.10.0",
56
+ "eslint-plugin-jsdoc": "^65.4.4",
57
+ "globals": "^17.14.0",
58
+ "typescript-eslint": "^8.72.1"
59
+ },
60
+ "devDependencies": {
61
+ "@types/node": "^26.6.6",
62
+ "del-cli": "^8.0.1",
63
+ "esbuild": "^0.28.2",
64
+ "native-copyfiles": "^2.1.1",
65
+ "npm-run-all": "^4.1.5",
66
+ "tslib": "^2.9.1",
67
+ "tsx": "^4.23.15",
68
+ "typescript": "^6.0.3"
69
+ },
70
+ "scripts": {
71
+ "build": "node esbuild",
72
+ "clean": "del-cli dist test/generated",
73
+ "tsc": "tsc -p tsconfig.d.json",
74
+ "copy": "copyfiles \"test/src/**\" test/generated -u 2",
75
+ "predebug": "run-s clean tsc build",
76
+ "debug": "eslint --debug src",
77
+ "fix": "eslint --fix test/generated",
78
+ "report": "eslint src --format html --output-file eslintreport.html",
79
+ "pretest": "run-s clean tsc build copy fix",
80
+ "test": "node --import tsx test/test.ts"
81
+ }
82
+ }