import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, ManyToOne, OneToMany } from 'typeorm';
import { User } from '../../users/entities/user.entity';
import { Image } from '../../images/entities/image.entity';
import { Video } from '../../videos/entities/video.entity';

@Entity('characters')
export class Character {
  @PrimaryGeneratedColumn()
  id: number;

  @ManyToOne(() => User, (user) => user.characters, { nullable: false })
  user: User;

  @Column()
  name: string;

  @Column('text')
  profile: string;

  @CreateDateColumn()
  created_at: Date;

  @OneToMany(() => Image, (image) => image.character)
  images: Image[];

  @OneToMany(() => Video, (video) => video.character)
  videos: Video[];
}