1 | import React, { PureComponent } from 'react';
|
2 | import { AnimationDuration, AnimationTiming, DataKey, TreemapNode } from '../util/types';
|
3 | export interface Props {
|
4 | width?: number;
|
5 | height?: number;
|
6 | data?: any[];
|
7 | animationId?: number;
|
8 | style?: any;
|
9 | aspectRatio?: number;
|
10 | content?: React.ReactElement;
|
11 | fill?: string;
|
12 | stroke?: string;
|
13 | className?: string;
|
14 | nameKey?: DataKey<any>;
|
15 | dataKey?: DataKey<any>;
|
16 | children?: any;
|
17 | type?: 'flat' | 'nest';
|
18 | colorPanel?: [];
|
19 | nestIndexContent?: React.ReactElement | ((item: any, i: number) => any);
|
20 | onAnimationStart?: () => void;
|
21 | onAnimationEnd?: () => void;
|
22 | onMouseEnter?: (node: TreemapNode, e: any) => void;
|
23 | onMouseLeave?: (node: TreemapNode, e: any) => void;
|
24 | onClick?: (node: TreemapNode) => void;
|
25 | isAnimationActive?: boolean;
|
26 | isUpdateAnimationActive?: boolean;
|
27 | animationBegin?: number;
|
28 | animationDuration?: AnimationDuration;
|
29 | animationEasing?: AnimationTiming;
|
30 | }
|
31 | interface State {
|
32 | isTooltipActive: boolean;
|
33 | isAnimationFinished: boolean;
|
34 | activeNode?: TreemapNode;
|
35 | formatRoot?: TreemapNode;
|
36 | currentRoot?: TreemapNode;
|
37 | nestIndex?: TreemapNode[];
|
38 | prevData?: any[];
|
39 | prevType?: 'flat' | 'nest';
|
40 | prevWidth?: number;
|
41 | prevHeight?: number;
|
42 | prevDataKey?: DataKey<any>;
|
43 | prevAspectRatio?: number;
|
44 | }
|
45 | export declare class Treemap extends PureComponent<Props, State> {
|
46 | static displayName: string;
|
47 | static defaultProps: {
|
48 | aspectRatio: number;
|
49 | dataKey: string;
|
50 | type: string;
|
51 | isAnimationActive: boolean;
|
52 | isUpdateAnimationActive: boolean;
|
53 | animationBegin: number;
|
54 | animationDuration: number;
|
55 | animationEasing: string;
|
56 | };
|
57 | state: {
|
58 | isTooltipActive: boolean;
|
59 | isAnimationFinished: boolean;
|
60 | activeNode?: TreemapNode;
|
61 | formatRoot?: TreemapNode;
|
62 | currentRoot?: TreemapNode;
|
63 | nestIndex?: TreemapNode[];
|
64 | prevData?: any[];
|
65 | prevType?: "flat" | "nest";
|
66 | prevWidth?: number;
|
67 | prevHeight?: number;
|
68 | prevDataKey?: DataKey<any>;
|
69 | prevAspectRatio?: number;
|
70 | };
|
71 | static getDerivedStateFromProps(nextProps: Props, prevState: State): State;
|
72 | handleMouseEnter(node: TreemapNode, e: any): void;
|
73 | handleMouseLeave(node: TreemapNode, e: any): void;
|
74 | handleAnimationEnd: () => void;
|
75 | handleAnimationStart: () => void;
|
76 | handleClick(node: TreemapNode): void;
|
77 | handleNestIndex(node: TreemapNode, i: number): void;
|
78 | renderItem(content: any, nodeProps: TreemapNode, isLeaf: boolean): React.ReactElement;
|
79 | static renderContentItem(content: any, nodeProps: TreemapNode, type: string, colorPanel: string[]): React.ReactElement;
|
80 | renderNode(root: TreemapNode, node: TreemapNode): React.ReactElement;
|
81 | renderAllNodes(): React.ReactElement;
|
82 | renderTooltip(): React.ReactElement;
|
83 | renderNestIndex(): React.ReactElement;
|
84 | render(): React.JSX.Element;
|
85 | }
|
86 | export {};
|