namespace adas_core.Domain.Enums;

/// <summary>
/// Provides a static collection of display-related configuration enumerations.
/// </summary>
public static class DisplayConfigEnums
{
    public enum AxisPosition
    {
        Top,
        Bottom,
        Left,
        Right
    }

    public enum AxisType
    {
        Time,
        Value
    }

    public enum BannerType
    {
        Inputs,
        InputsFull,
        Outputs,
        OutputsText,
        Slots,
        Notices,
        Status
    }

    public enum CellType
    {
        BoxNumber,
        BoxNumberStatus,
        BeaconColor,
        Simple,
        Alert,
        Alarm,
        ObsGraphList,
        GraphCompose,
        GraphTitle,
        Lab,
        Plus,
        ObsText,
        Triple,
        TripleData,
        UciDays,
        Predict,
        TableBox,
        TableDate,
        TableCell,
        TripleDataFormatted,
        Sensors,
        SensorAwair,
        SensorObs,
        Default,
        FullIcon,
        List,
        Text,
        TableText,
        TableRepeated,
        TableInsulation,
        TableDropdown,
        TableBoxRepeated,
        TableAge,
        Icon,
        TableIcon,
        TableGender,
        Admission,
        Demographic,
        DemographicNoDiagnosis,
        Intervention,
        InterventionSection,
        Isolation,
        DetailCard,
        DetailHeader,
        DetailHeaderText,
        PreviewCard,
        PatientStatus,
        Physicians,
        Test,
        TherapeuticCeiling,
        Mobility,
        Therapies,
        DoctorCell,
        CellDivider,
        RowDivider,
        VisitIcon,
        AltableDestinationIcon,
        LenguageBarrier,
        DemographicCell,
        DaysCalendarCell,
        ObsCell,
        ObsCellIcon,
        AdmDateCellIcon,
        NurseDateCellIcon,
        MedicalDateCellIcon,
        AllergyCell,
        AltableInfo,
        AltableInfoText,
        TherapiesSection,
        TestSection,
        PhysiciansSection,
        PatientStatusSection,
        WrapperSection,
        WrapperSectionCell,
        DropDown,
        TherapeuticCeilingDropDown,
        IncomingDate,
        AccessIconComponent,
        FullAccessIconComponent,
        IncomingSection,
        WrapperObsCell,
        SubHeader,
        PatientInfo,
        ObsGa,
        TextObs,
        ObsIcon,
        DynamicText,
        ObsMultiIcon,
        ObsIconText,
        WeightObs,
        PlainIconText,
        ObsBoolean,
        CellWrapper,
        Filler,
        ObsMultiText,
        LifeTime,
        ObsIsolation,
        BirthObs,
        WrapperCell,
        Language,
        ObsTextIfMatch,
        SensorWrapper
    }

    public enum ConfigTypes
    {
        SectionCfg,
        ObservationCfg,
        PumpCfg
    }

    public enum DirectionEnum
    {
        Row,
        Column,
        RowReverse,
        ColumnReverse
    }

    public enum DisplayType
    {
        DisplayNurse,
        SmartDisplay,
        StandarDisplay,
        PumpDisplay,
        Unknown
    }

    public enum ELegendIconType
    {
        Circle,
        Square,
        Triangle,
        Diamond,
        Cross,
        Star,
        HorizontalLine,
        VerticalLine,
        DashedLine,
        DottedLine
    }

    public enum HospitalCustomizeEnum
    {
        Test,
        Vdh,
        Trueta,
        Ryc,
        Chuo,
        Gregorio,
        H12O
    }

    public enum LabelFormat
    {
        Hour,
        Second,
        Minute,
        HourExact,
        Default,
        FullDateExact,
        FixPercentage,
        Custom
    }

    public enum LineType
    {
        Solid,
        Dashed,
        Dotted
    }

    public enum MarkerIcon
    {
        Kangaroo,
        Bath,
        Hand,
        None
    }

    public enum RotatingLayoutMode
    {
        Default,
        Equitable,
        FixedImageTime
    }


    public enum RotatingLayoutType
    {
        HomeSection,
        Ad
    }

    public enum RowType
    {
        Simple,
        General,
        GraphLast,
        Prediction,
        Prevision,
        Treatment,
        Camera,
        SubHeader,
        Custom,
        BoxNavigationSubheader,
        Admission,
        Demographic,
        Intervention,
        Isolation,
        TherapiesSection,
        TestSection,
        InterventionSection,
        IncomingSection,
        DetailHeaderSection,
        PatientStatus,
        Physicians,
        Test,
        Therapies,
        AltableInfo,
        WrapperSection,
        WrapperSectionCell,
        RowDivider
    }

    public enum SeriesType
    {
        Line,
        Area,
        Marker,
        MarkArea,
        Candlestick,
        BarPercentage,
        LineMapColor,
        LineMark,
        Scatter,
        Bar
    }

    public enum SourceType
    {
        Obs,
        Diagnosis,
        Alarm,
        Pump,
        Treatment,
        Sensor
    }

    public enum StepType
    {
        Standar,
        Advertising,
        Alarms
    }

    public enum WebDisplayCellSubtype
    {
        Default,
        Mobility,
        Isolation,
        Tests,
        Therapy,
        Intervention,
        Visits,
        Therapeutic,
        Days,
        WeeksDays
    }
}