Update the schema.ts to be more like the one on stpeteit
This commit is contained in:
@@ -3,22 +3,12 @@ import { defineSchema, defineTable } from 'convex/server';
|
|||||||
import { v } from 'convex/values';
|
import { v } from 'convex/values';
|
||||||
|
|
||||||
const applicationTables = {
|
const applicationTables = {
|
||||||
// Users contains name image & email.
|
/*
|
||||||
// If you would like to save any other information,
|
* Below is the users table definition from authTables
|
||||||
// I would recommend including this profiles table
|
* You can add additional fields here. You can also remove
|
||||||
// where you can include settings & anything else you would like tied to the user.
|
* the users table here & create a 'profiles' table if you
|
||||||
profiles: defineTable({
|
* prefer to keep auth data separate from application data.
|
||||||
userId: v.id('users'),
|
*/
|
||||||
theme_preference: v.optional(v.string()),
|
|
||||||
}).index('userId', ['userId']),
|
|
||||||
};
|
|
||||||
|
|
||||||
export default defineSchema({
|
|
||||||
...authTables,
|
|
||||||
// Default table for users directly from authTable.
|
|
||||||
// You can extend it if you would like, but it may
|
|
||||||
// be better to just use the profiles table example
|
|
||||||
// below.
|
|
||||||
users: defineTable({
|
users: defineTable({
|
||||||
name: v.optional(v.string()),
|
name: v.optional(v.string()),
|
||||||
image: v.optional(v.string()),
|
image: v.optional(v.string()),
|
||||||
@@ -27,9 +17,20 @@ export default defineSchema({
|
|||||||
phone: v.optional(v.string()),
|
phone: v.optional(v.string()),
|
||||||
phoneVerificationTime: v.optional(v.number()),
|
phoneVerificationTime: v.optional(v.number()),
|
||||||
isAnonymous: v.optional(v.boolean()),
|
isAnonymous: v.optional(v.boolean()),
|
||||||
|
/* Fields below here are custom & not defined in authTables */
|
||||||
|
themePreference: v.optional(v.union(
|
||||||
|
v.literal('light'),
|
||||||
|
v.literal('dark'),
|
||||||
|
v.literal('system'),
|
||||||
|
)),
|
||||||
})
|
})
|
||||||
.index('email', ['email'])
|
.index('email', ['email'])
|
||||||
.index('name', ['name'])
|
.index('phone', ['phone'])
|
||||||
.index('phone', ['phone']),
|
/* Indexes below here are custom & not defined in authTables */
|
||||||
|
.index('name', ['name']),
|
||||||
|
};
|
||||||
|
|
||||||
|
export default defineSchema({
|
||||||
|
...authTables,
|
||||||
...applicationTables,
|
...applicationTables,
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user