models

package
v0.16.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 23, 2026 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package models holds Terraform Plugin Framework state models for the elasticstack_kibana_dashboard resource: structs tagged with `tfsdk` and no conversion or schema logic. Keeping these types in a dedicated package lets dashboard implementation code import them without import cycles.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ApplyPinnedSiblingControlConfig

func ApplyPinnedSiblingControlConfig(pp *PinnedPanelModel, active string, pm *PanelModel)

ApplyPinnedSiblingControlConfig copies the active control config slot from synthetic pm onto ppm and clears mismatched sibling slots.

func SeedPinnedPanelForRead

func SeedPinnedPanelForRead(prior *PinnedPanelModel, discriminator string) (PinnedPanelModel, *PanelModel)

SeedPinnedPanelForRead seeds a pinned model with the discriminator from the API response, carrying forward prior TF state when `type` matches so null-preserving FromAPI behaves like dashboard panels matched by slice index + prior slice.

Types

type AccessControlValue

type AccessControlValue struct {
	AccessMode types.String `tfsdk:"access_mode"`
}

type AxisTitleModel

type AxisTitleModel struct {
	Value   types.String `tfsdk:"value"`
	Visible types.Bool   `tfsdk:"visible"`
}

type ChartFilterJSONModel

type ChartFilterJSONModel struct {
	FilterJSON jsontypes.Normalized `tfsdk:"filter_json"`
}

type DashboardModel

type DashboardModel struct {
	entitycore.ResourceTimeoutsField
	ID               types.String          `tfsdk:"id"`
	KibanaConnection types.List            `tfsdk:"kibana_connection"`
	SpaceID          types.String          `tfsdk:"space_id"`
	DashboardID      types.String          `tfsdk:"dashboard_id"`
	Title            types.String          `tfsdk:"title"`
	Description      types.String          `tfsdk:"description"`
	TimeRange        *TimeRangeModel       `tfsdk:"time_range"`
	RefreshInterval  *RefreshIntervalModel `tfsdk:"refresh_interval"`
	Query            *DashboardQueryModel  `tfsdk:"query"`
	Filters          types.List            `tfsdk:"filters"`
	Tags             types.List            `tfsdk:"tags"`
	Options          *OptionsModel         `tfsdk:"options"`
	AccessControl    *AccessControlValue   `tfsdk:"access_control"`
	Panels           []PanelModel          `tfsdk:"panels"`
	PinnedPanels     []PinnedPanelModel    `tfsdk:"pinned_panels"`
	Sections         []SectionModel        `tfsdk:"sections"`
}

func (DashboardModel) GetID added in v0.16.2

func (m DashboardModel) GetID() types.String

func (DashboardModel) GetKibanaConnection added in v0.16.2

func (m DashboardModel) GetKibanaConnection() types.List

func (DashboardModel) GetResourceID added in v0.16.2

func (m DashboardModel) GetResourceID() types.String

func (DashboardModel) GetSpaceID added in v0.16.2

func (m DashboardModel) GetSpaceID() types.String

type DashboardQueryModel

type DashboardQueryModel struct {
	Language types.String         `tfsdk:"language"`
	Text     types.String         `tfsdk:"text"`
	JSON     jsontypes.Normalized `tfsdk:"json"`
}

type DataLayerModel

type DataLayerModel struct {
	DataSourceJSON      jsontypes.Normalized `tfsdk:"data_source_json"`
	IgnoreGlobalFilters types.Bool           `tfsdk:"ignore_global_filters"`
	Sampling            types.Float64        `tfsdk:"sampling"`
	XJSON               jsontypes.Normalized `tfsdk:"x_json"`
	Y                   []YMetricModel       `tfsdk:"y"`
	BreakdownByJSON     jsontypes.Normalized `tfsdk:"breakdown_by_json"`
}

type DatatableConfigModel

type DatatableConfigModel struct {
	NoESQL *DatatableNoESQLConfigModel `tfsdk:"no_esql"`
	ESQL   *DatatableESQLConfigModel   `tfsdk:"esql"`
}

type DatatableDensityHeightHeaderModel

type DatatableDensityHeightHeaderModel struct {
	Type     types.String  `tfsdk:"type"`
	MaxLines types.Float64 `tfsdk:"max_lines"`
}

type DatatableDensityHeightModel

type DatatableDensityHeightModel struct {
	Header *DatatableDensityHeightHeaderModel `tfsdk:"header"`
	Value  *DatatableDensityHeightValueModel  `tfsdk:"value"`
}

type DatatableDensityHeightValueModel

type DatatableDensityHeightValueModel struct {
	Type  types.String  `tfsdk:"type"`
	Lines types.Float64 `tfsdk:"lines"`
}

type DatatableDensityModel

type DatatableDensityModel struct {
	Mode   types.String                 `tfsdk:"mode"`
	Height *DatatableDensityHeightModel `tfsdk:"height"`
}

type DatatableESQLConfigModel

type DatatableESQLConfigModel struct {
	LensChartPresentationTFModel
	LensChartBaseTFModel
	Styling        *DatatableStylingModel  `tfsdk:"styling"`
	Metrics        []DatatableMetricModel  `tfsdk:"metrics"`
	Rows           []DatatableRowModel     `tfsdk:"rows"`
	SplitMetricsBy []DatatableSplitByModel `tfsdk:"split_metrics_by"`
}

type DatatableMetricModel

type DatatableMetricModel struct {
	ConfigJSON jsontypes.Normalized `tfsdk:"config_json"`
}

type DatatableNoESQLConfigModel

type DatatableNoESQLConfigModel struct {
	LensChartPresentationTFModel
	LensChartBaseTFModel
	Styling        *DatatableStylingModel  `tfsdk:"styling"`
	Query          *FilterSimpleModel      `tfsdk:"query"`
	Metrics        []DatatableMetricModel  `tfsdk:"metrics"`
	Rows           []DatatableRowModel     `tfsdk:"rows"`
	SplitMetricsBy []DatatableSplitByModel `tfsdk:"split_metrics_by"`
}

type DatatableRowModel

type DatatableRowModel struct {
	ConfigJSON jsontypes.Normalized `tfsdk:"config_json"`
}

type DatatableSplitByModel

type DatatableSplitByModel struct {
	ConfigJSON jsontypes.Normalized `tfsdk:"config_json"`
}

type DatatableStylingModel

type DatatableStylingModel struct {
	Density    *DatatableDensityModel `tfsdk:"density"`
	SortByJSON jsontypes.Normalized   `tfsdk:"sort_by_json"`
	Paging     types.Int64            `tfsdk:"paging"`
}

type DiscoverSessionColumnSettingModel

type DiscoverSessionColumnSettingModel struct {
	Width types.Float64 `tfsdk:"width"`
}

