UNPKG

devexpress-reporting

Version:

DevExpress Reporting provides the capability to develop a reporting application to create and customize reports.

49 lines (48 loc) 4.49 kB
/** * DevExpress HTML/JS Reporting (chart\components\models\_dataFilter.js) * Version: 24.2.7 * Build date: Apr 29, 2025 * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * License: https://www.devexpress.com/Support/EULAs/universal.xml */ import { DotnetTypes, createGlobalModuleVariableFunc, getLocalization } from '@devexpress/analytics-core/analytics-internal'; import { ModelSerializer } from '@devexpress/analytics-core/analytics-utils'; import { editorTemplates } from '@devexpress/analytics-core/analytics-widgets'; import * as ko from 'knockout'; import { editorTemplates as chartEditorTemplates } from '../../internal/_editorTemplates'; export const dataFilterSerializationsInfo = [ { propertyName: 'columnName', displayName: 'Column Name', editor: ko.bindingHandlers['displayNameExtender'] ? editorTemplates.getEditor('field') : chartEditorTemplates.getEditor('fieldChart'), modelName: '@ColumnNameSerializable', localizationId: 'DevExpress.XtraCharts.DataFilter.ColumnName' }, { propertyName: 'dataType', displayName: 'Data Type', defaultVal: DotnetTypes.SystemString, editor: editorTemplates.getEditor('combobox'), modelName: '@DataTypeSerializable', valuesArray: [{ value: DotnetTypes.SystemBoolean, displayValue: DotnetTypes.SystemBoolean }, { value: DotnetTypes.SystemByte, displayValue: DotnetTypes.SystemByte }, { value: DotnetTypes.SystemChar, displayValue: DotnetTypes.SystemChar }, { value: DotnetTypes.SystemDateTime, displayValue: DotnetTypes.SystemDateTime }, { value: DotnetTypes.SystemDecimal, displayValue: DotnetTypes.SystemDecimal }, { value: DotnetTypes.SystemDouble, displayValue: DotnetTypes.SystemDouble }, { value: DotnetTypes.SystemGuid, displayValue: DotnetTypes.SystemGuid }, { value: DotnetTypes.SystemInt16, displayValue: DotnetTypes.SystemInt16 }, { value: DotnetTypes.SystemInt32, displayValue: DotnetTypes.SystemInt32 }, { value: DotnetTypes.SystemInt64, displayValue: DotnetTypes.SystemInt64 }, { value: DotnetTypes.SystemSByte, displayValue: DotnetTypes.SystemSByte }, { value: DotnetTypes.SystemSingle, displayValue: DotnetTypes.SystemSingle }, { value: DotnetTypes.SystemString, displayValue: DotnetTypes.SystemString }, { value: DotnetTypes.SystemTimeSpan, displayValue: DotnetTypes.SystemTimeSpan }, { value: DotnetTypes.SystemUInt16, displayValue: DotnetTypes.SystemUInt16 }, { value: DotnetTypes.SystemUInt32, displayValue: DotnetTypes.SystemUInt32 }, { value: DotnetTypes.SystemUInt64, displayValue: DotnetTypes.SystemUInt64 }], localizationId: 'DevExpress.XtraCharts.DataFilter.DataType' }, { propertyName: 'condition', displayName: 'Condition', defaultVal: 'Equal', editor: editorTemplates.getEditor('combobox'), modelName: '@Condition', valuesArray: [{ value: 'Equal', displayValue: 'Equal', localizationId: 'DevExpress.XtraCharts.DataFilterCondition.Equal' }, { value: 'GreaterThan', displayValue: 'GreaterThan' }, { value: 'GreaterThanOrEqual', displayValue: 'GreaterThanOrEqual' }, { value: 'LessThan', displayValue: 'LessThan' }, { value: 'LessThanOrEqual', displayValue: 'LessThanOrEqual' }, { value: 'NotEqual', displayValue: 'NotEqual' }], localizationId: 'DevExpress.XtraReports.UI.FormattingRule.Condition' }, { propertyName: 'value', displayName: 'Value', editor: editorTemplates.getEditor('text'), modelName: '@InvariantValueSerializable', localizationId: 'AnalyticsCoreStringId.FilterEditor_Operand_Type_Value' } ]; export class DataFilterModel { static createNew() { return new (DefaultDataFilterModel())({}, new ModelSerializer()); } getInfo() { return dataFilterSerializationsInfo; } constructor(model, serializer) { this.columnName = ko.observable(''); serializer = serializer || new ModelSerializer(); serializer.deserialize(this, model); this.name = ko.pureComputed(() => { return !!this.columnName() ? this.columnName() : getLocalization('DataFilter', 'ChartStringId.DefaultDataFilterName'); }); } } export const DefaultDataFilterModel = createGlobalModuleVariableFunc(DataFilterModel); const dataFilters = { modelName: 'DataFilters', displayName: 'Data Filters', propertyName: 'dataFilters', editor: editorTemplates.getEditor('commonCollection'), array: true, addHandler: DataFilterModel.createNew, template: '#dxrd-collectionItemWithAccordion', localizationId: 'DevExpress.XtraCharts.SeriesBase.DataFilters' };