UNPKG

@ng-matero/extensions

Version:
133 lines (132 loc) 6.36 kB
import { NumberInput } from '@angular/cdk/coercion'; import { TemplatePortal } from '@angular/cdk/portal'; import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnChanges, OnDestroy, SimpleChanges } from '@angular/core'; import { SubscriptionLike } from 'rxjs'; import { DatetimeAdapter } from '@ng-matero/extensions/core'; import { MtxClockView } from './clock'; import { MtxDatetimepickerFilterType } from './datetimepicker-filtertype'; import { MtxDatetimepickerIntl } from './datetimepicker-intl'; import { MtxAMPM } from './datetimepicker-types'; import * as i0 from "@angular/core"; export declare class MtxTimeInput implements OnDestroy { private element; private cdr; set timeInterval(value: NumberInput); private _interval; set timeMin(value: NumberInput); private _min; set timeMax(value: NumberInput); private _max; set timeValue(value: NumberInput); timeValueChanged: EventEmitter<NumberInput>; private _value; private keyDownListener; private keyPressListener; private inputEventListener; constructor(element: ElementRef, cdr: ChangeDetectorRef); get hasFocus(): any; get inputElement(): HTMLInputElement; get valid(): boolean; get invalid(): boolean; blur(): void; focus(): void; /** * Write value to inputElement * @param value NumberInput */ writeValue(value: NumberInput): void; /** * Writes value to placeholder * @param value NumberInput */ writePlaceholder(value: NumberInput): void; keyDownHandler(event: KeyboardEvent): void; /** * Prevent non number inputs in the inputElement with the exception of Enter/BackSpace * @param event KeyboardEvent */ keyPressHandler(event: KeyboardEvent): void; inputChangedHandler(): void; clampInputValue(): void; /** * Remove event listeners on destruction */ ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<MtxTimeInput, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<MtxTimeInput, "input.mtx-time-input", ["mtxTimeInput"], { "timeInterval": { "alias": "timeInterval"; "required": false; }; "timeMin": { "alias": "timeMin"; "required": false; }; "timeMax": { "alias": "timeMax"; "required": false; }; "timeValue": { "alias": "timeValue"; "required": false; }; }, { "timeValueChanged": "timeValueChanged"; }, never, never, true, never>; } export declare class MtxTime<D> implements OnChanges, AfterViewInit, OnDestroy { private _adapter; private _changeDetectorRef; protected _datetimepickerIntl: MtxDatetimepickerIntl; /** Emits when the currently selected date changes. */ readonly selectedChange: EventEmitter<D>; /** Emits when any date changes. */ readonly activeDateChange: EventEmitter<D>; /** Emits when any date is selected. */ readonly _userSelection: EventEmitter<void>; /** Emits when AM/PM button are clicked. */ readonly ampmChange: EventEmitter<MtxAMPM>; /** Emits when AM/PM button are clicked. */ readonly clockViewChange: EventEmitter<MtxClockView>; /** A function used to filter which dates are selectable. */ dateFilter: (date: D, type: MtxDatetimepickerFilterType) => boolean; /** Step over minutes. */ interval: number; /** Input for action buttons. */ actionsPortal: TemplatePortal | null; protected hourInputElement: ElementRef<HTMLInputElement> | undefined; protected hourInputDirective: MtxTimeInput | undefined; protected minuteInputElement: ElementRef<HTMLInputElement> | undefined; protected minuteInputDirective: MtxTimeInput | undefined; datetimepickerIntlChangesSubscription: SubscriptionLike; /** Whether the clock uses 12 hour format. */ twelvehour: boolean; /** Whether the time is now in AM or PM. */ AMPM: MtxAMPM; /** * The date to display in this clock view. */ get activeDate(): D; set activeDate(value: D); private _activeDate; /** The currently selected date. */ get selected(): D | null; set selected(value: D | null); private _selected; /** The minimum selectable date. */ get minDate(): D | null; set minDate(value: D | null); private _minDate; /** The maximum selectable date. */ get maxDate(): D | null; set maxDate(value: D | null); private _maxDate; /** Whether the clock should be started in hour or minute view. */ get clockView(): MtxClockView; set clockView(value: MtxClockView); /** Whether the clock is in hour view. */ private _clockView; get isHourView(): boolean; get isMinuteView(): boolean; get hour(): string; get minute(): string; prefixWithZero(value: number): string; constructor(_adapter: DatetimeAdapter<D>, _changeDetectorRef: ChangeDetectorRef, _datetimepickerIntl: MtxDatetimepickerIntl); ngOnChanges(changes: SimpleChanges): void; ngAfterViewInit(): void; ngOnDestroy(): void; focusInputElement(): void; _handleHourInputChange(value: NumberInput): void; _updateHourForAmPm(value: number): number; _handleMinuteInputChange(value: NumberInput): void; _handleFocus(clockView: MtxClockView): void; _timeSelected(date: D): void; _onActiveDateChange(date: D): void; _handleSelection(): void; _handleOk(): void; _handleCancel(): void; static ɵfac: i0.ɵɵFactoryDeclaration<MtxTime<any>, never>; static ɵcmp: i0.ɵɵComponentDeclaration<MtxTime<any>, "mtx-time", ["mtxTime"], { "dateFilter": { "alias": "dateFilter"; "required": false; }; "interval": { "alias": "interval"; "required": false; }; "actionsPortal": { "alias": "actionsPortal"; "required": false; }; "twelvehour": { "alias": "twelvehour"; "required": false; }; "AMPM": { "alias": "AMPM"; "required": false; }; "activeDate": { "alias": "activeDate"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "clockView": { "alias": "clockView"; "required": false; }; }, { "selectedChange": "selectedChange"; "activeDateChange": "activeDateChange"; "_userSelection": "_userSelection"; "ampmChange": "ampmChange"; "clockViewChange": "clockViewChange"; }, never, never, true, never>; static ngAcceptInputType_twelvehour: unknown; }