type DiscoverSessionDSLTabModel

type DiscoverSessionDSLTabModel struct {
	ColumnOrder     types.List                 `tfsdk:"column_order"`
	ColumnSettings  types.Map                  `tfsdk:"column_settings"`
	Sort            []DiscoverSessionSortModel `tfsdk:"sort"`
	Density         types.String               `tfsdk:"density"`
	HeaderRowHeight types.String               `tfsdk:"header_row_height"`
	RowHeight       types.String               `tfsdk:"row_height"`
	RowsPerPage     types.Int64                `tfsdk:"rows_per_page"`
	SampleSize      types.Int64                `tfsdk:"sample_size"`
	ViewMode        types.String               `tfsdk:"view_mode"`
	Query           *FilterSimpleModel         `tfsdk:"query"`
	DataSourceJSON  jsontypes.Normalized       `tfsdk:"data_source_json"`
	Filters         []ChartFilterJSONModel     `tfsdk:"filters"`
}

type DiscoverSessionESQLTabModel

type DiscoverSessionESQLTabModel struct {
	ColumnOrder     types.List                 `tfsdk:"column_order"`
	ColumnSettings  types.Map                  `tfsdk:"column_settings"`
	Sort            []DiscoverSessionSortModel `tfsdk:"sort"`
	Density         types.String               `tfsdk:"density"`
	HeaderRowHeight types.String               `tfsdk:"header_row_height"`
	RowHeight       types.String               `tfsdk:"row_height"`
	DataSourceJSON  jsontypes.Normalized       `tfsdk:"data_source_json"`
}

type DiscoverSessionOverridesModel

type DiscoverSessionOverridesModel struct {
	ColumnOrder     types.List                 `tfsdk:"column_order"`
	ColumnSettings  types.Map                  `tfsdk:"column_settings"`
	Sort            []DiscoverSessionSortModel `tfsdk:"sort"`
	Density         types.String               `tfsdk:"density"`
	HeaderRowHeight types.String               `tfsdk:"header_row_height"`
	RowHeight       types.String               `tfsdk:"row_height"`
	RowsPerPage     types.Int64                `tfsdk:"rows_per_page"`
	SampleSize      types.Int64                `tfsdk:"sample_size"`
}

type DiscoverSessionPanelByRefModel

type DiscoverSessionPanelByRefModel struct {
	TimeRange     *TimeRangeModel                `tfsdk:"time_range"`
	RefID         types.String                   `tfsdk:"ref_id"`
	SelectedTabID types.String                   `tfsdk:"selected_tab_id"`
	Overrides     *DiscoverSessionOverridesModel `tfsdk:"overrides"`
}

type DiscoverSessionPanelByValueModel

type DiscoverSessionPanelByValueModel struct {
	TimeRange *TimeRangeModel         `tfsdk:"time_range"`
	Tab       DiscoverSessionTabModel `tfsdk:"tab"`
}

type DiscoverSessionPanelConfigModel

type DiscoverSessionPanelConfigModel struct {
	Title       types.String                      `tfsdk:"title"`
	Description types.String                      `tfsdk:"description"`
	HideTitle   types.Bool                        `tfsdk:"hide_title"`
	HideBorder  types.Bool                        `tfsdk:"hide_border"`
	Drilldowns  []DiscoverSessionPanelDrilldown   `tfsdk:"drilldowns"`
	ByValue     *DiscoverSessionPanelByValueModel `tfsdk:"by_value"`
	ByReference *DiscoverSessionPanelByRefModel   `tfsdk:"by_reference"`
}

type DiscoverSessionPanelDrilldown

type DiscoverSessionPanelDrilldown struct {
	URL          types.String `tfsdk:"url"`
	Label        types.String `tfsdk:"label"`
	EncodeURL    types.Bool   `tfsdk:"encode_url"`
	OpenInNewTab types.Bool   `tfsdk:"open_in_new_tab"`
}

type DiscoverSessionSortModel

type DiscoverSessionSortModel struct {
	Name      types.String `tfsdk:"name"`
	Direction types.String `tfsdk:"direction"`
}

type DiscoverSessionTabModel

type DiscoverSessionTabModel struct {
	DSL  *DiscoverSessionDSLTabModel  `tfsdk:"dsl"`
	ESQL *DiscoverSessionESQLTabModel `tfsdk:"esql"`
}

type DrilldownDashboardBlockModel

type DrilldownDashboardBlockModel struct {
	DashboardID  types.String `tfsdk:"dashboard_id"`
	Label        types.String `tfsdk:"label"`
	UseFilters   types.Bool   `tfsdk:"use_filters"`
	UseTimeRange types.Bool   `tfsdk:"use_time_range"`
	OpenInNewTab types.Bool   `tfsdk:"open_in_new_tab"`
}

type DrilldownDiscoverBlockModel

type DrilldownDiscoverBlockModel struct {
	Label        types.String `tfsdk:"label"`
	OpenInNewTab types.Bool   `tfsdk:"open_in_new_tab"`
}

type DrilldownItemModel

type DrilldownItemModel struct {
	Dashboard *DrilldownDashboardBlockModel `tfsdk:"dashboard"`
	Discover  *DrilldownDiscoverBlockModel  `tfsdk:"discover"`
	URL       *DrilldownURLBlockModel       `tfsdk:"url"`
}

type DrilldownURLBlockModel

type DrilldownURLBlockModel struct {
	URL          types.String `tfsdk:"url"`
	Label        types.String `tfsdk:"label"`
	Trigger      types.String `tfsdk:"trigger"`
	EncodeURL    types.Bool   `tfsdk:"encode_url"`
	OpenInNewTab types.Bool   `tfsdk:"open_in_new_tab"`
}

type DrilldownsModel

type DrilldownsModel []DrilldownItemModel

type EsqlControlConfigModel

type EsqlControlConfigModel struct {
	SelectedOptions  types.List                       `tfsdk:"selected_options"`
	VariableName     types.String                     `tfsdk:"variable_name"`
	VariableType     types.String                     `tfsdk:"variable_type"`
	EsqlQuery        types.String                     `tfsdk:"esql_query"`
	ControlType      types.String                     `tfsdk:"control_type"`
	Title            types.String                     `tfsdk:"title"`
	SingleSelect     types.Bool                       `tfsdk:"single_select"`
	AvailableOptions types.List                       `tfsdk:"available_options"`
	DisplaySettings  *EsqlControlDisplaySettingsModel `tfsdk:"display_settings"`
}

type EsqlControlDisplaySettingsModel

