diff --git a/docs/sources/developers/kinds/composable/alertgroupspanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/alertgroupspanelcfg/schema-reference.md
index bc55a56dfd1..d9ea319659c 100644
--- a/docs/sources/developers/kinds/composable/alertgroupspanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/alertgroupspanelcfg/schema-reference.md
@@ -6,20 +6,18 @@ title: AlertGroupsPanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# AlertGroupsPanelCfg kind
+## AlertGroupsPanelCfg
+
+#### Maturity: merged
+#### Version: 0.0
-## Maturity: merged
-## Version: 0.0
-## Properties
| Property | Type | Required | Description |
|----------------|-------------------------|----------|-------------|
| `PanelOptions` | [object](#paneloptions) | **Yes** | |
-## PanelOptions
-
-### Properties
+### PanelOptions
| Property | Type | Required | Description |
|----------------|---------|----------|-------------------------------------------------------------|
diff --git a/docs/sources/developers/kinds/composable/annotationslistpanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/annotationslistpanelcfg/schema-reference.md
index 3296b201a28..66aa6f9f2ac 100644
--- a/docs/sources/developers/kinds/composable/annotationslistpanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/annotationslistpanelcfg/schema-reference.md
@@ -6,20 +6,18 @@ title: AnnotationsListPanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# AnnotationsListPanelCfg kind
+## AnnotationsListPanelCfg
+
+#### Maturity: experimental
+#### Version: 0.0
-## Maturity: experimental
-## Version: 0.0
-## Properties
| Property | Type | Required | Description |
|----------------|-------------------------|----------|-------------|
| `PanelOptions` | [object](#paneloptions) | **Yes** | |
-## PanelOptions
-
-### Properties
+### PanelOptions
| Property | Type | Required | Description |
|-------------------------|----------|----------|-------------------|
diff --git a/docs/sources/developers/kinds/composable/barchartpanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/barchartpanelcfg/schema-reference.md
index d31c28ea66f..6164481d7ce 100644
--- a/docs/sources/developers/kinds/composable/barchartpanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/barchartpanelcfg/schema-reference.md
@@ -6,56 +6,223 @@ title: BarChartPanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# BarChartPanelCfg kind
+## BarChartPanelCfg
+
+#### Maturity: experimental
+#### Version: 0.0
-## Maturity: experimental
-## Version: 0.0
-## Properties
| Property | Type | Required | Description |
|--------------------|-----------------------------|----------|-------------|
| `PanelFieldConfig` | [object](#panelfieldconfig) | **Yes** | |
| `PanelOptions` | [object](#paneloptions) | **Yes** | |
-## PanelFieldConfig
+### PanelFieldConfig
+
+It extends [AxisConfig](#axisconfig) and [HideableFieldConfig](#hideablefieldconfig).
+
+| Property | Type | Required | Description |
+|---------------------|-----------------------------------------------------------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `axisCenteredZero` | boolean | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisColorMode` | string | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs
Possible values are: `text`, `series`. |
+| `axisGridShow` | boolean | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisLabel` | string | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisPlacement` | string | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs
Possible values are: `auto`, `top`, `right`, `bottom`, `left`, `hidden`. |
+| `axisSoftMax` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisSoftMin` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisWidth` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `fillOpacity` | integer | No | Controls the fill opacity of the bars. Default: `80`. |
+| `gradientMode` | string | No | TODO docs
Possible values are: `none`, `opacity`, `hue`, `scheme`. |
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | *(Inherited from [HideableFieldConfig](#hideablefieldconfig))*
TODO docs |
+| `lineWidth` | integer | No | Controls line width of the bars. Default: `1`. |
+| `scaleDistribution` | [ScaleDistributionConfig](#scaledistributionconfig) | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs |
+| `thresholdsStyle` | [GraphThresholdsStyleConfig](#graphthresholdsstyleconfig) | No | TODO docs |
+
+### AxisConfig
+
+TODO docs
-### Properties
+| Property | Type | Required | Description |
+|---------------------|-----------------------------------------------------|----------|----------------------------------------------------------------------------------------|
+| `axisCenteredZero` | boolean | No | |
+| `axisColorMode` | string | No | TODO docs
Possible values are: `text`, `series`. |
+| `axisGridShow` | boolean | No | |
+| `axisLabel` | string | No | |
+| `axisPlacement` | string | No | TODO docs
Possible values are: `auto`, `top`, `right`, `bottom`, `left`, `hidden`. |
+| `axisSoftMax` | number | No | |
+| `axisSoftMin` | number | No | |
+| `axisWidth` | number | No | |
+| `scaleDistribution` | [ScaleDistributionConfig](#scaledistributionconfig) | No | TODO docs |
-| Property | Type | Required | Description |
-|-------------------|-----------------------------------------------------------|----------|--------------------------------------------------------------------|
-| `fillOpacity` | integer | No | Controls the fill opacity of the bars. Default: `80`. |
-| `gradientMode` | string | No | TODO docs Possible values are: `none`, `opacity`, `hue`, `scheme`. |
-| `lineWidth` | integer | No | Controls line width of the bars. Default: `1`. |
-| `thresholdsStyle` | [GraphThresholdsStyleConfig](#graphthresholdsstyleconfig) | No | TODO docs |
+### ScaleDistributionConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------------|--------|----------|--------------------------------------------------------------------------|
+| `type` | string | **Yes** | TODO docs
Possible values are: `linear`, `log`, `ordinal`, `symlog`. |
+| `linearThreshold` | number | No | |
+| `log` | number | No | |
### GraphThresholdsStyleConfig
TODO docs
-#### Properties
+| Property | Type | Required | Description |
+|----------|--------|----------|-----------------------------------------------------------------------------------------------------------|
+| `mode` | string | **Yes** | TODO docs
Possible values are: `off`, `line`, `dashed`, `area`, `line+area`, `dashed+area`, `series`. |
+
+### HideSeriesConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### HideableFieldConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|------------|---------------------------------------|----------|-------------|
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | TODO docs |
-| Property | Type | Required | Description |
-|----------|--------|----------|-------------------------------------------------------------------------------------------------------|
-| `mode` | string | **Yes** | TODO docs Possible values are: `off`, `line`, `dashed`, `area`, `line+area`, `dashed+area`, `series`. |
+### HideSeriesConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### ScaleDistributionConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------------|--------|----------|--------------------------------------------------------------------------|
+| `type` | string | **Yes** | TODO docs
Possible values are: `linear`, `log`, `ordinal`, `symlog`. |
+| `linearThreshold` | number | No | |
+| `log` | number | No | |
+
+### PanelOptions
+
+It extends [OptionsWithLegend](#optionswithlegend) and [OptionsWithTooltip](#optionswithtooltip) and [OptionsWithTextFormatting](#optionswithtextformatting).
+
+| Property | Type | Required | Description |
+|-----------------------|-------------------------------------------------|----------|------------------------------------------------------------------------------------------------------------------------------------|
+| `barWidth` | number | **Yes** | Controls the width of bars. 1 = Max width, 0 = Min width. Default: `0.97`. |
+| `fullHighlight` | boolean | **Yes** | Enables mode which highlights the entire bar area and shows tooltip when cursor
hovers over highlighted area Default: `false`. |
+| `groupWidth` | number | **Yes** | Controls the width of groups. 1 = max with, 0 = min width. Default: `0.7`. |
+| `legend` | [VizLegendOptions](#vizlegendoptions) | **Yes** | *(Inherited from [OptionsWithLegend](#optionswithlegend))*
TODO docs |
+| `orientation` | string | **Yes** | TODO docs
Possible values are: `auto`, `vertical`, `horizontal`. |
+| `showValue` | string | **Yes** | TODO docs
Possible values are: `auto`, `never`, `always`. |
+| `stacking` | string | **Yes** | TODO docs
Possible values are: `none`, `normal`, `percent`. |
+| `tooltip` | [VizTooltipOptions](#viztooltipoptions) | **Yes** | *(Inherited from [OptionsWithTooltip](#optionswithtooltip))*
TODO docs |
+| `xTickLabelMaxLength` | integer | **Yes** | Sets the max length that a label can have before it is truncated. |
+| `xTickLabelRotation` | integer | **Yes** | Controls the rotation of the x axis labels. Default: `0`. |
+| `barRadius` | number | No | Controls the radius of each bar. Default: `0`. |
+| `colorByField` | string | No | Use the color value for a sibling field to color each bar value. |
+| `text` | [VizTextDisplayOptions](#viztextdisplayoptions) | No | *(Inherited from [OptionsWithTextFormatting](#optionswithtextformatting))*
TODO docs |
+| `xField` | string | No | Manually select which field from the dataset to represent the x field. |
+| `xTickLabelSpacing` | integer | No | Controls the spacing between x axis labels.
negative values indicate backwards skipping behavior Default: `0`. |
+
+### OptionsWithLegend
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|---------------------------------------|----------|-------------|
+| `legend` | [VizLegendOptions](#vizlegendoptions) | **Yes** | TODO docs |
+
+### VizLegendOptions
+
+TODO docs
-## PanelOptions
+| Property | Type | Required | Description |
+|---------------|----------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | |
+| `displayMode` | string | **Yes** | TODO docs
Note: "hidden" needs to remain as an option for plugins compatibility
Possible values are: `list`, `table`, `hidden`. |
+| `placement` | string | **Yes** | TODO docs
Possible values are: `bottom`, `right`. |
+| `showLegend` | boolean | **Yes** | |
+| `asTable` | boolean | No | |
+| `isVisible` | boolean | No | |
+| `sortBy` | string | No | |
+| `sortDesc` | boolean | No | |
+| `width` | number | No | |
-### Properties
+### OptionsWithTextFormatting
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|-------------------------------------------------|----------|-------------|
+| `text` | [VizTextDisplayOptions](#viztextdisplayoptions) | No | TODO docs |
+
+### VizTextDisplayOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------|--------|----------|--------------------------|
+| `titleSize` | number | No | Explicit title text size |
+| `valueSize` | number | No | Explicit value text size |
+
+### OptionsWithTooltip
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|-----------------------------------------|----------|-------------|
+| `tooltip` | [VizTooltipOptions](#viztooltipoptions) | **Yes** | TODO docs |
+
+### VizTooltipOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|--------|----------|---------------------------------------------------------------|
+| `mode` | string | **Yes** | TODO docs
Possible values are: `single`, `multi`, `none`. |
+| `sort` | string | **Yes** | TODO docs
Possible values are: `asc`, `desc`, `none`. |
+
+### VizLegendOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|---------------|----------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | |
+| `displayMode` | string | **Yes** | TODO docs
Note: "hidden" needs to remain as an option for plugins compatibility
Possible values are: `list`, `table`, `hidden`. |
+| `placement` | string | **Yes** | TODO docs
Possible values are: `bottom`, `right`. |
+| `showLegend` | boolean | **Yes** | |
+| `asTable` | boolean | No | |
+| `isVisible` | boolean | No | |
+| `sortBy` | string | No | |
+| `sortDesc` | boolean | No | |
+| `width` | number | No | |
+
+### VizTextDisplayOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------|--------|----------|--------------------------|
+| `titleSize` | number | No | Explicit title text size |
+| `valueSize` | number | No | Explicit value text size |
+
+### VizTooltipOptions
+
+TODO docs
-| Property | Type | Required | Description |
-|-----------------------|---------|----------|------------------------------------------------------------------------------------------------------------------------------------|
-| `barRadius` | number | No | Controls the radius of each bar. Default: `0`. |
-| `barWidth` | number | No | Controls the width of bars. 1 = Max width, 0 = Min width. Default: `0.97`. |
-| `colorByField` | string | No | Use the color value for a sibling field to color each bar value. |
-| `fullHighlight` | boolean | No | Enables mode which highlights the entire bar area and shows tooltip when cursor
hovers over highlighted area Default: `false`. |
-| `groupWidth` | number | No | Controls the width of groups. 1 = max with, 0 = min width. Default: `0.7`. |
-| `orientation` | string | No | TODO docs Possible values are: `auto`, `vertical`, `horizontal`. |
-| `showValue` | string | No | TODO docs Possible values are: `auto`, `never`, `always`. |
-| `stacking` | string | No | TODO docs Possible values are: `none`, `normal`, `percent`. |
-| `xField` | string | No | Manually select which field from the dataset to represent the x field. |
-| `xTickLabelMaxLength` | integer | No | Sets the max length that a label can have before it is truncated. |
-| `xTickLabelRotation` | integer | No | Controls the rotation of the x axis labels. Default: `0`. |
-| `xTickLabelSpacing` | integer | No | Controls the spacing between x axis labels.
negative values indicate backwards skipping behavior Default: `0`. |
+| Property | Type | Required | Description |
+|----------|--------|----------|---------------------------------------------------------------|
+| `mode` | string | **Yes** | TODO docs
Possible values are: `single`, `multi`, `none`. |
+| `sort` | string | **Yes** | TODO docs
Possible values are: `asc`, `desc`, `none`. |
diff --git a/docs/sources/developers/kinds/composable/bargaugepanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/bargaugepanelcfg/schema-reference.md
index 4abeb6078f1..2c50b04e9c6 100644
--- a/docs/sources/developers/kinds/composable/bargaugepanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/bargaugepanelcfg/schema-reference.md
@@ -6,26 +6,98 @@ title: BarGaugePanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# BarGaugePanelCfg kind
+## BarGaugePanelCfg
+
+#### Maturity: experimental
+#### Version: 0.0
-## Maturity: experimental
-## Version: 0.0
-## Properties
| Property | Type | Required | Description |
|----------------|-------------------------|----------|-------------|
| `PanelOptions` | [object](#paneloptions) | **Yes** | |
-## PanelOptions
+### PanelOptions
+
+It extends [SingleStatBaseOptions](#singlestatbaseoptions).
+
+| Property | Type | Required | Description |
+|-----------------|-------------------------------------------------|----------|-----------------------------------------------------------------------------------------------------------------------------------------------|
+| `displayMode` | string | **Yes** | Enum expressing the possible display modes
for the bar gauge component of Grafana UI
Possible values are: `basic`, `lcd`, `gradient`. |
+| `minVizHeight` | integer | **Yes** | Default: `10`. |
+| `minVizWidth` | integer | **Yes** | Default: `0`. |
+| `showUnfilled` | boolean | **Yes** | Default: `true`. |
+| `orientation` | string | No | *(Inherited from [SingleStatBaseOptions](#singlestatbaseoptions))*
TODO docs
Possible values are: `auto`, `vertical`, `horizontal`. |
+| `reduceOptions` | [ReduceDataOptions](#reducedataoptions) | No | *(Inherited from [SingleStatBaseOptions](#singlestatbaseoptions))*
TODO docs |
+| `text` | [VizTextDisplayOptions](#viztextdisplayoptions) | No | *(Inherited from [SingleStatBaseOptions](#singlestatbaseoptions))*
TODO docs |
+
+### ReduceDataOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|----------|----------|---------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | When !values, pick one value for the whole field |
+| `fields` | string | No | Which fields to show. By default this is only numeric fields |
+| `limit` | number | No | if showing all values limit |
+| `values` | boolean | No | If true show each row value |
+
+### SingleStatBaseOptions
+
+TODO docs
+
+It extends [OptionsWithTextFormatting](#optionswithtextformatting).
+
+| Property | Type | Required | Description |
+|-----------------|-------------------------------------------------|----------|------------------------------------------------------------------------------------------|
+| `orientation` | string | **Yes** | TODO docs
Possible values are: `auto`, `vertical`, `horizontal`. |
+| `reduceOptions` | [ReduceDataOptions](#reducedataoptions) | **Yes** | TODO docs |
+| `text` | [VizTextDisplayOptions](#viztextdisplayoptions) | No | *(Inherited from [OptionsWithTextFormatting](#optionswithtextformatting))*
TODO docs |
+
+### OptionsWithTextFormatting
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|-------------------------------------------------|----------|-------------|
+| `text` | [VizTextDisplayOptions](#viztextdisplayoptions) | No | TODO docs |
+
+### VizTextDisplayOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------|--------|----------|--------------------------|
+| `titleSize` | number | No | Explicit title text size |
+| `valueSize` | number | No | Explicit value text size |
+
+### ReduceDataOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|----------|----------|---------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | When !values, pick one value for the whole field |
+| `fields` | string | No | Which fields to show. By default this is only numeric fields |
+| `limit` | number | No | if showing all values limit |
+| `values` | boolean | No | If true show each row value |
+
+### VizTextDisplayOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------|--------|----------|--------------------------|
+| `titleSize` | number | No | Explicit title text size |
+| `valueSize` | number | No | Explicit value text size |
+
+### VizTextDisplayOptions
-### Properties
+TODO docs
-| Property | Type | Required | Description |
-|----------------|---------|----------|-------------------------------------------------------------------------------------------------------------------------------------------|
-| `displayMode` | string | No | Enum expressing the possible display modes
for the bar gauge component of Grafana UI Possible values are: `basic`, `lcd`, `gradient`. |
-| `minVizHeight` | integer | No | Default: `10`. |
-| `minVizWidth` | integer | No | Default: `0`. |
-| `showUnfilled` | boolean | No | Default: `true`. |
+| Property | Type | Required | Description |
+|-------------|--------|----------|--------------------------|
+| `titleSize` | number | No | Explicit title text size |
+| `valueSize` | number | No | Explicit value text size |
diff --git a/docs/sources/developers/kinds/composable/dashboardlistpanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/dashboardlistpanelcfg/schema-reference.md
index 1956a61ce2b..0ed43ebe527 100644
--- a/docs/sources/developers/kinds/composable/dashboardlistpanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/dashboardlistpanelcfg/schema-reference.md
@@ -6,21 +6,19 @@ title: DashboardListPanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# DashboardListPanelCfg kind
+## DashboardListPanelCfg
+
+#### Maturity: experimental
+#### Version: 0.0
-## Maturity: experimental
-## Version: 0.0
-## Properties
| Property | Type | Required | Description |
|----------------|-------------------------|----------|------------------------------------------|
| `PanelLayout` | string | **Yes** | Possible values are: `list`, `previews`. |
| `PanelOptions` | [object](#paneloptions) | **Yes** | |
-## PanelOptions
-
-### Properties
+### PanelOptions
| Property | Type | Required | Description |
|----------------------|----------|----------|------------------------------------------|
diff --git a/docs/sources/developers/kinds/composable/elasticsearchdataquery/schema-reference.md b/docs/sources/developers/kinds/composable/elasticsearchdataquery/schema-reference.md
index 5688055d5c3..eaed2448f88 100644
--- a/docs/sources/developers/kinds/composable/elasticsearchdataquery/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/elasticsearchdataquery/schema-reference.md
@@ -6,27 +6,48 @@ title: ElasticsearchDataQuery kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# ElasticsearchDataQuery kind
+## ElasticsearchDataQuery
-## Maturity: merged
-## Version: 0.0
+#### Maturity: merged
+#### Version: 0.0
-## Properties
-| Property | Type | Required | Description |
-|--------------|-------------------------------------------|----------|-------------|
-| `alias` | string | No | |
-| `bucketAggs` | [BucketAggregation](#bucketaggregation)[] | No | |
-| `metrics` | [MetricAggregation](#metricaggregation)[] | No | |
-| `query` | string | No | |
-| `timeField` | string | No | |
-## BucketAggregation
+It extends [DataQuery](#dataquery).
+
+| Property | Type | Required | Description |
+|--------------|-------------------------------------------|----------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `refId` | string | **Yes** | *(Inherited from [DataQuery](#dataquery))*
A - Z |
+| `alias` | string | No | |
+| `bucketAggs` | [BucketAggregation](#bucketaggregation)[] | No | |
+| `datasource` | | No | *(Inherited from [DataQuery](#dataquery))*
For mixed data sources the selected datasource is on the query level.
For non mixed scenarios this is undefined.
TODO find a better way to do this ^ that's friendly to schema
TODO this shouldn't be unknown but DataSourceRef | null |
+| `hide` | boolean | No | *(Inherited from [DataQuery](#dataquery))*
true if query is disabled (ie should not be returned to the dashboard) |
+| `key` | string | No | *(Inherited from [DataQuery](#dataquery))*
Unique, guid like, string used in explore mode |
+| `metrics` | [MetricAggregation](#metricaggregation)[] | No | |
+| `queryType` | string | No | *(Inherited from [DataQuery](#dataquery))*
Specify the query flavor
TODO make this required and give it a default |
+| `query` | string | No | |
+| `timeField` | string | No | |
+
+### BucketAggregation
| Property | Type | Required | Description |
|----------|------|----------|-------------|
-## MetricAggregation
+### DataQuery
+
+These are the common properties available to all queries in all datasources.
+Specific implementations will *extend* this interface, adding the required
+properties for the given context.
+
+| Property | Type | Required | Description |
+|--------------|---------|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `refId` | string | **Yes** | A - Z |
+| `datasource` | | No | For mixed data sources the selected datasource is on the query level.
For non mixed scenarios this is undefined.
TODO find a better way to do this ^ that's friendly to schema
TODO this shouldn't be unknown but DataSourceRef | null |
+| `hide` | boolean | No | true if query is disabled (ie should not be returned to the dashboard) |
+| `key` | string | No | Unique, guid like, string used in explore mode |
+| `queryType` | string | No | Specify the query flavor
TODO make this required and give it a default |
+
+### MetricAggregation
| Property | Type | Required | Description |
|----------|------|----------|-------------|
diff --git a/docs/sources/developers/kinds/composable/gaugepanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/gaugepanelcfg/schema-reference.md
index 1f760818f46..c36f85c848f 100644
--- a/docs/sources/developers/kinds/composable/gaugepanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/gaugepanelcfg/schema-reference.md
@@ -6,24 +6,96 @@ title: GaugePanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# GaugePanelCfg kind
+## GaugePanelCfg
+
+#### Maturity: experimental
+#### Version: 0.0
-## Maturity: experimental
-## Version: 0.0
-## Properties
| Property | Type | Required | Description |
|----------------|-------------------------|----------|-------------|
| `PanelOptions` | [object](#paneloptions) | **Yes** | |
-## PanelOptions
+### PanelOptions
+
+It extends [SingleStatBaseOptions](#singlestatbaseoptions).
+
+| Property | Type | Required | Description |
+|------------------------|-------------------------------------------------|----------|---------------------------------------------------------------------------------------------------------------------------------------------|
+| `showThresholdLabels` | boolean | **Yes** | Default: `false`. |
+| `showThresholdMarkers` | boolean | **Yes** | Default: `true`. |
+| `orientation` | string | No | *(Inherited from [SingleStatBaseOptions](#singlestatbaseoptions))*
TODO docs
Possible values are: `auto`, `vertical`, `horizontal`. |
+| `reduceOptions` | [ReduceDataOptions](#reducedataoptions) | No | *(Inherited from [SingleStatBaseOptions](#singlestatbaseoptions))*
TODO docs |
+| `text` | [VizTextDisplayOptions](#viztextdisplayoptions) | No | *(Inherited from [SingleStatBaseOptions](#singlestatbaseoptions))*
TODO docs |
+
+### ReduceDataOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|----------|----------|---------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | When !values, pick one value for the whole field |
+| `fields` | string | No | Which fields to show. By default this is only numeric fields |
+| `limit` | number | No | if showing all values limit |
+| `values` | boolean | No | If true show each row value |
+
+### SingleStatBaseOptions
+
+TODO docs
+
+It extends [OptionsWithTextFormatting](#optionswithtextformatting).
+
+| Property | Type | Required | Description |
+|-----------------|-------------------------------------------------|----------|------------------------------------------------------------------------------------------|
+| `orientation` | string | **Yes** | TODO docs
Possible values are: `auto`, `vertical`, `horizontal`. |
+| `reduceOptions` | [ReduceDataOptions](#reducedataoptions) | **Yes** | TODO docs |
+| `text` | [VizTextDisplayOptions](#viztextdisplayoptions) | No | *(Inherited from [OptionsWithTextFormatting](#optionswithtextformatting))*
TODO docs |
+
+### OptionsWithTextFormatting
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|-------------------------------------------------|----------|-------------|
+| `text` | [VizTextDisplayOptions](#viztextdisplayoptions) | No | TODO docs |
+
+### VizTextDisplayOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------|--------|----------|--------------------------|
+| `titleSize` | number | No | Explicit title text size |
+| `valueSize` | number | No | Explicit value text size |
+
+### ReduceDataOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|----------|----------|---------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | When !values, pick one value for the whole field |
+| `fields` | string | No | Which fields to show. By default this is only numeric fields |
+| `limit` | number | No | if showing all values limit |
+| `values` | boolean | No | If true show each row value |
+
+### VizTextDisplayOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------|--------|----------|--------------------------|
+| `titleSize` | number | No | Explicit title text size |
+| `valueSize` | number | No | Explicit value text size |
+
+### VizTextDisplayOptions
-### Properties
+TODO docs
-| Property | Type | Required | Description |
-|------------------------|---------|----------|-------------------|
-| `showThresholdLabels` | boolean | No | Default: `false`. |
-| `showThresholdMarkers` | boolean | No | Default: `true`. |
+| Property | Type | Required | Description |
+|-------------|--------|----------|--------------------------|
+| `titleSize` | number | No | Explicit title text size |
+| `valueSize` | number | No | Explicit value text size |
diff --git a/docs/sources/developers/kinds/composable/histogrampanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/histogrampanelcfg/schema-reference.md
index efb993406e1..8c4e9fdcf54 100644
--- a/docs/sources/developers/kinds/composable/histogrampanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/histogrampanelcfg/schema-reference.md
@@ -6,36 +6,178 @@ title: HistogramPanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# HistogramPanelCfg kind
+## HistogramPanelCfg
+
+#### Maturity: experimental
+#### Version: 0.0
-## Maturity: experimental
-## Version: 0.0
-## Properties
| Property | Type | Required | Description |
|--------------------|-----------------------------|----------|-------------|
| `PanelFieldConfig` | [object](#panelfieldconfig) | **Yes** | |
| `PanelOptions` | [object](#paneloptions) | **Yes** | |
-## PanelFieldConfig
+### PanelFieldConfig
+
+It extends [AxisConfig](#axisconfig) and [HideableFieldConfig](#hideablefieldconfig).
+
+| Property | Type | Required | Description |
+|---------------------|-----------------------------------------------------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `axisCenteredZero` | boolean | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisColorMode` | string | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs
Possible values are: `text`, `series`. |
+| `axisGridShow` | boolean | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisLabel` | string | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisPlacement` | string | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs
Possible values are: `auto`, `top`, `right`, `bottom`, `left`, `hidden`. |
+| `axisSoftMax` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisSoftMin` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisWidth` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `fillOpacity` | integer | No | Controls the fill opacity of the bars. Default: `80`. |
+| `gradientMode` | string | No | TODO docs
Possible values are: `none`, `opacity`, `hue`, `scheme`. |
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | *(Inherited from [HideableFieldConfig](#hideablefieldconfig))*
TODO docs |
+| `lineWidth` | integer | No | Controls line width of the bars. Default: `1`. |
+| `scaleDistribution` | [ScaleDistributionConfig](#scaledistributionconfig) | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs |
+
+### AxisConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|---------------------|-----------------------------------------------------|----------|----------------------------------------------------------------------------------------|
+| `axisCenteredZero` | boolean | No | |
+| `axisColorMode` | string | No | TODO docs
Possible values are: `text`, `series`. |
+| `axisGridShow` | boolean | No | |
+| `axisLabel` | string | No | |
+| `axisPlacement` | string | No | TODO docs
Possible values are: `auto`, `top`, `right`, `bottom`, `left`, `hidden`. |
+| `axisSoftMax` | number | No | |
+| `axisSoftMin` | number | No | |
+| `axisWidth` | number | No | |
+| `scaleDistribution` | [ScaleDistributionConfig](#scaledistributionconfig) | No | TODO docs |
+
+### ScaleDistributionConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------------|--------|----------|--------------------------------------------------------------------------|
+| `type` | string | **Yes** | TODO docs
Possible values are: `linear`, `log`, `ordinal`, `symlog`. |
+| `linearThreshold` | number | No | |
+| `log` | number | No | |
+
+### HideSeriesConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### HideableFieldConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|------------|---------------------------------------|----------|-------------|
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | TODO docs |
+
+### HideSeriesConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### ScaleDistributionConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------------|--------|----------|--------------------------------------------------------------------------|
+| `type` | string | **Yes** | TODO docs
Possible values are: `linear`, `log`, `ordinal`, `symlog`. |
+| `linearThreshold` | number | No | |
+| `log` | number | No | |
+
+### PanelOptions
+
+It extends [OptionsWithLegend](#optionswithlegend) and [OptionsWithTooltip](#optionswithtooltip).
+
+| Property | Type | Required | Description |
+|----------------|-----------------------------------------|----------|----------------------------------------------------------------------------|
+| `legend` | [VizLegendOptions](#vizlegendoptions) | **Yes** | *(Inherited from [OptionsWithLegend](#optionswithlegend))*
TODO docs |
+| `tooltip` | [VizTooltipOptions](#viztooltipoptions) | **Yes** | *(Inherited from [OptionsWithTooltip](#optionswithtooltip))*
TODO docs |
+| `bucketOffset` | integer | No | Offset buckets by this amount Default: `0`. |
+| `bucketSize` | integer | No | Size of each bucket |
+| `combine` | boolean | No | Combines multiple series into a single histogram |
+
+### OptionsWithLegend
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|---------------------------------------|----------|-------------|
+| `legend` | [VizLegendOptions](#vizlegendoptions) | **Yes** | TODO docs |
+
+### VizLegendOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|---------------|----------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | |
+| `displayMode` | string | **Yes** | TODO docs
Note: "hidden" needs to remain as an option for plugins compatibility
Possible values are: `list`, `table`, `hidden`. |
+| `placement` | string | **Yes** | TODO docs
Possible values are: `bottom`, `right`. |
+| `showLegend` | boolean | **Yes** | |
+| `asTable` | boolean | No | |
+| `isVisible` | boolean | No | |
+| `sortBy` | string | No | |
+| `sortDesc` | boolean | No | |
+| `width` | number | No | |
+
+### OptionsWithTooltip
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|-----------------------------------------|----------|-------------|
+| `tooltip` | [VizTooltipOptions](#viztooltipoptions) | **Yes** | TODO docs |
+
+### VizTooltipOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|--------|----------|---------------------------------------------------------------|
+| `mode` | string | **Yes** | TODO docs
Possible values are: `single`, `multi`, `none`. |
+| `sort` | string | **Yes** | TODO docs
Possible values are: `asc`, `desc`, `none`. |
+
+### VizLegendOptions
-### Properties
+TODO docs
-| Property | Type | Required | Description |
-|----------------|---------|----------|--------------------------------------------------------------------|
-| `fillOpacity` | integer | No | Controls the fill opacity of the bars. Default: `80`. |
-| `gradientMode` | string | No | TODO docs Possible values are: `none`, `opacity`, `hue`, `scheme`. |
-| `lineWidth` | integer | No | Controls line width of the bars. Default: `1`. |
+| Property | Type | Required | Description |
+|---------------|----------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | |
+| `displayMode` | string | **Yes** | TODO docs
Note: "hidden" needs to remain as an option for plugins compatibility
Possible values are: `list`, `table`, `hidden`. |
+| `placement` | string | **Yes** | TODO docs
Possible values are: `bottom`, `right`. |
+| `showLegend` | boolean | **Yes** | |
+| `asTable` | boolean | No | |
+| `isVisible` | boolean | No | |
+| `sortBy` | string | No | |
+| `sortDesc` | boolean | No | |
+| `width` | number | No | |
-## PanelOptions
+### VizTooltipOptions
-### Properties
+TODO docs
-| Property | Type | Required | Description |
-|----------------|---------|----------|--------------------------------------------------|
-| `bucketOffset` | integer | No | Offset buckets by this amount Default: `0`. |
-| `bucketSize` | integer | No | Size of each bucket |
-| `combine` | boolean | No | Combines multiple series into a single histogram |
+| Property | Type | Required | Description |
+|----------|--------|----------|---------------------------------------------------------------|
+| `mode` | string | **Yes** | TODO docs
Possible values are: `single`, `multi`, `none`. |
+| `sort` | string | **Yes** | TODO docs
Possible values are: `asc`, `desc`, `none`. |
diff --git a/docs/sources/developers/kinds/composable/newspanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/newspanelcfg/schema-reference.md
index b1b7c504862..c91623d0d39 100644
--- a/docs/sources/developers/kinds/composable/newspanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/newspanelcfg/schema-reference.md
@@ -6,20 +6,18 @@ title: NewsPanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# NewsPanelCfg kind
+## NewsPanelCfg
+
+#### Maturity: experimental
+#### Version: 0.0
-## Maturity: experimental
-## Version: 0.0
-## Properties
| Property | Type | Required | Description |
|----------------|-------------------------|----------|-------------|
| `PanelOptions` | [object](#paneloptions) | **Yes** | |
-## PanelOptions
-
-### Properties
+### PanelOptions
| Property | Type | Required | Description |
|-------------|---------|----------|--------------------------------------------|
diff --git a/docs/sources/developers/kinds/composable/nodegraphpanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/nodegraphpanelcfg/schema-reference.md
index e0b84e4862e..ed1060ae775 100644
--- a/docs/sources/developers/kinds/composable/nodegraphpanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/nodegraphpanelcfg/schema-reference.md
@@ -6,12 +6,12 @@ title: NodeGraphPanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# NodeGraphPanelCfg kind
+## NodeGraphPanelCfg
+
+#### Maturity: experimental
+#### Version: 0.0
-## Maturity: experimental
-## Version: 0.0
-## Properties
| Property | Type | Required | Description |
|----------------|-------------------------|----------|-------------|
@@ -20,27 +20,21 @@ title: NodeGraphPanelCfg kind
| `NodeOptions` | [object](#nodeoptions) | **Yes** | |
| `PanelOptions` | [object](#paneloptions) | **Yes** | |
-## ArcOption
-
-### Properties
+### ArcOption
| Property | Type | Required | Description |
|----------|--------|----------|-----------------------------------------------------------------------------------------------------|
| `color` | string | No | The color of the arc. |
| `field` | string | No | Field from which to get the value. Values should be less than 1, representing fraction of a circle. |
-## EdgeOptions
-
-### Properties
+### EdgeOptions
| Property | Type | Required | Description |
|---------------------|--------|----------|-----------------------------------------------------------------------------|
| `mainStatUnit` | string | No | Unit for the main stat to override what ever is set in the data frame. |
| `secondaryStatUnit` | string | No | Unit for the secondary stat to override what ever is set in the data frame. |
-## NodeOptions
-
-### Properties
+### NodeOptions
| Property | Type | Required | Description |
|---------------------|---------------------------|----------|-----------------------------------------------------------------------------------------|
@@ -50,16 +44,12 @@ title: NodeGraphPanelCfg kind
### ArcOption
-#### Properties
-
| Property | Type | Required | Description |
|----------|--------|----------|-----------------------------------------------------------------------------------------------------|
| `color` | string | No | The color of the arc. |
| `field` | string | No | Field from which to get the value. Values should be less than 1, representing fraction of a circle. |
-## PanelOptions
-
-### Properties
+### PanelOptions
| Property | Type | Required | Description |
|----------|-----------------------------|----------|-------------|
@@ -68,8 +58,6 @@ title: NodeGraphPanelCfg kind
### EdgeOptions
-#### Properties
-
| Property | Type | Required | Description |
|---------------------|--------|----------|-----------------------------------------------------------------------------|
| `mainStatUnit` | string | No | Unit for the main stat to override what ever is set in the data frame. |
@@ -77,17 +65,13 @@ title: NodeGraphPanelCfg kind
### NodeOptions
-#### Properties
-
| Property | Type | Required | Description |
|---------------------|---------------------------|----------|-----------------------------------------------------------------------------------------|
| `arcs` | [ArcOption](#arcoption)[] | No | Define which fields are shown as part of the node arc (colored circle around the node). |
| `mainStatUnit` | string | No | Unit for the main stat to override what ever is set in the data frame. |
| `secondaryStatUnit` | string | No | Unit for the secondary stat to override what ever is set in the data frame. |
-#### ArcOption
-
-##### Properties
+### ArcOption
| Property | Type | Required | Description |
|----------|--------|----------|-----------------------------------------------------------------------------------------------------|
diff --git a/docs/sources/developers/kinds/composable/phlaredataquery/schema-reference.md b/docs/sources/developers/kinds/composable/phlaredataquery/schema-reference.md
index 5e401bfb976..d31ea4024fa 100644
--- a/docs/sources/developers/kinds/composable/phlaredataquery/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/phlaredataquery/schema-reference.md
@@ -6,17 +6,38 @@ title: PhlareDataQuery kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# PhlareDataQuery kind
+## PhlareDataQuery
-## Maturity: experimental
-## Version: 0.0
+#### Maturity: experimental
+#### Version: 0.0
-## Properties
-| Property | Type | Required | Description |
-|-----------------|----------|----------|-----------------------------------------------------|
-| `groupBy` | string[] | No | Allows to group the results. |
-| `labelSelector` | string | No | Specifies the query label selectors. Default: `{}`. |
-| `profileTypeId` | string | No | Specifies the type of profile to query. |
+
+It extends [DataQuery](#dataquery).
+
+| Property | Type | Required | Description |
+|-----------------|----------|----------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `groupBy` | string[] | **Yes** | Allows to group the results. |
+| `labelSelector` | string | **Yes** | Specifies the query label selectors. Default: `{}`. |
+| `profileTypeId` | string | **Yes** | Specifies the type of profile to query. |
+| `refId` | string | **Yes** | *(Inherited from [DataQuery](#dataquery))*
A - Z |
+| `datasource` | | No | *(Inherited from [DataQuery](#dataquery))*
For mixed data sources the selected datasource is on the query level.
For non mixed scenarios this is undefined.
TODO find a better way to do this ^ that's friendly to schema
TODO this shouldn't be unknown but DataSourceRef | null |
+| `hide` | boolean | No | *(Inherited from [DataQuery](#dataquery))*
true if query is disabled (ie should not be returned to the dashboard) |
+| `key` | string | No | *(Inherited from [DataQuery](#dataquery))*
Unique, guid like, string used in explore mode |
+| `queryType` | string | No | *(Inherited from [DataQuery](#dataquery))*
Specify the query flavor
TODO make this required and give it a default |
+
+### DataQuery
+
+These are the common properties available to all queries in all datasources.
+Specific implementations will *extend* this interface, adding the required
+properties for the given context.
+
+| Property | Type | Required | Description |
+|--------------|---------|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `refId` | string | **Yes** | A - Z |
+| `datasource` | | No | For mixed data sources the selected datasource is on the query level.
For non mixed scenarios this is undefined.
TODO find a better way to do this ^ that's friendly to schema
TODO this shouldn't be unknown but DataSourceRef | null |
+| `hide` | boolean | No | true if query is disabled (ie should not be returned to the dashboard) |
+| `key` | string | No | Unique, guid like, string used in explore mode |
+| `queryType` | string | No | Specify the query flavor
TODO make this required and give it a default |
diff --git a/docs/sources/developers/kinds/composable/piechartpanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/piechartpanelcfg/schema-reference.md
index d051a2d3c72..70904a040fc 100644
--- a/docs/sources/developers/kinds/composable/piechartpanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/piechartpanelcfg/schema-reference.md
@@ -6,27 +6,25 @@ title: PieChartPanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# PieChartPanelCfg kind
+## PieChartPanelCfg
-## Maturity: experimental
-## Version: 0.0
+#### Maturity: experimental
+#### Version: 0.0
-## Properties
-| Property | Type | Required | Description |
-|-------------------------|---------------------------------------------|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| `PanelFieldConfig` | [HideableFieldConfig](#hideablefieldconfig) | **Yes** | TODO docs |
-| `PanelOptions` | [object](#paneloptions) | **Yes** | |
-| `PieChartLabels` | string | **Yes** | Select labels to display on the pie chart.
- Name - The series or field name.
- Percent - The percentage of the whole.
- Value - The raw numerical value. Possible values are: `name`, `value`, `percent`. |
-| `PieChartLegendOptions` | [object](#piechartlegendoptions) | **Yes** | |
-| `PieChartLegendValues` | string | **Yes** | Select values to display in the legend.
- Percent: The percentage of the whole.
- Value: The raw numerical value. Possible values are: `value`, `percent`. |
-| `PieChartType` | string | **Yes** | Select the pie chart display style. Possible values are: `pie`, `donut`. |
-## HideableFieldConfig
+| Property | Type | Required | Description |
+|-------------------------|---------------------------------------------|----------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `PanelFieldConfig` | [HideableFieldConfig](#hideablefieldconfig) | **Yes** | TODO docs |
+| `PanelOptions` | [object](#paneloptions) | **Yes** | |
+| `PieChartLabels` | string | **Yes** | Select labels to display on the pie chart.
- Name - The series or field name.
- Percent - The percentage of the whole.
- Value - The raw numerical value.
Possible values are: `name`, `value`, `percent`. |
+| `PieChartLegendOptions` | [object](#piechartlegendoptions) | **Yes** | |
+| `PieChartLegendValues` | string | **Yes** | Select values to display in the legend.
- Percent: The percentage of the whole.
- Value: The raw numerical value.
Possible values are: `value`, `percent`. |
+| `PieChartType` | string | **Yes** | Select the pie chart display style.
Possible values are: `pie`, `donut`. |
-TODO docs
+### HideableFieldConfig
-### Properties
+TODO docs
| Property | Type | Required | Description |
|------------|---------------------------------------|----------|-------------|
@@ -36,38 +34,185 @@ TODO docs
TODO docs
-#### Properties
-
| Property | Type | Required | Description |
|-----------|---------|----------|-------------|
| `legend` | boolean | **Yes** | |
| `tooltip` | boolean | **Yes** | |
| `viz` | boolean | **Yes** | |
-## PanelOptions
+### PanelOptions
+
+It extends [OptionsWithTooltip](#optionswithtooltip) and [SingleStatBaseOptions](#singlestatbaseoptions).
+
+| Property | Type | Required | Description |
+|-----------------|-------------------------------------------------|----------|---------------------------------------------------------------------------------------------------------------------------------------------|
+| `displayLabels` | string[] | **Yes** | |
+| `legend` | [PieChartLegendOptions](#piechartlegendoptions) | **Yes** | |
+| `pieType` | string | **Yes** | Select the pie chart display style.
Possible values are: `pie`, `donut`. |
+| `tooltip` | [VizTooltipOptions](#viztooltipoptions) | **Yes** | *(Inherited from [OptionsWithTooltip](#optionswithtooltip))*
TODO docs |
+| `orientation` | string | No | *(Inherited from [SingleStatBaseOptions](#singlestatbaseoptions))*
TODO docs
Possible values are: `auto`, `vertical`, `horizontal`. |
+| `reduceOptions` | [ReduceDataOptions](#reducedataoptions) | No | *(Inherited from [SingleStatBaseOptions](#singlestatbaseoptions))*
TODO docs |
+| `text` | [VizTextDisplayOptions](#viztextdisplayoptions) | No | *(Inherited from [SingleStatBaseOptions](#singlestatbaseoptions))*
TODO docs |
+
+### OptionsWithTooltip
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|-----------------------------------------|----------|-------------|
+| `tooltip` | [VizTooltipOptions](#viztooltipoptions) | **Yes** | TODO docs |
-### Properties
+### VizTooltipOptions
+
+TODO docs
-| Property | Type | Required | Description |
-|-----------------|-------------------------------------------------|----------|--------------------------------------------------------------------------|
-| `displayLabels` | string[] | No | |
-| `legend` | [PieChartLegendOptions](#piechartlegendoptions) | No | |
-| `pieType` | string | No | Select the pie chart display style. Possible values are: `pie`, `donut`. |
+| Property | Type | Required | Description |
+|----------|--------|----------|---------------------------------------------------------------|
+| `mode` | string | **Yes** | TODO docs
Possible values are: `single`, `multi`, `none`. |
+| `sort` | string | **Yes** | TODO docs
Possible values are: `asc`, `desc`, `none`. |
### PieChartLegendOptions
-#### Properties
+It extends [VizLegendOptions](#vizlegendoptions).
-| Property | Type | Required | Description |
-|----------|----------|----------|-------------|
-| `values` | string[] | No | |
+| Property | Type | Required | Description |
+|---------------|----------|----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | *(Inherited from [VizLegendOptions](#vizlegendoptions))* |
+| `displayMode` | string | **Yes** | *(Inherited from [VizLegendOptions](#vizlegendoptions))*
TODO docs
Note: "hidden" needs to remain as an option for plugins compatibility
Possible values are: `list`, `table`, `hidden`. |
+| `placement` | string | **Yes** | *(Inherited from [VizLegendOptions](#vizlegendoptions))*
TODO docs
Possible values are: `bottom`, `right`. |
+| `showLegend` | boolean | **Yes** | *(Inherited from [VizLegendOptions](#vizlegendoptions))* |
+| `values` | string[] | **Yes** | |
+| `asTable` | boolean | No | *(Inherited from [VizLegendOptions](#vizlegendoptions))* |
+| `isVisible` | boolean | No | *(Inherited from [VizLegendOptions](#vizlegendoptions))* |
+| `sortBy` | string | No | *(Inherited from [VizLegendOptions](#vizlegendoptions))* |
+| `sortDesc` | boolean | No | *(Inherited from [VizLegendOptions](#vizlegendoptions))* |
+| `width` | number | No | *(Inherited from [VizLegendOptions](#vizlegendoptions))* |
+
+### VizLegendOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|---------------|----------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | |
+| `displayMode` | string | **Yes** | TODO docs
Note: "hidden" needs to remain as an option for plugins compatibility
Possible values are: `list`, `table`, `hidden`. |
+| `placement` | string | **Yes** | TODO docs
Possible values are: `bottom`, `right`. |
+| `showLegend` | boolean | **Yes** | |
+| `asTable` | boolean | No | |
+| `isVisible` | boolean | No | |
+| `sortBy` | string | No | |
+| `sortDesc` | boolean | No | |
+| `width` | number | No | |
+
+### ReduceDataOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|----------|----------|---------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | When !values, pick one value for the whole field |
+| `fields` | string | No | Which fields to show. By default this is only numeric fields |
+| `limit` | number | No | if showing all values limit |
+| `values` | boolean | No | If true show each row value |
+
+### SingleStatBaseOptions
+
+TODO docs
+
+It extends [OptionsWithTextFormatting](#optionswithtextformatting).
+
+| Property | Type | Required | Description |
+|-----------------|-------------------------------------------------|----------|------------------------------------------------------------------------------------------|
+| `orientation` | string | **Yes** | TODO docs
Possible values are: `auto`, `vertical`, `horizontal`. |
+| `reduceOptions` | [ReduceDataOptions](#reducedataoptions) | **Yes** | TODO docs |
+| `text` | [VizTextDisplayOptions](#viztextdisplayoptions) | No | *(Inherited from [OptionsWithTextFormatting](#optionswithtextformatting))*
TODO docs |
+
+### OptionsWithTextFormatting
+
+TODO docs
-## PieChartLegendOptions
+| Property | Type | Required | Description |
+|----------|-------------------------------------------------|----------|-------------|
+| `text` | [VizTextDisplayOptions](#viztextdisplayoptions) | No | TODO docs |
-### Properties
+### VizTextDisplayOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------|--------|----------|--------------------------|
+| `titleSize` | number | No | Explicit title text size |
+| `valueSize` | number | No | Explicit value text size |
+
+### ReduceDataOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|----------|----------|---------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | When !values, pick one value for the whole field |
+| `fields` | string | No | Which fields to show. By default this is only numeric fields |
+| `limit` | number | No | if showing all values limit |
+| `values` | boolean | No | If true show each row value |
+
+### VizTextDisplayOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------|--------|----------|--------------------------|
+| `titleSize` | number | No | Explicit title text size |
+| `valueSize` | number | No | Explicit value text size |
+
+### VizTextDisplayOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------|--------|----------|--------------------------|
+| `titleSize` | number | No | Explicit title text size |
+| `valueSize` | number | No | Explicit value text size |
+
+### VizTooltipOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|--------|----------|---------------------------------------------------------------|
+| `mode` | string | **Yes** | TODO docs
Possible values are: `single`, `multi`, `none`. |
+| `sort` | string | **Yes** | TODO docs
Possible values are: `asc`, `desc`, `none`. |
+
+### PieChartLegendOptions
+
+It extends [VizLegendOptions](#vizlegendoptions).
+
+| Property | Type | Required | Description |
+|---------------|----------|----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | *(Inherited from [VizLegendOptions](#vizlegendoptions))* |
+| `displayMode` | string | **Yes** | *(Inherited from [VizLegendOptions](#vizlegendoptions))*
TODO docs
Note: "hidden" needs to remain as an option for plugins compatibility
Possible values are: `list`, `table`, `hidden`. |
+| `placement` | string | **Yes** | *(Inherited from [VizLegendOptions](#vizlegendoptions))*
TODO docs
Possible values are: `bottom`, `right`. |
+| `showLegend` | boolean | **Yes** | *(Inherited from [VizLegendOptions](#vizlegendoptions))* |
+| `values` | string[] | **Yes** | |
+| `asTable` | boolean | No | *(Inherited from [VizLegendOptions](#vizlegendoptions))* |
+| `isVisible` | boolean | No | *(Inherited from [VizLegendOptions](#vizlegendoptions))* |
+| `sortBy` | string | No | *(Inherited from [VizLegendOptions](#vizlegendoptions))* |
+| `sortDesc` | boolean | No | *(Inherited from [VizLegendOptions](#vizlegendoptions))* |
+| `width` | number | No | *(Inherited from [VizLegendOptions](#vizlegendoptions))* |
+
+### VizLegendOptions
+
+TODO docs
-| Property | Type | Required | Description |
-|----------|----------|----------|-------------|
-| `values` | string[] | No | |
+| Property | Type | Required | Description |
+|---------------|----------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | |
+| `displayMode` | string | **Yes** | TODO docs
Note: "hidden" needs to remain as an option for plugins compatibility
Possible values are: `list`, `table`, `hidden`. |
+| `placement` | string | **Yes** | TODO docs
Possible values are: `bottom`, `right`. |
+| `showLegend` | boolean | **Yes** | |
+| `asTable` | boolean | No | |
+| `isVisible` | boolean | No | |
+| `sortBy` | string | No | |
+| `sortDesc` | boolean | No | |
+| `width` | number | No | |
diff --git a/docs/sources/developers/kinds/composable/statetimelinepanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/statetimelinepanelcfg/schema-reference.md
index 326d99d4a84..4b6312fee97 100644
--- a/docs/sources/developers/kinds/composable/statetimelinepanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/statetimelinepanelcfg/schema-reference.md
@@ -6,36 +6,142 @@ title: StateTimelinePanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# StateTimelinePanelCfg kind
+## StateTimelinePanelCfg
+
+#### Maturity: experimental
+#### Version: 0.0
-## Maturity: experimental
-## Version: 0.0
-## Properties
| Property | Type | Required | Description |
|--------------------|-----------------------------|----------|-------------|
| `PanelFieldConfig` | [object](#panelfieldconfig) | **Yes** | |
| `PanelOptions` | [object](#paneloptions) | **Yes** | |
-## PanelFieldConfig
+### PanelFieldConfig
+
+It extends [HideableFieldConfig](#hideablefieldconfig).
+
+| Property | Type | Required | Description |
+|---------------|---------------------------------------|----------|------------------------------------------------------------------------------|
+| `fillOpacity` | integer | No | Default: `70`. |
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | *(Inherited from [HideableFieldConfig](#hideablefieldconfig))*
TODO docs |
+| `lineWidth` | integer | No | Default: `0`. |
+
+### HideSeriesConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### HideableFieldConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|------------|---------------------------------------|----------|-------------|
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | TODO docs |
+
+### HideSeriesConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### PanelOptions
+
+It extends [OptionsWithLegend](#optionswithlegend) and [OptionsWithTooltip](#optionswithtooltip) and [OptionsWithTimezones](#optionswithtimezones).
+
+| Property | Type | Required | Description |
+|---------------|-----------------------------------------|----------|-----------------------------------------------------------------------------------------------------------------|
+| `legend` | [VizLegendOptions](#vizlegendoptions) | **Yes** | *(Inherited from [OptionsWithLegend](#optionswithlegend))*
TODO docs |
+| `rowHeight` | number | **Yes** | Controls the row height Default: `0.9`. |
+| `showValue` | string | **Yes** | TODO docs
Possible values are: `auto`, `never`, `always`. |
+| `tooltip` | [VizTooltipOptions](#viztooltipoptions) | **Yes** | *(Inherited from [OptionsWithTooltip](#optionswithtooltip))*
TODO docs |
+| `alignValue` | string | No | Controls the value alignment in the TimelineChart component
Possible values are: `center`, `left`, `right`. |
+| `mergeValues` | boolean | No | Merge equal consecutive values Default: `true`. |
+| `timezone` | string[] | No | *(Inherited from [OptionsWithTimezones](#optionswithtimezones))* |
+
+### OptionsWithLegend
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|---------------------------------------|----------|-------------|
+| `legend` | [VizLegendOptions](#vizlegendoptions) | **Yes** | TODO docs |
+
+### VizLegendOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|---------------|----------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | |
+| `displayMode` | string | **Yes** | TODO docs
Note: "hidden" needs to remain as an option for plugins compatibility
Possible values are: `list`, `table`, `hidden`. |
+| `placement` | string | **Yes** | TODO docs
Possible values are: `bottom`, `right`. |
+| `showLegend` | boolean | **Yes** | |
+| `asTable` | boolean | No | |
+| `isVisible` | boolean | No | |
+| `sortBy` | string | No | |
+| `sortDesc` | boolean | No | |
+| `width` | number | No | |
+
+### OptionsWithTimezones
+
+TODO docs
+
+| Property | Type | Required | Description |
+|------------|----------|----------|-------------|
+| `timezone` | string[] | No | |
+
+### OptionsWithTooltip
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|-----------------------------------------|----------|-------------|
+| `tooltip` | [VizTooltipOptions](#viztooltipoptions) | **Yes** | TODO docs |
+
+### VizTooltipOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|--------|----------|---------------------------------------------------------------|
+| `mode` | string | **Yes** | TODO docs
Possible values are: `single`, `multi`, `none`. |
+| `sort` | string | **Yes** | TODO docs
Possible values are: `asc`, `desc`, `none`. |
+
+### VizLegendOptions
-### Properties
+TODO docs
-| Property | Type | Required | Description |
-|---------------|---------|----------|----------------|
-| `fillOpacity` | integer | No | Default: `70`. |
-| `lineWidth` | integer | No | Default: `0`. |
+| Property | Type | Required | Description |
+|---------------|----------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | |
+| `displayMode` | string | **Yes** | TODO docs
Note: "hidden" needs to remain as an option for plugins compatibility
Possible values are: `list`, `table`, `hidden`. |
+| `placement` | string | **Yes** | TODO docs
Possible values are: `bottom`, `right`. |
+| `showLegend` | boolean | **Yes** | |
+| `asTable` | boolean | No | |
+| `isVisible` | boolean | No | |
+| `sortBy` | string | No | |
+| `sortDesc` | boolean | No | |
+| `width` | number | No | |
-## PanelOptions
+### VizTooltipOptions
-### Properties
+TODO docs
-| Property | Type | Required | Description |
-|---------------|---------|----------|-------------------------------------------------------------------------------------------------------------|
-| `alignValue` | string | No | Controls the value alignment in the TimelineChart component Possible values are: `center`, `left`, `right`. |
-| `mergeValues` | boolean | No | Merge equal consecutive values Default: `true`. |
-| `rowHeight` | number | No | Controls the row height Default: `0.9`. |
-| `showValue` | string | No | TODO docs Possible values are: `auto`, `never`, `always`. |
+| Property | Type | Required | Description |
+|----------|--------|----------|---------------------------------------------------------------|
+| `mode` | string | **Yes** | TODO docs
Possible values are: `single`, `multi`, `none`. |
+| `sort` | string | **Yes** | TODO docs
Possible values are: `asc`, `desc`, `none`. |
diff --git a/docs/sources/developers/kinds/composable/statpanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/statpanelcfg/schema-reference.md
index 02fdd88a3ba..274f2ea28ac 100644
--- a/docs/sources/developers/kinds/composable/statpanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/statpanelcfg/schema-reference.md
@@ -6,26 +6,98 @@ title: StatPanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# StatPanelCfg kind
+## StatPanelCfg
+
+#### Maturity: experimental
+#### Version: 0.0
-## Maturity: experimental
-## Version: 0.0
-## Properties
| Property | Type | Required | Description |
|----------------|-------------------------|----------|-------------|
| `PanelOptions` | [object](#paneloptions) | **Yes** | |
-## PanelOptions
+### PanelOptions
+
+It extends [SingleStatBaseOptions](#singlestatbaseoptions).
+
+| Property | Type | Required | Description |
+|-----------------|-------------------------------------------------|----------|---------------------------------------------------------------------------------------------------------------------------------------------|
+| `colorMode` | string | **Yes** | TODO docs
Possible values are: `value`, `background`, `none`. |
+| `graphMode` | string | **Yes** | TODO docs
Possible values are: `none`, `line`, `area`. |
+| `justifyMode` | string | **Yes** | TODO docs
Possible values are: `auto`, `center`. |
+| `textMode` | string | **Yes** | TODO docs
Possible values are: `auto`, `value`, `value_and_name`, `name`, `none`. |
+| `orientation` | string | No | *(Inherited from [SingleStatBaseOptions](#singlestatbaseoptions))*
TODO docs
Possible values are: `auto`, `vertical`, `horizontal`. |
+| `reduceOptions` | [ReduceDataOptions](#reducedataoptions) | No | *(Inherited from [SingleStatBaseOptions](#singlestatbaseoptions))*
TODO docs |
+| `text` | [VizTextDisplayOptions](#viztextdisplayoptions) | No | *(Inherited from [SingleStatBaseOptions](#singlestatbaseoptions))*
TODO docs |
+
+### ReduceDataOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|----------|----------|---------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | When !values, pick one value for the whole field |
+| `fields` | string | No | Which fields to show. By default this is only numeric fields |
+| `limit` | number | No | if showing all values limit |
+| `values` | boolean | No | If true show each row value |
+
+### SingleStatBaseOptions
+
+TODO docs
+
+It extends [OptionsWithTextFormatting](#optionswithtextformatting).
+
+| Property | Type | Required | Description |
+|-----------------|-------------------------------------------------|----------|------------------------------------------------------------------------------------------|
+| `orientation` | string | **Yes** | TODO docs
Possible values are: `auto`, `vertical`, `horizontal`. |
+| `reduceOptions` | [ReduceDataOptions](#reducedataoptions) | **Yes** | TODO docs |
+| `text` | [VizTextDisplayOptions](#viztextdisplayoptions) | No | *(Inherited from [OptionsWithTextFormatting](#optionswithtextformatting))*
TODO docs |
+
+### OptionsWithTextFormatting
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|-------------------------------------------------|----------|-------------|
+| `text` | [VizTextDisplayOptions](#viztextdisplayoptions) | No | TODO docs |
+
+### VizTextDisplayOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------|--------|----------|--------------------------|
+| `titleSize` | number | No | Explicit title text size |
+| `valueSize` | number | No | Explicit value text size |
+
+### ReduceDataOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|----------|----------|---------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | When !values, pick one value for the whole field |
+| `fields` | string | No | Which fields to show. By default this is only numeric fields |
+| `limit` | number | No | if showing all values limit |
+| `values` | boolean | No | If true show each row value |
+
+### VizTextDisplayOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------|--------|----------|--------------------------|
+| `titleSize` | number | No | Explicit title text size |
+| `valueSize` | number | No | Explicit value text size |
+
+### VizTextDisplayOptions
-### Properties
+TODO docs
-| Property | Type | Required | Description |
-|---------------|--------|----------|-----------------------------------------------------------------------------------|
-| `colorMode` | string | No | TODO docs Possible values are: `value`, `background`, `none`. |
-| `graphMode` | string | No | TODO docs Possible values are: `none`, `line`, `area`. |
-| `justifyMode` | string | No | TODO docs Possible values are: `auto`, `center`. |
-| `textMode` | string | No | TODO docs Possible values are: `auto`, `value`, `value_and_name`, `name`, `none`. |
+| Property | Type | Required | Description |
+|-------------|--------|----------|--------------------------|
+| `titleSize` | number | No | Explicit title text size |
+| `valueSize` | number | No | Explicit value text size |
diff --git a/docs/sources/developers/kinds/composable/statushistorypanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/statushistorypanelcfg/schema-reference.md
index 46a8a21a125..5ade5ce7c9f 100644
--- a/docs/sources/developers/kinds/composable/statushistorypanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/statushistorypanelcfg/schema-reference.md
@@ -6,35 +6,141 @@ title: StatusHistoryPanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# StatusHistoryPanelCfg kind
+## StatusHistoryPanelCfg
+
+#### Maturity: experimental
+#### Version: 0.0
-## Maturity: experimental
-## Version: 0.0
-## Properties
| Property | Type | Required | Description |
|--------------------|-----------------------------|----------|-------------|
| `PanelFieldConfig` | [object](#panelfieldconfig) | **Yes** | |
| `PanelOptions` | [object](#paneloptions) | **Yes** | |
-## PanelFieldConfig
+### PanelFieldConfig
+
+It extends [HideableFieldConfig](#hideablefieldconfig).
+
+| Property | Type | Required | Description |
+|---------------|---------------------------------------|----------|------------------------------------------------------------------------------|
+| `fillOpacity` | integer | No | Default: `70`. |
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | *(Inherited from [HideableFieldConfig](#hideablefieldconfig))*
TODO docs |
+| `lineWidth` | integer | No | Default: `1`. |
+
+### HideSeriesConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### HideableFieldConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|------------|---------------------------------------|----------|-------------|
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | TODO docs |
+
+### HideSeriesConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### PanelOptions
+
+It extends [OptionsWithLegend](#optionswithlegend) and [OptionsWithTooltip](#optionswithtooltip) and [OptionsWithTimezones](#optionswithtimezones).
+
+| Property | Type | Required | Description |
+|-------------|-----------------------------------------|----------|----------------------------------------------------------------------------|
+| `legend` | [VizLegendOptions](#vizlegendoptions) | **Yes** | *(Inherited from [OptionsWithLegend](#optionswithlegend))*
TODO docs |
+| `rowHeight` | number | **Yes** | Set the height of the rows Default: `0.9`. |
+| `showValue` | string | **Yes** | TODO docs
Possible values are: `auto`, `never`, `always`. |
+| `tooltip` | [VizTooltipOptions](#viztooltipoptions) | **Yes** | *(Inherited from [OptionsWithTooltip](#optionswithtooltip))*
TODO docs |
+| `colWidth` | number | No | Controls the column width Default: `0.9`. |
+| `timezone` | string[] | No | *(Inherited from [OptionsWithTimezones](#optionswithtimezones))* |
+
+### OptionsWithLegend
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|---------------------------------------|----------|-------------|
+| `legend` | [VizLegendOptions](#vizlegendoptions) | **Yes** | TODO docs |
+
+### VizLegendOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|---------------|----------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | |
+| `displayMode` | string | **Yes** | TODO docs
Note: "hidden" needs to remain as an option for plugins compatibility
Possible values are: `list`, `table`, `hidden`. |
+| `placement` | string | **Yes** | TODO docs
Possible values are: `bottom`, `right`. |
+| `showLegend` | boolean | **Yes** | |
+| `asTable` | boolean | No | |
+| `isVisible` | boolean | No | |
+| `sortBy` | string | No | |
+| `sortDesc` | boolean | No | |
+| `width` | number | No | |
+
+### OptionsWithTimezones
+
+TODO docs
+
+| Property | Type | Required | Description |
+|------------|----------|----------|-------------|
+| `timezone` | string[] | No | |
+
+### OptionsWithTooltip
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|-----------------------------------------|----------|-------------|
+| `tooltip` | [VizTooltipOptions](#viztooltipoptions) | **Yes** | TODO docs |
+
+### VizTooltipOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|--------|----------|---------------------------------------------------------------|
+| `mode` | string | **Yes** | TODO docs
Possible values are: `single`, `multi`, `none`. |
+| `sort` | string | **Yes** | TODO docs
Possible values are: `asc`, `desc`, `none`. |
+
+### VizLegendOptions
-### Properties
+TODO docs
-| Property | Type | Required | Description |
-|---------------|---------|----------|----------------|
-| `fillOpacity` | integer | No | Default: `70`. |
-| `lineWidth` | integer | No | Default: `1`. |
+| Property | Type | Required | Description |
+|---------------|----------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | |
+| `displayMode` | string | **Yes** | TODO docs
Note: "hidden" needs to remain as an option for plugins compatibility
Possible values are: `list`, `table`, `hidden`. |
+| `placement` | string | **Yes** | TODO docs
Possible values are: `bottom`, `right`. |
+| `showLegend` | boolean | **Yes** | |
+| `asTable` | boolean | No | |
+| `isVisible` | boolean | No | |
+| `sortBy` | string | No | |
+| `sortDesc` | boolean | No | |
+| `width` | number | No | |
-## PanelOptions
+### VizTooltipOptions
-### Properties
+TODO docs
-| Property | Type | Required | Description |
-|-------------|--------|----------|-----------------------------------------------------------|
-| `colWidth` | number | No | Controls the column width Default: `0.9`. |
-| `rowHeight` | number | No | Set the height of the rows Default: `0.9`. |
-| `showValue` | string | No | TODO docs Possible values are: `auto`, `never`, `always`. |
+| Property | Type | Required | Description |
+|----------|--------|----------|---------------------------------------------------------------|
+| `mode` | string | **Yes** | TODO docs
Possible values are: `single`, `multi`, `none`. |
+| `sort` | string | **Yes** | TODO docs
Possible values are: `asc`, `desc`, `none`. |
diff --git a/docs/sources/developers/kinds/composable/tempodataquery/schema-reference.md b/docs/sources/developers/kinds/composable/tempodataquery/schema-reference.md
index d8c4229d128..791d1a33533 100644
--- a/docs/sources/developers/kinds/composable/tempodataquery/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/tempodataquery/schema-reference.md
@@ -6,22 +6,43 @@ title: TempoDataQuery kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# TempoDataQuery kind
-
-## Maturity: experimental
-## Version: 0.0
-
-## Properties
-
-| Property | Type | Required | Description |
-|-------------------|---------|----------|----------------------------------------------------------------------------------------------------------------------|
-| `limit` | integer | No | Defines the maximum number of traces that are returned from Tempo |
-| `maxDuration` | string | No | Define the maximum duration to select traces. Use duration format, for example: 1.2s, 100ms |
-| `minDuration` | string | No | Define the minimum duration to select traces. Use duration format, for example: 1.2s, 100ms |
-| `query` | string | No | TraceQL query or trace ID |
-| `search` | string | No | Logfmt query to filter traces by their tags. Example: http.status_code=200 error=true |
-| `serviceMapQuery` | string | No | Filters to be included in a PromQL query to select data for the service graph. Example: {client="app",service="app"} |
-| `serviceName` | string | No | Query traces by service name |
-| `spanName` | string | No | Query traces by span name |
+## TempoDataQuery
+
+#### Maturity: experimental
+#### Version: 0.0
+
+
+
+It extends [DataQuery](#dataquery).
+
+| Property | Type | Required | Description |
+|-------------------|---------|----------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `query` | string | **Yes** | TraceQL query or trace ID |
+| `refId` | string | **Yes** | *(Inherited from [DataQuery](#dataquery))*
A - Z |
+| `datasource` | | No | *(Inherited from [DataQuery](#dataquery))*
For mixed data sources the selected datasource is on the query level.
For non mixed scenarios this is undefined.
TODO find a better way to do this ^ that's friendly to schema
TODO this shouldn't be unknown but DataSourceRef | null |
+| `hide` | boolean | No | *(Inherited from [DataQuery](#dataquery))*
true if query is disabled (ie should not be returned to the dashboard) |
+| `key` | string | No | *(Inherited from [DataQuery](#dataquery))*
Unique, guid like, string used in explore mode |
+| `limit` | integer | No | Defines the maximum number of traces that are returned from Tempo |
+| `maxDuration` | string | No | Define the maximum duration to select traces. Use duration format, for example: 1.2s, 100ms |
+| `minDuration` | string | No | Define the minimum duration to select traces. Use duration format, for example: 1.2s, 100ms |
+| `queryType` | string | No | *(Inherited from [DataQuery](#dataquery))*
Specify the query flavor
TODO make this required and give it a default |
+| `search` | string | No | Logfmt query to filter traces by their tags. Example: http.status_code=200 error=true |
+| `serviceMapQuery` | string | No | Filters to be included in a PromQL query to select data for the service graph. Example: {client="app",service="app"} |
+| `serviceName` | string | No | Query traces by service name |
+| `spanName` | string | No | Query traces by span name |
+
+### DataQuery
+
+These are the common properties available to all queries in all datasources.
+Specific implementations will *extend* this interface, adding the required
+properties for the given context.
+
+| Property | Type | Required | Description |
+|--------------|---------|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `refId` | string | **Yes** | A - Z |
+| `datasource` | | No | For mixed data sources the selected datasource is on the query level.
For non mixed scenarios this is undefined.
TODO find a better way to do this ^ that's friendly to schema
TODO this shouldn't be unknown but DataSourceRef | null |
+| `hide` | boolean | No | true if query is disabled (ie should not be returned to the dashboard) |
+| `key` | string | No | Unique, guid like, string used in explore mode |
+| `queryType` | string | No | Specify the query flavor
TODO make this required and give it a default |
diff --git a/docs/sources/developers/kinds/composable/testdatadataquery/schema-reference.md b/docs/sources/developers/kinds/composable/testdatadataquery/schema-reference.md
index 561d2037195..149fe72638c 100644
--- a/docs/sources/developers/kinds/composable/testdatadataquery/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/testdatadataquery/schema-reference.md
@@ -6,27 +6,34 @@ title: TestDataDataQuery kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# TestDataDataQuery kind
+## TestDataDataQuery
-## Maturity: experimental
-## Version: 0.0
+#### Maturity: experimental
+#### Version: 0.0
-## Properties
+
+
+It extends [DataQuery](#dataquery).
| Property | Type | Required | Description |
|-------------------|-------------------------------------|----------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `refId` | string | **Yes** | *(Inherited from [DataQuery](#dataquery))*
A - Z |
| `alias` | string | No | |
| `channel` | string | No | |
| `csvContent` | string | No | |
| `csvFileName` | string | No | |
| `csvWave` | [CSVWave](#csvwave)[] | No | |
+| `datasource` | | No | *(Inherited from [DataQuery](#dataquery))*
For mixed data sources the selected datasource is on the query level.
For non mixed scenarios this is undefined.
TODO find a better way to do this ^ that's friendly to schema
TODO this shouldn't be unknown but DataSourceRef | null |
| `errorType` | string | No | Possible values are: `server_panic`, `frontend_exception`, `frontend_observable`. |
+| `hide` | boolean | No | *(Inherited from [DataQuery](#dataquery))*
true if query is disabled (ie should not be returned to the dashboard) |
+| `key` | string | No | *(Inherited from [DataQuery](#dataquery))*
Unique, guid like, string used in explore mode |
| `labels` | string | No | |
| `levelColumn` | boolean | No | |
| `lines` | integer | No | |
| `nodes` | [NodesQuery](#nodesquery) | No | |
| `points` | array[] | No | |
| `pulseWave` | [PulseWaveQuery](#pulsewavequery) | No | |
+| `queryType` | string | No | *(Inherited from [DataQuery](#dataquery))*
Specify the query flavor
TODO make this required and give it a default |
| `rawFrameContent` | string | No | |
| `scenarioId` | string | No | Possible values are: `random_walk`, `slow_query`, `random_walk_with_error`, `random_walk_table`, `exponential_heatmap_bucket_data`, `linear_heatmap_bucket_data`, `no_data_points`, `datapoints_outside_range`, `csv_metric_values`, `predictable_pulse`, `predictable_csv_wave`, `streaming_client`, `simulation`, `usa`, `live`, `grafana_api`, `arrow`, `annotations`, `table_static`, `server_error_500`, `logs`, `node_graph`, `flame_graph`, `raw_frame`, `csv_file`, `csv_content`, `trace`, `manual_entry`, `variables-query`. |
| `seriesCount` | integer | No | |
@@ -36,9 +43,7 @@ title: TestDataDataQuery kind
| `stringInput` | string | No | |
| `usa` | [USAQuery](#usaquery) | No | |
-## CSVWave
-
-### Properties
+### CSVWave
| Property | Type | Required | Description |
|-------------|---------|----------|-------------|
@@ -47,18 +52,28 @@ title: TestDataDataQuery kind
| `timeStep` | integer | No | |
| `valuesCSV` | string | No | |
-## NodesQuery
+### DataQuery
+
+These are the common properties available to all queries in all datasources.
+Specific implementations will *extend* this interface, adding the required
+properties for the given context.
+
+| Property | Type | Required | Description |
+|--------------|---------|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `refId` | string | **Yes** | A - Z |
+| `datasource` | | No | For mixed data sources the selected datasource is on the query level.
For non mixed scenarios this is undefined.
TODO find a better way to do this ^ that's friendly to schema
TODO this shouldn't be unknown but DataSourceRef | null |
+| `hide` | boolean | No | true if query is disabled (ie should not be returned to the dashboard) |
+| `key` | string | No | Unique, guid like, string used in explore mode |
+| `queryType` | string | No | Specify the query flavor
TODO make this required and give it a default |
-### Properties
+### NodesQuery
| Property | Type | Required | Description |
|----------|---------|----------|------------------------------------------------------------|
| `count` | integer | No | |
| `type` | string | No | Possible values are: `random`, `response`, `random edges`. |
-## PulseWaveQuery
-
-### Properties
+### PulseWaveQuery
| Property | Type | Required | Description |
|------------|---------|----------|-------------|
@@ -68,9 +83,7 @@ title: TestDataDataQuery kind
| `onValue` | number | No | |
| `timeStep` | integer | No | |
-## SimulationQuery
-
-### Properties
+### SimulationQuery
| Property | Type | Required | Description |
|----------|-------------------|----------|-------------|
@@ -79,14 +92,12 @@ title: TestDataDataQuery kind
| `last` | boolean | No | |
| `stream` | boolean | No | |
-### config
+### Config
| Property | Type | Required | Description |
|----------|------|----------|-------------|
-### key
-
-#### Properties
+### Key
| Property | Type | Required | Description |
|----------|--------|----------|-------------|
@@ -94,9 +105,7 @@ title: TestDataDataQuery kind
| `type` | string | **Yes** | |
| `uid` | string | No | |
-## StreamingQuery
-
-### Properties
+### StreamingQuery
| Property | Type | Required | Description |
|----------|---------|----------|-------------------------------------------------|
@@ -107,9 +116,7 @@ title: TestDataDataQuery kind
| `bands` | integer | No | |
| `url` | string | No | |
-## USAQuery
-
-### Properties
+### USAQuery
| Property | Type | Required | Description |
|----------|----------|----------|-------------|
diff --git a/docs/sources/developers/kinds/composable/textpanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/textpanelcfg/schema-reference.md
index 20b661a31d5..05de2044133 100644
--- a/docs/sources/developers/kinds/composable/textpanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/textpanelcfg/schema-reference.md
@@ -6,12 +6,12 @@ title: TextPanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# TextPanelCfg kind
+## TextPanelCfg
+
+#### Maturity: experimental
+#### Version: 0.0
-## Maturity: experimental
-## Version: 0.0
-## Properties
| Property | Type | Required | Description |
|----------------|-------------------------|----------|-------------------------------------------------------------------------------------------------------------------------------|
@@ -20,9 +20,7 @@ title: TextPanelCfg kind
| `PanelOptions` | [object](#paneloptions) | **Yes** | |
| `TextMode` | string | **Yes** | Possible values are: `html`, `markdown`, `code`. |
-## CodeOptions
-
-### Properties
+### CodeOptions
| Property | Type | Required | Description |
|-------------------|---------|----------|-------------------------------------------------------------------------------------------------------------------------------|
@@ -30,9 +28,7 @@ title: TextPanelCfg kind
| `showLineNumbers` | boolean | **Yes** | Default: `false`. |
| `showMiniMap` | boolean | **Yes** | Default: `false`. |
-## PanelOptions
-
-### Properties
+### PanelOptions
| Property | Type | Required | Description |
|-----------|-----------------------------|----------|------------------------------------------------------------------------------------------------------------|
@@ -42,8 +38,6 @@ title: TextPanelCfg kind
### CodeOptions
-#### Properties
-
| Property | Type | Required | Description |
|-------------------|---------|----------|-------------------------------------------------------------------------------------------------------------------------------|
| `language` | string | **Yes** | Possible values are: `plaintext`, `yaml`, `xml`, `typescript`, `sql`, `go`, `markdown`, `html`, `json`. Default: `plaintext`. |
diff --git a/docs/sources/developers/kinds/composable/xychartpanelcfg/schema-reference.md b/docs/sources/developers/kinds/composable/xychartpanelcfg/schema-reference.md
index 19e2bfed332..4d0e52b331a 100644
--- a/docs/sources/developers/kinds/composable/xychartpanelcfg/schema-reference.md
+++ b/docs/sources/developers/kinds/composable/xychartpanelcfg/schema-reference.md
@@ -6,12 +6,12 @@ title: XYChartPanelCfg kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# XYChartPanelCfg kind
+## XYChartPanelCfg
+
+#### Maturity: experimental
+#### Version: 0.0
-## Maturity: experimental
-## Version: 0.0
-## Properties
| Property | Type | Required | Description |
|-----------------------|--------------------------------|----------|---------------------------------------------------------|
@@ -22,29 +22,382 @@ title: XYChartPanelCfg kind
| `SeriesMapping` | string | **Yes** | Possible values are: `auto`, `manual`. |
| `XYDimensionConfig` | [object](#xydimensionconfig) | **Yes** | |
-## PanelOptions
+### PanelOptions
+
+It extends [OptionsWithLegend](#optionswithlegend) and [OptionsWithTooltip](#optionswithtooltip).
+
+| Property | Type | Required | Description |
+|-----------------|-----------------------------------------------|----------|----------------------------------------------------------------------------|
+| `dims` | [XYDimensionConfig](#xydimensionconfig) | **Yes** | |
+| `legend` | [VizLegendOptions](#vizlegendoptions) | **Yes** | *(Inherited from [OptionsWithLegend](#optionswithlegend))*
TODO docs |
+| `series` | [ScatterSeriesConfig](#scatterseriesconfig)[] | **Yes** | |
+| `tooltip` | [VizTooltipOptions](#viztooltipoptions) | **Yes** | *(Inherited from [OptionsWithTooltip](#optionswithtooltip))*
TODO docs |
+| `seriesMapping` | string | No | Possible values are: `auto`, `manual`. |
+
+### OptionsWithLegend
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|---------------------------------------|----------|-------------|
+| `legend` | [VizLegendOptions](#vizlegendoptions) | **Yes** | TODO docs |
+
+### VizLegendOptions
+
+TODO docs
-### Properties
+| Property | Type | Required | Description |
+|---------------|----------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | |
+| `displayMode` | string | **Yes** | TODO docs
Note: "hidden" needs to remain as an option for plugins compatibility
Possible values are: `list`, `table`, `hidden`. |
+| `placement` | string | **Yes** | TODO docs
Possible values are: `bottom`, `right`. |
+| `showLegend` | boolean | **Yes** | |
+| `asTable` | boolean | No | |
+| `isVisible` | boolean | No | |
+| `sortBy` | string | No | |
+| `sortDesc` | boolean | No | |
+| `width` | number | No | |
-| Property | Type | Required | Description |
-|-----------------|-----------------------------------------------|----------|----------------------------------------|
-| `dims` | [XYDimensionConfig](#xydimensionconfig) | No | |
-| `seriesMapping` | string | No | Possible values are: `auto`, `manual`. |
-| `series` | [ScatterSeriesConfig](#scatterseriesconfig)[] | No | |
+### OptionsWithTooltip
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|-----------------------------------------|----------|-------------|
+| `tooltip` | [VizTooltipOptions](#viztooltipoptions) | **Yes** | TODO docs |
+
+### VizTooltipOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|--------|----------|---------------------------------------------------------------|
+| `mode` | string | **Yes** | TODO docs
Possible values are: `single`, `multi`, `none`. |
+| `sort` | string | **Yes** | TODO docs
Possible values are: `asc`, `desc`, `none`. |
### ScatterSeriesConfig
-#### Properties
+It extends [ScatterFieldConfig](#scatterfieldconfig).
+
+| Property | Type | Required | Description |
+|---------------------|-----------------------------------------------------|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `axisCenteredZero` | boolean | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `axisColorMode` | string | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
TODO docs
Possible values are: `text`, `series`. |
+| `axisGridShow` | boolean | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `axisLabel` | string | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `axisPlacement` | string | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
TODO docs
Possible values are: `auto`, `top`, `right`, `bottom`, `left`, `hidden`. |
+| `axisSoftMax` | number | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `axisSoftMin` | number | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `axisWidth` | number | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
TODO docs |
+| `labelValue` | [TextDimensionConfig](#textdimensionconfig) | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `label` | string | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
TODO docs
Possible values are: `auto`, `never`, `always`. |
+| `lineColor` | [ColorDimensionConfig](#colordimensionconfig) | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
This is actually an empty interface used mainly for naming? |
+| `lineStyle` | [LineStyle](#linestyle) | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
TODO docs |
+| `lineWidth` | integer | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `name` | string | No | |
+| `pointColor` | [ColorDimensionConfig](#colordimensionconfig) | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
This is actually an empty interface used mainly for naming? |
+| `pointSize` | [ScaleDimensionConfig](#scaledimensionconfig) | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `scaleDistribution` | [ScaleDistributionConfig](#scaledistributionconfig) | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
TODO docs |
+| `show` | string | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
Possible values are: `points`, `lines`, `points+lines`. |
+| `x` | string | No | |
+| `y` | string | No | |
+
+### ColorDimensionConfig
+
+This is actually an empty interface used mainly for naming?
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
| Property | Type | Required | Description |
|----------|--------|----------|-------------|
-| `name` | string | No | |
-| `x` | string | No | |
-| `y` | string | No | |
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
-### XYDimensionConfig
+### ColorDimensionConfig
+
+This is actually an empty interface used mainly for naming?
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### HideSeriesConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### LineStyle
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|----------|----------|--------------------------------------------------------|
+| `dash` | number[] | No | |
+| `fill` | string | No | Possible values are: `solid`, `dash`, `dot`, `square`. |
+
+### ScaleDimensionConfig
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|---------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `max` | integer | **Yes** | |
+| `min` | integer | **Yes** | |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### ScaleDistributionConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------------|--------|----------|--------------------------------------------------------------------------|
+| `type` | string | **Yes** | TODO docs
Possible values are: `linear`, `log`, `ordinal`, `symlog`. |
+| `linearThreshold` | number | No | |
+| `log` | number | No | |
+
+### ScatterFieldConfig
+
+It extends [HideableFieldConfig](#hideablefieldconfig) and [AxisConfig](#axisconfig).
+
+| Property | Type | Required | Description |
+|---------------------|-----------------------------------------------------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `axisCenteredZero` | boolean | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisColorMode` | string | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs
Possible values are: `text`, `series`. |
+| `axisGridShow` | boolean | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisLabel` | string | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisPlacement` | string | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs
Possible values are: `auto`, `top`, `right`, `bottom`, `left`, `hidden`. |
+| `axisSoftMax` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisSoftMin` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisWidth` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | *(Inherited from [HideableFieldConfig](#hideablefieldconfig))*
TODO docs |
+| `labelValue` | [TextDimensionConfig](#textdimensionconfig) | No | |
+| `label` | string | No | TODO docs
Possible values are: `auto`, `never`, `always`. |
+| `lineColor` | [ColorDimensionConfig](#colordimensionconfig) | No | This is actually an empty interface used mainly for naming? |
+| `lineStyle` | [LineStyle](#linestyle) | No | TODO docs |
+| `lineWidth` | integer | No | |
+| `pointColor` | [ColorDimensionConfig](#colordimensionconfig) | No | This is actually an empty interface used mainly for naming? |
+| `pointSize` | [ScaleDimensionConfig](#scaledimensionconfig) | No | |
+| `scaleDistribution` | [ScaleDistributionConfig](#scaledistributionconfig) | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs |
+| `show` | string | No | Possible values are: `points`, `lines`, `points+lines`. |
+
+### AxisConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|---------------------|-----------------------------------------------------|----------|----------------------------------------------------------------------------------------|
+| `axisCenteredZero` | boolean | No | |
+| `axisColorMode` | string | No | TODO docs
Possible values are: `text`, `series`. |
+| `axisGridShow` | boolean | No | |
+| `axisLabel` | string | No | |
+| `axisPlacement` | string | No | TODO docs
Possible values are: `auto`, `top`, `right`, `bottom`, `left`, `hidden`. |
+| `axisSoftMax` | number | No | |
+| `axisSoftMin` | number | No | |
+| `axisWidth` | number | No | |
+| `scaleDistribution` | [ScaleDistributionConfig](#scaledistributionconfig) | No | TODO docs |
+
+### ScaleDistributionConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------------|--------|----------|--------------------------------------------------------------------------|
+| `type` | string | **Yes** | TODO docs
Possible values are: `linear`, `log`, `ordinal`, `symlog`. |
+| `linearThreshold` | number | No | |
+| `log` | number | No | |
+
+### ColorDimensionConfig
+
+This is actually an empty interface used mainly for naming?
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
-#### Properties
+### ColorDimensionConfig
+
+This is actually an empty interface used mainly for naming?
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### HideSeriesConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### HideableFieldConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|------------|---------------------------------------|----------|-------------|
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | TODO docs |
+
+### HideSeriesConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### LineStyle
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|----------|----------|--------------------------------------------------------|
+| `dash` | number[] | No | |
+| `fill` | string | No | Possible values are: `solid`, `dash`, `dot`, `square`. |
+
+### ScaleDimensionConfig
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|---------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `max` | integer | **Yes** | |
+| `min` | integer | **Yes** | |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### ScaleDistributionConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------------|--------|----------|--------------------------------------------------------------------------|
+| `type` | string | **Yes** | TODO docs
Possible values are: `linear`, `log`, `ordinal`, `symlog`. |
+| `linearThreshold` | number | No | |
+| `log` | number | No | |
+
+### TextDimensionConfig
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `mode` | string | **Yes** | Possible values are: `fixed`, `field`, `template`. |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### TextDimensionConfig
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `mode` | string | **Yes** | Possible values are: `fixed`, `field`, `template`. |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### VizLegendOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|---------------|----------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `calcs` | string[] | **Yes** | |
+| `displayMode` | string | **Yes** | TODO docs
Note: "hidden" needs to remain as an option for plugins compatibility
Possible values are: `list`, `table`, `hidden`. |
+| `placement` | string | **Yes** | TODO docs
Possible values are: `bottom`, `right`. |
+| `showLegend` | boolean | **Yes** | |
+| `asTable` | boolean | No | |
+| `isVisible` | boolean | No | |
+| `sortBy` | string | No | |
+| `sortDesc` | boolean | No | |
+| `width` | number | No | |
+
+### VizTooltipOptions
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|--------|----------|---------------------------------------------------------------|
+| `mode` | string | **Yes** | TODO docs
Possible values are: `single`, `multi`, `none`. |
+| `sort` | string | **Yes** | TODO docs
Possible values are: `asc`, `desc`, `none`. |
+
+### XYDimensionConfig
| Property | Type | Required | Description |
|-----------|----------|----------|-------------|
@@ -52,40 +405,124 @@ title: XYChartPanelCfg kind
| `exclude` | string[] | No | |
| `x` | string | No | |
-## ScatterFieldConfig
+### ScatterFieldConfig
+
+It extends [HideableFieldConfig](#hideablefieldconfig) and [AxisConfig](#axisconfig).
+
+| Property | Type | Required | Description |
+|---------------------|-----------------------------------------------------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `axisCenteredZero` | boolean | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisColorMode` | string | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs
Possible values are: `text`, `series`. |
+| `axisGridShow` | boolean | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisLabel` | string | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisPlacement` | string | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs
Possible values are: `auto`, `top`, `right`, `bottom`, `left`, `hidden`. |
+| `axisSoftMax` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisSoftMin` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisWidth` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | *(Inherited from [HideableFieldConfig](#hideablefieldconfig))*
TODO docs |
+| `labelValue` | [TextDimensionConfig](#textdimensionconfig) | No | |
+| `label` | string | No | TODO docs
Possible values are: `auto`, `never`, `always`. |
+| `lineColor` | [ColorDimensionConfig](#colordimensionconfig) | No | This is actually an empty interface used mainly for naming? |
+| `lineStyle` | [LineStyle](#linestyle) | No | TODO docs |
+| `lineWidth` | integer | No | |
+| `pointColor` | [ColorDimensionConfig](#colordimensionconfig) | No | This is actually an empty interface used mainly for naming? |
+| `pointSize` | [ScaleDimensionConfig](#scaledimensionconfig) | No | |
+| `scaleDistribution` | [ScaleDistributionConfig](#scaledistributionconfig) | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs |
+| `show` | string | No | Possible values are: `points`, `lines`, `points+lines`. |
+
+### AxisConfig
+
+TODO docs
-### Properties
+| Property | Type | Required | Description |
+|---------------------|-----------------------------------------------------|----------|----------------------------------------------------------------------------------------|
+| `axisCenteredZero` | boolean | No | |
+| `axisColorMode` | string | No | TODO docs
Possible values are: `text`, `series`. |
+| `axisGridShow` | boolean | No | |
+| `axisLabel` | string | No | |
+| `axisPlacement` | string | No | TODO docs
Possible values are: `auto`, `top`, `right`, `bottom`, `left`, `hidden`. |
+| `axisSoftMax` | number | No | |
+| `axisSoftMin` | number | No | |
+| `axisWidth` | number | No | |
+| `scaleDistribution` | [ScaleDistributionConfig](#scaledistributionconfig) | No | TODO docs |
-| Property | Type | Required | Description |
-|--------------|-----------------------------------------------|----------|-------------------------------------------------------------|
-| `labelValue` | [TextDimensionConfig](#textdimensionconfig) | No | |
-| `label` | string | No | TODO docs Possible values are: `auto`, `never`, `always`. |
-| `lineColor` | [ColorDimensionConfig](#colordimensionconfig) | No | This is actually an empty interface used mainly for naming? |
-| `lineStyle` | [LineStyle](#linestyle) | No | TODO docs |
-| `lineWidth` | integer | No | |
-| `pointColor` | [ColorDimensionConfig](#colordimensionconfig) | No | This is actually an empty interface used mainly for naming? |
-| `pointSize` | [ScaleDimensionConfig](#scaledimensionconfig) | No | |
-| `show` | string | No | Possible values are: `points`, `lines`, `points+lines`. |
+### ScaleDistributionConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------------|--------|----------|--------------------------------------------------------------------------|
+| `type` | string | **Yes** | TODO docs
Possible values are: `linear`, `log`, `ordinal`, `symlog`. |
+| `linearThreshold` | number | No | |
+| `log` | number | No | |
### ColorDimensionConfig
This is actually an empty interface used mainly for naming?
-| Property | Type | Required | Description |
-|----------|------|----------|-------------|
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
### ColorDimensionConfig
This is actually an empty interface used mainly for naming?
-| Property | Type | Required | Description |
-|----------|------|----------|-------------|
+It extends [BaseDimensionConfig](#basedimensionconfig).
-### LineStyle
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### HideSeriesConfig
TODO docs
-#### Properties
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### HideableFieldConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|------------|---------------------------------------|----------|-------------|
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | TODO docs |
+
+### HideSeriesConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### LineStyle
+
+TODO docs
| Property | Type | Required | Description |
|----------|----------|----------|--------------------------------------------------------|
@@ -94,34 +531,347 @@ TODO docs
### ScaleDimensionConfig
-#### Properties
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|---------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `max` | integer | **Yes** | |
+| `min` | integer | **Yes** | |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### ScaleDistributionConfig
-| Property | Type | Required | Description |
-|----------|---------|----------|-------------|
-| `max` | integer | No | |
-| `min` | integer | No | |
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------------|--------|----------|--------------------------------------------------------------------------|
+| `type` | string | **Yes** | TODO docs
Possible values are: `linear`, `log`, `ordinal`, `symlog`. |
+| `linearThreshold` | number | No | |
+| `log` | number | No | |
### TextDimensionConfig
-#### Properties
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `mode` | string | **Yes** | Possible values are: `fixed`, `field`, `template`. |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### ScatterSeriesConfig
+
+It extends [ScatterFieldConfig](#scatterfieldconfig).
+
+| Property | Type | Required | Description |
+|---------------------|-----------------------------------------------------|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `axisCenteredZero` | boolean | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `axisColorMode` | string | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
TODO docs
Possible values are: `text`, `series`. |
+| `axisGridShow` | boolean | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `axisLabel` | string | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `axisPlacement` | string | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
TODO docs
Possible values are: `auto`, `top`, `right`, `bottom`, `left`, `hidden`. |
+| `axisSoftMax` | number | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `axisSoftMin` | number | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `axisWidth` | number | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
TODO docs |
+| `labelValue` | [TextDimensionConfig](#textdimensionconfig) | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `label` | string | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
TODO docs
Possible values are: `auto`, `never`, `always`. |
+| `lineColor` | [ColorDimensionConfig](#colordimensionconfig) | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
This is actually an empty interface used mainly for naming? |
+| `lineStyle` | [LineStyle](#linestyle) | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
TODO docs |
+| `lineWidth` | integer | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `name` | string | No | |
+| `pointColor` | [ColorDimensionConfig](#colordimensionconfig) | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
This is actually an empty interface used mainly for naming? |
+| `pointSize` | [ScaleDimensionConfig](#scaledimensionconfig) | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))* |
+| `scaleDistribution` | [ScaleDistributionConfig](#scaledistributionconfig) | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
TODO docs |
+| `show` | string | No | *(Inherited from [ScatterFieldConfig](#scatterfieldconfig))*
Possible values are: `points`, `lines`, `points+lines`. |
+| `x` | string | No | |
+| `y` | string | No | |
+
+### ColorDimensionConfig
+
+This is actually an empty interface used mainly for naming?
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### ColorDimensionConfig
+
+This is actually an empty interface used mainly for naming?
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### HideSeriesConfig
-| Property | Type | Required | Description |
-|----------|--------|----------|----------------------------------------------------|
-| `mode` | string | No | Possible values are: `fixed`, `field`, `template`. |
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
-## ScatterSeriesConfig
+### LineStyle
+
+TODO docs
-### Properties
+| Property | Type | Required | Description |
+|----------|----------|----------|--------------------------------------------------------|
+| `dash` | number[] | No | |
+| `fill` | string | No | Possible values are: `solid`, `dash`, `dot`, `square`. |
+
+### ScaleDimensionConfig
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|---------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `max` | integer | **Yes** | |
+| `min` | integer | **Yes** | |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
| Property | Type | Required | Description |
|----------|--------|----------|-------------|
-| `name` | string | No | |
-| `x` | string | No | |
-| `y` | string | No | |
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### ScaleDistributionConfig
-## XYDimensionConfig
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------------|--------|----------|--------------------------------------------------------------------------|
+| `type` | string | **Yes** | TODO docs
Possible values are: `linear`, `log`, `ordinal`, `symlog`. |
+| `linearThreshold` | number | No | |
+| `log` | number | No | |
+
+### ScatterFieldConfig
+
+It extends [HideableFieldConfig](#hideablefieldconfig) and [AxisConfig](#axisconfig).
+
+| Property | Type | Required | Description |
+|---------------------|-----------------------------------------------------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
+| `axisCenteredZero` | boolean | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisColorMode` | string | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs
Possible values are: `text`, `series`. |
+| `axisGridShow` | boolean | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisLabel` | string | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisPlacement` | string | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs
Possible values are: `auto`, `top`, `right`, `bottom`, `left`, `hidden`. |
+| `axisSoftMax` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisSoftMin` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `axisWidth` | number | No | *(Inherited from [AxisConfig](#axisconfig))* |
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | *(Inherited from [HideableFieldConfig](#hideablefieldconfig))*
TODO docs |
+| `labelValue` | [TextDimensionConfig](#textdimensionconfig) | No | |
+| `label` | string | No | TODO docs
Possible values are: `auto`, `never`, `always`. |
+| `lineColor` | [ColorDimensionConfig](#colordimensionconfig) | No | This is actually an empty interface used mainly for naming? |
+| `lineStyle` | [LineStyle](#linestyle) | No | TODO docs |
+| `lineWidth` | integer | No | |
+| `pointColor` | [ColorDimensionConfig](#colordimensionconfig) | No | This is actually an empty interface used mainly for naming? |
+| `pointSize` | [ScaleDimensionConfig](#scaledimensionconfig) | No | |
+| `scaleDistribution` | [ScaleDistributionConfig](#scaledistributionconfig) | No | *(Inherited from [AxisConfig](#axisconfig))*
TODO docs |
+| `show` | string | No | Possible values are: `points`, `lines`, `points+lines`. |
+
+### AxisConfig
+
+TODO docs
-### Properties
+| Property | Type | Required | Description |
+|---------------------|-----------------------------------------------------|----------|----------------------------------------------------------------------------------------|
+| `axisCenteredZero` | boolean | No | |
+| `axisColorMode` | string | No | TODO docs
Possible values are: `text`, `series`. |
+| `axisGridShow` | boolean | No | |
+| `axisLabel` | string | No | |
+| `axisPlacement` | string | No | TODO docs
Possible values are: `auto`, `top`, `right`, `bottom`, `left`, `hidden`. |
+| `axisSoftMax` | number | No | |
+| `axisSoftMin` | number | No | |
+| `axisWidth` | number | No | |
+| `scaleDistribution` | [ScaleDistributionConfig](#scaledistributionconfig) | No | TODO docs |
+
+### ScaleDistributionConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------------|--------|----------|--------------------------------------------------------------------------|
+| `type` | string | **Yes** | TODO docs
Possible values are: `linear`, `log`, `ordinal`, `symlog`. |
+| `linearThreshold` | number | No | |
+| `log` | number | No | |
+
+### ColorDimensionConfig
+
+This is actually an empty interface used mainly for naming?
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### ColorDimensionConfig
+
+This is actually an empty interface used mainly for naming?
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### HideSeriesConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### HideableFieldConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|------------|---------------------------------------|----------|-------------|
+| `hideFrom` | [HideSeriesConfig](#hideseriesconfig) | No | TODO docs |
+
+### HideSeriesConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-----------|---------|----------|-------------|
+| `legend` | boolean | **Yes** | |
+| `tooltip` | boolean | **Yes** | |
+| `viz` | boolean | **Yes** | |
+
+### LineStyle
+
+TODO docs
+
+| Property | Type | Required | Description |
+|----------|----------|----------|--------------------------------------------------------|
+| `dash` | number[] | No | |
+| `fill` | string | No | Possible values are: `solid`, `dash`, `dot`, `square`. |
+
+### ScaleDimensionConfig
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|---------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `max` | integer | **Yes** | |
+| `min` | integer | **Yes** | |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### ScaleDistributionConfig
+
+TODO docs
+
+| Property | Type | Required | Description |
+|-------------------|--------|----------|--------------------------------------------------------------------------|
+| `type` | string | **Yes** | TODO docs
Possible values are: `linear`, `log`, `ordinal`, `symlog`. |
+| `linearThreshold` | number | No | |
+| `log` | number | No | |
+
+### TextDimensionConfig
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `mode` | string | **Yes** | Possible values are: `fixed`, `field`, `template`. |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### TextDimensionConfig
+
+It extends [BaseDimensionConfig](#basedimensionconfig).
+
+| Property | Type | Required | Description |
+|----------|--------|----------|----------------------------------------------------------------|
+| `fixed` | | **Yes** | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+| `mode` | string | **Yes** | Possible values are: `fixed`, `field`, `template`. |
+| `field` | string | No | *(Inherited from [BaseDimensionConfig](#basedimensionconfig))* |
+
+### BaseDimensionConfig
+
+| Property | Type | Required | Description |
+|----------|--------|----------|-------------|
+| `fixed` | | **Yes** | |
+| `field` | string | No | |
+
+### XYDimensionConfig
| Property | Type | Required | Description |
|-----------|----------|----------|-------------|
diff --git a/docs/sources/developers/kinds/core/dashboard/schema-reference.md b/docs/sources/developers/kinds/core/dashboard/schema-reference.md
index 3672213e9d0..9e14a27c565 100644
--- a/docs/sources/developers/kinds/core/dashboard/schema-reference.md
+++ b/docs/sources/developers/kinds/core/dashboard/schema-reference.md
@@ -6,20 +6,20 @@ title: Dashboard kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# Dashboard kind
+## Dashboard
-## Maturity: experimental
-## Version: 0.0
+#### Maturity: experimental
+#### Version: 0.0
-## Properties
+A Grafana dashboard.
| Property | Type | Required | Description |
|------------------------|-----------------------------------|----------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `editable` | boolean | **Yes** | Whether a dashboard is editable or not. Default: `true`. |
-| `graphTooltip` | integer | **Yes** | 0 for no shared crosshair or tooltip (default).
1 for shared crosshair.
2 for shared crosshair AND shared tooltip. Possible values are: `0`, `1`, `2`. Default: `0`. |
+| `graphTooltip` | integer | **Yes** | 0 for no shared crosshair or tooltip (default).
1 for shared crosshair.
2 for shared crosshair AND shared tooltip.
Possible values are: `0`, `1`, `2`. Default: `0`. |
| `revision` | integer | **Yes** | Version of the current dashboard data Default: `-1`. |
| `schemaVersion` | integer | **Yes** | Version of the JSON schema, incremented each time a Grafana update brings
changes to said schema.
TODO this is the existing schema numbering system. It will be replaced by Thema's themaVersion Default: `36`. |
-| `style` | string | **Yes** | Theme of dashboard. Possible values are: `dark`, `light`. Default: `dark`. |
+| `style` | string | **Yes** | Theme of dashboard.
Possible values are: `dark`, `light`. Default: `dark`. |
| `annotations` | [object](#annotations) | No | TODO docs |
| `description` | string | No | Description of dashboard. |
| `fiscalYearStartMonth` | integer | No | The month that the fiscal year starts on. 0 = January, 11 = December Default: `0`. |
@@ -40,32 +40,28 @@ title: Dashboard kind
| `version` | integer | No | Version of the dashboard, incremented each time the dashboard is updated. |
| `weekStart` | string | No | TODO docs |
-## DashboardLink
+### DashboardLink
FROM public/app/features/dashboard/state/DashboardModels.ts - ish
TODO docs
-### Properties
-
-| Property | Type | Required | Description |
-|---------------|----------|----------|------------------------------------------------------|
-| `asDropdown` | boolean | **Yes** | Default: `false`. |
-| `icon` | string | **Yes** | |
-| `includeVars` | boolean | **Yes** | Default: `false`. |
-| `keepTime` | boolean | **Yes** | Default: `false`. |
-| `tags` | string[] | **Yes** | |
-| `targetBlank` | boolean | **Yes** | Default: `false`. |
-| `title` | string | **Yes** | |
-| `tooltip` | string | **Yes** | |
-| `type` | string | **Yes** | TODO docs Possible values are: `link`, `dashboards`. |
-| `url` | string | **Yes** | |
-
-## Snapshot
+| Property | Type | Required | Description |
+|---------------|----------|----------|----------------------------------------------------------|
+| `asDropdown` | boolean | **Yes** | Default: `false`. |
+| `icon` | string | **Yes** | |
+| `includeVars` | boolean | **Yes** | Default: `false`. |
+| `keepTime` | boolean | **Yes** | Default: `false`. |
+| `tags` | string[] | **Yes** | |
+| `targetBlank` | boolean | **Yes** | Default: `false`. |
+| `title` | string | **Yes** | |
+| `tooltip` | string | **Yes** | |
+| `type` | string | **Yes** | TODO docs
Possible values are: `link`, `dashboards`. |
+| `url` | string | **Yes** | |
+
+### Snapshot
TODO docs
-### Properties
-
| Property | Type | Required | Description |
|---------------|---------|----------|-------------|
| `created` | string | **Yes** | TODO docs |
@@ -80,12 +76,10 @@ TODO docs
| `userId` | integer | **Yes** | TODO docs |
| `url` | string | No | TODO docs |
-## annotations
+### Annotations
TODO docs
-### Properties
-
| Property | Type | Required | Description |
|----------|---------------------------------------|----------|-------------|
| `list` | [AnnotationQuery](#annotationquery)[] | No | |
@@ -95,8 +89,6 @@ TODO docs
TODO docs
FROM: AnnotationQuery in grafana-data/src/types/annotations.ts
-#### Properties
-
| Property | Type | Required | Description |
|--------------|---------------------------------------|----------|-------------------------------------------------|
| `builtIn` | integer | **Yes** | Default: `0`. |
@@ -110,12 +102,10 @@ FROM: AnnotationQuery in grafana-data/src/types/annotations.ts
| `rawQuery` | string | No | Query for annotation data. |
| `target` | [AnnotationTarget](#annotationtarget) | No | TODO docs |
-#### AnnotationTarget
+### AnnotationTarget
TODO docs
-##### Properties
-
| Property | Type | Required | Description |
|------------|----------|----------|-------------|
| `limit` | integer | **Yes** | |
@@ -123,28 +113,24 @@ TODO docs
| `tags` | string[] | **Yes** | |
| `type` | string | **Yes** | |
-#### datasource
+### Datasource
Datasource to use for annotation.
-##### Properties
-
| Property | Type | Required | Description |
|----------|--------|----------|-------------|
| `type` | string | No | |
| `uid` | string | No | |
-## panels
+### Panels
| Property | Type | Required | Description |
|----------|------|----------|-------------|
-## templating
+### Templating
TODO docs
-### Properties
-
| Property | Type | Required | Description |
|----------|-----------------------------------|----------|-------------|
| `list` | [VariableModel](#variablemodel)[] | No | |
@@ -156,59 +142,51 @@ TODO docs
TODO what about what's in public/app/features/types.ts?
TODO there appear to be a lot of different kinds of [template] vars here? if so need a disjunction
-#### Properties
-
-| Property | Type | Required | Description |
-|----------------|---------------------------------|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| `global` | boolean | **Yes** | Default: `false`. |
-| `hide` | integer | **Yes** | Possible values are: `0`, `1`, `2`. |
-| `id` | string | **Yes** | Default: `00000000-0000-0000-0000-000000000000`. |
-| `index` | integer | **Yes** | Default: `-1`. |
-| `name` | string | **Yes** | |
-| `skipUrlSync` | boolean | **Yes** | Default: `false`. |
-| `state` | string | **Yes** | Possible values are: `NotStarted`, `Loading`, `Streaming`, `Done`, `Error`. |
-| `type` | string | **Yes** | FROM: packages/grafana-data/src/types/templateVars.ts
TODO docs
TODO this implies some wider pattern/discriminated union, probably? Possible values are: `query`, `adhoc`, `constant`, `datasource`, `interval`, `textbox`, `custom`, `system`. |
-| `datasource` | [DataSourceRef](#datasourceref) | No | Ref to a DataSource instance |
-| `description` | string | No | |
-| `error` | [object](#error) | No | |
-| `label` | string | No | |
-| `query` | | No | TODO: Move this into a separated QueryVariableModel type |
-| `rootStateKey` | string | No | |
-
-#### DataSourceRef
+| Property | Type | Required | Description |
+|----------------|---------------------------------|----------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `global` | boolean | **Yes** | Default: `false`. |
+| `hide` | integer | **Yes** | Possible values are: `0`, `1`, `2`. |
+| `id` | string | **Yes** | Default: `00000000-0000-0000-0000-000000000000`. |
+| `index` | integer | **Yes** | Default: `-1`. |
+| `name` | string | **Yes** | |
+| `skipUrlSync` | boolean | **Yes** | Default: `false`. |
+| `state` | string | **Yes** | Possible values are: `NotStarted`, `Loading`, `Streaming`, `Done`, `Error`. |
+| `type` | string | **Yes** | FROM: packages/grafana-data/src/types/templateVars.ts
TODO docs
TODO this implies some wider pattern/discriminated union, probably?
Possible values are: `query`, `adhoc`, `constant`, `datasource`, `interval`, `textbox`, `custom`, `system`. |
+| `datasource` | [DataSourceRef](#datasourceref) | No | Ref to a DataSource instance |
+| `description` | string | No | |
+| `error` | [object](#error) | No | |
+| `label` | string | No | |
+| `query` | | No | TODO: Move this into a separated QueryVariableModel type |
+| `rootStateKey` | string | No | |
+
+### DataSourceRef
Ref to a DataSource instance
-##### Properties
-
| Property | Type | Required | Description |
|----------|--------|----------|------------------------------|
| `type` | string | No | The plugin type-id |
| `uid` | string | No | Specific datasource instance |
-#### error
+### Error
| Property | Type | Required | Description |
|----------|------|----------|-------------|
-## time
+### Time
Time range for dashboard, e.g. last 6 hours, last 7 days, etc
-### Properties
-
| Property | Type | Required | Description |
|----------|--------|----------|--------------------|
| `from` | string | **Yes** | Default: `now-6h`. |
| `to` | string | **Yes** | Default: `now`. |
-## timepicker
+### Timepicker
TODO docs
TODO this appears to be spread all over in the frontend. Concepts will likely need tidying in tandem with schema changes
-### Properties
-
| Property | Type | Required | Description |
|---------------------|----------|----------|----------------------------------------------------------------------------------------|
| `collapse` | boolean | **Yes** | Whether timepicker is collapsed or not. Default: `false`. |
diff --git a/docs/sources/developers/kinds/core/librarypanel/schema-reference.md b/docs/sources/developers/kinds/core/librarypanel/schema-reference.md
index 6ac3ad434f7..7b563b1874f 100644
--- a/docs/sources/developers/kinds/core/librarypanel/schema-reference.md
+++ b/docs/sources/developers/kinds/core/librarypanel/schema-reference.md
@@ -6,12 +6,12 @@ title: LibraryPanel kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# LibraryPanel kind
+## LibraryPanel
-## Maturity: experimental
-## Version: 0.0
+#### Maturity: experimental
+#### Version: 0.0
-## Properties
+A standalone panel
| Property | Type | Required | Description |
|-----------------|-------------------------------------------------|----------|--------------------------------------------------------------------------------------------------------------------------------------|
@@ -25,9 +25,7 @@ title: LibraryPanel kind
| `meta` | [LibraryElementDTOMeta](#libraryelementdtometa) | No | |
| `schemaVersion` | integer | No | Dashboard version when this was saved (zero if unknown) |
-## LibraryElementDTOMeta
-
-### Properties
+### LibraryElementDTOMeta
| Property | Type | Required | Description |
|-----------------------|---------------------------------------------------------|----------|-------------|
@@ -41,8 +39,6 @@ title: LibraryPanel kind
### LibraryElementDTOMetaUser
-#### Properties
-
| Property | Type | Required | Description |
|-------------|---------|----------|-------------|
| `avatarUrl` | string | **Yes** | |
@@ -51,15 +47,13 @@ title: LibraryPanel kind
### LibraryElementDTOMetaUser
-#### Properties
-
| Property | Type | Required | Description |
|-------------|---------|----------|-------------|
| `avatarUrl` | string | **Yes** | |
| `id` | integer | **Yes** | |
| `name` | string | **Yes** | |
-## model
+### Model
TODO: should be the same panel schema defined in dashboard
Typescript: Omit;
diff --git a/docs/sources/developers/kinds/core/playlist/schema-reference.md b/docs/sources/developers/kinds/core/playlist/schema-reference.md
index 51698e99423..7c36fef698b 100644
--- a/docs/sources/developers/kinds/core/playlist/schema-reference.md
+++ b/docs/sources/developers/kinds/core/playlist/schema-reference.md
@@ -6,12 +6,12 @@ title: Playlist kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# Playlist kind
+## Playlist
-## Maturity: merged
-## Version: 0.0
+#### Maturity: merged
+#### Version: 0.0
-## Properties
+A playlist is a series of dashboards that is automatically rotated in the browser, on a configurable interval.
| Property | Type | Required | Description |
|------------|---------------------------------|----------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
@@ -20,13 +20,11 @@ title: Playlist kind
| `uid` | string | **Yes** | Unique playlist identifier. Generated on creation, either by the
creator of the playlist of by the application. |
| `items` | [PlaylistItem](#playlistitem)[] | No | The ordered list of items that the playlist will iterate over.
FIXME! This should not be optional, but changing it makes the godegen awkward |
-## PlaylistItem
-
-### Properties
+### PlaylistItem
| Property | Type | Required | Description |
|----------|--------|----------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| `type` | string | **Yes** | Type of the item. Possible values are: `dashboard_by_uid`, `dashboard_by_id`, `dashboard_by_tag`. |
+| `type` | string | **Yes** | Type of the item.
Possible values are: `dashboard_by_uid`, `dashboard_by_id`, `dashboard_by_tag`. |
| `value` | string | **Yes** | Value depends on type and describes the playlist item.
- dashboard_by_id: The value is an internal numerical identifier set by Grafana. This
is not portable as the numerical identifier is non-deterministic between different instances.
Will be replaced by dashboard_by_uid in the future. (deprecated)
- dashboard_by_tag: The value is a tag which is set on any number of dashboards. All
dashboards behind the tag will be added to the playlist.
- dashboard_by_uid: The value is the dashboard UID |
| `title` | string | No | Title is an unused property -- it will be removed in the future |
diff --git a/docs/sources/developers/kinds/core/preferences/schema-reference.md b/docs/sources/developers/kinds/core/preferences/schema-reference.md
index fc5bf9ec796..544e5be9df4 100644
--- a/docs/sources/developers/kinds/core/preferences/schema-reference.md
+++ b/docs/sources/developers/kinds/core/preferences/schema-reference.md
@@ -6,12 +6,12 @@ title: Preferences kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# Preferences kind
+## Preferences
-## Maturity: merged
-## Version: 0.0
+#### Maturity: merged
+#### Version: 0.0
-## Properties
+The user or team frontend preferences
| Property | Type | Required | Description |
|--------------------|---------------------------------------------------|----------|---------------------------------------------------------------------------------|
@@ -22,9 +22,7 @@ title: Preferences kind
| `timezone` | string | No | The timezone selection
TODO: this should use the timezone defined in common |
| `weekStart` | string | No | day of the week (sunday, monday, etc) |
-## QueryHistoryPreference
-
-### Properties
+### QueryHistoryPreference
| Property | Type | Required | Description |
|-----------|--------|----------|---------------------------------------------|
diff --git a/docs/sources/developers/kinds/core/publicdashboard/schema-reference.md b/docs/sources/developers/kinds/core/publicdashboard/schema-reference.md
index afc5180618b..b4487f3f6f8 100644
--- a/docs/sources/developers/kinds/core/publicdashboard/schema-reference.md
+++ b/docs/sources/developers/kinds/core/publicdashboard/schema-reference.md
@@ -6,12 +6,12 @@ title: PublicDashboard kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# PublicDashboard kind
+## PublicDashboard
-## Maturity: merged
-## Version: 0.0
+#### Maturity: merged
+#### Version: 0.0
-## Properties
+Public dashboard configuration
| Property | Type | Required | Description |
|------------------------|---------|----------|-----------------------------------------------------------------|
diff --git a/docs/sources/developers/kinds/core/serviceaccount/schema-reference.md b/docs/sources/developers/kinds/core/serviceaccount/schema-reference.md
index ba92626deac..c23c2339a11 100644
--- a/docs/sources/developers/kinds/core/serviceaccount/schema-reference.md
+++ b/docs/sources/developers/kinds/core/serviceaccount/schema-reference.md
@@ -6,12 +6,12 @@ title: ServiceAccount kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# ServiceAccount kind
+## ServiceAccount
-## Maturity: merged
-## Version: 0.0
+#### Maturity: merged
+#### Version: 0.0
-## Properties
+system account
| Property | Type | Required | Description |
|-----------------|--------------------|----------|-----------------------------------------------------------------------------------------------------------------------------------------|
@@ -21,7 +21,7 @@ title: ServiceAccount kind
| `login` | string | **Yes** | Login of the service account. |
| `name` | string | **Yes** | Name of the service account. |
| `orgId` | integer | **Yes** | OrgId is the ID of an organisation the service account belongs to. |
-| `role` | string | **Yes** | OrgRole is a Grafana Organization Role which can be 'Viewer', 'Editor', 'Admin'. Possible values are: `Admin`, `Editor`, `Viewer`. |
+| `role` | string | **Yes** | OrgRole is a Grafana Organization Role which can be 'Viewer', 'Editor', 'Admin'.
Possible values are: `Admin`, `Editor`, `Viewer`. |
| `tokens` | integer | **Yes** | Tokens is the number of active tokens for the service account.
Tokens are used to authenticate the service account against Grafana. |
| `accessControl` | map[string]boolean | No | AccessControl metadata associated with a given resource. |
| `created` | integer | No | Created indicates when the service account was created. |
diff --git a/docs/sources/developers/kinds/core/team/schema-reference.md b/docs/sources/developers/kinds/core/team/schema-reference.md
index 36a89101065..a4b56b84035 100644
--- a/docs/sources/developers/kinds/core/team/schema-reference.md
+++ b/docs/sources/developers/kinds/core/team/schema-reference.md
@@ -6,12 +6,12 @@ title: Team kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# Team kind
+## Team
-## Maturity: merged
-## Version: 0.0
+#### Maturity: merged
+#### Version: 0.0
-## Properties
+A team is a named grouping of Grafana users to which access control rules may be assigned.
| Property | Type | Required | Description |
|-----------------|--------------------|----------|----------------------------------------------------------|
diff --git a/pkg/codegen/jenny_docs.go b/pkg/codegen/jenny_docs.go
index a802e9dc74e..4c682e40c9e 100644
--- a/pkg/codegen/jenny_docs.go
+++ b/pkg/codegen/jenny_docs.go
@@ -69,10 +69,11 @@ func (j docsJenny) Generate(kind kindsys.Kind) (*codejen.File, error) {
kindProps := kind.Props().Common()
data := templateData{
- KindName: kindProps.Name,
- KindVersion: kind.Lineage().Latest().Version().String(),
- KindMaturity: string(kindProps.Maturity),
- Markdown: "{{ .Markdown 1 }}",
+ KindName: kindProps.Name,
+ KindVersion: kind.Lineage().Latest().Version().String(),
+ KindMaturity: string(kindProps.Maturity),
+ KindDescription: kindProps.Description,
+ Markdown: "{{ .Markdown 1 }}",
}
tmpl, err := makeTemplate(data, "docs.tmpl")
@@ -98,10 +99,11 @@ func makeTemplate(data templateData, tmpl string) ([]byte, error) {
}
type templateData struct {
- KindName string
- KindVersion string
- KindMaturity string
- Markdown string
+ KindName string
+ KindVersion string
+ KindMaturity string
+ KindDescription string
+ Markdown string
}
// -------------------- JSON to Markdown conversion --------------------
@@ -119,8 +121,11 @@ type schema struct {
Items *schema `json:"items,omitempty"`
Definitions map[string]*schema `json:"definitions,omitempty"`
Enum []Any `json:"enum"`
- AdditionalProperties *schema `json:"additionalProperties"`
Default any `json:"default"`
+ AllOf []*schema `json:"allOf"`
+ AdditionalProperties *schema `json:"additionalProperties"`
+ extends []string `json:"-"`
+ inheritedFrom string `json:"-"`
}
func renderMapType(props *schema) string {
@@ -215,6 +220,20 @@ func resolveSchema(schem *schema, root *simplejson.Json) (*schema, error) {
*schem.Items = *foo
}
+ if len(schem.AllOf) > 0 {
+ for idx, child := range schem.AllOf {
+ tmp, err := resolveSubSchema(schem, child, root)
+ if err != nil {
+ return nil, err
+ }
+ schem.AllOf[idx] = tmp
+
+ if len(tmp.Title) > 0 {
+ schem.extends = append(schem.extends, tmp.Title)
+ }
+ }
+ }
+
if schem.AdditionalProperties != nil {
if schem.AdditionalProperties.Ref != "" {
tmp, err := resolveReference(schem.AdditionalProperties.Ref, root)
@@ -233,6 +252,37 @@ func resolveSchema(schem *schema, root *simplejson.Json) (*schema, error) {
return schem, nil
}
+func resolveSubSchema(parent, child *schema, root *simplejson.Json) (*schema, error) {
+ if child.Ref != "" {
+ tmp, err := resolveReference(child.Ref, root)
+ if err != nil {
+ return nil, err
+ }
+ *child = *tmp
+ }
+
+ if len(child.Required) > 0 {
+ parent.Required = append(parent.Required, child.Required...)
+ }
+
+ child, err := resolveSchema(child, root)
+ if err != nil {
+ return nil, err
+ }
+
+ if parent.Properties == nil {
+ parent.Properties = make(map[string]*schema)
+ }
+
+ for k, v := range child.Properties {
+ prop := *v
+ prop.inheritedFrom = child.Title
+ parent.Properties[k] = &prop
+ }
+
+ return child, err
+}
+
// resolveReference loads a schema from a $ref.
// If ref contains a hashtag (#), the part after represents a in-schema reference.
func resolveReference(ref string, root *simplejson.Json) (*schema, error) {
@@ -281,48 +331,42 @@ func (s schema) Markdown(level int) string {
level = 1
}
- var buf bytes.Buffer
+ buf := new(bytes.Buffer)
if s.Title != "" && s.AdditionalProperties == nil {
- fmt.Fprintln(&buf, makeHeading(s.Title, level))
- fmt.Fprintln(&buf)
+ fmt.Fprintf(buf, "### %s\n", strings.Title(s.Title))
+ fmt.Fprintln(buf)
}
if s.Description != "" {
- fmt.Fprintln(&buf, s.Description)
- if s.Default != nil {
- fmt.Fprintf(&buf, "The default value is: `%v`.", s.Default)
- }
- fmt.Fprintln(&buf)
+ fmt.Fprintln(buf, s.Description)
+ fmt.Fprintln(buf)
}
- if len(s.Properties) > 0 {
- fmt.Fprintln(&buf, makeHeading("Properties", level+1))
- fmt.Fprintln(&buf)
+ if len(s.extends) > 0 {
+ fmt.Fprintln(buf, makeExtends(s.extends))
+ fmt.Fprintln(buf)
}
- printProperties(&buf, &s)
+ printProperties(buf, &s)
// Add padding.
- fmt.Fprintln(&buf)
+ fmt.Fprintln(buf)
for _, obj := range findDefinitions(&s) {
- fmt.Fprint(&buf, obj.Markdown(level+1))
+ fmt.Fprint(buf, obj.Markdown(level+1))
}
return buf.String()
}
-func makeHeading(heading string, level int) string {
- if level < 0 {
- return heading
+func makeExtends(from []string) string {
+ fromLinks := make([]string, 0, len(from))
+ for _, f := range from {
+ fromLinks = append(fromLinks, fmt.Sprintf("[%s](#%s)", f, strings.ToLower(f)))
}
- if level <= 6 {
- return strings.Repeat("#", level) + " " + heading
- }
-
- return fmt.Sprintf("**%s**", heading)
+ return fmt.Sprintf("It extends %s.", strings.Join(fromLinks, " and "))
}
func findDefinitions(s *schema) []*schema {
@@ -362,6 +406,21 @@ func findDefinitions(s *schema) []*schema {
definition(k, p)
}
+ // This code could probably be unified with the one above
+ for _, child := range s.AllOf {
+ if child.Type.HasType(PropertyTypeObject) {
+ objs = append(objs, child)
+ }
+
+ if child.Type.HasType(PropertyTypeArray) {
+ if child.Items != nil {
+ if child.Items.Type.HasType(PropertyTypeObject) {
+ objs = append(objs, child.Items)
+ }
+ }
+ }
+ }
+
// Sort the object schemas.
sort.Slice(objs, func(i, j int) bool {
return objs[i].Title < objs[j].Title
@@ -382,8 +441,8 @@ func printProperties(w io.Writer, s *schema) {
// Buffer all property rows so that we can sort them before printing them.
rows := make([][]string, 0, len(s.Properties))
- for key, val := range s.Properties {
- typeStr := propTypeStr(key, val)
+ for key, p := range s.Properties {
+ typeStr := propTypeStr(key, p)
// Emphasize required properties.
var required string
@@ -393,24 +452,32 @@ func printProperties(w io.Writer, s *schema) {
required = "No"
}
- desc := val.Description
+ var desc string
+
+ if p.inheritedFrom != "" {
+ desc = fmt.Sprintf("*(Inherited from [%s](#%s))*", p.inheritedFrom, strings.ToLower(p.inheritedFrom))
+ }
+
+ if p.Description != "" {
+ desc += "\n" + p.Description
+ }
- if len(val.Enum) > 0 {
- vals := make([]string, 0, len(val.Enum))
- for _, e := range val.Enum {
+ if len(p.Enum) > 0 {
+ vals := make([]string, 0, len(p.Enum))
+ for _, e := range p.Enum {
vals = append(vals, e.String())
}
- desc += " Possible values are: `" + strings.Join(vals, "`, `") + "`."
+ desc += "\nPossible values are: `" + strings.Join(vals, "`, `") + "`."
}
- if val.Default != nil {
- desc += fmt.Sprintf(" Default: `%v`.", val.Default)
+ if p.Default != nil {
+ desc += fmt.Sprintf(" Default: `%v`.", p.Default)
}
rows = append(rows, []string{fmt.Sprintf("`%s`", key), typeStr, required, formatForTable(desc)})
}
- // Sort by the required column, then by the key column.
+ // Sort by the required column, then by the name column.
sort.Slice(rows, func(i, j int) bool {
if rows[i][2] < rows[j][2] {
return true
diff --git a/pkg/codegen/tmpl/docs.tmpl b/pkg/codegen/tmpl/docs.tmpl
index 918b1dd9a87..59de8150f4b 100644
--- a/pkg/codegen/tmpl/docs.tmpl
+++ b/pkg/codegen/tmpl/docs.tmpl
@@ -6,9 +6,11 @@ title: {{ .KindName }} kind
---
> Both documentation generation and kinds schemas are in active development and subject to change without prior notice.
-# {{ .KindName }} kind
+## {{ .KindName }}
-## Maturity: {{ .KindMaturity }}
-## Version: {{ .KindVersion }}
+#### Maturity: {{ .KindMaturity }}
+#### Version: {{ .KindVersion }}
+
+{{ .KindDescription }}
{{ .Markdown }}