1 | import { BaseComponent, ViewContext, createElement, PositionCache, ScrollRequest, CssDimValue, ClassNamesGenerator, Ref, PluginDef } from '@fullcalendar/common';
|
2 | import '@fullcalendar/premium-common';
|
3 | import { TimelineCoords, TimelineDateProfile, TimelineLaneCoreProps } from '@fullcalendar/timeline';
|
4 | import { ResourceViewProps, ResourceNode, GroupNode, ColSpec, ResourceLaneHookPropsInput, ResourceLaneContentArg, Resource } from '@fullcalendar/resource-common';
|
5 |
|
6 | interface ResourceTimelineViewState {
|
7 | resourceAreaWidth: CssDimValue;
|
8 | spreadsheetColWidths: number[];
|
9 | slatCoords?: TimelineCoords;
|
10 | slotCushionMaxWidth?: number;
|
11 | }
|
12 | interface ResourceTimelineViewSnapshot {
|
13 | resourceScroll?: ResourceScrollState;
|
14 | }
|
15 | interface ResourceScrollState {
|
16 | rowId: string;
|
17 | fromBottom: number;
|
18 | }
|
19 | declare 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 |
|
47 | interface ResourceTimelineLaneProps extends TimelineLaneCoreProps {
|
48 | elRef: Ref<HTMLTableRowElement>;
|
49 | resource: Resource;
|
50 | innerHeight: CssDimValue;
|
51 | onHeightChange?: (rowEl: HTMLTableRowElement, isStable: boolean) => void;
|
52 | }
|
53 | declare 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 |
|
61 | interface SpreadsheetRowProps {
|
62 | colSpecs: ColSpec[];
|
63 | rowSpans: number[];
|
64 | depth: number;
|
65 | isExpanded: boolean;
|
66 | hasChildren: boolean;
|
67 | resource: Resource;
|
68 | innerHeight: CssDimValue;
|
69 | }
|
70 | declare class SpreadsheetRow extends BaseComponent<SpreadsheetRowProps, ViewContext> {
|
71 | render(): createElement.JSX.Element;
|
72 | }
|
73 |
|
74 |
|
75 | declare const _default: PluginDef;
|
76 |
|
77 | export default _default;
|
78 | export { ResourceTimelineLane, ResourceTimelineView, SpreadsheetRow };
|