@anolilab/eslint-config 10.0.5 → 11.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/{chunk-JN7GUCON.js → chunk-CATTWGKB.js} +3 -3
  3. package/dist/{chunk-EDPRRFFD.js → chunk-UXEQWB3K.js} +3 -3
  4. package/dist/{chunk-TYZCRPVH.js → chunk-WG6GTAIA.js} +2 -2
  5. package/dist/chunk-WG6GTAIA.js.map +1 -0
  6. package/dist/config/errors.js +3 -3
  7. package/dist/config/plugins/antfu.js +2 -2
  8. package/dist/config/plugins/array-func.js +2 -2
  9. package/dist/config/plugins/babel.js +4 -4
  10. package/dist/config/plugins/es.js +2 -2
  11. package/dist/config/plugins/eslint-comments.js +2 -2
  12. package/dist/config/plugins/etc.js +2 -2
  13. package/dist/config/plugins/import.js +2 -2
  14. package/dist/config/plugins/markdown.js +2 -2
  15. package/dist/config/plugins/mdx.js +2 -2
  16. package/dist/config/plugins/perfectionist.js +2 -2
  17. package/dist/config/plugins/react-hooks.js +2 -2
  18. package/dist/config/plugins/react-redux.js +2 -2
  19. package/dist/config/plugins/react-usememo.js +2 -2
  20. package/dist/config/plugins/react.js +4 -4
  21. package/dist/config/plugins/react.js.map +1 -1
  22. package/dist/config/plugins/regexp.js +2 -2
  23. package/dist/config/plugins/simple-import-sort.js +2 -2
  24. package/dist/config/plugins/sonarjs.js +2 -2
  25. package/dist/config/plugins/tailwindcss.js +2 -2
  26. package/dist/config/plugins/tanstack-query.js +2 -2
  27. package/dist/config/plugins/testing-library-dom.js +2 -2
  28. package/dist/config/plugins/testing-library-react.js +2 -2
  29. package/dist/config/plugins/tsdoc.js +2 -2
  30. package/dist/config/plugins/typescript.js +4 -4
  31. package/dist/config/plugins/you-dont-need-lodash-underscore.js +2 -2
  32. package/dist/config/plugins/you-dont-need-momentjs.js +2 -2
  33. package/dist/config/plugins/zod.js +2 -2
  34. package/dist/config/style.js +3 -3
  35. package/dist/typescript-type-checking.js +2 -2
  36. package/package.json +1 -1
  37. package/dist/chunk-TYZCRPVH.js.map +0 -1
  38. /package/dist/{chunk-JN7GUCON.js.map → chunk-CATTWGKB.js.map} +0 -0
  39. /package/dist/{chunk-EDPRRFFD.js.map → chunk-UXEQWB3K.js.map} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,3 +1,22 @@
