devexpress-reporting
Version:
DevExpress Reporting provides the capability to develop a reporting application to create and customize reports.
60 lines (59 loc) • 2.69 kB
TypeScript
/**
* DevExpress HTML/JS Reporting (viewer\widgets\dateRange\dateRangeEditor.viewmodel.d.ts)
* Version: 25.2.3
* Build date: Dec 15, 2025
* Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
* License: https://www.devexpress.com/Support/EULAs/universal.xml
*/
/// <reference types="jquery" />
/// <reference types="jquery" />
import { IViewModel } from '@devexpress/analytics-core/analytics-serializer-native';
import { Properties as PopupProperties } from 'devextreme/ui/popup';
import { Properties as ScrollViewProperties } from 'devextreme/ui/scroll_view';
import { Properties as CalendarProperties } from 'devextreme/ui/calendar';
import { DateRangeEditor } from './dateRangeEditor';
import { DateRangeDialogElementsKeyboardHelper, PredefinedDateRangesKeyboardHelper, TimeRangeDialogElementsKeyboardHelper } from '../../accessibility/_dateRangeKeyboardHelper';
import { IDateRangeEditorItem } from './dateRangeEditor.ranges';
export type IDateRangeEditorPredefinedItemViewModel = IDateRangeEditorItem & {
click: () => void;
selected: boolean;
template: HTMLElement;
id?: string;
ratio: number;
};
export type IDateRangeCalendarViewModel = {
value: Date;
onValueChanged: CalendarProperties['onValueChanged'];
min: Date;
height: string;
inRange: (date: Date) => boolean;
};
export interface IDateRangeEditorViewModel extends IViewModel {
getPopupSettings: (isTimeOnly: boolean) => PopupProperties;
onRangeItemsRendered: (e: any) => void;
onRangeItemClick: (e: any) => void;
_displayName: string;
displayValue: string;
disabled: boolean;
visible: boolean;
popupModel: IDateRangeEditorViewModel | any;
popupTemplate: string;
dialogKeyboardHelper: DateRangeDialogElementsKeyboardHelper | TimeRangeDialogElementsKeyboardHelper;
scrollViewOptions: ScrollViewProperties;
predefinedDateRanges: {
attr: object;
accessibilityKeyboardHelper: PredefinedDateRangesKeyboardHelper;
scrollViewOptions: ScrollViewProperties;
items: IDateRangeEditorPredefinedItemViewModel[];
groupedItems: IDateRangeEditorPredefinedItemViewModel[][];
};
items: IDateRangeEditorItem[];
showPopup: () => void;
cacheElement: (element: JQuery) => void;
startRange: IDateRangeCalendarViewModel;
endRange: IDateRangeCalendarViewModel;
_editorInputId: string;
type: string;
}
export declare function createPredefinedGroupedItemsViewModel(editor: DateRangeEditor): IDateRangeEditorPredefinedItemViewModel[][];
export declare function createDateRangeEditorViewModel(this: DateRangeEditor, baseViewModel: IViewModel): IDateRangeEditorViewModel;