type EsqlControlDisplaySettingsModel struct {
	Placeholder   types.String `tfsdk:"placeholder"`
	HideActionBar types.Bool   `tfsdk:"hide_action_bar"`
	HideExclude   types.Bool   `tfsdk:"hide_exclude"`
	HideExists    types.Bool   `tfsdk:"hide_exists"`
	HideSort      types.Bool   `tfsdk:"hide_sort"`
}

type FilterSimpleModel

type FilterSimpleModel struct {
	Language   types.String `tfsdk:"language"`
	Expression types.String `tfsdk:"expression"`
}

type FontSizeModel

type FontSizeModel struct {
	Min types.Float64 `tfsdk:"min"`
	Max types.Float64 `tfsdk:"max"`
}

type GaugeConfigModel

type GaugeConfigModel struct {
	LensChartPresentationTFModel
	LensChartBaseTFModel
	Query      *FilterSimpleModel                                `tfsdk:"query"`
	MetricJSON customtypes.JSONWithDefaultsValue[map[string]any] `tfsdk:"metric_json"`
	EsqlMetric *GaugeEsqlMetric                                  `tfsdk:"esql_metric"`
	Styling    *GaugeStylingModel                                `tfsdk:"styling"`
}

type GaugeEsqlColumnRef

type GaugeEsqlColumnRef struct {
	Column types.String `tfsdk:"column"`
	Label  types.String `tfsdk:"label"`
}

type GaugeEsqlMetric

type GaugeEsqlMetric struct {
	Column     types.String         `tfsdk:"column"`
	FormatJSON jsontypes.Normalized `tfsdk:"format_json"`
	Label      types.String         `tfsdk:"label"`
	ColorJSON  jsontypes.Normalized `tfsdk:"color_json"`
	Subtitle   types.String         `tfsdk:"subtitle"`
	Goal       *GaugeEsqlColumnRef  `tfsdk:"goal"`
	Max        *GaugeEsqlColumnRef  `tfsdk:"max"`
	Min        *GaugeEsqlColumnRef  `tfsdk:"min"`
	Ticks      *GaugeEsqlTicks      `tfsdk:"ticks"`
	Title      *GaugeEsqlTitle      `tfsdk:"title"`
}

type GaugeEsqlTicks

type GaugeEsqlTicks struct {
	Mode    types.String `tfsdk:"mode"`
	Visible types.Bool   `tfsdk:"visible"`
}

type GaugeEsqlTitle

type GaugeEsqlTitle struct {
	Text    types.String `tfsdk:"text"`
	Visible types.Bool   `tfsdk:"visible"`
}

type GaugeStylingModel

type GaugeStylingModel struct {
	ShapeJSON jsontypes.Normalized `tfsdk:"shape_json"`
}

type HeatmapAxesModel

type HeatmapAxesModel struct {
	X *HeatmapXAxisModel `tfsdk:"x"`
	Y *HeatmapYAxisModel `tfsdk:"y"`
}

type HeatmapCellsLabelsModel

type HeatmapCellsLabelsModel struct {
	Visible types.Bool `tfsdk:"visible"`
}

type HeatmapCellsModel

type HeatmapCellsModel struct {
	Labels *HeatmapCellsLabelsModel `tfsdk:"labels"`
}

type HeatmapConfigModel

type HeatmapConfigModel struct {
	LensChartPresentationTFModel
	LensChartBaseTFModel
	Query      *FilterSimpleModel                                `tfsdk:"query"`
	Axis       *HeatmapAxesModel                                 `tfsdk:"axis"`
	Styling    *HeatmapStylingModel                              `tfsdk:"styling"`
	Legend     *HeatmapLegendModel                               `tfsdk:"legend"`
	MetricJSON customtypes.JSONWithDefaultsValue[map[string]any] `tfsdk:"metric_json"`
	XAxisJSON  jsontypes.Normalized                              `tfsdk:"x_axis_json"`
	YAxisJSON  jsontypes.Normalized                              `tfsdk:"y_axis_json"`
}

type HeatmapLegendModel

type HeatmapLegendModel struct {
	Visibility         types.String `tfsdk:"visibility"`
	Size               types.String `tfsdk:"size"`
	TruncateAfterLines types.Int64  `tfsdk:"truncate_after_lines"`
}

type HeatmapStylingModel

type HeatmapStylingModel struct {
	Cells *HeatmapCellsModel `tfsdk:"cells"`
}

type HeatmapXAxisLabelsModel

type HeatmapXAxisLabelsModel struct {
	Orientation types.String `tfsdk:"orientation"`
	Visible     types.Bool   `tfsdk:"visible"`
}

type HeatmapXAxisModel

type HeatmapXAxisModel struct {
	Labels *HeatmapXAxisLabelsModel `tfsdk:"labels"`
	Title  *AxisTitleModel          `tfsdk:"title"`
}

type HeatmapYAxisLabelsModel

type HeatmapYAxisLabelsModel struct {
	Visible types.Bool `tfsdk:"visible"`
}

type HeatmapYAxisModel

type HeatmapYAxisModel struct {
	Labels *HeatmapYAxisLabelsModel `tfsdk:"labels"`
	Title  *AxisTitleModel          `tfsdk:"title"`
}

type ImagePanelConfigModel

type ImagePanelConfigModel struct {
	Src             ImagePanelSrcModel         `tfsdk:"src"`
	AltText         types.String               `tfsdk:"alt_text"`
	ObjectFit       types.String               `tfsdk:"object_fit"`
	BackgroundColor types.String               `tfsdk:"background_color"`
	Title           types.String               `tfsdk:"title"`
	Description     types.String               `tfsdk:"description"`
	HideTitle       types.Bool                 `tfsdk:"hide_title"`
	HideBorder      types.Bool                 `tfsdk:"hide_border"`
	Drilldowns      []ImagePanelDrilldownModel `tfsdk:"drilldowns"`
}

type ImagePanelDashboardDrilldownModel

type ImagePanelDashboardDrilldownModel struct {
	DashboardID  types.String `tfsdk:"dashboard_id"`
	Label        types.String `tfsdk:"label"`
	Trigger      types.String `tfsdk:"trigger"`
	UseFilters   types.Bool   `tfsdk:"use_filters"`
	UseTimeRange types.Bool   `tfsdk:"use_time_range"`
	OpenInNewTab types.Bool   `tfsdk:"open_in_new_tab"`
}

type ImagePanelDrilldownModel

type ImagePanelDrilldownModel struct {
	DashboardDrilldown *ImagePanelDashboardDrilldownModel `tfsdk:"dashboard_drilldown"`
	URLDrilldown       *ImagePanelURLDrilldownModel       `tfsdk:"url_drilldown"`
}

type ImagePanelSrcFileModel

type ImagePanelSrcFileModel struct {
	FileID types.String `tfsdk:"file_id"`
}

type ImagePanelSrcModel