1
+ ## @anolilab/eslint-config [11.0.0](https://github.com/anolilab/javascript-style-guide/compare/@anolilab/eslint-config@10.0.6...@anolilab/eslint-config@11.0.0) (2023-07-27)
2
+
3
+
4
+ ### ⚠ BREAKING CHANGES
5
+
6
+ * Updated the rule 'react/require-default-props' in react.ts to enforce a 'defaultProps' definition for every property that is not marked as required. This change aims to use types from typescript.
7
+ Signed-off-by: prisis <d.bannert@anolilab.de>
8
+
9
+ ### Features
10
+
11
+ * Enforce defaultProp definitions for js and defaultArguments for ts files on non-required props ([c1fa64d](https://github.com/anolilab/javascript-style-guide/commit/c1fa64d46265c8d33864cefed31f57a671e87a63))
12
+
13
+ ## @anolilab/eslint-config [10.0.6](https://github.com/anolilab/javascript-style-guide/compare/@anolilab/eslint-config@10.0.5...@anolilab/eslint-config@10.0.6) (2023-07-26)
14
+
15
+
16
+ ### Bug Fixes
17
+
18
+ * Update postcss config file extensions ([1c2bb1d](https://github.com/anolilab/javascript-style-guide/commit/1c2bb1d03a6505d8cf73d77eb40332eea140db62))
19
+
1
20
  ## @anolilab/eslint-config [10.0.5](https://github.com/anolilab/javascript-style-guide/compare/@anolilab/eslint-config@10.0.4...@anolilab/eslint-config@10.0.5) (2023-07-26)
2
21
 
3
22
 
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkO7JDC6TD_js = require('./chunk-O7JDC6TD.js');
4
- var chunkTYZCRPVH_js = require('./chunk-TYZCRPVH.js');
4
+ var chunkWG6GTAIA_js = require('./chunk-WG6GTAIA.js');
5
5
  var packageJsonUtils = require('@anolilab/package-json-utils');
6
6
 
7
- !global.hasAnolilabEsLintConfigPrettier&&(packageJsonUtils.hasDependency("prettier")||packageJsonUtils.hasDevDependency("prettier"))&&(global.hasAnolilabEsLintConfigPrettier=!0);var o={};global.hasAnolilabEsLintConfigPrettier&&(o={"array-bracket-newline":"off","array-bracket-spacing":"off","array-element-newline":"off","arrow-parens":"off","arrow-spacing":"off","block-spacing":"off","brace-style":"off","comma-dangle":"off","comma-spacing":"off","comma-style":"off","computed-property-spacing":"off",curly:0,"dot-location":"off","eol-last":"off","func-call-spacing":"off","function-call-argument-newline":"off","function-paren-newline":"off","generator-star-spacing":"off","implicit-arrow-linebreak":"off",indent:"off","jsx-quotes":"off","key-spacing":"off","keyword-spacing":"off","linebreak-style":"off","lines-around-comment":0,"max-len":0,"multiline-ternary":"off","new-parens":"off","newline-per-chained-call":"off","no-confusing-arrow":0,"no-extra-parens":"off","no-extra-semi":"off","no-floating-decimal":"off","no-mixed-operators":0,"no-mixed-spaces-and-tabs":"off","no-multi-spaces":"off","no-multiple-empty-lines":"off","no-tabs":0,"no-trailing-spaces":"off","no-unexpected-multiline":0,"no-whitespace-before-property":"off","nonblock-statement-body-position":"off","object-curly-newline":"off","object-curly-spacing":"off","object-property-newline":"off","one-var-declaration-per-line":"off","operator-linebreak":"off","padded-blocks":"off","quote-props":"off",quotes:0,"rest-spread-spacing":"off",semi:"off","semi-spacing":"off","semi-style":"off","space-before-blocks":"off","space-before-function-paren":"off","space-in-parens":"off","space-infix-ops":"off","space-unary-ops":"off","switch-colon-spacing":"off","template-curly-spacing":"off","template-tag-spacing":"off","unicode-bom":"off","wrap-iife":"off","wrap-regex":"off","yield-star-spacing":"off"});var a=chunkTYZCRPVH_js.b([{config:{rules:{"array-bracket-newline":"off","array-bracket-spacing":["error","never"],"array-element-newline":"off","block-spacing":["error","always"],"brace-style":["error","1tbs",{allowSingleLine:!0}],camelcase:["error",{ignoreDestructuring:!1,properties:"never"}],"capitalized-comments":["off","never",{block:{ignoreConsecutiveComments:!0,ignoreInlineComments:!0,ignorePattern:".*"},line:{ignoreConsecutiveComments:!0,ignoreInlineComments:!0,ignorePattern:".*"}}],"comma-dangle":["error",{arrays:"always-multiline",exports:"always-multiline",functions:"always-multiline",imports:"always-multiline",objects:"always-multiline"}],"comma-spacing":["error",{after:!0,before:!1}],"comma-style":["error","last",{exceptions:{ArrayExpression:!1,ArrayPattern:!1,ArrowFunctionExpression:!1,CallExpression:!1,FunctionDeclaration:!1,FunctionExpression:!1,ImportDeclaration:!1,NewExpression:!1,ObjectExpression:!1,ObjectPattern:!1,VariableDeclaration:!1}}],"computed-property-spacing":["error","never"],"consistent-this":"off","default-param-last":["error"],"eol-last":["error","always"],"func-call-spacing":["error","never"],"func-name-matching":["off","always",{considerPropertyDescriptor:!0,includeCommonJSModuleExports:!1}],"func-names":["error","as-needed"],"func-style":["error","expression"],"function-call-argument-newline":["error","consistent"],"function-paren-newline":["error","consistent"],"id-blacklist":"error","id-denylist":"off","id-length":"off","id-match":"off","implicit-arrow-linebreak":["error","beside"],indent:["error",chunkO7JDC6TD_js.a,{ArrayExpression:1,CallExpression:{arguments:1},FunctionDeclaration:{body:1,parameters:1},FunctionExpression:{body:1,parameters:1},ImportDeclaration:1,ObjectExpression:1,SwitchCase:1,VariableDeclarator:1,flatTernaryExpressions:!1,ignoreComments:!1,ignoredNodes:["JSXElement","JSXElement > *","JSXAttribute","JSXIdentifier","JSXNamespacedName","JSXMemberExpression","JSXSpreadAttribute","JSXExpressionContainer","JSXOpeningElement","JSXClosingElement","JSXFragment","JSXOpeningFragment","JSXClosingFragment","JSXText","JSXEmptyExpression","JSXSpreadChild"],outerIIFEBody:1}],"jsx-quotes":["off","prefer-double"],"key-spacing":["error",{afterColon:!0,beforeColon:!1}],"keyword-spacing":["error",{after:!0,before:!0,overrides:{case:{after:!0},return:{after:!0},throw:{after:!0}}}],"line-comment-position":"off","linebreak-style":["error","unix"],"lines-around-comment":"off","lines-around-directive":["error",{after:"always",before:"always"}],"max-depth":["off",4],"max-len":["error",160,2,{ignoreComments:!1,ignoreRegExpLiterals:!0,ignoreStrings:!0,ignoreTemplateLiterals:!0,ignoreUrls:!0}],"max-lines":["off",{max:300,skipBlankLines:!0,skipComments:!0}],"max-lines-per-function":["off",{IIFEs:!0,max:50,skipBlankLines:!0,skipComments:!0}],"max-nested-callbacks":"off","max-params":["off",3],"max-statements":["off",10],"max-statements-per-line":["off",{max:1}],"multiline-comment-style":["off","starred-block"],"multiline-ternary":["off","never"],"new-cap":["error",{capIsNew:!1,capIsNewExceptions:["Immutable.Map","Immutable.Set","Immutable.List"],newIsCap:!0,newIsCapExceptions:[]}],"new-parens":"error","newline-after-var":"off","newline-before-return":"off","newline-per-chained-call":["error",{ignoreChainWithDepth:4}],"no-array-constructor":"error","no-bitwise":"error","no-continue":"error","no-inline-comments":"off","no-lonely-if":"error","no-mixed-operators":["error",{allowSamePrecedence:!1,groups:[["%","**"],["%","+"],["%","-"],["%","*"],["%","/"],["/","*"],["&","|","<<",">>",">>>"],["==","!=","===","!=="],["&&","||"],["in","instanceof"]]}],"no-mixed-spaces-and-tabs":"error","no-multi-assign":["error"],"no-multiple-empty-lines":["error",{max:1,maxBOF:0,maxEOF:0}],"no-negated-condition":"off","no-nested-ternary":"error","no-new-object":"error","no-plusplus":"error","no-restricted-syntax":["error",{message:"for..in loops iterate over the entire prototype chain, which is virtually never what you want. Use Object.{keys,values,entries}, and iterate over the resulting array.",selector:"ForInStatement"},{message:"iterators/generators require regenerator-runtime, which is too heavyweight for this guide to allow them. Separately, loops should be avoided in favor of array iterations.",selector:"ForOfStatement"},{message:"Labels are a form of GOTO; using them makes code confusing and hard to maintain and understand.",selector:"LabeledStatement"},{message:"`with` is disallowed in strict mode because it makes code impossible to predict and optimize.",selector:"WithStatement"},{message:"`useMemo` with an empty dependency array can't provide a stable reference, use `useRef` instead.",selector:"CallExpression[callee.name=useMemo][arguments.1.type=ArrayExpression][arguments.1.elements.length=0]"},{message:"Use `.key` instead of `.keyCode`",selector:"MemberExpression > .property[type=Identifier][name=keyCode]"}],"no-spaced-func":"off","no-tabs":"error","no-ternary":"off","no-trailing-spaces":["error",{ignoreComments:!1,skipBlankLines:!1}],"no-underscore-dangle":["error",{allow:["__DEV__","__STORYBOOK_CLIENT_API__","__STORYBOOK_ADDONS_CHANNEL__","__STORYBOOK_STORY_STORE__"],allowAfterSuper:!1,allowAfterThis:!1,enforceInMethodNames:!0}],"no-unneeded-ternary":["error",{defaultAssignment:!1}],"no-whitespace-before-property":"error","nonblock-statement-body-position":["error","beside",{overrides:{}}],"object-curly-newline":["error",{ExportDeclaration:{consistent:!0,minProperties:4,multiline:!0},ImportDeclaration:{consistent:!0,minProperties:4,multiline:!0},ObjectExpression:{consistent:!0,minProperties:4,multiline:!0},ObjectPattern:{consistent:!0,minProperties:4,multiline:!0}}],"object-curly-spacing":["error","always"],"object-property-newline":["error",{allowAllPropertiesOnSameLine:!0}],"one-var":["error","never"],"one-var-declaration-per-line":["error","always"],"operator-assignment":["error","always"],"operator-linebreak":["error","before",{overrides:{"=":"none"}}],"padded-blocks":["error",{blocks:"never",classes:"never",switches:"never"},{allowSingleLineBlocks:!0}],"padding-line-between-statements":"off","prefer-exponentiation-operator":"error","prefer-object-spread":"error","quote-props":["error","as-needed",{keywords:!1,numbers:!1,unnecessary:!0}],quotes:["error","double",{avoidEscape:!0}],"require-jsdoc":"off",semi:["error","always"],"semi-spacing":["error",{after:!0,before:!1}],"semi-style":["error","last"],"sort-keys":"off","sort-vars":"off","space-before-blocks":"error","space-before-function-paren":["error",{anonymous:"always",asyncArrow:"always",named:"never"}],"space-in-parens":["error","never"],"space-infix-ops":"error","space-unary-ops":["error",{nonwords:!1,overrides:{},words:!0}],"spaced-comment":["error","always",{block:{balanced:!0,exceptions:["-","+"],markers:["=","!",":","::"]},line:{exceptions:["-","+","*"],markers:["=","!","/"]}}],"switch-colon-spacing":["error",{after:!0,before:!1}],"template-tag-spacing":["error","never"],"unicode-bom":["error","never"],"wrap-regex":"off",...o}},type:"all"},{config:{rules:{"lines-between-class-members":["error","always",{exceptAfterSingleLine:!1}]}},type:"javascript"},{config:{rules:{"brace-style":"off",camelcase:"off","comma-dangle":"off","comma-spacing":"off","constructor-super":"off","dot-notation":"off","func-call-spacing":"off","getter-return":"off",indent:"off","keyword-spacing":"off","lines-between-class-members":"off",quotes:"off",semi:"off",strict:"off"}},type:"typescript"}]),l=a;
7
+ !global.hasAnolilabEsLintConfigPrettier&&(packageJsonUtils.hasDependency("prettier")||packageJsonUtils.hasDevDependency("prettier"))&&(global.hasAnolilabEsLintConfigPrettier=!0);var o={};global.hasAnolilabEsLintConfigPrettier&&(o={"array-bracket-newline":"off","array-bracket-spacing":"off","array-element-newline":"off","arrow-parens":"off","arrow-spacing":"off","block-spacing":"off","brace-style":"off","comma-dangle":"off","comma-spacing":"off","comma-style":"off","computed-property-spacing":"off",curly:0,"dot-location":"off","eol-last":"off","func-call-spacing":"off","function-call-argument-newline":"off","function-paren-newline":"off","generator-star-spacing":"off","implicit-arrow-linebreak":"off",indent:"off","jsx-quotes":"off","key-spacing":"off","keyword-spacing":"off","linebreak-style":"off","lines-around-comment":0,"max-len":0,"multiline-ternary":"off","new-parens":"off","newline-per-chained-call":"off","no-confusing-arrow":0,"no-extra-parens":"off","no-extra-semi":"off","no-floating-decimal":"off","no-mixed-operators":0,"no-mixed-spaces-and-tabs":"off","no-multi-spaces":"off","no-multiple-empty-lines":"off","no-tabs":0,"no-trailing-spaces":"off","no-unexpected-multiline":0,"no-whitespace-before-property":"off","nonblock-statement-body-position":"off","object-curly-newline":"off","object-curly-spacing":"off","object-property-newline":"off","one-var-declaration-per-line":"off","operator-linebreak":"off","padded-blocks":"off","quote-props":"off",quotes:0,"rest-spread-spacing":"off",semi:"off","semi-spacing":"off","semi-style":"off","space-before-blocks":"off","space-before-function-paren":"off","space-in-parens":"off","space-infix-ops":"off","space-unary-ops":"off","switch-colon-spacing":"off","template-curly-spacing":"off","template-tag-spacing":"off","unicode-bom":"off","wrap-iife":"off","wrap-regex":"off","yield-star-spacing":"off"});var a=chunkWG6GTAIA_js.b([{config:{rules:{"array-bracket-newline":"off","array-bracket-spacing":["error","never"],"array-element-newline":"off","block-spacing":["error","always"],"brace-style":["error","1tbs",{allowSingleLine:!0}],camelcase:["error",{ignoreDestructuring:!1,properties:"never"}],"capitalized-comments":["off","never",{block:{ignoreConsecutiveComments:!0,ignoreInlineComments:!0,ignorePattern:".*"},line:{ignoreConsecutiveComments:!0,ignoreInlineComments:!0,ignorePattern:".*"}}],"comma-dangle":["error",{arrays:"always-multiline",exports:"always-multiline",functions:"always-multiline",imports:"always-multiline",objects:"always-multiline"}],"comma-spacing":["error",{after:!0,before:!1}],"comma-style":["error","last",{exceptions:{ArrayExpression:!1,ArrayPattern:!1,ArrowFunctionExpression:!1,CallExpression:!1,FunctionDeclaration:!1,FunctionExpression:!1,ImportDeclaration:!1,NewExpression:!1,ObjectExpression:!1,ObjectPattern:!1,VariableDeclaration:!1}}],"computed-property-spacing":["error","never"],"consistent-this":"off","default-param-last":["error"],"eol-last":["error","always"],"func-call-spacing":["error","never"],"func-name-matching":["off","always",{considerPropertyDescriptor:!0,includeCommonJSModuleExports:!1}],"func-names":["error","as-needed"],"func-style":["error","expression"],"function-call-argument-newline":["error","consistent"],"function-paren-newline":["error","consistent"],"id-blacklist":"error","id-denylist":"off","id-length":"off","id-match":"off","implicit-arrow-linebreak":["error","beside"],indent:["error",chunkO7JDC6TD_js.a,{ArrayExpression:1,CallExpression:{arguments:1},FunctionDeclaration:{body:1,parameters:1},FunctionExpression:{body:1,parameters:1},ImportDeclaration:1,ObjectExpression:1,SwitchCase:1,VariableDeclarator:1,flatTernaryExpressions:!1,ignoreComments:!1,ignoredNodes:["JSXElement","JSXElement > *","JSXAttribute","JSXIdentifier","JSXNamespacedName","JSXMemberExpression","JSXSpreadAttribute","JSXExpressionContainer","JSXOpeningElement","JSXClosingElement","JSXFragment","JSXOpeningFragment","JSXClosingFragment","JSXText","JSXEmptyExpression","JSXSpreadChild"],outerIIFEBody:1}],"jsx-quotes":["off","prefer-double"],"key-spacing":["error",{afterColon:!0,beforeColon:!1}],"keyword-spacing":["error",{after:!0,before:!0,overrides:{case:{after:!0},return:{after:!0},throw:{after:!0}}}],"line-comment-position":"off","linebreak-style":["error","unix"],"lines-around-comment":"off","lines-around-directive":["error",{after:"always",before:"always"}],"max-depth":["off",4],"max-len":["error",160,2,{ignoreComments:!1,ignoreRegExpLiterals:!0,ignoreStrings:!0,ignoreTemplateLiterals:!0,ignoreUrls:!0}],"max-lines":["off",{max:300,skipBlankLines:!0,skipComments:!0}],"max-lines-per-function":["off",{IIFEs:!0,max:50,skipBlankLines:!0,skipComments:!0}],"max-nested-callbacks":"off","max-params":["off",3],"max-statements":["off",10],"max-statements-per-line":["off",{max:1}],"multiline-comment-style":["off","starred-block"],"multiline-ternary":["off","never"],"new-cap":["error",{capIsNew:!1,capIsNewExceptions:["Immutable.Map","Immutable.Set","Immutable.List"],newIsCap:!0,newIsCapExceptions:[]}],"new-parens":"error","newline-after-var":"off","newline-before-return":"off","newline-per-chained-call":["error",{ignoreChainWithDepth:4}],"no-array-constructor":"error","no-bitwise":"error","no-continue":"error","no-inline-comments":"off","no-lonely-if":"error","no-mixed-operators":["error",{allowSamePrecedence:!1,groups:[["%","**"],["%","+"],["%","-"],["%","*"],["%","/"],["/","*"],["&","|","<<",">>",">>>"],["==","!=","===","!=="],["&&","||"],["in","instanceof"]]}],"no-mixed-spaces-and-tabs":"error","no-multi-assign":["error"],"no-multiple-empty-lines":["error",{max:1,maxBOF:0,maxEOF:0}],"no-negated-condition":"off","no-nested-ternary":"error","no-new-object":"error","no-plusplus":"error","no-restricted-syntax":["error",{message:"for..in loops iterate over the entire prototype chain, which is virtually never what you want. Use Object.{keys,values,entries}, and iterate over the resulting array.",selector:"ForInStatement"},{message:"iterators/generators require regenerator-runtime, which is too heavyweight for this guide to allow them. Separately, loops should be avoided in favor of array iterations.",selector:"ForOfStatement"},{message:"Labels are a form of GOTO; using them makes code confusing and hard to maintain and understand.",selector:"LabeledStatement"},{message:"`with` is disallowed in strict mode because it makes code impossible to predict and optimize.",selector:"WithStatement"},{message:"`useMemo` with an empty dependency array can't provide a stable reference, use `useRef` instead.",selector:"CallExpression[callee.name=useMemo][arguments.1.type=ArrayExpression][arguments.1.elements.length=0]"},{message:"Use `.key` instead of `.keyCode`",selector:"MemberExpression > .property[type=Identifier][name=keyCode]"}],"no-spaced-func":"off","no-tabs":"error","no-ternary":"off","no-trailing-spaces":["error",{ignoreComments:!1,skipBlankLines:!1}],"no-underscore-dangle":["error",{allow:["__DEV__","__STORYBOOK_CLIENT_API__","__STORYBOOK_ADDONS_CHANNEL__","__STORYBOOK_STORY_STORE__"],allowAfterSuper:!1,allowAfterThis:!1,enforceInMethodNames:!0}],"no-unneeded-ternary":["error",{defaultAssignment:!1}],"no-whitespace-before-property":"error","nonblock-statement-body-position":["error","beside",{overrides:{}}],"object-curly-newline":["error",{ExportDeclaration:{consistent:!0,minProperties:4,multiline:!0},ImportDeclaration:{consistent:!0,minProperties:4,multiline:!0},ObjectExpression:{consistent:!0,minProperties:4,multiline:!0},ObjectPattern:{consistent:!0,minProperties:4,multiline:!0}}],"object-curly-spacing":["error","always"],"object-property-newline":["error",{allowAllPropertiesOnSameLine:!0}],"one-var":["error","never"],"one-var-declaration-per-line":["error","always"],"operator-assignment":["error","always"],"operator-linebreak":["error","before",{overrides:{"=":"none"}}],"padded-blocks":["error",{blocks:"never",classes:"never",switches:"never"},{allowSingleLineBlocks:!0}],"padding-line-between-statements":"off","prefer-exponentiation-operator":"error","prefer-object-spread":"error","quote-props":["error","as-needed",{keywords:!1,numbers:!1,unnecessary:!0}],quotes:["error","double",{avoidEscape:!0}],"require-jsdoc":"off",semi:["error","always"],"semi-spacing":["error",{after:!0,before:!1}],"semi-style":["error","last"],"sort-keys":"off","sort-vars":"off","space-before-blocks":"error","space-before-function-paren":["error",{anonymous:"always",asyncArrow:"always",named:"never"}],"space-in-parens":["error","never"],"space-infix-ops":"error","space-unary-ops":["error",{nonwords:!1,overrides:{},words:!0}],"spaced-comment":["error","always",{block:{balanced:!0,exceptions:["-","+"],markers:["=","!",":","::"]},line:{exceptions:["-","+","*"],markers:["=","!","/"]}}],"switch-colon-spacing":["error",{after:!0,before:!1}],"template-tag-spacing":["error","never"],"unicode-bom":["error","never"],"wrap-regex":"off",...o}},type:"all"},{config:{rules:{"lines-between-class-members":["error","always",{exceptAfterSingleLine:!1}]}},type:"javascript"},{config:{rules:{"brace-style":"off",camelcase:"off","comma-dangle":"off","comma-spacing":"off","constructor-super":"off","dot-notation":"off","func-call-spacing":"off","getter-return":"off",indent:"off","keyword-spacing":"off","lines-between-class-members":"off",quotes:"off",semi:"off",strict:"off"}},type:"typescript"}]),l=a;
8
8
 
9
9
  exports.a = l;
10
10
  //# sourceMappingURL=out.js.map
11
- //# sourceMappingURL=chunk-JN7GUCON.js.map
11
+ //# sourceMappingURL=chunk-CATTWGKB.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('./chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('./chunk-WG6GTAIA.js');
4
4
 
5
- var o=chunkTYZCRPVH_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:"javascript"},{config:{rules:{"no-array-constructor":"off","no-const-assign":"off","no-dupe-args":"off","no-dupe-class-members":"off","no-dupe-keys":"off","no-empty-function":"off","no-extra-parens":"off","no-extra-semi":"off","no-func-assign":"off","no-implied-eval":"off","no-loop-func":"off","no-magic-numbers":"off","no-new-func":"off","no-new-symbol":"off","no-obj-calls":"off","no-redeclare":"off","no-return-await":"off","no-shadow":"off","no-this-before-super":"off","no-throw-literal":"off","no-undef":"off","no-unreachable":"off","no-unsafe-negation":"off","no-unused-expressions":"off","no-unused-vars":"off","no-use-before-define":"off","no-useless-constructor":"off","space-before-function-paren":"off","space-infix-ops":"off","valid-typeof":"off"}},type:"typescript"}]),n=o;
5
+ var o=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:"javascript"},{config:{rules:{"no-array-constructor":"off","no-const-assign":"off","no-dupe-args":"off","no-dupe-class-members":"off","no-dupe-keys":"off","no-empty-function":"off","no-extra-parens":"off","no-extra-semi":"off","no-func-assign":"off","no-implied-eval":"off","no-loop-func":"off","no-magic-numbers":"off","no-new-func":"off","no-new-symbol":"off","no-obj-calls":"off","no-redeclare":"off","no-return-await":"off","no-shadow":"off","no-this-before-super":"off","no-throw-literal":"off","no-undef":"off","no-unreachable":"off","no-unsafe-negation":"off","no-unused-expressions":"off","no-unused-vars":"off","no-use-before-define":"off","no-useless-constructor":"off","space-before-function-paren":"off","space-infix-ops":"off","valid-typeof":"off"}},type:"typescript"}]),n=o;
6
6
 
