UNPKG

nakedobjects.spa

Version:

Single Page Application client for a Naked Objects application.

88 lines (87 loc) 2.77 kB
import { ElementRef, OnInit, EventEmitter, Renderer } from '@angular/core'; import * as moment from 'moment'; import { BehaviorSubject } from 'rxjs'; export declare type IDatePickerInputEvent = IDatePickerInputDateEvent | IDatePickerInputActionEvent; export declare type IDatePickerOutputEvent = IDatePickerOutputDefaultEvent | IDatePickerOutputChangedEvent | IDatePickerOutputInvalidEvent | IDatePickerOutputClearedEvent; export interface IDatePickerInputDateEvent { type: "setDate"; data: string; } export interface IDatePickerInputActionEvent { type: "action"; data: "toggle" | "close" | "open"; } export interface IDatePickerOutputDefaultEvent { type: "default"; data: "init" | "opened" | "closed"; } export interface IDatePickerOutputChangedEvent { type: "dateChanged"; data: moment.Moment; } export interface IDatePickerOutputInvalidEvent { type: "dateInvalid"; data: string; } export interface IDatePickerOutputClearedEvent { type: "dateCleared"; data: string; } export declare class DatePickerOptions { firstWeekdaySunday?: boolean; format?: string; constructor(obj?: DatePickerOptions); } export interface ICalendarDate { day: number | null; month: number | null; year: number | null; enabled: boolean; today: boolean; selected: boolean; momentObj: moment.Moment; } export declare class DatePickerComponent implements OnInit { private readonly renderer; options: DatePickerOptions; inputEvents: EventEmitter<IDatePickerInputEvent>; outputEvents: EventEmitter<IDatePickerOutputEvent>; id: string; description: string; opened: boolean; days: ICalendarDate[]; constructor(renderer: Renderer); private validInputFormats; private dateModelValue; private modelValue; model: string; dateModel: moment.Moment | null; readonly currentDate: moment.Moment; private eventsSub; private validateDate(newValue); setDateIfChanged(newDate: moment.Moment): void; inputChanged(newValue: string): void; ngOnInit(): void; generateCalendar(): void; setValue(date: moment.Moment | null): void; private formatDate(date); selectDate(date: moment.Moment | null, e?: MouseEvent): void; writeValue(date: moment.Moment): void; prevMonth(): void; nextMonth(): void; prevYear(): void; nextYear(): void; today(): void; toggle(): void; private open; private close; clear(): void; todayMsg: string; clearMsg: string; private bSubject; private sub; readonly subject: BehaviorSubject<string>; ngOnDestroy(): void; inputField: ElementRef; focus(): boolean; }