@ipi-soft/ng-components
Version:
Custom Angular Components
82 lines (81 loc) • 3.17 kB
TypeScript
import { ChangeDetectorRef, ElementRef, NgZone } from '@angular/core';
import { FormGroup } from '@angular/forms';
import { ControlErrors } from '@ipi-soft/ng-components/select';
import { OSService, OverlayService } from '@ipi-soft/ng-components/services';
import { DefaultCalendarRangeStrategy } from './datepicker-selection-strategy.component';
import { IpiDatepickerService } from './datepicker-service';
import * as i0 from "@angular/core";
export interface DateSelectionEvent<D> {
value: D;
event: Event;
}
/** A class representing a range of dates. */
export declare class DateRange {
readonly start: Date | null;
readonly end: Date | null;
constructor(start: Date | null, end: Date | null);
}
export declare class DateRangeFormControls {
readonly start: string;
readonly end: string;
constructor(start: string, end: string);
}
export interface IpiDatepickerOptions {
label: string;
formGroup: FormGroup;
formControlName: string | DateRangeFormControls;
min?: Date;
max?: Date;
errors?: ControlErrors;
}
export declare class IpiDatepickerComponent {
private ngZone;
private osService;
private elementRef;
private overlayService;
private changeDetectorRef;
private datepickerService;
private rangeSelectionStrategy;
constructor(ngZone: NgZone, osService: OSService, elementRef: ElementRef, overlayService: OverlayService, changeDetectorRef: ChangeDetectorRef, datepickerService: IpiDatepickerService, rangeSelectionStrategy: DefaultCalendarRangeStrategy);
datepicker: ElementRef<HTMLElement> | null;
calendar: ElementRef<HTMLElement> | null;
options: IpiDatepickerOptions;
get activeDate(): Date | null;
set activeDate(value: Date);
get minDate(): Date | null;
set minDate(value: Date | null);
get maxDate(): Date | null;
set maxDate(value: Date | null);
get selectedDate(): DateRange | Date | null;
set selectedDate(value: DateRange | Date | null);
shouldShowCalendar: boolean;
closeButtonFocused: boolean;
formErrorMessage: string | null;
private errors;
private _activeDate;
private _selected;
private _minDate;
private _maxDate;
private formControlSubscriptions;
ngOnInit(): void;
ngAfterViewInit(): void;
ngOnDestroy(): void;
activateControl(): void;
onClick(event: PointerEvent): void;
getDisplayValue(): string;
getformErrorMessage(): string | null;
onCloseClick(): void;
onCloseKeyDown(event: KeyboardEvent): void;
handleDragAndDropEnd(event: any): void;
handleUserSelection(event: DateSelectionEvent<Date | null>): void;
private closeCalendar;
private generateCalendarPosition;
private setFormSubscriptions;
private checkPosition;
private initDefaultErrors;
private getErrorIfControlInvalid;
private setMinValidator;
private setMaxValidator;
static ɵfac: i0.ɵɵFactoryDeclaration<IpiDatepickerComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<IpiDatepickerComponent, "ipi-datepicker", never, { "options": { "alias": "options"; "required": false; }; }, {}, never, never, true, never>;
}