v-calendar-fixed
Version:
A calendar and date picker plugin for Vue.js.
1,046 lines • 1.09 MB
TypeScript
import { type SetupContext, type ExtractPropTypes, type PropType } from 'vue';
import { type CalendarDay } from '../utils/page';
import { type DatePatch, type DateParts, type DatePartsRules, type DateSource, type SimpleDateParts } from '../utils/date/helpers';
import { type PopoverOptions } from '../utils/popovers';
import type { MoveTarget, MoveOptions } from './calendar';
export type DateType = 'date' | 'string' | 'number';
export interface DateConfig {
type: DateType;
rules: DatePartsRules;
mask?: string;
}
export type DateModes = 'date' | 'datetime' | 'time';
export type ValueTarget = 'start' | 'end';
export interface UpdateOptions {
config: any;
patch: DatePatch;
debounce: number;
clearIfEqual: boolean;
formatInput: boolean;
hidePopover: boolean;
dragging: boolean;
targetPriority: ValueTarget;
moveToValue: boolean;
}
export interface ModelModifiers {
number?: boolean;
string?: boolean;
range?: boolean;
}
export type DatePickerDate = DateSource | Partial<SimpleDateParts> | null;
export type DatePickerRangeArray = [DatePickerDate, DatePickerDate];
export type DatePickerRangeObject = {
start: Exclude<DatePickerDate, null>;
end: Exclude<DatePickerDate, null>;
};
export type DatePickerModel = DatePickerDate | DatePickerRangeObject;
export type DatePickerContext = ReturnType<typeof createDatePicker>;
export type DatePickerProps = Readonly<ExtractPropTypes<typeof propsDef>>;
export declare const propsDef: {
mode: {
type: StringConstructor;
default: string;
};
modelValue: {
type: PropType<DatePickerModel>;
};
modelModifiers: {
type: PropType<ModelModifiers>;
default: () => {};
};
rules: PropType<DatePartsRules | "auto">;
is24hr: BooleanConstructor;
hideTimeHeader: BooleanConstructor;
timeAccuracy: {
type: NumberConstructor;
default: number;
};
isRequired: BooleanConstructor;
isRange: BooleanConstructor;
updateOnInput: {
type: BooleanConstructor;
default: () => any;
};
inputDebounce: {
type: NumberConstructor;
default: () => any;
};
popover: {
type: PropType<boolean | Partial<PopoverOptions>>;
default: boolean;
};
dragAttribute: PropType<Partial<{
key: string | number;
hashcode: string;
content: import("../utils/glyph").ContentConfig;
highlight: import("../utils/glyph").HighlightConfig;
dot: import("../utils/glyph").DotConfig;
bar: import("../utils/glyph").BarConfig;
popover: Partial<{
label: string;
visibility: import("../utils/popovers").PopoverVisibility;
placement: import("@popperjs/core").Placement;
hideIndicator: boolean;
isInteractive: boolean;
}>;
event: Partial<{
label: string;
}>;
dates: import("../utils/date/range").DateRangeSource[];
customData: any;
order: number;
pinPage: boolean;
}>>;
selectAttribute: PropType<Partial<{
key: string | number;
hashcode: string;
content: import("../utils/glyph").ContentConfig;
highlight: import("../utils/glyph").HighlightConfig;
dot: import("../utils/glyph").DotConfig;
bar: import("../utils/glyph").BarConfig;
popover: Partial<{
label: string;
visibility: import("../utils/popovers").PopoverVisibility;
placement: import("@popperjs/core").Placement;
hideIndicator: boolean;
isInteractive: boolean;
}>;
event: Partial<{
label: string;
}>;
dates: import("../utils/date/range").DateRangeSource[];
customData: any;
order: number;
pinPage: boolean;
}>>;
attributes: (ArrayConstructor | ObjectConstructor)[];
color: {
type: StringConstructor;
default: () => any;
};
isDark: {
type: PropType<boolean | "system" | import("vue-screen-utils").DarkModeClassConfig>;
default: () => any;
};
firstDayOfWeek: PropType<import("../utils/date/helpers").DayOfWeek>;
masks: ObjectConstructor;
locale: PropType<string | Record<string, any> | import("../utils/locale").default>;
timezone: StringConstructor;
minDate: null;
maxDate: null;
disabledDates: null;
};
export declare const emits: string[];
export declare function createDatePicker(props: DatePickerProps, { emit, slots }: SetupContext<string[]>): {
showCalendar: import("vue").Ref<boolean, boolean>;
datePickerPopoverId: import("vue").Ref<symbol, symbol>;
popoverRef: import("vue").Ref<import("vue").CreateComponentPublicInstanceWithMixins<Readonly<ExtractPropTypes<{
id: {
type: (SymbolConstructor | StringConstructor | NumberConstructor)[];
required: true;
};
showDelay: {
type: NumberConstructor;
default: number;
};
hideDelay: {
type: NumberConstructor;
default: number;
};
boundarySelector: {
type: StringConstructor;
};
}>> & Readonly<{
"onBefore-show"?: ((...args: any[]) => any) | undefined;
"onAfter-show"?: ((...args: any[]) => any) | undefined;
"onBefore-hide"?: ((...args: any[]) => any) | undefined;
"onAfter-hide"?: ((...args: any[]) => any) | undefined;
}>, {
popoverRef: import("vue").Ref<HTMLElement | undefined, HTMLElement | undefined>;
alignment: import("vue").ComputedRef<"center" | "left" | "right" | "top" | "bottom" | "middle">;
hide: (opts?: Partial<PopoverOptions>) => void;
setupPopper: () => void;
beforeEnter: (el: Element) => void;
afterEnter: (el: Element) => void;
beforeLeave: (el: Element) => void;
afterLeave: (el: Element) => void;
onClick: (e: MouseEvent) => void;
onMouseOver: () => void;
onMouseLeave: () => void;
onFocusIn: () => void;
onFocusOut: (e: FocusEvent) => void;
isVisible: import("vue").Ref<boolean, boolean>;
target: import("vue").Ref<unknown, unknown>;
data: import("vue").Ref<any, any>;
transition: import("vue").Ref<string, string>;
placement: import("vue").Ref<import("@popperjs/core").Placement, import("@popperjs/core").Placement>;
direction: import("vue").Ref<string, string>;
positionFixed: import("vue").Ref<false, false>;
modifiers: import("vue").Ref<any[], any[]>;
isInteractive: import("vue").Ref<boolean, boolean>;
visibility: import("vue").Ref<import("../utils/popovers").PopoverVisibility, import("../utils/popovers").PopoverVisibility>;
isHovered: import("vue").Ref<boolean, boolean>;
isFocused: import("vue").Ref<boolean, boolean>;
autoHide: import("vue").Ref<boolean, boolean>;
force: import("vue").Ref<boolean, boolean>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("before-show" | "after-show" | "before-hide" | "after-hide")[], import("vue").PublicProps, {
showDelay: number;
hideDelay: number;
}, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
P: {};
B: {};
D: {};
C: {};
M: {};
Defaults: {};
}, Readonly<ExtractPropTypes<{
id: {
type: (SymbolConstructor | StringConstructor | NumberConstructor)[];
required: true;
};
showDelay: {
type: NumberConstructor;
default: number;
};
hideDelay: {
type: NumberConstructor;
default: number;
};
boundarySelector: {
type: StringConstructor;
};
}>> & Readonly<{
"onBefore-show"?: ((...args: any[]) => any) | undefined;
"onAfter-show"?: ((...args: any[]) => any) | undefined;
"onBefore-hide"?: ((...args: any[]) => any) | undefined;
"onAfter-hide"?: ((...args: any[]) => any) | undefined;
}>, {
popoverRef: import("vue").Ref<HTMLElement | undefined, HTMLElement | undefined>;
alignment: import("vue").ComputedRef<"center" | "left" | "right" | "top" | "bottom" | "middle">;
hide: (opts?: Partial<PopoverOptions>) => void;
setupPopper: () => void;
beforeEnter: (el: Element) => void;
afterEnter: (el: Element) => void;
beforeLeave: (el: Element) => void;
afterLeave: (el: Element) => void;
onClick: (e: MouseEvent) => void;
onMouseOver: () => void;
onMouseLeave: () => void;
onFocusIn: () => void;
onFocusOut: (e: FocusEvent) => void;
isVisible: import("vue").Ref<boolean, boolean>;
target: import("vue").Ref<unknown, unknown>;
data: import("vue").Ref<any, any>;
transition: import("vue").Ref<string, string>;
placement: import("vue").Ref<import("@popperjs/core").Placement, import("@popperjs/core").Placement>;
direction: import("vue").Ref<string, string>;
positionFixed: import("vue").Ref<false, false>;
modifiers: import("vue").Ref<any[], any[]>;
isInteractive: import("vue").Ref<boolean, boolean>;
visibility: import("vue").Ref<import("../utils/popovers").PopoverVisibility, import("../utils/popovers").PopoverVisibility>;
isHovered: import("vue").Ref<boolean, boolean>;
isFocused: import("vue").Ref<boolean, boolean>;
autoHide: import("vue").Ref<boolean, boolean>;
force: import("vue").Ref<boolean, boolean>;
}, {}, {}, {}, {
showDelay: number;
hideDelay: number;
}> | null, import("vue").CreateComponentPublicInstanceWithMixins<Readonly<ExtractPropTypes<{
id: {
type: (SymbolConstructor | StringConstructor | NumberConstructor)[];
required: true;
};
showDelay: {
type: NumberConstructor;
default: number;
};
hideDelay: {
type: NumberConstructor;
default: number;
};
boundarySelector: {
type: StringConstructor;
};
}>> & Readonly<{
"onBefore-show"?: ((...args: any[]) => any) | undefined;
"onAfter-show"?: ((...args: any[]) => any) | undefined;
"onBefore-hide"?: ((...args: any[]) => any) | undefined;
"onAfter-hide"?: ((...args: any[]) => any) | undefined;
}>, {
popoverRef: import("vue").Ref<HTMLElement | undefined, HTMLElement | undefined>;
alignment: import("vue").ComputedRef<"center" | "left" | "right" | "top" | "bottom" | "middle">;
hide: (opts?: Partial<PopoverOptions>) => void;
setupPopper: () => void;
beforeEnter: (el: Element) => void;
afterEnter: (el: Element) => void;
beforeLeave: (el: Element) => void;
afterLeave: (el: Element) => void;
onClick: (e: MouseEvent) => void;
onMouseOver: () => void;
onMouseLeave: () => void;
onFocusIn: () => void;
onFocusOut: (e: FocusEvent) => void;
isVisible: import("vue").Ref<boolean, boolean>;
target: import("vue").Ref<unknown, unknown>;
data: import("vue").Ref<any, any>;
transition: import("vue").Ref<string, string>;
placement: import("vue").Ref<import("@popperjs/core").Placement, import("@popperjs/core").Placement>;
direction: import("vue").Ref<string, string>;
positionFixed: import("vue").Ref<false, false>;
modifiers: import("vue").Ref<any[], any[]>;
isInteractive: import("vue").Ref<boolean, boolean>;
visibility: import("vue").Ref<import("../utils/popovers").PopoverVisibility, import("../utils/popovers").PopoverVisibility>;
isHovered: import("vue").Ref<boolean, boolean>;
isFocused: import("vue").Ref<boolean, boolean>;
autoHide: import("vue").Ref<boolean, boolean>;
force: import("vue").Ref<boolean, boolean>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("before-show" | "after-show" | "before-hide" | "after-hide")[], import("vue").PublicProps, {
showDelay: number;
hideDelay: number;
}, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
P: {};
B: {};
D: {};
C: {};
M: {};
Defaults: {};
}, Readonly<ExtractPropTypes<{
id: {
type: (SymbolConstructor | StringConstructor | NumberConstructor)[];
required: true;
};
showDelay: {
type: NumberConstructor;
default: number;
};
hideDelay: {
type: NumberConstructor;
default: number;
};
boundarySelector: {
type: StringConstructor;
};
}>> & Readonly<{
"onBefore-show"?: ((...args: any[]) => any) | undefined;
"onAfter-show"?: ((...args: any[]) => any) | undefined;
"onBefore-hide"?: ((...args: any[]) => any) | undefined;
"onAfter-hide"?: ((...args: any[]) => any) | undefined;
}>, {
popoverRef: import("vue").Ref<HTMLElement | undefined, HTMLElement | undefined>;
alignment: import("vue").ComputedRef<"center" | "left" | "right" | "top" | "bottom" | "middle">;
hide: (opts?: Partial<PopoverOptions>) => void;
setupPopper: () => void;
beforeEnter: (el: Element) => void;
afterEnter: (el: Element) => void;
beforeLeave: (el: Element) => void;
afterLeave: (el: Element) => void;
onClick: (e: MouseEvent) => void;
onMouseOver: () => void;
onMouseLeave: () => void;
onFocusIn: () => void;
onFocusOut: (e: FocusEvent) => void;
isVisible: import("vue").Ref<boolean, boolean>;
target: import("vue").Ref<unknown, unknown>;
data: import("vue").Ref<any, any>;
transition: import("vue").Ref<string, string>;
placement: import("vue").Ref<import("@popperjs/core").Placement, import("@popperjs/core").Placement>;
direction: import("vue").Ref<string, string>;
positionFixed: import("vue").Ref<false, false>;
modifiers: import("vue").Ref<any[], any[]>;
isInteractive: import("vue").Ref<boolean, boolean>;
visibility: import("vue").Ref<import("../utils/popovers").PopoverVisibility, import("../utils/popovers").PopoverVisibility>;
isHovered: import("vue").Ref<boolean, boolean>;
isFocused: import("vue").Ref<boolean, boolean>;
autoHide: import("vue").Ref<boolean, boolean>;
force: import("vue").Ref<boolean, boolean>;
}, {}, {}, {}, {
showDelay: number;
hideDelay: number;
}> | null>;
popoverEvents: import("vue").ComputedRef<Partial<import("../utils/popovers").PopoverEventHandlers>>;
calendarRef: import("vue").Ref<import("vue").CreateComponentPublicInstanceWithMixins<Readonly<ExtractPropTypes<{
view: {
type: PropType<import("./calendar").CalendarView>;
default: string;
validator(value: string): boolean;
};
rows: {
type: NumberConstructor;
default: number;
};
columns: {
type: NumberConstructor;
default: number;
};
step: NumberConstructor;
titlePosition: {
type: PropType<import("../utils/page").TitlePosition>;
default: () => import("../utils/page").TitlePosition;
};
navVisibility: {
type: PropType<import("../utils/popovers").PopoverVisibility>;
default: () => import("../utils/popovers").PopoverVisibility;
};
showWeeknumbers: (BooleanConstructor | StringConstructor)[];
showIsoWeeknumbers: (BooleanConstructor | StringConstructor)[];
expanded: BooleanConstructor;
borderless: BooleanConstructor;
transparent: BooleanConstructor;
initialPage: PropType<import("../utils/page").PageAddress>;
initialPagePosition: {
type: NumberConstructor;
default: number;
};
minPage: PropType<import("../utils/page").PageAddress>;
maxPage: PropType<import("../utils/page").PageAddress>;
transition: PropType<import("./calendar").MoveTransition>;
attributes: PropType<Partial<{
key: string | number;
hashcode: string;
content: import("../utils/glyph").ContentConfig;
highlight: import("../utils/glyph").HighlightConfig;
dot: import("../utils/glyph").DotConfig;
bar: import("../utils/glyph").BarConfig;
popover: Partial<{
label: string;
visibility: import("../utils/popovers").PopoverVisibility;
placement: import("@popperjs/core").Placement;
hideIndicator: boolean;
isInteractive: boolean;
}>;
event: Partial<{
label: string;
}>;
dates: import("../utils/date/range").DateRangeSource[];
customData: any;
order: number;
pinPage: boolean;
}>[]>;
trimWeeks: BooleanConstructor;
disablePageSwipe: BooleanConstructor;
color: {
type: StringConstructor;
default: () => any;
};
isDark: {
type: PropType<boolean | "system" | import("vue-screen-utils").DarkModeClassConfig>;
default: () => any;
};
firstDayOfWeek: PropType<import("../utils/date/helpers").DayOfWeek>;
masks: ObjectConstructor;
locale: PropType<string | Record<string, any> | import("../utils/locale").default>;
timezone: StringConstructor;
minDate: null;
maxDate: null;
disabledDates: null;
}>> & Readonly<{}>, {
emit: ((event: string, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
containerRef: import("vue").Ref<{
querySelector: {
<K extends keyof HTMLElementTagNameMap>(selectors: K): HTMLElementTagNameMap[K] | null;
<K_1 extends keyof SVGElementTagNameMap>(selectors: K_1): SVGElementTagNameMap[K_1] | null;
<E extends Element = Element>(selectors: string): E | null;
};
addEventListener: Function;
removeEventListener: Function;
dispatchEvent: Function;
} | null, (Pick<Element, "querySelector"> & import("../utils/helpers").CustomElement) | {
querySelector: {
<K extends keyof HTMLElementTagNameMap>(selectors: K): HTMLElementTagNameMap[K] | null;
<K_1 extends keyof SVGElementTagNameMap>(selectors: K_1): SVGElementTagNameMap[K_1] | null;
<E extends Element = Element>(selectors: string): E | null;
};
addEventListener: Function;
removeEventListener: Function;
dispatchEvent: Function;
} | null>;
focusedDay: import("vue").Ref<{
id: string;
position: number;
label: string;
ariaLabel: string;
weekdayPosition: number;
weekdayPositionFromEnd: number;
weekPosition: number;
isoWeeknumber: number;
startDate: Date;
noonDate: Date;
endDate: Date;
isToday: boolean;
isFirstDay: boolean;
isLastDay: boolean;
isDisabled: boolean;
isFocusable: boolean;
isFocused: boolean;
inMonth: boolean;
inPrevMonth: boolean;
inNextMonth: boolean;
onTop: boolean;
onBottom: boolean;
onLeft: boolean;
onRight: boolean;
classes: (string | Object)[];
locale: {
id: any;
daysInWeek: number;
firstDayOfWeek: import("../utils/date/helpers").DayOfWeek;
masks: any;
timezone: string | undefined;
hourLabels: string[];
dayNames: string[];
dayNamesShort: string[];
dayNamesShorter: string[];
dayNamesNarrow: string[];
monthNames: string[];
monthNamesShort: string[];
relativeTimeNames: {
day?: string | undefined;
week?: string | undefined;
month?: string | undefined;
year?: string | undefined;
days?: string | undefined;
weeks?: string | undefined;
seconds?: string | undefined;
minutes?: string | undefined;
hours?: string | undefined;
months?: string | undefined;
years?: string | undefined;
quarter?: string | undefined;
quarters?: string | undefined;
hour?: string | undefined;
minute?: string | undefined;
second?: string | undefined;
};
amPm: [string, string];
monthCache: {
keys: string[];
store: Record<string, import("../utils/date/helpers").MonthParts>;
size: number;
createKey: (...args: any[]) => string;
createItem: (...args: any[]) => import("../utils/date/helpers").MonthParts;
get: (...args: any[]) => import("../utils/date/helpers").MonthParts;
getOrSet: (...args: any[]) => import("../utils/date/helpers").MonthParts;
};
pageCache: {
keys: string[];
store: Record<string, import("../utils/page").CachedPage>;
size: number;
createKey: (...args: any[]) => string;
createItem: (...args: any[]) => import("../utils/page").CachedPage;
get: (...args: any[]) => import("../utils/page").CachedPage;
getOrSet: (...args: any[]) => import("../utils/page").CachedPage;
};
formatDate: (date: Date, masks: string | string[]) => string;
parseDate: (dateString: string, mask: string | string[]) => Date;
toDate: (d: Partial<SimpleDateParts> | DateSource, opts?: Partial<import("../utils/date/helpers").DateOptions>) => Date;
toDateOrNull: (d: Partial<SimpleDateParts> | DateSource, opts?: Partial<import("../utils/date/helpers").DateOptions>) => Date | null;
fromDate: (date: Date | null, { type, mask }?: Partial<import("../utils/date/helpers").DateOptions>) => string | number | Date | DateParts | null;
range: (source: import("../utils/date/range").DateRangeSource) => import("../utils/date/range").DateRange;
ranges: (ranges: import("../utils/date/range").DateRangeSource | import("../utils/date/range").DateRangeSource[]) => import("../utils/date/range").DateRange[];
getDateParts: (date: Date) => DateParts;
getDateFromParts: (parts: Partial<SimpleDateParts>) => Date;
getDateFromParams: (year: number, month: number, day: number, hours: number, minutes: number, seconds: number, milliseconds: number) => Date;
getPage: (config: import("../utils/page").PageConfig) => import("../utils/page").Page;
getMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getThisMonthParts: () => import("../utils/date/helpers").MonthParts;
getPrevMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getNextMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getHourLabels: () => string[];
getDayId: (date: Date) => string;
};
dayIndex: number;
day: number;
dayFromEnd: number;
weekday: number;
weekdayOrdinal: number;
weekdayOrdinalFromEnd: number;
week: number;
weekFromEnd: number;
weeknumber: number;
month: number;
year: number;
date: Date;
} | null, CalendarDay | {
id: string;
position: number;
label: string;
ariaLabel: string;
weekdayPosition: number;
weekdayPositionFromEnd: number;
weekPosition: number;
isoWeeknumber: number;
startDate: Date;
noonDate: Date;
endDate: Date;
isToday: boolean;
isFirstDay: boolean;
isLastDay: boolean;
isDisabled: boolean;
isFocusable: boolean;
isFocused: boolean;
inMonth: boolean;
inPrevMonth: boolean;
inNextMonth: boolean;
onTop: boolean;
onBottom: boolean;
onLeft: boolean;
onRight: boolean;
classes: (string | Object)[];
locale: {
id: any;
daysInWeek: number;
firstDayOfWeek: import("../utils/date/helpers").DayOfWeek;
masks: any;
timezone: string | undefined;
hourLabels: string[];
dayNames: string[];
dayNamesShort: string[];
dayNamesShorter: string[];
dayNamesNarrow: string[];
monthNames: string[];
monthNamesShort: string[];
relativeTimeNames: {
day?: string | undefined;
week?: string | undefined;
month?: string | undefined;
year?: string | undefined;
days?: string | undefined;
weeks?: string | undefined;
seconds?: string | undefined;
minutes?: string | undefined;
hours?: string | undefined;
months?: string | undefined;
years?: string | undefined;
quarter?: string | undefined;
quarters?: string | undefined;
hour?: string | undefined;
minute?: string | undefined;
second?: string | undefined;
};
amPm: [string, string];
monthCache: {
keys: string[];
store: Record<string, import("../utils/date/helpers").MonthParts>;
size: number;
createKey: (...args: any[]) => string;
createItem: (...args: any[]) => import("../utils/date/helpers").MonthParts;
get: (...args: any[]) => import("../utils/date/helpers").MonthParts;
getOrSet: (...args: any[]) => import("../utils/date/helpers").MonthParts;
};
pageCache: {
keys: string[];
store: Record<string, import("../utils/page").CachedPage>;
size: number;
createKey: (...args: any[]) => string;
createItem: (...args: any[]) => import("../utils/page").CachedPage;
get: (...args: any[]) => import("../utils/page").CachedPage;
getOrSet: (...args: any[]) => import("../utils/page").CachedPage;
};
formatDate: (date: Date, masks: string | string[]) => string;
parseDate: (dateString: string, mask: string | string[]) => Date;
toDate: (d: Partial<SimpleDateParts> | DateSource, opts?: Partial<import("../utils/date/helpers").DateOptions>) => Date;
toDateOrNull: (d: Partial<SimpleDateParts> | DateSource, opts?: Partial<import("../utils/date/helpers").DateOptions>) => Date | null;
fromDate: (date: Date | null, { type, mask }?: Partial<import("../utils/date/helpers").DateOptions>) => string | number | Date | DateParts | null;
range: (source: import("../utils/date/range").DateRangeSource) => import("../utils/date/range").DateRange;
ranges: (ranges: import("../utils/date/range").DateRangeSource | import("../utils/date/range").DateRangeSource[]) => import("../utils/date/range").DateRange[];
getDateParts: (date: Date) => DateParts;
getDateFromParts: (parts: Partial<SimpleDateParts>) => Date;
getDateFromParams: (year: number, month: number, day: number, hours: number, minutes: number, seconds: number, milliseconds: number) => Date;
getPage: (config: import("../utils/page").PageConfig) => import("../utils/page").Page;
getMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getThisMonthParts: () => import("../utils/date/helpers").MonthParts;
getPrevMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getNextMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getHourLabels: () => string[];
getDayId: (date: Date) => string;
};
dayIndex: number;
day: number;
dayFromEnd: number;
weekday: number;
weekdayOrdinal: number;
weekdayOrdinalFromEnd: number;
week: number;
weekFromEnd: number;
weeknumber: number;
month: number;
year: number;
date: Date;
} | null>;
inTransition: import("vue").Ref<boolean, boolean>;
navPopoverId: import("vue").Ref<symbol, symbol>;
dayPopoverId: import("vue").Ref<symbol, symbol>;
view: import("vue").Ref<import("./calendar").CalendarView, import("./calendar").CalendarView>;
pages: import("vue").Ref<{
id: string;
day?: number | undefined;
week?: number | undefined;
month: number;
year: number;
view: import("../utils/page").PageView;
trimWeeks: boolean;
position: number;
row: number;
rowFromEnd: number;
column: number;
columnFromEnd: number;
showWeeknumbers: boolean;
showIsoWeeknumbers: boolean;
weeknumberPosition: string;
monthTitle: string;
weekTitle?: string | undefined;
dayTitle?: string | undefined;
title: string;
titlePosition: import("../utils/page").TitlePosition;
shortMonthLabel: string;
monthLabel: string;
shortYearLabel: string;
yearLabel: string;
monthComps: {
firstDayOfWeek: import("../utils/date/helpers").DayOfWeek;
firstDayOfMonth: Date;
inLeapYear: boolean;
firstWeekday: number;
numDays: number;
numWeeks: number;
month: number;
year: number;
weeknumbers: number[];
isoWeeknumbers: number[];
};
prevMonthComps: {
firstDayOfWeek: import("../utils/date/helpers").DayOfWeek;
firstDayOfMonth: Date;
inLeapYear: boolean;
firstWeekday: number;
numDays: number;
numWeeks: number;
month: number;
year: number;
weeknumbers: number[];
isoWeeknumbers: number[];
};
nextMonthComps: {
firstDayOfWeek: import("../utils/date/helpers").DayOfWeek;
firstDayOfMonth: Date;
inLeapYear: boolean;
firstWeekday: number;
numDays: number;
numWeeks: number;
month: number;
year: number;
weeknumbers: number[];
isoWeeknumbers: number[];
};
days: {
id: string;
position: number;
label: string;
ariaLabel: string;
weekdayPosition: number;
weekdayPositionFromEnd: number;
weekPosition: number;
isoWeeknumber: number;
startDate: Date;
noonDate: Date;
endDate: Date;
isToday: boolean;
isFirstDay: boolean;
isLastDay: boolean;
isDisabled: boolean;
isFocusable: boolean;
isFocused: boolean;
inMonth: boolean;
inPrevMonth: boolean;
inNextMonth: boolean;
onTop: boolean;
onBottom: boolean;
onLeft: boolean;
onRight: boolean;
classes: (string | Object)[];
locale: {
id: any;
daysInWeek: number;
firstDayOfWeek: import("../utils/date/helpers").DayOfWeek;
masks: any;
timezone: string | undefined;
hourLabels: string[];
dayNames: string[];
dayNamesShort: string[];
dayNamesShorter: string[];
dayNamesNarrow: string[];
monthNames: string[];
monthNamesShort: string[];
relativeTimeNames: {
day?: string | undefined;
week?: string | undefined;
month?: string | undefined;
year?: string | undefined;
days?: string | undefined;
weeks?: string | undefined;
seconds?: string | undefined;
minutes?: string | undefined;
hours?: string | undefined;
months?: string | undefined;
years?: string | undefined;
quarter?: string | undefined;
quarters?: string | undefined;
hour?: string | undefined;
minute?: string | undefined;
second?: string | undefined;
};
amPm: [string, string];
monthCache: {
keys: string[];
store: Record<string, import("../utils/date/helpers").MonthParts>;
size: number;
createKey: (...args: any[]) => string;
createItem: (...args: any[]) => import("../utils/date/helpers").MonthParts;
get: (...args: any[]) => import("../utils/date/helpers").MonthParts;
getOrSet: (...args: any[]) => import("../utils/date/helpers").MonthParts;
};
pageCache: {
keys: string[];
store: Record<string, import("../utils/page").CachedPage>;
size: number;
createKey: (...args: any[]) => string;
createItem: (...args: any[]) => import("../utils/page").CachedPage;
get: (...args: any[]) => import("../utils/page").CachedPage;
getOrSet: (...args: any[]) => import("../utils/page").CachedPage;
};
formatDate: (date: Date, masks: string | string[]) => string;
parseDate: (dateString: string, mask: string | string[]) => Date;
toDate: (d: Partial<SimpleDateParts> | DateSource, opts?: Partial<import("../utils/date/helpers").DateOptions>) => Date;
toDateOrNull: (d: Partial<SimpleDateParts> | DateSource, opts?: Partial<import("../utils/date/helpers").DateOptions>) => Date | null;
fromDate: (date: Date | null, { type, mask }?: Partial<import("../utils/date/helpers").DateOptions>) => string | number | Date | DateParts | null;
range: (source: import("../utils/date/range").DateRangeSource) => import("../utils/date/range").DateRange;
ranges: (ranges: import("../utils/date/range").DateRangeSource | import("../utils/date/range").DateRangeSource[]) => import("../utils/date/range").DateRange[];
getDateParts: (date: Date) => DateParts;
getDateFromParts: (parts: Partial<SimpleDateParts>) => Date;
getDateFromParams: (year: number, month: number, day: number, hours: number, minutes: number, seconds: number, milliseconds: number) => Date;
getPage: (config: import("../utils/page").PageConfig) => import("../utils/page").Page;
getMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getThisMonthParts: () => import("../utils/date/helpers").MonthParts;
getPrevMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getNextMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getHourLabels: () => string[];
getDayId: (date: Date) => string;
};
dayIndex: number;
day: number;
dayFromEnd: number;
weekday: number;
weekdayOrdinal: number;
weekdayOrdinalFromEnd: number;
week: number;
weekFromEnd: number;
weeknumber: number;
month: number;
year: number;
date: Date;
}[];
weeks: {
id: string;
week: number;
weekPosition: number;
weeknumber: number;
isoWeeknumber: number;
weeknumberDisplay?: number | undefined;
days: {
id: string;
position: number;
label: string;
ariaLabel: string;
weekdayPosition: number;
weekdayPositionFromEnd: number;
weekPosition: number;
isoWeeknumber: number;
startDate: Date;
noonDate: Date;
endDate: Date;
isToday: boolean;
isFirstDay: boolean;
isLastDay: boolean;
isDisabled: boolean;
isFocusable: boolean;
isFocused: boolean;
inMonth: boolean;
inPrevMonth: boolean;
inNextMonth: boolean;
onTop: boolean;
onBottom: boolean;
onLeft: boolean;
onRight: boolean;
classes: (string | Object)[];
locale: {
id: any;
daysInWeek: number;
firstDayOfWeek: import("../utils/date/helpers").DayOfWeek;
masks: any;
timezone: string | undefined;
hourLabels: string[];
dayNames: string[];
dayNamesShort: string[];
dayNamesShorter: string[];
dayNamesNarrow: string[];
monthNames: string[];
monthNamesShort: string[];
relativeTimeNames: {
day?: string | undefined;
week?: string | undefined;
month?: string | undefined;
year?: string | undefined;
days?: string | undefined;
weeks?: string | undefined;
seconds?: string | undefined;
minutes?: string | undefined;
hours?: string | undefined;
months?: string | undefined;
years?: string | undefined;
quarter?: string | undefined;
quarters?: string | undefined;
hour?: string | undefined;
minute?: string | undefined;
second?: string | undefined;
};
amPm: [string, string];
monthCache: {
keys: string[];
store: Record<string, import("../utils/date/helpers").MonthParts>;
size: number;
createKey: (...args: any[]) => string;
createItem: (...args: any[]) => import("../utils/date/helpers").MonthParts;
get: (...args: any[]) => import("../utils/date/helpers").MonthParts;
getOrSet: (...args: any[]) => import("../utils/date/helpers").MonthParts;
};
pageCache: {
keys: string[];
store: Record<string, import("../utils/page").CachedPage>;
size: number;
createKey: (...args: any[]) => string;
createItem: (...args: any[]) => import("../utils/page").CachedPage;
get: (...args: any[]) => import("../utils/page").CachedPage;
getOrSet: (...args: any[]) => import("../utils/page").CachedPage;
};
formatDate: (date: Date, masks: string | string[]) => string;
parseDate: (dateString: string, mask: string | string[]) => Date;
toDate: (d: Partial<SimpleDateParts> | DateSource, opts?: Partial<import("../utils/date/helpers").DateOptions>) => Date;
toDateOrNull: (d: Partial<SimpleDateParts> | DateSource, opts?: Partial<import("../utils/date/helpers").DateOptions>) => Date | null;
fromDate: (date: Date | null, { type, mask }?: Partial<import("../utils/date/helpers").DateOptions>) => string | number | Date | DateParts | null;
range: (source: import("../utils/date/range").DateRangeSource) => import("../utils/date/range").DateRange;
ranges: (ranges: import("../utils/date/range").DateRangeSource | import("../utils/date/range").DateRangeSource[]) => import("../utils/date/range").DateRange[];
getDateParts: (date: Date) => DateParts;
getDateFromParts: (parts: Partial<SimpleDateParts>) => Date;
getDateFromParams: (year: number, month: number, day: number, hours: number, minutes: number, seconds: number, milliseconds: number) => Date;
getPage: (config: import("../utils/page").PageConfig) => import("../utils/page").Page;
getMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getThisMonthParts: () => import("../utils/date/helpers").MonthParts;
getPrevMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getNextMonthParts: (month: number, year: number) => import("../utils/date/helpers").MonthParts;
getHourLabels: () => string[];
getDayId: (date: Date) => string;
};
dayIndex: number;
day: number;
dayFromEnd: number;
weekday: number;
weekdayOrdinal: number;
weekdayOrdinalFromEnd: number;
week: number;
weekFromEnd: number;
weeknumber: number;
month: number;
year: number;
date: Date;
}[];
title: string;
}[];
weekdays: {
weekday: number;
label: string;
}[];
viewDays: {
id: string;
position: number;
label: string;
ariaLabel: string;
weekdayPosition: number;
weekdayPositionFromEnd: number;
weekPosition: number;
isoWeeknumber: number;
startDate: Date;
noonDate: Date;
endDate: Date;
isToday: boolean;
isFirstDay: boolean;
isLastDay: boolean;
isDisabled: boolean;
isFocusable: boolean;
isFocused: boolean;
inMonth: boolean;
inPrevMonth: boolean;
inNextMonth: boolean;
onTop: boolean;
onBottom: boolean;
onLeft: boolean;
onRight: boolean;
classes: (string | Object)[];
locale: {
id: any;
daysInWeek: number;
firstDayOfWeek: import("../utils/date/helpers").DayOfWeek;
masks: any;
timezone: string | undefined;
hourLabels: string[];
dayNames: string[];
dayNamesShort: string[];
dayNamesShorter: string[];
dayNamesNarrow: string[];
monthNames: string[];
monthNamesShort: string[];
relativeTimeNames: {
day?: string | undefined;
week?: string | undefined;
month?: string | undefined;
year?: string | undefined;
days?: string | undefined;
weeks?: string | undefined;
seconds?: string | undefined;
minutes?: string | undefined;
hours?: string | undefined;
months?: string | undefined;
years?: string | undefined;
quarter?: string | undefined;
quarters?: string | undefined;
hour?: string | undefined;
minute?: string | undefined;
second?: string | undefined;
};
amPm: [string, string];
monthCache: {
keys: string[];
store: Record<string, import("../utils/date/helpers").MonthParts>;
size: number;
createKey: (...args: any[]) => string;
createItem: (...args: any[]) => import("../utils/date/helpers").MonthParts;
get: (...args: any[]) => import("../utils/date/helpers").MonthParts;
getOrSet: (...args: any[]) => import("../utils/date/helpers").MonthParts;
};
pageCache: {
keys: string[];
store: Record<string, import("../utils/page").CachedPage>;
size: number;
createKey: (...args: any[]) => string;
createItem: (...args: any[]) => import("../utils/page").CachedPage;
get: (...args: any[]) => import("../utils/page").CachedPage;
getOrSet: (...args: any[]) => import("../utils/page").CachedPage;
};
formatDate: (date: Date, masks: string | string[]) => string;
parseDate: (dateString: string, mask: string | string[]) => Date;
toDate: (d: Partial<SimpleDateParts> | DateSource, opts?: Partial<import("../utils/date/helpers").DateOptions>) => Date;
toDateOrNull: (d: Partial<SimpleDateParts> | DateSource, opts?: Partial<import("../utils/date/helpers").DateOptions>) => Date | null;
fromDate: (date: Date | null, { type, mask }?: Partial<import("../utils/date/helpers").DateOptions>) => string | number | Date | DateParts | null;
range: (source: import("../utils/date/range").DateRangeSource) => import("../utils/date/range").DateRange;
ranges: (ranges: import("../utils/date/range").DateRangeSource | import("../utils/date/range").DateRangeSource[]) => import("../utils/date/range").DateRange[];
getDateParts: (date: Date) => DateParts;
getDateFromParts: (pa