import { BaseEntity } from './base.entity';
import { Message } from './message.entity';
import { User } from './user.entity';
import { Column, Entity, Index, ManyToOne } from 'typeorm';

@Entity('message_reactions')
@Index(['message', 'user', 'emoji'], { unique: true })
export class MessageReaction extends BaseEntity {
  @ManyToOne(() => Message, (message) => message.reactions, {
    onDelete: 'CASCADE',
  })
  message: Message;

  @ManyToOne(() => User, { onDelete: 'CASCADE' })
  user: User;

  @Column({ length: 16 })
  emoji: string;
}
