diff --git a/.github/workflows/style.yml b/.github/workflows/style.yml index 54372506e1b0e9..9956d7c22c8679 100644 --- a/.github/workflows/style.yml +++ b/.github/workflows/style.yml @@ -66,6 +66,12 @@ jobs: uses: tj-actions/changed-files@v45 with: files: web/** + + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + version: 10 + run_install: false - name: Setup NodeJS uses: actions/setup-node@v4 @@ -81,7 +87,7 @@ jobs: - name: Web style check if: steps.changed-files.outputs.any_changed == 'true' - run: pnpm run lint + run: echo "${{ steps.changed-files.outputs.all_changed_files }}" | sed 's|web/||g' | xargs pnpm eslint # wait for next lint support eslint v9 superlinter: name: SuperLinter diff --git a/web/package.json b/web/package.json index 7b5006254c34bf..d5020f92e747a2 100644 --- a/web/package.json +++ b/web/package.json @@ -9,7 +9,7 @@ "dev": "NODE_OPTIONS='--inspect' next dev", "build": "next build", "start": "cp -r .next/static .next/standalone/.next/static && cp -r public .next/standalone/public && cross-env PORT=$npm_config_port HOSTNAME=$npm_config_host node .next/standalone/server.js", - "lint": "next lint", + "lint": "pnpm eslint", "fix": "next lint --fix", "eslint-fix": "eslint --fix", "prepare": "cd ../ && node -e \"if (process.env.NODE_ENV !== 'production'){process.exit(1)} \" || husky ./web/.husky", @@ -27,6 +27,7 @@ "@babel/runtime": "^7.22.3", "@dagrejs/dagre": "^1.1.4", "@emoji-mart/data": "^1.2.1", + "@eslint/compat": "^1.2.4", "@floating-ui/react": "^0.26.25", "@formatjs/intl-localematcher": "^0.5.6", "@headlessui/react": "^1.7.13", @@ -86,14 +87,14 @@ "react-error-boundary": "^4.1.2", "react-headless-pagination": "^1.1.6", "react-hook-form": "^7.53.1", + "react-hotkeys-hook": "^4.6.1", "react-i18next": "^15.1.0", "react-infinite-scroll-component": "^6.1.0", "react-markdown": "^9.0.1", "react-multi-email": "^1.0.25", "react-papaparse": "^4.4.0", - "react-slider": "^2.0.6", - "react-hotkeys-hook": "^4.6.1", "react-pdf-highlighter": "^8.0.0-rc.0", + "react-slider": "^2.0.6", "react-sortablejs": "^6.1.4", "react-syntax-highlighter": "^15.6.1", "react-tooltip": "5.8.3", @@ -194,4 +195,4 @@ "eslint --fix" ] } -} +} \ No newline at end of file diff --git a/web/pnpm-lock.yaml b/web/pnpm-lock.yaml index e857736357c712..0243ab2c56d622 100644 --- a/web/pnpm-lock.yaml +++ b/web/pnpm-lock.yaml @@ -22,6 +22,9 @@ importers: '@emoji-mart/data': specifier: ^1.2.1 version: 1.2.1 + '@eslint/compat': + specifier: ^1.2.4 + version: 1.2.4(eslint@9.13.0(jiti@1.21.6)) '@floating-ui/react': specifier: ^0.26.25 version: 0.26.27(react-dom@18.2.0(react@18.2.0))(react@18.2.0) @@ -1425,8 +1428,8 @@ packages: '@eslint-react/var@1.15.0': resolution: {integrity: sha512-/QycKnbgZRygM/lhHtUFQrvvrswdOyaXfVxwtIFVEYoPHP9q7NaUn0mrBu4VWkXQC9zPk1nWQeC3rZMUxzretg==} - '@eslint/compat@1.2.1': - resolution: {integrity: sha512-JbHG2TWuCeNzh87fXo+/46Z1LEo9DBA9T188d0fZgGxAD+cNyS6sx9fdiyxjGPBMyQVRlCutTByZ6a5+YMkF7g==} + '@eslint/compat@1.2.4': + resolution: {integrity: sha512-S8ZdQj/N69YAtuqFt7653jwcvuUj131+6qGLUyDqfDg1OIoBQ66OCuXC473YQfO2AaxITTutiRQiDwoo7ZLYyg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^9.10.0 @@ -9526,7 +9529,7 @@ snapshots: - supports-color - typescript - '@eslint/compat@1.2.1(eslint@9.13.0(jiti@1.21.6))': + '@eslint/compat@1.2.4(eslint@9.13.0(jiti@1.21.6))': optionalDependencies: eslint: 9.13.0(jiti@1.21.6) @@ -13140,7 +13143,7 @@ snapshots: eslint-config-flat-gitignore@0.3.0(eslint@9.13.0(jiti@1.21.6)): dependencies: - '@eslint/compat': 1.2.1(eslint@9.13.0(jiti@1.21.6)) + '@eslint/compat': 1.2.4(eslint@9.13.0(jiti@1.21.6)) eslint: 9.13.0(jiti@1.21.6) find-up-simple: 1.0.0