7
7
  exports.a = n;
8
8
  //# sourceMappingURL=out.js.map
9
- //# sourceMappingURL=chunk-EDPRRFFD.js.map
9
+ //# sourceMappingURL=chunk-UXEQWB3K.js.map
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var r=s=>{switch(s){case"typescript":return ["**/*.ts","**/*.d.ts","**/*.tsx","**/*.mts","**/*.cts"];case"jsx_and_tsx":return ["**/*.jsx","**/*.tsx"];case"js_and_ts":return ["**/*.js","**/*.mjs","**/*.cjs","**/*.ts","**/*.d.ts","**/*.mts","**/*.cts"];case"javascript":return ["**/*.js","**/*.mjs","**/*.cjs"];case"all":return ["**/*.js","**/*.jsx","**/*.mjs","**/*.cjs","**/*.ts","**/*.d.ts","**/*.tsx","**/*.mts","**/*.cts"];case"markdown":return ["**/*.{md,mkdn,mdown,markdown}"];case"markdown_inline_js_jsx":return ["**/*.{md,mkdn,mdown,markdown}/*.{js,javascript,jsx,node,json}"];case"mdx":return ["**/*.mdx"];case"jest":return ["**/*.spec.{js,ts,tsx}","**/*.test.{js,ts,tsx}","**/test/*.{js,ts,tsx}","**/__mocks__/*.{js,ts,tsx}","**/__tests__/*.{js,ts,tsx}"];case"ava":return ["test.js","src/test.js","source/test.js","**/test-*.js","**/*.spec.js","**/*.test.js","**/test/**/*.js","**/tests/**/*.js","**/__tests__/**/*.js"];case"vitest":return ["**/__tests__/**/*.?(c|m)[jt]s?(x)","**/?(*.){test,spec}.?(c|m)[jt]s?(x)"];case"tests":return ["test.js","src/test.js","source/test.js","**/test-*.js","**/*.spec.js","**/*.test.js","**/test/**/*.js","**/tests/**/*.js","**/__tests__/**/*.js","**/*.spec.{js,ts,tsx}","**/*.test.{js,ts,tsx}","**/test/*.{js,ts,tsx}","**/__mocks__/*.{js,ts,tsx}","**/__tests__/*.{js,ts,tsx}","**/__tests__/**/*.?(c|m)[jt]s?(x)","**/?(*.){test,spec}.?(c|m)[jt]s?(x)"];case"d.ts":return ["**/*.d.ts"];case"postcss":return ["**/postcss.config.js","**/postcssrc.js"];default:throw new Error("Unknown type")}},j=(s,t,e)=>({env:e,overrides:[{files:r(s),...t}]}),n=s=>({overrides:s.map(({config:t,type:e})=>({files:r(e),...t}))});
3
+ var r=s=>{switch(s){case"typescript":return ["**/*.ts","**/*.d.ts","**/*.tsx","**/*.mts","**/*.cts"];case"jsx_and_tsx":return ["**/*.jsx","**/*.tsx"];case"js_and_ts":return ["**/*.js","**/*.mjs","**/*.cjs","**/*.ts","**/*.d.ts","**/*.mts","**/*.cts"];case"javascript":return ["**/*.js","**/*.mjs","**/*.cjs"];case"all":return ["**/*.js","**/*.jsx","**/*.mjs","**/*.cjs","**/*.ts","**/*.d.ts","**/*.tsx","**/*.mts","**/*.cts"];case"markdown":return ["**/*.{md,mkdn,mdown,markdown}"];case"markdown_inline_js_jsx":return ["**/*.{md,mkdn,mdown,markdown}/*.{js,javascript,jsx,node,json}"];case"mdx":return ["**/*.mdx"];case"jest":return ["**/*.spec.{js,ts,tsx}","**/*.test.{js,ts,tsx}","**/test/*.{js,ts,tsx}","**/__mocks__/*.{js,ts,tsx}","**/__tests__/*.{js,ts,tsx}"];case"ava":return ["test.js","src/test.js","source/test.js","**/test-*.js","**/*.spec.js","**/*.test.js","**/test/**/*.js","**/tests/**/*.js","**/__tests__/**/*.js"];case"vitest":return ["**/__tests__/**/*.?(c|m)[jt]s?(x)","**/?(*.){test,spec}.?(c|m)[jt]s?(x)"];case"tests":return ["test.js","src/test.js","source/test.js","**/test-*.js","**/*.spec.js","**/*.test.js","**/test/**/*.js","**/tests/**/*.js","**/__tests__/**/*.js","**/*.spec.{js,ts,tsx}","**/*.test.{js,ts,tsx}","**/test/*.{js,ts,tsx}","**/__mocks__/*.{js,ts,tsx}","**/__tests__/*.{js,ts,tsx}","**/__tests__/**/*.?(c|m)[jt]s?(x)","**/?(*.){test,spec}.?(c|m)[jt]s?(x)"];case"d.ts":return ["**/*.d.ts"];case"postcss":return ["**/postcss.config.js","**/postcssrc.js","**/postcss.config.cjs","**/postcssrc.cjs"];default:throw new Error("Unknown type")}},j=(s,t,e)=>({env:e,overrides:[{files:r(s),...t}]}),n=s=>({overrides:s.map(({config:t,type:e})=>({files:r(e),...t}))});
4
4
 
5
5
  exports.a = j;
6
6
  exports.b = n;
7
7
  //# sourceMappingURL=out.js.map
