mirror of
https://github.com/BradNut/TofuStack
synced 2025-09-08 17:40:26 +00:00
22 lines
692 B
TypeScript
22 lines
692 B
TypeScript
|
|
import cuid2, { createId } from '@paralleldrive/cuid2';
|
||
|
|
import { boolean, pgTable, text } from 'drizzle-orm/pg-core';
|
||
|
|
import { citext, timestamps } from '../utils';
|
||
|
|
import { relations } from 'drizzle-orm';
|
||
|
|
import { sessionsTable } from './sessions.table';
|
||
|
|
import { tokensTable } from './tokens.table';
|
||
|
|
|
||
|
|
export const usersTable = pgTable('users', {
|
||
|
|
id: text('id')
|
||
|
|
.primaryKey()
|
||
|
|
.$defaultFn(() => createId()),
|
||
|
|
avatar: text('avatar'),
|
||
|
|
email: citext('email').notNull().unique(),
|
||
|
|
verified: boolean('verified').notNull().default(false),
|
||
|
|
...timestamps
|
||
|
|
});
|
||
|
|
|
||
|
|
export const usersRelations = relations(usersTable, ({ many }) => ({
|
||
|
|
sessions: many(sessionsTable),
|
||
|
|
tokens: many(tokensTable)
|
||
|
|
}));
|