in packages/network-navigator-powerbi/src/NetworkNavigatorVisual.ts [296:316]
private attachEvents() {
if (this.myNetworkNavigator) {
// Cleans up events
if (this.selectionChangedListener) {
this.selectionChangedListener.destroy();
}
const dispatcher = this.myNetworkNavigator.events;
this.selectionChangedListener = dispatcher.on("selectionChanged", (node: INetworkNavigatorSelectableNode) => this.onNodeSelected(node));
dispatcher.on("zoomed", ({ scale, translate }: { scale: number, translate: [number, number] }) => {
this._internalState = this._internalState.receive({scale, translate});
});
dispatcher.on("textFilter", (textFilter: string) => {
this._internalState = this._internalState.receive({ textFilter });
const label = textFilter && textFilter !== "" ? `Filtered ${textFilter}` : `Cleared text filter`;
});
// PowerBI will eat some events, so use this to prevent powerbi from eating them
this.element.find(".filter-box input").on(EVENTS_TO_IGNORE, (e) => e.stopPropagation());
}
}