@anolilab/eslint-config 14.0.3 → 14.0.4
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/CHANGELOG.md +15 -0
- package/dist/{chunk-RAPTRUN2.js → chunk-S4QC3YVL.js} +2 -2
- package/dist/chunk-S4QC3YVL.js.map +1 -0
- package/dist/config/errors.js +2 -2
- package/dist/config/plugins/babel.js +2 -2
- package/dist/config/plugins/import.js +1 -1
- package/dist/config/plugins/import.js.map +1 -1
- package/dist/config/plugins/jsonc.js.map +1 -1
- package/dist/config/plugins/react.js +1 -1
- package/dist/config/plugins/react.js.map +1 -1
- package/dist/config/plugins/storybook.js +2 -2
- package/dist/config/plugins/storybook.js.map +1 -1
- package/dist/config/plugins/typescript.js +2 -2
- package/dist/define-config.d.ts +1 -0
- package/dist/define-config.js +17 -0
- package/dist/define-config.js.map +1 -0
- package/dist/postinstall.d.ts +1 -2
- package/dist/postinstall.js.map +1 -1
- package/package.json +14 -12
- package/dist/chunk-RAPTRUN2.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
## @anolilab/eslint-config [14.0.4](https://github.com/anolilab/javascript-style-guide/compare/@anolilab/eslint-config@14.0.3...@anolilab/eslint-config@14.0.4) (2023-09-26)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* added missing define-config back ([f78fa05](https://github.com/anolilab/javascript-style-guide/commit/f78fa055634079b36c135ea192c8d792080298b1))
|
|
7
|
+
* Update eslint-config including tests ([97e624d](https://github.com/anolilab/javascript-style-guide/commit/97e624de948bacb4b229bdd1b7fd41f56ff1f6f6))
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Dependencies
|
|
12
|
+
|
|
13
|
+
* **@anolilab/package-json-utils:** upgraded to 3.0.6
|
|
14
|
+
* **@anolilab/semantic-release-preset:** upgraded to 7.0.3
|
|
15
|
+
|
|
1
16
|
## @anolilab/eslint-config [14.0.3](https://github.com/anolilab/javascript-style-guide/compare/@anolilab/eslint-config@14.0.2...@anolilab/eslint-config@14.0.3) (2023-09-25)
|
|
2
17
|
|
|
3
18
|
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
var chunkWG6GTAIA_js = require('./chunk-WG6GTAIA.js');
|
|
4
4
|
|
|
5
|
-
var e=chunkWG6GTAIA_js.b([{config:{rules:{"for-direction":"error","getter-return":["error",{allowImplicit:!0}],"no-async-promise-executor":"error","no-await-in-loop":"error","no-compare-neg-zero":"error","no-cond-assign":["error","always"],"no-console":"warn","no-constant-condition":"warn","no-control-regex":"error","no-debugger":"error","no-dupe-args":"error","no-dupe-else-if":"error","no-dupe-keys":"error","no-duplicate-case":"error","no-empty":"error","no-empty-character-class":"error","no-ex-assign":"error","no-extra-boolean-cast":"error","no-extra-parens":["error","all",{conditionalAssign:!0,enforceForArrowConditionals:!1,ignoreJSX:"all",nestedBinaryExpressions:!1,returnAssign:!1}],"no-extra-semi":"error","no-func-assign":"error","no-import-assign":"error","no-inner-declarations":"error","no-invalid-regexp":"error","no-irregular-whitespace":"error","no-loss-of-precision":"error","no-misleading-character-class":"error","no-negated-in-lhs":"off","no-obj-calls":"error","no-promise-executor-return":"error","no-prototype-builtins":"error","no-regex-spaces":"error","no-setter-return":"error","no-sparse-arrays":"error","no-template-curly-in-string":"error","no-unexpected-multiline":"error","no-unreachable":"error","no-unreachable-loop":"off","no-unsafe-finally":"error","no-unsafe-negation":"error","no-unsafe-optional-chaining":["error",{disallowArithmeticOperators:!0}],"no-useless-backreference":"error","require-atomic-updates":"off","use-isnan":"error","valid-jsdoc":"off","valid-typeof":["error",{requireStringLiterals:!0}]}},type:"all"},{config:{rules:{"getter-return":"off","no-dupe-args":"off","no-dupe-keys":"off","no-extra-parens":"off","no-func-assign":"off","no-obj-calls":"off","no-unreachable":"off","no-unsafe-negation":"off","space-infix-ops":"off","valid-typeof":"off","no-extra-semi":"off"}},type:"typescript"}]),n=e;
|
|
5
|
+
var e=chunkWG6GTAIA_js.b([{config:{rules:{"for-direction":"error","getter-return":["error",{allowImplicit:!0}],"no-async-promise-executor":"error","no-await-in-loop":"error","no-compare-neg-zero":"error","no-cond-assign":["error","always"],"no-console":"warn","no-constant-condition":"warn","no-control-regex":"error","no-debugger":"error","no-dupe-args":"error","no-dupe-else-if":"error","no-dupe-keys":"error","no-duplicate-case":"error","no-empty":"error","no-empty-character-class":"error","no-ex-assign":"error","no-extra-boolean-cast":"error","no-extra-parens":["error","all",{conditionalAssign:!0,enforceForArrowConditionals:!1,ignoreJSX:"all",nestedBinaryExpressions:!1,returnAssign:!1}],"no-extra-semi":"error","no-func-assign":"error","no-import-assign":"error","no-inner-declarations":"error","no-invalid-regexp":"error","no-irregular-whitespace":"error","no-loss-of-precision":"error","no-misleading-character-class":"error","no-negated-in-lhs":"off","no-obj-calls":"error","no-new-native-nonconstructor":"off","no-promise-executor-return":"error","no-prototype-builtins":"error","no-regex-spaces":"error","no-setter-return":"error","no-sparse-arrays":"error","no-template-curly-in-string":"error","no-unexpected-multiline":"error","no-unreachable":"error","no-unreachable-loop":"off","no-unsafe-finally":"error","no-unsafe-negation":"error","no-unsafe-optional-chaining":["error",{disallowArithmeticOperators:!0}],"no-useless-backreference":"error","require-atomic-updates":"off","use-isnan":"error","valid-jsdoc":"off","valid-typeof":["error",{requireStringLiterals:!0}]}},type:"all"},{config:{rules:{"getter-return":"off","no-dupe-args":"off","no-dupe-keys":"off","no-extra-parens":"off","no-func-assign":"off","no-obj-calls":"off","no-unreachable":"off","no-unsafe-negation":"off","space-infix-ops":"off","valid-typeof":"off","no-extra-semi":"off"}},type:"typescript"}]),n=e;
|
|
6
6
|
|
|
7
7
|
exports.a = n;
|
|
8
8
|
//# sourceMappingURL=out.js.map
|
|
9
|
-
//# sourceMappingURL=chunk-
|
|
9
|
+
//# sourceMappingURL=chunk-S4QC3YVL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/config/errors.ts"],"names":["config","createConfigs","errors_default"],"mappings":"wCAIA,IAAMA,EAAwBC,EAAc,CACxC,CACI,OAAQ,CACJ,MAAO,CAGH,gBAAiB,QAIjB,gBAAiB,CAAC,QAAS,CAAE,cAAe,EAAK,CAAC,EAIlD,4BAA6B,QAI7B,mBAAoB,QAIpB,sBAAuB,QAGvB,iBAAkB,CAAC,QAAS,QAAQ,EAGpC,aAAc,OAGd,wBAAyB,OAGzB,mBAAoB,QAGpB,cAAe,QAGf,eAAgB,QAIhB,kBAAmB,QAGnB,eAAgB,QAGhB,oBAAqB,QAGrB,WAAY,QAGZ,2BAA4B,QAG5B,eAAgB,QAIhB,wBAAyB,QAIzB,kBAAmB,CACf,QACA,MACA,CACI,kBAAmB,GACnB,4BAA6B,GAC7B,UAAW,MACX,wBAAyB,GACzB,aAAc,EAClB,CACJ,EAIA,gBAAiB,QAGjB,iBAAkB,QAGlB,mBAAoB,QAGpB,wBAAyB,QAGzB,oBAAqB,QAGrB,0BAA2B,QAI3B,uBAAwB,QAIxB,gCAAiC,QAGjC,oBAAqB,MAIrB,eAAgB,QAKhB,+BAAgC,MAIhC,6BAA8B,QAG9B,wBAAyB,QAIzB,kBAAmB,QAGnB,mBAAoB,QAIpB,mBAAoB,QAIpB,8BAA+B,QAG/B,0BAA2B,QAI3B,iBAAkB,QAIlB,sBAAuB,MAIvB,oBAAqB,QAIrB,qBAAsB,QAItB,8BAA+B,CAAC,QAAS,CAAE,4BAA6B,EAAK,CAAC,EAI9E,2BAA4B,QAK5B,yBAA0B,MAG1B,YAAa,QAIb,cAAe,MAIf,eAAgB,CAAC,QAAS,CAAE,sBAAuB,EAAK,CAAC,CAC7D,CACJ,EACA,KAAM,KACV,EAGA,CACI,OAAQ,CACJ,MAAO,CACH,gBAAiB,MAGjB,eAAgB,MAGhB,eAAgB,MAIhB,kBAAmB,MAGnB,iBAAkB,MAGlB,eAAgB,MAGhB,iBAAkB,MAGlB,qBAAsB,MAItB,kBAAmB,MAEnB,eAAgB,MAEhB,gBAAiB,KACrB,CACJ,EACA,KAAM,YACV,CACJ,CAAC,EAEMC,EAAQF","sourcesContent":["import type { Linter } from \"eslint\";\n\nimport { createConfigs } from \"../utils/create-config\";\n\nconst config: Linter.Config = createConfigs([\n {\n config: {\n rules: {\n // Enforce “for” loop update clause moving the counter in the right direction\n // https://eslint.org/docs/rules/for-direction\n \"for-direction\": \"error\",\n\n // Enforces that a return statement is present in property getters\n // https://eslint.org/docs/rules/getter-return\n \"getter-return\": [\"error\", { allowImplicit: true }],\n\n // disallow using an async function as a Promise executor\n // https://eslint.org/docs/rules/no-async-promise-executor\n \"no-async-promise-executor\": \"error\",\n\n // Disallow await inside of loops\n // https://eslint.org/docs/rules/no-await-in-loop\n \"no-await-in-loop\": \"error\",\n\n // Disallow comparisons to negative zero\n // https://eslint.org/docs/rules/no-compare-neg-zero\n \"no-compare-neg-zero\": \"error\",\n\n // disallow assignment in conditional expressions\n \"no-cond-assign\": [\"error\", \"always\"],\n\n // disallow use of console\n \"no-console\": \"warn\",\n\n // disallow use of constant expressions in conditions\n \"no-constant-condition\": \"warn\",\n\n // disallow control characters in regular expressions\n \"no-control-regex\": \"error\",\n\n // disallow use of debugger\n \"no-debugger\": \"error\",\n\n // disallow duplicate arguments in functions\n \"no-dupe-args\": \"error\",\n\n // Disallow duplicate conditions in if-else-if chains\n // https://eslint.org/docs/rules/no-dupe-else-if\n \"no-dupe-else-if\": \"error\",\n\n // disallow duplicate keys when creating object literals\n \"no-dupe-keys\": \"error\",\n\n // disallow a duplicate case label.\n \"no-duplicate-case\": \"error\",\n\n // disallow empty statements\n \"no-empty\": \"error\",\n\n // disallow the use of empty character classes in regular expressions\n \"no-empty-character-class\": \"error\",\n\n // disallow assigning to the exception in a catch block\n \"no-ex-assign\": \"error\",\n\n // disallow double-negation boolean casts in a boolean context\n // https://eslint.org/docs/rules/no-extra-boolean-cast\n \"no-extra-boolean-cast\": \"error\",\n\n // disallow unnecessary parentheses\n // https://eslint.org/docs/rules/no-extra-parens\n \"no-extra-parens\": [\n \"error\",\n \"all\",\n {\n conditionalAssign: true,\n enforceForArrowConditionals: false,\n ignoreJSX: \"all\", // delegate to eslint-plugin-react\n nestedBinaryExpressions: false,\n returnAssign: false,\n },\n ],\n\n // Disallow non-null assertion in locations that may be confusing.\n // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-extra-semi.md\n \"no-extra-semi\": \"error\",\n\n // disallow overwriting functions written as function declarations\n \"no-func-assign\": \"error\",\n\n // https://eslint.org/docs/rules/no-import-assign\n \"no-import-assign\": \"error\",\n\n // disallow function or variable declarations in nested blocks\n \"no-inner-declarations\": \"error\",\n\n // disallow invalid regular expression strings in the RegExp constructor\n \"no-invalid-regexp\": \"error\",\n\n // disallow irregular whitespace outside of strings and comments\n \"no-irregular-whitespace\": \"error\",\n\n // Disallow Number Literals That Lose Precision\n // https://eslint.org/docs/rules/no-loss-of-precision\n \"no-loss-of-precision\": \"error\",\n\n // Disallow characters which are made with multiple code points in character class syntax\n // https://eslint.org/docs/rules/no-misleading-character-class\n \"no-misleading-character-class\": \"error\",\n\n // deprecated in favor of no-unsafe-negation\n \"no-negated-in-lhs\": \"off\",\n\n // Disallow returning values from Promise executor functions\n // disallow the use of object properties of the global object (Math and JSON) as functions\n \"no-obj-calls\": \"error\",\n\n // Disallow new operators with global non-constructor functions\n // https://eslint.org/docs/latest/rules/no-new-native-nonconstructor\n // TODO: semver-major, enable\n 'no-new-native-nonconstructor': 'off',\n\n // disallow use of Object.prototypes builtins directly\n // https://eslint.org/docs/rules/no-promise-executor-return\n \"no-promise-executor-return\": \"error\",\n\n // https://eslint.org/docs/rules/no-prototype-builtins\n \"no-prototype-builtins\": \"error\",\n\n // Disallow returning values from setters\n // disallow multiple spaces in a regular expression literal\n \"no-regex-spaces\": \"error\",\n\n // https://eslint.org/docs/rules/no-setter-return\n \"no-setter-return\": \"error\",\n\n // Disallow template literal placeholder syntax in regular strings\n // disallow sparse arrays\n \"no-sparse-arrays\": \"error\",\n\n // Avoid code that looks like two expressions but is actually one\n // https://eslint.org/docs/rules/no-template-curly-in-string\n \"no-template-curly-in-string\": \"error\",\n\n // https://eslint.org/docs/rules/no-unexpected-multiline\n \"no-unexpected-multiline\": \"error\",\n\n // Disallow loops with a body that allows only one iteration\n // disallow unreachable statements after a return, throw, continue, or break statement\n \"no-unreachable\": \"error\",\n\n // disallow return/throw/break/continue inside finally blocks\n // https://eslint.org/docs/rules/no-unreachable-loop\n \"no-unreachable-loop\": \"off\", // error with typescript\n\n // disallow negating the left operand of relational operators\n // https://eslint.org/docs/rules/no-unsafe-finally\n \"no-unsafe-finally\": \"error\",\n\n // disallow use of optional chaining in contexts where the undefined value is not allowed\n // https://eslint.org/docs/rules/no-unsafe-negation\n \"no-unsafe-negation\": \"error\",\n\n // Disallow useless backreferences in regular expressions\n // https://eslint.org/docs/rules/no-unsafe-optional-chaining\n \"no-unsafe-optional-chaining\": [\"error\", { disallowArithmeticOperators: true }],\n\n // disallow negation of the left operand of an in expression\n // https://eslint.org/docs/rules/no-useless-backreference\n \"no-useless-backreference\": \"error\",\n\n // Disallow assignments that can lead to race conditions due to usage of await or yield\n // https://eslint.org/docs/rules/require-atomic-updates\n // note: not enabled because it is very buggy\n \"require-atomic-updates\": \"off\",\n\n // disallow comparisons with the value NaN\n \"use-isnan\": \"error\",\n\n // ensure JSDoc comments are valid\n // https://eslint.org/docs/rules/valid-jsdoc\n \"valid-jsdoc\": \"off\",\n\n // ensure that the results of typeof are compared against a valid string\n // https://eslint.org/docs/rules/valid-typeof\n \"valid-typeof\": [\"error\", { requireStringLiterals: true }],\n },\n },\n type: \"all\",\n },\n // The following rules are enabled in config, but are already checked (more thoroughly) by the TypeScript compiler\n // Some rules also fail in TypeScript files, for example: https://github.com/typescript-eslint/typescript-eslint/issues/662#issuecomment-507081586\n {\n config: {\n rules: {\n \"getter-return\": \"off\",\n\n // Enforce using @ts-expect-error over @ts-ignore.\n \"no-dupe-args\": \"off\",\n\n // Require explicit accessibility modifiers on class properties and methods.\n \"no-dupe-keys\": \"off\",\n\n // Enforce using a particular method signature syntax.\n // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-extra-parens.md\n \"no-extra-parens\": \"off\",\n\n // Disallow duplicate enum member values.\n \"no-func-assign\": \"off\",\n\n // Disallow non-null assertions in the left operand of a nullish coalescing operator.\n \"no-obj-calls\": \"off\",\n\n // Disallow calling a function with a value with type any.\n \"no-unreachable\": \"off\",\n\n // Disallow assigning a value with type any to variables and properties.\n \"no-unsafe-negation\": \"off\",\n\n // Enforce using the nullish coalescing operator instead of logical chaining.\n // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/space-infix-ops.md\n \"space-infix-ops\": \"off\",\n\n \"valid-typeof\": \"off\",\n\n \"no-extra-semi\": \"off\",\n },\n },\n type: \"typescript\",\n },\n]);\n\nexport default config;\n"]}
|
package/dist/config/errors.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkS4QC3YVL_js = require('../chunk-S4QC3YVL.js');
|
|
4
4
|
require('../chunk-WG6GTAIA.js');
|
|
5
5
|
require('../chunk-MFE6DF6Y.js');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
module.exports =
|
|
9
|
+
module.exports = chunkS4QC3YVL_js.a;
|
|
10
10
|
//# sourceMappingURL=out.js.map
|
|
11
11
|
//# sourceMappingURL=errors.js.map
|
|
@@ -4,12 +4,12 @@ var chunkAC2XVGN7_js = require('../../chunk-AC2XVGN7.js');
|
|
|
4
4
|
require('../../chunk-O7JDC6TD.js');
|
|
5
5
|
require('../../chunk-OCCLNRZC.js');
|
|
6
6
|
var chunkX2N7JEGF_js = require('../../chunk-X2N7JEGF.js');
|
|
7
|
-
var
|
|
7
|
+
var chunkS4QC3YVL_js = require('../../chunk-S4QC3YVL.js');
|
|
8
8
|
var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
|
|
9
9
|
require('../../chunk-MFE6DF6Y.js');
|
|
10
10
|
var packageJsonUtils = require('@anolilab/package-json-utils');
|
|
11
11
|
|
|
12
|
-
var n=chunkX2N7JEGF_js.a.overrides[0].rules,t=
|
|
12
|
+
var n=chunkX2N7JEGF_js.a.overrides[0].rules,t=chunkS4QC3YVL_js.a.overrides[0].rules,e=chunkAC2XVGN7_js.a.overrides[0].rules;global.anolilabEslintConfigBabelPrettierRules===void 0&&(packageJsonUtils.hasDependency("prettier")||packageJsonUtils.hasDevDependency("prettier"))&&(global.anolilabEslintConfigBabelPrettierRules={"@babel/object-curly-spacing":"off","@babel/semi":"off","babel/quotes":0});var f=chunkWG6GTAIA_js.a("all",{plugins:["babel"],rules:{"babel/camelcase":[...e.camelcase],"babel/new-cap":e["new-cap"],"babel/no-invalid-this":n["no-invalid-this"],"babel/no-unused-expressions":n["no-unused-expressions"],"babel/object-curly-spacing":e["object-curly-spacing"],"babel/quotes":e.quotes,"babel/semi":e.semi,"babel/valid-typeof":t["valid-typeof"],camelcase:"off","new-cap":"off","no-invalid-this":"off","no-unused-expressions":"off","object-curly-spacing":"off",quotes:"off",semi:"off","valid-typeof":"off",...global.anolilabEslintConfigBabelPrettierRules}}),m=f;
|
|
13
13
|
|
|
14
14
|
module.exports = m;
|
|
15
15
|
//# sourceMappingURL=out.js.map
|
|
@@ -4,7 +4,7 @@ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
|
|
|
4
4
|
require('../../chunk-MFE6DF6Y.js');
|
|
5
5
|
var packageJsonUtils = require('@anolilab/package-json-utils');
|
|
6
6
|
|
|
7
|
-
var t=chunkWG6GTAIA_js.b([{config:{env:{es6:!0},parserOptions:{ecmaVersion:6,sourceType:"module"},plugins:["import"],rules:{"import/consistent-type-specifier-style":["error","prefer-top-level"],"import/default":"off","import/dynamic-import-chunkname":["off",{importFunctions:[],webpackChunknameFormat:"[0-9a-zA-Z-_/.]+"}],"import/export":"error","import/exports-last":"error","import/extensions":["error","ignorePackages",packageJsonUtils.packageIsTypeModule?{cjs:"always",js:"always",jsx:"always",mjs:"always"}:{cjs:"never",js:"never",jsx:"never",mjs:"never"}],"import/first":"error","import/group-exports":"off","import/imports-first":"off","import/max-dependencies":["off",{max:10}],"import/named":"error","import/namespace":"off","import/newline-after-import":"error","import/no-absolute-path":"error","import/no-amd":"error","import/no-anonymous-default-export":["off",{allowAnonymousClass:!1,allowAnonymousFunction:!1,allowArray:!1,allowArrowFunction:!1,allowLiteral:!1,allowObject:!1}],"import/no-commonjs":packageJsonUtils.packageIsTypeModule?"error":"off","import/no-cycle":["error",{maxDepth:"\u221E"}],"import/no-default-export":"off","import/no-deprecated":"off","import/no-duplicates":"error","import/no-dynamic-require":"error","import/no-empty-named-blocks":"error","import/no-extraneous-dependencies":["error",{devDependencies:["test/**","tests/**","spec/**","**/fixture/**","**/__mocks__/**","test.{js,jsx}","test-*.{js,jsx}","**/*{.,_}{test,spec}.{js,jsx}","**/jest.config.cjs","**/jest.setup.js","**/vue.config.cjs","**/webpack.config.cjs","**/webpack.config.*.js","**/rollup.config.cjs","**/rollup.config.*.js","**/gulpfile.js","**/gulpfile.*.js","**/Gruntfile{,.js}","**/protractor.conf.js","**/protractor.conf.*.js","**/karma.conf.js","**/.eslintrc.js","**/.eslintrc.cjs","**/.eslintrc.mjs","**/vite.config.js","**/vite.config.ts","**/vitest.config.js","**/vitest.config.ts","**/__tests__/**/*.?(c|m)[jt]s?(x)","**/?(*.){test,spec}.?(c|m)[jt]s?(x)"],optionalDependencies:!1}],"import/no-internal-modules":["off",{allow:[]}],"import/no-mutable-exports":"error","import/no-named-as-default":"error","import/no-named-as-default-member":"error","import/no-named-default":"error","import/no-named-export":"off","import/no-namespace":"error","import/no-nodejs-modules":"off","import/no-relative-parent-imports":"off","import/no-restricted-paths":"off","import/no-self-import":"error","import/no-unassigned-import":"off","import/no-unresolved":["error",{caseSensitive:!0,commonjs:!0}],"import/no-unused-modules":[packageJsonUtils.packageIsTypeModule?"error":"off",{ignoreExports:[],missingExports:!0,unusedExports:!0}],"import/no-import-module-exports":[packageJsonUtils.packageIsTypeModule?"off":"error",{exceptions:[]}],"import/no-relative-packages":"error","import/no-useless-path-segments":["error",{commonjs:!packageJsonUtils.packageIsTypeModule,noUselessIndex:!0}],"import/no-webpack-loader-syntax":"error","import/order":"off","import/prefer-default-export":"error","import/unambiguous":"off"},settings:{"import/core-modules":[],"import/extensions":[".js",".cjs",".mjs",".jsx"],"import/ignore":["\\.(coffee|scss|css|less|hbs|svg|json)$"],"import/resolver":{node:{extensions:[".mjs",".js",".json"]},...packageJsonUtils.hasTypescript?{typescript:{alwaysTryTypes:!0,project:packageJsonUtils.fromRoot("tsconfig.json")}}:{}}}},type:"all"},{config:{extends:["plugin:import/typescript"],rules:{"import/default":"off","import/export":"off","import/extensions":["error","ignorePackages",{js:"never",jsx:"never",mjs:"never",ts:"never",tsx:"never"}],"import/named":"off","import/no-unresolved":"off"},settings:{"import/extensions":[".js",".mjs",".jsx",".ts",".tsx",".d.ts",".cjs",".cts",".mts"],"import/external-module-folders":["node_modules","node_modules/@types"],"import/parsers":{"@typescript-eslint/parser":[".ts",".cts",".mts",".tsx",".d.ts"]},"import/resolver":{node:{extensions:[".mjs",".cjs",".js",".json",".ts",".d.ts"]},typescript:!0}}},type:"typescript"},{config:{rules:{"import/no-duplicates":"off"}},type:"d.ts"}]),p=t;
|
|
7
|
+
var t=chunkWG6GTAIA_js.b([{config:{env:{es6:!0},parserOptions:{ecmaVersion:6,sourceType:"module"},plugins:["import"],rules:{"import/consistent-type-specifier-style":["error","prefer-top-level"],"import/default":"off","import/dynamic-import-chunkname":["off",{importFunctions:[],webpackChunknameFormat:"[0-9a-zA-Z-_/.]+"}],"import/export":"error","import/exports-last":"error","import/extensions":["error","ignorePackages",packageJsonUtils.packageIsTypeModule?{cjs:"always",js:"always",jsx:"always",mjs:"always"}:{cjs:"never",js:"never",jsx:"never",mjs:"never"}],"import/first":"error","import/group-exports":"off","import/imports-first":"off","import/max-dependencies":["off",{max:10}],"import/named":"error","import/namespace":"off","import/newline-after-import":"error","import/no-absolute-path":"error","import/no-amd":"error","import/no-anonymous-default-export":["off",{allowAnonymousClass:!1,allowAnonymousFunction:!1,allowArray:!1,allowArrowFunction:!1,allowLiteral:!1,allowObject:!1}],"import/no-commonjs":packageJsonUtils.packageIsTypeModule?"error":"off","import/no-cycle":["error",{maxDepth:"\u221E"}],"import/no-default-export":"off","import/no-deprecated":"off","import/no-duplicates":"error","import/no-dynamic-require":"error","import/no-empty-named-blocks":"error","import/no-extraneous-dependencies":["error",{devDependencies:["test/**","tests/**","spec/**","**/fixture/**","**/__mocks__/**","test.{js,jsx}","test-*.{js,jsx}","**/*{.,_}{test,spec}.{js,jsx}","**/jest.config.cjs","**/jest.setup.js","**/vue.config.cjs","**/webpack.config.cjs","**/webpack.config.*.js","**/rollup.config.cjs","**/rollup.config.*.js","**/gulpfile.js","**/gulpfile.*.js","**/Gruntfile{,.js}","**/protractor.conf.js","**/protractor.conf.*.js","**/karma.conf.js","**/.eslintrc.js","**/.eslintrc.cjs","**/.eslintrc.mjs","**/eslint.config.js","**/eslint.config.mjs","**/eslint.config.cjs","**/vite.config.js","**/vite.config.ts","**/vitest.config.js","**/vitest.config.ts","**/__tests__/**/*.?(c|m)[jt]s?(x)","**/?(*.){test,spec}.?(c|m)[jt]s?(x)"],optionalDependencies:!1}],"import/no-internal-modules":["off",{allow:[]}],"import/no-mutable-exports":"error","import/no-named-as-default":"error","import/no-named-as-default-member":"error","import/no-named-default":"error","import/no-named-export":"off","import/no-namespace":"error","import/no-nodejs-modules":"off","import/no-relative-parent-imports":"off","import/no-restricted-paths":"off","import/no-self-import":"error","import/no-unassigned-import":"off","import/no-unresolved":["error",{caseSensitive:!0,commonjs:!0}],"import/no-unused-modules":[packageJsonUtils.packageIsTypeModule?"error":"off",{ignoreExports:[],missingExports:!0,unusedExports:!0}],"import/no-import-module-exports":[packageJsonUtils.packageIsTypeModule?"off":"error",{exceptions:[]}],"import/no-relative-packages":"error","import/no-useless-path-segments":["error",{commonjs:!packageJsonUtils.packageIsTypeModule,noUselessIndex:!0}],"import/no-webpack-loader-syntax":"error","import/order":"off","import/prefer-default-export":"error","import/unambiguous":"off"},settings:{"import/core-modules":[],"import/extensions":[".js",".cjs",".mjs",".jsx"],"import/ignore":["\\.(coffee|scss|css|less|hbs|svg|json)$"],"import/resolver":{node:{extensions:[".mjs",".js",".json"]},...packageJsonUtils.hasTypescript?{typescript:{alwaysTryTypes:!0,project:packageJsonUtils.fromRoot("tsconfig.json")}}:{}}}},type:"all"},{config:{extends:["plugin:import/typescript"],rules:{"import/default":"off","import/export":"off","import/extensions":["error","ignorePackages",{js:"never",jsx:"never",mjs:"never",ts:"never",tsx:"never"}],"import/named":"off","import/no-unresolved":"off"},settings:{"import/extensions":[".js",".mjs",".jsx",".ts",".tsx",".d.ts",".cjs",".cts",".mts"],"import/external-module-folders":["node_modules","node_modules/@types"],"import/parsers":{"@typescript-eslint/parser":[".ts",".cts",".mts",".tsx",".d.ts"]},"import/resolver":{node:{extensions:[".mjs",".cjs",".js",".json",".ts",".d.ts"]},typescript:!0}}},type:"typescript"},{config:{rules:{"import/no-duplicates":"off"}},type:"d.ts"}]),p=t;
|
|
8
8
|
|
|
9
9
|
module.exports = p;
|
|
10
10
|
//# sourceMappingURL=out.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/config/plugins/import.ts"],"names":["fromRoot","hasTypescript","packageIsTypeModule","config","createConfigs","import_default"],"mappings":"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","sourcesContent":["import { fromRoot, hasTypescript, packageIsTypeModule } from \"@anolilab/package-json-utils\";\nimport type { Linter } from \"eslint\";\n\nimport { createConfigs } from \"../../utils/create-config\";\n\nconst config: Linter.Config = createConfigs([\n {\n config: {\n env: {\n es6: true,\n },\n\n parserOptions: {\n ecmaVersion: 6,\n sourceType: \"module\",\n },\n plugins: [\"import\"],\n rules: {\n // enforce a consistent style for type specifiers (inline or top-level)\n // https://github.com/un-es/eslint-plugin-i/blob/d5fc8b670dc8e6903dbb7b0894452f60c03089f5/docs/rules/consistent-type-specifier-style.md\n \"import/consistent-type-specifier-style\": [\"error\", \"prefer-top-level\"],\n\n // ensure named imports coupled with named exports\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/default.md#when-not-to-use-it\n \"import/default\": \"off\",\n\n // dynamic imports require a leading comment with a webpackChunkName\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/dynamic-import-chunkname.md\n \"import/dynamic-import-chunkname\": [\n \"off\",\n {\n importFunctions: [],\n webpackChunknameFormat: \"[0-9a-zA-Z-_/.]+\",\n },\n ],\n\n // disallow invalid exports, e.g. multiple defaults\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/export.md\n \"import/export\": \"error\",\n\n // This rule enforces that all exports are declared at the bottom of the file.\n // https://github.com/import-js/eslint-plugin-import/blob/98acd6afd04dcb6920b81330114e146dc8532ea4/docs/rules/exports-last.md\n \"import/exports-last\": \"error\",\n\n // Ensure consistent use of file extension within the import path\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/extensions.md\n \"import/extensions\": [\n \"error\",\n \"ignorePackages\",\n packageIsTypeModule\n ? {\n cjs: \"always\",\n js: \"always\",\n jsx: \"always\",\n mjs: \"always\",\n }\n : {\n cjs: \"never\",\n js: \"never\",\n jsx: \"never\",\n mjs: \"never\",\n },\n ],\n\n // disallow non-import statements appearing before import statements\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/first.md\n \"import/first\": \"error\",\n\n // Reports when named exports are not grouped together in a single export declaration\n // or when multiple assignments to CommonJS module.exports or exports object are present\n // in a single file.\n // https://github.com/import-js/eslint-plugin-import/blob/44a038c06487964394b1e15b64f3bd34e5d40cde/docs/rules/group-exports.md\n \"import/group-exports\": \"off\",\n\n // disallow non-import statements appearing before import statements\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/imports-first.md\n // deprecated: use `import/first`\n \"import/imports-first\": \"off\",\n\n // Forbid modules to have too many dependencies\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/max-dependencies.md\n \"import/max-dependencies\": [\"off\", { max: 10 }],\n\n // disallow require()\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/named.md#when-not-to-use-it\n \"import/named\": \"error\",\n\n // disallow AMD require/define\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/namespace.md\n \"import/namespace\": \"off\",\n\n // Require a newline after the last import/require in a group\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/newline-after-import.md\n \"import/newline-after-import\": \"error\",\n\n // Forbid import of modules using absolute paths\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-absolute-path.md\n \"import/no-absolute-path\": \"error\",\n\n // disallow AMD require/define\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-amd.md\n \"import/no-amd\": \"error\",\n\n // Reports if a module's default export is unnamed\n // https://github.com/import-js/eslint-plugin-import/blob/d9b712ac7fd1fddc391f7b234827925c160d956f/docs/rules/no-anonymous-default-export.md\n \"import/no-anonymous-default-export\": [\n \"off\",\n {\n allowAnonymousClass: false,\n allowAnonymousFunction: false,\n allowArray: false,\n allowArrowFunction: false,\n allowLiteral: false,\n allowObject: false,\n },\n ],\n\n // disallow require()\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-commonjs.md\n \"import/no-commonjs\": packageIsTypeModule ? \"error\" : \"off\",\n\n // Forbid cyclical dependencies between modules\n // https://medium.com/@steven-lemon182/are-typescript-barrel-files-an-anti-pattern-72a713004250\n \"import/no-cycle\": [\"error\", { maxDepth: \"∞\" }],\n\n // forbid default exports. this is a terrible rule, do not use it.\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-default-export.md\n \"import/no-default-export\": \"off\",\n\n // disallow use of jsdoc-marked-deprecated imports\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-deprecated.md\n \"import/no-deprecated\": \"off\",\n\n // disallow duplicate imports\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-duplicates.md\n \"import/no-duplicates\": \"error\",\n\n // Forbid require() calls with expressions\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-dynamic-require.md\n \"import/no-dynamic-require\": \"error\",\n\n // Reports the use of empty named import blocks.\n // https://github.com/un-es/eslint-plugin-i/blob/d5fc8b670dc8e6903dbb7b0894452f60c03089f5/docs/rules/no-empty-named-blocks.md\n \"import/no-empty-named-blocks\": \"error\",\n\n // Forbid the use of extraneous packages\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-extraneous-dependencies.md\n // paths are treated both as absolute paths, and relative to process.cwd()\n \"import/no-extraneous-dependencies\": [\n \"error\",\n {\n devDependencies: [\n \"test/**\", // tape, common npm pattern\n \"tests/**\", // also common npm pattern\n \"spec/**\", // mocha, rspec-like pattern\n \"**/fixture/**\", // jest pattern\n \"**/__mocks__/**\", // jest pattern\n \"test.{js,jsx}\", // repos with a single test file\n \"test-*.{js,jsx}\", // repos with multiple top-level test files\n \"**/*{.,_}{test,spec}.{js,jsx}\", // tests where the extension or filename suffix denotes that it is a test\n \"**/jest.config.cjs\", // jest config\n \"**/jest.setup.js\", // jest setup\n \"**/vue.config.cjs\", // vue-cli config\n \"**/webpack.config.cjs\", // webpack config\n \"**/webpack.config.*.js\", // webpack config\n \"**/rollup.config.cjs\", // rollup config\n \"**/rollup.config.*.js\", // rollup config\n \"**/gulpfile.js\", // gulp config\n \"**/gulpfile.*.js\", // gulp config\n \"**/Gruntfile{,.js}\", // grunt config\n \"**/protractor.conf.js\", // protractor config\n \"**/protractor.conf.*.js\", // protractor config\n \"**/karma.conf.js\", // karma config\n \"**/.eslintrc.js\", // eslint config\n \"**/.eslintrc.cjs\", // eslint config\n \"**/.eslintrc.mjs\", // eslint config\n \"**/vite.config.js\", // vite config\n \"**/vite.config.ts\", // vite config\n \"**/vitest.config.js\", // vitest config\n \"**/vitest.config.ts\", // vitest config\n \"**/__tests__/**/*.?(c|m)[jt]s?(x)\", // vitest config test include\n \"**/?(*.){test,spec}.?(c|m)[jt]s?(x)\", // vitest config test include\n ],\n optionalDependencies: false,\n },\n ],\n\n // prevent importing the submodules of other modules\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-internal-modules.md\n \"import/no-internal-modules\": [\n \"off\",\n {\n allow: [],\n },\n ],\n\n // Forbid mutable exports\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-mutable-exports.md\n \"import/no-mutable-exports\": \"error\",\n\n // Warn if a module could be mistakenly parsed as a script by a consumer\n // leveraging Unambiguous JavaScript Grammar\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/unambiguous.md\n // this should not be enabled until this proposal has at least been *presented* to TC39.\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-named-as-default.md\n \"import/no-named-as-default\": \"error\",\n\n // warn on accessing default export property names that are also named exports\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-named-as-default-member.md\n \"import/no-named-as-default-member\": \"error\",\n\n // Prevent importing the default as if it were named\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-named-default.md\n \"import/no-named-default\": \"error\",\n\n // Prohibit named exports. this is a terrible rule, do not use it.\n // https://github.com/import-js/eslint-plugin-import/blob/1ec80fa35fa1819e2d35a70e68fb6a149fb57c5e/docs/rules/no-named-export.md\n \"import/no-named-export\": \"off\",\n\n // disallow namespace imports\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-namespace.md\n \"import/no-namespace\": \"error\",\n\n // No Node.js builtin modules\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-nodejs-modules.md\n // TODO: enable?\n \"import/no-nodejs-modules\": \"off\",\n\n // Use this rule to prevent imports to folders in relative parent paths.\n // https://github.com/import-js/eslint-plugin-import/blob/c34f14f67f077acd5a61b3da9c0b0de298d20059/docs/rules/no-relative-parent-imports.md\n \"import/no-relative-parent-imports\": \"off\",\n\n // Restrict which files can be imported in a given folder\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-restricted-paths.md\n \"import/no-restricted-paths\": \"off\",\n\n // Forbid a module from importing itself\n // https://github.com/import-js/eslint-plugin-import/blob/44a038c06487964394b1e15b64f3bd34e5d40cde/docs/rules/no-self-import.md\n \"import/no-self-import\": \"error\",\n\n // Forbid a module from importing itself\n // importing for side effects is perfectly acceptable, if you need side effects.\n \"import/no-unassigned-import\": \"off\",\n\n // ensure imports point to files/modules that can be resolved\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-unresolved.md\n \"import/no-unresolved\": [\"error\", { caseSensitive: true, commonjs: true }],\n\n // Reports modules without any exports, or with unused exports\n // https://github.com/import-js/eslint-plugin-import/blob/f63dd261809de6883b13b6b5b960e6d7f42a7813/docs/rules/no-unused-modules.md\n \"import/no-unused-modules\": [\n packageIsTypeModule ? \"error\" : \"off\",\n {\n ignoreExports: [],\n missingExports: true,\n unusedExports: true,\n },\n ],\n\n // Reports the use of import declarations with CommonJS exports in any module except for the main module.\n // https://github.com/import-js/eslint-plugin-import/blob/1012eb951767279ce3b540a4ec4f29236104bb5b/docs/rules/no-import-module-exports.md\n \"import/no-import-module-exports\": [\n packageIsTypeModule ? \"off\" : \"error\",\n {\n exceptions: [],\n },\n ],\n\n // Use this rule to prevent importing packages through relative paths.\n // https://github.com/import-js/eslint-plugin-import/blob/1012eb951767279ce3b540a4ec4f29236104bb5b/docs/rules/no-relative-packages.md\n \"import/no-relative-packages\": \"error\",\n\n // Ensures that there are no useless path segments\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-useless-path-segments.md\n \"import/no-useless-path-segments\": [\"error\", { commonjs: !packageIsTypeModule, noUselessIndex: true }],\n\n // Forbid Webpack loader syntax in imports\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-webpack-loader-syntax.md\n \"import/no-webpack-loader-syntax\": \"error\",\n\n // ensure absolute imports are above relative imports and that unassigned imports are ignored\n // https://github.com/import-js/eslint-plugin-import/blob/f63dd261809de6883b13b6b5b960e6d7f42a7813/docs/rules/no-unused-modules.md\n // simple-import-sort does this better\n \"import/order\": \"off\",\n\n // Require modules with a single export to use a default export\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/prefer-default-export.md\n \"import/prefer-default-export\": \"error\",\n\n // Warn if a module could be mistakenly parsed as a script by a consumer\n // leveraging Unambiguous JavaScript Grammar\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/unambiguous.md\n // this should not be enabled until this proposal has at least been *presented* to TC39.\n // At the moment, it's not a thing.\n \"import/unambiguous\": \"off\",\n },\n settings: {\n \"import/core-modules\": [],\n // https://github.com/un-es/eslint-plugin-i/blob/main/docs/rules/extensions.md\n \"import/extensions\": [\".js\", \".cjs\", \".mjs\", \".jsx\"],\n // Ensure consistent use of file extension within the import path\n \"import/ignore\": [\"\\\\.(coffee|scss|css|less|hbs|svg|json)$\"],\n \"import/resolver\": {\n node: {\n extensions: [\".mjs\", \".js\", \".json\"],\n },\n ...(hasTypescript\n ? {\n typescript: {\n alwaysTryTypes: true, // always try to resolve types under `<root>@types` directory even it doesn't contain any source code, like `@types/unist`\n project: fromRoot(\"tsconfig.json\"),\n },\n }\n : {}),\n },\n },\n },\n type: \"all\",\n },\n {\n config: {\n extends: [\"plugin:import/typescript\"],\n rules: {\n // Does not work when the TS definition exports a default const.\n \"import/default\": \"off\",\n\n // Disabled because of https://github.com/import-js/eslint-plugin-import/issues/1590\n \"import/export\": \"off\",\n\n // Disabled as it doesn't work with TypeScript.\n \"import/extensions\": [\n \"error\",\n \"ignorePackages\",\n {\n js: \"never\",\n jsx: \"never\",\n mjs: \"never\",\n ts: \"never\",\n tsx: \"never\",\n },\n ],\n\n // This issue and some others: https://github.com/import-js/eslint-plugin-import/issues/1341\n \"import/named\": \"off\",\n\n // ensure imports point to files/modules that can be resolved\n \"import/no-unresolved\": \"off\",\n },\n settings: {\n // Append 'ts' extensions to 'import/extensions' setting\n \"import/extensions\": [\".js\", \".mjs\", \".jsx\", \".ts\", \".tsx\", \".d.ts\", \".cjs\", \".cts\", \".mts\"],\n\n // Resolve type definition packages\n \"import/external-module-folders\": [\"node_modules\", \"node_modules/@types\"],\n\n // Apply special parsing for TypeScript files\n \"import/parsers\": {\n \"@typescript-eslint/parser\": [\".ts\", \".cts\", \".mts\", \".tsx\", \".d.ts\"],\n },\n\n // Append 'ts' extensions to 'import/resolver' setting\n \"import/resolver\": {\n node: {\n extensions: [\".mjs\", \".cjs\", \".js\", \".json\", \".ts\", \".d.ts\"],\n },\n typescript: true,\n },\n },\n },\n type: \"typescript\",\n },\n {\n config: {\n rules: {\n \"import/no-duplicates\": \"off\",\n },\n },\n type: \"d.ts\",\n },\n]);\n\nexport default config;\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/config/plugins/import.ts"],"names":["fromRoot","hasTypescript","packageIsTypeModule","config","createConfigs","import_default"],"mappings":"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","sourcesContent":["import { fromRoot, hasTypescript, packageIsTypeModule } from \"@anolilab/package-json-utils\";\nimport type { Linter } from \"eslint\";\n\nimport { createConfigs } from \"../../utils/create-config\";\n\nconst config: Linter.Config = createConfigs([\n {\n config: {\n env: {\n es6: true,\n },\n\n parserOptions: {\n ecmaVersion: 6,\n sourceType: \"module\",\n },\n plugins: [\"import\"],\n rules: {\n // enforce a consistent style for type specifiers (inline or top-level)\n // https://github.com/un-es/eslint-plugin-i/blob/d5fc8b670dc8e6903dbb7b0894452f60c03089f5/docs/rules/consistent-type-specifier-style.md\n \"import/consistent-type-specifier-style\": [\"error\", \"prefer-top-level\"],\n\n // ensure named imports coupled with named exports\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/default.md#when-not-to-use-it\n \"import/default\": \"off\",\n\n // dynamic imports require a leading comment with a webpackChunkName\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/dynamic-import-chunkname.md\n \"import/dynamic-import-chunkname\": [\n \"off\",\n {\n importFunctions: [],\n webpackChunknameFormat: \"[0-9a-zA-Z-_/.]+\",\n },\n ],\n\n // disallow invalid exports, e.g. multiple defaults\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/export.md\n \"import/export\": \"error\",\n\n // This rule enforces that all exports are declared at the bottom of the file.\n // https://github.com/import-js/eslint-plugin-import/blob/98acd6afd04dcb6920b81330114e146dc8532ea4/docs/rules/exports-last.md\n \"import/exports-last\": \"error\",\n\n // Ensure consistent use of file extension within the import path\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/extensions.md\n \"import/extensions\": [\n \"error\",\n \"ignorePackages\",\n packageIsTypeModule\n ? {\n cjs: \"always\",\n js: \"always\",\n jsx: \"always\",\n mjs: \"always\",\n }\n : {\n cjs: \"never\",\n js: \"never\",\n jsx: \"never\",\n mjs: \"never\",\n },\n ],\n\n // disallow non-import statements appearing before import statements\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/first.md\n \"import/first\": \"error\",\n\n // Reports when named exports are not grouped together in a single export declaration\n // or when multiple assignments to CommonJS module.exports or exports object are present\n // in a single file.\n // https://github.com/import-js/eslint-plugin-import/blob/44a038c06487964394b1e15b64f3bd34e5d40cde/docs/rules/group-exports.md\n \"import/group-exports\": \"off\",\n\n // disallow non-import statements appearing before import statements\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/imports-first.md\n // deprecated: use `import/first`\n \"import/imports-first\": \"off\",\n\n // Forbid modules to have too many dependencies\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/max-dependencies.md\n \"import/max-dependencies\": [\"off\", { max: 10 }],\n\n // disallow require()\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/named.md#when-not-to-use-it\n \"import/named\": \"error\",\n\n // disallow AMD require/define\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/namespace.md\n \"import/namespace\": \"off\",\n\n // Require a newline after the last import/require in a group\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/newline-after-import.md\n \"import/newline-after-import\": \"error\",\n\n // Forbid import of modules using absolute paths\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-absolute-path.md\n \"import/no-absolute-path\": \"error\",\n\n // disallow AMD require/define\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-amd.md\n \"import/no-amd\": \"error\",\n\n // Reports if a module's default export is unnamed\n // https://github.com/import-js/eslint-plugin-import/blob/d9b712ac7fd1fddc391f7b234827925c160d956f/docs/rules/no-anonymous-default-export.md\n \"import/no-anonymous-default-export\": [\n \"off\",\n {\n allowAnonymousClass: false,\n allowAnonymousFunction: false,\n allowArray: false,\n allowArrowFunction: false,\n allowLiteral: false,\n allowObject: false,\n },\n ],\n\n // disallow require()\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-commonjs.md\n \"import/no-commonjs\": packageIsTypeModule ? \"error\" : \"off\",\n\n // Forbid cyclical dependencies between modules\n // https://medium.com/@steven-lemon182/are-typescript-barrel-files-an-anti-pattern-72a713004250\n \"import/no-cycle\": [\"error\", { maxDepth: \"∞\" }],\n\n // forbid default exports. this is a terrible rule, do not use it.\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-default-export.md\n \"import/no-default-export\": \"off\",\n\n // disallow use of jsdoc-marked-deprecated imports\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-deprecated.md\n \"import/no-deprecated\": \"off\",\n\n // disallow duplicate imports\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-duplicates.md\n \"import/no-duplicates\": \"error\",\n\n // Forbid require() calls with expressions\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-dynamic-require.md\n \"import/no-dynamic-require\": \"error\",\n\n // Reports the use of empty named import blocks.\n // https://github.com/un-es/eslint-plugin-i/blob/d5fc8b670dc8e6903dbb7b0894452f60c03089f5/docs/rules/no-empty-named-blocks.md\n \"import/no-empty-named-blocks\": \"error\",\n\n // Forbid the use of extraneous packages\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-extraneous-dependencies.md\n // paths are treated both as absolute paths, and relative to process.cwd()\n \"import/no-extraneous-dependencies\": [\n \"error\",\n {\n devDependencies: [\n \"test/**\", // tape, common npm pattern\n \"tests/**\", // also common npm pattern\n \"spec/**\", // mocha, rspec-like pattern\n \"**/fixture/**\", // jest pattern\n \"**/__mocks__/**\", // jest pattern\n \"test.{js,jsx}\", // repos with a single test file\n \"test-*.{js,jsx}\", // repos with multiple top-level test files\n \"**/*{.,_}{test,spec}.{js,jsx}\", // tests where the extension or filename suffix denotes that it is a test\n \"**/jest.config.cjs\", // jest config\n \"**/jest.setup.js\", // jest setup\n \"**/vue.config.cjs\", // vue-cli config\n \"**/webpack.config.cjs\", // webpack config\n \"**/webpack.config.*.js\", // webpack config\n \"**/rollup.config.cjs\", // rollup config\n \"**/rollup.config.*.js\", // rollup config\n \"**/gulpfile.js\", // gulp config\n \"**/gulpfile.*.js\", // gulp config\n \"**/Gruntfile{,.js}\", // grunt config\n \"**/protractor.conf.js\", // protractor config\n \"**/protractor.conf.*.js\", // protractor config\n \"**/karma.conf.js\", // karma config\n \"**/.eslintrc.js\", // eslint config\n \"**/.eslintrc.cjs\", // eslint config\n \"**/.eslintrc.mjs\", // eslint config\n \"**/eslint.config.js\", // eslint flat config\n \"**/eslint.config.mjs\", // eslint flat config\n \"**/eslint.config.cjs\", // eslint flat config\n \"**/vite.config.js\", // vite config\n \"**/vite.config.ts\", // vite config\n \"**/vitest.config.js\", // vitest config\n \"**/vitest.config.ts\", // vitest config\n \"**/__tests__/**/*.?(c|m)[jt]s?(x)\", // vitest config test include\n \"**/?(*.){test,spec}.?(c|m)[jt]s?(x)\", // vitest config test include\n ],\n optionalDependencies: false,\n },\n ],\n\n // prevent importing the submodules of other modules\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-internal-modules.md\n \"import/no-internal-modules\": [\n \"off\",\n {\n allow: [],\n },\n ],\n\n // Forbid mutable exports\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-mutable-exports.md\n \"import/no-mutable-exports\": \"error\",\n\n // Warn if a module could be mistakenly parsed as a script by a consumer\n // leveraging Unambiguous JavaScript Grammar\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/unambiguous.md\n // this should not be enabled until this proposal has at least been *presented* to TC39.\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-named-as-default.md\n \"import/no-named-as-default\": \"error\",\n\n // warn on accessing default export property names that are also named exports\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-named-as-default-member.md\n \"import/no-named-as-default-member\": \"error\",\n\n // Prevent importing the default as if it were named\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-named-default.md\n \"import/no-named-default\": \"error\",\n\n // Prohibit named exports. this is a terrible rule, do not use it.\n // https://github.com/import-js/eslint-plugin-import/blob/1ec80fa35fa1819e2d35a70e68fb6a149fb57c5e/docs/rules/no-named-export.md\n \"import/no-named-export\": \"off\",\n\n // disallow namespace imports\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-namespace.md\n \"import/no-namespace\": \"error\",\n\n // No Node.js builtin modules\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-nodejs-modules.md\n // TODO: enable?\n \"import/no-nodejs-modules\": \"off\",\n\n // Use this rule to prevent imports to folders in relative parent paths.\n // https://github.com/import-js/eslint-plugin-import/blob/c34f14f67f077acd5a61b3da9c0b0de298d20059/docs/rules/no-relative-parent-imports.md\n \"import/no-relative-parent-imports\": \"off\",\n\n // Restrict which files can be imported in a given folder\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-restricted-paths.md\n \"import/no-restricted-paths\": \"off\",\n\n // Forbid a module from importing itself\n // https://github.com/import-js/eslint-plugin-import/blob/44a038c06487964394b1e15b64f3bd34e5d40cde/docs/rules/no-self-import.md\n \"import/no-self-import\": \"error\",\n\n // Forbid a module from importing itself\n // importing for side effects is perfectly acceptable, if you need side effects.\n \"import/no-unassigned-import\": \"off\",\n\n // ensure imports point to files/modules that can be resolved\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-unresolved.md\n \"import/no-unresolved\": [\"error\", { caseSensitive: true, commonjs: true }],\n\n // Reports modules without any exports, or with unused exports\n // https://github.com/import-js/eslint-plugin-import/blob/f63dd261809de6883b13b6b5b960e6d7f42a7813/docs/rules/no-unused-modules.md\n \"import/no-unused-modules\": [\n packageIsTypeModule ? \"error\" : \"off\",\n {\n ignoreExports: [],\n missingExports: true,\n unusedExports: true,\n },\n ],\n\n // Reports the use of import declarations with CommonJS exports in any module except for the main module.\n // https://github.com/import-js/eslint-plugin-import/blob/1012eb951767279ce3b540a4ec4f29236104bb5b/docs/rules/no-import-module-exports.md\n \"import/no-import-module-exports\": [\n packageIsTypeModule ? \"off\" : \"error\",\n {\n exceptions: [],\n },\n ],\n\n // Use this rule to prevent importing packages through relative paths.\n // https://github.com/import-js/eslint-plugin-import/blob/1012eb951767279ce3b540a4ec4f29236104bb5b/docs/rules/no-relative-packages.md\n \"import/no-relative-packages\": \"error\",\n\n // Ensures that there are no useless path segments\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-useless-path-segments.md\n \"import/no-useless-path-segments\": [\"error\", { commonjs: !packageIsTypeModule, noUselessIndex: true }],\n\n // Forbid Webpack loader syntax in imports\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-webpack-loader-syntax.md\n \"import/no-webpack-loader-syntax\": \"error\",\n\n // ensure absolute imports are above relative imports and that unassigned imports are ignored\n // https://github.com/import-js/eslint-plugin-import/blob/f63dd261809de6883b13b6b5b960e6d7f42a7813/docs/rules/no-unused-modules.md\n // simple-import-sort does this better\n \"import/order\": \"off\",\n\n // Require modules with a single export to use a default export\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/prefer-default-export.md\n \"import/prefer-default-export\": \"error\",\n\n // Warn if a module could be mistakenly parsed as a script by a consumer\n // leveraging Unambiguous JavaScript Grammar\n // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/unambiguous.md\n // this should not be enabled until this proposal has at least been *presented* to TC39.\n // At the moment, it's not a thing.\n \"import/unambiguous\": \"off\",\n },\n settings: {\n \"import/core-modules\": [],\n // https://github.com/un-es/eslint-plugin-i/blob/main/docs/rules/extensions.md\n \"import/extensions\": [\".js\", \".cjs\", \".mjs\", \".jsx\"],\n // Ensure consistent use of file extension within the import path\n \"import/ignore\": [\"\\\\.(coffee|scss|css|less|hbs|svg|json)$\"],\n \"import/resolver\": {\n node: {\n extensions: [\".mjs\", \".js\", \".json\"],\n },\n ...(hasTypescript\n ? {\n typescript: {\n alwaysTryTypes: true, // always try to resolve types under `<root>@types` directory even it doesn't contain any source code, like `@types/unist`\n project: fromRoot(\"tsconfig.json\"),\n },\n }\n : {}),\n },\n },\n },\n type: \"all\",\n },\n {\n config: {\n extends: [\"plugin:import/typescript\"],\n rules: {\n // Does not work when the TS definition exports a default const.\n \"import/default\": \"off\",\n\n // Disabled because of https://github.com/import-js/eslint-plugin-import/issues/1590\n \"import/export\": \"off\",\n\n // Disabled as it doesn't work with TypeScript.\n \"import/extensions\": [\n \"error\",\n \"ignorePackages\",\n {\n js: \"never\",\n jsx: \"never\",\n mjs: \"never\",\n ts: \"never\",\n tsx: \"never\",\n },\n ],\n\n // This issue and some others: https://github.com/import-js/eslint-plugin-import/issues/1341\n \"import/named\": \"off\",\n\n // ensure imports point to files/modules that can be resolved\n \"import/no-unresolved\": \"off\",\n },\n settings: {\n // Append 'ts' extensions to 'import/extensions' setting\n \"import/extensions\": [\".js\", \".mjs\", \".jsx\", \".ts\", \".tsx\", \".d.ts\", \".cjs\", \".cts\", \".mts\"],\n\n // Resolve type definition packages\n \"import/external-module-folders\": [\"node_modules\", \"node_modules/@types\"],\n\n // Apply special parsing for TypeScript files\n \"import/parsers\": {\n \"@typescript-eslint/parser\": [\".ts\", \".cts\", \".mts\", \".tsx\", \".d.ts\"],\n },\n\n // Append 'ts' extensions to 'import/resolver' setting\n \"import/resolver\": {\n node: {\n extensions: [\".mjs\", \".cjs\", \".js\", \".json\", \".ts\", \".d.ts\"],\n },\n typescript: true,\n },\n },\n },\n type: \"typescript\",\n },\n {\n config: {\n rules: {\n \"import/no-duplicates\": \"off\",\n },\n },\n type: \"d.ts\",\n },\n]);\n\nexport default config;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/config/plugins/jsonc.ts"],"names":["env","hasDependency","hasDevDependency","extendedPlugins","showLog","eslint_config_default","consoleLog","config","jsonc_default"],"mappings":"wHAAA,OAAS,OAAAA,MAAW,UAEpB,OAAS,iBAAAC,EAAe,oBAAAC,MAAwB,+BAMhD,IAAMC,EAA4B,CAAC,GAE/BF,EAAc,UAAU,GAAKC,EAAiB,UAAU,IACxDC,EAAgB,KAAK,uBAAuB,EAGhD,GAAI,CAAC,OAAO,8CAAgDF,EAAc,mBAAmB,GAAKC,EAAiB,mBAAmB,GAAI,CACtI,OAAO,4CAA8C,GAErD,IAAIE,EAAmBJ,EAAI,iDAAsD,OAE7EI,GAAWC,EAAqB,yCAA8C,SAC9ED,EAAUC,EAAqB,wCAG/BD,GACAE,EAAW;AAAA;AAAA;AAAA;AAAA,CAC8D,CAEjF,CAEA,IAAMC,EAAwB,CAC1B,UAAW,CACP,CACI,QAASJ,EACT,MAAO,CAAC,SAAU,UAAW,SAAS,EACtC,OAAQ,qBACZ,EACA,CACI,QAAS,CAAC,qCAAqC,EAC/C,MAAO,CAAC,SAAS,CACrB,EACA,CACI,QAAS,CAAC,qCAAqC,EAC/C,MAAO,CAAC,SAAS,CACrB,EACA,CACI,QAAS,CAAC,oCAAoC,EAC9C,MAAO,CAAC,QAAQ,CACpB,EACA,CACI,QAAS,CAAC,oCAAoC,EAC9C,MAAO,CAAC,cAAc,EACtB,MAAO,CAEH,kBAAmB,OAAO,4CACpB,MACA,
|
|
1
|
+
{"version":3,"sources":["../../../src/config/plugins/jsonc.ts"],"names":["env","hasDependency","hasDevDependency","extendedPlugins","showLog","eslint_config_default","consoleLog","config","jsonc_default"],"mappings":"wHAAA,OAAS,OAAAA,MAAW,UAEpB,OAAS,iBAAAC,EAAe,oBAAAC,MAAwB,+BAMhD,IAAMC,EAA4B,CAAC,GAE/BF,EAAc,UAAU,GAAKC,EAAiB,UAAU,IACxDC,EAAgB,KAAK,uBAAuB,EAGhD,GAAI,CAAC,OAAO,8CAAgDF,EAAc,mBAAmB,GAAKC,EAAiB,mBAAmB,GAAI,CACtI,OAAO,4CAA8C,GAErD,IAAIE,EAAmBJ,EAAI,iDAAsD,OAE7EI,GAAWC,EAAqB,yCAA8C,SAC9ED,EAAUC,EAAqB,wCAG/BD,GACAE,EAAW;AAAA;AAAA;AAAA;AAAA,CAC8D,CAEjF,CAEA,IAAMC,EAAwB,CAC1B,UAAW,CACP,CACI,QAASJ,EACT,MAAO,CAAC,SAAU,UAAW,SAAS,EACtC,OAAQ,qBACZ,EACA,CACI,QAAS,CAAC,qCAAqC,EAC/C,MAAO,CAAC,SAAS,CACrB,EACA,CACI,QAAS,CAAC,qCAAqC,EAC/C,MAAO,CAAC,SAAS,CACrB,EACA,CACI,QAAS,CAAC,oCAAoC,EAC9C,MAAO,CAAC,QAAQ,CACpB,EACA,CACI,QAAS,CAAC,oCAAoC,EAC9C,MAAO,CAAC,cAAc,EACtB,MAAO,CAEH,kBAAmB,OAAO,4CACpB,MACA,CACE,QACA,CACI,MAAO,CACH,YACA,OACA,cACA,OACA,UACA,UACA,iBACA,cACA,SACA,UACA,UACA,WACA,aACA,OACA,WACA,aACA,cACA,UACA,OACA,SACA,QACA,WACA,QACA,gBACA,MACA,OACA,QACA,UACA,mBACA,cACA,UACA,mBACA,uBACA,eACA,uBACA,kBACA,OACA,YACA,cACA,QACA,mBACA,cACA,cACJ,EACA,YAAa,IACjB,EACA,CACI,MAAO,CAAE,KAAM,KAAM,EACrB,YAAa,iDACjB,EACA,CACI,MAAO,CAAC,QAAS,UAAW,QAAQ,EACpC,YAAa,aACjB,CACJ,CACR,CACJ,CACJ,CACJ,EAEOK,EAAQD","sourcesContent":["import { env } from \"node:process\";\n\nimport { hasDependency, hasDevDependency } from \"@anolilab/package-json-utils\";\nimport type { Linter } from \"eslint\";\n\nimport anolilabEslintConfig from \"../../utils/eslint-config\";\nimport { consoleLog } from \"../../utils/loggers\";\n\nconst extendedPlugins: string[] = [];\n\nif (hasDependency(\"prettier\") || hasDevDependency(\"prettier\")) {\n extendedPlugins.push(\"plugin:jsonc/prettier\");\n}\n\nif (!global.hasAnolilabEsLintConfigJsoncPackageJsonSort && (hasDependency(\"sort-package-json\") || hasDevDependency(\"sort-package-json\"))) {\n global.hasAnolilabEsLintConfigJsoncPackageJsonSort = true;\n\n let showLog: boolean = env[\"DISABLE_INFO_ON_DISABLING_JSONC_SORT_KEYS_RULE\"] !== \"true\";\n\n if (showLog && anolilabEslintConfig[\"info_on_disabling_jsonc_sort_keys_rule\"] !== undefined) {\n showLog = anolilabEslintConfig[\"info_on_disabling_jsonc_sort_keys_rule\"];\n }\n\n if (showLog) {\n consoleLog(`\\n@anolilab/eslint-config found sort-package-json. \\n\n Following rules are disabled: jsonc/sort-keys for all package.json files. \\n`);\n }\n}\n\nconst config: Linter.Config = {\n overrides: [\n {\n extends: extendedPlugins,\n files: [\"*.json\", \"*.json5\", \"*.jsonc\"],\n parser: \"jsonc-eslint-parser\",\n },\n {\n extends: [\"plugin:jsonc/recommended-with-json5\"],\n files: [\"*.json5\"],\n },\n {\n extends: [\"plugin:jsonc/recommended-with-jsonc\"],\n files: [\"*.jsonc\"],\n },\n {\n extends: [\"plugin:jsonc/recommended-with-json\"],\n files: [\"*.json\"],\n },\n {\n extends: [\"plugin:jsonc/recommended-with-json\"],\n files: [\"package.json\"],\n rules: {\n // When the package \"sort-package-json\" is installed, we disable the rule \"jsonc/sort-keys\" because, the package \"sort-package-json\" is responsible for sorting the keys.\n \"jsonc/sort-keys\": global.hasAnolilabEsLintConfigJsoncPackageJsonSort\n ? \"off\"\n : [\n \"error\",\n {\n order: [\n \"publisher\",\n \"name\",\n \"displayName\",\n \"type\",\n \"version\",\n \"private\",\n \"packageManager\",\n \"description\",\n \"author\",\n \"license\",\n \"funding\",\n \"homepage\",\n \"repository\",\n \"bugs\",\n \"keywords\",\n \"categories\",\n \"sideEffects\",\n \"exports\",\n \"main\",\n \"module\",\n \"unpkg\",\n \"jsdelivr\",\n \"types\",\n \"typesVersions\",\n \"bin\",\n \"icon\",\n \"files\",\n \"engines\",\n \"activationEvents\",\n \"contributes\",\n \"scripts\",\n \"peerDependencies\",\n \"peerDependenciesMeta\",\n \"dependencies\",\n \"optionalDependencies\",\n \"devDependencies\",\n \"pnpm\",\n \"overrides\",\n \"resolutions\",\n \"husky\",\n \"simple-git-hooks\",\n \"lint-staged\",\n \"eslintConfig\",\n ],\n pathPattern: \"^$\",\n },\n {\n order: { type: \"asc\" },\n pathPattern: \"^(?:dev|peer|optional|bundled)?[Dd]ependencies$\",\n },\n {\n order: [\"types\", \"require\", \"import\"],\n pathPattern: \"^exports.*$\",\n },\n ],\n },\n },\n ],\n};\n\nexport default config;\n"]}
|
|
@@ -22,7 +22,7 @@ var g=chunkAC2XVGN7_js.a.overrides[0].rules,s=g["no-underscore-dangle"];!global.
|
|
|
22
22
|
If you dont use the new react jsx-runtime in you project, please enable it manually.
|
|
23
23
|
`),global.hasAnolilabEsLintConfigReactRuntimePath=e;}return global.hasAnolilabEsLintConfigReactRuntimePath})();if(!global.anolilabEslintConfigReactVersion){let r=packageJsonUtils.getPackageSubProperty("dependencies")("react");if(r===void 0&&(r=packageJsonUtils.getPackageSubProperty("devDependencies")("react")),r!==void 0){let e=semver.parse(r);e!==null&&(global.anolilabEslintConfigReactVersion=`${e.major}.${e.minor}`);}}global.anolilabEslintConfigReactVersion!==void 0&&chunkOCCLNRZC_js.a.info_on_found_react_version!==!1&&chunkSEYYGHPU_js.b(`
|
|
24
24
|
@anolilab/eslint-config found the version ${global.anolilabEslintConfigReactVersion} of react in your dependencies, this version ${global.anolilabEslintConfigReactVersion} will be used to setup the "eslint-plugin-react"
|
|
25
|
-
`);var x={overrides:[{env:{browser:!0},files:["*.jsx","*.tsx"],parserOptions:{ecmaFeatures:{jsx:!0}},plugins:["react"],rules:{"class-methods-use-this":["error",{exceptMethods:["render","getInitialState","getDefaultProps","getChildContext","componentWillMount","UNSAFE_componentWillMount","componentDidMount","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","shouldComponentUpdate","componentWillUpdate","UNSAFE_componentWillUpdate","componentDidUpdate","componentWillUnmount","componentDidCatch","getSnapshotBeforeUpdate"]}],"jsx-quotes":["error","prefer-double"],"no-underscore-dangle":[s[0],{...s[1],allow:[...s[1].allow,"__REDUX_DEVTOOLS_EXTENSION_COMPOSE__"]}],"react/boolean-prop-naming":["off",{message:"",propTypeNames:["bool","mutuallyExclusiveTrueProps"],rule:"^(is|has)[A-Z]([A-Za-z0-9]?)+"}],"react/button-has-type":["error",{button:!0,reset:!1,submit:!0}],"react/default-props-match-prop-types":["error",{allowRequiredDefaults:!1}],"react/destructuring-assignment":["error","always"],"react/display-name":["off",{ignoreTranspilerName:!1}],"react/forbid-component-props":["off",{forbid:[]}],"react/forbid-dom-props":["off",{forbid:[]}],"react/forbid-elements":["off",{forbid:[]}],"react/forbid-foreign-prop-types":["warn",{allowInPropTypes:!0}],"react/forbid-prop-types":["error",{checkChildContextTypes:!0,checkContextTypes:!0,forbid:["any","array","object"]}],"react/function-component-definition":["error",{namedComponents:"arrow-function",unnamedComponents:"arrow-function"}],"react/jsx-boolean-value":["error","never",{always:[]}],"react/jsx-child-element-spacing":"off","react/jsx-closing-bracket-location":["error","line-aligned"],"react/jsx-curly-brace-presence":["error",{children:"never",props:"never"}],"react/jsx-curly-newline":["error",{multiline:"consistent",singleline:"consistent"}],"react/jsx-curly-spacing":["error","never",{allowMultiline:!0}],"react/jsx-equals-spacing":["error","never"],"react/jsx-first-prop-new-line":["error","multiline-multiprop"],"react/jsx-fragments":["error","syntax"],"react/jsx-handler-names":["off",{eventHandlerPrefix:"handle",eventHandlerPropPrefix:"on"}],"react/jsx-indent":["error",chunkO7JDC6TD_js.a,{checkAttributes:!0,indentLogicalExpressions:!0}],"react/jsx-indent-props":["error",chunkO7JDC6TD_js.a],"react/jsx-key":"off","react/jsx-max-depth":"off","react/jsx-max-props-per-line":["error",{maximum:1,when:"multiline"}],"react/jsx-newline":"off","react/jsx-no-bind":["error",{allowArrowFunctions:!0,allowBind:!1,allowFunctions:!1,ignoreDOMComponents:!0,ignoreRefs:!0}],"react/jsx-no-comment-textnodes":"error","react/jsx-no-constructed-context-values":"error","react/jsx-no-duplicate-props":["error",{ignoreCase:!0}],"react/jsx-no-literals":["off",{noStrings:!0}],"react/jsx-no-script-url":["error",[{name:"Link",props:["to"]}]],"react/jsx-no-target-blank":["error",{enforceDynamicLinks:"always"}],"react/jsx-no-undef":"error","react/jsx-no-useless-fragment":"error","react/jsx-one-expression-per-line":["error",{allow:"single-child"}],"react/jsx-pascal-case":["error",{allowAllCaps:!0,ignore:[]}],"react/jsx-props-no-multi-spaces":"error","react/jsx-props-no-spreading":["error",{custom:"enforce",exceptions:[],explicitSpread:"ignore",html:"enforce"}],"react/jsx-sort-props":"off","react/jsx-space-before-closing":["off","always"],"react/jsx-tag-spacing":["error",{afterOpening:"never",beforeClosing:"never",beforeSelfClosing:"always",closingSlash:"never"}],"react/jsx-uses-react":[c?"off":"error"],"react/jsx-uses-vars":"error","react/no-access-state-in-setstate":"error","react/no-adjacent-inline-elements":"error","react/no-array-index-key":"error","react/no-children-prop":"error","react/no-danger":"warn","react/no-danger-with-children":"error","react/no-deprecated":["error"],"react/no-did-mount-set-state":"off","react/no-did-update-set-state":"error","react/no-direct-mutation-state":"error","react/no-find-dom-node":"error","react/no-is-mounted":"error","react/no-multi-comp":"off","react/no-redundant-should-component-update":"error","react/no-render-return-value":"error","react/no-set-state":"off","react/no-string-refs":"error","react/no-this-in-sfc":"error","react/no-unescaped-entities":"error","react/no-unknown-property":"error","react/no-unsafe":"off","react/no-unused-prop-types":["error",{customValidators:[],skipShapeProps:!0}],"react/no-unused-state":"error","react/no-will-update-set-state":"error","react/prefer-es6-class":["error","always"],"react/prefer-read-only-props":"off","react/prefer-stateless-function":["error",{ignorePureComponents:!0}],"react/prop-types":["error",{customValidators:[],ignore:[],skipUndeclared:!1}],"react/react-in-jsx-scope":c?"off":"error","react/require-default-props":["error",{forbidDefaultForRequired:!0,functions:packageJsonUtils.hasDependency("typescript")||packageJsonUtils.hasDevDependency("typescript")?"defaultArguments":"defaultProps"}],"react/require-optimization":["off",{allowDecorators:[]}],"react/require-render-return":"error","react/self-closing-comp":"error","react/sort-comp":["error",{groups:{lifecycle:["displayName","propTypes","contextTypes","childContextTypes","mixins","statics","defaultProps","constructor","getDefaultProps","getInitialState","state","getChildContext","getDerivedStateFromProps","componentWillMount","UNSAFE_componentWillMount","componentDidMount","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","shouldComponentUpdate","componentWillUpdate","UNSAFE_componentWillUpdate","getSnapshotBeforeUpdate","componentDidUpdate","componentDidCatch","componentWillUnmount"],rendering:["/^render.+$/","render"]},order:["static-variables","static-methods","instance-variables","lifecycle","/^handle.+$/","/^on.+$/","getters","setters","/^(get|set)(?!(InitialState$|DefaultProps$|ChildContext$)).+$/","instance-methods","everything-else","rendering"]}],"react/sort-default-props":["error",{ignoreCase:!0}],"react/sort-prop-types":["off",{callbacksLast:!1,ignoreCase:!0,requiredFirst:!1,sortShapeProp:!0}],"react/state-in-constructor":["error","always"],"react/static-property-placement":["error","property assignment"],"react/style-prop-object":"error","react/void-dom-elements-no-children":"error",...global.anolilabEslintConfigReactPrettierRules},settings:{"import/resolver":{node:{extensions:[".js",".jsx",".json",".cjs",".mjs"]}},propWrapperFunctions:["forbidExtraProps","exact","Object.freeze"],react:{version:global.anolilabEslintConfigReactVersion??"detect"}}},{files:["*.jsx"],rules:{"react/jsx-closing-tag-location":"error","react/jsx-filename-extension":"error","react/jsx-wrap-multilines":["error",{arrow:"parens-new-line",assignment:"parens-new-line",condition:"parens-new-line",declaration:"parens-new-line",logical:"parens-new-line",prop:"parens-new-line",return:"parens-new-line"}],"react/no-typos":"error"}},{files:["*.tsx"],rules:{"react/default-props-match-prop-types":"off","react/jsx-filename-extension":"off","react/prop-types":"off","react/require-default-props":"off"}}]},E=x;
|
|
25
|
+
`);var x={overrides:[{env:{browser:!0},files:["*.jsx","*.tsx"],parserOptions:{ecmaFeatures:{jsx:!0}},plugins:["react"],rules:{"class-methods-use-this":["error",{exceptMethods:["render","getInitialState","getDefaultProps","getChildContext","componentWillMount","UNSAFE_componentWillMount","componentDidMount","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","shouldComponentUpdate","componentWillUpdate","UNSAFE_componentWillUpdate","componentDidUpdate","componentWillUnmount","componentDidCatch","getSnapshotBeforeUpdate"]}],"jsx-quotes":["error","prefer-double"],"no-underscore-dangle":[s[0],{...s[1],allow:[...s[1].allow,"__REDUX_DEVTOOLS_EXTENSION_COMPOSE__"]}],"react/boolean-prop-naming":["off",{message:"",propTypeNames:["bool","mutuallyExclusiveTrueProps"],rule:"^(is|has)[A-Z]([A-Za-z0-9]?)+"}],"react/button-has-type":["error",{button:!0,reset:!1,submit:!0}],"react/default-props-match-prop-types":["error",{allowRequiredDefaults:!1}],"react/destructuring-assignment":["error","always"],"react/display-name":["off",{ignoreTranspilerName:!1}],"react/forbid-component-props":["off",{forbid:[]}],"react/forbid-dom-props":["off",{forbid:[]}],"react/forbid-elements":["off",{forbid:[]}],"react/forbid-foreign-prop-types":["warn",{allowInPropTypes:!0}],"react/forbid-prop-types":["error",{checkChildContextTypes:!0,checkContextTypes:!0,forbid:["any","array","object"]}],"react/function-component-definition":["error",{namedComponents:"arrow-function",unnamedComponents:"arrow-function"}],"react/jsx-boolean-value":["error","never",{always:[]}],"react/jsx-child-element-spacing":"off","react/jsx-closing-bracket-location":["error","line-aligned"],"react/jsx-curly-brace-presence":["error",{children:"never",props:"never"}],"react/jsx-curly-newline":["error",{multiline:"consistent",singleline:"consistent"}],"react/jsx-curly-spacing":["error","never",{allowMultiline:!0}],"react/jsx-equals-spacing":["error","never"],"react/jsx-first-prop-new-line":["error","multiline-multiprop"],"react/jsx-fragments":["error","syntax"],"react/jsx-handler-names":["off",{eventHandlerPrefix:"handle",eventHandlerPropPrefix:"on"}],"react/jsx-indent":["error",chunkO7JDC6TD_js.a,{checkAttributes:!0,indentLogicalExpressions:!0}],"react/jsx-indent-props":["error",chunkO7JDC6TD_js.a],"react/jsx-key":"off","react/jsx-max-depth":"off","react/jsx-max-props-per-line":["error",{maximum:1,when:"multiline"}],"react/jsx-newline":"off","react/jsx-no-bind":["error",{allowArrowFunctions:!0,allowBind:!1,allowFunctions:!1,ignoreDOMComponents:!0,ignoreRefs:!0}],"react/jsx-no-comment-textnodes":"error","react/jsx-no-constructed-context-values":"error","react/jsx-no-duplicate-props":["error",{ignoreCase:!0}],"react/jsx-no-literals":["off",{noStrings:!0}],"react/jsx-no-script-url":["error",[{name:"Link",props:["to"]}]],"react/jsx-no-target-blank":["error",{enforceDynamicLinks:"always"}],"react/jsx-no-undef":"error","react/jsx-no-useless-fragment":"error","react/jsx-one-expression-per-line":["error",{allow:"single-child"}],"react/jsx-pascal-case":["error",{allowAllCaps:!0,ignore:[]}],"react/jsx-props-no-multi-spaces":"error","react/jsx-props-no-spreading":["error",{custom:"enforce",exceptions:[],explicitSpread:"ignore",html:"enforce"}],"react/jsx-sort-props":"off","react/jsx-space-before-closing":["off","always"],"react/jsx-tag-spacing":["error",{afterOpening:"never",beforeClosing:"never",beforeSelfClosing:"always",closingSlash:"never"}],"react/jsx-uses-react":[c?"off":"error"],"react/jsx-uses-vars":"error","react/no-access-state-in-setstate":"error","react/no-adjacent-inline-elements":"error","react/no-array-index-key":"error","react/no-children-prop":"error","react/no-danger":"warn","react/no-danger-with-children":"error","react/no-deprecated":["error"],"react/no-did-mount-set-state":"off","react/no-did-update-set-state":"error","react/no-direct-mutation-state":"error","react/no-find-dom-node":"error","react/no-is-mounted":"error","react/no-multi-comp":"off","react/no-redundant-should-component-update":"error","react/no-render-return-value":"error","react/no-set-state":"off","react/no-string-refs":"error","react/no-this-in-sfc":"error","react/no-unescaped-entities":"error","react/no-unknown-property":"error","react/no-unsafe":"off","react/no-unused-prop-types":["error",{customValidators:[],skipShapeProps:!0}],"react/no-unused-state":"error","react/no-will-update-set-state":"error","react/prefer-es6-class":["error","always"],"react/prefer-read-only-props":"off","react/prefer-stateless-function":["error",{ignorePureComponents:!0}],"react/prop-types":["error",{customValidators:[],ignore:[],skipUndeclared:!1}],"react/react-in-jsx-scope":c?"off":"error","react/require-default-props":["error",{forbidDefaultForRequired:!0,functions:packageJsonUtils.hasDependency("typescript")||packageJsonUtils.hasDevDependency("typescript")?"defaultArguments":"defaultProps"}],"react/require-optimization":["off",{allowDecorators:[]}],"react/require-render-return":"error","react/self-closing-comp":"error","react/sort-comp":["error",{groups:{lifecycle:["displayName","propTypes","contextTypes","childContextTypes","mixins","statics","defaultProps","constructor","getDefaultProps","getInitialState","state","getChildContext","getDerivedStateFromProps","componentWillMount","UNSAFE_componentWillMount","componentDidMount","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","shouldComponentUpdate","componentWillUpdate","UNSAFE_componentWillUpdate","getSnapshotBeforeUpdate","componentDidUpdate","componentDidCatch","componentWillUnmount"],rendering:["/^render.+$/","render"]},order:["static-variables","static-methods","instance-variables","lifecycle","/^handle.+$/","/^on.+$/","getters","setters","/^(get|set)(?!(InitialState$|DefaultProps$|ChildContext$)).+$/","instance-methods","everything-else","rendering"]}],"react/sort-default-props":["error",{ignoreCase:!0}],"react/sort-prop-types":["off",{callbacksLast:!1,ignoreCase:!0,requiredFirst:!1,sortShapeProp:!0}],"react/state-in-constructor":["error","always"],"react/static-property-placement":["error","property assignment"],"react/style-prop-object":"error","react/void-dom-elements-no-children":"error",...global.anolilabEslintConfigReactPrettierRules},settings:{"import/resolver":{node:{extensions:[".js",".jsx",".json",".cjs",".mjs"]}},propWrapperFunctions:["forbidExtraProps","exact","Object.freeze"],react:{version:global.anolilabEslintConfigReactVersion??"detect"}}},{files:["*.jsx"],rules:{"react/jsx-closing-tag-location":"error","react/jsx-filename-extension":"error","react/jsx-wrap-multilines":["error",{arrow:"parens-new-line",assignment:"parens-new-line",condition:"parens-new-line",declaration:"parens-new-line",logical:"parens-new-line",prop:"parens-new-line",return:"parens-new-line"}],"react/no-typos":"error"}},{files:["*.tsx"],rules:{"react/default-props-match-prop-types":"off","react/jsx-filename-extension":"off","react/prop-types":"off","react/require-default-props":"off"}},{files:["**/*.stories.{ts,tsx,mdx}"],rules:{"react/jsx-props-no-spreading":"off"}}]},E=x;
|
|
26
26
|
|
|
27
27
|
module.exports = E;
|
|
28
28
|
//# sourceMappingURL=out.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/config/plugins/react.ts"],"names":["env","getPackageSubProperty","hasDependency","hasDevDependency","findUp","parse","styleRules","style_default","dangleRules","hasJsxRuntime","isFile","showLog","eslint_config_default","consoleLog","reactVersion","parsedVersion","config","indent_default","react_default"],"mappings":"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","sourcesContent":["// @see https://github.com/yannickcr/eslint-plugin-react\nimport { env } from \"node:process\";\n\nimport { getPackageSubProperty, hasDependency, hasDevDependency } from \"@anolilab/package-json-utils\";\nimport type { Linter } from \"eslint\";\nimport findUp from \"find-up\";\nimport { parse } from \"semver\";\n\nimport anolilabEslintConfig from \"../../utils/eslint-config\";\nimport indent from \"../../utils/indent\";\nimport { consoleLog } from \"../../utils/loggers\";\nimport styleConfig from \"../style\";\n\n// @ts-expect-error TODO: find the correct type\nconst styleRules = styleConfig.overrides[0].rules as Linter.RulesRecord;\nconst dangleRules = styleRules[\"no-underscore-dangle\"] as Linter.RuleEntry;\n\nif (!global.hasAnolilabEsLintConfigPrettier && (hasDependency(\"prettier\") || hasDevDependency(\"prettier\"))) {\n global.hasAnolilabEsLintConfigPrettier = true;\n}\n\nif (global.anolilabEslintConfigReactPrettierRules === undefined && global.hasAnolilabEsLintConfigPrettier) {\n global.anolilabEslintConfigReactPrettierRules = {\n \"react/jsx-child-element-spacing\": \"off\",\n \"react/jsx-closing-bracket-location\": \"off\",\n \"react/jsx-closing-tag-location\": \"off\",\n \"react/jsx-curly-newline\": \"off\",\n \"react/jsx-curly-spacing\": \"off\",\n \"react/jsx-equals-spacing\": \"off\",\n \"react/jsx-first-prop-new-line\": \"off\",\n \"react/jsx-indent\": \"off\",\n \"react/jsx-indent-props\": \"off\",\n \"react/jsx-max-props-per-line\": \"off\",\n \"react/jsx-newline\": \"off\",\n \"react/jsx-one-expression-per-line\": \"off\",\n \"react/jsx-props-no-multi-spaces\": \"off\",\n \"react/jsx-tag-spacing\": \"off\",\n \"react/jsx-wrap-multilines\": \"off\",\n };\n}\n\nconst hasJsxRuntime = (() => {\n // Workaround VS Code trying to run this file twice!\n if (!global.hasAnolilabEsLintConfigReactRuntimePath) {\n const reactPath = findUp.sync(\"node_modules/react/jsx-runtime.js\");\n const isFile = typeof reactPath === \"string\";\n\n let showLog: boolean = env[\"DISABLE_INFO_ON_DISABLING_JSX_REACT_RULE\"] !== \"true\";\n\n if (showLog && anolilabEslintConfig[\"info_on_disabling_jsx_react_rule\"] !== undefined) {\n showLog = anolilabEslintConfig[\"info_on_disabling_jsx_react_rule\"];\n }\n\n if (showLog && isFile) {\n consoleLog(`\\n@anolilab/eslint-config found react jsx-runtime. \\n\n Following rules are disabled: \"react/jsx-uses-react\" and \"react/react-in-jsx-scope\".\n If you dont use the new react jsx-runtime in you project, please enable it manually.\\n`);\n }\n\n global.hasAnolilabEsLintConfigReactRuntimePath = isFile;\n }\n\n return global.hasAnolilabEsLintConfigReactRuntimePath;\n})();\n\nif (!global.anolilabEslintConfigReactVersion) {\n let reactVersion = getPackageSubProperty<string | undefined>(\"dependencies\")(\"react\");\n\n if (reactVersion === undefined) {\n reactVersion = getPackageSubProperty<string | undefined>(\"devDependencies\")(\"react\");\n }\n\n if (reactVersion !== undefined) {\n const parsedVersion = parse(reactVersion);\n\n if (parsedVersion !== null) {\n global.anolilabEslintConfigReactVersion = `${parsedVersion.major}.${parsedVersion.minor}`;\n }\n }\n}\n\nif (global.anolilabEslintConfigReactVersion !== undefined && anolilabEslintConfig[\"info_on_found_react_version\"] !== false) {\n consoleLog(\n `\\n@anolilab/eslint-config found the version ${global.anolilabEslintConfigReactVersion} of react in your dependencies, this version ${global.anolilabEslintConfigReactVersion} will be used to setup the \"eslint-plugin-react\"\\n`,\n );\n}\n\nconst config: Linter.Config = {\n overrides: [\n {\n env: {\n browser: true,\n },\n\n files: [\"*.jsx\", \"*.tsx\"],\n\n parserOptions: {\n ecmaFeatures: {\n jsx: true,\n },\n },\n\n plugins: [\"react\"],\n\n // https://github.com/yannickcr/eslint-plugin-react#list-of-supported-rules\n rules: {\n \"class-methods-use-this\": [\n \"error\",\n {\n exceptMethods: [\n \"render\",\n \"getInitialState\",\n \"getDefaultProps\",\n \"getChildContext\",\n \"componentWillMount\",\n \"UNSAFE_componentWillMount\",\n \"componentDidMount\",\n \"componentWillReceiveProps\",\n \"UNSAFE_componentWillReceiveProps\",\n \"shouldComponentUpdate\",\n \"componentWillUpdate\",\n \"UNSAFE_componentWillUpdate\",\n \"componentDidUpdate\",\n \"componentWillUnmount\",\n \"componentDidCatch\",\n \"getSnapshotBeforeUpdate\",\n ],\n },\n ],\n\n // Specify whether double or single quotes should be used in JSX attributes\n // https://eslint.org/docs/rules/jsx-quotes\n \"jsx-quotes\": [\"error\", \"prefer-double\"],\n\n \"no-underscore-dangle\": [\n (dangleRules as unknown[])[0] as Linter.RuleLevel,\n {\n ...((dangleRules as unknown[])[1] as Linter.RuleLevelAndOptions[]),\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/no-explicit-any\n allow: [...(dangleRules as any)[1].allow, \"__REDUX_DEVTOOLS_EXTENSION_COMPOSE__\"],\n },\n ],\n\n // Prevent missing displayName in a React component definition\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/boolean-prop-naming.md\n \"react/boolean-prop-naming\": [\n \"off\",\n {\n message: \"\",\n propTypeNames: [\"bool\", \"mutuallyExclusiveTrueProps\"],\n rule: \"^(is|has)[A-Z]([A-Za-z0-9]?)+\",\n },\n ],\n\n // Forbid certain propTypes (any, array, object)\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/button-has-type.md\n \"react/button-has-type\": [\n \"error\",\n {\n button: true,\n reset: false,\n submit: true,\n },\n ],\n\n // Forbid certain props on DOM Nodes\n // https://github.com/yannickcr/eslint-plugin-react/blob/9e13ae2c51e44872b45cc15bf1ac3a72105bdd0e/docs/rules/default-props-match-prop-types.md\n \"react/default-props-match-prop-types\": [\"error\", { allowRequiredDefaults: false }],\n\n // Enforce boolean attributes notation in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/destructuring-assignment.md\n \"react/destructuring-assignment\": [\"error\", \"always\"],\n\n // Validate closing bracket location in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/display-name.md\n \"react/display-name\": [\"off\", { ignoreTranspilerName: false }],\n\n // Enforce or disallow spaces inside curly braces in JSX attributes\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/forbid-component-props.md\n \"react/forbid-component-props\": [\"off\", { forbid: [] }],\n\n // Enforce event handler naming conventions in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/forbid-dom-props.md\n \"react/forbid-dom-props\": [\"off\", { forbid: [] }],\n\n // Validate props indentation in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/forbid-elements.md\n \"react/forbid-elements\": [\"off\", { forbid: [] }],\n\n // Validate JSX has key prop when in array or iterator\n // but it's only critical if you're stripping propTypes in production.\n \"react/forbid-foreign-prop-types\": [\"warn\", { allowInPropTypes: true }],\n\n // Limit maximum of props on a single line in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/forbid-prop-types.md\n \"react/forbid-prop-types\": [\n \"error\",\n {\n checkChildContextTypes: true,\n checkContextTypes: true,\n forbid: [\"any\", \"array\", \"object\"],\n },\n ],\n\n // Prevent usage of .bind() in JSX props\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/function-component-definition.md\n \"react/function-component-definition\": [\n \"error\",\n {\n namedComponents: \"arrow-function\",\n unnamedComponents: \"arrow-function\",\n },\n ],\n\n // Prevent duplicate props in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-boolean-value.md\n \"react/jsx-boolean-value\": [\"error\", \"never\", { always: [] }],\n\n // Prevent usage of unwrapped JSX strings\n // Ensures inline tags are not rendered without spaces between them\n \"react/jsx-child-element-spacing\": \"off\",\n\n // Disallow undeclared variables in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-closing-bracket-location.md\n \"react/jsx-closing-bracket-location\": [\"error\", \"line-aligned\"],\n\n // Enforce PascalCase for user-defined JSX components\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-curly-brace-presence.md\n \"react/jsx-curly-brace-presence\": [\"error\", { children: \"never\", props: \"never\" }],\n\n // Enforce propTypes declarations alphabetical sorting\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-curly-newline.md\n \"react/jsx-curly-newline\": [\n \"error\",\n {\n multiline: \"consistent\",\n singleline: \"consistent\",\n },\n ],\n\n // Enforce props alphabetical sorting\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-curly-spacing.md\n \"react/jsx-curly-spacing\": [\"error\", \"never\", { allowMultiline: true }],\n\n // Prevent React to be incorrectly marked as unused\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-equals-spacing.md\n \"react/jsx-equals-spacing\": [\"error\", \"never\"],\n\n // Prevent variables used in JSX to be incorrectly marked as unused\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-first-prop-new-line.md\n \"react/jsx-first-prop-new-line\": [\"error\", \"multiline-multiprop\"],\n\n // Prevent usage of dangerous JSX properties\n // https://github.com/yannickcr/eslint-plugin-react/blob/bc976b837abeab1dffd90ac6168b746a83fc83cc/docs/rules/jsx-fragments.md\n \"react/jsx-fragments\": [\"error\", \"syntax\"],\n\n // Prevent usage of deprecated methods\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-handler-names.md\n \"react/jsx-handler-names\": [\n \"off\",\n {\n eventHandlerPrefix: \"handle\",\n eventHandlerPropPrefix: \"on\",\n },\n ],\n\n // Prevent usage of setState in componentWillUpdate\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-indent.md\n \"react/jsx-indent\": [\"error\", indent, { checkAttributes: true, indentLogicalExpressions: true }],\n\n // Prevent direct mutation of this.state\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-indent-props.md\n \"react/jsx-indent-props\": [\"error\", indent],\n\n // Prevent usage of isMounted\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-key.md\n \"react/jsx-key\": \"off\",\n\n // Prevent multiple component definition per file\n // https://github.com/yannickcr/eslint-plugin-react/blob/abe8381c0d6748047224c430ce47f02e40160ed0/docs/rules/jsx-max-depth.md\n \"react/jsx-max-depth\": \"off\",\n\n // Prevent usage of setState\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-max-props-per-line.md\n \"react/jsx-max-props-per-line\": [\"error\", { maximum: 1, when: \"multiline\" }],\n\n // Prevent using string references\n // https://github.com/yannickcr/eslint-plugin-react/blob/e2eaadae316f9506d163812a09424eb42698470a/docs/rules/jsx-newline.md\n \"react/jsx-newline\": \"off\",\n\n // Prevent usage of unknown DOM property\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-bind.md\n \"react/jsx-no-bind\": [\n \"error\",\n {\n allowArrowFunctions: true,\n allowBind: false,\n allowFunctions: false,\n ignoreDOMComponents: true,\n ignoreRefs: true,\n },\n ],\n\n // Require ES6 class declarations over React.createClass\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-comment-textnodes.md\n \"react/jsx-no-comment-textnodes\": \"error\",\n\n // Require stateless functions when not using lifecycle methods, setState or ref\n // https://github.com/yannickcr/eslint-plugin-react/blob/e2eaadae316f9506d163812a09424eb42698470a/docs/rules/jsx-no-constructed-context-values.md\n \"react/jsx-no-constructed-context-values\": \"error\",\n\n // Prevent missing props validation in a React component definition\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-duplicate-props.md\n \"react/jsx-no-duplicate-props\": [\"error\", { ignoreCase: true }],\n\n // Prevent missing React when using JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-literals.md\n \"react/jsx-no-literals\": [\"off\", { noStrings: true }],\n\n // Require render() methods to return something\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-script-url.md\n \"react/jsx-no-script-url\": [\n \"error\",\n [\n {\n name: \"Link\",\n props: [\"to\"],\n },\n ],\n ],\n\n // Prevent extra closing tags for components without children\n // https://github.com/yannickcr/eslint-plugin-react/blob/ac102885765be5ff37847a871f239c6703e1c7cc/docs/rules/jsx-no-target-blank.md\n \"react/jsx-no-target-blank\": [\"error\", { enforceDynamicLinks: \"always\" }],\n\n // Enforce defaultProps declarations alphabetical sorting\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-undef.md\n \"react/jsx-no-undef\": \"error\",\n\n // Enforce component methods order\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-useless-fragment.md\n \"react/jsx-no-useless-fragment\": \"error\",\n\n // Require that the first prop in a JSX element be on a new line when the element is multiline\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/jsx-one-expression-per-line.md\n \"react/jsx-one-expression-per-line\": [\"error\", { allow: \"single-child\" }],\n\n // Enforce spacing around jsx equals signs\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-pascal-case.md\n \"react/jsx-pascal-case\": [\n \"error\",\n {\n allowAllCaps: true,\n ignore: [],\n },\n ],\n\n // Enforce JSX indentation\n // https://github.com/yannickcr/eslint-plugin-react/blob/ac102885765be5ff37847a871f239c6703e1c7cc/docs/rules/jsx-props-no-multi-spaces.md\n \"react/jsx-props-no-multi-spaces\": \"error\",\n\n // Prevent usage of setState in componentDidMount\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-did-mount-set-state.md\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-props-no-spreading.md\n \"react/jsx-props-no-spreading\": [\n \"error\",\n {\n custom: \"enforce\",\n exceptions: [],\n explicitSpread: \"ignore\",\n html: \"enforce\",\n },\n ],\n\n // Prevent usage of setState in componentDidUpdate\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-sort-props.md\n \"react/jsx-sort-props\": \"off\",\n\n // Disallow target=\"_blank\" on links\n // Deprecated in favor of jsx-tag-spacing\n \"react/jsx-space-before-closing\": [\"off\", \"always\"],\n\n // prevent accidental JS comments from being injected into JSX as text\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/jsx-tag-spacing.md\n \"react/jsx-tag-spacing\": [\n \"error\",\n {\n afterOpening: \"never\",\n beforeClosing: \"never\",\n beforeSelfClosing: \"always\",\n closingSlash: \"never\",\n },\n ],\n\n // disallow using React.render/ReactDOM.render's return value\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-uses-react.md\n \"react/jsx-uses-react\": [hasJsxRuntime ? \"off\" : \"error\"],\n\n // require a shouldComponentUpdate method, or PureRenderMixin\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-uses-vars.md\n \"react/jsx-uses-vars\": \"error\",\n\n // warn against using findDOMNode()\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/no-access-state-in-setstate.md\n \"react/no-access-state-in-setstate\": \"error\",\n\n // Forbid certain props on Components\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-adjacent-inline-elements.md\n \"react/no-adjacent-inline-elements\": \"error\",\n\n // Forbid certain elements\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-array-index-key.md\n \"react/no-array-index-key\": \"error\",\n\n // Prevent problem with children and props.dangerouslySetInnerHTML\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-children-prop.md\n \"react/no-children-prop\": \"error\",\n\n // Prevent unused propType definitions\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-danger.md\n \"react/no-danger\": \"warn\",\n\n // Require style prop value be an object or var\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-danger-with-children.md\n \"react/no-danger-with-children\": \"error\",\n\n // Prevent invalid characters from appearing in markup\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-deprecated.md\n \"react/no-deprecated\": [\"error\"],\n\n // Prevent passing of children as props\n // this is necessary for server-rendering\n \"react/no-did-mount-set-state\": \"off\",\n\n // Validate whitespace in and around the JSX opening and closing brackets\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-did-update-set-state.md\n \"react/no-did-update-set-state\": \"error\",\n\n // Enforce spaces before the closing bracket of self-closing JSX elements\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-space-before-closing.md\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-direct-mutation-state.md\n \"react/no-direct-mutation-state\": \"error\",\n\n // Prevent usage of Array index in keys\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-find-dom-node.md\n \"react/no-find-dom-node\": \"error\",\n\n // Enforce a defaultProps definition for every prop that is not a required prop\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-is-mounted.md\n \"react/no-is-mounted\": \"error\",\n\n // Forbids using non-exported propTypes\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/forbid-foreign-prop-types.md\n // this is intentionally set to \"warn\". it would be \"error\",\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-multi-comp.md\n \"react/no-multi-comp\": \"off\",\n\n // Prevent void DOM elements from receiving children\n // https://github.com/yannickcr/eslint-plugin-react/blob/9e13ae2c51e44872b45cc15bf1ac3a72105bdd0e/docs/rules/no-redundant-should-component-update.md\n \"react/no-redundant-should-component-update\": \"error\",\n\n // Enforce all defaultProps have a corresponding non-required PropType\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-render-return-value.md\n \"react/no-render-return-value\": \"error\",\n\n // Prevent usage of shouldComponentUpdate when extending React.PureComponent\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-set-state.md\n \"react/no-set-state\": \"off\",\n\n // Prevent unused state values\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-string-refs.md\n \"react/no-string-refs\": \"error\",\n\n // Enforces consistent naming for boolean props\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/no-this-in-sfc.md\n \"react/no-this-in-sfc\": \"error\",\n\n // Enforce curly braces or disallow unnecessary curly braces in JSX props and/or children\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-unescaped-entities.md\n \"react/no-unescaped-entities\": \"error\",\n\n // One JSX Element Per Line\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-unknown-property.md\n \"react/no-unknown-property\": \"error\",\n\n // Enforce consistent usage of destructuring assignment of props, state, and context\n // https://github.com/yannickcr/eslint-plugin-react/blob/157cc932be2cfaa56b3f5b45df6f6d4322a2f660/docs/rules/no-unsafe.md\n \"react/no-unsafe\": \"off\",\n\n // Prevent using this.state within a this.setState\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-unused-prop-types.md\n \"react/no-unused-prop-types\": [\n \"error\",\n {\n customValidators: [],\n skipShapeProps: true,\n },\n ],\n\n // Prevent usage of button elements without an explicit type attribute\n // https://github.com/yannickcr/eslint-plugin-react/pull/1103/\n \"react/no-unused-state\": \"error\",\n\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-will-update-set-state.md\n \"react/no-will-update-set-state\": \"error\",\n\n // Prevent this from being used in stateless functional components\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/prefer-es6-class.md\n \"react/prefer-es6-class\": [\"error\", \"always\"],\n\n // Validate JSX maximum depth\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/prefer-read-only-props.md\n \"react/prefer-read-only-props\": \"off\",\n\n // Disallow multiple spaces between inline JSX props\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/prefer-stateless-function.md\n \"react/prefer-stateless-function\": [\"error\", { ignorePureComponents: true }],\n\n // Prevent usage of UNSAFE_ methods\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/prop-types.md\n \"react/prop-types\": [\n \"error\",\n {\n customValidators: [],\n ignore: [],\n skipUndeclared: false,\n },\n ],\n\n // Enforce shorthand or standard form for React fragments\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/react-in-jsx-scope.md\n \"react/react-in-jsx-scope\": hasJsxRuntime ? \"off\" : \"error\",\n\n // Enforce a defaultProps definition for every prop that is not a required prop\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/require-default-props.md\n \"react/require-default-props\": [\n \"error\",\n {\n forbidDefaultForRequired: true,\n functions: hasDependency(\"typescript\") || hasDevDependency(\"typescript\") ? \"defaultArguments\" : \"defaultProps\",\n },\n ],\n\n // Enforce state initialization style\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/state-in-constructor.md\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/require-optimization.md\n \"react/require-optimization\": [\"off\", { allowDecorators: [] }],\n\n // Enforces where React component static properties should be positioned\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/static-property-placement.md\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/require-render-return.md\n \"react/require-render-return\": \"error\",\n\n // Disallow JSX props spreading\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/self-closing-comp.md\n \"react/self-closing-comp\": \"error\",\n\n // Enforce that props are read-only\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/sort-comp.md\n \"react/sort-comp\": [\n \"error\",\n {\n groups: {\n lifecycle: [\n \"displayName\",\n \"propTypes\",\n \"contextTypes\",\n \"childContextTypes\",\n \"mixins\",\n \"statics\",\n \"defaultProps\",\n \"constructor\",\n \"getDefaultProps\",\n \"getInitialState\",\n \"state\",\n \"getChildContext\",\n \"getDerivedStateFromProps\",\n \"componentWillMount\",\n \"UNSAFE_componentWillMount\",\n \"componentDidMount\",\n \"componentWillReceiveProps\",\n \"UNSAFE_componentWillReceiveProps\",\n \"shouldComponentUpdate\",\n \"componentWillUpdate\",\n \"UNSAFE_componentWillUpdate\",\n \"getSnapshotBeforeUpdate\",\n \"componentDidUpdate\",\n \"componentDidCatch\",\n \"componentWillUnmount\",\n ],\n rendering: [\"/^render.+$/\", \"render\"],\n },\n order: [\n \"static-variables\",\n \"static-methods\",\n \"instance-variables\",\n \"lifecycle\",\n \"/^handle.+$/\",\n \"/^on.+$/\",\n \"getters\",\n \"setters\",\n \"/^(get|set)(?!(InitialState$|DefaultProps$|ChildContext$)).+$/\",\n \"instance-methods\",\n \"everything-else\",\n \"rendering\",\n ],\n },\n ],\n\n // Prevent usage of `javascript:` URLs\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/sort-default-props.md\n \"react/sort-default-props\": [\n \"error\",\n {\n ignoreCase: true,\n },\n ],\n\n // Disallow unnecessary fragments\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/sort-prop-types.md\n \"react/sort-prop-types\": [\n \"off\",\n {\n callbacksLast: false,\n ignoreCase: true,\n requiredFirst: false,\n sortShapeProp: true,\n },\n ],\n\n // Prevent adjacent inline elements not separated by whitespace\n // TODO: set to \"never\" once @anolilab/babel-preset supports public class fields\n \"react/state-in-constructor\": [\"error\", \"always\"],\n\n // Enforce a specific function type for function components\n // TODO: set to \"static public field\" once @anolilab/babel-preset supports public class fields\n \"react/static-property-placement\": [\"error\", \"property assignment\"],\n\n // Enforce a new line after jsx elements and expressions\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/style-prop-object.md\n \"react/style-prop-object\": \"error\",\n\n // Prevent react contexts from taking non-stable values\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/void-dom-elements-no-children.md\n \"react/void-dom-elements-no-children\": \"error\",\n\n ...global.anolilabEslintConfigReactPrettierRules,\n },\n\n // View link below for react rules documentation\n settings: {\n \"import/resolver\": {\n node: {\n extensions: [\".js\", \".jsx\", \".json\", \".cjs\", \".mjs\"],\n },\n },\n propWrapperFunctions: [\n \"forbidExtraProps\", // https://www.npmjs.com/package/airbnb-prop-types\n \"exact\", // https://www.npmjs.com/package/prop-types-exact\n \"Object.freeze\", // https://tc39.github.io/ecma262/#sec-object.freeze\n ],\n react: {\n // The default value is \"detect\". Automatic detection works by loading the entire React library\n // into the linter's process, which is inefficient. It is recommended to specify the version\n // explicity.\n version: global.anolilabEslintConfigReactVersion ?? \"detect\",\n },\n },\n },\n {\n files: [\"*.jsx\"],\n rules: {\n // only .jsx files may have JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-closing-tag-location.md\n \"react/jsx-closing-tag-location\": \"error\",\n\n // Prevents common casing typos\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-filename-extension.md\n \"react/jsx-filename-extension\": \"error\",\n\n // Validate closing tag location in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/jsx-wrap-multilines.md\n \"react/jsx-wrap-multilines\": [\n \"error\",\n {\n arrow: \"parens-new-line\",\n assignment: \"parens-new-line\",\n condition: \"parens-new-line\",\n declaration: \"parens-new-line\",\n logical: \"parens-new-line\",\n prop: \"parens-new-line\",\n return: \"parens-new-line\",\n },\n ],\n\n // Prevent missing parentheses around multilines JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/73abadb697034b5ccb514d79fb4689836fe61f91/docs/rules/no-typos.md\n \"react/no-typos\": \"error\",\n },\n },\n {\n files: [\"*.tsx\"],\n rules: {\n \"react/default-props-match-prop-types\": \"off\",\n // Disable JS specific rules\n \"react/jsx-filename-extension\": \"off\",\n \"react/prop-types\": \"off\",\n \"react/require-default-props\": \"off\",\n },\n },\n ],\n};\n\nexport default config;\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/config/plugins/react.ts"],"names":["env","getPackageSubProperty","hasDependency","hasDevDependency","findUp","parse","styleRules","style_default","dangleRules","hasJsxRuntime","isFile","showLog","eslint_config_default","consoleLog","reactVersion","parsedVersion","config","indent_default","react_default"],"mappings":"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","sourcesContent":["// @see https://github.com/yannickcr/eslint-plugin-react\nimport { env } from \"node:process\";\n\nimport { getPackageSubProperty, hasDependency, hasDevDependency } from \"@anolilab/package-json-utils\";\nimport type { Linter } from \"eslint\";\nimport findUp from \"find-up\";\nimport { parse } from \"semver\";\n\nimport anolilabEslintConfig from \"../../utils/eslint-config\";\nimport indent from \"../../utils/indent\";\nimport { consoleLog } from \"../../utils/loggers\";\nimport styleConfig from \"../style\";\n\n// @ts-expect-error TODO: find the correct type\nconst styleRules = styleConfig.overrides[0].rules as Linter.RulesRecord;\nconst dangleRules = styleRules[\"no-underscore-dangle\"] as Linter.RuleEntry;\n\nif (!global.hasAnolilabEsLintConfigPrettier && (hasDependency(\"prettier\") || hasDevDependency(\"prettier\"))) {\n global.hasAnolilabEsLintConfigPrettier = true;\n}\n\nif (global.anolilabEslintConfigReactPrettierRules === undefined && global.hasAnolilabEsLintConfigPrettier) {\n global.anolilabEslintConfigReactPrettierRules = {\n \"react/jsx-child-element-spacing\": \"off\",\n \"react/jsx-closing-bracket-location\": \"off\",\n \"react/jsx-closing-tag-location\": \"off\",\n \"react/jsx-curly-newline\": \"off\",\n \"react/jsx-curly-spacing\": \"off\",\n \"react/jsx-equals-spacing\": \"off\",\n \"react/jsx-first-prop-new-line\": \"off\",\n \"react/jsx-indent\": \"off\",\n \"react/jsx-indent-props\": \"off\",\n \"react/jsx-max-props-per-line\": \"off\",\n \"react/jsx-newline\": \"off\",\n \"react/jsx-one-expression-per-line\": \"off\",\n \"react/jsx-props-no-multi-spaces\": \"off\",\n \"react/jsx-tag-spacing\": \"off\",\n \"react/jsx-wrap-multilines\": \"off\",\n };\n}\n\nconst hasJsxRuntime = (() => {\n // Workaround VS Code trying to run this file twice!\n if (!global.hasAnolilabEsLintConfigReactRuntimePath) {\n const reactPath = findUp.sync(\"node_modules/react/jsx-runtime.js\");\n const isFile = typeof reactPath === \"string\";\n\n let showLog: boolean = env[\"DISABLE_INFO_ON_DISABLING_JSX_REACT_RULE\"] !== \"true\";\n\n if (showLog && anolilabEslintConfig[\"info_on_disabling_jsx_react_rule\"] !== undefined) {\n showLog = anolilabEslintConfig[\"info_on_disabling_jsx_react_rule\"];\n }\n\n if (showLog && isFile) {\n consoleLog(`\\n@anolilab/eslint-config found react jsx-runtime. \\n\n Following rules are disabled: \"react/jsx-uses-react\" and \"react/react-in-jsx-scope\".\n If you dont use the new react jsx-runtime in you project, please enable it manually.\\n`);\n }\n\n global.hasAnolilabEsLintConfigReactRuntimePath = isFile;\n }\n\n return global.hasAnolilabEsLintConfigReactRuntimePath;\n})();\n\nif (!global.anolilabEslintConfigReactVersion) {\n let reactVersion = getPackageSubProperty<string | undefined>(\"dependencies\")(\"react\");\n\n if (reactVersion === undefined) {\n reactVersion = getPackageSubProperty<string | undefined>(\"devDependencies\")(\"react\");\n }\n\n if (reactVersion !== undefined) {\n const parsedVersion = parse(reactVersion);\n\n if (parsedVersion !== null) {\n global.anolilabEslintConfigReactVersion = `${parsedVersion.major}.${parsedVersion.minor}`;\n }\n }\n}\n\nif (global.anolilabEslintConfigReactVersion !== undefined && anolilabEslintConfig[\"info_on_found_react_version\"] !== false) {\n consoleLog(\n `\\n@anolilab/eslint-config found the version ${global.anolilabEslintConfigReactVersion} of react in your dependencies, this version ${global.anolilabEslintConfigReactVersion} will be used to setup the \"eslint-plugin-react\"\\n`,\n );\n}\n\nconst config: Linter.Config = {\n overrides: [\n {\n env: {\n browser: true,\n },\n\n files: [\"*.jsx\", \"*.tsx\"],\n\n parserOptions: {\n ecmaFeatures: {\n jsx: true,\n },\n },\n\n plugins: [\"react\"],\n\n // https://github.com/yannickcr/eslint-plugin-react#list-of-supported-rules\n rules: {\n \"class-methods-use-this\": [\n \"error\",\n {\n exceptMethods: [\n \"render\",\n \"getInitialState\",\n \"getDefaultProps\",\n \"getChildContext\",\n \"componentWillMount\",\n \"UNSAFE_componentWillMount\",\n \"componentDidMount\",\n \"componentWillReceiveProps\",\n \"UNSAFE_componentWillReceiveProps\",\n \"shouldComponentUpdate\",\n \"componentWillUpdate\",\n \"UNSAFE_componentWillUpdate\",\n \"componentDidUpdate\",\n \"componentWillUnmount\",\n \"componentDidCatch\",\n \"getSnapshotBeforeUpdate\",\n ],\n },\n ],\n\n // Specify whether double or single quotes should be used in JSX attributes\n // https://eslint.org/docs/rules/jsx-quotes\n \"jsx-quotes\": [\"error\", \"prefer-double\"],\n\n \"no-underscore-dangle\": [\n (dangleRules as unknown[])[0] as Linter.RuleLevel,\n {\n ...((dangleRules as unknown[])[1] as Linter.RuleLevelAndOptions[]),\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment,@typescript-eslint/no-unsafe-member-access,@typescript-eslint/no-explicit-any\n allow: [...(dangleRules as any)[1].allow, \"__REDUX_DEVTOOLS_EXTENSION_COMPOSE__\"],\n },\n ],\n\n // Prevent missing displayName in a React component definition\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/boolean-prop-naming.md\n \"react/boolean-prop-naming\": [\n \"off\",\n {\n message: \"\",\n propTypeNames: [\"bool\", \"mutuallyExclusiveTrueProps\"],\n rule: \"^(is|has)[A-Z]([A-Za-z0-9]?)+\",\n },\n ],\n\n // Forbid certain propTypes (any, array, object)\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/button-has-type.md\n \"react/button-has-type\": [\n \"error\",\n {\n button: true,\n reset: false,\n submit: true,\n },\n ],\n\n // Forbid certain props on DOM Nodes\n // https://github.com/yannickcr/eslint-plugin-react/blob/9e13ae2c51e44872b45cc15bf1ac3a72105bdd0e/docs/rules/default-props-match-prop-types.md\n \"react/default-props-match-prop-types\": [\"error\", { allowRequiredDefaults: false }],\n\n // Enforce boolean attributes notation in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/destructuring-assignment.md\n \"react/destructuring-assignment\": [\"error\", \"always\"],\n\n // Validate closing bracket location in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/display-name.md\n \"react/display-name\": [\"off\", { ignoreTranspilerName: false }],\n\n // Enforce or disallow spaces inside curly braces in JSX attributes\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/forbid-component-props.md\n \"react/forbid-component-props\": [\"off\", { forbid: [] }],\n\n // Enforce event handler naming conventions in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/forbid-dom-props.md\n \"react/forbid-dom-props\": [\"off\", { forbid: [] }],\n\n // Validate props indentation in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/forbid-elements.md\n \"react/forbid-elements\": [\"off\", { forbid: [] }],\n\n // Validate JSX has key prop when in array or iterator\n // but it's only critical if you're stripping propTypes in production.\n \"react/forbid-foreign-prop-types\": [\"warn\", { allowInPropTypes: true }],\n\n // Limit maximum of props on a single line in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/forbid-prop-types.md\n \"react/forbid-prop-types\": [\n \"error\",\n {\n checkChildContextTypes: true,\n checkContextTypes: true,\n forbid: [\"any\", \"array\", \"object\"],\n },\n ],\n\n // Prevent usage of .bind() in JSX props\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/function-component-definition.md\n \"react/function-component-definition\": [\n \"error\",\n {\n namedComponents: \"arrow-function\",\n unnamedComponents: \"arrow-function\",\n },\n ],\n\n // Prevent duplicate props in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-boolean-value.md\n \"react/jsx-boolean-value\": [\"error\", \"never\", { always: [] }],\n\n // Prevent usage of unwrapped JSX strings\n // Ensures inline tags are not rendered without spaces between them\n \"react/jsx-child-element-spacing\": \"off\",\n\n // Disallow undeclared variables in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-closing-bracket-location.md\n \"react/jsx-closing-bracket-location\": [\"error\", \"line-aligned\"],\n\n // Enforce PascalCase for user-defined JSX components\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-curly-brace-presence.md\n \"react/jsx-curly-brace-presence\": [\"error\", { children: \"never\", props: \"never\" }],\n\n // Enforce propTypes declarations alphabetical sorting\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-curly-newline.md\n \"react/jsx-curly-newline\": [\n \"error\",\n {\n multiline: \"consistent\",\n singleline: \"consistent\",\n },\n ],\n\n // Enforce props alphabetical sorting\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-curly-spacing.md\n \"react/jsx-curly-spacing\": [\"error\", \"never\", { allowMultiline: true }],\n\n // Prevent React to be incorrectly marked as unused\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-equals-spacing.md\n \"react/jsx-equals-spacing\": [\"error\", \"never\"],\n\n // Prevent variables used in JSX to be incorrectly marked as unused\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-first-prop-new-line.md\n \"react/jsx-first-prop-new-line\": [\"error\", \"multiline-multiprop\"],\n\n // Prevent usage of dangerous JSX properties\n // https://github.com/yannickcr/eslint-plugin-react/blob/bc976b837abeab1dffd90ac6168b746a83fc83cc/docs/rules/jsx-fragments.md\n \"react/jsx-fragments\": [\"error\", \"syntax\"],\n\n // Prevent usage of deprecated methods\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-handler-names.md\n \"react/jsx-handler-names\": [\n \"off\",\n {\n eventHandlerPrefix: \"handle\",\n eventHandlerPropPrefix: \"on\",\n },\n ],\n\n // Prevent usage of setState in componentWillUpdate\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-indent.md\n \"react/jsx-indent\": [\"error\", indent, { checkAttributes: true, indentLogicalExpressions: true }],\n\n // Prevent direct mutation of this.state\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-indent-props.md\n \"react/jsx-indent-props\": [\"error\", indent],\n\n // Prevent usage of isMounted\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-key.md\n \"react/jsx-key\": \"off\",\n\n // Prevent multiple component definition per file\n // https://github.com/yannickcr/eslint-plugin-react/blob/abe8381c0d6748047224c430ce47f02e40160ed0/docs/rules/jsx-max-depth.md\n \"react/jsx-max-depth\": \"off\",\n\n // Prevent usage of setState\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-max-props-per-line.md\n \"react/jsx-max-props-per-line\": [\"error\", { maximum: 1, when: \"multiline\" }],\n\n // Prevent using string references\n // https://github.com/yannickcr/eslint-plugin-react/blob/e2eaadae316f9506d163812a09424eb42698470a/docs/rules/jsx-newline.md\n \"react/jsx-newline\": \"off\",\n\n // Prevent usage of unknown DOM property\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-bind.md\n \"react/jsx-no-bind\": [\n \"error\",\n {\n allowArrowFunctions: true,\n allowBind: false,\n allowFunctions: false,\n ignoreDOMComponents: true,\n ignoreRefs: true,\n },\n ],\n\n // Require ES6 class declarations over React.createClass\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-comment-textnodes.md\n \"react/jsx-no-comment-textnodes\": \"error\",\n\n // Require stateless functions when not using lifecycle methods, setState or ref\n // https://github.com/yannickcr/eslint-plugin-react/blob/e2eaadae316f9506d163812a09424eb42698470a/docs/rules/jsx-no-constructed-context-values.md\n \"react/jsx-no-constructed-context-values\": \"error\",\n\n // Prevent missing props validation in a React component definition\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-duplicate-props.md\n \"react/jsx-no-duplicate-props\": [\"error\", { ignoreCase: true }],\n\n // Prevent missing React when using JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-literals.md\n \"react/jsx-no-literals\": [\"off\", { noStrings: true }],\n\n // Require render() methods to return something\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-script-url.md\n \"react/jsx-no-script-url\": [\n \"error\",\n [\n {\n name: \"Link\",\n props: [\"to\"],\n },\n ],\n ],\n\n // Prevent extra closing tags for components without children\n // https://github.com/yannickcr/eslint-plugin-react/blob/ac102885765be5ff37847a871f239c6703e1c7cc/docs/rules/jsx-no-target-blank.md\n \"react/jsx-no-target-blank\": [\"error\", { enforceDynamicLinks: \"always\" }],\n\n // Enforce defaultProps declarations alphabetical sorting\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-undef.md\n \"react/jsx-no-undef\": \"error\",\n\n // Enforce component methods order\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-no-useless-fragment.md\n \"react/jsx-no-useless-fragment\": \"error\",\n\n // Require that the first prop in a JSX element be on a new line when the element is multiline\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/jsx-one-expression-per-line.md\n \"react/jsx-one-expression-per-line\": [\"error\", { allow: \"single-child\" }],\n\n // Enforce spacing around jsx equals signs\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-pascal-case.md\n \"react/jsx-pascal-case\": [\n \"error\",\n {\n allowAllCaps: true,\n ignore: [],\n },\n ],\n\n // Enforce JSX indentation\n // https://github.com/yannickcr/eslint-plugin-react/blob/ac102885765be5ff37847a871f239c6703e1c7cc/docs/rules/jsx-props-no-multi-spaces.md\n \"react/jsx-props-no-multi-spaces\": \"error\",\n\n // Prevent usage of setState in componentDidMount\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-did-mount-set-state.md\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-props-no-spreading.md\n \"react/jsx-props-no-spreading\": [\n \"error\",\n {\n custom: \"enforce\",\n exceptions: [],\n explicitSpread: \"ignore\",\n html: \"enforce\",\n },\n ],\n\n // Prevent usage of setState in componentDidUpdate\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-sort-props.md\n \"react/jsx-sort-props\": \"off\",\n\n // Disallow target=\"_blank\" on links\n // Deprecated in favor of jsx-tag-spacing\n \"react/jsx-space-before-closing\": [\"off\", \"always\"],\n\n // prevent accidental JS comments from being injected into JSX as text\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/jsx-tag-spacing.md\n \"react/jsx-tag-spacing\": [\n \"error\",\n {\n afterOpening: \"never\",\n beforeClosing: \"never\",\n beforeSelfClosing: \"always\",\n closingSlash: \"never\",\n },\n ],\n\n // disallow using React.render/ReactDOM.render's return value\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-uses-react.md\n \"react/jsx-uses-react\": [hasJsxRuntime ? \"off\" : \"error\"],\n\n // require a shouldComponentUpdate method, or PureRenderMixin\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-uses-vars.md\n \"react/jsx-uses-vars\": \"error\",\n\n // warn against using findDOMNode()\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/no-access-state-in-setstate.md\n \"react/no-access-state-in-setstate\": \"error\",\n\n // Forbid certain props on Components\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-adjacent-inline-elements.md\n \"react/no-adjacent-inline-elements\": \"error\",\n\n // Forbid certain elements\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-array-index-key.md\n \"react/no-array-index-key\": \"error\",\n\n // Prevent problem with children and props.dangerouslySetInnerHTML\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-children-prop.md\n \"react/no-children-prop\": \"error\",\n\n // Prevent unused propType definitions\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-danger.md\n \"react/no-danger\": \"warn\",\n\n // Require style prop value be an object or var\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-danger-with-children.md\n \"react/no-danger-with-children\": \"error\",\n\n // Prevent invalid characters from appearing in markup\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-deprecated.md\n \"react/no-deprecated\": [\"error\"],\n\n // Prevent passing of children as props\n // this is necessary for server-rendering\n \"react/no-did-mount-set-state\": \"off\",\n\n // Validate whitespace in and around the JSX opening and closing brackets\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-did-update-set-state.md\n \"react/no-did-update-set-state\": \"error\",\n\n // Enforce spaces before the closing bracket of self-closing JSX elements\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-space-before-closing.md\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-direct-mutation-state.md\n \"react/no-direct-mutation-state\": \"error\",\n\n // Prevent usage of Array index in keys\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-find-dom-node.md\n \"react/no-find-dom-node\": \"error\",\n\n // Enforce a defaultProps definition for every prop that is not a required prop\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-is-mounted.md\n \"react/no-is-mounted\": \"error\",\n\n // Forbids using non-exported propTypes\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/forbid-foreign-prop-types.md\n // this is intentionally set to \"warn\". it would be \"error\",\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-multi-comp.md\n \"react/no-multi-comp\": \"off\",\n\n // Prevent void DOM elements from receiving children\n // https://github.com/yannickcr/eslint-plugin-react/blob/9e13ae2c51e44872b45cc15bf1ac3a72105bdd0e/docs/rules/no-redundant-should-component-update.md\n \"react/no-redundant-should-component-update\": \"error\",\n\n // Enforce all defaultProps have a corresponding non-required PropType\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-render-return-value.md\n \"react/no-render-return-value\": \"error\",\n\n // Prevent usage of shouldComponentUpdate when extending React.PureComponent\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-set-state.md\n \"react/no-set-state\": \"off\",\n\n // Prevent unused state values\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-string-refs.md\n \"react/no-string-refs\": \"error\",\n\n // Enforces consistent naming for boolean props\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/no-this-in-sfc.md\n \"react/no-this-in-sfc\": \"error\",\n\n // Enforce curly braces or disallow unnecessary curly braces in JSX props and/or children\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-unescaped-entities.md\n \"react/no-unescaped-entities\": \"error\",\n\n // One JSX Element Per Line\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-unknown-property.md\n \"react/no-unknown-property\": \"error\",\n\n // Enforce consistent usage of destructuring assignment of props, state, and context\n // https://github.com/yannickcr/eslint-plugin-react/blob/157cc932be2cfaa56b3f5b45df6f6d4322a2f660/docs/rules/no-unsafe.md\n \"react/no-unsafe\": \"off\",\n\n // Prevent using this.state within a this.setState\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-unused-prop-types.md\n \"react/no-unused-prop-types\": [\n \"error\",\n {\n customValidators: [],\n skipShapeProps: true,\n },\n ],\n\n // Prevent usage of button elements without an explicit type attribute\n // https://github.com/yannickcr/eslint-plugin-react/pull/1103/\n \"react/no-unused-state\": \"error\",\n\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-will-update-set-state.md\n \"react/no-will-update-set-state\": \"error\",\n\n // Prevent this from being used in stateless functional components\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/prefer-es6-class.md\n \"react/prefer-es6-class\": [\"error\", \"always\"],\n\n // Validate JSX maximum depth\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/prefer-read-only-props.md\n \"react/prefer-read-only-props\": \"off\",\n\n // Disallow multiple spaces between inline JSX props\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/prefer-stateless-function.md\n \"react/prefer-stateless-function\": [\"error\", { ignorePureComponents: true }],\n\n // Prevent usage of UNSAFE_ methods\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/prop-types.md\n \"react/prop-types\": [\n \"error\",\n {\n customValidators: [],\n ignore: [],\n skipUndeclared: false,\n },\n ],\n\n // Enforce shorthand or standard form for React fragments\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/react-in-jsx-scope.md\n \"react/react-in-jsx-scope\": hasJsxRuntime ? \"off\" : \"error\",\n\n // Enforce a defaultProps definition for every prop that is not a required prop\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/require-default-props.md\n \"react/require-default-props\": [\n \"error\",\n {\n forbidDefaultForRequired: true,\n functions: hasDependency(\"typescript\") || hasDevDependency(\"typescript\") ? \"defaultArguments\" : \"defaultProps\",\n },\n ],\n\n // Enforce state initialization style\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/state-in-constructor.md\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/require-optimization.md\n \"react/require-optimization\": [\"off\", { allowDecorators: [] }],\n\n // Enforces where React component static properties should be positioned\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/static-property-placement.md\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/require-render-return.md\n \"react/require-render-return\": \"error\",\n\n // Disallow JSX props spreading\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/self-closing-comp.md\n \"react/self-closing-comp\": \"error\",\n\n // Enforce that props are read-only\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/sort-comp.md\n \"react/sort-comp\": [\n \"error\",\n {\n groups: {\n lifecycle: [\n \"displayName\",\n \"propTypes\",\n \"contextTypes\",\n \"childContextTypes\",\n \"mixins\",\n \"statics\",\n \"defaultProps\",\n \"constructor\",\n \"getDefaultProps\",\n \"getInitialState\",\n \"state\",\n \"getChildContext\",\n \"getDerivedStateFromProps\",\n \"componentWillMount\",\n \"UNSAFE_componentWillMount\",\n \"componentDidMount\",\n \"componentWillReceiveProps\",\n \"UNSAFE_componentWillReceiveProps\",\n \"shouldComponentUpdate\",\n \"componentWillUpdate\",\n \"UNSAFE_componentWillUpdate\",\n \"getSnapshotBeforeUpdate\",\n \"componentDidUpdate\",\n \"componentDidCatch\",\n \"componentWillUnmount\",\n ],\n rendering: [\"/^render.+$/\", \"render\"],\n },\n order: [\n \"static-variables\",\n \"static-methods\",\n \"instance-variables\",\n \"lifecycle\",\n \"/^handle.+$/\",\n \"/^on.+$/\",\n \"getters\",\n \"setters\",\n \"/^(get|set)(?!(InitialState$|DefaultProps$|ChildContext$)).+$/\",\n \"instance-methods\",\n \"everything-else\",\n \"rendering\",\n ],\n },\n ],\n\n // Prevent usage of `javascript:` URLs\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/sort-default-props.md\n \"react/sort-default-props\": [\n \"error\",\n {\n ignoreCase: true,\n },\n ],\n\n // Disallow unnecessary fragments\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/sort-prop-types.md\n \"react/sort-prop-types\": [\n \"off\",\n {\n callbacksLast: false,\n ignoreCase: true,\n requiredFirst: false,\n sortShapeProp: true,\n },\n ],\n\n // Prevent adjacent inline elements not separated by whitespace\n // TODO: set to \"never\" once @anolilab/babel-preset supports public class fields\n \"react/state-in-constructor\": [\"error\", \"always\"],\n\n // Enforce a specific function type for function components\n // TODO: set to \"static public field\" once @anolilab/babel-preset supports public class fields\n \"react/static-property-placement\": [\"error\", \"property assignment\"],\n\n // Enforce a new line after jsx elements and expressions\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/style-prop-object.md\n \"react/style-prop-object\": \"error\",\n\n // Prevent react contexts from taking non-stable values\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/void-dom-elements-no-children.md\n \"react/void-dom-elements-no-children\": \"error\",\n\n ...global.anolilabEslintConfigReactPrettierRules,\n },\n\n // View link below for react rules documentation\n settings: {\n \"import/resolver\": {\n node: {\n extensions: [\".js\", \".jsx\", \".json\", \".cjs\", \".mjs\"],\n },\n },\n propWrapperFunctions: [\n \"forbidExtraProps\", // https://www.npmjs.com/package/airbnb-prop-types\n \"exact\", // https://www.npmjs.com/package/prop-types-exact\n \"Object.freeze\", // https://tc39.github.io/ecma262/#sec-object.freeze\n ],\n react: {\n // The default value is \"detect\". Automatic detection works by loading the entire React library\n // into the linter's process, which is inefficient. It is recommended to specify the version\n // explicity.\n version: global.anolilabEslintConfigReactVersion ?? \"detect\",\n },\n },\n },\n {\n files: [\"*.jsx\"],\n rules: {\n // only .jsx files may have JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-closing-tag-location.md\n \"react/jsx-closing-tag-location\": \"error\",\n\n // Prevents common casing typos\n // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-filename-extension.md\n \"react/jsx-filename-extension\": \"error\",\n\n // Validate closing tag location in JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/843d71a432baf0f01f598d7cf1eea75ad6896e4b/docs/rules/jsx-wrap-multilines.md\n \"react/jsx-wrap-multilines\": [\n \"error\",\n {\n arrow: \"parens-new-line\",\n assignment: \"parens-new-line\",\n condition: \"parens-new-line\",\n declaration: \"parens-new-line\",\n logical: \"parens-new-line\",\n prop: \"parens-new-line\",\n return: \"parens-new-line\",\n },\n ],\n\n // Prevent missing parentheses around multilines JSX\n // https://github.com/yannickcr/eslint-plugin-react/blob/73abadb697034b5ccb514d79fb4689836fe61f91/docs/rules/no-typos.md\n \"react/no-typos\": \"error\",\n },\n },\n {\n files: [\"*.tsx\"],\n rules: {\n \"react/default-props-match-prop-types\": \"off\",\n // Disable JS specific rules\n \"react/jsx-filename-extension\": \"off\",\n \"react/prop-types\": \"off\",\n \"react/require-default-props\": \"off\",\n },\n },\n {\n // For performance run storybook/recommended on test files, not regular code\n files: [\"**/*.stories.{ts,tsx,mdx}\"],\n rules: {\n \"react/jsx-props-no-spreading\": \"off\",\n }\n },\n ],\n};\n\nexport default config;\n"]}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
require('../../chunk-MFE6DF6Y.js');
|
|
4
4
|
|
|
5
|
-
var e={env:{browser:!0,es6:!0,node:!0},overrides:[{extends:["plugin:storybook/recommended"],files:["**/*.stories.{ts,tsx,mdx}"]}]},
|
|
5
|
+
var e={env:{browser:!0,es6:!0,node:!0},overrides:[{extends:["plugin:storybook/recommended"],files:["**/*.stories.{ts,tsx,mdx}",".storybook/**/*"]}]},o=e;
|
|
6
6
|
|
|
7
|
-
module.exports =
|
|
7
|
+
module.exports = o;
|
|
8
8
|
//# sourceMappingURL=out.js.map
|
|
9
9
|
//# sourceMappingURL=storybook.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/config/plugins/storybook.ts"],"names":["config","storybook_default"],"mappings":"gCAGA,IAAMA,EAAwB,CAC1B,IAAK,CACD,QAAS,GACT,IAAK,GACL,KAAM,EACV,EACA,UAAW,CACP,CACI,QAAS,CAAC,8BAA8B,EAExC,MAAO,CAAC,
|
|
1
|
+
{"version":3,"sources":["../../../src/config/plugins/storybook.ts"],"names":["config","storybook_default"],"mappings":"gCAGA,IAAMA,EAAwB,CAC1B,IAAK,CACD,QAAS,GACT,IAAK,GACL,KAAM,EACV,EACA,UAAW,CACP,CACI,QAAS,CAAC,8BAA8B,EAExC,MAAO,CAAC,4BAA6B,iBAAiB,CAC1D,CACJ,CACJ,EAEOC,EAAQD","sourcesContent":["import type { Linter } from \"eslint\";\n\n// @see https://github.com/storybookjs/eslint-plugin-storybook\nconst config: Linter.Config = {\n env: {\n browser: true,\n es6: true,\n node: true,\n },\n overrides: [\n {\n extends: [\"plugin:storybook/recommended\"],\n // For performance run storybook/recommended on test files, not regular code\n files: [\"**/*.stories.{ts,tsx,mdx}\", \".storybook/**/*\"],\n },\n ],\n};\n\nexport default config;\n"]}
|
|
@@ -6,13 +6,13 @@ var chunkAC2XVGN7_js = require('../../chunk-AC2XVGN7.js');
|
|
|
6
6
|
require('../../chunk-O7JDC6TD.js');
|
|
7
7
|
var chunkOCCLNRZC_js = require('../../chunk-OCCLNRZC.js');
|
|
8
8
|
var chunkX2N7JEGF_js = require('../../chunk-X2N7JEGF.js');
|
|
9
|
-
var
|
|
9
|
+
var chunkS4QC3YVL_js = require('../../chunk-S4QC3YVL.js');
|
|
10
10
|
var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
|
|
11
11
|
require('../../chunk-MFE6DF6Y.js');
|
|
12
12
|
var process = require('process');
|
|
13
13
|
var packageJsonUtils = require('@anolilab/package-json-utils');
|
|
14
14
|
|
|
15
|
-
var t=chunkX2N7JEGF_js.a.overrides[0].rules,y=
|
|
15
|
+
var t=chunkX2N7JEGF_js.a.overrides[0].rules,y=chunkS4QC3YVL_js.a.overrides[0].rules,e=chunkAC2XVGN7_js.a.overrides[0].rules,u=chunkMKL3NIXX_js.a.overrides[0].rules,i=chunkSLM5UENV_js.a.overrides[0].rules,{indent:b,quotes:v,semi:x}=e;global.anolilabEslintConfigTypescriptPrettierRules===void 0&&(packageJsonUtils.hasDependency("prettier")||packageJsonUtils.hasDevDependency("prettier"))&&(global.anolilabEslintConfigTypescriptPrettierRules={"@typescript-eslint/block-spacing":"off","@typescript-eslint/brace-style":"off","@typescript-eslint/comma-dangle":"off","@typescript-eslint/comma-spacing":"off","@typescript-eslint/func-call-spacing":"off","@typescript-eslint/indent":"off","@typescript-eslint/key-spacing":"off","@typescript-eslint/keyword-spacing":"off","@typescript-eslint/lines-around-comment":0,"@typescript-eslint/member-delimiter-style":"off","@typescript-eslint/no-extra-parens":"off","@typescript-eslint/no-extra-semi":"off","@typescript-eslint/object-curly-spacing":"off","@typescript-eslint/quotes":0,"@typescript-eslint/semi":"off","@typescript-eslint/space-before-blocks":"off","@typescript-eslint/space-before-function-paren":"off","@typescript-eslint/space-infix-ops":"off","@typescript-eslint/type-annotation-spacing":"off"});var s=e["comma-dangle"],f=process.env.DISABLE_ESLINT_WARN_UNSUPPORTED_TYPESCRIPT_VERSION!=="true";chunkOCCLNRZC_js.a.warn_on_unsupported_typescript_version!==void 0&&(f=chunkOCCLNRZC_js.a.warn_on_unsupported_typescript_version);var R=chunkWG6GTAIA_js.b([{config:{extends:["plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:@typescript-eslint/strict"],parser:"@typescript-eslint/parser",parserOptions:{ecmaFeatures:{jsx:!0},sourceType:"module",warnOnUnsupportedTypeScriptVersion:f},plugins:["@typescript-eslint"],rules:{"@typescript-eslint/brace-style":e["brace-style"],"@typescript-eslint/naming-convention":["error",{selector:"variable",format:["camelCase","PascalCase","UPPER_CASE"]},{selector:"function",format:["camelCase","PascalCase"]},{selector:"typeLike",format:["PascalCase"]}],"@typescript-eslint/comma-dangle":[s[0],{...s[1],enums:s[1].arrays,generics:s[1].arrays,tuples:s[1].arrays}],"@typescript-eslint/comma-spacing":e["comma-spacing"],"@typescript-eslint/func-call-spacing":e["func-call-spacing"],"@typescript-eslint/indent":b,"@typescript-eslint/keyword-spacing":e["keyword-spacing"],"@typescript-eslint/lines-between-class-members":["error","always",{exceptAfterSingleLine:!1}],"@typescript-eslint/no-array-constructor":e["no-array-constructor"],"@typescript-eslint/no-dupe-class-members":u["no-dupe-class-members"],"@typescript-eslint/no-empty-function":t["no-empty-function"],"@typescript-eslint/no-extra-parens":y["no-extra-parens"],"@typescript-eslint/no-extra-semi":y["no-extra-semi"],"@typescript-eslint/no-loop-func":t["no-loop-func"],"@typescript-eslint/no-magic-numbers":t["no-magic-numbers"],"@typescript-eslint/no-redeclare":t["no-redeclare"],"@typescript-eslint/no-shadow":i["no-shadow"],"@typescript-eslint/no-unused-expressions":t["no-unused-expressions"],"@typescript-eslint/no-unused-vars":i["no-unused-vars"],"@typescript-eslint/no-use-before-define":i["no-use-before-define"],"@typescript-eslint/no-useless-constructor":u["no-useless-constructor"],"@typescript-eslint/quotes":v,"@typescript-eslint/semi":x,"@typescript-eslint/space-before-function-paren":e["space-before-function-paren"],"@typescript-eslint/return-await":t["no-return-await"],"@typescript-eslint/space-infix-ops":e["space-infix-ops"],"@typescript-eslint/consistent-type-imports":"error","@typescript-eslint/adjacent-overload-signatures":"error","@typescript-eslint/member-ordering":["error",{default:["public-static-field","protected-static-field","private-static-field","public-static-method","protected-static-method","private-static-method","public-instance-field","protected-instance-field","private-instance-field","constructor","public-instance-method","protected-instance-method","private-instance-method"]}],"@typescript-eslint/array-type":["error",{default:"array",readonly:"generic"}],"@typescript-eslint/ban-types":["error",{types:{String:{message:"Use string instead",fixWith:"string"},Boolean:{message:"Use boolean instead",fixWith:"boolean"},Number:{message:"Use number instead",fixWith:"number"},Object:{message:"Use object instead",fixWith:"object"},Array:{message:"Provide a more specific type"}}}],"@typescript-eslint/sort-type-constituents":"error","@typescript-eslint/prefer-ts-expect-error":"error","@typescript-eslint/consistent-generic-constructors":"error","@typescript-eslint/explicit-member-accessibility":"error","@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/method-signature-style":"error","@typescript-eslint/no-confusing-non-null-assertion":"error","@typescript-eslint/no-duplicate-enum-values":"error","@typescript-eslint/no-dynamic-delete":"warn","@typescript-eslint/no-extra-non-null-assertion":"error","@typescript-eslint/no-invalid-void-type":"warn","@typescript-eslint/no-misused-new":"error","@typescript-eslint/no-namespace":"error","@typescript-eslint/no-non-null-asserted-nullish-coalescing":"warn","@typescript-eslint/no-non-null-asserted-optional-chain":"error","@typescript-eslint/no-non-null-assertion":"error","@typescript-eslint/no-require-imports":"error","@typescript-eslint/no-this-alias":"error","@typescript-eslint/no-unnecessary-type-assertion":"error","@typescript-eslint/no-unnecessary-type-constraint":"error","@typescript-eslint/no-unsafe-argument":"error","@typescript-eslint/no-unsafe-assignment":"error","@typescript-eslint/no-unsafe-call":"error","@typescript-eslint/no-unsafe-declaration-merging":"error","@typescript-eslint/no-unsafe-member-access":"error","@typescript-eslint/no-unsafe-return":"error","@typescript-eslint/no-useless-empty-export":"error","@typescript-eslint/non-nullable-type-assertion-style":"off","@typescript-eslint/prefer-enum-initializers":"error","@typescript-eslint/prefer-function-type":"error","@typescript-eslint/prefer-nullish-coalescing":"error","@typescript-eslint/prefer-optional-chain":"error","@typescript-eslint/no-import-type-side-effects":"error",...global.anolilabEslintConfigTypescriptPrettierRules}},type:"typescript"}]),U=R;
|
|
16
16
|
|
|
17
17
|
module.exports = U;
|
|
18
18
|
//# sourceMappingURL=out.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { defineConfig, defineFlatConfig } from 'eslint-define-config';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
require('./chunk-MFE6DF6Y.js');
|
|
4
|
+
var eslintDefineConfig = require('eslint-define-config');
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
Object.defineProperty(exports, 'defineConfig', {
|
|
9
|
+
enumerable: true,
|
|
10
|
+
get: function () { return eslintDefineConfig.defineConfig; }
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, 'defineFlatConfig', {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () { return eslintDefineConfig.defineFlatConfig; }
|
|
15
|
+
});
|
|
16
|
+
//# sourceMappingURL=out.js.map
|
|
17
|
+
//# sourceMappingURL=define-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/define-config.ts"],"names":["defineConfig","defineFlatConfig"],"mappings":"4BAAA,OAAS,gBAAAA,EAAc,oBAAAC,MAAwB","sourcesContent":["export { defineConfig, defineFlatConfig } from \"eslint-define-config\";\n"]}
|
package/dist/postinstall.d.ts
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { }
|
|
1
|
+
import 'eslint-define-config';
|
package/dist/postinstall.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/postinstall/write-eslint-ignore.ts","../src/postinstall/write-eslint-rc.ts","../src/postinstall.ts"],"names":["existsSync","writeFile","join","promisify","projectPath","writeFileAsync","writeEslintIgnore","write_eslint_ignore_default","init_write_eslint_ignore","__esmMin","eslintIgnorePath","readFileSync","packageIsTypeModule","configFile","writeEslintRc","write_eslint_rc_default","init_write_eslint_rc","filename","eslintPath","pluginExtends","parserOptions","tsconfigPath","ecmaVersion","tsConfig","content","env","exit","require_postinstall","__commonJSMin","error"],"mappings":"+CAAA,OAAS,cAAAA,EAAY,aAAAC,MAAiB,KACtC,OAAS,QAAAC,MAAY,OACrB,OAAS,aAAAC,MAAiB,OAE1B,OAAS,eAAAC,MAAmB,+BAJ5B,IAMMC,EAEAC,EAaCC,EArBPC,EAAAC,EAAA,kBAMMJ,EAAiBF,EAAUF,CAAS,EAEpCK,EAAoB,SAA2B,CACjD,IAAMI,EAAmBR,EAAKE,EAAa,eAAe,EAG1D,GAAIJ,EAAWU,CAAgB,EAAG,CAC9B,QAAQ,KAAK,4CAAkC,EAE/C,MACJ,CAEA,MAAML,EAAeK,EAAkB,GAAI,MAAM,CACrD,EAEOH,EAAQD,ICrBf,OAAS,cAAAN,EAAY,gBAAAW,EAAc,aAAAV,MAAiB,KACpD,OAAS,QAAAC,MAAY,OACrB,OAAS,aAAAC,MAAiB,OAE1B,OAAS,uBAAAS,EAAqB,eAAAR,MAAmB,+BAJjD,IAOMC,EAIAQ,EAGAC,EAuGCC,EArHPC,EAAAP,EAAA,kBAOMJ,EAAiBF,EAAUF,CAAS,EAE1C,QAAQ,IAAI,sCAAuCG,EAAa;AAAA,CAAI,EAE9DS,EAAa,YAGbC,EAAgB,SAA2B,CAE7C,QAAWG,IAAY,CAACJ,EAAY,GAAGA,CAAU,MAAO,GAAGA,CAAU,OAAQ,GAAGA,CAAU,QAAS,GAAGA,CAAU,QAAS,GAAGA,CAAU,MAAM,EAExI,GAAIb,EAAWE,EAAKE,EAAaa,CAAQ,CAAC,EAAG,CACzC,QAAQ,KAAK,iBAAOA,CAAQ;AAAA;AAAA,gEAEwB,EAEpD,MACJ,CAGJ,IAAMC,EAAahB,EAAKE,EAAa,aAAaQ,EAAsB,IAAM,EAAE,IAAI,EAEhFO,EAAgB,GAChBC,EAAgB;AAAA;AAAA;AAAA,sBAGFR,EAAsB,WAAa,YAAY;AAAA,QAG3DS,EAAenB,EAAKE,EAAa,eAAe,EAElDkB,EAAc,SAGlB,GAAItB,EAAWqB,CAAY,EAAG,CAE1B,IAAME,EAAW,KAAK,MAAMZ,EAAaU,EAAc,MAAM,CAAC,EAE1DE,EAAS,iBAAiB,SAC1BD,EAAcC,EAAS,gBAAgB,OAEvCD,EACIA,EAAY,YAAY,IAAM,UAAYA,EAAY,YAAY,IAAM,SAAW,SAAWA,EAAY,YAAY,EAAE,QAAQ,KAAM,EAAE,EAExIA,IAAgB,UAAYA,IAAgB,QAAUA,IAAgB,QAAUA,IAAgB,MAChGH,EAAgB,gCAAgCG,CAAW,MAInEF,EAAgB;AAAA;AAAA;AAAA,uBAGDE,IAAgB,SAAW,IAAIA,CAAW,IAAMA,CAAW;AAAA,sBAC5DV,EAAsB,WAAa,YAAY;AAAA,OAEjE,CAEA,IAAMY,EAAU;AAAA;AAAA,EAElB,CAAC,SAAU,SAAU,SAAU,SAAU,QAAQ,EAAE,SAASF,CAAW,EAAI;AAAA;AAAA,EAAwE,EAAE;AAAA;AAAA;AAAA,yCAG9GH,CAAa;AAAA;AAAA;AAAA;AAAA;AAAA,QAK9CC,CAAa;AAAA,
|
|
1
|
+
{"version":3,"sources":["../src/postinstall/write-eslint-ignore.ts","../src/postinstall/write-eslint-rc.ts","../src/postinstall.ts"],"names":["existsSync","writeFile","join","promisify","projectPath","writeFileAsync","writeEslintIgnore","write_eslint_ignore_default","init_write_eslint_ignore","__esmMin","eslintIgnorePath","readFileSync","packageIsTypeModule","configFile","writeEslintRc","write_eslint_rc_default","init_write_eslint_rc","filename","eslintPath","pluginExtends","parserOptions","tsconfigPath","ecmaVersion","tsConfig","content","env","exit","require_postinstall","__commonJSMin","error"],"mappings":"+CAAA,OAAS,cAAAA,EAAY,aAAAC,MAAiB,KACtC,OAAS,QAAAC,MAAY,OACrB,OAAS,aAAAC,MAAiB,OAE1B,OAAS,eAAAC,MAAmB,+BAJ5B,IAMMC,EAEAC,EAaCC,EArBPC,EAAAC,EAAA,kBAMMJ,EAAiBF,EAAUF,CAAS,EAEpCK,EAAoB,SAA2B,CACjD,IAAMI,EAAmBR,EAAKE,EAAa,eAAe,EAG1D,GAAIJ,EAAWU,CAAgB,EAAG,CAC9B,QAAQ,KAAK,4CAAkC,EAE/C,MACJ,CAEA,MAAML,EAAeK,EAAkB,GAAI,MAAM,CACrD,EAEOH,EAAQD,ICrBf,OAAS,cAAAN,EAAY,gBAAAW,EAAc,aAAAV,MAAiB,KACpD,OAAS,QAAAC,MAAY,OACrB,OAAS,aAAAC,MAAiB,OAE1B,OAAS,uBAAAS,EAAqB,eAAAR,MAAmB,+BAJjD,IAOMC,EAIAQ,EAGAC,EAuGCC,EArHPC,EAAAP,EAAA,kBAOMJ,EAAiBF,EAAUF,CAAS,EAE1C,QAAQ,IAAI,sCAAuCG,EAAa;AAAA,CAAI,EAE9DS,EAAa,YAGbC,EAAgB,SAA2B,CAE7C,QAAWG,IAAY,CAACJ,EAAY,GAAGA,CAAU,MAAO,GAAGA,CAAU,OAAQ,GAAGA,CAAU,QAAS,GAAGA,CAAU,QAAS,GAAGA,CAAU,MAAM,EAExI,GAAIb,EAAWE,EAAKE,EAAaa,CAAQ,CAAC,EAAG,CACzC,QAAQ,KAAK,iBAAOA,CAAQ;AAAA;AAAA,gEAEwB,EAEpD,MACJ,CAGJ,IAAMC,EAAahB,EAAKE,EAAa,aAAaQ,EAAsB,IAAM,EAAE,IAAI,EAEhFO,EAAgB,GAChBC,EAAgB;AAAA;AAAA;AAAA,sBAGFR,EAAsB,WAAa,YAAY;AAAA,QAG3DS,EAAenB,EAAKE,EAAa,eAAe,EAElDkB,EAAc,SAGlB,GAAItB,EAAWqB,CAAY,EAAG,CAE1B,IAAME,EAAW,KAAK,MAAMZ,EAAaU,EAAc,MAAM,CAAC,EAE1DE,EAAS,iBAAiB,SAC1BD,EAAcC,EAAS,gBAAgB,OAEvCD,EACIA,EAAY,YAAY,IAAM,UAAYA,EAAY,YAAY,IAAM,SAAW,SAAWA,EAAY,YAAY,EAAE,QAAQ,KAAM,EAAE,EAExIA,IAAgB,UAAYA,IAAgB,QAAUA,IAAgB,QAAUA,IAAgB,MAChGH,EAAgB,gCAAgCG,CAAW,MAInEF,EAAgB;AAAA;AAAA;AAAA,uBAGDE,IAAgB,SAAW,IAAIA,CAAW,IAAMA,CAAW;AAAA,sBAC5DV,EAAsB,WAAa,YAAY;AAAA,OAEjE,CAEA,IAAMY,EAAU;AAAA;AAAA,EAElB,CAAC,SAAU,SAAU,SAAU,SAAU,QAAQ,EAAE,SAASF,CAAW,EAAI;AAAA;AAAA,EAAwE,EAAE;AAAA;AAAA;AAAA,yCAG9GH,CAAa;AAAA;AAAA;AAAA;AAAA;AAAA,QAK9CC,CAAa;AAAA,gBAEjB,CAAC,SAAU,SAAU,SAAU,SAAU,QAAQ,EAAE,SAASE,CAAW,EACjE;AAAA,qBAAwBA,IAAgB,SAAW,SAAWA,CAAW,IACzE,EACV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAmCI,MAAMjB,EAAea,EAAYM,EAAS,MAAM,CACpD,EAEOT,EAAQD,ICrHf,OAAS,OAAAW,EAAK,QAAAC,MAAY,UAE1B,OAAS,eAAAtB,MAAmB,+BAF5B,IAAAuB,EAAAC,EAAA,KAIApB,IACAQ,IAEIS,EAAI,IACJC,EAAK,CAAC,EAGV,QAAQ,IAAI,sCAAuCtB,EAAa;AAAA,CAAI,GAGnE,SAAY,CACT,GAAI,CAEA,MAAM,QAAQ,IAAI,CAACW,EAAc,EAAGR,EAAkB,CAAC,CAAC,EAExD,QAAQ,IAAI,4CAAqC,EAEjDmB,EAAK,CAAC,CACV,OAASG,EAAO,CACZ,QAAQ,IAAI,kCAA2B,EACvC,QAAQ,MAAMA,CAAK,EAEnBH,EAAK,CAAC,CACV,CACJ,GAAG","sourcesContent":["import { existsSync, writeFile } from \"node:fs\";\nimport { join } from \"node:path\";\nimport { promisify } from \"node:util\";\n\nimport { projectPath } from \"@anolilab/package-json-utils\";\n\nconst writeFileAsync = promisify(writeFile);\n\nconst writeEslintIgnore = async (): Promise<void> => {\n const eslintIgnorePath = join(projectPath, \".eslintignore\");\n\n // eslint-disable-next-line security/detect-non-literal-fs-filename\n if (existsSync(eslintIgnorePath)) {\n console.warn(\"⚠️ .eslintignore already exists\");\n\n return;\n }\n\n await writeFileAsync(eslintIgnorePath, \"\", \"utf8\");\n};\n\nexport default writeEslintIgnore;\n","import { existsSync, readFileSync, writeFile } from \"node:fs\";\nimport { join } from \"node:path\";\nimport { promisify } from \"node:util\";\n\nimport { packageIsTypeModule, projectPath } from \"@anolilab/package-json-utils\";\nimport type { TsConfigJson } from \"type-fest\";\n\nconst writeFileAsync = promisify(writeFile);\n\nconsole.log(\"Configuring @anolilab/eslint-config\", projectPath, \"\\n\");\n\nconst configFile = \".eslintrc\";\n\n// eslint-disable-next-line sonarjs/cognitive-complexity\nconst writeEslintRc = async (): Promise<void> => {\n // eslint-disable-next-line no-restricted-syntax,no-loops/no-loops\n for (const filename of [configFile, `${configFile}.js`, `${configFile}.cjs`, `${configFile}.json`, `${configFile}.yaml`, `${configFile}.yml`]) {\n // eslint-disable-next-line security/detect-non-literal-fs-filename\n if (existsSync(join(projectPath, filename))) {\n console.warn(`⚠️ ${filename} already exists;\nMake sure that it includes the following for @anolilab/eslint-config'\nto work as it should: { extends: [\"@anolilab/eslint-config\"] }.`);\n\n return;\n }\n }\n\n const eslintPath = join(projectPath, `.eslintrc.${packageIsTypeModule ? \"c\" : \"\"}js`);\n\n let pluginExtends = \"\";\n let parserOptions = `\n parserOptions: {\n ecmaVersion: \"latest\",\n sourceType: ${packageIsTypeModule ? '\"module\"' : '\"commonjs\"'},\n },`;\n\n const tsconfigPath = join(projectPath, \"tsconfig.json\");\n\n let ecmaVersion = \"latest\";\n\n // eslint-disable-next-line security/detect-non-literal-fs-filename\n if (existsSync(tsconfigPath)) {\n // eslint-disable-next-line security/detect-non-literal-fs-filename\n const tsConfig = JSON.parse(readFileSync(tsconfigPath, \"utf8\")) as TsConfigJson;\n\n if (tsConfig.compilerOptions?.target) {\n ecmaVersion = tsConfig.compilerOptions.target;\n\n ecmaVersion =\n ecmaVersion.toLowerCase() === \"es2022\" || ecmaVersion.toLowerCase() === \"esnext\" ? \"latest\" : ecmaVersion.toLowerCase().replace(\"es\", \"\");\n\n if (ecmaVersion !== \"latest\" && ecmaVersion !== \"2022\" && ecmaVersion !== \"2021\" && ecmaVersion !== \"6\") {\n pluginExtends = `, \"plugin:es-x/restrict-to-es${ecmaVersion}\"`;\n }\n }\n\n parserOptions = `\n parserOptions: {\n project: true,\n ecmaVersion: ${ecmaVersion === \"latest\" ? `\"${ecmaVersion}\"` : ecmaVersion},\n sourceType: ${packageIsTypeModule ? '\"module\"' : '\"commonjs\"'},\n },`;\n }\n\n const content = `/** @ts-check */\nconst { defineConfig } = require('@anolilab/eslint-config/define-config');\n${[\"es2015\", \"es2017\", \"es2020\", \"es2021\", \"latest\"].includes(ecmaVersion) ? 'const { globals } = require(\"@anolilab/eslint-config/globals\");\\n\\n' : \"\"}\nmodule.exports = defineConfig({\n root: true,\n extends: [\"@anolilab/eslint-config\"${pluginExtends}],\n ignorePatterns: [\"!**/*\"],\n env: {\n // Your environments (which contains several predefined global variables)\n // Most environments are loaded automatically if our rules are added\n },${parserOptions}\n globals: {${\n [\"es2015\", \"es2017\", \"es2020\", \"es2021\", \"latest\"].includes(ecmaVersion)\n ? `\\n ...globals.${ecmaVersion === \"latest\" ? \"es2021\" : ecmaVersion},`\n : \"\"\n}\n // Your global variables (setting to false means it's not allowed to be reassigned)\n // myGlobal: false\n },\n rules: {\n // Customize your rules\n },\n overrides: [\n {\n files: [\n \"*.ts\",\n \"*.tsx\",\n \"*.mts\",\n \"*.cts\",\n \"*.js\",\n \"*.jsx\",\n ],\n // Set parserOptions.project for the project to allow TypeScript to create the type-checker behind the scenes when we run linting\n parserOptions: {},\n rules: {},\n },\n {\n files: [\"*.ts\", \"*.tsx\", \"*.mts\", \"*.cts\"],\n // Set parserOptions.project for the project to allow TypeScript to create the type-checker behind the scenes when we run linting\n parserOptions: {},\n rules: {},\n },\n {\n files: [\"*.js\", \"*.jsx\"],\n rules: {},\n },\n ],\n});\n`;\n\n await writeFileAsync(eslintPath, content, \"utf8\");\n};\n\nexport default writeEslintRc;\n","import { env, exit } from \"node:process\";\n\nimport { projectPath } from \"@anolilab/package-json-utils\";\n\nimport writeEslintIgnore from \"./postinstall/write-eslint-ignore\";\nimport writeEslintRc from \"./postinstall/write-eslint-rc\";\n\nif (env[\"CI\"]) {\n exit(0);\n}\n\nconsole.log(\"Configuring @anolilab/eslint-config\", projectPath, \"\\n\");\n\n// eslint-disable-next-line unicorn/prefer-top-level-await\n(async () => {\n try {\n // eslint-disable-next-line compat/compat\n await Promise.all([writeEslintRc(), writeEslintIgnore()]);\n\n console.log(\"😎 Everything went well, have fun!\");\n\n exit(0);\n } catch (error) {\n console.log(\"😬 something went wrong:\");\n console.error(error);\n\n exit(1);\n }\n})();\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@anolilab/eslint-config",
|
|
3
|
-
"version": "14.0.
|
|
3
|
+
"version": "14.0.4",
|
|
4
4
|
"description": "ESLint shareable config for the Anolilab JavaScript style guide.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"anolilab",
|
|
@@ -123,19 +123,21 @@
|
|
|
123
123
|
"build": "cross-env NODE_ENV=development tsup",
|
|
124
124
|
"build:prod": "cross-env NODE_ENV=production tsup",
|
|
125
125
|
"clean": "rimraf node_modules dist",
|
|
126
|
-
"postinstall": "node ./skip.js || node ./dist/postinstall.js"
|
|
126
|
+
"postinstall": "node ./skip.js || node ./dist/postinstall.js",
|
|
127
|
+
"test": "vitest --config ./vitest.config.ts",
|
|
128
|
+
"test:coverage": "vitest --config ./vitest.config.ts --run --coverage"
|
|
127
129
|
},
|
|
128
130
|
"dependencies": {
|
|
129
|
-
"@anolilab/package-json-utils": "3.0.
|
|
131
|
+
"@anolilab/package-json-utils": "3.0.6",
|
|
130
132
|
"@babel/eslint-parser": "^7.22.15",
|
|
131
133
|
"@babel/plugin-syntax-import-assertions": "^7.22.5",
|
|
132
|
-
"@eslint/js": "^8.
|
|
134
|
+
"@eslint/js": "^8.50.0",
|
|
133
135
|
"@html-eslint/eslint-plugin": "^0.19.1",
|
|
134
136
|
"@html-eslint/parser": "^0.19.1",
|
|
135
137
|
"@rushstack/eslint-patch": "^1.4.0",
|
|
136
138
|
"@rushstack/eslint-plugin-security": "^0.7.0",
|
|
137
|
-
"@typescript-eslint/eslint-plugin": ">=6.7.
|
|
138
|
-
"@typescript-eslint/parser": "^6.7.
|
|
139
|
+
"@typescript-eslint/eslint-plugin": ">=6.7.3",
|
|
140
|
+
"@typescript-eslint/parser": "^6.7.3",
|
|
139
141
|
"confusing-browser-globals": "^1.0.11",
|
|
140
142
|
"eslint-define-config": "^1.23.0",
|
|
141
143
|
"eslint-import-resolver-node": "^0.3.9",
|
|
@@ -171,14 +173,14 @@
|
|
|
171
173
|
"yaml-eslint-parser": "^1.2.2"
|
|
172
174
|
},
|
|
173
175
|
"devDependencies": {
|
|
174
|
-
"@anolilab/semantic-release-preset": "7.0.
|
|
176
|
+
"@anolilab/semantic-release-preset": "7.0.3",
|
|
175
177
|
"@arthurgeron/eslint-plugin-react-usememo": "^2.0.1",
|
|
176
178
|
"@testing-library/dom": "^9.3.3",
|
|
177
179
|
"@total-typescript/ts-reset": "^0.5.1",
|
|
178
180
|
"@types/confusing-browser-globals": "^1.0.1",
|
|
179
|
-
"@types/eslint": "^8.44.
|
|
180
|
-
"@types/semver": "^7.5.
|
|
181
|
-
"eslint": "^8.
|
|
181
|
+
"@types/eslint": "^8.44.3",
|
|
182
|
+
"@types/semver": "^7.5.3",
|
|
183
|
+
"eslint": "^8.50.0",
|
|
182
184
|
"eslint-find-rules": "^4.1.0",
|
|
183
185
|
"eslint-plugin-babel": "^5.3.1",
|
|
184
186
|
"eslint-plugin-cypress": "^2.15.1",
|
|
@@ -199,7 +201,7 @@
|
|
|
199
201
|
"eslint-plugin-ssr-friendly": "^1.2.0",
|
|
200
202
|
"eslint-plugin-storybook": "^0.6.14",
|
|
201
203
|
"eslint-plugin-tailwindcss": "^3.13.0",
|
|
202
|
-
"eslint-plugin-testing-library": "^6.0.
|
|
204
|
+
"eslint-plugin-testing-library": "^6.0.2",
|
|
203
205
|
"eslint-plugin-validate-jsx-nesting": "^0.1.1",
|
|
204
206
|
"eslint-plugin-vitest": "^0.3.1",
|
|
205
207
|
"eslint-plugin-you-dont-need-lodash-underscore": "^6.13.0",
|
|
@@ -207,7 +209,7 @@
|
|
|
207
209
|
"eslint-plugin-zod": "^1.4.0",
|
|
208
210
|
"jest": "^29.7.0",
|
|
209
211
|
"react": "^18.2.0",
|
|
210
|
-
"rimraf": "^5.0.
|
|
212
|
+
"rimraf": "^5.0.2",
|
|
211
213
|
"semantic-release": "^21.1.2",
|
|
212
214
|
"tsup": "^7.2.0",
|
|
213
215
|
"type-fest": "^4.3.1",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/config/errors.ts"],"names":["config","createConfigs","errors_default"],"mappings":"wCAIA,IAAMA,EAAwBC,EAAc,CACxC,CACI,OAAQ,CACJ,MAAO,CAGH,gBAAiB,QAIjB,gBAAiB,CAAC,QAAS,CAAE,cAAe,EAAK,CAAC,EAIlD,4BAA6B,QAI7B,mBAAoB,QAIpB,sBAAuB,QAGvB,iBAAkB,CAAC,QAAS,QAAQ,EAGpC,aAAc,OAGd,wBAAyB,OAGzB,mBAAoB,QAGpB,cAAe,QAGf,eAAgB,QAIhB,kBAAmB,QAGnB,eAAgB,QAGhB,oBAAqB,QAGrB,WAAY,QAGZ,2BAA4B,QAG5B,eAAgB,QAIhB,wBAAyB,QAIzB,kBAAmB,CACf,QACA,MACA,CACI,kBAAmB,GACnB,4BAA6B,GAC7B,UAAW,MACX,wBAAyB,GACzB,aAAc,EAClB,CACJ,EAIA,gBAAiB,QAGjB,iBAAkB,QAGlB,mBAAoB,QAGpB,wBAAyB,QAGzB,oBAAqB,QAGrB,0BAA2B,QAI3B,uBAAwB,QAIxB,gCAAiC,QAGjC,oBAAqB,MAIrB,eAAgB,QAIhB,6BAA8B,QAG9B,wBAAyB,QAIzB,kBAAmB,QAGnB,mBAAoB,QAIpB,mBAAoB,QAIpB,8BAA+B,QAG/B,0BAA2B,QAI3B,iBAAkB,QAIlB,sBAAuB,MAIvB,oBAAqB,QAIrB,qBAAsB,QAItB,8BAA+B,CAAC,QAAS,CAAE,4BAA6B,EAAK,CAAC,EAI9E,2BAA4B,QAK5B,yBAA0B,MAG1B,YAAa,QAIb,cAAe,MAIf,eAAgB,CAAC,QAAS,CAAE,sBAAuB,EAAK,CAAC,CAC7D,CACJ,EACA,KAAM,KACV,EAGA,CACI,OAAQ,CACJ,MAAO,CACH,gBAAiB,MAGjB,eAAgB,MAGhB,eAAgB,MAIhB,kBAAmB,MAGnB,iBAAkB,MAGlB,eAAgB,MAGhB,iBAAkB,MAGlB,qBAAsB,MAItB,kBAAmB,MAEnB,eAAgB,MAEhB,gBAAiB,KACrB,CACJ,EACA,KAAM,YACV,CACJ,CAAC,EAEMC,EAAQF","sourcesContent":["import type { Linter } from \"eslint\";\n\nimport { createConfigs } from \"../utils/create-config\";\n\nconst config: Linter.Config = createConfigs([\n {\n config: {\n rules: {\n // Enforce “for” loop update clause moving the counter in the right direction\n // https://eslint.org/docs/rules/for-direction\n \"for-direction\": \"error\",\n\n // Enforces that a return statement is present in property getters\n // https://eslint.org/docs/rules/getter-return\n \"getter-return\": [\"error\", { allowImplicit: true }],\n\n // disallow using an async function as a Promise executor\n // https://eslint.org/docs/rules/no-async-promise-executor\n \"no-async-promise-executor\": \"error\",\n\n // Disallow await inside of loops\n // https://eslint.org/docs/rules/no-await-in-loop\n \"no-await-in-loop\": \"error\",\n\n // Disallow comparisons to negative zero\n // https://eslint.org/docs/rules/no-compare-neg-zero\n \"no-compare-neg-zero\": \"error\",\n\n // disallow assignment in conditional expressions\n \"no-cond-assign\": [\"error\", \"always\"],\n\n // disallow use of console\n \"no-console\": \"warn\",\n\n // disallow use of constant expressions in conditions\n \"no-constant-condition\": \"warn\",\n\n // disallow control characters in regular expressions\n \"no-control-regex\": \"error\",\n\n // disallow use of debugger\n \"no-debugger\": \"error\",\n\n // disallow duplicate arguments in functions\n \"no-dupe-args\": \"error\",\n\n // Disallow duplicate conditions in if-else-if chains\n // https://eslint.org/docs/rules/no-dupe-else-if\n \"no-dupe-else-if\": \"error\",\n\n // disallow duplicate keys when creating object literals\n \"no-dupe-keys\": \"error\",\n\n // disallow a duplicate case label.\n \"no-duplicate-case\": \"error\",\n\n // disallow empty statements\n \"no-empty\": \"error\",\n\n // disallow the use of empty character classes in regular expressions\n \"no-empty-character-class\": \"error\",\n\n // disallow assigning to the exception in a catch block\n \"no-ex-assign\": \"error\",\n\n // disallow double-negation boolean casts in a boolean context\n // https://eslint.org/docs/rules/no-extra-boolean-cast\n \"no-extra-boolean-cast\": \"error\",\n\n // disallow unnecessary parentheses\n // https://eslint.org/docs/rules/no-extra-parens\n \"no-extra-parens\": [\n \"error\",\n \"all\",\n {\n conditionalAssign: true,\n enforceForArrowConditionals: false,\n ignoreJSX: \"all\", // delegate to eslint-plugin-react\n nestedBinaryExpressions: false,\n returnAssign: false,\n },\n ],\n\n // Disallow non-null assertion in locations that may be confusing.\n // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-extra-semi.md\n \"no-extra-semi\": \"error\",\n\n // disallow overwriting functions written as function declarations\n \"no-func-assign\": \"error\",\n\n // https://eslint.org/docs/rules/no-import-assign\n \"no-import-assign\": \"error\",\n\n // disallow function or variable declarations in nested blocks\n \"no-inner-declarations\": \"error\",\n\n // disallow invalid regular expression strings in the RegExp constructor\n \"no-invalid-regexp\": \"error\",\n\n // disallow irregular whitespace outside of strings and comments\n \"no-irregular-whitespace\": \"error\",\n\n // Disallow Number Literals That Lose Precision\n // https://eslint.org/docs/rules/no-loss-of-precision\n \"no-loss-of-precision\": \"error\",\n\n // Disallow characters which are made with multiple code points in character class syntax\n // https://eslint.org/docs/rules/no-misleading-character-class\n \"no-misleading-character-class\": \"error\",\n\n // deprecated in favor of no-unsafe-negation\n \"no-negated-in-lhs\": \"off\",\n\n // Disallow returning values from Promise executor functions\n // disallow the use of object properties of the global object (Math and JSON) as functions\n \"no-obj-calls\": \"error\",\n\n // disallow use of Object.prototypes builtins directly\n // https://eslint.org/docs/rules/no-promise-executor-return\n \"no-promise-executor-return\": \"error\",\n\n // https://eslint.org/docs/rules/no-prototype-builtins\n \"no-prototype-builtins\": \"error\",\n\n // Disallow returning values from setters\n // disallow multiple spaces in a regular expression literal\n \"no-regex-spaces\": \"error\",\n\n // https://eslint.org/docs/rules/no-setter-return\n \"no-setter-return\": \"error\",\n\n // Disallow template literal placeholder syntax in regular strings\n // disallow sparse arrays\n \"no-sparse-arrays\": \"error\",\n\n // Avoid code that looks like two expressions but is actually one\n // https://eslint.org/docs/rules/no-template-curly-in-string\n \"no-template-curly-in-string\": \"error\",\n\n // https://eslint.org/docs/rules/no-unexpected-multiline\n \"no-unexpected-multiline\": \"error\",\n\n // Disallow loops with a body that allows only one iteration\n // disallow unreachable statements after a return, throw, continue, or break statement\n \"no-unreachable\": \"error\",\n\n // disallow return/throw/break/continue inside finally blocks\n // https://eslint.org/docs/rules/no-unreachable-loop\n \"no-unreachable-loop\": \"off\", // error with typescript\n\n // disallow negating the left operand of relational operators\n // https://eslint.org/docs/rules/no-unsafe-finally\n \"no-unsafe-finally\": \"error\",\n\n // disallow use of optional chaining in contexts where the undefined value is not allowed\n // https://eslint.org/docs/rules/no-unsafe-negation\n \"no-unsafe-negation\": \"error\",\n\n // Disallow useless backreferences in regular expressions\n // https://eslint.org/docs/rules/no-unsafe-optional-chaining\n \"no-unsafe-optional-chaining\": [\"error\", { disallowArithmeticOperators: true }],\n\n // disallow negation of the left operand of an in expression\n // https://eslint.org/docs/rules/no-useless-backreference\n \"no-useless-backreference\": \"error\",\n\n // Disallow assignments that can lead to race conditions due to usage of await or yield\n // https://eslint.org/docs/rules/require-atomic-updates\n // note: not enabled because it is very buggy\n \"require-atomic-updates\": \"off\",\n\n // disallow comparisons with the value NaN\n \"use-isnan\": \"error\",\n\n // ensure JSDoc comments are valid\n // https://eslint.org/docs/rules/valid-jsdoc\n \"valid-jsdoc\": \"off\",\n\n // ensure that the results of typeof are compared against a valid string\n // https://eslint.org/docs/rules/valid-typeof\n \"valid-typeof\": [\"error\", { requireStringLiterals: true }],\n },\n },\n type: \"all\",\n },\n // The following rules are enabled in config, but are already checked (more thoroughly) by the TypeScript compiler\n // Some rules also fail in TypeScript files, for example: https://github.com/typescript-eslint/typescript-eslint/issues/662#issuecomment-507081586\n {\n config: {\n rules: {\n \"getter-return\": \"off\",\n\n // Enforce using @ts-expect-error over @ts-ignore.\n \"no-dupe-args\": \"off\",\n\n // Require explicit accessibility modifiers on class properties and methods.\n \"no-dupe-keys\": \"off\",\n\n // Enforce using a particular method signature syntax.\n // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-extra-parens.md\n \"no-extra-parens\": \"off\",\n\n // Disallow duplicate enum member values.\n \"no-func-assign\": \"off\",\n\n // Disallow non-null assertions in the left operand of a nullish coalescing operator.\n \"no-obj-calls\": \"off\",\n\n // Disallow calling a function with a value with type any.\n \"no-unreachable\": \"off\",\n\n // Disallow assigning a value with type any to variables and properties.\n \"no-unsafe-negation\": \"off\",\n\n // Enforce using the nullish coalescing operator instead of logical chaining.\n // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/space-infix-ops.md\n \"space-infix-ops\": \"off\",\n\n \"valid-typeof\": \"off\",\n\n \"no-extra-semi\": \"off\",\n },\n },\n type: \"typescript\",\n },\n]);\n\nexport default config;\n"]}
|