From a65a5a91e13e0b74378fb1f7c4130526bd10acc5 Mon Sep 17 00:00:00 2001 From: Johann Schopplich Date: Thu, 20 Apr 2023 11:44:39 +0200 Subject: [PATCH] chore(react): lint tsx --- package.json | 1 + packages/react/.eslintrc | 3 + pnpm-lock.yaml | 142 +++++++++++++++++++++++++++++++++++++-- 3 files changed, 140 insertions(+), 6 deletions(-) create mode 100644 packages/react/.eslintrc diff --git a/package.json b/package.json index f15d787..29f7caf 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,7 @@ }, "devDependencies": { "@antfu/eslint-config": "^0.38.5", + "@antfu/eslint-config-react": "^0.38.5", "@types/node": "^18.15.12", "bumpp": "^9.1.0", "eslint": "^8.38.0", diff --git a/packages/react/.eslintrc b/packages/react/.eslintrc new file mode 100644 index 0000000..9d8f0f8 --- /dev/null +++ b/packages/react/.eslintrc @@ -0,0 +1,3 @@ +{ + "extends": "@antfu/eslint-config-react" +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4a915e7..0d06da4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -7,6 +7,9 @@ importers: '@antfu/eslint-config': specifier: ^0.38.5 version: 0.38.5(eslint@8.38.0)(typescript@5.0.4) + '@antfu/eslint-config-react': + specifier: ^0.38.5 + version: 0.38.5(eslint@8.38.0)(typescript@5.0.4) '@types/node': specifier: ^18.15.12 version: 18.15.12 @@ -69,8 +72,8 @@ importers: specifier: ^18.0.11 version: 18.0.11 '@vitejs/plugin-react': - specifier: ^3.1.0 - version: 3.1.0(vite@4.2.2) + specifier: ^4.0.0-beta.1 + version: 4.0.0-beta.1(vite@4.2.2) fast-blurhash: specifier: ^1.1.2 version: 1.1.2 @@ -318,6 +321,23 @@ packages: - typescript dev: true + /@antfu/eslint-config-react@0.38.5(eslint@8.38.0)(typescript@5.0.4): + resolution: {integrity: sha512-CKK3TvMpYg8qSni4w0Km86kun//PMxzcwg6uoJf6igBqXA9ocg4aBRaXaGbOMWcjNvFtUAFpG0be1uQuqLMeIg==} + peerDependencies: + eslint: '>=7.4.0' + dependencies: + '@antfu/eslint-config-ts': 0.38.5(eslint@8.38.0)(typescript@5.0.4) + eslint: 8.38.0 + eslint-plugin-react: 7.32.2(eslint@8.38.0) + eslint-plugin-react-hooks: 4.6.0(eslint@8.38.0) + transitivePeerDependencies: + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - jest + - supports-color + - typescript + dev: true + /@antfu/eslint-config-ts@0.38.5(eslint@8.38.0)(typescript@5.0.4): resolution: {integrity: sha512-5NCZj44HgWNLvp5ikah26f7RnovhSgrNzfO3zSMewhaJZgDerglVpig3Rc0tOZFEGieWZTDWruZHyvZZRc3lJw==} peerDependencies: @@ -1941,16 +1961,16 @@ packages: - supports-color dev: true - /@vitejs/plugin-react@3.1.0(vite@4.2.2): - resolution: {integrity: sha512-AfgcRL8ZBhAlc3BFdigClmTUMISmmzHn7sB2h9U1odvc5U/MjWXsAaz18b/WoppUTDBzxOJwo2VdClfUcItu9g==} + /@vitejs/plugin-react@4.0.0-beta.1(vite@4.2.2): + resolution: {integrity: sha512-gEZYZ2iv8cyx9QRmEijCXrd/9OE+icYcZD5d1ThuqmePtIj2R6wMsxQXcf2CAJWIh4SLy1JfDVt2v+8E2loKmg==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: - vite: ^4.1.0-beta.0 + vite: ^4.2.0 dependencies: '@babel/core': 7.21.4 '@babel/plugin-transform-react-jsx-self': 7.21.0(@babel/core@7.21.4) '@babel/plugin-transform-react-jsx-source': 7.19.6(@babel/core@7.21.4) - magic-string: 0.27.0 + magic-string: 0.30.0 react-refresh: 0.14.0 vite: 4.2.2(@types/node@18.15.12) transitivePeerDependencies: @@ -2541,6 +2561,16 @@ packages: es-shim-unscopables: 1.0.0 dev: true + /array.prototype.tosorted@1.1.1: + resolution: {integrity: sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + es-abstract: 1.21.2 + es-shim-unscopables: 1.0.0 + get-intrinsic: 1.2.0 + dev: true + /assertion-error@1.1.0: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} dev: true @@ -3698,6 +3728,39 @@ packages: eslint: 8.38.0 dev: true + /eslint-plugin-react-hooks@4.6.0(eslint@8.38.0): + resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} + engines: {node: '>=10'} + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 + dependencies: + eslint: 8.38.0 + dev: true + + /eslint-plugin-react@7.32.2(eslint@8.38.0): + resolution: {integrity: sha512-t2fBMa+XzonrrNkyVirzKlvn5RXzzPwRHtMvLAtVZrt8oxgnTQaYbU6SXTOO1mwQgp1y5+toMSKInnzGr0Knqg==} + engines: {node: '>=4'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 + dependencies: + array-includes: 3.1.6 + array.prototype.flatmap: 1.3.1 + array.prototype.tosorted: 1.1.1 + doctrine: 2.1.0 + eslint: 8.38.0 + estraverse: 5.3.0 + jsx-ast-utils: 3.3.3 + 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 + dev: true + /eslint-plugin-unicorn@46.0.0(eslint@8.38.0): resolution: {integrity: sha512-j07WkC+PFZwk8J33LYp6JMoHa1lXc1u6R45pbSAipjpfpb7KIGr17VE2D685zCxR5VL4cjrl65kTJflziQWMDA==} engines: {node: '>=14.18'} @@ -4943,6 +5006,14 @@ packages: graceful-fs: 4.2.11 dev: true + /jsx-ast-utils@3.3.3: + resolution: {integrity: sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==} + engines: {node: '>=4.0'} + dependencies: + array-includes: 3.1.6 + object.assign: 4.1.4 + dev: true + /kleur@3.0.3: resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} engines: {node: '>=6'} @@ -5696,6 +5767,31 @@ packages: object-keys: 1.1.1 dev: true + /object.entries@1.1.6: + resolution: {integrity: sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + es-abstract: 1.21.2 + dev: true + + /object.fromentries@2.0.6: + resolution: {integrity: sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + es-abstract: 1.21.2 + dev: true + + /object.hasown@1.1.2: + resolution: {integrity: sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==} + dependencies: + define-properties: 1.2.0 + es-abstract: 1.21.2 + dev: true + /object.values@1.1.6: resolution: {integrity: sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==} engines: {node: '>= 0.4'} @@ -6308,6 +6404,14 @@ packages: sisteransi: 1.0.5 dev: true + /prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + react-is: 16.13.1 + dev: true + /protocols@2.0.1: resolution: {integrity: sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==} dev: true @@ -6357,6 +6461,10 @@ packages: scheduler: 0.23.0 dev: true + /react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + dev: true + /react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} dev: true @@ -6495,6 +6603,15 @@ packages: supports-preserve-symlinks-flag: 1.0.0 dev: true + /resolve@2.0.0-next.4: + resolution: {integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==} + hasBin: true + dependencies: + is-core-module: 2.12.0 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + dev: true + /restore-cursor@4.0.0: resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -6840,6 +6957,19 @@ packages: strip-ansi: 7.0.1 dev: true + /string.prototype.matchall@4.0.8: + resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + es-abstract: 1.21.2 + get-intrinsic: 1.2.0 + has-symbols: 1.0.3 + internal-slot: 1.0.5 + regexp.prototype.flags: 1.5.0 + side-channel: 1.0.4 + dev: true + /string.prototype.trim@1.2.7: resolution: {integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==} engines: {node: '>= 0.4'}