@fluentui/react-charting 5.24.30 → 5.24.32

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.
Files changed (73) hide show
  1. package/CHANGELOG.json +43 -1
  2. package/CHANGELOG.md +22 -2
  3. package/dist/react-charting.d.ts +135 -2
  4. package/dist/react-charting.js +1 -1
  5. package/dist/react-charting.min.js +1 -1
  6. package/etc/react-charting.api.md +45 -2
  7. package/lib/components/AreaChart/AreaChart.base.js +18 -22
  8. package/lib/components/AreaChart/AreaChart.base.js.map +1 -1
  9. package/lib/components/DeclarativeChart/DeclarativeChart.js +1 -4
  10. package/lib/components/DeclarativeChart/DeclarativeChart.js.map +1 -1
  11. package/lib/components/DeclarativeChart/PlotlySchemaAdapter.js +93 -50
  12. package/lib/components/DeclarativeChart/PlotlySchemaAdapter.js.map +1 -1
  13. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.d.ts +13 -2
  14. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js +260 -100
  15. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js.map +1 -1
  16. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.d.ts +7 -2
  17. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.js.map +1 -1
  18. package/lib/components/LineChart/LineChart.base.js +59 -42
  19. package/lib/components/LineChart/LineChart.base.js.map +1 -1
  20. package/lib/components/ScatterChart/ScatterChart.base.js +5 -11
  21. package/lib/components/ScatterChart/ScatterChart.base.js.map +1 -1
  22. package/lib/index.d.ts +1 -1
  23. package/lib/index.js.map +1 -1
  24. package/lib/types/IDataPoint.d.ts +125 -1
  25. package/lib/types/IDataPoint.js.map +1 -1
  26. package/lib/utilities/utilities.d.ts +18 -4
  27. package/lib/utilities/utilities.js +14 -5
  28. package/lib/utilities/utilities.js.map +1 -1
  29. package/lib-amd/components/AreaChart/AreaChart.base.js +16 -20
  30. package/lib-amd/components/AreaChart/AreaChart.base.js.map +1 -1
  31. package/lib-amd/components/DeclarativeChart/DeclarativeChart.js +1 -4
  32. package/lib-amd/components/DeclarativeChart/DeclarativeChart.js.map +1 -1
  33. package/lib-amd/components/DeclarativeChart/PlotlySchemaAdapter.js +92 -49
  34. package/lib-amd/components/DeclarativeChart/PlotlySchemaAdapter.js.map +1 -1
  35. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.d.ts +13 -2
  36. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js +257 -97
  37. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js.map +1 -1
  38. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.d.ts +7 -2
  39. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.js.map +1 -1
  40. package/lib-amd/components/LineChart/LineChart.base.js +58 -41
  41. package/lib-amd/components/LineChart/LineChart.base.js.map +1 -1
  42. package/lib-amd/components/ScatterChart/ScatterChart.base.js +3 -9
  43. package/lib-amd/components/ScatterChart/ScatterChart.base.js.map +1 -1
  44. package/lib-amd/index.d.ts +1 -1
  45. package/lib-amd/index.js.map +1 -1
  46. package/lib-amd/types/IDataPoint.d.ts +125 -1
  47. package/lib-amd/types/IDataPoint.js.map +1 -1
  48. package/lib-amd/utilities/utilities.d.ts +18 -4
  49. package/lib-amd/utilities/utilities.js +16 -6
  50. package/lib-amd/utilities/utilities.js.map +1 -1
  51. package/lib-commonjs/components/AreaChart/AreaChart.base.js +16 -20
  52. package/lib-commonjs/components/AreaChart/AreaChart.base.js.map +1 -1
  53. package/lib-commonjs/components/DeclarativeChart/DeclarativeChart.js +1 -4
  54. package/lib-commonjs/components/DeclarativeChart/DeclarativeChart.js.map +1 -1
  55. package/lib-commonjs/components/DeclarativeChart/PlotlySchemaAdapter.js +92 -49
  56. package/lib-commonjs/components/DeclarativeChart/PlotlySchemaAdapter.js.map +1 -1
  57. package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.d.ts +13 -2
  58. package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js +257 -97
  59. package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js.map +1 -1
  60. package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.d.ts +7 -2
  61. package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.js.map +1 -1
  62. package/lib-commonjs/components/LineChart/LineChart.base.js +58 -41
  63. package/lib-commonjs/components/LineChart/LineChart.base.js.map +1 -1
  64. package/lib-commonjs/components/ScatterChart/ScatterChart.base.js +3 -9
  65. package/lib-commonjs/components/ScatterChart/ScatterChart.base.js.map +1 -1
  66. package/lib-commonjs/index.d.ts +1 -1
  67. package/lib-commonjs/index.js.map +1 -1
  68. package/lib-commonjs/types/IDataPoint.d.ts +125 -1
  69. package/lib-commonjs/types/IDataPoint.js.map +1 -1
  70. package/lib-commonjs/utilities/utilities.d.ts +18 -4
  71. package/lib-commonjs/utilities/utilities.js +16 -6
  72. package/lib-commonjs/utilities/utilities.js.map +1 -1
  73. package/package.json +2 -2
