import { DataSource } from 'typeorm';
import { MessageEntity } from '../../../entities';
import { ClearRoomMessagesCommand } from '../../types';
import { getCurrentUserScope } from '../../current-user-scope';

export async function handleClearRoomMessages(command: ClearRoomMessagesCommand, dataSource: DataSource): Promise<void> {
  const repo = dataSource.getRepository(MessageEntity);
  const currentUserId = await getCurrentUserScope(dataSource);

  if (!currentUserId) {
    return;
  }

  await repo.delete({ roomId: command.payload.roomId, ownerUserId: currentUserId });
}
