| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- /**
- * @license
- * Copyright Google LLC All Rights Reserved.
- *
- * Use of this source code is governed by an MIT-style license that can be
- * found in the LICENSE file at https://angular.io/license
- */
- import { ElementRef, EventEmitter, OnDestroy } from '@angular/core';
- import { AbstractControl, ControlValueAccessor, ValidationErrors, Validator } from '@angular/forms';
- import { DateAdapter, MatDateFormats, ThemePalette } from '@angular/material/core';
- import { MatFormField } from '@angular/material/form-field';
- import { MatDatepicker } from './datepicker';
- /** @docs-private */
- export declare const MAT_DATEPICKER_VALUE_ACCESSOR: any;
- /** @docs-private */
- export declare const MAT_DATEPICKER_VALIDATORS: any;
- /**
- * An event used for datepicker input and change events. We don't always have access to a native
- * input or change event because the event may have been triggered by the user clicking on the
- * calendar popup. For consistency, we always use MatDatepickerInputEvent instead.
- */
- export declare class MatDatepickerInputEvent<D> {
- /** Reference to the datepicker input component that emitted the event. */
- target: MatDatepickerInput<D>;
- /** Reference to the native input element associated with the datepicker input. */
- targetElement: HTMLElement;
- /** The new value for the target datepicker input. */
- value: D | null;
- constructor(
- /** Reference to the datepicker input component that emitted the event. */
- target: MatDatepickerInput<D>,
- /** Reference to the native input element associated with the datepicker input. */
- targetElement: HTMLElement);
- }
- /** Directive used to connect an input to a MatDatepicker. */
- export declare class MatDatepickerInput<D> implements ControlValueAccessor, OnDestroy, Validator {
- private _elementRef;
- _dateAdapter: DateAdapter<D>;
- private _dateFormats;
- private _formField;
- /** The datepicker that this input is associated with. */
- matDatepicker: MatDatepicker<D>;
- _datepicker: MatDatepicker<D>;
- /** Function that can be used to filter out dates within the datepicker. */
- matDatepickerFilter: (date: D | null) => boolean;
- _dateFilter: (date: D | null) => boolean;
- /** The value of the input. */
- value: D | null;
- private _value;
- /** The minimum valid date. */
- min: D | null;
- private _min;
- /** The maximum valid date. */
- max: D | null;
- private _max;
- /** Whether the datepicker-input is disabled. */
- disabled: boolean;
- private _disabled;
- /** Emits when a `change` event is fired on this `<input>`. */
- readonly dateChange: EventEmitter<MatDatepickerInputEvent<D>>;
- /** Emits when an `input` event is fired on this `<input>`. */
- readonly dateInput: EventEmitter<MatDatepickerInputEvent<D>>;
- /** Emits when the value changes (either due to user input or programmatic change). */
- _valueChange: EventEmitter<D | null>;
- /** Emits when the disabled state has changed */
- _disabledChange: EventEmitter<boolean>;
- _onTouched: () => void;
- private _cvaOnChange;
- private _validatorOnChange;
- private _datepickerSubscription;
- private _localeSubscription;
- /** The form control validator for whether the input parses. */
- private _parseValidator;
- /** The form control validator for the min date. */
- private _minValidator;
- /** The form control validator for the max date. */
- private _maxValidator;
- /** The form control validator for the date filter. */
- private _filterValidator;
- /** The combined form control validator for this input. */
- private _validator;
- /** Whether the last value set on the input was valid. */
- private _lastValueValid;
- constructor(_elementRef: ElementRef<HTMLInputElement>, _dateAdapter: DateAdapter<D>, _dateFormats: MatDateFormats, _formField: MatFormField);
- ngOnDestroy(): void;
- /** @docs-private */
- registerOnValidatorChange(fn: () => void): void;
- /** @docs-private */
- validate(c: AbstractControl): ValidationErrors | null;
- /**
- * @deprecated
- * @breaking-change 8.0.0 Use `getConnectedOverlayOrigin` instead
- */
- getPopupConnectionElementRef(): ElementRef;
- /**
- * Gets the element that the datepicker popup should be connected to.
- * @return The element to connect the popup to.
- */
- getConnectedOverlayOrigin(): ElementRef;
- writeValue(value: D): void;
- registerOnChange(fn: (value: any) => void): void;
- registerOnTouched(fn: () => void): void;
- setDisabledState(isDisabled: boolean): void;
- _onKeydown(event: KeyboardEvent): void;
- _onInput(value: string): void;
- _onChange(): void;
- /** Returns the palette used by the input's form field, if any. */
- _getThemePalette(): ThemePalette;
- /** Handles blur events on the input. */
- _onBlur(): void;
- /** Formats a value and sets it on the input element. */
- private _formatValue;
- /**
- * @param obj The object to check.
- * @returns The given object if it is both a date instance and valid, otherwise null.
- */
- private _getValidDateOrNull;
- }
|