import { DatePipe } from '@angular/common'; import { AfterViewInit, ChangeDetectorRef, EventEmitter, OnDestroy, OnInit, Renderer2, TemplateRef, Type } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { Subscription } from 'rxjs'; import { DateService } from '../../utilities/service/date.service'; import { SafeAny } from '../../utilities/type/type'; import { BzBaseComponent } from '../base/base.component'; import { BzDatepickerConfig } from './date-picker-config.service'; import { MonthMenu, RangePicker } from './date-picker.interface'; import { BzDatePickerService } from './date-picker.service'; import { StringBzCalendarSize } from './type'; export declare class BzCalendarComponent extends BzBaseComponent implements OnInit, AfterViewInit, OnDestroy, ControlValueAccessor { private datePickerService; private dateService; private _renderer2; private _cd; private _datePickerConfig; WEEK_DAYS: number; daysInMonth: any[]; rows: any[]; columns: any[]; rows2: number[]; columns2: number[]; currentYear: number; currentMonth: number; currentDay: number; currentDate: Date; pickerYear: number; pickerMonth: number; pickerDate: Date; activeDate: Date; activeHour: string; activeMinute: string; private _date; private _range; startDate: Date; rangePickerValue: boolean; _datePipe: DatePipe; hourArray: string[]; minuteArray: string[]; timePickerValue: boolean; pickerView: boolean; private _dateHourMinutes; private oldDate; weekDaysList: Date[]; firstWeekDayName: number; customCellListValue: SafeAny; subscriptions: Subscription[]; onChanged: any; onTouched: any; private firstDayOfWeek; isDisabled: boolean; yearsArray: number[]; monthArray: MonthMenu[]; isDisplayedYearsMenu: boolean; isDisplayedMonthsMenu: boolean; isTimePicker: boolean; private subscription; private subscriptionRead; private _pickerInstance; private _formControl; inputElement: HTMLInputElement; min: Date; max: Date; vlFn: Function; set date(value: Date); set rangePicker(value: boolean | string); set range(val: RangePicker); dateFormat: string | undefined; set timePicker(value: boolean | string); set firstDay(value: string); customCell: TemplateRef; customCellComponent: Type; yearForward: number; yearsBackForward: number; formControlName: string; locale: string; size: StringBzCalendarSize; set customCellList(value: SafeAny); dateChange: EventEmitter; rangeChange: EventEmitter; navigatePicker: EventEmitter; constructor(datePickerService: BzDatePickerService, dateService: DateService, _renderer2: Renderer2, _cd: ChangeDetectorRef, _datePickerConfig: BzDatepickerConfig); ngOnInit(): void; ngAfterViewInit(): void; get date(): Date; get range(): RangePicker; get pickerConfigLabel(): import("./date-picker.interface").DatePickerLabel; /** * Get date format by locale. * * @author Federico Gambardella * @param {void} */ private _getDateFormatByLocale; /** * Manage calendar picker. * * @author Federico Gambardella * @return {void} */ private _manageCalendarPicker; /** * Listen to write value. * * @author Federico Gambardella * @param {DatePicker | undefined} pickerInstance */ private _listenToWriteValue; /** * Listen to write value. * * @author Federico Gambardella * @param {DatePicker | undefined} pickerInstance */ /** * Set date format for timepicker mode. * * @author Federico Gambardella * @param {SafeDatePicker } pickerInstance * @return {void} */ private _setTimePickerValue; /** * Set rangePicker value. * * @author Federico Gambardella * @param {SafeDatePicker} pickerInstance * @returns {void} */ private _setRangePickerValue; /** * Set initila month and yaer. * * @author Federico Gambardella */ private _setInitalMonthYear; /** * Set week days on int. * * @author Federico Gambardella * @return {void} */ private _setWeekDaysOnInit; /** * Set first week day name. * * @author Federico Gambardella */ private _setFirstWeekDayName; /** * Write value * * @author Federico Gambardella * @param {any} value * @returns {void} */ writeValue(value: any, isRead?: boolean): void; /** * Init picker. * * @author Federico Gambardella * @returns {void} */ private _initPicker; /** * Set date hour and minutes. * * @author Federico Gambardella * @returns {void} */ private _setDateHourAndMinutes; /** * Init picker based on custom cell component. * * @author Federico Gambardella * @return {void} */ private _initPickerByCellComponent; /** * Set active hour and minutes. * * @author Federico Gambardella * @returns {void} */ private _setActiveHourAndMinutes; /** * Get last day in month. * * @author Federico Gambardella * @param {number} year * @param {number} month * @returns {number} */ private _getLastdaysInMonth; /** * Set date on init. * * @author Federico Gambardella * @returns {void} */ private _setDateOnInit; /** * Compare equal date. * * @author Federico Gambardella * @param {Date} dateFirst * @param {Date} dateSecond * @returns {boolean} */ private _compareEqualDate; /** * Build date object. * * @author Federico Gambardella * @param {int} the month number, 0 based * @param {int} The year, not zero based, required to account for leap years * @return {Date[]} List with date objects for each day of the month */ private _getDaysInMonth; /** * Set date object. * * @author Federico Gambardella * @param {number} year * @param {number} month * @param {Date} date * @param {string} dayWeek * @returns {DateObject} */ private _setDateObject; /** * Get current date. * * @author Federico Gambardella * @return {void} */ private _getCurrentDate; /** * Get next date. * * @author Federico Gambardella * @returns {void} */ getNextDate(): void; /** * Get prev date. * * @author Federico Gambardella * @returns {void} */ getPrevDate(): void; /** * Calculate last days of before month. * * @author Federico Gambardella * @param {number} countLimiter * @returns {void} */ private _calculateDaysOtherMonthBefore; /** * Calculate first days of after month. * * @author Federico Gambardella * @param {number} countLimiter * @returns {void} */ private _calculateDaysOtherMonthAfter; /** * Build picker. * * @author Federico Gambardella * @returns {void} */ private _calculateDate; /** * Set day week offset by locale. * * @author Federico Gambardella * @param {number} localeFirstDay * @param {number} firstDay * @returns {number} */ private _setWeekOffset; /** * Calculate date by selected year and month. * * @author Federico Gambardella * @return {void} */ private _calculatePickerDate; /** * Calculate date of picker. * * @author Federico Gambardella * @param pickerDate * @param format */ private _calculatePickerDateInput; /** * Set picker date in normal mode. * * @author Federico Gambardella * @param {Date} pickerDate * @param {string} stringifyDate * @returns {void} */ private _setPickerDateInNormalMode; /** * Set picker date in range mode. * * @author Federico Gambardella * @param {Date} pickerDate * @param {string} format * @returns {void} */ private _setPickerdateInRangeMode; /** * Set picker date whitout range in input. * * @author Federico Gambardella * @param {Date} pickerDate * @param {string} format * @return {void} */ private _setPickerDateNoRange; /** * Set picker date when range has no end date. * * @author Federico Gambardella * @param {Date} pickerDate * @param {string} format * @return {void} */ private _setPickerDateNoEndDate; /** * Set picker date with range in input. * * @author Federico Gambardella * @param {Date} pickerDate * @param {string} format * @returns {void} */ private _setPickerDateWidthRange; /** * Write range. * * @author Federico Gambardella * @param {any} op1 * @param {any} op2 * @returns {void} */ private _writeRange; /** * Convert Date to string. * * @author Federico Gambardella * @param {Date} date * @param {string} format * @returns {string} */ private _stringifyDate; /** * Convert range date to string. * * @author Federico Gambardella * @param {Date} startDate * @param {Date} endDate * @returns {string} */ private _stringifyRange; /** * Pick date. * * @author Federico Gambardella * @param {number} day * @return {void} */ getDate(day: number): void; /** * Set minutes to date. * * @author Federico Gambardella * @returns {TimePicker} */ private _setHourMinutesToDate; /** * Check active date. * * @author Federico Gambardella * @param {number} rowIndex * @param {number} columnIndex * @returns {void} */ checkActiveDate(rowIndex: number, columnIndex: number): boolean; /** * Check the condition for which no date should be selected. * * @author Federico Gambardella * @param {number} rowIndex * @param {number} columnIndex * @returns {boolean} */ noDateCondition(rowIndex: number, columnIndex: number): boolean; /** * Check range date. * * @author Federico Gambardella * @param {number} rowIndex * @param {number} columnIndex * @returns {boolean} */ checkRange(rowIndex: number, columnIndex: number): boolean; /** * Check first index range. * * @author Federico Gambardella * @param {number} rowIndex * @param {number} columnIndex * @returns {boolean} */ checkRangeFirstIndex(rowIndex: number, columnIndex: number): boolean; /** * Check last index range. * * @author Federico Gambardella * @param {number} rowIndex * @param {number} columnIndex * @returns {boolean} */ checkRangeLastIndex(rowIndex: number, columnIndex: number): boolean; /** * Get selected hour * * @author Federico Gambardella * @param {string} hour * @return {void} */ getHour(hour: string): void; /** * Get selected minutes. * * @author Federico Gambardella * @param {string} minute * @return {void} */ getMinutes(minute: string): void; /** * Get time date. * * @author Federico Gambardella * @param {Date} date * @return {void} */ getTimeDate(date?: Date): void; /** * Set active date. * * @author Federico Gambardella * @param {Date} date * @return {void} */ private _setActiveDate; /** * Show time picker. * * @author Federico Gambardella * @return {void} */ showTimePicker(): void; /** * Show calendar picker. * * @author Federico Gambardella * @returns {void} */ showCalendarPicker(): void; /** * Get now date. * * @author Federico Gambardella * @return {void} */ getNowDate(): void; /** * Set week day name. * * @author Federico Gambardella * @return {void} */ private _setWeekDays; /** * Fill hour and month array * * @author Federico Gambardella * @return {void} */ private _fillHourAndMinutesArray; /** * Update calendar picker. * * @author Federico Gambardella * @param {Date} date * @return {void} */ updateCalendarPicker(date: Date): void; /** * Toggle years menu. * * @uathor Federico Gambardella * @return {void} */ toggleYearsMenu(): void; registerOnChange(fn: (item: any) => void): void; registerOnTouched(fn: () => void): void; /** * Disable input. * * @author Federico Gambardella * @param {boolean} isDisabled */ setDisabledState(isDisabled: boolean): void; ngOnDestroy(): void; }