Cloudflare has strengthened protection on these hotels. Puppeteer-based bypass returns HTML instead of JSON. cloudscraper has dependency issues with Node.js v26. Reverted to simple HTTP fetch with clear error messages.
104 lines
2.7 KiB
JSON
104 lines
2.7 KiB
JSON
{
|
|
"name": "atomcms-next",
|
|
"private": true,
|
|
"type": "module",
|
|
"engines": {
|
|
"node": ">=22"
|
|
},
|
|
"packageManager": "[email protected]",
|
|
"scripts": {
|
|
"dev": "next dev",
|
|
"build": "next build",
|
|
"start": "next start",
|
|
"typecheck": "tsc --noEmit --incremental",
|
|
"biome:check": "biome check --write .",
|
|
"biome:lint": "biome lint .",
|
|
"biome:format": "biome format --write .",
|
|
"knip": "knip",
|
|
"analyze": "ANALYZE=true pnpm build",
|
|
"test": "vitest run",
|
|
"db:migrate": "tsx scripts/apply-migrations.ts",
|
|
"db:migrate:status": "tsx scripts/apply-migrations.ts --status",
|
|
"db:schema:generate": "node scripts/generate-drizzle-schema.mjs",
|
|
"db:generate": "drizzle-kit generate",
|
|
"db:studio": "drizzle-kit studio",
|
|
"db:introspect": "drizzle-kit introspect",
|
|
"jobs:worker": "tsx scripts/jobs-worker.ts",
|
|
"prepare": "husky"
|
|
},
|
|
"lint-staged": {
|
|
"*.{js,jsx,ts,tsx}": [
|
|
"biome check --write"
|
|
],
|
|
"*.{json,md,css,scss,html}": [
|
|
"biome format --write --no-errors-on-unmatched"
|
|
]
|
|
},
|
|
"dependencies": {
|
|
"@base-ui/react": "^1.6.0",
|
|
"@dnd-kit/core": "^6.3.1",
|
|
"@dnd-kit/sortable": "^10.0.0",
|
|
"@dnd-kit/utilities": "^3.2.2",
|
|
"@hookform/resolvers": "^5.5.7",
|
|
"@tanstack/react-virtual": "^3.14.9",
|
|
"class-variance-authority": "^0.7.1",
|
|
"cloudscraper": "^4.6.0",
|
|
"clsx": "^2.1.1",
|
|
"cmdk": "^1.1.1",
|
|
"croner": "^10.0.1",
|
|
"drizzle-orm": "^0.45.2",
|
|
"hash-wasm": "^4.12.0",
|
|
"ioredis": "^5.11.1",
|
|
"isomorphic-dompurify": "^3.20.0",
|
|
"jpeg-js": "^0.4.4",
|
|
"json5": "^2.2.3",
|
|
"jszip": "^3.10.1",
|
|
"lenis": "^1.3.25",
|
|
"lucide-react": "^1.28.0",
|
|
"lzma": "^2.3.2",
|
|
"motion": "^12.43.0",
|
|
"music-metadata": "^11.14.0",
|
|
"mysql2": "^3.23.2",
|
|
"next": "^16.2.12",
|
|
"next-auth": "5.0.0-beta.32",
|
|
"next-intl": "^4.13.4",
|
|
"otplib": "^13.4.1",
|
|
"pino": "^10.3.1",
|
|
"react": "^19.2.8",
|
|
"react-dom": "^19.2.8",
|
|
"react-hook-form": "^7.83.0",
|
|
"request": "^2.88.2",
|
|
"resend": "^6.18.1",
|
|
"server-only": "^0.0.1",
|
|
"sharp": "^0.35.3",
|
|
"sonner": "^2.0.7",
|
|
"tailwind-merge": "^3.6.0",
|
|
"tailwindcss-animate": "^1.0.7",
|
|
"zod": "^4.4.3"
|
|
},
|
|
"devDependencies": {
|
|
"@biomejs/biome": "2.5.6",
|
|
"@next/bundle-analyzer": "^16.2.12",
|
|
"@tailwindcss/forms": "^0.5.11",
|
|
"@tailwindcss/postcss": "^4.3.3",
|
|
"@tailwindcss/typography": "^0.5.20",
|
|
"@types/node": "^26.1.2",
|
|
"@types/react": "^19.2.18",
|
|
"@types/react-dom": "^19.2.4",
|
|
"@vitest/coverage-v8": "4.1.10",
|
|
"babel-plugin-react-compiler": "^1.0.0",
|
|
"dotenv": "^17.4.2",
|
|
"drizzle-kit": "^0.31.10",
|
|
"husky": "^9.1.7",
|
|
"knip": "^6.30.0",
|
|
"lint-staged": "^17.3.0",
|
|
"pino-pretty": "^13.1.3",
|
|
"postcss": "^8.5.25",
|
|
"tailwindcss": "^4.3.3",
|
|
"tsx": "^4.23.1",
|
|
"typescript": "^7.0.2",
|
|
"vite": "8.2.0",
|
|
"vitest": "4.1.10"
|
|
}
|
|
}
|