Пример #1
0
class DashboardOptions(PythonModel):
    @classmethod
    def registry(cls):
        return OptionsProperty

    @property
    @OptionsProperty.getter(
        nullable=False,
        default_value=DEFAULT_TITLE,
        value_validate_function=lambda value: assert_string(value, 'title'),
    )
    def title(self):
        return self.get('title')

    @title.setter
    @OptionsProperty.setter()
    def title(self, value):
        self['title'] = value

    @property
    @OptionsProperty.getter(
        nullable=False,
        default_value=DEFAULT_COLUMN_COUNT,
        value_validate_function=lambda value: assert_integer(
            value, 'column_count', MINIMUM_COLUMN_COUNT
        ),
    )
    def column_count(self):
        return self.get('columnCount')

    @column_count.setter
    @OptionsProperty.setter()
    def column_count(self, value):
        self['columnCount'] = value

    @property
    @OptionsProperty.getter(
        serialized_property_name='showDashboardFilterButton',
        nullable=False,
        default_value=DEFAULT_SHOW_FILTER_BUTTON,
        value_validate_function=lambda value: assert_boolean(
            value, 'show_filter_button'
        ),
    )
    def show_filter_button(self):
        return self.get('showDashboardFilterButton')

    @show_filter_button.setter
    @OptionsProperty.setter()
    def show_filter_button(self, value):
        self['showDashboardFilterButton'] = value
Пример #2
0
class LayoutItem(PythonModel):
    @classmethod
    def registry(cls):
        return LayoutItemProperty

    # TODO(vedant) - Come up with a proper structure for frontEndSelections
    # and/or filterModalSelections. Get rid of one of them since they have a
    # very similar structure.

    @property
    @LayoutItemProperty.getter(
        nullable=False,
        default_value=lambda: [],
        value_validate_function=lambda value: assert_non_string_iterable(
            value, 'custom_fields', validate_custom_field),
    )
    def custom_fields(self):
        return self.get('customFields')

    @custom_fields.setter
    @LayoutItemProperty.setter(
        value_parser_function=lambda custom_field_objects: [
            CustomField(custom_field_object)
            for custom_field_object in custom_field_objects
        ])
    def custom_fields(self, value):
        self['customFields'] = value

    @property
    @LayoutItemProperty.getter(
        nullable=False,
        default_value=lambda: {},
        value_validate_function=lambda value: assert_mapping(
            value, 'filter_modal_selections'),
    )
    def filter_modal_selections(self):
        return self.get('filterModalSelections')

    @filter_modal_selections.setter
    @LayoutItemProperty.setter()
    def filter_modal_selections(self, value):
        self['filterModalSelections'] = value

    @property
    @LayoutItemProperty.getter(
        serialized_property_name='frontendSelectionsFilter',
        nullable=False,
        default_value=lambda: {},
        value_validate_function=lambda value: assert_mapping(
            value, 'front_end_selections_filter'),
    )
    def front_end_selections_filter(self):
        return self.get('frontendSelectionsFilter')

    @front_end_selections_filter.setter
    @LayoutItemProperty.setter()
    def front_end_selections_filter(self, value):
        self['frontendSelectionsFilter'] = value

    @property
    @LayoutItemProperty.getter(
        nullable=False,
        value_validate_function=lambda value: assert_string(value, 'id'))
    def id(self):
        return self.get('id')

    @id.setter
    @LayoutItemProperty.setter()
    def id(self, value):
        self['id'] = value

    @property
    @LayoutItemProperty.getter(
        nullable=False,
        value_validate_function=lambda value: assert_string(value, 'query_id'),
    )
    def query_id(self):
        return self.get('queryId')

    @query_id.setter
    @LayoutItemProperty.setter()
    def query_id(self, value):
        self['queryId'] = value

    @property
    @LayoutItemProperty.getter(
        value_validate_function=lambda value: assert_string(value, 'name'))
    def name(self):
        return self.get('name')

    @name.setter
    @LayoutItemProperty.setter()
    def name(self, value):
        self['name'] = value

    @property
    @LayoutItemProperty.getter(
        nullable=False,
        default_value=DEFAULT_IS_ADVANCED_QUERY_ITEM,
        value_validate_function=lambda value: assert_boolean(
            value, 'is_advanced_query_item'),
    )
    def is_advanced_query_item(self):
        return self.get('isAdvancedQueryItem')

    @is_advanced_query_item.setter
    @LayoutItemProperty.setter()
    def is_advanced_query_item(self, value):
        self['isAdvancedQueryItem'] = value

    @property
    @LayoutItemProperty.getter(
        nullable=False,
        default_value=DEFAULT_IS_LOCKED,
        value_validate_function=lambda value: assert_boolean(
            value, 'is_locked'),
    )
    def is_locked(self):
        return self.get('isLocked')

    @is_locked.setter
    @LayoutItemProperty.setter()
    def is_locked(self, value):
        self['isLocked'] = value

    @property
    @LayoutItemProperty.getter(value_validate_function=lambda value:
                               assert_string(value, 'setting_id'))
    def setting_id(self):
        return self.get('settingId')

    @setting_id.setter
    @LayoutItemProperty.setter()
    def setting_id(self, value):
        self['settingId'] = value

    @property
    @LayoutItemProperty.getter(
        serialized_property_name='type',
        nullable=False,
        value_validate_function=lambda value: assert_type(
            value, VisualizationType, argument_name='item_type'),
        value_formatter_function=lambda value: value.name,
    )
    def item_type(self):
        return self.get('type')

    @item_type.setter
    @LayoutItemProperty.setter(
        value_parser_function=deserialize_visualization_type)
    def item_type(self, value):
        self['type'] = value

    @property
    @LayoutItemProperty.getter(
        nullable=False,
        value_validate_function=lambda value: assert_integer(
            value, 'upper_x', lower_bound=UPPER_X_LOWER_BOUND),
    )
    def upper_x(self):
        return self.get('upperX')

    @upper_x.setter
    @LayoutItemProperty.setter()
    def upper_x(self, value):
        self['upperX'] = value

    @property
    @LayoutItemProperty.getter(
        nullable=False,
        value_validate_function=lambda value: assert_integer(
            value, 'upper_x', lower_bound=UPPER_Y_LOWER_BOUND),
    )
    def upper_y(self):
        return self.get('upperY')

    @upper_y.setter
    @LayoutItemProperty.setter()
    def upper_y(self, value):
        self['upperY'] = value

    @property
    @LayoutItemProperty.getter(
        nullable=False,
        value_validate_function=lambda value: assert_string(value, 'size_id'),
    )
    def size_id(self):
        return self.get('sizeId')

    @size_id.setter
    @LayoutItemProperty.setter()
    def size_id(self, value):
        self['sizeId'] = value
