@@ -68,29 +68,29 @@ export default function ListeningRect({
6868 function onMouseMove ( e : any ) {
6969 let sBrowser ;
7070 const sUsrAg = navigator . userAgent ;
71- if ( sUsrAg . indexOf ( " Firefox" ) > - 1 ) {
72- sBrowser = " Mozilla Firefox" ;
71+ if ( sUsrAg . indexOf ( ' Firefox' ) > - 1 ) {
72+ sBrowser = ' Mozilla Firefox' ;
7373 // "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:61.0) Gecko/20100101 Firefox/61.0"
74- } else if ( sUsrAg . indexOf ( " SamsungBrowser" ) > - 1 ) {
75- sBrowser = " Samsung Internet" ;
74+ } else if ( sUsrAg . indexOf ( ' SamsungBrowser' ) > - 1 ) {
75+ sBrowser = ' Samsung Internet' ;
7676 // "Mozilla/5.0 (Linux; Android 9; SAMSUNG SM-G955F Build/PPR1.180610.011) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/9.4 Chrome/67.0.3396.87 Mobile Safari/537.36
77- } else if ( sUsrAg . indexOf ( " Opera" ) > - 1 || sUsrAg . indexOf ( " OPR" ) > - 1 ) {
78- sBrowser = " Opera" ;
77+ } else if ( sUsrAg . indexOf ( ' Opera' ) > - 1 || sUsrAg . indexOf ( ' OPR' ) > - 1 ) {
78+ sBrowser = ' Opera' ;
7979 // "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36 OPR/57.0.3098.106"
80- } else if ( sUsrAg . indexOf ( " Trident" ) > - 1 ) {
81- sBrowser = " Microsoft Internet Explorer" ;
80+ } else if ( sUsrAg . indexOf ( ' Trident' ) > - 1 ) {
81+ sBrowser = ' Microsoft Internet Explorer' ;
8282 // "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; .NET4.0C; .NET4.0E; Zoom 3.6.0; wbx 1.0.0; rv:11.0) like Gecko"
83- } else if ( sUsrAg . indexOf ( " Edge" ) > - 1 ) {
84- sBrowser = " Microsoft Edge" ;
83+ } else if ( sUsrAg . indexOf ( ' Edge' ) > - 1 ) {
84+ sBrowser = ' Microsoft Edge' ;
8585 // "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/16.16299"
86- } else if ( sUsrAg . indexOf ( " Chrome" ) > - 1 ) {
87- sBrowser = " Chrome" ;
86+ } else if ( sUsrAg . indexOf ( ' Chrome' ) > - 1 ) {
87+ sBrowser = ' Chrome' ;
8888 // "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/66.0.3359.181 Chrome/66.0.3359.181 Safari/537.36"
89- } else if ( sUsrAg . indexOf ( " Safari" ) > - 1 ) {
90- sBrowser = " Safari" ;
89+ } else if ( sUsrAg . indexOf ( ' Safari' ) > - 1 ) {
90+ sBrowser = ' Safari' ;
9191 // "Mozilla/5.0 (iPhone; CPU iPhone OS 11_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/11.0 Mobile/15E148 Safari/604.1 980x1306"
9292 } else {
93- sBrowser = " unknown" ;
93+ sBrowser = ' unknown' ;
9494 }
9595 const mousePosition = d3 . pointer ( e ) ;
9696 const hoveredX = xScale . invert ( mousePosition [ 0 ] ) ;
@@ -114,9 +114,10 @@ export default function ListeningRect({
114114 const closestDataPoint = data [ closestXIndex ] ;
115115 closestXValue = xAccessor ( closestDataPoint ) ;
116116
117- tooltipState . cursorX = sBrowser === 'Chrome'
118- ? e . nativeEvent . pageX - e . nativeEvent . layerX + xScale ( closestXValue )
119- : e . nativeEvent . pageX - e . nativeEvent . offsetX + xScale ( closestXValue )
117+ tooltipState . cursorX =
118+ sBrowser === 'Chrome'
119+ ? e . nativeEvent . pageX - e . nativeEvent . layerX + xScale ( closestXValue )
120+ : e . nativeEvent . pageX - e . nativeEvent . offsetX + xScale ( closestXValue ) ;
120121 }
121122
122123 // ****************************************
@@ -140,20 +141,21 @@ export default function ListeningRect({
140141 if ( typeof closestYIndex === 'number' ) {
141142 if ( typeof closestXIndex === 'number' ) {
142143 closestYValue = layers [ closestYIndex ] [ closestXIndex ] [ 1 ] ;
143-
144- tooltipState . cursorY = sBrowser === "Chrome" ?
145- e . pageY - e . nativeEvent . layerY + yScale ( closestYValue )
146- : e . pageY - e . nativeEvent . offsetY + yScale ( closestYValue )
147144
145+ tooltipState . cursorY =
146+ sBrowser === 'Chrome'
147+ ? e . pageY - e . nativeEvent . layerY + yScale ( closestYValue )
148+ : e . pageY - e . nativeEvent . offsetY + yScale ( closestYValue ) ;
149+
150+ const closestYKey : string = layers [ closestYIndex ] . key ;
148151 tooltipState . data = {
149- [ xKey ] : closestXValue ,
150- [ yKey ] : closestYValue ,
152+ [ xKey ] : data [ closestXIndex ] [ xKey ] ,
153+ [ yKey ] : data [ closestXIndex ] [ closestYKey ] ,
151154 } ;
152155 }
153156 }
154157
155- tooltipState . distanceFromTop =
156- tooltipState . cursorY + margin . top ;
158+ tooltipState . distanceFromTop = tooltipState . cursorY + margin . top ;
157159 tooltipState . distanceFromRight =
158160 width - ( margin . left + tooltipState . cursorX ) ;
159161 tooltipState . distanceFromLeft = margin . left + tooltipState . cursorX ;
0 commit comments