Initial commit
This commit is contained in:
310
patch/eslint-plugin-react.patch
Normal file
310
patch/eslint-plugin-react.patch
Normal file
@ -0,0 +1,310 @@
|
||||
diff --git a/.eslintrc b/.eslintrc
|
||||
deleted file mode 100644
|
||||
index 4991f200..00000000
|
||||
--- a/.eslintrc
|
||||
+++ /dev/null
|
||||
@@ -1,82 +0,0 @@
|
||||
-{
|
||||
- "root": true,
|
||||
- "extends": ["airbnb-base", "plugin:eslint-plugin/recommended"],
|
||||
- "plugins": ["eslint-plugin"],
|
||||
- "env": {
|
||||
- "es6": true,
|
||||
- "node": true
|
||||
- },
|
||||
- "parserOptions": {
|
||||
- "ecmaVersion": 6,
|
||||
- "ecmaFeatures": {
|
||||
- "jsx": true
|
||||
- },
|
||||
- "sourceType": "script",
|
||||
- },
|
||||
- "ignorePatterns": [
|
||||
- "coverage/",
|
||||
- ".nyc_output/",
|
||||
- ],
|
||||
- "rules": {
|
||||
- "comma-dangle": [2, "always-multiline"],
|
||||
- "object-shorthand": [2, "always", {
|
||||
- "ignoreConstructors": false,
|
||||
- "avoidQuotes": false, // this is the override vs airbnb
|
||||
- }],
|
||||
- "max-len": [2, 120, {
|
||||
- "ignoreStrings": true,
|
||||
- "ignoreTemplateLiterals": true,
|
||||
- "ignoreComments": true,
|
||||
- }],
|
||||
- "consistent-return": 0,
|
||||
-
|
||||
- "prefer-destructuring": [2, { "array": false, "object": false }, { "enforceForRenamedProperties": false }],
|
||||
- "prefer-object-spread": 0, // until node 8 is required
|
||||
- "prefer-rest-params": 0, // until node 6 is required
|
||||
- "prefer-spread": 0, // until node 6 is required
|
||||
- "function-call-argument-newline": 1, // TODO: enable
|
||||
- "function-paren-newline": 0,
|
||||
- "no-plusplus": [2, {"allowForLoopAfterthoughts": true}],
|
||||
- "no-param-reassign": 1,
|
||||
- "no-restricted-syntax": [2, {
|
||||
- "selector": "ObjectPattern",
|
||||
- "message": "Object destructuring is not compatible with Node v4"
|
||||
- }],
|
||||
- "strict": [2, "safe"],
|
||||
- "valid-jsdoc": [2, {
|
||||
- "requireReturn": false,
|
||||
- "requireParamDescription": false,
|
||||
- "requireReturnDescription": false,
|
||||
- }],
|
||||
-
|
||||
- "eslint-plugin/consistent-output": 0,
|
||||
- "eslint-plugin/require-meta-docs-description": [2, { "pattern": "^(Enforce|Require|Disallow)" }],
|
||||
- "eslint-plugin/require-meta-schema": 0,
|
||||
- "eslint-plugin/require-meta-type": 0
|
||||
- },
|
||||
- "overrides": [
|
||||
- {
|
||||
- "files": "tests/**",
|
||||
- "rules": {
|
||||
- "no-template-curly-in-string": 1,
|
||||
- },
|
||||
- },
|
||||
- {
|
||||
- "files": "markdown.config.js",
|
||||
- "rules": {
|
||||
- "no-console": 0,
|
||||
- },
|
||||
- },
|
||||
- {
|
||||
- "files": ".github/workflows/*.js",
|
||||
- "parserOptions": {
|
||||
- "ecmaVersion": 2019,
|
||||
- },
|
||||
- "rules": {
|
||||
- "camelcase": 0,
|
||||
- "no-console": 0,
|
||||
- "no-restricted-syntax": 0,
|
||||
- },
|
||||
- },
|
||||
- ],
|
||||
-}
|
||||
diff --git a/index.js b/index.js
|
||||
index 4140c6c8..792ceb4f 100644
|
||||
--- a/index.js
|
||||
+++ b/index.js
|
||||
@@ -1,15 +1,13 @@
|
||||
'use strict';
|
||||
|
||||
-const configAll = require('./configs/all');
|
||||
-const configRecommended = require('./configs/recommended');
|
||||
-const configRuntime = require('./configs/jsx-runtime');
|
||||
-
|
||||
-const allRules = require('./lib/rules');
|
||||
+import configAll from './configs/all';
|
||||
+import configRecommended from './configs/recommended';
|
||||
+import configRuntime from './configs/jsx-runtime';
|
||||
+import { name } from './package.json';
|
||||
+import allRules from './lib/rules';
|
||||
|
||||
// for legacy config system
|
||||
-const plugins = [
|
||||
- 'react',
|
||||
-];
|
||||
+const plugins = [name];
|
||||
|
||||
module.exports = {
|
||||
deprecatedRules: configAll.plugins.react.deprecatedRules,
|
||||
diff --git a/lib/rules/button-has-type.js b/lib/rules/button-has-type.js
|
||||
index 204a33c4..01d992c2 100644
|
||||
--- a/lib/rules/button-has-type.js
|
||||
+++ b/lib/rules/button-has-type.js
|
||||
@@ -5,8 +5,7 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
-const getProp = require('jsx-ast-utils/getProp');
|
||||
-const getLiteralPropValue = require('jsx-ast-utils/getLiteralPropValue');
|
||||
+const { getProp, getLiteralPropValue } = require('jsx-ast-utils');
|
||||
const docsUrl = require('../util/docsUrl');
|
||||
const isCreateElement = require('../util/isCreateElement');
|
||||
const report = require('../util/report');
|
||||
diff --git a/lib/rules/jsx-fragments.js b/lib/rules/jsx-fragments.js
|
||||
index 38b4dd8b..d0575572 100644
|
||||
--- a/lib/rules/jsx-fragments.js
|
||||
+++ b/lib/rules/jsx-fragments.js
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
-const elementType = require('jsx-ast-utils/elementType');
|
||||
+import { elementType } from 'jsx-ast-utils';
|
||||
const pragmaUtil = require('../util/pragma');
|
||||
const variableUtil = require('../util/variable');
|
||||
const testReactVersion = require('../util/version').testReactVersion;
|
||||
diff --git a/lib/rules/jsx-key.js b/lib/rules/jsx-key.js
|
||||
index 263ed824..e413ef5d 100644
|
||||
--- a/lib/rules/jsx-key.js
|
||||
+++ b/lib/rules/jsx-key.js
|
||||
@@ -5,8 +5,7 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
-const hasProp = require('jsx-ast-utils/hasProp');
|
||||
-const propName = require('jsx-ast-utils/propName');
|
||||
+import { hasProp, propName } from 'jsx-ast-utils';
|
||||
const values = require('object.values');
|
||||
const docsUrl = require('../util/docsUrl');
|
||||
const pragmaUtil = require('../util/pragma');
|
||||
diff --git a/lib/rules/jsx-no-bind.js b/lib/rules/jsx-no-bind.js
|
||||
index 0a4c38e6..75a57bd9 100644
|
||||
--- a/lib/rules/jsx-no-bind.js
|
||||
+++ b/lib/rules/jsx-no-bind.js
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
-const propName = require('jsx-ast-utils/propName');
|
||||
+import { propName } from 'jsx-ast-utils';
|
||||
const docsUrl = require('../util/docsUrl');
|
||||
const jsxUtil = require('../util/jsx');
|
||||
const report = require('../util/report');
|
||||
diff --git a/lib/rules/jsx-pascal-case.js b/lib/rules/jsx-pascal-case.js
|
||||
index a1bb4811..db051356 100644
|
||||
--- a/lib/rules/jsx-pascal-case.js
|
||||
+++ b/lib/rules/jsx-pascal-case.js
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
-const elementType = require('jsx-ast-utils/elementType');
|
||||
+import { elementType } from 'jsx-ast-utils';
|
||||
const minimatch = require('minimatch');
|
||||
const docsUrl = require('../util/docsUrl');
|
||||
const jsxUtil = require('../util/jsx');
|
||||
diff --git a/lib/rules/jsx-sort-props.js b/lib/rules/jsx-sort-props.js
|
||||
index 5de5bee1..8013a8de 100644
|
||||
--- a/lib/rules/jsx-sort-props.js
|
||||
+++ b/lib/rules/jsx-sort-props.js
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
-const propName = require('jsx-ast-utils/propName');
|
||||
+import { propName } from 'jsx-ast-utils';
|
||||
const includes = require('array-includes');
|
||||
const toSorted = require('array.prototype.tosorted');
|
||||
|
||||
diff --git a/lib/rules/no-namespace.js b/lib/rules/no-namespace.js
|
||||
index 64bbc8d5..b5e9c803 100644
|
||||
--- a/lib/rules/no-namespace.js
|
||||
+++ b/lib/rules/no-namespace.js
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
-const elementType = require('jsx-ast-utils/elementType');
|
||||
+import { elementType } from 'jsx-ast-utils';
|
||||
const docsUrl = require('../util/docsUrl');
|
||||
const isCreateElement = require('../util/isCreateElement');
|
||||
const report = require('../util/report');
|
||||
diff --git a/lib/util/annotations.js b/lib/util/annotations.js
|
||||
index 60aaef8c..ad8dc0bf 100644
|
||||
--- a/lib/util/annotations.js
|
||||
+++ b/lib/util/annotations.js
|
||||
@@ -27,6 +27,6 @@ function isAnnotatedFunctionPropsDeclaration(node, context) {
|
||||
return (isAnnotated && (isDestructuredProps || isProps));
|
||||
}
|
||||
|
||||
-module.exports = {
|
||||
+export {
|
||||
isAnnotatedFunctionPropsDeclaration,
|
||||
};
|
||||
diff --git a/lib/util/ast.js b/lib/util/ast.js
|
||||
index fd6019a3..3cbc293e 100644
|
||||
--- a/lib/util/ast.js
|
||||
+++ b/lib/util/ast.js
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
-const estraverse = require('estraverse');
|
||||
+import estraverse from 'estraverse';
|
||||
// const pragmaUtil = require('./pragma');
|
||||
|
||||
/**
|
||||
@@ -428,7 +428,7 @@ function isTSTypeParameterInstantiation(node) {
|
||||
return nodeType === 'TSTypeParameterInstantiation';
|
||||
}
|
||||
|
||||
-module.exports = {
|
||||
+export {
|
||||
traverse,
|
||||
findReturnStatement,
|
||||
getFirstNodeInLine,
|
||||
diff --git a/lib/util/jsx.js b/lib/util/jsx.js
|
||||
index 55073bfe..efc07af1 100644
|
||||
--- a/lib/util/jsx.js
|
||||
+++ b/lib/util/jsx.js
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
-const elementType = require('jsx-ast-utils/elementType');
|
||||
+import { elementType } from 'jsx-ast-utils';
|
||||
|
||||
const astUtil = require('./ast');
|
||||
const isCreateElement = require('./isCreateElement');
|
||||
diff --git a/package.json b/package.json
|
||||
index cb736434..a97113c0 100644
|
||||
--- a/package.json
|
||||
+++ b/package.json
|
||||
@@ -25,21 +25,13 @@
|
||||
"homepage": "https://github.com/jsx-eslint/eslint-plugin-react",
|
||||
"bugs": "https://github.com/jsx-eslint/eslint-plugin-react/issues",
|
||||
"dependencies": {
|
||||
- "array-includes": "^3.1.6",
|
||||
- "array.prototype.flatmap": "^1.3.1",
|
||||
- "array.prototype.tosorted": "^1.1.1",
|
||||
"doctrine": "^2.1.0",
|
||||
"estraverse": "^5.3.0",
|
||||
"jsx-ast-utils": "^2.4.1 || ^3.0.0",
|
||||
"minimatch": "^3.1.2",
|
||||
- "object.entries": "^1.1.6",
|
||||
- "object.fromentries": "^2.0.6",
|
||||
- "object.hasown": "^1.1.2",
|
||||
- "object.values": "^1.1.6",
|
||||
"prop-types": "^15.8.1",
|
||||
"resolve": "^2.0.0-next.4",
|
||||
- "semver": "^6.3.0",
|
||||
- "string.prototype.matchall": "^4.0.8"
|
||||
+ "semver": "^6.3.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.21.0",
|
||||
diff --git a/tsconfig.json b/tsconfig.json
|
||||
deleted file mode 100644
|
||||
index 39187b7f..00000000
|
||||
--- a/tsconfig.json
|
||||
+++ /dev/null
|
||||
@@ -1,23 +0,0 @@
|
||||
-{
|
||||
- "compilerOptions": {
|
||||
- "target": "ES2015", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */
|
||||
- "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
|
||||
- // "lib": ["es2015"], /* Specify library files to be included in the compilation. */
|
||||
- "allowJs": true, /* Allow javascript files to be compiled. */
|
||||
- "checkJs": true, /* Report errors in .js files. */
|
||||
- "noEmit": true, /* Do not emit outputs. */
|
||||
- "esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */
|
||||
-
|
||||
- /* Strict Type-Checking Options */
|
||||
- // "strict": true, /* Enable all strict type-checking options. */
|
||||
- "noImplicitAny": false, /* Raise error on expressions and declarations with an implied 'any' type. */
|
||||
- // "strictNullChecks": true, /* Enable strict null checks. */
|
||||
- // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */
|
||||
- "strictFunctionTypes": true, /* Enable strict checking of function types. */
|
||||
- "strictBindCallApply": true, /* Enable strict 'bind', 'call', and 'apply' methods on functions. */
|
||||
- "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */
|
||||
- "alwaysStrict": false, /* Parse in strict mode and emit "use strict" for each source file. */
|
||||
- "resolveJsonModule": true
|
||||
- },
|
||||
- "include": ["lib"],
|
||||
-}
|
Reference in New Issue
Block a user