using System.ComponentModel.DataAnnotations;

namespace GameList.Domain;

public class Suggestion
{
    public int Id { get; set; }

    [Required]
    public Guid PlayerId { get; set; }
    public Player? Player { get; set; }

    [Required]
    [MaxLength(100)]
    public string Name { get; set; } = string.Empty;

    [MaxLength(50)]
    public string? Genre { get; set; }

    [MaxLength(500)]
    public string? Description { get; set; }

    [MaxLength(2048)]
    public string? ScreenshotUrl { get; set; }

    [MaxLength(2048)]
    public string? YoutubeUrl { get; set; }

    [MaxLength(2048)]
    public string? GameUrl { get; set; }

    public int? MinPlayers { get; set; }
    public int? MaxPlayers { get; set; }

    public DateTimeOffset CreatedAt { get; set; } = DateTimeOffset.UtcNow;

    public ICollection<Vote> Votes { get; set; } = new List<Vote>();
}
