diff options
| author | Dhravya <[email protected]> | 2024-03-01 11:43:40 -0700 |
|---|---|---|
| committer | Dhravya <[email protected]> | 2024-03-01 11:43:40 -0700 |
| commit | b8e070c1ac37251129774f8e7d70fdbcf94bee8c (patch) | |
| tree | f9793b1146446c9c709a8f752c6b334760a62c36 /apps/web/src/app/api | |
| parent | extension workoing (diff) | |
| download | supermemory-b8e070c1ac37251129774f8e7d70fdbcf94bee8c.tar.xz supermemory-b8e070c1ac37251129774f8e7d70fdbcf94bee8c.zip | |
feat: Added AI query UI
Diffstat (limited to 'apps/web/src/app/api')
| -rw-r--r-- | apps/web/src/app/api/query/route.ts | 16 | ||||
| -rw-r--r-- | apps/web/src/app/api/store/route.ts | 2 |
2 files changed, 12 insertions, 6 deletions
diff --git a/apps/web/src/app/api/query/route.ts b/apps/web/src/app/api/query/route.ts index 9be23321..4e2f0674 100644 --- a/apps/web/src/app/api/query/route.ts +++ b/apps/web/src/app/api/query/route.ts @@ -24,22 +24,26 @@ export async function GET(req: NextRequest) { const session = {session: sessionData[0], user: user[0]} const query = new URL(req.url).searchParams.get("q"); + const sourcesOnly = new URL(req.url).searchParams.get("sourcesOnly") ?? "false"; if (!query) { return new Response(JSON.stringify({ message: "Invalid query" }), { status: 400 }); } - const resp = await fetch(`https://cf-ai-backend.dhravya.workers.dev/query?q=${query}&user=${session.user.email ?? session.user.name}`, { + const resp = await fetch(`https://cf-ai-backend.dhravya.workers.dev/query?q=${query}&user=${session.user.email ?? session.user.name}&sourcesOnly=${sourcesOnly}`, { headers: { "X-Custom-Auth-Key": env.BACKEND_SECURITY_KEY, } }) - const data = await resp.json() - - if (resp.status !== 200) { - return new Response(JSON.stringify({ message: "Error in CF function", error: data }), { status: resp.status }); + if (resp.status !== 200 || !resp.ok) { + const errorData = await resp.json(); + return new Response(JSON.stringify({ message: "Error in CF function", error: errorData }), { status: resp.status }); } - return new Response(JSON.stringify({ message: "OK", data: data }), { status: 200 }); + // Stream the response back to the client + const { readable, writable } = new TransformStream(); + resp && resp.body!.pipeTo(writable); + + return new Response(readable, { status: 200 }); }
\ No newline at end of file diff --git a/apps/web/src/app/api/store/route.ts b/apps/web/src/app/api/store/route.ts index 5856bc4f..46e4cdfb 100644 --- a/apps/web/src/app/api/store/route.ts +++ b/apps/web/src/app/api/store/route.ts @@ -80,6 +80,8 @@ export async function POST(req: NextRequest) { const _ = await res.text(); + console.log(_) + if (res.status !== 200) { return NextResponse.json({ message: "Error", error: "Error in CF function" }, { status: 500 }); } |