immich/server/libs/database/src/entities/user.entity.ts

45 lines
900 B
TypeScript
Raw Normal View History

2022-12-05 11:56:44 -06:00
import { Column, CreateDateColumn, DeleteDateColumn, Entity, OneToMany, PrimaryGeneratedColumn } from 'typeorm';
import { TagEntity } from './tag.entity';
2022-02-03 10:06:44 -06:00
@Entity('users')
export class UserEntity {
@PrimaryGeneratedColumn('uuid')
id!: string;
2022-02-03 10:06:44 -06:00
@Column({ default: '' })
firstName!: string;
@Column({ default: '' })
lastName!: string;
@Column({ default: false })
isAdmin!: boolean;
2022-02-03 10:06:44 -06:00
@Column()
email!: string;
2022-02-03 10:06:44 -06:00
@Column({ default: '', select: false })
password?: string;
2022-02-03 10:06:44 -06:00
@Column({ default: '', select: false })
salt?: string;
2022-02-03 10:06:44 -06:00
@Column({ default: '', select: false })
oauthId!: string;
@Column({ default: '' })
profileImagePath!: string;
@Column({ default: true })
shouldChangePassword!: boolean;
2022-02-03 10:06:44 -06:00
@CreateDateColumn()
createdAt!: string;
@DeleteDateColumn()
deletedAt?: Date;
2022-12-05 11:56:44 -06:00
@OneToMany(() => TagEntity, (tag) => tag.user)
tags!: TagEntity[];
2022-02-03 10:06:44 -06:00
}