@duoduo-oba/ng-devui
Version:
DevUI components based on Angular
99 lines (98 loc) • 3.87 kB
TypeScript
import { OnInit, OnChanges, OnDestroy, ElementRef, Renderer2, EventEmitter, ChangeDetectorRef, TemplateRef, SimpleChanges } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { DatePickerConfigService as DatePickerConfig } from './date-picker.config.service';
import { DateConverter } from '@duoduo-oba/ng-devui/utils';
import { SelectDateChangeEventArgs } from './date-change-event-args.model';
import { I18nService, I18nInterface } from '@duoduo-oba/ng-devui/i18n';
import { Subscription } from 'rxjs';
export declare class DatepickerComponent implements OnInit, OnChanges, OnDestroy, ControlValueAccessor {
protected elementRef: ElementRef;
protected renderer2: Renderer2;
protected datePickerConfig: DatePickerConfig;
protected changeDetectorRef: ChangeDetectorRef;
protected i18n: I18nService;
static DAY_DURATION: number;
protected _maxDate: Date;
protected _minDate: Date;
protected nowMinYear: number;
protected nowMaxYear: number;
protected _dateFormat: string;
showTime: boolean;
cssClass: string;
dateConverter: DateConverter;
locale: string;
selectedDateChange: EventEmitter<SelectDateChangeEventArgs>;
disabled: boolean;
yearNumber: number;
customViewTemplate: TemplateRef<any>;
selectedDate: Date;
_dateConfig: any;
currentYear: number;
currentMonth: number;
currentHour: number;
currentMinute: number;
currentSecond: number;
hourOptions: string[];
minuteOptions: string[];
displayWeeks: any[];
yearOptions: number[];
openChooseYearAndMonth: boolean;
hoverYear: number;
hoverMonth: number;
availableMonths: number[];
i18nText: I18nInterface['datePicker'];
i18nLocale: I18nInterface['locale'];
i18nCommonText: I18nInterface['common'];
i18nSubscription: Subscription;
protected onChange: (_: any) => any;
protected onTouched: () => any;
constructor(elementRef: ElementRef, renderer2: Renderer2, datePickerConfig: DatePickerConfig, changeDetectorRef: ChangeDetectorRef, i18n: I18nService);
ngOnInit(): void;
ngOnChanges(changes: SimpleChanges): void;
onDocumentClick($event: any): void;
onClick($event: any): void;
dateConfig: any;
checkDateConfig(dateConfig: any): boolean;
minDate: Date | any;
maxDate: Date | any;
dateFormat: string;
protected resetYearOptions(): void;
onYearRangeChange(): void;
writeValue(obj: any): void;
registerOnChange(fn: any): void;
registerOnTouched(fn: any): void;
hasPreMonth(): boolean;
onPreMonth(): void;
hasNextMonth(): boolean;
onNextMonth(currentDate?: Date, invocation?: any): void;
hasPreYearOption(): boolean;
onPreYearOption(): void;
hasNextYearOption(): boolean;
onNextYearOption(): void;
onSelectYear(year: any, $event?: Event): void;
protected onSelectDateChanged(): void;
onDisplayWeeksChange(): void;
onDisplayMonthsChange(): any[];
protected fillLeft(num: number): string;
isDisabledDay(date: any): boolean;
isSelectDay(date: any): boolean;
onSelectDate($event: any, date: any, invocation?: any): void;
onTimeChange(): void;
timeUp(type: any): void;
timeDown(type: any): void;
clearAll: () => void;
toggle($event: Event): void;
isTodayDisable(): boolean;
isDisabledTime(): boolean;
initDatePicker(): void;
confirmTime(event: any): void;
chooseToday(): void;
onSelectMonth($index: any): void;
changeHoverYear(item: number): void;
changeHoverMonth(item: number): void;
chooseDate: (date: string, event?: {}) => void;
readonly minDateDefined: boolean;
readonly maxDateDefined: boolean;
setI18nText(): void;
ngOnDestroy(): void;
}