UNPKG

govbr-ds-angular

Version:

Implementação em Angular do Design System GovBR.

153 lines (152 loc) 4.95 kB
import { AfterViewInit, OnInit } from '@angular/core'; import { AbstractControl, ControlValueAccessor } from '@angular/forms'; import * as i0 from "@angular/core"; export declare const TYPE_DATE_PICKER: { date: string; time: string; date_time: string; }; export type TypesDatePicker = keyof typeof TYPE_DATE_PICKER; /** * Componente DateTimePickerComponent é responsável por exibir um seletor de data e hora. * Implementa a interface ControlValueAccessor para integração com formulários Angular. * @example * <app-date-time-picker [label]="'Data e Hora'" [id]="'datetimepicker1'" [(ngModel)]="selectedDate"></app-date-time-picker> * * @public * {@link https://www.gov.br/ds/components/datetimepicker?tab=desenvolvedor|Documentação oficial} */ export declare class DateTimePickerComponent implements OnInit, AfterViewInit, ControlValueAccessor { /** * Rótulo do componente DateTimePicker. * @type {string} * @required */ label: string; /** * ID do componente DateTimePicker. * @type {string} * @required */ id: string; /** * Indica se o componente deve permitir seleção de intervalo. * @type {boolean} * @default false */ range: boolean; /** * Indica se o componente está desabilitado. * @type {boolean} * @default false */ disabled: boolean; /** * Data mínima permitida para seleção. * @type {Date | string} */ minDate: Date | string; /** * Data máxima permitida para seleção. * @type {Date | string} */ maxDate: Date | string; /** * Placeholder do campo de entrada. * @type {string} */ placeholder: string; /** * Dica de uso para o campo de entrada. * @type {string} */ hint: string; /** * Obtém o tipo de seletor de data/hora. * @type {string} */ get type(): string; /** * Define o tipo de seletor de data/hora. * @type {TypesDatePicker} */ set type(value: TypesDatePicker); /** * Tipo de seletor de data/hora. * @type {TypesDatePicker} * @default 'date' * @private */ private _type; /** * Obtém se o campo de entrada é obrigatório. * @type {boolean} */ get required(): boolean; /** * Define se o campo de entrada é obrigatório. * @type {boolean} */ set required(value: boolean); /** * Valor do campo de entrada. * @type {string} * @protected */ protected _value: string; /** * Obtém o valor do campo de entrada. * @type {string} */ get value(): string; /** * Define o valor do campo de entrada. * @type {string} */ set value(val: string); /** Controle abstrato do Angular Forms. */ control?: AbstractControl; protected _required: boolean | undefined; protected _touched: () => void; protected _change: (value: string) => void; protected readonly TypeDatePicker: { date: string; time: string; date_time: string; }; instance: unknown; private brDatePicker; constructor(); /** * Método do ciclo de vida do Angular chamado após a visualização ser inicializada. * Inicializa a instância do componente BRDateTimePicker. * @internal */ ngAfterViewInit(): void; /** * Normaliza a data para o formato 'DD/MM/YYYY'. * @param date - A data a ser normalizada. * @returns A data normalizada no formato 'DD/MM/YYYY'. * @internal */ normalizeDate(date: string | Date): string; /** * @internal */ ngOnInit(): void; /** * Configura o placeholder do campo de entrada com base no tipo e se é um intervalo. * @internal */ mountPlaceholder(): void; writeValue(value: string): void; setDisabledState(disabled: boolean): void; registerOnChange(fn: (value: string) => void): void; registerOnTouched(fn: () => void): void; onBlur(): void; static ɵfac: i0.ɵɵFactoryDeclaration<DateTimePickerComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<DateTimePickerComponent, "app-date-time-picker", never, { "label": { "alias": "label"; "required": true; }; "id": { "alias": "id"; "required": true; }; "range": { "alias": "range"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; "type": { "alias": "type"; "required": false; }; "required": { "alias": "required"; "required": false; }; }, {}, never, ["*"], true, never>; static ngAcceptInputType_range: unknown; static ngAcceptInputType_disabled: unknown; static ngAcceptInputType_required: unknown; }