@js-toolkit/configs 3.98.1 → 3.99.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/eslint/common.d.ts +4 -1
- package/eslint/common.js +1 -1
- package/eslint/node.js +1 -1
- package/eslint/universal.js +1 -1
- package/eslint/web.js +1 -1
- package/package.json +26 -26
package/eslint/common.d.ts
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
1
|
import type { Linter } from 'eslint';
|
|
2
|
-
|
|
2
|
+
import type { AnyObject } from '../types';
|
|
3
|
+
export declare function createTypeScriptImportResolver(options?: AnyObject): AnyObject;
|
|
4
|
+
export declare function create(cwd: string): Linter.Config[];
|
|
5
|
+
declare const config: Linter.Config<import("@eslint/core").RulesConfig>[];
|
|
3
6
|
export default config;
|
package/eslint/common.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,s
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,s){void 0===s&&(s=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,n)}:function(e,t,r,s){void 0===s&&(s=r),e[s]=t[r]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(null!=t)for(var s=e(t),n=0;n<s.length;n++)"default"!==s[n]&&__createBinding(r,t,s[n]);return __setModuleDefault(r,t),r}}(),__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.createTypeScriptImportResolver=createTypeScriptImportResolver,exports.create=create;const fs_1=__importDefault(require("fs")),path_1=__importDefault(require("path")),globals_1=__importDefault(require("globals")),config_1=require("eslint/config"),js_1=__importDefault(require("@eslint/js")),compat_1=require("@eslint/compat"),paths_1=__importStar(require("../paths")),getInstalledPackage_1=require("../getInstalledPackage"),consts_1=require("./consts"),utils_1=require("./utils"),hasBabelParser=!!(0,getInstalledPackage_1.getInstalledPackage)("@babel/eslint-parser"),hasPromisePlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-plugin-promise"),hasImportXPlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-plugin-import-x"),hasImportPlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-plugin-import"),hasConfigStandard=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-config-standard"),hasConfigAirbnbBase=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-config-airbnb-base"),hasJsDocPlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-plugin-jsdoc"),hasTsDocPlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-plugin-tsdoc"),hasPrettierEslintPlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-plugin-prettier/recommended"),hasTypescriptEslintPlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("typescript-eslint"),hasImportResolverTypescript=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-import-resolver-typescript"),withFilteredStandardRules=()=>{const e=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-plugin-n");return{rules:Object.entries(require("eslint-config-standard").rules).reduce((t,[r,s])=>(r.startsWith("import/")?hasImportPlugin&&!hasImportXPlugin?t[r]=s:hasImportXPlugin&&(t[r.replace("import/","import-x/")]=s):r.startsWith("n/")?e&&(t[r]=s):r.startsWith("promise/")?hasPromisePlugin&&(t[r]=s):t[r]=s,t),{})}},filterAirbnbRules=()=>{const e=require("eslint-config-airbnb-base").extends.map(e=>({rules:e.endsWith("imports.js")?hasImportXPlugin&&Object.entries(require(e).rules).reduce((e,[t,r])=>(e[t.replace("import/","import-x/")]=r,e),{})||hasImportPlugin&&require(e).rules||{}:require(e).rules}));return(0,compat_1.fixupConfigRules)(e)};function createTypeScriptImportResolver(e){return require("eslint-import-resolver-typescript").createTypeScriptImportResolver({extensions:paths_1.moduleExtensions,...e})}function create(e){const t=hasTypescriptEslintPlugin&&path_1.default.resolve(e,consts_1.eslintTsProject),r=t&&fs_1.default.existsSync(t)?t:path_1.default.resolve(e,"tsconfig.json");return[js_1.default.configs.recommended,...hasPromisePlugin?[require("eslint-plugin-promise").configs["flat/recommended"]]:[],...hasImportPlugin&&!hasImportXPlugin?(0,compat_1.fixupConfigRules)(utils_1.compat.extends("plugin:import/recommended")):[],...hasImportXPlugin?[require("eslint-plugin-import-x").flatConfigs.recommended]:[],...hasConfigStandard?[withFilteredStandardRules()]:[],...hasJsDocPlugin?[{...require("eslint-plugin-jsdoc").configs["flat/recommended"],files:[(0,paths_1.getFilesGlob)((0,paths_1.getJSExtensions)())]}]:[],...hasConfigAirbnbBase?filterAirbnbRules():[],{languageOptions:{ecmaVersion:"latest",parserOptions:{ecmaVersion:"latest"},globals:{...globals_1.default.node},...hasBabelParser&&{parser:require("@babel/eslint-parser"),parserOptions:{requireConfigFile:!1}}},linterOptions:{reportUnusedDisableDirectives:!0},settings:{...hasImportPlugin&&!hasImportXPlugin&&{"import/extensions":(0,paths_1.getJSExtensions)(),"import-x/extensions":(0,paths_1.getJSExtensions)(),"import/resolver":{node:{extensions:(0,paths_1.getJSExtensions)(),moduleDirectory:["node_modules",paths_1.default.web.sources,paths_1.default.node.sources,paths_1.default.shared.sources].filter(e=>!!e)}},...hasBabelParser&&{"import/parsers":{"@babel/eslint-parser":(0,paths_1.getJSExtensions)()}}},...hasImportXPlugin&&{"import-x/resolver-next":[require("eslint-plugin-import-x").createNodeResolver({extensions:(0,paths_1.getJSExtensions)(),modules:["node_modules",paths_1.default.web.sources,paths_1.default.node.sources,paths_1.default.shared.sources].filter(e=>!!e)})],...hasBabelParser&&{"import-x/parsers":{"@babel/eslint-parser":(0,paths_1.getJSExtensions)()}}}},rules:{"lines-between-class-members":["error","always",{exceptAfterSingleLine:!0}],"func-names":["warn","as-needed",{generators:"as-needed"}],"no-console":"off","no-unused-expressions":["error",{allowShortCircuit:!0}],"no-plusplus":["error",{allowForLoopAfterthoughts:!0}],"no-param-reassign":["error",{props:!1}],"no-promise-executor-return":["error",{allowVoid:!0}],"no-restricted-exports":["error",{restrictedNamedExports:["then"],restrictDefaultExports:{named:!0,namedFrom:!0,namespaceFrom:!0,defaultFrom:!1}}],"no-restricted-syntax":["error","ForInStatement","LabeledStatement","WithStatement","CallExpression[callee.name='setTimeout'][arguments.length!=2]","CallExpression[arguments.length!=2] > MemberExpression[object.name='window'][property.name='setTimeout']"],...(hasImportPlugin||hasImportXPlugin)&&Object.entries({"import/no-extraneous-dependencies":["error",{devDependencies:!0}],"import/extensions":["error","ignorePackages",paths_1.moduleExtensions.reduce((e,t)=>({...e,[t.substring(1)]:"never"}),{"":"never"})],"import/order":["error",{groups:["builtin","external","internal","parent","sibling","index","object"]}],"import/prefer-default-export":"off"}).reduce((e,[t,r])=>(hasImportXPlugin?e[t.replace("import/","import-x/")]=r:e[t]=r,e),{}),...hasPromisePlugin&&{"promise/always-return":"off","promise/catch-or-return":["error",{allowFinally:!0}]}}},...hasTypescriptEslintPlugin?(()=>{const t=require("typescript-eslint");return(0,config_1.defineConfig)({extends:[...t.configs.recommendedTypeChecked,...t.configs.stylisticTypeChecked,...hasImportPlugin&&!hasImportXPlugin?(0,compat_1.fixupConfigRules)(utils_1.compat.extends("plugin:import/typescript")):[],...hasImportXPlugin?[require("eslint-plugin-import-x").flatConfigs.typescript]:[]],files:[(0,paths_1.getFilesGlob)((0,paths_1.getTSExtensions)())],plugins:{...hasTsDocPlugin&&{tsdoc:require("eslint-plugin-tsdoc")}},languageOptions:{parserOptions:{tsconfigRootDir:e,projectService:{defaultProject:r,allowDefaultProject:["*.config.ts","*.config.mts","packages/*/*.config.ts","packages/*/*.config.mts"]}}},settings:{...hasImportPlugin&&!hasImportXPlugin&&{"import/extensions":paths_1.moduleExtensions,"import/resolver":{node:{extensions:paths_1.moduleExtensions},typescript:{project:r}},"import/parsers":{"@typescript-eslint/parser":paths_1.moduleExtensions,...hasBabelParser&&{"@babel/eslint-parser":[]}}},...hasImportXPlugin&&{"import-x/extensions":paths_1.moduleExtensions,"import-x/external-module-folders":["node_modules","node_modules/@types"],"import-x/parsers":{"@typescript-eslint/parser":paths_1.moduleExtensions,...hasBabelParser&&{"@babel/eslint-parser":[]}},"import-x/resolver-next":[hasImportResolverTypescript?createTypeScriptImportResolver({project:r}):[],require("eslint-plugin-import-x").createNodeResolver({extensions:paths_1.moduleExtensions,tsconfig:{configFile:r}})]}},rules:{"no-useless-constructor":"off","no-void":["error",{allowAsStatement:!0}],"@typescript-eslint/explicit-member-accessibility":"off","@typescript-eslint/explicit-function-return-type":["warn",{allowExpressions:!0,allowTypedFunctionExpressions:!0,allowHigherOrderFunctions:!0,allowDirectConstAssertionInArrowFunctions:!0,allowConciseArrowFunctionExpressionsStartingWithVoid:!0}],"no-use-before-define":"off","@typescript-eslint/no-use-before-define":"error","no-shadow":"off","@typescript-eslint/no-shadow":["error",{ignoreTypeValueShadow:!0}],"no-empty-function":"off","@typescript-eslint/no-empty-function":["error",{allow:["private-constructors","protected-constructors","decoratedFunctions"]}],"@typescript-eslint/no-unused-expressions":["error",{allowShortCircuit:!0}],"@typescript-eslint/prefer-nullish-coalescing":["error",{ignorePrimitives:{string:!0},ignoreMixedLogicalExpressions:!0}],...hasImportXPlugin&&{"import-x/named":"off"},...hasTsDocPlugin&&{"tsdoc/syntax":"warn"}}})})():[],...hasPrettierEslintPlugin?[require("eslint-plugin-prettier/recommended")]:[],{files:[(0,paths_1.getFilesGlob)([".d.ts"])],rules:{"max-classes-per-file":"off"}},{ignores:["node_modules","dist","build",".yarn"]}]}const config=create(process.cwd());module.exports=config,module.exports.create=create,module.exports.createTypeScriptImportResolver=createTypeScriptImportResolver,exports.default=config;
|
package/eslint/node.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const config=[];module.exports=config,exports.default=config;
|
package/eslint/universal.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,o,l){void 0===l&&(l=o);var i=Object.getOwnPropertyDescriptor(t,o);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[o]}}),Object.defineProperty(e,l,i)}:function(e,t,o,l){void 0===l&&(l=o),e[l]=t[o]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[t.length]=o);return t},e(t)};return function(t){if(t&&t.__esModule)return t;var o={};if(null!=t)for(var l=e(t),i=0;i<l.length;i++)"default"!==l[i]&&__createBinding(o,t,l[i]);return __setModuleDefault(o,t),o}}(),__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const fs_1=__importDefault(require("fs")),buildConfig_1=__importDefault(require("../buildConfig")),paths_1=__importStar(require("../paths")),filesGlobs={web:buildConfig_1.default.web&&fs_1.default.existsSync(paths_1.default.web.root)?[(0,paths_1.getFilesGlob)(paths_1.moduleExtensions,buildConfig_1.default.web.root)]:[],node:buildConfig_1.default.node&&fs_1.default.existsSync(paths_1.default.node.root)?[(0,paths_1.getFilesGlob)(paths_1.moduleExtensions,buildConfig_1.default.node.root)]:[],shared:buildConfig_1.default.shared&&fs_1.default.existsSync(paths_1.default.shared.root)?[(0,paths_1.getFilesGlob)(paths_1.moduleExtensions,buildConfig_1.default.shared.root)]:[],other:paths_1.moduleExtensions.map(e=>`*${e}`)},config=[{settings:{filesGlobs:filesGlobs,getFilesGlob:paths_1.getFilesGlob}},...filesGlobs.web.length>0?[{files:filesGlobs.web,rules:{}},...require("./web")]:[],...filesGlobs.node.length>0?[{files:filesGlobs.node,rules:{}},...require("./web"),...require("./node")]:[],...filesGlobs.shared.length>0?[...require("./common")]:[],...filesGlobs.other.length>0?[{files:filesGlobs.other,ignores:[...filesGlobs.web,...filesGlobs.node,...filesGlobs.shared].filter(Boolean),rules:{}},...require("./common")]:[]];module.exports=config,exports.default=config;
|
package/eslint/web.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const globals_1=__importDefault(require("globals")),compat_1=require("@eslint/compat"),paths_1=require("../paths"),getInstalledPackage_1=require("../getInstalledPackage"),utils_1=require("./utils"),hasReactPlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-plugin-react"),hasReactA11yPlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-plugin-jsx-a11y"),hasReactHooksPlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-plugin-react-hooks"),hasWCPlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-plugin-wc"),hasLitPlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-plugin-lit"),hasMobxPlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-plugin-mobx"),hasConfigAirbnb=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-config-airbnb"),hasTypescriptEslintPlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("typescript-eslint"),hasPrettierEslintPlugin=!!(0,getInstalledPackage_1.getInstalledPackage)("eslint-plugin-prettier/recommended");delete globals_1.default.browser["AudioWorkletGlobalScope "];const filterAirbnbRules=e=>(0,compat_1.fixupConfigRules)({rules:require(require("eslint-config-airbnb").extends.find(t=>t.endsWith(`${e}.js`))).rules}),config=[{languageOptions:{globals:{...globals_1.default.browser}}},...[hasReactPlugin&&require("eslint-plugin-react/configs/recommended"),...hasReactPlugin&&hasConfigAirbnb?filterAirbnbRules("react"):[],hasReactPlugin&&require("eslint-plugin-react/configs/jsx-runtime"),hasReactPlugin&&{settings:{react:{version:"detect"}},rules:{"react/jsx-props-no-spreading":"off"}},hasReactA11yPlugin&&require("eslint-plugin-jsx-a11y").flatConfigs.recommended,...hasReactA11yPlugin&&hasConfigAirbnb?filterAirbnbRules("react-a11y"):[],hasReactA11yPlugin&&{rules:{"jsx-a11y/anchor-is-valid":["error",{specialLink:["to"]}],"jsx-a11y/label-has-for":["error",{allowChildren:!0}]}}].filter(Boolean).map(e=>({...e,files:[...e.files??[],(0,paths_1.getFilesGlob)((0,paths_1.getSXExtensions)())]})),...hasReactPlugin&&hasTypescriptEslintPlugin?[{files:[(0,paths_1.getFilesGlob)((0,paths_1.getTSXExtensions)())],rules:{"react/jsx-filename-extension":["error",{extensions:(0,paths_1.getSXExtensions)()}],"react/require-default-props":"off"}}]:[],...hasReactHooksPlugin?[require("eslint-plugin-react-hooks").configs.flat["recommended-latest"],{rules:{"react-hooks/exhaustive-deps":"error"}}]:[],...[hasWCPlugin&&require("eslint-plugin-wc").configs["flat/best-practice"],hasWCPlugin&&{settings:{wc:{elementBaseClasses:["HTMLElement"]}}},hasLitPlugin&&require("eslint-plugin-lit").configs["flat/recommended"],hasLitPlugin&&{settings:{lit:{elementBaseClasses:["LitElement"]}}}].filter(Boolean).map(e=>({...e,files:[...e.files??[],(0,paths_1.getFilesGlob)((0,paths_1.getNonSXExtensions)())]})),...hasPrettierEslintPlugin?[require("eslint-plugin-prettier/recommended")]:[],...hasMobxPlugin?[...utils_1.compat.extends("plugin:mobx/recommended"),{rules:{"mobx/missing-observer":"off"}}]:[]];module.exports=config,exports.default=config;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@js-toolkit/configs",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.99.1",
|
|
4
4
|
"description": "Preconfigured configurations",
|
|
5
5
|
"author": "VZH",
|
|
6
6
|
"license": "MIT",
|
|
@@ -18,33 +18,33 @@
|
|
|
18
18
|
"minor-publish": "yarn run build && yarn run minify && npm version minor --no-workspaces-update -m 'v%s' && yarn run copy && cd ./dist && npm publish --access public && git push --follow-tags"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
|
-
"@babel/eslint-parser": "
|
|
22
|
-
"@eslint/compat": "
|
|
23
|
-
"@eslint/eslintrc": "
|
|
24
|
-
"@eslint/js": "
|
|
25
|
-
"@types/eslint": "
|
|
26
|
-
"@types/webpack-node-externals": "
|
|
27
|
-
"copy-webpack-plugin": "
|
|
28
|
-
"copyfiles": "
|
|
29
|
-
"eslint": "
|
|
30
|
-
"eslint-config-airbnb-base": "
|
|
31
|
-
"eslint-config-prettier": "
|
|
32
|
-
"eslint-config-standard": "
|
|
21
|
+
"@babel/eslint-parser": "7.28.6",
|
|
22
|
+
"@eslint/compat": "2.0.1",
|
|
23
|
+
"@eslint/eslintrc": "3.3.3",
|
|
24
|
+
"@eslint/js": "9.39.2",
|
|
25
|
+
"@types/eslint": "9.6.1",
|
|
26
|
+
"@types/webpack-node-externals": "3.0.4",
|
|
27
|
+
"copy-webpack-plugin": "13.0.1",
|
|
28
|
+
"copyfiles": "2.4.1",
|
|
29
|
+
"eslint": "9.39.2",
|
|
30
|
+
"eslint-config-airbnb-base": "15.0.0",
|
|
31
|
+
"eslint-config-prettier": "10.1.8",
|
|
32
|
+
"eslint-config-standard": "17.1.0",
|
|
33
33
|
"eslint-import-resolver-typescript": "4.4.4",
|
|
34
34
|
"eslint-plugin-import-x": "4.16.1",
|
|
35
|
-
"eslint-plugin-jsx-a11y": "
|
|
36
|
-
"eslint-plugin-prettier": "
|
|
37
|
-
"eslint-plugin-promise": "
|
|
38
|
-
"eslint-plugin-react": "
|
|
35
|
+
"eslint-plugin-jsx-a11y": "6.10.2",
|
|
36
|
+
"eslint-plugin-prettier": "5.5.5",
|
|
37
|
+
"eslint-plugin-promise": "7.2.1",
|
|
38
|
+
"eslint-plugin-react": "7.37.5",
|
|
39
39
|
"eslint-plugin-react-hooks": "7.0.1",
|
|
40
|
-
"globals": "
|
|
41
|
-
"html-webpack-plugin": "
|
|
42
|
-
"prettier": "
|
|
43
|
-
"rimraf": "
|
|
44
|
-
"typescript": "
|
|
45
|
-
"typescript-eslint": "
|
|
46
|
-
"webpack": "
|
|
47
|
-
"webpack-dev-server": "
|
|
48
|
-
"webpack-node-externals": "
|
|
40
|
+
"globals": "17.0.0",
|
|
41
|
+
"html-webpack-plugin": "5.6.6",
|
|
42
|
+
"prettier": "3.8.0",
|
|
43
|
+
"rimraf": "6.1.2",
|
|
44
|
+
"typescript": "5.9.3",
|
|
45
|
+
"typescript-eslint": "8.53.1",
|
|
46
|
+
"webpack": "5.104.1",
|
|
47
|
+
"webpack-dev-server": "5.2.3",
|
|
48
|
+
"webpack-node-externals": "3.0.0"
|
|
49
49
|
}
|
|
50
50
|
}
|