@fullcalendar/daygrid 7.0.0-beta.1 → 7.0.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.global.js +639 -631
- package/index.global.min.js +2 -2
- package/internal.cjs +673 -665
- package/internal.d.ts +138 -173
- package/internal.js +670 -663
- package/package.json +2 -2
package/internal.d.ts
CHANGED
|
@@ -1,17 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { createElement, Ref,
|
|
3
|
-
import '@fullcalendar/core';
|
|
1
|
+
import { Slicer, DayGridRange, DayTableModel, DateRange, DateProfileGenerator, DateEnv, BaseComponent, ViewProps, DateMarker, DateProfile, DateFormatter, ViewContext, DayTableCell, Hit, EventRangeProps, EventSegUiInteractionState, DateComponent, ViewOptionsRefined, RefMap, SlicedCoordRange } from '@fullcalendar/core/internal';
|
|
2
|
+
import { createElement, Ref, VNode } from '@fullcalendar/core/preact';
|
|
3
|
+
import { CustomContentGenerator, ClassNamesGenerator, DidMountHandler, WillUnmountHandler, DayHeaderContentArg, CssDimValue } from '@fullcalendar/core';
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
row: number;
|
|
7
|
-
firstCol: number;
|
|
8
|
-
lastCol: number;
|
|
9
|
-
isStandin?: boolean;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
declare class DayTableSlicer extends Slicer<TableSeg, [DayTableModel]> {
|
|
5
|
+
declare class DayTableSlicer extends Slicer<DayGridRange, [DayTableModel]> {
|
|
13
6
|
forceDayIfListItem: boolean;
|
|
14
|
-
sliceRange(dateRange: DateRange, dayTableModel: DayTableModel):
|
|
7
|
+
sliceRange(dateRange: DateRange, dayTableModel: DayTableModel): DayGridRange[];
|
|
15
8
|
}
|
|
16
9
|
|
|
17
10
|
declare class TableDateProfileGenerator extends DateProfileGenerator {
|
|
@@ -26,171 +19,110 @@ declare function buildDayTableRenderRange(props: {
|
|
|
26
19
|
|
|
27
20
|
declare class DayGridView extends BaseComponent<ViewProps> {
|
|
28
21
|
private buildDayTableModel;
|
|
29
|
-
private
|
|
22
|
+
private buildDateRowConfigs;
|
|
30
23
|
private createDayHeaderFormatter;
|
|
31
24
|
private slicer;
|
|
32
25
|
render(): createElement.JSX.Element;
|
|
33
26
|
}
|
|
34
27
|
|
|
35
|
-
interface
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
28
|
+
interface CellRenderConfig<RenderProps> {
|
|
29
|
+
generatorName: string;
|
|
30
|
+
customGenerator: CustomContentGenerator<RenderProps>;
|
|
31
|
+
classNameGenerator: ClassNamesGenerator<RenderProps>;
|
|
32
|
+
didMount: DidMountHandler<RenderProps & {
|
|
33
|
+
el: HTMLElement;
|
|
34
|
+
}>;
|
|
35
|
+
willUnmount: WillUnmountHandler<RenderProps & {
|
|
36
|
+
el: HTMLElement;
|
|
37
|
+
}>;
|
|
38
|
+
}
|
|
39
|
+
interface CellDataConfig<RenderProps> {
|
|
40
|
+
key: string;
|
|
41
|
+
renderProps: RenderProps;
|
|
42
|
+
className?: string;
|
|
43
|
+
attrs?: any;
|
|
44
|
+
innerAttrs?: any;
|
|
42
45
|
colSpan?: number;
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
}
|
|
49
|
-
declare
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
}
|
|
46
|
+
isNavLink?: boolean;
|
|
47
|
+
}
|
|
48
|
+
interface RowConfig<RenderProps> {
|
|
49
|
+
renderConfig: CellRenderConfig<RenderProps>;
|
|
50
|
+
dataConfigs: CellDataConfig<RenderProps>[];
|
|
51
|
+
}
|
|
52
|
+
declare function buildDateRowConfigs(...args: Parameters<typeof buildDateRowConfig>): RowConfig<DayHeaderContentArg>[];
|
|
53
|
+
declare function buildDateRowConfig(dates: DateMarker[], datesRepDistinctDays: boolean, dateProfile: DateProfile, todayRange: DateRange, dayHeaderFormat: DateFormatter, // TODO: rename to dateHeaderFormat?
|
|
54
|
+
context: ViewContext, colSpan?: number): RowConfig<DayHeaderContentArg>;
|
|
55
|
+
declare function buildDateRenderConfig(context: ViewContext): CellRenderConfig<DayHeaderContentArg>;
|
|
56
|
+
declare function buildDateDataConfigs(dates: DateMarker[], datesRepDistinctDays: boolean, dateProfile: DateProfile, todayRange: DateRange, dayHeaderFormat: DateFormatter, // TODO: rename to dateHeaderFormat?
|
|
57
|
+
context: ViewContext, colSpan?: number, keyPrefix?: string): CellDataConfig<DayHeaderContentArg>[];
|
|
56
58
|
|
|
57
|
-
interface
|
|
58
|
-
dow: number;
|
|
59
|
-
dayHeaderFormat: DateFormatter;
|
|
59
|
+
interface DayGridHeaderRowProps<RenderProps> extends RowConfig<RenderProps> {
|
|
60
60
|
isSticky?: boolean;
|
|
61
|
-
colSpan?: number;
|
|
62
|
-
extraRenderProps?: Dictionary;
|
|
63
|
-
extraDataAttrs?: Dictionary;
|
|
64
|
-
extraClassNames?: string[];
|
|
65
|
-
colWidth?: number;
|
|
66
|
-
innerHeightRef?: Ref<number>;
|
|
67
|
-
}
|
|
68
|
-
declare class DayOfWeekHeaderCell extends BaseComponent<DayOfWeekHeaderCellProps> {
|
|
69
|
-
private innerElRef;
|
|
70
|
-
private disconectInnerHeight?;
|
|
71
|
-
render(): createElement.JSX.Element;
|
|
72
|
-
componentDidMount(): void;
|
|
73
|
-
componentWillUnmount(): void;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
interface HeaderRowProps<Model, ModelKey> {
|
|
77
|
-
tierNum: number;
|
|
78
|
-
cells: Model[];
|
|
79
|
-
renderHeaderContent: (model: Model, tier: number, innerHeightRef: Ref<number> | undefined, // unused
|
|
80
|
-
width: number | undefined) => ComponentChild;
|
|
81
|
-
getHeaderModelKey: (model: Model) => ModelKey;
|
|
82
|
-
cellGroup?: boolean;
|
|
83
61
|
className?: string;
|
|
62
|
+
height?: number;
|
|
84
63
|
colWidth?: number;
|
|
85
|
-
}
|
|
86
|
-
declare class HeaderRow<Model, ModelKey> extends BaseComponent<HeaderRowProps<Model, ModelKey>> {
|
|
87
|
-
render(): createElement.JSX.Element;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
interface HeaderRowAdvancedProps<Model, ModelKey> {
|
|
91
|
-
tierNum: number;
|
|
92
|
-
cells: Model[];
|
|
93
|
-
renderHeaderContent: (// TODO: better name
|
|
94
|
-
model: Model, tier: number, innerHeightRef: Ref<number> | undefined, width: number | undefined) => ComponentChild;
|
|
95
|
-
getHeaderModelKey: (model: Model) => ModelKey;
|
|
96
64
|
innerHeightRef?: Ref<number>;
|
|
97
|
-
|
|
98
|
-
|
|
65
|
+
role?: string;
|
|
66
|
+
rowIndex?: number;
|
|
99
67
|
}
|
|
100
|
-
declare class
|
|
68
|
+
declare class DayGridHeaderRow<RenderProps extends {
|
|
69
|
+
text: string;
|
|
70
|
+
isDisabled: boolean;
|
|
71
|
+
}> extends BaseComponent<DayGridHeaderRowProps<RenderProps>> {
|
|
101
72
|
private innerHeightRefMap;
|
|
102
73
|
private currentInnerHeight?;
|
|
103
74
|
render(): createElement.JSX.Element;
|
|
104
75
|
private handleInnerHeights;
|
|
105
76
|
}
|
|
106
77
|
|
|
78
|
+
declare function buildDayTableModel(dateProfile: DateProfile, dateProfileGenerator: DateProfileGenerator): DayTableModel;
|
|
79
|
+
declare function computeColWidth(colCnt: number, colMinWidth: number, viewportWidth: number | undefined): [
|
|
80
|
+
canvasWidth: number | undefined,
|
|
81
|
+
colWidth: number | undefined
|
|
82
|
+
];
|
|
83
|
+
declare function computeColFromPosition(positionLeft: number, elWidth: number, colWidth: number | undefined, colCnt: number, isRtl: boolean): {
|
|
84
|
+
col: number;
|
|
85
|
+
left: number;
|
|
86
|
+
right: number;
|
|
87
|
+
};
|
|
88
|
+
declare function getRowEl(rootEl: HTMLElement, row: number): HTMLElement;
|
|
89
|
+
declare function getCellEl(rowEl: HTMLElement, col: number): HTMLElement;
|
|
107
90
|
declare function createDayHeaderFormatter(explicitFormat: DateFormatter, datesRepDistinctDays: any, dateCnt: any): DateFormatter;
|
|
108
91
|
|
|
109
|
-
interface DayGridLayoutProps
|
|
92
|
+
interface DayGridLayoutProps {
|
|
93
|
+
labelId: string | undefined;
|
|
94
|
+
labelStr: string | undefined;
|
|
110
95
|
dateProfile: DateProfile;
|
|
111
96
|
todayRange: DateRange;
|
|
112
97
|
cellRows: DayTableCell[][];
|
|
113
98
|
forPrint: boolean;
|
|
114
99
|
isHitComboAllowed?: (hit0: Hit, hit1: Hit) => boolean;
|
|
115
100
|
className: string;
|
|
116
|
-
headerTiers:
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
fgEventSegs:
|
|
121
|
-
bgEventSegs:
|
|
122
|
-
businessHourSegs:
|
|
123
|
-
dateSelectionSegs:
|
|
124
|
-
eventDrag: EventSegUiInteractionState<
|
|
125
|
-
eventResize: EventSegUiInteractionState<
|
|
101
|
+
headerTiers: RowConfig<{
|
|
102
|
+
text: string;
|
|
103
|
+
isDisabled: boolean;
|
|
104
|
+
}>[];
|
|
105
|
+
fgEventSegs: (DayGridRange & EventRangeProps)[];
|
|
106
|
+
bgEventSegs: (DayGridRange & EventRangeProps)[];
|
|
107
|
+
businessHourSegs: (DayGridRange & EventRangeProps)[];
|
|
108
|
+
dateSelectionSegs: (DayGridRange & EventRangeProps)[];
|
|
109
|
+
eventDrag: EventSegUiInteractionState<DayGridRange> | null;
|
|
110
|
+
eventResize: EventSegUiInteractionState<DayGridRange> | null;
|
|
126
111
|
eventSelection: string;
|
|
127
112
|
}
|
|
128
|
-
declare class DayGridLayout
|
|
113
|
+
declare class DayGridLayout extends BaseComponent<DayGridLayoutProps> {
|
|
129
114
|
private scrollerRef;
|
|
130
115
|
private rowHeightRefMap;
|
|
131
116
|
private scrollDate;
|
|
132
117
|
render(): createElement.JSX.Element;
|
|
133
118
|
componentDidMount(): void;
|
|
134
|
-
componentDidUpdate(prevProps: DayGridLayoutProps
|
|
119
|
+
componentDidUpdate(prevProps: DayGridLayoutProps): void;
|
|
135
120
|
componentWillUnmount(): void;
|
|
136
121
|
resetScroll(): void;
|
|
137
122
|
updateScrollY: () => void;
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
interface DayGridRowProps {
|
|
142
|
-
dateProfile: DateProfile;
|
|
143
|
-
todayRange: DateRange;
|
|
144
|
-
cells: DayTableCell[];
|
|
145
|
-
showDayNumbers: boolean;
|
|
146
|
-
showWeekNumbers?: boolean;
|
|
147
|
-
forPrint: boolean;
|
|
148
|
-
cellGroup?: boolean;
|
|
149
|
-
className?: string;
|
|
150
|
-
forceVSpacing?: boolean;
|
|
151
|
-
compact?: boolean;
|
|
152
|
-
fgEventSegs: TableSeg[];
|
|
153
|
-
bgEventSegs: TableSeg[];
|
|
154
|
-
businessHourSegs: TableSeg[];
|
|
155
|
-
dateSelectionSegs: TableSeg[];
|
|
156
|
-
eventDrag: EventSegUiInteractionState | null;
|
|
157
|
-
eventResize: EventSegUiInteractionState | null;
|
|
158
|
-
eventSelection: string;
|
|
159
|
-
dayMaxEvents: boolean | number;
|
|
160
|
-
dayMaxEventRows: boolean | number;
|
|
161
|
-
colWidth?: number;
|
|
162
|
-
minHeight?: number | string;
|
|
163
|
-
rootElRef?: Ref<HTMLElement>;
|
|
164
|
-
heightRef?: Ref<number>;
|
|
165
|
-
innerHeightRef?: Ref<number>;
|
|
166
|
-
}
|
|
167
|
-
interface DayGridRowState {
|
|
168
|
-
innerHeight?: number;
|
|
169
|
-
headerHeight?: number;
|
|
170
|
-
segHeightRev?: string;
|
|
171
|
-
}
|
|
172
|
-
declare const COMPACT_CELL_WIDTH = 80;
|
|
173
|
-
declare class DayGridRow extends BaseComponent<DayGridRowProps, DayGridRowState> {
|
|
174
|
-
private rootEl;
|
|
175
|
-
private cellInnerHeightRefMap;
|
|
176
|
-
private cellHeaderHeightRefMap;
|
|
177
|
-
private segHeightRefMap;
|
|
178
|
-
private disconnectHeight?;
|
|
179
|
-
render(): createElement.JSX.Element;
|
|
180
|
-
renderFgSegs(segs: TableSeg[], segTops: {
|
|
181
|
-
[segStartId: string]: number;
|
|
182
|
-
}, todayRange: DateRange, forcedInvisibleMap: {
|
|
183
|
-
[instanceId: string]: any;
|
|
184
|
-
}, isDragging?: boolean, isResizing?: boolean, isDateSelecting?: boolean): VNode[];
|
|
185
|
-
renderFillSegs(segs: TableSeg[], fillType: string): VNode;
|
|
186
|
-
handleRootEl: (rootEl: HTMLElement) => void;
|
|
187
|
-
componentDidMount(): void;
|
|
188
|
-
componentWillUnmount(): void;
|
|
189
|
-
private handleHeaderHeights;
|
|
190
|
-
private handleInnerHeights;
|
|
191
|
-
private handleSegHeights;
|
|
192
|
-
getMirrorSegs(): TableSeg[];
|
|
193
|
-
getHighlightSegs(): TableSeg[];
|
|
123
|
+
handleScrollEnd: ({ isUser }: {
|
|
124
|
+
isUser: boolean;
|
|
125
|
+
}) => void;
|
|
194
126
|
}
|
|
195
127
|
|
|
196
128
|
interface DayGridRowsProps {
|
|
@@ -199,21 +131,22 @@ interface DayGridRowsProps {
|
|
|
199
131
|
cellRows: DayTableCell[][];
|
|
200
132
|
forPrint: boolean;
|
|
201
133
|
isHitComboAllowed?: (hit0: Hit, hit1: Hit) => boolean;
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
134
|
+
className?: string;
|
|
135
|
+
dayMaxEvents?: number | boolean;
|
|
136
|
+
dayMaxEventRows?: number | boolean;
|
|
137
|
+
fgEventSegs: (DayGridRange & EventRangeProps)[];
|
|
138
|
+
bgEventSegs: (DayGridRange & EventRangeProps)[];
|
|
139
|
+
businessHourSegs: (DayGridRange & EventRangeProps)[];
|
|
140
|
+
dateSelectionSegs: (DayGridRange & EventRangeProps)[];
|
|
141
|
+
eventDrag: EventSegUiInteractionState<DayGridRange> | null;
|
|
142
|
+
eventResize: EventSegUiInteractionState<DayGridRange> | null;
|
|
208
143
|
eventSelection: string;
|
|
209
144
|
colWidth?: number;
|
|
210
145
|
width?: number | string;
|
|
146
|
+
visibleWidth?: number;
|
|
211
147
|
rowHeightRefMap?: RefMap<string, number>;
|
|
212
148
|
}
|
|
213
|
-
|
|
214
|
-
width?: number;
|
|
215
|
-
}
|
|
216
|
-
declare class DayGridRows extends DateComponent<DayGridRowsProps, DayGridRowsState> {
|
|
149
|
+
declare class DayGridRows extends DateComponent<DayGridRowsProps> {
|
|
217
150
|
private rootEl;
|
|
218
151
|
private splitBusinessHourSegs;
|
|
219
152
|
private splitBgEventSegs;
|
|
@@ -222,34 +155,66 @@ declare class DayGridRows extends DateComponent<DayGridRowsProps, DayGridRowsSta
|
|
|
222
155
|
private splitEventDrag;
|
|
223
156
|
private splitEventResize;
|
|
224
157
|
private rowHeightRefMap;
|
|
225
|
-
private
|
|
158
|
+
private disconnectWidth?;
|
|
226
159
|
render(): createElement.JSX.Element;
|
|
227
160
|
handleRootEl: (rootEl: HTMLDivElement) => void;
|
|
228
161
|
componentDidMount(): void;
|
|
229
162
|
componentWillUnmount(): void;
|
|
230
163
|
queryHit(positionLeft: number, positionTop: number, elWidth: number): Hit;
|
|
231
164
|
}
|
|
165
|
+
declare function computeRowHeight(visibleWidth: number | undefined, // should INCLUDE any scrollbar width to avoid oscillation
|
|
166
|
+
rowCnt: number, isHeightAuto: boolean, forPrint: boolean, options: ViewOptionsRefined): [minHeight: CssDimValue | undefined, isCompact: boolean];
|
|
232
167
|
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
type DateHeaderCellObj = {
|
|
239
|
-
date: DateMarker;
|
|
240
|
-
colSpan: number;
|
|
241
|
-
};
|
|
242
|
-
type DayOfWeekHeaderCellObj = {
|
|
243
|
-
dow: number;
|
|
244
|
-
colSpan: number;
|
|
168
|
+
type DayRowRange = SlicedCoordRange;
|
|
169
|
+
type DayRowEventRange = DayRowRange & EventRangeProps;
|
|
170
|
+
type DayRowEventRangePart = DayRowEventRange & {
|
|
171
|
+
isSlice?: boolean;
|
|
172
|
+
standinFor?: DayRowEventRange;
|
|
245
173
|
};
|
|
246
|
-
type HeaderCellObj = DateHeaderCellObj | DayOfWeekHeaderCellObj;
|
|
247
|
-
declare function computeColFromPosition(positionLeft: number, elWidth: number, colWidth: number | undefined, colCnt: number, isRtl: boolean): {
|
|
248
|
-
col: number;
|
|
249
|
-
left: number;
|
|
250
|
-
right: number;
|
|
251
|
-
};
|
|
252
|
-
declare function getRowEl(rootEl: HTMLElement, row: number): HTMLElement;
|
|
253
|
-
declare function getCellEl(rowEl: HTMLElement, col: number): HTMLElement;
|
|
254
174
|
|
|
255
|
-
|
|
175
|
+
interface DayGridRowProps {
|
|
176
|
+
dateProfile: DateProfile;
|
|
177
|
+
todayRange: DateRange;
|
|
178
|
+
cells: DayTableCell[];
|
|
179
|
+
showDayNumbers: boolean;
|
|
180
|
+
showWeekNumbers?: boolean;
|
|
181
|
+
forPrint: boolean;
|
|
182
|
+
className?: string;
|
|
183
|
+
isCompact?: boolean;
|
|
184
|
+
isTall?: boolean;
|
|
185
|
+
role?: string;
|
|
186
|
+
fgEventSegs: (SlicedCoordRange & EventRangeProps)[];
|
|
187
|
+
bgEventSegs: (SlicedCoordRange & EventRangeProps)[];
|
|
188
|
+
businessHourSegs: (SlicedCoordRange & EventRangeProps)[];
|
|
189
|
+
dateSelectionSegs: (SlicedCoordRange & EventRangeProps)[];
|
|
190
|
+
eventDrag: EventSegUiInteractionState<SlicedCoordRange> | null;
|
|
191
|
+
eventResize: EventSegUiInteractionState<SlicedCoordRange> | null;
|
|
192
|
+
eventSelection: string;
|
|
193
|
+
dayMaxEvents: boolean | number;
|
|
194
|
+
dayMaxEventRows: boolean | number;
|
|
195
|
+
colWidth?: number;
|
|
196
|
+
minHeight?: number | string;
|
|
197
|
+
rootElRef?: Ref<HTMLElement>;
|
|
198
|
+
heightRef?: Ref<number>;
|
|
199
|
+
}
|
|
200
|
+
declare class DayGridRow extends BaseComponent<DayGridRowProps> {
|
|
201
|
+
private rootEl;
|
|
202
|
+
private headerHeightRefMap;
|
|
203
|
+
private mainHeightRefMap;
|
|
204
|
+
private segHeightRefMap;
|
|
205
|
+
private disconnectHeight?;
|
|
206
|
+
render(): createElement.JSX.Element;
|
|
207
|
+
renderFgSegs(headerHeight: number | undefined, segs: DayRowEventRangePart[], segTops: Map<string, number>, todayRange: DateRange, forcedInvisibleMap: {
|
|
208
|
+
[instanceId: string]: any;
|
|
209
|
+
}, isDragging?: boolean, isResizing?: boolean, isDateSelecting?: boolean): VNode[];
|
|
210
|
+
renderFillSegs(segs: DayRowEventRangePart[], fillType: string): VNode;
|
|
211
|
+
handleRootEl: (rootEl: HTMLElement) => void;
|
|
212
|
+
componentDidMount(): void;
|
|
213
|
+
componentWillUnmount(): void;
|
|
214
|
+
computeFgDims(): [maxMainTop: number | undefined, minMainHeight: number | undefined];
|
|
215
|
+
private handleSegPositioning;
|
|
216
|
+
private getMirrorSegs;
|
|
217
|
+
private getHighlightSegs;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
export { CellDataConfig, CellRenderConfig, DayGridHeaderRow, DayGridHeaderRowProps, DayGridLayout, DayGridLayoutProps, DayGridRow, DayGridRowProps, DayGridRows, DayGridView, DayTableSlicer, RowConfig, TableDateProfileGenerator, buildDateDataConfigs, buildDateRenderConfig, buildDateRowConfig, buildDateRowConfigs, buildDayTableModel, buildDayTableRenderRange, computeColFromPosition, computeColWidth, computeRowHeight, createDayHeaderFormatter, getCellEl, getRowEl };
|