8
- //# sourceMappingURL=chunk-TYZCRPVH.js.map
8
+ //# sourceMappingURL=chunk-WG6GTAIA.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/utils/create-config.ts"],"names":["getType","fileType","createConfig","type","config","environment","createConfigs","rules"],"mappings":"AAkBA,IAAMA,EAAWC,GAAuB,CACpC,OAAQA,EAAU,CACd,IAAK,aAED,MAAO,CAAC,UAAW,YAAa,WAAY,WAAY,UAAU,EAEtE,IAAK,cACD,MAAO,CAAC,WAAY,UAAU,EAElC,IAAK,YACD,MAAO,CAAC,UAAW,WAAY,WAAY,UAAW,YAAa,WAAY,UAAU,EAE7F,IAAK,aACD,MAAO,CAAC,UAAW,WAAY,UAAU,EAE7C,IAAK,MACD,MAAO,CAAC,UAAW,WAAY,WAAY,WAAY,UAAW,YAAa,WAAY,WAAY,UAAU,EAErH,IAAK,WACD,MAAO,CAAC,+BAA+B,EAE3C,IAAK,yBACD,MAAO,CAAC,+DAA+D,EAE3E,IAAK,MACD,MAAO,CAAC,UAAU,EAEtB,IAAK,OACD,MAAO,CAEH,wBACA,wBACA,wBAGA,6BACA,4BACJ,EAEJ,IAAK,MACD,MAAO,CACH,UACA,cACA,iBACA,eACA,eACA,eACA,kBACA,mBACA,sBACJ,EAEJ,IAAK,SACD,MAAO,CAAC,oCAAqC,qCAAqC,EAEtF,IAAK,QACD,MAAO,CAEH,UACA,cACA,iBACA,eACA,eACA,eACA,kBACA,mBACA,uBAGA,wBACA,wBACA,wBACA,6BACA,6BACA,oCACA,qCACJ,EAEJ,IAAK,OACD,MAAO,CAAC,WAAW,EAEvB,IAAK,UACD,MAAO,CAAC,uBAAwB,kBAAmB,wBAAyB,kBAAkB,EAElG,QACI,MAAM,IAAI,MAAM,cAAc,CAEtC,CACJ,EAEaC,EAAe,CAACC,EAAgBC,EAA8CC,KAChF,CACH,IAAKA,EACL,UAAW,CACP,CACI,MAAOL,EAAQG,CAAI,EACnB,GAAGC,CACP,CACJ,CACJ,GAESE,EACTC,IAKO,CACH,UAAWA,EAAM,IAAI,CAAC,CAAE,OAAAH,EAAQ,KAAAD,CAAK,KAC1B,CACH,MAAOH,EAAQG,CAAI,EACnB,GAAGC,CACP,EACH,CACL","sourcesContent":["import type { Linter } from \"eslint\";\n\ntype FileType =\n | \"all\"\n | \"ava\"\n | \"d.ts\"\n | \"javascript\"\n | \"jest\"\n | \"js_and_ts\"\n | \"jsx_and_tsx\"\n | \"markdown_inline_js_jsx\"\n | \"markdown\"\n | \"mdx\"\n | \"postcss\"\n | \"tests\"\n | \"typescript\"\n | \"vitest\";\n\nconst getType = (fileType: FileType) => {\n switch (fileType) {\n case \"typescript\": {\n // @see https://devblogs.microsoft.com/typescript/announcing-typescript-4-5-beta/#new-file-extensions\n return [\"**/*.ts\", \"**/*.d.ts\", \"**/*.tsx\", \"**/*.mts\", \"**/*.cts\"];\n }\n case \"jsx_and_tsx\": {\n return [\"**/*.jsx\", \"**/*.tsx\"];\n }\n case \"js_and_ts\": {\n return [\"**/*.js\", \"**/*.mjs\", \"**/*.cjs\", \"**/*.ts\", \"**/*.d.ts\", \"**/*.mts\", \"**/*.cts\"];\n }\n case \"javascript\": {\n return [\"**/*.js\", \"**/*.mjs\", \"**/*.cjs\"];\n }\n case \"all\": {\n return [\"**/*.js\", \"**/*.jsx\", \"**/*.mjs\", \"**/*.cjs\", \"**/*.ts\", \"**/*.d.ts\", \"**/*.tsx\", \"**/*.mts\", \"**/*.cts\"];\n }\n case \"markdown\": {\n return [\"**/*.{md,mkdn,mdown,markdown}\"];\n }\n case \"markdown_inline_js_jsx\": {\n return [\"**/*.{md,mkdn,mdown,markdown}/*.{js,javascript,jsx,node,json}\"];\n }\n case \"mdx\": {\n return [\"**/*.mdx\"];\n }\n case \"jest\": {\n return [\n // Test files\n \"**/*.spec.{js,ts,tsx}\",\n \"**/*.test.{js,ts,tsx}\",\n \"**/test/*.{js,ts,tsx}\",\n\n // Facebook convention\n \"**/__mocks__/*.{js,ts,tsx}\",\n \"**/__tests__/*.{js,ts,tsx}\",\n ];\n }\n case \"ava\": {\n return [\n \"test.js\",\n \"src/test.js\",\n \"source/test.js\",\n \"**/test-*.js\",\n \"**/*.spec.js\",\n \"**/*.test.js\",\n \"**/test/**/*.js\",\n \"**/tests/**/*.js\",\n \"**/__tests__/**/*.js\",\n ];\n }\n case \"vitest\": {\n return [\"**/__tests__/**/*.?(c|m)[jt]s?(x)\", \"**/?(*.){test,spec}.?(c|m)[jt]s?(x)\"];\n }\n case \"tests\": {\n return [\n // ava\n \"test.js\",\n \"src/test.js\",\n \"source/test.js\",\n \"**/test-*.js\",\n \"**/*.spec.js\",\n \"**/*.test.js\",\n \"**/test/**/*.js\",\n \"**/tests/**/*.js\",\n \"**/__tests__/**/*.js\",\n\n // jest\n \"**/*.spec.{js,ts,tsx}\",\n \"**/*.test.{js,ts,tsx}\",\n \"**/test/*.{js,ts,tsx}\",\n \"**/__mocks__/*.{js,ts,tsx}\",\n \"**/__tests__/*.{js,ts,tsx}\",\n \"**/__tests__/**/*.?(c|m)[jt]s?(x)\",\n \"**/?(*.){test,spec}.?(c|m)[jt]s?(x)\",\n ];\n }\n case \"d.ts\": {\n return [\"**/*.d.ts\"];\n }\n case \"postcss\": {\n return [\"**/postcss.config.js\", \"**/postcssrc.js\", \"**/postcss.config.cjs\", \"**/postcssrc.cjs\"];\n }\n default: {\n throw new Error(\"Unknown type\");\n }\n }\n};\n\nexport const createConfig = (type: FileType, config: Omit<Linter.ConfigOverride, \"files\">, environment?: Record<string, boolean>): Linter.Config => {\n return {\n env: environment,\n overrides: [\n {\n files: getType(type),\n ...config,\n },\n ],\n };\n};\nexport const createConfigs = (\n rules: {\n config: Omit<Linter.ConfigOverride, \"files\">;\n type: FileType;\n }[],\n): Linter.Config => {\n return {\n overrides: rules.map(({ config, type }) => {\n return {\n files: getType(type),\n ...config,\n };\n }),\n };\n};\n"]}
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var chunkEDPRRFFD_js = require('../chunk-EDPRRFFD.js');
4
- require('../chunk-TYZCRPVH.js');
3
+ var chunkUXEQWB3K_js = require('../chunk-UXEQWB3K.js');
4
+ require('../chunk-WG6GTAIA.js');
5
5
  require('../chunk-3NVDJZNH.js');
6
6
 
7
7
 
8
8
 
9
- module.exports = chunkEDPRRFFD_js.a;
9
+ module.exports = chunkUXEQWB3K_js.a;
10
10
  //# sourceMappingURL=out.js.map
11
11
  //# sourceMappingURL=errors.js.map
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
  var packageJsonUtils = require('@anolilab/package-json-utils');
6
6
 
7
- var t=chunkTYZCRPVH_js.a("all",{plugins:["antfu"],rules:{"antfu/generic-spacing":"error","antfu/if-newline":"error","antfu/import-dedupe":"error","antfu/no-cjs-exports":packageJsonUtils.packageIsTypeModule?"error":"off","antfu/no-ts-export-equal":packageJsonUtils.hasTypescript?"error":"off","antfu/prefer-inline-type-import":"off","antfu/top-level-function":"off"}}),i=t;
7
+ var t=chunkWG6GTAIA_js.a("all",{plugins:["antfu"],rules:{"antfu/generic-spacing":"error","antfu/if-newline":"error","antfu/import-dedupe":"error","antfu/no-cjs-exports":packageJsonUtils.packageIsTypeModule?"error":"off","antfu/no-ts-export-equal":packageJsonUtils.hasTypescript?"error":"off","antfu/prefer-inline-type-import":"off","antfu/top-level-function":"off"}}),i=t;
8
8
 
9
9
  module.exports = i;
10
10
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var e=chunkTYZCRPVH_js.a("all",{extends:["plugin:array-func/recommended"],plugins:["array-func"],rules:{"array-func/prefer-array-from":"off","array-func/prefer-flat":0,"array-func/prefer-flat-map":0}}),a=e;
6
+ var e=chunkWG6GTAIA_js.a("all",{extends:["plugin:array-func/recommended"],plugins:["array-func"],rules:{"array-func/prefer-array-from":"off","array-func/prefer-flat":0,"array-func/prefer-flat-map":0}}),a=e;
7
7
 
8
8
  module.exports = a;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,15 +1,15 @@
1
1
  'use strict';
2
2
 
3
- var chunkJN7GUCON_js = require('../../chunk-JN7GUCON.js');
3
+ var chunkCATTWGKB_js = require('../../chunk-CATTWGKB.js');
4
4
  require('../../chunk-O7JDC6TD.js');
5
5
  require('../../chunk-OCCLNRZC.js');
6
6
  var chunk2L7ILCIC_js = require('../../chunk-2L7ILCIC.js');
7
- var chunkEDPRRFFD_js = require('../../chunk-EDPRRFFD.js');
8
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
7
+ var chunkUXEQWB3K_js = require('../../chunk-UXEQWB3K.js');
8
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
9
9
  require('../../chunk-3NVDJZNH.js');
10
10
  var packageJsonUtils = require('@anolilab/package-json-utils');
11
11
 
12
- var n=chunk2L7ILCIC_js.a.rules,r=chunkEDPRRFFD_js.a.rules,e=chunkJN7GUCON_js.a.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=chunkTYZCRPVH_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":r["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}}),d=f;
12
+ var n=chunk2L7ILCIC_js.a.rules,r=chunkUXEQWB3K_js.a.rules,e=chunkCATTWGKB_js.a.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":r["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}}),d=f;
13
13
 
14
14
  module.exports = d;
15
15
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var t=chunkTYZCRPVH_js.a("all",{plugins:["es-x"],settings:{es:{aggressive:!0}}}),r=t;
6
+ var t=chunkWG6GTAIA_js.a("all",{plugins:["es-x"],settings:{es:{aggressive:!0}}}),r=t;
7
7
 
8
8
  module.exports = r;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var n=chunkTYZCRPVH_js.a("all",{extends:["plugin:eslint-comments/recommended"],plugins:["eslint-comments"],rules:{"eslint-comments/no-restricted-disable":"off","eslint-comments/no-unlimited-disable":"off","eslint-comments/no-unused-disable":"error","eslint-comments/no-unused-enable":"error","eslint-comments/no-use":"off","eslint-comments/require-description":"off"}}),o=n;
6
+ var n=chunkWG6GTAIA_js.a("all",{extends:["plugin:eslint-comments/recommended"],plugins:["eslint-comments"],rules:{"eslint-comments/no-restricted-disable":"off","eslint-comments/no-unlimited-disable":"off","eslint-comments/no-unused-disable":"error","eslint-comments/no-unused-enable":"error","eslint-comments/no-use":"off","eslint-comments/require-description":"off"}}),o=n;
7
7
 