Пример #3
0
class SeriesSettingsObject(PythonModel):
    def __init__(self, values=None):
        values = values or {}
        if not values.get('color'):
            # We want the generated colour to be stable as opposed to something
            # that changes for each property invocation
            values['color'] = generate_random_colour()
        super(SeriesSettingsObject, self).__init__(values)

    @classmethod
    def registry(cls):
        return SeriesObjectProperty

    @property
    @SeriesObjectProperty.getter(
        nullable=False,
        value_validate_function=lambda value: assert_string(
            value, 'color', COLOR_PATTERN
        ),
    )
    def color(self):
        # TODO(vedant) - Replace all the misspelled references to 'color' with
        # the proper spelling of 'colour'. (TONGUE IN CHEEK, DON'T TAKE
        # LITERALLY)
        return self.get('color')

    @color.setter
    @SeriesObjectProperty.setter()
    def color(self, value):
        self['color'] = value

    @property
    @SeriesObjectProperty.getter(
        nullable=False,
        default_value=DEFAULT_SERIES_DATA_LABEL_FONT_SIZE,
        value_validate_function=lambda value: assert_font_size(
            value, 'data_label_font_size'
        ),
    )
    def data_label_font_size(self):
        return self.get('dataLabelFontSize')

    @data_label_font_size.setter
    @SeriesObjectProperty.setter()
    def data_label_font_size(self, value):
        self['dataLabelFontSize'] = value

    @property
    @SeriesObjectProperty.getter(
        nullable=False,
        default_value=DEFAULT_SERIES_DATA_LABEL_FORMAT,
        value_validate_function=lambda value: assert_string(value, 'data_label_format'),
    )
    def data_label_format(self):
        return self.get('dataLabelFormat')

    @data_label_format.setter
    @SeriesObjectProperty.setter()
    def data_label_format(self, value):
        self['dataLabelFormat'] = value

    @property
    @SeriesObjectProperty.getter(
        nullable=False, value_validate_function=lambda value: assert_string(value, 'id')
    )
    def id(self):
        return self.get('id')

    @id.setter
    @SeriesObjectProperty.setter()
    def id(self, value):
        self['id'] = value

    @property
    @SeriesObjectProperty.getter(
        nullable=False,
        default_value=DEFAULT_SERIES_DATA_IS_VISIBLE,
        value_validate_function=lambda value: assert_boolean(value, 'is_visible'),
    )
    def is_visible(self):
        return self.get('isVisible')

    @is_visible.setter
    @SeriesObjectProperty.setter()
    def is_visible(self, value):
        self['isVisible'] = value

    @property
    @SeriesObjectProperty.getter(
        nullable=False,
        default_value=DEFAULT_SERIES_DATA_LABEL,
        value_validate_function=lambda value: assert_string(value, 'label'),
    )
    def label(self):
        return self.get('label')

    @label.setter
    @SeriesObjectProperty.setter()
    def label(self, value):
        self['label'] = value

    @property
    @SeriesObjectProperty.getter(
        nullable=False,
        default_value=DEFAULT_SERIES_SHOW_CONSTITUENTS,
        value_validate_function=lambda value: assert_boolean(
            value, 'show_constituents'
        ),
    )
    def show_constituents(self):
        return self.get('showConstituents')

    @show_constituents.setter
    @SeriesObjectProperty.setter()
    def show_constituents(self, value):
        self['showConstituents'] = value

    @property
    @SeriesObjectProperty.getter(
        nullable=False,
        default_value=DEFAULT_SERIES_SHOW_SERIES_VALUE,
        value_validate_function=lambda value: assert_boolean(
            value, 'show_series_value'
        ),
    )
    def show_series_value(self):
        return self.get('showSeriesValue')

    @show_series_value.setter
    @SeriesObjectProperty.setter()
    def show_series_value(self, value):
        self['showSeriesValue'] = value

    @property
    @SeriesObjectProperty.getter(
        nullable=False,
        default_value=SeriesObjectAxis.Y1_AXIS,
        value_validate_function=lambda value: assert_enum(
            value, SeriesObjectAxis, 'SeriesObjectAxis', 'y_axis'
        ),
        value_formatter_function=lambda value: camelcase(value.name.lower()),
    )
    def y_axis(self):
        return self.get('yAxis')

    @y_axis.setter
    @SeriesObjectProperty.setter(
        value_parser_function=lambda value: SeriesObjectAxis[snakecase(value).upper()]
    )
    def y_axis(self, value):
        self['yAxis'] = value
