vue-echarts-linkage
Version:
vue3 echarts 的联动组件
122 lines (121 loc) • 5.73 kB
TypeScript
import { OneDataType, SeriesTagType, VisualMapSeriesType, SegementType, AppointEchartsTagType, ThemeType, ExtraTooltipDataItemType } from './types/index';
import { DragItemType } from '../drag/type/index';
import { DefineComponent, ExtractPropTypes, ComponentOptionsMixin, PublicProps, ComponentProvideOptions, PropType } from 'vue';
/**
* @description 组件props类型
* @property {number} [cols=1] - 列数
* @property {number} [echartsMaxCount=7] - Echarts最大数量
* @property {number} [emptyEchartCount] - 初始化空白echarts数量
* @property {string[]} [echartsColors] - echarts颜色数组
* @property {SegementType} [segment] - 标线分段数
* @property {string} [language='zh-cn'] - 语言
* @property {boolean} [gridAlign=false] - 多echarts图表是否对齐
* @property {string} [theme='light'] - 主题
* @property {string} [background] - 背景色
* @property {boolean} [isLinkage=true] - 是否联动, 默认为true
* @property {boolean} [useMergedLegend=true] - 是否使用合并图例
* @property {boolean} [useGraphicLocation=true] - 是否使用图形定位
* @property {boolean} [isEchartsHeightChange=true] - 是否根据数量,改变echarts的高度,默认true改变
* @property {number} [echartsHeightFixedCount=3] - echarts高度固定数量,默认为3
* @property {object} [extraOption] - 额外的echarts配置项,主要是grid、toolbox、xAxis等属性的合并;合并默认option,该优先级更高, 相同属性值进行合并, 不同属性值直接赋值
* @property {Array<Array<number>>} [groups] - 分组属性,二维数组:第一维表示分组,第二维表示该分组下的chart序号(序号从1开始)
*/
export type PropsType = {
cols?: number;
echartsMaxCount?: number;
emptyEchartCount?: number;
echartsColors?: string[];
segment?: SegementType;
language?: 'zh-cn' | 'en-us';
gridAlign?: boolean;
theme?: 'light' | 'dark';
background?: string;
isLinkage?: boolean;
useMergedLegend?: boolean;
useGraphicLocation?: boolean;
isEchartsHeightChange?: boolean;
echartsHeightFixedCount?: number;
extraOption?: {
[key: string]: any;
};
groups?: Array<Array<number>>;
};
declare const _default: DefineComponent<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PropsType>, {
cols: number;
echartsMaxCount: number;
language: string;
gridAlign: boolean;
theme: string;
isLinkage: boolean;
useMergedLegend: boolean;
useGraphicLocation: boolean;
isEchartsHeightChange: boolean;
echartsHeightFixedCount: number;
}>>, {
initEcharts: () => Promise<void>;
addEchart: (data?: OneDataType | OneDataType[] | undefined) => Promise<void>;
addEchartSeries: (id: string, data: OneDataType) => Promise<void>;
deleteEchart: (id: string) => Promise<void>;
getDataLength: () => number;
getMaxEchartsIdSeq: () => number;
getAllDistinctSeriesTagInfo: () => SeriesTagType[];
getAllSeriesTagInfo: (echartsId?: string | undefined) => {
id: string;
series: SeriesTagType[];
}[];
getTemplateTagsOption: () => DragItemType[][];
updateOneOrMoreEcharts: (updateData: AppointEchartsTagType | AppointEchartsTagType[]) => Promise<boolean>;
updateAllEcharts: (newAllSeriesdata: SeriesTagType[]) => Promise<boolean>;
updateSimpleEcharts: (newAllSeriesdata: SeriesTagType[]) => Promise<boolean>;
clearAllEchartsData: (mode?: "clear" | "delete" | undefined) => Promise<void>;
replaceAllEchartsData: (newAllSeriesdata: OneDataType[][]) => Promise<void>;
downloadAllEchartsImg: () => void;
realTimeUpdate: (allRealTimeData: SeriesTagType[], limitCount?: number | undefined) => void;
updateOneEchartsVisualMapSeries: (id: string, data: VisualMapSeriesType | VisualMapSeriesType[]) => void;
handleMultipleLinkData: (primaryData: OneDataType) => OneDataType;
changeAllEchartsTheme: (theme: ThemeType) => void;
addExtraTooltip: (extraTooltipData: ExtraTooltipDataItemType[], id?: string | undefined, isRender?: boolean | undefined) => void;
updateExtraTooltip: (extraTooltipData: ExtraTooltipDataItemType[], id?: string | undefined, isRender?: boolean | undefined) => void;
clearExtraTooltip: (id?: string | undefined, isRender?: boolean | undefined) => void;
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly< ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PropsType>, {
cols: number;
echartsMaxCount: number;
language: string;
gridAlign: boolean;
theme: string;
isLinkage: boolean;
useMergedLegend: boolean;
useGraphicLocation: boolean;
isEchartsHeightChange: boolean;
echartsHeightFixedCount: number;
}>>> & Readonly<{}>, {
theme: "dark" | "light";
cols: number;
isEchartsHeightChange: boolean;
echartsHeightFixedCount: number;
echartsMaxCount: number;
language: "zh-cn" | "en-us";
gridAlign: boolean;
isLinkage: boolean;
useMergedLegend: boolean;
useGraphicLocation: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
export default _default;
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
type __VLS_TypePropsToRuntimeProps<T> = {
[K in keyof T]-?: {} extends Pick<T, K> ? {
type: PropType<__VLS_NonUndefinedable<T[K]>>;
} : {
type: PropType<T[K]>;
required: true;
};
};
type __VLS_WithDefaults<P, D> = {
[K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
default: D[K];
}> : P[K];
};
type __VLS_Prettify<T> = {
[K in keyof T]: T[K];
} & {};
//# sourceMappingURL=index.vue.d.ts.map