Files
SanatiLeads/convex/schema.ts

38 lines
1.0 KiB
TypeScript

import { defineSchema, defineTable } from "convex/server";
import { v } from "convex/values";
import { authTables } from "@convex-dev/auth/server";
const schema = defineSchema({
...authTables,
projects: defineTable({
userId: v.id("users"),
name: v.string(),
isDefault: v.boolean(),
dorkingConfig: v.object({
selectedSourceIds: v.array(v.id("dataSources")),
}),
}),
dataSources: defineTable({
projectId: v.id("projects"),
type: v.literal("website"),
url: v.string(),
name: v.string(),
analysisStatus: v.union(
v.literal("pending"),
v.literal("completed"),
v.literal("failed")
),
analysisResults: v.optional(
v.object({
features: v.array(v.string()),
painPoints: v.array(v.string()),
keywords: v.array(v.string()),
summary: v.string(),
})
),
metadata: v.optional(v.any()),
}),
});
export default schema;