palantir / plottable

:bar_chart: A library of modular chart components built on D3
http://plottablejs.org/
MIT License
2.97k stars 224 forks source link

Exception in Utils.Translator.isEventInside(component, event) when component is a group #3466

Open eddow opened 6 years ago

eddow commented 6 years ago

Bug report

https://github.com/eddow/csv-auto-chart

I used the financial example and applied it to my case where I have several plot in a group instead of a plot with several dataset.

Steps to repro: In the example, choose a CSV file you have locally with some rows that contain a date and some numbers. Choose the file then check data to display. Just moving around the chart raises the exception.

Expected behaviour

When I use only one plot and not the group of plots for test purpose, no exception is risen - but it of course miss some data.

Actual behavior

An exception is raised while keeping the whole working properly (the exception doesn't break anything)

Possible Solution

    at Function.isEventInside (transformAwareTranslator.ts:65)
    at Mouse.eventInside (mouseDispatcher.ts:200)
    at Mouse._measureAndDispatch (mouseDispatcher.ts:192)
    at HTMLDocument.Mouse._eventToProcessingFunction.(:8080/anonymous function) (http://localhost:8080/index.js:18242:25)
  public static isEventInside(component: Component, e: Event) {
->    return Utils.DOM.contains(component.root().rootElement().node() as Element, e.target as Element);
  }

component is a Group and component.root().rootElement() returns null.

Environment

I am using V3 and of course solved many version translation as examples are given in V2.7 and demand small resolutions.