8
8
  module.exports = o;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var t=chunkTYZCRPVH_js.a("typescript",{extends:["plugin:etc/recommended"],plugins:["etc"]}),n=t;
6
+ var t=chunkWG6GTAIA_js.a("typescript",{extends:["plugin:etc/recommended"],plugins:["etc"]}),n=t;
7
7
 
8
8
  module.exports = n;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
  var packageJsonUtils = require('@anolilab/package-json-utils');
6
6
 
7
- var t=chunkTYZCRPVH_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",{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":"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":"off","import/no-useless-path-segments":["error",{commonjs:!0,noUselessIndex:!0}],"import/no-webpack-loader-syntax":"error","import/order":["error",{groups:[["builtin","external","internal"]]}],"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"]}}}},type:"typescript"},{config:{rules:{"import/no-duplicates":"off"}},type:"d.ts"}]),i=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",{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":"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":"off","import/no-useless-path-segments":["error",{commonjs:!0,noUselessIndex:!0}],"import/no-webpack-loader-syntax":"error","import/order":["error",{groups:[["builtin","external","internal"]]}],"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"]}}}},type:"typescript"},{config:{rules:{"import/no-duplicates":"off"}},type:"d.ts"}]),i=t;
8
8
 
9
9
  module.exports = i;
10
10
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var o=chunkTYZCRPVH_js.b([{config:{extends:"plugin:markdown/recommended",plugins:["markdown"],processor:"markdown/markdown"},type:"markdown"},{config:{extends:"plugin:markdown/recommended",parserOptions:{ecmacFeatures:{impliedStrict:!0}},plugins:["markdown"],processor:"markdown/markdown",rules:{"@typescript-eslint/comma-dangle":"off","@typescript-eslint/no-redeclare":"off","@typescript-eslint/no-unused-vars":"off","@typescript-eslint/no-use-before-define":"off","@typescript-eslint/no-var-requires":"off","global-require":"off","import/no-unresolved":"off","import/order":"off","no-alert":"off","no-console":"off","no-restricted-imports":"off","no-undef":"off","no-unused-expressions":"off","no-unused-vars":"off","prefer-reflect":"off","sonar/no-dead-store":"off",strict:"off"}},type:"markdown_inline_js_jsx"}]),n=o;
6
+ var o=chunkWG6GTAIA_js.b([{config:{extends:"plugin:markdown/recommended",plugins:["markdown"],processor:"markdown/markdown"},type:"markdown"},{config:{extends:"plugin:markdown/recommended",parserOptions:{ecmacFeatures:{impliedStrict:!0}},plugins:["markdown"],processor:"markdown/markdown",rules:{"@typescript-eslint/comma-dangle":"off","@typescript-eslint/no-redeclare":"off","@typescript-eslint/no-unused-vars":"off","@typescript-eslint/no-use-before-define":"off","@typescript-eslint/no-var-requires":"off","global-require":"off","import/no-unresolved":"off","import/order":"off","no-alert":"off","no-console":"off","no-restricted-imports":"off","no-undef":"off","no-unused-expressions":"off","no-unused-vars":"off","prefer-reflect":"off","sonar/no-dead-store":"off",strict:"off"}},type:"markdown_inline_js_jsx"}]),n=o;
7
7
 
8
8
  module.exports = n;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var o=chunkTYZCRPVH_js.a("mdx",{extends:["plugin:mdx/recommended"],parser:"eslint-mdx",parserOptions:{ecmaVersion:"latest"},processor:"mdx/remark",rules:{"@typescript-eslint/comma-dangle":"off","@typescript-eslint/no-redeclare":"off","@typescript-eslint/no-unused-vars":"off","@typescript-eslint/no-use-before-define":"off","@typescript-eslint/no-var-requires":"off","global-require":"off","import/namespace":"off","import/no-extraneous-dependencies":"off","import/no-unresolved":"off","import/order":"off","no-alert":"off","no-console":"off","no-restricted-imports":"off","no-undef":"off","no-unused-expressions":"off","no-unused-vars":"off","prefer-reflect":"off","react/jsx-no-undef":"off","react-hooks/rules-of-hooks":"off","sonar/no-dead-store":"off"},settings:{"mdx/code-blocks":!0}}),f=o;
6
+ var o=chunkWG6GTAIA_js.a("mdx",{extends:["plugin:mdx/recommended"],parser:"eslint-mdx",parserOptions:{ecmaVersion:"latest"},processor:"mdx/remark",rules:{"@typescript-eslint/comma-dangle":"off","@typescript-eslint/no-redeclare":"off","@typescript-eslint/no-unused-vars":"off","@typescript-eslint/no-use-before-define":"off","@typescript-eslint/no-var-requires":"off","global-require":"off","import/namespace":"off","import/no-extraneous-dependencies":"off","import/no-unresolved":"off","import/order":"off","no-alert":"off","no-console":"off","no-restricted-imports":"off","no-undef":"off","no-unused-expressions":"off","no-unused-vars":"off","prefer-reflect":"off","react/jsx-no-undef":"off","react-hooks/rules-of-hooks":"off","sonar/no-dead-store":"off"},settings:{"mdx/code-blocks":!0}}),f=o;
7
7
 
8
8
  module.exports = f;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,13 +1,13 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkSEYYGHPU_js = require('../../chunk-SEYYGHPU.js');
4
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
4
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
5
5
  require('../../chunk-3NVDJZNH.js');
6
6
  var packageJsonUtils = require('@anolilab/package-json-utils');
7
7
 
