import { index, jsonb, pgSchema, pgTable, text, uniqueIndex, uuid } from 'drizzle-orm/pg-core'
export const USER_TABLE = 'user'
const authSchema = pgSchema('auth')
const authUser = authSchema.table('users', { id: uuid('id').primaryKey().unique().notNull() })
export const user = pgTable(
USER_TABLE,
{
id: uuid('id')
.primaryKey()
.unique()
.references(() => authUser.id),
firstName: text('firstName'),
lastName: text('lastName'),
email: text('email').unique(),
image: text('image'),
customData: jsonb('customData'),
notificationKeys: jsonb('notificationKeys')
},
(table) => {
return {
emailKey: uniqueIndex('user_email_key').on(table.email),
userIdEmailIdx: index('user_id_email_idx').on(table.id, table.email)
}
}
)
import { index, jsonb, pgSchema, pgTable, text, uniqueIndex, uuid } from 'drizzle-orm/pg-core'
export const USER_TABLE = 'user'
const authSchema = pgSchema('auth')
const authUser = authSchema.table('users', { id: uuid('id').primaryKey().unique().notNull() })
export const user = pgTable(
USER_TABLE,
{
id: uuid('id')
.primaryKey()
.unique()
.references(() => authUser.id),
firstName: text('firstName'),
lastName: text('lastName'),
email: text('email').unique(),
image: text('image'),
customData: jsonb('customData'),
notificationKeys: jsonb('notificationKeys')
},
(table) => {
return {
emailKey: uniqueIndex('user_email_key').on(table.email),
userIdEmailIdx: index('user_id_email_idx').on(table.id, table.email)
}
}
)