in src/common/rectLegend.ts [603:662]
export function getItemData(
name: string,
rawData: ChartData,
dataType: string,
currentData?: ChartData,
): undefined | Types.LooseObject | (number | string)[] {
if (!rawData) {
return undefined;
}
let result = undefined;
switch (dataType) {
case 'single':
if (rawData.children) {
result = [name, currentData?.filter((el: any) => el.name === name)?.[0]?.value];
} else {
const originData = rawData[0];
originData &&
originData.data?.some((r: any) => {
if ((Array.isArray(r) && r[0] === name) || (typeof r === 'object' && r.x === name)) {
result = r;
return true;
}
return false;
});
}
return result;
case 'multiple':
rawData.some((r: Types.LooseObject) => {
if (r.data && r.name === name) {
result = r;
return true;
}
return false;
});
return result;
case 'graph':
rawData?.nodes?.some((r: Types.LooseObject) => {
if (r.name === name) {
result = r.value;
return true;
}
return false;
});
case 'tree':
return result;
}
// // if (Array.isArray(result)) {
// // result = {
// // data: result,
// // };
// // }
// return result;
// }
}