{
  "scriptappy": "1.1.0",
  "info": {
    "name": "@nebula.js/sn-waterfall:properties",
    "description": "Waterfall chart generic object definition",
    "version": "1.0.6",
    "license": "MIT",
    "stability": "experimental",
    "x-qlik-visibility": "private"
  },
  "entries": {
    "properties": {
      "kind": "namespace",
      "entries": {
        "color": {
          "description": "Color settings.\nMost color options for visualizations are set in the color object in the options. You activate custom coloring by setting `\"auto\": false` which turns off auto-coloring.\nIf `\"auto\": true`, no other properties need to be defined in the color object.\nNote: Some of the color properties are depending on which theme is currently being used.",
          "entries": {
            "auto": {
              "description": "Set to use automatic coloring.\nWhen `\"auto\": true`, color settings are based on the visualization used and the number of dimensions\nand measures, that is, the settings are not fixed, but are dependent on the data input.",
              "defaultValue": true,
              "type": "boolean"
            },
            "negativeValue": {
              "description": "Negative value color.",
              "entries": {
                "paletteColor": {
                  "description": "paletteColor",
                  "defaultValue": "{ index: -1, color: '#cc6677' }",
                  "type": "#/definitions/paletteColor"
                }
              },
              "kind": "object"
            },
            "positiveValue": {
              "description": "Positive value color.",
              "entries": {
                "paletteColor": {
                  "description": "paletteColor",
                  "defaultValue": "{ index: 6, color: null }",
                  "type": "#/definitions/paletteColor"
                }
              },
              "kind": "object"
            },
            "subtotal": {
              "description": "Subtotal value color.",
              "entries": {
                "paletteColor": {
                  "description": "paletteColor",
                  "defaultValue": "{ index: -1, color: '#c3c3c3' }",
                  "type": "#/definitions/paletteColor"
                }
              },
              "kind": "object"
            }
          },
          "kind": "object"
        },
        "dataPoint": {
          "description": "Data point.",
          "entries": {
            "showLabels": {
              "description": "Show labels.",
              "defaultValue": true,
              "type": "boolean"
            }
          },
          "kind": "object"
        },
        "dimensionAxis": {
          "description": "Dimension axis settings.",
          "entries": {
            "dock": {
              "description": "Axis docking position",
              "defaultValue": "near",
              "kind": "union",
              "items": [
                {
                  "kind": "literal",
                  "value": "'near'"
                },
                {
                  "kind": "literal",
                  "value": "'far'"
                }
              ]
            },
            "label": {
              "description": "Label orientation",
              "defaultValue": "auto",
              "kind": "union",
              "items": [
                {
                  "kind": "literal",
                  "value": "'auto'"
                },
                {
                  "kind": "literal",
                  "value": "'horizontal'"
                },
                {
                  "kind": "literal",
                  "value": "'tilted'"
                }
              ]
            },
            "show": {
              "description": "Labels and title",
              "defaultValue": "labels",
              "kind": "union",
              "items": [
                {
                  "kind": "literal",
                  "value": "'labels'"
                },
                {
                  "kind": "literal",
                  "value": "'none'"
                }
              ]
            }
          },
          "kind": "object"
        },
        "footnote": {
          "description": "Visualization footnote.",
          "optional": true,
          "defaultValue": "",
          "kind": "union",
          "items": [
            {
              "type": "string"
            },
            {
              "type": "StringExpression"
            }
          ]
        },
        "gridlines": {
          "description": "Grid lines settings.",
          "entries": {
            "auto": {
              "description": "Automatic grid line spacing.",
              "defaultValue": true,
              "type": "boolean"
            },
            "spacing": {
              "description": "Grid line spacing. Used only when auto is set to false.",
              "defaultValue": 2,
              "kind": "union",
              "items": [
                {
                  "kind": "literal",
                  "value": 0
                },
                {
                  "kind": "literal",
                  "value": 2
                },
                {
                  "kind": "literal",
                  "value": 3
                }
              ]
            }
          },
          "kind": "object"
        },
        "legend": {
          "description": "Legend settings.",
          "entries": {
            "dock": {
              "description": "Sets the legend position.",
              "defaultValue": "auto",
              "kind": "union",
              "items": [
                {
                  "kind": "literal",
                  "value": "'auto'"
                },
                {
                  "kind": "literal",
                  "value": "'right'"
                },
                {
                  "kind": "literal",
                  "value": "'left'"
                },
                {
                  "kind": "literal",
                  "value": "'bottom'"
                },
                {
                  "kind": "literal",
                  "value": "'top'"
                }
              ]
            },
            "show": {
              "description": "Set to show the legend.",
              "defaultValue": true,
              "type": "boolean"
            }
          },
          "kind": "object"
        },
        "measureAxis": {
          "description": "Measure axis settings.",
          "entries": {
            "autoMinMax": {
              "description": "Automatic max/min",
              "defaultValue": true,
              "type": "boolean"
            },
            "dock": {
              "description": "Axis docking position",
              "defaultValue": "near",
              "kind": "union",
              "items": [
                {
                  "kind": "literal",
                  "value": "'near'"
                },
                {
                  "kind": "literal",
                  "value": "'far'"
                }
              ]
            },
            "max": {
              "description": "Axis max value. `\"autoMinMax\"` must be set to false and `\"minMax\"`\nmust be set to `\"max\"` or `\"minMax\"` to use this property",
              "defaultValue": 10,
              "kind": "union",
              "items": [
                {
                  "type": "number"
                },
                {
                  "type": "ValueExpression"
                }
              ]
            },
            "min": {
              "description": "Axis min value. `\"autoMinMax\"` must be set to false and `\"minMax\"`\nmust be set to `\"min\"` or `\"minMax\"` to use this property",
              "defaultValue": 0,
              "kind": "union",
              "items": [
                {
                  "type": "number"
                },
                {
                  "type": "ValueExpression"
                }
              ]
            },
            "minMax": {
              "description": "Set custom max/min",
              "defaultValue": "min",
              "kind": "union",
              "items": [
                {
                  "kind": "literal",
                  "value": "'min'"
                },
                {
                  "kind": "literal",
                  "value": "'max'"
                },
                {
                  "kind": "literal",
                  "value": "'minMax'"
                }
              ]
            },
            "show": {
              "description": "Labels and title",
              "defaultValue": "labels",
              "kind": "union",
              "items": [
                {
                  "kind": "literal",
                  "value": "'labels'"
                },
                {
                  "kind": "literal",
                  "value": "'none'"
                }
              ]
            },
            "spacing": {
              "description": "Axis scale",
              "defaultValue": 1,
              "type": "number"
            }
          },
          "kind": "object"
        },
        "qHyperCubeDef": {
          "description": "Extends `HyperCubeDef`, see Engine API: `HyperCubeDef`.",
          "extends": [
            {
              "type": "HyperCubeDef"
            }
          ],
          "kind": "object",
          "entries": {
            "qMeasures": {
              "kind": "array",
              "items": {
                "type": "#/definitions/MeasureProperties"
              }
            }
          }
        },
        "refLine": {
          "description": "Reference lines settings",
          "entries": {
            "refLines": {
              "description": "Array of measure based reference line definitions",
              "kind": "array",
              "items": {
                "type": "#/definitions/refLine"
              }
            }
          },
          "kind": "object"
        },
        "showTitles": {
          "description": "Show title for the visualization.",
          "optional": true,
          "defaultValue": true,
          "type": "boolean"
        },
        "subtitle": {
          "description": "Visualization subtitle.",
          "optional": true,
          "defaultValue": "",
          "kind": "union",
          "items": [
            {
              "type": "string"
            },
            {
              "type": "StringExpression"
            }
          ]
        },
        "title": {
          "description": "Visualization title.",
          "optional": true,
          "defaultValue": "",
          "kind": "union",
          "items": [
            {
              "type": "string"
            },
            {
              "type": "StringExpression"
            }
          ]
        },
        "version": {
          "description": "Current version of this generic object definition.",
          "type": "string"
        }
      }
    }
  },
  "definitions": {
    "FieldAttributes": {
      "description": "Field attributes structure.",
      "kind": "object",
      "entries": {
        "dec": {
          "description": "Defines the decimal separator.",
          "type": "string"
        },
        "Fmt": {
          "description": "Defines the format pattern that applies to qText.",
          "type": "string"
        },
        "nDec": {
          "description": "Number of decimals.",
          "type": "number"
        },
        "Thou": {
          "description": "Defines the thousand separator (if any).",
          "type": "string"
        },
        "Type": {
          "description": "Type of the field.",
          "type": "string"
        },
        "UseThou": {
          "description": "Defines whether or not a thousands separator must be used.",
          "type": "number"
        }
      }
    },
    "InlineMeasureDef": {
      "description": "Extends `NxInlineMeasureDef`, see Engine API: `NxInlineMeasureDef`.",
      "extends": [
        {
          "type": "NxInlineMeasureDef"
        }
      ],
      "kind": "object",
      "entries": {
        "subtotal": {
          "description": "subtotal settings.",
          "type": "#/definitions/subtotalProperties"
        },
        "valueType": {
          "description": "Measure operation.",
          "defaultValue": "'NORMAL'",
          "kind": "union",
          "items": [
            {
              "kind": "literal",
              "value": "'NORMAL'"
            },
            {
              "kind": "literal",
              "value": "'INVERSE'"
            },
            {
              "kind": "literal",
              "value": "'SUBTOTAL'"
            }
          ]
        }
      }
    },
    "MeasureProperties": {
      "description": "Extends `NxMeasure`, see Engine API: `NxMeasure`.",
      "extends": [
        {
          "type": "NxMeasure"
        }
      ],
      "kind": "object",
      "entries": {
        "qDef": {
          "type": "#/definitions/InlineMeasureDef"
        }
      }
    },
    "paletteColor": {
      "description": "Color information structure. Holds the actual color and index in palette.",
      "kind": "object",
      "entries": {
        "color": {
          "description": "Color as hex string (mandatory if index: -1)",
          "type": "string"
        },
        "index": {
          "description": "Index in palette",
          "type": "number"
        }
      }
    },
    "properties.qDef.isCustomFormatted": {
      "description": "If true, the client formatting will be toggled off.",
      "defaultValue": false,
      "type": "boolean"
    },
    "properties.qDef.numFormatFromTemplate": {
      "description": "When enabled, the number format to use can be selected from multiple predefined formats based on the desired type (number, date).",
      "defaultValue": true,
      "type": "boolean"
    },
    "properties.qDef.qNumFormat": {
      "description": "see Engine API: `FieldAttributes`.",
      "optional": true,
      "type": "#/definitions/FieldAttributes"
    },
    "refLine": {
      "kind": "object",
      "entries": {
        "label": {
          "description": "Reference line label.",
          "type": "string"
        },
        "paletteColor": {
          "type": "#/definitions/paletteColor"
        },
        "show": {
          "description": "Set to true to display this reference line.",
          "defaultValue": true,
          "kind": "union",
          "items": [
            {
              "type": "boolean"
            },
            {
              "type": "ValueExpression"
            }
          ]
        },
        "coloredBackground": {
          "description": "Set to true to fill the label and/or value of this reference line with this color",
          "optional": true,
          "defaultValue": false,
          "type": "boolean"
        },
        "showLabel": {
          "description": "Set to true to show the label of this reference line.",
          "optional": true,
          "defaultValue": true,
          "type": "boolean"
        },
        "showValue": {
          "description": "Set to true to show the value of this reference line.",
          "optional": true,
          "defaultValue": true,
          "type": "boolean"
        },
        "style": {
          "description": "Styling settings for reference line",
          "optional": true,
          "type": "#/definitions/refLineStyle"
        }
      }
    },
    "refLineStyle": {
      "description": "Styling settings for reference line",
      "kind": "object",
      "entries": {
        "lineThickness": {
          "description": "Set the thickness for this reference line.",
          "optional": true,
          "defaultValue": 2,
          "type": "number"
        },
        "lineType": {
          "description": "Set the dash type for this reference line.",
          "optional": true,
          "defaultValue": "''",
          "type": "string"
        }
      }
    },
    "subtotalProperties": {
      "description": "Settings for subtotal",
      "kind": "object",
      "entries": {
        "enable": {
          "description": "Option to add a subtotal after a measure.",
          "defaultValue": false,
          "type": "boolean"
        },
        "label": {
          "description": "Label of the subtotal added after a measure.",
          "defaultValue": "'Subtotal'",
          "type": "string"
        }
      }
    }
  }
}