aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKush Thaker <[email protected]>2024-08-08 23:08:48 +0530
committerKush Thaker <[email protected]>2024-08-08 23:08:48 +0530
commit1bc290cf2bce463d35f2d48b6d2286239d12df7d (patch)
treefe70db4098df3062c62f136e1675b6939ec7dd28
parentfix: builds (diff)
downloadsupermemory-kush/be-mem.tar.xz
supermemory-kush/be-mem.zip
Move memories fetching to backendkush/be-mem
-rw-r--r--apps/cf-ai-backend/src/index.ts30
-rw-r--r--apps/web/app/actions/fetchers.ts33
2 files changed, 54 insertions, 9 deletions
diff --git a/apps/cf-ai-backend/src/index.ts b/apps/cf-ai-backend/src/index.ts
index 5957eb04..8be40577 100644
--- a/apps/cf-ai-backend/src/index.ts
+++ b/apps/cf-ai-backend/src/index.ts
@@ -25,7 +25,7 @@ import chunkText from "./queueConsumer/chunkers/chonker";
import { systemPrompt, template } from "./prompts/prompt1";
import { swaggerUI } from "@hono/swagger-ui";
import { database } from "./db";
-import { storedContent } from "@repo/db/schema";
+import { jobs, storedContent, users } from "@repo/db/schema";
import { sql, and, eq } from "drizzle-orm";
import { LIMITS } from "@repo/shared-types";
import { typeDecider } from "./queueConsumer/utils/typeDecider";
@@ -779,6 +779,34 @@ app.get("/howFuckedAreWe", async (c) => {
return c.json({ fuckedPercent });
});
+app.get(
+ "api/memories",
+ zValidator(
+ "query",
+ z.object({
+ userId: z.string(),
+ }),
+ ),
+ async (c) => {
+ const { userId } = c.req.valid("query");
+ const db = database(c.env);
+
+ const spaces = await db.query.space.findMany({
+ where: eq(users, userId),
+ });
+
+ const memories = await db.query.storedContent.findMany({
+ where: eq(users, userId),
+ });
+
+ const processingJobs = await db.query.jobs.findMany({
+ where: and(eq(jobs.userId, userId), eq(jobs.status, "Processing")),
+ });
+
+ return c.json({ spaces, memories, processingJobs });
+ },
+);
+
export default {
fetch: app.fetch,
queue,
diff --git a/apps/web/app/actions/fetchers.ts b/apps/web/app/actions/fetchers.ts
index f00feb3c..032a50f9 100644
--- a/apps/web/app/actions/fetchers.ts
+++ b/apps/web/app/actions/fetchers.ts
@@ -13,6 +13,7 @@ import {
spacesAccess,
storedContent,
StoredSpace,
+ Job,
User,
users,
} from "@repo/db/schema";
@@ -162,6 +163,7 @@ export const getMemoriesInsideSpace = async (
export const getAllUserMemoriesAndSpaces = async (): ServerActionReturnType<{
spaces: StoredSpace[];
memories: Content[];
+ processingJobs: Job[];
}> => {
const data = await auth();
@@ -170,17 +172,32 @@ export const getAllUserMemoriesAndSpaces = async (): ServerActionReturnType<{
return { error: "Not authenticated", success: false };
}
- const spaces = await db.query.space.findMany({
- where: eq(users, data.user.id),
- });
-
- const memories = await db.query.storedContent.findMany({
- where: eq(users, data.user.id),
- });
+ const memoriesFromBe = await fetch(
+ `${process.env.BACKEND_BASE_URL}/api/memories?userId=${data.user.id}`,
+ {
+ method: "GET",
+ headers: {
+ "Content-Type": "application/json",
+ },
+ },
+ );
+ const memories = (await memoriesFromBe.json()) as {
+ spaces: StoredSpace[];
+ memories: Content[];
+ processingJobs: Job[];
+ };
+ console.log(
+ "----These are the processing Jobs----",
+ JSON.stringify(memories.processingJobs),
+ );
return {
success: true,
- data: { spaces: spaces, memories: memories },
+ data: {
+ spaces: memories.spaces,
+ memories: memories.memories,
+ processingJobs: memories.processingJobs,
+ },
};
};