export const user = mysqlTable(
'User',
{
id: varchar('id', { length: 191 }).primaryKey().notNull(),
username: varchar('username', { length: 191 }),
profileImageUrl: varchar('profileImageUrl', { length: 191 }),
email: varchar('email', { length: 191 }),
bio: text('bio'),
headline: text('headline'),
website: varchar('website', { length: 191 }),
twitter: varchar('twitter', { length: 191 }),
instagram: varchar('instagram', { length: 191 }),
opensea: varchar('opensea', { length: 191 }),
membershipTier: mysqlEnum('membershipTier', [
'COMMON',
'RARE',
'EPIC',
'LEGENDARY',
'PN',
]),
role: mysqlEnum('role', ['ADMIN', 'CREATOR', 'USER'])
.default('USER')
.notNull(),
createdAt: datetime('createdAt', { mode: 'string', fsp: 3 })
.default(sql`(CURRENT_TIMESTAMP(3))`)
.notNull(),
updatedAt: datetime('updatedAt', { mode: 'string', fsp: 3 })
.default(sql`(CURRENT_TIMESTAMP(3))`)
.notNull(),
},
(table) => {
return {
usernameIdx: index('User_username_idx').on(table.username),
usernameKey: uniqueIndex('User_username_key').on(table.username),
}
},
)
export const user = mysqlTable(
'User',
{
id: varchar('id', { length: 191 }).primaryKey().notNull(),
username: varchar('username', { length: 191 }),
profileImageUrl: varchar('profileImageUrl', { length: 191 }),
email: varchar('email', { length: 191 }),
bio: text('bio'),
headline: text('headline'),
website: varchar('website', { length: 191 }),
twitter: varchar('twitter', { length: 191 }),
instagram: varchar('instagram', { length: 191 }),
opensea: varchar('opensea', { length: 191 }),
membershipTier: mysqlEnum('membershipTier', [
'COMMON',
'RARE',
'EPIC',
'LEGENDARY',
'PN',
]),
role: mysqlEnum('role', ['ADMIN', 'CREATOR', 'USER'])
.default('USER')
.notNull(),
createdAt: datetime('createdAt', { mode: 'string', fsp: 3 })
.default(sql`(CURRENT_TIMESTAMP(3))`)
.notNull(),
updatedAt: datetime('updatedAt', { mode: 'string', fsp: 3 })
.default(sql`(CURRENT_TIMESTAMP(3))`)
.notNull(),
},
(table) => {
return {
usernameIdx: index('User_username_idx').on(table.username),
usernameKey: uniqueIndex('User_username_key').on(table.username),
}
},
)