8
8
  !global.hasAnolilabEsLintConfigPerfectionistTypescriptSortKeys&&(packageJsonUtils.hasDependency("eslint-plugin-typescript-sort-keys")||packageJsonUtils.hasDevDependency("eslint-plugin-typescript-sort-keys"))&&(global.hasAnolilabEsLintConfigPerfectionistTypescriptSortKeys=!0,chunkSEYYGHPU_js.b(`
9
9
  Please remove "eslint-plugin-typescript-sort-keys" from your package.json, it conflicts with "eslint-plugin-perfectionist".
10
- `));var s=chunkTYZCRPVH_js.b([{config:{extends:["plugin:perfectionist/recommended-natural"],plugins:["perfectionist"],rules:{"perfectionist/sort-imports":"off","perfectionist/sort-union-types":"off","sort-keys":"off"}},type:"all"},{config:{rules:{"perfectionist/sort-objects":"off"}},type:"postcss"}]),f=s;
10
+ `));var s=chunkWG6GTAIA_js.b([{config:{extends:["plugin:perfectionist/recommended-natural"],plugins:["perfectionist"],rules:{"perfectionist/sort-imports":"off","perfectionist/sort-union-types":"off","sort-keys":"off"}},type:"all"},{config:{rules:{"perfectionist/sort-objects":"off"}},type:"postcss"}]),f=s;
11
11
 
12
12
  module.exports = f;
13
13
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var r=chunkTYZCRPVH_js.a("jsx_and_tsx",{parserOptions:{ecmaFeatures:{jsx:!0}},plugins:["react-hooks"],rules:{"react-hooks/exhaustive-deps":"error","react-hooks/rules-of-hooks":"error"}}),t=r;
6
+ var r=chunkWG6GTAIA_js.a("jsx_and_tsx",{parserOptions:{ecmaFeatures:{jsx:!0}},plugins:["react-hooks"],rules:{"react-hooks/exhaustive-deps":"error","react-hooks/rules-of-hooks":"error"}}),t=r;
7
7
 
8
8
  module.exports = t;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var r=chunkTYZCRPVH_js.a("jsx_and_tsx",{extends:["plugin:react-redux/recommended"],plugins:["react-redux"],rules:{"react-redux/mapStateToProps-prefer-selectors":"off","react-redux/prefer-separate-component-file":"off"}}),o=r;
6
+ var r=chunkWG6GTAIA_js.a("jsx_and_tsx",{extends:["plugin:react-redux/recommended"],plugins:["react-redux"],rules:{"react-redux/mapStateToProps-prefer-selectors":"off","react-redux/prefer-separate-component-file":"off"}}),o=r;
7
7
 
8
8
  module.exports = o;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var r=chunkTYZCRPVH_js.a("jsx_and_tsx",{parserOptions:{ecmaFeatures:{jsx:!0}},plugins:["@arthurgeron/react-usememo"],rules:{"@arthurgeron/react-usememo/require-usememo":"error"}}),o=r;
6
+ var r=chunkWG6GTAIA_js.a("jsx_and_tsx",{parserOptions:{ecmaFeatures:{jsx:!0}},plugins:["@arthurgeron/react-usememo"],rules:{"@arthurgeron/react-usememo/require-usememo":"error"}}),o=r;
7
7
 
8
8
  module.exports = o;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkSEYYGHPU_js = require('../../chunk-SEYYGHPU.js');
4
- var chunkJN7GUCON_js = require('../../chunk-JN7GUCON.js');
4
+ var chunkCATTWGKB_js = require('../../chunk-CATTWGKB.js');
5
5
  var chunkO7JDC6TD_js = require('../../chunk-O7JDC6TD.js');
6
6
  var chunkOCCLNRZC_js = require('../../chunk-OCCLNRZC.js');
7
- require('../../chunk-TYZCRPVH.js');
7
+ require('../../chunk-WG6GTAIA.js');
8
8
  require('../../chunk-3NVDJZNH.js');
9
9
  var packageJsonUtils = require('@anolilab/package-json-utils');
10
10
  var u = require('find-up');
@@ -15,14 +15,14 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
15
15
 
16
16
  var u__default = /*#__PURE__*/_interopDefault(u);
17
17
 
18
- var g=chunkJN7GUCON_js.a.overrides[0].rules,s=g["no-underscore-dangle"];!global.hasAnolilabEsLintConfigPrettier&&(packageJsonUtils.hasDependency("prettier")||packageJsonUtils.hasDevDependency("prettier"))&&(global.hasAnolilabEsLintConfigPrettier=!0);global.anolilabEslintConfigReactPrettierRules===void 0&&global.hasAnolilabEsLintConfigPrettier&&(global.anolilabEslintConfigReactPrettierRules={"react/jsx-child-element-spacing":"off","react/jsx-closing-bracket-location":"off","react/jsx-closing-tag-location":"off","react/jsx-curly-newline":"off","react/jsx-curly-spacing":"off","react/jsx-equals-spacing":"off","react/jsx-first-prop-new-line":"off","react/jsx-indent":"off","react/jsx-indent-props":"off","react/jsx-max-props-per-line":"off","react/jsx-newline":"off","react/jsx-one-expression-per-line":"off","react/jsx-props-no-multi-spaces":"off","react/jsx-tag-spacing":"off","react/jsx-wrap-multilines":"off"});var c=(()=>{if(!global.hasAnolilabEsLintConfigReactRuntimePath){let e=typeof u__default.default.sync("node_modules/react/jsx-runtime.js")=="string",t=process.env.DISABLE_INFO_ON_DISABLING_JSX_REACT_RULE!=="true";t&&chunkOCCLNRZC_js.a.info_on_disabling_jsx_react_rule!==void 0&&(t=chunkOCCLNRZC_js.a.info_on_disabling_jsx_react_rule),t&&e&&chunkSEYYGHPU_js.b(`
18
+ var g=chunkCATTWGKB_js.a.overrides[0].rules,s=g["no-underscore-dangle"];!global.hasAnolilabEsLintConfigPrettier&&(packageJsonUtils.hasDependency("prettier")||packageJsonUtils.hasDevDependency("prettier"))&&(global.hasAnolilabEsLintConfigPrettier=!0);global.anolilabEslintConfigReactPrettierRules===void 0&&global.hasAnolilabEsLintConfigPrettier&&(global.anolilabEslintConfigReactPrettierRules={"react/jsx-child-element-spacing":"off","react/jsx-closing-bracket-location":"off","react/jsx-closing-tag-location":"off","react/jsx-curly-newline":"off","react/jsx-curly-spacing":"off","react/jsx-equals-spacing":"off","react/jsx-first-prop-new-line":"off","react/jsx-indent":"off","react/jsx-indent-props":"off","react/jsx-max-props-per-line":"off","react/jsx-newline":"off","react/jsx-one-expression-per-line":"off","react/jsx-props-no-multi-spaces":"off","react/jsx-tag-spacing":"off","react/jsx-wrap-multilines":"off"});var c=(()=>{if(!global.hasAnolilabEsLintConfigReactRuntimePath){let e=typeof u__default.default.sync("node_modules/react/jsx-runtime.js")=="string",o=process.env.DISABLE_INFO_ON_DISABLING_JSX_REACT_RULE!=="true";o&&chunkOCCLNRZC_js.a.info_on_disabling_jsx_react_rule!==void 0&&(o=chunkOCCLNRZC_js.a.info_on_disabling_jsx_react_rule),o&&e&&chunkSEYYGHPU_js.b(`
19
19
  @anolilab/eslint-config found react jsx-runtime.
20
20
 
21
21
  Following rules are disabled: "react/jsx-uses-react" and "react/react-in-jsx-scope".
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}],"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"}}]},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"}}]},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":["getPackageSubProperty","hasDependency","hasDevDependency","findUp","env","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 { getPackageSubProperty, hasDependency, hasDevDependency } from \"@anolilab/package-json-utils\";\nimport type { Linter } from \"eslint\";\nimport findUp from \"find-up\";\nimport { env } from \"node:process\";\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 linebreaks in curly braces in JSX attributes and expressions.\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 },\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 },\n },\n ],\n};\n\nexport default config;\n"]}
1
+ {"version":3,"sources":["../../../src/config/plugins/react.ts"],"names":["getPackageSubProperty","hasDependency","hasDevDependency","findUp","env","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 { getPackageSubProperty, hasDependency, hasDevDependency } from \"@anolilab/package-json-utils\";\nimport type { Linter } from \"eslint\";\nimport findUp from \"find-up\";\nimport { env } from \"node:process\";\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 },\n },\n ],\n};\n\nexport default config;\n"]}
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var n=chunkTYZCRPVH_js.a("all",{extends:["plugin:regexp/recommended"],plugins:["regexp"]}),t=n;
6
+ var n=chunkWG6GTAIA_js.a("all",{extends:["plugin:regexp/recommended"],plugins:["regexp"]}),t=n;
7
7
 
8
8
  module.exports = t;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var o=chunkTYZCRPVH_js.a("all",{env:{es6:!0},parserOptions:{sourceType:"module"},plugins:["simple-import-sort"],rules:{"import/first":"error","import/newline-after-import":"error","import/no-duplicates":"error","simple-import-sort/exports":"off","simple-import-sort/imports":"off"}}),t=o;
6
+ var o=chunkWG6GTAIA_js.a("all",{env:{es6:!0},parserOptions:{sourceType:"module"},plugins:["simple-import-sort"],rules:{"import/first":"error","import/newline-after-import":"error","import/no-duplicates":"error","simple-import-sort/exports":"off","simple-import-sort/imports":"off"}}),t=o;
7
7
 
8
8
  module.exports = t;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var e=chunkTYZCRPVH_js.b([{config:{excludedFiles:["**/?(*.)+(test).{js,jsx,ts,tsx}","*.stories.{js,ts,jsx,tsx}"],extends:["plugin:sonarjs/recommended"],rules:{"sonarjs/no-nested-template-literals":"off"}},type:"all"},{config:{rules:{"sonarjs/cognitive-complexity":["error",15],"sonarjs/no-duplicate-string":"off"}},type:"js_and_ts"},{config:{parser:"espree",parserOptions:{ecmaVersion:2020},rules:{"sonarjs/no-all-duplicated-branches":"off","sonarjs/no-duplicate-string":"off"}},type:"javascript"}]),o=e;
6
+ var e=chunkWG6GTAIA_js.b([{config:{excludedFiles:["**/?(*.)+(test).{js,jsx,ts,tsx}","*.stories.{js,ts,jsx,tsx}"],extends:["plugin:sonarjs/recommended"],rules:{"sonarjs/no-nested-template-literals":"off"}},type:"all"},{config:{rules:{"sonarjs/cognitive-complexity":["error",15],"sonarjs/no-duplicate-string":"off"}},type:"js_and_ts"},{config:{parser:"espree",parserOptions:{ecmaVersion:2020},rules:{"sonarjs/no-all-duplicated-branches":"off","sonarjs/no-duplicate-string":"off"}},type:"javascript"}]),o=e;
7
7
 
8
8
  module.exports = o;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var t=chunkTYZCRPVH_js.a("jsx_and_tsx",{extends:["plugin:tailwindcss/recommended"],plugins:["tailwindcss"]},{browser:!0,es6:!0,node:!0}),i=t;
6
+ var t=chunkWG6GTAIA_js.a("jsx_and_tsx",{extends:["plugin:tailwindcss/recommended"],plugins:["tailwindcss"]},{browser:!0,es6:!0,node:!0}),i=t;
7
7
 
8
8
  module.exports = i;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var t=chunkTYZCRPVH_js.a("all",{extends:["plugin:@tanstack/eslint-plugin-query/recommended"]}),i=t;
6
+ var t=chunkWG6GTAIA_js.a("all",{extends:["plugin:@tanstack/eslint-plugin-query/recommended"]}),i=t;
7
7
 
8
8
  module.exports = i;
9
9
  //# sourceMappingURL=out.js.map
@@ -2,10 +2,10 @@
2
2
 
3
3
  var chunkSEYYGHPU_js = require('../../chunk-SEYYGHPU.js');
4
4
  var chunkOCCLNRZC_js = require('../../chunk-OCCLNRZC.js');
5
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
5
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
6
6
  require('../../chunk-3NVDJZNH.js');
7
7
 
8
- global.hasAnolilabEsLintTestConfigLoaded||(chunkOCCLNRZC_js.a.info_on_testing_library_framework!==!1&&chunkSEYYGHPU_js.a('testing-library: loading "dom" ruleset'),global.hasAnolilabEsLintTestConfigLoaded=!0);var e=chunkTYZCRPVH_js.a("tests",{extends:["plugin:testing-library/dom"]},{browser:!0,es6:!0,node:!0}),s=e;
8
+ global.hasAnolilabEsLintTestConfigLoaded||(chunkOCCLNRZC_js.a.info_on_testing_library_framework!==!1&&chunkSEYYGHPU_js.a('testing-library: loading "dom" ruleset'),global.hasAnolilabEsLintTestConfigLoaded=!0);var e=chunkWG6GTAIA_js.a("tests",{extends:["plugin:testing-library/dom"]},{browser:!0,es6:!0,node:!0}),s=e;
9
9
 
10
10
  module.exports = s;
11
11
  //# sourceMappingURL=out.js.map
@@ -2,10 +2,10 @@
2
2
 
3
3
  var chunkSEYYGHPU_js = require('../../chunk-SEYYGHPU.js');
4
4
  var chunkOCCLNRZC_js = require('../../chunk-OCCLNRZC.js');
5
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
5
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
6
6
  require('../../chunk-3NVDJZNH.js');
7
7
 
8
- global.hasAnolilabEsLintTestConfigLoaded||(chunkOCCLNRZC_js.a.info_on_testing_library_framework!==!1&&chunkSEYYGHPU_js.a('testing-library: loading "react" ruleset'),global.hasAnolilabEsLintTestConfigLoaded=!0);var o=chunkTYZCRPVH_js.a("tests",{extends:["plugin:testing-library/react"]},{browser:!0,es6:!0,node:!0}),a=o;
8
+ global.hasAnolilabEsLintTestConfigLoaded||(chunkOCCLNRZC_js.a.info_on_testing_library_framework!==!1&&chunkSEYYGHPU_js.a('testing-library: loading "react" ruleset'),global.hasAnolilabEsLintTestConfigLoaded=!0);var o=chunkWG6GTAIA_js.a("tests",{extends:["plugin:testing-library/react"]},{browser:!0,es6:!0,node:!0}),a=o;
9
9
 
10
10
  module.exports = a;
11
11
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var r=chunkTYZCRPVH_js.a("typescript",{plugins:["eslint-plugin-tsdoc"],rules:{"tsdoc/syntax":"error"}}),i=r;
6
+ var r=chunkWG6GTAIA_js.a("typescript",{plugins:["eslint-plugin-tsdoc"],rules:{"tsdoc/syntax":"error"}}),i=r;
7
7
 
8
8
  module.exports = i;
9
9
  //# sourceMappingURL=out.js.map
@@ -2,17 +2,17 @@
2
2
 
3
3
  var chunkZFO6DTP4_js = require('../../chunk-ZFO6DTP4.js');
4
4
  var chunkKKHL2OSJ_js = require('../../chunk-KKHL2OSJ.js');
5
- var chunkJN7GUCON_js = require('../../chunk-JN7GUCON.js');
5
+ var chunkCATTWGKB_js = require('../../chunk-CATTWGKB.js');
6
6
  require('../../chunk-O7JDC6TD.js');
7
7
  var chunkOCCLNRZC_js = require('../../chunk-OCCLNRZC.js');
8
8
  var chunk2L7ILCIC_js = require('../../chunk-2L7ILCIC.js');
9
- var chunkEDPRRFFD_js = require('../../chunk-EDPRRFFD.js');
10
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
9
+ var chunkUXEQWB3K_js = require('../../chunk-UXEQWB3K.js');
10
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
11
11
  require('../../chunk-3NVDJZNH.js');
12
12
  var packageJsonUtils = require('@anolilab/package-json-utils');
13
13
  var process = require('process');
14
14
 
15
- var t=chunk2L7ILCIC_js.a.rules,y=chunkEDPRRFFD_js.a.overrides[0].rules,e=chunkJN7GUCON_js.a.overrides[0].rules,f=chunkKKHL2OSJ_js.a.rules,n=chunkZFO6DTP4_js.a.rules,{indent:b,quotes:x,semi:R}=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"],u=process.env.DISABLE_ESLINT_WARN_UNSUPPORTED_TYPESCRIPT_VERSION!=="true";chunkOCCLNRZC_js.a.warn_on_unsupported_typescript_version!==void 0&&(u=chunkOCCLNRZC_js.a.warn_on_unsupported_typescript_version);var C=chunkTYZCRPVH_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:u},plugins:["@typescript-eslint"],rules:{"@typescript-eslint/adjacent-overload-signatures":"off","@typescript-eslint/array-type":["error",{default:"array",readonly:"generic"}],"@typescript-eslint/ban-types":["error",{types:{Array:{message:"Provide a more specific type"},Boolean:{fixWith:"boolean",message:"Use boolean instead"},Number:{fixWith:"number",message:"Use number instead"},Object:{fixWith:"object",message:"Use object instead"},String:{fixWith:"string",message:"Use string instead"}}}],"@typescript-eslint/brace-style":e["brace-style"],"@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/consistent-generic-constructors":"error","@typescript-eslint/consistent-type-imports":"error","@typescript-eslint/explicit-member-accessibility":"error","@typescript-eslint/explicit-module-boundary-types":"error","@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/member-ordering":"off","@typescript-eslint/method-signature-style":"error","@typescript-eslint/naming-convention":["error",{format:["camelCase","PascalCase","UPPER_CASE"],selector:"variable"},{format:["camelCase","PascalCase"],selector:"function"},{format:["PascalCase"],selector:"typeLike"}],"@typescript-eslint/no-array-constructor":e["no-array-constructor"],"@typescript-eslint/no-confusing-non-null-assertion":"error","@typescript-eslint/no-dupe-class-members":f["no-dupe-class-members"],"@typescript-eslint/no-duplicate-enum-values":"error","@typescript-eslint/no-dynamic-delete":"warn","@typescript-eslint/no-empty-function":t["no-empty-function"],"@typescript-eslint/no-extra-non-null-assertion":"error","@typescript-eslint/no-extra-parens":y["no-extra-parens"],"@typescript-eslint/no-extra-semi":y["no-extra-semi"],"@typescript-eslint/no-import-type-side-effects":"error","@typescript-eslint/no-invalid-void-type":"warn","@typescript-eslint/no-loop-func":t["no-loop-func"],"@typescript-eslint/no-magic-numbers":t["no-magic-numbers"],"@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-redeclare":t["no-redeclare"],"@typescript-eslint/no-require-imports":"error","@typescript-eslint/no-shadow":n["no-shadow"],"@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-unused-expressions":t["no-unused-expressions"],"@typescript-eslint/no-unused-vars":n["no-unused-vars"],"@typescript-eslint/no-use-before-define":n["no-use-before-define"],"@typescript-eslint/no-useless-constructor":f["no-useless-constructor"],"@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/prefer-ts-expect-error":"error","@typescript-eslint/quotes":x,"@typescript-eslint/return-await":t["no-return-await"],"@typescript-eslint/semi":R,"@typescript-eslint/sort-type-constituents":"error","@typescript-eslint/space-before-function-paren":e["space-before-function-paren"],"@typescript-eslint/space-infix-ops":e["space-infix-ops"],...global.anolilabEslintConfigTypescriptPrettierRules}},type:"typescript"}]),U=C;
15
+ var t=chunk2L7ILCIC_js.a.rules,y=chunkUXEQWB3K_js.a.overrides[0].rules,e=chunkCATTWGKB_js.a.overrides[0].rules,f=chunkKKHL2OSJ_js.a.rules,n=chunkZFO6DTP4_js.a.rules,{indent:b,quotes:x,semi:R}=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"],u=process.env.DISABLE_ESLINT_WARN_UNSUPPORTED_TYPESCRIPT_VERSION!=="true";chunkOCCLNRZC_js.a.warn_on_unsupported_typescript_version!==void 0&&(u=chunkOCCLNRZC_js.a.warn_on_unsupported_typescript_version);var C=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:u},plugins:["@typescript-eslint"],rules:{"@typescript-eslint/adjacent-overload-signatures":"off","@typescript-eslint/array-type":["error",{default:"array",readonly:"generic"}],"@typescript-eslint/ban-types":["error",{types:{Array:{message:"Provide a more specific type"},Boolean:{fixWith:"boolean",message:"Use boolean instead"},Number:{fixWith:"number",message:"Use number instead"},Object:{fixWith:"object",message:"Use object instead"},String:{fixWith:"string",message:"Use string instead"}}}],"@typescript-eslint/brace-style":e["brace-style"],"@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/consistent-generic-constructors":"error","@typescript-eslint/consistent-type-imports":"error","@typescript-eslint/explicit-member-accessibility":"error","@typescript-eslint/explicit-module-boundary-types":"error","@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/member-ordering":"off","@typescript-eslint/method-signature-style":"error","@typescript-eslint/naming-convention":["error",{format:["camelCase","PascalCase","UPPER_CASE"],selector:"variable"},{format:["camelCase","PascalCase"],selector:"function"},{format:["PascalCase"],selector:"typeLike"}],"@typescript-eslint/no-array-constructor":e["no-array-constructor"],"@typescript-eslint/no-confusing-non-null-assertion":"error","@typescript-eslint/no-dupe-class-members":f["no-dupe-class-members"],"@typescript-eslint/no-duplicate-enum-values":"error","@typescript-eslint/no-dynamic-delete":"warn","@typescript-eslint/no-empty-function":t["no-empty-function"],"@typescript-eslint/no-extra-non-null-assertion":"error","@typescript-eslint/no-extra-parens":y["no-extra-parens"],"@typescript-eslint/no-extra-semi":y["no-extra-semi"],"@typescript-eslint/no-import-type-side-effects":"error","@typescript-eslint/no-invalid-void-type":"warn","@typescript-eslint/no-loop-func":t["no-loop-func"],"@typescript-eslint/no-magic-numbers":t["no-magic-numbers"],"@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-redeclare":t["no-redeclare"],"@typescript-eslint/no-require-imports":"error","@typescript-eslint/no-shadow":n["no-shadow"],"@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-unused-expressions":t["no-unused-expressions"],"@typescript-eslint/no-unused-vars":n["no-unused-vars"],"@typescript-eslint/no-use-before-define":n["no-use-before-define"],"@typescript-eslint/no-useless-constructor":f["no-useless-constructor"],"@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/prefer-ts-expect-error":"error","@typescript-eslint/quotes":x,"@typescript-eslint/return-await":t["no-return-await"],"@typescript-eslint/semi":R,"@typescript-eslint/sort-type-constituents":"error","@typescript-eslint/space-before-function-paren":e["space-before-function-paren"],"@typescript-eslint/space-infix-ops":e["space-infix-ops"],...global.anolilabEslintConfigTypescriptPrettierRules}},type:"typescript"}]),U=C;
16
16
 
17
17
  module.exports = U;
18
18
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var o=chunkTYZCRPVH_js.a("all",{extends:["plugin:you-dont-need-lodash-underscore/compatible"]}),n=o;
6
+ var o=chunkWG6GTAIA_js.a("all",{extends:["plugin:you-dont-need-lodash-underscore/compatible"]}),n=o;
7
7
 
8
8
  module.exports = n;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var n=chunkTYZCRPVH_js.a("all",{extends:["plugin:you-dont-need-momentjs/recommended"]}),t=n;
6
+ var n=chunkWG6GTAIA_js.a("all",{extends:["plugin:you-dont-need-momentjs/recommended"]}),t=n;
7
7
 
8
8
  module.exports = t;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkTYZCRPVH_js = require('../../chunk-TYZCRPVH.js');
3
+ var chunkWG6GTAIA_js = require('../../chunk-WG6GTAIA.js');
4
4
  require('../../chunk-3NVDJZNH.js');
5
5
 
6
- var e=chunkTYZCRPVH_js.a("all",{plugins:["zod"],rules:{"zod/prefer-enum":"error","zod/require-strict":"error"}}),t=e;
6
+ var e=chunkWG6GTAIA_js.a("all",{plugins:["zod"],rules:{"zod/prefer-enum":"error","zod/require-strict":"error"}}),t=e;
7
7
 
8
8
  module.exports = t;
9
9
  //# sourceMappingURL=out.js.map
@@ -1,13 +1,13 @@
1
1
  'use strict';
2
2
 
3
- var chunkJN7GUCON_js = require('../chunk-JN7GUCON.js');
3
+ var chunkCATTWGKB_js = require('../chunk-CATTWGKB.js');
4
4
  require('../chunk-O7JDC6TD.js');
5
5
  require('../chunk-OCCLNRZC.js');
6
- require('../chunk-TYZCRPVH.js');
6
+ require('../chunk-WG6GTAIA.js');
7
7
  require('../chunk-3NVDJZNH.js');
8
8
 
9
9
 
10
10
 
11
- module.exports = chunkJN7GUCON_js.a;
11
+ module.exports = chunkCATTWGKB_js.a;
12
12
  //# sourceMappingURL=out.js.map
13
13
  //# sourceMappingURL=style.js.map
@@ -2,11 +2,11 @@
2
2
 
3
3
  var chunkOCCLNRZC_js = require('./chunk-OCCLNRZC.js');
4
4
  var chunk2L7ILCIC_js = require('./chunk-2L7ILCIC.js');
5
- var chunkTYZCRPVH_js = require('./chunk-TYZCRPVH.js');
5
+ var chunkWG6GTAIA_js = require('./chunk-WG6GTAIA.js');
6
6
  require('./chunk-3NVDJZNH.js');
7
7
  var process = require('process');
8
8
 
9
- var r=chunk2L7ILCIC_js.a.rules,s=process.env.DISABLE_ESLINT_WARN_UNSUPPORTED_TYPESCRIPT_VERSION!=="true";chunkOCCLNRZC_js.a.warn_on_unsupported_typescript_version!==void 0&&(s=chunkOCCLNRZC_js.a.warn_on_unsupported_typescript_version);var p=chunkTYZCRPVH_js.a("typescript",{extends:["plugin:@typescript-eslint/recommended-type-checked","plugin:@typescript-eslint/strict-type-checked","plugin:@typescript-eslint/stylistic-type-checked"],parser:"@typescript-eslint/parser",parserOptions:{ecmaFeatures:{jsx:!0},sourceType:"module",warnOnUnsupportedTypeScriptVersion:s},plugins:["@typescript-eslint"],rules:{"@typescript-eslint/await-thenable":"error","@typescript-eslint/consistent-type-exports":["error",{fixMixedExportsWithInlineTypeSpecifier:!0}],"@typescript-eslint/dot-notation":["error",{allowKeywords:!0}],"@typescript-eslint/no-base-to-string":["error",{ignoredTypeNames:["RegExp"]}],"@typescript-eslint/no-confusing-void-expression":["error",{ignoreArrowShorthand:!0,ignoreVoidOperator:!1}],"@typescript-eslint/no-floating-promises":["error",{ignoreIIFE:!0,ignoreVoid:!0}],"@typescript-eslint/no-for-in-array":"error","@typescript-eslint/no-implied-eval":r["no-implied-eval"],"@typescript-eslint/no-meaningless-void-operator":["error",{checkNever:!0}],"@typescript-eslint/no-misused-promises":["error",{checksConditionals:!0,checksVoidReturn:{arguments:!0,attributes:!1,properties:!0,returns:!0,variables:!0}}],"@typescript-eslint/no-throw-literal":r["no-throw-literal"],"@typescript-eslint/no-unnecessary-condition":"error","@typescript-eslint/no-unnecessary-qualifier":"error","@typescript-eslint/no-unnecessary-type-arguments":"error","@typescript-eslint/no-unnecessary-type-assertion":"off","@typescript-eslint/non-nullable-type-assertion-style":"off","@typescript-eslint/prefer-includes":"error","@typescript-eslint/prefer-nullish-coalescing":["error",{ignoreConditionalTests:!0,ignoreMixedLogicalExpressions:!0}],"@typescript-eslint/prefer-readonly":["error",{onlyInlineLambdas:!1}],"@typescript-eslint/prefer-reduce-type-parameter":"error","@typescript-eslint/prefer-regexp-exec":"error","@typescript-eslint/prefer-return-this-type":"error","@typescript-eslint/prefer-string-starts-ends-with":"error","@typescript-eslint/promise-function-async":"error","@typescript-eslint/require-array-sort-compare":["error",{ignoreStringArrays:!1}],"@typescript-eslint/require-await":r["require-await"],"@typescript-eslint/restrict-plus-operands":"error","@typescript-eslint/return-await":["error","always"],"@typescript-eslint/switch-exhaustiveness-check":"error","@typescript-eslint/unbound-method":["error",{ignoreStatic:!1}]}}),y=p;
9
+ var r=chunk2L7ILCIC_js.a.rules,s=process.env.DISABLE_ESLINT_WARN_UNSUPPORTED_TYPESCRIPT_VERSION!=="true";chunkOCCLNRZC_js.a.warn_on_unsupported_typescript_version!==void 0&&(s=chunkOCCLNRZC_js.a.warn_on_unsupported_typescript_version);var p=chunkWG6GTAIA_js.a("typescript",{extends:["plugin:@typescript-eslint/recommended-type-checked","plugin:@typescript-eslint/strict-type-checked","plugin:@typescript-eslint/stylistic-type-checked"],parser:"@typescript-eslint/parser",parserOptions:{ecmaFeatures:{jsx:!0},sourceType:"module",warnOnUnsupportedTypeScriptVersion:s},plugins:["@typescript-eslint"],rules:{"@typescript-eslint/await-thenable":"error","@typescript-eslint/consistent-type-exports":["error",{fixMixedExportsWithInlineTypeSpecifier:!0}],"@typescript-eslint/dot-notation":["error",{allowKeywords:!0}],"@typescript-eslint/no-base-to-string":["error",{ignoredTypeNames:["RegExp"]}],"@typescript-eslint/no-confusing-void-expression":["error",{ignoreArrowShorthand:!0,ignoreVoidOperator:!1}],"@typescript-eslint/no-floating-promises":["error",{ignoreIIFE:!0,ignoreVoid:!0}],"@typescript-eslint/no-for-in-array":"error","@typescript-eslint/no-implied-eval":r["no-implied-eval"],"@typescript-eslint/no-meaningless-void-operator":["error",{checkNever:!0}],"@typescript-eslint/no-misused-promises":["error",{checksConditionals:!0,checksVoidReturn:{arguments:!0,attributes:!1,properties:!0,returns:!0,variables:!0}}],"@typescript-eslint/no-throw-literal":r["no-throw-literal"],"@typescript-eslint/no-unnecessary-condition":"error","@typescript-eslint/no-unnecessary-qualifier":"error","@typescript-eslint/no-unnecessary-type-arguments":"error","@typescript-eslint/no-unnecessary-type-assertion":"off","@typescript-eslint/non-nullable-type-assertion-style":"off","@typescript-eslint/prefer-includes":"error","@typescript-eslint/prefer-nullish-coalescing":["error",{ignoreConditionalTests:!0,ignoreMixedLogicalExpressions:!0}],"@typescript-eslint/prefer-readonly":["error",{onlyInlineLambdas:!1}],"@typescript-eslint/prefer-reduce-type-parameter":"error","@typescript-eslint/prefer-regexp-exec":"error","@typescript-eslint/prefer-return-this-type":"error","@typescript-eslint/prefer-string-starts-ends-with":"error","@typescript-eslint/promise-function-async":"error","@typescript-eslint/require-array-sort-compare":["error",{ignoreStringArrays:!1}],"@typescript-eslint/require-await":r["require-await"],"@typescript-eslint/restrict-plus-operands":"error","@typescript-eslint/return-await":["error","always"],"@typescript-eslint/switch-exhaustiveness-check":"error","@typescript-eslint/unbound-method":["error",{ignoreStatic:!1}]}}),y=p;
10
10
 
11
11
  module.exports = y;
12
12
  //# sourceMappingURL=out.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anolilab/eslint-config",
3
- "version": "10.0.5",
3
+ "version": "11.0.0",
4
4
  "description": "ESLint shareable config for the Anolilab JavaScript style guide.",
5
5
  "keywords": [
6
6
  "anolilab",
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/utils/create-config.ts"],"names":["getType","fileType","createConfig","type","config","environment","createConfigs","rules"],"mappings":"AAkBA,IAAMA,EAAWC,GAAuB,CACpC,OAAQA,EAAU,CACd,IAAK,aAED,MAAO,CAAC,UAAW,YAAa,WAAY,WAAY,UAAU,EAEtE,IAAK,cACD,MAAO,CAAC,WAAY,UAAU,EAElC,IAAK,YACD,MAAO,CAAC,UAAW,WAAY,WAAY,UAAW,YAAa,WAAY,UAAU,EAE7F,IAAK,aACD,MAAO,CAAC,UAAW,WAAY,UAAU,EAE7C,IAAK,MACD,MAAO,CAAC,UAAW,WAAY,WAAY,WAAY,UAAW,YAAa,WAAY,WAAY,UAAU,EAErH,IAAK,WACD,MAAO,CAAC,+BAA+B,EAE3C,IAAK,yBACD,MAAO,CAAC,+DAA+D,EAE3E,IAAK,MACD,MAAO,CAAC,UAAU,EAEtB,IAAK,OACD,MAAO,CAEH,wBACA,wBACA,wBAGA,6BACA,4BACJ,EAEJ,IAAK,MACD,MAAO,CACH,UACA,cACA,iBACA,eACA,eACA,eACA,kBACA,mBACA,sBACJ,EAEJ,IAAK,SACD,MAAO,CAAC,oCAAqC,qCAAqC,EAEtF,IAAK,QACD,MAAO,CAEH,UACA,cACA,iBACA,eACA,eACA,eACA,kBACA,mBACA,uBAGA,wBACA,wBACA,wBACA,6BACA,6BACA,oCACA,qCACJ,EAEJ,IAAK,OACD,MAAO,CAAC,WAAW,EAEvB,IAAK,UACD,MAAO,CAAC,uBAAwB,iBAAiB,EAErD,QACI,MAAM,IAAI,MAAM,cAAc,CAEtC,CACJ,EAEaC,EAAe,CAACC,EAAgBC,EAA8CC,KAChF,CACH,IAAKA,EACL,UAAW,CACP,CACI,MAAOL,EAAQG,CAAI,EACnB,GAAGC,CACP,CACJ,CACJ,GAESE,EACTC,IAKO,CACH,UAAWA,EAAM,IAAI,CAAC,CAAE,OAAAH,EAAQ,KAAAD,CAAK,KAC1B,CACH,MAAOH,EAAQG,CAAI,EACnB,GAAGC,CACP,EACH,CACL","sourcesContent":["import type { Linter } from \"eslint\";\n\ntype FileType =\n | \"all\"\n | \"ava\"\n | \"d.ts\"\n | \"javascript\"\n | \"jest\"\n | \"js_and_ts\"\n | \"jsx_and_tsx\"\n | \"markdown_inline_js_jsx\"\n | \"markdown\"\n | \"mdx\"\n | \"postcss\"\n | \"tests\"\n | \"typescript\"\n | \"vitest\";\n\nconst getType = (fileType: FileType) => {\n switch (fileType) {\n case \"typescript\": {\n // @see https://devblogs.microsoft.com/typescript/announcing-typescript-4-5-beta/#new-file-extensions\n return [\"**/*.ts\", \"**/*.d.ts\", \"**/*.tsx\", \"**/*.mts\", \"**/*.cts\"];\n }\n case \"jsx_and_tsx\": {\n return [\"**/*.jsx\", \"**/*.tsx\"];\n }\n case \"js_and_ts\": {\n return [\"**/*.js\", \"**/*.mjs\", \"**/*.cjs\", \"**/*.ts\", \"**/*.d.ts\", \"**/*.mts\", \"**/*.cts\"];\n }\n case \"javascript\": {\n return [\"**/*.js\", \"**/*.mjs\", \"**/*.cjs\"];\n }\n case \"all\": {\n return [\"**/*.js\", \"**/*.jsx\", \"**/*.mjs\", \"**/*.cjs\", \"**/*.ts\", \"**/*.d.ts\", \"**/*.tsx\", \"**/*.mts\", \"**/*.cts\"];\n }\n case \"markdown\": {\n return [\"**/*.{md,mkdn,mdown,markdown}\"];\n }\n case \"markdown_inline_js_jsx\": {\n return [\"**/*.{md,mkdn,mdown,markdown}/*.{js,javascript,jsx,node,json}\"];\n }\n case \"mdx\": {\n return [\"**/*.mdx\"];\n }\n case \"jest\": {\n return [\n // Test files\n \"**/*.spec.{js,ts,tsx}\",\n \"**/*.test.{js,ts,tsx}\",\n \"**/test/*.{js,ts,tsx}\",\n\n // Facebook convention\n \"**/__mocks__/*.{js,ts,tsx}\",\n \"**/__tests__/*.{js,ts,tsx}\",\n ];\n }\n case \"ava\": {\n return [\n \"test.js\",\n \"src/test.js\",\n \"source/test.js\",\n \"**/test-*.js\",\n \"**/*.spec.js\",\n \"**/*.test.js\",\n \"**/test/**/*.js\",\n \"**/tests/**/*.js\",\n \"**/__tests__/**/*.js\",\n ];\n }\n case \"vitest\": {\n return [\"**/__tests__/**/*.?(c|m)[jt]s?(x)\", \"**/?(*.){test,spec}.?(c|m)[jt]s?(x)\"];\n }\n case \"tests\": {\n return [\n // ava\n \"test.js\",\n \"src/test.js\",\n \"source/test.js\",\n \"**/test-*.js\",\n \"**/*.spec.js\",\n \"**/*.test.js\",\n \"**/test/**/*.js\",\n \"**/tests/**/*.js\",\n \"**/__tests__/**/*.js\",\n\n // jest\n \"**/*.spec.{js,ts,tsx}\",\n \"**/*.test.{js,ts,tsx}\",\n \"**/test/*.{js,ts,tsx}\",\n \"**/__mocks__/*.{js,ts,tsx}\",\n \"**/__tests__/*.{js,ts,tsx}\",\n \"**/__tests__/**/*.?(c|m)[jt]s?(x)\",\n \"**/?(*.){test,spec}.?(c|m)[jt]s?(x)\",\n ];\n }\n case \"d.ts\": {\n return [\"**/*.d.ts\"];\n }\n case \"postcss\": {\n return [\"**/postcss.config.js\", \"**/postcssrc.js\"];\n }\n default: {\n throw new Error(\"Unknown type\");\n }\n }\n};\n\nexport const createConfig = (type: FileType, config: Omit<Linter.ConfigOverride, \"files\">, environment?: Record<string, boolean>): Linter.Config => {\n return {\n env: environment,\n overrides: [\n {\n files: getType(type),\n ...config,\n },\n ],\n };\n};\nexport const createConfigs = (\n rules: {\n config: Omit<Linter.ConfigOverride, \"files\">;\n type: FileType;\n }[],\n): Linter.Config => {\n return {\n overrides: rules.map(({ config, type }) => {\n return {\n files: getType(type),\n ...config,\n };\n }),\n };\n};\n"]}