Open Source Web Application Framework for ASP.NET Core
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

65 lines
1.8 KiB

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "dashboard-visualization-descriptor.schema.json",
"title": "DashboardVisualizationDescriptor",
"description": "A single visualization element (number, chart, or list) within a dashboard group",
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Unique identifier within the group",
"minLength": 1
},
"type": {
"$ref": "dashboard-visualization-type.schema.json"
},
"title": {
"type": "string",
"description": "Display title for the visualization"
},
"description": {
"type": "string",
"description": "Optional description text"
},
"position": {
"$ref": "dashboard-position-descriptor.schema.json"
},
"filter": {
"$ref": "dashboard-filter-descriptor.schema.json"
},
"showDescriptionAsTooltip": {
"type": "boolean",
"default": false
},
"clickToSeeRecords": {
"type": "boolean",
"description": "Allow users to click to see underlying records",
"default": false
},
"number": {
"$ref": "dashboard-number-descriptor.schema.json"
},
"chart": {
"$ref": "dashboard-chart-descriptor.schema.json"
},
"list": {
"$ref": "dashboard-list-descriptor.schema.json"
}
},
"required": ["name", "type", "title", "position"],
"allOf": [
{
"if": { "properties": { "type": { "const": "number" } } },
"then": { "required": ["number"] }
},
{
"if": { "properties": { "type": { "const": "chart" } } },
"then": { "required": ["chart"] }
},
{
"if": { "properties": { "type": { "const": "list" } } },
"then": { "required": ["list"] }
}
],
"additionalProperties": false
}