@docsvision/webclient
Version:
Type definitions for DocsVision WebClient scripts and extensions.
102 lines (101 loc) • 5.28 kB
TypeScript
import { $BusinessCalendarController } from "@docsvision/webclient/Generated/DocsVision.WebClient.Controllers";
import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models";
import { DateTimePickerParams } from "@docsvision/webclient/Platform/DateTimePicker";
import { $ApplicationSettings, $DeviceType } from '@docsvision/webclient/StandardServices';
import { IDataChangedEventArgs } from '@docsvision/webclient/System/IDataChangedEventArgs';
import { InputBasedControlImpl, InputBasedControlState } from "@docsvision/webclient/System/InputBasedControlImpl";
import { $Layout } from '@docsvision/webclient/System/$Layout';
import { $CardInfo, $EditOperationStore, $LayoutInfo } from "@docsvision/webclient/System/LayoutServices";
import { IBindingResult } from "@docsvision/webclient/System/IBindingResult";
import { RequestHelper } from "@docsvision/webclient/System/RequestHelper";
import { CancelableEvent } from '@docsvision/webclient/System/CancelableEvent';
import { IValidationResult } from '@docsvision/webclient/System/IValidationResult';
import { $Router } from "@docsvision/webclient/System/$Router";
import "moment/locale/kk";
import "moment/locale/lv";
import "moment/locale/ru";
import "moment/locale/uk";
import React, { KeyboardEvent } from "react";
import { $LabelWidth } from '@docsvision/webclient/System/$LabelWidth';
import { Theme } from '@material-ui/core';
import { IValidationParams } from '@docsvision/webclient/System/IValidationParams';
/** @internal */
export interface IDateTimePickerState extends DateTimePickerParams, InputBasedControlState<Date> {
binding: IBindingResult<Date>;
timeInput: HTMLInputElement;
dateTimeFormat: string;
use24hoursFormat: boolean;
timeInputText: string;
clearButton: HTMLElement;
loadingCalendarSettings: RequestHelper;
worktimeSettings: GenModels.CalendarYearSettings[];
currentValueDefaultTime: Date;
mask: string;
invalidLabel: string;
lastCorrectValue: Date;
saveRequest?: CancelableEvent<unknown>;
saveNeeded: boolean;
shiftMilliseconds?: number;
errorText: string;
passedValidation?: boolean;
theme: Theme;
services?: $LayoutInfo & $BusinessCalendarController & $EditOperationStore & $Router & $ApplicationSettings & $DeviceType & $Layout & $CardInfo & $LabelWidth;
}
export interface DateTimePickerState extends IDateTimePickerState {
}
/** @internal */
export declare type DateTimePickerImplState = IDateTimePickerState;
/** @internal */
export declare class DateTimePickerImpl extends InputBasedControlImpl<Date, DateTimePickerParams, IDateTimePickerState> {
private changeEventArgs;
private utils;
constructor(props: DateTimePickerParams, state: IDateTimePickerState);
componentDidMount(): Promise<void>;
getColor: () => "#7BB652" | "rgba(0, 149, 218, 0.8)" | "#3B4C60" | "#0095da" | "#7bb652";
initializeCultureSettings(): void;
protected setEditInPlaceWidth(element: Element): void;
protected getMask(date: string): string;
protected getTextValue(): string;
getDefaultValue(): Date;
protected get dateInput(): HTMLInputElement;
protected onEditPopoverShowed(control: any): void;
protected renderInto(): void;
setValue(value: Date, redraw: boolean): Promise<void>;
protected onDataChanged(eventArgs: IDataChangedEventArgs): void;
protected setTimeFor(date: Date, time: Date): Date;
validate(params: IValidationParams): IValidationResult;
protected getShiftTimeValue(newValue: Date, loadSettings: boolean, onLoaded?: () => void): Date;
protected resetShiftTimeValue(): void;
protected timeIsEqual(date1: Date, date2: Date): boolean;
protected getTimeFromWorkTime(mode: GenModels.DateTimeDefaultTimeModes, workTime: GenModels.CalendarWorkTime, date: Date): Date;
protected loadWorktimeSettings(year: number): Promise<GenModels.CalendarYearSettings[]>;
protected isOverdue(): boolean;
protected getCssClass(): string;
protected renderInputWithPlaceholder(): JSX.Element;
getFormattedDateMessage: (dateRestriction: Date, disabledOption: boolean, messageTemplate: string) => string;
getShiftDate: (days: any) => Date;
setShiftFunction: (days: any) => Date;
onError: (error: any) => void;
onClearKeyPress: (event: React.KeyboardEvent) => void;
getValue(): Date;
protected getDateTimePicker: () => JSX.Element;
protected onMouseDownIcon(e: React.MouseEvent): void;
protected getDefaultInitialValue(): Date;
protected editInPlaceModeRender(): JSX.Element;
protected renderWithText(): JSX.Element;
protected onPlaceholderClick(event?: React.MouseEvent): void;
protected onDialogClose(): void;
protected onDialogOpen(): void;
protected onDateChange: (newValue: any, value: any) => void;
protected onKeyPress: (event: React.KeyboardEvent) => void;
protected onDataChangedSave(): void;
protected onInputFocus(): void;
protected onInputBlur(): void;
protected onInputKeyDown(ev: KeyboardEvent<HTMLInputElement>): void;
protected renderInput(): React.ReactNode;
private renderRequiredText;
protected renderPlaceholder(): JSX.Element;
triggerSaveRequestEvent: () => void;
clear(): Promise<void>;
canClear(): boolean;
}