@fullcalendar/timeline 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.cjs +1 -1
- package/index.global.js +711 -596
- package/index.global.min.js +2 -2
- package/index.js +1 -1
- package/internal.cjs +709 -594
- package/internal.d.ts +142 -138
- package/internal.js +706 -594
- package/package.json +4 -4
package/internal.d.ts
CHANGED
|
@@ -1,7 +1,44 @@
|
|
|
1
|
-
import { DateRange, DateMarker, DateProfile, DateEnv, BaseOptionsRefined, DateProfileGenerator,
|
|
2
|
-
import { createElement,
|
|
1
|
+
import { DateComponent, ViewProps, Hit, DateRange, DateMarker, DateProfile, DateEnv, BaseOptionsRefined, DateProfileGenerator, Seg, Slicer, EventStore, EventUiHash, DateSpan, EventInteractionState, BaseComponent, SegGroup, SegSpan } from '@fullcalendar/core/internal';
|
|
2
|
+
import { createElement, Ref } from '@fullcalendar/core/preact';
|
|
3
3
|
import { Duration, CssDimValue } from '@fullcalendar/core';
|
|
4
4
|
|
|
5
|
+
interface TimelineViewState {
|
|
6
|
+
scrollerWidth?: number;
|
|
7
|
+
leftScrollbarWidth?: number;
|
|
8
|
+
rightScrollbarWidth?: number;
|
|
9
|
+
slotInnerWidth?: number;
|
|
10
|
+
}
|
|
11
|
+
declare class TimelineView extends DateComponent<ViewProps, TimelineViewState> {
|
|
12
|
+
private buildTimelineDateProfile;
|
|
13
|
+
private computeSlotWidth;
|
|
14
|
+
private headerScrollerRef;
|
|
15
|
+
private bodyScrollerRef;
|
|
16
|
+
private footerScrollerRef;
|
|
17
|
+
private tDateProfile?;
|
|
18
|
+
private bodyEl?;
|
|
19
|
+
private slotWidth?;
|
|
20
|
+
private headerRowInnerWidthMap;
|
|
21
|
+
private bodySlotInnerWidth?;
|
|
22
|
+
private syncedScroller;
|
|
23
|
+
private scrollTime;
|
|
24
|
+
render(): createElement.JSX.Element;
|
|
25
|
+
componentDidMount(): void;
|
|
26
|
+
componentDidUpdate(prevProps: ViewProps): void;
|
|
27
|
+
componentWillUnmount(): void;
|
|
28
|
+
handleBodySlotInnerWidth: (innerWidth: number) => void;
|
|
29
|
+
handleSlotInnerWidths: () => void;
|
|
30
|
+
handleScrollerWidth: (scrollerWidth: number) => void;
|
|
31
|
+
handleLeftScrollbarWidth: (leftScrollbarWidth: number) => void;
|
|
32
|
+
handleRightScrollbarWidth: (rightScrollbarWidth: number) => void;
|
|
33
|
+
private updateSyncedScroller;
|
|
34
|
+
private resetScroll;
|
|
35
|
+
private handleTimeScroll;
|
|
36
|
+
private updateScroll;
|
|
37
|
+
private clearScroll;
|
|
38
|
+
handeBodyEl: (el: HTMLElement | null) => void;
|
|
39
|
+
queryHit(positionLeft: number, positionTop: number, elWidth: number, elHeight: number): Hit;
|
|
40
|
+
}
|
|
41
|
+
|
|
5
42
|
interface TimelineDateProfile {
|
|
6
43
|
labelInterval: Duration;
|
|
7
44
|
slotDuration: Duration;
|
|
@@ -20,9 +57,9 @@ interface TimelineDateProfile {
|
|
|
20
57
|
snapIndexToDiff: number[];
|
|
21
58
|
snapCnt: number;
|
|
22
59
|
slotCnt: number;
|
|
23
|
-
cellRows:
|
|
60
|
+
cellRows: TimelineHeaderCellData[][];
|
|
24
61
|
}
|
|
25
|
-
interface
|
|
62
|
+
interface TimelineHeaderCellData {
|
|
26
63
|
date: DateMarker;
|
|
27
64
|
text: string;
|
|
28
65
|
rowUnit: string;
|
|
@@ -31,54 +68,6 @@ interface TimelineHeaderCell {
|
|
|
31
68
|
}
|
|
32
69
|
declare function buildTimelineDateProfile(dateProfile: DateProfile, dateEnv: DateEnv, allOptions: BaseOptionsRefined, dateProfileGenerator: DateProfileGenerator): TimelineDateProfile;
|
|
33
70
|
|
|
34
|
-
declare class TimelineCoords {
|
|
35
|
-
slatRootEl: HTMLElement;
|
|
36
|
-
dateProfile: DateProfile;
|
|
37
|
-
private tDateProfile;
|
|
38
|
-
private dateEnv;
|
|
39
|
-
isRtl: boolean;
|
|
40
|
-
outerCoordCache: PositionCache;
|
|
41
|
-
innerCoordCache: PositionCache;
|
|
42
|
-
constructor(slatRootEl: HTMLElement, // okay to expose?
|
|
43
|
-
slatEls: HTMLElement[], dateProfile: DateProfile, tDateProfile: TimelineDateProfile, dateEnv: DateEnv, isRtl: boolean);
|
|
44
|
-
isDateInRange(date: DateMarker): boolean;
|
|
45
|
-
dateToCoord(date: DateMarker): number;
|
|
46
|
-
rangeToCoords(range: DateRange): SegSpan;
|
|
47
|
-
durationToCoord(duration: Duration): number;
|
|
48
|
-
coordFromLeft(coord: number): number;
|
|
49
|
-
computeDateSnapCoverage(date: DateMarker): number;
|
|
50
|
-
}
|
|
51
|
-
declare function coordToCss(hcoord: number | null, isRtl: boolean): {
|
|
52
|
-
left: CssDimValue;
|
|
53
|
-
right: CssDimValue;
|
|
54
|
-
};
|
|
55
|
-
declare function coordsToCss(hcoords: SegSpan | null, isRtl: boolean): {
|
|
56
|
-
left: CssDimValue;
|
|
57
|
-
right: CssDimValue;
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
interface TimelineViewState {
|
|
61
|
-
slatCoords: TimelineCoords | null;
|
|
62
|
-
slotCushionMaxWidth: number | null;
|
|
63
|
-
}
|
|
64
|
-
declare class TimelineView extends DateComponent<ViewProps, TimelineViewState> {
|
|
65
|
-
private buildTimelineDateProfile;
|
|
66
|
-
private scrollGridRef;
|
|
67
|
-
state: {
|
|
68
|
-
slatCoords: any;
|
|
69
|
-
slotCushionMaxWidth: any;
|
|
70
|
-
};
|
|
71
|
-
render(): createElement.JSX.Element;
|
|
72
|
-
handleSlatCoords: (slatCoords: TimelineCoords | null) => void;
|
|
73
|
-
handleScrollLeftRequest: (scrollLeft: number) => void;
|
|
74
|
-
handleMaxCushionWidth: (slotCushionMaxWidth: any) => void;
|
|
75
|
-
computeFallbackSlotMinWidth(tDateProfile: TimelineDateProfile): number;
|
|
76
|
-
}
|
|
77
|
-
declare function buildSlatCols(tDateProfile: TimelineDateProfile, slotMinWidth?: number): {
|
|
78
|
-
span: number;
|
|
79
|
-
minWidth: number;
|
|
80
|
-
}[];
|
|
81
|
-
|
|
82
71
|
interface TimelineLaneSeg extends Seg {
|
|
83
72
|
start: DateMarker;
|
|
84
73
|
end: DateMarker;
|
|
@@ -92,140 +81,155 @@ declare class TimelineLaneSlicer extends Slicer<TimelineLaneSeg, [
|
|
|
92
81
|
sliceRange(origRange: DateRange, dateProfile: DateProfile, dateProfileGenerator: DateProfileGenerator, tDateProfile: TimelineDateProfile, dateEnv: DateEnv): TimelineLaneSeg[];
|
|
93
82
|
}
|
|
94
83
|
|
|
95
|
-
interface
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
top: number | null;
|
|
84
|
+
interface TimelineSegHorizontals {
|
|
85
|
+
start: number;
|
|
86
|
+
size: number;
|
|
99
87
|
}
|
|
100
88
|
|
|
101
|
-
interface TimelineLaneProps
|
|
102
|
-
onHeightChange?: (innerEl: HTMLElement, isStable: boolean) => void;
|
|
103
|
-
}
|
|
104
|
-
interface TimelineLaneCoreProps {
|
|
105
|
-
nowDate: DateMarker;
|
|
106
|
-
todayRange: DateRange;
|
|
89
|
+
interface TimelineLaneProps {
|
|
107
90
|
dateProfile: DateProfile;
|
|
108
91
|
tDateProfile: TimelineDateProfile;
|
|
92
|
+
nowDate: DateMarker;
|
|
93
|
+
todayRange: DateRange;
|
|
109
94
|
nextDayThreshold: Duration;
|
|
110
|
-
businessHours: EventStore | null;
|
|
111
95
|
eventStore: EventStore | null;
|
|
112
96
|
eventUiBases: EventUiHash;
|
|
97
|
+
businessHours: EventStore | null;
|
|
113
98
|
dateSelection: DateSpan | null;
|
|
114
|
-
eventSelection: string;
|
|
115
99
|
eventDrag: EventInteractionState | null;
|
|
116
100
|
eventResize: EventInteractionState | null;
|
|
117
|
-
|
|
101
|
+
eventSelection: string;
|
|
118
102
|
resourceId?: string;
|
|
119
|
-
|
|
103
|
+
slotWidth: number | undefined;
|
|
120
104
|
}
|
|
121
105
|
interface TimelineLaneState {
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
};
|
|
125
|
-
moreLinkHeights: {
|
|
126
|
-
[isoStr: string]: number;
|
|
127
|
-
};
|
|
106
|
+
segHeightRev?: string;
|
|
107
|
+
moreLinkHeightRev?: string;
|
|
128
108
|
}
|
|
129
109
|
declare class TimelineLane extends BaseComponent<TimelineLaneProps, TimelineLaneState> {
|
|
130
|
-
private slicer;
|
|
131
110
|
private sortEventSegs;
|
|
132
|
-
private
|
|
133
|
-
private
|
|
134
|
-
private
|
|
135
|
-
state: TimelineLaneState;
|
|
111
|
+
private segHeightRefMap;
|
|
112
|
+
private moreLinkHeightRefMap;
|
|
113
|
+
private slicer;
|
|
136
114
|
render(): createElement.JSX.Element;
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
renderFgSegs(segPlacements: TimelineSegPlacement[], isForcedInvisible: {
|
|
115
|
+
renderFgSegs(segs: TimelineLaneSeg[], segHorizontals: {
|
|
116
|
+
[instanceId: string]: TimelineSegHorizontals;
|
|
117
|
+
}, segTops: {
|
|
118
|
+
[instanceId: string]: number;
|
|
119
|
+
}, forcedInvisibleMap: {
|
|
143
120
|
[instanceId: string]: any;
|
|
121
|
+
}, hiddenGroups: SegGroup[], hiddenGroupTops: {
|
|
122
|
+
[key: string]: number;
|
|
144
123
|
}, isDragging: boolean, isResizing: boolean, isDateSelecting: boolean): createElement.JSX.Element;
|
|
124
|
+
private handleMoreLinkHeights;
|
|
125
|
+
private handleSegHeights;
|
|
145
126
|
}
|
|
146
127
|
|
|
147
128
|
interface TimelineLaneBgProps {
|
|
148
|
-
|
|
129
|
+
tDateProfile: TimelineDateProfile;
|
|
130
|
+
nowDate: DateMarker;
|
|
131
|
+
todayRange: DateRange;
|
|
149
132
|
bgEventSegs: TimelineLaneSeg[] | null;
|
|
133
|
+
businessHourSegs: TimelineLaneSeg[] | null;
|
|
150
134
|
dateSelectionSegs: TimelineLaneSeg[];
|
|
151
135
|
eventResizeSegs: TimelineLaneSeg[];
|
|
152
|
-
|
|
153
|
-
todayRange: DateRange;
|
|
154
|
-
nowDate: DateMarker;
|
|
136
|
+
slotWidth: number | undefined;
|
|
155
137
|
}
|
|
156
138
|
declare class TimelineLaneBg extends BaseComponent<TimelineLaneBgProps> {
|
|
157
139
|
render(): createElement.JSX.Element;
|
|
158
|
-
renderSegs(segs: TimelineLaneSeg[],
|
|
140
|
+
renderSegs(segs: TimelineLaneSeg[], fillType: string): createElement.JSX.Element;
|
|
159
141
|
}
|
|
160
142
|
|
|
161
|
-
interface
|
|
143
|
+
interface TimelineSlatsProps {
|
|
162
144
|
dateProfile: DateProfile;
|
|
163
145
|
tDateProfile: TimelineDateProfile;
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
}
|
|
172
|
-
declare class TimelineHeader extends BaseComponent<TimelineHeaderProps> {
|
|
173
|
-
rootElRef: RefObject<HTMLDivElement>;
|
|
146
|
+
nowDate: DateMarker;
|
|
147
|
+
todayRange: DateRange;
|
|
148
|
+
slotWidth: number | undefined;
|
|
149
|
+
innerWidthRef?: Ref<number>;
|
|
150
|
+
}
|
|
151
|
+
declare class TimelineSlats extends BaseComponent<TimelineSlatsProps> {
|
|
152
|
+
private innerWidthRefMap;
|
|
174
153
|
render(): createElement.JSX.Element;
|
|
175
|
-
|
|
176
|
-
componentDidUpdate(): void;
|
|
177
|
-
updateSize(): void;
|
|
178
|
-
computeMaxCushionWidth(): number;
|
|
154
|
+
handleInnerWidths: () => void;
|
|
179
155
|
}
|
|
180
156
|
|
|
181
|
-
interface
|
|
157
|
+
interface CoordRange {
|
|
158
|
+
start: number;
|
|
159
|
+
size: number;
|
|
160
|
+
}
|
|
161
|
+
declare function createVerticalStyle(props: {
|
|
162
|
+
start: number;
|
|
163
|
+
size: number;
|
|
164
|
+
} | undefined): {
|
|
165
|
+
top: number;
|
|
166
|
+
height: number;
|
|
167
|
+
} | undefined;
|
|
168
|
+
declare function createHorizontalStyle(props: {
|
|
169
|
+
start: number;
|
|
170
|
+
size: number;
|
|
171
|
+
} | undefined, isRtl: boolean): {
|
|
172
|
+
left: number;
|
|
173
|
+
width: number;
|
|
174
|
+
} | {
|
|
175
|
+
right: number;
|
|
176
|
+
width: number;
|
|
177
|
+
} | undefined;
|
|
178
|
+
declare function computeSlotWidth(slatCnt: number, slatsPerLabel: number, slatMinWidth: number | undefined, labelInnerWidth: number | undefined, viewportWidth: number | undefined): [
|
|
179
|
+
canvasWidth: number | undefined,
|
|
180
|
+
slatWidth: number | undefined,
|
|
181
|
+
slatLiquid: boolean
|
|
182
|
+
];
|
|
183
|
+
declare function timeToCoord(// pixels
|
|
184
|
+
time: Duration, dateEnv: DateEnv, dateProfile: DateProfile, tDateProfile: TimelineDateProfile, slowWidth: number): number;
|
|
185
|
+
|
|
186
|
+
declare function coordToCss(hcoord: number | null, isRtl: boolean): {
|
|
187
|
+
left: CssDimValue;
|
|
188
|
+
right: CssDimValue;
|
|
189
|
+
};
|
|
190
|
+
declare function coordsToCss(hcoords: SegSpan | null, isRtl: boolean): {
|
|
191
|
+
left: CssDimValue;
|
|
192
|
+
right: CssDimValue;
|
|
193
|
+
};
|
|
194
|
+
|
|
195
|
+
interface TimelineHeaderRowProps {
|
|
182
196
|
dateProfile: DateProfile;
|
|
183
197
|
tDateProfile: TimelineDateProfile;
|
|
184
198
|
nowDate: DateMarker;
|
|
185
199
|
todayRange: DateRange;
|
|
200
|
+
rowLevel: number;
|
|
201
|
+
isLastRow: boolean;
|
|
202
|
+
cells: TimelineHeaderCellData[];
|
|
203
|
+
innerHeighRef?: Ref<number>;
|
|
204
|
+
innerWidthRef?: Ref<number>;
|
|
205
|
+
slotWidth: number | undefined;
|
|
206
|
+
height?: number;
|
|
207
|
+
}
|
|
208
|
+
declare class TimelineHeaderRow extends BaseComponent<TimelineHeaderRowProps> {
|
|
209
|
+
private innerWidthRefMap;
|
|
210
|
+
private innerHeightRefMap;
|
|
211
|
+
render(): createElement.JSX.Element;
|
|
212
|
+
handleInnerWidths: () => void;
|
|
213
|
+
handleInnerHeights: () => void;
|
|
214
|
+
componentWillUnmount(): void;
|
|
186
215
|
}
|
|
187
216
|
|
|
188
|
-
interface
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
onCoords?: (coord: TimelineCoords | null) => void;
|
|
193
|
-
onScrollLeftRequest?: (scrollLeft: number) => void;
|
|
217
|
+
interface TimelineNowIndicatorArrowProps {
|
|
218
|
+
tDateProfile: TimelineDateProfile;
|
|
219
|
+
nowDate: DateMarker;
|
|
220
|
+
slotWidth: number | undefined;
|
|
194
221
|
}
|
|
195
|
-
declare class
|
|
196
|
-
private rootElRef;
|
|
197
|
-
private cellElRefs;
|
|
198
|
-
private coords;
|
|
199
|
-
private scrollResponder;
|
|
222
|
+
declare class TimelineNowIndicatorArrow extends BaseComponent<TimelineNowIndicatorArrowProps> {
|
|
200
223
|
render(): createElement.JSX.Element;
|
|
201
|
-
componentDidMount(): void;
|
|
202
|
-
componentDidUpdate(prevProps: TimelineSlatsProps): void;
|
|
203
|
-
componentWillUnmount(): void;
|
|
204
|
-
updateSizing(): void;
|
|
205
|
-
handleScrollRequest: (request: ScrollRequest) => boolean;
|
|
206
|
-
positionToHit(leftPosition: any): {
|
|
207
|
-
dateSpan: {
|
|
208
|
-
range: {
|
|
209
|
-
start: Date;
|
|
210
|
-
end: Date;
|
|
211
|
-
};
|
|
212
|
-
allDay: boolean;
|
|
213
|
-
};
|
|
214
|
-
dayEl: HTMLTableCellElement;
|
|
215
|
-
left: any;
|
|
216
|
-
right: any;
|
|
217
|
-
};
|
|
218
224
|
}
|
|
219
225
|
|
|
220
|
-
interface
|
|
221
|
-
dateProfile: DateProfile;
|
|
226
|
+
interface TimelineNowIndicatorLineProps {
|
|
222
227
|
tDateProfile: TimelineDateProfile;
|
|
223
228
|
nowDate: DateMarker;
|
|
224
|
-
|
|
225
|
-
rowInnerHeights?: number[];
|
|
229
|
+
slotWidth: number | undefined;
|
|
226
230
|
}
|
|
227
|
-
declare class
|
|
231
|
+
declare class TimelineNowIndicatorLine extends BaseComponent<TimelineNowIndicatorLineProps> {
|
|
228
232
|
render(): createElement.JSX.Element;
|
|
229
233
|
}
|
|
230
234
|
|
|
231
|
-
export {
|
|
235
|
+
export { CoordRange, TimelineDateProfile, TimelineHeaderRow, TimelineLane, TimelineLaneBg, TimelineLaneProps, TimelineLaneSeg, TimelineLaneSlicer, TimelineNowIndicatorArrow, TimelineNowIndicatorLine, TimelineSlats, TimelineView, buildTimelineDateProfile, computeSlotWidth, coordToCss, coordsToCss, createHorizontalStyle, createVerticalStyle, timeToCoord };
|