trails/package.json
Ullrich Schäfer b4f290ceed
fix(deps): resolve 12 Dependabot alerts via pnpm overrides
All 12 open Dependabot alerts are transitive dependencies, so resolve
them with pnpm.overrides (the pattern already used in this repo for
picomatch, brace-expansion, path-to-regexp, lodash).

- shell-quote <1.8.4 -> 1.8.4         (critical, #22; react-devtools)
- undici 7.x <7.28.0 -> 7.28.0        (high/med/low ×6, #30-36; jsdom/vitest)
- form-data <4.0.6 -> 4.0.6           (high, #28; jest-expo)
- js-yaml <3.15.0 -> 3.15.0           (medium, #37; jest istanbul)
- esbuild 0.27.x -> 0.28.1            (low, #23; vite/tsx)
- @opentelemetry/core <2.8.0 -> 2.9.0 (medium, #25; fedify runtime)
- uuid 7.0.3 -> 11.1.1                (medium, #19; xcode/expo prebuild)

Notes:
- undici override is scoped to 7.x so fedify's undici@6.27.0 (not in any
  vulnerable range) is left untouched.
- @opentelemetry/core pinned to 2.9.0 (not the minimum 2.8.0) to dedupe
  with the copy Sentry already pulls in, avoiding an otel version skew.
- uuid pinned narrowly to the vulnerable 7.0.3; xcode calls
  require('uuid').v4(), which still works under v11 (verified).

Verified: pnpm install / build / typecheck / test all pass.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-13 20:07:26 +02:00

96 lines
3 KiB
JSON

{
"name": "trails.cool",
"private": true,
"description": "Collaborative route planning + federated activity sharing for outdoor enthusiasts",
"type": "module",
"license": "MIT",
"packageManager": "pnpm@10.33.0",
"engines": {
"node": ">=20"
},
"scripts": {
"dev": "turbo dev",
"build": "turbo build",
"lint": "turbo lint",
"test": "turbo test",
"test:watch": "vitest",
"test:e2e": "playwright test",
"test:e2e:ui": "playwright test --ui",
"typecheck": "turbo typecheck",
"db:push": "drizzle-kit push --config packages/db/drizzle.config.ts --force",
"db:migrate-data": "tsx packages/db/src/migrate-data.ts",
"db:studio": "drizzle-kit studio --config packages/db/drizzle.config.ts",
"db:seed": "node --experimental-strip-types scripts/seed.ts",
"dev:services": "docker compose -f docker-compose.dev.yml up -d",
"dev:full": "./scripts/dev.sh",
"dev:reset": "./scripts/reset-dev.sh",
"dev:ios": "pnpm --filter @trails-cool/mobile ios",
"dev:android": "pnpm --filter @trails-cool/mobile android",
"openspec": "openspec"
},
"pnpm": {
"overrides": {
"picomatch@>=4.0.0 <4.0.4": "4.0.4",
"brace-expansion@>=4.0.0 <5.0.5": "5.0.5",
"path-to-regexp@<0.1.13": "0.1.13",
"lodash@<4.18.1": "4.18.1",
"shell-quote@<1.8.4": "1.8.4",
"undici@>=7.0.0 <7.28.0": "7.28.0",
"form-data@>=4.0.0 <4.0.6": "4.0.6",
"js-yaml@<3.15.0": "3.15.0",
"esbuild@>=0.27.3 <0.28.1": "0.28.1",
"@opentelemetry/core@<2.8.0": "2.9.0",
"uuid@7.0.3": "11.1.1",
"react": "catalog:",
"react-dom": "catalog:"
},
"onlyBuiltDependencies": [
"@sentry/cli",
"esbuild"
]
},
"devDependencies": {
"@eslint/js": "^10.0.1",
"@expo/fingerprint": "^0.20.3",
"@fission-ai/openspec": "^1.6.0",
"@playwright/test": "^1.61.1",
"@react-router/dev": "catalog:",
"@react-router/node": "catalog:",
"@react-router/serve": "catalog:",
"@sentry/vite-plugin": "^5.4.0",
"@tailwindcss/vite": "catalog:",
"@testing-library/jest-dom": "^6.9.1",
"@testing-library/react": "^16.3.2",
"@types/geojson": "^7946.0.16",
"@types/leaflet": "^1.9.21",
"@types/react": "catalog:",
"@types/react-dom": "catalog:",
"drizzle-kit": "catalog:",
"drizzle-orm": "catalog:",
"drizzle-postgis": "catalog:",
"eslint": "^10.7.0",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-import-x": "^4.17.1",
"fit-file-parser": "^3.0.2",
"i18next": "^26.3.6",
"i18next-browser-languagedetector": "^8.2.1",
"jsdom": "^29.1.1",
"leaflet": "^1.9.4",
"linkedom": "^0.18.13",
"playwright": "^1.61.1",
"postgres": "catalog:",
"prettier": "^3.9.5",
"react": "catalog:",
"react-dom": "catalog:",
"react-i18next": "^17.0.9",
"react-leaflet": "^5.0.0",
"react-router": "catalog:",
"tailwindcss": "catalog:",
"turbo": "^2.10.4",
"typescript": "catalog:",
"typescript-eslint": "^8.63.0",
"vite": "catalog:",
"vitest": "^4.1.10"
},
"version": "1.0.0"
}