in src/tooltipBuilder.ts [52:99]
export function createTooltipInfo(
categoryValue: any,
categories?: DataViewCategoryColumn[],
seriesData?: TooltipSeriesDataItem[]): VisualTooltipDataItem[] {
let categorySource: TooltipCategoryDataItem,
seriesSource: TooltipSeriesDataItem[] = [];
if (categories && categories.length > 0) {
if (categories.length > 1) {
const compositeCategoriesData: DataViewMetadataColumn[] = [];
for (let i: number = 0, length: number = categories.length; i < length; i++) {
compositeCategoriesData.push(categories[i].source);
}
categorySource = {
value: categoryValue,
metadata: compositeCategoriesData
};
}
else {
categorySource = {
value: categoryValue,
metadata: [categories[0].source]
};
}
}
if (seriesData) {
for (let i: number = 0, len: number = seriesData.length; i < len; i++) {
const singleSeriesData: TooltipSeriesDataItem = seriesData[i];
if (categorySource
&& categorySource.metadata[0] === singleSeriesData.metadata.source) {
continue;
}
seriesSource.push({
value: singleSeriesData.value,
metadata: singleSeriesData.metadata
});
}
}
return createTooltipData(categorySource, seriesSource);
}