UNPKG

@3mo/date-time-fields

Version:

Date time fields let people select dates, date-ranges, and times.

51 lines 2.62 kB
import { type HTMLTemplateResult } from '@a11d/lit'; import { InputFieldComponent } from '@3mo/field'; import { type MaterialIcon } from '@3mo/icon'; import { FieldDateTimePrecision } from './FieldDateTimePrecision.js'; import type { Calendar } from './selection/index.js'; /** * @attr open - Whether the date picker is open * @attr pickerHidden - Hide the date picker * @attr shortcutReferenceDate - The date to use as a reference for shortcuts * @attr precision - The precision of the date picker. Defaults to 'minute' */ export declare abstract class FieldDateTimeBase<T> extends InputFieldComponent<T> { open: boolean; pickerHidden: boolean; shortcutReferenceDate: import("@3mo/date-time/DateTime.js").DateTime; precision: FieldDateTimePrecision; navigationDate: import("@3mo/date-time/DateTime.js").DateTime; protected readonly calendar?: Calendar; protected connected(): void; protected disconnected(): void; private handleLanguageChange; protected readonly calendarIconButtonIcon: MaterialIcon; protected abstract get selectedDate(): DateTime | undefined; protected get formatOptions(): Intl.DateTimeFormatOptions; protected valueUpdated(): void; protected abstract resetNavigationDate(): void; protected handleChange(value?: T, e?: Event): void; protected get isActive(): boolean; protected get placeholder(): string; static get styles(): import("@a11d/lit").CSSResult; protected get template(): HTMLTemplateResult; protected get endSlotTemplate(): HTMLTemplateResult; protected get inputTemplate(): HTMLTemplateResult; protected abstract inputValueToValue(value: string): T | undefined; protected abstract valueToInputValue(value: T | undefined): string; private get clearIconButtonTemplate(); protected get calendarIconButtonTemplate(): HTMLTemplateResult; protected get popoverTemplate(): HTMLTemplateResult; protected get popoverSelectionTemplate(): HTMLTemplateResult; protected abstract get presetsTemplate(): HTMLTemplateResult; protected getPresetTemplate(label: string, value: () => T): HTMLTemplateResult; protected get dateTemplate(): HTMLTemplateResult; protected get calendarTemplate(): HTMLTemplateResult; protected abstract get calendarValue(): DateTimeRange | undefined; private get timeTemplate(); private get hourListTemplate(); private get minuteListTemplate(); private get secondListTemplate(); protected handleSelectedDateChange(date: DateTime, precision: FieldDateTimePrecision): void; } //# sourceMappingURL=FieldDateTimeBase.d.ts.map