UNPKG

@doku-dev/doku-fragment

Version:

A new Angular UI library that moving away from Bootstrap and built from scratch.

85 lines (84 loc) 3.78 kB
import { DatePipe, NgClass } from '@angular/common'; import { AfterViewInit, ApplicationRef, ChangeDetectorRef, ComponentRef, EnvironmentInjector, Injector, NgZone, OnDestroy, OnInit, Renderer2 } from '@angular/core'; import { ControlValueAccessor, NgControl } from '@angular/forms'; import { DokuFormField, DokuFormFieldAccessor, DokuFormFieldAccessorValidateValue } from '../../form-field'; import { DokuDatePickerBase } from '../base/date-picker-base.component'; import { DokuDatePickerBasicProps } from '../common/date-picker-basic-props.component'; import * as i0 from "@angular/core"; export declare class DokuDatePicker extends DokuDatePickerBasicProps implements OnDestroy, OnInit, ControlValueAccessor, DokuFormFieldAccessor, AfterViewInit { private renderer; protected envInjector: EnvironmentInjector; private injector; protected appRef: ApplicationRef; private ngZone; private datePipe; private cdr; private document; private localeId; private ngControl?; private formField?; protected readonly class: NgClass['ngClass']; /** * Whether to close date picker dropdown after selecting the date. * * @default true */ closeOnDateClick: boolean; /** * Date format that will be used for formatting displayed value in the input field. It follows Angular DatePipe's format options. * * @default 'dd/MM/yyyy' */ dateFormat: string; /** * Placeholder of the date picker input. * * @default 'dd/mm/yyyy' */ placeholder: string; private isOpen; private portalElement?; private datePickerBaseRef?; private destroy$; private cleanup?; constructor(renderer: Renderer2, envInjector: EnvironmentInjector, injector: Injector, appRef: ApplicationRef, ngZone: NgZone, datePipe: DatePipe, cdr: ChangeDetectorRef, document: Document, localeId: string, ngControl?: NgControl | undefined, formField?: DokuFormField | undefined); protected get formattedValue(): string | null; private get inputWrapperElement(); ngOnInit(): void; ngAfterViewInit(): void; ngOnDestroy(): void; onDisable?: ((value: boolean) => void) | undefined; onReadonly?: ((value: boolean) => void) | undefined; onValidate?: ((value?: DokuFormFieldAccessorValidateValue | undefined) => void) | undefined; registerOnDisable(fn: (value: boolean) => void): void; registerOnValidate?(fn: (value?: DokuFormFieldAccessorValidateValue | undefined) => void): void; registerOnReadonly(fn: (value: boolean) => void): void; onChange?: (value: unknown) => void; onTouched?: () => void; writeValue(value?: Date | string | null): void; registerOnChange(fn: (value: unknown) => void): void; registerOnTouched(fn: () => void): void; setDisabledState?(isDisabled: boolean): void; /** * Open the date picker dropdown. */ open(): void; /** * Close the date picker dropdown. */ close(): void; /** * Toggle the date picker dropdown. */ toggle(): void; private createPortalElement; protected createComponentRef(props: { elementInjector: Injector; }): ComponentRef<DokuDatePickerBase>; private createDatePickerComponent; private onClickHandler; private doAutoUpdateDropdownPosition; private setInputWrapperCursorState; static ɵfac: i0.ɵɵFactoryDeclaration<DokuDatePicker, [null, null, null, null, null, null, null, null, null, { optional: true; self: true; }, { optional: true; host: true; }]>; static ɵcmp: i0.ɵɵComponentDeclaration<DokuDatePicker, "doku-date-picker", ["dokuDatePicker"], { "closeOnDateClick": "closeOnDateClick"; "dateFormat": "dateFormat"; "placeholder": "placeholder"; }, {}, never, never, true>; }