fix(web): add missing react-swipeable dependency
Some checks failed
CI / Lint → Typecheck → Test → Build (22) (push) Failing after 10s
CI / E2E Tests (push) Has been skipped
CI / AI Services (Python) — Smoke (push) Failing after 8s
CodeQL Analysis / CodeQL (javascript-typescript) (push) Failing after 54s
Deploy / Build API Image (push) Failing after 9s
Deploy / Build Web Image (push) Failing after 4s
Deploy / Build AI Services Image (push) Failing after 4s
E2E Tests / Playwright E2E (push) Failing after 10s
Deploy / Smoke Test Staging (push) Has been skipped
Deploy / Deploy to Staging (push) Has been skipped
Deploy / Deploy to Production (push) Has been skipped
Deploy / Smoke Test Production (push) Has been skipped
Deploy / Rollback Staging (push) Has been skipped
Deploy / Rollback Production (push) Has been skipped
Security Scanning / Trivy Scan — AI Services Image (push) Failing after 1m40s
Security Scanning / Trivy Filesystem Scan (push) Failing after 1m7s
Security Scanning / Trivy Scan — API Image (push) Failing after 10m31s
Security Scanning / Dependency Audit (pnpm) (push) Failing after 11m32s
Security Scanning / Trivy Scan — Web Image (push) Failing after 14m22s
Security Scanning / Security Gate (push) Has been cancelled

`apps/web/components/listings/image-gallery.tsx` imports
`useSwipeable` from `react-swipeable`, but the package was never
declared in `apps/web/package.json`. The dev install resolved it
through hoisted node_modules locally so nobody noticed; the in-cluster
Kaniko `next build` then fails with:

  Module not found: Can't resolve 'react-swipeable'
  ./components/listings/image-gallery.tsx:5:1

Fix by declaring `react-swipeable@^7.0.2` as a real dependency of the
web workspace so pnpm-lock + Docker builds resolve it deterministically.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Ho Ngoc Hai
2026-04-30 05:39:49 +07:00
parent d6ac7c316f
commit a38c797846
2 changed files with 13 additions and 0 deletions

View File

@@ -27,6 +27,7 @@
"react": "^18.3.0",
"react-dom": "^18.3.0",
"react-hook-form": "^7.72.1",
"react-swipeable": "^7.0.2",
"recharts": "^3.8.1",
"socket.io-client": "^4.8.3",
"sonner": "^2.0.7",

12
pnpm-lock.yaml generated
View File

@@ -385,6 +385,9 @@ importers:
react-hook-form:
specifier: ^7.72.1
version: 7.72.1(react@18.3.1)
react-swipeable:
specifier: ^7.0.2
version: 7.0.2(react@18.3.1)
recharts:
specifier: ^3.8.1
version: 3.8.1(@types/react@18.3.28)(react-dom@18.3.1(react@18.3.1))(react-is@19.2.4)(react@18.3.1)(redux@5.0.1)
@@ -6411,6 +6414,11 @@ packages:
resolution: {integrity: sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==}
engines: {node: '>=0.10.0'}
react-swipeable@7.0.2:
resolution: {integrity: sha512-v1Qx1l+aC2fdxKa9aKJiaU/ZxmJ5o98RMoFwUqAAzVWUcxgfHFXDDruCKXhw6zIYXm6V64JiHgP9f6mlME5l8w==}
peerDependencies:
react: ^16.8.3 || ^17 || ^18 || ^19.0.0 || ^19.0.0-rc
react@18.3.1:
resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==}
engines: {node: '>=0.10.0'}
@@ -14171,6 +14179,10 @@ snapshots:
react-refresh@0.17.0: {}
react-swipeable@7.0.2(react@18.3.1):
dependencies:
react: 18.3.1
react@18.3.1:
dependencies:
loose-envify: 1.4.0