Пример #4
0
class LegendSettings(PythonModel):
    '''A model that represents settings for the legend of a visualization.
    '''

    @classmethod
    def registry(cls):
        return LegendProperty

    @property
    @LegendProperty.getter(
        nullable=False,
        default_value=DEFAULT_LEGEND_FONT_SIZE,
        value_validate_function=lambda value: assert_font_size(
            value, 'legend_font_size'
        ),
    )
    def legend_font_size(self):
        return self.get('legendFontSize')

    @legend_font_size.setter
    @LegendProperty.setter()
    def legend_font_size(self, value):
        self['legendFontSize'] = value

    @property
    @LegendProperty.getter(
        nullable=False,
        default_value=DEFAULT_LEGEND_FONT_COLOR,
        value_validate_function=lambda value: assert_string(value, 'legend_font_color'),
    )
    def legend_font_color(self):
        return self.get('legendFontColor')

    @legend_font_color.setter
    @LegendProperty.setter()
    def legend_font_color(self, value):
        self['legendFontColor'] = value

    @property
    @LegendProperty.getter(
        nullable=False,
        default_value=DEFAULT_LEGEND_FONT_FAMILY,
        value_validate_function=lambda value: assert_string(
            value, 'legend_font_family'
        ),
    )
    def legend_font_family(self):
        return self.get('legendFontFamily')

    @legend_font_family.setter
    @LegendProperty.setter()
    def legend_font_family(self, value):
        self['legendFontFamily'] = value

    @property
    @LegendProperty.getter(
        nullable=False,
        default_value=DEFAULT_LEGEND_PLACEMENT,
        value_validate_function=lambda value: assert_enum(
            value, LegendPlacement, 'LegendPlacement', 'legend_placement'
        ),
        value_formatter_function=lambda value: camelcase(value.name.lower()),
    )
    def legend_placement(self):
        return self.get('legendPlacement')

    @legend_placement.setter
    @LegendProperty.setter(value_parser_function=deserialize_legend_placement)
    def legend_placement(self, value):
        self['legendPlacement'] = value

    @property
    @LegendProperty.getter(
        nullable=False,
        default_value=DEFAULT_LEGEND_OVERLAP_WITH_CHART,
        value_validate_function=lambda value: assert_boolean(
            value, 'overlap_legend_with_chart'
        ),
    )
    def overlap_legend_with_chart(self):
        return self.get('overlapLegendWithChart')

    @overlap_legend_with_chart.setter
    @LegendProperty.setter()
    def overlap_legend_with_chart(self, value):
        self['overlapLegendWithChart'] = value

    @property
    @LegendProperty.getter(
        nullable=False,
        default_value=DEFAULT_SHOW_LEGEND,
        value_validate_function=lambda value: assert_boolean(value, 'show_legend'),
    )
    def show_legend(self):
        return self.get('showLegend')

    @show_legend.setter
    @LegendProperty.setter()
    def show_legend(self, value):
        self['showLegend'] = value
class MapSettings(PythonModel):
    @classmethod
    def registry(cls):
        return MapProperty

    @property
    @MapProperty.getter(
        nullable=False,
        default_value=DEFAULT_MAP_BASE_LAYER,
        value_validate_function=lambda value: assert_in(
            value, BASE_LAYERS, 'base_layer'),
    )
    def base_layer(self):
        return self.get('baseLayer')

    @base_layer.setter
    @MapProperty.setter()
    def base_layer(self, value):
        self['baseLayer'] = value

    @property
    @MapProperty.getter(
        nullable=False,
        default_value=DEFAULT_MAP_CURRENT_DISPLAY,
        value_validate_function=lambda value: assert_string(
            value, 'current_display'),
    )
    def current_display(self):
        return self.get('currentDisplay')

    @current_display.setter
    @MapProperty.setter()
    def current_display(self, value):
        self['currentDisplay'] = value

    @property
    @MapProperty.getter(
        nullable=False,
        default_value=DEFAULT_MAP_CENTER,
        value_validate_function=lambda value: assert_map_coordinates(
            value, 'map_center'),
    )
    def map_center(self):
        return self.get('mapCenter')

    @map_center.setter
    @MapProperty.setter()
    def map_center(self, value):
        self['mapCenter'] = value

    @property
    @MapProperty.getter(
        nullable=False,
        default_value=DEFAULT_MAP_OVERLAY_LAYERS,
        value_validate_function=lambda value: assert_overlay_layers(
            value, 'overlay_layers'),
    )
    def overlay_layers(self):
        return self.get('overlayLayers')

    @overlay_layers.setter
    @MapProperty.setter()
    def overlay_layers(self, value):
        self['overlayLayers'] = value

    @property
    @MapProperty.getter(
        nullable=False,
        default_value=DEFAULT_SELECTED_FIELD,
        value_validate_function=lambda value: assert_string(
            value, 'selected_field'),
    )
    def selected_field(self):
        return self.get('selectedField')

    @selected_field.setter
    @MapProperty.setter()
    def selected_field(self, value):
        self['selectedField'] = value

    @property
    @MapProperty.getter(
        nullable=False,
        value_validate_function=lambda value: assert_string(
            value, 'selected_geo_tiles'),
    )
    def selected_geo_tiles(self):
        return self.get('selectedGeoTiles')

    @selected_geo_tiles.setter
    @MapProperty.setter()
    def selected_geo_tiles(self, value):
        self['selectedGeoTiles'] = value

    @property
    @MapProperty.getter(
        nullable=False,
        default_value=DEFAULT_MAP_ZOOM_LEVEL,
        value_validate_function=lambda value: assert_float(
            value, 'zoom_level'),
    )
    def zoom_level(self):
        return self.get('zoomLevel')

    @zoom_level.setter
    @MapProperty.setter(value_parser_function=float)
    def zoom_level(self, value):
        self['zoomLevel'] = value

    @property
    @MapProperty.getter(
        'showAdminBoundaries',
        nullable=False,
        default_value=DEFAULT_MAP_SHOW_ADMINISTRATIVE_BOUNDARIES,
        value_validate_function=lambda value: assert_boolean(
            value, 'show_administrative_boundaries'),
    )
    def show_administrative_boundaries(self):
        return self.get('showAdminBoundaries')

    @show_administrative_boundaries.setter
    @MapProperty.setter()
    def show_administrative_boundaries(self, value):
        self['showAdminBoundaries'] = value

    @property
    @MapProperty.getter(
        nullable=False,
        default_value=DEFAULT_MAP_SHOW_LABELS,
        value_validate_function=lambda value: assert_boolean(
            value, 'show_labels'),
    )
    def show_labels(self):
        return self.get('showLabels')

    @show_labels.setter
    @MapProperty.setter()
    def show_labels(self, value):
        self['showLabels'] = value

    @property
    @MapProperty.getter(
        nullable=False,
        default_value=DEFAULT_MAP_TOOLTIP_BACKGROUND,
        value_validate_function=lambda value: True,
    )
    def tooltip_background_color(self):
        return self.get('tooltipBackgroundColor')

    @tooltip_background_color.setter
    @MapProperty.setter()
    def tooltip_background_color(self, value):
        self['tooltipBackgroundColor'] = value

    @property
    @MapProperty.getter(
        nullable=False,
        default_value=DEFAULT_MAP_TOOLTIP_FONT_COLOR,
        value_validate_function=lambda value: assert_string(
            value, 'tooltip_font_color'),
    )
    def tooltip_font_color(self):
        return self.get('tooltipFontColor')

    @tooltip_font_color.setter
    @MapProperty.setter()
    def tooltip_font_color(self, value):
        self['tooltipFontColor'] = value

    @property
    @MapProperty.getter(
        nullable=False,
        default_value=DEFAULT_MAP_TOOLTIP_FONT,
        value_validate_function=lambda value: assert_string(
            value, 'tooltip_font_family'),
    )
    def tooltip_font_family(self):
        return self.get('tooltipFontFamily')

    @tooltip_font_family.setter
    @MapProperty.setter()
    def tooltip_font_family(self, value):
        self['tooltipFontFamily'] = value

    @property
    @MapProperty.getter(
        nullable=False,
        default_value=DEFAULT_MAP_TOOLTIP_FONT_SIZE,
        value_validate_function=lambda value: assert_string(
            value, 'tooltip_font_size'),
    )
    def tooltip_font_size(self):
        return self.get('tooltipFontSize')

    @tooltip_font_size.setter
    @MapProperty.setter()
    def tooltip_font_size(self, value):
        self['tooltipFontSize'] = value

    @property
    @MapProperty.getter(
        nullable=False,
        default_value=DEFAULT_MAP_TOOLTIP_BOLD,
        value_validate_function=lambda value: assert_boolean(
            value, 'tooltip_bold'),
    )
    def tooltip_bold(self):
        return self.get('tooltipBold')

    @tooltip_bold.setter
    @MapProperty.setter()
    def tooltip_bold(self, value):
        self['tooltipBold'] = value