@@ -329,11 +329,7 @@ var LineChartBase = /** @class */ (function (_super) {
329
329
  var formattedDate = xPointToHighlight instanceof Date
330
330
  ? (0, chart_utilities_1.formatDateToLocaleString)(xPointToHighlight, _this_1.props.culture, _this_1.props.useUTC)
331
331
  : xPointToHighlight;
332
- var modifiedXVal = xPointToHighlight instanceof Date ? xPointToHighlight.getTime() : xPointToHighlight;
333
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
334
- var found = (0, Utilities_1.find)(_this_1._calloutPoints, function (element) {
335
- return element.x === modifiedXVal;
336
- });
332
+ var found = (0, index_3.findCalloutPoints)(_this_1._calloutPoints, xPointToHighlight);
337
333
  var pointToHighlight = lineChartData[linenumber].data[index];
338
334
  var pointToHighlightUpdated = _this_1.state.nearestCircleToHighlight === null ||
339
335
  (_this_1.state.nearestCircleToHighlight !== null &&
@@ -376,8 +372,7 @@ var LineChartBase = /** @class */ (function (_super) {
376
372
  _this_1._handleFocus = function (lineId, x, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData) {
377
373
  _this_1._uniqueCallOutID = circleId;
378
374
  var formattedData = x instanceof Date ? (0, chart_utilities_1.formatDateToLocaleString)(x, _this_1.props.culture, _this_1.props.useUTC) : x;
379
- var xVal = x instanceof Date ? x.getTime() : x;
380
- var found = (0, Utilities_1.find)(_this_1._calloutPoints, function (element) { return element.x === xVal; });
375
+ var found = (0, index_3.findCalloutPoints)(_this_1._calloutPoints, x);
381
376
  // if no points need to be called out then don't show vertical line and callout card
382
377
  if (found) {
383
378
  var _this_2 = _this_1;
@@ -408,16 +403,14 @@ var LineChartBase = /** @class */ (function (_super) {
408
403
  _this_1._handleHover = function (x, y, lineHeight, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData, yScale, legendVal, lineColor, mouseEvent) {
409
404
  mouseEvent.persist();
410
405
  var formattedData = x instanceof Date ? (0, chart_utilities_1.formatDateToLocaleString)(x, _this_1.props.culture, _this_1.props.useUTC) : x;
411
- var xVal = x instanceof Date ? x.getTime() : x;
412
- var yVal = y instanceof Date ? y.getTime() : y;
413
406
  var _this = _this_1;
414
- var found = (0, Utilities_1.find)(_this_1._calloutPoints, function (element) { return element.x === xVal; });
407
+ var found = (0, index_3.findCalloutPoints)(_this_1._calloutPoints, x);
415
408
  var hoverDp = undefined;
416
409
  if (_this_1.props.isCalloutForStack === false && (found === null || found === void 0 ? void 0 : found.values)) {
417
- var dp = (0, Utilities_1.find)(found.values, function (val) { return (val === null || val === void 0 ? void 0 : val.y) === yVal; });
410
+ var dp = (0, Utilities_1.find)(found.values, function (val) { return (val === null || val === void 0 ? void 0 : val.y) === y; });
418
411
  if (dp) {
419
412
  hoverDp = {
420
- x: xVal,
413
+ x: x,
421
414
  values: [dp],
422
415
  };
423
416
  }
@@ -435,7 +428,7 @@ var LineChartBase = /** @class */ (function (_super) {
435
428
  refSelected: "#".concat(circleId),
436
429
  hoverXValue: xAxisCalloutData ? xAxisCalloutData : '' + formattedData,
437
430
  YValueHover: found.values,
438
- YValue: yVal,
431
+ YValue: y,
439
432
  legendVal: legendVal,
440
433
  lineColor: lineColor,
441
434
  stackCalloutProps: found,
@@ -622,7 +615,7 @@ var LineChartBase = /** @class */ (function (_super) {
622
615
  _this_1._refArray = [];
623
616
  _this_1._points = _this_1._injectIndexPropertyInLineChartData(_this_1.props.data.lineChartData);
624
617
  _this_1._colorFillBars = [];
625
- _this_1._calloutPoints = (0, index_3.calloutData)(_this_1._points) || [];
618
+ _this_1._calloutPoints = (0, index_3.calloutData)(_this_1._points) || {};
626
619
  _this_1._circleId = (0, Utilities_1.getId)('circle');
627
620
  _this_1._lineId = (0, Utilities_1.getId)('lineID');
628
621
  _this_1._borderId = (0, Utilities_1.getId)('borderID');
@@ -658,7 +651,7 @@ var LineChartBase = /** @class */ (function (_super) {
658
651
  prevProps.width !== this.props.width ||
659
652
  prevProps.data !== this.props.data) {
660
653
  this._points = this._injectIndexPropertyInLineChartData(this.props.data.lineChartData);
661
- this._calloutPoints = (0, index_3.calloutData)(this._points) || [];
654
+ this._calloutPoints = (0, index_3.calloutData)(this._points) || {};
662
655
  }
663
656
  };
664
657
  // eslint-disable-next-line @typescript-eslint/no-deprecated
@@ -783,7 +776,7 @@ var LineChartBase = /** @class */ (function (_super) {
783
776
  // eslint-disable-next-line @typescript-eslint/no-deprecated
784
777
  LineChartBase.prototype._createLines = function (xElement, containerHeight) {
785
778
  var _this_1 = this;
786
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17;
779
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26;
787
780
  // eslint-disable-next-line @typescript-eslint/no-deprecated
788
781
  var lines = [];
789
782
  if (this.state.isSelectedLegend) {
@@ -827,7 +820,7 @@ var LineChartBase = /** @class */ (function (_super) {
827
820
  })
828
821
  : 0;
829
822
  if (this_1._points[i].data.length === 1) {
830
- var _18 = this_1._points[i].data[0], x1_1 = _18.x, y1 = _18.y, xAxisCalloutData_1 = _18.xAxisCalloutData, xAxisCalloutAccessibilityData_1 = _18.xAxisCalloutAccessibilityData;
823
+ var _27 = this_1._points[i].data[0], x1_1 = _27.x, y1 = _27.y, xAxisCalloutData_1 = _27.xAxisCalloutData, xAxisCalloutAccessibilityData_1 = _27.xAxisCalloutAccessibilityData;
831
824
  var xPoint = this_1._xAxisScale(x1_1);
832
825
  var yPoint = yScale(y1);
833
826
  if ((0, index_3.isPlottable)(xPoint, yPoint)) {
@@ -876,20 +869,44 @@ var LineChartBase = /** @class */ (function (_super) {
876
869
  this_1._points[i].data[k].y,
877
870
  ]);
878
871
  }
879
- if (isLegendSelected) {
880
- var lineBorderWidth = ((_g = this_1._points[i].lineOptions) === null || _g === void 0 ? void 0 : _g.lineBorderWidth)
872
+ // Check if lines should be drawn based on mode
873
+ var lineMode = (_g = this_1._points[i].lineOptions) === null || _g === void 0 ? void 0 : _g.mode;
874
+ var shouldDrawLines = lineMode !== 'markers';
875
+ if (shouldDrawLines && isLegendSelected) {
876
+ var lineBorderWidth = ((_h = this_1._points[i].lineOptions) === null || _h === void 0 ? void 0 : _h.lineBorderWidth)
881
877
  ? Number.parseFloat(this_1._points[i].lineOptions.lineBorderWidth.toString())
882
878
  : 0;
883
879
  if (lineBorderWidth > 0) {
884
- bordersForLine.push(React.createElement("path", { id: borderId, key: borderId, d: line(lineData), fill: "transparent", strokeLinecap: (_j = (_h = this_1._points[i].lineOptions) === null || _h === void 0 ? void 0 : _h.strokeLinecap) !== null && _j !== void 0 ? _j : 'round', strokeWidth: Number.parseFloat(strokeWidth.toString()) + lineBorderWidth, stroke: ((_k = this_1._points[i].lineOptions) === null || _k === void 0 ? void 0 : _k.lineBorderColor) || theme.semanticColors.bodyBackground, opacity: 1 }));
880
+ bordersForLine.push(React.createElement("path", { id: borderId, key: borderId, d: line(lineData), fill: "transparent", strokeLinecap: (_k = (_j = this_1._points[i].lineOptions) === null || _j === void 0 ? void 0 : _j.strokeLinecap) !== null && _k !== void 0 ? _k : 'round', strokeWidth: Number.parseFloat(strokeWidth.toString()) + lineBorderWidth, stroke: ((_l = this_1._points[i].lineOptions) === null || _l === void 0 ? void 0 : _l.lineBorderColor) || theme.semanticColors.bodyBackground, opacity: 1 }));
885
881
  }
886
- linesForLine.push(React.createElement("path", tslib_1.__assign({ id: lineId, key: lineId, d: line(lineData), fill: "transparent", "data-is-focusable": true, stroke: lineColor, strokeWidth: strokeWidth, strokeLinecap: (_m = (_l = this_1._points[i].lineOptions) === null || _l === void 0 ? void 0 : _l.strokeLinecap) !== null && _m !== void 0 ? _m : 'round', strokeDasharray: (_o = this_1._points[i].lineOptions) === null || _o === void 0 ? void 0 : _o.strokeDasharray, onMouseMove: this_1._onMouseOverLargeDataset.bind(this_1, i, verticaLineHeight, yScale), onMouseOver: this_1._onMouseOverLargeDataset.bind(this_1, i, verticaLineHeight, yScale), onMouseOut: this_1._handleMouseOut }, this_1._getClickHandler(this_1._points[i].onLineClick), { opacity: 1 })));
882
+ linesForLine.push(React.createElement("path", tslib_1.__assign({ id: lineId, key: lineId, d: line(lineData), fill: "transparent", "data-is-focusable": true, stroke: lineColor, strokeWidth: strokeWidth, strokeLinecap: (_o = (_m = this_1._points[i].lineOptions) === null || _m === void 0 ? void 0 : _m.strokeLinecap) !== null && _o !== void 0 ? _o : 'round', strokeDasharray: (_p = this_1._points[i].lineOptions) === null || _p === void 0 ? void 0 : _p.strokeDasharray, onMouseMove: this_1._onMouseOverLargeDataset.bind(this_1, i, verticaLineHeight, yScale), onMouseOver: this_1._onMouseOverLargeDataset.bind(this_1, i, verticaLineHeight, yScale), onMouseOut: this_1._handleMouseOut }, this_1._getClickHandler(this_1._points[i].onLineClick), { opacity: 1 })));
887
883
  }
888
- else {
889
- linesForLine.push(React.createElement("path", { id: lineId, key: lineId, d: line(lineData), fill: "transparent", "data-is-focusable": false, stroke: lineColor, strokeWidth: strokeWidth, strokeLinecap: (_q = (_p = this_1._points[i].lineOptions) === null || _p === void 0 ? void 0 : _p.strokeLinecap) !== null && _q !== void 0 ? _q : 'round', strokeDasharray: (_r = this_1._points[i].lineOptions) === null || _r === void 0 ? void 0 : _r.strokeDasharray, opacity: 0.1 }));
884
+ else if (shouldDrawLines) {
885
+ linesForLine.push(React.createElement("path", { id: lineId, key: lineId, d: line(lineData), fill: "transparent", "data-is-focusable": false, stroke: lineColor, strokeWidth: strokeWidth, strokeLinecap: (_r = (_q = this_1._points[i].lineOptions) === null || _q === void 0 ? void 0 : _q.strokeLinecap) !== null && _r !== void 0 ? _r : 'round', strokeDasharray: (_s = this_1._points[i].lineOptions) === null || _s === void 0 ? void 0 : _s.strokeDasharray, opacity: 0.1 }));
890
886
  }
891
887
  var isPointHighlighted = this_1.state.activeLine !== null && this_1.state.activeLine === i;
888
+ // Always add the highlight circle for large dataset hover
892
889
  pointsForLine.push(React.createElement("circle", { id: "".concat(this_1._staticHighlightCircle, "_").concat(i), key: "".concat(this_1._staticHighlightCircle, "_").concat(i), r: 5.5, cx: 0, cy: 0, fill: theme.semanticColors.bodyBackground, strokeWidth: DEFAULT_LINE_STROKE_SIZE, stroke: lineColor, visibility: isPointHighlighted ? 'visibility' : 'hidden', onMouseMove: this_1._onMouseOverLargeDataset.bind(this_1, i, verticaLineHeight, yScale), onMouseOver: this_1._onMouseOverLargeDataset.bind(this_1, i, verticaLineHeight, yScale), onMouseOut: this_1._handleMouseOut }));
890
+ // Add individual markers if mode includes 'markers'
891
+ var showMarkers = (lineMode === null || lineMode === void 0 ? void 0 : lineMode.includes('markers')) || !lineMode; // Show markers by default if no mode specified
892
+ if (showMarkers) {
893
+ for (var k = 0; k < this_1._points[i].data.length; k++) {
894
+ var _28 = this_1._points[i].data[k], x = _28.x, y = _28.y;
895
+ var xPoint = this_1._xAxisScale(x instanceof Date ? x.getTime() : x);
896
+ var yPoint = yScale(y);
897
+ if ((0, index_3.isPlottable)(xPoint, yPoint)) {
898
+ var markerSize = this_1._points[i].data[k].markerSize;
899
+ var perPointColor = (_t = this_1._points[i].data[k]) === null || _t === void 0 ? void 0 : _t.markerColor;
900
+ pointsForLine.push(React.createElement("circle", { key: "".concat(this_1._circleId, "_").concat(i, "_").concat(k, "_marker"), r: markerSize
901
+ ? (markerSize * extraMaxPixels * 0.3) / maxMarkerSize
902
+ : activePoint === this_1._circleId
903
+ ? 5.5
904
+ : 3.5, cx: xPoint, cy: yPoint, fill: activePoint === this_1._circleId
905
+ ? theme.semanticColors.bodyBackground
906
+ : perPointColor || ((_u = this_1._points[i]) === null || _u === void 0 ? void 0 : _u.color) || lineColor, stroke: perPointColor || lineColor, strokeWidth: 1, opacity: isLegendSelected ? 1 : 0.1, onMouseMove: this_1._onMouseOverLargeDataset.bind(this_1, i, verticaLineHeight, yScale), onMouseOver: this_1._onMouseOverLargeDataset.bind(this_1, i, verticaLineHeight, yScale), onMouseOut: this_1._handleMouseOut }));
907
+ }
908
+ }
909
+ }
893
910
  }
894
911
  else if (!this_1.props.optimizeLargeData) {
895
912
  var _loop_2 = function (j) {
@@ -899,74 +916,74 @@ var LineChartBase = /** @class */ (function (_super) {
899
916
  var lineId = "".concat(this_1._lineId, "_").concat(i, "_").concat(j);
900
917
  var borderId = "".concat(this_1._borderId, "_").concat(i, "_").concat(j);
901
918
  var circleId = "".concat(this_1._circleId, "_").concat(i, "_").concat(j);
902
- var _19 = this_1._points[i].data[j - 1], x1 = _19.x, y1 = _19.y, xAxisCalloutData = _19.xAxisCalloutData, xAxisCalloutAccessibilityData = _19.xAxisCalloutAccessibilityData;
903
- var _20 = this_1._points[i].data[j], x2 = _20.x, y2 = _20.y;
919
+ var _29 = this_1._points[i].data[j - 1], x1 = _29.x, y1 = _29.y, xAxisCalloutData = _29.xAxisCalloutData, xAxisCalloutAccessibilityData = _29.xAxisCalloutAccessibilityData;
920
+ var _30 = this_1._points[i].data[j], x2 = _30.x, y2 = _30.y;
904
921
  var xPoint1 = this_1._xAxisScale(x1);
905
922
  var yPoint1 = yScale(y1);
906
923
  var xPoint2 = this_1._xAxisScale(x2);
907
924
  var yPoint2 = yScale(y2);
908
- var strokeWidth = ((_s = this_1._points[i].lineOptions) === null || _s === void 0 ? void 0 : _s.strokeWidth) || this_1.props.strokeWidth || DEFAULT_LINE_STROKE_SIZE;
925
+ var strokeWidth = ((_v = this_1._points[i].lineOptions) === null || _v === void 0 ? void 0 : _v.strokeWidth) || this_1.props.strokeWidth || DEFAULT_LINE_STROKE_SIZE;
909
926
  var isLegendSelected = this_1._legendHighlighted(legendVal) || this_1._noLegendHighlighted() || this_1.state.isSelectedLegend;
910
927
  var currentPointHidden = this_1._points[i].hideNonActiveDots && activePoint !== circleId;
911
- var supportsTextMode = (_u = (_t = this_1._points[i].lineOptions) === null || _t === void 0 ? void 0 : _t.mode) === null || _u === void 0 ? void 0 : _u.includes('text');
928
+ var supportsTextMode = (_x = (_w = this_1._points[i].lineOptions) === null || _w === void 0 ? void 0 : _w.mode) === null || _x === void 0 ? void 0 : _x.includes('text');
912
929
  var text = this_1._points[i].data[j - 1].text;
913
930
  var currentMarkerSize = this_1._points[i].data[j - 1].markerSize;
914
931
  if ((0, index_3.isPlottable)(xPoint1, yPoint1)) {
915
932
  var path = this_1._getPath(xPoint1, yPoint1, circleId, j, false, this_1._points[i].index);
916
- pointsForLine.push(((_w = (_v = this_1._points[i].lineOptions) === null || _v === void 0 ? void 0 : _v.mode) === null || _w === void 0 ? void 0 : _w.includes('markers')) || supportsTextMode ? (React.createElement(React.Fragment, null,
933
+ pointsForLine.push(((_z = (_y = this_1._points[i].lineOptions) === null || _y === void 0 ? void 0 : _y.mode) === null || _z === void 0 ? void 0 : _z.includes('markers')) || supportsTextMode ? (React.createElement(React.Fragment, null,
917
934
  React.createElement("circle", tslib_1.__assign({ id: circleId, key: circleId, r: currentMarkerSize ? (currentMarkerSize * extraMaxPixels) / maxMarkerSize : 4, cx: xPoint1, cy: yPoint1, "data-is-focusable": isLegendSelected, onMouseOver: this_1._handleHover.bind(this_1, x1, y1, verticaLineHeight, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData, yScale, legendVal, lineColor), onMouseMove: this_1._handleHover.bind(this_1, x1, y1, verticaLineHeight, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData, yScale, legendVal, lineColor), onMouseOut: this_1._handleMouseOut, onFocus: function () {
918
935
  return _this_1._handleFocus(lineId, x1, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData);
919
- }, onBlur: this_1._handleMouseOut }, this_1._getClickHandler(this_1._points[i].data[j - 1].onDataPointClick), { opacity: isLegendSelected && !currentPointHidden ? 1 : 0.01, fill: this_1._getPointFill(lineColor, circleId, j, false), stroke: lineColor, strokeWidth: strokeWidth, role: "img", "aria-label": (_x = this_1._points[i].data[j - 1].text) !== null && _x !== void 0 ? _x : this_1._getAriaLabel(i, j - 1) })),
936
+ }, onBlur: this_1._handleMouseOut }, this_1._getClickHandler(this_1._points[i].data[j - 1].onDataPointClick), { opacity: isLegendSelected && !currentPointHidden ? 1 : 0.01, fill: ((_0 = this_1._points[i].data[j - 1]) === null || _0 === void 0 ? void 0 : _0.markerColor) || this_1._getPointFill(lineColor, circleId, j, false), stroke: ((_1 = this_1._points[i].data[j - 1]) === null || _1 === void 0 ? void 0 : _1.markerColor) || lineColor, strokeWidth: strokeWidth, role: "img", "aria-label": (_2 = this_1._points[i].data[j - 1].text) !== null && _2 !== void 0 ? _2 : this_1._getAriaLabel(i, j - 1) })),
920
937
  !this_1._isScatterPolar && supportsTextMode && text && (React.createElement("text", { key: "".concat(circleId, "-label"), x: xPoint1, y: yPoint1 +
921
938
  Math.max(currentMarkerSize ? (currentMarkerSize * extraMaxPixels) / maxMarkerSize : 4, 4) +
922
939
  12, className: classNames.markerLabel, opacity: isLegendSelected && !currentPointHidden ? 1 : 0.01 }, text)))) : (React.createElement("path", tslib_1.__assign({ id: circleId, key: circleId, d: path, "data-is-focusable": isLegendSelected, onMouseOver: this_1._handleHover.bind(this_1, x1, y1, verticaLineHeight, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData, yScale, legendVal, lineColor), onMouseMove: this_1._handleHover.bind(this_1, x1, y1, verticaLineHeight, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData, yScale, legendVal, lineColor), onMouseOut: this_1._handleMouseOut, onFocus: function () {
923
940
  return _this_1._handleFocus(lineId, x1, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData);
924
- }, onBlur: this_1._handleMouseOut }, this_1._getClickHandler(this_1._points[i].data[j - 1].onDataPointClick), { opacity: isLegendSelected && !currentPointHidden ? 1 : 0.01, fill: this_1._getPointFill(lineColor, circleId, j, false), stroke: lineColor, strokeWidth: strokeWidth, role: "img", "aria-label": this_1._getAriaLabel(i, j - 1) }))));
941
+ }, onBlur: this_1._handleMouseOut }, this_1._getClickHandler(this_1._points[i].data[j - 1].onDataPointClick), { opacity: isLegendSelected && !currentPointHidden ? 1 : 0.01, fill: ((_3 = this_1._points[i].data[j - 1]) === null || _3 === void 0 ? void 0 : _3.markerColor) || this_1._getPointFill(lineColor, circleId, j, false), stroke: ((_4 = this_1._points[i].data[j - 1]) === null || _4 === void 0 ? void 0 : _4.markerColor) || lineColor, strokeWidth: strokeWidth, role: "img", "aria-label": this_1._getAriaLabel(i, j - 1) }))));
925
942
  }
926
943
  if (j + 1 === this_1._points[i].data.length) {
927
944
  // If this is last point of the line segment.
928
945
  var lastCircleId_1 = "".concat(circleId).concat(j, "L");
929
946
  var hiddenHoverCircleId = "".concat(circleId).concat(j, "D");
930
947
  var lastPointHidden = this_1._points[i].hideNonActiveDots && activePoint !== lastCircleId_1;
931
- var _21 = this_1._points[i].data[j], lastCirlceXCallout_1 = _21.xAxisCalloutData, lastCirlceXCalloutAccessibilityData_1 = _21.xAxisCalloutAccessibilityData;
948
+ var _31 = this_1._points[i].data[j], lastCirlceXCallout_1 = _31.xAxisCalloutData, lastCirlceXCalloutAccessibilityData_1 = _31.xAxisCalloutAccessibilityData;
932
949
  currentMarkerSize = this_1._points[i].data[j].markerSize;
933
- var lastSupportsTextMode = (_z = (_y = this_1._points[i].lineOptions) === null || _y === void 0 ? void 0 : _y.mode) === null || _z === void 0 ? void 0 : _z.includes('text');
950
+ var lastSupportsTextMode = (_6 = (_5 = this_1._points[i].lineOptions) === null || _5 === void 0 ? void 0 : _5.mode) === null || _6 === void 0 ? void 0 : _6.includes('text');
934
951
  var lastText = this_1._points[i].data[j].text;
935
952
  if ((0, index_3.isPlottable)(xPoint2, yPoint2)) {
936
953
  var path = this_1._getPath(xPoint2, yPoint2, lastCircleId_1, j, true, this_1._points[i].index);
937
954
  pointsForLine.push(React.createElement(React.Fragment, { key: "".concat(lastCircleId_1, "_container") },
938
- ((_1 = (_0 = this_1._points[i].lineOptions) === null || _0 === void 0 ? void 0 : _0.mode) === null || _1 === void 0 ? void 0 : _1.includes('markers')) || lastSupportsTextMode ? (React.createElement(React.Fragment, null,
955
+ ((_8 = (_7 = this_1._points[i].lineOptions) === null || _7 === void 0 ? void 0 : _7.mode) === null || _8 === void 0 ? void 0 : _8.includes('markers')) || lastSupportsTextMode ? (React.createElement(React.Fragment, null,
939
956
  React.createElement("circle", tslib_1.__assign({ id: lastCircleId_1, key: lastCircleId_1, r: currentMarkerSize ? (currentMarkerSize * extraMaxPixels) / maxMarkerSize : 4, cx: xPoint2, cy: yPoint2, "data-is-focusable": isLegendSelected, onMouseOver: this_1._handleHover.bind(this_1, x2, y2, verticaLineHeight, lastCirlceXCallout_1, lastCircleId_1, lastCirlceXCalloutAccessibilityData_1, yScale, legendVal, lineColor), onMouseMove: this_1._handleHover.bind(this_1, x2, y2, verticaLineHeight, lastCirlceXCallout_1, lastCircleId_1, lastCirlceXCalloutAccessibilityData_1, yScale, legendVal, lineColor), onMouseOut: this_1._handleMouseOut, onFocus: function () {
940
957
  return _this_1._handleFocus(lineId, x2, lastCirlceXCallout_1, lastCircleId_1, lastCirlceXCalloutAccessibilityData_1);
941
- }, onBlur: this_1._handleMouseOut }, this_1._getClickHandler(this_1._points[i].data[j].onDataPointClick), { opacity: isLegendSelected && !lastPointHidden ? 1 : 0.01, fill: this_1._getPointFill(lineColor, lastCircleId_1, j, true), stroke: lineColor, strokeWidth: strokeWidth, role: "img", "aria-label": (_2 = this_1._points[i].data[j].text) !== null && _2 !== void 0 ? _2 : this_1._getAriaLabel(i, j) })),
958
+ }, onBlur: this_1._handleMouseOut }, this_1._getClickHandler(this_1._points[i].data[j].onDataPointClick), { opacity: isLegendSelected && !lastPointHidden ? 1 : 0.01, fill: this_1._getPointFill(lineColor, lastCircleId_1, j, true), stroke: lineColor, strokeWidth: strokeWidth, role: "img", "aria-label": (_9 = this_1._points[i].data[j].text) !== null && _9 !== void 0 ? _9 : this_1._getAriaLabel(i, j) })),
942
959
  !this_1._isScatterPolar && lastSupportsTextMode && lastText && (React.createElement("text", { key: "".concat(lastCircleId_1, "-label"), x: xPoint2, y: yPoint2 +
943
960
  Math.max(currentMarkerSize ? (currentMarkerSize * extraMaxPixels) / maxMarkerSize : 4, 4) +
944
961
  12, className: classNames.markerLabel, opacity: isLegendSelected && !currentPointHidden ? 1 : 0.01 }, text)))) : (React.createElement("path", tslib_1.__assign({ id: lastCircleId_1, key: lastCircleId_1, d: path, "data-is-focusable": isLegendSelected, onMouseOver: this_1._handleHover.bind(this_1, x2, y2, verticaLineHeight, lastCirlceXCallout_1, lastCircleId_1, lastCirlceXCalloutAccessibilityData_1, yScale, legendVal, lineColor), onMouseMove: this_1._handleHover.bind(this_1, x2, y2, verticaLineHeight, lastCirlceXCallout_1, lastCircleId_1, lastCirlceXCalloutAccessibilityData_1, yScale, legendVal, lineColor), onMouseOut: this_1._handleMouseOut, onFocus: function () {
945
962
  return _this_1._handleFocus(lineId, x2, lastCirlceXCallout_1, lastCircleId_1, lastCirlceXCalloutAccessibilityData_1);
946
- }, onBlur: this_1._handleMouseOut }, this_1._getClickHandler(this_1._points[i].data[j].onDataPointClick), { opacity: isLegendSelected && !lastPointHidden ? 1 : 0.01, fill: this_1._getPointFill(lineColor, lastCircleId_1, j, true), stroke: lineColor, strokeWidth: strokeWidth, role: "img", "aria-label": this_1._getAriaLabel(i, j) }))),
963
+ }, onBlur: this_1._handleMouseOut }, this_1._getClickHandler(this_1._points[i].data[j].onDataPointClick), { opacity: isLegendSelected && !lastPointHidden ? 1 : 0.01, fill: ((_10 = this_1._points[i].data[j]) === null || _10 === void 0 ? void 0 : _10.markerColor) || this_1._getPointFill(lineColor, lastCircleId_1, j, true), stroke: ((_11 = this_1._points[i].data[j]) === null || _11 === void 0 ? void 0 : _11.markerColor) || lineColor, strokeWidth: strokeWidth, role: "img", "aria-label": this_1._getAriaLabel(i, j) }))),
947
964
  React.createElement("circle", { id: hiddenHoverCircleId, key: hiddenHoverCircleId, r: 8, cx: xPoint2, cy: yPoint2, opacity: 0, width: 0, onMouseOver: this_1._handleHover.bind(this_1, x2, y2, verticaLineHeight, lastCirlceXCallout_1, lastCircleId_1, lastCirlceXCalloutAccessibilityData_1, yScale, legendVal, lineColor), onMouseMove: this_1._handleHover.bind(this_1, x2, y2, verticaLineHeight, lastCirlceXCallout_1, lastCircleId_1, lastCirlceXCalloutAccessibilityData_1, yScale, legendVal, lineColor), onMouseOut: this_1._handleMouseOut, strokeWidth: 0, focusable: false, onBlur: this_1._handleMouseOut })));
948
965
  }
949
966
  }
950
967
  if ((0, index_3.isPlottable)(xPoint1, yPoint1) &&
951
968
  (0, index_3.isPlottable)(xPoint2, yPoint2) &&
952
- (!this_1._hasMarkersMode || ((_4 = (_3 = this_1._points[i].lineOptions) === null || _3 === void 0 ? void 0 : _3.mode) === null || _4 === void 0 ? void 0 : _4.includes('lines')))) {
969
+ (!this_1._hasMarkersMode || ((_13 = (_12 = this_1._points[i].lineOptions) === null || _12 === void 0 ? void 0 : _12.mode) === null || _13 === void 0 ? void 0 : _13.includes('lines')))) {
953
970
  if (isLegendSelected) {
954
971
  // don't draw line if it is in a gap
955
972
  if (!isInGap) {
956
- var lineBorderWidth = ((_5 = this_1._points[i].lineOptions) === null || _5 === void 0 ? void 0 : _5.lineBorderWidth)
973
+ var lineBorderWidth = ((_14 = this_1._points[i].lineOptions) === null || _14 === void 0 ? void 0 : _14.lineBorderWidth)
957
974
  ? Number.parseFloat(this_1._points[i].lineOptions.lineBorderWidth.toString())
958
975
  : 0;
959
976
  if (lineBorderWidth > 0) {
960
- bordersForLine.push(React.createElement("line", { id: borderId, key: borderId, x1: xPoint1, y1: yPoint1, x2: xPoint2, y2: yPoint2, strokeLinecap: (_7 = (_6 = this_1._points[i].lineOptions) === null || _6 === void 0 ? void 0 : _6.strokeLinecap) !== null && _7 !== void 0 ? _7 : 'round', strokeWidth: Number.parseFloat(strokeWidth.toString()) + lineBorderWidth, stroke: ((_8 = this_1._points[i].lineOptions) === null || _8 === void 0 ? void 0 : _8.lineBorderColor) || theme.semanticColors.bodyBackground, opacity: 1 }));
977
+ bordersForLine.push(React.createElement("line", { id: borderId, key: borderId, x1: xPoint1, y1: yPoint1, x2: xPoint2, y2: yPoint2, strokeLinecap: (_16 = (_15 = this_1._points[i].lineOptions) === null || _15 === void 0 ? void 0 : _15.strokeLinecap) !== null && _16 !== void 0 ? _16 : 'round', strokeWidth: Number.parseFloat(strokeWidth.toString()) + lineBorderWidth, stroke: ((_17 = this_1._points[i].lineOptions) === null || _17 === void 0 ? void 0 : _17.lineBorderColor) || theme.semanticColors.bodyBackground, opacity: 1 }));
961
978
  }
962
979
  linesForLine.push(React.createElement("line", tslib_1.__assign({ id: lineId, key: lineId, x1: xPoint1, y1: yPoint1, x2: xPoint2, y2: yPoint2, strokeWidth: strokeWidth, ref: function (e) {
963
980
  _this_1._refCallback(e, lineId);
964
- }, onMouseOver: this_1._handleHover.bind(this_1, x1, y1, verticaLineHeight, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData, yScale, legendVal, lineColor), onMouseMove: this_1._handleHover.bind(this_1, x1, y1, verticaLineHeight, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData, yScale, legendVal, lineColor), onMouseOut: this_1._handleMouseOut, stroke: lineColor, strokeLinecap: (_10 = (_9 = this_1._points[i].lineOptions) === null || _9 === void 0 ? void 0 : _9.strokeLinecap) !== null && _10 !== void 0 ? _10 : 'round', strokeDasharray: (_11 = this_1._points[i].lineOptions) === null || _11 === void 0 ? void 0 : _11.strokeDasharray, strokeDashoffset: (_12 = this_1._points[i].lineOptions) === null || _12 === void 0 ? void 0 : _12.strokeDashoffset, opacity: 1 }, this_1._getClickHandler(this_1._points[i].onLineClick))));
981
+ }, onMouseOver: this_1._handleHover.bind(this_1, x1, y1, verticaLineHeight, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData, yScale, legendVal, lineColor), onMouseMove: this_1._handleHover.bind(this_1, x1, y1, verticaLineHeight, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData, yScale, legendVal, lineColor), onMouseOut: this_1._handleMouseOut, stroke: lineColor, strokeLinecap: (_19 = (_18 = this_1._points[i].lineOptions) === null || _18 === void 0 ? void 0 : _18.strokeLinecap) !== null && _19 !== void 0 ? _19 : 'round', strokeDasharray: (_20 = this_1._points[i].lineOptions) === null || _20 === void 0 ? void 0 : _20.strokeDasharray, strokeDashoffset: (_21 = this_1._points[i].lineOptions) === null || _21 === void 0 ? void 0 : _21.strokeDashoffset, opacity: 1 }, this_1._getClickHandler(this_1._points[i].onLineClick))));
965
982
  }
966
983
  }
967
984
  else {
968
985
  if (!isInGap) {
969
- linesForLine.push(React.createElement("line", { id: lineId, key: lineId, x1: xPoint1, y1: yPoint1, x2: xPoint2, y2: yPoint2, strokeWidth: strokeWidth, stroke: lineColor, strokeLinecap: (_14 = (_13 = this_1._points[i].lineOptions) === null || _13 === void 0 ? void 0 : _13.strokeLinecap) !== null && _14 !== void 0 ? _14 : 'round', strokeDasharray: (_15 = this_1._points[i].lineOptions) === null || _15 === void 0 ? void 0 : _15.strokeDasharray, strokeDashoffset: (_16 = this_1._points[i].lineOptions) === null || _16 === void 0 ? void 0 : _16.strokeDashoffset, opacity: 0.1 }));
986
+ linesForLine.push(React.createElement("line", { id: lineId, key: lineId, x1: xPoint1, y1: yPoint1, x2: xPoint2, y2: yPoint2, strokeWidth: strokeWidth, stroke: lineColor, strokeLinecap: (_23 = (_22 = this_1._points[i].lineOptions) === null || _22 === void 0 ? void 0 : _22.strokeLinecap) !== null && _23 !== void 0 ? _23 : 'round', strokeDasharray: (_24 = this_1._points[i].lineOptions) === null || _24 === void 0 ? void 0 : _24.strokeDasharray, strokeDashoffset: (_25 = this_1._points[i].lineOptions) === null || _25 === void 0 ? void 0 : _25.strokeDashoffset, opacity: 0.1 }));
970
987
  }
971
988
  }
972
989
  }
@@ -980,7 +997,7 @@ var LineChartBase = /** @class */ (function (_super) {
980
997
  xAxisScale: this_1._xAxisScale,
981
998
  yAxisScale: yScale,
982
999
  className: classNames.markerLabel || '',
983
- lineOptions: (_17 = this_1._points[i]) === null || _17 === void 0 ? void 0 : _17.lineOptions,
1000
+ lineOptions: (_26 = this_1._points[i]) === null || _26 === void 0 ? void 0 : _26.lineOptions,
984
1001
  }));
985
1002
  }
986
1003
  lines.push(React.createElement("g", { key: "line_".concat(i), role: "region", "aria-label": "".concat(legendVal, ", line ").concat(i + 1, " of ").concat(this_1._points.length, " with ").concat(this_1._points[i].data.length, " data points.") },