TofuStack/src/lib/server/api/infrastructure/database/tables/users.table.ts

22 lines
692 B
TypeScript
Raw Normal View History

2024-05-25 06:02:26 +00:00
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)
}));