class FilterDefinition(PythonModel): # TODO(vedant) - In a future Dashboard Schema update, we will need to unify # these filters such that they are common with AQT and Druid filter # definitions. @classmethod def registry(cls): return FilterProperty @property @FilterProperty.getter( nullable=False, value_validate_function=lambda value: assert_string(value, 'id')) def id(self): return self.get('id') @id.setter @FilterProperty.setter() def id(self, value): self['id'] = value @property @FilterProperty.getter( value_validate_function=lambda value: assert_string(value, 'name')) def name(self): return self.get('name') @name.setter @FilterProperty.setter() def name(self, value): self['name'] = value @property @FilterProperty.getter( nullable=False, value_validate_function=lambda value: assert_string( value, 'filter_on'), ) def filter_on(self): return self.get('filterOn') @filter_on.setter @FilterProperty.setter() def filter_on(self, value): self['filterOn'] = value @property @FilterProperty.getter( nullable=False, value_validate_function=lambda value: assert_non_string_iterable( value, 'filter_values', validate_filter_value), ) def filter_values(self): return self.get('filterValues') @filter_values.setter @FilterProperty.setter() def filter_values(self, value): self['filterValues'] = value
class CustomField(PythonModel): @classmethod def registry(cls): return CustomFieldProperty @property @CustomFieldProperty.getter( nullable=False, value_validate_function=lambda value: assert_non_string_iterable( value, 'field_ids', string_type_validator ), ) def field_ids(self): return self.get('fieldIds') @field_ids.setter @CustomFieldProperty.setter() def field_ids(self, value): self['fieldIds'] = value @property @CustomFieldProperty.getter( nullable=False, value_validate_function=lambda value: assert_string(value, 'formula'), ) def formula(self): return self.get('formula') @formula.setter @CustomFieldProperty.setter() def formula(self, value): self['formula'] = value @property @CustomFieldProperty.getter( nullable=False, value_validate_function=lambda value: assert_string(value, 'id') ) def id(self): return self.get('id') @id.setter @CustomFieldProperty.setter() def id(self, value): self['id'] = value @property @CustomFieldProperty.getter( value_validate_function=lambda value: assert_string(value, 'name') ) def name(self): return self.get('name') @name.setter @CustomFieldProperty.setter() def name(self, value): self['name'] = value
class ScoreCardSettings(PythonModel): @classmethod def registry(cls): return ScoreCardProperty @property @ScoreCardProperty.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 @ScoreCardProperty.setter() def inverted_fields(self, value): self['invertedFields'] = value
class QueryDefinition(PythonModel): @classmethod def registry(cls): return QueryProperty @property @QueryProperty.getter( nullable=False, default_value=lambda: [], value_validate_function=lambda value: assert_non_string_iterable( value, 'advancedFields', validate_advanced_field_item), ) def advanced_fields(self): return self.get('advancedFields') @advanced_fields.setter @QueryProperty.setter( value_parser_function=lambda advanced_field_objects: [ AdvancedFieldDefinition(advanced_field_object) for advanced_field_object in advanced_field_objects ]) def advanced_fields(self, value): self['advancedFields'] = value # TODO(pablo): come up with a proper structure for advancedFilters that # mirrors the SerializedQueryFilter @property @QueryProperty.getter( nullable=False, default_value=lambda: [], value_validate_function=lambda value: assert_non_string_iterable( value, 'advancedFilters', validate_mapping), ) def advanced_filters(self): return self.get('advancedFilters') @advanced_filters.setter @QueryProperty.setter() def advanced_filters(self, value): self['advancedFilters'] = value @property @QueryProperty.getter( nullable=False, default_value=lambda: [], value_validate_function=lambda value: assert_non_string_iterable( value, 'advancedGroups', validate_mapping), ) def advanced_groups(self): return self.get('advancedGroups') @advanced_groups.setter @QueryProperty.setter() def advanced_groups(self, value): self['advancedGroups'] = value @property @QueryProperty.getter( nullable=False, value_validate_function=lambda value: assert_string(value, 'id')) def id(self): return self.get('id') @id.setter @QueryProperty.setter() def id(self, value): self['id'] = value @property @QueryProperty.getter( value_validate_function=lambda value: assert_string(value, 'name')) def name(self): return self.get('name') @name.setter @QueryProperty.setter() def name(self, value): self['name'] = value @property @QueryProperty.getter( nullable=False, serialized_property_name='magicFilters', default_value=lambda: [], value_validate_function=lambda value: assert_non_string_iterable( value, 'magic_filter_ids', string_type_validator), ) def magic_filter_ids(self): return self.get('magicFilters') @magic_filter_ids.setter @QueryProperty.setter() def magic_filter_ids(self, value): self['magicFilters'] = value @property @QueryProperty.getter( nullable=False, default_value='', value_validate_function=lambda value: assert_string( value, 'date_range_id'), ) def date_range_id(self): return self.get('dateRangeId') @date_range_id.setter @QueryProperty.setter() def date_range_id(self, value): self['dateRangeId'] = value @property @QueryProperty.getter( nullable=False, default_value='', value_validate_function=lambda value: assert_string(value, 'group_by'), ) def group_by(self): return self.get('groupBy') @group_by.setter @QueryProperty.setter() def group_by(self, value): self['groupBy'] = value
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
class SeriesSettings(PythonModel): '''A model that represents settings for the series components of a visualization. ''' @classmethod def registry(cls): return SeriesProperty @property @SeriesProperty.getter( nullable=False, default_value=lambda: {}, value_validate_function=lambda value: assert_series_objects( value, 'seriesObjects' ), setter_function_name='_series_objects', ) def series_objects(self): return self.get('seriesObjects') @series_objects.setter @SeriesProperty.setter( value_parser_function=lambda series_objects: { _id: SeriesSettingsObject(settings_object) for (_id, settings_object) in series_objects.items() } ) def _series_objects(self, value): self['seriesObjects'] = value @property @SeriesProperty.getter( nullable=False, default_value=lambda: [], value_validate_function=lambda value: assert_non_string_iterable( value, 'series_order', string_type_validator ), setter_function_name='_series_order', ) def series_order(self): return self.get('seriesOrder') @series_order.setter @SeriesProperty.setter() def _series_order(self, value): self['seriesOrder'] = value def before_serialize(self): order_values = set(self.series_order) object_keys = set(self.series_objects.keys()) difference = object_keys.difference(order_values) if difference: message = ( '\'series_objects\' and \'series_order\' are expected to ' 'have the same keys/elements. \'series_objects\' ' 'had \'{object_keys}\'. \'series_order\' had values ' '\'{order_values}\'. Difference was \'{difference}\'' ).format( order_values=order_values, object_keys=object_keys, difference=difference, ) raise ValueError(message) def add_or_update_series(self, series_object): assert_type(series_object, SeriesSettingsObject) _id = series_object.id if _id not in self.series_order: updated_value = self.series_order updated_value.append(_id) self._series_order = updated_value updated_objects = self.series_objects updated_objects[_id] = series_object self._series_objects = updated_objects def delete_series(self, series_id): assert_string(series_id) if series_id in self.series_order: updated_value = self.series_order updated_value.pop(series_id) self._series_order = updated_value if series_id in self.series_objects: updated_objects = self.series_objects updated_objects.pop(series_id) self._series_objects = updated_objects def set_series_order(self, new_order): old_order_set = set(self.series_order) new_order_set = set(new_order) difference = old_order_set.difference(new_order_set) if difference: message = ( 'The new value for \'series_order\' and is expected to ' 'have the same elements as the previous value. Only the ordering ' 'may differ. The new version had \'{new_order}\'. The old version ' 'had \'{old_order}\'. The difference was \'{difference}\'' ).format( new_order=new_order, old_order=self.series_order, difference=difference ) raise ValueError(message)
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
def assert_overlay_layers(value, argument_name=None): assert_non_string_iterable(value, argument_name, string_type_validator)
def assert_map_coordinates(value, argument_name=None): assert_non_string_iterable(value, argument_name, map_coordinate_validator)
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
class QueryDefinition(PythonModel): @classmethod def registry(cls): return QueryProperty @property @QueryProperty.getter( nullable=False, value_validate_function=lambda value: assert_string(value, 'id') ) def id(self): return self.get('id') @id.setter @QueryProperty.setter() def id(self, value): self['id'] = value @property @QueryProperty.getter( value_validate_function=lambda value: assert_string(value, 'name') ) def name(self): return self.get('name') @name.setter @QueryProperty.setter() def name(self, value): self['name'] = value @property @QueryProperty.getter( serialized_property_name='magicFilters', default_value=lambda: [], value_validate_function=lambda value: assert_non_string_iterable( value, 'magic_filter_ids', string_type_validator ), ) def magic_filter_ids(self): return self.get('magicFilters') @magic_filter_ids.setter @QueryProperty.setter() def magic_filter_ids(self, value): self['magicFilters'] = value # TODO(vedant) - Change this to `dateRangeId` @property @QueryProperty.getter( nullable=False, value_validate_function=lambda value: assert_string(value, 'date_range'), ) def date_range_id(self): return self.get('dateRangeId') @date_range_id.setter @QueryProperty.setter() def date_range_id(self, value): self['dateRangeId'] = value @property @QueryProperty.getter( nullable=False, value_validate_function=lambda value: assert_string(value, 'group_by'), ) def group_by(self): return self.get('groupBy') @group_by.setter @QueryProperty.setter() def group_by(self, value): self['groupBy'] = 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_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
class AdvancedFieldDefinition(PythonModel): @classmethod def registry(cls): return AdvancedFieldProperty @property @AdvancedFieldProperty.getter( nullable=False, value_validate_function=lambda value: assert_mapping(value, 'calculation'), ) def calculation(self): return self.get('calculation') @calculation.setter @AdvancedFieldProperty.setter() def calculation(self, value): self['calculation'] = value @property @AdvancedFieldProperty.getter( nullable=False, value_validate_function=lambda value: assert_mapping(value, 'category'), ) def category(self): return self.get('category') @category.setter @AdvancedFieldProperty.setter() def category(self, value): self['category'] = value @property @AdvancedFieldProperty.getter( nullable=False, value_validate_function=lambda value: assert_string(value, 'canonicalName'), ) def canonical_name(self): return self.get('canonicalName') @canonical_name.setter @AdvancedFieldProperty.setter() def canonical_name(self, value): self['canonicalName'] = value @property @AdvancedFieldProperty.getter( nullable=False, value_validate_function=lambda value: assert_string(value, 'id') ) def id(self): return self.get('id') @id.setter @AdvancedFieldProperty.setter() def id(self, value): self['id'] = value @property @AdvancedFieldProperty.getter( nullable=False, value_validate_function=lambda value: assert_string(value, 'shortName'), ) def short_name(self): return self.get('shortName') @short_name.setter @AdvancedFieldProperty.setter() def short_name(self, value): self['shortName'] = value @property @AdvancedFieldProperty.getter( nullable=False, value_validate_function=lambda value: assert_mapping(value, 'source'), ) def source(self): return self.get('source') @source.setter @AdvancedFieldProperty.setter() def source(self, value): self['source'] = value @property @AdvancedFieldProperty.getter( nullable=False, default_value='', value_validate_function=lambda value: assert_string(value, 'description'), ) def description(self): return self.get('description') @description.setter @AdvancedFieldProperty.setter() def description(self, value): self['description'] = value @property @AdvancedFieldProperty.getter( nullable=False, default_value='', value_validate_function=lambda value: assert_string(value, 'label'), ) def label(self): return self.get('label') @label.setter @AdvancedFieldProperty.setter() def label(self, value): self['label'] = value @property @AdvancedFieldProperty.getter( nullable=False, default_value=lambda: [], value_validate_function=lambda value: assert_non_string_iterable( value, 'customizableFilterItems' ), ) def customizable_filter_items(self): return self.get('customizableFilterItems') @customizable_filter_items.setter @AdvancedFieldProperty.setter() def customizable_filter_items(self, value): self['customizableFilterItems'] = value