type ImagePanelSrcModel struct {
	File *ImagePanelSrcFileModel `tfsdk:"file"`
	URL  *ImagePanelSrcURLModel  `tfsdk:"url"`
}

type ImagePanelSrcURLModel

type ImagePanelSrcURLModel struct {
	URL types.String `tfsdk:"url"`
}

type ImagePanelURLDrilldownModel

type ImagePanelURLDrilldownModel struct {
	URL          types.String `tfsdk:"url"`
	Label        types.String `tfsdk:"label"`
	Trigger      types.String `tfsdk:"trigger"`
	EncodeURL    types.Bool   `tfsdk:"encode_url"`
	OpenInNewTab types.Bool   `tfsdk:"open_in_new_tab"`
}

type LegacyMetricConfigModel

type LegacyMetricConfigModel struct {
	LensChartPresentationTFModel
	LensChartBaseTFModel
	Query      *FilterSimpleModel                                `tfsdk:"query"`
	MetricJSON customtypes.JSONWithDefaultsValue[map[string]any] `tfsdk:"metric_json"`
}

type LensByValueChartBlocks

type LensByValueChartBlocks struct {
	XYChartConfig      *XYChartConfigModel      `tfsdk:"xy_chart_config"`
	TreemapConfig      *TreemapConfigModel      `tfsdk:"treemap_config"`
	MosaicConfig       *MosaicConfigModel       `tfsdk:"mosaic_config"`
	DatatableConfig    *DatatableConfigModel    `tfsdk:"datatable_config"`
	TagcloudConfig     *TagcloudConfigModel     `tfsdk:"tagcloud_config"`
	HeatmapConfig      *HeatmapConfigModel      `tfsdk:"heatmap_config"`
	WaffleConfig       *WaffleConfigModel       `tfsdk:"waffle_config"`
	RegionMapConfig    *RegionMapConfigModel    `tfsdk:"region_map_config"`
	GaugeConfig        *GaugeConfigModel        `tfsdk:"gauge_config"`
	MetricChartConfig  *MetricChartConfigModel  `tfsdk:"metric_chart_config"`
	PieChartConfig     *PieChartConfigModel     `tfsdk:"pie_chart_config"`
	LegacyMetricConfig *LegacyMetricConfigModel `tfsdk:"legacy_metric_config"`
}

type LensChartBaseTFModel added in v0.16.2

type LensChartBaseTFModel struct {
	Title               types.String           `tfsdk:"title"`
	Description         types.String           `tfsdk:"description"`
	DataSourceJSON      jsontypes.Normalized   `tfsdk:"data_source_json"`
	IgnoreGlobalFilters types.Bool             `tfsdk:"ignore_global_filters"`
	Sampling            types.Float64          `tfsdk:"sampling"`
	Filters             []ChartFilterJSONModel `tfsdk:"filters"`
}

LensChartBaseTFModel holds the fields shared by all Lens by-value chart config models.

type LensChartPresentationTFModel

type LensChartPresentationTFModel struct {
	TimeRange      *TimeRangeModel            `tfsdk:"time_range"`
	HideTitle      types.Bool                 `tfsdk:"hide_title"`
	HideBorder     types.Bool                 `tfsdk:"hide_border"`
	ReferencesJSON jsontypes.Normalized       `tfsdk:"references_json"`
	Drilldowns     []LensDrilldownItemTFModel `tfsdk:"drilldowns"`
}

func (*LensChartPresentationTFModel) GetLensChartPresentation added in v0.16.2

func (m *LensChartPresentationTFModel) GetLensChartPresentation() *LensChartPresentationTFModel

GetLensChartPresentation returns a pointer to this model, allowing types that embed LensChartPresentationTFModel to satisfy the lenscommon.lensChartPresentationProvider interface. A nil receiver returns nil.

type LensDashboardDrilldownTFModel

type LensDashboardDrilldownTFModel struct {
	DashboardID  types.String `tfsdk:"dashboard_id"`
	Label        types.String `tfsdk:"label"`
	Trigger      types.String `tfsdk:"trigger"`
	UseFilters   types.Bool   `tfsdk:"use_filters"`
	UseTimeRange types.Bool   `tfsdk:"use_time_range"`
	OpenInNewTab types.Bool   `tfsdk:"open_in_new_tab"`
}

type LensDiscoverDrilldownTFModel

type LensDiscoverDrilldownTFModel struct {
	Label        types.String `tfsdk:"label"`
	Trigger      types.String `tfsdk:"trigger"`
	OpenInNewTab types.Bool   `tfsdk:"open_in_new_tab"`
}

type LensDrilldownItemTFModel

type LensDrilldownItemTFModel struct {
	DashboardDrilldown *LensDashboardDrilldownTFModel `tfsdk:"dashboard_drilldown"`
	DiscoverDrilldown  *LensDiscoverDrilldownTFModel  `tfsdk:"discover_drilldown"`
	URLDrilldown       *LensURLDrilldownTFModel       `tfsdk:"url_drilldown"`
}

type LensStaticColorModel added in v0.16.2

type LensStaticColorModel struct {
	Type  types.String `tfsdk:"type"`
	Color types.String `tfsdk:"color"`
}

LensStaticColorModel is the shared static-color model for treemap and waffle ES|QL metrics.

type LensURLDrilldownTFModel

type LensURLDrilldownTFModel struct {
	URL          types.String `tfsdk:"url"`
	Label        types.String `tfsdk:"label"`
	Trigger      types.String `tfsdk:"trigger"`
	EncodeURL    types.Bool   `tfsdk:"encode_url"`
	OpenInNewTab types.Bool   `tfsdk:"open_in_new_tab"`
}

type MarkdownConfigByReferenceModel

type MarkdownConfigByReferenceModel struct {
	RefID       types.String `tfsdk:"ref_id"`
	Description types.String `tfsdk:"description"`
	HideTitle   types.Bool   `tfsdk:"hide_title"`
	Title       types.String `tfsdk:"title"`
	HideBorder  types.Bool   `tfsdk:"hide_border"`
}

type MarkdownConfigByValueModel

type MarkdownConfigByValueModel struct {
	Content     types.String                 `tfsdk:"content"`
	Settings    *MarkdownConfigSettingsModel `tfsdk:"settings"`
	Description types.String                 `tfsdk:"description"`
	HideTitle   types.Bool                   `tfsdk:"hide_title"`
	Title       types.String                 `tfsdk:"title"`
	HideBorder  types.Bool                   `tfsdk:"hide_border"`
}

type MarkdownConfigModel

type MarkdownConfigModel struct {
	ByValue     *MarkdownConfigByValueModel     `tfsdk:"by_value"`
	ByReference *MarkdownConfigByReferenceModel `tfsdk:"by_reference"`
}