class HeatTileSettings(PythonModel):
    @classmethod
    def registry(cls):
        return HeatTileProperty

    @property
    @HeatTileProperty.getter(
        nullable=False,
        default_value=DEFAULT_HEAT_TILE_DIVERGENT_COLORATION,
        value_validate_function=lambda value: assert_boolean(
            value, 'divergent_coloration'),
    )
    def divergent_coloration(self):
        return self.get('divergentColoration')

    @divergent_coloration.setter
    @HeatTileProperty.setter()
    def divergent_coloration(self, value):
        self['divergentColoration'] = value

    @property
    @HeatTileProperty.getter(
        serialized_property_name='firstYaxisSelections',
        nullable=False,
        default_value=lambda: [],
        value_validate_function=lambda value: assert_non_string_iterable(
            value, 'first_y_axis_selections', string_type_validator),
    )
    def first_y_axis_selections(self):
        return self.get('firstYaxisSelections')

    @first_y_axis_selections.setter
    @HeatTileProperty.setter()
    def first_y_axis_selections(self, value):
        self['firstYaxisSelections'] = value

    @property
    @HeatTileProperty.getter(
        nullable=False,
        default_value=DEFAULT_HEAT_TILE_INVERT_COLORATION,
        value_validate_function=lambda value: assert_boolean(
            value, 'invert_coloration'),
    )
    def invert_coloration(self):
        return self.get('invertColoration')

    @invert_coloration.setter
    @HeatTileProperty.setter()
    def invert_coloration(self, value):
        self['invertColoration'] = value

    @property
    @HeatTileProperty.getter(
        nullable=False,
        default_value=DEFAULT_HEAT_TILE_LOG_SCALING,
        value_validate_function=lambda value: assert_boolean(
            value, 'log_scaling'),
    )
    def log_scaling(self):
        return self.get('logScaling')

    @log_scaling.setter
    @HeatTileProperty.setter()
    def log_scaling(self, value):
        self['logScaling'] = value

    @property
    @HeatTileProperty.getter(
        nullable=False,
        default_value=DEAFULT_HEAT_TILE_RESULT_LIMIT,
        value_validate_function=lambda value: assert_integer(
            value, 'result_limit'),
    )
    def result_limit(self):
        return self.get('resultLimit')

    @result_limit.setter
    @HeatTileProperty.setter()
    def result_limit(self, value):
        self['resultLimit'] = value

    @property
    @HeatTileProperty.getter(
        nullable=False,
        default_value=DEFAULT_SELECTED_FIELD,
        value_validate_function=lambda value: assert_string(
            value, 'selected_field'),
    )
    def selected_field(self):
        return self.get('selectedField')

    @selected_field.setter
    @HeatTileProperty.setter()
    def selected_field(self, value):
        self['selectedField'] = value

    @property
    @HeatTileProperty.getter(
        nullable=False,
        default_value=DEFAULT_HEAT_TILE_TIME_ON_Y_AXIS,
        value_validate_function=lambda value: assert_boolean(
            value, 'show_time_on_y_axis'),
    )
    def show_time_on_y_axis(self):
        return self.get('showTimeOnYAxis')

    @show_time_on_y_axis.setter
    @HeatTileProperty.setter()
    def show_time_on_y_axis(self, value):
        self['showTimeOnYAxis'] = value

    @property
    @HeatTileProperty.getter(
        nullable=False,
        default_value=DEFAULT_HEAT_TILE_SORT_ORDER,
        value_validate_function=lambda value: assert_enum(
            value, SortOrder, 'SortOrder', 'sort_order'),
        value_formatter_function=serialize_sort_order,
    )
    def sort_order(self):
        return self.get('sortOrder')

    @sort_order.setter
    @HeatTileProperty.setter(value_parser_function=deserialize_sort_order)
    def sort_order(self, value):
        self['sortOrder'] = value

    @property
    @HeatTileProperty.getter(
        nullable=False,
        default_value=DEFAULT_SELECTED_FIELD,
        value_validate_function=lambda value: assert_string(value, 'sort_on'),
    )
    def sort_on(self):
        return self.get('sortOn')

    @sort_on.setter
    @HeatTileProperty.setter()
    def sort_on(self, value):
        self['sortOn'] = value

    @property
    @HeatTileProperty.getter(
        nullable=False,
        default_value=DEFAULT_HEAT_TILE_USE_ETHIOPIAN_DATES,
        value_validate_function=lambda value: assert_boolean(
            value, 'use_ethopian_dates'),
    )
    def use_ethiopian_dates(self):
        return self.get('useEthiopianDates')

    @use_ethiopian_dates.setter
    @HeatTileProperty.setter()
    def use_ethiopian_dates(self, value):
        self['useEthiopianDates'] = value
