@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
@@ -315,11 +315,7 @@ define(["require", "exports", "tslib", "react", "d3-selection", "d3-array", "../
315
315
  var formattedDate = xPointToHighlight instanceof Date
316
316
  ? (0, chart_utilities_1.formatDateToLocaleString)(xPointToHighlight, _this_1.props.culture, _this_1.props.useUTC)
317
317
  : xPointToHighlight;
318
- var modifiedXVal = xPointToHighlight instanceof Date ? xPointToHighlight.getTime() : xPointToHighlight;
319
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
320
- var found = (0, Utilities_1.find)(_this_1._calloutPoints, function (element) {
321
- return element.x === modifiedXVal;
322
- });
318
+ var found = (0, index_3.findCalloutPoints)(_this_1._calloutPoints, xPointToHighlight);
323
319
  var pointToHighlight = lineChartData[linenumber].data[index];
324
320
  var pointToHighlightUpdated = _this_1.state.nearestCircleToHighlight === null ||
325
321
  (_this_1.state.nearestCircleToHighlight !== null &&
@@ -362,8 +358,7 @@ define(["require", "exports", "tslib", "react", "d3-selection", "d3-array", "../
362
358
  _this_1._handleFocus = function (lineId, x, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData) {
363
359
  _this_1._uniqueCallOutID = circleId;
364
360
  var formattedData = x instanceof Date ? (0, chart_utilities_1.formatDateToLocaleString)(x, _this_1.props.culture, _this_1.props.useUTC) : x;
365
- var xVal = x instanceof Date ? x.getTime() : x;
366
- var found = (0, Utilities_1.find)(_this_1._calloutPoints, function (element) { return element.x === xVal; });
361
+ var found = (0, index_3.findCalloutPoints)(_this_1._calloutPoints, x);
367
362
  // if no points need to be called out then don't show vertical line and callout card
368
363
  if (found) {
369
364
  var _this_2 = _this_1;
@@ -394,16 +389,14 @@ define(["require", "exports", "tslib", "react", "d3-selection", "d3-array", "../
394
389
  _this_1._handleHover = function (x, y, lineHeight, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData, yScale, legendVal, lineColor, mouseEvent) {
395
390
  mouseEvent.persist();
396
391
  var formattedData = x instanceof Date ? (0, chart_utilities_1.formatDateToLocaleString)(x, _this_1.props.culture, _this_1.props.useUTC) : x;
397
- var xVal = x instanceof Date ? x.getTime() : x;
398
- var yVal = y instanceof Date ? y.getTime() : y;
399
392
  var _this = _this_1;
400
- var found = (0, Utilities_1.find)(_this_1._calloutPoints, function (element) { return element.x === xVal; });
393
+ var found = (0, index_3.findCalloutPoints)(_this_1._calloutPoints, x);
401
394
  var hoverDp = undefined;
402
395
  if (_this_1.props.isCalloutForStack === false && (found === null || found === void 0 ? void 0 : found.values)) {
403
- var dp = (0, Utilities_1.find)(found.values, function (val) { return (val === null || val === void 0 ? void 0 : val.y) === yVal; });
396
+ var dp = (0, Utilities_1.find)(found.values, function (val) { return (val === null || val === void 0 ? void 0 : val.y) === y; });
404
397
  if (dp) {
405
398
  hoverDp = {
406
- x: xVal,
399
+ x: x,
407
400
  values: [dp],
408
401
  };
409
402
  }
@@ -421,7 +414,7 @@ define(["require", "exports", "tslib", "react", "d3-selection", "d3-array", "../
421
414
  refSelected: "#".concat(circleId),
422
415
  hoverXValue: xAxisCalloutData ? xAxisCalloutData : '' + formattedData,
423
416
  YValueHover: found.values,
424
- YValue: yVal,
417
+ YValue: y,
425
418
  legendVal: legendVal,
426
419
  lineColor: lineColor,
427
420
  stackCalloutProps: found,
@@ -608,7 +601,7 @@ define(["require", "exports", "tslib", "react", "d3-selection", "d3-array", "../
608
601
  _this_1._refArray = [];
609
602
  _this_1._points = _this_1._injectIndexPropertyInLineChartData(_this_1.props.data.lineChartData);
610
603
  _this_1._colorFillBars = [];
611
- _this_1._calloutPoints = (0, index_3.calloutData)(_this_1._points) || [];
604
+ _this_1._calloutPoints = (0, index_3.calloutData)(_this_1._points) || {};
612
605
  _this_1._circleId = (0, Utilities_1.getId)('circle');
613
606
  _this_1._lineId = (0, Utilities_1.getId)('lineID');
614
607
  _this_1._borderId = (0, Utilities_1.getId)('borderID');
@@ -644,7 +637,7 @@ define(["require", "exports", "tslib", "react", "d3-selection", "d3-array", "../
644
637
  prevProps.width !== this.props.width ||
645
638
  prevProps.data !== this.props.data) {
646
639
  this._points = this._injectIndexPropertyInLineChartData(this.props.data.lineChartData);
647
- this._calloutPoints = (0, index_3.calloutData)(this._points) || [];
640
+ this._calloutPoints = (0, index_3.calloutData)(this._points) || {};
648
641
  }
649
642
  };
650
643
  // eslint-disable-next-line @typescript-eslint/no-deprecated
@@ -769,7 +762,7 @@ define(["require", "exports", "tslib", "react", "d3-selection", "d3-array", "../
769
762
  // eslint-disable-next-line @typescript-eslint/no-deprecated
770
763
  LineChartBase.prototype._createLines = function (xElement, containerHeight) {
771
764
  var _this_1 = this;
772
- 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;
765
+ 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;
773
766
  // eslint-disable-next-line @typescript-eslint/no-deprecated
774
767
  var lines = [];
775
768
  if (this.state.isSelectedLegend) {
@@ -813,7 +806,7 @@ define(["require", "exports", "tslib", "react", "d3-selection", "d3-array", "../
813
806
  })
814
807
  : 0;
815
808
  if (this_1._points[i].data.length === 1) {
816
- var _18 = this_1._points[i].data[0], x1_1 = _18.x, y1 = _18.y, xAxisCalloutData_1 = _18.xAxisCalloutData, xAxisCalloutAccessibilityData_1 = _18.xAxisCalloutAccessibilityData;
809
+ var _27 = this_1._points[i].data[0], x1_1 = _27.x, y1 = _27.y, xAxisCalloutData_1 = _27.xAxisCalloutData, xAxisCalloutAccessibilityData_1 = _27.xAxisCalloutAccessibilityData;
817
810
  var xPoint = this_1._xAxisScale(x1_1);
818
811
  var yPoint = yScale(y1);
819
812
  if ((0, index_3.isPlottable)(xPoint, yPoint)) {
@@ -862,20 +855,44 @@ define(["require", "exports", "tslib", "react", "d3-selection", "d3-array", "../
862
855
  this_1._points[i].data[k].y,
863
856
  ]);
864
857
  }
865
- if (isLegendSelected) {
866
- var lineBorderWidth = ((_g = this_1._points[i].lineOptions) === null || _g === void 0 ? void 0 : _g.lineBorderWidth)
858
+ // Check if lines should be drawn based on mode
859
+ var lineMode = (_g = this_1._points[i].lineOptions) === null || _g === void 0 ? void 0 : _g.mode;
860
+ var shouldDrawLines = lineMode !== 'markers';
861
+ if (shouldDrawLines && isLegendSelected) {
862
+ var lineBorderWidth = ((_h = this_1._points[i].lineOptions) === null || _h === void 0 ? void 0 : _h.lineBorderWidth)
867
863
  ? Number.parseFloat(this_1._points[i].lineOptions.lineBorderWidth.toString())
868
864
  : 0;
869
865
  if (lineBorderWidth > 0) {
870
- 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 }));
866
+ 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 }));
871
867
  }
872
- 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 })));
868
+ 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 })));
873
869
  }
874
- else {
875
- 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 }));
870
+ else if (shouldDrawLines) {
871
+ 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 }));
876
872
  }
877
873
  var isPointHighlighted = this_1.state.activeLine !== null && this_1.state.activeLine === i;
874
+ // Always add the highlight circle for large dataset hover
878
875
  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 }));