type MarkdownConfigSettingsModel

type MarkdownConfigSettingsModel struct {
	OpenLinksInNewTab types.Bool `tfsdk:"open_links_in_new_tab"`
}

type MetricChartCoreTFModel

type MetricChartCoreTFModel struct {
	LensChartBaseTFModel
	Query           *FilterSimpleModel   `tfsdk:"query"`
	Metrics         []MetricItemModel    `tfsdk:"metrics"`
	BreakdownByJSON jsontypes.Normalized `tfsdk:"breakdown_by_json"`
}

type MetricItemModel

type MetricItemModel struct {
	ConfigJSON customtypes.JSONWithDefaultsValue[map[string]any] `tfsdk:"config_json"`
}

type MosaicConfigModel

type MosaicConfigModel struct {
	LensChartPresentationTFModel
	LensChartBaseTFModel
	Query            *FilterSimpleModel                                  `tfsdk:"query"`
	GroupBy          customtypes.JSONWithDefaultsValue[[]map[string]any] `tfsdk:"group_by_json"`
	GroupBreakdownBy customtypes.JSONWithDefaultsValue[[]map[string]any] `tfsdk:"group_breakdown_by_json"`
	Metrics          customtypes.JSONWithDefaultsValue[[]map[string]any] `tfsdk:"metrics_json"`
	Legend           *PartitionLegendModel                               `tfsdk:"legend"`
	ValueDisplay     *PartitionValueDisplay                              `tfsdk:"value_display"`
	EsqlMetrics      []MosaicEsqlMetric                                  `tfsdk:"esql_metrics"`
	EsqlGroupBy      []PartitionEsqlGroupByModel                         `tfsdk:"esql_group_by"`
}

type MosaicEsqlMetric

type MosaicEsqlMetric struct {
	Column     types.String         `tfsdk:"column"`
	Label      types.String         `tfsdk:"label"`
	FormatJSON jsontypes.Normalized `tfsdk:"format_json"`
}

type OptionsListControlConfigModel

type OptionsListControlConfigModel struct {
	DataViewID        types.String                            `tfsdk:"data_view_id"`
	FieldName         types.String                            `tfsdk:"field_name"`
	Title             types.String                            `tfsdk:"title"`
	UseGlobalFilters  types.Bool                              `tfsdk:"use_global_filters"`
	IgnoreValidations types.Bool                              `tfsdk:"ignore_validations"`
	SingleSelect      types.Bool                              `tfsdk:"single_select"`
	Exclude           types.Bool                              `tfsdk:"exclude"`
	ExistsSelected    types.Bool                              `tfsdk:"exists_selected"`
	RunPastTimeout    types.Bool                              `tfsdk:"run_past_timeout"`
	SearchTechnique   types.String                            `tfsdk:"search_technique"`
	SelectedOptions   types.List                              `tfsdk:"selected_options"`
	DisplaySettings   *OptionsListControlDisplaySettingsModel `tfsdk:"display_settings"`
	Sort              *OptionsListControlSortModel            `tfsdk:"sort"`
}

type OptionsListControlDisplaySettingsModel

type OptionsListControlDisplaySettingsModel struct {
	Placeholder   types.String `tfsdk:"placeholder"`
	HideActionBar types.Bool   `tfsdk:"hide_action_bar"`
	HideExclude   types.Bool   `tfsdk:"hide_exclude"`
	HideExists    types.Bool   `tfsdk:"hide_exists"`
	HideSort      types.Bool   `tfsdk:"hide_sort"`
}

type OptionsListControlSortModel

type OptionsListControlSortModel struct {
	By        types.String `tfsdk:"by"`
	Direction types.String `tfsdk:"direction"`
}

type OptionsModel

type OptionsModel struct {
	HidePanelTitles  types.Bool `tfsdk:"hide_panel_titles"`
	UseMargins       types.Bool `tfsdk:"use_margins"`
	SyncColors       types.Bool `tfsdk:"sync_colors"`
	SyncTooltips     types.Bool `tfsdk:"sync_tooltips"`
	SyncCursor       types.Bool `tfsdk:"sync_cursor"`
	AutoApplyFilters types.Bool `tfsdk:"auto_apply_filters"`
	HidePanelBorders types.Bool `tfsdk:"hide_panel_borders"`
}

type PanelGridModel

type PanelGridModel struct {
	X types.Int64 `tfsdk:"x"`
	Y types.Int64 `tfsdk:"y"`
	W types.Int64 `tfsdk:"w"`
	H types.Int64 `tfsdk:"h"`
}

type PanelModel

type PanelModel struct {
	Type                          types.String                                      `tfsdk:"type"`
	Grid                          PanelGridModel                                    `tfsdk:"grid"`
	ID                            types.String                                      `tfsdk:"id"`
	MarkdownConfig                *MarkdownConfigModel                              `tfsdk:"markdown_config"`
	TimeSliderControlConfig       *TimeSliderControlConfigModel                     `tfsdk:"time_slider_control_config"`
	SloBurnRateConfig             *SloBurnRateConfigModel                           `tfsdk:"slo_burn_rate_config"`
	SloOverviewConfig             *SloOverviewConfigModel                           `tfsdk:"slo_overview_config"`
	SloErrorBudgetConfig          *SloErrorBudgetConfigModel                        `tfsdk:"slo_error_budget_config"`
	EsqlControlConfig             *EsqlControlConfigModel                           `tfsdk:"esql_control_config"`
	OptionsListControlConfig      *OptionsListControlConfigModel                    `tfsdk:"options_list_control_config"`
	RangeSliderControlConfig      *RangeSliderControlConfigModel                    `tfsdk:"range_slider_control_config"`
	SyntheticsStatsOverviewConfig *SyntheticsStatsOverviewConfigModel               `tfsdk:"synthetics_stats_overview_config"`
	SyntheticsMonitorsConfig      *SyntheticsMonitorsConfigModel                    `tfsdk:"synthetics_monitors_config"`
	VisConfig                     *VisConfigModel                                   `tfsdk:"vis_config"`
	ImageConfig                   *ImagePanelConfigModel                            `tfsdk:"image_config"`
	SloAlertsConfig               *SloAlertsPanelConfigModel                        `tfsdk:"slo_alerts_config"`
	DiscoverSessionConfig         *DiscoverSessionPanelConfigModel                  `tfsdk:"discover_session_config"`
	ConfigJSON                    customtypes.JSONWithDefaultsValue[map[string]any] `tfsdk:"config_json"`
}

type PartitionEsqlGroupByModel added in v0.16.2

type PartitionEsqlGroupByModel struct {
	Column     types.String         `tfsdk:"column"`
	CollapseBy types.String         `tfsdk:"collapse_by"`
	ColorJSON  jsontypes.Normalized `tfsdk:"color_json"`
	FormatJSON jsontypes.Normalized `tfsdk:"format_json"`
	Label      types.String         `tfsdk:"label"`
}

