using RobotNet.WebApp.Charts.Models.Common;

namespace RobotNet.WebApp.Charts.Models.RadarChart.Axis;

public class PointLabels
{
    /// <summary>
    /// Gets or sets the font color for a point label.
    /// <para>See <see cref="ColorUtil"/> for working with colors.</para>
    /// </summary>
    public string? Color { get; set; }

    /// <summary>
    /// If true, point labels are shown. When display: 'auto', the label is hidden if it overlaps with another label
    /// </summary>
    public bool Display {  get; set; }

    /// <summary>
    /// Background color of the point label.
    /// </summary>
    public string? BackdropColor { get; set; }

    /// <summary>
    /// Border radius of the point label
    /// </summary>
    public double? BorderRadius { get; set; }

    /// <summary>
    /// Padding of label backdrop.
    /// </summary>
    public ChartPadding? BackdropPadding { get; set; }

    /// <summary>
    /// Padding between chart and point labels.
    /// </summary>
    public ChartPadding? Padding { get; set; }

    /// <summary>
    /// Font of the point label
    /// </summary>
    public ChartFont? Font { get; set; }

    /// <summary>
    /// If true, point labels are centered.
    /// </summary>
    public bool? CenterPointLabels { get; set; }
}
