@fullcalendar/daygrid 6.1.15 → 7.0.0-beta.1
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 +887 -684
- package/index.global.min.js +2 -2
- package/index.js +2 -2
- package/internal.cjs +921 -718
- package/internal.d.ts +209 -80
- package/internal.js +910 -716
- package/package.json +2 -2
package/internal.d.ts
CHANGED
|
@@ -1,40 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
interface DayTableProps {
|
|
6
|
-
dateProfile: DateProfile;
|
|
7
|
-
dayTableModel: DayTableModel;
|
|
8
|
-
nextDayThreshold: Duration;
|
|
9
|
-
businessHours: EventStore;
|
|
10
|
-
eventStore: EventStore;
|
|
11
|
-
eventUiBases: EventUiHash;
|
|
12
|
-
dateSelection: DateSpan | null;
|
|
13
|
-
eventSelection: string;
|
|
14
|
-
eventDrag: EventInteractionState | null;
|
|
15
|
-
eventResize: EventInteractionState | null;
|
|
16
|
-
colGroupNode: VNode;
|
|
17
|
-
tableMinWidth: CssDimValue;
|
|
18
|
-
renderRowIntro?: () => VNode;
|
|
19
|
-
dayMaxEvents: boolean | number;
|
|
20
|
-
dayMaxEventRows: boolean | number;
|
|
21
|
-
expandRows: boolean;
|
|
22
|
-
showWeekNumbers: boolean;
|
|
23
|
-
headerAlignElRef?: RefObject<HTMLElement>;
|
|
24
|
-
clientWidth: number | null;
|
|
25
|
-
clientHeight: number | null;
|
|
26
|
-
forPrint: boolean;
|
|
27
|
-
}
|
|
28
|
-
declare class DayTable extends DateComponent<DayTableProps, ViewContext> {
|
|
29
|
-
private slicer;
|
|
30
|
-
private tableRef;
|
|
31
|
-
render(): createElement.JSX.Element;
|
|
32
|
-
}
|
|
1
|
+
import { Seg, Slicer, DayTableModel, DateRange, DateProfileGenerator, DateEnv, BaseComponent, ViewProps, DateProfile, DateMarker, DateFormatter, Dictionary, DayTableCell, Hit, EventSegUiInteractionState, DateComponent, RefMap } from '@fullcalendar/core/internal';
|
|
2
|
+
import { createElement, Ref, ComponentChild, VNode } from '@fullcalendar/core/preact';
|
|
3
|
+
import '@fullcalendar/core';
|
|
33
4
|
|
|
34
5
|
interface TableSeg extends Seg {
|
|
35
6
|
row: number;
|
|
36
7
|
firstCol: number;
|
|
37
8
|
lastCol: number;
|
|
9
|
+
isStandin?: boolean;
|
|
38
10
|
}
|
|
39
11
|
|
|
40
12
|
declare class DayTableSlicer extends Slicer<TableSeg, [DayTableModel]> {
|
|
@@ -52,75 +24,232 @@ declare function buildDayTableRenderRange(props: {
|
|
|
52
24
|
dateEnv: DateEnv;
|
|
53
25
|
}): DateRange;
|
|
54
26
|
|
|
55
|
-
|
|
27
|
+
declare class DayGridView extends BaseComponent<ViewProps> {
|
|
28
|
+
private buildDayTableModel;
|
|
29
|
+
private buildHeaderTiers;
|
|
30
|
+
private createDayHeaderFormatter;
|
|
31
|
+
private slicer;
|
|
32
|
+
render(): createElement.JSX.Element;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
interface DateHeaderCellProps {
|
|
56
36
|
dateProfile: DateProfile;
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
37
|
+
todayRange: DateRange;
|
|
38
|
+
date: DateMarker;
|
|
39
|
+
navLink: boolean;
|
|
40
|
+
dayHeaderFormat: DateFormatter;
|
|
41
|
+
isSticky?: boolean;
|
|
42
|
+
colSpan?: number;
|
|
43
|
+
extraRenderProps?: Dictionary;
|
|
44
|
+
extraDataAttrs?: Dictionary;
|
|
45
|
+
extraClassNames?: string[];
|
|
46
|
+
colWidth?: number;
|
|
47
|
+
innerHeightRef?: Ref<number>;
|
|
48
|
+
}
|
|
49
|
+
declare class DateHeaderCell extends BaseComponent<DateHeaderCellProps> {
|
|
50
|
+
private innerElRef;
|
|
51
|
+
private disconectInnerHeight?;
|
|
52
|
+
render(): createElement.JSX.Element;
|
|
53
|
+
componentDidMount(): void;
|
|
54
|
+
componentWillUnmount(): void;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
interface DayOfWeekHeaderCellProps {
|
|
58
|
+
dow: number;
|
|
59
|
+
dayHeaderFormat: DateFormatter;
|
|
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
|
+
className?: string;
|
|
84
|
+
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
|
+
innerHeightRef?: Ref<number>;
|
|
97
|
+
height: number | undefined;
|
|
98
|
+
colWidth?: number;
|
|
99
|
+
}
|
|
100
|
+
declare class HeaderRowAdvanced<Model, ModelKey> extends BaseComponent<HeaderRowAdvancedProps<Model, ModelKey>> {
|
|
101
|
+
private innerHeightRefMap;
|
|
102
|
+
private currentInnerHeight?;
|
|
103
|
+
render(): createElement.JSX.Element;
|
|
104
|
+
private handleInnerHeights;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
declare function createDayHeaderFormatter(explicitFormat: DateFormatter, datesRepDistinctDays: any, dateCnt: any): DateFormatter;
|
|
108
|
+
|
|
109
|
+
interface DayGridLayoutProps<HeaderCellModel, HeaderCellKey> {
|
|
110
|
+
dateProfile: DateProfile;
|
|
111
|
+
todayRange: DateRange;
|
|
112
|
+
cellRows: DayTableCell[][];
|
|
113
|
+
forPrint: boolean;
|
|
114
|
+
isHitComboAllowed?: (hit0: Hit, hit1: Hit) => boolean;
|
|
115
|
+
className: string;
|
|
116
|
+
headerTiers: HeaderCellModel[][];
|
|
117
|
+
renderHeaderContent: (model: HeaderCellModel, tier: number, innerHeightRef: Ref<number> | undefined, // unused... why do we have it then???
|
|
118
|
+
width: number | undefined) => ComponentChild;
|
|
119
|
+
getHeaderModelKey: (model: HeaderCellModel) => HeaderCellKey;
|
|
64
120
|
fgEventSegs: TableSeg[];
|
|
121
|
+
bgEventSegs: TableSeg[];
|
|
122
|
+
businessHourSegs: TableSeg[];
|
|
65
123
|
dateSelectionSegs: TableSeg[];
|
|
124
|
+
eventDrag: EventSegUiInteractionState<TableSeg> | null;
|
|
125
|
+
eventResize: EventSegUiInteractionState<TableSeg> | null;
|
|
66
126
|
eventSelection: string;
|
|
127
|
+
}
|
|
128
|
+
declare class DayGridLayout<HeaderCellModel, HeaderCellKey> extends BaseComponent<DayGridLayoutProps<HeaderCellModel, HeaderCellKey>> {
|
|
129
|
+
private scrollerRef;
|
|
130
|
+
private rowHeightRefMap;
|
|
131
|
+
private scrollDate;
|
|
132
|
+
render(): createElement.JSX.Element;
|
|
133
|
+
componentDidMount(): void;
|
|
134
|
+
componentDidUpdate(prevProps: DayGridLayoutProps<unknown, unknown>): void;
|
|
135
|
+
componentWillUnmount(): void;
|
|
136
|
+
resetScroll(): void;
|
|
137
|
+
updateScrollY: () => void;
|
|
138
|
+
clearScroll: () => void;
|
|
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[];
|
|
67
156
|
eventDrag: EventSegUiInteractionState | null;
|
|
68
157
|
eventResize: EventSegUiInteractionState | null;
|
|
158
|
+
eventSelection: string;
|
|
69
159
|
dayMaxEvents: boolean | number;
|
|
70
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[];
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
interface DayGridRowsProps {
|
|
197
|
+
dateProfile: DateProfile;
|
|
198
|
+
todayRange: DateRange;
|
|
199
|
+
cellRows: DayTableCell[][];
|
|
71
200
|
forPrint: boolean;
|
|
72
201
|
isHitComboAllowed?: (hit0: Hit, hit1: Hit) => boolean;
|
|
202
|
+
fgEventSegs: TableSeg[];
|
|
203
|
+
bgEventSegs: TableSeg[];
|
|
204
|
+
businessHourSegs: TableSeg[];
|
|
205
|
+
dateSelectionSegs: TableSeg[];
|
|
206
|
+
eventDrag: EventSegUiInteractionState<TableSeg> | null;
|
|
207
|
+
eventResize: EventSegUiInteractionState<TableSeg> | null;
|
|
208
|
+
eventSelection: string;
|
|
209
|
+
colWidth?: number;
|
|
210
|
+
width?: number | string;
|
|
211
|
+
rowHeightRefMap?: RefMap<string, number>;
|
|
73
212
|
}
|
|
74
|
-
|
|
213
|
+
interface DayGridRowsState {
|
|
214
|
+
width?: number;
|
|
215
|
+
}
|
|
216
|
+
declare class DayGridRows extends DateComponent<DayGridRowsProps, DayGridRowsState> {
|
|
217
|
+
private rootEl;
|
|
75
218
|
private splitBusinessHourSegs;
|
|
76
219
|
private splitBgEventSegs;
|
|
77
220
|
private splitFgEventSegs;
|
|
78
221
|
private splitDateSelectionSegs;
|
|
79
222
|
private splitEventDrag;
|
|
80
223
|
private splitEventResize;
|
|
81
|
-
private
|
|
82
|
-
private
|
|
83
|
-
private rowPositions;
|
|
84
|
-
private colPositions;
|
|
224
|
+
private rowHeightRefMap;
|
|
225
|
+
private detachWidth?;
|
|
85
226
|
render(): createElement.JSX.Element;
|
|
227
|
+
handleRootEl: (rootEl: HTMLDivElement) => void;
|
|
86
228
|
componentDidMount(): void;
|
|
87
|
-
componentDidUpdate(): void;
|
|
88
|
-
registerInteractiveComponent(): void;
|
|
89
229
|
componentWillUnmount(): void;
|
|
90
|
-
|
|
91
|
-
queryHit(positionLeft: number, positionTop: number): Hit;
|
|
92
|
-
private getCellEl;
|
|
93
|
-
private getCellRange;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
interface TableProps extends TableRowsProps {
|
|
97
|
-
colGroupNode: VNode;
|
|
98
|
-
tableMinWidth: CssDimValue;
|
|
99
|
-
expandRows: boolean;
|
|
100
|
-
headerAlignElRef?: RefObject<HTMLElement>;
|
|
101
|
-
}
|
|
102
|
-
declare class Table extends DateComponent<TableProps> {
|
|
103
|
-
private elRef;
|
|
104
|
-
private needsScrollReset;
|
|
105
|
-
render(): createElement.JSX.Element;
|
|
106
|
-
componentDidMount(): void;
|
|
107
|
-
componentDidUpdate(prevProps: TableProps): void;
|
|
108
|
-
requestScrollReset(): void;
|
|
109
|
-
flushScrollReset(): void;
|
|
230
|
+
queryHit(positionLeft: number, positionTop: number, elWidth: number): Hit;
|
|
110
231
|
}
|
|
111
232
|
|
|
112
|
-
declare abstract class TableView<State = Dictionary> extends DateComponent<ViewProps, State> {
|
|
113
|
-
protected headerElRef: RefObject<HTMLTableCellElement>;
|
|
114
|
-
renderSimpleLayout(headerRowContent: ChunkConfigRowContent, bodyContent: (contentArg: ChunkContentCallbackArgs) => VNode): createElement.JSX.Element;
|
|
115
|
-
renderHScrollLayout(headerRowContent: ChunkConfigRowContent, bodyContent: (contentArg: ChunkContentCallbackArgs) => VNode, colCnt: number, dayMinWidth: number): createElement.JSX.Element;
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
declare class DayTableView extends TableView {
|
|
119
|
-
private buildDayTableModel;
|
|
120
|
-
private headerRef;
|
|
121
|
-
private tableRef;
|
|
122
|
-
render(): createElement.JSX.Element;
|
|
123
|
-
}
|
|
124
233
|
declare function buildDayTableModel(dateProfile: DateProfile, dateProfileGenerator: DateProfileGenerator): DayTableModel;
|
|
234
|
+
declare function computeColWidth(colCnt: number, colMinWidth: number, viewportWidth: number | undefined): [
|
|
235
|
+
canvasWidth: number | undefined,
|
|
236
|
+
colWidth: number | undefined
|
|
237
|
+
];
|
|
238
|
+
type DateHeaderCellObj = {
|
|
239
|
+
date: DateMarker;
|
|
240
|
+
colSpan: number;
|
|
241
|
+
};
|
|
242
|
+
type DayOfWeekHeaderCellObj = {
|
|
243
|
+
dow: number;
|
|
244
|
+
colSpan: number;
|
|
245
|
+
};
|
|
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;
|
|
125
254
|
|
|
126
|
-
export {
|
|
255
|
+
export { COMPACT_CELL_WIDTH, DateHeaderCell, DateHeaderCellObj, DayGridLayout, DayGridLayoutProps, DayGridRow, DayGridRowProps, DayGridRows, DayGridView, DayOfWeekHeaderCell, DayOfWeekHeaderCellObj, DayTableSlicer, HeaderCellObj, HeaderRow, HeaderRowAdvanced, TableDateProfileGenerator, TableSeg, buildDayTableModel, buildDayTableRenderRange, computeColFromPosition, computeColWidth, createDayHeaderFormatter, getCellEl, getRowEl };
|