PartitionEsqlGroupByModel is the shared ES|QL group-by model for mosaic, treemap, and waffle.

type PartitionLegendModel

type PartitionLegendModel struct {
	Nested            types.Bool   `tfsdk:"nested"`
	Size              types.String `tfsdk:"size"`
	TruncateAfterLine types.Int64  `tfsdk:"truncate_after_lines"`
	Visible           types.String `tfsdk:"visible"`
}

type PartitionValueDisplay

type PartitionValueDisplay struct {
	Mode            types.String  `tfsdk:"mode"`
	PercentDecimals types.Float64 `tfsdk:"percent_decimals"`
}

type PieChartConfigModel

type PieChartConfigModel struct {
	LensChartPresentationTFModel
	LensChartBaseTFModel
	DonutHole     types.String          `tfsdk:"donut_hole"`
	LabelPosition types.String          `tfsdk:"label_position"`
	Legend        *PartitionLegendModel `tfsdk:"legend"`
	Query         *FilterSimpleModel    `tfsdk:"query"`
	Metrics       []PieMetricModel      `tfsdk:"metrics"`
	GroupBy       []PieGroupByModel     `tfsdk:"group_by"`
}

type PieGroupByModel

type PieGroupByModel struct {
	Config customtypes.JSONWithDefaultsValue[map[string]any] `tfsdk:"config_json"`
}

type PieMetricModel

type PieMetricModel struct {
	Config customtypes.JSONWithDefaultsValue[map[string]any] `tfsdk:"config_json"`
}

type PinnedPanelModel

type PinnedPanelModel struct {
	Type                     types.String                   `tfsdk:"type"`
	TimeSliderControlConfig  *TimeSliderControlConfigModel  `tfsdk:"time_slider_control_config"`
	EsqlControlConfig        *EsqlControlConfigModel        `tfsdk:"esql_control_config"`
	OptionsListControlConfig *OptionsListControlConfigModel `tfsdk:"options_list_control_config"`
	RangeSliderControlConfig *RangeSliderControlConfigModel `tfsdk:"range_slider_control_config"`
}

func (PinnedPanelModel) SyntheticPanel

func (pp PinnedPanelModel) SyntheticPanel() PanelModel

SyntheticPanel maps a pinned control-bar entry onto the subset of PanelModel shared with dashboard panels so the control FromAPI helpers can populate typed config without importing the dashboard package.

type RangeSliderControlConfigModel

type RangeSliderControlConfigModel struct {
	Title             types.String  `tfsdk:"title"`
	DataViewID        types.String  `tfsdk:"data_view_id"`
	FieldName         types.String  `tfsdk:"field_name"`
	UseGlobalFilters  types.Bool    `tfsdk:"use_global_filters"`
	IgnoreValidations types.Bool    `tfsdk:"ignore_validations"`
	Value             types.List    `tfsdk:"value"`
	Step              types.Float32 `tfsdk:"step"`
}

type ReferenceLineLayerModel

type ReferenceLineLayerModel struct {
	DataSourceJSON      jsontypes.Normalized `tfsdk:"data_source_json"`
	IgnoreGlobalFilters types.Bool           `tfsdk:"ignore_global_filters"`
	Sampling            types.Float64        `tfsdk:"sampling"`
	Thresholds          []ThresholdModel     `tfsdk:"thresholds"`
}

type RefreshIntervalModel

type RefreshIntervalModel struct {
	Pause types.Bool  `tfsdk:"pause"`
	Value types.Int64 `tfsdk:"value"`
}

type RegionMapConfigModel

type RegionMapConfigModel struct {
	LensChartPresentationTFModel
	LensChartBaseTFModel
	Query      *FilterSimpleModel                                `tfsdk:"query"`
	MetricJSON customtypes.JSONWithDefaultsValue[map[string]any] `tfsdk:"metric_json"`
	RegionJSON jsontypes.Normalized                              `tfsdk:"region_json"`
}

type SectionGridModel

type SectionGridModel struct {
	Y types.Int64 `tfsdk:"y"`
}

type SectionModel

type SectionModel struct {
	Title     types.String     `tfsdk:"title"`
	ID        types.String     `tfsdk:"id"`
	Collapsed types.Bool       `tfsdk:"collapsed"`
	Grid      SectionGridModel `tfsdk:"grid"`
	Panels    []PanelModel     `tfsdk:"panels"`
}

type SloAlertsPanelConfigModel

type SloAlertsPanelConfigModel struct {
	Slos        []SloAlertsPanelSloModel `tfsdk:"slos"`
	Title       types.String             `tfsdk:"title"`
	Description types.String             `tfsdk:"description"`
	HideTitle   types.Bool               `tfsdk:"hide_title"`
	HideBorder  types.Bool               `tfsdk:"hide_border"`
	Drilldowns  []URLDrilldownModel      `tfsdk:"drilldowns"`
}

type SloAlertsPanelSloModel

type SloAlertsPanelSloModel struct {
	SloID         types.String `tfsdk:"slo_id"`
	SloInstanceID types.String `tfsdk:"slo_instance_id"`
}

type SloBurnRateConfigModel

type SloBurnRateConfigModel struct {
	SloID         types.String        `tfsdk:"slo_id"`
	Duration      types.String        `tfsdk:"duration"`
	SloInstanceID types.String        `tfsdk:"slo_instance_id"`
	Title         types.String        `tfsdk:"title"`
	Description   types.String        `tfsdk:"description"`
	HideTitle     types.Bool          `tfsdk:"hide_title"`
	HideBorder    types.Bool          `tfsdk:"hide_border"`
	Drilldowns    []URLDrilldownModel `tfsdk:"drilldowns"`
}

type SloErrorBudgetConfigModel

type SloErrorBudgetConfigModel struct {
	SloID         types.String        `tfsdk:"slo_id"`
	SloInstanceID types.String        `tfsdk:"slo_instance_id"`
	Title         types.String        `tfsdk:"title"`
	Description   types.String        `tfsdk:"description"`
	HideTitle     types.Bool          `tfsdk:"hide_title"`
	HideBorder    types.Bool          `tfsdk:"hide_border"`
	Drilldowns    []URLDrilldownModel `tfsdk:"drilldowns"`
}

type SloGroupFiltersModel

type SloGroupFiltersModel struct {
	GroupBy     types.String         `tfsdk:"group_by"`
	Groups      []types.String       `tfsdk:"groups"`
	KQLQuery    types.String         `tfsdk:"kql_query"`
	FiltersJSON jsontypes.Normalized `tfsdk:"filters_json"`
}

