UNPKG

2.85 kBTypeScriptView Raw
1import Component from '../../base/component';
2import Chart from '../../chart';
3import { Style, TextAttrs } from '../../types';
4interface LegendItem {
5 /**
6 * 标记颜色。
7 */
8 color: string;
9 /**
10 * 名称。
11 */
12 name: string;
13 /**
14 * 值。
15 */
16 value?: string | number;
17 /**
18 * 图例标记。
19 */
20 marker?: string;
21}
22export interface LegendProps {
23 /**
24 * 图表。
25 */
26 readonly chart?: Chart;
27 /**
28 * 图例的显示位置。默认为 top。
29 */
30 position?: 'right' | 'left' | 'top' | 'bottom';
31 /**
32 * 图例宽度
33 */
34 width?: number | string;
35 /**
36 * 图例高度
37 */
38 height?: number | string;
39 /**
40 * legend 和图表内容的间距
41 */
42 margin?: number | string;
43 /**
44 * 回调函数,用于格式化图例每项的文本显示。
45 */
46 itemFormatter?: (value: string, name: string) => string;
47 /**
48 * 图例项列表。
49 */
50 items?: LegendItem[];
51 /**
52 * 图例样式。
53 */
54 style?: Style;
55 /**
56 * 图例标记。
57 */
58 marker?: 'circle' | 'square';
59 /**
60 * 用于设置图例项的文本样式
61 */
62 nameStyle?: TextAttrs;
63 /**
64 * 用于设置图例项的文本样式
65 */
66 valueStyle?: TextAttrs;
67 /**
68 * value展示文案的前缀
69 */
70 valuePrefix?: string;
71 /**
72 * 是否可点击
73 */
74 clickable?: boolean;
75 onClick?: (item: LegendItem) => void;
76}
77declare const _default: (View: any) => {
78 new (props: any): {
79 style: Style;
80 itemWidth: Number;
81 getOriginItems(): any;
82 getItems(): any;
83 setItems(items: any): void;
84 getMaxItemBox(legendShape: any): {
85 width: number;
86 height: number;
87 };
88 _init(): void;
89 updateCoord(): void;
90 willMount(): void;
91 didMount(): void;
92 willUpdate(): void;
93 _initEvent(): void;
94 render(): import("../..").JSX.Element;
95 props: LegendProps;
96 state: any;
97 context: import("../../base/component").ComponentContext;
98 refs: {
99 [key: string]: Component<any, any>;
100 };
101 updater: import("../../base/component").Updater<any>;
102 children: import("../..").JSX.Element; /**
103 * 图例宽度
104 */
105 container: any;
106 /**
107 * 图例高度
108 */
109 animate: boolean;
110 destroyed: boolean;
111 willReceiveProps(_props: LegendProps, context?: LegendProps): void;
112 didUpdate(): void;
113 didUnmount(): void;
114 setState(partialState: any, callback?: () => void): void;
115 forceUpdate(callback?: () => void): void;
116 setAnimate(animate: boolean): void;
117 destroy(): void;
118 };
119};
120export default _default;