@jimmy.codes/eslint-config 6.16.2 → 6.17.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.
|
@@ -14,9 +14,7 @@ const hasJest = () => {
|
|
|
14
14
|
return isPackageExists("jest");
|
|
15
15
|
};
|
|
16
16
|
const hasTestingLibrary = () => {
|
|
17
|
-
return ["@testing-library/react"].some((pkg) =>
|
|
18
|
-
return isPackageExists(pkg);
|
|
19
|
-
});
|
|
17
|
+
return ["@testing-library/react"].some((pkg) => isPackageExists(pkg));
|
|
20
18
|
};
|
|
21
19
|
const hasReactQuery = () => {
|
|
22
20
|
return isPackageExists("@tanstack/react-query");
|
package/dist/index.d.mts
CHANGED
|
@@ -1831,6 +1831,16 @@ interface RuleOptions {
|
|
|
1831
1831
|
* @deprecated
|
|
1832
1832
|
*/
|
|
1833
1833
|
'arrow-spacing'?: Linter.RuleEntry<ArrowSpacing>;
|
|
1834
|
+
/**
|
|
1835
|
+
* Enforce consistent arrow function return style based on length, multiline expressions, JSX usage, and export context
|
|
1836
|
+
* @see https://github.com/christopher-buss/eslint-plugin-arrow-return-style-x/blob/v1.2.6/src/rules/arrow-return-style/documentation.md
|
|
1837
|
+
*/
|
|
1838
|
+
'arrow-style/arrow-return-style'?: Linter.RuleEntry<ArrowStyleArrowReturnStyle>;
|
|
1839
|
+
/**
|
|
1840
|
+
* Disallow anonymous arrow functions as export default declarations
|
|
1841
|
+
* @see https://github.com/christopher-buss/eslint-plugin-arrow-return-style-x/blob/v1.2.6/src/rules/no-export-default-arrow/documentation.md
|
|
1842
|
+
*/
|
|
1843
|
+
'arrow-style/no-export-default-arrow'?: Linter.RuleEntry<[]>;
|
|
1834
1844
|
/**
|
|
1835
1845
|
* apply `jsx-a11y/alt-text` rule to Astro components
|
|
1836
1846
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/alt-text/
|
|
@@ -9492,6 +9502,18 @@ type ArrowSpacing = [] | [{
|
|
|
9492
9502
|
before?: boolean;
|
|
9493
9503
|
after?: boolean;
|
|
9494
9504
|
}];
|
|
9505
|
+
// ----- arrow-style/arrow-return-style -----
|
|
9506
|
+
type ArrowStyleArrowReturnStyle = [] | [{
|
|
9507
|
+
jsxAlwaysUseExplicitReturn?: boolean;
|
|
9508
|
+
maxLen?: number;
|
|
9509
|
+
maxObjectProperties?: number;
|
|
9510
|
+
namedExportsAlwaysUseExplicitReturn?: boolean;
|
|
9511
|
+
objectReturnStyle?: ("always-explicit" | "complex-explicit" | "off");
|
|
9512
|
+
usePrettier?: (boolean | {
|
|
9513
|
+
[k: string]: unknown | undefined;
|
|
9514
|
+
} | null);
|
|
9515
|
+
[k: string]: unknown | undefined;
|
|
9516
|
+
}];
|
|
9495
9517
|
// ----- astro/jsx-a11y/alt-text -----
|
|
9496
9518
|
type AstroJsxA11YAltText = [] | [{
|
|
9497
9519
|
elements?: string[];
|
package/dist/index.mjs
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { i as GLOB_IGNORES, l as GLOB_TESTS, n as GLOB_CJS } from "./globs-vEjrVS_T.mjs";
|
|
2
|
-
import { a as hasReact, c as hasTestingLibrary, d as hasVitest, i as hasPlaywright, l as hasTypescript, n as hasJest, o as hasReactQuery, r as hasNext, s as hasStorybook, t as hasAstro } from "./has-dependency-
|
|
2
|
+
import { a as hasReact, c as hasTestingLibrary, d as hasVitest, i as hasPlaywright, l as hasTypescript, n as hasJest, o as hasReactQuery, r as hasNext, s as hasStorybook, t as hasAstro } from "./has-dependency-qBWsE3wC.mjs";
|
|
3
3
|
import gitignoreConfig from "eslint-config-flat-gitignore";
|
|
4
4
|
import globals from "globals";
|
|
5
5
|
import comments from "@eslint-community/eslint-plugin-eslint-comments/configs";
|
|
6
6
|
import { createTypeScriptImportResolver } from "eslint-import-resolver-typescript";
|
|
7
7
|
import { configs, importX } from "eslint-plugin-import-x";
|
|
8
8
|
import nodePlugin from "eslint-plugin-n";
|
|
9
|
+
import arrowReturnStylePlugin from "eslint-plugin-arrow-return-style-x";
|
|
9
10
|
import eslint from "@eslint/js";
|
|
10
11
|
import jsdocPlugin from "eslint-plugin-jsdoc";
|
|
11
12
|
import perfectionist from "eslint-plugin-perfectionist";
|
|
@@ -106,7 +107,13 @@ const importsConfig = ({ isTypescriptEnabled = false } = {}) => {
|
|
|
106
107
|
//#region src/rules/javascript.ts
|
|
107
108
|
const additionalRules = {
|
|
108
109
|
"array-callback-return": ["error", { allowImplicit: true }],
|
|
109
|
-
"arrow-body-style":
|
|
110
|
+
"arrow-body-style": "off",
|
|
111
|
+
"arrow-style/arrow-return-style": ["error", {
|
|
112
|
+
jsxAlwaysUseExplicitReturn: true,
|
|
113
|
+
namedExportsAlwaysUseExplicitReturn: true,
|
|
114
|
+
usePrettier: true
|
|
115
|
+
}],
|
|
116
|
+
"arrow-style/no-export-default-arrow": "error",
|
|
110
117
|
"class-methods-use-this": "error",
|
|
111
118
|
"consistent-return": "error",
|
|
112
119
|
"curly": ["error", "all"],
|
|
@@ -176,6 +183,7 @@ const javascriptConfig = () => {
|
|
|
176
183
|
return [{
|
|
177
184
|
linterOptions: { reportUnusedDisableDirectives: true },
|
|
178
185
|
name: "jimmy.codes/javascript",
|
|
186
|
+
plugins: { "arrow-style": arrowReturnStylePlugin },
|
|
179
187
|
rules: javascriptRules
|
|
180
188
|
}, {
|
|
181
189
|
files: GLOB_TESTS,
|
|
@@ -479,7 +487,7 @@ const defineConfig = async ({ astro = false, autoDetect = true, gitignore = fals
|
|
|
479
487
|
];
|
|
480
488
|
const featureConfigs = await Promise.all([
|
|
481
489
|
isTypescriptEnabled && unwrap(import("./typescript-8inYuw4v.mjs")),
|
|
482
|
-
isReactEnabled && unwrap(import("./react-
|
|
490
|
+
isReactEnabled && unwrap(import("./react-K_Z3YHim.mjs")),
|
|
483
491
|
isTanstackQueryEnabled && unwrap(import("./tanstack-query-NIpT7cxZ.mjs")),
|
|
484
492
|
isAstroEnabled && unwrap(import("./astro-BQtDqyG3.mjs")),
|
|
485
493
|
isJestEnabled && unwrap(import("./jest-CErT1V1O.mjs")),
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { d as GLOB_TSX, o as GLOB_JSX } from "./globs-vEjrVS_T.mjs";
|
|
2
|
-
import { l as hasTypescript, r as hasNext, u as hasVite } from "./has-dependency-
|
|
2
|
+
import { l as hasTypescript, r as hasNext, u as hasVite } from "./has-dependency-qBWsE3wC.mjs";
|
|
3
3
|
import { t as interopDefault } from "./interop-default-B8s_f9DT.mjs";
|
|
4
4
|
import { t as upwarn } from "./upwarn-B1BG5US9.mjs";
|
|
5
5
|
import globals from "globals";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jimmy.codes/eslint-config",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.17.0",
|
|
4
4
|
"description": "A simple, modern ESLint config that covers most use cases.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"eslint",
|
|
@@ -48,11 +48,12 @@
|
|
|
48
48
|
"@types/eslint": "9.6.1",
|
|
49
49
|
"@typescript-eslint/parser": "^8.46.3",
|
|
50
50
|
"@typescript-eslint/utils": "^8.46.3",
|
|
51
|
-
"@vitest/eslint-plugin": "^1.4.
|
|
51
|
+
"@vitest/eslint-plugin": "^1.4.1",
|
|
52
52
|
"astro-eslint-parser": "^1.2.2",
|
|
53
53
|
"eslint-config-flat-gitignore": "^2.1.0",
|
|
54
54
|
"eslint-config-prettier": "^10.1.8",
|
|
55
55
|
"eslint-import-resolver-typescript": "^4.4.4",
|
|
56
|
+
"eslint-plugin-arrow-return-style-x": "^1.2.6",
|
|
56
57
|
"eslint-plugin-astro": "^1.5.0",
|
|
57
58
|
"eslint-plugin-import-x": "^4.16.1",
|
|
58
59
|
"eslint-plugin-jest": "^29.0.1",
|