using adas_core.Domain.Enums;

namespace adas_core.Domain.Models.MongoModels;

/// <summary>
/// Represents an individual step, typically within a sequence or workflow.
/// </summary>
public class Step
{
    public int? RotationTime { get; set; }


    public string? Text { get; set; }


    public string? Class { get; set; }


    public UiFontData? DesignProperties { get; set; }

    public DisplayConfigEnums.StepType? Type { get; set; } = DisplayConfigEnums.StepType.Standar;
}

/// <summary>
/// Represents data for a UI font, storing font-related information used for rendering user interface elements.
/// </summary>
/// <remarks>
/// This class serves as a data container for font properties required by the UI rendering system.
/// </remarks>
public class UiFontData
{
    public double? WidthStepBed { get; set; }

    public double? HeightStepBed { get; set; }

    public double? FontSizeValue { get; set; }

    public double? FontSizeMediumValue { get; set; }

    public double? FontSizeHeaderValue { get; set; }

    public double? FontSizeLittleValue { get; set; }

    public double? FontSizeMicroValue { get; set; }

    public double? FontSizeNanoValue { get; set; }

    public double? FontSizeTextValue { get; set; }

    public double? FontSizeMediumTextValue { get; set; }

    public double? FontSizeLittleTextValue { get; set; }

    public double? FontSizeName { get; set; }

    public double? FontSizeLittleName { get; set; }

    public double? FontSizeUnit { get; set; }

    public string? BorderColor { get; set; }

    public string? BackGroundColor { get; set; }

    public double? BoxMarginTop { get; set; }

    public double? BoxMarginBot { get; set; }

    public double? BoxMarginLeft { get; set; }

    public double? BoxMarginRight { get; set; }
}