mirror of
https://github.com/KevinMidboe/immich.git
synced 2025-10-29 17:40:28 +00:00
* refactor: flatten infra folders * fix: database migrations * fix: test related import * fix: github actions workflow * chore: rename schemas to typesense-schemas
57 lines
1.0 KiB
TypeScript
57 lines
1.0 KiB
TypeScript
import {
|
|
Column,
|
|
CreateDateColumn,
|
|
DeleteDateColumn,
|
|
Entity,
|
|
OneToMany,
|
|
PrimaryGeneratedColumn,
|
|
UpdateDateColumn,
|
|
} from 'typeorm';
|
|
import { AssetEntity } from './asset.entity';
|
|
import { TagEntity } from './tag.entity';
|
|
|
|
@Entity('users')
|
|
export class UserEntity {
|
|
@PrimaryGeneratedColumn('uuid')
|
|
id!: string;
|
|
|
|
@Column({ default: '' })
|
|
firstName!: string;
|
|
|
|
@Column({ default: '' })
|
|
lastName!: string;
|
|
|
|
@Column({ default: false })
|
|
isAdmin!: boolean;
|
|
|
|
@Column({ unique: true })
|
|
email!: string;
|
|
|
|
@Column({ default: '', select: false })
|
|
password?: string;
|
|
|
|
@Column({ default: '' })
|
|
oauthId!: string;
|
|
|
|
@Column({ default: '' })
|
|
profileImagePath!: string;
|
|
|
|
@Column({ default: true })
|
|
shouldChangePassword!: boolean;
|
|
|
|
@CreateDateColumn()
|
|
createdAt!: string;
|
|
|
|
@DeleteDateColumn()
|
|
deletedAt?: Date;
|
|
|
|
@UpdateDateColumn({ type: 'timestamptz' })
|
|
updatedAt!: string;
|
|
|
|
@OneToMany(() => TagEntity, (tag) => tag.user)
|
|
tags!: TagEntity[];
|
|
|
|
@OneToMany(() => AssetEntity, (asset) => asset.owner)
|
|
assets!: AssetEntity[];
|
|
}
|