class BumpChartSettings(PythonModel):
    @classmethod
    def registry(cls):
        return BumpChartProperty

    @property
    @BumpChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BUMP_CHART_RESULT_LIMIT,
        value_validate_function=lambda value: assert_integer(
            value, 'result_limit'),
    )
    def result_limit(self):
        return self.get('resultLimit')

    @result_limit.setter
    @BumpChartProperty.setter()
    def result_limit(self, value):
        self['resultLimit'] = value

    @property
    @BumpChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_SELECTED_FIELD,
        value_validate_function=lambda value: assert_string(
            value, 'selected_field'),
    )
    def selected_field(self):
        return self.get('selectedField')

    @selected_field.setter
    @BumpChartProperty.setter()
    def selected_field(self, value):
        self['selectedField'] = value

    @property
    @BumpChartProperty.getter(
        nullable=False,
        default_value=lambda: {},
        value_validate_function=lambda value: assert_mapping(
            value, 'selected_keys', string_to_integer_kv_validator),
    )
    def selected_keys(self):
        return self.get('selectedKeys')

    @selected_keys.setter
    @BumpChartProperty.setter()
    def selected_keys(self, value):
        self['selectedKeys'] = value

    @property
    @BumpChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_SORT_ORDER,
        value_validate_function=lambda value: assert_enum(
            value, SortOrder, 'SortOrder', 'sort_order'),
        value_formatter_function=serialize_sort_order,
    )
    def sort_order(self):
        return self.get('sortOrder')

    @sort_order.setter
    @BumpChartProperty.setter(value_parser_function=deserialize_sort_order)
    def sort_order(self, value):
        self['sortOrder'] = value

    @property
    @BumpChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BUMP_CHART_THEME,
        value_validate_function=lambda value: assert_enum(
            value, BumpChartTheme, 'BumpChartTheme', 'theme'),
        value_formatter_function=lambda value: value.name.lower(),
    )
    def theme(self):
        return self.get('theme')

    @theme.setter
    @BumpChartProperty.setter(
        value_parser_function=deserialize_bump_chart_theme)
    def theme(self, value):
        self['theme'] = value

    @property
    @BumpChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BUMP_CHART_USE_ETHIOPIAN_DATES,
        value_validate_function=lambda value: assert_boolean(
            value, 'use_ethopian_dates'),
    )
    def use_ethiopian_dates(self):
        return self.get('useEthiopianDates')

    @use_ethiopian_dates.setter
    @BumpChartProperty.setter()
    def use_ethiopian_dates(self, value):
        self['useEthiopianDates'] = value
class BubbleChartSettings(PythonModel):
    @classmethod
    def registry(cls):
        return BubbleChartProperty

    @property
    @BubbleChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BUBBLE_CHART_LINEAR_FIT,
        value_validate_function=lambda value: assert_boolean(
            value, 'linear_fit'),
    )
    def linear_fit(self):
        return self.get('linearFit')

    @linear_fit.setter
    @BubbleChartProperty.setter()
    def linear_fit(self, value):
        self['linearFit'] = value

    @property
    @BubbleChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BUBBLE_CHART_RESULT_LIMIT,
        value_validate_function=lambda value: assert_integer(
            value, 'result_limit'),
    )
    def result_limit(self):
        return self.get('resultLimit')

    @result_limit.setter
    @BubbleChartProperty.setter()
    def result_limit(self, value):
        self['resultLimit'] = value

    @property
    @BubbleChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BUBBLE_CHART_SHOW_LEGEND,
        value_validate_function=lambda value: assert_boolean(
            value, 'show_legend'),
    )
    def show_legend(self):
        return self.get('showLegend')

    @show_legend.setter
    @BubbleChartProperty.setter()
    def show_legend(self, value):
        self['showLegend'] = value

    @property
    @BubbleChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_SELECTED_FIELD,
        value_validate_function=lambda value: assert_string(value, 'x_axis'),
    )
    def x_axis(self):
        return self.get('xAxis')

    @x_axis.setter
    @BubbleChartProperty.setter()
    def x_axis(self, value):
        self['xAxis'] = value

    @property
    @BubbleChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_SELECTED_FIELD,
        value_validate_function=lambda value: assert_string(value, 'y_axis'),
    )
    def y_axis(self):
        return self.get('yAxis')

    @y_axis.setter
    @BubbleChartProperty.setter()
    def y_axis(self, value):
        self['yAxis'] = value

    @property
    @BubbleChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_SELECTED_FIELD,
        value_validate_function=lambda value: assert_string(value, 'z_axis'),
    )
    def z_axis(self):
        return self.get('zAxis')

    @z_axis.setter
    @BubbleChartProperty.setter()
    def z_axis(self, value):
        self['zAxis'] = value
