{
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "$id": "https://usechartory.com/schemas/line.json",
 "description": "The data prop of <Line> (Chartory chart 010).",
 "type": "object",
 "title": "LineData",
 "properties": {
  "vals": {
   "type": "array",
   "items": {
    "type": "number"
   },
   "description": "The values, in order."
  },
  "min": {
   "type": "number",
   "description": "The bottom of the value scale."
  },
  "max": {
   "type": "number",
   "description": "The top of the value scale."
  },
  "ticks": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "The axis tick labels."
  },
  "xl": {
   "type": "object",
   "additionalProperties": {
    "type": "string"
   },
   "description": "The x axis labels, by index."
  },
  "yW": {
   "type": "number",
   "description": "The width of the y axis label column, in px."
  },
  "smooth": {
   "type": "boolean",
   "description": "Draws the line as a curve."
  },
  "area": {
   "enum": [
    "flat",
    "gradient"
   ],
   "description": "The fill under the line."
  },
  "dots": {
   "anyOf": [
    {
     "enum": [
      "all"
     ]
    },
    {
     "type": "array",
     "items": {
      "type": "number"
     }
    }
   ],
   "description": "Which points get a dot."
  },
  "end": {
   "type": "boolean",
   "description": "Labels the last point."
  },
  "tip": {
   "type": "object",
   "title": "LineTip",
   "properties": {
    "i": {
     "type": "number",
     "description": "The index of the item it belongs to."
    },
    "text": {
     "type": "string",
     "description": "The label as shown."
    }
   },
   "required": [
    "i",
    "text"
   ],
   "description": "The highlighted point: index and label."
  }
 },
 "required": [
  "vals",
  "min",
  "max",
  "ticks",
  "xl"
 ]
}
