mirror of
https://github.com/immich-app/immich.git
synced 2025-12-19 01:11:07 +03:00
28 lines
768 B
TypeScript
28 lines
768 B
TypeScript
|
|
import { Column, Entity, JoinColumn, ManyToOne, OneToOne, PrimaryGeneratedColumn, Unique } from 'typeorm';
|
||
|
|
import { UserEntity } from '../../user/entities/user.entity';
|
||
|
|
import { SharedAlbumEntity } from './shared-album.entity';
|
||
|
|
|
||
|
|
@Entity('user_shared_album')
|
||
|
|
@Unique('PK_unique_user_in_album', ['albumId', 'sharedUserId'])
|
||
|
|
export class UserSharedAlbumEntity {
|
||
|
|
@PrimaryGeneratedColumn()
|
||
|
|
id: string;
|
||
|
|
|
||
|
|
@Column()
|
||
|
|
albumId: string;
|
||
|
|
|
||
|
|
@Column()
|
||
|
|
sharedUserId: string;
|
||
|
|
|
||
|
|
@ManyToOne(() => SharedAlbumEntity, (sharedAlbum) => sharedAlbum.sharedUsers, {
|
||
|
|
onDelete: 'CASCADE',
|
||
|
|
nullable: true,
|
||
|
|
})
|
||
|
|
@JoinColumn({ name: 'albumId' })
|
||
|
|
albumInfo: SharedAlbumEntity;
|
||
|
|
|
||
|
|
@ManyToOne(() => UserEntity)
|
||
|
|
@JoinColumn({ name: 'sharedUserId' })
|
||
|
|
userInfo: UserEntity;
|
||
|
|
}
|