class BarChartSettings(PythonModel):
    @classmethod
    def registry(cls):
        return BarChartProperty

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=lambda: {},
        value_validate_function=lambda value: assert_mapping(
            value, 'disabled_fields', string_to_integer_kv_validator),
    )
    def disabled_fields(self):
        return self.get('disabledFields')

    @disabled_fields.setter
    @BarChartProperty.setter()
    def disabled_fields(self, value):
        self['disabledFields'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_RESULT_LIMIT,
        value_validate_function=lambda value: assert_integer(
            value, 'result_limit'),
    )
    def result_limit(self):
        return self.get('resultLimit')

    @result_limit.setter
    @BarChartProperty.setter()
    def result_limit(self, value):
        self['resultLimit'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_SORT_ORDER,
        value_validate_function=lambda value: assert_enum(
            value, SortOrder, 'SortOrder', 'sort_order'),
        value_formatter_function=serialize_sort_order,
    )
    def sort_order(self):
        return self.get('sortOrder')

    @sort_order.setter
    @BarChartProperty.setter(value_parser_function=deserialize_sort_order)
    def sort_order(self, value):
        self['sortOrder'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_SELECTED_FIELD,
        value_validate_function=lambda value: assert_string(value, 'sort_on'),
    )
    def sort_on(self):
        return self.get('sortOn')

    @sort_on.setter
    @BarChartProperty.setter()
    def sort_on(self, value):
        self['sortOn'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_STACK_BARS,
        value_validate_function=lambda value: assert_boolean(
            value, 'stack_bars'),
    )
    def stack_bars(self):
        return self.get('stackBars')

    @stack_bars.setter
    @BarChartProperty.setter()
    def stack_bars(self, value):
        self['stackBars'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_Y2_LINE_GRAPH,
        value_validate_function=lambda value: assert_boolean(
            value, 'y2_line_graph'),
    )
    def y2_line_graph(self):
        return self.get('y2LineGraph')

    @y2_line_graph.setter
    @BarChartProperty.setter()
    def y2_line_graph(self, value):
        self['y2LineGraph'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_X_TICK_FORMAT,
        value_validate_function=lambda value: assert_string(
            value, 'x_tick_format'),
    )
    def x_tick_format(self):
        return self.get('xTickFormat')

    @x_tick_format.setter
    @BarChartProperty.setter()
    def x_tick_format(self, value):
        self['xTickFormat'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_REMOVE_BAR_SPACING,
        value_validate_function=lambda value: assert_boolean(
            value, 'remove_bar_spacing'),
    )
    def remove_bar_spacing(self):
        return self.get('removeBarSpacing')

    @remove_bar_spacing.setter
    @BarChartProperty.setter()
    def remove_bar_spacing(self, value):
        self['removeBarSpacing'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_ROTATE_X_AXIS_LABELS,
        value_validate_function=lambda value: assert_boolean(
            value, 'rotate_x_axis_labels'),
    )
    def rotate_x_axis_labels(self):
        return self.get('rotateXAxisLabels')

    @rotate_x_axis_labels.setter
    @BarChartProperty.setter()
    def rotate_x_axis_labels(self, value):
        self['rotateXAxisLabels'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_ROTATE_DATA_VALUE_LABELS,
        value_validate_function=lambda value: assert_boolean(
            value, 'rotate_data_value_labels'),
    )
    def rotate_data_value_labels(self):
        return self.get('rotateDataValueLabels')

    @rotate_data_value_labels.setter
    @BarChartProperty.setter()
    def rotate_data_value_labels(self, value):
        self['rotateDataValueLabels'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_HIDE_GRIDLINES,
        value_validate_function=lambda value: assert_boolean(
            value, 'hide_grid_lines'),
    )
    def hide_grid_lines(self):
        return self.get('hideGridLines')

    @hide_grid_lines.setter
    @BarChartProperty.setter()
    def hide_grid_lines(self, value):
        self['hideGridLines'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_HIDE_DATA_VALUE_ZEROS,
        value_validate_function=lambda value: assert_boolean(
            value, 'hide_data_value_zeros'),
    )
    def hide_data_value_zeros(self):
        return self.get('hideDataValueZeros')

    @hide_data_value_zeros.setter
    @BarChartProperty.setter()
    def hide_data_value_zeros(self, value):
        self['hideDataValueZeros'] = value
class TimeSeriesSettings(PythonModel):
    @classmethod
    def registry(cls):
        return TimeSeriesProperty

    @property
    @TimeSeriesProperty.getter(
        nullable=False,
        default_value=DEFAULT_TIME_SERIES_USE_BUCKET_MEAN,
        value_validate_function=lambda value: assert_boolean(
            value, 'bucket_mean'),
    )
    def bucket_mean(self):
        return self.get('bucketMean')

    @bucket_mean.setter
    @TimeSeriesProperty.setter()
    def bucket_mean(self, value):
        self['bucketMean'] = value

    @property
    @TimeSeriesProperty.getter(
        nullable=False,
        default_value=TimeSeriesBucket.MONTH,
        value_validate_function=lambda value: assert_enum(
            value, TimeSeriesBucket, 'TimeSeriesBucket', 'bucket_type'),
        value_formatter_function=lambda value: value.name,
    )
    def bucket_type(self):
        return self.get('bucketType')

    @bucket_type.setter
    @TimeSeriesProperty.setter(value_parser_function=deserialize_bucket_type)
    def bucket_type(self, value):
        self['bucketType'] = value

    @property
    @TimeSeriesProperty.getter(
        nullable=False,
        default_value=DEFAULT_TIME_SERIES_LOG_SCALING,
        value_validate_function=lambda value: assert_boolean(
            value, 'log_scaling'),
    )
    def log_scaling(self):
        return self.get('logScaling')

    @log_scaling.setter
    @TimeSeriesProperty.setter()
    def log_scaling(self, value):
        self['logScaling'] = value

    @property
    @TimeSeriesProperty.getter(
        nullable=False,
        default_value=DEFAULT_TIME_SERIES_RESULT_LIMIT,
        value_validate_function=lambda value: assert_integer(
            value, 'result_limit'),
    )
    def result_limit(self):
        return self.get('resultLimit')

    @result_limit.setter
    @TimeSeriesProperty.setter()
    def result_limit(self, value):
        self['resultLimit'] = value

    @property
    @TimeSeriesProperty.getter(
        nullable=False,
        default_value=DEFAULT_TIME_SERIES_SORT_ORDER,
        value_validate_function=lambda value: assert_enum(
            value, SortOrder, 'SortOrder', 'sort_order'),
        value_formatter_function=serialize_sort_order,
    )
    def sort_order(self):
        return self.get('sortOrder')

    @sort_order.setter
    @TimeSeriesProperty.setter(value_parser_function=deserialize_sort_order)
    def sort_order(self, value):
        self['sortOrder'] = value

    @property
    @TimeSeriesProperty.getter(
        nullable=False,
        default_value=DEFAULT_SELECTED_FIELD,
        value_validate_function=lambda value: assert_string(value, 'sort_on'),
    )
    def sort_on(self):
        return self.get('sortOn')

    @sort_on.setter
    @TimeSeriesProperty.setter()
    def sort_on(self, value):
        self['sortOn'] = value

    @property
    @TimeSeriesProperty.getter(
        nullable=False,
        default_value=DEFAULT_TIME_SERIES_USE_ETHIOPIAN_DATES,
        value_validate_function=lambda value: assert_boolean(
            value, 'use_ethopian_dates'),
    )
    def use_ethiopian_dates(self):
        return self.get('useEthiopianDates')

    @use_ethiopian_dates.setter
    @TimeSeriesProperty.setter()
    def use_ethiopian_dates(self, value):
        self['useEthiopianDates'] = value

    @property
    @TimeSeriesProperty.getter(
        nullable=False,
        default_value=DEFAULT_TIME_SERIES_SHOW_DATA_LABELS,
        value_validate_function=lambda value: assert_boolean(
            value, 'show_data_labels'),
    )
    def show_data_labels(self):
        return self.get('showDataLabels')

    @show_data_labels.setter
    @TimeSeriesProperty.setter()
    def show_data_labels(self, value):
        self['showDataLabels'] = value

    @property
    @TimeSeriesProperty.getter(
        nullable=False,
        default_value=DEFAULT_TIME_SERIES_ROTATE_LABELS,
        value_validate_function=lambda value: assert_boolean(
            value, 'rotate_labels'),
    )
    def rotate_labels(self):
        return self.get('rotateLabels')

    @rotate_labels.setter
    @TimeSeriesProperty.setter()
    def rotate_labels(self, value):
        self['rotateLabels'] = value
