UNPKG

@qeydar/datepicker

Version:

A comprehensive Date and Time Picker for Angular with Jalali calendar support

128 lines (127 loc) 6.12 kB
import { EventEmitter, OnInit, OnChanges, SimpleChanges, ElementRef, AfterViewInit, ChangeDetectorRef, OnDestroy, TemplateRef, QueryList } from '@angular/core'; import { DateAdapter, GregorianDateAdapter, JalaliDateAdapter } from '../date-adapter'; import { CustomLabels, DateRange, Lang_Locale, YearRange } from '../utils/models'; import { DestroyService, QeydarDatePickerService } from '../date-picker.service'; import { CalendarType, DatepickerMode } from '../utils/types'; import { TimePickerComponent } from '../time-picker/time-picker.component'; import { CustomTemplate } from '../utils/template.directive'; import * as i0 from "@angular/core"; export declare class DatePickerPopupComponent implements OnInit, OnChanges, AfterViewInit, OnDestroy { el: ElementRef; cdr: ChangeDetectorRef; dpService: QeydarDatePickerService; jalali: JalaliDateAdapter; gregorian: GregorianDateAdapter; destroy$: DestroyService; rtl: boolean; selectedDate: Date | null; selectedStartDate: Date | null; selectedEndDate: Date | null; mode: DatepickerMode; isRange: boolean; customLabels: Array<CustomLabels>; calendarType: CalendarType; minDate: Date | null; maxDate: Date | null; cssClass: string; footerDescription: string; activeInput: 'start' | 'end' | ''; showSidebar: boolean; showToday: boolean; showTimePicker: boolean; timeDisplayFormat: string; dateFormat: string; disabledDates: Array<Date | string>; disabledDatesFilter: (date: Date) => boolean; disabledTimesFilter: (date: Date) => boolean; templates: QueryList<CustomTemplate>; dateSelected: EventEmitter<Date>; dateRangeSelected: EventEmitter<DateRange>; closePicker: EventEmitter<void>; clickInside: EventEmitter<boolean>; itemSelector: ElementRef; timePicker: TimePickerComponent; dateAdapter: DateAdapter<Date>; weekDays: string[]; periods: Array<CustomLabels>; days: Date[]; currentDate: Date; selectedPeriod: any; tempEndDate: Date | null; monthListNum: number[]; yearList: number[]; yearRanges: Array<YearRange>; viewMode: 'days' | 'months' | 'years'; lang: Lang_Locale; timeoutId: any; dayTemplate: TemplateRef<any>; monthTemplate: TemplateRef<any>; quarterTemplate: TemplateRef<any>; yearTemplate: TemplateRef<any>; get getDate(): Date; constructor(el: ElementRef, cdr: ChangeDetectorRef, dpService: QeydarDatePickerService, jalali: JalaliDateAdapter, gregorian: GregorianDateAdapter, destroy$: DestroyService); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; ngAfterViewInit(): void; ngOnDestroy(): void; initializeComponent(): void; initLabels(): void; generateDefaultPeriods(today: Date): void; setDateAdapter(): void; generateCalendar(): void; setViewMode(): void; showMonthSelector(): void; showYearSelector(): void; onTimeChange(time: string | Date): void; updateSingleDateTime(timeDate: Date): void; updateRangeDateTime(timeDate: Date): void; private applyTimeToDate; setTimePickerDate(date?: Date): void; selectDate(date: Date): void; handleRangeSelection(date: Date): void; handleSingleSelection(date: Date): void; selectMonth(month: number, closeAfterSelection?: boolean): void; selectYear(year: number, sideSelector?: boolean): void; goPrev(): void; goNext(): void; prevMonth(): void; nextMonth(): void; isSelected(date: Date): boolean; isRangeStart(date: Date): boolean; isRangeEnd(date: Date): boolean; isInRange(date: Date): boolean; isToday(date: Date): boolean; isActiveMonth(month: number): boolean; isActiveYear(year: number): boolean; isActiveYearRange(startYear: number): boolean; isDateDisabled(date: Date): boolean; isMonthDisabled(month: number): boolean; isYearDisabled(year: number): boolean; isYearRangeDisabled(yearRange: YearRange): boolean; isPrevMonthDisabled(): boolean; isNextMonthDisabled(): boolean; parseDisabledDates(): Date[]; onMouseEnter(date: Date, event: Event): void; onClickInside(): void; getMonthName(month: number): string; getCurrentMonthName(): string; getCurrentYear(): number; getWeekDays(): string[]; isSameMonth(date1: Date, date2: Date): boolean; closeDatePicker(): void; generateYearRanges(length?: number): void; generateYearList(length?: number): void; selectYearRange(startYear: number): void; isActivePeriod(period: CustomLabels): boolean; selectPeriod(period: CustomLabels): void; onTodayClick(): void; onOkClick(): void; scrollToSelectedItem(id?: number | null): void; determineScrollItemId(id: number | null): number | null; handleChanges(changes: SimpleChanges): void; setInitialDate(): void; determineInitialDate(): Date; adjustCurrentDateToValidRange(): void; static ɵfac: i0.ɵɵFactoryDeclaration<DatePickerPopupComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<DatePickerPopupComponent, "qeydar-date-picker-popup", never, { "rtl": "rtl"; "selectedDate": "selectedDate"; "selectedStartDate": "selectedStartDate"; "selectedEndDate": "selectedEndDate"; "mode": "mode"; "isRange": "isRange"; "customLabels": "customLabels"; "calendarType": "calendarType"; "minDate": "minDate"; "maxDate": "maxDate"; "cssClass": "cssClass"; "footerDescription": "footerDescription"; "activeInput": "activeInput"; "showSidebar": "showSidebar"; "showToday": "showToday"; "showTimePicker": "showTimePicker"; "timeDisplayFormat": "timeDisplayFormat"; "dateFormat": "dateFormat"; "disabledDates": "disabledDates"; "disabledDatesFilter": "disabledDatesFilter"; "disabledTimesFilter": "disabledTimesFilter"; "templates": "templates"; }, { "dateSelected": "dateSelected"; "dateRangeSelected": "dateRangeSelected"; "closePicker": "closePicker"; "clickInside": "clickInside"; }, never, never, true>; }