@ux-aspects/ux-aspects
Version:
Open source user interface framework for building modern, responsive, mobile big data applications
84 lines (83 loc) • 3.02 kB
TypeScript
import { WeekDay } from '@angular/common';
import { OnDestroy } from '@angular/core';
import { BehaviorSubject, Subject } from 'rxjs';
import { DateRangeOptions } from '../date-range-picker/date-range-picker.directive';
import { DateRangeService } from '../date-range-picker/date-range.service';
import { DateTimePickerTimezone } from './date-time-picker.utils';
import * as i0 from "@angular/core";
export declare class DateTimePickerService implements OnDestroy {
private readonly _config;
readonly rangeService: DateRangeService;
readonly rangeOptions: DateRangeOptions;
mode$: BehaviorSubject<DatePickerMode>;
date$: BehaviorSubject<Date>;
timezone$: BehaviorSubject<DateTimePickerTimezone>;
selected$: BehaviorSubject<Date>;
month$: BehaviorSubject<number>;
year$: BehaviorSubject<number>;
showDate$: BehaviorSubject<boolean>;
showTime$: BehaviorSubject<boolean>;
showTimezone$: BehaviorSubject<boolean>;
showSeconds$: BehaviorSubject<boolean>;
showMeridian$: BehaviorSubject<boolean>;
showSpinners$: BehaviorSubject<boolean>;
showNowBtn$: BehaviorSubject<boolean>;
weekdays$: BehaviorSubject<string[]>;
nowBtnText$: BehaviorSubject<string>;
timezones$: BehaviorSubject<DateTimePickerTimezone[]>;
min$: BehaviorSubject<Date>;
max$: BehaviorSubject<Date>;
header$: BehaviorSubject<string>;
headerEvent$: Subject<DatePickerHeaderEvent>;
modeDirection: ModeDirection;
startOfWeek$: BehaviorSubject<WeekDay>;
months: string[];
monthsShort: string[];
meridians: string[];
hours: number;
minutes: number;
seconds: number;
yearRange: YearRange;
/**
* Store whether or not the component has fully initialised or not. We use this to prevent initial
* focus on the end date range picker when the popover is first opened
*/
initialised: boolean;
private readonly _subscription;
constructor();
ngOnDestroy(): void;
setViewportMonth(month: number): void;
setViewportYear(year: number): void;
setDate(day: number, month: number, year: number, hours?: number, minutes?: number, seconds?: number): void;
setDateToNow(): void;
setViewportMode(mode: DatePickerMode): void;
goToChildMode(): void;
goToParentMode(): void;
goToNext(): void;
goToPrevious(): void;
setHeader(header: string): void;
isTimezoneAvailable(timezone: DateTimePickerTimezone): boolean;
getDefaultTimezone(): DateTimePickerTimezone;
isInRange(date: Date): boolean;
static ɵfac: i0.ɵɵFactoryDeclaration<DateTimePickerService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<DateTimePickerService>;
}
export declare enum DatePickerMode {
Day = 0,
Month = 1,
Year = 2
}
export declare enum ModeDirection {
None = 0,
Ascend = 1,
Descend = 2
}
export declare enum DatePickerHeaderEvent {
Previous = 0,
Next = 1
}
export interface YearRange {
start: number;
end: number;
range: number[];
}