type SloOverviewConfigModel

type SloOverviewConfigModel struct {
	Single *SloOverviewSingleModel `tfsdk:"single"`
	Groups *SloOverviewGroupsModel `tfsdk:"groups"`
}

type SloOverviewGroupsModel

type SloOverviewGroupsModel struct {
	Title        types.String          `tfsdk:"title"`
	Description  types.String          `tfsdk:"description"`
	HideTitle    types.Bool            `tfsdk:"hide_title"`
	HideBorder   types.Bool            `tfsdk:"hide_border"`
	Drilldowns   []URLDrilldownModel   `tfsdk:"drilldowns"`
	GroupFilters *SloGroupFiltersModel `tfsdk:"group_filters"`
}

type SloOverviewSingleModel

type SloOverviewSingleModel struct {
	SloID         types.String        `tfsdk:"slo_id"`
	SloInstanceID types.String        `tfsdk:"slo_instance_id"`
	RemoteName    types.String        `tfsdk:"remote_name"`
	Title         types.String        `tfsdk:"title"`
	Description   types.String        `tfsdk:"description"`
	HideTitle     types.Bool          `tfsdk:"hide_title"`
	HideBorder    types.Bool          `tfsdk:"hide_border"`
	Drilldowns    []URLDrilldownModel `tfsdk:"drilldowns"`
}

type SyntheticsFilterItemModel

type SyntheticsFilterItemModel struct {
	Label types.String `tfsdk:"label"`
	Value types.String `tfsdk:"value"`
}

type SyntheticsFiltersModel

type SyntheticsFiltersModel struct {
	Projects     []SyntheticsFilterItemModel `tfsdk:"projects"`
	Tags         []SyntheticsFilterItemModel `tfsdk:"tags"`
	MonitorIDs   []SyntheticsFilterItemModel `tfsdk:"monitor_ids"`
	Locations    []SyntheticsFilterItemModel `tfsdk:"locations"`
	MonitorTypes []SyntheticsFilterItemModel `tfsdk:"monitor_types"`
}

type SyntheticsMonitorsConfigModel

type SyntheticsMonitorsConfigModel struct {
	Title       types.String            `tfsdk:"title"`
	Description types.String            `tfsdk:"description"`
	HideTitle   types.Bool              `tfsdk:"hide_title"`
	HideBorder  types.Bool              `tfsdk:"hide_border"`
	View        types.String            `tfsdk:"view"`
	Filters     *SyntheticsFiltersModel `tfsdk:"filters"`
}

type SyntheticsStatsOverviewConfigModel

type SyntheticsStatsOverviewConfigModel struct {
	Title       types.String            `tfsdk:"title"`
	Description types.String            `tfsdk:"description"`
	HideTitle   types.Bool              `tfsdk:"hide_title"`
	HideBorder  types.Bool              `tfsdk:"hide_border"`
	Drilldowns  []URLDrilldownModel     `tfsdk:"drilldowns"`
	Filters     *SyntheticsFiltersModel `tfsdk:"filters"`
}

type TagcloudConfigModel

type TagcloudConfigModel struct {
	LensChartPresentationTFModel
	LensChartBaseTFModel
	Query       *FilterSimpleModel                                `tfsdk:"query"`
	Orientation types.String                                      `tfsdk:"orientation"`
	FontSize    *FontSizeModel                                    `tfsdk:"font_size"`
	MetricJSON  customtypes.JSONWithDefaultsValue[map[string]any] `tfsdk:"metric_json"`
	TagByJSON   customtypes.JSONWithDefaultsValue[map[string]any] `tfsdk:"tag_by_json"`
	EsqlMetric  *TagcloudEsqlMetric                               `tfsdk:"esql_metric"`
	EsqlTagBy   *TagcloudEsqlTagBy                                `tfsdk:"esql_tag_by"`
}

type TagcloudEsqlMetric

type TagcloudEsqlMetric struct {
	Column     types.String         `tfsdk:"column"`
	FormatJSON jsontypes.Normalized `tfsdk:"format_json"`
	Label      types.String         `tfsdk:"label"`
}

type TagcloudEsqlTagBy

type TagcloudEsqlTagBy struct {
	Column     types.String         `tfsdk:"column"`
	FormatJSON jsontypes.Normalized `tfsdk:"format_json"`
	ColorJSON  jsontypes.Normalized `tfsdk:"color_json"`
	Label      types.String         `tfsdk:"label"`
}

type ThresholdModel

type ThresholdModel struct {
	Axis        types.String         `tfsdk:"axis"`
	ColorJSON   jsontypes.Normalized `tfsdk:"color_json"`
	Column      types.String         `tfsdk:"column"`
	ValueJSON   jsontypes.Normalized `tfsdk:"value_json"`
	Fill        types.String         `tfsdk:"fill"`
	Icon        types.String         `tfsdk:"icon"`
	Operation   types.String         `tfsdk:"operation"`
	StrokeDash  types.String         `tfsdk:"stroke_dash"`
	StrokeWidth types.Float64        `tfsdk:"stroke_width"`
	Text        types.String         `tfsdk:"text"`
}

type TimeRangeModel

type TimeRangeModel struct {
	From types.String `tfsdk:"from"`
	To   types.String `tfsdk:"to"`
	Mode types.String `tfsdk:"mode"`
}

type TimeSliderControlConfigModel

type TimeSliderControlConfigModel struct {
	StartPercentageOfTimeRange types.Float32 `tfsdk:"start_percentage_of_time_range"`
	EndPercentageOfTimeRange   types.Float32 `tfsdk:"end_percentage_of_time_range"`
	IsAnchored                 types.Bool    `tfsdk:"is_anchored"`
}

type TreemapConfigModel

type TreemapConfigModel struct {
	LensChartPresentationTFModel
	LensChartBaseTFModel
	Query        *FilterSimpleModel                                  `tfsdk:"query"`
	GroupBy      customtypes.JSONWithDefaultsValue[[]map[string]any] `tfsdk:"group_by_json"`
	Metrics      customtypes.JSONWithDefaultsValue[[]map[string]any] `tfsdk:"metrics_json"`
	Legend       *PartitionLegendModel                               `tfsdk:"legend"`
	ValueDisplay *PartitionValueDisplay                              `tfsdk:"value_display"`
	EsqlMetrics  []TreemapEsqlMetric                                 `tfsdk:"esql_metrics"`
	EsqlGroupBy  []PartitionEsqlGroupByModel                         `tfsdk:"esql_group_by"`
}

type TreemapEsqlMetric

type TreemapEsqlMetric struct {
	Column     types.String          `tfsdk:"column"`
	Label      types.String          `tfsdk:"label"`
	FormatJSON jsontypes.Normalized  `tfsdk:"format_json"`
	Color      *LensStaticColorModel `tfsdk:"color"`
}

