@vizzly/dashboard 0.15.0-dev-4a90180f693d878d9bfd1449280e08ac6afa15d7 → 0.15.0-dev-0deaef621a2f2e1193124d502137c2500f5e1855

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.
@@ -59,10 +59,10 @@ var html2canvas = _interopDefault(require('html2canvas'));
59
59
  var jsPDF = _interopDefault(require('jspdf'));
60
60
  var event = require('@visx/event');
61
61
  var d3Array = require('@visx/vendor/d3-array');
62
- var grid = require('@visx/grid');
63
62
  var axis = require('@visx/axis');
64
63
  var text$3 = require('@visx/text');
65
64
  var annotation = require('@visx/annotation');
65
+ var grid = require('@visx/grid');
66
66
  var glyph = require('@visx/glyph');
67
67
  var clipPath = require('@visx/clip-path');
68
68
  var point = require('@visx/point');
@@ -6930,18 +6930,18 @@ var ComboChartV2 = function ComboChartV2(config) {
6930
6930
  }), namespace(CONSTANTS$8, 'combo_chart_dimension'), namespace(CONSTANTS$8, 'sort'), namespace(CONSTANTS$8, 'filter'), namespace(CONSTANTS$8, 'custom_metrics'), namespace(CONSTANTS$8, 'limit')];
6931
6931
  },
6932
6932
  formatPanelConfig: function formatPanelConfig() {
6933
- var _CONSTANTS$format_pan, _CONSTANTS$format_pan2, _CONSTANTS$format_pan3, _CONSTANTS$format_pan4, _CONSTANTS$format_pan5, _CONSTANTS$format_pan6, _CONSTANTS$format_pan7, _CONSTANTS$format_pan8;
6933
+ var _CONSTANTS$format_pan, _CONSTANTS$format_pan2, _CONSTANTS$format_pan3, _CONSTANTS$format_pan4, _CONSTANTS$format_pan5, _CONSTANTS$format_pan6, _CONSTANTS$format_pan7, _CONSTANTS$format_pan8, _CONSTANTS$format_pan9;
6934
6934
  return [headingConstant(CONSTANTS$8), _extends({}, namespace(CONSTANTS$8, 'chart_styles'), {
6935
- subSection: [(_CONSTANTS$format_pan = CONSTANTS$8.format_panel.chart_styles) == null ? void 0 : _CONSTANTS$format_pan.subSectionDefinition.legend, (_CONSTANTS$format_pan2 = CONSTANTS$8.format_panel.chart_styles) == null ? void 0 : _CONSTANTS$format_pan2.subSectionDefinition.labels]
6935
+ subSection: [(_CONSTANTS$format_pan = CONSTANTS$8.format_panel.chart_styles) == null ? void 0 : _CONSTANTS$format_pan.subSectionDefinition.stacked, (_CONSTANTS$format_pan2 = CONSTANTS$8.format_panel.chart_styles) == null ? void 0 : _CONSTANTS$format_pan2.subSectionDefinition.legend, (_CONSTANTS$format_pan3 = CONSTANTS$8.format_panel.chart_styles) == null ? void 0 : _CONSTANTS$format_pan3.subSectionDefinition.labels]
6936
6936
  }), axisLabelsConstants(CONSTANTS$8), _extends({}, namespace(CONSTANTS$8, 'conditional_formatting'), {
6937
6937
  ruleType: 'backgroundColor',
6938
6938
  subSection: [{
6939
- title: (_CONSTANTS$format_pan3 = (_CONSTANTS$format_pan4 = CONSTANTS$8.format_panel.conditional_formatting) == null || (_CONSTANTS$format_pan4 = _CONSTANTS$format_pan4.subSectionDefinition) == null ? void 0 : _CONSTANTS$format_pan4.bar.title) != null ? _CONSTANTS$format_pan3 : '',
6940
- namespace: (_CONSTANTS$format_pan5 = CONSTANTS$8.format_panel.conditional_formatting) == null || (_CONSTANTS$format_pan5 = _CONSTANTS$format_pan5.subSectionDefinition) == null ? void 0 : _CONSTANTS$format_pan5.bar.namespace,
6939
+ title: (_CONSTANTS$format_pan4 = (_CONSTANTS$format_pan5 = CONSTANTS$8.format_panel.conditional_formatting) == null || (_CONSTANTS$format_pan5 = _CONSTANTS$format_pan5.subSectionDefinition) == null ? void 0 : _CONSTANTS$format_pan5.bar.title) != null ? _CONSTANTS$format_pan4 : '',
6940
+ namespace: (_CONSTANTS$format_pan6 = CONSTANTS$8.format_panel.conditional_formatting) == null || (_CONSTANTS$format_pan6 = _CONSTANTS$format_pan6.subSectionDefinition) == null ? void 0 : _CONSTANTS$format_pan6.bar.namespace,
6941
6941
  propKey: 'bar'
6942
6942
  }, {
6943
- title: (_CONSTANTS$format_pan6 = (_CONSTANTS$format_pan7 = CONSTANTS$8.format_panel.conditional_formatting) == null || (_CONSTANTS$format_pan7 = _CONSTANTS$format_pan7.subSectionDefinition) == null ? void 0 : _CONSTANTS$format_pan7.line.title) != null ? _CONSTANTS$format_pan6 : '',
6944
- namespace: (_CONSTANTS$format_pan8 = CONSTANTS$8.format_panel.conditional_formatting) == null || (_CONSTANTS$format_pan8 = _CONSTANTS$format_pan8.subSectionDefinition) == null ? void 0 : _CONSTANTS$format_pan8.line.namespace,
6943
+ title: (_CONSTANTS$format_pan7 = (_CONSTANTS$format_pan8 = CONSTANTS$8.format_panel.conditional_formatting) == null || (_CONSTANTS$format_pan8 = _CONSTANTS$format_pan8.subSectionDefinition) == null ? void 0 : _CONSTANTS$format_pan8.line.title) != null ? _CONSTANTS$format_pan7 : '',
6944
+ namespace: (_CONSTANTS$format_pan9 = CONSTANTS$8.format_panel.conditional_formatting) == null || (_CONSTANTS$format_pan9 = _CONSTANTS$format_pan9.subSectionDefinition) == null ? void 0 : _CONSTANTS$format_pan9.line.namespace,
6945
6945
  propKey: 'line'
6946
6946
  }]
6947
6947
  }), namespace(CONSTANTS$8, 'goal_line')];
@@ -44314,370 +44314,6 @@ function buildComboTooltipData(barTooltipData, lineTooltipData, xScaleKey) {
44314
44314
  return barTooltipData && lineTooltipData ? _extends({}, barTooltipData, lineTooltipData) : undefined;
44315
44315
  }
44316
44316
 
44317
- var LegendItemBox = function LegendItemBox(_ref) {
44318
- var color = _ref.color,
44319
- style = _ref.style;
44320
- return jsxRuntime.jsx("svg", {
44321
- width: 10,
44322
- height: 10,
44323
- style: {
44324
- display: 'block'
44325
- },
44326
- children: style.type === 'line' ? style.strokeDasharray !== null ? jsxRuntime.jsx("line", {
44327
- x1: "0",
44328
- y1: "5",
44329
- x2: "10",
44330
- y2: "5",
44331
- stroke: color,
44332
- strokeWidth: style.strokeWidth,
44333
- strokeDasharray: 2
44334
- }) : jsxRuntime.jsx("line", {
44335
- x1: "0",
44336
- y1: "5",
44337
- x2: "10",
44338
- y2: "5",
44339
- stroke: color,
44340
- strokeWidth: style.strokeWidth
44341
- }) : jsxRuntime.jsx("rect", {
44342
- fill: color,
44343
- width: 10,
44344
- height: 10,
44345
- rx: "2"
44346
- })
44347
- });
44348
- };
44349
- var LegendItemSquare = function LegendItemSquare(_ref2) {
44350
- var color = _ref2.color;
44351
- return jsxRuntime.jsx("svg", {
44352
- width: 8,
44353
- height: 8,
44354
- style: {
44355
- display: 'block'
44356
- },
44357
- children: jsxRuntime.jsx("rect", {
44358
- fill: color,
44359
- width: 8,
44360
- height: 8,
44361
- rx: "2"
44362
- })
44363
- });
44364
- };
44365
- var LegendItemTriangle = function LegendItemTriangle(_ref3) {
44366
- var color = _ref3.color;
44367
- return jsxRuntime.jsx("svg", {
44368
- width: 8,
44369
- height: 8,
44370
- style: {
44371
- display: 'block',
44372
- borderRadius: 1
44373
- },
44374
- children: jsxRuntime.jsx("polygon", {
44375
- points: "0,0 10,10 0,10",
44376
- fill: color
44377
- })
44378
- });
44379
- };
44380
-
44381
- function _EMOTION_STRINGIFIED_CSS_ERROR__$5() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
44382
- var MIN_TOOLTIP_WIDTH = 180;
44383
- var TOOLTIP_OFFSET = 20;
44384
- var SCROLLBAR_WIDTH = 40;
44385
- var getTooltipValue = function getTooltipValue(tooltipData, yKey) {
44386
- var data = tooltipData[yKey];
44387
- return (data == null ? void 0 : data.formattedValue) || (data == null ? void 0 : data.value) || '';
44388
- };
44389
- var Tooltip$1 = function Tooltip(_ref) {
44390
- var _tooltipData$xKey$for, _tooltipData$xKey;
44391
- var keys = _ref.keys,
44392
- showRoundedTotal = _ref.showRoundedTotal,
44393
- tooltipData = _ref.tooltipData,
44394
- tooltipLeft = _ref.tooltipLeft,
44395
- tooltipTop = _ref.tooltipTop,
44396
- xKey = _ref.xKey,
44397
- yKeys = _ref.yKeys,
44398
- theme = _ref.theme,
44399
- items = _ref.items,
44400
- _ref$shouldShowColorL = _ref.shouldShowColorLegend,
44401
- shouldShowColorLegend = _ref$shouldShowColorL === void 0 ? true : _ref$shouldShowColorL;
44402
- var tooltipRef = React.useRef(null);
44403
- var _useState = React.useState({
44404
- left: tooltipLeft
44405
- }),
44406
- position = _useState[0],
44407
- setPosition = _useState[1];
44408
- React.useEffect(function () {
44409
- var adjustTooltipPosition = function adjustTooltipPosition() {
44410
- var tooltipElement = tooltipRef.current;
44411
- if (tooltipElement) {
44412
- var screenWidth = window.innerWidth;
44413
- var rect = tooltipElement.getBoundingClientRect();
44414
- var width = rect.width;
44415
- if (width < MIN_TOOLTIP_WIDTH) {
44416
- width = MIN_TOOLTIP_WIDTH;
44417
- }
44418
- var left = tooltipLeft + TOOLTIP_OFFSET;
44419
- if (tooltipLeft + width > screenWidth - SCROLLBAR_WIDTH) {
44420
- left = tooltipLeft - width - TOOLTIP_OFFSET;
44421
- }
44422
- setPosition({
44423
- left: left
44424
- });
44425
- }
44426
- };
44427
- adjustTooltipPosition();
44428
- }, [tooltipLeft]);
44429
- return /*#__PURE__*/ReactDOM.createPortal(jsxRuntime.jsx("div", {
44430
- ref: tooltipRef,
44431
- style: _extends({
44432
- position: 'absolute',
44433
- left: position.left,
44434
- top: tooltipTop,
44435
- zIndex: 2147483647 * 10
44436
- }, theme),
44437
- children: jsxRuntime.jsxs("div", {
44438
- style: {
44439
- wordBreak: 'break-all'
44440
- },
44441
- children: [jsxRuntime.jsx("div", {
44442
- className: /*#__PURE__*/css$1.css({
44443
- fontFamily: 'inherit',
44444
- lineHeight: 'inherit',
44445
- letterSpacing: 'inherit',
44446
- fontWeight: 'bold',
44447
- fontSize: '15px',
44448
- width: '100%',
44449
- minWidth: MIN_TOOLTIP_WIDTH
44450
- }, ";label:Tooltip;", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtHcUIiLCJmaWxlIjoiVG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgQ1NTUHJvcGVydGllcywgRnJhZ21lbnQsIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNyZWF0ZVBvcnRhbCB9IGZyb20gJ3JlYWN0LWRvbSc7XG5cbmltcG9ydCB7IGdldENvbG9yIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgTGVnZW5kSXRlbUJveCB9IGZyb20gJy4uL0xlZ2VuZC9MZWdlbmRJdGVtQm94JztcbmltcG9ydCB7IFNoYXBlRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgRGF0YUl0ZW0sIEtleSB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgTGluZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvTGluZUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEFyZWFTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0FyZWFDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEJ1YmJsZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQnViYmxlQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9jc3MnO1xuXG5jb25zdCBNSU5fVE9PTFRJUF9XSURUSCA9IDE4MDtcbmNvbnN0IFRPT0xUSVBfT0ZGU0VUID0gMjA7XG5jb25zdCBTQ1JPTExCQVJfV0lEVEggPSA0MDtcblxuY29uc3QgZ2V0VG9vbHRpcFZhbHVlID0gKHRvb2x0aXBEYXRhOiB7IFtrZXlJZDogc3RyaW5nXTogRGF0YUl0ZW0gfSwgeUtleTogc3RyaW5nKTogc3RyaW5nIHwgbnVtYmVyID0+IHtcbiAgY29uc3QgZGF0YSA9IHRvb2x0aXBEYXRhW3lLZXldO1xuICByZXR1cm4gZGF0YT8uZm9ybWF0dGVkVmFsdWUgfHwgZGF0YT8udmFsdWUgfHwgJyc7XG59O1xuXG5pbnRlcmZhY2UgVG9vbHRpcFByb3BzPFQ+IHtcbiAga2V5czogeyBba2V5OiBzdHJpbmddOiBLZXkgfTtcbiAgc2hvd1JvdW5kZWRUb3RhbDogYm9vbGVhbjtcbiAgdG9vbHRpcERhdGE6IHtcbiAgICBba2V5SWQ6IHN0cmluZ106IERhdGFJdGVtO1xuICB9O1xuICB0b29sdGlwTGVmdDogbnVtYmVyO1xuICB0b29sdGlwVG9wOiBudW1iZXI7XG4gIHhLZXk6IHN0cmluZztcbiAgeUtleXM/OiBzdHJpbmdbXTtcbiAgaXRlbXM6IHtcbiAgICBsZWdlbmRJdGVtczogQXJyYXk8U2hhcGVEZWZpbml0aW9uPFQ+PjtcbiAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQXJyYXk8Q29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZT47XG4gICAgdmlzaWJsZVlLZXlzOiBzdHJpbmdbXTtcbiAgfVtdO1xuICB0aGVtZTogQ1NTUHJvcGVydGllcztcbiAgc2hvdWxkU2hvd0NvbG9yTGVnZW5kPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IFRvb2x0aXAgPSAoe1xuICBrZXlzLFxuICBzaG93Um91bmRlZFRvdGFsLFxuICB0b29sdGlwRGF0YSxcbiAgdG9vbHRpcExlZnQsXG4gIHRvb2x0aXBUb3AsXG4gIHhLZXksXG4gIHlLZXlzLFxuICB0aGVtZSxcbiAgaXRlbXMsXG4gIHNob3VsZFNob3dDb2xvckxlZ2VuZCA9IHRydWUsXG59OiBUb29sdGlwUHJvcHM8TGluZVN0eWxlcyB8IEJhclN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+KSA9PiB7XG4gIGNvbnN0IHRvb2x0aXBSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICBjb25zdCBbcG9zaXRpb24sIHNldFBvc2l0aW9uXSA9IHVzZVN0YXRlPHsgbGVmdDogbnVtYmVyIH0+KHtcbiAgICBsZWZ0OiB0b29sdGlwTGVmdCxcbiAgfSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBhZGp1c3RUb29sdGlwUG9zaXRpb24gPSAoKSA9PiB7XG4gICAgICBjb25zdCB0b29sdGlwRWxlbWVudCA9IHRvb2x0aXBSZWYuY3VycmVudDtcblxuICAgICAgaWYgKHRvb2x0aXBFbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IHNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG5cbiAgICAgICAgY29uc3QgcmVjdCA9IHRvb2x0aXBFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICAgIGxldCB3aWR0aCA9IHJlY3Qud2lkdGg7XG5cbiAgICAgICAgaWYgKHdpZHRoIDwgTUlOX1RPT0xUSVBfV0lEVEgpIHtcbiAgICAgICAgICB3aWR0aCA9IE1JTl9UT09MVElQX1dJRFRIO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGxlZnQgPSB0b29sdGlwTGVmdCArIFRPT0xUSVBfT0ZGU0VUO1xuXG4gICAgICAgIGlmICh0b29sdGlwTGVmdCArIHdpZHRoID4gc2NyZWVuV2lkdGggLSBTQ1JPTExCQVJfV0lEVEgpIHtcbiAgICAgICAgICBsZWZ0ID0gdG9vbHRpcExlZnQgLSB3aWR0aCAtIFRPT0xUSVBfT0ZGU0VUO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0UG9zaXRpb24oeyBsZWZ0IH0pO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBhZGp1c3RUb29sdGlwUG9zaXRpb24oKTtcbiAgfSwgW3Rvb2x0aXBMZWZ0XSk7XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChcbiAgICA8ZGl2XG4gICAgICByZWY9e3Rvb2x0aXBSZWZ9XG4gICAgICBzdHlsZT17e1xuICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgbGVmdDogcG9zaXRpb24ubGVmdCxcbiAgICAgICAgdG9wOiB0b29sdGlwVG9wLFxuICAgICAgICB6SW5kZXg6IDIxNDc0ODM2NDcgKiAxMCxcbiAgICAgICAgLi4udGhlbWUsXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxkaXYgc3R5bGU9e3sgd29yZEJyZWFrOiAnYnJlYWstYWxsJyB9fT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICAgIGZvbnRGYW1pbHk6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGxpbmVIZWlnaHQ6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGxldHRlclNwYWNpbmc6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGZvbnRXZWlnaHQ6ICdib2xkJyxcbiAgICAgICAgICAgIGZvbnRTaXplOiAnMTVweCcsXG4gICAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgICAgbWluV2lkdGg6IE1JTl9UT09MVElQX1dJRFRILFxuICAgICAgICAgIH0pfVxuICAgICAgICA+XG4gICAgICAgICAge3Rvb2x0aXBEYXRhW3hLZXldPy5mb3JtYXR0ZWRWYWx1ZSA/PyB0b29sdGlwRGF0YVt4S2V5XS52YWx1ZX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIHt0b29sdGlwRGF0YVsnX19xdWFkcmFudF9fJ10gJiYgKFxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICAgICAgZm9udEZhbWlseTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgICBsaW5lSGVpZ2h0OiAnaW5oZXJpdCcsXG4gICAgICAgICAgICAgIGxldHRlclNwYWNpbmc6ICdpbmhlcml0JyxcbiAgICAgICAgICAgICAgZm9udFNpemU6ICcxM3B4JyxcbiAgICAgICAgICAgICAgZm9udFdlaWdodDogJ2JvbGQnLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge3Rvb2x0aXBEYXRhWydfX3F1YWRyYW50X18nXS52YWx1ZX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgICAgPHRhYmxlXG4gICAgICAgICAgY2VsbFBhZGRpbmc9ezB9XG4gICAgICAgICAgY2VsbFNwYWNpbmc9ezB9XG4gICAgICAgICAgY2xhc3NOYW1lPXtjc3Moe1xuICAgICAgICAgICAgbWFyZ2luOiAnMCcsXG4gICAgICAgICAgICBib3JkZXJTcGFjaW5nOiAnMCcsXG4gICAgICAgICAgICBib3JkZXJDb2xsYXBzZTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgYm9yZGVyOiAnbm9uZScsXG4gICAgICAgICAgfSl9XG4gICAgICAgID5cbiAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDxGcmFnbWVudCBrZXk9e2luZGV4fT5cbiAgICAgICAgICAgICAgICAgIHtpdGVtLmxlZ2VuZEl0ZW1zPy5tYXAoKGxlZ2VuZEl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdG9vbHRpcERhdGFbbGVnZW5kSXRlbS55S2V5XSB8fCB0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgLy8geUtleSBjb3VsZCBub3QgYmUgZm91bmQgaW4gdG9vbHRpcERhdGFcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgIGl0ZW0udmlzaWJsZVlLZXlzPy5pbmNsdWRlcyhsZWdlbmRJdGVtLnlLZXkpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBrZXk9e2Ake2xlZ2VuZEl0ZW0ueUtleX0tJHtpbmRleH0tJHt0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlfWB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7c2hvdWxkU2hvd0NvbG9yTGVnZW5kICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsQWxpZ246ICdtaWRkbGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBpbmRleCA9PT0gMCA/ICcxMnB4IDhweCAwIDAnIDogJzhweCA4cHggMCAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICdhdXRvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExlZ2VuZEl0ZW1Cb3hcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I9e2dldENvbG9yKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0Q29sb3I6IGxlZ2VuZEl0ZW0uY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHRvb2x0aXBEYXRhW2xlZ2VuZEl0ZW0ueUtleV0udmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUtleTogbGVnZW5kSXRlbS55S2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBpdGVtLmNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzID8/IFtdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e2xlZ2VuZEl0ZW0uc3R5bGUgYXMgTGluZVN0eWxlc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUtleT17bGVnZW5kSXRlbS55S2V5fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgcGFkZGluZzogJzhweCAwIDAgMCcgfX0+e2tleXNbbGVnZW5kSXRlbS55S2V5XS5rZXlGb3JtYXR0ZWR9PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPXt7IGZvbnRXZWlnaHQ6ICdib2xkJywgcGFkZGluZzogJzhweCAwIDAgMTZweCcgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2dldFRvb2x0aXBWYWx1ZSh0b29sdGlwRGF0YSwgbGVnZW5kSXRlbS55S2V5KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgPC9GcmFnbWVudD5cbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pfVxuXG4gICAgICAgICAgICB7c2hvd1JvdW5kZWRUb3RhbCAmJiB5S2V5cyAmJiAoXG4gICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICA8dGQgY29sU3Bhbj17Mn0gc3R5bGU9e3sgcGFkZGluZzogJzEycHggMCAwIDAnIH19PlxuICAgICAgICAgICAgICAgICAgUm91bmRlZCBUb3RhbFxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPHRkIHN0eWxlPXt7IGZvbnRXZWlnaHQ6ICdib2xkJywgcGFkZGluZzogJzEycHggMCAwIDE2cHgnIH19PlxuICAgICAgICAgICAgICAgICAge3lLZXlzLnJlZHVjZSgodG90YWwsIGtleSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG90YWwgKyBNYXRoLnJvdW5kKHRvb2x0aXBEYXRhW2tleV0udmFsdWUgYXMgbnVtYmVyKTtcbiAgICAgICAgICAgICAgICAgIH0sIDApfVxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgIDwvdGFibGU+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj4sXG4gICAgZG9jdW1lbnQuYm9keSxcbiAgKTtcbn07XG4iXX0= */"),
44451
- children: (_tooltipData$xKey$for = (_tooltipData$xKey = tooltipData[xKey]) == null ? void 0 : _tooltipData$xKey.formattedValue) != null ? _tooltipData$xKey$for : tooltipData[xKey].value
44452
- }), tooltipData['__quadrant__'] && jsxRuntime.jsx("div", {
44453
- className: /*#__PURE__*/css$1.css( {
44454
- name: "woqoxg-Tooltip",
44455
- styles: "font-family:inherit;line-height:inherit;letter-spacing:inherit;font-size:13px;font-weight:bold;label:Tooltip;",
44456
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdIdUIiLCJmaWxlIjoiVG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgQ1NTUHJvcGVydGllcywgRnJhZ21lbnQsIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNyZWF0ZVBvcnRhbCB9IGZyb20gJ3JlYWN0LWRvbSc7XG5cbmltcG9ydCB7IGdldENvbG9yIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgTGVnZW5kSXRlbUJveCB9IGZyb20gJy4uL0xlZ2VuZC9MZWdlbmRJdGVtQm94JztcbmltcG9ydCB7IFNoYXBlRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgRGF0YUl0ZW0sIEtleSB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgTGluZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvTGluZUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEFyZWFTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0FyZWFDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEJ1YmJsZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQnViYmxlQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9jc3MnO1xuXG5jb25zdCBNSU5fVE9PTFRJUF9XSURUSCA9IDE4MDtcbmNvbnN0IFRPT0xUSVBfT0ZGU0VUID0gMjA7XG5jb25zdCBTQ1JPTExCQVJfV0lEVEggPSA0MDtcblxuY29uc3QgZ2V0VG9vbHRpcFZhbHVlID0gKHRvb2x0aXBEYXRhOiB7IFtrZXlJZDogc3RyaW5nXTogRGF0YUl0ZW0gfSwgeUtleTogc3RyaW5nKTogc3RyaW5nIHwgbnVtYmVyID0+IHtcbiAgY29uc3QgZGF0YSA9IHRvb2x0aXBEYXRhW3lLZXldO1xuICByZXR1cm4gZGF0YT8uZm9ybWF0dGVkVmFsdWUgfHwgZGF0YT8udmFsdWUgfHwgJyc7XG59O1xuXG5pbnRlcmZhY2UgVG9vbHRpcFByb3BzPFQ+IHtcbiAga2V5czogeyBba2V5OiBzdHJpbmddOiBLZXkgfTtcbiAgc2hvd1JvdW5kZWRUb3RhbDogYm9vbGVhbjtcbiAgdG9vbHRpcERhdGE6IHtcbiAgICBba2V5SWQ6IHN0cmluZ106IERhdGFJdGVtO1xuICB9O1xuICB0b29sdGlwTGVmdDogbnVtYmVyO1xuICB0b29sdGlwVG9wOiBudW1iZXI7XG4gIHhLZXk6IHN0cmluZztcbiAgeUtleXM/OiBzdHJpbmdbXTtcbiAgaXRlbXM6IHtcbiAgICBsZWdlbmRJdGVtczogQXJyYXk8U2hhcGVEZWZpbml0aW9uPFQ+PjtcbiAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQXJyYXk8Q29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZT47XG4gICAgdmlzaWJsZVlLZXlzOiBzdHJpbmdbXTtcbiAgfVtdO1xuICB0aGVtZTogQ1NTUHJvcGVydGllcztcbiAgc2hvdWxkU2hvd0NvbG9yTGVnZW5kPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IFRvb2x0aXAgPSAoe1xuICBrZXlzLFxuICBzaG93Um91bmRlZFRvdGFsLFxuICB0b29sdGlwRGF0YSxcbiAgdG9vbHRpcExlZnQsXG4gIHRvb2x0aXBUb3AsXG4gIHhLZXksXG4gIHlLZXlzLFxuICB0aGVtZSxcbiAgaXRlbXMsXG4gIHNob3VsZFNob3dDb2xvckxlZ2VuZCA9IHRydWUsXG59OiBUb29sdGlwUHJvcHM8TGluZVN0eWxlcyB8IEJhclN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+KSA9PiB7XG4gIGNvbnN0IHRvb2x0aXBSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICBjb25zdCBbcG9zaXRpb24sIHNldFBvc2l0aW9uXSA9IHVzZVN0YXRlPHsgbGVmdDogbnVtYmVyIH0+KHtcbiAgICBsZWZ0OiB0b29sdGlwTGVmdCxcbiAgfSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBhZGp1c3RUb29sdGlwUG9zaXRpb24gPSAoKSA9PiB7XG4gICAgICBjb25zdCB0b29sdGlwRWxlbWVudCA9IHRvb2x0aXBSZWYuY3VycmVudDtcblxuICAgICAgaWYgKHRvb2x0aXBFbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IHNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG5cbiAgICAgICAgY29uc3QgcmVjdCA9IHRvb2x0aXBFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICAgIGxldCB3aWR0aCA9IHJlY3Qud2lkdGg7XG5cbiAgICAgICAgaWYgKHdpZHRoIDwgTUlOX1RPT0xUSVBfV0lEVEgpIHtcbiAgICAgICAgICB3aWR0aCA9IE1JTl9UT09MVElQX1dJRFRIO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGxlZnQgPSB0b29sdGlwTGVmdCArIFRPT0xUSVBfT0ZGU0VUO1xuXG4gICAgICAgIGlmICh0b29sdGlwTGVmdCArIHdpZHRoID4gc2NyZWVuV2lkdGggLSBTQ1JPTExCQVJfV0lEVEgpIHtcbiAgICAgICAgICBsZWZ0ID0gdG9vbHRpcExlZnQgLSB3aWR0aCAtIFRPT0xUSVBfT0ZGU0VUO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0UG9zaXRpb24oeyBsZWZ0IH0pO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBhZGp1c3RUb29sdGlwUG9zaXRpb24oKTtcbiAgfSwgW3Rvb2x0aXBMZWZ0XSk7XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChcbiAgICA8ZGl2XG4gICAgICByZWY9e3Rvb2x0aXBSZWZ9XG4gICAgICBzdHlsZT17e1xuICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgbGVmdDogcG9zaXRpb24ubGVmdCxcbiAgICAgICAgdG9wOiB0b29sdGlwVG9wLFxuICAgICAgICB6SW5kZXg6IDIxNDc0ODM2NDcgKiAxMCxcbiAgICAgICAgLi4udGhlbWUsXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxkaXYgc3R5bGU9e3sgd29yZEJyZWFrOiAnYnJlYWstYWxsJyB9fT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICAgIGZvbnRGYW1pbHk6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGxpbmVIZWlnaHQ6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGxldHRlclNwYWNpbmc6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGZvbnRXZWlnaHQ6ICdib2xkJyxcbiAgICAgICAgICAgIGZvbnRTaXplOiAnMTVweCcsXG4gICAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgICAgbWluV2lkdGg6IE1JTl9UT09MVElQX1dJRFRILFxuICAgICAgICAgIH0pfVxuICAgICAgICA+XG4gICAgICAgICAge3Rvb2x0aXBEYXRhW3hLZXldPy5mb3JtYXR0ZWRWYWx1ZSA/PyB0b29sdGlwRGF0YVt4S2V5XS52YWx1ZX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIHt0b29sdGlwRGF0YVsnX19xdWFkcmFudF9fJ10gJiYgKFxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICAgICAgZm9udEZhbWlseTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgICBsaW5lSGVpZ2h0OiAnaW5oZXJpdCcsXG4gICAgICAgICAgICAgIGxldHRlclNwYWNpbmc6ICdpbmhlcml0JyxcbiAgICAgICAgICAgICAgZm9udFNpemU6ICcxM3B4JyxcbiAgICAgICAgICAgICAgZm9udFdlaWdodDogJ2JvbGQnLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge3Rvb2x0aXBEYXRhWydfX3F1YWRyYW50X18nXS52YWx1ZX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgICAgPHRhYmxlXG4gICAgICAgICAgY2VsbFBhZGRpbmc9ezB9XG4gICAgICAgICAgY2VsbFNwYWNpbmc9ezB9XG4gICAgICAgICAgY2xhc3NOYW1lPXtjc3Moe1xuICAgICAgICAgICAgbWFyZ2luOiAnMCcsXG4gICAgICAgICAgICBib3JkZXJTcGFjaW5nOiAnMCcsXG4gICAgICAgICAgICBib3JkZXJDb2xsYXBzZTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgYm9yZGVyOiAnbm9uZScsXG4gICAgICAgICAgfSl9XG4gICAgICAgID5cbiAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDxGcmFnbWVudCBrZXk9e2luZGV4fT5cbiAgICAgICAgICAgICAgICAgIHtpdGVtLmxlZ2VuZEl0ZW1zPy5tYXAoKGxlZ2VuZEl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdG9vbHRpcERhdGFbbGVnZW5kSXRlbS55S2V5XSB8fCB0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgLy8geUtleSBjb3VsZCBub3QgYmUgZm91bmQgaW4gdG9vbHRpcERhdGFcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgIGl0ZW0udmlzaWJsZVlLZXlzPy5pbmNsdWRlcyhsZWdlbmRJdGVtLnlLZXkpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBrZXk9e2Ake2xlZ2VuZEl0ZW0ueUtleX0tJHtpbmRleH0tJHt0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlfWB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7c2hvdWxkU2hvd0NvbG9yTGVnZW5kICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsQWxpZ246ICdtaWRkbGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBpbmRleCA9PT0gMCA/ICcxMnB4IDhweCAwIDAnIDogJzhweCA4cHggMCAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICdhdXRvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExlZ2VuZEl0ZW1Cb3hcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I9e2dldENvbG9yKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0Q29sb3I6IGxlZ2VuZEl0ZW0uY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHRvb2x0aXBEYXRhW2xlZ2VuZEl0ZW0ueUtleV0udmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUtleTogbGVnZW5kSXRlbS55S2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBpdGVtLmNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzID8/IFtdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e2xlZ2VuZEl0ZW0uc3R5bGUgYXMgTGluZVN0eWxlc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUtleT17bGVnZW5kSXRlbS55S2V5fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgcGFkZGluZzogJzhweCAwIDAgMCcgfX0+e2tleXNbbGVnZW5kSXRlbS55S2V5XS5rZXlGb3JtYXR0ZWR9PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPXt7IGZvbnRXZWlnaHQ6ICdib2xkJywgcGFkZGluZzogJzhweCAwIDAgMTZweCcgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2dldFRvb2x0aXBWYWx1ZSh0b29sdGlwRGF0YSwgbGVnZW5kSXRlbS55S2V5KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgPC9GcmFnbWVudD5cbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pfVxuXG4gICAgICAgICAgICB7c2hvd1JvdW5kZWRUb3RhbCAmJiB5S2V5cyAmJiAoXG4gICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICA8dGQgY29sU3Bhbj17Mn0gc3R5bGU9e3sgcGFkZGluZzogJzEycHggMCAwIDAnIH19PlxuICAgICAgICAgICAgICAgICAgUm91bmRlZCBUb3RhbFxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPHRkIHN0eWxlPXt7IGZvbnRXZWlnaHQ6ICdib2xkJywgcGFkZGluZzogJzEycHggMCAwIDE2cHgnIH19PlxuICAgICAgICAgICAgICAgICAge3lLZXlzLnJlZHVjZSgodG90YWwsIGtleSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG90YWwgKyBNYXRoLnJvdW5kKHRvb2x0aXBEYXRhW2tleV0udmFsdWUgYXMgbnVtYmVyKTtcbiAgICAgICAgICAgICAgICAgIH0sIDApfVxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgIDwvdGFibGU+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj4sXG4gICAgZG9jdW1lbnQuYm9keSxcbiAgKTtcbn07XG4iXX0= */",
44457
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
44458
- }),
44459
- children: tooltipData['__quadrant__'].value
44460
- }), jsxRuntime.jsx("table", {
44461
- cellPadding: 0,
44462
- cellSpacing: 0,
44463
- className: /*#__PURE__*/css$1.css( {
44464
- name: "9a1sa-Tooltip",
44465
- styles: "margin:0;border-spacing:0;border-collapse:inherit;border:none;label:Tooltip;",
44466
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThIcUIiLCJmaWxlIjoiVG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgQ1NTUHJvcGVydGllcywgRnJhZ21lbnQsIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNyZWF0ZVBvcnRhbCB9IGZyb20gJ3JlYWN0LWRvbSc7XG5cbmltcG9ydCB7IGdldENvbG9yIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgTGVnZW5kSXRlbUJveCB9IGZyb20gJy4uL0xlZ2VuZC9MZWdlbmRJdGVtQm94JztcbmltcG9ydCB7IFNoYXBlRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgRGF0YUl0ZW0sIEtleSB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgTGluZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvTGluZUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEFyZWFTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0FyZWFDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEJ1YmJsZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQnViYmxlQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9jc3MnO1xuXG5jb25zdCBNSU5fVE9PTFRJUF9XSURUSCA9IDE4MDtcbmNvbnN0IFRPT0xUSVBfT0ZGU0VUID0gMjA7XG5jb25zdCBTQ1JPTExCQVJfV0lEVEggPSA0MDtcblxuY29uc3QgZ2V0VG9vbHRpcFZhbHVlID0gKHRvb2x0aXBEYXRhOiB7IFtrZXlJZDogc3RyaW5nXTogRGF0YUl0ZW0gfSwgeUtleTogc3RyaW5nKTogc3RyaW5nIHwgbnVtYmVyID0+IHtcbiAgY29uc3QgZGF0YSA9IHRvb2x0aXBEYXRhW3lLZXldO1xuICByZXR1cm4gZGF0YT8uZm9ybWF0dGVkVmFsdWUgfHwgZGF0YT8udmFsdWUgfHwgJyc7XG59O1xuXG5pbnRlcmZhY2UgVG9vbHRpcFByb3BzPFQ+IHtcbiAga2V5czogeyBba2V5OiBzdHJpbmddOiBLZXkgfTtcbiAgc2hvd1JvdW5kZWRUb3RhbDogYm9vbGVhbjtcbiAgdG9vbHRpcERhdGE6IHtcbiAgICBba2V5SWQ6IHN0cmluZ106IERhdGFJdGVtO1xuICB9O1xuICB0b29sdGlwTGVmdDogbnVtYmVyO1xuICB0b29sdGlwVG9wOiBudW1iZXI7XG4gIHhLZXk6IHN0cmluZztcbiAgeUtleXM/OiBzdHJpbmdbXTtcbiAgaXRlbXM6IHtcbiAgICBsZWdlbmRJdGVtczogQXJyYXk8U2hhcGVEZWZpbml0aW9uPFQ+PjtcbiAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQXJyYXk8Q29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZT47XG4gICAgdmlzaWJsZVlLZXlzOiBzdHJpbmdbXTtcbiAgfVtdO1xuICB0aGVtZTogQ1NTUHJvcGVydGllcztcbiAgc2hvdWxkU2hvd0NvbG9yTGVnZW5kPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IFRvb2x0aXAgPSAoe1xuICBrZXlzLFxuICBzaG93Um91bmRlZFRvdGFsLFxuICB0b29sdGlwRGF0YSxcbiAgdG9vbHRpcExlZnQsXG4gIHRvb2x0aXBUb3AsXG4gIHhLZXksXG4gIHlLZXlzLFxuICB0aGVtZSxcbiAgaXRlbXMsXG4gIHNob3VsZFNob3dDb2xvckxlZ2VuZCA9IHRydWUsXG59OiBUb29sdGlwUHJvcHM8TGluZVN0eWxlcyB8IEJhclN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+KSA9PiB7XG4gIGNvbnN0IHRvb2x0aXBSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICBjb25zdCBbcG9zaXRpb24sIHNldFBvc2l0aW9uXSA9IHVzZVN0YXRlPHsgbGVmdDogbnVtYmVyIH0+KHtcbiAgICBsZWZ0OiB0b29sdGlwTGVmdCxcbiAgfSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBhZGp1c3RUb29sdGlwUG9zaXRpb24gPSAoKSA9PiB7XG4gICAgICBjb25zdCB0b29sdGlwRWxlbWVudCA9IHRvb2x0aXBSZWYuY3VycmVudDtcblxuICAgICAgaWYgKHRvb2x0aXBFbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IHNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG5cbiAgICAgICAgY29uc3QgcmVjdCA9IHRvb2x0aXBFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICAgIGxldCB3aWR0aCA9IHJlY3Qud2lkdGg7XG5cbiAgICAgICAgaWYgKHdpZHRoIDwgTUlOX1RPT0xUSVBfV0lEVEgpIHtcbiAgICAgICAgICB3aWR0aCA9IE1JTl9UT09MVElQX1dJRFRIO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGxlZnQgPSB0b29sdGlwTGVmdCArIFRPT0xUSVBfT0ZGU0VUO1xuXG4gICAgICAgIGlmICh0b29sdGlwTGVmdCArIHdpZHRoID4gc2NyZWVuV2lkdGggLSBTQ1JPTExCQVJfV0lEVEgpIHtcbiAgICAgICAgICBsZWZ0ID0gdG9vbHRpcExlZnQgLSB3aWR0aCAtIFRPT0xUSVBfT0ZGU0VUO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0UG9zaXRpb24oeyBsZWZ0IH0pO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBhZGp1c3RUb29sdGlwUG9zaXRpb24oKTtcbiAgfSwgW3Rvb2x0aXBMZWZ0XSk7XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChcbiAgICA8ZGl2XG4gICAgICByZWY9e3Rvb2x0aXBSZWZ9XG4gICAgICBzdHlsZT17e1xuICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgbGVmdDogcG9zaXRpb24ubGVmdCxcbiAgICAgICAgdG9wOiB0b29sdGlwVG9wLFxuICAgICAgICB6SW5kZXg6IDIxNDc0ODM2NDcgKiAxMCxcbiAgICAgICAgLi4udGhlbWUsXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxkaXYgc3R5bGU9e3sgd29yZEJyZWFrOiAnYnJlYWstYWxsJyB9fT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICAgIGZvbnRGYW1pbHk6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGxpbmVIZWlnaHQ6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGxldHRlclNwYWNpbmc6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGZvbnRXZWlnaHQ6ICdib2xkJyxcbiAgICAgICAgICAgIGZvbnRTaXplOiAnMTVweCcsXG4gICAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgICAgbWluV2lkdGg6IE1JTl9UT09MVElQX1dJRFRILFxuICAgICAgICAgIH0pfVxuICAgICAgICA+XG4gICAgICAgICAge3Rvb2x0aXBEYXRhW3hLZXldPy5mb3JtYXR0ZWRWYWx1ZSA/PyB0b29sdGlwRGF0YVt4S2V5XS52YWx1ZX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIHt0b29sdGlwRGF0YVsnX19xdWFkcmFudF9fJ10gJiYgKFxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICAgICAgZm9udEZhbWlseTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgICBsaW5lSGVpZ2h0OiAnaW5oZXJpdCcsXG4gICAgICAgICAgICAgIGxldHRlclNwYWNpbmc6ICdpbmhlcml0JyxcbiAgICAgICAgICAgICAgZm9udFNpemU6ICcxM3B4JyxcbiAgICAgICAgICAgICAgZm9udFdlaWdodDogJ2JvbGQnLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge3Rvb2x0aXBEYXRhWydfX3F1YWRyYW50X18nXS52YWx1ZX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgICAgPHRhYmxlXG4gICAgICAgICAgY2VsbFBhZGRpbmc9ezB9XG4gICAgICAgICAgY2VsbFNwYWNpbmc9ezB9XG4gICAgICAgICAgY2xhc3NOYW1lPXtjc3Moe1xuICAgICAgICAgICAgbWFyZ2luOiAnMCcsXG4gICAgICAgICAgICBib3JkZXJTcGFjaW5nOiAnMCcsXG4gICAgICAgICAgICBib3JkZXJDb2xsYXBzZTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgYm9yZGVyOiAnbm9uZScsXG4gICAgICAgICAgfSl9XG4gICAgICAgID5cbiAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDxGcmFnbWVudCBrZXk9e2luZGV4fT5cbiAgICAgICAgICAgICAgICAgIHtpdGVtLmxlZ2VuZEl0ZW1zPy5tYXAoKGxlZ2VuZEl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdG9vbHRpcERhdGFbbGVnZW5kSXRlbS55S2V5XSB8fCB0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgLy8geUtleSBjb3VsZCBub3QgYmUgZm91bmQgaW4gdG9vbHRpcERhdGFcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgIGl0ZW0udmlzaWJsZVlLZXlzPy5pbmNsdWRlcyhsZWdlbmRJdGVtLnlLZXkpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBrZXk9e2Ake2xlZ2VuZEl0ZW0ueUtleX0tJHtpbmRleH0tJHt0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlfWB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7c2hvdWxkU2hvd0NvbG9yTGVnZW5kICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsQWxpZ246ICdtaWRkbGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBpbmRleCA9PT0gMCA/ICcxMnB4IDhweCAwIDAnIDogJzhweCA4cHggMCAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICdhdXRvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExlZ2VuZEl0ZW1Cb3hcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I9e2dldENvbG9yKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0Q29sb3I6IGxlZ2VuZEl0ZW0uY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHRvb2x0aXBEYXRhW2xlZ2VuZEl0ZW0ueUtleV0udmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUtleTogbGVnZW5kSXRlbS55S2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBpdGVtLmNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzID8/IFtdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e2xlZ2VuZEl0ZW0uc3R5bGUgYXMgTGluZVN0eWxlc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUtleT17bGVnZW5kSXRlbS55S2V5fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgcGFkZGluZzogJzhweCAwIDAgMCcgfX0+e2tleXNbbGVnZW5kSXRlbS55S2V5XS5rZXlGb3JtYXR0ZWR9PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPXt7IGZvbnRXZWlnaHQ6ICdib2xkJywgcGFkZGluZzogJzhweCAwIDAgMTZweCcgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2dldFRvb2x0aXBWYWx1ZSh0b29sdGlwRGF0YSwgbGVnZW5kSXRlbS55S2V5KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgPC9GcmFnbWVudD5cbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pfVxuXG4gICAgICAgICAgICB7c2hvd1JvdW5kZWRUb3RhbCAmJiB5S2V5cyAmJiAoXG4gICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICA8dGQgY29sU3Bhbj17Mn0gc3R5bGU9e3sgcGFkZGluZzogJzEycHggMCAwIDAnIH19PlxuICAgICAgICAgICAgICAgICAgUm91bmRlZCBUb3RhbFxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPHRkIHN0eWxlPXt7IGZvbnRXZWlnaHQ6ICdib2xkJywgcGFkZGluZzogJzEycHggMCAwIDE2cHgnIH19PlxuICAgICAgICAgICAgICAgICAge3lLZXlzLnJlZHVjZSgodG90YWwsIGtleSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG90YWwgKyBNYXRoLnJvdW5kKHRvb2x0aXBEYXRhW2tleV0udmFsdWUgYXMgbnVtYmVyKTtcbiAgICAgICAgICAgICAgICAgIH0sIDApfVxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgIDwvdGFibGU+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj4sXG4gICAgZG9jdW1lbnQuYm9keSxcbiAgKTtcbn07XG4iXX0= */",
44467
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
44468
- }),
44469
- children: jsxRuntime.jsxs("tbody", {
44470
- children: [items.map(function (item, index) {
44471
- var _item$legendItems;
44472
- return jsxRuntime.jsx(React.Fragment, {
44473
- children: (_item$legendItems = item.legendItems) == null ? void 0 : _item$legendItems.map(function (legendItem, index) {
44474
- var _item$visibleYKeys, _item$conditionalForm;
44475
- if (!tooltipData[legendItem.yKey] || tooltipData[legendItem.yKey].value === null) {
44476
- // yKey could not be found in tooltipData
44477
- return null;
44478
- }
44479
- return ((_item$visibleYKeys = item.visibleYKeys) == null ? void 0 : _item$visibleYKeys.includes(legendItem.yKey)) && jsxRuntime.jsxs("tr", {
44480
- children: [shouldShowColorLegend && jsxRuntime.jsx("td", {
44481
- style: {
44482
- verticalAlign: 'middle',
44483
- padding: index === 0 ? '12px 8px 0 0' : '8px 8px 0 0',
44484
- width: 'auto'
44485
- },
44486
- children: jsxRuntime.jsx(LegendItemBox, {
44487
- color: getColor({
44488
- defaultColor: legendItem.color,
44489
- value: tooltipData[legendItem.yKey].value,
44490
- yKey: legendItem.yKey,
44491
- conditionalFormattingRules: (_item$conditionalForm = item.conditionalFormattingRules) != null ? _item$conditionalForm : []
44492
- }),
44493
- style: legendItem.style,
44494
- yKey: legendItem.yKey
44495
- })
44496
- }), jsxRuntime.jsx("td", {
44497
- style: {
44498
- padding: '8px 0 0 0'
44499
- },
44500
- children: keys[legendItem.yKey].keyFormatted
44501
- }), jsxRuntime.jsx("td", {
44502
- style: {
44503
- fontWeight: 'bold',
44504
- padding: '8px 0 0 16px'
44505
- },
44506
- children: getTooltipValue(tooltipData, legendItem.yKey)
44507
- })]
44508
- }, legendItem.yKey + "-" + index + "-" + tooltipData[legendItem.yKey].value);
44509
- })
44510
- }, index);
44511
- }), showRoundedTotal && yKeys && jsxRuntime.jsxs("tr", {
44512
- children: [jsxRuntime.jsx("td", {
44513
- colSpan: 2,
44514
- style: {
44515
- padding: '12px 0 0 0'
44516
- },
44517
- children: "Rounded Total"
44518
- }), jsxRuntime.jsx("td", {
44519
- style: {
44520
- fontWeight: 'bold',
44521
- padding: '12px 0 0 16px'
44522
- },
44523
- children: yKeys.reduce(function (total, key) {
44524
- return total + Math.round(tooltipData[key].value);
44525
- }, 0)
44526
- })]
44527
- })]
44528
- })
44529
- })]
44530
- })
44531
- }), document.body);
44532
- };
44533
-
44534
- function _EMOTION_STRINGIFIED_CSS_ERROR__$6() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
44535
- var LegendItem = function LegendItem(_ref) {
44536
- var yKey = _ref.yKey,
44537
- yKeyFormatted = _ref.yKeyFormatted,
44538
- color = _ref.color,
44539
- style = _ref.style,
44540
- onClick = _ref.onClick,
44541
- visible = _ref.visible,
44542
- conditionalFormattingRules = _ref.conditionalFormattingRules;
44543
- var relevantRules = React.useMemo(function () {
44544
- return conditionalFormattingRules.filter(function (rule) {
44545
- return yKey.includes(rule.yKey);
44546
- });
44547
- }, [conditionalFormattingRules]);
44548
- return jsxRuntime.jsxs("button", {
44549
- type: "button",
44550
- style: {
44551
- all: 'unset',
44552
- display: 'flex',
44553
- flexWrap: 'nowrap',
44554
- alignItems: 'center',
44555
- outline: 'revert',
44556
- gap: '4px',
44557
- padding: '4px',
44558
- cursor: 'pointer',
44559
- marginRight: '10px'
44560
- },
44561
- onClick: onClick,
44562
- children: [style.type === 'line' && jsxRuntime.jsxs("span", {
44563
- className: /*#__PURE__*/css$1.css( {
44564
- name: "mefz6m-LegendItem",
44565
- styles: "height:10px;display:flex;label:LegendItem;",
44566
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxlZ2VuZEl0ZW0udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlEeUIiLCJmaWxlIjoiTGVnZW5kSXRlbS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IExlZ2VuZEl0ZW1Cb3ggfSBmcm9tICcuLi9MZWdlbmRJdGVtQm94JztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBMZWdlbmRJdGVtU3F1YXJlLCBMZWdlbmRJdGVtVHJpYW5nbGUgfSBmcm9tICcuLi9MZWdlbmRJdGVtQm94L0xlZ2VuZEl0ZW1Cb3gnO1xuaW1wb3J0IHsgU2hhcGVEZWZpbml0aW9uLCBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBMaW5lU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9MaW5lQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBCYXJTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQXJlYVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQXJlYUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQnViYmxlU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CdWJibGVDaGFydFYyL3R5cGVzJztcblxuaW50ZXJmYWNlIExlZ2VuZEl0ZW1Qcm9wczxUPiBleHRlbmRzIFNoYXBlRGVmaW5pdGlvbjxUPiB7XG4gIG9uQ2xpY2s6ICgpID0+IHZvaWQ7XG4gIHZpc2libGU6IGJvb2xlYW47XG4gIHlLZXlGb3JtYXR0ZWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM6IEFycmF5PENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGU+O1xufVxuXG5leHBvcnQgY29uc3QgTGVnZW5kSXRlbSA9ICh7XG4gIHlLZXksXG4gIHlLZXlGb3JtYXR0ZWQsXG4gIGNvbG9yLFxuICBzdHlsZSxcbiAgb25DbGljayxcbiAgdmlzaWJsZSxcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXMsXG59OiBMZWdlbmRJdGVtUHJvcHM8QmFyU3R5bGVzIHwgTGluZVN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+KSA9PiB7XG4gIGNvbnN0IHJlbGV2YW50UnVsZXMgPSB1c2VNZW1vKFxuICAgICgpID0+IGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLmZpbHRlcigocnVsZSkgPT4geUtleS5pbmNsdWRlcyhydWxlLnlLZXkpKSxcbiAgICBbY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXNdLFxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPGJ1dHRvblxuICAgICAga2V5PXtgbGVnZW5kLSR7eUtleX1gfVxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBzdHlsZT17e1xuICAgICAgICBhbGw6ICd1bnNldCcsXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgZmxleFdyYXA6ICdub3dyYXAnLFxuICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgb3V0bGluZTogJ3JldmVydCcsXG4gICAgICAgIGdhcDogJzRweCcsXG4gICAgICAgIHBhZGRpbmc6ICc0cHgnLFxuICAgICAgICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgICAgICAgbWFyZ2luUmlnaHQ6ICcxMHB4JyxcbiAgICAgIH19XG4gICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgID5cbiAgICAgIHtzdHlsZS50eXBlID09PSAnbGluZScgJiYgKFxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2Nzcyh7IGhlaWdodDogMTAsIGRpc3BsYXk6ICdmbGV4JyB9KX0+XG4gICAgICAgICAgPExlZ2VuZEl0ZW1Cb3ggY29sb3I9e2NvbG9yfSBzdHlsZT17c3R5bGUgYXMgTGluZVN0eWxlc30geUtleT17eUtleX0gLz5cbiAgICAgICAgICB7cmVsZXZhbnRSdWxlcy5sZW5ndGggPiAwICYmXG4gICAgICAgICAgICByZWxldmFudFJ1bGVzLm1hcCgocnVsZSkgPT4gKFxuICAgICAgICAgICAgICA8TGVnZW5kSXRlbUJveFxuICAgICAgICAgICAgICAgIGNvbG9yPXtydWxlLmNvbG9yfVxuICAgICAgICAgICAgICAgIGtleT17YHJ1bGUtJHtKU09OLnN0cmluZ2lmeShydWxlKX1gfVxuICAgICAgICAgICAgICAgIHN0eWxlPXtzdHlsZSBhcyBMaW5lU3R5bGVzfVxuICAgICAgICAgICAgICAgIHlLZXk9e3lLZXl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApKX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICAgIHtzdHlsZS50eXBlID09PSAnYmFyJyAmJiAoXG4gICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Y3NzKHsgZGlzcGxheTogJ2ZsZXgnLCBmbGV4RGlyZWN0aW9uOiAncm93JywgYWxpZ25JdGVtczogJ2NlbnRlcicsIGdhcDogMiB9KX0+XG4gICAgICAgICAgPExlZ2VuZEl0ZW1TcXVhcmUgY29sb3I9e2NvbG9yfSAvPlxuICAgICAgICAgIHtyZWxldmFudFJ1bGVzLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgIHJlbGV2YW50UnVsZXMubWFwKChydWxlKSA9PiA8TGVnZW5kSXRlbVNxdWFyZSBjb2xvcj17cnVsZS5jb2xvcn0ga2V5PXtgcnVsZS0ke0pTT04uc3RyaW5naWZ5KHJ1bGUpfWB9IC8+KX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICAgIHtzdHlsZS50eXBlID09PSAnYXJlYScgJiYgKFxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2Nzcyh7IGRpc3BsYXk6ICdmbGV4JywgZmxleERpcmVjdGlvbjogJ3JvdycsIGFsaWduSXRlbXM6ICdjZW50ZXInLCBnYXA6IDIgfSl9PlxuICAgICAgICAgIDxMZWdlbmRJdGVtVHJpYW5nbGUgY29sb3I9e2NvbG9yfSAvPlxuICAgICAgICAgIHtyZWxldmFudFJ1bGVzLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgIHJlbGV2YW50UnVsZXMubWFwKChydWxlKSA9PiA8TGVnZW5kSXRlbVRyaWFuZ2xlIGNvbG9yPXtydWxlLmNvbG9yfSBrZXk9e2BydWxlLSR7SlNPTi5zdHJpbmdpZnkocnVsZSl9YH0gLz4pfVxuICAgICAgICA8L3NwYW4+XG4gICAgICApfVxuICAgICAgPHNwYW5cbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBmb250U2l6ZTogJzEycHgnLFxuICAgICAgICAgIGxpbmVIZWlnaHQ6ICcxNnB4JyxcbiAgICAgICAgICBkaXNwbGF5OiAnYmxvY2snLFxuICAgICAgICAgIHRleHREZWNvcmF0aW9uOiB2aXNpYmxlID8gJ25vbmUnIDogJ2xpbmUtdGhyb3VnaCcsXG4gICAgICAgICAgdGV4dFdyYXA6ICdub3dyYXAnLFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICB7eUtleUZvcm1hdHRlZCA/IHlLZXlGb3JtYXR0ZWQgOiB5S2V5fVxuICAgICAgPC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuICApO1xufTtcbiJdfQ== */",
44567
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$6
44568
- }),
44569
- children: [jsxRuntime.jsx(LegendItemBox, {
44570
- color: color,
44571
- style: style,
44572
- yKey: yKey
44573
- }), relevantRules.length > 0 && relevantRules.map(function (rule) {
44574
- return jsxRuntime.jsx(LegendItemBox, {
44575
- color: rule.color,
44576
- style: style,
44577
- yKey: yKey
44578
- }, "rule-" + JSON.stringify(rule));
44579
- })]
44580
- }), style.type === 'bar' && jsxRuntime.jsxs("span", {
44581
- className: /*#__PURE__*/css$1.css( {
44582
- name: "pglbco-LegendItem",
44583
- styles: "display:flex;flex-direction:row;align-items:center;gap:2px;label:LegendItem;",
44584
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxlZ2VuZEl0ZW0udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStEeUIiLCJmaWxlIjoiTGVnZW5kSXRlbS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IExlZ2VuZEl0ZW1Cb3ggfSBmcm9tICcuLi9MZWdlbmRJdGVtQm94JztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBMZWdlbmRJdGVtU3F1YXJlLCBMZWdlbmRJdGVtVHJpYW5nbGUgfSBmcm9tICcuLi9MZWdlbmRJdGVtQm94L0xlZ2VuZEl0ZW1Cb3gnO1xuaW1wb3J0IHsgU2hhcGVEZWZpbml0aW9uLCBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBMaW5lU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9MaW5lQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBCYXJTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQXJlYVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQXJlYUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQnViYmxlU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CdWJibGVDaGFydFYyL3R5cGVzJztcblxuaW50ZXJmYWNlIExlZ2VuZEl0ZW1Qcm9wczxUPiBleHRlbmRzIFNoYXBlRGVmaW5pdGlvbjxUPiB7XG4gIG9uQ2xpY2s6ICgpID0+IHZvaWQ7XG4gIHZpc2libGU6IGJvb2xlYW47XG4gIHlLZXlGb3JtYXR0ZWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM6IEFycmF5PENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGU+O1xufVxuXG5leHBvcnQgY29uc3QgTGVnZW5kSXRlbSA9ICh7XG4gIHlLZXksXG4gIHlLZXlGb3JtYXR0ZWQsXG4gIGNvbG9yLFxuICBzdHlsZSxcbiAgb25DbGljayxcbiAgdmlzaWJsZSxcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXMsXG59OiBMZWdlbmRJdGVtUHJvcHM8QmFyU3R5bGVzIHwgTGluZVN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+KSA9PiB7XG4gIGNvbnN0IHJlbGV2YW50UnVsZXMgPSB1c2VNZW1vKFxuICAgICgpID0+IGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLmZpbHRlcigocnVsZSkgPT4geUtleS5pbmNsdWRlcyhydWxlLnlLZXkpKSxcbiAgICBbY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXNdLFxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPGJ1dHRvblxuICAgICAga2V5PXtgbGVnZW5kLSR7eUtleX1gfVxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBzdHlsZT17e1xuICAgICAgICBhbGw6ICd1bnNldCcsXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgZmxleFdyYXA6ICdub3dyYXAnLFxuICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgb3V0bGluZTogJ3JldmVydCcsXG4gICAgICAgIGdhcDogJzRweCcsXG4gICAgICAgIHBhZGRpbmc6ICc0cHgnLFxuICAgICAgICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgICAgICAgbWFyZ2luUmlnaHQ6ICcxMHB4JyxcbiAgICAgIH19XG4gICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgID5cbiAgICAgIHtzdHlsZS50eXBlID09PSAnbGluZScgJiYgKFxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2Nzcyh7IGhlaWdodDogMTAsIGRpc3BsYXk6ICdmbGV4JyB9KX0+XG4gICAgICAgICAgPExlZ2VuZEl0ZW1Cb3ggY29sb3I9e2NvbG9yfSBzdHlsZT17c3R5bGUgYXMgTGluZVN0eWxlc30geUtleT17eUtleX0gLz5cbiAgICAgICAgICB7cmVsZXZhbnRSdWxlcy5sZW5ndGggPiAwICYmXG4gICAgICAgICAgICByZWxldmFudFJ1bGVzLm1hcCgocnVsZSkgPT4gKFxuICAgICAgICAgICAgICA8TGVnZW5kSXRlbUJveFxuICAgICAgICAgICAgICAgIGNvbG9yPXtydWxlLmNvbG9yfVxuICAgICAgICAgICAgICAgIGtleT17YHJ1bGUtJHtKU09OLnN0cmluZ2lmeShydWxlKX1gfVxuICAgICAgICAgICAgICAgIHN0eWxlPXtzdHlsZSBhcyBMaW5lU3R5bGVzfVxuICAgICAgICAgICAgICAgIHlLZXk9e3lLZXl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApKX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICAgIHtzdHlsZS50eXBlID09PSAnYmFyJyAmJiAoXG4gICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Y3NzKHsgZGlzcGxheTogJ2ZsZXgnLCBmbGV4RGlyZWN0aW9uOiAncm93JywgYWxpZ25JdGVtczogJ2NlbnRlcicsIGdhcDogMiB9KX0+XG4gICAgICAgICAgPExlZ2VuZEl0ZW1TcXVhcmUgY29sb3I9e2NvbG9yfSAvPlxuICAgICAgICAgIHtyZWxldmFudFJ1bGVzLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgIHJlbGV2YW50UnVsZXMubWFwKChydWxlKSA9PiA8TGVnZW5kSXRlbVNxdWFyZSBjb2xvcj17cnVsZS5jb2xvcn0ga2V5PXtgcnVsZS0ke0pTT04uc3RyaW5naWZ5KHJ1bGUpfWB9IC8+KX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICAgIHtzdHlsZS50eXBlID09PSAnYXJlYScgJiYgKFxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2Nzcyh7IGRpc3BsYXk6ICdmbGV4JywgZmxleERpcmVjdGlvbjogJ3JvdycsIGFsaWduSXRlbXM6ICdjZW50ZXInLCBnYXA6IDIgfSl9PlxuICAgICAgICAgIDxMZWdlbmRJdGVtVHJpYW5nbGUgY29sb3I9e2NvbG9yfSAvPlxuICAgICAgICAgIHtyZWxldmFudFJ1bGVzLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgIHJlbGV2YW50UnVsZXMubWFwKChydWxlKSA9PiA8TGVnZW5kSXRlbVRyaWFuZ2xlIGNvbG9yPXtydWxlLmNvbG9yfSBrZXk9e2BydWxlLSR7SlNPTi5zdHJpbmdpZnkocnVsZSl9YH0gLz4pfVxuICAgICAgICA8L3NwYW4+XG4gICAgICApfVxuICAgICAgPHNwYW5cbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBmb250U2l6ZTogJzEycHgnLFxuICAgICAgICAgIGxpbmVIZWlnaHQ6ICcxNnB4JyxcbiAgICAgICAgICBkaXNwbGF5OiAnYmxvY2snLFxuICAgICAgICAgIHRleHREZWNvcmF0aW9uOiB2aXNpYmxlID8gJ25vbmUnIDogJ2xpbmUtdGhyb3VnaCcsXG4gICAgICAgICAgdGV4dFdyYXA6ICdub3dyYXAnLFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICB7eUtleUZvcm1hdHRlZCA/IHlLZXlGb3JtYXR0ZWQgOiB5S2V5fVxuICAgICAgPC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuICApO1xufTtcbiJdfQ== */",
44585
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$6
44586
- }),
44587
- children: [jsxRuntime.jsx(LegendItemSquare, {
44588
- color: color
44589
- }), relevantRules.length > 0 && relevantRules.map(function (rule) {
44590
- return jsxRuntime.jsx(LegendItemSquare, {
44591
- color: rule.color
44592
- }, "rule-" + JSON.stringify(rule));
44593
- })]
44594
- }), style.type === 'area' && jsxRuntime.jsxs("span", {
44595
- className: /*#__PURE__*/css$1.css( {
44596
- name: "pglbco-LegendItem",
44597
- styles: "display:flex;flex-direction:row;align-items:center;gap:2px;label:LegendItem;",
44598
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxlZ2VuZEl0ZW0udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNFeUIiLCJmaWxlIjoiTGVnZW5kSXRlbS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IExlZ2VuZEl0ZW1Cb3ggfSBmcm9tICcuLi9MZWdlbmRJdGVtQm94JztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBMZWdlbmRJdGVtU3F1YXJlLCBMZWdlbmRJdGVtVHJpYW5nbGUgfSBmcm9tICcuLi9MZWdlbmRJdGVtQm94L0xlZ2VuZEl0ZW1Cb3gnO1xuaW1wb3J0IHsgU2hhcGVEZWZpbml0aW9uLCBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBMaW5lU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9MaW5lQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBCYXJTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQXJlYVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQXJlYUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQnViYmxlU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CdWJibGVDaGFydFYyL3R5cGVzJztcblxuaW50ZXJmYWNlIExlZ2VuZEl0ZW1Qcm9wczxUPiBleHRlbmRzIFNoYXBlRGVmaW5pdGlvbjxUPiB7XG4gIG9uQ2xpY2s6ICgpID0+IHZvaWQ7XG4gIHZpc2libGU6IGJvb2xlYW47XG4gIHlLZXlGb3JtYXR0ZWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM6IEFycmF5PENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGU+O1xufVxuXG5leHBvcnQgY29uc3QgTGVnZW5kSXRlbSA9ICh7XG4gIHlLZXksXG4gIHlLZXlGb3JtYXR0ZWQsXG4gIGNvbG9yLFxuICBzdHlsZSxcbiAgb25DbGljayxcbiAgdmlzaWJsZSxcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXMsXG59OiBMZWdlbmRJdGVtUHJvcHM8QmFyU3R5bGVzIHwgTGluZVN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+KSA9PiB7XG4gIGNvbnN0IHJlbGV2YW50UnVsZXMgPSB1c2VNZW1vKFxuICAgICgpID0+IGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLmZpbHRlcigocnVsZSkgPT4geUtleS5pbmNsdWRlcyhydWxlLnlLZXkpKSxcbiAgICBbY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXNdLFxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPGJ1dHRvblxuICAgICAga2V5PXtgbGVnZW5kLSR7eUtleX1gfVxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBzdHlsZT17e1xuICAgICAgICBhbGw6ICd1bnNldCcsXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgZmxleFdyYXA6ICdub3dyYXAnLFxuICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgb3V0bGluZTogJ3JldmVydCcsXG4gICAgICAgIGdhcDogJzRweCcsXG4gICAgICAgIHBhZGRpbmc6ICc0cHgnLFxuICAgICAgICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgICAgICAgbWFyZ2luUmlnaHQ6ICcxMHB4JyxcbiAgICAgIH19XG4gICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgID5cbiAgICAgIHtzdHlsZS50eXBlID09PSAnbGluZScgJiYgKFxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2Nzcyh7IGhlaWdodDogMTAsIGRpc3BsYXk6ICdmbGV4JyB9KX0+XG4gICAgICAgICAgPExlZ2VuZEl0ZW1Cb3ggY29sb3I9e2NvbG9yfSBzdHlsZT17c3R5bGUgYXMgTGluZVN0eWxlc30geUtleT17eUtleX0gLz5cbiAgICAgICAgICB7cmVsZXZhbnRSdWxlcy5sZW5ndGggPiAwICYmXG4gICAgICAgICAgICByZWxldmFudFJ1bGVzLm1hcCgocnVsZSkgPT4gKFxuICAgICAgICAgICAgICA8TGVnZW5kSXRlbUJveFxuICAgICAgICAgICAgICAgIGNvbG9yPXtydWxlLmNvbG9yfVxuICAgICAgICAgICAgICAgIGtleT17YHJ1bGUtJHtKU09OLnN0cmluZ2lmeShydWxlKX1gfVxuICAgICAgICAgICAgICAgIHN0eWxlPXtzdHlsZSBhcyBMaW5lU3R5bGVzfVxuICAgICAgICAgICAgICAgIHlLZXk9e3lLZXl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApKX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICAgIHtzdHlsZS50eXBlID09PSAnYmFyJyAmJiAoXG4gICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Y3NzKHsgZGlzcGxheTogJ2ZsZXgnLCBmbGV4RGlyZWN0aW9uOiAncm93JywgYWxpZ25JdGVtczogJ2NlbnRlcicsIGdhcDogMiB9KX0+XG4gICAgICAgICAgPExlZ2VuZEl0ZW1TcXVhcmUgY29sb3I9e2NvbG9yfSAvPlxuICAgICAgICAgIHtyZWxldmFudFJ1bGVzLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgIHJlbGV2YW50UnVsZXMubWFwKChydWxlKSA9PiA8TGVnZW5kSXRlbVNxdWFyZSBjb2xvcj17cnVsZS5jb2xvcn0ga2V5PXtgcnVsZS0ke0pTT04uc3RyaW5naWZ5KHJ1bGUpfWB9IC8+KX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICAgIHtzdHlsZS50eXBlID09PSAnYXJlYScgJiYgKFxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2Nzcyh7IGRpc3BsYXk6ICdmbGV4JywgZmxleERpcmVjdGlvbjogJ3JvdycsIGFsaWduSXRlbXM6ICdjZW50ZXInLCBnYXA6IDIgfSl9PlxuICAgICAgICAgIDxMZWdlbmRJdGVtVHJpYW5nbGUgY29sb3I9e2NvbG9yfSAvPlxuICAgICAgICAgIHtyZWxldmFudFJ1bGVzLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgIHJlbGV2YW50UnVsZXMubWFwKChydWxlKSA9PiA8TGVnZW5kSXRlbVRyaWFuZ2xlIGNvbG9yPXtydWxlLmNvbG9yfSBrZXk9e2BydWxlLSR7SlNPTi5zdHJpbmdpZnkocnVsZSl9YH0gLz4pfVxuICAgICAgICA8L3NwYW4+XG4gICAgICApfVxuICAgICAgPHNwYW5cbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBmb250U2l6ZTogJzEycHgnLFxuICAgICAgICAgIGxpbmVIZWlnaHQ6ICcxNnB4JyxcbiAgICAgICAgICBkaXNwbGF5OiAnYmxvY2snLFxuICAgICAgICAgIHRleHREZWNvcmF0aW9uOiB2aXNpYmxlID8gJ25vbmUnIDogJ2xpbmUtdGhyb3VnaCcsXG4gICAgICAgICAgdGV4dFdyYXA6ICdub3dyYXAnLFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICB7eUtleUZvcm1hdHRlZCA/IHlLZXlGb3JtYXR0ZWQgOiB5S2V5fVxuICAgICAgPC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuICApO1xufTtcbiJdfQ== */",
44599
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$6
44600
- }),
44601
- children: [jsxRuntime.jsx(LegendItemTriangle, {
44602
- color: color
44603
- }), relevantRules.length > 0 && relevantRules.map(function (rule) {
44604
- return jsxRuntime.jsx(LegendItemTriangle, {
44605
- color: rule.color
44606
- }, "rule-" + JSON.stringify(rule));
44607
- })]
44608
- }), jsxRuntime.jsx("span", {
44609
- style: {
44610
- fontSize: '12px',
44611
- lineHeight: '16px',
44612
- display: 'block',
44613
- textDecoration: visible ? 'none' : 'line-through',
44614
- textWrap: 'nowrap'
44615
- },
44616
- children: yKeyFormatted ? yKeyFormatted : yKey
44617
- })]
44618
- }, "legend-" + yKey);
44619
- };
44620
-
44621
- function _EMOTION_STRINGIFIED_CSS_ERROR__$7() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
44622
- var Legend$1 = function Legend(_ref) {
44623
- var keys = _ref.keys,
44624
- setVisibleYKeys = _ref.setVisibleYKeys,
44625
- marginLeft = _ref.marginLeft,
44626
- items = _ref.items;
44627
- var handleOnClick = function handleOnClick(item, legendItem) {
44628
- setVisibleYKeys && setVisibleYKeys(function (prev) {
44629
- var newVisibleLegendItems = [];
44630
- if (prev.length === item.legendItems.length) {
44631
- newVisibleLegendItems = [legendItem.yKey];
44632
- } else {
44633
- if (prev.includes(legendItem.yKey)) {
44634
- newVisibleLegendItems = prev.filter(function (prevLegendItemId) {
44635
- return prevLegendItemId !== legendItem.yKey;
44636
- });
44637
- } else {
44638
- newVisibleLegendItems = [].concat(prev, [legendItem.yKey]);
44639
- }
44640
- }
44641
- return newVisibleLegendItems.length === 0 ? item.legendItems.map(function (legendItem) {
44642
- return legendItem.yKey;
44643
- }) : newVisibleLegendItems;
44644
- });
44645
- };
44646
- return jsxRuntime.jsx("div", {
44647
- className: /*#__PURE__*/css$1.css( {
44648
- name: "qz6h7j-Legend",
44649
- styles: "height:40px;padding-top:8px;label:Legend;",
44650
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxlZ2VuZC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0RvQiIsImZpbGUiOiJMZWdlbmQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IEZyYWdtZW50IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBMZWdlbmRJdGVtIH0gZnJvbSAnLi9MZWdlbmRJdGVtJztcbmltcG9ydCB7IFNoYXBlRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgS2V5IH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBTY3JvbGxiYXIgfSBmcm9tICcuLi8uLi8uLi9TY3JvbGxiYXIvU2Nyb2xsYmFyJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBCYXJTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgTGluZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvTGluZUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQXJlYVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQXJlYUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQnViYmxlU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CdWJibGVDaGFydFYyL3R5cGVzJztcblxudHlwZSBJdGVtPFQ+ID0ge1xuICBsZWdlbmRJdGVtczogQXJyYXk8U2hhcGVEZWZpbml0aW9uPFQ+PjtcbiAgdmlzaWJsZVlLZXlzOiBBcnJheTxzdHJpbmc+O1xuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQXJyYXk8Q29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZT47XG59O1xuZXhwb3J0IHR5cGUgTGVnZW5kUHJvcHM8VD4gPSB7XG4gIHNldFZpc2libGVZS2V5cz86IFJlYWN0LkRpc3BhdGNoPFJlYWN0LlNldFN0YXRlQWN0aW9uPEFycmF5PHN0cmluZz4+PjtcbiAga2V5czogeyBba2V5OiBzdHJpbmddOiBLZXkgfTtcbiAgbWFyZ2luTGVmdDogbnVtYmVyO1xuICBpdGVtczogSXRlbTxUPltdO1xufTtcblxuZXhwb3J0IGNvbnN0IExlZ2VuZCA9ICh7XG4gIGtleXMsXG4gIHNldFZpc2libGVZS2V5cyxcbiAgbWFyZ2luTGVmdCxcbiAgaXRlbXMsXG59OiBMZWdlbmRQcm9wczxCYXJTdHlsZXMgfCBMaW5lU3R5bGVzIHwgQXJlYVN0eWxlcyB8IEJ1YmJsZVN0eWxlcz4pID0+IHtcbiAgY29uc3QgaGFuZGxlT25DbGljayA9IChcbiAgICBpdGVtOiBJdGVtPEJhclN0eWxlcyB8IExpbmVTdHlsZXMgfCBBcmVhU3R5bGVzIHwgQnViYmxlU3R5bGVzPixcbiAgICBsZWdlbmRJdGVtOiBTaGFwZURlZmluaXRpb248QmFyU3R5bGVzIHwgTGluZVN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+XG4gICkgPT4ge1xuICAgIHNldFZpc2libGVZS2V5cyAmJlxuICAgICAgc2V0VmlzaWJsZVlLZXlzKHByZXYgPT4ge1xuICAgICAgICBsZXQgbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zOiBBcnJheTxzdHJpbmc+ID0gW107XG5cbiAgICAgICAgaWYgKHByZXYubGVuZ3RoID09PSBpdGVtLmxlZ2VuZEl0ZW1zLmxlbmd0aCkge1xuICAgICAgICAgIG5ld1Zpc2libGVMZWdlbmRJdGVtcyA9IFtsZWdlbmRJdGVtLnlLZXldO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChwcmV2LmluY2x1ZGVzKGxlZ2VuZEl0ZW0ueUtleSkpIHtcbiAgICAgICAgICAgIG5ld1Zpc2libGVMZWdlbmRJdGVtcyA9IHByZXYuZmlsdGVyKHByZXZMZWdlbmRJdGVtSWQgPT4gcHJldkxlZ2VuZEl0ZW1JZCAhPT0gbGVnZW5kSXRlbS55S2V5KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zID0gWy4uLnByZXYsIGxlZ2VuZEl0ZW0ueUtleV07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5ld1Zpc2libGVMZWdlbmRJdGVtcy5sZW5ndGggPT09IDBcbiAgICAgICAgICA/IGl0ZW0ubGVnZW5kSXRlbXMubWFwKGxlZ2VuZEl0ZW0gPT4gbGVnZW5kSXRlbS55S2V5KVxuICAgICAgICAgIDogbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zO1xuICAgICAgfSk7XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17Y3NzKHsgaGVpZ2h0OiA0MCwgcGFkZGluZ1RvcDogOCB9KX0+XG4gICAgICA8U2Nyb2xsYmFyXG4gICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgICAgICAgZmxleFdyYXA6ICdub3dyYXAnLFxuICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgIG1hcmdpbkxlZnQ6IG1hcmdpbkxlZnQgPyBgJHttYXJnaW5MZWZ0fXB4YCA6IHVuZGVmaW5lZCxcbiAgICAgICAgfSl9XG4gICAgICAgIHg9e3RydWV9XG4gICAgICA+XG4gICAgICAgIHtpdGVtcy5tYXAoKGl0ZW0sIGluZGV4KSA9PiAoXG4gICAgICAgICAgPEZyYWdtZW50IGtleT17aW5kZXh9PlxuICAgICAgICAgICAge2l0ZW0ubGVnZW5kSXRlbXMubWFwKFxuICAgICAgICAgICAgICBsZWdlbmRJdGVtID0+XG4gICAgICAgICAgICAgICAga2V5c1tsZWdlbmRJdGVtLnlLZXldICYmIChcbiAgICAgICAgICAgICAgICAgIDxMZWdlbmRJdGVtXG4gICAgICAgICAgICAgICAgICAgIHsuLi5sZWdlbmRJdGVtfVxuICAgICAgICAgICAgICAgICAgICBrZXk9e2BsZWdlbmQtJHtsZWdlbmRJdGVtLnlLZXl9YH1cbiAgICAgICAgICAgICAgICAgICAgeUtleUZvcm1hdHRlZD17a2V5c1tsZWdlbmRJdGVtLnlLZXldLmtleUZvcm1hdHRlZH1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZU9uQ2xpY2soaXRlbSwgbGVnZW5kSXRlbSk7XG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgIHZpc2libGU9e3NldFZpc2libGVZS2V5cyA/IGl0ZW0udmlzaWJsZVlLZXlzLmluY2x1ZGVzKGxlZ2VuZEl0ZW0ueUtleSkgOiB0cnVlfVxuICAgICAgICAgICAgICAgICAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcz17aXRlbS5jb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlc31cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L0ZyYWdtZW50PlxuICAgICAgICApKX1cbiAgICAgIDwvU2Nyb2xsYmFyPlxuICAgIDwvZGl2PlxuICApO1xufTtcbiJdfQ== */",
44651
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$7
44652
- }),
44653
- children: jsxRuntime.jsx(Scrollbar, {
44654
- className: /*#__PURE__*/css$1.css({
44655
- display: 'flex',
44656
- flexDirection: 'row',
44657
- flexWrap: 'nowrap',
44658
- alignItems: 'center',
44659
- marginLeft: marginLeft ? marginLeft + "px" : undefined
44660
- }, ";label:Legend;", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxlZ2VuZC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0RtQiIsImZpbGUiOiJMZWdlbmQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IEZyYWdtZW50IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBMZWdlbmRJdGVtIH0gZnJvbSAnLi9MZWdlbmRJdGVtJztcbmltcG9ydCB7IFNoYXBlRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgS2V5IH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBTY3JvbGxiYXIgfSBmcm9tICcuLi8uLi8uLi9TY3JvbGxiYXIvU2Nyb2xsYmFyJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBCYXJTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgTGluZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvTGluZUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQXJlYVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQXJlYUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQnViYmxlU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CdWJibGVDaGFydFYyL3R5cGVzJztcblxudHlwZSBJdGVtPFQ+ID0ge1xuICBsZWdlbmRJdGVtczogQXJyYXk8U2hhcGVEZWZpbml0aW9uPFQ+PjtcbiAgdmlzaWJsZVlLZXlzOiBBcnJheTxzdHJpbmc+O1xuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQXJyYXk8Q29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZT47XG59O1xuZXhwb3J0IHR5cGUgTGVnZW5kUHJvcHM8VD4gPSB7XG4gIHNldFZpc2libGVZS2V5cz86IFJlYWN0LkRpc3BhdGNoPFJlYWN0LlNldFN0YXRlQWN0aW9uPEFycmF5PHN0cmluZz4+PjtcbiAga2V5czogeyBba2V5OiBzdHJpbmddOiBLZXkgfTtcbiAgbWFyZ2luTGVmdDogbnVtYmVyO1xuICBpdGVtczogSXRlbTxUPltdO1xufTtcblxuZXhwb3J0IGNvbnN0IExlZ2VuZCA9ICh7XG4gIGtleXMsXG4gIHNldFZpc2libGVZS2V5cyxcbiAgbWFyZ2luTGVmdCxcbiAgaXRlbXMsXG59OiBMZWdlbmRQcm9wczxCYXJTdHlsZXMgfCBMaW5lU3R5bGVzIHwgQXJlYVN0eWxlcyB8IEJ1YmJsZVN0eWxlcz4pID0+IHtcbiAgY29uc3QgaGFuZGxlT25DbGljayA9IChcbiAgICBpdGVtOiBJdGVtPEJhclN0eWxlcyB8IExpbmVTdHlsZXMgfCBBcmVhU3R5bGVzIHwgQnViYmxlU3R5bGVzPixcbiAgICBsZWdlbmRJdGVtOiBTaGFwZURlZmluaXRpb248QmFyU3R5bGVzIHwgTGluZVN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+XG4gICkgPT4ge1xuICAgIHNldFZpc2libGVZS2V5cyAmJlxuICAgICAgc2V0VmlzaWJsZVlLZXlzKHByZXYgPT4ge1xuICAgICAgICBsZXQgbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zOiBBcnJheTxzdHJpbmc+ID0gW107XG5cbiAgICAgICAgaWYgKHByZXYubGVuZ3RoID09PSBpdGVtLmxlZ2VuZEl0ZW1zLmxlbmd0aCkge1xuICAgICAgICAgIG5ld1Zpc2libGVMZWdlbmRJdGVtcyA9IFtsZWdlbmRJdGVtLnlLZXldO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChwcmV2LmluY2x1ZGVzKGxlZ2VuZEl0ZW0ueUtleSkpIHtcbiAgICAgICAgICAgIG5ld1Zpc2libGVMZWdlbmRJdGVtcyA9IHByZXYuZmlsdGVyKHByZXZMZWdlbmRJdGVtSWQgPT4gcHJldkxlZ2VuZEl0ZW1JZCAhPT0gbGVnZW5kSXRlbS55S2V5KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zID0gWy4uLnByZXYsIGxlZ2VuZEl0ZW0ueUtleV07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5ld1Zpc2libGVMZWdlbmRJdGVtcy5sZW5ndGggPT09IDBcbiAgICAgICAgICA/IGl0ZW0ubGVnZW5kSXRlbXMubWFwKGxlZ2VuZEl0ZW0gPT4gbGVnZW5kSXRlbS55S2V5KVxuICAgICAgICAgIDogbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zO1xuICAgICAgfSk7XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17Y3NzKHsgaGVpZ2h0OiA0MCwgcGFkZGluZ1RvcDogOCB9KX0+XG4gICAgICA8U2Nyb2xsYmFyXG4gICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgICAgICAgZmxleFdyYXA6ICdub3dyYXAnLFxuICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgIG1hcmdpbkxlZnQ6IG1hcmdpbkxlZnQgPyBgJHttYXJnaW5MZWZ0fXB4YCA6IHVuZGVmaW5lZCxcbiAgICAgICAgfSl9XG4gICAgICAgIHg9e3RydWV9XG4gICAgICA+XG4gICAgICAgIHtpdGVtcy5tYXAoKGl0ZW0sIGluZGV4KSA9PiAoXG4gICAgICAgICAgPEZyYWdtZW50IGtleT17aW5kZXh9PlxuICAgICAgICAgICAge2l0ZW0ubGVnZW5kSXRlbXMubWFwKFxuICAgICAgICAgICAgICBsZWdlbmRJdGVtID0+XG4gICAgICAgICAgICAgICAga2V5c1tsZWdlbmRJdGVtLnlLZXldICYmIChcbiAgICAgICAgICAgICAgICAgIDxMZWdlbmRJdGVtXG4gICAgICAgICAgICAgICAgICAgIHsuLi5sZWdlbmRJdGVtfVxuICAgICAgICAgICAgICAgICAgICBrZXk9e2BsZWdlbmQtJHtsZWdlbmRJdGVtLnlLZXl9YH1cbiAgICAgICAgICAgICAgICAgICAgeUtleUZvcm1hdHRlZD17a2V5c1tsZWdlbmRJdGVtLnlLZXldLmtleUZvcm1hdHRlZH1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZU9uQ2xpY2soaXRlbSwgbGVnZW5kSXRlbSk7XG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgIHZpc2libGU9e3NldFZpc2libGVZS2V5cyA/IGl0ZW0udmlzaWJsZVlLZXlzLmluY2x1ZGVzKGxlZ2VuZEl0ZW0ueUtleSkgOiB0cnVlfVxuICAgICAgICAgICAgICAgICAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcz17aXRlbS5jb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlc31cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L0ZyYWdtZW50PlxuICAgICAgICApKX1cbiAgICAgIDwvU2Nyb2xsYmFyPlxuICAgIDwvZGl2PlxuICApO1xufTtcbiJdfQ== */"),
44661
- x: true,
44662
- children: items.map(function (item, index) {
44663
- return jsxRuntime.jsx(React.Fragment, {
44664
- children: item.legendItems.map(function (legendItem) {
44665
- return keys[legendItem.yKey] && react.createElement(LegendItem, _extends({}, legendItem, {
44666
- key: "legend-" + legendItem.yKey,
44667
- yKeyFormatted: keys[legendItem.yKey].keyFormatted,
44668
- onClick: function onClick() {
44669
- handleOnClick(item, legendItem);
44670
- },
44671
- visible: setVisibleYKeys ? item.visibleYKeys.includes(legendItem.yKey) : true,
44672
- conditionalFormattingRules: item.conditionalFormattingRules
44673
- }));
44674
- })
44675
- }, index);
44676
- })
44677
- })
44678
- });
44679
- };
44680
-
44681
44317
  var ASSUMED_AVERAGE_CHAR_WIDTH = 7.1;
44682
44318
  var ASSUMED_AVERAGE_CHAR_HEIGHT = 24;
44683
44319
 
@@ -44931,33 +44567,15 @@ var buildMarginForHorizontalChart = function buildMarginForHorizontalChart(xTick
44931
44567
  };
44932
44568
  };
44933
44569
 
44934
- var LINE_STYLES = {
44935
- strokeWidth: 2,
44936
- strokeOpacity: 0.8,
44937
- strokeLinecap: 'round',
44938
- strokeDasharray: '0.5 5',
44939
- stroke: 'rgba(0, 0, 0, 0.1)'
44940
- };
44941
-
44942
- var GridRows = function GridRows(_ref) {
44943
- var ticks = _ref.ticks,
44944
- yScale = _ref.yScale,
44945
- removeStroke = _ref.removeStroke,
44946
- width = _ref.width,
44947
- height = _ref.height,
44948
- themeCSS = _ref.themeCSS;
44949
- return jsxRuntime.jsx(grid.GridRows, {
44950
- tickValues: ticks.length > 0 ? ticks : undefined,
44951
- scale: yScale,
44952
- width: width,
44953
- height: height,
44954
- pointerEvents: "none",
44955
- strokeDasharray: "0.5 5",
44956
- strokeWidth: removeStroke ? 0 : 2,
44957
- lineStyle: _extends({
44958
- stroke: themeCSS.grid.stroke
44959
- }, LINE_STYLES)
44960
- });
44570
+ var useableId = function useableId(key, prefix) {
44571
+ var newKey = key.toLowerCase()
44572
+ // Remove characters that aren't letters, digits, underscores, or spaces
44573
+ .replace(/[^\w\s-]+/g, '')
44574
+ // Replace whitespace with hyphens
44575
+ .replace(/\s+/g, '-')
44576
+ // Remove leading or trailing hyphens
44577
+ .replace(/^-+|-+$/g, '');
44578
+ return prefix + '-' + newKey;
44961
44579
  };
44962
44580
 
44963
44581
  var AXIS_TITLE_STYLES = {
@@ -45079,7 +44697,7 @@ var AxisLeft = function AxisLeft(_ref) {
45079
44697
  };
45080
44698
 
45081
44699
  var _excluded$g = ["children", "width", "height", "showLegend", "onMouseMove", "onMouseLeave"];
45082
- function _EMOTION_STRINGIFIED_CSS_ERROR__$8() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
44700
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$5() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
45083
44701
  var ChartWrapper$1 = function ChartWrapper(_ref) {
45084
44702
  var children = _ref.children,
45085
44703
  width = _ref.width,
@@ -45097,13 +44715,41 @@ var ChartWrapper$1 = function ChartWrapper(_ref) {
45097
44715
  name: "fx4tbw-ChartWrapper",
45098
44716
  styles: "display:block;label:ChartWrapper;",
45099
44717
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNoYXJ0V3JhcHBlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEJpQiIsImZpbGUiOiJDaGFydFdyYXBwZXIudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY3NzJztcblxudHlwZSBDaGFydFdyYXBwZXJQcm9wcyA9IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgd2lkdGg6IG51bWJlcjtcbiAgaGVpZ2h0OiBudW1iZXI7XG4gIHNob3dMZWdlbmQ6IGJvb2xlYW47XG4gIG9uTW91c2VNb3ZlPzogUmVhY3QuTW91c2VFdmVudEhhbmRsZXI8U1ZHU1ZHRWxlbWVudD47XG4gIG9uTW91c2VMZWF2ZT86IFJlYWN0Lk1vdXNlRXZlbnRIYW5kbGVyPFNWR1NWR0VsZW1lbnQ+O1xufSAmIFJlYWN0LlNWR1Byb3BzPFNWR1NWR0VsZW1lbnQ+O1xuXG5leHBvcnQgY29uc3QgQ2hhcnRXcmFwcGVyID0gKHtcbiAgY2hpbGRyZW4sXG4gIHdpZHRoLFxuICBoZWlnaHQsXG4gIHNob3dMZWdlbmQsXG4gIG9uTW91c2VNb3ZlLFxuICBvbk1vdXNlTGVhdmUsXG4gIC4uLnN2Z1Byb3BzXG59OiBDaGFydFdyYXBwZXJQcm9wcykgPT4ge1xuICByZXR1cm4gKFxuICAgIDxzdmdcbiAgICAgIHdpZHRoPXt3aWR0aH1cbiAgICAgIGhlaWdodD17aGVpZ2h0IC0gKHNob3dMZWdlbmQgPyA0MCA6IDApfVxuICAgICAgb25Nb3VzZU1vdmU9e29uTW91c2VNb3ZlfVxuICAgICAgb25Nb3VzZUxlYXZlPXtvbk1vdXNlTGVhdmV9XG4gICAgICBjbGFzc05hbWU9e2Nzcyh7IGRpc3BsYXk6ICdibG9jaycgfSl9XG4gICAgICB7Li4uc3ZnUHJvcHN9XG4gICAgPlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvc3ZnPlxuICApO1xufTtcbiJdfQ== */",
45100
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$8
44718
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
45101
44719
  })
45102
44720
  }, svgProps, {
45103
44721
  children: children
45104
44722
  }));
45105
44723
  };
45106
44724
 
44725
+ var DataLabel = function DataLabel(_ref) {
44726
+ var x = _ref.x,
44727
+ y = _ref.y,
44728
+ title = _ref.title,
44729
+ dx = _ref.dx,
44730
+ dy = _ref.dy,
44731
+ color = _ref.color,
44732
+ backgroundColor = _ref.backgroundColor,
44733
+ _ref$horizontalAnchor = _ref.horizontalAnchor,
44734
+ horizontalAnchor = _ref$horizontalAnchor === void 0 ? undefined : _ref$horizontalAnchor;
44735
+ return jsxRuntime.jsx(annotation.Annotation, {
44736
+ x: x,
44737
+ y: y,
44738
+ dx: dx,
44739
+ dy: dy,
44740
+ children: jsxRuntime.jsx(annotation.Label, {
44741
+ title: title,
44742
+ showAnchorLine: false,
44743
+ showBackground: false,
44744
+ backgroundFill: backgroundColor,
44745
+ fontColor: color,
44746
+ titleFontSize: 10,
44747
+ verticalAnchor: "middle",
44748
+ horizontalAnchor: horizontalAnchor
44749
+ })
44750
+ });
44751
+ };
44752
+
45107
44753
  var GoalLine = function GoalLine(_ref) {
45108
44754
  var goalLine = _ref.goalLine,
45109
44755
  innerWidth = _ref.innerWidth,
@@ -45191,6 +44837,35 @@ var GoalLines = function GoalLines(_ref) {
45191
44837
  };
45192
44838
  var GoalLines$1 = /*#__PURE__*/React.memo(GoalLines, shouldUpdate$1);
45193
44839
 
44840
+ var LINE_STYLES = {
44841
+ strokeWidth: 2,
44842
+ strokeOpacity: 0.8,
44843
+ strokeLinecap: 'round',
44844
+ strokeDasharray: '0.5 5',
44845
+ stroke: 'rgba(0, 0, 0, 0.1)'
44846
+ };
44847
+
44848
+ var GridRows = function GridRows(_ref) {
44849
+ var ticks = _ref.ticks,
44850
+ yScale = _ref.yScale,
44851
+ removeStroke = _ref.removeStroke,
44852
+ width = _ref.width,
44853
+ height = _ref.height,
44854
+ themeCSS = _ref.themeCSS;
44855
+ return jsxRuntime.jsx(grid.GridRows, {
44856
+ tickValues: ticks.length > 0 ? ticks : undefined,
44857
+ scale: yScale,
44858
+ width: width,
44859
+ height: height,
44860
+ pointerEvents: "none",
44861
+ strokeDasharray: "0.5 5",
44862
+ strokeWidth: removeStroke ? 0 : 2,
44863
+ lineStyle: _extends({
44864
+ stroke: themeCSS.grid.stroke
44865
+ }, LINE_STYLES)
44866
+ });
44867
+ };
44868
+
45194
44869
  function useFlattenedData(xScaleKey, xScaleDataType, data, yKeys) {
45195
44870
  return React.useMemo(function () {
45196
44871
  if (xScaleKey && xScaleDataType && yKeys.length > 0) {
@@ -45206,6 +44881,515 @@ function useFlattenedData(xScaleKey, xScaleDataType, data, yKeys) {
45206
44881
  }, [data, xScaleKey, xScaleDataType, yKeys]);
45207
44882
  }
45208
44883
 
44884
+ var _excluded$h = ["tooltipOpen"];
44885
+ function useTooltip$1(initialTooltipState) {
44886
+ var _useState = React.useState(_extends({
44887
+ tooltipOpen: false
44888
+ }, initialTooltipState)),
44889
+ tooltipState = _useState[0],
44890
+ setTooltipState = _useState[1];
44891
+ var showTooltip = React.useCallback(function (showArgs) {
44892
+ return setTooltipState(typeof showArgs === 'function' ? function (_ref) {
44893
+ var show = _objectWithoutPropertiesLoose(_ref, _excluded$h);
44894
+ return _extends({}, showArgs(show), {
44895
+ tooltipOpen: true
44896
+ });
44897
+ } : {
44898
+ tooltipOpen: true,
44899
+ tooltipLeft: showArgs.tooltipLeft,
44900
+ tooltipTop: showArgs.tooltipTop,
44901
+ lineLeft: showArgs.lineLeft,
44902
+ tooltipData: showArgs.tooltipData
44903
+ });
44904
+ }, [setTooltipState]);
44905
+ var hideTooltip = React.useCallback(function () {
44906
+ return setTooltipState({
44907
+ tooltipOpen: false,
44908
+ tooltipLeft: undefined,
44909
+ lineLeft: undefined,
44910
+ tooltipTop: undefined,
44911
+ tooltipData: undefined
44912
+ });
44913
+ }, [setTooltipState]);
44914
+ return {
44915
+ tooltipOpen: tooltipState.tooltipOpen,
44916
+ tooltipLeft: tooltipState.tooltipLeft,
44917
+ tooltipTop: tooltipState.tooltipTop,
44918
+ lineLeft: tooltipState.lineLeft,
44919
+ tooltipData: tooltipState.tooltipData,
44920
+ updateTooltip: setTooltipState,
44921
+ showTooltip: showTooltip,
44922
+ hideTooltip: hideTooltip
44923
+ };
44924
+ }
44925
+
44926
+ function useVisibleYKeys(areas) {
44927
+ var _useState = React.useState(areas.map(function (legendItem) {
44928
+ return legendItem.yKey;
44929
+ })),
44930
+ visibleYKeysState = _useState[0],
44931
+ setVisibleYKeys = _useState[1];
44932
+ React.useEffect(function () {
44933
+ setVisibleYKeys(areas.map(function (legendItem) {
44934
+ return legendItem.yKey;
44935
+ }));
44936
+ return function () {
44937
+ setVisibleYKeys([]);
44938
+ };
44939
+ }, [areas]);
44940
+ return {
44941
+ visibleYKeys: visibleYKeysState,
44942
+ setVisibleYKeys: setVisibleYKeys
44943
+ };
44944
+ }
44945
+
44946
+ function useYScale(innerHeight, scale$1) {
44947
+ return React.useMemo(function () {
44948
+ return scale.scaleLinear({
44949
+ range: [innerHeight, 0],
44950
+ domain: scale$1.ordering === 'asc' ? [scale$1.min, scale$1.max] : [scale$1.max, scale$1.min],
44951
+ nice: true,
44952
+ round: true
44953
+ });
44954
+ }, [innerHeight, scale$1]);
44955
+ }
44956
+
44957
+ var LegendItemBox = function LegendItemBox(_ref) {
44958
+ var color = _ref.color,
44959
+ style = _ref.style;
44960
+ return jsxRuntime.jsx("svg", {
44961
+ width: 10,
44962
+ height: 10,
44963
+ style: {
44964
+ display: 'block'
44965
+ },
44966
+ children: style.type === 'line' ? style.strokeDasharray !== null ? jsxRuntime.jsx("line", {
44967
+ x1: "0",
44968
+ y1: "5",
44969
+ x2: "10",
44970
+ y2: "5",
44971
+ stroke: color,
44972
+ strokeWidth: style.strokeWidth,
44973
+ strokeDasharray: 2
44974
+ }) : jsxRuntime.jsx("line", {
44975
+ x1: "0",
44976
+ y1: "5",
44977
+ x2: "10",
44978
+ y2: "5",
44979
+ stroke: color,
44980
+ strokeWidth: style.strokeWidth
44981
+ }) : jsxRuntime.jsx("rect", {
44982
+ fill: color,
44983
+ width: 10,
44984
+ height: 10,
44985
+ rx: "2"
44986
+ })
44987
+ });
44988
+ };
44989
+ var LegendItemSquare = function LegendItemSquare(_ref2) {
44990
+ var color = _ref2.color;
44991
+ return jsxRuntime.jsx("svg", {
44992
+ width: 8,
44993
+ height: 8,
44994
+ style: {
44995
+ display: 'block'
44996
+ },
44997
+ children: jsxRuntime.jsx("rect", {
44998
+ fill: color,
44999
+ width: 8,
45000
+ height: 8,
45001
+ rx: "2"
45002
+ })
45003
+ });
45004
+ };
45005
+ var LegendItemTriangle = function LegendItemTriangle(_ref3) {
45006
+ var color = _ref3.color;
45007
+ return jsxRuntime.jsx("svg", {
45008
+ width: 8,
45009
+ height: 8,
45010
+ style: {
45011
+ display: 'block',
45012
+ borderRadius: 1
45013
+ },
45014
+ children: jsxRuntime.jsx("polygon", {
45015
+ points: "0,0 10,10 0,10",
45016
+ fill: color
45017
+ })
45018
+ });
45019
+ };
45020
+
45021
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$6() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
45022
+ var LegendItem = function LegendItem(_ref) {
45023
+ var yKey = _ref.yKey,
45024
+ yKeyFormatted = _ref.yKeyFormatted,
45025
+ color = _ref.color,
45026
+ style = _ref.style,
45027
+ onClick = _ref.onClick,
45028
+ visible = _ref.visible,
45029
+ conditionalFormattingRules = _ref.conditionalFormattingRules;
45030
+ var relevantRules = React.useMemo(function () {
45031
+ return conditionalFormattingRules.filter(function (rule) {
45032
+ return yKey.includes(rule.yKey);
45033
+ });
45034
+ }, [conditionalFormattingRules]);
45035
+ return jsxRuntime.jsxs("button", {
45036
+ type: "button",
45037
+ style: {
45038
+ all: 'unset',
45039
+ display: 'flex',
45040
+ flexWrap: 'nowrap',
45041
+ alignItems: 'center',
45042
+ outline: 'revert',
45043
+ gap: '4px',
45044
+ padding: '4px',
45045
+ cursor: 'pointer',
45046
+ marginRight: '10px'
45047
+ },
45048
+ onClick: onClick,
45049
+ children: [style.type === 'line' && jsxRuntime.jsxs("span", {
45050
+ className: /*#__PURE__*/css$1.css( {
45051
+ name: "mefz6m-LegendItem",
45052
+ styles: "height:10px;display:flex;label:LegendItem;",
45053
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxlZ2VuZEl0ZW0udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlEeUIiLCJmaWxlIjoiTGVnZW5kSXRlbS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IExlZ2VuZEl0ZW1Cb3ggfSBmcm9tICcuLi9MZWdlbmRJdGVtQm94JztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBMZWdlbmRJdGVtU3F1YXJlLCBMZWdlbmRJdGVtVHJpYW5nbGUgfSBmcm9tICcuLi9MZWdlbmRJdGVtQm94L0xlZ2VuZEl0ZW1Cb3gnO1xuaW1wb3J0IHsgU2hhcGVEZWZpbml0aW9uLCBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBMaW5lU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9MaW5lQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBCYXJTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQXJlYVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQXJlYUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQnViYmxlU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CdWJibGVDaGFydFYyL3R5cGVzJztcblxuaW50ZXJmYWNlIExlZ2VuZEl0ZW1Qcm9wczxUPiBleHRlbmRzIFNoYXBlRGVmaW5pdGlvbjxUPiB7XG4gIG9uQ2xpY2s6ICgpID0+IHZvaWQ7XG4gIHZpc2libGU6IGJvb2xlYW47XG4gIHlLZXlGb3JtYXR0ZWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM6IEFycmF5PENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGU+O1xufVxuXG5leHBvcnQgY29uc3QgTGVnZW5kSXRlbSA9ICh7XG4gIHlLZXksXG4gIHlLZXlGb3JtYXR0ZWQsXG4gIGNvbG9yLFxuICBzdHlsZSxcbiAgb25DbGljayxcbiAgdmlzaWJsZSxcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXMsXG59OiBMZWdlbmRJdGVtUHJvcHM8QmFyU3R5bGVzIHwgTGluZVN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+KSA9PiB7XG4gIGNvbnN0IHJlbGV2YW50UnVsZXMgPSB1c2VNZW1vKFxuICAgICgpID0+IGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLmZpbHRlcigocnVsZSkgPT4geUtleS5pbmNsdWRlcyhydWxlLnlLZXkpKSxcbiAgICBbY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXNdLFxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPGJ1dHRvblxuICAgICAga2V5PXtgbGVnZW5kLSR7eUtleX1gfVxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBzdHlsZT17e1xuICAgICAgICBhbGw6ICd1bnNldCcsXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgZmxleFdyYXA6ICdub3dyYXAnLFxuICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgb3V0bGluZTogJ3JldmVydCcsXG4gICAgICAgIGdhcDogJzRweCcsXG4gICAgICAgIHBhZGRpbmc6ICc0cHgnLFxuICAgICAgICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgICAgICAgbWFyZ2luUmlnaHQ6ICcxMHB4JyxcbiAgICAgIH19XG4gICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgID5cbiAgICAgIHtzdHlsZS50eXBlID09PSAnbGluZScgJiYgKFxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2Nzcyh7IGhlaWdodDogMTAsIGRpc3BsYXk6ICdmbGV4JyB9KX0+XG4gICAgICAgICAgPExlZ2VuZEl0ZW1Cb3ggY29sb3I9e2NvbG9yfSBzdHlsZT17c3R5bGUgYXMgTGluZVN0eWxlc30geUtleT17eUtleX0gLz5cbiAgICAgICAgICB7cmVsZXZhbnRSdWxlcy5sZW5ndGggPiAwICYmXG4gICAgICAgICAgICByZWxldmFudFJ1bGVzLm1hcCgocnVsZSkgPT4gKFxuICAgICAgICAgICAgICA8TGVnZW5kSXRlbUJveFxuICAgICAgICAgICAgICAgIGNvbG9yPXtydWxlLmNvbG9yfVxuICAgICAgICAgICAgICAgIGtleT17YHJ1bGUtJHtKU09OLnN0cmluZ2lmeShydWxlKX1gfVxuICAgICAgICAgICAgICAgIHN0eWxlPXtzdHlsZSBhcyBMaW5lU3R5bGVzfVxuICAgICAgICAgICAgICAgIHlLZXk9e3lLZXl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApKX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICAgIHtzdHlsZS50eXBlID09PSAnYmFyJyAmJiAoXG4gICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Y3NzKHsgZGlzcGxheTogJ2ZsZXgnLCBmbGV4RGlyZWN0aW9uOiAncm93JywgYWxpZ25JdGVtczogJ2NlbnRlcicsIGdhcDogMiB9KX0+XG4gICAgICAgICAgPExlZ2VuZEl0ZW1TcXVhcmUgY29sb3I9e2NvbG9yfSAvPlxuICAgICAgICAgIHtyZWxldmFudFJ1bGVzLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgIHJlbGV2YW50UnVsZXMubWFwKChydWxlKSA9PiA8TGVnZW5kSXRlbVNxdWFyZSBjb2xvcj17cnVsZS5jb2xvcn0ga2V5PXtgcnVsZS0ke0pTT04uc3RyaW5naWZ5KHJ1bGUpfWB9IC8+KX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICAgIHtzdHlsZS50eXBlID09PSAnYXJlYScgJiYgKFxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2Nzcyh7IGRpc3BsYXk6ICdmbGV4JywgZmxleERpcmVjdGlvbjogJ3JvdycsIGFsaWduSXRlbXM6ICdjZW50ZXInLCBnYXA6IDIgfSl9PlxuICAgICAgICAgIDxMZWdlbmRJdGVtVHJpYW5nbGUgY29sb3I9e2NvbG9yfSAvPlxuICAgICAgICAgIHtyZWxldmFudFJ1bGVzLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgIHJlbGV2YW50UnVsZXMubWFwKChydWxlKSA9PiA8TGVnZW5kSXRlbVRyaWFuZ2xlIGNvbG9yPXtydWxlLmNvbG9yfSBrZXk9e2BydWxlLSR7SlNPTi5zdHJpbmdpZnkocnVsZSl9YH0gLz4pfVxuICAgICAgICA8L3NwYW4+XG4gICAgICApfVxuICAgICAgPHNwYW5cbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBmb250U2l6ZTogJzEycHgnLFxuICAgICAgICAgIGxpbmVIZWlnaHQ6ICcxNnB4JyxcbiAgICAgICAgICBkaXNwbGF5OiAnYmxvY2snLFxuICAgICAgICAgIHRleHREZWNvcmF0aW9uOiB2aXNpYmxlID8gJ25vbmUnIDogJ2xpbmUtdGhyb3VnaCcsXG4gICAgICAgICAgdGV4dFdyYXA6ICdub3dyYXAnLFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICB7eUtleUZvcm1hdHRlZCA/IHlLZXlGb3JtYXR0ZWQgOiB5S2V5fVxuICAgICAgPC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuICApO1xufTtcbiJdfQ== */",
45054
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$6
45055
+ }),
45056
+ children: [jsxRuntime.jsx(LegendItemBox, {
45057
+ color: color,
45058
+ style: style,
45059
+ yKey: yKey
45060
+ }), relevantRules.length > 0 && relevantRules.map(function (rule) {
45061
+ return jsxRuntime.jsx(LegendItemBox, {
45062
+ color: rule.color,
45063
+ style: style,
45064
+ yKey: yKey
45065
+ }, "rule-" + JSON.stringify(rule));
45066
+ })]
45067
+ }), style.type === 'bar' && jsxRuntime.jsxs("span", {
45068
+ className: /*#__PURE__*/css$1.css( {
45069
+ name: "pglbco-LegendItem",
45070
+ styles: "display:flex;flex-direction:row;align-items:center;gap:2px;label:LegendItem;",
45071
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxlZ2VuZEl0ZW0udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStEeUIiLCJmaWxlIjoiTGVnZW5kSXRlbS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IExlZ2VuZEl0ZW1Cb3ggfSBmcm9tICcuLi9MZWdlbmRJdGVtQm94JztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBMZWdlbmRJdGVtU3F1YXJlLCBMZWdlbmRJdGVtVHJpYW5nbGUgfSBmcm9tICcuLi9MZWdlbmRJdGVtQm94L0xlZ2VuZEl0ZW1Cb3gnO1xuaW1wb3J0IHsgU2hhcGVEZWZpbml0aW9uLCBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBMaW5lU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9MaW5lQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBCYXJTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQXJlYVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQXJlYUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQnViYmxlU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CdWJibGVDaGFydFYyL3R5cGVzJztcblxuaW50ZXJmYWNlIExlZ2VuZEl0ZW1Qcm9wczxUPiBleHRlbmRzIFNoYXBlRGVmaW5pdGlvbjxUPiB7XG4gIG9uQ2xpY2s6ICgpID0+IHZvaWQ7XG4gIHZpc2libGU6IGJvb2xlYW47XG4gIHlLZXlGb3JtYXR0ZWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM6IEFycmF5PENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGU+O1xufVxuXG5leHBvcnQgY29uc3QgTGVnZW5kSXRlbSA9ICh7XG4gIHlLZXksXG4gIHlLZXlGb3JtYXR0ZWQsXG4gIGNvbG9yLFxuICBzdHlsZSxcbiAgb25DbGljayxcbiAgdmlzaWJsZSxcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXMsXG59OiBMZWdlbmRJdGVtUHJvcHM8QmFyU3R5bGVzIHwgTGluZVN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+KSA9PiB7XG4gIGNvbnN0IHJlbGV2YW50UnVsZXMgPSB1c2VNZW1vKFxuICAgICgpID0+IGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLmZpbHRlcigocnVsZSkgPT4geUtleS5pbmNsdWRlcyhydWxlLnlLZXkpKSxcbiAgICBbY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXNdLFxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPGJ1dHRvblxuICAgICAga2V5PXtgbGVnZW5kLSR7eUtleX1gfVxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBzdHlsZT17e1xuICAgICAgICBhbGw6ICd1bnNldCcsXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgZmxleFdyYXA6ICdub3dyYXAnLFxuICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgb3V0bGluZTogJ3JldmVydCcsXG4gICAgICAgIGdhcDogJzRweCcsXG4gICAgICAgIHBhZGRpbmc6ICc0cHgnLFxuICAgICAgICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgICAgICAgbWFyZ2luUmlnaHQ6ICcxMHB4JyxcbiAgICAgIH19XG4gICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgID5cbiAgICAgIHtzdHlsZS50eXBlID09PSAnbGluZScgJiYgKFxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2Nzcyh7IGhlaWdodDogMTAsIGRpc3BsYXk6ICdmbGV4JyB9KX0+XG4gICAgICAgICAgPExlZ2VuZEl0ZW1Cb3ggY29sb3I9e2NvbG9yfSBzdHlsZT17c3R5bGUgYXMgTGluZVN0eWxlc30geUtleT17eUtleX0gLz5cbiAgICAgICAgICB7cmVsZXZhbnRSdWxlcy5sZW5ndGggPiAwICYmXG4gICAgICAgICAgICByZWxldmFudFJ1bGVzLm1hcCgocnVsZSkgPT4gKFxuICAgICAgICAgICAgICA8TGVnZW5kSXRlbUJveFxuICAgICAgICAgICAgICAgIGNvbG9yPXtydWxlLmNvbG9yfVxuICAgICAgICAgICAgICAgIGtleT17YHJ1bGUtJHtKU09OLnN0cmluZ2lmeShydWxlKX1gfVxuICAgICAgICAgICAgICAgIHN0eWxlPXtzdHlsZSBhcyBMaW5lU3R5bGVzfVxuICAgICAgICAgICAgICAgIHlLZXk9e3lLZXl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApKX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICAgIHtzdHlsZS50eXBlID09PSAnYmFyJyAmJiAoXG4gICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Y3NzKHsgZGlzcGxheTogJ2ZsZXgnLCBmbGV4RGlyZWN0aW9uOiAncm93JywgYWxpZ25JdGVtczogJ2NlbnRlcicsIGdhcDogMiB9KX0+XG4gICAgICAgICAgPExlZ2VuZEl0ZW1TcXVhcmUgY29sb3I9e2NvbG9yfSAvPlxuICAgICAgICAgIHtyZWxldmFudFJ1bGVzLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgIHJlbGV2YW50UnVsZXMubWFwKChydWxlKSA9PiA8TGVnZW5kSXRlbVNxdWFyZSBjb2xvcj17cnVsZS5jb2xvcn0ga2V5PXtgcnVsZS0ke0pTT04uc3RyaW5naWZ5KHJ1bGUpfWB9IC8+KX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICAgIHtzdHlsZS50eXBlID09PSAnYXJlYScgJiYgKFxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2Nzcyh7IGRpc3BsYXk6ICdmbGV4JywgZmxleERpcmVjdGlvbjogJ3JvdycsIGFsaWduSXRlbXM6ICdjZW50ZXInLCBnYXA6IDIgfSl9PlxuICAgICAgICAgIDxMZWdlbmRJdGVtVHJpYW5nbGUgY29sb3I9e2NvbG9yfSAvPlxuICAgICAgICAgIHtyZWxldmFudFJ1bGVzLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgIHJlbGV2YW50UnVsZXMubWFwKChydWxlKSA9PiA8TGVnZW5kSXRlbVRyaWFuZ2xlIGNvbG9yPXtydWxlLmNvbG9yfSBrZXk9e2BydWxlLSR7SlNPTi5zdHJpbmdpZnkocnVsZSl9YH0gLz4pfVxuICAgICAgICA8L3NwYW4+XG4gICAgICApfVxuICAgICAgPHNwYW5cbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBmb250U2l6ZTogJzEycHgnLFxuICAgICAgICAgIGxpbmVIZWlnaHQ6ICcxNnB4JyxcbiAgICAgICAgICBkaXNwbGF5OiAnYmxvY2snLFxuICAgICAgICAgIHRleHREZWNvcmF0aW9uOiB2aXNpYmxlID8gJ25vbmUnIDogJ2xpbmUtdGhyb3VnaCcsXG4gICAgICAgICAgdGV4dFdyYXA6ICdub3dyYXAnLFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICB7eUtleUZvcm1hdHRlZCA/IHlLZXlGb3JtYXR0ZWQgOiB5S2V5fVxuICAgICAgPC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuICApO1xufTtcbiJdfQ== */",
45072
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$6
45073
+ }),
45074
+ children: [jsxRuntime.jsx(LegendItemSquare, {
45075
+ color: color
45076
+ }), relevantRules.length > 0 && relevantRules.map(function (rule) {
45077
+ return jsxRuntime.jsx(LegendItemSquare, {
45078
+ color: rule.color
45079
+ }, "rule-" + JSON.stringify(rule));
45080
+ })]
45081
+ }), style.type === 'area' && jsxRuntime.jsxs("span", {
45082
+ className: /*#__PURE__*/css$1.css( {
45083
+ name: "pglbco-LegendItem",
45084
+ styles: "display:flex;flex-direction:row;align-items:center;gap:2px;label:LegendItem;",
45085
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxlZ2VuZEl0ZW0udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNFeUIiLCJmaWxlIjoiTGVnZW5kSXRlbS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IExlZ2VuZEl0ZW1Cb3ggfSBmcm9tICcuLi9MZWdlbmRJdGVtQm94JztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBMZWdlbmRJdGVtU3F1YXJlLCBMZWdlbmRJdGVtVHJpYW5nbGUgfSBmcm9tICcuLi9MZWdlbmRJdGVtQm94L0xlZ2VuZEl0ZW1Cb3gnO1xuaW1wb3J0IHsgU2hhcGVEZWZpbml0aW9uLCBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBMaW5lU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9MaW5lQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBCYXJTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQXJlYVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQXJlYUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQnViYmxlU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CdWJibGVDaGFydFYyL3R5cGVzJztcblxuaW50ZXJmYWNlIExlZ2VuZEl0ZW1Qcm9wczxUPiBleHRlbmRzIFNoYXBlRGVmaW5pdGlvbjxUPiB7XG4gIG9uQ2xpY2s6ICgpID0+IHZvaWQ7XG4gIHZpc2libGU6IGJvb2xlYW47XG4gIHlLZXlGb3JtYXR0ZWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM6IEFycmF5PENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGU+O1xufVxuXG5leHBvcnQgY29uc3QgTGVnZW5kSXRlbSA9ICh7XG4gIHlLZXksXG4gIHlLZXlGb3JtYXR0ZWQsXG4gIGNvbG9yLFxuICBzdHlsZSxcbiAgb25DbGljayxcbiAgdmlzaWJsZSxcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXMsXG59OiBMZWdlbmRJdGVtUHJvcHM8QmFyU3R5bGVzIHwgTGluZVN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+KSA9PiB7XG4gIGNvbnN0IHJlbGV2YW50UnVsZXMgPSB1c2VNZW1vKFxuICAgICgpID0+IGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLmZpbHRlcigocnVsZSkgPT4geUtleS5pbmNsdWRlcyhydWxlLnlLZXkpKSxcbiAgICBbY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXNdLFxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPGJ1dHRvblxuICAgICAga2V5PXtgbGVnZW5kLSR7eUtleX1gfVxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBzdHlsZT17e1xuICAgICAgICBhbGw6ICd1bnNldCcsXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgZmxleFdyYXA6ICdub3dyYXAnLFxuICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgb3V0bGluZTogJ3JldmVydCcsXG4gICAgICAgIGdhcDogJzRweCcsXG4gICAgICAgIHBhZGRpbmc6ICc0cHgnLFxuICAgICAgICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgICAgICAgbWFyZ2luUmlnaHQ6ICcxMHB4JyxcbiAgICAgIH19XG4gICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgID5cbiAgICAgIHtzdHlsZS50eXBlID09PSAnbGluZScgJiYgKFxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2Nzcyh7IGhlaWdodDogMTAsIGRpc3BsYXk6ICdmbGV4JyB9KX0+XG4gICAgICAgICAgPExlZ2VuZEl0ZW1Cb3ggY29sb3I9e2NvbG9yfSBzdHlsZT17c3R5bGUgYXMgTGluZVN0eWxlc30geUtleT17eUtleX0gLz5cbiAgICAgICAgICB7cmVsZXZhbnRSdWxlcy5sZW5ndGggPiAwICYmXG4gICAgICAgICAgICByZWxldmFudFJ1bGVzLm1hcCgocnVsZSkgPT4gKFxuICAgICAgICAgICAgICA8TGVnZW5kSXRlbUJveFxuICAgICAgICAgICAgICAgIGNvbG9yPXtydWxlLmNvbG9yfVxuICAgICAgICAgICAgICAgIGtleT17YHJ1bGUtJHtKU09OLnN0cmluZ2lmeShydWxlKX1gfVxuICAgICAgICAgICAgICAgIHN0eWxlPXtzdHlsZSBhcyBMaW5lU3R5bGVzfVxuICAgICAgICAgICAgICAgIHlLZXk9e3lLZXl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApKX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICAgIHtzdHlsZS50eXBlID09PSAnYmFyJyAmJiAoXG4gICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Y3NzKHsgZGlzcGxheTogJ2ZsZXgnLCBmbGV4RGlyZWN0aW9uOiAncm93JywgYWxpZ25JdGVtczogJ2NlbnRlcicsIGdhcDogMiB9KX0+XG4gICAgICAgICAgPExlZ2VuZEl0ZW1TcXVhcmUgY29sb3I9e2NvbG9yfSAvPlxuICAgICAgICAgIHtyZWxldmFudFJ1bGVzLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgIHJlbGV2YW50UnVsZXMubWFwKChydWxlKSA9PiA8TGVnZW5kSXRlbVNxdWFyZSBjb2xvcj17cnVsZS5jb2xvcn0ga2V5PXtgcnVsZS0ke0pTT04uc3RyaW5naWZ5KHJ1bGUpfWB9IC8+KX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgKX1cbiAgICAgIHtzdHlsZS50eXBlID09PSAnYXJlYScgJiYgKFxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2Nzcyh7IGRpc3BsYXk6ICdmbGV4JywgZmxleERpcmVjdGlvbjogJ3JvdycsIGFsaWduSXRlbXM6ICdjZW50ZXInLCBnYXA6IDIgfSl9PlxuICAgICAgICAgIDxMZWdlbmRJdGVtVHJpYW5nbGUgY29sb3I9e2NvbG9yfSAvPlxuICAgICAgICAgIHtyZWxldmFudFJ1bGVzLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgIHJlbGV2YW50UnVsZXMubWFwKChydWxlKSA9PiA8TGVnZW5kSXRlbVRyaWFuZ2xlIGNvbG9yPXtydWxlLmNvbG9yfSBrZXk9e2BydWxlLSR7SlNPTi5zdHJpbmdpZnkocnVsZSl9YH0gLz4pfVxuICAgICAgICA8L3NwYW4+XG4gICAgICApfVxuICAgICAgPHNwYW5cbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBmb250U2l6ZTogJzEycHgnLFxuICAgICAgICAgIGxpbmVIZWlnaHQ6ICcxNnB4JyxcbiAgICAgICAgICBkaXNwbGF5OiAnYmxvY2snLFxuICAgICAgICAgIHRleHREZWNvcmF0aW9uOiB2aXNpYmxlID8gJ25vbmUnIDogJ2xpbmUtdGhyb3VnaCcsXG4gICAgICAgICAgdGV4dFdyYXA6ICdub3dyYXAnLFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICB7eUtleUZvcm1hdHRlZCA/IHlLZXlGb3JtYXR0ZWQgOiB5S2V5fVxuICAgICAgPC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuICApO1xufTtcbiJdfQ== */",
45086
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$6
45087
+ }),
45088
+ children: [jsxRuntime.jsx(LegendItemTriangle, {
45089
+ color: color
45090
+ }), relevantRules.length > 0 && relevantRules.map(function (rule) {
45091
+ return jsxRuntime.jsx(LegendItemTriangle, {
45092
+ color: rule.color
45093
+ }, "rule-" + JSON.stringify(rule));
45094
+ })]
45095
+ }), jsxRuntime.jsx("span", {
45096
+ style: {
45097
+ fontSize: '12px',
45098
+ lineHeight: '16px',
45099
+ display: 'block',
45100
+ textDecoration: visible ? 'none' : 'line-through',
45101
+ textWrap: 'nowrap'
45102
+ },
45103
+ children: yKeyFormatted ? yKeyFormatted : yKey
45104
+ })]
45105
+ }, "legend-" + yKey);
45106
+ };
45107
+
45108
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$7() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
45109
+ var Legend$1 = function Legend(_ref) {
45110
+ var keys = _ref.keys,
45111
+ setVisibleYKeys = _ref.setVisibleYKeys,
45112
+ marginLeft = _ref.marginLeft,
45113
+ items = _ref.items;
45114
+ var handleOnClick = function handleOnClick(item, legendItem) {
45115
+ setVisibleYKeys && setVisibleYKeys(function (prev) {
45116
+ var newVisibleLegendItems = [];
45117
+ if (prev.length === item.legendItems.length) {
45118
+ newVisibleLegendItems = [legendItem.yKey];
45119
+ } else {
45120
+ if (prev.includes(legendItem.yKey)) {
45121
+ newVisibleLegendItems = prev.filter(function (prevLegendItemId) {
45122
+ return prevLegendItemId !== legendItem.yKey;
45123
+ });
45124
+ } else {
45125
+ newVisibleLegendItems = [].concat(prev, [legendItem.yKey]);
45126
+ }
45127
+ }
45128
+ return newVisibleLegendItems.length === 0 ? item.legendItems.map(function (legendItem) {
45129
+ return legendItem.yKey;
45130
+ }) : newVisibleLegendItems;
45131
+ });
45132
+ };
45133
+ return jsxRuntime.jsx("div", {
45134
+ className: /*#__PURE__*/css$1.css( {
45135
+ name: "qz6h7j-Legend",
45136
+ styles: "height:40px;padding-top:8px;label:Legend;",
45137
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxlZ2VuZC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0RvQiIsImZpbGUiOiJMZWdlbmQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IEZyYWdtZW50IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBMZWdlbmRJdGVtIH0gZnJvbSAnLi9MZWdlbmRJdGVtJztcbmltcG9ydCB7IFNoYXBlRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgS2V5IH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBTY3JvbGxiYXIgfSBmcm9tICcuLi8uLi8uLi9TY3JvbGxiYXIvU2Nyb2xsYmFyJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBCYXJTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgTGluZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvTGluZUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQXJlYVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQXJlYUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQnViYmxlU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CdWJibGVDaGFydFYyL3R5cGVzJztcblxudHlwZSBJdGVtPFQ+ID0ge1xuICBsZWdlbmRJdGVtczogQXJyYXk8U2hhcGVEZWZpbml0aW9uPFQ+PjtcbiAgdmlzaWJsZVlLZXlzOiBBcnJheTxzdHJpbmc+O1xuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQXJyYXk8Q29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZT47XG59O1xuZXhwb3J0IHR5cGUgTGVnZW5kUHJvcHM8VD4gPSB7XG4gIHNldFZpc2libGVZS2V5cz86IFJlYWN0LkRpc3BhdGNoPFJlYWN0LlNldFN0YXRlQWN0aW9uPEFycmF5PHN0cmluZz4+PjtcbiAga2V5czogeyBba2V5OiBzdHJpbmddOiBLZXkgfTtcbiAgbWFyZ2luTGVmdDogbnVtYmVyO1xuICBpdGVtczogSXRlbTxUPltdO1xufTtcblxuZXhwb3J0IGNvbnN0IExlZ2VuZCA9ICh7XG4gIGtleXMsXG4gIHNldFZpc2libGVZS2V5cyxcbiAgbWFyZ2luTGVmdCxcbiAgaXRlbXMsXG59OiBMZWdlbmRQcm9wczxCYXJTdHlsZXMgfCBMaW5lU3R5bGVzIHwgQXJlYVN0eWxlcyB8IEJ1YmJsZVN0eWxlcz4pID0+IHtcbiAgY29uc3QgaGFuZGxlT25DbGljayA9IChcbiAgICBpdGVtOiBJdGVtPEJhclN0eWxlcyB8IExpbmVTdHlsZXMgfCBBcmVhU3R5bGVzIHwgQnViYmxlU3R5bGVzPixcbiAgICBsZWdlbmRJdGVtOiBTaGFwZURlZmluaXRpb248QmFyU3R5bGVzIHwgTGluZVN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+XG4gICkgPT4ge1xuICAgIHNldFZpc2libGVZS2V5cyAmJlxuICAgICAgc2V0VmlzaWJsZVlLZXlzKHByZXYgPT4ge1xuICAgICAgICBsZXQgbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zOiBBcnJheTxzdHJpbmc+ID0gW107XG5cbiAgICAgICAgaWYgKHByZXYubGVuZ3RoID09PSBpdGVtLmxlZ2VuZEl0ZW1zLmxlbmd0aCkge1xuICAgICAgICAgIG5ld1Zpc2libGVMZWdlbmRJdGVtcyA9IFtsZWdlbmRJdGVtLnlLZXldO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChwcmV2LmluY2x1ZGVzKGxlZ2VuZEl0ZW0ueUtleSkpIHtcbiAgICAgICAgICAgIG5ld1Zpc2libGVMZWdlbmRJdGVtcyA9IHByZXYuZmlsdGVyKHByZXZMZWdlbmRJdGVtSWQgPT4gcHJldkxlZ2VuZEl0ZW1JZCAhPT0gbGVnZW5kSXRlbS55S2V5KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zID0gWy4uLnByZXYsIGxlZ2VuZEl0ZW0ueUtleV07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5ld1Zpc2libGVMZWdlbmRJdGVtcy5sZW5ndGggPT09IDBcbiAgICAgICAgICA/IGl0ZW0ubGVnZW5kSXRlbXMubWFwKGxlZ2VuZEl0ZW0gPT4gbGVnZW5kSXRlbS55S2V5KVxuICAgICAgICAgIDogbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zO1xuICAgICAgfSk7XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17Y3NzKHsgaGVpZ2h0OiA0MCwgcGFkZGluZ1RvcDogOCB9KX0+XG4gICAgICA8U2Nyb2xsYmFyXG4gICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgICAgICAgZmxleFdyYXA6ICdub3dyYXAnLFxuICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgIG1hcmdpbkxlZnQ6IG1hcmdpbkxlZnQgPyBgJHttYXJnaW5MZWZ0fXB4YCA6IHVuZGVmaW5lZCxcbiAgICAgICAgfSl9XG4gICAgICAgIHg9e3RydWV9XG4gICAgICA+XG4gICAgICAgIHtpdGVtcy5tYXAoKGl0ZW0sIGluZGV4KSA9PiAoXG4gICAgICAgICAgPEZyYWdtZW50IGtleT17aW5kZXh9PlxuICAgICAgICAgICAge2l0ZW0ubGVnZW5kSXRlbXMubWFwKFxuICAgICAgICAgICAgICBsZWdlbmRJdGVtID0+XG4gICAgICAgICAgICAgICAga2V5c1tsZWdlbmRJdGVtLnlLZXldICYmIChcbiAgICAgICAgICAgICAgICAgIDxMZWdlbmRJdGVtXG4gICAgICAgICAgICAgICAgICAgIHsuLi5sZWdlbmRJdGVtfVxuICAgICAgICAgICAgICAgICAgICBrZXk9e2BsZWdlbmQtJHtsZWdlbmRJdGVtLnlLZXl9YH1cbiAgICAgICAgICAgICAgICAgICAgeUtleUZvcm1hdHRlZD17a2V5c1tsZWdlbmRJdGVtLnlLZXldLmtleUZvcm1hdHRlZH1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZU9uQ2xpY2soaXRlbSwgbGVnZW5kSXRlbSk7XG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgIHZpc2libGU9e3NldFZpc2libGVZS2V5cyA/IGl0ZW0udmlzaWJsZVlLZXlzLmluY2x1ZGVzKGxlZ2VuZEl0ZW0ueUtleSkgOiB0cnVlfVxuICAgICAgICAgICAgICAgICAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcz17aXRlbS5jb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlc31cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L0ZyYWdtZW50PlxuICAgICAgICApKX1cbiAgICAgIDwvU2Nyb2xsYmFyPlxuICAgIDwvZGl2PlxuICApO1xufTtcbiJdfQ== */",
45138
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$7
45139
+ }),
45140
+ children: jsxRuntime.jsx(Scrollbar, {
45141
+ className: /*#__PURE__*/css$1.css({
45142
+ display: 'flex',
45143
+ flexDirection: 'row',
45144
+ flexWrap: 'nowrap',
45145
+ alignItems: 'center',
45146
+ marginLeft: marginLeft ? marginLeft + "px" : undefined
45147
+ }, ";label:Legend;", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxlZ2VuZC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0RtQiIsImZpbGUiOiJMZWdlbmQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IEZyYWdtZW50IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBMZWdlbmRJdGVtIH0gZnJvbSAnLi9MZWdlbmRJdGVtJztcbmltcG9ydCB7IFNoYXBlRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgS2V5IH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBTY3JvbGxiYXIgfSBmcm9tICcuLi8uLi8uLi9TY3JvbGxiYXIvU2Nyb2xsYmFyJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBCYXJTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgTGluZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvTGluZUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQXJlYVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQXJlYUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQnViYmxlU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CdWJibGVDaGFydFYyL3R5cGVzJztcblxudHlwZSBJdGVtPFQ+ID0ge1xuICBsZWdlbmRJdGVtczogQXJyYXk8U2hhcGVEZWZpbml0aW9uPFQ+PjtcbiAgdmlzaWJsZVlLZXlzOiBBcnJheTxzdHJpbmc+O1xuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQXJyYXk8Q29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZT47XG59O1xuZXhwb3J0IHR5cGUgTGVnZW5kUHJvcHM8VD4gPSB7XG4gIHNldFZpc2libGVZS2V5cz86IFJlYWN0LkRpc3BhdGNoPFJlYWN0LlNldFN0YXRlQWN0aW9uPEFycmF5PHN0cmluZz4+PjtcbiAga2V5czogeyBba2V5OiBzdHJpbmddOiBLZXkgfTtcbiAgbWFyZ2luTGVmdDogbnVtYmVyO1xuICBpdGVtczogSXRlbTxUPltdO1xufTtcblxuZXhwb3J0IGNvbnN0IExlZ2VuZCA9ICh7XG4gIGtleXMsXG4gIHNldFZpc2libGVZS2V5cyxcbiAgbWFyZ2luTGVmdCxcbiAgaXRlbXMsXG59OiBMZWdlbmRQcm9wczxCYXJTdHlsZXMgfCBMaW5lU3R5bGVzIHwgQXJlYVN0eWxlcyB8IEJ1YmJsZVN0eWxlcz4pID0+IHtcbiAgY29uc3QgaGFuZGxlT25DbGljayA9IChcbiAgICBpdGVtOiBJdGVtPEJhclN0eWxlcyB8IExpbmVTdHlsZXMgfCBBcmVhU3R5bGVzIHwgQnViYmxlU3R5bGVzPixcbiAgICBsZWdlbmRJdGVtOiBTaGFwZURlZmluaXRpb248QmFyU3R5bGVzIHwgTGluZVN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+XG4gICkgPT4ge1xuICAgIHNldFZpc2libGVZS2V5cyAmJlxuICAgICAgc2V0VmlzaWJsZVlLZXlzKHByZXYgPT4ge1xuICAgICAgICBsZXQgbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zOiBBcnJheTxzdHJpbmc+ID0gW107XG5cbiAgICAgICAgaWYgKHByZXYubGVuZ3RoID09PSBpdGVtLmxlZ2VuZEl0ZW1zLmxlbmd0aCkge1xuICAgICAgICAgIG5ld1Zpc2libGVMZWdlbmRJdGVtcyA9IFtsZWdlbmRJdGVtLnlLZXldO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChwcmV2LmluY2x1ZGVzKGxlZ2VuZEl0ZW0ueUtleSkpIHtcbiAgICAgICAgICAgIG5ld1Zpc2libGVMZWdlbmRJdGVtcyA9IHByZXYuZmlsdGVyKHByZXZMZWdlbmRJdGVtSWQgPT4gcHJldkxlZ2VuZEl0ZW1JZCAhPT0gbGVnZW5kSXRlbS55S2V5KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zID0gWy4uLnByZXYsIGxlZ2VuZEl0ZW0ueUtleV07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5ld1Zpc2libGVMZWdlbmRJdGVtcy5sZW5ndGggPT09IDBcbiAgICAgICAgICA/IGl0ZW0ubGVnZW5kSXRlbXMubWFwKGxlZ2VuZEl0ZW0gPT4gbGVnZW5kSXRlbS55S2V5KVxuICAgICAgICAgIDogbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zO1xuICAgICAgfSk7XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17Y3NzKHsgaGVpZ2h0OiA0MCwgcGFkZGluZ1RvcDogOCB9KX0+XG4gICAgICA8U2Nyb2xsYmFyXG4gICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgICAgICAgZmxleFdyYXA6ICdub3dyYXAnLFxuICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgIG1hcmdpbkxlZnQ6IG1hcmdpbkxlZnQgPyBgJHttYXJnaW5MZWZ0fXB4YCA6IHVuZGVmaW5lZCxcbiAgICAgICAgfSl9XG4gICAgICAgIHg9e3RydWV9XG4gICAgICA+XG4gICAgICAgIHtpdGVtcy5tYXAoKGl0ZW0sIGluZGV4KSA9PiAoXG4gICAgICAgICAgPEZyYWdtZW50IGtleT17aW5kZXh9PlxuICAgICAgICAgICAge2l0ZW0ubGVnZW5kSXRlbXMubWFwKFxuICAgICAgICAgICAgICBsZWdlbmRJdGVtID0+XG4gICAgICAgICAgICAgICAga2V5c1tsZWdlbmRJdGVtLnlLZXldICYmIChcbiAgICAgICAgICAgICAgICAgIDxMZWdlbmRJdGVtXG4gICAgICAgICAgICAgICAgICAgIHsuLi5sZWdlbmRJdGVtfVxuICAgICAgICAgICAgICAgICAgICBrZXk9e2BsZWdlbmQtJHtsZWdlbmRJdGVtLnlLZXl9YH1cbiAgICAgICAgICAgICAgICAgICAgeUtleUZvcm1hdHRlZD17a2V5c1tsZWdlbmRJdGVtLnlLZXldLmtleUZvcm1hdHRlZH1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZU9uQ2xpY2soaXRlbSwgbGVnZW5kSXRlbSk7XG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgIHZpc2libGU9e3NldFZpc2libGVZS2V5cyA/IGl0ZW0udmlzaWJsZVlLZXlzLmluY2x1ZGVzKGxlZ2VuZEl0ZW0ueUtleSkgOiB0cnVlfVxuICAgICAgICAgICAgICAgICAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcz17aXRlbS5jb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlc31cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L0ZyYWdtZW50PlxuICAgICAgICApKX1cbiAgICAgIDwvU2Nyb2xsYmFyPlxuICAgIDwvZGl2PlxuICApO1xufTtcbiJdfQ== */"),
45148
+ x: true,
45149
+ children: items.map(function (item, index) {
45150
+ return jsxRuntime.jsx(React.Fragment, {
45151
+ children: item.legendItems.map(function (legendItem) {
45152
+ return keys[legendItem.yKey] && react.createElement(LegendItem, _extends({}, legendItem, {
45153
+ key: "legend-" + legendItem.yKey,
45154
+ yKeyFormatted: keys[legendItem.yKey].keyFormatted,
45155
+ onClick: function onClick() {
45156
+ handleOnClick(item, legendItem);
45157
+ },
45158
+ visible: setVisibleYKeys ? item.visibleYKeys.includes(legendItem.yKey) : true,
45159
+ conditionalFormattingRules: item.conditionalFormattingRules
45160
+ }));
45161
+ })
45162
+ }, index);
45163
+ })
45164
+ })
45165
+ });
45166
+ };
45167
+
45168
+ var thresholdId$1 = function thresholdId(args, idPrefix, position, uniqueId) {
45169
+ var rawIdKey = args.yKey + "_" + args.value + "_" + args.operator;
45170
+ return (position + "_" + idPrefix + "_" + uniqueId + "_" + btoa(rawIdKey)).replace(/=/g, '');
45171
+ };
45172
+ function buildClipPathId$1(rule, idPrefix, uniqueId) {
45173
+ var isGreater = rule.operator === '>=';
45174
+ var clipPathId = isGreater ? thresholdId$1(rule, idPrefix, 'above', uniqueId) : thresholdId$1(rule, idPrefix, 'below', uniqueId);
45175
+ return clipPathId;
45176
+ }
45177
+ function getRule(rules, yKey) {
45178
+ return rules.filter(function (threshold) {
45179
+ return threshold.yKey === yKey;
45180
+ });
45181
+ }
45182
+
45183
+ var ThresholdArea = function ThresholdArea(props) {
45184
+ var chartHeight = props.height - props.margin.top;
45185
+ return jsxRuntime.jsxs(React.Fragment, {
45186
+ children: [jsxRuntime.jsx("g", {
45187
+ transform: "translate(50, 0)",
45188
+ children: props.rules.map(function (thresh, index) {
45189
+ var _props$theme$stroke, _props$theme;
45190
+ var thresholdYCoord = props.yScale(thresh.value);
45191
+ return jsxRuntime.jsx("g", {
45192
+ children: jsxRuntime.jsx("line", {
45193
+ x1: 0,
45194
+ y1: thresholdYCoord,
45195
+ x2: props.width - props.margin.right - props.margin.left,
45196
+ y2: thresholdYCoord,
45197
+ stroke: (_props$theme$stroke = (_props$theme = props.theme) == null ? void 0 : _props$theme.stroke) != null ? _props$theme$stroke : '#F4F4F4',
45198
+ strokeWidth: "1",
45199
+ fill: "transparent",
45200
+ "data-themeapi": "charts.threshold.stroke"
45201
+ })
45202
+ }, "threshold-" + index);
45203
+ })
45204
+ }), jsxRuntime.jsx("defs", {
45205
+ children: props.rules.map(function (thresh, index) {
45206
+ var thresholdYCoord = props.yScale(thresh.value);
45207
+ if (!thresholdYCoord) return null;
45208
+ return jsxRuntime.jsxs(React.Fragment, {
45209
+ children: [jsxRuntime.jsx("clipPath", {
45210
+ id: thresholdId$1(thresh, props.idPrefix, 'above', props.uniqueId),
45211
+ children: jsxRuntime.jsx("rect", {
45212
+ x: "0",
45213
+ y: "0",
45214
+ width: "100%",
45215
+ height: thresholdYCoord
45216
+ })
45217
+ }), jsxRuntime.jsx("clipPath", {
45218
+ id: thresholdId$1(thresh, props.idPrefix, 'intermediate', props.uniqueId),
45219
+ children: jsxRuntime.jsx("rect", {
45220
+ x: "0",
45221
+ y: thresholdYCoord,
45222
+ width: "100%",
45223
+ height: 0
45224
+ })
45225
+ }), jsxRuntime.jsx("clipPath", {
45226
+ id: thresholdId$1(thresh, props.idPrefix, 'below', props.uniqueId),
45227
+ children: jsxRuntime.jsx("rect", {
45228
+ x: "0",
45229
+ y: thresholdYCoord,
45230
+ width: "100%",
45231
+ height: chartHeight - thresholdYCoord
45232
+ })
45233
+ })]
45234
+ }, "threshold-" + index);
45235
+ })
45236
+ })]
45237
+ });
45238
+ };
45239
+
45240
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$8() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
45241
+ var MIN_TOOLTIP_WIDTH = 180;
45242
+ var TOOLTIP_OFFSET = 20;
45243
+ var SCROLLBAR_WIDTH = 40;
45244
+ var getTooltipValue = function getTooltipValue(tooltipData, yKey) {
45245
+ var data = tooltipData[yKey];
45246
+ return (data == null ? void 0 : data.formattedValue) || (data == null ? void 0 : data.value) || '';
45247
+ };
45248
+ var Tooltip$1 = function Tooltip(_ref) {
45249
+ var _tooltipData$xKey$for, _tooltipData$xKey;
45250
+ var keys = _ref.keys,
45251
+ showRoundedTotal = _ref.showRoundedTotal,
45252
+ tooltipData = _ref.tooltipData,
45253
+ tooltipLeft = _ref.tooltipLeft,
45254
+ tooltipTop = _ref.tooltipTop,
45255
+ xKey = _ref.xKey,
45256
+ yKeys = _ref.yKeys,
45257
+ theme = _ref.theme,
45258
+ items = _ref.items,
45259
+ _ref$shouldShowColorL = _ref.shouldShowColorLegend,
45260
+ shouldShowColorLegend = _ref$shouldShowColorL === void 0 ? true : _ref$shouldShowColorL;
45261
+ var tooltipRef = React.useRef(null);
45262
+ var _useState = React.useState({
45263
+ left: tooltipLeft
45264
+ }),
45265
+ position = _useState[0],
45266
+ setPosition = _useState[1];
45267
+ React.useEffect(function () {
45268
+ var adjustTooltipPosition = function adjustTooltipPosition() {
45269
+ var tooltipElement = tooltipRef.current;
45270
+ if (tooltipElement) {
45271
+ var screenWidth = window.innerWidth;
45272
+ var rect = tooltipElement.getBoundingClientRect();
45273
+ var width = rect.width;
45274
+ if (width < MIN_TOOLTIP_WIDTH) {
45275
+ width = MIN_TOOLTIP_WIDTH;
45276
+ }
45277
+ var left = tooltipLeft + TOOLTIP_OFFSET;
45278
+ if (tooltipLeft + width > screenWidth - SCROLLBAR_WIDTH) {
45279
+ left = tooltipLeft - width - TOOLTIP_OFFSET;
45280
+ }
45281
+ setPosition({
45282
+ left: left
45283
+ });
45284
+ }
45285
+ };
45286
+ adjustTooltipPosition();
45287
+ }, [tooltipLeft]);
45288
+ return /*#__PURE__*/ReactDOM.createPortal(jsxRuntime.jsx("div", {
45289
+ ref: tooltipRef,
45290
+ style: _extends({
45291
+ position: 'absolute',
45292
+ left: position.left,
45293
+ top: tooltipTop,
45294
+ zIndex: 2147483647 * 10
45295
+ }, theme),
45296
+ children: jsxRuntime.jsxs("div", {
45297
+ style: {
45298
+ wordBreak: 'break-all'
45299
+ },
45300
+ children: [jsxRuntime.jsx("div", {
45301
+ className: /*#__PURE__*/css$1.css({
45302
+ fontFamily: 'inherit',
45303
+ lineHeight: 'inherit',
45304
+ letterSpacing: 'inherit',
45305
+ fontWeight: 'bold',
45306
+ fontSize: '15px',
45307
+ width: '100%',
45308
+ minWidth: MIN_TOOLTIP_WIDTH
45309
+ }, ";label:Tooltip;", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtHcUIiLCJmaWxlIjoiVG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgQ1NTUHJvcGVydGllcywgRnJhZ21lbnQsIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNyZWF0ZVBvcnRhbCB9IGZyb20gJ3JlYWN0LWRvbSc7XG5cbmltcG9ydCB7IGdldENvbG9yIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgTGVnZW5kSXRlbUJveCB9IGZyb20gJy4uL0xlZ2VuZC9MZWdlbmRJdGVtQm94JztcbmltcG9ydCB7IFNoYXBlRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgRGF0YUl0ZW0sIEtleSB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgTGluZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvTGluZUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEFyZWFTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0FyZWFDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEJ1YmJsZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQnViYmxlQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9jc3MnO1xuXG5jb25zdCBNSU5fVE9PTFRJUF9XSURUSCA9IDE4MDtcbmNvbnN0IFRPT0xUSVBfT0ZGU0VUID0gMjA7XG5jb25zdCBTQ1JPTExCQVJfV0lEVEggPSA0MDtcblxuY29uc3QgZ2V0VG9vbHRpcFZhbHVlID0gKHRvb2x0aXBEYXRhOiB7IFtrZXlJZDogc3RyaW5nXTogRGF0YUl0ZW0gfSwgeUtleTogc3RyaW5nKTogc3RyaW5nIHwgbnVtYmVyID0+IHtcbiAgY29uc3QgZGF0YSA9IHRvb2x0aXBEYXRhW3lLZXldO1xuICByZXR1cm4gZGF0YT8uZm9ybWF0dGVkVmFsdWUgfHwgZGF0YT8udmFsdWUgfHwgJyc7XG59O1xuXG5pbnRlcmZhY2UgVG9vbHRpcFByb3BzPFQ+IHtcbiAga2V5czogeyBba2V5OiBzdHJpbmddOiBLZXkgfTtcbiAgc2hvd1JvdW5kZWRUb3RhbDogYm9vbGVhbjtcbiAgdG9vbHRpcERhdGE6IHtcbiAgICBba2V5SWQ6IHN0cmluZ106IERhdGFJdGVtO1xuICB9O1xuICB0b29sdGlwTGVmdDogbnVtYmVyO1xuICB0b29sdGlwVG9wOiBudW1iZXI7XG4gIHhLZXk6IHN0cmluZztcbiAgeUtleXM/OiBzdHJpbmdbXTtcbiAgaXRlbXM6IHtcbiAgICBsZWdlbmRJdGVtczogQXJyYXk8U2hhcGVEZWZpbml0aW9uPFQ+PjtcbiAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQXJyYXk8Q29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZT47XG4gICAgdmlzaWJsZVlLZXlzOiBzdHJpbmdbXTtcbiAgfVtdO1xuICB0aGVtZTogQ1NTUHJvcGVydGllcztcbiAgc2hvdWxkU2hvd0NvbG9yTGVnZW5kPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IFRvb2x0aXAgPSAoe1xuICBrZXlzLFxuICBzaG93Um91bmRlZFRvdGFsLFxuICB0b29sdGlwRGF0YSxcbiAgdG9vbHRpcExlZnQsXG4gIHRvb2x0aXBUb3AsXG4gIHhLZXksXG4gIHlLZXlzLFxuICB0aGVtZSxcbiAgaXRlbXMsXG4gIHNob3VsZFNob3dDb2xvckxlZ2VuZCA9IHRydWUsXG59OiBUb29sdGlwUHJvcHM8TGluZVN0eWxlcyB8IEJhclN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+KSA9PiB7XG4gIGNvbnN0IHRvb2x0aXBSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICBjb25zdCBbcG9zaXRpb24sIHNldFBvc2l0aW9uXSA9IHVzZVN0YXRlPHsgbGVmdDogbnVtYmVyIH0+KHtcbiAgICBsZWZ0OiB0b29sdGlwTGVmdCxcbiAgfSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBhZGp1c3RUb29sdGlwUG9zaXRpb24gPSAoKSA9PiB7XG4gICAgICBjb25zdCB0b29sdGlwRWxlbWVudCA9IHRvb2x0aXBSZWYuY3VycmVudDtcblxuICAgICAgaWYgKHRvb2x0aXBFbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IHNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG5cbiAgICAgICAgY29uc3QgcmVjdCA9IHRvb2x0aXBFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICAgIGxldCB3aWR0aCA9IHJlY3Qud2lkdGg7XG5cbiAgICAgICAgaWYgKHdpZHRoIDwgTUlOX1RPT0xUSVBfV0lEVEgpIHtcbiAgICAgICAgICB3aWR0aCA9IE1JTl9UT09MVElQX1dJRFRIO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGxlZnQgPSB0b29sdGlwTGVmdCArIFRPT0xUSVBfT0ZGU0VUO1xuXG4gICAgICAgIGlmICh0b29sdGlwTGVmdCArIHdpZHRoID4gc2NyZWVuV2lkdGggLSBTQ1JPTExCQVJfV0lEVEgpIHtcbiAgICAgICAgICBsZWZ0ID0gdG9vbHRpcExlZnQgLSB3aWR0aCAtIFRPT0xUSVBfT0ZGU0VUO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0UG9zaXRpb24oeyBsZWZ0IH0pO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBhZGp1c3RUb29sdGlwUG9zaXRpb24oKTtcbiAgfSwgW3Rvb2x0aXBMZWZ0XSk7XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChcbiAgICA8ZGl2XG4gICAgICByZWY9e3Rvb2x0aXBSZWZ9XG4gICAgICBzdHlsZT17e1xuICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgbGVmdDogcG9zaXRpb24ubGVmdCxcbiAgICAgICAgdG9wOiB0b29sdGlwVG9wLFxuICAgICAgICB6SW5kZXg6IDIxNDc0ODM2NDcgKiAxMCxcbiAgICAgICAgLi4udGhlbWUsXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxkaXYgc3R5bGU9e3sgd29yZEJyZWFrOiAnYnJlYWstYWxsJyB9fT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICAgIGZvbnRGYW1pbHk6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGxpbmVIZWlnaHQ6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGxldHRlclNwYWNpbmc6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGZvbnRXZWlnaHQ6ICdib2xkJyxcbiAgICAgICAgICAgIGZvbnRTaXplOiAnMTVweCcsXG4gICAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgICAgbWluV2lkdGg6IE1JTl9UT09MVElQX1dJRFRILFxuICAgICAgICAgIH0pfVxuICAgICAgICA+XG4gICAgICAgICAge3Rvb2x0aXBEYXRhW3hLZXldPy5mb3JtYXR0ZWRWYWx1ZSA/PyB0b29sdGlwRGF0YVt4S2V5XS52YWx1ZX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIHt0b29sdGlwRGF0YVsnX19xdWFkcmFudF9fJ10gJiYgKFxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICAgICAgZm9udEZhbWlseTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgICBsaW5lSGVpZ2h0OiAnaW5oZXJpdCcsXG4gICAgICAgICAgICAgIGxldHRlclNwYWNpbmc6ICdpbmhlcml0JyxcbiAgICAgICAgICAgICAgZm9udFNpemU6ICcxM3B4JyxcbiAgICAgICAgICAgICAgZm9udFdlaWdodDogJ2JvbGQnLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge3Rvb2x0aXBEYXRhWydfX3F1YWRyYW50X18nXS52YWx1ZX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgICAgPHRhYmxlXG4gICAgICAgICAgY2VsbFBhZGRpbmc9ezB9XG4gICAgICAgICAgY2VsbFNwYWNpbmc9ezB9XG4gICAgICAgICAgY2xhc3NOYW1lPXtjc3Moe1xuICAgICAgICAgICAgbWFyZ2luOiAnMCcsXG4gICAgICAgICAgICBib3JkZXJTcGFjaW5nOiAnMCcsXG4gICAgICAgICAgICBib3JkZXJDb2xsYXBzZTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgYm9yZGVyOiAnbm9uZScsXG4gICAgICAgICAgfSl9XG4gICAgICAgID5cbiAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDxGcmFnbWVudCBrZXk9e2luZGV4fT5cbiAgICAgICAgICAgICAgICAgIHtpdGVtLmxlZ2VuZEl0ZW1zPy5tYXAoKGxlZ2VuZEl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdG9vbHRpcERhdGFbbGVnZW5kSXRlbS55S2V5XSB8fCB0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgLy8geUtleSBjb3VsZCBub3QgYmUgZm91bmQgaW4gdG9vbHRpcERhdGFcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgIGl0ZW0udmlzaWJsZVlLZXlzPy5pbmNsdWRlcyhsZWdlbmRJdGVtLnlLZXkpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBrZXk9e2Ake2xlZ2VuZEl0ZW0ueUtleX0tJHtpbmRleH0tJHt0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlfWB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7c2hvdWxkU2hvd0NvbG9yTGVnZW5kICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsQWxpZ246ICdtaWRkbGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBpbmRleCA9PT0gMCA/ICcxMnB4IDhweCAwIDAnIDogJzhweCA4cHggMCAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICdhdXRvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExlZ2VuZEl0ZW1Cb3hcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I9e2dldENvbG9yKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0Q29sb3I6IGxlZ2VuZEl0ZW0uY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHRvb2x0aXBEYXRhW2xlZ2VuZEl0ZW0ueUtleV0udmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUtleTogbGVnZW5kSXRlbS55S2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBpdGVtLmNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzID8/IFtdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e2xlZ2VuZEl0ZW0uc3R5bGUgYXMgTGluZVN0eWxlc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUtleT17bGVnZW5kSXRlbS55S2V5fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgcGFkZGluZzogJzhweCAwIDAgMCcgfX0+e2tleXNbbGVnZW5kSXRlbS55S2V5XS5rZXlGb3JtYXR0ZWR9PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPXt7IGZvbnRXZWlnaHQ6ICdib2xkJywgcGFkZGluZzogJzhweCAwIDAgMTZweCcgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2dldFRvb2x0aXBWYWx1ZSh0b29sdGlwRGF0YSwgbGVnZW5kSXRlbS55S2V5KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgPC9GcmFnbWVudD5cbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pfVxuXG4gICAgICAgICAgICB7c2hvd1JvdW5kZWRUb3RhbCAmJiB5S2V5cyAmJiAoXG4gICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICA8dGQgY29sU3Bhbj17Mn0gc3R5bGU9e3sgcGFkZGluZzogJzEycHggMCAwIDAnIH19PlxuICAgICAgICAgICAgICAgICAgUm91bmRlZCBUb3RhbFxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPHRkIHN0eWxlPXt7IGZvbnRXZWlnaHQ6ICdib2xkJywgcGFkZGluZzogJzEycHggMCAwIDE2cHgnIH19PlxuICAgICAgICAgICAgICAgICAge3lLZXlzLnJlZHVjZSgodG90YWwsIGtleSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG90YWwgKyBNYXRoLnJvdW5kKHRvb2x0aXBEYXRhW2tleV0udmFsdWUgYXMgbnVtYmVyKTtcbiAgICAgICAgICAgICAgICAgIH0sIDApfVxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgIDwvdGFibGU+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj4sXG4gICAgZG9jdW1lbnQuYm9keSxcbiAgKTtcbn07XG4iXX0= */"),
45310
+ children: (_tooltipData$xKey$for = (_tooltipData$xKey = tooltipData[xKey]) == null ? void 0 : _tooltipData$xKey.formattedValue) != null ? _tooltipData$xKey$for : tooltipData[xKey].value
45311
+ }), tooltipData['__quadrant__'] && jsxRuntime.jsx("div", {
45312
+ className: /*#__PURE__*/css$1.css( {
45313
+ name: "woqoxg-Tooltip",
45314
+ styles: "font-family:inherit;line-height:inherit;letter-spacing:inherit;font-size:13px;font-weight:bold;label:Tooltip;",
45315
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdIdUIiLCJmaWxlIjoiVG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgQ1NTUHJvcGVydGllcywgRnJhZ21lbnQsIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNyZWF0ZVBvcnRhbCB9IGZyb20gJ3JlYWN0LWRvbSc7XG5cbmltcG9ydCB7IGdldENvbG9yIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgTGVnZW5kSXRlbUJveCB9IGZyb20gJy4uL0xlZ2VuZC9MZWdlbmRJdGVtQm94JztcbmltcG9ydCB7IFNoYXBlRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgRGF0YUl0ZW0sIEtleSB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgTGluZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvTGluZUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEFyZWFTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0FyZWFDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEJ1YmJsZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQnViYmxlQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9jc3MnO1xuXG5jb25zdCBNSU5fVE9PTFRJUF9XSURUSCA9IDE4MDtcbmNvbnN0IFRPT0xUSVBfT0ZGU0VUID0gMjA7XG5jb25zdCBTQ1JPTExCQVJfV0lEVEggPSA0MDtcblxuY29uc3QgZ2V0VG9vbHRpcFZhbHVlID0gKHRvb2x0aXBEYXRhOiB7IFtrZXlJZDogc3RyaW5nXTogRGF0YUl0ZW0gfSwgeUtleTogc3RyaW5nKTogc3RyaW5nIHwgbnVtYmVyID0+IHtcbiAgY29uc3QgZGF0YSA9IHRvb2x0aXBEYXRhW3lLZXldO1xuICByZXR1cm4gZGF0YT8uZm9ybWF0dGVkVmFsdWUgfHwgZGF0YT8udmFsdWUgfHwgJyc7XG59O1xuXG5pbnRlcmZhY2UgVG9vbHRpcFByb3BzPFQ+IHtcbiAga2V5czogeyBba2V5OiBzdHJpbmddOiBLZXkgfTtcbiAgc2hvd1JvdW5kZWRUb3RhbDogYm9vbGVhbjtcbiAgdG9vbHRpcERhdGE6IHtcbiAgICBba2V5SWQ6IHN0cmluZ106IERhdGFJdGVtO1xuICB9O1xuICB0b29sdGlwTGVmdDogbnVtYmVyO1xuICB0b29sdGlwVG9wOiBudW1iZXI7XG4gIHhLZXk6IHN0cmluZztcbiAgeUtleXM/OiBzdHJpbmdbXTtcbiAgaXRlbXM6IHtcbiAgICBsZWdlbmRJdGVtczogQXJyYXk8U2hhcGVEZWZpbml0aW9uPFQ+PjtcbiAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQXJyYXk8Q29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZT47XG4gICAgdmlzaWJsZVlLZXlzOiBzdHJpbmdbXTtcbiAgfVtdO1xuICB0aGVtZTogQ1NTUHJvcGVydGllcztcbiAgc2hvdWxkU2hvd0NvbG9yTGVnZW5kPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IFRvb2x0aXAgPSAoe1xuICBrZXlzLFxuICBzaG93Um91bmRlZFRvdGFsLFxuICB0b29sdGlwRGF0YSxcbiAgdG9vbHRpcExlZnQsXG4gIHRvb2x0aXBUb3AsXG4gIHhLZXksXG4gIHlLZXlzLFxuICB0aGVtZSxcbiAgaXRlbXMsXG4gIHNob3VsZFNob3dDb2xvckxlZ2VuZCA9IHRydWUsXG59OiBUb29sdGlwUHJvcHM8TGluZVN0eWxlcyB8IEJhclN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+KSA9PiB7XG4gIGNvbnN0IHRvb2x0aXBSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICBjb25zdCBbcG9zaXRpb24sIHNldFBvc2l0aW9uXSA9IHVzZVN0YXRlPHsgbGVmdDogbnVtYmVyIH0+KHtcbiAgICBsZWZ0OiB0b29sdGlwTGVmdCxcbiAgfSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBhZGp1c3RUb29sdGlwUG9zaXRpb24gPSAoKSA9PiB7XG4gICAgICBjb25zdCB0b29sdGlwRWxlbWVudCA9IHRvb2x0aXBSZWYuY3VycmVudDtcblxuICAgICAgaWYgKHRvb2x0aXBFbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IHNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG5cbiAgICAgICAgY29uc3QgcmVjdCA9IHRvb2x0aXBFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICAgIGxldCB3aWR0aCA9IHJlY3Qud2lkdGg7XG5cbiAgICAgICAgaWYgKHdpZHRoIDwgTUlOX1RPT0xUSVBfV0lEVEgpIHtcbiAgICAgICAgICB3aWR0aCA9IE1JTl9UT09MVElQX1dJRFRIO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGxlZnQgPSB0b29sdGlwTGVmdCArIFRPT0xUSVBfT0ZGU0VUO1xuXG4gICAgICAgIGlmICh0b29sdGlwTGVmdCArIHdpZHRoID4gc2NyZWVuV2lkdGggLSBTQ1JPTExCQVJfV0lEVEgpIHtcbiAgICAgICAgICBsZWZ0ID0gdG9vbHRpcExlZnQgLSB3aWR0aCAtIFRPT0xUSVBfT0ZGU0VUO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0UG9zaXRpb24oeyBsZWZ0IH0pO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBhZGp1c3RUb29sdGlwUG9zaXRpb24oKTtcbiAgfSwgW3Rvb2x0aXBMZWZ0XSk7XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChcbiAgICA8ZGl2XG4gICAgICByZWY9e3Rvb2x0aXBSZWZ9XG4gICAgICBzdHlsZT17e1xuICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgbGVmdDogcG9zaXRpb24ubGVmdCxcbiAgICAgICAgdG9wOiB0b29sdGlwVG9wLFxuICAgICAgICB6SW5kZXg6IDIxNDc0ODM2NDcgKiAxMCxcbiAgICAgICAgLi4udGhlbWUsXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxkaXYgc3R5bGU9e3sgd29yZEJyZWFrOiAnYnJlYWstYWxsJyB9fT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICAgIGZvbnRGYW1pbHk6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGxpbmVIZWlnaHQ6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGxldHRlclNwYWNpbmc6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGZvbnRXZWlnaHQ6ICdib2xkJyxcbiAgICAgICAgICAgIGZvbnRTaXplOiAnMTVweCcsXG4gICAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgICAgbWluV2lkdGg6IE1JTl9UT09MVElQX1dJRFRILFxuICAgICAgICAgIH0pfVxuICAgICAgICA+XG4gICAgICAgICAge3Rvb2x0aXBEYXRhW3hLZXldPy5mb3JtYXR0ZWRWYWx1ZSA/PyB0b29sdGlwRGF0YVt4S2V5XS52YWx1ZX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIHt0b29sdGlwRGF0YVsnX19xdWFkcmFudF9fJ10gJiYgKFxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICAgICAgZm9udEZhbWlseTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgICBsaW5lSGVpZ2h0OiAnaW5oZXJpdCcsXG4gICAgICAgICAgICAgIGxldHRlclNwYWNpbmc6ICdpbmhlcml0JyxcbiAgICAgICAgICAgICAgZm9udFNpemU6ICcxM3B4JyxcbiAgICAgICAgICAgICAgZm9udFdlaWdodDogJ2JvbGQnLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge3Rvb2x0aXBEYXRhWydfX3F1YWRyYW50X18nXS52YWx1ZX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgICAgPHRhYmxlXG4gICAgICAgICAgY2VsbFBhZGRpbmc9ezB9XG4gICAgICAgICAgY2VsbFNwYWNpbmc9ezB9XG4gICAgICAgICAgY2xhc3NOYW1lPXtjc3Moe1xuICAgICAgICAgICAgbWFyZ2luOiAnMCcsXG4gICAgICAgICAgICBib3JkZXJTcGFjaW5nOiAnMCcsXG4gICAgICAgICAgICBib3JkZXJDb2xsYXBzZTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgYm9yZGVyOiAnbm9uZScsXG4gICAgICAgICAgfSl9XG4gICAgICAgID5cbiAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDxGcmFnbWVudCBrZXk9e2luZGV4fT5cbiAgICAgICAgICAgICAgICAgIHtpdGVtLmxlZ2VuZEl0ZW1zPy5tYXAoKGxlZ2VuZEl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdG9vbHRpcERhdGFbbGVnZW5kSXRlbS55S2V5XSB8fCB0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgLy8geUtleSBjb3VsZCBub3QgYmUgZm91bmQgaW4gdG9vbHRpcERhdGFcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgIGl0ZW0udmlzaWJsZVlLZXlzPy5pbmNsdWRlcyhsZWdlbmRJdGVtLnlLZXkpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBrZXk9e2Ake2xlZ2VuZEl0ZW0ueUtleX0tJHtpbmRleH0tJHt0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlfWB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7c2hvdWxkU2hvd0NvbG9yTGVnZW5kICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsQWxpZ246ICdtaWRkbGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBpbmRleCA9PT0gMCA/ICcxMnB4IDhweCAwIDAnIDogJzhweCA4cHggMCAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICdhdXRvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExlZ2VuZEl0ZW1Cb3hcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I9e2dldENvbG9yKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0Q29sb3I6IGxlZ2VuZEl0ZW0uY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHRvb2x0aXBEYXRhW2xlZ2VuZEl0ZW0ueUtleV0udmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUtleTogbGVnZW5kSXRlbS55S2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBpdGVtLmNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzID8/IFtdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e2xlZ2VuZEl0ZW0uc3R5bGUgYXMgTGluZVN0eWxlc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUtleT17bGVnZW5kSXRlbS55S2V5fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgcGFkZGluZzogJzhweCAwIDAgMCcgfX0+e2tleXNbbGVnZW5kSXRlbS55S2V5XS5rZXlGb3JtYXR0ZWR9PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPXt7IGZvbnRXZWlnaHQ6ICdib2xkJywgcGFkZGluZzogJzhweCAwIDAgMTZweCcgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2dldFRvb2x0aXBWYWx1ZSh0b29sdGlwRGF0YSwgbGVnZW5kSXRlbS55S2V5KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgPC9GcmFnbWVudD5cbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pfVxuXG4gICAgICAgICAgICB7c2hvd1JvdW5kZWRUb3RhbCAmJiB5S2V5cyAmJiAoXG4gICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICA8dGQgY29sU3Bhbj17Mn0gc3R5bGU9e3sgcGFkZGluZzogJzEycHggMCAwIDAnIH19PlxuICAgICAgICAgICAgICAgICAgUm91bmRlZCBUb3RhbFxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPHRkIHN0eWxlPXt7IGZvbnRXZWlnaHQ6ICdib2xkJywgcGFkZGluZzogJzEycHggMCAwIDE2cHgnIH19PlxuICAgICAgICAgICAgICAgICAge3lLZXlzLnJlZHVjZSgodG90YWwsIGtleSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG90YWwgKyBNYXRoLnJvdW5kKHRvb2x0aXBEYXRhW2tleV0udmFsdWUgYXMgbnVtYmVyKTtcbiAgICAgICAgICAgICAgICAgIH0sIDApfVxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgIDwvdGFibGU+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj4sXG4gICAgZG9jdW1lbnQuYm9keSxcbiAgKTtcbn07XG4iXX0= */",
45316
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$8
45317
+ }),
45318
+ children: tooltipData['__quadrant__'].value
45319
+ }), jsxRuntime.jsx("table", {
45320
+ cellPadding: 0,
45321
+ cellSpacing: 0,
45322
+ className: /*#__PURE__*/css$1.css( {
45323
+ name: "9a1sa-Tooltip",
45324
+ styles: "margin:0;border-spacing:0;border-collapse:inherit;border:none;label:Tooltip;",
45325
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThIcUIiLCJmaWxlIjoiVG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgQ1NTUHJvcGVydGllcywgRnJhZ21lbnQsIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNyZWF0ZVBvcnRhbCB9IGZyb20gJ3JlYWN0LWRvbSc7XG5cbmltcG9ydCB7IGdldENvbG9yIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgTGVnZW5kSXRlbUJveCB9IGZyb20gJy4uL0xlZ2VuZC9MZWdlbmRJdGVtQm94JztcbmltcG9ydCB7IFNoYXBlRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgRGF0YUl0ZW0sIEtleSB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgTGluZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvTGluZUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEFyZWFTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0FyZWFDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEJ1YmJsZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQnViYmxlQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9jc3MnO1xuXG5jb25zdCBNSU5fVE9PTFRJUF9XSURUSCA9IDE4MDtcbmNvbnN0IFRPT0xUSVBfT0ZGU0VUID0gMjA7XG5jb25zdCBTQ1JPTExCQVJfV0lEVEggPSA0MDtcblxuY29uc3QgZ2V0VG9vbHRpcFZhbHVlID0gKHRvb2x0aXBEYXRhOiB7IFtrZXlJZDogc3RyaW5nXTogRGF0YUl0ZW0gfSwgeUtleTogc3RyaW5nKTogc3RyaW5nIHwgbnVtYmVyID0+IHtcbiAgY29uc3QgZGF0YSA9IHRvb2x0aXBEYXRhW3lLZXldO1xuICByZXR1cm4gZGF0YT8uZm9ybWF0dGVkVmFsdWUgfHwgZGF0YT8udmFsdWUgfHwgJyc7XG59O1xuXG5pbnRlcmZhY2UgVG9vbHRpcFByb3BzPFQ+IHtcbiAga2V5czogeyBba2V5OiBzdHJpbmddOiBLZXkgfTtcbiAgc2hvd1JvdW5kZWRUb3RhbDogYm9vbGVhbjtcbiAgdG9vbHRpcERhdGE6IHtcbiAgICBba2V5SWQ6IHN0cmluZ106IERhdGFJdGVtO1xuICB9O1xuICB0b29sdGlwTGVmdDogbnVtYmVyO1xuICB0b29sdGlwVG9wOiBudW1iZXI7XG4gIHhLZXk6IHN0cmluZztcbiAgeUtleXM/OiBzdHJpbmdbXTtcbiAgaXRlbXM6IHtcbiAgICBsZWdlbmRJdGVtczogQXJyYXk8U2hhcGVEZWZpbml0aW9uPFQ+PjtcbiAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQXJyYXk8Q29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZT47XG4gICAgdmlzaWJsZVlLZXlzOiBzdHJpbmdbXTtcbiAgfVtdO1xuICB0aGVtZTogQ1NTUHJvcGVydGllcztcbiAgc2hvdWxkU2hvd0NvbG9yTGVnZW5kPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IFRvb2x0aXAgPSAoe1xuICBrZXlzLFxuICBzaG93Um91bmRlZFRvdGFsLFxuICB0b29sdGlwRGF0YSxcbiAgdG9vbHRpcExlZnQsXG4gIHRvb2x0aXBUb3AsXG4gIHhLZXksXG4gIHlLZXlzLFxuICB0aGVtZSxcbiAgaXRlbXMsXG4gIHNob3VsZFNob3dDb2xvckxlZ2VuZCA9IHRydWUsXG59OiBUb29sdGlwUHJvcHM8TGluZVN0eWxlcyB8IEJhclN0eWxlcyB8IEFyZWFTdHlsZXMgfCBCdWJibGVTdHlsZXM+KSA9PiB7XG4gIGNvbnN0IHRvb2x0aXBSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICBjb25zdCBbcG9zaXRpb24sIHNldFBvc2l0aW9uXSA9IHVzZVN0YXRlPHsgbGVmdDogbnVtYmVyIH0+KHtcbiAgICBsZWZ0OiB0b29sdGlwTGVmdCxcbiAgfSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBhZGp1c3RUb29sdGlwUG9zaXRpb24gPSAoKSA9PiB7XG4gICAgICBjb25zdCB0b29sdGlwRWxlbWVudCA9IHRvb2x0aXBSZWYuY3VycmVudDtcblxuICAgICAgaWYgKHRvb2x0aXBFbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IHNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG5cbiAgICAgICAgY29uc3QgcmVjdCA9IHRvb2x0aXBFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICAgIGxldCB3aWR0aCA9IHJlY3Qud2lkdGg7XG5cbiAgICAgICAgaWYgKHdpZHRoIDwgTUlOX1RPT0xUSVBfV0lEVEgpIHtcbiAgICAgICAgICB3aWR0aCA9IE1JTl9UT09MVElQX1dJRFRIO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGxlZnQgPSB0b29sdGlwTGVmdCArIFRPT0xUSVBfT0ZGU0VUO1xuXG4gICAgICAgIGlmICh0b29sdGlwTGVmdCArIHdpZHRoID4gc2NyZWVuV2lkdGggLSBTQ1JPTExCQVJfV0lEVEgpIHtcbiAgICAgICAgICBsZWZ0ID0gdG9vbHRpcExlZnQgLSB3aWR0aCAtIFRPT0xUSVBfT0ZGU0VUO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0UG9zaXRpb24oeyBsZWZ0IH0pO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBhZGp1c3RUb29sdGlwUG9zaXRpb24oKTtcbiAgfSwgW3Rvb2x0aXBMZWZ0XSk7XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChcbiAgICA8ZGl2XG4gICAgICByZWY9e3Rvb2x0aXBSZWZ9XG4gICAgICBzdHlsZT17e1xuICAgICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgICAgbGVmdDogcG9zaXRpb24ubGVmdCxcbiAgICAgICAgdG9wOiB0b29sdGlwVG9wLFxuICAgICAgICB6SW5kZXg6IDIxNDc0ODM2NDcgKiAxMCxcbiAgICAgICAgLi4udGhlbWUsXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxkaXYgc3R5bGU9e3sgd29yZEJyZWFrOiAnYnJlYWstYWxsJyB9fT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICAgIGZvbnRGYW1pbHk6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGxpbmVIZWlnaHQ6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGxldHRlclNwYWNpbmc6ICdpbmhlcml0JyxcbiAgICAgICAgICAgIGZvbnRXZWlnaHQ6ICdib2xkJyxcbiAgICAgICAgICAgIGZvbnRTaXplOiAnMTVweCcsXG4gICAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgICAgbWluV2lkdGg6IE1JTl9UT09MVElQX1dJRFRILFxuICAgICAgICAgIH0pfVxuICAgICAgICA+XG4gICAgICAgICAge3Rvb2x0aXBEYXRhW3hLZXldPy5mb3JtYXR0ZWRWYWx1ZSA/PyB0b29sdGlwRGF0YVt4S2V5XS52YWx1ZX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIHt0b29sdGlwRGF0YVsnX19xdWFkcmFudF9fJ10gJiYgKFxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICAgICAgZm9udEZhbWlseTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgICBsaW5lSGVpZ2h0OiAnaW5oZXJpdCcsXG4gICAgICAgICAgICAgIGxldHRlclNwYWNpbmc6ICdpbmhlcml0JyxcbiAgICAgICAgICAgICAgZm9udFNpemU6ICcxM3B4JyxcbiAgICAgICAgICAgICAgZm9udFdlaWdodDogJ2JvbGQnLFxuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge3Rvb2x0aXBEYXRhWydfX3F1YWRyYW50X18nXS52YWx1ZX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgICAgPHRhYmxlXG4gICAgICAgICAgY2VsbFBhZGRpbmc9ezB9XG4gICAgICAgICAgY2VsbFNwYWNpbmc9ezB9XG4gICAgICAgICAgY2xhc3NOYW1lPXtjc3Moe1xuICAgICAgICAgICAgbWFyZ2luOiAnMCcsXG4gICAgICAgICAgICBib3JkZXJTcGFjaW5nOiAnMCcsXG4gICAgICAgICAgICBib3JkZXJDb2xsYXBzZTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgYm9yZGVyOiAnbm9uZScsXG4gICAgICAgICAgfSl9XG4gICAgICAgID5cbiAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDxGcmFnbWVudCBrZXk9e2luZGV4fT5cbiAgICAgICAgICAgICAgICAgIHtpdGVtLmxlZ2VuZEl0ZW1zPy5tYXAoKGxlZ2VuZEl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghdG9vbHRpcERhdGFbbGVnZW5kSXRlbS55S2V5XSB8fCB0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgLy8geUtleSBjb3VsZCBub3QgYmUgZm91bmQgaW4gdG9vbHRpcERhdGFcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgIGl0ZW0udmlzaWJsZVlLZXlzPy5pbmNsdWRlcyhsZWdlbmRJdGVtLnlLZXkpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBrZXk9e2Ake2xlZ2VuZEl0ZW0ueUtleX0tJHtpbmRleH0tJHt0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlfWB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7c2hvdWxkU2hvd0NvbG9yTGVnZW5kICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsQWxpZ246ICdtaWRkbGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBpbmRleCA9PT0gMCA/ICcxMnB4IDhweCAwIDAnIDogJzhweCA4cHggMCAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICdhdXRvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExlZ2VuZEl0ZW1Cb3hcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I9e2dldENvbG9yKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0Q29sb3I6IGxlZ2VuZEl0ZW0uY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHRvb2x0aXBEYXRhW2xlZ2VuZEl0ZW0ueUtleV0udmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUtleTogbGVnZW5kSXRlbS55S2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBpdGVtLmNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzID8/IFtdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e2xlZ2VuZEl0ZW0uc3R5bGUgYXMgTGluZVN0eWxlc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUtleT17bGVnZW5kSXRlbS55S2V5fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgcGFkZGluZzogJzhweCAwIDAgMCcgfX0+e2tleXNbbGVnZW5kSXRlbS55S2V5XS5rZXlGb3JtYXR0ZWR9PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPXt7IGZvbnRXZWlnaHQ6ICdib2xkJywgcGFkZGluZzogJzhweCAwIDAgMTZweCcgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2dldFRvb2x0aXBWYWx1ZSh0b29sdGlwRGF0YSwgbGVnZW5kSXRlbS55S2V5KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgPC9GcmFnbWVudD5cbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pfVxuXG4gICAgICAgICAgICB7c2hvd1JvdW5kZWRUb3RhbCAmJiB5S2V5cyAmJiAoXG4gICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICA8dGQgY29sU3Bhbj17Mn0gc3R5bGU9e3sgcGFkZGluZzogJzEycHggMCAwIDAnIH19PlxuICAgICAgICAgICAgICAgICAgUm91bmRlZCBUb3RhbFxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPHRkIHN0eWxlPXt7IGZvbnRXZWlnaHQ6ICdib2xkJywgcGFkZGluZzogJzEycHggMCAwIDE2cHgnIH19PlxuICAgICAgICAgICAgICAgICAge3lLZXlzLnJlZHVjZSgodG90YWwsIGtleSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG90YWwgKyBNYXRoLnJvdW5kKHRvb2x0aXBEYXRhW2tleV0udmFsdWUgYXMgbnVtYmVyKTtcbiAgICAgICAgICAgICAgICAgIH0sIDApfVxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgIDwvdGFibGU+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj4sXG4gICAgZG9jdW1lbnQuYm9keSxcbiAgKTtcbn07XG4iXX0= */",
45326
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$8
45327
+ }),
45328
+ children: jsxRuntime.jsxs("tbody", {
45329
+ children: [items.map(function (item, index) {
45330
+ var _item$legendItems;
45331
+ return jsxRuntime.jsx(React.Fragment, {
45332
+ children: (_item$legendItems = item.legendItems) == null ? void 0 : _item$legendItems.map(function (legendItem, index) {
45333
+ var _item$visibleYKeys, _item$conditionalForm;
45334
+ if (!tooltipData[legendItem.yKey] || tooltipData[legendItem.yKey].value === null) {
45335
+ // yKey could not be found in tooltipData
45336
+ return null;
45337
+ }
45338
+ return ((_item$visibleYKeys = item.visibleYKeys) == null ? void 0 : _item$visibleYKeys.includes(legendItem.yKey)) && jsxRuntime.jsxs("tr", {
45339
+ children: [shouldShowColorLegend && jsxRuntime.jsx("td", {
45340
+ style: {
45341
+ verticalAlign: 'middle',
45342
+ padding: index === 0 ? '12px 8px 0 0' : '8px 8px 0 0',
45343
+ width: 'auto'
45344
+ },
45345
+ children: jsxRuntime.jsx(LegendItemBox, {
45346
+ color: getColor({
45347
+ defaultColor: legendItem.color,
45348
+ value: tooltipData[legendItem.yKey].value,
45349
+ yKey: legendItem.yKey,
45350
+ conditionalFormattingRules: (_item$conditionalForm = item.conditionalFormattingRules) != null ? _item$conditionalForm : []
45351
+ }),
45352
+ style: legendItem.style,
45353
+ yKey: legendItem.yKey
45354
+ })
45355
+ }), jsxRuntime.jsx("td", {
45356
+ style: {
45357
+ padding: '8px 0 0 0'
45358
+ },
45359
+ children: keys[legendItem.yKey].keyFormatted
45360
+ }), jsxRuntime.jsx("td", {
45361
+ style: {
45362
+ fontWeight: 'bold',
45363
+ padding: '8px 0 0 16px'
45364
+ },
45365
+ children: getTooltipValue(tooltipData, legendItem.yKey)
45366
+ })]
45367
+ }, legendItem.yKey + "-" + index + "-" + tooltipData[legendItem.yKey].value);
45368
+ })
45369
+ }, index);
45370
+ }), showRoundedTotal && yKeys && jsxRuntime.jsxs("tr", {
45371
+ children: [jsxRuntime.jsx("td", {
45372
+ colSpan: 2,
45373
+ style: {
45374
+ padding: '12px 0 0 0'
45375
+ },
45376
+ children: "Rounded Total"
45377
+ }), jsxRuntime.jsx("td", {
45378
+ style: {
45379
+ fontWeight: 'bold',
45380
+ padding: '12px 0 0 16px'
45381
+ },
45382
+ children: yKeys.reduce(function (total, key) {
45383
+ return total + Math.round(tooltipData[key].value);
45384
+ }, 0)
45385
+ })]
45386
+ })]
45387
+ })
45388
+ })]
45389
+ })
45390
+ }), document.body);
45391
+ };
45392
+
45209
45393
  var CrosshairCircle = function CrosshairCircle(_ref) {
45210
45394
  var dataType = _ref.dataType,
45211
45395
  yKeys = _ref.yKeys,
@@ -45267,185 +45451,40 @@ var Line = function Line(_ref) {
45267
45451
  opacity: 0.8
45268
45452
  });
45269
45453
  };
45270
-
45271
- var useableId = function useableId(key, prefix) {
45272
- var newKey = key.toLowerCase()
45273
- // Remove characters that aren't letters, digits, underscores, or spaces
45274
- .replace(/[^\w\s-]+/g, '')
45275
- // Replace whitespace with hyphens
45276
- .replace(/\s+/g, '-')
45277
- // Remove leading or trailing hyphens
45278
- .replace(/^-+|-+$/g, '');
45279
- return prefix + '-' + newKey;
45280
- };
45281
-
45282
- function useVisibleYKeys(areas) {
45283
- var _useState = React.useState(areas.map(function (legendItem) {
45284
- return legendItem.yKey;
45285
- })),
45286
- visibleYKeysState = _useState[0],
45287
- setVisibleYKeys = _useState[1];
45288
- React.useEffect(function () {
45289
- setVisibleYKeys(areas.map(function (legendItem) {
45290
- return legendItem.yKey;
45291
- }));
45292
- return function () {
45293
- setVisibleYKeys([]);
45294
- };
45295
- }, [areas]);
45296
- return {
45297
- visibleYKeys: visibleYKeysState,
45298
- setVisibleYKeys: setVisibleYKeys
45299
- };
45300
- }
45301
-
45302
- var thresholdId$1 = function thresholdId(args, idPrefix, position, uniqueId) {
45303
- var rawIdKey = args.yKey + "_" + args.value + "_" + args.operator;
45304
- return (position + "_" + idPrefix + "_" + uniqueId + "_" + btoa(rawIdKey)).replace(/=/g, '');
45305
- };
45306
- function buildClipPathId$1(rule, idPrefix, uniqueId) {
45307
- var isGreater = rule.operator === '>=';
45308
- var clipPathId = isGreater ? thresholdId$1(rule, idPrefix, 'above', uniqueId) : thresholdId$1(rule, idPrefix, 'below', uniqueId);
45309
- return clipPathId;
45310
- }
45311
- function getRule(rules, yKey) {
45312
- return rules.filter(function (threshold) {
45313
- return threshold.yKey === yKey;
45314
- });
45315
- }
45316
-
45317
- var ThresholdArea = function ThresholdArea(props) {
45318
- var chartHeight = props.height - props.margin.top;
45319
- return jsxRuntime.jsxs(React.Fragment, {
45320
- children: [jsxRuntime.jsx("g", {
45321
- transform: "translate(50, 0)",
45322
- children: props.rules.map(function (thresh, index) {
45323
- var _props$theme$stroke, _props$theme;
45324
- var thresholdYCoord = props.yScale(thresh.value);
45325
- return jsxRuntime.jsx("g", {
45326
- children: jsxRuntime.jsx("line", {
45327
- x1: 0,
45328
- y1: thresholdYCoord,
45329
- x2: props.width - props.margin.right - props.margin.left,
45330
- y2: thresholdYCoord,
45331
- stroke: (_props$theme$stroke = (_props$theme = props.theme) == null ? void 0 : _props$theme.stroke) != null ? _props$theme$stroke : '#F4F4F4',
45332
- strokeWidth: "1",
45333
- fill: "transparent",
45334
- "data-themeapi": "charts.threshold.stroke"
45335
- })
45336
- }, "threshold-" + index);
45337
- })
45338
- }), jsxRuntime.jsx("defs", {
45339
- children: props.rules.map(function (thresh, index) {
45340
- var thresholdYCoord = props.yScale(thresh.value);
45341
- if (!thresholdYCoord) return null;
45342
- return jsxRuntime.jsxs(React.Fragment, {
45343
- children: [jsxRuntime.jsx("clipPath", {
45344
- id: thresholdId$1(thresh, props.idPrefix, 'above', props.uniqueId),
45345
- children: jsxRuntime.jsx("rect", {
45346
- x: "0",
45347
- y: "0",
45348
- width: "100%",
45349
- height: thresholdYCoord
45350
- })
45351
- }), jsxRuntime.jsx("clipPath", {
45352
- id: thresholdId$1(thresh, props.idPrefix, 'intermediate', props.uniqueId),
45353
- children: jsxRuntime.jsx("rect", {
45354
- x: "0",
45355
- y: thresholdYCoord,
45356
- width: "100%",
45357
- height: 0
45358
- })
45359
- }), jsxRuntime.jsx("clipPath", {
45360
- id: thresholdId$1(thresh, props.idPrefix, 'below', props.uniqueId),
45361
- children: jsxRuntime.jsx("rect", {
45362
- x: "0",
45363
- y: thresholdYCoord,
45364
- width: "100%",
45365
- height: chartHeight - thresholdYCoord
45366
- })
45367
- })]
45368
- }, "threshold-" + index);
45369
- })
45370
- })]
45454
+ var ZeroHorizontalLine = function ZeroHorizontalLine(_ref2) {
45455
+ var yScale = _ref2.yScale,
45456
+ chartWidth = _ref2.chartWidth;
45457
+ return jsxRuntime.jsx(shape.Line, {
45458
+ from: {
45459
+ x: 0,
45460
+ y: yScale(0)
45461
+ },
45462
+ to: {
45463
+ x: chartWidth,
45464
+ y: yScale(0)
45465
+ },
45466
+ stroke: '#aaa',
45467
+ strokeWidth: 1,
45468
+ pointerEvents: "none",
45469
+ opacity: 0.8
45371
45470
  });
45372
45471
  };
45373
-
45374
- var _excluded$h = ["tooltipOpen"];
45375
- function useTooltip$1(initialTooltipState) {
45376
- var _useState = React.useState(_extends({
45377
- tooltipOpen: false
45378
- }, initialTooltipState)),
45379
- tooltipState = _useState[0],
45380
- setTooltipState = _useState[1];
45381
- var showTooltip = React.useCallback(function (showArgs) {
45382
- return setTooltipState(typeof showArgs === 'function' ? function (_ref) {
45383
- var show = _objectWithoutPropertiesLoose(_ref, _excluded$h);
45384
- return _extends({}, showArgs(show), {
45385
- tooltipOpen: true
45386
- });
45387
- } : {
45388
- tooltipOpen: true,
45389
- tooltipLeft: showArgs.tooltipLeft,
45390
- tooltipTop: showArgs.tooltipTop,
45391
- lineLeft: showArgs.lineLeft,
45392
- tooltipData: showArgs.tooltipData
45393
- });
45394
- }, [setTooltipState]);
45395
- var hideTooltip = React.useCallback(function () {
45396
- return setTooltipState({
45397
- tooltipOpen: false,
45398
- tooltipLeft: undefined,
45399
- lineLeft: undefined,
45400
- tooltipTop: undefined,
45401
- tooltipData: undefined
45402
- });
45403
- }, [setTooltipState]);
45404
- return {
45405
- tooltipOpen: tooltipState.tooltipOpen,
45406
- tooltipLeft: tooltipState.tooltipLeft,
45407
- tooltipTop: tooltipState.tooltipTop,
45408
- lineLeft: tooltipState.lineLeft,
45409
- tooltipData: tooltipState.tooltipData,
45410
- updateTooltip: setTooltipState,
45411
- showTooltip: showTooltip,
45412
- hideTooltip: hideTooltip
45413
- };
45414
- }
45415
-
45416
- function useYScale(innerHeight, scale$1) {
45417
- return React.useMemo(function () {
45418
- return scale.scaleLinear({
45419
- range: [innerHeight, 0],
45420
- domain: scale$1.ordering === 'asc' ? [scale$1.min, scale$1.max] : [scale$1.max, scale$1.min],
45421
- nice: true,
45422
- round: true
45423
- });
45424
- }, [innerHeight, scale$1]);
45425
- }
45426
-
45427
- var DataLabel = function DataLabel(_ref) {
45428
- var x = _ref.x,
45429
- y = _ref.y,
45430
- title = _ref.title,
45431
- dx = _ref.dx,
45432
- dy = _ref.dy,
45433
- color = _ref.color,
45434
- backgroundColor = _ref.backgroundColor;
45435
- return jsxRuntime.jsx(annotation.Annotation, {
45436
- x: x,
45437
- y: y,
45438
- dx: dx,
45439
- dy: dy,
45440
- children: jsxRuntime.jsx(annotation.Label, {
45441
- title: title,
45442
- showAnchorLine: false,
45443
- showBackground: false,
45444
- backgroundFill: backgroundColor,
45445
- fontColor: color,
45446
- titleFontSize: 10,
45447
- verticalAnchor: "middle"
45448
- })
45472
+ var ZeroVerticalLine = function ZeroVerticalLine(_ref3) {
45473
+ var xScale = _ref3.xScale,
45474
+ chartHeight = _ref3.chartHeight;
45475
+ return jsxRuntime.jsx(shape.Line, {
45476
+ from: {
45477
+ x: xScale(0),
45478
+ y: 0
45479
+ },
45480
+ to: {
45481
+ x: xScale(0),
45482
+ y: chartHeight
45483
+ },
45484
+ stroke: '#aaa',
45485
+ strokeWidth: 1,
45486
+ pointerEvents: "none",
45487
+ opacity: 0.8
45449
45488
  });
45450
45489
  };
45451
45490
 
@@ -45521,9 +45560,7 @@ var AreaChart$5 = function AreaChart(_ref) {
45521
45560
  var _useMemo = React.useMemo(function () {
45522
45561
  var allValues = getAllChartValues(dataFlattened, chart.y.keys);
45523
45562
  return getMinMaxChartValueFromNumberArray(allValues);
45524
- }, [dataFlattened, chart.y.keys]),
45525
- minValue = _useMemo.minValue,
45526
- maxValue = _useMemo.maxValue;
45563
+ }, [dataFlattened, chart.y.keys]);
45527
45564
  var handleMouseMove = React.useCallback(function (event) {
45528
45565
  if (!xKey || !xScaleKey || xScale === null) return;
45529
45566
  var tooltipData = getTooltipData({
@@ -45558,6 +45595,7 @@ var AreaChart$5 = function AreaChart(_ref) {
45558
45595
  var labelDictionary = React.useMemo(function () {
45559
45596
  return getLabelDictionary(chart.data, chart.y.keys);
45560
45597
  }, [chart.data, chart.y.keys]);
45598
+ var showZeroLine = chart.y.scale.min && chart.y.scale.min < 0 && chart.y.scale.max && chart.y.scale.max > 0;
45561
45599
  if (width === 0 || height === 0 || xScale === null) return jsxRuntime.jsx(React__default.Fragment, {});
45562
45600
  var yTickValues = chart.y.ticks.map(function (tick) {
45563
45601
  return Number(tick.value);
@@ -45651,16 +45689,20 @@ var AreaChart$5 = function AreaChart(_ref) {
45651
45689
  return _yScale(d[1]);
45652
45690
  },
45653
45691
  curve: areaCurve(),
45692
+ offset: "diverging",
45654
45693
  children: function children(_ref2) {
45655
45694
  var stacks = _ref2.stacks,
45656
45695
  path = _ref2.path;
45657
- return stacks.map(function (stack) {
45658
- return jsxRuntime.jsx(React.Fragment, {
45659
- children: jsxRuntime.jsx("path", {
45660
- d: path(stack) || '',
45661
- fill: "url(#" + useableId(stack.key, AREA_GRADIENT_ID_PREFIX) + ")"
45662
- })
45663
- }, "stack-" + stack.index + "-" + stack.key);
45696
+ return jsxRuntime.jsx(AreaStacked, {
45697
+ areaStacks: stacks,
45698
+ path: path,
45699
+ chartDataDefinition: dataFlattened,
45700
+ yKeys: chart.y.keys,
45701
+ xScaleKey: xScaleKey,
45702
+ xScale: xScale,
45703
+ yScale: _yScale,
45704
+ showLabels: options.showLabels,
45705
+ labelDictionary: labelDictionary
45664
45706
  });
45665
45707
  }
45666
45708
  }), !options.stacked && chart.y.keys.map(function (yKey) {
@@ -45688,22 +45730,25 @@ var AreaChart$5 = function AreaChart(_ref) {
45688
45730
  clipPath: "url(#" + buildClipPathId$1(areaThreshold, AREA_GRADIENT_ID_PREFIX, uniqueId) + ")",
45689
45731
  fill: "url(#" + id + ")"
45690
45732
  }, yKey + "-" + AREA_GRADIENT_ID_PREFIX + "-" + thresholdIndex);
45691
- }), dataFlattened.map(function (d) {
45733
+ }), dataFlattened.map(function (chartData) {
45692
45734
  return jsxRuntime.jsx(AreaLabel, {
45693
- chartData: d,
45735
+ chartData: chartData,
45694
45736
  yKey: yKey,
45695
45737
  xScaleKey: xScaleKey,
45696
45738
  xScale: xScale,
45697
45739
  yScale: _yScale,
45698
45740
  totalItems: dataFlattened.length,
45699
- minValue: minValue,
45700
- maxValue: maxValue,
45701
45741
  showLabels: options.showLabels,
45702
45742
  labelDictionary: labelDictionary
45703
45743
  });
45704
45744
  })]
45705
45745
  }, yKey + "-" + AREA_GRADIENT_ID_PREFIX);
45706
45746
  })]
45747
+ }), showZeroLine && jsxRuntime.jsx("g", {
45748
+ children: jsxRuntime.jsx(ZeroHorizontalLine, {
45749
+ yScale: _yScale,
45750
+ chartWidth: innerWidth
45751
+ })
45707
45752
  })]
45708
45753
  }), tooltipData && jsxRuntime.jsxs("g", {
45709
45754
  children: [jsxRuntime.jsx(Line, {
@@ -45752,43 +45797,121 @@ var AreaChart$5 = function AreaChart(_ref) {
45752
45797
  })]
45753
45798
  });
45754
45799
  };
45755
- function AreaLabel(_ref3) {
45756
- var chartData = _ref3.chartData,
45757
- yKey = _ref3.yKey,
45800
+ function AreaStacked(_ref3) {
45801
+ var areaStacks = _ref3.areaStacks,
45802
+ path = _ref3.path,
45803
+ chartDataDefinition = _ref3.chartDataDefinition,
45804
+ yKeys = _ref3.yKeys,
45758
45805
  xScaleKey = _ref3.xScaleKey,
45759
45806
  xScale = _ref3.xScale,
45760
45807
  yScale = _ref3.yScale,
45761
- totalItems = _ref3.totalItems,
45762
45808
  showLabels = _ref3.showLabels,
45763
45809
  labelDictionary = _ref3.labelDictionary;
45810
+ return areaStacks && path && jsxRuntime.jsxs(jsxRuntime.Fragment, {
45811
+ children: [areaStacks.map(function (stack) {
45812
+ return jsxRuntime.jsx(React.Fragment, {
45813
+ children: jsxRuntime.jsx("path", {
45814
+ d: path(stack) || '',
45815
+ fill: "url(#" + useableId(stack.key, AREA_GRADIENT_ID_PREFIX) + ")"
45816
+ })
45817
+ }, "stack-" + stack.index + "-" + stack.key);
45818
+ }), chartDataDefinition && yKeys && xScaleKey && jsxRuntime.jsx(jsxRuntime.Fragment, {
45819
+ children: yKeys.map(function (yKey) {
45820
+ return chartDataDefinition.map(function (chartData) {
45821
+ return jsxRuntime.jsx(AreaStackedLabel, {
45822
+ areaStacks: areaStacks,
45823
+ chartData: chartData,
45824
+ yKey: yKey,
45825
+ xScaleKey: xScaleKey,
45826
+ xScale: xScale,
45827
+ yScale: yScale,
45828
+ totalItems: chartDataDefinition.length,
45829
+ showLabels: showLabels,
45830
+ labelDictionary: labelDictionary
45831
+ });
45832
+ });
45833
+ })
45834
+ })]
45835
+ });
45836
+ }
45837
+ function AreaStackedLabel(_ref4) {
45838
+ var _areaStacks$find, _yScale2, _yScale3;
45839
+ var areaStacks = _ref4.areaStacks,
45840
+ chartData = _ref4.chartData,
45841
+ yKey = _ref4.yKey,
45842
+ xScaleKey = _ref4.xScaleKey,
45843
+ xScale = _ref4.xScale,
45844
+ yScale = _ref4.yScale,
45845
+ totalItems = _ref4.totalItems,
45846
+ showLabels = _ref4.showLabels,
45847
+ labelDictionary = _ref4.labelDictionary;
45848
+ var minHeight = 10;
45849
+ var correspondingAreaStack = areaStacks == null || (_areaStacks$find = areaStacks.find(function (stack) {
45850
+ return stack.key === yKey;
45851
+ })) == null ? void 0 : _areaStacks$find.find(function (subStack) {
45852
+ return subStack.data === chartData;
45853
+ });
45854
+ var areaStackTopY = (_yScale2 = yScale(correspondingAreaStack ? correspondingAreaStack[0] : 0)) != null ? _yScale2 : 0;
45855
+ var areaStackBottomY = (_yScale3 = yScale(correspondingAreaStack ? correspondingAreaStack[1] : 0)) != null ? _yScale3 : 0;
45856
+ var areaStackHeight = Math.abs(areaStackTopY - areaStackBottomY);
45857
+ var xValue = chartData[xScaleKey];
45858
+ var yValue = chartData[yKey];
45859
+ var xLabelPosition = xScale(xValue);
45860
+ var yLabelPosition = areaStackBottomY + areaStackHeight / 2;
45861
+ var showMinMax = showLabels && showDataLabel(totalItems);
45862
+ var hasPositionForLabel = showLabels && xLabelPosition && yLabelPosition && areaStackHeight > minHeight;
45863
+ var displayValue = getFormattedValue(yValue, labelDictionary);
45864
+ return jsxRuntime.jsx(jsxRuntime.Fragment, {
45865
+ children: showMinMax && hasPositionForLabel && jsxRuntime.jsx(DataLabel, {
45866
+ x: xLabelPosition,
45867
+ y: yLabelPosition,
45868
+ dx: 0,
45869
+ dy: 0,
45870
+ title: displayValue !== 0 ? displayValue : '0',
45871
+ horizontalAnchor: "middle"
45872
+ })
45873
+ });
45874
+ }
45875
+ function AreaLabel(_ref5) {
45876
+ var chartData = _ref5.chartData,
45877
+ yKey = _ref5.yKey,
45878
+ xScaleKey = _ref5.xScaleKey,
45879
+ xScale = _ref5.xScale,
45880
+ yScale = _ref5.yScale,
45881
+ totalItems = _ref5.totalItems,
45882
+ showLabels = _ref5.showLabels,
45883
+ labelDictionary = _ref5.labelDictionary;
45764
45884
  var xValue = chartData[xScaleKey];
45765
45885
  var yValue = chartData[yKey];
45766
- var xPadding = 18;
45767
- var yPadding = 8;
45768
- var xPosition = xScale(xValue);
45769
- var yPosition = yScale(yValue);
45886
+ var xLabelPosition = xScale(xValue);
45887
+ var yLabelPosition = yScale(yValue);
45888
+ var yLabelPaddingAdjustment = yValue >= 0 ? -8 : 8;
45770
45889
  var showMinMax = showDataLabel(totalItems);
45771
- if (xPosition == null || yPosition == null || !showMinMax || !showLabels) return null;
45890
+ var hasPositionForLabel = showLabels && xLabelPosition && yLabelPosition;
45772
45891
  var displayValue = getFormattedValue(yValue, labelDictionary);
45773
- return jsxRuntime.jsx(DataLabel, {
45774
- x: xPosition - xPadding,
45775
- y: yPosition - yPadding,
45776
- dx: 2,
45777
- dy: 0,
45778
- title: displayValue
45892
+ return jsxRuntime.jsx(jsxRuntime.Fragment, {
45893
+ children: showMinMax && hasPositionForLabel && jsxRuntime.jsx(DataLabel, {
45894
+ x: xLabelPosition,
45895
+ y: yLabelPosition + yLabelPaddingAdjustment,
45896
+ dx: 0,
45897
+ dy: 0,
45898
+ title: displayValue !== 0 ? displayValue : '0',
45899
+ horizontalAnchor: "middle"
45900
+ })
45779
45901
  });
45780
45902
  }
45781
- function Area(_ref4) {
45782
- var data = _ref4.data,
45783
- xScaleDataType = _ref4.xScaleDataType,
45784
- xScale = _ref4.xScale,
45785
- yScale = _ref4.yScale,
45786
- yKey = _ref4.yKey,
45787
- curve = _ref4.curve,
45788
- clipPath = _ref4.clipPath,
45789
- xKey = _ref4.xKey,
45790
- fill = _ref4.fill,
45791
- stroke = _ref4.stroke;
45903
+ function Area(_ref6) {
45904
+ var _yScale4;
45905
+ var data = _ref6.data,
45906
+ xScaleDataType = _ref6.xScaleDataType,
45907
+ xScale = _ref6.xScale,
45908
+ yScale = _ref6.yScale,
45909
+ yKey = _ref6.yKey,
45910
+ curve = _ref6.curve,
45911
+ clipPath = _ref6.clipPath,
45912
+ xKey = _ref6.xKey,
45913
+ fill = _ref6.fill,
45914
+ stroke = _ref6.stroke;
45792
45915
  return jsxRuntime.jsx(shape.AreaClosed, {
45793
45916
  data: data,
45794
45917
  x: function x(d) {
@@ -45798,10 +45921,12 @@ function Area(_ref4) {
45798
45921
  // @ts-ignore
45799
45922
  return (_xScale2 = xScale(xValueAdjusted)) != null ? _xScale2 : 0;
45800
45923
  },
45924
+ y0: (_yScale4 = yScale(0)) != null ? _yScale4 : 0,
45801
45925
  y: function y(d) {
45802
- var _yScale2;
45926
+ var _yScale5, _yScale6;
45803
45927
  var value = d[yKey];
45804
- return value !== null ? (_yScale2 = yScale(value)) != null ? _yScale2 : 0 : 0;
45928
+ var zero = (_yScale5 = yScale(0)) != null ? _yScale5 : 0;
45929
+ return value !== null ? (_yScale6 = yScale(value)) != null ? _yScale6 : 0 : zero;
45805
45930
  },
45806
45931
  defined: function defined(d) {
45807
45932
  return d !== null && d[yKey] !== null;
@@ -45832,12 +45957,18 @@ function convertToStackedPercentages(data, yKeys, xKey) {
45832
45957
  }
45833
45958
  yKeys.forEach(function (key) {
45834
45959
  if (item[key]) {
45960
+ var _item$key$formattedVa;
45835
45961
  var value = Number(item[key].value) || 0;
45836
- var percentage = value / total * 100;
45962
+ var isValuePositive = value >= 0;
45963
+ var absolutePercentage = Math.abs(value / total) * 100;
45964
+ var percentage = isValuePositive ? absolutePercentage : -absolutePercentage;
45965
+ var formattedPercentage = percentage.toFixed(0) + "%";
45966
+ var originalFormattedValue = (_item$key$formattedVa = item[key].formattedValue) != null ? _item$key$formattedVa : "" + value;
45967
+ var newFormattedValue = isValuePositive ? originalFormattedValue : "(" + originalFormattedValue.replace('-', '') + ")";
45837
45968
  convertedItem[key] = _extends({}, item[key], {
45838
45969
  value: percentage / 100,
45839
45970
  originalValue: item[key].value,
45840
- formattedValue: "" + percentage.toFixed(1)
45971
+ formattedValue: formattedPercentage + ", " + newFormattedValue
45841
45972
  });
45842
45973
  }
45843
45974
  });
@@ -45845,6 +45976,162 @@ function convertToStackedPercentages(data, yKeys, xKey) {
45845
45976
  });
45846
45977
  }
45847
45978
 
45979
+ function getStackedPercentageScaleLinearDomain(convertedStackedPercentageData, yKeys, xKey) {
45980
+ var minDomain = 0.0;
45981
+ var maxDomain = 1.0;
45982
+ if (xKey && yKeys.length > 0) {
45983
+ convertedStackedPercentageData.forEach(function (item) {
45984
+ var positiveTotal = 0.0;
45985
+ var negativeTotal = 0.0;
45986
+ yKeys.forEach(function (key) {
45987
+ var _item$key;
45988
+ var value = Number((_item$key = item[key]) == null ? void 0 : _item$key.value) || 0;
45989
+ if (value >= 0) {
45990
+ positiveTotal += value;
45991
+ } else {
45992
+ negativeTotal += value;
45993
+ }
45994
+ });
45995
+ if (positiveTotal > maxDomain) {
45996
+ maxDomain = positiveTotal;
45997
+ }
45998
+ if (negativeTotal < minDomain) {
45999
+ minDomain = negativeTotal;
46000
+ }
46001
+ });
46002
+ }
46003
+ return [minDomain, maxDomain];
46004
+ }
46005
+
46006
+ var DEFAULT_TICK_COUNT = 10;
46007
+ function getNiceInterval(interval) {
46008
+ var exponent = Math.floor(Math.log10(interval));
46009
+ var fraction = interval / Math.pow(10, exponent);
46010
+ var niceFraction;
46011
+ if (fraction <= 1) {
46012
+ niceFraction = 1;
46013
+ } else if (fraction <= 1.25) {
46014
+ niceFraction = 1.25;
46015
+ } else if (fraction <= 1.5) {
46016
+ niceFraction = 1.5;
46017
+ } else if (fraction <= 2) {
46018
+ niceFraction = 2;
46019
+ } else if (fraction <= 2.5) {
46020
+ niceFraction = 2.5;
46021
+ } else if (fraction <= 3) {
46022
+ niceFraction = 3;
46023
+ } else if (fraction <= 5) {
46024
+ niceFraction = 5;
46025
+ } else if (fraction <= 7) {
46026
+ niceFraction = 7;
46027
+ } else if (fraction <= 10) {
46028
+ niceFraction = 10;
46029
+ } else {
46030
+ niceFraction = 10;
46031
+ }
46032
+ return niceFraction * Math.pow(10, exponent);
46033
+ }
46034
+ function getAxisTick(value, nullValue, formattingFunction) {
46035
+ var formattedValue = formattingFunction(value, nullValue);
46036
+ return {
46037
+ value: value,
46038
+ formattedValue: formattedValue,
46039
+ scaleValue: value
46040
+ };
46041
+ }
46042
+ var getMetricAxisTickValues = function getMetricAxisTickValues(_ref) {
46043
+ var min = _ref.min,
46044
+ max = _ref.max,
46045
+ interval = _ref.interval,
46046
+ stacked = _ref.stacked;
46047
+ var niceInterval = getNiceInterval(interval);
46048
+ var limitTicksCount = stacked ? 0 : 1;
46049
+ var axisTickValues = [0];
46050
+ if (min < 0) {
46051
+ var negativeTickCount = Math.floor(Math.abs(min) / niceInterval) + limitTicksCount;
46052
+ for (var i = 1; i <= negativeTickCount; i++) {
46053
+ axisTickValues.unshift(-i * niceInterval);
46054
+ }
46055
+ }
46056
+ if (max > 0) {
46057
+ var positiveTickCount = Math.floor(max / niceInterval) + limitTicksCount;
46058
+ for (var _i = 1; _i <= positiveTickCount; _i++) {
46059
+ axisTickValues.push(_i * niceInterval);
46060
+ }
46061
+ }
46062
+ return axisTickValues.map(function (tickValue) {
46063
+ return Math.round(tickValue / niceInterval) * niceInterval;
46064
+ }); // To avoid floating point precision issues;
46065
+ };
46066
+ var getMetricAxisTicks = function getMetricAxisTicks(_ref2) {
46067
+ var min = _ref2.min,
46068
+ max = _ref2.max,
46069
+ tickCount = _ref2.tickCount,
46070
+ nullValue = _ref2.nullValue,
46071
+ formattingFunction = _ref2.formattingFunction,
46072
+ stacked = _ref2.stacked;
46073
+ var axisMax = max || 0;
46074
+ var axisMin = Math.min(min || 0, 0);
46075
+ var minMaxInterval = axisMax - axisMin;
46076
+ var axisTickCount = tickCount != null ? tickCount : DEFAULT_TICK_COUNT;
46077
+ var expectedTickInterval = minMaxInterval / (axisTickCount - 1);
46078
+ var axisTickValues = getMetricAxisTickValues({
46079
+ min: axisMin,
46080
+ max: axisMax,
46081
+ interval: expectedTickInterval,
46082
+ stacked: stacked
46083
+ });
46084
+ var outerLabelPadding = stacked ? 0 : minMaxInterval * 0.05;
46085
+ var minWithOuterLabelPadding = axisMin - (axisMin < 0 ? outerLabelPadding : 0);
46086
+ var maxWithOuterLabelPadding = axisMax + (axisMax >= 0 ? outerLabelPadding : 0);
46087
+ return {
46088
+ ticks: axisTickValues.map(function (tickValue) {
46089
+ return getAxisTick(tickValue, nullValue, formattingFunction);
46090
+ }),
46091
+ minTickValue: Math.min.apply(Math, axisTickValues.concat([minWithOuterLabelPadding])),
46092
+ maxTickValue: Math.max.apply(Math, axisTickValues.concat([maxWithOuterLabelPadding]))
46093
+ };
46094
+ };
46095
+
46096
+ function getStackedPercentageTickValues(convertedStackedPercentageData, yKeys, xKey) {
46097
+ var scaleLinearDomain = getStackedPercentageScaleLinearDomain(convertedStackedPercentageData, yKeys, xKey);
46098
+ var minTick = Math.min.apply(Math, scaleLinearDomain);
46099
+ var maxTick = Math.max.apply(Math, scaleLinearDomain);
46100
+ var extraNegative20PercentTicks = Math.max(Math.ceil(Math.abs(minTick) / 0.2), 0);
46101
+ var extraPositive20PercentTicks = Math.max(Math.ceil((maxTick - 1) / 0.2), 0);
46102
+ var totalExtra20PercentTicks = extraNegative20PercentTicks + extraPositive20PercentTicks;
46103
+ if (totalExtra20PercentTicks > DEFAULT_TICK_COUNT) {
46104
+ return getMetricAxisTickValues({
46105
+ min: minTick,
46106
+ max: maxTick,
46107
+ interval: (maxTick - minTick) / DEFAULT_TICK_COUNT,
46108
+ stacked: true
46109
+ });
46110
+ }
46111
+ var tickValues = [0, 0.2, 0.4, 0.6, 0.8, 1];
46112
+ for (var i = 1; i <= extraNegative20PercentTicks; i++) {
46113
+ tickValues.unshift(-i * 0.2);
46114
+ }
46115
+ for (var _i = 1; _i <= extraPositive20PercentTicks; _i++) {
46116
+ tickValues.push(1 + _i * 0.2);
46117
+ }
46118
+ return tickValues.map(function (tick) {
46119
+ return Math.round(tick * 10) / 10;
46120
+ }); // To avoid floating point precision issues
46121
+ }
46122
+
46123
+ function getStackedPercentageAxisTicks(convertedStackedPercentageData, yKeys, xKey) {
46124
+ var tickValues = getStackedPercentageTickValues(convertedStackedPercentageData, yKeys, xKey);
46125
+ return tickValues.map(function (value) {
46126
+ var roundPercentage = Math.round(value * 100);
46127
+ return {
46128
+ value: value,
46129
+ formattedValue: "" + roundPercentage,
46130
+ scaleValue: value
46131
+ };
46132
+ });
46133
+ }
46134
+
45848
46135
  var BAR_RADIUS = 2;
45849
46136
 
45850
46137
  function getBarFill(bars, conditionalFormattingRules, barKey, barValues) {
@@ -45984,14 +46271,15 @@ var Bar = function Bar(_ref2) {
45984
46271
  yScale = _ref2.yScale,
45985
46272
  containerHeight = _ref2.containerHeight,
45986
46273
  chartWidth = _ref2.chartWidth;
45987
- var X_PADDING = 10;
45988
46274
  var Y_PADDING = 8;
45989
46275
  var minWidth = 20;
45990
46276
  var minContainerHeight = 50;
45991
- var showBar = bar.value !== null && bar.height > 0 && bar.width > 0;
45992
- var barTopY = yScale(bar.value);
45993
- var labelX = bar.x - X_PADDING;
45994
- var labelY = barTopY - Y_PADDING;
46277
+ var barY = bar.value >= 0 ? yScale(bar.value) : yScale(0);
46278
+ var barHeight = Math.abs(yScale(bar.value) - yScale(0));
46279
+ var showBar = bar.value !== null && barHeight > 0 && bar.width > 0;
46280
+ var labelX = bar.x + bar.width / 2;
46281
+ var labelYPaddingAdjustment = bar.value >= 0 ? Y_PADDING : -Y_PADDING;
46282
+ var labelY = yScale(bar.value) - labelYPaddingAdjustment;
45995
46283
  var showMinMax = showDataLabel(totalItems);
45996
46284
  var hasSpaceForLabel = showLabels && bar.width > minWidth && containerHeight > minContainerHeight;
45997
46285
  var displayValue = getFormattedValue(bar.value, labelDictionary);
@@ -46000,20 +46288,21 @@ var Bar = function Bar(_ref2) {
46000
46288
  children: [showBar && jsxRuntime.jsx(BarRect, {
46001
46289
  barRectKey: "bar-group-bar-" + barGroup.index + "-" + bar.index + "-" + bar.value + "-" + String(bar.key),
46002
46290
  x: bar.x,
46003
- y: bar.y,
46291
+ y: barY,
46004
46292
  width: bar.width,
46005
- height: bar.height,
46293
+ height: barHeight,
46006
46294
  fill: getBarFill(bars, conditionalFormattingRules, String(bar.key), bar.value),
46007
46295
  onClick: function onClick(e) {
46008
46296
  return _onClick(e, barGroup, bar);
46009
46297
  },
46010
46298
  enableHover: enableHover
46011
46299
  }), hasSpaceForLabel && showMinMax && barPosition !== false && jsxRuntime.jsx(DataLabel, {
46012
- x: barPosition,
46300
+ x: labelX,
46013
46301
  y: labelY,
46014
- title: displayValue,
46015
- dx: 1,
46016
- dy: 0
46302
+ title: displayValue !== 0 ? displayValue : '0',
46303
+ dx: 0,
46304
+ dy: 0,
46305
+ horizontalAnchor: "middle"
46017
46306
  }), jsxRuntime.jsx(BarLabel, {
46018
46307
  bar: bar,
46019
46308
  barGroup: barGroup,
@@ -46039,7 +46328,7 @@ var BarRect = function BarRect(_ref3) {
46039
46328
  var classes = enableHover ? /*#__PURE__*/css$1.css( {
46040
46329
  name: "1ltmijl-classes",
46041
46330
  styles: "cursor:pointer;label:classes;",
46042
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJhckdyb3VwLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyUGdDIiwiZmlsZSI6IkJhckdyb3VwLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBHcm91cCB9IGZyb20gJ0B2aXN4L2dyb3VwJztcbmltcG9ydCB7IEJhckdyb3VwIGFzIFZpc3hCYXJHcm91cCB9IGZyb20gJ0B2aXN4L3NoYXBlJztcbmltcG9ydCB7IERhdHVtT2JqZWN0IH0gZnJvbSAnQHZpc3gvc2hhcGUvbGliL3R5cGVzJztcbmltcG9ydCB7IFNjYWxlQmFuZCwgU2NhbGVMaW5lYXIgfSBmcm9tICdAdmlzeC92ZW5kb3IvZDMtc2NhbGUnO1xuaW1wb3J0IHsgRnJhZ21lbnQsIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IENoYXJ0RGF0YURlZmluaXRpb24sIENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGUsIFNoYXBlRGVmaW5pdGlvbiB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgZ2V0QWxsQ2hhcnRWYWx1ZXMsIGdldEZvcm1hdHRlZFZhbHVlLCBzaG93RGF0YUxhYmVsIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9EYXRhTGFiZWwvaW5kZXgnO1xuaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0ZpZWxkL3R5cGVzJztcbmltcG9ydCB7IGxpZ2h0ZW5Db2xvciB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9jb2xvci5mdW5jdGlvbnMnO1xuaW1wb3J0IHsgRGF0YUxhYmVsIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9EYXRhTGFiZWwnO1xuaW1wb3J0IHsgQkFSX1JBRElVUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9CT1JERVJfUkFESVVTJztcbmltcG9ydCB7IGdldEJhckZpbGwgfSBmcm9tICcuLi9nZXRCYXJGaWxsJztcblxuZXhwb3J0IHR5cGUgQmFyR3JvdXBQcm9wcyA9IHtcbiAgZGF0YTogQ2hhcnREYXRhRGVmaW5pdGlvbltdO1xuICBrZXlzOiBzdHJpbmdbXTtcbiAgaGVpZ2h0OiBudW1iZXI7XG4gIHdpZHRoPzogbnVtYmVyO1xuICB4S2V5OiBzdHJpbmc7XG4gIHhTY2FsZURhdGFUeXBlOiBEYXRhVHlwZTtcbiAgeFNjYWxlOiBTY2FsZUJhbmQ8c3RyaW5nPiB8IFNjYWxlQmFuZDxEYXRlPiB8IFNjYWxlQmFuZDxudW1iZXI+IHwgbnVsbDtcbiAgaW5uZXJYU2NhbGU6IFNjYWxlQmFuZDxzdHJpbmc+IHwgdW5kZWZpbmVkO1xuICB5U2NhbGU6IFNjYWxlTGluZWFyPG51bWJlciwgbnVtYmVyLCBuZXZlcj47XG4gIG9uQ2xpY2s6IChlOiBSZWFjdC5Nb3VzZUV2ZW50PFNWR1JlY3RFbGVtZW50LCBNb3VzZUV2ZW50PiwgYmFyR3JvdXA6IGFueSwgYmFyOiBhbnkpID0+IHZvaWQ7XG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlW107XG4gIGJhcnM6IFNoYXBlRGVmaW5pdGlvbjxCYXJTdHlsZXM+W107XG4gIGVuYWJsZUhvdmVyPzogYm9vbGVhbjtcbiAgeUF4aXNMYWJlbHM/OiBzdHJpbmdbXTtcbiAgeUxhYmVsUG9zaXRpb24/OiBudW1iZXI7XG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzOiBib29sZWFuO1xuICBsYWJlbFN0eWxlPzogUmVhY3QuQ1NTUHJvcGVydGllcztcbiAgc2hvd0xhYmVscz86IGJvb2xlYW47XG4gIGxhYmVsRGljdGlvbmFyeTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBCYXJHcm91cCh7XG4gIGRhdGEsXG4gIGtleXMsXG4gIGhlaWdodCxcbiAgd2lkdGgsXG4gIHhLZXksXG4gIHhTY2FsZURhdGFUeXBlLFxuICB4U2NhbGUsXG4gIGlubmVyWFNjYWxlLFxuICB5U2NhbGUsXG4gIG9uQ2xpY2ssXG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLFxuICBiYXJzLFxuICBlbmFibGVIb3ZlcixcbiAgeUF4aXNMYWJlbHMsXG4gIHlMYWJlbFBvc2l0aW9uLFxuICBzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVscyxcbiAgbGFiZWxTdHlsZSxcbiAgc2hvd0xhYmVscyxcbiAgbGFiZWxEaWN0aW9uYXJ5LFxufTogQmFyR3JvdXBQcm9wcykge1xuICBjb25zdCBnZXRHcm91cFBvc2l0aW9uID0gKGQ6IERhdHVtT2JqZWN0KSA9PiB7XG4gICAgY29uc3QgeFZhbHVlID0gZFt4S2V5IGFzIGtleW9mIHR5cGVvZiBkXTtcblxuICAgIGlmICh4U2NhbGVEYXRhVHlwZSA9PT0gJ3N0cmluZycpIHJldHVybiBTdHJpbmcoeFZhbHVlKTtcblxuICAgIGlmICh4U2NhbGVEYXRhVHlwZSA9PT0gJ2RhdGVfdGltZScpIHtcbiAgICAgIHJldHVybiBuZXcgRGF0ZShTdHJpbmcoeFZhbHVlKSk7XG4gICAgfVxuXG4gICAgaWYgKHhTY2FsZURhdGFUeXBlID09PSAnbnVtYmVyJykge1xuICAgICAgcmV0dXJuIE51bWJlcih4VmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiBTdHJpbmcoeFZhbHVlKTtcbiAgfTtcblxuICBjb25zdCB0b3RhbEl0ZW1zID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgYWxsQmFyVmFsdWVzID0gZ2V0QWxsQ2hhcnRWYWx1ZXMoZGF0YSwga2V5cyk7XG4gICAgcmV0dXJuIGFsbEJhclZhbHVlcy5sZW5ndGg7XG4gIH0sIFtkYXRhLCBrZXlzXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8VmlzeEJhckdyb3VwPERhdHVtT2JqZWN0PlxuICAgICAgZGF0YT17ZGF0YSBhcyBEYXR1bU9iamVjdFtdfVxuICAgICAga2V5cz17a2V5c31cbiAgICAgIGhlaWdodD17aGVpZ2h0fVxuICAgICAgeDA9e2dldEdyb3VwUG9zaXRpb259XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICB4MFNjYWxlPXt4U2NhbGV9XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICB4MVNjYWxlPXtpbm5lclhTY2FsZX1cbiAgICAgIHlTY2FsZT17eVNjYWxlfVxuICAgICAgY29sb3I9eygpID0+ICcnfVxuICAgID5cbiAgICAgIHsoYmFyR3JvdXBzKSA9PiB7XG4gICAgICAgIHJldHVybiBiYXJHcm91cHMubWFwKChiYXJHcm91cCkgPT4gKFxuICAgICAgICAgIDxHcm91cCBrZXk9e2BiYXItZ3JvdXAtJHtiYXJHcm91cC5pbmRleH0tJHtiYXJHcm91cC54MH1gfSBsZWZ0PXtiYXJHcm91cC54MH0+XG4gICAgICAgICAgICB7YmFyR3JvdXAuYmFycy5tYXAoKGJhcikgPT4gKFxuICAgICAgICAgICAgICA8QmFyXG4gICAgICAgICAgICAgICAga2V5PXtgYmFyLSR7YmFyLmluZGV4fS0ke2Jhci54fWB9XG4gICAgICAgICAgICAgICAgYmFyPXtiYXJ9XG4gICAgICAgICAgICAgICAgYmFyR3JvdXA9e2Jhckdyb3VwfVxuICAgICAgICAgICAgICAgIGJhcnM9e2JhcnN9XG4gICAgICAgICAgICAgICAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM9e2NvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzfVxuICAgICAgICAgICAgICAgIGVuYWJsZUhvdmVyPXtlbmFibGVIb3Zlcn1cbiAgICAgICAgICAgICAgICBsYWJlbFN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICAgICAgICAgICAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM9e3Nob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzfVxuICAgICAgICAgICAgICAgIHlBeGlzTGFiZWxzPXt5QXhpc0xhYmVsc31cbiAgICAgICAgICAgICAgICB5TGFiZWxQb3NpdGlvbj17eUxhYmVsUG9zaXRpb259XG4gICAgICAgICAgICAgICAgdG90YWxJdGVtcz17dG90YWxJdGVtc31cbiAgICAgICAgICAgICAgICBzaG93TGFiZWxzPXtzaG93TGFiZWxzfVxuICAgICAgICAgICAgICAgIGxhYmVsRGljdGlvbmFyeT17bGFiZWxEaWN0aW9uYXJ5fVxuICAgICAgICAgICAgICAgIHlTY2FsZT17eVNjYWxlfVxuICAgICAgICAgICAgICAgIGNvbnRhaW5lckhlaWdodD17aGVpZ2h0fVxuICAgICAgICAgICAgICAgIGNoYXJ0V2lkdGg9e3dpZHRofVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKSl9XG4gICAgICAgICAgPC9Hcm91cD5cbiAgICAgICAgKSk7XG4gICAgICB9fVxuICAgIDwvVmlzeEJhckdyb3VwPlxuICApO1xufVxuXG5mdW5jdGlvbiBjYWxjdWxhdGVCYXJMYWJlbFBvc2l0aW9uKFxuICBiYXI6IGFueSxcbiAgYmFyR3JvdXA6IGFueSxcbiAgY2hhcnRXaWR0aDogbnVtYmVyLFxuICBkaXNwbGF5VmFsdWU6IHN0cmluZyB8IG51bGwsXG4pOiBudW1iZXIgfCBmYWxzZSB7XG4gIGlmICghZGlzcGxheVZhbHVlKSByZXR1cm4gZmFsc2U7XG5cbiAgY29uc3QgRVNUSU1BVEVEX0ZPTlRfV0lEVEggPSA1Ljc1O1xuXG4gIGNvbnN0IG1pbldpZHRoUGVyY2VudCA9IDAuMDI7XG4gIGNvbnN0IG1heFdpZHRoUGVyY2VudCA9IDAuMTU7XG4gIGNvbnN0IG1pbldpZHRoUHggPSBjaGFydFdpZHRoICogbWluV2lkdGhQZXJjZW50O1xuICBjb25zdCBtYXhXaWR0aFB4ID0gY2hhcnRXaWR0aCAqIG1heFdpZHRoUGVyY2VudDtcblxuICBjb25zdCBtaW5TaXplID0gMC41O1xuICBjb25zdCBtYXhTaXplID0gMS4yO1xuXG4gIGNvbnN0IG5vcm1hbGl6ZWRCYXJXaWR0aCA9IE1hdGgubWluKE1hdGgubWF4KGJhci53aWR0aCwgbWluV2lkdGhQeCksIG1heFdpZHRoUHgpO1xuICBjb25zdCBsb2dJbnB1dCA9IDEgKyAoKG5vcm1hbGl6ZWRCYXJXaWR0aCAtIG1pbldpZHRoUHgpIC8gKG1heFdpZHRoUHggLSBtaW5XaWR0aFB4KSkgKiAoTWF0aC5FIC0gMSk7XG4gIGNvbnN0IGxvZ1JhdGlvID0gTWF0aC5sb2cobG9nSW5wdXQpO1xuICBjb25zdCBzaXplID0gbWluU2l6ZSArIGxvZ1JhdGlvICogKG1heFNpemUgLSBtaW5TaXplKTtcblxuICBjb25zdCBiYXNlUG9zaXRpb24gPSBiYXJHcm91cC5iYXJzLmxlbmd0aCA+IDEgPyBiYXIueCArIChiYXIud2lkdGggKiBzaXplKSAvIDIgOiAoYmFyLndpZHRoICogc2l6ZSkgLyAyO1xuXG4gIHJldHVybiBiYXNlUG9zaXRpb24gLSAoZGlzcGxheVZhbHVlLmxlbmd0aCAqIEVTVElNQVRFRF9GT05UX1dJRFRIKSAvIDI7XG59XG5cbnR5cGUgQmFyUHJvcHMgPSB7XG4gIGJhcjogYW55O1xuICBiYXJHcm91cDogYW55O1xuICBiYXJzOiBTaGFwZURlZmluaXRpb248QmFyU3R5bGVzPltdO1xuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZVtdO1xuICBlbmFibGVIb3Zlcj86IGJvb2xlYW47XG4gIG9uQ2xpY2s6IChlOiBSZWFjdC5Nb3VzZUV2ZW50PFNWR1JlY3RFbGVtZW50LCBNb3VzZUV2ZW50PiwgYmFyR3JvdXA6IGFueSwgYmFyOiBhbnkpID0+IHZvaWQ7XG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzOiBib29sZWFuO1xuICBsYWJlbFN0eWxlPzogUmVhY3QuQ1NTUHJvcGVydGllcztcbiAgeUF4aXNMYWJlbHM/OiBzdHJpbmdbXTtcbiAgeUxhYmVsUG9zaXRpb24/OiBudW1iZXI7XG4gIHRvdGFsSXRlbXM6IG51bWJlcjtcbiAgc2hvd0xhYmVscz86IGJvb2xlYW47XG4gIGxhYmVsRGljdGlvbmFyeT86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG4gIHlTY2FsZTogU2NhbGVMaW5lYXI8bnVtYmVyLCBudW1iZXIsIG5ldmVyPjtcbiAgY29udGFpbmVySGVpZ2h0OiBudW1iZXI7XG4gIGNoYXJ0V2lkdGg/OiBudW1iZXI7XG59O1xuXG5jb25zdCBCYXIgPSAoe1xuICBiYXIsXG4gIGJhckdyb3VwLFxuICBiYXJzLFxuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcyxcbiAgZW5hYmxlSG92ZXIsXG4gIGxhYmVsU3R5bGUsXG4gIG9uQ2xpY2ssXG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzLFxuICB5QXhpc0xhYmVscyxcbiAgeUxhYmVsUG9zaXRpb24sXG4gIHRvdGFsSXRlbXMsXG4gIHNob3dMYWJlbHMsXG4gIGxhYmVsRGljdGlvbmFyeSxcbiAgeVNjYWxlLFxuICBjb250YWluZXJIZWlnaHQsXG4gIGNoYXJ0V2lkdGgsXG59OiBCYXJQcm9wcykgPT4ge1xuICBjb25zdCBYX1BBRERJTkcgPSAxMDtcbiAgY29uc3QgWV9QQURESU5HID0gODtcblxuICBjb25zdCBtaW5XaWR0aCA9IDIwO1xuICBjb25zdCBtaW5Db250YWluZXJIZWlnaHQgPSA1MDtcblxuICBjb25zdCBzaG93QmFyID0gYmFyLnZhbHVlICE9PSBudWxsICYmIGJhci5oZWlnaHQgPiAwICYmIGJhci53aWR0aCA+IDA7XG5cbiAgY29uc3QgYmFyVG9wWSA9IHlTY2FsZShiYXIudmFsdWUpO1xuICBjb25zdCBsYWJlbFggPSBiYXIueCAtIFhfUEFERElORztcbiAgY29uc3QgbGFiZWxZID0gYmFyVG9wWSAtIFlfUEFERElORztcblxuICBjb25zdCBzaG93TWluTWF4ID0gc2hvd0RhdGFMYWJlbCh0b3RhbEl0ZW1zKTtcbiAgY29uc3QgaGFzU3BhY2VGb3JMYWJlbCA9IHNob3dMYWJlbHMgJiYgYmFyLndpZHRoID4gbWluV2lkdGggJiYgY29udGFpbmVySGVpZ2h0ID4gbWluQ29udGFpbmVySGVpZ2h0O1xuXG4gIGNvbnN0IGRpc3BsYXlWYWx1ZSA9IGdldEZvcm1hdHRlZFZhbHVlKGJhci52YWx1ZSwgbGFiZWxEaWN0aW9uYXJ5KTtcbiAgY29uc3QgYmFyUG9zaXRpb24gPSBjaGFydFdpZHRoID8gY2FsY3VsYXRlQmFyTGFiZWxQb3NpdGlvbihiYXIsIGJhckdyb3VwLCBjaGFydFdpZHRoLCBkaXNwbGF5VmFsdWUpIDogbGFiZWxYO1xuXG4gIHJldHVybiAoXG4gICAgPEZyYWdtZW50PlxuICAgICAge3Nob3dCYXIgJiYgKFxuICAgICAgICA8QmFyUmVjdFxuICAgICAgICAgIGJhclJlY3RLZXk9e2BiYXItZ3JvdXAtYmFyLSR7YmFyR3JvdXAuaW5kZXh9LSR7YmFyLmluZGV4fS0ke2Jhci52YWx1ZX0tJHtTdHJpbmcoYmFyLmtleSl9YH1cbiAgICAgICAgICB4PXtiYXIueH1cbiAgICAgICAgICB5PXtiYXIueX1cbiAgICAgICAgICB3aWR0aD17YmFyLndpZHRofVxuICAgICAgICAgIGhlaWdodD17YmFyLmhlaWdodH1cbiAgICAgICAgICBmaWxsPXtnZXRCYXJGaWxsKGJhcnMsIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLCBTdHJpbmcoYmFyLmtleSksIGJhci52YWx1ZSl9XG4gICAgICAgICAgb25DbGljaz17KGUpID0+IG9uQ2xpY2soZSwgYmFyR3JvdXAsIGJhcil9XG4gICAgICAgICAgZW5hYmxlSG92ZXI9e2VuYWJsZUhvdmVyfVxuICAgICAgICAvPlxuICAgICAgKX1cblxuICAgICAge2hhc1NwYWNlRm9yTGFiZWwgJiYgc2hvd01pbk1heCAmJiBiYXJQb3NpdGlvbiAhPT0gZmFsc2UgJiYgKFxuICAgICAgICA8RGF0YUxhYmVsIHg9e2JhclBvc2l0aW9ufSB5PXtsYWJlbFl9IHRpdGxlPXtkaXNwbGF5VmFsdWV9IGR4PXsxfSBkeT17MH0gLz5cbiAgICAgICl9XG5cbiAgICAgIDxCYXJMYWJlbFxuICAgICAgICBiYXI9e2Jhcn1cbiAgICAgICAgYmFyR3JvdXA9e2Jhckdyb3VwfVxuICAgICAgICB5TGFiZWxQb3NpdGlvbj17eUxhYmVsUG9zaXRpb259XG4gICAgICAgIHlBeGlzTGFiZWxzPXt5QXhpc0xhYmVsc31cbiAgICAgICAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM9e3Nob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzfVxuICAgICAgICBsYWJlbFN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgLz5cbiAgICA8L0ZyYWdtZW50PlxuICApO1xufTtcblxudHlwZSBCYXJSZWN0UHJvcHMgPSB7XG4gIG9uQ2xpY2s6IChlOiBSZWFjdC5Nb3VzZUV2ZW50PFNWR1JlY3RFbGVtZW50LCBNb3VzZUV2ZW50PikgPT4gdm9pZDtcbiAgZmlsbD86IHN0cmluZztcbiAgeDogbnVtYmVyO1xuICB5OiBudW1iZXI7XG4gIHdpZHRoOiBudW1iZXI7XG4gIGhlaWdodDogbnVtYmVyO1xuICBiYXJSZWN0S2V5OiBzdHJpbmc7XG4gIGVuYWJsZUhvdmVyPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IEJhclJlY3QgPSAoeyBvbkNsaWNrLCBmaWxsLCB4LCB5LCB3aWR0aCwgaGVpZ2h0LCBiYXJSZWN0S2V5LCBlbmFibGVIb3ZlciB9OiBCYXJSZWN0UHJvcHMpID0+IHtcbiAgY29uc3QgW2lzSG92ZXJlZCwgc2V0SXNIb3ZlcmVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICBjb25zdCBjbGFzc2VzID0gZW5hYmxlSG92ZXIgPyBjc3MoeyBjdXJzb3I6ICdwb2ludGVyJyB9KSA6ICcnO1xuXG4gIGNvbnN0IGRpc3BsYXlDb2xvciA9IGlzSG92ZXJlZCAmJiBlbmFibGVIb3ZlciA/IGxpZ2h0ZW5Db2xvcihmaWxsLCAwLjgpIDogZmlsbDtcblxuICBjb25zdCBoYW5kbGVPbk1vdXNlRW50ZXIgPSAoKSA9PiB7XG4gICAgaWYgKGVuYWJsZUhvdmVyKSB7XG4gICAgICBzZXRJc0hvdmVyZWQodHJ1ZSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZU9uTW91c2VMZWF2ZSA9ICgpID0+IHtcbiAgICBpZiAoZW5hYmxlSG92ZXIpIHtcbiAgICAgIHNldElzSG92ZXJlZChmYWxzZSk7XG4gICAgfVxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPHJlY3RcbiAgICAgIGtleT17YmFyUmVjdEtleX1cbiAgICAgIHg9e3h9XG4gICAgICB5PXt5fVxuICAgICAgd2lkdGg9e3dpZHRofVxuICAgICAgaGVpZ2h0PXtoZWlnaHR9XG4gICAgICBmaWxsPXtkaXNwbGF5Q29sb3J9XG4gICAgICByeD17QkFSX1JBRElVU31cbiAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICBvbk1vdXNlRW50ZXI9e2hhbmRsZU9uTW91c2VFbnRlcn1cbiAgICAgIG9uTW91c2VMZWF2ZT17aGFuZGxlT25Nb3VzZUxlYXZlfVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzfVxuICAgIC8+XG4gICk7XG59O1xuXG50eXBlIEJhckxhYmVsUHJvcHMgPSB7XG4gIGJhcjogYW55O1xuICBiYXJHcm91cDogYW55O1xuICB5TGFiZWxQb3NpdGlvbj86IG51bWJlcjtcbiAgeUF4aXNMYWJlbHM/OiBzdHJpbmdbXTtcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM6IGJvb2xlYW47XG4gIGxhYmVsU3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xufTtcblxuY29uc3QgQmFyTGFiZWwgPSAoe1xuICBiYXIsXG4gIGJhckdyb3VwLFxuICB5TGFiZWxQb3NpdGlvbixcbiAgeUF4aXNMYWJlbHMsXG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzLFxuICBsYWJlbFN0eWxlLFxufTogQmFyTGFiZWxQcm9wcykgPT4ge1xuICBpZiAoIXNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzIHx8ICF5TGFiZWxQb3NpdGlvbiB8fCAheUF4aXNMYWJlbHMpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGxhYmVsID0geUF4aXNMYWJlbHNbYmFyLmluZGV4XTtcbiAgY29uc3QgY29sdW1uTGFiZWwgPSBsYWJlbC5zcGxpdCgn4oCiJylbMF07XG5cbiAgbGV0IGZvcm1hdHRlZENvbHVtbkxhYmVsOiBzdHJpbmc7XG4gIGlmIChjb2x1bW5MYWJlbC5sZW5ndGggPj0gMTMpIHtcbiAgICBmb3JtYXR0ZWRDb2x1bW5MYWJlbCA9IGNvbHVtbkxhYmVsLnNsaWNlKDAsIDEwKSArICcuLi4nO1xuICB9IGVsc2Uge1xuICAgIGZvcm1hdHRlZENvbHVtbkxhYmVsID0gY29sdW1uTGFiZWwuc2xpY2UoMCwgMTMpO1xuICB9XG5cbiAgY29uc3QgbGFiZWxYR2FwID0gNDtcbiAgY29uc3QgbGFiZWxYUG9zaXRpb24gPSBiYXIueCArIGJhci53aWR0aCAvIDIgKyBsYWJlbFhHYXA7XG5cbiAgY29uc3QgbGFiZWxZR2FwID0gMTU7XG4gIGNvbnN0IGxhYmVsWVBvc2l0aW9uID0geUxhYmVsUG9zaXRpb24gKyBsYWJlbFlHYXA7XG5cbiAgY29uc3QgbGFiZWxLZXkgPSBgbGFiZWwtJHtiYXJHcm91cC5pbmRleH0tJHtiYXIuaW5kZXh9LSR7bGFiZWx9YDtcblxuICByZXR1cm4gKFxuICAgIDx0ZXh0XG4gICAgICBrZXk9e2xhYmVsS2V5fVxuICAgICAgeD17bGFiZWxYUG9zaXRpb259XG4gICAgICB5PXtsYWJlbFlQb3NpdGlvbn1cbiAgICAgIHN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgdHJhbnNmb3JtPXtgcm90YXRlKC03MCwgJHtsYWJlbFhQb3NpdGlvbn0sICR7bGFiZWxZUG9zaXRpb259KWB9XG4gICAgICB0ZXh0QW5jaG9yPVwiZW5kXCJcbiAgICA+XG4gICAgICB7Zm9ybWF0dGVkQ29sdW1uTGFiZWx9XG4gICAgPC90ZXh0PlxuICApO1xufTtcbiJdfQ== */",
46331
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJhckdyb3VwLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvUWdDIiwiZmlsZSI6IkJhckdyb3VwLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBHcm91cCB9IGZyb20gJ0B2aXN4L2dyb3VwJztcbmltcG9ydCB7IEJhckdyb3VwIGFzIFZpc3hCYXJHcm91cCB9IGZyb20gJ0B2aXN4L3NoYXBlJztcbmltcG9ydCB7IERhdHVtT2JqZWN0IH0gZnJvbSAnQHZpc3gvc2hhcGUvbGliL3R5cGVzJztcbmltcG9ydCB7IFNjYWxlQmFuZCwgU2NhbGVMaW5lYXIgfSBmcm9tICdAdmlzeC92ZW5kb3IvZDMtc2NhbGUnO1xuaW1wb3J0IHsgRnJhZ21lbnQsIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IENoYXJ0RGF0YURlZmluaXRpb24sIENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGUsIFNoYXBlRGVmaW5pdGlvbiB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgZ2V0QWxsQ2hhcnRWYWx1ZXMsIGdldEZvcm1hdHRlZFZhbHVlLCBzaG93RGF0YUxhYmVsIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9EYXRhTGFiZWwvaW5kZXgnO1xuaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0ZpZWxkL3R5cGVzJztcbmltcG9ydCB7IGxpZ2h0ZW5Db2xvciB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9jb2xvci5mdW5jdGlvbnMnO1xuaW1wb3J0IHsgRGF0YUxhYmVsIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9EYXRhTGFiZWwnO1xuaW1wb3J0IHsgQkFSX1JBRElVUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9CT1JERVJfUkFESVVTJztcbmltcG9ydCB7IGdldEJhckZpbGwgfSBmcm9tICcuLi9nZXRCYXJGaWxsJztcblxuZXhwb3J0IHR5cGUgQmFyR3JvdXBQcm9wcyA9IHtcbiAgZGF0YTogQ2hhcnREYXRhRGVmaW5pdGlvbltdO1xuICBrZXlzOiBzdHJpbmdbXTtcbiAgaGVpZ2h0OiBudW1iZXI7XG4gIHdpZHRoPzogbnVtYmVyO1xuICB4S2V5OiBzdHJpbmc7XG4gIHhTY2FsZURhdGFUeXBlOiBEYXRhVHlwZTtcbiAgeFNjYWxlOiBTY2FsZUJhbmQ8c3RyaW5nPiB8IFNjYWxlQmFuZDxEYXRlPiB8IFNjYWxlQmFuZDxudW1iZXI+IHwgbnVsbDtcbiAgaW5uZXJYU2NhbGU6IFNjYWxlQmFuZDxzdHJpbmc+IHwgdW5kZWZpbmVkO1xuICB5U2NhbGU6IFNjYWxlTGluZWFyPG51bWJlciwgbnVtYmVyLCBuZXZlcj47XG4gIG9uQ2xpY2s6IChlOiBSZWFjdC5Nb3VzZUV2ZW50PFNWR1JlY3RFbGVtZW50LCBNb3VzZUV2ZW50PiwgYmFyR3JvdXA6IGFueSwgYmFyOiBhbnkpID0+IHZvaWQ7XG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlW107XG4gIGJhcnM6IFNoYXBlRGVmaW5pdGlvbjxCYXJTdHlsZXM+W107XG4gIGVuYWJsZUhvdmVyPzogYm9vbGVhbjtcbiAgeUF4aXNMYWJlbHM/OiBzdHJpbmdbXTtcbiAgeUxhYmVsUG9zaXRpb24/OiBudW1iZXI7XG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzOiBib29sZWFuO1xuICBsYWJlbFN0eWxlPzogUmVhY3QuQ1NTUHJvcGVydGllcztcbiAgc2hvd0xhYmVscz86IGJvb2xlYW47XG4gIGxhYmVsRGljdGlvbmFyeTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBCYXJHcm91cCh7XG4gIGRhdGEsXG4gIGtleXMsXG4gIGhlaWdodCxcbiAgd2lkdGgsXG4gIHhLZXksXG4gIHhTY2FsZURhdGFUeXBlLFxuICB4U2NhbGUsXG4gIGlubmVyWFNjYWxlLFxuICB5U2NhbGUsXG4gIG9uQ2xpY2ssXG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLFxuICBiYXJzLFxuICBlbmFibGVIb3ZlcixcbiAgeUF4aXNMYWJlbHMsXG4gIHlMYWJlbFBvc2l0aW9uLFxuICBzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVscyxcbiAgbGFiZWxTdHlsZSxcbiAgc2hvd0xhYmVscyxcbiAgbGFiZWxEaWN0aW9uYXJ5LFxufTogQmFyR3JvdXBQcm9wcykge1xuICBjb25zdCBnZXRHcm91cFBvc2l0aW9uID0gKGQ6IERhdHVtT2JqZWN0KSA9PiB7XG4gICAgY29uc3QgeFZhbHVlID0gZFt4S2V5IGFzIGtleW9mIHR5cGVvZiBkXTtcblxuICAgIGlmICh4U2NhbGVEYXRhVHlwZSA9PT0gJ3N0cmluZycpIHJldHVybiBTdHJpbmcoeFZhbHVlKTtcblxuICAgIGlmICh4U2NhbGVEYXRhVHlwZSA9PT0gJ2RhdGVfdGltZScpIHtcbiAgICAgIHJldHVybiBuZXcgRGF0ZShTdHJpbmcoeFZhbHVlKSk7XG4gICAgfVxuXG4gICAgaWYgKHhTY2FsZURhdGFUeXBlID09PSAnbnVtYmVyJykge1xuICAgICAgcmV0dXJuIE51bWJlcih4VmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiBTdHJpbmcoeFZhbHVlKTtcbiAgfTtcblxuICBjb25zdCB0b3RhbEl0ZW1zID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgYWxsQmFyVmFsdWVzID0gZ2V0QWxsQ2hhcnRWYWx1ZXMoZGF0YSwga2V5cyk7XG4gICAgcmV0dXJuIGFsbEJhclZhbHVlcy5sZW5ndGg7XG4gIH0sIFtkYXRhLCBrZXlzXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8VmlzeEJhckdyb3VwPERhdHVtT2JqZWN0PlxuICAgICAgZGF0YT17ZGF0YSBhcyBEYXR1bU9iamVjdFtdfVxuICAgICAga2V5cz17a2V5c31cbiAgICAgIGhlaWdodD17aGVpZ2h0fVxuICAgICAgeDA9e2dldEdyb3VwUG9zaXRpb259XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICB4MFNjYWxlPXt4U2NhbGV9XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICB4MVNjYWxlPXtpbm5lclhTY2FsZX1cbiAgICAgIHlTY2FsZT17eVNjYWxlfVxuICAgICAgY29sb3I9eygpID0+ICcnfVxuICAgID5cbiAgICAgIHsoYmFyR3JvdXBzKSA9PiB7XG4gICAgICAgIHJldHVybiBiYXJHcm91cHMubWFwKChiYXJHcm91cCkgPT4gKFxuICAgICAgICAgIDxHcm91cCBrZXk9e2BiYXItZ3JvdXAtJHtiYXJHcm91cC5pbmRleH0tJHtiYXJHcm91cC54MH1gfSBsZWZ0PXtiYXJHcm91cC54MH0+XG4gICAgICAgICAgICB7YmFyR3JvdXAuYmFycy5tYXAoKGJhcikgPT4gKFxuICAgICAgICAgICAgICA8QmFyXG4gICAgICAgICAgICAgICAga2V5PXtgYmFyLSR7YmFyLmluZGV4fS0ke2Jhci54fWB9XG4gICAgICAgICAgICAgICAgYmFyPXtiYXJ9XG4gICAgICAgICAgICAgICAgYmFyR3JvdXA9e2Jhckdyb3VwfVxuICAgICAgICAgICAgICAgIGJhcnM9e2JhcnN9XG4gICAgICAgICAgICAgICAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM9e2NvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzfVxuICAgICAgICAgICAgICAgIGVuYWJsZUhvdmVyPXtlbmFibGVIb3Zlcn1cbiAgICAgICAgICAgICAgICBsYWJlbFN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICAgICAgICAgICAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM9e3Nob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzfVxuICAgICAgICAgICAgICAgIHlBeGlzTGFiZWxzPXt5QXhpc0xhYmVsc31cbiAgICAgICAgICAgICAgICB5TGFiZWxQb3NpdGlvbj17eUxhYmVsUG9zaXRpb259XG4gICAgICAgICAgICAgICAgdG90YWxJdGVtcz17dG90YWxJdGVtc31cbiAgICAgICAgICAgICAgICBzaG93TGFiZWxzPXtzaG93TGFiZWxzfVxuICAgICAgICAgICAgICAgIGxhYmVsRGljdGlvbmFyeT17bGFiZWxEaWN0aW9uYXJ5fVxuICAgICAgICAgICAgICAgIHlTY2FsZT17eVNjYWxlfVxuICAgICAgICAgICAgICAgIGNvbnRhaW5lckhlaWdodD17aGVpZ2h0fVxuICAgICAgICAgICAgICAgIGNoYXJ0V2lkdGg9e3dpZHRofVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKSl9XG4gICAgICAgICAgPC9Hcm91cD5cbiAgICAgICAgKSk7XG4gICAgICB9fVxuICAgIDwvVmlzeEJhckdyb3VwPlxuICApO1xufVxuXG5mdW5jdGlvbiBjYWxjdWxhdGVCYXJMYWJlbFBvc2l0aW9uKFxuICBiYXI6IGFueSxcbiAgYmFyR3JvdXA6IGFueSxcbiAgY2hhcnRXaWR0aDogbnVtYmVyLFxuICBkaXNwbGF5VmFsdWU6IHN0cmluZyB8IG51bGwsXG4pOiBudW1iZXIgfCBmYWxzZSB7XG4gIGlmICghZGlzcGxheVZhbHVlKSByZXR1cm4gZmFsc2U7XG5cbiAgY29uc3QgRVNUSU1BVEVEX0ZPTlRfV0lEVEggPSA1Ljc1O1xuXG4gIGNvbnN0IG1pbldpZHRoUGVyY2VudCA9IDAuMDI7XG4gIGNvbnN0IG1heFdpZHRoUGVyY2VudCA9IDAuMTU7XG4gIGNvbnN0IG1pbldpZHRoUHggPSBjaGFydFdpZHRoICogbWluV2lkdGhQZXJjZW50O1xuICBjb25zdCBtYXhXaWR0aFB4ID0gY2hhcnRXaWR0aCAqIG1heFdpZHRoUGVyY2VudDtcblxuICBjb25zdCBtaW5TaXplID0gMC41O1xuICBjb25zdCBtYXhTaXplID0gMS4yO1xuXG4gIGNvbnN0IG5vcm1hbGl6ZWRCYXJXaWR0aCA9IE1hdGgubWluKE1hdGgubWF4KGJhci53aWR0aCwgbWluV2lkdGhQeCksIG1heFdpZHRoUHgpO1xuICBjb25zdCBsb2dJbnB1dCA9IDEgKyAoKG5vcm1hbGl6ZWRCYXJXaWR0aCAtIG1pbldpZHRoUHgpIC8gKG1heFdpZHRoUHggLSBtaW5XaWR0aFB4KSkgKiAoTWF0aC5FIC0gMSk7XG4gIGNvbnN0IGxvZ1JhdGlvID0gTWF0aC5sb2cobG9nSW5wdXQpO1xuICBjb25zdCBzaXplID0gbWluU2l6ZSArIGxvZ1JhdGlvICogKG1heFNpemUgLSBtaW5TaXplKTtcblxuICBjb25zdCBiYXNlUG9zaXRpb24gPSBiYXJHcm91cC5iYXJzLmxlbmd0aCA+IDEgPyBiYXIueCArIChiYXIud2lkdGggKiBzaXplKSAvIDIgOiAoYmFyLndpZHRoICogc2l6ZSkgLyAyO1xuXG4gIHJldHVybiBiYXNlUG9zaXRpb24gLSAoZGlzcGxheVZhbHVlLmxlbmd0aCAqIEVTVElNQVRFRF9GT05UX1dJRFRIKSAvIDI7XG59XG5cbnR5cGUgQmFyUHJvcHMgPSB7XG4gIGJhcjogYW55O1xuICBiYXJHcm91cDogYW55O1xuICBiYXJzOiBTaGFwZURlZmluaXRpb248QmFyU3R5bGVzPltdO1xuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZVtdO1xuICBlbmFibGVIb3Zlcj86IGJvb2xlYW47XG4gIG9uQ2xpY2s6IChlOiBSZWFjdC5Nb3VzZUV2ZW50PFNWR1JlY3RFbGVtZW50LCBNb3VzZUV2ZW50PiwgYmFyR3JvdXA6IGFueSwgYmFyOiBhbnkpID0+IHZvaWQ7XG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzOiBib29sZWFuO1xuICBsYWJlbFN0eWxlPzogUmVhY3QuQ1NTUHJvcGVydGllcztcbiAgeUF4aXNMYWJlbHM/OiBzdHJpbmdbXTtcbiAgeUxhYmVsUG9zaXRpb24/OiBudW1iZXI7XG4gIHRvdGFsSXRlbXM6IG51bWJlcjtcbiAgc2hvd0xhYmVscz86IGJvb2xlYW47XG4gIGxhYmVsRGljdGlvbmFyeT86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG4gIHlTY2FsZTogU2NhbGVMaW5lYXI8bnVtYmVyLCBudW1iZXIsIG5ldmVyPjtcbiAgY29udGFpbmVySGVpZ2h0OiBudW1iZXI7XG4gIGNoYXJ0V2lkdGg/OiBudW1iZXI7XG59O1xuXG5jb25zdCBCYXIgPSAoe1xuICBiYXIsXG4gIGJhckdyb3VwLFxuICBiYXJzLFxuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcyxcbiAgZW5hYmxlSG92ZXIsXG4gIGxhYmVsU3R5bGUsXG4gIG9uQ2xpY2ssXG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzLFxuICB5QXhpc0xhYmVscyxcbiAgeUxhYmVsUG9zaXRpb24sXG4gIHRvdGFsSXRlbXMsXG4gIHNob3dMYWJlbHMsXG4gIGxhYmVsRGljdGlvbmFyeSxcbiAgeVNjYWxlLFxuICBjb250YWluZXJIZWlnaHQsXG4gIGNoYXJ0V2lkdGgsXG59OiBCYXJQcm9wcykgPT4ge1xuICBjb25zdCBZX1BBRERJTkcgPSA4O1xuXG4gIGNvbnN0IG1pbldpZHRoID0gMjA7XG4gIGNvbnN0IG1pbkNvbnRhaW5lckhlaWdodCA9IDUwO1xuXG4gIGNvbnN0IGJhclkgPSBiYXIudmFsdWUgPj0gMCA/IHlTY2FsZShiYXIudmFsdWUpIDogeVNjYWxlKDApO1xuICBjb25zdCBiYXJIZWlnaHQgPSBNYXRoLmFicyh5U2NhbGUoYmFyLnZhbHVlKSAtIHlTY2FsZSgwKSk7XG5cbiAgY29uc3Qgc2hvd0JhciA9IGJhci52YWx1ZSAhPT0gbnVsbCAmJiBiYXJIZWlnaHQgPiAwICYmIGJhci53aWR0aCA+IDA7XG5cbiAgY29uc3QgbGFiZWxYID0gYmFyLnggKyBiYXIud2lkdGggLyAyO1xuICBjb25zdCBsYWJlbFlQYWRkaW5nQWRqdXN0bWVudCA9IGJhci52YWx1ZSA+PSAwID8gWV9QQURESU5HIDogLVlfUEFERElORztcbiAgY29uc3QgbGFiZWxZID0geVNjYWxlKGJhci52YWx1ZSkgLSBsYWJlbFlQYWRkaW5nQWRqdXN0bWVudDtcblxuICBjb25zdCBzaG93TWluTWF4ID0gc2hvd0RhdGFMYWJlbCh0b3RhbEl0ZW1zKTtcbiAgY29uc3QgaGFzU3BhY2VGb3JMYWJlbCA9IHNob3dMYWJlbHMgJiYgYmFyLndpZHRoID4gbWluV2lkdGggJiYgY29udGFpbmVySGVpZ2h0ID4gbWluQ29udGFpbmVySGVpZ2h0O1xuXG4gIGNvbnN0IGRpc3BsYXlWYWx1ZSA9IGdldEZvcm1hdHRlZFZhbHVlKGJhci52YWx1ZSwgbGFiZWxEaWN0aW9uYXJ5KTtcbiAgY29uc3QgYmFyUG9zaXRpb24gPSBjaGFydFdpZHRoID8gY2FsY3VsYXRlQmFyTGFiZWxQb3NpdGlvbihiYXIsIGJhckdyb3VwLCBjaGFydFdpZHRoLCBkaXNwbGF5VmFsdWUpIDogbGFiZWxYO1xuXG4gIHJldHVybiAoXG4gICAgPEZyYWdtZW50PlxuICAgICAge3Nob3dCYXIgJiYgKFxuICAgICAgICA8QmFyUmVjdFxuICAgICAgICAgIGJhclJlY3RLZXk9e2BiYXItZ3JvdXAtYmFyLSR7YmFyR3JvdXAuaW5kZXh9LSR7YmFyLmluZGV4fS0ke2Jhci52YWx1ZX0tJHtTdHJpbmcoYmFyLmtleSl9YH1cbiAgICAgICAgICB4PXtiYXIueH1cbiAgICAgICAgICB5PXtiYXJZfVxuICAgICAgICAgIHdpZHRoPXtiYXIud2lkdGh9XG4gICAgICAgICAgaGVpZ2h0PXtiYXJIZWlnaHR9XG4gICAgICAgICAgZmlsbD17Z2V0QmFyRmlsbChiYXJzLCBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcywgU3RyaW5nKGJhci5rZXkpLCBiYXIudmFsdWUpfVxuICAgICAgICAgIG9uQ2xpY2s9eyhlKSA9PiBvbkNsaWNrKGUsIGJhckdyb3VwLCBiYXIpfVxuICAgICAgICAgIGVuYWJsZUhvdmVyPXtlbmFibGVIb3Zlcn1cbiAgICAgICAgLz5cbiAgICAgICl9XG5cbiAgICAgIHtoYXNTcGFjZUZvckxhYmVsICYmIHNob3dNaW5NYXggJiYgYmFyUG9zaXRpb24gIT09IGZhbHNlICYmIChcbiAgICAgICAgPERhdGFMYWJlbFxuICAgICAgICAgIHg9e2xhYmVsWH1cbiAgICAgICAgICB5PXtsYWJlbFl9XG4gICAgICAgICAgdGl0bGU9e2Rpc3BsYXlWYWx1ZSAhPT0gMCA/IGRpc3BsYXlWYWx1ZSA6ICcwJ31cbiAgICAgICAgICBkeD17MH1cbiAgICAgICAgICBkeT17MH1cbiAgICAgICAgICBob3Jpem9udGFsQW5jaG9yPVwibWlkZGxlXCJcbiAgICAgICAgLz5cbiAgICAgICl9XG5cbiAgICAgIDxCYXJMYWJlbFxuICAgICAgICBiYXI9e2Jhcn1cbiAgICAgICAgYmFyR3JvdXA9e2Jhckdyb3VwfVxuICAgICAgICB5TGFiZWxQb3NpdGlvbj17eUxhYmVsUG9zaXRpb259XG4gICAgICAgIHlBeGlzTGFiZWxzPXt5QXhpc0xhYmVsc31cbiAgICAgICAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM9e3Nob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzfVxuICAgICAgICBsYWJlbFN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgLz5cbiAgICA8L0ZyYWdtZW50PlxuICApO1xufTtcblxudHlwZSBCYXJSZWN0UHJvcHMgPSB7XG4gIG9uQ2xpY2s6IChlOiBSZWFjdC5Nb3VzZUV2ZW50PFNWR1JlY3RFbGVtZW50LCBNb3VzZUV2ZW50PikgPT4gdm9pZDtcbiAgZmlsbD86IHN0cmluZztcbiAgeDogbnVtYmVyO1xuICB5OiBudW1iZXI7XG4gIHdpZHRoOiBudW1iZXI7XG4gIGhlaWdodDogbnVtYmVyO1xuICBiYXJSZWN0S2V5OiBzdHJpbmc7XG4gIGVuYWJsZUhvdmVyPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IEJhclJlY3QgPSAoeyBvbkNsaWNrLCBmaWxsLCB4LCB5LCB3aWR0aCwgaGVpZ2h0LCBiYXJSZWN0S2V5LCBlbmFibGVIb3ZlciB9OiBCYXJSZWN0UHJvcHMpID0+IHtcbiAgY29uc3QgW2lzSG92ZXJlZCwgc2V0SXNIb3ZlcmVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICBjb25zdCBjbGFzc2VzID0gZW5hYmxlSG92ZXIgPyBjc3MoeyBjdXJzb3I6ICdwb2ludGVyJyB9KSA6ICcnO1xuXG4gIGNvbnN0IGRpc3BsYXlDb2xvciA9IGlzSG92ZXJlZCAmJiBlbmFibGVIb3ZlciA/IGxpZ2h0ZW5Db2xvcihmaWxsLCAwLjgpIDogZmlsbDtcblxuICBjb25zdCBoYW5kbGVPbk1vdXNlRW50ZXIgPSAoKSA9PiB7XG4gICAgaWYgKGVuYWJsZUhvdmVyKSB7XG4gICAgICBzZXRJc0hvdmVyZWQodHJ1ZSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZU9uTW91c2VMZWF2ZSA9ICgpID0+IHtcbiAgICBpZiAoZW5hYmxlSG92ZXIpIHtcbiAgICAgIHNldElzSG92ZXJlZChmYWxzZSk7XG4gICAgfVxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPHJlY3RcbiAgICAgIGtleT17YmFyUmVjdEtleX1cbiAgICAgIHg9e3h9XG4gICAgICB5PXt5fVxuICAgICAgd2lkdGg9e3dpZHRofVxuICAgICAgaGVpZ2h0PXtoZWlnaHR9XG4gICAgICBmaWxsPXtkaXNwbGF5Q29sb3J9XG4gICAgICByeD17QkFSX1JBRElVU31cbiAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICBvbk1vdXNlRW50ZXI9e2hhbmRsZU9uTW91c2VFbnRlcn1cbiAgICAgIG9uTW91c2VMZWF2ZT17aGFuZGxlT25Nb3VzZUxlYXZlfVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzfVxuICAgIC8+XG4gICk7XG59O1xuXG50eXBlIEJhckxhYmVsUHJvcHMgPSB7XG4gIGJhcjogYW55O1xuICBiYXJHcm91cDogYW55O1xuICB5TGFiZWxQb3NpdGlvbj86IG51bWJlcjtcbiAgeUF4aXNMYWJlbHM/OiBzdHJpbmdbXTtcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM6IGJvb2xlYW47XG4gIGxhYmVsU3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xufTtcblxuY29uc3QgQmFyTGFiZWwgPSAoe1xuICBiYXIsXG4gIGJhckdyb3VwLFxuICB5TGFiZWxQb3NpdGlvbixcbiAgeUF4aXNMYWJlbHMsXG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzLFxuICBsYWJlbFN0eWxlLFxufTogQmFyTGFiZWxQcm9wcykgPT4ge1xuICBpZiAoIXNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzIHx8ICF5TGFiZWxQb3NpdGlvbiB8fCAheUF4aXNMYWJlbHMpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGxhYmVsID0geUF4aXNMYWJlbHNbYmFyLmluZGV4XTtcbiAgY29uc3QgY29sdW1uTGFiZWwgPSBsYWJlbC5zcGxpdCgn4oCiJylbMF07XG5cbiAgbGV0IGZvcm1hdHRlZENvbHVtbkxhYmVsOiBzdHJpbmc7XG4gIGlmIChjb2x1bW5MYWJlbC5sZW5ndGggPj0gMTMpIHtcbiAgICBmb3JtYXR0ZWRDb2x1bW5MYWJlbCA9IGNvbHVtbkxhYmVsLnNsaWNlKDAsIDEwKSArICcuLi4nO1xuICB9IGVsc2Uge1xuICAgIGZvcm1hdHRlZENvbHVtbkxhYmVsID0gY29sdW1uTGFiZWwuc2xpY2UoMCwgMTMpO1xuICB9XG5cbiAgY29uc3QgbGFiZWxYR2FwID0gNDtcbiAgY29uc3QgbGFiZWxYUG9zaXRpb24gPSBiYXIueCArIGJhci53aWR0aCAvIDIgKyBsYWJlbFhHYXA7XG5cbiAgY29uc3QgbGFiZWxZR2FwID0gMTU7XG4gIGNvbnN0IGxhYmVsWVBvc2l0aW9uID0geUxhYmVsUG9zaXRpb24gKyBsYWJlbFlHYXA7XG5cbiAgY29uc3QgbGFiZWxLZXkgPSBgbGFiZWwtJHtiYXJHcm91cC5pbmRleH0tJHtiYXIuaW5kZXh9LSR7bGFiZWx9YDtcblxuICByZXR1cm4gKFxuICAgIDx0ZXh0XG4gICAgICBrZXk9e2xhYmVsS2V5fVxuICAgICAgeD17bGFiZWxYUG9zaXRpb259XG4gICAgICB5PXtsYWJlbFlQb3NpdGlvbn1cbiAgICAgIHN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgdHJhbnNmb3JtPXtgcm90YXRlKC03MCwgJHtsYWJlbFhQb3NpdGlvbn0sICR7bGFiZWxZUG9zaXRpb259KWB9XG4gICAgICB0ZXh0QW5jaG9yPVwiZW5kXCJcbiAgICA+XG4gICAgICB7Zm9ybWF0dGVkQ29sdW1uTGFiZWx9XG4gICAgPC90ZXh0PlxuICApO1xufTtcbiJdfQ== */",
46043
46332
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$9
46044
46333
  }) : '';
46045
46334
  var displayColor = isHovered && enableHover ? lightenColor$2(fill, 0.8) : fill;
@@ -46110,7 +46399,8 @@ var BarStacked = function BarStacked(_ref) {
46110
46399
  width = _ref.width,
46111
46400
  showLabels = _ref.showLabels,
46112
46401
  labelDictionary = _ref.labelDictionary,
46113
- isStacked100 = _ref.isStacked100;
46402
+ _ref$isStacked = _ref.isStacked100,
46403
+ isStacked100 = _ref$isStacked === void 0 ? false : _ref$isStacked;
46114
46404
  var handleGetXValue = function handleGetXValue(d) {
46115
46405
  var xValue = d[xScaleKey];
46116
46406
  if (xScaleDataType === 'string') return String(xValue);
@@ -46137,7 +46427,7 @@ var BarStacked = function BarStacked(_ref) {
46137
46427
  },
46138
46428
  height: height,
46139
46429
  width: width,
46140
- offset: isStacked100 ? 'expand' : 'none',
46430
+ offset: "diverging",
46141
46431
  children: function children(barStacks) {
46142
46432
  return barStacks.map(function (barStack) {
46143
46433
  return barStack.bars.map(function (bar) {
@@ -46148,7 +46438,8 @@ var BarStacked = function BarStacked(_ref) {
46148
46438
  conditionalFormattingRules: conditionalFormattingRules,
46149
46439
  totalItems: totalItems,
46150
46440
  showLabels: showLabels,
46151
- labelDictionary: labelDictionary
46441
+ labelDictionary: labelDictionary,
46442
+ isStacked100: isStacked100
46152
46443
  }, bar.key.toString() + "-" + bar.index + "-" + bar.x);
46153
46444
  });
46154
46445
  });
@@ -46162,13 +46453,15 @@ var Bar$1 = function Bar(_ref2) {
46162
46453
  conditionalFormattingRules = _ref2.conditionalFormattingRules,
46163
46454
  totalItems = _ref2.totalItems,
46164
46455
  showLabels = _ref2.showLabels,
46165
- labelDictionary = _ref2.labelDictionary;
46456
+ labelDictionary = _ref2.labelDictionary,
46457
+ _ref2$isStacked = _ref2.isStacked100,
46458
+ isStacked100 = _ref2$isStacked === void 0 ? false : _ref2$isStacked;
46166
46459
  var BAR_PADDING = 1.5;
46167
- var X_PADDING = 20;
46168
- var minWidth = 40;
46460
+ var minWidthMultiplier = isStacked100 ? 1.75 : 1;
46461
+ var minWidth = 40 * minWidthMultiplier;
46169
46462
  var minHeight = 15;
46170
- var labelX = bar.x + bar.width / 2 + X_PADDING;
46171
- var labelY = bar.y + bar.height / 3;
46463
+ var labelX = bar.x + bar.width / 2;
46464
+ var labelY = bar.y + bar.height / 2;
46172
46465
  var showMinMax = showDataLabel(totalItems);
46173
46466
  var hasSpaceForLabel = showLabels && bar.width > minWidth && bar.height > minHeight;
46174
46467
  var displayValue = getFormattedValue(bar.bar.data[barStack.key], labelDictionary);
@@ -46189,7 +46482,8 @@ var Bar$1 = function Bar(_ref2) {
46189
46482
  color: textColor,
46190
46483
  title: displayValue,
46191
46484
  dx: 0,
46192
- dy: 0
46485
+ dy: 0,
46486
+ horizontalAnchor: "middle"
46193
46487
  })]
46194
46488
  });
46195
46489
  };
@@ -46308,9 +46602,10 @@ var BarChart$5 = function BarChart(_ref) {
46308
46602
  var defaultYScale = useYScale(innerHeight, chart.y.scale);
46309
46603
  var yScale = React.useMemo(function () {
46310
46604
  if (isStacked100) {
46605
+ var domain = getStackedPercentageScaleLinearDomain(processedData, chart.y.keys, xKey);
46311
46606
  return scale.scaleLinear({
46312
46607
  range: [innerHeight, 0],
46313
- domain: [0, 1],
46608
+ domain: domain,
46314
46609
  nice: true,
46315
46610
  round: true
46316
46611
  });
@@ -46319,7 +46614,7 @@ var BarChart$5 = function BarChart(_ref) {
46319
46614
  }, [innerHeight, defaultYScale, options.stacked]);
46320
46615
  var yTickValues = React.useMemo(function () {
46321
46616
  if (isStacked100) {
46322
- return [0, 0.2, 0.4, 0.6, 0.8, 1];
46617
+ return getStackedPercentageTickValues(processedData, chart.y.keys, xKey);
46323
46618
  }
46324
46619
  return chart.y.ticks.map(function (tick) {
46325
46620
  return Number(tick.value);
@@ -46327,32 +46622,9 @@ var BarChart$5 = function BarChart(_ref) {
46327
46622
  }, [isStacked100, chart.y.ticks]);
46328
46623
  var yAxisConfig = React.useMemo(function () {
46329
46624
  if (isStacked100) {
46625
+ var ticks = getStackedPercentageAxisTicks(processedData, chart.y.keys, xKey);
46330
46626
  return _extends({}, chart.y, {
46331
- ticks: [{
46332
- value: 0,
46333
- formattedValue: '0',
46334
- scaleValue: 0
46335
- }, {
46336
- value: 0.2,
46337
- formattedValue: '20',
46338
- scaleValue: 0.2
46339
- }, {
46340
- value: 0.4,
46341
- formattedValue: '40',
46342
- scaleValue: 0.4
46343
- }, {
46344
- value: 0.6,
46345
- formattedValue: '60',
46346
- scaleValue: 0.6
46347
- }, {
46348
- value: 0.8,
46349
- formattedValue: '80',
46350
- scaleValue: 0.8
46351
- }, {
46352
- value: 1,
46353
- formattedValue: '100',
46354
- scaleValue: 1
46355
- }]
46627
+ ticks: ticks
46356
46628
  });
46357
46629
  }
46358
46630
  return chart.y;
@@ -46433,6 +46705,7 @@ var BarChart$5 = function BarChart(_ref) {
46433
46705
  var formattedLabelsDict = React.useMemo(function () {
46434
46706
  return getLabelDictionary(processedData, yScaleKeys);
46435
46707
  }, [processedData, yScaleKeys]);
46708
+ var showZeroLine = chart.y.scale.min && chart.y.scale.min < 0 && chart.y.scale.max && chart.y.scale.max > 0;
46436
46709
  return jsxRuntime.jsxs(React.Fragment, {
46437
46710
  children: [jsxRuntime.jsxs(ChartWrapper$1, {
46438
46711
  width: width,
@@ -46505,6 +46778,11 @@ var BarChart$5 = function BarChart(_ref) {
46505
46778
  labelDictionary: formattedLabelsDict,
46506
46779
  isStacked100: isStacked100
46507
46780
  })]
46781
+ }), showZeroLine && jsxRuntime.jsx("g", {
46782
+ children: jsxRuntime.jsx(ZeroHorizontalLine, {
46783
+ yScale: yScale,
46784
+ chartWidth: innerWidth
46785
+ })
46508
46786
  })]
46509
46787
  }), tooltipData && jsxRuntime.jsx("g", {
46510
46788
  children: jsxRuntime.jsx(Line, {
@@ -46917,6 +47195,7 @@ function HorizontalBarGroup(_ref) {
46917
47195
  totalItems: totalItems,
46918
47196
  showLabels: showLabels,
46919
47197
  labelDictionary: labelDictionary,
47198
+ xScale: xScale,
46920
47199
  containerWidth: width
46921
47200
  }, "horizontal-bar-" + bar.index + "-" + bar.y);
46922
47201
  })
@@ -46939,22 +47218,27 @@ var HorizontalBar = function HorizontalBar(_ref2) {
46939
47218
  totalItems = _ref2.totalItems,
46940
47219
  showLabels = _ref2.showLabels,
46941
47220
  labelDictionary = _ref2.labelDictionary,
47221
+ xScale = _ref2.xScale,
46942
47222
  containerWidth = _ref2.containerWidth;
46943
47223
  var X_PADDING = -5;
46944
47224
  var minHeight = 15;
46945
47225
  var minContainerWidth = 50;
47226
+ var barX = bar.value >= 0 ? xScale(0) : xScale(bar.value);
47227
+ var barWidth = Math.abs(xScale(bar.value) - xScale(0));
46946
47228
  var showBar = bar.value !== null && bar.height > 0 && bar.width > 0;
46947
- var labelX = bar.x + bar.width + X_PADDING;
47229
+ var labelXPaddingAdjustment = bar.value >= 0 ? X_PADDING : 0;
47230
+ var labelX = xScale(bar.value) + labelXPaddingAdjustment;
46948
47231
  var labelY = bar.y + bar.height / 2;
47232
+ var labelHorizontalAnchor = bar.value < 0 ? 'end' : undefined;
46949
47233
  var showMinMax = showDataLabel(totalItems);
46950
47234
  var hasSpaceForLabel = showLabels && bar.height > minHeight && containerWidth > minContainerWidth;
46951
47235
  var displayValue = getFormattedValue(bar.value, labelDictionary);
46952
47236
  return jsxRuntime.jsxs(React.Fragment, {
46953
47237
  children: [showBar && jsxRuntime.jsx(HorizontalBarRect, {
46954
47238
  barRectKey: "horizontal-bar-group-bar-" + barGroup.index + "-" + bar.index + "-" + bar.value + "-" + String(bar.key),
46955
- x: bar.x,
47239
+ x: barX,
46956
47240
  y: bar.y,
46957
- width: bar.width,
47241
+ width: barWidth,
46958
47242
  height: bar.height,
46959
47243
  fill: getBarFill(bars, conditionalFormattingRules, String(bar.key), bar.value),
46960
47244
  onClick: function onClick(e) {
@@ -46964,9 +47248,10 @@ var HorizontalBar = function HorizontalBar(_ref2) {
46964
47248
  }), hasSpaceForLabel && showMinMax && jsxRuntime.jsx(DataLabel, {
46965
47249
  x: labelX,
46966
47250
  y: labelY,
46967
- title: displayValue,
47251
+ title: displayValue !== 0 ? displayValue : '0',
46968
47252
  dx: 1,
46969
- dy: 0
47253
+ dy: 0,
47254
+ horizontalAnchor: labelHorizontalAnchor
46970
47255
  }), jsxRuntime.jsx(HorizontalBarLabel, {
46971
47256
  bar: bar,
46972
47257
  barGroup: barGroup,
@@ -46992,7 +47277,7 @@ var HorizontalBarRect = function HorizontalBarRect(_ref3) {
46992
47277
  var classes = enableHover ? /*#__PURE__*/css$1.css( {
46993
47278
  name: "1ltmijl-classes",
46994
47279
  styles: "cursor:pointer;label:classes;",
46995
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkhvcml6b250YWxCYXJHcm91cC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ05nQyIsImZpbGUiOiJIb3Jpem9udGFsQmFyR3JvdXAudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY3NzJztcbmltcG9ydCB7IEdyb3VwIH0gZnJvbSAnQHZpc3gvZ3JvdXAnO1xuaW1wb3J0IHsgQmFyR3JvdXBIb3Jpem9udGFsIGFzIFZpc3hCYXJHcm91cEhvcml6b250YWwgfSBmcm9tICdAdmlzeC9zaGFwZSc7XG5pbXBvcnQgeyBEYXR1bU9iamVjdCB9IGZyb20gJ0B2aXN4L3NoYXBlL2xpYi90eXBlcyc7XG5pbXBvcnQgeyBTY2FsZUJhbmQsIFNjYWxlTGluZWFyIH0gZnJvbSAnQHZpc3gvdmVuZG9yL2QzLXNjYWxlJztcbmltcG9ydCB7IEZyYWdtZW50LCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEJhclN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQmFyQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBDaGFydERhdGFEZWZpbml0aW9uLCBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlLCBTaGFwZURlZmluaXRpb24gfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0NoYXJ0c1YyL3R5cGVzJztcbmltcG9ydCB7IGdldEFsbENoYXJ0VmFsdWVzLCBnZXRGb3JtYXR0ZWRWYWx1ZSwgc2hvd0RhdGFMYWJlbCB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvRGF0YUxhYmVsL2luZGV4JztcbmltcG9ydCB7IERhdGFUeXBlIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9GaWVsZC90eXBlcyc7XG5pbXBvcnQgeyBsaWdodGVuQ29sb3IgfSBmcm9tICcuLi8uLi8uLi9zdHlsZXMvY29sb3IuZnVuY3Rpb25zJztcbmltcG9ydCB7IERhdGFMYWJlbCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvRGF0YUxhYmVsJztcbmltcG9ydCB7IEJBUl9SQURJVVMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvQk9SREVSX1JBRElVUyc7XG5pbXBvcnQgeyBnZXRCYXJGaWxsIH0gZnJvbSAnLi4vZ2V0QmFyRmlsbCc7XG5cbmV4cG9ydCB0eXBlIEhvcml6b250YWxCYXJHcm91cFByb3BzID0ge1xuICBkYXRhOiBDaGFydERhdGFEZWZpbml0aW9uW107XG4gIGtleXM6IHN0cmluZ1tdO1xuICB3aWR0aDogbnVtYmVyO1xuICB5S2V5OiBzdHJpbmc7XG4gIHlTY2FsZURhdGFUeXBlOiBEYXRhVHlwZTtcbiAgeVNjYWxlOiBTY2FsZUJhbmQ8c3RyaW5nPiB8IFNjYWxlQmFuZDxEYXRlPiB8IFNjYWxlQmFuZDxudW1iZXI+O1xuICBpbm5lcllTY2FsZTogU2NhbGVCYW5kPHN0cmluZz47XG4gIHhTY2FsZTogU2NhbGVMaW5lYXI8bnVtYmVyLCBudW1iZXIsIG5ldmVyPjtcbiAgb25DbGljazogKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8U1ZHUmVjdEVsZW1lbnQsIE1vdXNlRXZlbnQ+LCBiYXJHcm91cDogYW55LCBiYXI6IGFueSkgPT4gdm9pZDtcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM6IENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVbXTtcbiAgYmFyczogU2hhcGVEZWZpbml0aW9uPEJhclN0eWxlcz5bXTtcbiAgZW5hYmxlSG92ZXI/OiBib29sZWFuO1xuICB4QXhpc0xhYmVscz86IHN0cmluZ1tdO1xuICB4TGFiZWxQb3NpdGlvbj86IG51bWJlcjtcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM6IGJvb2xlYW47XG4gIGxhYmVsU3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xuICBzaG93TGFiZWxzOiBib29sZWFuO1xuICBsYWJlbERpY3Rpb25hcnk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gSG9yaXpvbnRhbEJhckdyb3VwKHtcbiAgZGF0YSxcbiAga2V5cyxcbiAgd2lkdGgsXG4gIHlLZXksXG4gIHlTY2FsZURhdGFUeXBlLFxuICB5U2NhbGUsXG4gIGlubmVyWVNjYWxlLFxuICB4U2NhbGUsXG4gIG9uQ2xpY2ssXG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLFxuICBiYXJzLFxuICBlbmFibGVIb3ZlcixcbiAgeEF4aXNMYWJlbHMsXG4gIHhMYWJlbFBvc2l0aW9uLFxuICBzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVscyxcbiAgbGFiZWxTdHlsZSxcbiAgc2hvd0xhYmVscyxcbiAgbGFiZWxEaWN0aW9uYXJ5LFxufTogSG9yaXpvbnRhbEJhckdyb3VwUHJvcHMpIHtcbiAgY29uc3QgZ2V0R3JvdXBQb3NpdGlvbiA9IChkOiBEYXR1bU9iamVjdCkgPT4ge1xuICAgIGNvbnN0IHlWYWx1ZSA9IGRbeUtleSBhcyBrZXlvZiB0eXBlb2YgZF07XG5cbiAgICBpZiAoeVNjYWxlRGF0YVR5cGUgPT09ICdzdHJpbmcnKSByZXR1cm4gU3RyaW5nKHlWYWx1ZSk7XG5cbiAgICBpZiAoeVNjYWxlRGF0YVR5cGUgPT09ICdkYXRlX3RpbWUnKSB7XG4gICAgICByZXR1cm4gbmV3IERhdGUoU3RyaW5nKHlWYWx1ZSkpO1xuICAgIH1cblxuICAgIGlmICh5U2NhbGVEYXRhVHlwZSA9PT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiBOdW1iZXIoeVZhbHVlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gU3RyaW5nKHlWYWx1ZSk7XG4gIH07XG5cbiAgY29uc3QgdG90YWxJdGVtcyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGFsbEJhclZhbHVlcyA9IGdldEFsbENoYXJ0VmFsdWVzKGRhdGEsIGtleXMpO1xuICAgIHJldHVybiBhbGxCYXJWYWx1ZXMubGVuZ3RoO1xuICB9LCBbZGF0YSwga2V5c10pO1xuXG4gIHJldHVybiAoXG4gICAgPFZpc3hCYXJHcm91cEhvcml6b250YWw8RGF0dW1PYmplY3Q+XG4gICAgICBkYXRhPXtkYXRhIGFzIERhdHVtT2JqZWN0W119XG4gICAgICBrZXlzPXtrZXlzfVxuICAgICAgd2lkdGg9e3dpZHRofVxuICAgICAgeTA9e2dldEdyb3VwUG9zaXRpb259XG4gICAgICB5MFNjYWxlPXt5U2NhbGV9XG4gICAgICB5MVNjYWxlPXtpbm5lcllTY2FsZX1cbiAgICAgIHhTY2FsZT17eFNjYWxlfVxuICAgICAgY29sb3I9eygpID0+ICcnfVxuICAgID5cbiAgICAgIHsoYmFyR3JvdXBzKSA9PiB7XG4gICAgICAgIHJldHVybiBiYXJHcm91cHMubWFwKChiYXJHcm91cCkgPT4gKFxuICAgICAgICAgIDxHcm91cCBrZXk9e2Bob3Jpem9udGFsLWJhci1ncm91cC0ke2Jhckdyb3VwLmluZGV4fS0ke2Jhckdyb3VwLnkwfWB9IHRvcD17YmFyR3JvdXAueTB9PlxuICAgICAgICAgICAge2Jhckdyb3VwLmJhcnMubWFwKChiYXIpID0+IChcbiAgICAgICAgICAgICAgPEhvcml6b250YWxCYXJcbiAgICAgICAgICAgICAgICBrZXk9e2Bob3Jpem9udGFsLWJhci0ke2Jhci5pbmRleH0tJHtiYXIueX1gfVxuICAgICAgICAgICAgICAgIGJhcj17YmFyfVxuICAgICAgICAgICAgICAgIGJhckdyb3VwPXtiYXJHcm91cH1cbiAgICAgICAgICAgICAgICBiYXJzPXtiYXJzfVxuICAgICAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzPXtjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlc31cbiAgICAgICAgICAgICAgICBlbmFibGVIb3Zlcj17ZW5hYmxlSG92ZXJ9XG4gICAgICAgICAgICAgICAgbGFiZWxTdHlsZT17bGFiZWxTdHlsZX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgICAgICAgICAgIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzPXtzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVsc31cbiAgICAgICAgICAgICAgICB4QXhpc0xhYmVscz17eEF4aXNMYWJlbHN9XG4gICAgICAgICAgICAgICAgeExhYmVsUG9zaXRpb249e3hMYWJlbFBvc2l0aW9ufVxuICAgICAgICAgICAgICAgIHRvdGFsSXRlbXM9e3RvdGFsSXRlbXN9XG4gICAgICAgICAgICAgICAgc2hvd0xhYmVscz17c2hvd0xhYmVsc31cbiAgICAgICAgICAgICAgICBsYWJlbERpY3Rpb25hcnk9e2xhYmVsRGljdGlvbmFyeX1cbiAgICAgICAgICAgICAgICBjb250YWluZXJXaWR0aD17d2lkdGh9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApKX1cbiAgICAgICAgICA8L0dyb3VwPlxuICAgICAgICApKTtcbiAgICAgIH19XG4gICAgPC9WaXN4QmFyR3JvdXBIb3Jpem9udGFsPlxuICApO1xufVxuXG50eXBlIEhvcml6b250YWxCYXJQcm9wcyA9IHtcbiAgYmFyOiBhbnk7XG4gIGJhckdyb3VwOiBhbnk7XG4gIGJhcnM6IFNoYXBlRGVmaW5pdGlvbjxCYXJTdHlsZXM+W107XG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlW107XG4gIGVuYWJsZUhvdmVyPzogYm9vbGVhbjtcbiAgb25DbGljazogKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8U1ZHUmVjdEVsZW1lbnQsIE1vdXNlRXZlbnQ+LCBiYXJHcm91cDogYW55LCBiYXI6IGFueSkgPT4gdm9pZDtcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM6IGJvb2xlYW47XG4gIGxhYmVsU3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xuICB4QXhpc0xhYmVscz86IHN0cmluZ1tdO1xuICB4TGFiZWxQb3NpdGlvbj86IG51bWJlcjtcbiAgdG90YWxJdGVtczogbnVtYmVyO1xuICBzaG93TGFiZWxzOiBib29sZWFuO1xuICBsYWJlbERpY3Rpb25hcnk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG4gIGNvbnRhaW5lcldpZHRoOiBudW1iZXI7XG59O1xuXG5jb25zdCBIb3Jpem9udGFsQmFyID0gKHtcbiAgYmFyLFxuICBiYXJHcm91cCxcbiAgYmFycyxcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXMsXG4gIGVuYWJsZUhvdmVyLFxuICBsYWJlbFN0eWxlLFxuICBvbkNsaWNrLFxuICBzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVscyxcbiAgeEF4aXNMYWJlbHMsXG4gIHhMYWJlbFBvc2l0aW9uLFxuICB0b3RhbEl0ZW1zLFxuICBzaG93TGFiZWxzLFxuICBsYWJlbERpY3Rpb25hcnksXG4gIGNvbnRhaW5lcldpZHRoLFxufTogSG9yaXpvbnRhbEJhclByb3BzKSA9PiB7XG4gIGNvbnN0IFhfUEFERElORyA9IC01O1xuXG4gIGNvbnN0IG1pbkhlaWdodCA9IDE1O1xuICBjb25zdCBtaW5Db250YWluZXJXaWR0aCA9IDUwO1xuXG4gIGNvbnN0IHNob3dCYXIgPSBiYXIudmFsdWUgIT09IG51bGwgJiYgYmFyLmhlaWdodCA+IDAgJiYgYmFyLndpZHRoID4gMDtcblxuICBjb25zdCBsYWJlbFggPSBiYXIueCArIGJhci53aWR0aCArIFhfUEFERElORztcbiAgY29uc3QgbGFiZWxZID0gYmFyLnkgKyBiYXIuaGVpZ2h0IC8gMjtcblxuICBjb25zdCBzaG93TWluTWF4ID0gc2hvd0RhdGFMYWJlbCh0b3RhbEl0ZW1zKTtcbiAgY29uc3QgaGFzU3BhY2VGb3JMYWJlbCA9IHNob3dMYWJlbHMgJiYgYmFyLmhlaWdodCA+IG1pbkhlaWdodCAmJiBjb250YWluZXJXaWR0aCA+IG1pbkNvbnRhaW5lcldpZHRoO1xuXG4gIGNvbnN0IGRpc3BsYXlWYWx1ZSA9IGdldEZvcm1hdHRlZFZhbHVlKGJhci52YWx1ZSwgbGFiZWxEaWN0aW9uYXJ5KTtcblxuICByZXR1cm4gKFxuICAgIDxGcmFnbWVudD5cbiAgICAgIHtzaG93QmFyICYmIChcbiAgICAgICAgPEhvcml6b250YWxCYXJSZWN0XG4gICAgICAgICAgYmFyUmVjdEtleT17YGhvcml6b250YWwtYmFyLWdyb3VwLWJhci0ke2Jhckdyb3VwLmluZGV4fS0ke2Jhci5pbmRleH0tJHtiYXIudmFsdWV9LSR7U3RyaW5nKGJhci5rZXkpfWB9XG4gICAgICAgICAgeD17YmFyLnh9XG4gICAgICAgICAgeT17YmFyLnl9XG4gICAgICAgICAgd2lkdGg9e2Jhci53aWR0aH1cbiAgICAgICAgICBoZWlnaHQ9e2Jhci5oZWlnaHR9XG4gICAgICAgICAgZmlsbD17Z2V0QmFyRmlsbChiYXJzLCBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcywgU3RyaW5nKGJhci5rZXkpLCBiYXIudmFsdWUpfVxuICAgICAgICAgIG9uQ2xpY2s9eyhlKSA9PiBvbkNsaWNrKGUsIGJhckdyb3VwLCBiYXIpfVxuICAgICAgICAgIGVuYWJsZUhvdmVyPXtlbmFibGVIb3Zlcn1cbiAgICAgICAgLz5cbiAgICAgICl9XG5cbiAgICAgIHtoYXNTcGFjZUZvckxhYmVsICYmIHNob3dNaW5NYXggJiYgPERhdGFMYWJlbCB4PXtsYWJlbFh9IHk9e2xhYmVsWX0gdGl0bGU9e2Rpc3BsYXlWYWx1ZX0gZHg9ezF9IGR5PXswfSAvPn1cblxuICAgICAgPEhvcml6b250YWxCYXJMYWJlbFxuICAgICAgICBiYXI9e2Jhcn1cbiAgICAgICAgYmFyR3JvdXA9e2Jhckdyb3VwfVxuICAgICAgICB4TGFiZWxQb3NpdGlvbj17eExhYmVsUG9zaXRpb259XG4gICAgICAgIHhBeGlzTGFiZWxzPXt4QXhpc0xhYmVsc31cbiAgICAgICAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM9e3Nob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzfVxuICAgICAgICBsYWJlbFN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgLz5cbiAgICA8L0ZyYWdtZW50PlxuICApO1xufTtcblxudHlwZSBIb3Jpem9udGFsQmFyUmVjdFByb3BzID0ge1xuICBvbkNsaWNrOiAoZTogUmVhY3QuTW91c2VFdmVudDxTVkdSZWN0RWxlbWVudCwgTW91c2VFdmVudD4pID0+IHZvaWQ7XG4gIGZpbGw/OiBzdHJpbmc7XG4gIHg6IG51bWJlcjtcbiAgeTogbnVtYmVyO1xuICB3aWR0aDogbnVtYmVyO1xuICBoZWlnaHQ6IG51bWJlcjtcbiAgYmFyUmVjdEtleTogc3RyaW5nO1xuICBlbmFibGVIb3Zlcj86IGJvb2xlYW47XG59O1xuXG5jb25zdCBIb3Jpem9udGFsQmFyUmVjdCA9ICh7IG9uQ2xpY2ssIGZpbGwsIHgsIHksIHdpZHRoLCBoZWlnaHQsIGJhclJlY3RLZXksIGVuYWJsZUhvdmVyIH06IEhvcml6b250YWxCYXJSZWN0UHJvcHMpID0+IHtcbiAgY29uc3QgW2lzSG92ZXJlZCwgc2V0SXNIb3ZlcmVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICBjb25zdCBjbGFzc2VzID0gZW5hYmxlSG92ZXIgPyBjc3MoeyBjdXJzb3I6ICdwb2ludGVyJyB9KSA6ICcnO1xuXG4gIGNvbnN0IGRpc3BsYXlDb2xvciA9IGlzSG92ZXJlZCAmJiBlbmFibGVIb3ZlciA/IGxpZ2h0ZW5Db2xvcihmaWxsLCAwLjgpIDogZmlsbDtcblxuICBjb25zdCBoYW5kbGVPbk1vdXNlRW50ZXIgPSAoKSA9PiB7XG4gICAgaWYgKGVuYWJsZUhvdmVyKSB7XG4gICAgICBzZXRJc0hvdmVyZWQodHJ1ZSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZU9uTW91c2VMZWF2ZSA9ICgpID0+IHtcbiAgICBpZiAoZW5hYmxlSG92ZXIpIHtcbiAgICAgIHNldElzSG92ZXJlZChmYWxzZSk7XG4gICAgfVxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPHJlY3RcbiAgICAgIGtleT17YmFyUmVjdEtleX1cbiAgICAgIHg9e3h9XG4gICAgICB5PXt5fVxuICAgICAgd2lkdGg9e3dpZHRofVxuICAgICAgaGVpZ2h0PXtoZWlnaHR9XG4gICAgICBmaWxsPXtkaXNwbGF5Q29sb3J9XG4gICAgICByeD17QkFSX1JBRElVU31cbiAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICBvbk1vdXNlRW50ZXI9e2hhbmRsZU9uTW91c2VFbnRlcn1cbiAgICAgIG9uTW91c2VMZWF2ZT17aGFuZGxlT25Nb3VzZUxlYXZlfVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzfVxuICAgIC8+XG4gICk7XG59O1xuXG50eXBlIEhvcml6b250YWxCYXJMYWJlbFByb3BzID0ge1xuICBiYXI6IGFueTtcbiAgYmFyR3JvdXA6IGFueTtcbiAgeExhYmVsUG9zaXRpb24/OiBudW1iZXI7XG4gIHhBeGlzTGFiZWxzPzogc3RyaW5nW107XG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzOiBib29sZWFuO1xuICBsYWJlbFN0eWxlPzogUmVhY3QuQ1NTUHJvcGVydGllcztcbn07XG5cbmNvbnN0IEhvcml6b250YWxCYXJMYWJlbCA9ICh7XG4gIGJhcixcbiAgYmFyR3JvdXAsXG4gIHhMYWJlbFBvc2l0aW9uLFxuICB4QXhpc0xhYmVscyxcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHMsXG4gIGxhYmVsU3R5bGUsXG59OiBIb3Jpem9udGFsQmFyTGFiZWxQcm9wcykgPT4ge1xuICBpZiAoIXNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzIHx8ICF4TGFiZWxQb3NpdGlvbiB8fCAheEF4aXNMYWJlbHMpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGxhYmVsID0geEF4aXNMYWJlbHNbYmFyLmluZGV4XTtcbiAgY29uc3QgY29sdW1uTGFiZWwgPSBsYWJlbC5zcGxpdCgn4oCiJylbMF07XG5cbiAgbGV0IGZvcm1hdHRlZENvbHVtbkxhYmVsOiBzdHJpbmc7XG4gIGlmIChjb2x1bW5MYWJlbC5sZW5ndGggPj0gMTMpIHtcbiAgICBmb3JtYXR0ZWRDb2x1bW5MYWJlbCA9IGNvbHVtbkxhYmVsLnNsaWNlKDAsIDEwKSArICcuLi4nO1xuICB9IGVsc2Uge1xuICAgIGZvcm1hdHRlZENvbHVtbkxhYmVsID0gY29sdW1uTGFiZWwuc2xpY2UoMCwgMTMpO1xuICB9XG5cbiAgY29uc3QgbGFiZWxZR2FwID0gNDtcbiAgY29uc3QgbGFiZWxZUG9zaXRpb24gPSBiYXIueSArIGJhci5oZWlnaHQgLyAyICsgbGFiZWxZR2FwO1xuXG4gIGNvbnN0IGxhYmVsWEdhcCA9IDE1O1xuICBjb25zdCBsYWJlbFhQb3NpdGlvbiA9IHhMYWJlbFBvc2l0aW9uICsgbGFiZWxYR2FwO1xuXG4gIGNvbnN0IGxhYmVsS2V5ID0gYGhvcml6b250YWwtbGFiZWwtJHtiYXJHcm91cC5pbmRleH0tJHtiYXIuaW5kZXh9LSR7bGFiZWx9YDtcblxuICByZXR1cm4gKFxuICAgIDx0ZXh0XG4gICAgICBrZXk9e2xhYmVsS2V5fVxuICAgICAgeD17bGFiZWxYUG9zaXRpb259XG4gICAgICB5PXtsYWJlbFlQb3NpdGlvbn1cbiAgICAgIHN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgdGV4dEFuY2hvcj1cIm1pZGRsZVwiXG4gICAgICB0cmFuc2Zvcm09e2Byb3RhdGUoLTcwLCAke2xhYmVsWFBvc2l0aW9ufSwgJHtsYWJlbFlQb3NpdGlvbn0pYH1cbiAgICA+XG4gICAgICB7Zm9ybWF0dGVkQ29sdW1uTGFiZWx9XG4gICAgPC90ZXh0PlxuICApO1xufTtcbiJdfQ== */",
47280
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkhvcml6b250YWxCYXJHcm91cC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBaU9nQyIsImZpbGUiOiJIb3Jpem9udGFsQmFyR3JvdXAudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY3NzJztcbmltcG9ydCB7IEdyb3VwIH0gZnJvbSAnQHZpc3gvZ3JvdXAnO1xuaW1wb3J0IHsgQmFyR3JvdXBIb3Jpem9udGFsIGFzIFZpc3hCYXJHcm91cEhvcml6b250YWwgfSBmcm9tICdAdmlzeC9zaGFwZSc7XG5pbXBvcnQgeyBEYXR1bU9iamVjdCB9IGZyb20gJ0B2aXN4L3NoYXBlL2xpYi90eXBlcyc7XG5pbXBvcnQgeyBTY2FsZUJhbmQsIFNjYWxlTGluZWFyIH0gZnJvbSAnQHZpc3gvdmVuZG9yL2QzLXNjYWxlJztcbmltcG9ydCB7IEZyYWdtZW50LCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEJhclN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQmFyQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBDaGFydERhdGFEZWZpbml0aW9uLCBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlLCBTaGFwZURlZmluaXRpb24gfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0NoYXJ0c1YyL3R5cGVzJztcbmltcG9ydCB7IGdldEFsbENoYXJ0VmFsdWVzLCBnZXRGb3JtYXR0ZWRWYWx1ZSwgc2hvd0RhdGFMYWJlbCB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvRGF0YUxhYmVsL2luZGV4JztcbmltcG9ydCB7IERhdGFUeXBlIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9GaWVsZC90eXBlcyc7XG5pbXBvcnQgeyBsaWdodGVuQ29sb3IgfSBmcm9tICcuLi8uLi8uLi9zdHlsZXMvY29sb3IuZnVuY3Rpb25zJztcbmltcG9ydCB7IERhdGFMYWJlbCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvRGF0YUxhYmVsJztcbmltcG9ydCB7IEJBUl9SQURJVVMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvQk9SREVSX1JBRElVUyc7XG5pbXBvcnQgeyBnZXRCYXJGaWxsIH0gZnJvbSAnLi4vZ2V0QmFyRmlsbCc7XG5cbmV4cG9ydCB0eXBlIEhvcml6b250YWxCYXJHcm91cFByb3BzID0ge1xuICBkYXRhOiBDaGFydERhdGFEZWZpbml0aW9uW107XG4gIGtleXM6IHN0cmluZ1tdO1xuICB3aWR0aDogbnVtYmVyO1xuICB5S2V5OiBzdHJpbmc7XG4gIHlTY2FsZURhdGFUeXBlOiBEYXRhVHlwZTtcbiAgeVNjYWxlOiBTY2FsZUJhbmQ8c3RyaW5nPiB8IFNjYWxlQmFuZDxEYXRlPiB8IFNjYWxlQmFuZDxudW1iZXI+O1xuICBpbm5lcllTY2FsZTogU2NhbGVCYW5kPHN0cmluZz47XG4gIHhTY2FsZTogU2NhbGVMaW5lYXI8bnVtYmVyLCBudW1iZXIsIG5ldmVyPjtcbiAgb25DbGljazogKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8U1ZHUmVjdEVsZW1lbnQsIE1vdXNlRXZlbnQ+LCBiYXJHcm91cDogYW55LCBiYXI6IGFueSkgPT4gdm9pZDtcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM6IENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVbXTtcbiAgYmFyczogU2hhcGVEZWZpbml0aW9uPEJhclN0eWxlcz5bXTtcbiAgZW5hYmxlSG92ZXI/OiBib29sZWFuO1xuICB4QXhpc0xhYmVscz86IHN0cmluZ1tdO1xuICB4TGFiZWxQb3NpdGlvbj86IG51bWJlcjtcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM6IGJvb2xlYW47XG4gIGxhYmVsU3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xuICBzaG93TGFiZWxzOiBib29sZWFuO1xuICBsYWJlbERpY3Rpb25hcnk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gSG9yaXpvbnRhbEJhckdyb3VwKHtcbiAgZGF0YSxcbiAga2V5cyxcbiAgd2lkdGgsXG4gIHlLZXksXG4gIHlTY2FsZURhdGFUeXBlLFxuICB5U2NhbGUsXG4gIGlubmVyWVNjYWxlLFxuICB4U2NhbGUsXG4gIG9uQ2xpY2ssXG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLFxuICBiYXJzLFxuICBlbmFibGVIb3ZlcixcbiAgeEF4aXNMYWJlbHMsXG4gIHhMYWJlbFBvc2l0aW9uLFxuICBzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVscyxcbiAgbGFiZWxTdHlsZSxcbiAgc2hvd0xhYmVscyxcbiAgbGFiZWxEaWN0aW9uYXJ5LFxufTogSG9yaXpvbnRhbEJhckdyb3VwUHJvcHMpIHtcbiAgY29uc3QgZ2V0R3JvdXBQb3NpdGlvbiA9IChkOiBEYXR1bU9iamVjdCkgPT4ge1xuICAgIGNvbnN0IHlWYWx1ZSA9IGRbeUtleSBhcyBrZXlvZiB0eXBlb2YgZF07XG5cbiAgICBpZiAoeVNjYWxlRGF0YVR5cGUgPT09ICdzdHJpbmcnKSByZXR1cm4gU3RyaW5nKHlWYWx1ZSk7XG5cbiAgICBpZiAoeVNjYWxlRGF0YVR5cGUgPT09ICdkYXRlX3RpbWUnKSB7XG4gICAgICByZXR1cm4gbmV3IERhdGUoU3RyaW5nKHlWYWx1ZSkpO1xuICAgIH1cblxuICAgIGlmICh5U2NhbGVEYXRhVHlwZSA9PT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiBOdW1iZXIoeVZhbHVlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gU3RyaW5nKHlWYWx1ZSk7XG4gIH07XG5cbiAgY29uc3QgdG90YWxJdGVtcyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGFsbEJhclZhbHVlcyA9IGdldEFsbENoYXJ0VmFsdWVzKGRhdGEsIGtleXMpO1xuICAgIHJldHVybiBhbGxCYXJWYWx1ZXMubGVuZ3RoO1xuICB9LCBbZGF0YSwga2V5c10pO1xuXG4gIHJldHVybiAoXG4gICAgPFZpc3hCYXJHcm91cEhvcml6b250YWw8RGF0dW1PYmplY3Q+XG4gICAgICBkYXRhPXtkYXRhIGFzIERhdHVtT2JqZWN0W119XG4gICAgICBrZXlzPXtrZXlzfVxuICAgICAgd2lkdGg9e3dpZHRofVxuICAgICAgeTA9e2dldEdyb3VwUG9zaXRpb259XG4gICAgICB5MFNjYWxlPXt5U2NhbGV9XG4gICAgICB5MVNjYWxlPXtpbm5lcllTY2FsZX1cbiAgICAgIHhTY2FsZT17eFNjYWxlfVxuICAgICAgY29sb3I9eygpID0+ICcnfVxuICAgID5cbiAgICAgIHsoYmFyR3JvdXBzKSA9PiB7XG4gICAgICAgIHJldHVybiBiYXJHcm91cHMubWFwKChiYXJHcm91cCkgPT4gKFxuICAgICAgICAgIDxHcm91cCBrZXk9e2Bob3Jpem9udGFsLWJhci1ncm91cC0ke2Jhckdyb3VwLmluZGV4fS0ke2Jhckdyb3VwLnkwfWB9IHRvcD17YmFyR3JvdXAueTB9PlxuICAgICAgICAgICAge2Jhckdyb3VwLmJhcnMubWFwKChiYXIpID0+IChcbiAgICAgICAgICAgICAgPEhvcml6b250YWxCYXJcbiAgICAgICAgICAgICAgICBrZXk9e2Bob3Jpem9udGFsLWJhci0ke2Jhci5pbmRleH0tJHtiYXIueX1gfVxuICAgICAgICAgICAgICAgIGJhcj17YmFyfVxuICAgICAgICAgICAgICAgIGJhckdyb3VwPXtiYXJHcm91cH1cbiAgICAgICAgICAgICAgICBiYXJzPXtiYXJzfVxuICAgICAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzPXtjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlc31cbiAgICAgICAgICAgICAgICBlbmFibGVIb3Zlcj17ZW5hYmxlSG92ZXJ9XG4gICAgICAgICAgICAgICAgbGFiZWxTdHlsZT17bGFiZWxTdHlsZX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgICAgICAgICAgIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzPXtzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVsc31cbiAgICAgICAgICAgICAgICB4QXhpc0xhYmVscz17eEF4aXNMYWJlbHN9XG4gICAgICAgICAgICAgICAgeExhYmVsUG9zaXRpb249e3hMYWJlbFBvc2l0aW9ufVxuICAgICAgICAgICAgICAgIHRvdGFsSXRlbXM9e3RvdGFsSXRlbXN9XG4gICAgICAgICAgICAgICAgc2hvd0xhYmVscz17c2hvd0xhYmVsc31cbiAgICAgICAgICAgICAgICBsYWJlbERpY3Rpb25hcnk9e2xhYmVsRGljdGlvbmFyeX1cbiAgICAgICAgICAgICAgICB4U2NhbGU9e3hTY2FsZX1cbiAgICAgICAgICAgICAgICBjb250YWluZXJXaWR0aD17d2lkdGh9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApKX1cbiAgICAgICAgICA8L0dyb3VwPlxuICAgICAgICApKTtcbiAgICAgIH19XG4gICAgPC9WaXN4QmFyR3JvdXBIb3Jpem9udGFsPlxuICApO1xufVxuXG50eXBlIEhvcml6b250YWxCYXJQcm9wcyA9IHtcbiAgYmFyOiBhbnk7XG4gIGJhckdyb3VwOiBhbnk7XG4gIGJhcnM6IFNoYXBlRGVmaW5pdGlvbjxCYXJTdHlsZXM+W107XG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlW107XG4gIGVuYWJsZUhvdmVyPzogYm9vbGVhbjtcbiAgb25DbGljazogKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8U1ZHUmVjdEVsZW1lbnQsIE1vdXNlRXZlbnQ+LCBiYXJHcm91cDogYW55LCBiYXI6IGFueSkgPT4gdm9pZDtcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM6IGJvb2xlYW47XG4gIGxhYmVsU3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xuICB4QXhpc0xhYmVscz86IHN0cmluZ1tdO1xuICB4TGFiZWxQb3NpdGlvbj86IG51bWJlcjtcbiAgdG90YWxJdGVtczogbnVtYmVyO1xuICBzaG93TGFiZWxzOiBib29sZWFuO1xuICBsYWJlbERpY3Rpb25hcnk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG4gIHhTY2FsZTogU2NhbGVMaW5lYXI8bnVtYmVyLCBudW1iZXIsIG5ldmVyPjtcbiAgY29udGFpbmVyV2lkdGg6IG51bWJlcjtcbn07XG5cbmNvbnN0IEhvcml6b250YWxCYXIgPSAoe1xuICBiYXIsXG4gIGJhckdyb3VwLFxuICBiYXJzLFxuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcyxcbiAgZW5hYmxlSG92ZXIsXG4gIGxhYmVsU3R5bGUsXG4gIG9uQ2xpY2ssXG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzLFxuICB4QXhpc0xhYmVscyxcbiAgeExhYmVsUG9zaXRpb24sXG4gIHRvdGFsSXRlbXMsXG4gIHNob3dMYWJlbHMsXG4gIGxhYmVsRGljdGlvbmFyeSxcbiAgeFNjYWxlLFxuICBjb250YWluZXJXaWR0aCxcbn06IEhvcml6b250YWxCYXJQcm9wcykgPT4ge1xuICBjb25zdCBYX1BBRERJTkcgPSAtNTtcblxuICBjb25zdCBtaW5IZWlnaHQgPSAxNTtcbiAgY29uc3QgbWluQ29udGFpbmVyV2lkdGggPSA1MDtcblxuICBjb25zdCBiYXJYID0gYmFyLnZhbHVlID49IDAgPyB4U2NhbGUoMCkgOiB4U2NhbGUoYmFyLnZhbHVlKTtcbiAgY29uc3QgYmFyV2lkdGggPSBNYXRoLmFicyh4U2NhbGUoYmFyLnZhbHVlKSAtIHhTY2FsZSgwKSk7XG5cbiAgY29uc3Qgc2hvd0JhciA9IGJhci52YWx1ZSAhPT0gbnVsbCAmJiBiYXIuaGVpZ2h0ID4gMCAmJiBiYXIud2lkdGggPiAwO1xuXG4gIGNvbnN0IGxhYmVsWFBhZGRpbmdBZGp1c3RtZW50ID0gYmFyLnZhbHVlID49IDAgPyBYX1BBRERJTkcgOiAwO1xuICBjb25zdCBsYWJlbFggPSB4U2NhbGUoYmFyLnZhbHVlKSArIGxhYmVsWFBhZGRpbmdBZGp1c3RtZW50O1xuICBjb25zdCBsYWJlbFkgPSBiYXIueSArIGJhci5oZWlnaHQgLyAyO1xuICBjb25zdCBsYWJlbEhvcml6b250YWxBbmNob3IgPSBiYXIudmFsdWUgPCAwID8gJ2VuZCcgOiB1bmRlZmluZWQ7XG5cbiAgY29uc3Qgc2hvd01pbk1heCA9IHNob3dEYXRhTGFiZWwodG90YWxJdGVtcyk7XG4gIGNvbnN0IGhhc1NwYWNlRm9yTGFiZWwgPSBzaG93TGFiZWxzICYmIGJhci5oZWlnaHQgPiBtaW5IZWlnaHQgJiYgY29udGFpbmVyV2lkdGggPiBtaW5Db250YWluZXJXaWR0aDtcblxuICBjb25zdCBkaXNwbGF5VmFsdWUgPSBnZXRGb3JtYXR0ZWRWYWx1ZShiYXIudmFsdWUsIGxhYmVsRGljdGlvbmFyeSk7XG5cbiAgcmV0dXJuIChcbiAgICA8RnJhZ21lbnQ+XG4gICAgICB7c2hvd0JhciAmJiAoXG4gICAgICAgIDxIb3Jpem9udGFsQmFyUmVjdFxuICAgICAgICAgIGJhclJlY3RLZXk9e2Bob3Jpem9udGFsLWJhci1ncm91cC1iYXItJHtiYXJHcm91cC5pbmRleH0tJHtiYXIuaW5kZXh9LSR7YmFyLnZhbHVlfS0ke1N0cmluZyhiYXIua2V5KX1gfVxuICAgICAgICAgIHg9e2Jhclh9XG4gICAgICAgICAgeT17YmFyLnl9XG4gICAgICAgICAgd2lkdGg9e2JhcldpZHRofVxuICAgICAgICAgIGhlaWdodD17YmFyLmhlaWdodH1cbiAgICAgICAgICBmaWxsPXtnZXRCYXJGaWxsKGJhcnMsIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLCBTdHJpbmcoYmFyLmtleSksIGJhci52YWx1ZSl9XG4gICAgICAgICAgb25DbGljaz17KGUpID0+IG9uQ2xpY2soZSwgYmFyR3JvdXAsIGJhcil9XG4gICAgICAgICAgZW5hYmxlSG92ZXI9e2VuYWJsZUhvdmVyfVxuICAgICAgICAvPlxuICAgICAgKX1cblxuICAgICAge2hhc1NwYWNlRm9yTGFiZWwgJiYgc2hvd01pbk1heCAmJiAoXG4gICAgICAgIDxEYXRhTGFiZWxcbiAgICAgICAgICB4PXtsYWJlbFh9XG4gICAgICAgICAgeT17bGFiZWxZfVxuICAgICAgICAgIHRpdGxlPXtkaXNwbGF5VmFsdWUgIT09IDAgPyBkaXNwbGF5VmFsdWUgOiAnMCd9XG4gICAgICAgICAgZHg9ezF9XG4gICAgICAgICAgZHk9ezB9XG4gICAgICAgICAgaG9yaXpvbnRhbEFuY2hvcj17bGFiZWxIb3Jpem9udGFsQW5jaG9yfVxuICAgICAgICAvPlxuICAgICAgKX1cblxuICAgICAgPEhvcml6b250YWxCYXJMYWJlbFxuICAgICAgICBiYXI9e2Jhcn1cbiAgICAgICAgYmFyR3JvdXA9e2Jhckdyb3VwfVxuICAgICAgICB4TGFiZWxQb3NpdGlvbj17eExhYmVsUG9zaXRpb259XG4gICAgICAgIHhBeGlzTGFiZWxzPXt4QXhpc0xhYmVsc31cbiAgICAgICAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM9e3Nob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzfVxuICAgICAgICBsYWJlbFN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgLz5cbiAgICA8L0ZyYWdtZW50PlxuICApO1xufTtcblxudHlwZSBIb3Jpem9udGFsQmFyUmVjdFByb3BzID0ge1xuICBvbkNsaWNrOiAoZTogUmVhY3QuTW91c2VFdmVudDxTVkdSZWN0RWxlbWVudCwgTW91c2VFdmVudD4pID0+IHZvaWQ7XG4gIGZpbGw/OiBzdHJpbmc7XG4gIHg6IG51bWJlcjtcbiAgeTogbnVtYmVyO1xuICB3aWR0aDogbnVtYmVyO1xuICBoZWlnaHQ6IG51bWJlcjtcbiAgYmFyUmVjdEtleTogc3RyaW5nO1xuICBlbmFibGVIb3Zlcj86IGJvb2xlYW47XG59O1xuXG5jb25zdCBIb3Jpem9udGFsQmFyUmVjdCA9ICh7IG9uQ2xpY2ssIGZpbGwsIHgsIHksIHdpZHRoLCBoZWlnaHQsIGJhclJlY3RLZXksIGVuYWJsZUhvdmVyIH06IEhvcml6b250YWxCYXJSZWN0UHJvcHMpID0+IHtcbiAgY29uc3QgW2lzSG92ZXJlZCwgc2V0SXNIb3ZlcmVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICBjb25zdCBjbGFzc2VzID0gZW5hYmxlSG92ZXIgPyBjc3MoeyBjdXJzb3I6ICdwb2ludGVyJyB9KSA6ICcnO1xuXG4gIGNvbnN0IGRpc3BsYXlDb2xvciA9IGlzSG92ZXJlZCAmJiBlbmFibGVIb3ZlciA/IGxpZ2h0ZW5Db2xvcihmaWxsLCAwLjgpIDogZmlsbDtcblxuICBjb25zdCBoYW5kbGVPbk1vdXNlRW50ZXIgPSAoKSA9PiB7XG4gICAgaWYgKGVuYWJsZUhvdmVyKSB7XG4gICAgICBzZXRJc0hvdmVyZWQodHJ1ZSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZU9uTW91c2VMZWF2ZSA9ICgpID0+IHtcbiAgICBpZiAoZW5hYmxlSG92ZXIpIHtcbiAgICAgIHNldElzSG92ZXJlZChmYWxzZSk7XG4gICAgfVxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPHJlY3RcbiAgICAgIGtleT17YmFyUmVjdEtleX1cbiAgICAgIHg9e3h9XG4gICAgICB5PXt5fVxuICAgICAgd2lkdGg9e3dpZHRofVxuICAgICAgaGVpZ2h0PXtoZWlnaHR9XG4gICAgICBmaWxsPXtkaXNwbGF5Q29sb3J9XG4gICAgICByeD17QkFSX1JBRElVU31cbiAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICBvbk1vdXNlRW50ZXI9e2hhbmRsZU9uTW91c2VFbnRlcn1cbiAgICAgIG9uTW91c2VMZWF2ZT17aGFuZGxlT25Nb3VzZUxlYXZlfVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzfVxuICAgIC8+XG4gICk7XG59O1xuXG50eXBlIEhvcml6b250YWxCYXJMYWJlbFByb3BzID0ge1xuICBiYXI6IGFueTtcbiAgYmFyR3JvdXA6IGFueTtcbiAgeExhYmVsUG9zaXRpb24/OiBudW1iZXI7XG4gIHhBeGlzTGFiZWxzPzogc3RyaW5nW107XG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzOiBib29sZWFuO1xuICBsYWJlbFN0eWxlPzogUmVhY3QuQ1NTUHJvcGVydGllcztcbn07XG5cbmNvbnN0IEhvcml6b250YWxCYXJMYWJlbCA9ICh7XG4gIGJhcixcbiAgYmFyR3JvdXAsXG4gIHhMYWJlbFBvc2l0aW9uLFxuICB4QXhpc0xhYmVscyxcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHMsXG4gIGxhYmVsU3R5bGUsXG59OiBIb3Jpem9udGFsQmFyTGFiZWxQcm9wcykgPT4ge1xuICBpZiAoIXNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzIHx8ICF4TGFiZWxQb3NpdGlvbiB8fCAheEF4aXNMYWJlbHMpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGxhYmVsID0geEF4aXNMYWJlbHNbYmFyLmluZGV4XTtcbiAgY29uc3QgY29sdW1uTGFiZWwgPSBsYWJlbC5zcGxpdCgn4oCiJylbMF07XG5cbiAgbGV0IGZvcm1hdHRlZENvbHVtbkxhYmVsOiBzdHJpbmc7XG4gIGlmIChjb2x1bW5MYWJlbC5sZW5ndGggPj0gMTMpIHtcbiAgICBmb3JtYXR0ZWRDb2x1bW5MYWJlbCA9IGNvbHVtbkxhYmVsLnNsaWNlKDAsIDEwKSArICcuLi4nO1xuICB9IGVsc2Uge1xuICAgIGZvcm1hdHRlZENvbHVtbkxhYmVsID0gY29sdW1uTGFiZWwuc2xpY2UoMCwgMTMpO1xuICB9XG5cbiAgY29uc3QgbGFiZWxZR2FwID0gNDtcbiAgY29uc3QgbGFiZWxZUG9zaXRpb24gPSBiYXIueSArIGJhci5oZWlnaHQgLyAyICsgbGFiZWxZR2FwO1xuXG4gIGNvbnN0IGxhYmVsWEdhcCA9IDE1O1xuICBjb25zdCBsYWJlbFhQb3NpdGlvbiA9IHhMYWJlbFBvc2l0aW9uICsgbGFiZWxYR2FwO1xuXG4gIGNvbnN0IGxhYmVsS2V5ID0gYGhvcml6b250YWwtbGFiZWwtJHtiYXJHcm91cC5pbmRleH0tJHtiYXIuaW5kZXh9LSR7bGFiZWx9YDtcblxuICByZXR1cm4gKFxuICAgIDx0ZXh0XG4gICAgICBrZXk9e2xhYmVsS2V5fVxuICAgICAgeD17bGFiZWxYUG9zaXRpb259XG4gICAgICB5PXtsYWJlbFlQb3NpdGlvbn1cbiAgICAgIHN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgdGV4dEFuY2hvcj1cIm1pZGRsZVwiXG4gICAgICB0cmFuc2Zvcm09e2Byb3RhdGUoLTcwLCAke2xhYmVsWFBvc2l0aW9ufSwgJHtsYWJlbFlQb3NpdGlvbn0pYH1cbiAgICA+XG4gICAgICB7Zm9ybWF0dGVkQ29sdW1uTGFiZWx9XG4gICAgPC90ZXh0PlxuICApO1xufTtcbiJdfQ== */",
46996
47281
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$a
46997
47282
  }) : '';
46998
47283
  var displayColor = isHovered && enableHover ? lightenColor$2(fill, 0.8) : fill;
@@ -47063,7 +47348,8 @@ var HorizontalBarStacked = function HorizontalBarStacked(_ref) {
47063
47348
  width = _ref.width,
47064
47349
  showLabels = _ref.showLabels,
47065
47350
  labelDictionary = _ref.labelDictionary,
47066
- isStacked100 = _ref.isStacked100;
47351
+ _ref$isStacked = _ref.isStacked100,
47352
+ isStacked100 = _ref$isStacked === void 0 ? false : _ref$isStacked;
47067
47353
  var handleGetYValue = function handleGetYValue(d) {
47068
47354
  var yValue = d[yScaleKey];
47069
47355
  if (yScaleDataType === 'string') return String(yValue);
@@ -47090,7 +47376,7 @@ var HorizontalBarStacked = function HorizontalBarStacked(_ref) {
47090
47376
  },
47091
47377
  height: height,
47092
47378
  width: width,
47093
- offset: isStacked100 ? 'expand' : 'none',
47379
+ offset: "diverging",
47094
47380
  children: function children(barStacks) {
47095
47381
  return barStacks.map(function (barStack) {
47096
47382
  return barStack.bars.map(function (bar) {
@@ -47101,7 +47387,8 @@ var HorizontalBarStacked = function HorizontalBarStacked(_ref) {
47101
47387
  conditionalFormattingRules: conditionalFormattingRules,
47102
47388
  totalItems: totalItems,
47103
47389
  showLabels: showLabels,
47104
- labelDictionary: labelDictionary
47390
+ labelDictionary: labelDictionary,
47391
+ isStacked100: isStacked100
47105
47392
  }, bar.key.toString() + "-" + bar.index + "-" + bar.y);
47106
47393
  });
47107
47394
  });
@@ -47115,13 +47402,15 @@ var HorizontalBar$1 = function HorizontalBar(_ref2) {
47115
47402
  conditionalFormattingRules = _ref2.conditionalFormattingRules,
47116
47403
  totalItems = _ref2.totalItems,
47117
47404
  showLabels = _ref2.showLabels,
47118
- labelDictionary = _ref2.labelDictionary;
47405
+ labelDictionary = _ref2.labelDictionary,
47406
+ _ref2$isStacked = _ref2.isStacked100,
47407
+ isStacked100 = _ref2$isStacked === void 0 ? false : _ref2$isStacked;
47119
47408
  var BAR_PADDING = 1.5;
47120
- var X_PADDING = 5;
47121
47409
  var Y_PADDING = -2;
47122
- var minWidth = 30;
47410
+ var minWidthMultiplier = isStacked100 ? 1.75 : 1;
47411
+ var minWidth = 30 * minWidthMultiplier;
47123
47412
  var minHeight = 15;
47124
- var labelX = bar.x + bar.width + X_PADDING;
47413
+ var labelX = bar.x + bar.width / 2;
47125
47414
  var labelY = bar.y + bar.height / 2 + Y_PADDING;
47126
47415
  var showMinMax = showDataLabel(totalItems);
47127
47416
  var hasSpaceForLabel = showLabels && bar.width > minWidth && bar.height > minHeight;
@@ -47143,7 +47432,8 @@ var HorizontalBar$1 = function HorizontalBar(_ref2) {
47143
47432
  color: textColor,
47144
47433
  title: displayValue,
47145
47434
  dx: 0,
47146
- dy: 0
47435
+ dy: 0,
47436
+ horizontalAnchor: "middle"
47147
47437
  })]
47148
47438
  });
47149
47439
  };
@@ -47424,13 +47714,24 @@ var HorizontalBarChart$3 = function HorizontalBarChart(_ref) {
47424
47714
  var innerWidth = width - margin.left - margin.right + groupingAxisBaselineShift;
47425
47715
  var innerHeight = Math.max(0, height - margin.top - margin.bottom - legendOffset);
47426
47716
  var isStacked100 = options.stacked === '100%';
47717
+ var yKey = chart.y.key;
47718
+ var yScaleKey = chart.y.scale.key;
47719
+ var yScaleDataType = chart.y.scale.dataType;
47427
47720
  var xScaleKeys = chart.x.keys;
47721
+ var processedData = React.useMemo(function () {
47722
+ if (isStacked100) {
47723
+ return convertToStackedPercentages(chart.data, chart.x.keys, yKey);
47724
+ }
47725
+ return chart.data;
47726
+ }, [isStacked100, chart.data, chart.x.keys, yKey]);
47727
+ var yScale = useHorizontalBarYScale(yScaleDataType, innerHeight, yScaleKey, processedData);
47428
47728
  var defaultXScale = useHorizontalBarXScale(innerWidth, chart.x.scale, -groupingAxisBaselineShift);
47429
47729
  var xScale = React.useMemo(function () {
47430
47730
  if (isStacked100) {
47731
+ var domain = getStackedPercentageScaleLinearDomain(processedData, chart.x.keys, yKey);
47431
47732
  return scale.scaleLinear({
47432
47733
  range: [-groupingAxisBaselineShift, innerWidth + -groupingAxisBaselineShift],
47433
- domain: [0, 1],
47734
+ domain: domain,
47434
47735
  nice: true,
47435
47736
  round: true
47436
47737
  });
@@ -47440,7 +47741,7 @@ var HorizontalBarChart$3 = function HorizontalBarChart(_ref) {
47440
47741
  var barGroupXScale = useHorizontalBarXScale(innerWidth, chart.x.scale, 0);
47441
47742
  var xTickValues = React.useMemo(function () {
47442
47743
  if (isStacked100) {
47443
- return [0, 0.2, 0.4, 0.6, 0.8, 1.0];
47744
+ return getStackedPercentageTickValues(processedData, chart.x.keys, yKey);
47444
47745
  }
47445
47746
  return chart.x.ticks.map(function (tick) {
47446
47747
  return Number(tick.value);
@@ -47448,32 +47749,9 @@ var HorizontalBarChart$3 = function HorizontalBarChart(_ref) {
47448
47749
  }, [isStacked100, chart.x.ticks]);
47449
47750
  var xAxisConfig = React.useMemo(function () {
47450
47751
  if (isStacked100) {
47752
+ var ticks = getStackedPercentageAxisTicks(processedData, chart.x.keys, yKey);
47451
47753
  return _extends({}, chart.x, {
47452
- ticks: [{
47453
- value: 0,
47454
- formattedValue: '0',
47455
- scaleValue: 0
47456
- }, {
47457
- value: 0.2,
47458
- formattedValue: '20',
47459
- scaleValue: 0.2
47460
- }, {
47461
- value: 0.4,
47462
- formattedValue: '40',
47463
- scaleValue: 0.4
47464
- }, {
47465
- value: 0.6,
47466
- formattedValue: '60',
47467
- scaleValue: 0.6
47468
- }, {
47469
- value: 0.8,
47470
- formattedValue: '80',
47471
- scaleValue: 0.8
47472
- }, {
47473
- value: 1,
47474
- formattedValue: '100',
47475
- scaleValue: 1
47476
- }]
47754
+ ticks: ticks
47477
47755
  });
47478
47756
  }
47479
47757
  return chart.x;
@@ -47483,16 +47761,6 @@ var HorizontalBarChart$3 = function HorizontalBarChart(_ref) {
47483
47761
  return (_chart$keys$legendIte = (_chart$keys$legendIte2 = chart.keys[legendItem.yKey]) == null ? void 0 : _chart$keys$legendIte2.keyFormatted) != null ? _chart$keys$legendIte : '';
47484
47762
  });
47485
47763
  var xSubLabelPosition = groupingAxisBaselineShift - leftOffset;
47486
- var yKey = chart.y.key;
47487
- var yScaleKey = chart.y.scale.key;
47488
- var yScaleDataType = chart.y.scale.dataType;
47489
- var processedData = React.useMemo(function () {
47490
- if (isStacked100) {
47491
- return convertToStackedPercentages(chart.data, chart.x.keys, yKey);
47492
- }
47493
- return chart.data;
47494
- }, [isStacked100, chart.data, chart.x.keys, yKey]);
47495
- var yScale = useHorizontalBarYScale(yScaleDataType, innerHeight, yScaleKey, processedData);
47496
47764
  var innerYScale = React.useMemo(function () {
47497
47765
  if (!options.stacked && yScale && 'bandwidth' in yScale) {
47498
47766
  return scale.scaleBand({
@@ -47594,6 +47862,7 @@ var HorizontalBarChart$3 = function HorizontalBarChart(_ref) {
47594
47862
  var formattedLabelsDict = React.useMemo(function () {
47595
47863
  return getLabelDictionary(processedData, xScaleKeys);
47596
47864
  }, [processedData, xScaleKeys]);
47865
+ var showZeroLine = chart.x.scale.min && chart.x.scale.min < 0 && chart.x.scale.max && chart.x.scale.max > 0;
47597
47866
  return jsxRuntime.jsxs(React.Fragment, {
47598
47867
  children: [jsxRuntime.jsxs(ChartWrapper$1, {
47599
47868
  width: width,
@@ -47695,6 +47964,11 @@ var HorizontalBarChart$3 = function HorizontalBarChart(_ref) {
47695
47964
  labelDictionary: formattedLabelsDict,
47696
47965
  isStacked100: isStacked100
47697
47966
  })]
47967
+ }), showZeroLine && jsxRuntime.jsx("g", {
47968
+ children: jsxRuntime.jsx(ZeroVerticalLine, {
47969
+ xScale: xScale,
47970
+ chartHeight: innerHeight
47971
+ })
47698
47972
  })]
47699
47973
  }), tooltipData && jsxRuntime.jsx("g", {
47700
47974
  children: jsxRuntime.jsx(Line, {
@@ -47820,6 +48094,7 @@ var LineChart$5 = function LineChart(_ref) {
47820
48094
  var labelDictionary = React.useMemo(function () {
47821
48095
  return getLabelDictionary(chart.data, chart.y.keys);
47822
48096
  }, [chart.data, chart.y.keys]);
48097
+ var showZeroLine = chart.y.scale.min && chart.y.scale.min < 0 && chart.y.scale.max && chart.y.scale.max > 0;
47823
48098
  var memoizedLines = React.useMemo(function () {
47824
48099
  if (xScaleKey === null || xScale === null) return null;
47825
48100
  return jsxRuntime.jsx(Lines, {
@@ -47880,8 +48155,13 @@ var LineChart$5 = function LineChart(_ref) {
47880
48155
  yScale: _yScale,
47881
48156
  ticks: yTickValues,
47882
48157
  stroke: theme == null || (_theme$axis = theme.axis) == null ? void 0 : _theme$axis.stroke
47883
- }), jsxRuntime.jsx(group.Group, {
47884
- children: memoizedLines
48158
+ }), jsxRuntime.jsxs(group.Group, {
48159
+ children: [memoizedLines, showZeroLine && jsxRuntime.jsx("g", {
48160
+ children: jsxRuntime.jsx(ZeroHorizontalLine, {
48161
+ yScale: _yScale,
48162
+ chartWidth: innerWidth
48163
+ })
48164
+ })]
47885
48165
  })]
47886
48166
  }), tooltipData && jsxRuntime.jsxs("g", {
47887
48167
  children: [jsxRuntime.jsx(Line, {
@@ -48076,19 +48356,21 @@ var LineLabel = /*#__PURE__*/React.memo(function LineLabel(_ref5) {
48076
48356
  labelDictionary = _ref5.labelDictionary;
48077
48357
  var xValue = chartData[xScaleKey];
48078
48358
  var yValue = chartData[yKey];
48079
- var xPadding = 18;
48080
- var yPadding = 8;
48081
- var xPosition = xScale(xValue);
48082
- var yPosition = yScale(yValue);
48359
+ var xLabelPosition = xScale(xValue);
48360
+ var yLabelPosition = yScale(yValue);
48361
+ var yLabelPaddingAdjustment = yValue >= 0 ? -8 : 8;
48083
48362
  var showMinMax = showDataLabel(totalItems);
48363
+ var hasPositionForLabel = showLabels && xLabelPosition && yLabelPosition;
48084
48364
  var displayValue = getFormattedValue(yValue, labelDictionary);
48085
- if (xPosition == null || yPosition == null || !showMinMax || !showLabels) return null;
48086
- return jsxRuntime.jsx(DataLabel, {
48087
- x: xPosition - xPadding,
48088
- y: yPosition - yPadding,
48089
- dx: 2,
48090
- dy: 0,
48091
- title: displayValue
48365
+ return jsxRuntime.jsx(jsxRuntime.Fragment, {
48366
+ children: showMinMax && hasPositionForLabel && jsxRuntime.jsx(DataLabel, {
48367
+ x: xLabelPosition,
48368
+ y: yLabelPosition + yLabelPaddingAdjustment,
48369
+ dx: 0,
48370
+ dy: 0,
48371
+ title: displayValue !== 0 ? displayValue : '0',
48372
+ horizontalAnchor: "middle"
48373
+ })
48092
48374
  });
48093
48375
  });
48094
48376
 
@@ -48588,7 +48870,7 @@ var getMinAndMax = function getMinAndMax(_ref) {
48588
48870
  }
48589
48871
  };
48590
48872
 
48591
- function getNiceInterval(interval) {
48873
+ function getNiceInterval$1(interval) {
48592
48874
  // Round the interval to a "nice" value (1, 2, 5, etc.)
48593
48875
  var exponent = Math.floor(Math.log10(interval));
48594
48876
  var fraction = interval / Math.pow(10, exponent);
@@ -48629,7 +48911,7 @@ var getScaleAndTicks = function getScaleAndTicks(_ref) {
48629
48911
  var maxY = y.max ? y.max * 1.1 : y.max || 1;
48630
48912
  var minY = Math.min(y.min || 0, 0);
48631
48913
  var tickCountYAxis = approxYAxisLabelCount === 'auto' ? 10 : approxYAxisLabelCount;
48632
- var yTickInterval = getNiceInterval((maxY - minY) / (tickCountYAxis - 1));
48914
+ var yTickInterval = getNiceInterval$1((maxY - minY) / (tickCountYAxis - 1));
48633
48915
  var i = 0;
48634
48916
  while (yTickInterval * i <= maxY + yTickInterval) {
48635
48917
  var _value = yTickInterval * i;
@@ -48643,7 +48925,7 @@ var getScaleAndTicks = function getScaleAndTicks(_ref) {
48643
48925
  }
48644
48926
  var maxX = x.max ? x.max * 1.05 : x.max || 1;
48645
48927
  var minX = Math.min(x.min || 0, 0);
48646
- var xTickInterval = getNiceInterval((maxX - minX) / (10 - 1));
48928
+ var xTickInterval = getNiceInterval$1((maxX - minX) / (10 - 1));
48647
48929
  i = 0;
48648
48930
  while (xTickInterval * i <= maxX + xTickInterval) {
48649
48931
  var _value2 = xTickInterval * i;
@@ -49736,14 +50018,22 @@ var getStackedMinAndMax = function getStackedMinAndMax(_ref) {
49736
50018
  min: null
49737
50019
  };
49738
50020
  if (stacked) {
49739
- var totals = data.map(function (dataItem) {
50021
+ var positiveTotals = data.map(function (dataItem) {
49740
50022
  return keys.reduce(function (sum, key) {
49741
50023
  var value = dataItem[key] ? dataItem[key].value : 0;
49742
- return sum + (typeof value === 'number' ? value : 0);
50024
+ var valueNumber = typeof value === 'number' ? value : 0;
50025
+ return sum + (valueNumber > 0 ? valueNumber : 0);
49743
50026
  }, 0);
49744
50027
  });
49745
- var maxTotal = Math.max.apply(Math, totals);
49746
- var minTotal = Math.min.apply(Math, totals);
50028
+ var negativeTotals = data.map(function (dataItem) {
50029
+ return keys.reduce(function (sum, key) {
50030
+ var value = dataItem[key] ? dataItem[key].value : 0;
50031
+ var valueNumber = typeof value === 'number' ? value : 0;
50032
+ return sum + (valueNumber < 0 ? valueNumber : 0);
50033
+ }, 0);
50034
+ });
50035
+ var maxTotal = Math.max.apply(Math, positiveTotals);
50036
+ var minTotal = Math.min.apply(Math, negativeTotals);
49747
50037
  return {
49748
50038
  max: maxTotal,
49749
50039
  min: minTotal
@@ -49779,34 +50069,6 @@ var getStackedMinAndMax = function getStackedMinAndMax(_ref) {
49779
50069
  };
49780
50070
  };
49781
50071
 
49782
- var DEFAULT_TICK_COUNT = 10;
49783
- function getNiceInterval$1(interval) {
49784
- var exponent = Math.floor(Math.log10(interval));
49785
- var fraction = interval / Math.pow(10, exponent);
49786
- var niceFraction;
49787
- if (fraction <= 1) {
49788
- niceFraction = 1;
49789
- } else if (fraction <= 1.25) {
49790
- niceFraction = 1.25;
49791
- } else if (fraction <= 1.5) {
49792
- niceFraction = 1.5;
49793
- } else if (fraction <= 2) {
49794
- niceFraction = 2;
49795
- } else if (fraction <= 2.5) {
49796
- niceFraction = 2.5;
49797
- } else if (fraction <= 3) {
49798
- niceFraction = 3;
49799
- } else if (fraction <= 5) {
49800
- niceFraction = 5;
49801
- } else if (fraction <= 7) {
49802
- niceFraction = 7;
49803
- } else if (fraction <= 10) {
49804
- niceFraction = 10;
49805
- } else {
49806
- niceFraction = 10;
49807
- }
49808
- return niceFraction * Math.pow(10, exponent);
49809
- }
49810
50072
  var getScaleAndTicks$1 = function getScaleAndTicks(_ref) {
49811
50073
  var _order$;
49812
50074
  var data = _ref.data,
@@ -49863,20 +50125,16 @@ var getScaleAndTicks$1 = function getScaleAndTicks(_ref) {
49863
50125
  goalLines: goalLines,
49864
50126
  stacked: stacked
49865
50127
  });
49866
- var maxY = y.max || 0;
49867
- var minY = Math.min(y.min || 0, 0);
49868
- var yTickCount = tickCountYAxis != null ? tickCountYAxis : DEFAULT_TICK_COUNT;
49869
- var yTickInterval = getNiceInterval$1((maxY - minY) / (yTickCount - 1));
49870
- var yTicks = [];
49871
- for (var i = 0; i < yTickCount; i++) {
49872
- var _value = minY + yTickInterval * i;
49873
- var formattedValue = formattingFunctionY(_value, nullValue);
49874
- yTicks.push({
49875
- value: _value,
49876
- formattedValue: formattedValue,
49877
- scaleValue: _value
49878
- });
49879
- }
50128
+ var yTicks = getMetricAxisTicks({
50129
+ min: y.min,
50130
+ max: y.max,
50131
+ tickCount: tickCountYAxis,
50132
+ nullValue: nullValue,
50133
+ formattingFunction: formattingFunctionY,
50134
+ stacked: stacked != null ? stacked : false
50135
+ });
50136
+ var maxY = Math.max(yTicks.maxTickValue, y.max || 0);
50137
+ var minY = Math.min(yTicks.minTickValue, y.min || 0);
49880
50138
  return {
49881
50139
  x: {
49882
50140
  ticks: xTicks,
@@ -49889,7 +50147,7 @@ var getScaleAndTicks$1 = function getScaleAndTicks(_ref) {
49889
50147
  }
49890
50148
  },
49891
50149
  y: {
49892
- ticks: yTicks,
50150
+ ticks: yTicks.ticks,
49893
50151
  scale: {
49894
50152
  dataType: 'number',
49895
50153
  key: null,
@@ -50101,7 +50359,8 @@ var buildLineChartRepresentation = function buildLineChartRepresentation(_ref) {
50101
50359
  data: chartData,
50102
50360
  lines: styleDefinition,
50103
50361
  conditionalFormattingRules: conditionalFormattingRules,
50104
- goalLines: goalLines
50362
+ goalLines: goalLines,
50363
+ formattingFunctionY: formattingFunctionY
50105
50364
  };
50106
50365
  return chart;
50107
50366
  };
@@ -50842,7 +51101,8 @@ var buildBarChartRepresentation = function buildBarChartRepresentation(_ref) {
50842
51101
  data: updatedData,
50843
51102
  bars: styleDefinition,
50844
51103
  conditionalFormattingRules: conditionalFormattingRules,
50845
- goalLines: goalLines
51104
+ goalLines: goalLines,
51105
+ formattingFunctionY: formattingFunctionY
50846
51106
  };
50847
51107
  return chart;
50848
51108
  };
@@ -51353,6 +51613,7 @@ var ComboChart$4 = function ComboChart(_ref) {
51353
51613
  var formattedLabelsDict = React.useMemo(function () {
51354
51614
  return getLabelDictionary(chart.bars.data, yBarKeys);
51355
51615
  }, [chart.bars.data, yBarKeys]);
51616
+ var showZeroLine = chart.y.scale.min && chart.y.scale.min < 0 && chart.y.scale.max && chart.y.scale.max > 0;
51356
51617
  return jsxRuntime.jsxs(React.Fragment, {
51357
51618
  children: [jsxRuntime.jsxs(ChartWrapper$1, {
51358
51619
  width: width,
@@ -51435,6 +51696,11 @@ var ComboChart$4 = function ComboChart(_ref) {
51435
51696
  showLabels: options.showLabels,
51436
51697
  labelDictionary: labelDictionary
51437
51698
  })
51699
+ }), showZeroLine && jsxRuntime.jsx("g", {
51700
+ children: jsxRuntime.jsx(ZeroHorizontalLine, {
51701
+ yScale: yScale,
51702
+ chartWidth: innerWidth
51703
+ })
51438
51704
  })]
51439
51705
  })]
51440
51706
  }), tooltipData && jsxRuntime.jsx("g", {
@@ -51480,7 +51746,7 @@ function adjustColors(maybeColors, defaultColors, shift) {
51480
51746
  }
51481
51747
 
51482
51748
  function buildComboChartRepresentation(xKeyField, barChartRepresentation, lineChartRepresentation) {
51483
- var _barChartRepresentati, _lineChartRepresentat, _barChartRepresentati2, _lineChartRepresentat2, _lineChartRepresentat4, _lineChartRepresentat5, _lineChartRepresentat6, _barChartRepresentati4, _barChartRepresentati5, _ref, _lineChartRepresentat7;
51749
+ var _barChartRepresentati, _barChartRepresentati2, _lineChartRepresentat, _lineChartRepresentat2, _lineChartRepresentat3, _lineChartRepresentat4, _lineChartRepresentat5, _barChartRepresentati3, _barChartRepresentati4, _ref, _lineChartRepresentat6;
51484
51750
  var xScale = function () {
51485
51751
  if ((xKeyField == null ? void 0 : xKeyField.dataType) === 'number') {
51486
51752
  return _extends({}, barChartRepresentation.x.scale, {
@@ -51499,15 +51765,39 @@ function buildComboChartRepresentation(xKeyField, barChartRepresentation, lineCh
51499
51765
  max: null
51500
51766
  });
51501
51767
  }();
51502
- var yScale = _extends({}, barChartRepresentation.y.scale, {
51503
- max: Math.max((_barChartRepresentati = barChartRepresentation.y.scale.max) != null ? _barChartRepresentati : 0, (_lineChartRepresentat = lineChartRepresentation.y.scale.max) != null ? _lineChartRepresentat : 0),
51504
- min: Math.max((_barChartRepresentati2 = barChartRepresentation.y.scale.min) != null ? _barChartRepresentati2 : 0, (_lineChartRepresentat2 = lineChartRepresentation.y.scale.min) != null ? _lineChartRepresentat2 : 0)
51505
- });
51506
- var yTicks = function (_barChartRepresentati3, _lineChartRepresentat3) {
51507
- if (((_barChartRepresentati3 = barChartRepresentation.y.scale.max) != null ? _barChartRepresentati3 : 0) > ((_lineChartRepresentat3 = lineChartRepresentation.y.scale.max) != null ? _lineChartRepresentat3 : 0)) {
51768
+ var barChartMaxY = (_barChartRepresentati = barChartRepresentation.y.scale.max) != null ? _barChartRepresentati : 0;
51769
+ var barChartMinY = (_barChartRepresentati2 = barChartRepresentation.y.scale.min) != null ? _barChartRepresentati2 : 0;
51770
+ var lineChartMaxY = (_lineChartRepresentat = lineChartRepresentation.y.scale.max) != null ? _lineChartRepresentat : 0;
51771
+ var lineChartMinY = (_lineChartRepresentat2 = lineChartRepresentation.y.scale.min) != null ? _lineChartRepresentat2 : 0;
51772
+ var comboChartMaxY = Math.max(barChartMaxY, lineChartMaxY);
51773
+ var comboChartMinY = Math.min(barChartMinY, lineChartMinY);
51774
+ var yTicks = function () {
51775
+ if (barChartMaxY >= lineChartMaxY && barChartMinY <= lineChartMinY) {
51508
51776
  return barChartRepresentation.y.ticks;
51509
- } else {
51777
+ } else if (lineChartMaxY >= barChartMaxY && lineChartMinY <= barChartMinY) {
51510
51778
  return lineChartRepresentation.y.ticks;
51779
+ } else {
51780
+ var comboChartTicksLength = Math.max(barChartRepresentation.y.ticks.length, lineChartRepresentation.y.ticks.length);
51781
+ var formattingFunctionY = function formattingFunctionY(value) {
51782
+ if (barChartRepresentation.formattingFunctionY) {
51783
+ return barChartRepresentation.formattingFunctionY(value);
51784
+ } else if (lineChartRepresentation.formattingFunctionY) {
51785
+ return lineChartRepresentation.formattingFunctionY(value);
51786
+ } else {
51787
+ return String(value);
51788
+ }
51789
+ };
51790
+ var _yTicks = getMetricAxisTicks({
51791
+ min: comboChartMinY,
51792
+ max: comboChartMaxY,
51793
+ tickCount: comboChartTicksLength,
51794
+ nullValue: undefined,
51795
+ formattingFunction: formattingFunctionY,
51796
+ stacked: false
51797
+ });
51798
+ comboChartMaxY = Math.max(_yTicks.maxTickValue, comboChartMaxY);
51799
+ comboChartMinY = Math.min(_yTicks.minTickValue, comboChartMinY);
51800
+ return _yTicks.ticks;
51511
51801
  }
51512
51802
  }();
51513
51803
  return {
@@ -51517,22 +51807,25 @@ function buildComboChartRepresentation(xKeyField, barChartRepresentation, lineCh
51517
51807
  }),
51518
51808
  keys: _extends({}, lineChartRepresentation == null ? void 0 : lineChartRepresentation.keys, barChartRepresentation == null ? void 0 : barChartRepresentation.keys),
51519
51809
  y: _extends({}, barChartRepresentation.y, {
51520
- scale: yScale,
51810
+ scale: _extends({}, barChartRepresentation.y.scale, {
51811
+ max: comboChartMaxY,
51812
+ min: comboChartMinY
51813
+ }),
51521
51814
  ticks: yTicks,
51522
51815
  barKeys: barChartRepresentation.y.keys,
51523
51816
  lineKeys: lineChartRepresentation.y.keys
51524
51817
  }),
51525
51818
  lines: {
51526
- definitions: (_lineChartRepresentat4 = lineChartRepresentation == null ? void 0 : lineChartRepresentation.lines) != null ? _lineChartRepresentat4 : [],
51527
- data: (_lineChartRepresentat5 = lineChartRepresentation == null ? void 0 : lineChartRepresentation.data) != null ? _lineChartRepresentat5 : [],
51528
- conditionalFormattingRules: (_lineChartRepresentat6 = lineChartRepresentation == null ? void 0 : lineChartRepresentation.conditionalFormattingRules) != null ? _lineChartRepresentat6 : []
51819
+ definitions: (_lineChartRepresentat3 = lineChartRepresentation == null ? void 0 : lineChartRepresentation.lines) != null ? _lineChartRepresentat3 : [],
51820
+ data: (_lineChartRepresentat4 = lineChartRepresentation == null ? void 0 : lineChartRepresentation.data) != null ? _lineChartRepresentat4 : [],
51821
+ conditionalFormattingRules: (_lineChartRepresentat5 = lineChartRepresentation == null ? void 0 : lineChartRepresentation.conditionalFormattingRules) != null ? _lineChartRepresentat5 : []
51529
51822
  },
51530
51823
  bars: {
51531
51824
  definitions: barChartRepresentation.bars,
51532
- data: (_barChartRepresentati4 = barChartRepresentation == null ? void 0 : barChartRepresentation.data) != null ? _barChartRepresentati4 : [],
51533
- conditionalFormattingRules: (_barChartRepresentati5 = barChartRepresentation.conditionalFormattingRules) != null ? _barChartRepresentati5 : []
51825
+ data: (_barChartRepresentati3 = barChartRepresentation == null ? void 0 : barChartRepresentation.data) != null ? _barChartRepresentati3 : [],
51826
+ conditionalFormattingRules: (_barChartRepresentati4 = barChartRepresentation.conditionalFormattingRules) != null ? _barChartRepresentati4 : []
51534
51827
  },
51535
- goalLines: (_ref = (_lineChartRepresentat7 = lineChartRepresentation == null ? void 0 : lineChartRepresentation.goalLines) != null ? _lineChartRepresentat7 : lineChartRepresentation == null ? void 0 : lineChartRepresentation.goalLines) != null ? _ref : []
51828
+ goalLines: (_ref = (_lineChartRepresentat6 = lineChartRepresentation == null ? void 0 : lineChartRepresentation.goalLines) != null ? _lineChartRepresentat6 : lineChartRepresentation == null ? void 0 : lineChartRepresentation.goalLines) != null ? _ref : []
51536
51829
  };
51537
51830
  }
51538
51831