876
+ // Add individual markers if mode includes 'markers'
877
+ var showMarkers = (lineMode === null || lineMode === void 0 ? void 0 : lineMode.includes('markers')) || !lineMode; // Show markers by default if no mode specified
878
+ if (showMarkers) {
879
+ for (var k = 0; k < this_1._points[i].data.length; k++) {
880
+ var _28 = this_1._points[i].data[k], x = _28.x, y = _28.y;
881
+ var xPoint = this_1._xAxisScale(x instanceof Date ? x.getTime() : x);
882
+ var yPoint = yScale(y);
883
+ if ((0, index_3.isPlottable)(xPoint, yPoint)) {
884
+ var markerSize = this_1._points[i].data[k].markerSize;
885
+ var perPointColor = (_t = this_1._points[i].data[k]) === null || _t === void 0 ? void 0 : _t.markerColor;
886
+ pointsForLine.push(React.createElement("circle", { key: "".concat(this_1._circleId, "_").concat(i, "_").concat(k, "_marker"), r: markerSize
887
+ ? (markerSize * extraMaxPixels * 0.3) / maxMarkerSize
888
+ : activePoint === this_1._circleId
889
+ ? 5.5
890
+ : 3.5, cx: xPoint, cy: yPoint, fill: activePoint === this_1._circleId
891
+ ? theme.semanticColors.bodyBackground
892
+ : 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 }));
893
+ }
894
+ }
895
+ }
879
896
  }
