diff --git a/.changeset/itchy-insects-vanish.md b/.changeset/itchy-insects-vanish.md new file mode 100644 index 00000000..5c6c551d --- /dev/null +++ b/.changeset/itchy-insects-vanish.md @@ -0,0 +1,10 @@ +--- +'@status-im/eslint-config': patch +'@status-im/components': patch +'@status-im/js': patch +'@status-im/colors': patch +'connector': patch +'@status-im/icons': patch +--- + +update ESLint diff --git a/.eslintignore b/.eslintignore deleted file mode 100644 index 8055da54..00000000 --- a/.eslintignore +++ /dev/null @@ -1,6 +0,0 @@ -**/dist -**/node_modules -**/protos -**/proto -**/coverage -**/storybook-static diff --git a/.vscode/settings.json b/.vscode/settings.json index 08d152b0..0bb9ccf6 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,7 +1,13 @@ { "typescript.tsdk": "node_modules/typescript/lib", "npm.packageManager": "pnpm", + "eslint.useESLintClass": true, "eslint.workingDirectories": [ + "./packages/colors", + "./packages/icons", + "./packages/components", + "./packages/status-js", + "./apps/connector", { "mode": "auto", "#comment": "See https://github.com/microsoft/vscode-eslint/issues/1161 for reason (i.e. multiple .eslintrc config files)" diff --git a/apps/connector/.eslintrc.js b/apps/connector/.eslintrc.js deleted file mode 100644 index efd303c1..00000000 --- a/apps/connector/.eslintrc.js +++ /dev/null @@ -1,39 +0,0 @@ -module.exports = { - root: true, - overrides: [ - { - files: ['*.ts', '*.tsx'], - extends: ['@status-im/eslint-config', 'plugin:tailwindcss/recommended'], - - rules: { - 'no-constant-binary-expression': 'error', - 'no-restricted-globals': ['error', 'process'], - 'jsx-a11y/alt-text': [ - 1, - { - img: [], - }, - ], - }, - }, - { - // parser: 'esprima', - files: ['*.mjs'], - // env: { - // browser: true, - // es2021: true, - // }, - // extends: ['eslint:recommended', 'plugin:import/recommended'], - parserOptions: { - ecmaVersion: 'latest', - sourceType: 'module', - }, - }, - { - files: ['*.js'], - parserOptions: { - ecmaVersion: 'latest', - }, - }, - ], -} diff --git a/apps/connector/Jenkinsfile b/apps/connector/Jenkinsfile index 7caa744a..fbda707f 100644 --- a/apps/connector/Jenkinsfile +++ b/apps/connector/Jenkinsfile @@ -62,10 +62,10 @@ pipeline { expression { changesDetected } } steps { - dir("${env.WORKSPACE}/apps/connector") { + dir("${env.WORKSPACE}") { script { nix.shell( - 'pnpm build:chrome', + 'pnpm turbo run build --filter=connector', pure: false, entryPoint: "${env.WORKSPACE}/apps/connector/shell.nix" ) diff --git a/apps/connector/eslint.config.mjs b/apps/connector/eslint.config.mjs new file mode 100644 index 00000000..221ad6ac --- /dev/null +++ b/apps/connector/eslint.config.mjs @@ -0,0 +1,37 @@ +import configs, { tailwindcssConfigs } from '@status-im/eslint-config' + +/** @type {import('eslint').Linter.Config[]} */ +export default [ + ...configs, + ...tailwindcssConfigs, + { + files: ['*.ts', '*.tsx'], + rules: { + 'no-constant-binary-expression': 'error', + 'no-restricted-globals': ['error', 'process'], + 'jsx-a11y/alt-text': [ + 1, + { + img: [], + }, + ], + }, + }, + { + files: ['*.mjs'], + languageOptions: { + parserOptions: { + ecmaVersion: 'latest', + sourceType: 'module', + }, + }, + }, + { + files: ['*.js'], + languageOptions: { + parserOptions: { + ecmaVersion: 'latest', + }, + }, + }, +] diff --git a/apps/connector/package.json b/apps/connector/package.json index 845e726a..a93a80fa 100644 --- a/apps/connector/package.json +++ b/apps/connector/package.json @@ -13,9 +13,10 @@ "dev:chrome": "plasmo dev --target=chrome-mv3", "dev:safari": "plasmo dev --target=safari-mv3", "dev:firefox": "plasmo dev --target=firefox-mv3", + "build": "pnpm build:chrome", "build:chrome": "plasmo build --target=chrome-mv3", "build:firefox": "plasmo build --target=firefox-mv3 --zip", - "lint": "eslint ./src", + "lint": "eslint src", "format": "prettier --write .", "package": "plasmo package", "clean": "rimraf apps build .plasmo node_modules" @@ -25,7 +26,7 @@ "@plasmohq/storage": "^1.11.0", "@radix-ui/react-dropdown-menu": "^2.1.1", "@radix-ui/react-switch": "^1.1.0", - "@status-im/colors": "^0.4.0", + "@status-im/colors": "workspace:*", "cva": "^1.0.0-beta.1", "ethers": "^6.13.0", "plasmo": "0.88.0", @@ -37,7 +38,7 @@ "devDependencies": { "@ianvs/prettier-plugin-sort-imports": "4.1.1", "@parcel/bundler-experimental": "^2.7.0", - "@status-im/eslint-config": "^0.3.0", + "@status-im/eslint-config": "workspace:*", "@tailwindcss/typography": "^0.5.13", "@types/chrome": "0.0.258", "@types/node": "20.11.5", @@ -45,7 +46,6 @@ "@types/react-dom": "18.2.18", "autoprefixer": "^10.4.19", "husky": "^8.0.3", - "lint-staged": "^13.2.0", "postcss": "^8.4.38", "prettier": "3.2.4", "prettier-plugin-tailwindcss": "^0.6.1", diff --git a/apps/connector/src/components/status-tag.tsx b/apps/connector/src/components/status-tag.tsx index 9881a7b6..3e149f55 100644 --- a/apps/connector/src/components/status-tag.tsx +++ b/apps/connector/src/components/status-tag.tsx @@ -9,8 +9,8 @@ const styles = cva({ base: 'flex h-6 items-center gap-1 rounded-[20px] border px-2 text-13', variants: { status: { - on: 'border-success-/20 bg-success-/10 text-success-60', - off: 'border-danger-/20 bg-danger-/10 text-danger-60', + on: 'border-success-50/20 bg-success-50/10 text-success-60', + off: 'border-danger-50/20 bg-danger-50/10 text-danger-60', }, }, }) diff --git a/apps/connector/src/contents/provider.ts b/apps/connector/src/contents/provider.ts index c41e6b2e..6b0a09b3 100644 --- a/apps/connector/src/contents/provider.ts +++ b/apps/connector/src/contents/provider.ts @@ -127,7 +127,7 @@ export class Provider { return } } - } catch (error) { + } catch { // we don't reject here because incoming message is not from the proxy return } diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 00000000..59520d06 --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,13 @@ +/** @type {import('eslint').Linter.Config[]} */ +export default [ + { + ignores: [ + '**/dist', + '**/node_modules', + '**/protos', + '**/proto', + '**/coverage', + '**/storybook-static', + ], + }, +] diff --git a/package.json b/package.json index f0c97446..5cd24200 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,8 @@ "packages/status-js", "packages/colors", "packages/icons", - "packages/components" + "packages/components", + "apps/connector" ] }, "keywords": [], @@ -16,8 +17,8 @@ "prepare": "husky install", "test": "turbo run test --filter=@status-im/* -- --run", "dev": "turbo run dev --filter=@status-im/* --parallel", - "build": "turbo run build --filter=@status-im/* && node --version", - "lint": "turbo run lint --filter=@status-im/* --filter=web", + "build": "turbo run build --filter=@status-im/* --filter=connector", + "lint": "turbo run lint --filter=@status-im/* --filter=connector", "typecheck": "turbo run typecheck", "format": "prettier --write .", "clean": "turbo run clean && rimraf node_modules", @@ -32,8 +33,9 @@ "@status-im/eslint-config": "workspace:*", "@tsconfig/strictest": "^2.0.0", "@types/prettier": "^2.7.2", + "eslint": "^9.14.0", "husky": "^8.0.3", - "lint-staged": "^13.2.0", + "lint-staged": "^15.2.10", "prettier": "^3.3.3", "prettier-plugin-tailwindcss": "^0.6.6", "@types/react": "^18.0.33", diff --git a/packages/colors/.eslintrc b/packages/colors/.eslintrc deleted file mode 100644 index bef97c7d..00000000 --- a/packages/colors/.eslintrc +++ /dev/null @@ -1,4 +0,0 @@ -{ - "root": true, - "extends": ["@status-im/eslint-config"] -} diff --git a/packages/colors/eslint.config.mjs b/packages/colors/eslint.config.mjs new file mode 100644 index 00000000..d344eddc --- /dev/null +++ b/packages/colors/eslint.config.mjs @@ -0,0 +1,4 @@ +import configs from '@status-im/eslint-config' + +/** @type {import('eslint').Linter.Config[]} */ +export default [...configs] diff --git a/packages/components/.eslintrc b/packages/components/.eslintrc deleted file mode 100644 index 4559223f..00000000 --- a/packages/components/.eslintrc +++ /dev/null @@ -1,7 +0,0 @@ -{ - "root": true, - "extends": ["plugin:tailwindcss/recommended", "@status-im/eslint-config"], - "rules": { - "tailwindcss/classnames-order": "off" - } -} diff --git a/packages/components/eslint.config.mjs b/packages/components/eslint.config.mjs new file mode 100644 index 00000000..13e6322d --- /dev/null +++ b/packages/components/eslint.config.mjs @@ -0,0 +1,4 @@ +import configs, { tailwindcssConfigs } from '@status-im/eslint-config' + +/** @type {import('eslint').Linter.Config[]} */ +export default [...configs, ...tailwindcssConfigs] diff --git a/packages/components/package.json b/packages/components/package.json index 4c266f7d..5affe702 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -31,7 +31,7 @@ "preinstall": "npx only-allow pnpm", "dev": "vite build --watch --mode development", "build": "vite build", - "postbuild": "pnpm build:types && node --version", + "postbuild": "pnpm build:types", "build:types": "tsc --noEmit false --emitDeclarationOnly", "typecheck": "tsc", "lint": "eslint src", diff --git a/packages/components/src/avatar/avatar.stories.tsx b/packages/components/src/avatar/avatar.stories.tsx index fb68a6e3..4b5b5c02 100644 --- a/packages/components/src/avatar/avatar.stories.tsx +++ b/packages/components/src/avatar/avatar.stories.tsx @@ -14,6 +14,7 @@ const sizesAvatar = { } const renderVariant = (variant: AvatarProps['type']) => { + // eslint-disable-next-line @typescript-eslint/no-explicit-any const content = (props: any) => { const sizes = sizesAvatar[variant] @@ -47,7 +48,7 @@ const meta = { }, render: props => ( -