@duoduo-oba/ng-devui
Version:
DevUI components based on Angular
78 lines (77 loc) • 3.05 kB
TypeScript
import { ControlValueAccessor } from '@angular/forms';
import { OnInit, EventEmitter, ElementRef, ViewContainerRef, Renderer2, OnDestroy, TemplateRef } from '@angular/core';
import { ConnectedOverlayPositionChange, VerticalConnectionPos } from '@angular/cdk/overlay';
import { DateConverter } from '@duoduo-oba/ng-devui/utils';
import { SelectDateRangeChangeEventArgs } from './date-range-change-event-args.model';
import { DatePickerConfigService as DatePickerConfig } from './date-picker.config.service';
import { I18nService, I18nInterface } from '@duoduo-oba/ng-devui/i18n';
import { Subject } from 'rxjs';
export declare class DateRangePickerComponent implements OnInit, ControlValueAccessor, OnDestroy {
private elementRef;
private viewContainerRef;
private renderer;
private datePickerConfig;
private i18n;
dateConfig: any;
dateFormat: string;
maxDate: Date | any;
minDate: Date | any;
isOpen: boolean;
locale: string;
cssClass: string;
disabled: boolean;
dateConverter: DateConverter;
selectedRange: any[];
showTime: boolean;
hideOnRangeSelected: boolean;
customViewTemplate: TemplateRef<any>;
splitter: string;
selectedRangeChange: EventEmitter<SelectDateRangeChangeEventArgs>;
leftPicker: ElementRef;
rightPicker: ElementRef;
templateWrap: ElementRef;
private _isOpen;
private _dateConfig;
private _dateFormat;
private _maxDate;
private _minDate;
private clickShow;
private inputSub;
currentCalendars: any[];
cdkConnectedOverlayOrigin: any;
i18nLocale: I18nInterface['locale'];
private i18nSubscription;
hoverOnDate: Subject<object>;
datepickerPosition: VerticalConnectionPos;
rangeStart: any;
rangeEnd: any;
private onChange;
private onTouched;
constructor(elementRef: ElementRef, viewContainerRef: ViewContainerRef, renderer: Renderer2, datePickerConfig: DatePickerConfig, i18n: I18nService);
ngOnInit(): void;
registerOnChange(fn: any): void;
registerOnTouched(fn: any): void;
writeValue(selectedRange: any): void;
setI18nText(): void;
rangeChange(data: any): void;
chooseDate: (range: any) => void;
updateCdkConnectedOverlayOrigin(): void;
toggle($event: Event, clickShow?: boolean): void;
hide(): void;
private writeModelValue;
private formatDateRange;
onBlur($event: any): void;
onDocumentClick($event: any): void;
onPositionChange(position: ConnectedOverlayPositionChange): void;
convertDate(date: any): Date;
selectingDate(event: any): void;
subscribeHoverActions(): void;
previewRangeEnd(date: any): void;
syncRangeStart(rangeStart: any, picker: any): void;
syncPickerPair(currentCalender: object, orientation: string): void;
notifyValueChange(range: any, reason?: any): void;
consolidateTime(): void;
private transUserInputToDatepicker;
ngOnDestroy(): void;
clearAll: () => void;
}