880
897
  else if (!this_1.props.optimizeLargeData) {
881
898
  var _loop_2 = function (j) {
@@ -885,74 +902,74 @@ define(["require", "exports", "tslib", "react", "d3-selection", "d3-array", "../
885
902
  var lineId = "".concat(this_1._lineId, "_").concat(i, "_").concat(j);
886
903
  var borderId = "".concat(this_1._borderId, "_").concat(i, "_").concat(j);
887
904
  var circleId = "".concat(this_1._circleId, "_").concat(i, "_").concat(j);
888
- var _19 = this_1._points[i].data[j - 1], x1 = _19.x, y1 = _19.y, xAxisCalloutData = _19.xAxisCalloutData, xAxisCalloutAccessibilityData = _19.xAxisCalloutAccessibilityData;
889
- var _20 = this_1._points[i].data[j], x2 = _20.x, y2 = _20.y;
905
+ var _29 = this_1._points[i].data[j - 1], x1 = _29.x, y1 = _29.y, xAxisCalloutData = _29.xAxisCalloutData, xAxisCalloutAccessibilityData = _29.xAxisCalloutAccessibilityData;
906
+ var _30 = this_1._points[i].data[j], x2 = _30.x, y2 = _30.y;
890
907
  var xPoint1 = this_1._xAxisScale(x1);
891
908
  var yPoint1 = yScale(y1);
892
909
  var xPoint2 = this_1._xAxisScale(x2);
893
910
  var yPoint2 = yScale(y2);
894
- var strokeWidth = ((_s = this_1._points[i].lineOptions) === null || _s === void 0 ? void 0 : _s.strokeWidth) || this_1.props.strokeWidth || DEFAULT_LINE_STROKE_SIZE;
911
+ var strokeWidth = ((_v = this_1._points[i].lineOptions) === null || _v === void 0 ? void 0 : _v.strokeWidth) || this_1.props.strokeWidth || DEFAULT_LINE_STROKE_SIZE;
895
912
  var isLegendSelected = this_1._legendHighlighted(legendVal) || this_1._noLegendHighlighted() || this_1.state.isSelectedLegend;
896
913
  var currentPointHidden = this_1._points[i].hideNonActiveDots && activePoint !== circleId;
897
- 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');
914
+ 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');
898
915
  var text = this_1._points[i].data[j - 1].text;
899
916
  var currentMarkerSize = this_1._points[i].data[j - 1].markerSize;
900
917
  if ((0, index_3.isPlottable)(xPoint1, yPoint1)) {
901
918
  var path = this_1._getPath(xPoint1, yPoint1, circleId, j, false, this_1._points[i].index);
902
- 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,
919
+ 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,
903
920
  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 () {
904
921
  return _this_1._handleFocus(lineId, x1, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData);
905
- }, 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) })),
922
+ }, 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) })),
906
923
  !this_1._isScatterPolar && supportsTextMode && text && (React.createElement("text", { key: "".concat(circleId, "-label"), x: xPoint1, y: yPoint1 +
907
924
  Math.max(currentMarkerSize ? (currentMarkerSize * extraMaxPixels) / maxMarkerSize : 4, 4) +
908
925
  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 () {
909
926
  return _this_1._handleFocus(lineId, x1, xAxisCalloutData, circleId, xAxisCalloutAccessibilityData);
910
- }, 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) }))));
927
+ }, 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) }))));
911
928
  }
