in src/behavior.ts [84:116]
private bindClickEventToNodes(): void {
this.behaviorOptions.nodes.on("click", (node: SankeyDiagramNode) => {
let selectableDataPoints: SelectableDataPoint[] = node.selectableDataPoints;
if (node.cloneLink) {
selectableDataPoints = selectableDataPoints.concat(node.cloneLink.selectableDataPoints);
}
this.clearSelection();
if (!sankeyDiagramUtils.areDataPointsSelected(this.selectedDataPoints, selectableDataPoints)) {
selectableDataPoints.forEach((subDataPoint: SelectableDataPoint) => {
this.selectionHandler.handleSelection(subDataPoint, true);
});
this.selectedDataPoints = selectableDataPoints;
} else {
this.createAnEmptySelectedDataPoints();
}
});
this.behaviorOptions.nodes.on("contextmenu", (datum: SankeyDiagramNode) => {
const event: MouseEvent = (<MouseEvent>getEvent()) || <MouseEvent>window.event;
if (event) {
this.selectionHandler.handleContextMenu(
<any>datum,
{
x: event.clientX,
y: event.clientY
});
event.preventDefault();
}
});
}