{
    "$schema": "http://json-schema.org/draft-04/schema",
    "definitions": {
        "ChartLineGraphDataDefinitionList": {
            "$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartLineGraphDataDefinitionList"
        },
        "ChartLineGraphDescriptionDefinitionList": {
            "$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartLineGraphDescriptionDefinitionList"
        },
        "ChartYAxisDefinition": {
            "$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartYAxisDefinition"
        },
        "ChartYAxisDefinitionList": {
            "$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartYAxisDefinitionList"
        },
        "TcHmi.Controls.Beckhoff.TcHmiLineChart": {
            "$schema": "http://json-schema.org/draft-04/schema",
            "type": "object",
            "frameworkInstanceOf": "TcHmi.Controls.System.TcHmiControl",
            "frameworkControlType": "TcHmiLineChart",
            "frameworkControlNamespace": "TcHmi.Controls.Beckhoff"
        },
        "TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartLineGraphDataDefinitionList": {
            "title": "ChartLineGraphDataDefinitionList",
            "anyOf": [
                {
                    "type": "array",
                    "title": "Array<Array<Coordinate pair>>",
                    "items": {
                        "type": "array",
                        "title": "List of coordinate pairs",
                        "items": {
                            "type": "object",
                            "title": "Coordinate pair",
                            "engineeringColumns": ["x", "y"],
                            "propertiesMeta": [
                                {
                                    "name": "x",
                                    "displayName": "X",
                                    "category": "General",
                                    "displayPriority": 10,
                                    "description": "x coordinate",
                                    "defaultValue": null,
                                    "defaultValueInternal": null
                                },
                                {
                                    "name": "y",
                                    "displayName": "Y",
                                    "category": "General",
                                    "displayPriority": 10,
                                    "description": "y coordinate",
                                    "defaultValue": null,
                                    "defaultValueInternal": null
                                }
                            ],
                            "properties": {
                                "x": {
                                    "type": "number"
                                },
                                "y": {
                                    "type": "number"
                                }
                            },
                            "required": ["x", "y"],
                            "additionalProperties": false
                        }
                    }
                },
                {
                    "type": "array",
                    "title": "Array<Array<number>>",
                    "items": {
                        "type": "array",
                        "items": {
                            "type": "number"
                        }
                    }
                },
                {
                    "type": "array",
                    "title": "Array<number>",
                    "items": {
                        "type": "number"
                    }
                }
            ]
        },
        "TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartLineGraphDescriptionDefinitionList": {
            "title": "ChartLineGraphDescriptionDefinitionList",
            "type": "array",
            "items": {
                "type": "object",
                "engineeringColumns": ["yAxisId", "lineWidth"],
                "propertiesMeta": [
                    {
                        "name": "lineColor",
                        "displayName": "Line color",
                        "category": "Colors",
                        "displayPriority": 10,
                        "description": "Color for this line",
                        "defaultValue": "%tr%Control::TcHmi.Controls.Beckhoff.TcHmiLineChart::LineGraphDescriptionLineColor%/tr%",
                        "defaultValueInternal": null
                    },
                    {
                        "name": "pointDotFillColor",
                        "displayName": "Point dot fill color",
                        "category": "Colors",
                        "displayPriority": 10,
                        "description": "Color for the fill of the dots",
                        "defaultValue": "%tr%Control::TcHmi.Controls.Beckhoff.TcHmiLineChart::LineGraphDescriptionPointDotFillColor%/tr%",
                        "defaultValueInternal": null
                    },
                    {
                        "name": "pointDotStrokeColor",
                        "displayName": "Point dot stroke color",
                        "category": "Colors",
                        "displayPriority": 10,
                        "description": "Color for the stroke of the dots",
                        "defaultValue": "%tr%Control::TcHmi.Controls.Beckhoff.TcHmiLineChart::LineGraphDescriptionPointDotStrokeColor%/tr%",
                        "defaultValueInternal": null
                    },
                    {
                        "name": "yAxisId",
                        "displayName": "Y-Axis Id",
                        "category": "General",
                        "displayPriority": 10,
                        "description": "Id of the y-axis to use for this graph",
                        "defaultValue": null,
                        "defaultValueInternal": null
                    },
                    {
                        "name": "lineWidth",
                        "displayName": "Line width",
                        "category": "General",
                        "displayPriority": 10,
                        "description": "Line width in pixel",
                        "defaultValue": 1,
                        "defaultValueInternal": null
                    },
                    {
                        "name": "pointDot",
                        "displayName": "Point dot",
                        "category": "General",
                        "displayPriority": 10,
                        "description": "Defines if the line has dots on the data points",
                        "defaultValue": false,
                        "defaultValueInternal": false
                    },
                    {
                        "name": "pointDotRadius",
                        "displayName": "Point dot radius",
                        "category": "General",
                        "displayPriority": 10,
                        "description": "Dot radius",
                        "defaultValue": 3,
                        "defaultValueInternal": 3
                    },
                    {
                        "name": "pointDotStrokeWidth",
                        "displayName": "Point dot stroke width",
                        "category": "General",
                        "displayPriority": 10,
                        "description": "Dot stroke width",
                        "defaultValue": 1,
                        "defaultValueInternal": null
                    },
                    {
                        "name": "legendName",
                        "category": "General",
                        "displayName": "Legend name",
                        "displayPriority": 10,
                        "description": "The name that is displayed in the legend.",
                        "defaultValue": null,
                        "defaultValueInternal": null
                    },
                    {
                        "name": "xScaleFactor",
                        "category": "General",
                        "displayName": "X scale factor",
                        "displayPriority": 10,
                        "description": "Scales all x values with this scale factor.",
                        "defaultValue": null,
                        "defaultValueInternal": 1
                    },
                    {
                        "name": "yScaleFactor",
                        "category": "General",
                        "displayName": "Y scale factor",
                        "displayPriority": 10,
                        "description": "Scales all y values with this scale factor.",
                        "defaultValue": null,
                        "defaultValueInternal": 1
                    },
                    {
                        "name": "fillMode",
                        "displayName": "Fill mode",
                        "category": "General",
                        "displayPriority": 10,
                        "description": "Fill mode for the fill area",
                        "defaultValue": null,
                        "defaultValueInternal": "None"
                    },
                    {
                        "name": "fillColor",
                        "displayName": "Fill color",
                        "category": "Colors",
                        "displayPriority": 10,
                        "description": "Color for the fill area",
                        "defaultValue": "%tr%Control::TcHmi.Controls.Beckhoff.TcHmiLineChart::LineGraphDescriptionFillColor%/tr%",
                        "defaultValueInternal": null
                    },
                    {
                        "name": "fillTransparency",
                        "displayName": "Fill transparency",
                        "category": "General",
                        "displayPriority": 10,
                        "description": "Fill transparency for the fill area",
                        "defaultValue": 50,
                        "defaultValueInternal": 50
                    },
                    {
                        "name": "colorRanges",
                        "category": "General",
                        "displayName": "Line color ranges",
                        "displayPriority": 10,
                        "description": "An array of colors to be used in different ranges.",
                        "defaultValue": null,
                        "defaultValueInternal": null
                    }
                ],
                "properties": {
                    "lineColor": {
                        "$ref": "tchmi:framework#/definitions/SolidColor"
                    },
                    "pointDotFillColor": {
                        "$ref": "tchmi:framework#/definitions/SolidColor"
                    },
                    "pointDotStrokeColor": {
                        "$ref": "tchmi:framework#/definitions/SolidColor"
                    },
                    "yAxisId": {
                        "type": "number"
                    },
                    "lineWidth": {
                        "type": "number"
                    },
                    "pointDot": {
                        "type": "boolean"
                    },
                    "pointDotRadius": {
                        "type": "number",
                        "minimum": 0
                    },
                    "pointDotStrokeWidth": {
                        "type": "number",
                        "minimum": 0
                    },
                    "legendName": {
                        "type": "string"
                    },
                    "xScaleFactor": {
                        "type": "number"
                    },
                    "yScaleFactor": {
                        "type": "number"
                    },
                    "fillMode": {
                        "type": "string",
                        "enum": ["None", "HorizontalZero", "Top", "Bottom", "Center", "Source"]
                    },
                    "fillColor": {
                        "$ref": "tchmi:framework#/definitions/SolidColor"
                    },
                    "fillTransparency": {
                        "type": "number"
                    },
                    "colorRanges": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "color": {
                                    "$ref": "tchmi:framework#/definitions/SolidColor"
                                },
                                "expression": {
                                    "$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartLineColorFilter"
                                }
                            }
                        }
                    }
                },
                "additionalProperties": false,
                "required": ["yAxisId"]
            }
        },
        "TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartLineColorFilter": {
            "title": "ChartLineColorFilter",
            "type": "array",
            "items": {
                "anyOf": [
                    {
                        "type": "object",
                        "properties": {
                            "path": {
                                "type": "string",
                                "enum": ["{value}"],
                                "default": "{value}"
                            },
                            "comparator": {
                                "type": "string",
                                "enum": ["==", "!=", "<", ">", "<=", ">="],
                                "default": "=="
                            },
                            "value": {
                                "type": "number"
                            }
                        },
                        "additionalProperties": false,
                        "required": ["path", "comparator", "value"]
                    },
                    {
                        "$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartLineColorFilter"
                    }
                ]
            }
        },
        "TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartYAxisDefinition": {
            "title": "ChartYAxisDefinition",
            "type": "object",
            "engineeringColumns": ["id", "axisName", "position"],
            "propertiesMeta": [
                {
                    "name": "labelFontColor",
                    "category": "Colors",
                    "displayName": "Label font color",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": "%tr%Control::TcHmi.Controls.Beckhoff.TcHmiLineChart::YAxisLabelFontColor%/tr%",
                    "defaultValueInternal": null
                },
                {
                    "name": "axisColor",
                    "category": "Colors",
                    "displayName": "Axis color",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": "%tr%Control::TcHmi.Controls.Beckhoff.TcHmiLineChart::YAxisAxisColor%/tr%",
                    "defaultValueInternal": null
                },
                {
                    "name": "axisNameFontColor",
                    "category": "Colors",
                    "displayName": "Axis name font color",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": "%tr%Control::TcHmi.Controls.Beckhoff.TcHmiLineChart::YAxisAxisNameFontColor%/tr%",
                    "defaultValueInternal": null
                },
                {
                    "name": "id",
                    "category": "General",
                    "displayName": "Id",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": 1
                },
                {
                    "name": "position",
                    "category": "General",
                    "displayName": "Position",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": "Left"
                },
                {
                    "name": "logarithmicScale",
                    "category": "General",
                    "displayName": "Logarithmic scale",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": false
                },
                {
                    "name": "axisLabeling",
                    "category": "General",
                    "displayName": "Axis labeling",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": "Number"
                },
                {
                    "name": "mainTickMinValue",
                    "category": "General",
                    "displayName": "Main-tick min-value",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": 0
                },
                {
                    "name": "mainTickMaxValue",
                    "category": "General",
                    "displayName": "Main-tick max-value",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": 100
                },
                {
                    "name": "autoScaling",
                    "category": "General",
                    "displayName": "Auto scaling",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": false
                },
                {
                    "name": "decimalPlaces",
                    "category": "General",
                    "displayName": "decimalPlaces",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": 2
                },
                {
                    "name": "showAxis",
                    "category": "General",
                    "displayName": "Show Axis",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": true
                },
                {
                    "name": "showLabels",
                    "category": "General",
                    "displayName": "showLabels",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": true
                },
                {
                    "name": "showAxisName",
                    "category": "General",
                    "displayName": "Show axis name",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": true
                },
                {
                    "name": "axisName",
                    "category": "General",
                    "displayName": "Axis name",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": "y axis 1"
                },
                {
                    "name": "axisNameFontFamily",
                    "category": "General",
                    "displayName": "Axis name font-family",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": null
                },
                {
                    "name": "axisNameFontSize",
                    "category": "General",
                    "displayName": "Axis name font-size",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": 15
                },
                {
                    "name": "axisNameFontSizeUnit",
                    "refTo": "axisNameFontSize",
                    "category": "General",
                    "displayName": "Axis name font-size unit",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": "px"
                },
                {
                    "name": "axisNameFontWeight",
                    "category": "General",
                    "displayName": "Axis name font-weight",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": "Bold"
                },
                {
                    "name": "unit",
                    "category": "General",
                    "displayName": "Unit",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": null
                }
            ],
            "properties": {
                "labelFontColor": {
                    "$ref": "tchmi:framework#/definitions/SolidColor"
                },
                "axisColor": {
                    "$ref": "tchmi:framework#/definitions/SolidColor"
                },
                "axisNameFontColor": {
                    "$ref": "tchmi:framework#/definitions/SolidColor"
                },
                "id": {
                    "type": "number"
                },
                "position": {
                    "type": "string",
                    "enum": ["Left", "Right"]
                },
                "logarithmicScale": {
                    "type": "boolean"
                },
                "axisLabeling": {
                    "type": "string",
                    "enum": ["Number", "Scientific", "Auto"]
                },
                "mainTickMinValue": {
                    "type": "number"
                },
                "mainTickMaxValue": {
                    "type": "number"
                },
                "autoScaling": {
                    "type": "boolean"
                },
                "decimalPlaces": {
                    "type": "number",
                    "minimum": 0
                },
                "showAxis": {
                    "type": "boolean"
                },
                "showLabels": {
                    "type": "boolean"
                },
                "showAxisName": {
                    "type": "boolean"
                },
                "axisName": {
                    "type": "string"
                },
                "axisNameFontFamily": {
                    "$ref": "tchmi:framework#/definitions/FontFamily"
                },
                "axisNameFontSize": {
                    "$ref": "tchmi:framework#/definitions/MeasurementValue"
                },
                "axisNameFontSizeUnit": {
                    "$ref": "tchmi:framework#/definitions/PixelUnit"
                },
                "axisNameFontWeight": {
                    "$ref": "tchmi:framework#/definitions/FontWeight"
                },
                "unit": {
                    "type": "string"
                }
            },
            "additionalProperties": false,
            "required": ["id", "position"]
        },
        "TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartYAxisDefinitionList": {
            "$schema": "http://json-schema.org/draft-04/schema",
            "title": "ChartYAxisDefinitionList",
            "type": "array",
            "items": {
                "$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartYAxisDefinition"
            }
        },
        "TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartAxisLabeling": {
            "title": "ChartAxisLabeling",
            "type": "string",
            "enum": ["Number", "Scientific", "Auto"],
            "default": "Number"
        },
        "TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartReferenceLineDefinition": {
            "title": "ChartReferenceLineDefinition",
            "type": "object",
            "engineeringColumns": ["name", "value", "orientation"],
            "propertiesMeta": [
                {
                    "name": "show",
                    "category": "General",
                    "displayName": "Show",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": true
                },
                {
                    "name": "name",
                    "category": "General",
                    "displayName": "Name",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": null
                },
                {
                    "name": "orientation",
                    "category": "General",
                    "displayName": "Orientation",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": "Horizontal",
                    "defaultValueInternal": "Horizontal"
                },
                {
                    "name": "yAxisId",
                    "category": "General",
                    "displayName": "Y-Axis id",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": null
                },
                {
                    "name": "value",
                    "category": "General",
                    "displayName": "Value",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": 0,
                    "defaultValueInternal": 0
                },
                {
                    "name": "color",
                    "category": "Colors",
                    "displayName": "Color",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": "%tr%Control::TcHmi.Controls.Beckhoff.TcHmiLineChart::ReferenceLineColor%/tr%",
                    "defaultValueInternal": {
                        "color": "#4794da"
                    }
                },
                {
                    "name": "lineWidth",
                    "category": "General",
                    "displayName": "Line width",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": 1,
                    "defaultValueInternal": null
                },
                {
                    "name": "showLabel",
                    "category": "General",
                    "displayName": "Show label",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": true
                },
                {
                    "name": "labelHorizontalAlignment",
                    "category": "General",
                    "displayName": "Label horizontal alignment",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": "Right"
                },
                {
                    "name": "labelVerticalAlignment",
                    "category": "General",
                    "displayName": "Label vertical alignment",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": "Top"
                },
                {
                    "name": "labelFontFamily",
                    "category": "General",
                    "displayName": "Label font-family",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": null
                },
                {
                    "name": "labelFontSize",
                    "category": "General",
                    "displayName": "Label font-size",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": 15
                },
                {
                    "name": "labelFontSizeUnit",
                    "refTo": "labelFontSize",
                    "category": "General",
                    "displayName": "Label font-size unit",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": "px"
                },
                {
                    "name": "labelFontWeight",
                    "category": "General",
                    "displayName": "Label font-weight",
                    "displayPriority": 10,
                    "description": "",
                    "defaultValue": null,
                    "defaultValueInternal": "Auto"
                }
            ],
            "properties": {
                "show": {
                    "type": "boolean"
                },
                "name": {
                    "type": "string"
                },
                "orientation": {
                    "type": "string",
                    "enum": ["Horizontal", "Vertical"]
                },
                "yAxisId": {
                    "type": "number"
                },
                "value": {
                    "type": "number"
                },
                "color": {
                    "$ref": "tchmi:framework#/definitions/SolidColor"
                },
                "lineWidth": {
                    "type": "number"
                },
                "showLabel": {
                    "type": "boolean"
                },
                "labelHorizontalAlignment": {
                    "$ref": "tchmi:framework#/definitions/HorizontalAlignment"
                },
                "labelVerticalAlignment": {
                    "$ref": "tchmi:framework#/definitions/VerticalAlignment"
                },
                "labelFontFamily": {
                    "$ref": "tchmi:framework#/definitions/FontFamily"
                },
                "labelFontSize": {
                    "$ref": "tchmi:framework#/definitions/MeasurementValue"
                },
                "labelFontSizeUnit": {
                    "$ref": "tchmi:framework#/definitions/PixelUnit"
                },
                "labelFontWeight": {
                    "$ref": "tchmi:framework#/definitions/FontWeight"
                }
            },
            "additionalProperties": false,
            "required": ["name", "value", "orientation"]
        },
        "TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartReferenceLineDefinitionList": {
            "$schema": "http://json-schema.org/draft-04/schema",
            "title": "ChartReferenceLineDefinitionList",
            "type": "array",
            "items": {
                "$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartReferenceLineDefinition"
            }
        },
        "TcHmi.Controls.Beckhoff.TcHmiLineChart.ChartReferenceLinesPosition": {
            "title": "ChartReferenceLinesPosition",
            "type": "string",
            "enum": ["Background", "Foreground"],
            "default": "Background"
        },
        "TcHmiLineChart": {
            "$ref": "tchmi:framework#/definitions/TcHmi.Controls.Beckhoff.TcHmiLineChart"
        }
    }
}
