{
  "name": "Table",
  "config": {
    "type": "object",
    "description": "app config",
    "properties": {
      "authUser": {
        "type": "string",
        "description": "If HTTP Basic authentication is required, provide the username here"
      },
      "authPass": {
        "type": "string",
        "description": "If HTTP Basic authentication is required, provide the authentication token here"
      },
      "limit": {
        "type": "integer",
        "description": "How much lines should be displayed",
        "default": 10
      },
      "fileUrl": {
        "type": "string",
        "description": "A link to the file."
      },
      "fileFormat": {
        "type": "string",
        "enum": [
          "csv",
          "json"
        ],
        "default": "json",
        "description": "Format of file"
      },
      "firstLineContainHeader": {
        "type": "boolean",
        "description": "Check if first line of csv/json contains the table header"
      },
      "firstColumnContainHeader": {
        "type": "boolean",
        "description": "Check if first column of csv/json contains the table header"
      },
      "showTitleBar": {
        "type": "boolean",
        "description": "show title bar"
      },
      "reloadInterval": {
        "type": "integer",
        "description": "Interval in seconds to reload the table",
        "default": 600,
        "minimum": 10
      },
      "delimiter": {
        "type": "string",
        "description": "Delimiter in case of csv",
        "default": ","
      },
      "customHeaders": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "title": {
              "title": "custom-header for column",
              "description": "Add custom-header for each column. Empty column header will fill with header from source if avail.",
              "type": "string"
            }
          }
        }
      },
      "required": [
        "limit",
        "fileFormat",
        "file_url",
        "reloadInterval",
        "delimiter"
      ]
    }
  }
}
