@carbon/charts-vue 1.6.0 → 1.6.2

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/charts-vue.umd.js CHANGED
@@ -20765,7 +20765,6 @@ var legend_Legend = /** @class */ (function (_super) {
20765
20765
  var truncationThreshold = tools_Tools.getProperty(truncationOptions, 'threshold');
20766
20766
  var truncationNumCharacter = tools_Tools.getProperty(truncationOptions, 'numCharacter');
20767
20767
  var addedLegendItemsText = svg.selectAll('div.legend-item p');
20768
- var self = this;
20769
20768
  // Add an ID for the checkbox to use through `aria-labelledby`
20770
20769
  addedLegendItemsText.attr('id', function (d, i) {
20771
20770
  var elementToReference = this.parentNode.querySelector('div.checkbox') ||
@@ -20792,7 +20791,7 @@ var legend_Legend = /** @class */ (function (_super) {
20792
20791
  var svg = this.getComponentContainer();
20793
20792
  var options = this.getOptions();
20794
20793
  var legendOptions = tools_Tools.getProperty(options, 'legend');
20795
- var truncationThreshold = tools_Tools.getProperty(legendOptions, 'truncation', 'threshold');
20794
+ var truncation = tools_Tools.getProperty(legendOptions, 'truncation');
20796
20795
  svg.selectAll('div.legend-item')
20797
20796
  .on('mouseover', function (event) {
20798
20797
  self.services.events.dispatchEvent(Events.Legend.ITEM_HOVER, {
@@ -20800,8 +20799,10 @@ var legend_Legend = /** @class */ (function (_super) {
20800
20799
  });
20801
20800
  var hoveredItem = src_select(this);
20802
20801
  hoveredItem.select('div.checkbox').classed('hovered', true);
20802
+ // Show tooltip if character length is greater than threshold & there is no truncation
20803
20803
  var hoveredItemData = hoveredItem.datum();
20804
- if (hoveredItemData.name.length > truncationThreshold) {
20804
+ if (hoveredItemData.name.length > truncation.threshold &&
20805
+ truncation.type !== TruncationTypes.NONE) {
20805
20806
  self.services.events.dispatchEvent(Events.Tooltip.SHOW, {
20806
20807
  event: event,
20807
20808
  hoveredElement: hoveredItem,
@@ -20810,9 +20811,14 @@ var legend_Legend = /** @class */ (function (_super) {
20810
20811
  }
20811
20812
  })
20812
20813
  .on('mousemove', function (event) {
20813
- self.services.events.dispatchEvent(Events.Tooltip.MOVE, {
20814
- event: event,
20815
- });
20814
+ // Emit tooltip move event only if tooltip is shown
20815
+ var hoveredItemData = src_select(this).datum();
20816
+ if (hoveredItemData.name.length > truncation.threshold &&
20817
+ truncation.type !== TruncationTypes.NONE) {
20818
+ self.services.events.dispatchEvent(Events.Tooltip.MOVE, {
20819
+ event: event,
20820
+ });
20821
+ }
20816
20822
  })
20817
20823
  .on('click', function () {
20818
20824
  self.services.events.dispatchEvent(Events.Legend.ITEM_CLICK, {
@@ -20825,7 +20831,12 @@ var legend_Legend = /** @class */ (function (_super) {
20825
20831
  .on('mouseout', function () {
20826
20832
  var hoveredItem = src_select(this);
20827
20833
  hoveredItem.select('div.checkbox').classed('hovered', false);
20828
- self.services.events.dispatchEvent(Events.Tooltip.HIDE);
20834
+ // Emit tooltip hide event only if tooltip is shown
20835
+ var hoveredItemData = hoveredItem.datum();
20836
+ if (hoveredItemData.name.length > truncation.threshold &&
20837
+ truncation.type !== TruncationTypes.NONE) {
20838
+ self.services.events.dispatchEvent(Events.Tooltip.HIDE);
20839
+ }
20829
20840
  self.services.events.dispatchEvent(Events.Legend.ITEM_MOUSEOUT, {
20830
20841
  hoveredElement: hoveredItem,
20831
20842
  });
@@ -20853,7 +20864,7 @@ var legend_Legend = /** @class */ (function (_super) {
20853
20864
  svg.selectAll('g.additional-item').on('mouseover', function (event) {
20854
20865
  var hoveredItem = src_select(this);
20855
20866
  var hoveredItemData = hoveredItem.datum();
20856
- if (hoveredItemData.name.length > truncationThreshold) {
20867
+ if (hoveredItemData.name.length > truncation.threshold) {
20857
20868
  self.services.events.dispatchEvent(Events.Tooltip.SHOW, {
20858
20869
  event: event,
20859
20870
  hoveredElement: hoveredItem,
@@ -36598,27 +36609,6 @@ var hover_axis_HoverAxis = /** @class */ (function (_super) {
36598
36609
  .attr('width', width + configuration_non_customizable_axis.hover.rectanglePadding * 2)
36599
36610
  .attr('height', height)
36600
36611
  .lower();
36601
- // Add keyboard event listeners to each group element
36602
- g.on('keydown', function (event) {
36603
- // Choose specific arrow key depending on the axis
36604
- if (axisPosition === AxisPositions.LEFT ||
36605
- axisPosition === AxisPositions.RIGHT) {
36606
- if (event.key && event.key === 'ArrowUp') {
36607
- self.goNext(this, event);
36608
- }
36609
- else if (event.key && event.key === 'ArrowDown') {
36610
- self.goPrevious(this, event);
36611
- }
36612
- }
36613
- else {
36614
- if (event.key && event.key === 'ArrowLeft') {
36615
- self.goPrevious(this, event);
36616
- }
36617
- else if (event.key && event.key === 'ArrowRight') {
36618
- self.goNext(this, event);
36619
- }
36620
- }
36621
- });
36622
36612
  });
36623
36613
  // Add event listeners to element group
36624
36614
  this.addEventListeners();
@@ -36707,6 +36697,35 @@ var hover_axis_HoverAxis = /** @class */ (function (_super) {
36707
36697
  element: src_select(this),
36708
36698
  datum: src_select(this).select('text').datum(),
36709
36699
  });
36700
+ })
36701
+ .on('keydown', function (event) {
36702
+ // Hide the tooltip when `Escape` is pressed, but keep focus
36703
+ if (event.key && event.key === 'Escape') {
36704
+ self.services.events.dispatchEvent(Events.Tooltip.HIDE);
36705
+ self.services.events.dispatchEvent(Events.Axis.LABEL_BLUR, {
36706
+ event: event,
36707
+ element: src_select(this),
36708
+ datum: src_select(this).select('text').datum(),
36709
+ });
36710
+ }
36711
+ // Choose specific arrow key depending on the axis
36712
+ if (axisPosition === AxisPositions.LEFT ||
36713
+ axisPosition === AxisPositions.RIGHT) {
36714
+ if (event.key && event.key === 'ArrowUp') {
36715
+ self.goNext(this, event);
36716
+ }
36717
+ else if (event.key && event.key === 'ArrowDown') {
36718
+ self.goPrevious(this, event);
36719
+ }
36720
+ }
36721
+ else {
36722
+ if (event.key && event.key === 'ArrowLeft') {
36723
+ self.goPrevious(this, event);
36724
+ }
36725
+ else if (event.key && event.key === 'ArrowRight') {
36726
+ self.goNext(this, event);
36727
+ }
36728
+ }
36710
36729
  });
36711
36730
  };
36712
36731
  // Focus on the next HTML element sibling