v-calendar-fixed
Version:
A calendar and date picker plugin for Vue.js.
299 lines (298 loc) • 12.5 kB
TypeScript
import type { Event } from '../../utils/calendar/event';
import { type PopoverOptions } from '../../utils/popovers';
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
popoverId: {
type: StringConstructor;
default: string;
};
}>, {
displayMode: import("vue").ComputedRef<"light" | "dark">;
color: import("vue").ComputedRef<string>;
show: (event: Event) => void;
update: (event: Event) => void;
hide: () => void;
isVisible: () => boolean;
onAfterHide(): void;
event: import("vue").Ref<{
refSelector: string;
isMultiDay: boolean;
isWeekly: boolean;
durationMs: number;
durationMinutes: number;
startDate: Date;
startDateTime: number;
startTimeLabel: string;
endDate: Date;
endDateTime: number;
endTimeLabel: string;
timeLabel: string;
isSolid: boolean;
dragIsDirty: boolean;
formatDate: (date: Date, mask: string) => string;
formatTime: (date: Date) => string;
resizeToConstraints: () => void;
startResize: (day: import("../../utils/page").CalendarDay, isStart: boolean) => void;
updateResize: (offset: import("../../use/calendarGrid").ResizeOffset) => void;
stopResize: () => void;
startDrag: (day: import("../../utils/page").CalendarDay) => void;
updateDrag: (offset: import("../../use/calendarGrid").DragOffset) => void;
stopDrag: () => false | undefined;
compareTo: (b: any) => number;
key: any;
summary: string;
description: string;
range: import("../../utils/date/range").DateRange;
allDay: boolean;
color: string;
fill: string;
selected: boolean;
draggable: boolean;
dragging: boolean;
resizable: boolean;
resizing: boolean;
editing: boolean;
order: number;
snapMinutes: number;
minDurationMinutes: number;
maxDurationMinutes: number;
popover: Partial<PopoverOptions> | null;
resizeOrigin: import("../../utils/calendar/event").ResizeOrigin | null;
dragOrigin: import("../../utils/calendar/event").DragOrigin | null;
} | null, {
refSelector: string;
isMultiDay: boolean;
isWeekly: boolean;
durationMs: number;
durationMinutes: number;
startDate: Date;
startDateTime: number;
startTimeLabel: string;
endDate: Date;
endDateTime: number;
endTimeLabel: string;
timeLabel: string;
isSolid: boolean;
dragIsDirty: boolean;
formatDate: (date: Date, mask: string) => string;
formatTime: (date: Date) => string;
resizeToConstraints: () => void;
startResize: (day: import("../../utils/page").CalendarDay, isStart: boolean) => void;
updateResize: (offset: import("../../use/calendarGrid").ResizeOffset) => void;
stopResize: () => void;
startDrag: (day: import("../../utils/page").CalendarDay) => void;
updateDrag: (offset: import("../../use/calendarGrid").DragOffset) => void;
stopDrag: () => false | undefined;
compareTo: (b: any) => number;
key: any;
summary: string;
description: string;
range: import("../../utils/date/range").DateRange;
allDay: boolean;
color: string;
fill: string;
selected: boolean;
draggable: boolean;
dragging: boolean;
resizable: boolean;
resizing: boolean;
editing: boolean;
order: number;
snapMinutes: number;
minDurationMinutes: number;
maxDurationMinutes: number;
popover: Partial<PopoverOptions> | null;
resizeOrigin: import("../../utils/calendar/event").ResizeOrigin | null;
dragOrigin: import("../../utils/calendar/event").DragOrigin | null;
} | null>;
popoverRef: import("vue").Ref<null, null>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
popoverId: {
type: StringConstructor;
default: string;
};
}>> & Readonly<{}>, {
popoverId: string;
}, {}, {
Popover: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
id: {
type: (SymbolConstructor | StringConstructor | NumberConstructor)[];
required: true;
};
showDelay: {
type: NumberConstructor;
default: number;
};
hideDelay: {
type: NumberConstructor;
default: number;
};
boundarySelector: {
type: StringConstructor;
};
}>, {
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")[], "before-show" | "after-show" | "before-hide" | "after-hide", import("vue").PublicProps, Readonly<import("vue").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;
}>, {
showDelay: number;
hideDelay: number;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
CalendarEventEdit: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
event: {
type: import("vue").PropType<{
refSelector: string;
isMultiDay: boolean;
isWeekly: boolean;
durationMs: number;
durationMinutes: number;
startDate: Date;
startDateTime: number;
startTimeLabel: string;
endDate: Date;
endDateTime: number;
endTimeLabel: string;
timeLabel: string;
isSolid: boolean;
dragIsDirty: boolean;
formatDate: (date: Date, mask: string) => string;
formatTime: (date: Date) => string;
resizeToConstraints: () => void;
startResize: (day: import("../../utils/page").CalendarDay, isStart: boolean) => void;
updateResize: (offset: import("../../use/calendarGrid").ResizeOffset) => void;
stopResize: () => void;
startDrag: (day: import("../../utils/page").CalendarDay) => void;
updateDrag: (offset: import("../../use/calendarGrid").DragOffset) => void;
stopDrag: () => false | undefined;
compareTo: (b: any) => number;
key: any;
summary: string;
description: string;
range: import("../../utils/date/range").DateRange;
allDay: boolean;
color: string;
fill: string;
selected: boolean;
draggable: boolean;
dragging: boolean;
resizable: boolean;
resizing: boolean;
editing: boolean;
order: number;
snapMinutes: number;
minDurationMinutes: number;
maxDurationMinutes: number;
popover: Partial<PopoverOptions> | null;
resizeOrigin: import("../../utils/calendar/event").ResizeOrigin | null;
dragOrigin: import("../../utils/calendar/event").DragOrigin | null;
}>;
required: true;
};
}>, {
onRemove(): void;
onToggleEditing(): void;
onSave(): void;
onCancel(): void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "close"[], "close", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
event: {
type: import("vue").PropType<{
refSelector: string;
isMultiDay: boolean;
isWeekly: boolean;
durationMs: number;
durationMinutes: number;
startDate: Date;
startDateTime: number;
startTimeLabel: string;
endDate: Date;
endDateTime: number;
endTimeLabel: string;
timeLabel: string;
isSolid: boolean;
dragIsDirty: boolean;
formatDate: (date: Date, mask: string) => string;
formatTime: (date: Date) => string;
resizeToConstraints: () => void;
startResize: (day: import("../../utils/page").CalendarDay, isStart: boolean) => void;
updateResize: (offset: import("../../use/calendarGrid").ResizeOffset) => void;
stopResize: () => void;
startDrag: (day: import("../../utils/page").CalendarDay) => void;
updateDrag: (offset: import("../../use/calendarGrid").DragOffset) => void;
stopDrag: () => false | undefined;
compareTo: (b: any) => number;
key: any;
summary: string;
description: string;
range: import("../../utils/date/range").DateRange;
allDay: boolean;
color: string;
fill: string;
selected: boolean;
draggable: boolean;
dragging: boolean;
resizable: boolean;
resizing: boolean;
editing: boolean;
order: number;
snapMinutes: number;
minDurationMinutes: number;
maxDurationMinutes: number;
popover: Partial<PopoverOptions> | null;
resizeOrigin: import("../../utils/calendar/event").ResizeOrigin | null;
dragOrigin: import("../../utils/calendar/event").DragOrigin | null;
}>;
required: true;
};
}>> & Readonly<{
onClose?: ((...args: any[]) => any) | undefined;
}>, {}, {}, {}, {
focus: {
mounted(el: any): void;
};
}, string, import("vue").ComponentProvideOptions, true, {}, any>;
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;