ardhrizk-ngx-daterangepicker-bootstrap
Version:
Date Range Picker - Forced to Angular 16 and Bootstrap 5
208 lines (207 loc) • 8.45 kB
TypeScript
import { ChangeDetectorRef, ElementRef, EventEmitter, OnChanges, OnInit, SimpleChanges } from '@angular/core';
import { NgxDaterangepickerLocaleService } from "./ngx-daterangepicker-locale.service";
import dayjs, { Dayjs } from "dayjs";
import * as i0 from "@angular/core";
export declare enum SideEnum {
left = "left",
right = "right"
}
export declare class NgxDaterangepickerBootstrapComponent implements OnInit, OnChanges {
private el;
private _ref;
private _localeService;
$event: any;
chosenLabel?: string;
calendarVariables: {
left: any;
right: any;
};
timepickerVariables: {
left: any;
right: any;
};
applyBtn: {
disabled: boolean;
};
sideEnum: typeof SideEnum;
chosenRange?: string | null;
rangesArray: Array<any>;
isShown: Boolean;
inline: boolean;
showCalInRanges: Boolean;
private tooltiptext;
private leftCalendar;
private rightCalendar;
private nowHoveredDate;
private pickingDate;
private _old;
private _minDate?;
private _maxDate?;
private _locale;
private _ranges;
startDate: Dayjs | undefined | null;
endDate: Dayjs | undefined | null;
dateLimit: number | null;
autoApply: Boolean;
singleDatePicker: Boolean;
showDropdowns: Boolean;
showWeekNumbers: Boolean;
showISOWeekNumbers: Boolean;
linkedCalendars: Boolean;
autoUpdateInput: Boolean;
alwaysShowCalendars: Boolean;
maxSpan: Boolean;
lockStartDate: Boolean;
timePicker: Boolean;
timePicker24Hour: Boolean;
timePickerIncrement: number;
timePickerSeconds: Boolean;
showClearButton: Boolean;
firstMonthDayClass: string | null | undefined;
lastMonthDayClass: string | null | undefined;
emptyWeekRowClass: string | null | undefined;
emptyWeekColumnClass: string | null | undefined;
firstDayOfNextMonthClass: string | null | undefined;
lastDayOfPreviousMonthClass: string | null | undefined;
showCustomRangeLabel?: boolean;
showCancel: boolean;
keepCalendarOpeningWithRange: boolean;
showRangeLabelOnInput: boolean;
customRangeDirection: boolean;
drops?: string;
opens?: string;
closeOnAutoApply: boolean;
set minDate(value: dayjs.Dayjs | string);
set maxDate(value: dayjs.Dayjs | string);
set locale(value: any);
set ranges(value: any);
choosedDate: EventEmitter<Object>;
rangeClicked: EventEmitter<Object>;
datesUpdated: EventEmitter<Object>;
startDateChanged: EventEmitter<Object>;
endDateChanged: EventEmitter<Object>;
cancelClicked: EventEmitter<Object>;
clearClicked: EventEmitter<void>;
pickerContainer?: ElementRef;
getMinDate(): dayjs.Dayjs | null | undefined;
getMaxDate(): dayjs.Dayjs | null | undefined;
get locale(): any;
get ranges(): any;
constructor(el: ElementRef, _ref: ChangeDetectorRef, _localeService: NgxDaterangepickerLocaleService);
ngOnChanges(changes: SimpleChanges): void;
ngOnInit(): void;
renderRanges(): void;
renderTimePicker(side: SideEnum): void;
renderCalendar(side: SideEnum): void;
setStartDate(startDate: any): void;
setEndDate(endDate: any): void;
isInvalidDate(date: any): any;
isCustomDate(date: any): any;
isTooltipDate(date: any): any;
updateView(): void;
updateMonthsInView(): void;
/**
* This is responsible for updating the calendars
*/
updateCalendars(): void;
updateElement(): void;
remove(): void;
/**
* this should calculate the label
*/
calculateChosenLabel(): void;
clickApply(e?: any): void;
clickCancel(e: any): void;
/**
* called when month is changed
* @param monthEvent get value in event.target.value
* @param side left or right
*/
monthChanged(monthEvent: any, side: SideEnum): void;
/**
* called when year is changed
* @param yearEvent get value in event.target.value
* @param side left or right
*/
yearChanged(yearEvent: any, side: SideEnum): void;
/**
* called when time is changed
* @param timeEvent an event
* @param side left or right
*/
timeChanged(timeEvent: any, side: SideEnum): void;
/**
* call when month or year changed
* @param month month number 0 -11
* @param year year eg: 1995
* @param side left or right
*/
monthOrYearChanged(month: number, year: number, side: SideEnum): void;
/**
* Click on previous month
* @param side left or right calendar
*/
clickPrev(side: SideEnum): void;
/**
* Click on next month
* @param side left or right calendar
*/
clickNext(side: SideEnum): void;
/**
* When hovering a date
* @param e event: get value by e.target.value
* @param side left or right
* @param row row position of the current date clicked
* @param col col position of the current date clicked
*/
hoverDate(e: any, side: SideEnum, row: number, col: number): void;
/**
* When selecting a date
* @param e event: get value by e.target.value
* @param side left or right
* @param row row position of the current date clicked
* @param col col position of the current date clicked
*/
clickDate(e: any, side: SideEnum, row: number, col: number): void;
/**
* Click on the custom range
* @param e: Event
* @param label
*/
clickRange(e: any, label: any): void;
show(e?: any): void;
hide(e?: any): void;
clearIncompleteDateSelection(): void;
/**
* handle click on all element in the component, useful for outside of click
* @param e event
*/
handleInternalClick(e: any): void;
/**
* update the locale options
* @param locale
*/
updateLocale(locale: any): void;
/**
* clear the daterange picker
*/
clear(): void;
/**
* Find out if the selected range should be disabled if it doesn't
* fit into minDate and maxDate limitations.
*/
disableRange(range: any): any;
/**
*
* @param date the date to add time
* @param side left or right
*/
private _getDateWithTime;
/**
* build the locale config
*/
private _buildLocale;
private _buildCells;
static ɵfac: i0.ɵɵFactoryDeclaration<NgxDaterangepickerBootstrapComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<NgxDaterangepickerBootstrapComponent, "ngx-daterangepicker-bootstrap", never, { "startDate": "startDate"; "endDate": "endDate"; "dateLimit": "dateLimit"; "autoApply": "autoApply"; "singleDatePicker": "singleDatePicker"; "showDropdowns": "showDropdowns"; "showWeekNumbers": "showWeekNumbers"; "showISOWeekNumbers": "showISOWeekNumbers"; "linkedCalendars": "linkedCalendars"; "autoUpdateInput": "autoUpdateInput"; "alwaysShowCalendars": "alwaysShowCalendars"; "maxSpan": "maxSpan"; "lockStartDate": "lockStartDate"; "timePicker": "timePicker"; "timePicker24Hour": "timePicker24Hour"; "timePickerIncrement": "timePickerIncrement"; "timePickerSeconds": "timePickerSeconds"; "showClearButton": "showClearButton"; "firstMonthDayClass": "firstMonthDayClass"; "lastMonthDayClass": "lastMonthDayClass"; "emptyWeekRowClass": "emptyWeekRowClass"; "emptyWeekColumnClass": "emptyWeekColumnClass"; "firstDayOfNextMonthClass": "firstDayOfNextMonthClass"; "lastDayOfPreviousMonthClass": "lastDayOfPreviousMonthClass"; "showCustomRangeLabel": "showCustomRangeLabel"; "showCancel": "showCancel"; "keepCalendarOpeningWithRange": "keepCalendarOpeningWithRange"; "showRangeLabelOnInput": "showRangeLabelOnInput"; "customRangeDirection": "customRangeDirection"; "drops": "drops"; "opens": "opens"; "closeOnAutoApply": "closeOnAutoApply"; "minDate": "minDate"; "maxDate": "maxDate"; "locale": "locale"; "ranges": "ranges"; "isInvalidDate": "isInvalidDate"; "isCustomDate": "isCustomDate"; "isTooltipDate": "isTooltipDate"; }, { "choosedDate": "choosedDate"; "rangeClicked": "rangeClicked"; "datesUpdated": "datesUpdated"; "startDateChanged": "startDateChanged"; "endDateChanged": "endDateChanged"; "cancelClicked": "cancelClicked"; "clearClicked": "clearClicked"; }, never, never, false, never>;
}