@eclipse-scout/core
Version:
Eclipse Scout runtime
107 lines • 3.74 kB
TypeScript
/// <reference types="jquery" />
import { Calendar, CalendarComponentEventMap, CalendarComponentModel, DateRange, InitModelOf, JsonDateRange, Range, Widget } from '../index';
export declare class CalendarComponent extends Widget implements CalendarComponentModel {
model: CalendarComponentModel;
eventMap: CalendarComponentEventMap;
self: CalendarComponent;
parent: Calendar;
fromDate: string;
toDate: string;
selected: boolean;
fullDay: boolean;
fullDayIndex: number;
draggable: boolean;
item: CalendarItem;
stack: Record<string, {
x?: number;
w?: number;
}>;
coveredDaysRange: DateRange;
/** @internal */
_$parts: JQuery[];
constructor();
/**
* If day of a month is smaller than 100px, the components get the class compact
*/
static MONTH_COMPACT_THRESHOLD: number;
static DAY_OF_MONTH_HEIGHT: number;
static COMPONENT_HEIGHT: number;
static COMPONENT_VGAP: number;
protected _init(model: InitModelOf<this>): void;
protected _syncCoveredDaysRange(coveredDaysRange: JsonDateRange): void;
protected _remove(): void;
protected _startLoopDay(): Date;
protected _render(): void;
protected _getHours(date: string): number;
getLengthInHoursDecimal(): number;
getResourceId(): string;
protected _findDayInGrid(date: Date, $grid: JQuery): JQuery;
protected _findResourceColumnInDay($day: JQuery, resouceId: string): JQuery;
protected _isTask(): boolean;
protected _arrangeTask(taskOffset: number): void;
protected _isDayPart(): boolean;
protected _getHourRange(day: Date): Range;
getPartDayPosition(day: Date): Range;
protected _getDisplayDayPosition(range: Range): Range;
protected _partPosition($part: JQuery, y1: number, y2: number): JQuery;
protected _renderProperties(): void;
protected _renderSelected(): void;
setSelected(selected: boolean): void;
updateSelectedComponent($part: JQuery, updateScrollPosition: boolean): void;
protected _onMouseEnter(event: JQuery.MouseEnterEvent): void;
protected _onMouseLeave(evenet: JQuery.MouseLeaveEvent): void;
protected _onMouseDown(event: JQuery.MouseDownEvent): void;
applySelection($part: JQuery, openPopup: boolean, popupY: number): void;
/** @internal */
_onContextMenu(event: JQuery.ContextMenuEvent): void;
protected _format(date: Date, pattern: string): string;
description(linkAllowed: boolean): string;
triggerAppLinkAction(ref: string): void;
_onAppLinkAction(event: JQuery.ClickEvent): void;
}
/**
* See JsonCalendarItem.java
*/
export type CalendarItem = {
exists: boolean;
lastModified: number;
itemId: any;
owner: string;
cssClass: string;
resourceId: string;
subject: string;
description: string;
recurrencePattern: {
lastModified: number;
regenerate: boolean;
startTimeMinutes: number;
endTimeMinutes: number;
durationMinutes: number;
firstDate: Date;
lastDate: Date;
occurrences: number;
noEndDate: boolean;
/**
* @see RecurrencePattern.java TYPE* constants
*/
type: number;
interval: number;
/**
* @see RecurrencePattern.java INST_* constants
*/
instance: number;
dayOfWeekBits: number;
dayOfMonth: number;
monthOfYear: number;
};
subjectLabel: string;
subjectAppLink: string;
subjectIconId: string;
descriptionElements: CalendarItemDescriptionElement[];
};
export type CalendarItemDescriptionElement = {
text: string;
iconId: string;
appLink: string;
};
//# sourceMappingURL=CalendarComponent.d.ts.map