UNPKG

3.33 kBTypeScriptView Raw
1import { BaseComponent, ViewContext, createElement, PositionCache, ScrollRequest, CssDimValue, ClassNamesGenerator, Ref, PluginDef } from '@fullcalendar/common';
2import '@fullcalendar/premium-common';
3import { TimelineCoords, TimelineDateProfile, TimelineLaneCoreProps } from '@fullcalendar/timeline';
4import { ResourceViewProps, ResourceNode, GroupNode, ColSpec, ResourceLaneHookPropsInput, ResourceLaneContentArg, Resource } from '@fullcalendar/resource-common';
5
6interface ResourceTimelineViewState {
7 resourceAreaWidth: CssDimValue;
8 spreadsheetColWidths: number[];
9 slatCoords?: TimelineCoords;
10 slotCushionMaxWidth?: number;
11}
12interface ResourceTimelineViewSnapshot {
13 resourceScroll?: ResourceScrollState;
14}
15interface ResourceScrollState {
16 rowId: string;
17 fromBottom: number;
18}
19declare class ResourceTimelineView extends BaseComponent<ResourceViewProps, ResourceTimelineViewState> {
20 private processColOptions;
21 private buildTimelineDateProfile;
22 private hasNesting;
23 private buildRowNodes;
24 private layoutRef;
25 private rowNodes;
26 private renderedRowNodes;
27 private buildRowIndex;
28 private rowCoords;
29 private scrollResponder;
30 constructor(props: ResourceViewProps, context: ViewContext);
31 render(): createElement.JSX.Element;
32 renderSpreadsheetRows(nodes: (ResourceNode | GroupNode)[], colSpecs: ColSpec[], rowSyncHeights: number[]): createElement.JSX.Element[];
33 componentDidMount(): void;
34 getSnapshotBeforeUpdate(): ResourceTimelineViewSnapshot;
35 componentDidUpdate(prevProps: ResourceViewProps, prevState: ResourceTimelineViewState, snapshot: ResourceTimelineViewSnapshot): void;
36 componentWillUnmount(): void;
37 handleSlatCoords: (slatCoords: TimelineCoords) => void;
38 handleRowCoords: (rowCoords: PositionCache) => void;
39 handleMaxCushionWidth: (slotCushionMaxWidth: any) => void;
40 computeFallbackSlotMinWidth(tDateProfile: TimelineDateProfile): number;
41 handleScrollLeftRequest: (scrollLeft: number) => void;
42 handleScrollRequest: (request: ScrollRequest & ResourceScrollState) => boolean;
43 queryResourceScroll(): ResourceScrollState;
44 handleColWidthChange: (colWidths: number[]) => void;
45}
46
47interface ResourceTimelineLaneProps extends TimelineLaneCoreProps {
48 elRef: Ref<HTMLTableRowElement>;
49 resource: Resource;
50 innerHeight: CssDimValue;
51 onHeightChange?: (rowEl: HTMLTableRowElement, isStable: boolean) => void;
52}
53declare class ResourceTimelineLane extends BaseComponent<ResourceTimelineLaneProps> {
54 refineHookProps: (arg: ResourceLaneHookPropsInput) => ResourceLaneContentArg;
55 normalizeClassNames: (generator: ClassNamesGenerator<ResourceLaneContentArg>, hookProps: ResourceLaneContentArg) => string[];
56 render(): createElement.JSX.Element;
57 handleHeightChange: (innerEl: HTMLElement, isStable: boolean) => void;
58}
59
60
61interface SpreadsheetRowProps {
62 colSpecs: ColSpec[];
63 rowSpans: number[];
64 depth: number;
65 isExpanded: boolean;
66 hasChildren: boolean;
67 resource: Resource;
68 innerHeight: CssDimValue;
69}
70declare class SpreadsheetRow extends BaseComponent<SpreadsheetRowProps, ViewContext> {
71 render(): createElement.JSX.Element;
72}
73
74
75declare const _default: PluginDef;
76
77export default _default;
78export { ResourceTimelineLane, ResourceTimelineView, SpreadsheetRow };