type URLDrilldownModel

type URLDrilldownModel struct {
	URL          types.String `tfsdk:"url"`
	Label        types.String `tfsdk:"label"`
	EncodeURL    types.Bool   `tfsdk:"encode_url"`
	OpenInNewTab types.Bool   `tfsdk:"open_in_new_tab"`
}

type VisByReferenceModel

type VisByReferenceModel struct {
	RefID          types.String         `tfsdk:"ref_id"`
	ReferencesJSON jsontypes.Normalized `tfsdk:"references_json"`
	Title          types.String         `tfsdk:"title"`
	Description    types.String         `tfsdk:"description"`
	HideTitle      types.Bool           `tfsdk:"hide_title"`
	HideBorder     types.Bool           `tfsdk:"hide_border"`
	Drilldowns     DrilldownsModel      `tfsdk:"drilldowns"`
	TimeRange      *TimeRangeModel      `tfsdk:"time_range"`
}

type VisByValueModel

type VisByValueModel struct {
	LensByValueChartBlocks
}

type VisConfigModel

type VisConfigModel struct {
	ByValue     *VisByValueModel     `tfsdk:"by_value"`
	ByReference *VisByReferenceModel `tfsdk:"by_reference"`
}

type WaffleConfigModel

type WaffleConfigModel struct {
	LensChartPresentationTFModel
	LensChartBaseTFModel
	Query        *FilterSimpleModel          `tfsdk:"query"`
	Legend       *WaffleLegendModel          `tfsdk:"legend"`
	ValueDisplay *PartitionValueDisplay      `tfsdk:"value_display"`
	Metrics      []WaffleDSLMetric           `tfsdk:"metrics"`
	GroupBy      []WaffleDSLGroupBy          `tfsdk:"group_by"`
	EsqlMetrics  []WaffleEsqlMetric          `tfsdk:"esql_metrics"`
	EsqlGroupBy  []PartitionEsqlGroupByModel `tfsdk:"esql_group_by"`
}

type WaffleDSLGroupBy

type WaffleDSLGroupBy struct {
	Config customtypes.JSONWithDefaultsValue[map[string]any] `tfsdk:"config_json"`
}

type WaffleDSLMetric

type WaffleDSLMetric struct {
	Config customtypes.JSONWithDefaultsValue[map[string]any] `tfsdk:"config_json"`
}

type WaffleEsqlMetric

type WaffleEsqlMetric struct {
	Column     types.String          `tfsdk:"column"`
	Label      types.String          `tfsdk:"label"`
	FormatJSON jsontypes.Normalized  `tfsdk:"format_json"`
	Color      *LensStaticColorModel `tfsdk:"color"`
}

type WaffleLegendModel

type WaffleLegendModel struct {
	Size               types.String `tfsdk:"size"`
	TruncateAfterLines types.Int64  `tfsdk:"truncate_after_lines"`
	Values             types.List   `tfsdk:"values"`
	Visible            types.String `tfsdk:"visible"`
}

type XYAxisConfigModel

type XYAxisConfigModel struct {
	Title            *AxisTitleModel      `tfsdk:"title"`
	Ticks            types.Bool           `tfsdk:"ticks"`
	Grid             types.Bool           `tfsdk:"grid"`
	LabelOrientation types.String         `tfsdk:"label_orientation"`
	Scale            types.String         `tfsdk:"scale"`
	DomainJSON       jsontypes.Normalized `tfsdk:"domain_json"`
}

type XYAxisModel

type XYAxisModel struct {
	X  *XYAxisConfigModel `tfsdk:"x"`
	Y  *YAxisConfigModel  `tfsdk:"y"`
	Y2 *YAxisConfigModel  `tfsdk:"y2"`
}

type XYChartConfigModel

type XYChartConfigModel struct {
	LensChartPresentationTFModel
	Title       types.String           `tfsdk:"title"`
	Description types.String           `tfsdk:"description"`
	Axis        *XYAxisModel           `tfsdk:"axis"`
	Decorations *XYDecorationsModel    `tfsdk:"decorations"`
	Fitting     *XYFittingModel        `tfsdk:"fitting"`
	Layers      []XYLayerModel         `tfsdk:"layers"`
	Legend      *XYLegendModel         `tfsdk:"legend"`
	Query       *FilterSimpleModel     `tfsdk:"query"`
	Filters     []ChartFilterJSONModel `tfsdk:"filters"`
}

type XYDecorationsModel

type XYDecorationsModel struct {
	ShowEndZones          types.Bool    `tfsdk:"show_end_zones"`
	ShowCurrentTimeMarker types.Bool    `tfsdk:"show_current_time_marker"`
	PointVisibility       types.String  `tfsdk:"point_visibility"`
	LineInterpolation     types.String  `tfsdk:"line_interpolation"`
	MinimumBarHeight      types.Int64   `tfsdk:"minimum_bar_height"`
	ShowValueLabels       types.Bool    `tfsdk:"show_value_labels"`
	FillOpacity           types.Float64 `tfsdk:"fill_opacity"`
}

type XYFittingModel

type XYFittingModel struct {
	Type     types.String `tfsdk:"type"`
	Dotted   types.Bool   `tfsdk:"dotted"`
	EndValue types.String `tfsdk:"end_value"`
}

type XYLayerModel

type XYLayerModel struct {
	Type               types.String             `tfsdk:"type"`
	DataLayer          *DataLayerModel          `tfsdk:"data_layer"`
	ReferenceLineLayer *ReferenceLineLayerModel `tfsdk:"reference_line_layer"`
}

type XYLegendModel

type XYLegendModel struct {
	Visibility         types.String `tfsdk:"visibility"`
	Statistics         types.List   `tfsdk:"statistics"`
	TruncateAfterLines types.Int64  `tfsdk:"truncate_after_lines"`
	Inside             types.Bool   `tfsdk:"inside"`
	Position           types.String `tfsdk:"position"`
	Size               types.String `tfsdk:"size"`
	Columns            types.Int64  `tfsdk:"columns"`
	Alignment          types.String `tfsdk:"alignment"`
}

type YAxisConfigModel

type YAxisConfigModel struct {
	Title            *AxisTitleModel      `tfsdk:"title"`
	Ticks            types.Bool           `tfsdk:"ticks"`
	Grid             types.Bool           `tfsdk:"grid"`
	LabelOrientation types.String         `tfsdk:"label_orientation"`
	Scale            types.String         `tfsdk:"scale"`
	DomainJSON       jsontypes.Normalized `tfsdk:"domain_json"`
}

type YMetricModel

type YMetricModel struct {
	ConfigJSON jsontypes.Normalized `tfsdk:"config_json"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL