using RobotNet.MapShares.Enums;

namespace RobotNet.MapShares.Dtos;

#nullable disable

public class NodeDto
{
    public Guid Id { get; set; }
    public Guid MapId { get; set; }
    public string Name { get; set; }
    public double X { get; set; }
    public double Y { get; set; }
    public double Theta { get; set; }
    public Direction Direction { get; set; }
    public double AllowedDeviationXy { get; set; }
    public double AllowedDeviationTheta { get; set; }
    public string Actions { get; set; }
    public override string ToString() => Name;
}

public class NodeCreateModel : NodeDto { }

public class NodeUpdateModel
{
    public Guid Id { get; set; }
    public string Name { get; set; }
    public double X { get; set; }
    public double Y { get; set; }
    public double Theta { get; set; }
    public double AllowedDeviationXy { get; set; }
    public double AllowedDeviationTheta { get; set; }
    public Guid[] Actions { get; set; } = [];
}