From 9b01974194c6d48195c7d9e2c5417e79725ec885 Mon Sep 17 00:00:00 2001 From: "api-clients-generation-pipeline[bot]" <54105614+api-clients-generation-pipeline[bot]@users.noreply.github.com> Date: Mon, 6 Nov 2023 16:23:09 +0000 Subject: [PATCH] Document top list widget style (#1733) * Regenerate client from commit c1794418 of spec repo * pre-commit fixes --------- Co-authored-by: ci.datadog-api-spec --- .apigentools-info | 8 +- .generator/schemas/v1/openapi.yaml | 73 +++++++++++++++++++ docs/datadog_api_client.v1.model.rst | 56 ++++++++++++++ .../dashboards/CreateDashboard_1213075383.py | 12 +++ .../v1/model/toplist_widget_definition.py | 10 +++ .../v1/model/toplist_widget_display.py | 43 +++++++++++ .../v1/model/toplist_widget_flat.py | 40 ++++++++++ .../v1/model/toplist_widget_flat_type.py | 35 +++++++++ .../v1/model/toplist_widget_legend.py | 41 +++++++++++ .../v1/model/toplist_widget_scaling.py | 38 ++++++++++ .../v1/model/toplist_widget_stacked.py | 48 ++++++++++++ .../v1/model/toplist_widget_stacked_type.py | 35 +++++++++ .../v1/model/toplist_widget_style.py | 58 +++++++++++++++ src/datadog_api_client/v1/models/__init__.py | 16 ++++ ...a_new_dashboard_with_toplist_widget.frozen | 2 +- ...e_a_new_dashboard_with_toplist_widget.yaml | 16 ++-- .../toplist_widget.json | 9 ++- 17 files changed, 528 insertions(+), 12 deletions(-) create mode 100644 src/datadog_api_client/v1/model/toplist_widget_display.py create mode 100644 src/datadog_api_client/v1/model/toplist_widget_flat.py create mode 100644 src/datadog_api_client/v1/model/toplist_widget_flat_type.py create mode 100644 src/datadog_api_client/v1/model/toplist_widget_legend.py create mode 100644 src/datadog_api_client/v1/model/toplist_widget_scaling.py create mode 100644 src/datadog_api_client/v1/model/toplist_widget_stacked.py create mode 100644 src/datadog_api_client/v1/model/toplist_widget_stacked_type.py create mode 100644 src/datadog_api_client/v1/model/toplist_widget_style.py diff --git a/.apigentools-info b/.apigentools-info index af40d7c93f..009264cbba 100644 --- a/.apigentools-info +++ b/.apigentools-info @@ -4,13 +4,13 @@ "spec_versions": { "v1": { "apigentools_version": "1.6.6", - "regenerated": "2023-11-03 08:42:28.004910", - "spec_repo_commit": "73969482" + "regenerated": "2023-11-06 14:30:03.814912", + "spec_repo_commit": "c1794418" }, "v2": { "apigentools_version": "1.6.6", - "regenerated": "2023-11-03 08:42:28.019072", - "spec_repo_commit": "73969482" + "regenerated": "2023-11-06 14:30:03.837958", + "spec_repo_commit": "c1794418" } } } \ No newline at end of file diff --git a/.generator/schemas/v1/openapi.yaml b/.generator/schemas/v1/openapi.yaml index 970a3b79c3..ca6ad715c3 100644 --- a/.generator/schemas/v1/openapi.yaml +++ b/.generator/schemas/v1/openapi.yaml @@ -16097,6 +16097,8 @@ components: items: $ref: '#/components/schemas/ToplistWidgetRequest' type: array + style: + $ref: '#/components/schemas/ToplistWidgetStyle' time: $ref: '#/components/schemas/WidgetTime' title: @@ -16122,6 +16124,40 @@ components: type: string x-enum-varnames: - TOPLIST + ToplistWidgetDisplay: + description: Top list widget display options. + oneOf: + - $ref: '#/components/schemas/ToplistWidgetStacked' + - $ref: '#/components/schemas/ToplistWidgetFlat' + ToplistWidgetFlat: + description: Top list widget flat display. + properties: + type: + $ref: '#/components/schemas/ToplistWidgetFlatType' + required: + - type + type: object + ToplistWidgetFlatType: + default: flat + description: Top list widget flat display type. + enum: + - flat + example: flat + type: string + x-enum-varnames: + - FLAT + ToplistWidgetLegend: + description: Top list widget stacked legend behavior. + enum: + - automatic + - inline + - none + example: automatic + type: string + x-enum-varnames: + - AUTOMATIC + - INLINE + - NONE ToplistWidgetRequest: description: Updated top list widget. properties: @@ -16171,6 +16207,43 @@ components: style: $ref: '#/components/schemas/WidgetRequestStyle' type: object + ToplistWidgetScaling: + description: Top list widget scaling definition. + enum: + - absolute + - relative + type: string + x-enum-varnames: + - ABSOLUTE + - RELATIVE + ToplistWidgetStacked: + description: Top list widget stacked display options. + properties: + legend: + $ref: '#/components/schemas/ToplistWidgetLegend' + type: + $ref: '#/components/schemas/ToplistWidgetStackedType' + required: + - type + - legend + type: object + ToplistWidgetStackedType: + default: stacked + description: Top list widget stacked display type. + enum: + - stacked + example: stacked + type: string + x-enum-varnames: + - STACKED + ToplistWidgetStyle: + description: Style customization for a top list widget. + properties: + display: + $ref: '#/components/schemas/ToplistWidgetDisplay' + scaling: + $ref: '#/components/schemas/ToplistWidgetScaling' + type: object TopologyMapWidgetDefinition: description: This widget displays a topology of nodes and edges for different data sources. It replaces the service map widget. diff --git a/docs/datadog_api_client.v1.model.rst b/docs/datadog_api_client.v1.model.rst index 3510ab0434..c673f82c0f 100644 --- a/docs/datadog_api_client.v1.model.rst +++ b/docs/datadog_api_client.v1.model.rst @@ -4747,6 +4747,34 @@ toplist\_widget\_definition\_type :members: :show-inheritance: +toplist\_widget\_display +------------------------ + +.. automodule:: datadog_api_client.v1.model.toplist_widget_display + :members: + :show-inheritance: + +toplist\_widget\_flat +--------------------- + +.. automodule:: datadog_api_client.v1.model.toplist_widget_flat + :members: + :show-inheritance: + +toplist\_widget\_flat\_type +--------------------------- + +.. automodule:: datadog_api_client.v1.model.toplist_widget_flat_type + :members: + :show-inheritance: + +toplist\_widget\_legend +----------------------- + +.. automodule:: datadog_api_client.v1.model.toplist_widget_legend + :members: + :show-inheritance: + toplist\_widget\_request ------------------------ @@ -4754,6 +4782,34 @@ toplist\_widget\_request :members: :show-inheritance: +toplist\_widget\_scaling +------------------------ + +.. automodule:: datadog_api_client.v1.model.toplist_widget_scaling + :members: + :show-inheritance: + +toplist\_widget\_stacked +------------------------ + +.. automodule:: datadog_api_client.v1.model.toplist_widget_stacked + :members: + :show-inheritance: + +toplist\_widget\_stacked\_type +------------------------------ + +.. automodule:: datadog_api_client.v1.model.toplist_widget_stacked_type + :members: + :show-inheritance: + +toplist\_widget\_style +---------------------- + +.. automodule:: datadog_api_client.v1.model.toplist_widget_style + :members: + :show-inheritance: + topology\_map\_widget\_definition --------------------------------- diff --git a/examples/v1/dashboards/CreateDashboard_1213075383.py b/examples/v1/dashboards/CreateDashboard_1213075383.py index 4a5cadf10a..31a1ff8eb3 100644 --- a/examples/v1/dashboards/CreateDashboard_1213075383.py +++ b/examples/v1/dashboards/CreateDashboard_1213075383.py @@ -15,7 +15,12 @@ from datadog_api_client.v1.model.query_sort_order import QuerySortOrder from datadog_api_client.v1.model.toplist_widget_definition import ToplistWidgetDefinition from datadog_api_client.v1.model.toplist_widget_definition_type import ToplistWidgetDefinitionType +from datadog_api_client.v1.model.toplist_widget_legend import ToplistWidgetLegend from datadog_api_client.v1.model.toplist_widget_request import ToplistWidgetRequest +from datadog_api_client.v1.model.toplist_widget_scaling import ToplistWidgetScaling +from datadog_api_client.v1.model.toplist_widget_stacked import ToplistWidgetStacked +from datadog_api_client.v1.model.toplist_widget_stacked_type import ToplistWidgetStackedType +from datadog_api_client.v1.model.toplist_widget_style import ToplistWidgetStyle from datadog_api_client.v1.model.widget import Widget from datadog_api_client.v1.model.widget_formula import WidgetFormula from datadog_api_client.v1.model.widget_formula_limit import WidgetFormulaLimit @@ -39,6 +44,13 @@ title_size="16", title_align=WidgetTextAlign.LEFT, time=WidgetTime(), + style=ToplistWidgetStyle( + display=ToplistWidgetStacked( + type=ToplistWidgetStackedType.STACKED, + legend=ToplistWidgetLegend.INLINE, + ), + scaling=ToplistWidgetScaling.RELATIVE, + ), type=ToplistWidgetDefinitionType.TOPLIST, requests=[ ToplistWidgetRequest( diff --git a/src/datadog_api_client/v1/model/toplist_widget_definition.py b/src/datadog_api_client/v1/model/toplist_widget_definition.py index 3500b72714..2159760157 100644 --- a/src/datadog_api_client/v1/model/toplist_widget_definition.py +++ b/src/datadog_api_client/v1/model/toplist_widget_definition.py @@ -16,6 +16,7 @@ if TYPE_CHECKING: from datadog_api_client.v1.model.widget_custom_link import WidgetCustomLink from datadog_api_client.v1.model.toplist_widget_request import ToplistWidgetRequest + from datadog_api_client.v1.model.toplist_widget_style import ToplistWidgetStyle from datadog_api_client.v1.model.widget_time import WidgetTime from datadog_api_client.v1.model.widget_text_align import WidgetTextAlign from datadog_api_client.v1.model.toplist_widget_definition_type import ToplistWidgetDefinitionType @@ -26,6 +27,7 @@ class ToplistWidgetDefinition(ModelNormal): def openapi_types(_): from datadog_api_client.v1.model.widget_custom_link import WidgetCustomLink from datadog_api_client.v1.model.toplist_widget_request import ToplistWidgetRequest + from datadog_api_client.v1.model.toplist_widget_style import ToplistWidgetStyle from datadog_api_client.v1.model.widget_time import WidgetTime from datadog_api_client.v1.model.widget_text_align import WidgetTextAlign from datadog_api_client.v1.model.toplist_widget_definition_type import ToplistWidgetDefinitionType @@ -33,6 +35,7 @@ def openapi_types(_): return { "custom_links": ([WidgetCustomLink],), "requests": ([ToplistWidgetRequest],), + "style": (ToplistWidgetStyle,), "time": (WidgetTime,), "title": (str,), "title_align": (WidgetTextAlign,), @@ -43,6 +46,7 @@ def openapi_types(_): attribute_map = { "custom_links": "custom_links", "requests": "requests", + "style": "style", "time": "time", "title": "title", "title_align": "title_align", @@ -55,6 +59,7 @@ def __init__( requests: List[ToplistWidgetRequest], type: ToplistWidgetDefinitionType, custom_links: Union[List[WidgetCustomLink], UnsetType] = unset, + style: Union[ToplistWidgetStyle, UnsetType] = unset, time: Union[WidgetTime, UnsetType] = unset, title: Union[str, UnsetType] = unset, title_align: Union[WidgetTextAlign, UnsetType] = unset, @@ -70,6 +75,9 @@ def __init__( :param requests: List of top list widget requests. :type requests: [ToplistWidgetRequest] + :param style: Style customization for a top list widget. + :type style: ToplistWidgetStyle, optional + :param time: Time setting for the widget. :type time: WidgetTime, optional @@ -87,6 +95,8 @@ def __init__( """ if custom_links is not unset: kwargs["custom_links"] = custom_links + if style is not unset: + kwargs["style"] = style if time is not unset: kwargs["time"] = time if title is not unset: diff --git a/src/datadog_api_client/v1/model/toplist_widget_display.py b/src/datadog_api_client/v1/model/toplist_widget_display.py new file mode 100644 index 0000000000..083846f944 --- /dev/null +++ b/src/datadog_api_client/v1/model/toplist_widget_display.py @@ -0,0 +1,43 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + + +from datadog_api_client.model_utils import ( + ModelComposed, + cached_property, +) + + +class ToplistWidgetDisplay(ModelComposed): + def __init__(self, **kwargs): + """ + Top list widget display options. + + :param legend: Top list widget stacked legend behavior. + :type legend: ToplistWidgetLegend + + :param type: Top list widget stacked display type. + :type type: ToplistWidgetStackedType + """ + super().__init__(kwargs) + + @cached_property + def _composed_schemas(_): + # we need this here to make our import statements work + # we must store _composed_schemas in here so the code is only run + # when we invoke this method. If we kept this at the class + # level we would get an error because the class level + # code would be run when this module is imported, and these composed + # classes don't exist yet because their module has not finished + # loading + from datadog_api_client.v1.model.toplist_widget_stacked import ToplistWidgetStacked + from datadog_api_client.v1.model.toplist_widget_flat import ToplistWidgetFlat + + return { + "oneOf": [ + ToplistWidgetStacked, + ToplistWidgetFlat, + ], + } diff --git a/src/datadog_api_client/v1/model/toplist_widget_flat.py b/src/datadog_api_client/v1/model/toplist_widget_flat.py new file mode 100644 index 0000000000..4493ffaaa6 --- /dev/null +++ b/src/datadog_api_client/v1/model/toplist_widget_flat.py @@ -0,0 +1,40 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, +) + + +if TYPE_CHECKING: + from datadog_api_client.v1.model.toplist_widget_flat_type import ToplistWidgetFlatType + + +class ToplistWidgetFlat(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v1.model.toplist_widget_flat_type import ToplistWidgetFlatType + + return { + "type": (ToplistWidgetFlatType,), + } + + attribute_map = { + "type": "type", + } + + def __init__(self_, type: ToplistWidgetFlatType, **kwargs): + """ + Top list widget flat display. + + :param type: Top list widget flat display type. + :type type: ToplistWidgetFlatType + """ + super().__init__(kwargs) + + self_.type = type diff --git a/src/datadog_api_client/v1/model/toplist_widget_flat_type.py b/src/datadog_api_client/v1/model/toplist_widget_flat_type.py new file mode 100644 index 0000000000..c509b21643 --- /dev/null +++ b/src/datadog_api_client/v1/model/toplist_widget_flat_type.py @@ -0,0 +1,35 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + + +from datadog_api_client.model_utils import ( + ModelSimple, + cached_property, +) + +from typing import ClassVar + + +class ToplistWidgetFlatType(ModelSimple): + """ + Top list widget flat display type. + + :param value: If omitted defaults to "flat". Must be one of ["flat"]. + :type value: str + """ + + allowed_values = { + "flat", + } + FLAT: ClassVar["ToplistWidgetFlatType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +ToplistWidgetFlatType.FLAT = ToplistWidgetFlatType("flat") diff --git a/src/datadog_api_client/v1/model/toplist_widget_legend.py b/src/datadog_api_client/v1/model/toplist_widget_legend.py new file mode 100644 index 0000000000..f6940fbbc0 --- /dev/null +++ b/src/datadog_api_client/v1/model/toplist_widget_legend.py @@ -0,0 +1,41 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + + +from datadog_api_client.model_utils import ( + ModelSimple, + cached_property, +) + +from typing import ClassVar + + +class ToplistWidgetLegend(ModelSimple): + """ + Top list widget stacked legend behavior. + + :param value: Must be one of ["automatic", "inline", "none"]. + :type value: str + """ + + allowed_values = { + "automatic", + "inline", + "none", + } + AUTOMATIC: ClassVar["ToplistWidgetLegend"] + INLINE: ClassVar["ToplistWidgetLegend"] + NONE: ClassVar["ToplistWidgetLegend"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +ToplistWidgetLegend.AUTOMATIC = ToplistWidgetLegend("automatic") +ToplistWidgetLegend.INLINE = ToplistWidgetLegend("inline") +ToplistWidgetLegend.NONE = ToplistWidgetLegend("none") diff --git a/src/datadog_api_client/v1/model/toplist_widget_scaling.py b/src/datadog_api_client/v1/model/toplist_widget_scaling.py new file mode 100644 index 0000000000..d93a0a0404 --- /dev/null +++ b/src/datadog_api_client/v1/model/toplist_widget_scaling.py @@ -0,0 +1,38 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + + +from datadog_api_client.model_utils import ( + ModelSimple, + cached_property, +) + +from typing import ClassVar + + +class ToplistWidgetScaling(ModelSimple): + """ + Top list widget scaling definition. + + :param value: Must be one of ["absolute", "relative"]. + :type value: str + """ + + allowed_values = { + "absolute", + "relative", + } + ABSOLUTE: ClassVar["ToplistWidgetScaling"] + RELATIVE: ClassVar["ToplistWidgetScaling"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +ToplistWidgetScaling.ABSOLUTE = ToplistWidgetScaling("absolute") +ToplistWidgetScaling.RELATIVE = ToplistWidgetScaling("relative") diff --git a/src/datadog_api_client/v1/model/toplist_widget_stacked.py b/src/datadog_api_client/v1/model/toplist_widget_stacked.py new file mode 100644 index 0000000000..290508fed7 --- /dev/null +++ b/src/datadog_api_client/v1/model/toplist_widget_stacked.py @@ -0,0 +1,48 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, +) + + +if TYPE_CHECKING: + from datadog_api_client.v1.model.toplist_widget_legend import ToplistWidgetLegend + from datadog_api_client.v1.model.toplist_widget_stacked_type import ToplistWidgetStackedType + + +class ToplistWidgetStacked(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v1.model.toplist_widget_legend import ToplistWidgetLegend + from datadog_api_client.v1.model.toplist_widget_stacked_type import ToplistWidgetStackedType + + return { + "legend": (ToplistWidgetLegend,), + "type": (ToplistWidgetStackedType,), + } + + attribute_map = { + "legend": "legend", + "type": "type", + } + + def __init__(self_, legend: ToplistWidgetLegend, type: ToplistWidgetStackedType, **kwargs): + """ + Top list widget stacked display options. + + :param legend: Top list widget stacked legend behavior. + :type legend: ToplistWidgetLegend + + :param type: Top list widget stacked display type. + :type type: ToplistWidgetStackedType + """ + super().__init__(kwargs) + + self_.legend = legend + self_.type = type diff --git a/src/datadog_api_client/v1/model/toplist_widget_stacked_type.py b/src/datadog_api_client/v1/model/toplist_widget_stacked_type.py new file mode 100644 index 0000000000..4d3128c48e --- /dev/null +++ b/src/datadog_api_client/v1/model/toplist_widget_stacked_type.py @@ -0,0 +1,35 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + + +from datadog_api_client.model_utils import ( + ModelSimple, + cached_property, +) + +from typing import ClassVar + + +class ToplistWidgetStackedType(ModelSimple): + """ + Top list widget stacked display type. + + :param value: If omitted defaults to "stacked". Must be one of ["stacked"]. + :type value: str + """ + + allowed_values = { + "stacked", + } + STACKED: ClassVar["ToplistWidgetStackedType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +ToplistWidgetStackedType.STACKED = ToplistWidgetStackedType("stacked") diff --git a/src/datadog_api_client/v1/model/toplist_widget_style.py b/src/datadog_api_client/v1/model/toplist_widget_style.py new file mode 100644 index 0000000000..5e20f8b63e --- /dev/null +++ b/src/datadog_api_client/v1/model/toplist_widget_style.py @@ -0,0 +1,58 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v1.model.toplist_widget_display import ToplistWidgetDisplay + from datadog_api_client.v1.model.toplist_widget_scaling import ToplistWidgetScaling + from datadog_api_client.v1.model.toplist_widget_stacked import ToplistWidgetStacked + from datadog_api_client.v1.model.toplist_widget_flat import ToplistWidgetFlat + + +class ToplistWidgetStyle(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v1.model.toplist_widget_display import ToplistWidgetDisplay + from datadog_api_client.v1.model.toplist_widget_scaling import ToplistWidgetScaling + + return { + "display": (ToplistWidgetDisplay,), + "scaling": (ToplistWidgetScaling,), + } + + attribute_map = { + "display": "display", + "scaling": "scaling", + } + + def __init__( + self_, + display: Union[ToplistWidgetDisplay, ToplistWidgetStacked, ToplistWidgetFlat, UnsetType] = unset, + scaling: Union[ToplistWidgetScaling, UnsetType] = unset, + **kwargs, + ): + """ + Style customization for a top list widget. + + :param display: Top list widget display options. + :type display: ToplistWidgetDisplay, optional + + :param scaling: Top list widget scaling definition. + :type scaling: ToplistWidgetScaling, optional + """ + if display is not unset: + kwargs["display"] = display + if scaling is not unset: + kwargs["scaling"] = scaling + super().__init__(kwargs) diff --git a/src/datadog_api_client/v1/models/__init__.py b/src/datadog_api_client/v1/models/__init__.py index 3e373f7bd1..2691ce54db 100644 --- a/src/datadog_api_client/v1/models/__init__.py +++ b/src/datadog_api_client/v1/models/__init__.py @@ -777,7 +777,15 @@ from datadog_api_client.v1.model.timeseries_widget_request import TimeseriesWidgetRequest from datadog_api_client.v1.model.toplist_widget_definition import ToplistWidgetDefinition from datadog_api_client.v1.model.toplist_widget_definition_type import ToplistWidgetDefinitionType +from datadog_api_client.v1.model.toplist_widget_display import ToplistWidgetDisplay +from datadog_api_client.v1.model.toplist_widget_flat import ToplistWidgetFlat +from datadog_api_client.v1.model.toplist_widget_flat_type import ToplistWidgetFlatType +from datadog_api_client.v1.model.toplist_widget_legend import ToplistWidgetLegend from datadog_api_client.v1.model.toplist_widget_request import ToplistWidgetRequest +from datadog_api_client.v1.model.toplist_widget_scaling import ToplistWidgetScaling +from datadog_api_client.v1.model.toplist_widget_stacked import ToplistWidgetStacked +from datadog_api_client.v1.model.toplist_widget_stacked_type import ToplistWidgetStackedType +from datadog_api_client.v1.model.toplist_widget_style import ToplistWidgetStyle from datadog_api_client.v1.model.topology_map_widget_definition import TopologyMapWidgetDefinition from datadog_api_client.v1.model.topology_map_widget_definition_type import TopologyMapWidgetDefinitionType from datadog_api_client.v1.model.topology_query import TopologyQuery @@ -1626,7 +1634,15 @@ "TimeseriesWidgetRequest", "ToplistWidgetDefinition", "ToplistWidgetDefinitionType", + "ToplistWidgetDisplay", + "ToplistWidgetFlat", + "ToplistWidgetFlatType", + "ToplistWidgetLegend", "ToplistWidgetRequest", + "ToplistWidgetScaling", + "ToplistWidgetStacked", + "ToplistWidgetStackedType", + "ToplistWidgetStyle", "TopologyMapWidgetDefinition", "TopologyMapWidgetDefinitionType", "TopologyQuery", diff --git a/tests/v1/cassettes/test_scenarios/test_create_a_new_dashboard_with_toplist_widget.frozen b/tests/v1/cassettes/test_scenarios/test_create_a_new_dashboard_with_toplist_widget.frozen index fe01821d95..5402413b1c 100644 --- a/tests/v1/cassettes/test_scenarios/test_create_a_new_dashboard_with_toplist_widget.frozen +++ b/tests/v1/cassettes/test_scenarios/test_create_a_new_dashboard_with_toplist_widget.frozen @@ -1 +1 @@ -2022-01-06T00:50:42.009Z \ No newline at end of file +2023-10-26T08:09:58.883Z \ No newline at end of file diff --git a/tests/v1/cassettes/test_scenarios/test_create_a_new_dashboard_with_toplist_widget.yaml b/tests/v1/cassettes/test_scenarios/test_create_a_new_dashboard_with_toplist_widget.yaml index 0705750e6c..4ca57edcf7 100644 --- a/tests/v1/cassettes/test_scenarios/test_create_a_new_dashboard_with_toplist_widget.yaml +++ b/tests/v1/cassettes/test_scenarios/test_create_a_new_dashboard_with_toplist_widget.yaml @@ -1,7 +1,7 @@ interactions: - request: - body: '{"description":"","is_read_only":false,"layout_type":"free","notify_list":[],"template_variables":[],"title":"Test-Create_a_new_dashboard_with_toplist_widget-1641430242","widgets":[{"definition":{"requests":[{"formulas":[{"formula":"query1","limit":{"count":10,"order":"desc"}}],"queries":[{"aggregator":"avg","data_source":"metrics","name":"query1","query":"avg:system.cpu.user{*} - by {service}"}],"response_format":"scalar"}],"time":{},"title":"","title_align":"left","title_size":"16","type":"toplist"},"layout":{"height":15,"width":47,"x":0,"y":0}}]}' + body: '{"description":"","is_read_only":false,"layout_type":"free","notify_list":[],"template_variables":[],"title":"Test-Create_a_new_dashboard_with_toplist_widget-1698307798","widgets":[{"definition":{"requests":[{"formulas":[{"formula":"query1","limit":{"count":10,"order":"desc"}}],"queries":[{"aggregator":"avg","data_source":"metrics","name":"query1","query":"avg:system.cpu.user{*} + by {service}"}],"response_format":"scalar"}],"style":{"display":{"legend":"inline","type":"stacked"},"scaling":"relative"},"time":{},"title":"","title_align":"left","title_size":"16","type":"toplist"},"layout":{"height":15,"width":47,"x":0,"y":0}}]}' headers: accept: - application/json @@ -11,8 +11,10 @@ interactions: uri: https://api.datadoghq.com/api/v1/dashboard response: body: - string: '{"notify_list":[],"description":"","restricted_roles":[],"author_name":null,"template_variables":[],"is_read_only":false,"id":"d2b-542-pi3","title":"Test-Create_a_new_dashboard_with_toplist_widget-1641430242","url":"/dashboard/d2b-542-pi3/test-createanewdashboardwithtoplistwidget-1641430242","created_at":"2022-01-06T00:50:42.239967+00:00","modified_at":"2022-01-06T00:50:42.239967+00:00","author_handle":"frog@datadoghq.com","widgets":[{"definition":{"title_size":"16","title":"","title_align":"left","time":{},"requests":[{"formulas":[{"formula":"query1","limit":{"count":10,"order":"desc"}}],"response_format":"scalar","queries":[{"aggregator":"avg","data_source":"metrics","name":"query1","query":"avg:system.cpu.user{*} - by {service}"}]}],"type":"toplist"},"layout":{"y":0,"width":47,"x":0,"height":15},"id":7585713881554705}],"layout_type":"free"}' + string: '{"id":"bw8-fjj-cai","title":"Test-Create_a_new_dashboard_with_toplist_widget-1698307798","description":"","author_handle":"frog@datadoghq.com","author_name":null,"layout_type":"free","url":"/dashboard/bw8-fjj-cai/test-createanewdashboardwithtoplistwidget-1698307798","is_read_only":false,"template_variables":[],"widgets":[{"definition":{"requests":[{"formulas":[{"formula":"query1","limit":{"count":10,"order":"desc"}}],"queries":[{"aggregator":"avg","data_source":"metrics","name":"query1","query":"avg:system.cpu.user{*} + by {service}"}],"response_format":"scalar"}],"style":{"display":{"legend":"inline","type":"stacked"},"scaling":"relative"},"time":{},"title":"","title_align":"left","title_size":"16","type":"toplist"},"layout":{"height":15,"width":47,"x":0,"y":0},"id":7690286767696538}],"notify_list":[],"created_at":"2023-10-26T08:09:59.495981+00:00","modified_at":"2023-10-26T08:09:59.495981+00:00","restricted_roles":[]} + + ' headers: content-type: - application/json @@ -25,10 +27,12 @@ interactions: accept: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v1/dashboard/d2b-542-pi3 + uri: https://api.datadoghq.com/api/v1/dashboard/bw8-fjj-cai response: body: - string: '{"deleted_dashboard_id":"d2b-542-pi3"}' + string: '{"deleted_dashboard_id":"bw8-fjj-cai"} + + ' headers: content-type: - application/json diff --git a/tests/v1/features/dashboards_json_payload/toplist_widget.json b/tests/v1/features/dashboards_json_payload/toplist_widget.json index 9cb0760bd6..9bee1724c4 100644 --- a/tests/v1/features/dashboards_json_payload/toplist_widget.json +++ b/tests/v1/features/dashboards_json_payload/toplist_widget.json @@ -15,6 +15,13 @@ "title_align":"left", "time":{ + }, + "style":{ + "display": { + "type": "stacked", + "legend": "inline" + }, + "scaling": "relative" }, "type":"toplist", "requests":[ @@ -50,4 +57,4 @@ "notify_list":[ ] -} \ No newline at end of file +}