912
929
  if (j + 1 === this_1._points[i].data.length) {
913
930
  // If this is last point of the line segment.
914
931
  var lastCircleId_1 = "".concat(circleId).concat(j, "L");
915
932
  var hiddenHoverCircleId = "".concat(circleId).concat(j, "D");
916
933
  var lastPointHidden = this_1._points[i].hideNonActiveDots && activePoint !== lastCircleId_1;
917
- var _21 = this_1._points[i].data[j], lastCirlceXCallout_1 = _21.xAxisCalloutData, lastCirlceXCalloutAccessibilityData_1 = _21.xAxisCalloutAccessibilityData;
934
+ var _31 = this_1._points[i].data[j], lastCirlceXCallout_1 = _31.xAxisCalloutData, lastCirlceXCalloutAccessibilityData_1 = _31.xAxisCalloutAccessibilityData;
918
935
  currentMarkerSize = this_1._points[i].data[j].markerSize;
919
- 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');
936
+ 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');
920
937
  var lastText = this_1._points[i].data[j].text;
921
938
  if ((0, index_3.isPlottable)(xPoint2, yPoint2)) {
922
939
  var path = this_1._getPath(xPoint2, yPoint2, lastCircleId_1, j, true, this_1._points[i].index);
923
940
  pointsForLine.push(React.createElement(React.Fragment, { key: "".concat(lastCircleId_1, "_container") },
924
- ((_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,
941
+ ((_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,
925
942
  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 () {
926
943
  return _this_1._handleFocus(lineId, x2, lastCirlceXCallout_1, lastCircleId_1, lastCirlceXCalloutAccessibilityData_1);
927
- }, 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) })),
944
+ }, 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) })),
928
945
  !this_1._isScatterPolar && lastSupportsTextMode && lastText && (React.createElement("text", { key: "".concat(lastCircleId_1, "-label"), x: xPoint2, y: yPoint2 +
929
946
  Math.max(currentMarkerSize ? (currentMarkerSize * extraMaxPixels) / maxMarkerSize : 4, 4) +
930
947
  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 () {
931
948
  return _this_1._handleFocus(lineId, x2, lastCirlceXCallout_1, lastCircleId_1, lastCirlceXCalloutAccessibilityData_1);
932
- }, 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) }))),
949
+ }, 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) }))),
933
950
  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 })));
934
951
  }
935
952
  }
936
953
  if ((0, index_3.isPlottable)(xPoint1, yPoint1) &&
937
954
  (0, index_3.isPlottable)(xPoint2, yPoint2) &&
938
- (!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')))) {
955
+ (!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')))) {
939
956
  if (isLegendSelected) {
940
957
  // don't draw line if it is in a gap
941
958
  if (!isInGap) {
942
- var lineBorderWidth = ((_5 = this_1._points[i].lineOptions) === null || _5 === void 0 ? void 0 : _5.lineBorderWidth)
959
+ var lineBorderWidth = ((_14 = this_1._points[i].lineOptions) === null || _14 === void 0 ? void 0 : _14.lineBorderWidth)
943
960
  ? Number.parseFloat(this_1._points[i].lineOptions.lineBorderWidth.toString())
944
961
  : 0;
945
962
  if (lineBorderWidth > 0) {
946
- 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 }));
963
+ 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 }));
947
964
  }
948
965
  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) {
949
966
  _this_1._refCallback(e, lineId);
950
- }, 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))));
967
+ }, 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))));
951
968
  }
952
969
  }
953
970
  else {
954
971
  if (!isInGap) {
955
- 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 }));
972
+ 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 }));
956
973
  }
957
974
  }
958
975
  }
@@ -966,7 +983,7 @@ define(["require", "exports", "tslib", "react", "d3-selection", "d3-array", "../
966
983
  xAxisScale: this_1._xAxisScale,
967
984
  yAxisScale: yScale,
968
985
  className: classNames.markerLabel || '',
969
- lineOptions: (_17 = this_1._points[i]) === null || _17 === void 0 ? void 0 : _17.lineOptions,
986
+ lineOptions: (_26 = this_1._points[i]) === null || _26 === void 0 ? void 0 : _26.lineOptions,
970
987
  }));
971
988
  }
972
989
  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.") },