diff --git a/api/dropbox/[...path].ts b/api/dropbox/[...path].ts index c53842b..3d030e9 100644 --- a/api/dropbox/[...path].ts +++ b/api/dropbox/[...path].ts @@ -1,4 +1,5 @@ import type { VercelRequest, VercelResponse } from '@vercel/node'; +import fetch from 'node-fetch'; // Ensure fetch is available export default async function handler(req: VercelRequest, res: VercelResponse) { // Allow CORS @@ -60,7 +61,8 @@ export default async function handler(req: VercelRequest, res: VercelResponse) { res.status(200).send(data); } catch (error) { + } catch (error: any) { console.error('Proxy Error:', error); - res.status(500).json({ error: 'Failed to fetch data from Dropbox' }); + res.status(500).json({ error: 'Failed to fetch data from Dropbox', details: error.message }); } } diff --git a/package-lock.json b/package-lock.json index 8559b88..cf4c254 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "0.0.0", "dependencies": { "@google/genai": "^1.30.0", + "node-fetch": "^3.3.2", "papaparse": "^5.5.3", "react": "^19.2.0", "react-dom": "^19.2.0", @@ -3873,7 +3874,6 @@ "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=12" }, @@ -4125,6 +4125,7 @@ "integrity": "sha512-w8GmOxZfBmKknvdXU1sdM9NHcoQejwF/4mNgj2JuEEdRaHwwF12K7e9eXn1nLZ07ad+du76mkVsyeb2rKGllsA==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@types/estree": "1.0.8" }, diff --git a/package.json b/package.json index fb706d3..f0a6e08 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,9 @@ "private": true, "version": "0.0.0", "type": "module", + "engines": { + "node": ">=18.0.0" + }, "scripts": { "dev": "vite", "build": "vite build", @@ -10,6 +13,7 @@ }, "dependencies": { "@google/genai": "^1.30.0", + "node-fetch": "^3.3.2", "papaparse": "^5.5.3", "react": "^19.2.0", "react-dom": "^19.2.0", @@ -23,4 +27,4 @@ "typescript": "~5.8.2", "vite": "^6.2.0" } -} +} \ No newline at end of file