plotly.js 2.16.1 → 2.16.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "plotly.js",
3
- "version": "2.16.1",
3
+ "version": "2.16.3",
4
4
  "description": "The open source javascript graphing library that powers plotly",
5
5
  "license": "MIT",
6
6
  "main": "./lib/index.js",
@@ -888,7 +888,17 @@ function createHoverText(hoverData, opts) {
888
888
  var xa = c0.xa;
889
889
  var ya = c0.ya;
890
890
  var axLetter = hovermode.charAt(0);
891
- var t0 = c0[axLetter + 'Label'];
891
+ var axLabel = axLetter + 'Label';
892
+ var t0 = c0[axLabel];
893
+
894
+ // search in array for the label
895
+ if(t0 === undefined && xa.type === 'multicategory') {
896
+ for(var q = 0; q < hoverData.length; q++) {
897
+ t0 = hoverData[q][axLabel];
898
+ if(t0 !== undefined) break;
899
+ }
900
+ }
901
+
892
902
  var outerContainerBB = getBoundingClientRect(gd, outerContainer);
893
903
  var outerTop = outerContainerBB.top;
894
904
  var outerWidth = outerContainerBB.width;
@@ -2067,7 +2077,7 @@ function getCoord(axLetter, winningPoint, fullLayout) {
2067
2077
 
2068
2078
  var cd0 = winningPoint.cd[0];
2069
2079
 
2070
- if(ax.type === 'category') val = ax._categoriesMap[val];
2080
+ if(ax.type === 'category' || ax.type === 'multicategory') val = ax._categoriesMap[val];
2071
2081
  else if(ax.type === 'date') {
2072
2082
  var periodalignment = winningPoint.trace[axLetter + 'periodalignment'];
2073
2083
  if(periodalignment) {
@@ -593,7 +593,7 @@ proto.updateFx = function(fullLayout) {
593
593
  map.off('click', self.onClickInPanHandler);
594
594
  if(selectMode(dragMode) || drawMode(dragMode)) {
595
595
  map.dragPan.disable();
596
- map.on('zoomstart', self.clearSelect);
596
+ map.on('zoomstart', self.clearOutline);
597
597
 
598
598
  self.dragOptions.prepFn = function(e, startX, startY) {
599
599
  prepSelect(e, startX, startY, self.dragOptions, dragMode);
@@ -602,7 +602,7 @@ proto.updateFx = function(fullLayout) {
602
602
  dragElement.init(self.dragOptions);
603
603
  } else {
604
604
  map.dragPan.enable();
605
- map.off('zoomstart', self.clearSelect);
605
+ map.off('zoomstart', self.clearOutline);
606
606
  self.div.onmousedown = null;
607
607
  self.div.ontouchstart = null;
608
608
  self.div.removeEventListener('touchstart', self.div._ontouchstart);
package/src/version.js CHANGED
@@ -1,4 +1,4 @@
1
1
  'use strict';
2
2
 
3
3
  // package version injected by `npm run preprocess`
4
- exports.version = '2.16.1';
4
+ exports.version = '2.16.3';