@eienjs/eslint-config 1.7.0 → 1.8.1
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/dist/cli/constants_generated.mjs +3 -3
- package/dist/cli/run.mjs +13 -13
- package/dist/config_presets.d.mts +7 -0
- package/dist/config_presets.mjs +49 -0
- package/dist/configs/adonisjs.mjs +24 -0
- package/dist/configs/pnpm.d.mts +2 -2
- package/dist/configs/pnpm.mjs +118 -105
- package/dist/factory.mjs +15 -5
- package/dist/index.d.mts +3 -2
- package/dist/index.mjs +2 -1
- package/dist/node_modules/.pnpm/find-up-simple@1.0.1/node_modules/find-up-simple/index.mjs +16 -1
- package/dist/package.mjs +1 -1
- package/dist/typegen.d.mts +50 -8
- package/dist/types.d.mts +42 -2
- package/package.json +21 -21
- /package/bin/{index.js → index.mjs} +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
//#region src/cli/constants_generated.ts
|
|
2
2
|
const versionsMap = {
|
|
3
|
-
"@adonisjs/eslint-plugin": "^2.0
|
|
4
|
-
"@nuxt/eslint-plugin": "^1.
|
|
3
|
+
"@adonisjs/eslint-plugin": "^2.2.0",
|
|
4
|
+
"@nuxt/eslint-plugin": "^1.12.1",
|
|
5
5
|
"astro-eslint-parser": "^1.2.2",
|
|
6
|
-
"eslint": "^9.39.
|
|
6
|
+
"eslint": "^9.39.2",
|
|
7
7
|
"eslint-plugin-astro": "^1.5.0",
|
|
8
8
|
"eslint-plugin-format": "^1.1.0",
|
|
9
9
|
"prettier-plugin-astro": "^0.14.1"
|
package/dist/cli/run.mjs
CHANGED
|
@@ -26,14 +26,11 @@ async function run(options = {}) {
|
|
|
26
26
|
};
|
|
27
27
|
if (!argSkipPrompt) {
|
|
28
28
|
result = await p.group({
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
message: c.reset(message),
|
|
35
|
-
options: extraOptions,
|
|
36
|
-
required: false
|
|
29
|
+
uncommittedConfirmed: async () => {
|
|
30
|
+
if (isGitClean()) return true;
|
|
31
|
+
return p.confirm({
|
|
32
|
+
initialValue: false,
|
|
33
|
+
message: "There are uncommitted changes in the current repository, are you sure to continue?"
|
|
37
34
|
});
|
|
38
35
|
},
|
|
39
36
|
frameworks: async ({ results }) => {
|
|
@@ -46,11 +43,14 @@ async function run(options = {}) {
|
|
|
46
43
|
required: false
|
|
47
44
|
});
|
|
48
45
|
},
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
46
|
+
extra: async ({ results }) => {
|
|
47
|
+
const isArgExtraValid = argExtra?.length && argExtra.filter((element) => !extra.includes(element)).length === 0;
|
|
48
|
+
if (!results.uncommittedConfirmed || isArgExtraValid) return;
|
|
49
|
+
const message = argExtra ? `"${argExtra.toString()}" isn't a valid extra util. Please choose from below: ` : "Select a extra utils:";
|
|
50
|
+
return p.multiselect({
|
|
51
|
+
message: c.reset(message),
|
|
52
|
+
options: extraOptions,
|
|
53
|
+
required: false
|
|
54
54
|
});
|
|
55
55
|
},
|
|
56
56
|
updateVscodeSettings: async ({ results }) => {
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
//#region src/config_presets.ts
|
|
2
|
+
const CONFIG_PRESET_FULL_ON = {
|
|
3
|
+
adonisjs: true,
|
|
4
|
+
astro: true,
|
|
5
|
+
formatters: true,
|
|
6
|
+
gitignore: true,
|
|
7
|
+
imports: true,
|
|
8
|
+
jsdoc: true,
|
|
9
|
+
jsonc: true,
|
|
10
|
+
markdown: true,
|
|
11
|
+
node: true,
|
|
12
|
+
nuxt: true,
|
|
13
|
+
pnpm: true,
|
|
14
|
+
regexp: true,
|
|
15
|
+
stylistic: { experimental: true },
|
|
16
|
+
test: true,
|
|
17
|
+
toml: true,
|
|
18
|
+
typescript: {
|
|
19
|
+
erasableSyntaxOnly: true,
|
|
20
|
+
tsconfigPath: "tsconfig.json"
|
|
21
|
+
},
|
|
22
|
+
unicorn: true,
|
|
23
|
+
vue: true,
|
|
24
|
+
yaml: true
|
|
25
|
+
};
|
|
26
|
+
const CONFIG_PRESET_FULL_OFF = {
|
|
27
|
+
adonisjs: false,
|
|
28
|
+
astro: false,
|
|
29
|
+
formatters: false,
|
|
30
|
+
gitignore: false,
|
|
31
|
+
imports: false,
|
|
32
|
+
jsdoc: false,
|
|
33
|
+
jsonc: false,
|
|
34
|
+
markdown: false,
|
|
35
|
+
node: false,
|
|
36
|
+
nuxt: false,
|
|
37
|
+
pnpm: false,
|
|
38
|
+
regexp: false,
|
|
39
|
+
stylistic: false,
|
|
40
|
+
test: false,
|
|
41
|
+
toml: false,
|
|
42
|
+
typescript: false,
|
|
43
|
+
unicorn: false,
|
|
44
|
+
vue: false,
|
|
45
|
+
yaml: false
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
//#endregion
|
|
49
|
+
export { CONFIG_PRESET_FULL_OFF, CONFIG_PRESET_FULL_ON };
|
|
@@ -27,6 +27,8 @@ async function adonisjs(options = {}) {
|
|
|
27
27
|
dirs.tests = dirs.tests || `${dirs.root}/tests`;
|
|
28
28
|
dirs.config = dirs.config || `${dirs.root}/config`;
|
|
29
29
|
dirs.commands = dirs.commands || `${dirs.root}/commands`;
|
|
30
|
+
dirs.inertia = dirs.inertia || `${dirs.root}/inertia`;
|
|
31
|
+
dirs.types = dirs.types || `${appPath}/types`;
|
|
30
32
|
const nestedGlobPattern = `**/*.${GLOB_SRC_EXT}`;
|
|
31
33
|
const fileRoutes = [...Object.values(dirs).map((dir) => join(dir, nestedGlobPattern)), `${dirs.root}/ace.js`];
|
|
32
34
|
const commonRulesSet = {
|
|
@@ -47,6 +49,15 @@ async function adonisjs(options = {}) {
|
|
|
47
49
|
...overrides
|
|
48
50
|
}
|
|
49
51
|
},
|
|
52
|
+
{
|
|
53
|
+
files: [join(dirs.inertia, nestedGlobPattern)],
|
|
54
|
+
name: "eienjs/adonisjs/inertia-rules",
|
|
55
|
+
rules: {
|
|
56
|
+
"@adonisjs/no-backend-import-in-frontend": "error",
|
|
57
|
+
"@adonisjs/prefer-adonisjs-inertia-form": "error",
|
|
58
|
+
"@adonisjs/prefer-adonisjs-inertia-link": "error"
|
|
59
|
+
}
|
|
60
|
+
},
|
|
50
61
|
{
|
|
51
62
|
files: fileRoutes,
|
|
52
63
|
name: "eienjs/adonisjs/disables",
|
|
@@ -110,6 +121,19 @@ async function adonisjs(options = {}) {
|
|
|
110
121
|
"@typescript-eslint/no-unsafe-return": "off",
|
|
111
122
|
"@typescript-eslint/unbound-method": "off"
|
|
112
123
|
}
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
files: [join(dirs.types, nestedGlobPattern)],
|
|
127
|
+
name: "eienjs/adonisjs/types-disables",
|
|
128
|
+
rules: {
|
|
129
|
+
"@eslint-community/eslint-comments/no-unlimited-disable": "off",
|
|
130
|
+
"@typescript-eslint/consistent-type-definitions": "off",
|
|
131
|
+
"@typescript-eslint/explicit-function-return-type": "off",
|
|
132
|
+
"@typescript-eslint/no-unsafe-assignment": "off",
|
|
133
|
+
"@typescript-eslint/no-unsafe-return": "off",
|
|
134
|
+
"no-restricted-syntax": "off",
|
|
135
|
+
"unused-imports/no-unused-vars": "off"
|
|
136
|
+
}
|
|
113
137
|
}
|
|
114
138
|
];
|
|
115
139
|
}
|
package/dist/configs/pnpm.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { OptionsPnpm, TypedFlatConfigItem } from "../types.mjs";
|
|
2
2
|
|
|
3
3
|
//#region src/configs/pnpm.d.ts
|
|
4
|
-
declare function pnpm(options:
|
|
4
|
+
declare function pnpm(options: OptionsPnpm): Promise<TypedFlatConfigItem[]>;
|
|
5
5
|
//#endregion
|
|
6
6
|
export { pnpm };
|
package/dist/configs/pnpm.mjs
CHANGED
|
@@ -1,117 +1,130 @@
|
|
|
1
|
+
import { findUp } from "../node_modules/.pnpm/find-up-simple@1.0.1/node_modules/find-up-simple/index.mjs";
|
|
1
2
|
import { interopDefault } from "../utils.mjs";
|
|
3
|
+
import { readFile } from "node:fs/promises";
|
|
2
4
|
|
|
3
5
|
//#region src/configs/pnpm.ts
|
|
6
|
+
async function detectCatalogUsage() {
|
|
7
|
+
const workspaceFile = await findUp("pnpm-workspace.yaml");
|
|
8
|
+
if (!workspaceFile) return false;
|
|
9
|
+
const yaml = await readFile(workspaceFile, "utf8");
|
|
10
|
+
return yaml.includes("catalog:") || yaml.includes("catalogs:");
|
|
11
|
+
}
|
|
4
12
|
async function pnpm(options) {
|
|
5
|
-
const [pluginPnpm, yamlParser, jsoncParser] = await Promise.all([
|
|
13
|
+
const [pluginPnpm, pluginYaml, yamlParser, jsoncParser] = await Promise.all([
|
|
6
14
|
interopDefault(import("eslint-plugin-pnpm")),
|
|
15
|
+
interopDefault(import("eslint-plugin-yml")),
|
|
7
16
|
interopDefault(import("yaml-eslint-parser")),
|
|
8
17
|
interopDefault(import("jsonc-eslint-parser"))
|
|
9
18
|
]);
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
languageOptions: { parser: yamlParser },
|
|
25
|
-
name: "eienjs/pnpm/pnpm-workspace-yaml",
|
|
26
|
-
plugins: { pnpm: pluginPnpm },
|
|
27
|
-
rules: {
|
|
28
|
-
"pnpm/yaml-enforce-settings": ["error", { settings: {
|
|
29
|
-
catalogMode: "prefer",
|
|
30
|
-
cleanupUnusedCatalogs: true,
|
|
31
|
-
shellEmulator: true,
|
|
32
|
-
trustPolicy: "no-downgrade"
|
|
33
|
-
} }],
|
|
34
|
-
"pnpm/yaml-no-duplicate-catalog-item": "error",
|
|
35
|
-
"pnpm/yaml-no-unused-catalog-item": "error"
|
|
36
|
-
}
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
files: ["pnpm-workspace.yaml"],
|
|
40
|
-
name: "eienjs/pnpm/pnpm-workspace-yaml-sort",
|
|
41
|
-
rules: { "yaml/sort-keys": [
|
|
42
|
-
"error",
|
|
43
|
-
{
|
|
44
|
-
order: [
|
|
45
|
-
...[
|
|
46
|
-
"cacheDir",
|
|
47
|
-
"catalogMode",
|
|
48
|
-
"cleanupUnusedCatalogs",
|
|
49
|
-
"dedupeDirectDeps",
|
|
50
|
-
"deployAllFiles",
|
|
51
|
-
"enablePrePostScripts",
|
|
52
|
-
"engineStrict",
|
|
53
|
-
"extendNodePath",
|
|
54
|
-
"hoist",
|
|
55
|
-
"hoistPattern",
|
|
56
|
-
"hoistWorkspacePackages",
|
|
57
|
-
"ignoreCompatibilityDb",
|
|
58
|
-
"ignoreDepScripts",
|
|
59
|
-
"ignoreScripts",
|
|
60
|
-
"ignoreWorkspaceRootCheck",
|
|
61
|
-
"managePackageManagerVersions",
|
|
62
|
-
"minimumReleaseAge",
|
|
63
|
-
"minimumReleaseAgeExclude",
|
|
64
|
-
"modulesDir",
|
|
65
|
-
"nodeLinker",
|
|
66
|
-
"nodeVersion",
|
|
67
|
-
"optimisticRepeatInstall",
|
|
68
|
-
"packageManagerStrict",
|
|
69
|
-
"packageManagerStrictVersion",
|
|
70
|
-
"preferSymlinkedExecutables",
|
|
71
|
-
"preferWorkspacePackages",
|
|
72
|
-
"publicHoistPattern",
|
|
73
|
-
"registrySupportsTimeField",
|
|
74
|
-
"requiredScrpts",
|
|
75
|
-
"resolutionMode",
|
|
76
|
-
"savePrefix",
|
|
77
|
-
"scriptShell",
|
|
78
|
-
"shamefullyHoist",
|
|
79
|
-
"shellEmulator",
|
|
80
|
-
"stateDir",
|
|
81
|
-
"supportedArchitectures",
|
|
82
|
-
"symlink",
|
|
83
|
-
"tag",
|
|
84
|
-
"trustPolicy",
|
|
85
|
-
"trustPolicyExclude",
|
|
86
|
-
"updateNotifier"
|
|
87
|
-
],
|
|
88
|
-
"packages",
|
|
89
|
-
"overrides",
|
|
90
|
-
"patchedDependencies",
|
|
91
|
-
"catalog",
|
|
92
|
-
"catalogs",
|
|
93
|
-
...[
|
|
94
|
-
"allowedDeprecatedVersions",
|
|
95
|
-
"allowNonAppliedPatches",
|
|
96
|
-
"configDependencies",
|
|
97
|
-
"ignoredBuiltDependencies",
|
|
98
|
-
"ignoredOptionalDependencies",
|
|
99
|
-
"neverBuiltDependencies",
|
|
100
|
-
"onlyBuiltDependencies",
|
|
101
|
-
"onlyBuiltDependenciesFile",
|
|
102
|
-
"packageExtensions",
|
|
103
|
-
"peerDependencyRules"
|
|
104
|
-
]
|
|
105
|
-
],
|
|
106
|
-
pathPattern: "^$"
|
|
107
|
-
},
|
|
108
|
-
{
|
|
109
|
-
order: { type: "asc" },
|
|
110
|
-
pathPattern: ".*"
|
|
111
|
-
}
|
|
112
|
-
] }
|
|
19
|
+
const { catalogs = await detectCatalogUsage(), isInEditor = false, json = true, sort = true, yaml = true } = options;
|
|
20
|
+
const configs = [];
|
|
21
|
+
if (json) configs.push({
|
|
22
|
+
files: ["package.json", "**/package.json"],
|
|
23
|
+
languageOptions: { parser: jsoncParser },
|
|
24
|
+
name: "eienjs/pnpm/package-json",
|
|
25
|
+
plugins: { pnpm: pluginPnpm },
|
|
26
|
+
rules: {
|
|
27
|
+
...catalogs ? { "pnpm/json-enforce-catalog": ["error", {
|
|
28
|
+
autofix: !isInEditor,
|
|
29
|
+
ignores: ["@types/vscode"]
|
|
30
|
+
}] } : {},
|
|
31
|
+
"pnpm/json-prefer-workspace-settings": ["error", { autofix: !isInEditor }],
|
|
32
|
+
"pnpm/json-valid-catalog": ["error", { autofix: !isInEditor }]
|
|
113
33
|
}
|
|
114
|
-
|
|
34
|
+
});
|
|
35
|
+
if (yaml) configs.push({
|
|
36
|
+
files: ["pnpm-workspace.yaml"],
|
|
37
|
+
languageOptions: { parser: yamlParser },
|
|
38
|
+
name: "eienjs/pnpm/pnpm-workspace-yaml",
|
|
39
|
+
plugins: { pnpm: pluginPnpm },
|
|
40
|
+
rules: {
|
|
41
|
+
"pnpm/yaml-enforce-settings": ["error", { settings: {
|
|
42
|
+
shellEmulator: true,
|
|
43
|
+
trustPolicy: "no-downgrade"
|
|
44
|
+
} }],
|
|
45
|
+
"pnpm/yaml-no-duplicate-catalog-item": "error",
|
|
46
|
+
"pnpm/yaml-no-unused-catalog-item": "error"
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
if (sort) configs.push({
|
|
50
|
+
files: ["pnpm-workspace.yaml"],
|
|
51
|
+
languageOptions: { parser: yamlParser },
|
|
52
|
+
name: "eienjs/pnpm/pnpm-workspace-yaml-sort",
|
|
53
|
+
plugins: { yaml: pluginYaml },
|
|
54
|
+
rules: { "yaml/sort-keys": [
|
|
55
|
+
"error",
|
|
56
|
+
{
|
|
57
|
+
order: [
|
|
58
|
+
...[
|
|
59
|
+
"cacheDir",
|
|
60
|
+
"catalogMode",
|
|
61
|
+
"cleanupUnusedCatalogs",
|
|
62
|
+
"dedupeDirectDeps",
|
|
63
|
+
"deployAllFiles",
|
|
64
|
+
"enablePrePostScripts",
|
|
65
|
+
"engineStrict",
|
|
66
|
+
"extendNodePath",
|
|
67
|
+
"hoist",
|
|
68
|
+
"hoistPattern",
|
|
69
|
+
"hoistWorkspacePackages",
|
|
70
|
+
"ignoreCompatibilityDb",
|
|
71
|
+
"ignoreDepScripts",
|
|
72
|
+
"ignoreScripts",
|
|
73
|
+
"ignoreWorkspaceRootCheck",
|
|
74
|
+
"managePackageManagerVersions",
|
|
75
|
+
"minimumReleaseAge",
|
|
76
|
+
"minimumReleaseAgeExclude",
|
|
77
|
+
"modulesDir",
|
|
78
|
+
"nodeLinker",
|
|
79
|
+
"nodeVersion",
|
|
80
|
+
"optimisticRepeatInstall",
|
|
81
|
+
"packageManagerStrict",
|
|
82
|
+
"packageManagerStrictVersion",
|
|
83
|
+
"preferSymlinkedExecutables",
|
|
84
|
+
"preferWorkspacePackages",
|
|
85
|
+
"publicHoistPattern",
|
|
86
|
+
"registrySupportsTimeField",
|
|
87
|
+
"requiredScripts",
|
|
88
|
+
"resolutionMode",
|
|
89
|
+
"savePrefix",
|
|
90
|
+
"scriptShell",
|
|
91
|
+
"shamefullyHoist",
|
|
92
|
+
"shellEmulator",
|
|
93
|
+
"stateDir",
|
|
94
|
+
"supportedArchitectures",
|
|
95
|
+
"symlink",
|
|
96
|
+
"tag",
|
|
97
|
+
"trustPolicy",
|
|
98
|
+
"trustPolicyExclude",
|
|
99
|
+
"updateNotifier"
|
|
100
|
+
],
|
|
101
|
+
"packages",
|
|
102
|
+
"overrides",
|
|
103
|
+
"patchedDependencies",
|
|
104
|
+
"catalog",
|
|
105
|
+
"catalogs",
|
|
106
|
+
...[
|
|
107
|
+
"allowedDeprecatedVersions",
|
|
108
|
+
"allowNonAppliedPatches",
|
|
109
|
+
"configDependencies",
|
|
110
|
+
"ignoredBuiltDependencies",
|
|
111
|
+
"ignoredOptionalDependencies",
|
|
112
|
+
"neverBuiltDependencies",
|
|
113
|
+
"onlyBuiltDependencies",
|
|
114
|
+
"onlyBuiltDependenciesFile",
|
|
115
|
+
"packageExtensions",
|
|
116
|
+
"peerDependencyRules"
|
|
117
|
+
]
|
|
118
|
+
],
|
|
119
|
+
pathPattern: "^$"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
order: { type: "asc" },
|
|
123
|
+
pathPattern: ".*"
|
|
124
|
+
}
|
|
125
|
+
] }
|
|
126
|
+
});
|
|
127
|
+
return configs;
|
|
115
128
|
}
|
|
116
129
|
|
|
117
130
|
//#endregion
|
package/dist/factory.mjs
CHANGED
|
@@ -51,7 +51,7 @@ const defaultPluginRenaming = {
|
|
|
51
51
|
"yml": "yaml"
|
|
52
52
|
};
|
|
53
53
|
function eienjs(options = {}) {
|
|
54
|
-
const { adonisjs: enableAdonisjs = false, astro: enableAstro = false, componentExts = [], gitignore: enableGitignore = true, ignores: userIgnores = [], imports: enableImports = true, nuxt: enableNuxt = false, pnpm: enableCatalogs = Boolean(findUpSync("pnpm-workspace.yaml")), regexp: enableRegexp = true, typescript: enableTypeScript = isPackageExists("typescript"), unicorn: enableUnicorn = true, vue: enableVue = VuePackages.some((i) => isPackageExists(i)) } = options;
|
|
54
|
+
const { adonisjs: enableAdonisjs = false, astro: enableAstro = false, componentExts = [], gitignore: enableGitignore = true, ignores: userIgnores = [], imports: enableImports = true, jsdoc: enableJsdoc = true, node: enableNode = true, nuxt: enableNuxt = false, pnpm: enableCatalogs = Boolean(findUpSync("pnpm-workspace.yaml")), regexp: enableRegexp = true, typescript: enableTypeScript = isPackageExists("typescript"), unicorn: enableUnicorn = true, vue: enableVue = VuePackages.some((i) => isPackageExists(i)) } = options;
|
|
55
55
|
let { isInEditor } = options;
|
|
56
56
|
if (isInEditor == null) {
|
|
57
57
|
isInEditor = isInEditorEnv();
|
|
@@ -71,10 +71,12 @@ function eienjs(options = {}) {
|
|
|
71
71
|
configs.push(ignores(userIgnores), javascript({
|
|
72
72
|
isInEditor,
|
|
73
73
|
overrides: getOverrides(options, "javascript")
|
|
74
|
-
}), comments(),
|
|
75
|
-
if (
|
|
74
|
+
}), comments(), command(), perfectionist());
|
|
75
|
+
if (enableNode) configs.push(node());
|
|
76
|
+
if (enableJsdoc) configs.push(jsdoc({ stylistic: stylisticOptions }));
|
|
77
|
+
if (enableImports) configs.push(imports({
|
|
76
78
|
stylistic: stylisticOptions,
|
|
77
|
-
...
|
|
79
|
+
...resolveSubOptions(options, "imports")
|
|
78
80
|
}));
|
|
79
81
|
if (enableUnicorn) configs.push(unicorn(enableUnicorn === true ? {} : enableUnicorn));
|
|
80
82
|
if (enableVue) componentExts.push("vue");
|
|
@@ -116,7 +118,15 @@ function eienjs(options = {}) {
|
|
|
116
118
|
overrides: getOverrides(options, "jsonc"),
|
|
117
119
|
stylistic: stylisticOptions
|
|
118
120
|
}), sortPackageJson(), sortTsconfig());
|
|
119
|
-
if (enableCatalogs)
|
|
121
|
+
if (enableCatalogs) {
|
|
122
|
+
const optionsPnpm = resolveSubOptions(options, "pnpm");
|
|
123
|
+
configs.push(pnpm({
|
|
124
|
+
isInEditor,
|
|
125
|
+
json: options.jsonc !== false,
|
|
126
|
+
yaml: options.yaml !== false,
|
|
127
|
+
...optionsPnpm
|
|
128
|
+
}));
|
|
129
|
+
}
|
|
120
130
|
if (options.yaml ?? true) configs.push(yaml({
|
|
121
131
|
overrides: getOverrides(options, "yaml"),
|
|
122
132
|
stylistic: stylisticOptions
|
package/dist/index.d.mts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ConfigNames } from "./typegen.mjs";
|
|
2
|
-
import { Awaitable, OptionsAdonisJS, OptionsComponentExts, OptionsConfig, OptionsErasableSyntaxOnly, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsNuxt, OptionsOverrides, OptionsRegExp, OptionsStylistic, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsTypescriptWithErasableSyntaxOnly, OptionsVue, Rules, StylisticConfig, TypedFlatConfigItem } from "./types.mjs";
|
|
2
|
+
import { Awaitable, OptionsAdonisJS, OptionsComponentExts, OptionsConfig, OptionsErasableSyntaxOnly, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsNuxt, OptionsOverrides, OptionsPnpm, OptionsRegExp, OptionsStylistic, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsTypescriptWithErasableSyntaxOnly, OptionsVue, Rules, StylisticConfig, TypedFlatConfigItem } from "./types.mjs";
|
|
3
3
|
import { ResolvedOptions, defaultPluginRenaming, eienjs, getOverrides, resolveSubOptions } from "./factory.mjs";
|
|
4
|
+
import { CONFIG_PRESET_FULL_OFF, CONFIG_PRESET_FULL_ON } from "./config_presets.mjs";
|
|
4
5
|
import { GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_EXTS, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML } from "./globs.mjs";
|
|
5
6
|
import { combine, ensurePackages, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, parserPlain, toArray } from "./utils.mjs";
|
|
6
|
-
export { Awaitable, ConfigNames, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_EXTS, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsAdonisJS, OptionsComponentExts, OptionsConfig, OptionsErasableSyntaxOnly, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsNuxt, OptionsOverrides, OptionsRegExp, OptionsStylistic, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsTypescriptWithErasableSyntaxOnly, OptionsVue, ResolvedOptions, Rules, StylisticConfig, TypedFlatConfigItem, combine, eienjs as default, defaultPluginRenaming, eienjs, ensurePackages, getOverrides, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, parserPlain, resolveSubOptions, toArray };
|
|
7
|
+
export { Awaitable, CONFIG_PRESET_FULL_OFF, CONFIG_PRESET_FULL_ON, ConfigNames, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_EXTS, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsAdonisJS, OptionsComponentExts, OptionsConfig, OptionsErasableSyntaxOnly, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsNuxt, OptionsOverrides, OptionsPnpm, OptionsRegExp, OptionsStylistic, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsTypescriptWithErasableSyntaxOnly, OptionsVue, ResolvedOptions, Rules, StylisticConfig, TypedFlatConfigItem, combine, eienjs as default, defaultPluginRenaming, eienjs, ensurePackages, getOverrides, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, parserPlain, resolveSubOptions, toArray };
|
package/dist/index.mjs
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_EXTS, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML } from "./globs.mjs";
|
|
2
2
|
import { combine, ensurePackages, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, parserPlain, toArray } from "./utils.mjs";
|
|
3
3
|
import { defaultPluginRenaming, eienjs, getOverrides, resolveSubOptions } from "./factory.mjs";
|
|
4
|
+
import { CONFIG_PRESET_FULL_OFF, CONFIG_PRESET_FULL_ON } from "./config_presets.mjs";
|
|
4
5
|
|
|
5
6
|
//#region src/index.ts
|
|
6
7
|
var src_default = eienjs;
|
|
7
8
|
|
|
8
9
|
//#endregion
|
|
9
|
-
export { GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_EXTS, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, combine, src_default as default, defaultPluginRenaming, eienjs, ensurePackages, getOverrides, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, parserPlain, resolveSubOptions, toArray };
|
|
10
|
+
export { CONFIG_PRESET_FULL_OFF, CONFIG_PRESET_FULL_ON, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_EXTS, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, combine, src_default as default, defaultPluginRenaming, eienjs, ensurePackages, getOverrides, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, parserPlain, resolveSubOptions, toArray };
|
|
@@ -6,6 +6,21 @@ import path from "node:path";
|
|
|
6
6
|
|
|
7
7
|
//#region node_modules/.pnpm/find-up-simple@1.0.1/node_modules/find-up-simple/index.js
|
|
8
8
|
const toPath = (urlOrPath) => urlOrPath instanceof URL ? fileURLToPath(urlOrPath) : urlOrPath;
|
|
9
|
+
async function findUp(name, { cwd = process.cwd(), type = "file", stopAt } = {}) {
|
|
10
|
+
let directory = path.resolve(toPath(cwd) ?? "");
|
|
11
|
+
const { root } = path.parse(directory);
|
|
12
|
+
stopAt = path.resolve(directory, toPath(stopAt ?? root));
|
|
13
|
+
const isAbsoluteName = path.isAbsolute(name);
|
|
14
|
+
while (directory) {
|
|
15
|
+
const filePath = isAbsoluteName ? name : path.join(directory, name);
|
|
16
|
+
try {
|
|
17
|
+
const stats = await fsPromises.stat(filePath);
|
|
18
|
+
if (type === "file" && stats.isFile() || type === "directory" && stats.isDirectory()) return filePath;
|
|
19
|
+
} catch {}
|
|
20
|
+
if (directory === stopAt || directory === root) break;
|
|
21
|
+
directory = path.dirname(directory);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
9
24
|
function findUpSync(name, { cwd = process.cwd(), type = "file", stopAt } = {}) {
|
|
10
25
|
let directory = path.resolve(toPath(cwd) ?? "");
|
|
11
26
|
const { root } = path.parse(directory);
|
|
@@ -23,4 +38,4 @@ function findUpSync(name, { cwd = process.cwd(), type = "file", stopAt } = {}) {
|
|
|
23
38
|
}
|
|
24
39
|
|
|
25
40
|
//#endregion
|
|
26
|
-
export { findUpSync };
|
|
41
|
+
export { findUp, findUpSync };
|
package/dist/package.mjs
CHANGED
package/dist/typegen.d.mts
CHANGED
|
@@ -3,6 +3,21 @@ import { Linter } from "eslint";
|
|
|
3
3
|
//#region src/typegen.d.ts
|
|
4
4
|
|
|
5
5
|
interface RuleOptions {
|
|
6
|
+
/**
|
|
7
|
+
* Disallow importing backend code in frontend (Inertia) files
|
|
8
|
+
* @see https://github.com/adonisjs/eslint-plugin-adonisjs#no-backend-import-in-frontend
|
|
9
|
+
*/
|
|
10
|
+
'@adonisjs/no-backend-import-in-frontend'?: Linter.RuleEntry<AdonisjsNoBackendImportInFrontend>;
|
|
11
|
+
/**
|
|
12
|
+
* Prefer the typesafe @adonisjs/inertia Form component over the @inertiajs Form component
|
|
13
|
+
* @see https://github.com/adonisjs/eslint-plugin-adonisjs#prefer-adonisjs-inertia-form
|
|
14
|
+
*/
|
|
15
|
+
'@adonisjs/prefer-adonisjs-inertia-form'?: Linter.RuleEntry<[]>;
|
|
16
|
+
/**
|
|
17
|
+
* Prefer the typesafe @adonisjs/inertia Link component over the @inertiajs Link component
|
|
18
|
+
* @see https://github.com/adonisjs/eslint-plugin-adonisjs#prefer-adonisjs-inertia-link
|
|
19
|
+
*/
|
|
20
|
+
'@adonisjs/prefer-adonisjs-inertia-link'?: Linter.RuleEntry<[]>;
|
|
6
21
|
/**
|
|
7
22
|
* (Needed for HMR) Prefer lazy controller import over standard import
|
|
8
23
|
* @see https://github.com/adonisjs/eslint-plugin-adonisjs#prefer-lazy-controller-import
|
|
@@ -1003,6 +1018,11 @@ interface RuleOptions {
|
|
|
1003
1018
|
* @see https://typescript-eslint.io/rules/no-useless-constructor
|
|
1004
1019
|
*/
|
|
1005
1020
|
'@typescript-eslint/no-useless-constructor'?: Linter.RuleEntry<[]>;
|
|
1021
|
+
/**
|
|
1022
|
+
* Disallow default values that will never be used
|
|
1023
|
+
* @see https://typescript-eslint.io/rules/no-useless-default-assignment
|
|
1024
|
+
*/
|
|
1025
|
+
'@typescript-eslint/no-useless-default-assignment'?: Linter.RuleEntry<[]>;
|
|
1006
1026
|
/**
|
|
1007
1027
|
* Disallow empty exports that don't change anything in a module file
|
|
1008
1028
|
* @see https://typescript-eslint.io/rules/no-useless-empty-export
|
|
@@ -1837,6 +1857,11 @@ interface RuleOptions {
|
|
|
1837
1857
|
* @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/consistent-type-specifier-style/README.md
|
|
1838
1858
|
*/
|
|
1839
1859
|
'import/consistent-type-specifier-style'?: Linter.RuleEntry<ImportConsistentTypeSpecifierStyle>;
|
|
1860
|
+
/**
|
|
1861
|
+
* Ensure all exports appear after other statements.
|
|
1862
|
+
* @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/exports-last/README.md
|
|
1863
|
+
*/
|
|
1864
|
+
'import/exports-last'?: Linter.RuleEntry<[]>;
|
|
1840
1865
|
/**
|
|
1841
1866
|
* Ensure all imports appear before other statements.
|
|
1842
1867
|
* @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/first/README.md
|
|
@@ -3739,6 +3764,11 @@ interface RuleOptions {
|
|
|
3739
3764
|
* @deprecated
|
|
3740
3765
|
*/
|
|
3741
3766
|
'nonblock-statement-body-position'?: Linter.RuleEntry<NonblockStatementBodyPosition>;
|
|
3767
|
+
/**
|
|
3768
|
+
* Disallow setting `test` key in Nuxt config
|
|
3769
|
+
* @see https://eslint.nuxt.com/packages/plugin#nuxtno-nuxt-config-test-key
|
|
3770
|
+
*/
|
|
3771
|
+
'nuxt/no-nuxt-config-test-key'?: Linter.RuleEntry<[]>;
|
|
3742
3772
|
/**
|
|
3743
3773
|
* Prefer recommended order of Nuxt config properties
|
|
3744
3774
|
* @see https://eslint.nuxt.com/packages/plugin#nuxtnuxt-config-keys-order
|
|
@@ -4718,6 +4748,11 @@ interface RuleOptions {
|
|
|
4718
4748
|
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-test-return-statement.md
|
|
4719
4749
|
*/
|
|
4720
4750
|
'test/no-test-return-statement'?: Linter.RuleEntry<[]>;
|
|
4751
|
+
/**
|
|
4752
|
+
* Disallow unnecessary async function wrapper for expected promises
|
|
4753
|
+
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-unneeded-async-expect-function.md
|
|
4754
|
+
*/
|
|
4755
|
+
'test/no-unneeded-async-expect-function'?: Linter.RuleEntry<[]>;
|
|
4721
4756
|
/**
|
|
4722
4757
|
* Enforce padding around `afterAll` blocks
|
|
4723
4758
|
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-after-all-blocks.md
|
|
@@ -4827,7 +4862,7 @@ interface RuleOptions {
|
|
|
4827
4862
|
* prefer dynamic import in mock
|
|
4828
4863
|
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-import-in-mock.md
|
|
4829
4864
|
*/
|
|
4830
|
-
'test/prefer-import-in-mock'?: Linter.RuleEntry<
|
|
4865
|
+
'test/prefer-import-in-mock'?: Linter.RuleEntry<TestPreferImportInMock>;
|
|
4831
4866
|
/**
|
|
4832
4867
|
* enforce importing Vitest globals
|
|
4833
4868
|
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-importing-vitest-globals.md
|
|
@@ -4888,6 +4923,11 @@ interface RuleOptions {
|
|
|
4888
4923
|
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-contain.md
|
|
4889
4924
|
*/
|
|
4890
4925
|
'test/prefer-to-contain'?: Linter.RuleEntry<[]>;
|
|
4926
|
+
/**
|
|
4927
|
+
* Suggest using `toHaveBeenCalledTimes()`
|
|
4928
|
+
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-have-been-called-times.md
|
|
4929
|
+
*/
|
|
4930
|
+
'test/prefer-to-have-been-called-times'?: Linter.RuleEntry<[]>;
|
|
4891
4931
|
/**
|
|
4892
4932
|
* enforce using toHaveLength()
|
|
4893
4933
|
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-have-length.md
|
|
@@ -4913,11 +4953,6 @@ interface RuleOptions {
|
|
|
4913
4953
|
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-hook.md
|
|
4914
4954
|
*/
|
|
4915
4955
|
'test/require-hook'?: Linter.RuleEntry<TestRequireHook>;
|
|
4916
|
-
/**
|
|
4917
|
-
* require usage of import in vi.mock()
|
|
4918
|
-
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-import-vi-mock.md
|
|
4919
|
-
*/
|
|
4920
|
-
'test/require-import-vi-mock'?: Linter.RuleEntry<[]>;
|
|
4921
4956
|
/**
|
|
4922
4957
|
* require local Test Context for concurrent snapshot tests
|
|
4923
4958
|
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-local-test-context-for-concurrent-snapshots.md
|
|
@@ -7236,6 +7271,10 @@ interface RuleOptions {
|
|
|
7236
7271
|
'yoda'?: Linter.RuleEntry<Yoda>;
|
|
7237
7272
|
}
|
|
7238
7273
|
/* ======= Declarations ======= */
|
|
7274
|
+
// ----- @adonisjs/no-backend-import-in-frontend -----
|
|
7275
|
+
type AdonisjsNoBackendImportInFrontend = [] | [{
|
|
7276
|
+
allowed?: string[];
|
|
7277
|
+
}];
|
|
7239
7278
|
// ----- @eslint-community/eslint-comments/disable-enable-pair -----
|
|
7240
7279
|
type EslintCommunityEslintCommentsDisableEnablePair = [] | [{
|
|
7241
7280
|
allowWholeFile?: boolean;
|
|
@@ -13696,7 +13735,6 @@ type PnpmYamlEnforceSettings = [] | [{
|
|
|
13696
13735
|
};
|
|
13697
13736
|
requiredFields?: string[];
|
|
13698
13737
|
forbiddenFields?: string[];
|
|
13699
|
-
[k: string]: unknown | undefined;
|
|
13700
13738
|
}];
|
|
13701
13739
|
// ----- pnpm/yaml-no-duplicate-catalog-item -----
|
|
13702
13740
|
type PnpmYamlNoDuplicateCatalogItem = [] | [{
|
|
@@ -14063,6 +14101,10 @@ type TestPreferExpectAssertions = [] | [{
|
|
|
14063
14101
|
onlyFunctionsWithExpectInLoop?: boolean;
|
|
14064
14102
|
onlyFunctionsWithExpectInCallback?: boolean;
|
|
14065
14103
|
}];
|
|
14104
|
+
// ----- test/prefer-import-in-mock -----
|
|
14105
|
+
type TestPreferImportInMock = [] | [{
|
|
14106
|
+
fixable?: boolean;
|
|
14107
|
+
}];
|
|
14066
14108
|
// ----- test/prefer-lowercase-title -----
|
|
14067
14109
|
type TestPreferLowercaseTitle = [] | [{
|
|
14068
14110
|
ignore?: ("describe" | "test" | "it")[];
|
|
@@ -15894,6 +15936,6 @@ type Yoda = [] | [("always" | "never")] | [("always" | "never"), {
|
|
|
15894
15936
|
onlyEquality?: boolean;
|
|
15895
15937
|
}];
|
|
15896
15938
|
// Names of all the configs
|
|
15897
|
-
type ConfigNames = 'eienjs/gitignore' | 'eienjs/ignores' | 'eienjs/javascript/setup' | 'eienjs/javascript/rules' | 'eienjs/eslint-comments/rules' | 'eienjs/
|
|
15939
|
+
type ConfigNames = 'eienjs/gitignore' | 'eienjs/ignores' | 'eienjs/javascript/setup' | 'eienjs/javascript/rules' | 'eienjs/eslint-comments/rules' | 'eienjs/command/rules' | 'eienjs/perfectionist/setup' | 'eienjs/node/rules' | 'eienjs/jsdoc/rules' | 'eienjs/imports/rules' | 'eienjs/unicorn/rules' | 'eienjs/unicorn/special-rules' | 'eienjs/typescript/setup' | 'eienjs/typescript/parser' | 'eienjs/typescript/type-aware-parser' | 'eienjs/typescript/rules' | 'eienjs/typescript/rules-type-aware' | 'eienjs/typescript/disables' | 'eienjs/typescript/erasable-syntax-only' | 'eienjs/stylistic/rules' | 'eienjs/regexp/rules' | 'eienjs/test/setup' | 'eienjs/test/rules' | 'eienjs/vue/setup' | 'eienjs/vue/rules' | 'eienjs/vue/composables-disables' | 'eienjs/astro/setup' | 'eienjs/astro/rules' | 'eienjs/adonisjs/rules' | 'eienjs/adonisjs/inertia-rules' | 'eienjs/adonisjs/disables' | 'eienjs/adonisjs/database-disables' | 'eienjs/adonisjs/bin-disables' | 'eienjs/adonisjs/commands-disables' | 'eienjs/adonisjs/middleware-disables' | 'eienjs/adonisjs/exceptions-disables' | 'eienjs/adonisjs/controllers-disables' | 'eienjs/adonisjs/config-disables' | 'eienjs/adonisjs/providers-disables' | 'eienjs/adonisjs/tests-disables' | 'eienjs/adonisjs/types-disables' | 'eienjs/nuxt/setup' | 'eienjs/nuxt/vue/single-root' | 'eienjs/nuxt/rules' | 'eienjs/nuxt/utils-disables' | 'eienjs/nuxt/sort-config' | 'eienjs/nuxt/vue/rules' | 'eienjs/jsonc/setup' | 'eienjs/jsonc/rules' | 'eienjs/sort/package-json' | 'eienjs/sort/tsconfig-json' | 'eienjs/pnpm/package-json' | 'eienjs/pnpm/pnpm-workspace-yaml' | 'eienjs/pnpm/pnpm-workspace-yaml-sort' | 'eienjs/yaml/setup' | 'eienjs/yaml/rules' | 'eienjs/toml/setup' | 'eienjs/toml/rules' | 'eienjs/markdown/setup' | 'eienjs/markdown/processor' | 'eienjs/markdown/parser' | 'eienjs/markdown/disables' | 'eienjs/formatter/setup' | 'eienjs/formatter/css' | 'eienjs/formatter/scss' | 'eienjs/formatter/less' | 'eienjs/formatter/html' | 'eienjs/formatter/xml' | 'eienjs/formatter/svg' | 'eienjs/formatter/markdown' | 'eienjs/formatter/astro' | 'eienjs/formatter/astro/disables' | 'eienjs/disables/scripts' | 'eienjs/disables/cli' | 'eienjs/disables/bin' | 'eienjs/disables/dts' | 'eienjs/disables/cjs' | 'eienjs/disables/config-files' | 'eienjs/disables/json' | 'eienjs/disables/yaml' | 'eienjs/disables/toml' | 'eienjs/disables/astro' | 'eienjs/disables/deploy-tools';
|
|
15898
15940
|
//#endregion
|
|
15899
15941
|
export { ConfigNames, RuleOptions };
|
package/dist/types.d.mts
CHANGED
|
@@ -131,6 +131,8 @@ interface OptionsAdonisJS extends OptionsOverrides {
|
|
|
131
131
|
tests?: string;
|
|
132
132
|
config?: string;
|
|
133
133
|
commands?: string;
|
|
134
|
+
inertia?: string;
|
|
135
|
+
types?: string;
|
|
134
136
|
};
|
|
135
137
|
}
|
|
136
138
|
interface OptionsVue extends OptionsOverrides {
|
|
@@ -278,6 +280,32 @@ interface OptionsRegExp {
|
|
|
278
280
|
interface OptionsIsInEditor {
|
|
279
281
|
isInEditor?: boolean;
|
|
280
282
|
}
|
|
283
|
+
interface OptionsPnpm extends OptionsIsInEditor {
|
|
284
|
+
/**
|
|
285
|
+
* Requires catalogs usage
|
|
286
|
+
*
|
|
287
|
+
* Detects automatically based if `catalogs` is used in the pnpm-workspace.yaml file
|
|
288
|
+
*/
|
|
289
|
+
catalogs?: boolean;
|
|
290
|
+
/**
|
|
291
|
+
* Enable linting for package.json, will install the jsonc parser
|
|
292
|
+
*
|
|
293
|
+
* @default true
|
|
294
|
+
*/
|
|
295
|
+
json?: boolean;
|
|
296
|
+
/**
|
|
297
|
+
* Enable linting for pnpm-workspace.yaml, will install the yaml parser
|
|
298
|
+
*
|
|
299
|
+
* @default true
|
|
300
|
+
*/
|
|
301
|
+
yaml?: boolean;
|
|
302
|
+
/**
|
|
303
|
+
* Sort entries in pnpm-workspace.yaml
|
|
304
|
+
*
|
|
305
|
+
* @default false
|
|
306
|
+
*/
|
|
307
|
+
sort?: boolean;
|
|
308
|
+
}
|
|
281
309
|
interface OptionsConfig extends OptionsComponentExts {
|
|
282
310
|
/**
|
|
283
311
|
* Enable gitignore support.
|
|
@@ -301,6 +329,18 @@ interface OptionsConfig extends OptionsComponentExts {
|
|
|
301
329
|
* Core rules. Can't be disabled.
|
|
302
330
|
*/
|
|
303
331
|
javascript?: OptionsOverrides;
|
|
332
|
+
/**
|
|
333
|
+
* Enable Node.js rules
|
|
334
|
+
*
|
|
335
|
+
* @default true
|
|
336
|
+
*/
|
|
337
|
+
node?: boolean;
|
|
338
|
+
/**
|
|
339
|
+
* Enable JSDoc rules
|
|
340
|
+
*
|
|
341
|
+
* @default true
|
|
342
|
+
*/
|
|
343
|
+
jsdoc?: boolean;
|
|
304
344
|
/**
|
|
305
345
|
* Enable TypeScript support.
|
|
306
346
|
*
|
|
@@ -395,7 +435,7 @@ interface OptionsConfig extends OptionsComponentExts {
|
|
|
395
435
|
* @experimental
|
|
396
436
|
* @default false
|
|
397
437
|
*/
|
|
398
|
-
pnpm?: boolean;
|
|
438
|
+
pnpm?: boolean | OptionsPnpm;
|
|
399
439
|
/**
|
|
400
440
|
* Use external formatters to format files.
|
|
401
441
|
*
|
|
@@ -432,4 +472,4 @@ interface OptionsConfig extends OptionsComponentExts {
|
|
|
432
472
|
nuxt?: boolean | OptionsNuxt;
|
|
433
473
|
}
|
|
434
474
|
//#endregion
|
|
435
|
-
export { Awaitable, OptionsAdonisJS, OptionsComponentExts, OptionsConfig, OptionsErasableSyntaxOnly, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsNuxt, OptionsOverrides, OptionsRegExp, OptionsStylistic, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsTypescriptWithErasableSyntaxOnly, OptionsVue, Rules, StylisticConfig, TypedFlatConfigItem };
|
|
475
|
+
export { Awaitable, OptionsAdonisJS, OptionsComponentExts, OptionsConfig, OptionsErasableSyntaxOnly, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsNuxt, OptionsOverrides, OptionsPnpm, OptionsRegExp, OptionsStylistic, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsTypescriptWithErasableSyntaxOnly, OptionsVue, Rules, StylisticConfig, TypedFlatConfigItem };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eienjs/eslint-config",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.8.1",
|
|
5
5
|
"description": "EienJS ESLint Config",
|
|
6
6
|
"author": "Fernando Isidro <luffynando@gmail.com> (https://github.com/luffynando/)",
|
|
7
7
|
"license": "MIT",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"main": "./dist/index.mjs",
|
|
28
28
|
"module": "./dist/index.mjs",
|
|
29
29
|
"types": "./dist/index.d.mts",
|
|
30
|
-
"bin": "./bin/index.
|
|
30
|
+
"bin": "./bin/index.mjs",
|
|
31
31
|
"files": [
|
|
32
32
|
"bin",
|
|
33
33
|
"dist"
|
|
@@ -36,11 +36,11 @@
|
|
|
36
36
|
"node": ">=20.19"
|
|
37
37
|
},
|
|
38
38
|
"peerDependencies": {
|
|
39
|
-
"@adonisjs/eslint-plugin": "^2.0
|
|
40
|
-
"@nuxt/eslint-plugin": "^1.
|
|
39
|
+
"@adonisjs/eslint-plugin": "^2.2.0",
|
|
40
|
+
"@nuxt/eslint-plugin": "^1.12.1",
|
|
41
41
|
"@prettier/plugin-xml": "^3.4.2",
|
|
42
42
|
"astro-eslint-parser": "^1.2.2",
|
|
43
|
-
"eslint": "^9.39.
|
|
43
|
+
"eslint": "^9.39.2",
|
|
44
44
|
"eslint-plugin-astro": "^1.5.0",
|
|
45
45
|
"eslint-plugin-erasable-syntax-only": "^0.4.0",
|
|
46
46
|
"eslint-plugin-format": "^1.1.0",
|
|
@@ -78,50 +78,50 @@
|
|
|
78
78
|
"@eslint-community/eslint-plugin-eslint-comments": "^4.5.0",
|
|
79
79
|
"@eslint/markdown": "^7.5.1",
|
|
80
80
|
"@stylistic/eslint-plugin": "^5.6.1",
|
|
81
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
82
|
-
"@typescript-eslint/parser": "^8.
|
|
83
|
-
"@vitest/eslint-plugin": "^1.
|
|
81
|
+
"@typescript-eslint/eslint-plugin": "^8.50.1",
|
|
82
|
+
"@typescript-eslint/parser": "^8.50.1",
|
|
83
|
+
"@vitest/eslint-plugin": "^1.6.3",
|
|
84
84
|
"ansis": "^4.2.0",
|
|
85
85
|
"cac": "^6.7.14",
|
|
86
86
|
"eslint-config-flat-gitignore": "^2.1.0",
|
|
87
87
|
"eslint-flat-config-utils": "^2.1.4",
|
|
88
88
|
"eslint-merge-processors": "^2.0.0",
|
|
89
89
|
"eslint-plugin-antfu": "^3.1.1",
|
|
90
|
-
"eslint-plugin-command": "^3.
|
|
91
|
-
"eslint-plugin-import-lite": "^0.
|
|
92
|
-
"eslint-plugin-jsdoc": "^61.
|
|
90
|
+
"eslint-plugin-command": "^3.4.0",
|
|
91
|
+
"eslint-plugin-import-lite": "^0.4.0",
|
|
92
|
+
"eslint-plugin-jsdoc": "^61.5.0",
|
|
93
93
|
"eslint-plugin-jsonc": "^2.21.0",
|
|
94
94
|
"eslint-plugin-n": "^17.23.1",
|
|
95
95
|
"eslint-plugin-no-only-tests": "^3.3.0",
|
|
96
96
|
"eslint-plugin-perfectionist": "^4.15.1",
|
|
97
|
-
"eslint-plugin-pnpm": "^1.4.
|
|
97
|
+
"eslint-plugin-pnpm": "^1.4.3",
|
|
98
98
|
"eslint-plugin-regexp": "^2.10.0",
|
|
99
99
|
"eslint-plugin-toml": "^0.12.0",
|
|
100
100
|
"eslint-plugin-unicorn": "^62.0.0",
|
|
101
101
|
"eslint-plugin-unused-imports": "^4.3.0",
|
|
102
102
|
"eslint-plugin-vue": "^10.6.2",
|
|
103
|
-
"eslint-plugin-yml": "^1.19.
|
|
103
|
+
"eslint-plugin-yml": "^1.19.1",
|
|
104
104
|
"eslint-processor-vue-blocks": "^2.0.0",
|
|
105
105
|
"globals": "^16.5.0",
|
|
106
|
-
"jsonc-eslint-parser": "^2.4.
|
|
106
|
+
"jsonc-eslint-parser": "^2.4.2",
|
|
107
107
|
"local-pkg": "^1.1.2",
|
|
108
108
|
"parse-gitignore": "^2.0.0",
|
|
109
109
|
"pathe": "^2.0.3",
|
|
110
|
-
"toml-eslint-parser": "^0.10.
|
|
110
|
+
"toml-eslint-parser": "^0.10.1",
|
|
111
111
|
"vue-eslint-parser": "^10.2.0",
|
|
112
112
|
"yaml-eslint-parser": "^1.3.2"
|
|
113
113
|
},
|
|
114
114
|
"devDependencies": {
|
|
115
|
-
"@adonisjs/eslint-plugin": "^2.0
|
|
115
|
+
"@adonisjs/eslint-plugin": "^2.2.0",
|
|
116
116
|
"@commitlint/cli": "^20.2.0",
|
|
117
117
|
"@commitlint/config-conventional": "^20.2.0",
|
|
118
118
|
"@eslint/config-inspector": "^1.4.2",
|
|
119
|
-
"@nuxt/eslint-plugin": "^1.
|
|
119
|
+
"@nuxt/eslint-plugin": "^1.12.1",
|
|
120
120
|
"@prettier/plugin-xml": "^3.4.2",
|
|
121
|
-
"@types/node": "^24.10.
|
|
121
|
+
"@types/node": "^24.10.4",
|
|
122
122
|
"astro-eslint-parser": "^1.2.2",
|
|
123
123
|
"auto-changelog": "^2.5.0",
|
|
124
|
-
"eslint": "^9.39.
|
|
124
|
+
"eslint": "^9.39.2",
|
|
125
125
|
"eslint-plugin-astro": "^1.5.0",
|
|
126
126
|
"eslint-plugin-erasable-syntax-only": "^0.4.0",
|
|
127
127
|
"eslint-plugin-format": "^1.1.0",
|
|
@@ -129,9 +129,9 @@
|
|
|
129
129
|
"find-up-simple": "^1.0.1",
|
|
130
130
|
"husky": "^9.1.7",
|
|
131
131
|
"np": "^10.2.0",
|
|
132
|
-
"pnpm-workspace-yaml": "^1.4.
|
|
132
|
+
"pnpm-workspace-yaml": "^1.4.3",
|
|
133
133
|
"prettier-plugin-astro": "^0.14.1",
|
|
134
|
-
"tsdown": "^0.
|
|
134
|
+
"tsdown": "^0.18.2",
|
|
135
135
|
"tsx": "^4.21.0",
|
|
136
136
|
"typescript": "^5.9.3"
|
|
137
137
|
},
|
|
File without changes
|