class TableSettings(PythonModel):
    @classmethod
    def registry(cls):
        return TableProperty

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=lambda: [],
        value_validate_function=lambda value: assert_non_string_iterable(
            value, 'inverted_fields', string_type_validator),
    )
    def inverted_fields(self):
        return self.get('invertedFields')

    @inverted_fields.setter
    @TableProperty.setter()
    def inverted_fields(self, value):
        self['invertedFields'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_FORMAT,
        value_validate_function=lambda value: assert_enum(
            value, TableFormat, 'TableFormat', 'tableFormat'),
        value_formatter_function=lambda value: value.name.lower(),
    )
    def table_format(self):
        return self.get('tableFormat')

    @table_format.setter
    @TableProperty.setter(value_parser_function=deserialize_table_format)
    def table_format(self, value):
        self['tableFormat'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_ENABLE_PAGINATION,
        value_validate_function=lambda value: assert_boolean(
            value, 'enable_pagination'),
    )
    def enable_pagination(self):
        return self.get('enablePagination')

    @enable_pagination.setter
    @TableProperty.setter()
    def enable_pagination(self, value):
        self['enablePagination'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_ADD_TOTAL_ROW,
        value_validate_function=lambda value: assert_boolean(
            value, 'add_total_row'),
    )
    def add_total_row(self):
        return self.get('addTotalRow')

    @add_total_row.setter
    @TableProperty.setter()
    def add_total_row(self, value):
        self['addTotalRow'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_ROW_HEIGHT,
        value_validate_function=lambda value: assert_number(
            value, 'row_height'),
    )
    def row_height(self):
        return self.get('rowHeight')

    @row_height.setter
    @TableProperty.setter()
    def row_height(self, value):
        self['rowHeight'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_HEADER_FONT,
        value_validate_function=lambda value: assert_string(
            value, 'header_font_family'),
    )
    def header_font_family(self):
        return self.get('headerFontFamily')

    @header_font_family.setter
    @TableProperty.setter()
    def header_font_family(self, value):
        self['headerFontFamily'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_HEADER_COLOR,
        value_validate_function=lambda value: assert_string(
            value, 'header_color'),
    )
    def header_color(self):
        return self.get('headerColor')

    @header_color.setter
    @TableProperty.setter()
    def header_color(self, value):
        self['headerColor'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_HEADER_SIZE,
        value_validate_function=lambda value: assert_string(
            value, 'header_font_size'),
    )
    def header_font_size(self):
        return self.get('headerFontSize')

    @header_font_size.setter
    @TableProperty.setter()
    def header_font_size(self, value):
        self['headerFontSize'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_HEADER_BACKGROUND,
        value_validate_function=lambda value: assert_string(
            value, 'header_background'),
    )
    def header_background(self):
        return self.get('headerBackground')

    @header_background.setter
    @TableProperty.setter()
    def header_background(self, value):
        self['headerBackground'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_HEADER_BORDER,
        value_validate_function=lambda value: assert_string(
            value, 'header_border_color'),
    )
    def header_border_color(self):
        return self.get('headerBorderColor')

    @header_border_color.setter
    @TableProperty.setter()
    def header_border_color(self, value):
        self['headerBorderColor'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_ROW_FONT,
        value_validate_function=lambda value: assert_string(
            value, 'row_font_family'),
    )
    def row_font_family(self):
        return self.get('rowFontFamily')

    @row_font_family.setter
    @TableProperty.setter()
    def row_font_family(self, value):
        self['rowFontFamily'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_ROW_COLOR,
        value_validate_function=lambda value: assert_string(
            value, 'row_color'),
    )
    def row_color(self):
        return self.get('rowColor')

    @row_color.setter
    @TableProperty.setter()
    def row_color(self, value):
        self['rowColor'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_ROW_SIZE,
        value_validate_function=lambda value: assert_string(
            value, 'row_font_size'),
    )
    def row_font_size(self):
        return self.get('rowFontSize')

    @row_font_size.setter
    @TableProperty.setter()
    def row_font_size(self, value):
        self['rowFontSize'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_ROW_BACKGROUND,
        value_validate_function=lambda value: assert_string(
            value, 'row_background'),
    )
    def row_background(self):
        return self.get('rowBackground')

    @row_background.setter
    @TableProperty.setter()
    def row_background(self, value):
        self['rowBackground'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_ROW_BACKGROUND,
        value_validate_function=lambda value: assert_string(
            value, 'row_alternate_background'),
    )
    def row_alternate_background(self):
        return self.get('rowAlternateBackground')

    @row_alternate_background.setter
    @TableProperty.setter()
    def row_alternate_background(self, value):
        self['rowAlternateBackground'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_ROW_BORDER,
        value_validate_function=lambda value: assert_string(
            value, 'row_border_color'),
    )
    def row_border_color(self):
        return self.get('rowBorderColor')

    @row_border_color.setter
    @TableProperty.setter()
    def row_border_color(self, value):
        self['rowBorderColor'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_FOOTER_FONT,
        value_validate_function=lambda value: assert_string(
            value, 'footer_font_family'),
    )
    def footer_font_family(self):
        return self.get('footerFontFamily')

    @footer_font_family.setter
    @TableProperty.setter()
    def footer_font_family(self, value):
        self['footerFontFamily'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_FOOTER_COLOR,
        value_validate_function=lambda value: assert_string(
            value, 'footer_color'),
    )
    def footer_color(self):
        return self.get('footerColor')

    @footer_color.setter
    @TableProperty.setter()
    def footer_color(self, value):
        self['footerColor'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_FOOTER_SIZE,
        value_validate_function=lambda value: assert_string(
            value, 'footer_font_size'),
    )
    def footer_font_size(self):
        return self.get('footerFontSize')

    @footer_font_size.setter
    @TableProperty.setter()
    def footer_font_size(self, value):
        self['footerFontSize'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_FOOTER_BACKGROUND,
        value_validate_function=lambda value: assert_string(
            value, 'footer_background'),
    )
    def footer_background(self):
        return self.get('footerBackground')

    @footer_background.setter
    @TableProperty.setter()
    def footer_background(self, value):
        self['footerBackground'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_FOOTER_BORDER,
        value_validate_function=lambda value: assert_string(
            value, 'footer_border_color'),
    )
    def footer_border_color(self):
        return self.get('footerBorderColor')

    @footer_border_color.setter
    @TableProperty.setter()
    def footer_border_color(self, value):
        self['footerBorderColor'] = value
