UNPKG

ng-material-date-range-picker

Version:
127 lines (126 loc) 5.85 kB
/** * @(#)ng-date-picker.component.ts Sept 05, 2023 * * @author Aakash Kumar */ import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnInit } from '@angular/core'; import { DateRange } from '@angular/material/datepicker'; import { ISelectDateOption } from './model/select-date-option'; import { SelectedDateEvent } from '../public-api'; import * as i0 from "@angular/core"; export declare class NgDatePickerComponent implements OnInit, AfterViewInit { private cdref; private el; isDateOptionList: boolean; isCustomRange: boolean; inputLabel: string; staticOptionId: string; dynamicOptionId: string; calendarId: string; enableDefaultOptions: boolean; selectedDates: DateRange<Date> | null; dateFormat: string; isShowStaticDefaultOptions: boolean; hideDefaultOptions: boolean; cdkConnectedOverlayOffsetX: number; cdkConnectedOverlayOffsetY: number; listCdkConnectedOverlayOffsetY: number; listCdkConnectedOverlayOffsetX: number; selectedOptionIndex: number; displaySelectedLabel: boolean; cdkConnectedOverlayPush: boolean; cdkConnectedOverlayPositions: never[]; minDate: Date; maxDate: Date; onDateSelectionChanged: EventEmitter<SelectedDateEvent>; dateListOptions: EventEmitter<ISelectDateOption[]>; private _dateDropDownOptions; constructor(cdref: ChangeDetectorRef, el: ElementRef); set dateDropDownOptions(defaultDateList: ISelectDateOption[]); get dateDropDownOptions(): ISelectDateOption[]; ngOnInit(): void; ngAfterViewInit(): void; /** * This method toggles the visibility of default date option's List. */ toggleDateOptionSelectionList(event?: MouseEvent): void; /** * This method updates the date range on button click. * * @param input HTMLInputElement * @param selectedDates DateRange<Date> */ updateCustomRange(input: HTMLInputElement, selectedDates: DateRange<Date> | null): void; /** * This method update the date on specified option. * * @param option ISelectDateOption * @param input HTMLInputElement */ updateSelection(option: ISelectDateOption, input: HTMLInputElement): void; selectCustomOption(): void; /** * This method toggles the custom date range selection view. */ toggleCustomDateRangeView(): void; /** * Clears the selected dates and resets date-related properties. * * @param event - The mouse event that triggered the clear action. */ clearSelection(event: MouseEvent): void; /** * This method sets clicked element as selected. * @param option ISelectDateOption */ private resetOptionSelection; /** * Updates the selected dates based on the given option and input element. * * @param option - The date option selected by the user. * @param input - The HTML input element to update. */ private updateDateOnOptionSelect; /** * This method updates dates on selection. * * @param input HTMLInputElement * @param startDate Date * @param endDate Date */ private updateSelectedDates; /** * This method converts the given date into specified string format. * * @param date Date * @returns formatted date. */ private getDateString; /** * This method return the number of days in moth on specified date. * * @param date Date * @returns number */ private getDaysInMonth; /** * This method clone the data. * * @param data T * @returns T */ private getClone; /** * This method update the default date values on init. */ private updateDefaultDatesValues; /** * This method updates the date values based on default option selection. * * @param selectedOption ISelectDateOption * @param input HTMLInputElement */ private updatedFromListValueSelection; static ɵfac: i0.ɵɵFactoryDeclaration<NgDatePickerComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<NgDatePickerComponent, "ng-date-range-picker", never, { "inputLabel": { "alias": "inputLabel"; "required": false; }; "staticOptionId": { "alias": "staticOptionId"; "required": false; }; "dynamicOptionId": { "alias": "dynamicOptionId"; "required": false; }; "calendarId": { "alias": "calendarId"; "required": false; }; "enableDefaultOptions": { "alias": "enableDefaultOptions"; "required": false; }; "selectedDates": { "alias": "selectedDates"; "required": false; }; "dateFormat": { "alias": "dateFormat"; "required": false; }; "isShowStaticDefaultOptions": { "alias": "isShowStaticDefaultOptions"; "required": false; }; "hideDefaultOptions": { "alias": "hideDefaultOptions"; "required": false; }; "cdkConnectedOverlayOffsetX": { "alias": "cdkConnectedOverlayOffsetX"; "required": false; }; "cdkConnectedOverlayOffsetY": { "alias": "cdkConnectedOverlayOffsetY"; "required": false; }; "listCdkConnectedOverlayOffsetY": { "alias": "listCdkConnectedOverlayOffsetY"; "required": false; }; "listCdkConnectedOverlayOffsetX": { "alias": "listCdkConnectedOverlayOffsetX"; "required": false; }; "selectedOptionIndex": { "alias": "selectedOptionIndex"; "required": false; }; "displaySelectedLabel": { "alias": "displaySelectedLabel"; "required": false; }; "cdkConnectedOverlayPush": { "alias": "cdkConnectedOverlayPush"; "required": false; }; "cdkConnectedOverlayPositions": { "alias": "cdkConnectedOverlayPositions"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "dateDropDownOptions": { "alias": "dateDropDownOptions"; "required": false; }; }, { "onDateSelectionChanged": "onDateSelectionChanged"; "dateListOptions": "dateListOptions"; }, never, never, false, never>; }