Пример #12
0
class TableSettings(PythonModel):
    @classmethod
    def registry(cls):
        return TableProperty

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=lambda: [],
        value_validate_function=lambda value: assert_non_string_iterable(
            value, 'inverted_fields', string_type_validator),
    )
    def inverted_fields(self):
        return self.get('invertedFields')

    @inverted_fields.setter
    @TableProperty.setter()
    def inverted_fields(self, value):
        self['invertedFields'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_FORMAT,
        value_validate_function=lambda value: assert_enum(
            value, TableFormat, 'TableFormat', 'tableFormat'),
        value_formatter_function=lambda value: value.name.lower(),
    )
    def table_format(self):
        return self.get('tableFormat')

    @table_format.setter
    @TableProperty.setter(value_parser_function=deserialize_table_format)
    def table_format(self, value):
        self['tableFormat'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_ENABLE_PAGINATION,
        value_validate_function=lambda value: assert_boolean(
            value, 'enable_pagination'),
    )
    def enable_pagination(self):
        return self.get('enablePagination')

    @enable_pagination.setter
    @TableProperty.setter()
    def enable_pagination(self, value):
        self['enablePagination'] = value

    @property
    @TableProperty.getter(
        nullable=False,
        default_value=DEFAULT_TABLE_ROW_HEIGHT,
        value_validate_function=lambda value: assert_number(
            value, 'row_height'),
    )
    def row_height(self):
        return self.get('rowHeight')

    @row_height.setter
    @TableProperty.setter()
    def row_height(self, value):
        self['rowHeight'] = value
Пример #13
0
class BarChartSettings(PythonModel):
    @classmethod
    def registry(cls):
        return BarChartProperty

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=lambda: {},
        value_validate_function=lambda value: assert_mapping(
            value, 'disabled_fields', string_to_integer_kv_validator),
    )
    def disabled_fields(self):
        return self.get('disabledFields')

    @disabled_fields.setter
    @BarChartProperty.setter()
    def disabled_fields(self, value):
        self['disabledFields'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_RESULT_LIMIT,
        value_validate_function=lambda value: assert_integer(
            value, 'result_limit'),
    )
    def result_limit(self):
        return self.get('resultLimit')

    @result_limit.setter
    @BarChartProperty.setter()
    def result_limit(self, value):
        self['resultLimit'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_SORT_ORDER,
        value_validate_function=lambda value: assert_enum(
            value, SortOrder, 'SortOrder', 'sort_order'),
        value_formatter_function=serialize_sort_order,
    )
    def sort_order(self):
        return self.get('sortOrder')

    @sort_order.setter
    @BarChartProperty.setter(value_parser_function=deserialize_sort_order)
    def sort_order(self, value):
        self['sortOrder'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_SELECTED_FIELD,
        value_validate_function=lambda value: assert_string(value, 'sort_on'),
    )
    def sort_on(self):
        return self.get('sortOn')

    @sort_on.setter
    @BarChartProperty.setter()
    def sort_on(self, value):
        self['sortOn'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_STACK_BARS,
        value_validate_function=lambda value: assert_boolean(
            value, 'stack_bars'),
    )
    def stack_bars(self):
        return self.get('stackBars')

    @stack_bars.setter
    @BarChartProperty.setter()
    def stack_bars(self, value):
        self['stackBars'] = value

    @property
    @BarChartProperty.getter(
        nullable=False,
        default_value=DEFAULT_BAR_CHART_Y2_LINE_GRAPH,
        value_validate_function=lambda value: assert_boolean(
            value, 'y2_line_graph'),
    )
    def y2_line_graph(self):
        return self.get('y2LineGraph')

    @y2_line_graph.setter
    @BarChartProperty.setter()
    def y2_line_graph(self, value):
        self['y2LineGraph'] = value