@vizzly/dashboard 0.14.4-dev-88f2ae3ae61dabab126f4b0d884b40773d9cb20b → 0.14.4-dev-3455fe16fbb312a7c23a46cc2f4bcf62b52bb944

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.
@@ -1559,7 +1559,7 @@ var upcastFilterType = function upcastFilterType(type) {
1559
1559
  if (type === 'dateTimeFilter') {
1560
1560
  return DATE_FILTER;
1561
1561
  }
1562
- if (type === 'numericFilter' || type === 'multiSelectFilter') {
1562
+ if (type === 'numericFilter') {
1563
1563
  return ADVANCED_FILTER;
1564
1564
  }
1565
1565
  return type;
@@ -13772,8 +13772,7 @@ var ADMIN_FEATURE_TOGGLES = {
13772
13772
  forceMobile: false,
13773
13773
  unloadOffScreenViews: false,
13774
13774
  showSavingIndicator: false,
13775
- disablePersistingGlobalFiltersLocally: false,
13776
- simpleMultiSelectFilter: false
13775
+ disablePersistingGlobalFiltersLocally: false
13777
13776
  };
13778
13777
  var END_USER_DEFAULT_FEATURE_TOGGLES = {
13779
13778
  parameters: true,
@@ -13810,8 +13809,7 @@ var END_USER_DEFAULT_FEATURE_TOGGLES = {
13810
13809
  forceMobile: false,
13811
13810
  unloadOffScreenViews: false,
13812
13811
  showSavingIndicator: true,
13813
- disablePersistingGlobalFiltersLocally: false,
13814
- simpleMultiSelectFilter: false
13812
+ disablePersistingGlobalFiltersLocally: false
13815
13813
  };
13816
13814
  var build$b = function build(partialFeatureToggles, queryEngineConfig, mode, scope) {
13817
13815
  var featureToggles = {};
@@ -13868,7 +13866,7 @@ var build$b = function build(partialFeatureToggles, queryEngineConfig, mode, sco
13868
13866
  return featureToggles;
13869
13867
  };
13870
13868
  var buildDefaults = function buildDefaults(partialFeatureToggles) {
13871
- var _partialFeatureToggle, _partialFeatureToggle2, _partialFeatureToggle3;
13869
+ var _partialFeatureToggle, _partialFeatureToggle2;
13872
13870
  return {
13873
13871
  showDateAndTimeFilter: partialFeatureToggles.showDateAndTimeFilter !== undefined ? partialFeatureToggles.showDateAndTimeFilter : true,
13874
13872
  showDateFilter: partialFeatureToggles.showDateFilter !== undefined ? partialFeatureToggles.showDateFilter : true,
@@ -13879,8 +13877,7 @@ var buildDefaults = function buildDefaults(partialFeatureToggles) {
13879
13877
  canDownloadViewAsPNG: partialFeatureToggles.canDownloadViewAsPNG !== undefined ? partialFeatureToggles.canDownloadViewAsPNG : true,
13880
13878
  forceMobile: partialFeatureToggles.forceMobile !== undefined ? partialFeatureToggles.forceMobile : false,
13881
13879
  unloadOffScreenViews: partialFeatureToggles.unloadOffScreenViews !== undefined ? partialFeatureToggles.unloadOffScreenViews : false,
13882
- allowCalculatedField: (_partialFeatureToggle2 = partialFeatureToggles.allowCalculatedField) != null ? _partialFeatureToggle2 : false,
13883
- simpleMultiSelectFilter: (_partialFeatureToggle3 = partialFeatureToggles.simpleMultiSelectFilter) != null ? _partialFeatureToggle3 : false
13880
+ allowCalculatedField: (_partialFeatureToggle2 = partialFeatureToggles.allowCalculatedField) != null ? _partialFeatureToggle2 : false
13884
13881
  };
13885
13882
  };
13886
13883
 
@@ -28844,8 +28841,7 @@ var AdditionalFilter = function AdditionalFilter(props) {
28844
28841
  onChange = props.onChange,
28845
28842
  shouldAlwaysHaveValue = props.shouldAlwaysHaveValue;
28846
28843
  var _useDashboardBehaviou = useDashboardBehaviourContext(),
28847
- queryEngineConfig = _useDashboardBehaviou.queryEngineConfig,
28848
- featureToggles = _useDashboardBehaviou.featureToggles;
28844
+ queryEngineConfig = _useDashboardBehaviou.queryEngineConfig;
28849
28845
 
28850
28846
  /** Validate the new filter before setting it */
28851
28847
  var onChangeWithValidation = function onChangeWithValidation(newFilter) {
@@ -28896,7 +28892,7 @@ var AdditionalFilter = function AdditionalFilter(props) {
28896
28892
  dataSets: props.dataSets
28897
28893
  }, typeof props.filter.value === 'boolean' ? undefined : JSON.stringify(props.filter.value));
28898
28894
  }
28899
- if (filter.type == MULTI_SELECT_FILTER && featureToggles.simpleMultiSelectFilter) {
28895
+ if (filter.type == MULTI_SELECT_FILTER) {
28900
28896
  return jsxRuntime.jsx(MultiSelectFilter, {
28901
28897
  showClearBtn: !shouldAlwaysHaveValue,
28902
28898
  filter: filter,
@@ -38080,13 +38076,11 @@ var AddFilterForm = function AddFilterForm(props) {
38080
38076
  value: SINGLE_SELECT_FILTER,
38081
38077
  subText: textOverride('single_select_filter_description', 'Choose a single option from the list to filter. ')
38082
38078
  }];
38083
- if (featureToggles.simpleMultiSelectFilter) {
38084
- filterTypes.push({
38085
- label: textOverride('multi_select', 'Multi select'),
38086
- value: MULTI_SELECT_FILTER,
38087
- subText: textOverride('multi_select_description', 'Allow multiple selections.')
38088
- });
38089
- }
38079
+ filterTypes.push({
38080
+ label: textOverride('multi_select', 'Multi select'),
38081
+ value: MULTI_SELECT_FILTER,
38082
+ subText: textOverride('multi_select_description', 'Allow multiple selections.')
38083
+ });
38090
38084
  filterTypes.push({
38091
38085
  label: textOverride('advanced_filter', 'Advanced filter'),
38092
38086
  value: ADVANCED_FILTER,
@@ -42317,16 +42311,14 @@ var SCROLLBAR_WIDTH = 40;
42317
42311
  var Tooltip$1 = function Tooltip(_ref) {
42318
42312
  var _tooltipData$xKey$for;
42319
42313
  var keys = _ref.keys,
42320
- legendItems = _ref.legendItems,
42321
42314
  showRoundedTotal = _ref.showRoundedTotal,
42322
42315
  tooltipData = _ref.tooltipData,
42323
42316
  tooltipLeft = _ref.tooltipLeft,
42324
42317
  tooltipTop = _ref.tooltipTop,
42325
- visibleYKeys = _ref.visibleYKeys,
42326
42318
  xKey = _ref.xKey,
42327
42319
  yKeys = _ref.yKeys,
42328
- conditionalFormattingRules = _ref.conditionalFormattingRules,
42329
- theme = _ref.theme;
42320
+ theme = _ref.theme,
42321
+ items = _ref.items;
42330
42322
  var tooltipRef = React.useRef(null);
42331
42323
  var _useState = React.useState({
42332
42324
  left: tooltipLeft
@@ -42375,7 +42367,7 @@ var Tooltip$1 = function Tooltip(_ref) {
42375
42367
  fontSize: '15px',
42376
42368
  width: '100%',
42377
42369
  minWidth: MIN_TOOLTIP_WIDTH
42378
- }, ";label:Tooltip;", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXlGK0IiLCJmaWxlIjoiVG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgQ1NTUHJvcGVydGllcywgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY3JlYXRlUG9ydGFsIH0gZnJvbSAncmVhY3QtZG9tJztcblxuaW1wb3J0IHsgZ2V0Q29sb3IgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBMZWdlbmRJdGVtQm94IH0gZnJvbSAnLi4vTGVnZW5kL0xlZ2VuZEl0ZW1Cb3gnO1xuaW1wb3J0IHsgU2hhcGVEZWZpbml0aW9uLCBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlLCBEYXRhSXRlbSwgS2V5IH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBMaW5lU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9MaW5lQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBCYXJTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQXJlYVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQXJlYUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY3NzJztcblxuY29uc3QgTUlOX1RPT0xUSVBfV0lEVEggPSAxODA7XG5jb25zdCBUT09MVElQX09GRlNFVCA9IDIwO1xuY29uc3QgU0NST0xMQkFSX1dJRFRIID0gNDA7XG5pbnRlcmZhY2UgVG9vbHRpcFByb3BzPFQ+IHtcbiAgICBrZXlzOiB7IFtrZXk6IHN0cmluZ106IEtleSB9O1xuICAgIGxlZ2VuZEl0ZW1zOiBBcnJheTxTaGFwZURlZmluaXRpb248VD4+O1xuICAgIHNob3dSb3VuZGVkVG90YWw6IGJvb2xlYW47XG4gICAgdG9vbHRpcERhdGE6IHtcbiAgICAgICAgW2tleUlkOiBzdHJpbmddOiBEYXRhSXRlbTtcbiAgICB9O1xuICAgIHRvb2x0aXBMZWZ0OiBudW1iZXI7XG4gICAgdG9vbHRpcFRvcDogbnVtYmVyO1xuICAgIHZpc2libGVZS2V5czogc3RyaW5nW107XG4gICAgeEtleTogc3RyaW5nO1xuICAgIHlLZXlzOiBzdHJpbmdbXTtcbiAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQXJyYXk8Q29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZT47XG4gICAgdGhlbWU6IENTU1Byb3BlcnRpZXM7XG59XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwID0gKHtcbiAgICBrZXlzLFxuICAgIGxlZ2VuZEl0ZW1zLFxuICAgIHNob3dSb3VuZGVkVG90YWwsXG4gICAgdG9vbHRpcERhdGEsXG4gICAgdG9vbHRpcExlZnQsXG4gICAgdG9vbHRpcFRvcCxcbiAgICB2aXNpYmxlWUtleXMsXG4gICAgeEtleSxcbiAgICB5S2V5cyxcbiAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcyxcbiAgICB0aGVtZSxcbn06IFRvb2x0aXBQcm9wczxMaW5lU3R5bGVzIHwgQmFyU3R5bGVzIHwgQXJlYVN0eWxlcz4pID0+IHtcbiAgICBjb25zdCB0b29sdGlwUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgICBjb25zdCBbcG9zaXRpb24sIHNldFBvc2l0aW9uXSA9IHVzZVN0YXRlPHsgbGVmdDogbnVtYmVyIH0+KHtcbiAgICAgICAgbGVmdDogdG9vbHRpcExlZnQsXG4gICAgfSk7XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBjb25zdCBhZGp1c3RUb29sdGlwUG9zaXRpb24gPSAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0b29sdGlwRWxlbWVudCA9IHRvb2x0aXBSZWYuY3VycmVudDtcblxuICAgICAgICAgICAgaWYgKHRvb2x0aXBFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2NyZWVuV2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aDtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHJlY3QgPSB0b29sdGlwRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgICAgICAgICAgICAgIGxldCB3aWR0aCA9IHJlY3Qud2lkdGg7XG5cbiAgICAgICAgICAgICAgICBpZiAod2lkdGggPCBNSU5fVE9PTFRJUF9XSURUSCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aCA9IE1JTl9UT09MVElQX1dJRFRIO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxldCBsZWZ0ID0gdG9vbHRpcExlZnQgKyBUT09MVElQX09GRlNFVDtcblxuICAgICAgICAgICAgICAgIGlmICh0b29sdGlwTGVmdCArIHdpZHRoID4gc2NyZWVuV2lkdGggLSBTQ1JPTExCQVJfV0lEVEgpIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IHRvb2x0aXBMZWZ0IC0gd2lkdGggLSBUT09MVElQX09GRlNFVDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzZXRQb3NpdGlvbih7IGxlZnQgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAgICAgYWRqdXN0VG9vbHRpcFBvc2l0aW9uKCk7XG4gICAgfSwgW3Rvb2x0aXBMZWZ0XSk7XG5cbiAgICByZXR1cm4gY3JlYXRlUG9ydGFsKFxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICByZWY9e3Rvb2x0aXBSZWZ9XG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICAgICAgICAgIGxlZnQ6IHBvc2l0aW9uLmxlZnQsXG4gICAgICAgICAgICAgICAgdG9wOiB0b29sdGlwVG9wLFxuICAgICAgICAgICAgICAgIHpJbmRleDogMjE0NzQ4MzY0NyAqIDEwLFxuICAgICAgICAgICAgICAgIC4uLnRoZW1lLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBzdHlsZT17eyB3b3JkQnJlYWs6ICdicmVhay1hbGwnIH19PlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjc3Moe1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbGluZUhlaWdodDogJ2luaGVyaXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyU3BhY2luZzogJ2luaGVyaXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogJ2JvbGQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udFNpemU6ICcxNXB4JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW5XaWR0aDogTUlOX1RPT0xUSVBfV0lEVEgsXG4gICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3Rvb2x0aXBEYXRhW3hLZXldLmZvcm1hdHRlZFZhbHVlID8/IHRvb2x0aXBEYXRhW3hLZXldLnZhbHVlfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDx0YWJsZVxuICAgICAgICAgICAgICAgICAgICBjZWxsUGFkZGluZz17MH1cbiAgICAgICAgICAgICAgICAgICAgY2VsbFNwYWNpbmc9ezB9XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogJzAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyU3BhY2luZzogJzAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyQ29sbGFwc2U6ICdpbmhlcml0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogJ25vbmUnLFxuICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtsZWdlbmRJdGVtcy5tYXAoKGxlZ2VuZEl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldIHx8IHRvb2x0aXBEYXRhW2xlZ2VuZEl0ZW0ueUtleV0udmFsdWUgPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8geUtleSBjb3VsZCBub3QgYmUgZm91bmQgaW4gdG9vbHRpcERhdGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpc2libGVZS2V5cy5pbmNsdWRlcyhsZWdlbmRJdGVtLnlLZXkpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBrZXk9e2xlZ2VuZEl0ZW0ueUtleX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbEFsaWduOiAnbWlkZGxlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IGluZGV4ID09PSAwID8gJzEycHggOHB4IDAgMCcgOiAnOHB4IDhweCAwIDAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICdhdXRvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMZWdlbmRJdGVtQm94XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcj17Z2V0Q29sb3Ioe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRDb2xvcjogbGVnZW5kSXRlbS5jb2xvcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogdG9vbHRpcERhdGFbbGVnZW5kSXRlbS55S2V5XS52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB5S2V5OiBsZWdlbmRJdGVtLnlLZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXtsZWdlbmRJdGVtLnN0eWxlIGFzIExpbmVTdHlsZXN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB5S2V5PXtsZWdlbmRJdGVtLnlLZXl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgcGFkZGluZzogJzhweCAwIDAgMCcgfX0+e2tleXNbbGVnZW5kSXRlbS55S2V5XS5rZXlGb3JtYXR0ZWR9PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgZm9udFdlaWdodDogJ2JvbGQnLCBwYWRkaW5nOiAnOHB4IDAgMCAxNnB4JyB9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3Rvb2x0aXBEYXRhW2xlZ2VuZEl0ZW0ueUtleV0uZm9ybWF0dGVkVmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gdG9vbHRpcERhdGFbbGVnZW5kSXRlbS55S2V5XS5mb3JtYXR0ZWRWYWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiB0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICB7c2hvd1JvdW5kZWRUb3RhbCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY29sU3Bhbj17Mn0gc3R5bGU9e3sgcGFkZGluZzogJzEycHggMCAwIDAnIH19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUm91bmRlZCBUb3RhbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgZm9udFdlaWdodDogJ2JvbGQnLCBwYWRkaW5nOiAnMTJweCAwIDAgMTZweCcgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eUtleXMucmVkdWNlKCh0b3RhbCwga2V5KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRvdGFsICsgTWF0aC5yb3VuZCh0b29sdGlwRGF0YVtrZXldLnZhbHVlIGFzIG51bWJlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAwKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PixcbiAgICAgICAgZG9jdW1lbnQuYm9keVxuICAgICk7XG59O1xuIl19 */"),
42370
+ }, ";label:Tooltip;", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBGcUIiLCJmaWxlIjoiVG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgQ1NTUHJvcGVydGllcywgRnJhZ21lbnQsIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNyZWF0ZVBvcnRhbCB9IGZyb20gJ3JlYWN0LWRvbSc7XG5cbmltcG9ydCB7IGdldENvbG9yIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgTGVnZW5kSXRlbUJveCB9IGZyb20gJy4uL0xlZ2VuZC9MZWdlbmRJdGVtQm94JztcbmltcG9ydCB7IFNoYXBlRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgRGF0YUl0ZW0sIEtleSB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgTGluZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvTGluZUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEFyZWFTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0FyZWFDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5cbmNvbnN0IE1JTl9UT09MVElQX1dJRFRIID0gMTgwO1xuY29uc3QgVE9PTFRJUF9PRkZTRVQgPSAyMDtcbmNvbnN0IFNDUk9MTEJBUl9XSURUSCA9IDQwO1xuXG5pbnRlcmZhY2UgVG9vbHRpcFByb3BzPFQ+IHtcbiAga2V5czogeyBba2V5OiBzdHJpbmddOiBLZXkgfTtcbiAgc2hvd1JvdW5kZWRUb3RhbDogYm9vbGVhbjtcbiAgdG9vbHRpcERhdGE6IHtcbiAgICBba2V5SWQ6IHN0cmluZ106IERhdGFJdGVtO1xuICB9O1xuICB0b29sdGlwTGVmdDogbnVtYmVyO1xuICB0b29sdGlwVG9wOiBudW1iZXI7XG4gIHhLZXk6IHN0cmluZztcbiAgeUtleXM6IHN0cmluZ1tdO1xuICBpdGVtczoge1xuICAgIGxlZ2VuZEl0ZW1zOiBBcnJheTxTaGFwZURlZmluaXRpb248VD4+O1xuICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBBcnJheTxDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlPjtcbiAgICB2aXNpYmxlWUtleXM6IHN0cmluZ1tdO1xuICB9W107XG4gIHRoZW1lOiBDU1NQcm9wZXJ0aWVzO1xufVxuXG5leHBvcnQgY29uc3QgVG9vbHRpcCA9ICh7XG4gIGtleXMsXG4gIHNob3dSb3VuZGVkVG90YWwsXG4gIHRvb2x0aXBEYXRhLFxuICB0b29sdGlwTGVmdCxcbiAgdG9vbHRpcFRvcCxcbiAgeEtleSxcbiAgeUtleXMsXG4gIHRoZW1lLFxuICBpdGVtcyxcbn06IFRvb2x0aXBQcm9wczxMaW5lU3R5bGVzIHwgQmFyU3R5bGVzIHwgQXJlYVN0eWxlcz4pID0+IHtcbiAgY29uc3QgdG9vbHRpcFJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IFtwb3NpdGlvbiwgc2V0UG9zaXRpb25dID0gdXNlU3RhdGU8eyBsZWZ0OiBudW1iZXIgfT4oe1xuICAgIGxlZnQ6IHRvb2x0aXBMZWZ0LFxuICB9KTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGFkanVzdFRvb2x0aXBQb3NpdGlvbiA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHRvb2x0aXBFbGVtZW50ID0gdG9vbHRpcFJlZi5jdXJyZW50O1xuXG4gICAgICBpZiAodG9vbHRpcEVsZW1lbnQpIHtcbiAgICAgICAgY29uc3Qgc2NyZWVuV2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aDtcblxuICAgICAgICBjb25zdCByZWN0ID0gdG9vbHRpcEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgbGV0IHdpZHRoID0gcmVjdC53aWR0aDtcblxuICAgICAgICBpZiAod2lkdGggPCBNSU5fVE9PTFRJUF9XSURUSCkge1xuICAgICAgICAgIHdpZHRoID0gTUlOX1RPT0xUSVBfV0lEVEg7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgbGVmdCA9IHRvb2x0aXBMZWZ0ICsgVE9PTFRJUF9PRkZTRVQ7XG5cbiAgICAgICAgaWYgKHRvb2x0aXBMZWZ0ICsgd2lkdGggPiBzY3JlZW5XaWR0aCAtIFNDUk9MTEJBUl9XSURUSCkge1xuICAgICAgICAgIGxlZnQgPSB0b29sdGlwTGVmdCAtIHdpZHRoIC0gVE9PTFRJUF9PRkZTRVQ7XG4gICAgICAgIH1cblxuICAgICAgICBzZXRQb3NpdGlvbih7IGxlZnQgfSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIGFkanVzdFRvb2x0aXBQb3NpdGlvbigpO1xuICB9LCBbdG9vbHRpcExlZnRdKTtcblxuICByZXR1cm4gY3JlYXRlUG9ydGFsKFxuICAgIDxkaXZcbiAgICAgIHJlZj17dG9vbHRpcFJlZn1cbiAgICAgIHN0eWxlPXt7XG4gICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICBsZWZ0OiBwb3NpdGlvbi5sZWZ0LFxuICAgICAgICB0b3A6IHRvb2x0aXBUb3AsXG4gICAgICAgIHpJbmRleDogMjE0NzQ4MzY0NyAqIDEwLFxuICAgICAgICAuLi50aGVtZSxcbiAgICAgIH19XG4gICAgPlxuICAgICAgPGRpdiBzdHlsZT17eyB3b3JkQnJlYWs6ICdicmVhay1hbGwnIH19PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3NOYW1lPXtjc3Moe1xuICAgICAgICAgICAgZm9udEZhbWlseTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgbGluZUhlaWdodDogJ2luaGVyaXQnLFxuICAgICAgICAgICAgbGV0dGVyU3BhY2luZzogJ2luaGVyaXQnLFxuICAgICAgICAgICAgZm9udFdlaWdodDogJ2JvbGQnLFxuICAgICAgICAgICAgZm9udFNpemU6ICcxNXB4JyxcbiAgICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgICBtaW5XaWR0aDogTUlOX1RPT0xUSVBfV0lEVEgsXG4gICAgICAgICAgfSl9XG4gICAgICAgID5cbiAgICAgICAgICB7dG9vbHRpcERhdGFbeEtleV0uZm9ybWF0dGVkVmFsdWUgPz8gdG9vbHRpcERhdGFbeEtleV0udmFsdWV9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8dGFibGVcbiAgICAgICAgICBjZWxsUGFkZGluZz17MH1cbiAgICAgICAgICBjZWxsU3BhY2luZz17MH1cbiAgICAgICAgICBjbGFzc05hbWU9e2Nzcyh7XG4gICAgICAgICAgICBtYXJnaW46ICcwJyxcbiAgICAgICAgICAgIGJvcmRlclNwYWNpbmc6ICcwJyxcbiAgICAgICAgICAgIGJvcmRlckNvbGxhcHNlOiAnaW5oZXJpdCcsXG4gICAgICAgICAgICBib3JkZXI6ICdub25lJyxcbiAgICAgICAgICB9KX1cbiAgICAgICAgPlxuICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgIHtpdGVtcy5tYXAoKGl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgPEZyYWdtZW50IGtleT17aW5kZXh9PlxuICAgICAgICAgICAgICAgICAge2l0ZW0ubGVnZW5kSXRlbXM/Lm1hcCgobGVnZW5kSXRlbSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCF0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldIHx8IHRvb2x0aXBEYXRhW2xlZ2VuZEl0ZW0ueUtleV0udmFsdWUgPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAvLyB5S2V5IGNvdWxkIG5vdCBiZSBmb3VuZCBpbiB0b29sdGlwRGF0YVxuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgaXRlbS52aXNpYmxlWUtleXM/LmluY2x1ZGVzKGxlZ2VuZEl0ZW0ueUtleSkgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGtleT17bGVnZW5kSXRlbS55S2V5fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsQWxpZ246ICdtaWRkbGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogaW5kZXggPT09IDAgPyAnMTJweCA4cHggMCAwJyA6ICc4cHggOHB4IDAgMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogJ2F1dG8nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGVnZW5kSXRlbUJveFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I9e2dldENvbG9yKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdENvbG9yOiBsZWdlbmRJdGVtLmNvbG9yLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogdG9vbHRpcERhdGFbbGVnZW5kSXRlbS55S2V5XS52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUtleTogbGVnZW5kSXRlbS55S2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogaXRlbS5jb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcyA/PyBbXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e2xlZ2VuZEl0ZW0uc3R5bGUgYXMgTGluZVN0eWxlc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHlLZXk9e2xlZ2VuZEl0ZW0ueUtleX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgcGFkZGluZzogJzhweCAwIDAgMCcgfX0+e2tleXNbbGVnZW5kSXRlbS55S2V5XS5rZXlGb3JtYXR0ZWR9PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPXt7IGZvbnRXZWlnaHQ6ICdib2xkJywgcGFkZGluZzogJzhweCAwIDAgMTZweCcgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3Rvb2x0aXBEYXRhW2xlZ2VuZEl0ZW0ueUtleV0uZm9ybWF0dGVkVmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gdG9vbHRpcERhdGFbbGVnZW5kSXRlbS55S2V5XS5mb3JtYXR0ZWRWYWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiB0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICA8L0ZyYWdtZW50PlxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSl9XG5cbiAgICAgICAgICAgIHtzaG93Um91bmRlZFRvdGFsICYmIChcbiAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgIDx0ZCBjb2xTcGFuPXsyfSBzdHlsZT17eyBwYWRkaW5nOiAnMTJweCAwIDAgMCcgfX0+XG4gICAgICAgICAgICAgICAgICBSb3VuZGVkIFRvdGFsXG4gICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgZm9udFdlaWdodDogJ2JvbGQnLCBwYWRkaW5nOiAnMTJweCAwIDAgMTZweCcgfX0+XG4gICAgICAgICAgICAgICAgICB7eUtleXMucmVkdWNlKCh0b3RhbCwga2V5KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0b3RhbCArIE1hdGgucm91bmQodG9vbHRpcERhdGFba2V5XS52YWx1ZSBhcyBudW1iZXIpO1xuICAgICAgICAgICAgICAgICAgfSwgMCl9XG4gICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgPC90YWJsZT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PixcbiAgICBkb2N1bWVudC5ib2R5XG4gICk7XG59O1xuIl19 */"),
42379
42371
  children: (_tooltipData$xKey$for = tooltipData[xKey].formattedValue) != null ? _tooltipData$xKey$for : tooltipData[xKey].value
42380
42372
  }), jsxRuntime.jsx("table", {
42381
42373
  cellPadding: 0,
@@ -42383,45 +42375,51 @@ var Tooltip$1 = function Tooltip(_ref) {
42383
42375
  className: /*#__PURE__*/css$1.css( {
42384
42376
  name: "9a1sa-Tooltip",
42385
42377
  styles: "margin:0;border-spacing:0;border-collapse:inherit;border:none;label:Tooltip;",
42386
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXdHK0IiLCJmaWxlIjoiVG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgQ1NTUHJvcGVydGllcywgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY3JlYXRlUG9ydGFsIH0gZnJvbSAncmVhY3QtZG9tJztcblxuaW1wb3J0IHsgZ2V0Q29sb3IgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBMZWdlbmRJdGVtQm94IH0gZnJvbSAnLi4vTGVnZW5kL0xlZ2VuZEl0ZW1Cb3gnO1xuaW1wb3J0IHsgU2hhcGVEZWZpbml0aW9uLCBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlLCBEYXRhSXRlbSwgS2V5IH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBMaW5lU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9MaW5lQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBCYXJTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQXJlYVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQXJlYUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY3NzJztcblxuY29uc3QgTUlOX1RPT0xUSVBfV0lEVEggPSAxODA7XG5jb25zdCBUT09MVElQX09GRlNFVCA9IDIwO1xuY29uc3QgU0NST0xMQkFSX1dJRFRIID0gNDA7XG5pbnRlcmZhY2UgVG9vbHRpcFByb3BzPFQ+IHtcbiAgICBrZXlzOiB7IFtrZXk6IHN0cmluZ106IEtleSB9O1xuICAgIGxlZ2VuZEl0ZW1zOiBBcnJheTxTaGFwZURlZmluaXRpb248VD4+O1xuICAgIHNob3dSb3VuZGVkVG90YWw6IGJvb2xlYW47XG4gICAgdG9vbHRpcERhdGE6IHtcbiAgICAgICAgW2tleUlkOiBzdHJpbmddOiBEYXRhSXRlbTtcbiAgICB9O1xuICAgIHRvb2x0aXBMZWZ0OiBudW1iZXI7XG4gICAgdG9vbHRpcFRvcDogbnVtYmVyO1xuICAgIHZpc2libGVZS2V5czogc3RyaW5nW107XG4gICAgeEtleTogc3RyaW5nO1xuICAgIHlLZXlzOiBzdHJpbmdbXTtcbiAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQXJyYXk8Q29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZT47XG4gICAgdGhlbWU6IENTU1Byb3BlcnRpZXM7XG59XG5cbmV4cG9ydCBjb25zdCBUb29sdGlwID0gKHtcbiAgICBrZXlzLFxuICAgIGxlZ2VuZEl0ZW1zLFxuICAgIHNob3dSb3VuZGVkVG90YWwsXG4gICAgdG9vbHRpcERhdGEsXG4gICAgdG9vbHRpcExlZnQsXG4gICAgdG9vbHRpcFRvcCxcbiAgICB2aXNpYmxlWUtleXMsXG4gICAgeEtleSxcbiAgICB5S2V5cyxcbiAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcyxcbiAgICB0aGVtZSxcbn06IFRvb2x0aXBQcm9wczxMaW5lU3R5bGVzIHwgQmFyU3R5bGVzIHwgQXJlYVN0eWxlcz4pID0+IHtcbiAgICBjb25zdCB0b29sdGlwUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgICBjb25zdCBbcG9zaXRpb24sIHNldFBvc2l0aW9uXSA9IHVzZVN0YXRlPHsgbGVmdDogbnVtYmVyIH0+KHtcbiAgICAgICAgbGVmdDogdG9vbHRpcExlZnQsXG4gICAgfSk7XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBjb25zdCBhZGp1c3RUb29sdGlwUG9zaXRpb24gPSAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0b29sdGlwRWxlbWVudCA9IHRvb2x0aXBSZWYuY3VycmVudDtcblxuICAgICAgICAgICAgaWYgKHRvb2x0aXBFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2NyZWVuV2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aDtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHJlY3QgPSB0b29sdGlwRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgICAgICAgICAgICAgIGxldCB3aWR0aCA9IHJlY3Qud2lkdGg7XG5cbiAgICAgICAgICAgICAgICBpZiAod2lkdGggPCBNSU5fVE9PTFRJUF9XSURUSCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aCA9IE1JTl9UT09MVElQX1dJRFRIO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxldCBsZWZ0ID0gdG9vbHRpcExlZnQgKyBUT09MVElQX09GRlNFVDtcblxuICAgICAgICAgICAgICAgIGlmICh0b29sdGlwTGVmdCArIHdpZHRoID4gc2NyZWVuV2lkdGggLSBTQ1JPTExCQVJfV0lEVEgpIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IHRvb2x0aXBMZWZ0IC0gd2lkdGggLSBUT09MVElQX09GRlNFVDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzZXRQb3NpdGlvbih7IGxlZnQgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAgICAgYWRqdXN0VG9vbHRpcFBvc2l0aW9uKCk7XG4gICAgfSwgW3Rvb2x0aXBMZWZ0XSk7XG5cbiAgICByZXR1cm4gY3JlYXRlUG9ydGFsKFxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICByZWY9e3Rvb2x0aXBSZWZ9XG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICAgICAgICAgIGxlZnQ6IHBvc2l0aW9uLmxlZnQsXG4gICAgICAgICAgICAgICAgdG9wOiB0b29sdGlwVG9wLFxuICAgICAgICAgICAgICAgIHpJbmRleDogMjE0NzQ4MzY0NyAqIDEwLFxuICAgICAgICAgICAgICAgIC4uLnRoZW1lLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBzdHlsZT17eyB3b3JkQnJlYWs6ICdicmVhay1hbGwnIH19PlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjc3Moe1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbGluZUhlaWdodDogJ2luaGVyaXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyU3BhY2luZzogJ2luaGVyaXQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogJ2JvbGQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udFNpemU6ICcxNXB4JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW5XaWR0aDogTUlOX1RPT0xUSVBfV0lEVEgsXG4gICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3Rvb2x0aXBEYXRhW3hLZXldLmZvcm1hdHRlZFZhbHVlID8/IHRvb2x0aXBEYXRhW3hLZXldLnZhbHVlfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDx0YWJsZVxuICAgICAgICAgICAgICAgICAgICBjZWxsUGFkZGluZz17MH1cbiAgICAgICAgICAgICAgICAgICAgY2VsbFNwYWNpbmc9ezB9XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y3NzKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogJzAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyU3BhY2luZzogJzAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyQ29sbGFwc2U6ICdpbmhlcml0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogJ25vbmUnLFxuICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtsZWdlbmRJdGVtcy5tYXAoKGxlZ2VuZEl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldIHx8IHRvb2x0aXBEYXRhW2xlZ2VuZEl0ZW0ueUtleV0udmFsdWUgPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8geUtleSBjb3VsZCBub3QgYmUgZm91bmQgaW4gdG9vbHRpcERhdGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpc2libGVZS2V5cy5pbmNsdWRlcyhsZWdlbmRJdGVtLnlLZXkpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBrZXk9e2xlZ2VuZEl0ZW0ueUtleX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbEFsaWduOiAnbWlkZGxlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IGluZGV4ID09PSAwID8gJzEycHggOHB4IDAgMCcgOiAnOHB4IDhweCAwIDAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICdhdXRvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMZWdlbmRJdGVtQm94XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcj17Z2V0Q29sb3Ioe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRDb2xvcjogbGVnZW5kSXRlbS5jb2xvcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogdG9vbHRpcERhdGFbbGVnZW5kSXRlbS55S2V5XS52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB5S2V5OiBsZWdlbmRJdGVtLnlLZXksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXtsZWdlbmRJdGVtLnN0eWxlIGFzIExpbmVTdHlsZXN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB5S2V5PXtsZWdlbmRJdGVtLnlLZXl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgcGFkZGluZzogJzhweCAwIDAgMCcgfX0+e2tleXNbbGVnZW5kSXRlbS55S2V5XS5rZXlGb3JtYXR0ZWR9PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgZm9udFdlaWdodDogJ2JvbGQnLCBwYWRkaW5nOiAnOHB4IDAgMCAxNnB4JyB9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3Rvb2x0aXBEYXRhW2xlZ2VuZEl0ZW0ueUtleV0uZm9ybWF0dGVkVmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gdG9vbHRpcERhdGFbbGVnZW5kSXRlbS55S2V5XS5mb3JtYXR0ZWRWYWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiB0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICB7c2hvd1JvdW5kZWRUb3RhbCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY29sU3Bhbj17Mn0gc3R5bGU9e3sgcGFkZGluZzogJzEycHggMCAwIDAnIH19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUm91bmRlZCBUb3RhbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgZm9udFdlaWdodDogJ2JvbGQnLCBwYWRkaW5nOiAnMTJweCAwIDAgMTZweCcgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eUtleXMucmVkdWNlKCh0b3RhbCwga2V5KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRvdGFsICsgTWF0aC5yb3VuZCh0b29sdGlwRGF0YVtrZXldLnZhbHVlIGFzIG51bWJlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAwKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PixcbiAgICAgICAgZG9jdW1lbnQuYm9keVxuICAgICk7XG59O1xuIl19 */",
42378
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRvb2x0aXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXlHcUIiLCJmaWxlIjoiVG9vbHRpcC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgQ1NTUHJvcGVydGllcywgRnJhZ21lbnQsIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNyZWF0ZVBvcnRhbCB9IGZyb20gJ3JlYWN0LWRvbSc7XG5cbmltcG9ydCB7IGdldENvbG9yIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgTGVnZW5kSXRlbUJveCB9IGZyb20gJy4uL0xlZ2VuZC9MZWdlbmRJdGVtQm94JztcbmltcG9ydCB7IFNoYXBlRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgRGF0YUl0ZW0sIEtleSB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgTGluZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvTGluZUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEFyZWFTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0FyZWFDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5cbmNvbnN0IE1JTl9UT09MVElQX1dJRFRIID0gMTgwO1xuY29uc3QgVE9PTFRJUF9PRkZTRVQgPSAyMDtcbmNvbnN0IFNDUk9MTEJBUl9XSURUSCA9IDQwO1xuXG5pbnRlcmZhY2UgVG9vbHRpcFByb3BzPFQ+IHtcbiAga2V5czogeyBba2V5OiBzdHJpbmddOiBLZXkgfTtcbiAgc2hvd1JvdW5kZWRUb3RhbDogYm9vbGVhbjtcbiAgdG9vbHRpcERhdGE6IHtcbiAgICBba2V5SWQ6IHN0cmluZ106IERhdGFJdGVtO1xuICB9O1xuICB0b29sdGlwTGVmdDogbnVtYmVyO1xuICB0b29sdGlwVG9wOiBudW1iZXI7XG4gIHhLZXk6IHN0cmluZztcbiAgeUtleXM6IHN0cmluZ1tdO1xuICBpdGVtczoge1xuICAgIGxlZ2VuZEl0ZW1zOiBBcnJheTxTaGFwZURlZmluaXRpb248VD4+O1xuICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBBcnJheTxDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlPjtcbiAgICB2aXNpYmxlWUtleXM6IHN0cmluZ1tdO1xuICB9W107XG4gIHRoZW1lOiBDU1NQcm9wZXJ0aWVzO1xufVxuXG5leHBvcnQgY29uc3QgVG9vbHRpcCA9ICh7XG4gIGtleXMsXG4gIHNob3dSb3VuZGVkVG90YWwsXG4gIHRvb2x0aXBEYXRhLFxuICB0b29sdGlwTGVmdCxcbiAgdG9vbHRpcFRvcCxcbiAgeEtleSxcbiAgeUtleXMsXG4gIHRoZW1lLFxuICBpdGVtcyxcbn06IFRvb2x0aXBQcm9wczxMaW5lU3R5bGVzIHwgQmFyU3R5bGVzIHwgQXJlYVN0eWxlcz4pID0+IHtcbiAgY29uc3QgdG9vbHRpcFJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IFtwb3NpdGlvbiwgc2V0UG9zaXRpb25dID0gdXNlU3RhdGU8eyBsZWZ0OiBudW1iZXIgfT4oe1xuICAgIGxlZnQ6IHRvb2x0aXBMZWZ0LFxuICB9KTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGFkanVzdFRvb2x0aXBQb3NpdGlvbiA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHRvb2x0aXBFbGVtZW50ID0gdG9vbHRpcFJlZi5jdXJyZW50O1xuXG4gICAgICBpZiAodG9vbHRpcEVsZW1lbnQpIHtcbiAgICAgICAgY29uc3Qgc2NyZWVuV2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aDtcblxuICAgICAgICBjb25zdCByZWN0ID0gdG9vbHRpcEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgbGV0IHdpZHRoID0gcmVjdC53aWR0aDtcblxuICAgICAgICBpZiAod2lkdGggPCBNSU5fVE9PTFRJUF9XSURUSCkge1xuICAgICAgICAgIHdpZHRoID0gTUlOX1RPT0xUSVBfV0lEVEg7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgbGVmdCA9IHRvb2x0aXBMZWZ0ICsgVE9PTFRJUF9PRkZTRVQ7XG5cbiAgICAgICAgaWYgKHRvb2x0aXBMZWZ0ICsgd2lkdGggPiBzY3JlZW5XaWR0aCAtIFNDUk9MTEJBUl9XSURUSCkge1xuICAgICAgICAgIGxlZnQgPSB0b29sdGlwTGVmdCAtIHdpZHRoIC0gVE9PTFRJUF9PRkZTRVQ7XG4gICAgICAgIH1cblxuICAgICAgICBzZXRQb3NpdGlvbih7IGxlZnQgfSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIGFkanVzdFRvb2x0aXBQb3NpdGlvbigpO1xuICB9LCBbdG9vbHRpcExlZnRdKTtcblxuICByZXR1cm4gY3JlYXRlUG9ydGFsKFxuICAgIDxkaXZcbiAgICAgIHJlZj17dG9vbHRpcFJlZn1cbiAgICAgIHN0eWxlPXt7XG4gICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICBsZWZ0OiBwb3NpdGlvbi5sZWZ0LFxuICAgICAgICB0b3A6IHRvb2x0aXBUb3AsXG4gICAgICAgIHpJbmRleDogMjE0NzQ4MzY0NyAqIDEwLFxuICAgICAgICAuLi50aGVtZSxcbiAgICAgIH19XG4gICAgPlxuICAgICAgPGRpdiBzdHlsZT17eyB3b3JkQnJlYWs6ICdicmVhay1hbGwnIH19PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3NOYW1lPXtjc3Moe1xuICAgICAgICAgICAgZm9udEZhbWlseTogJ2luaGVyaXQnLFxuICAgICAgICAgICAgbGluZUhlaWdodDogJ2luaGVyaXQnLFxuICAgICAgICAgICAgbGV0dGVyU3BhY2luZzogJ2luaGVyaXQnLFxuICAgICAgICAgICAgZm9udFdlaWdodDogJ2JvbGQnLFxuICAgICAgICAgICAgZm9udFNpemU6ICcxNXB4JyxcbiAgICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgICBtaW5XaWR0aDogTUlOX1RPT0xUSVBfV0lEVEgsXG4gICAgICAgICAgfSl9XG4gICAgICAgID5cbiAgICAgICAgICB7dG9vbHRpcERhdGFbeEtleV0uZm9ybWF0dGVkVmFsdWUgPz8gdG9vbHRpcERhdGFbeEtleV0udmFsdWV9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8dGFibGVcbiAgICAgICAgICBjZWxsUGFkZGluZz17MH1cbiAgICAgICAgICBjZWxsU3BhY2luZz17MH1cbiAgICAgICAgICBjbGFzc05hbWU9e2Nzcyh7XG4gICAgICAgICAgICBtYXJnaW46ICcwJyxcbiAgICAgICAgICAgIGJvcmRlclNwYWNpbmc6ICcwJyxcbiAgICAgICAgICAgIGJvcmRlckNvbGxhcHNlOiAnaW5oZXJpdCcsXG4gICAgICAgICAgICBib3JkZXI6ICdub25lJyxcbiAgICAgICAgICB9KX1cbiAgICAgICAgPlxuICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgIHtpdGVtcy5tYXAoKGl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgPEZyYWdtZW50IGtleT17aW5kZXh9PlxuICAgICAgICAgICAgICAgICAge2l0ZW0ubGVnZW5kSXRlbXM/Lm1hcCgobGVnZW5kSXRlbSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCF0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldIHx8IHRvb2x0aXBEYXRhW2xlZ2VuZEl0ZW0ueUtleV0udmFsdWUgPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAvLyB5S2V5IGNvdWxkIG5vdCBiZSBmb3VuZCBpbiB0b29sdGlwRGF0YVxuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgaXRlbS52aXNpYmxlWUtleXM/LmluY2x1ZGVzKGxlZ2VuZEl0ZW0ueUtleSkgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGtleT17bGVnZW5kSXRlbS55S2V5fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsQWxpZ246ICdtaWRkbGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogaW5kZXggPT09IDAgPyAnMTJweCA4cHggMCAwJyA6ICc4cHggOHB4IDAgMCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogJ2F1dG8nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGVnZW5kSXRlbUJveFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I9e2dldENvbG9yKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdENvbG9yOiBsZWdlbmRJdGVtLmNvbG9yLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogdG9vbHRpcERhdGFbbGVnZW5kSXRlbS55S2V5XS52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUtleTogbGVnZW5kSXRlbS55S2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogaXRlbS5jb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcyA/PyBbXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e2xlZ2VuZEl0ZW0uc3R5bGUgYXMgTGluZVN0eWxlc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHlLZXk9e2xlZ2VuZEl0ZW0ueUtleX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgcGFkZGluZzogJzhweCAwIDAgMCcgfX0+e2tleXNbbGVnZW5kSXRlbS55S2V5XS5rZXlGb3JtYXR0ZWR9PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPXt7IGZvbnRXZWlnaHQ6ICdib2xkJywgcGFkZGluZzogJzhweCAwIDAgMTZweCcgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3Rvb2x0aXBEYXRhW2xlZ2VuZEl0ZW0ueUtleV0uZm9ybWF0dGVkVmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gdG9vbHRpcERhdGFbbGVnZW5kSXRlbS55S2V5XS5mb3JtYXR0ZWRWYWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiB0b29sdGlwRGF0YVtsZWdlbmRJdGVtLnlLZXldLnZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICA8L0ZyYWdtZW50PlxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSl9XG5cbiAgICAgICAgICAgIHtzaG93Um91bmRlZFRvdGFsICYmIChcbiAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgIDx0ZCBjb2xTcGFuPXsyfSBzdHlsZT17eyBwYWRkaW5nOiAnMTJweCAwIDAgMCcgfX0+XG4gICAgICAgICAgICAgICAgICBSb3VuZGVkIFRvdGFsXG4gICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICA8dGQgc3R5bGU9e3sgZm9udFdlaWdodDogJ2JvbGQnLCBwYWRkaW5nOiAnMTJweCAwIDAgMTZweCcgfX0+XG4gICAgICAgICAgICAgICAgICB7eUtleXMucmVkdWNlKCh0b3RhbCwga2V5KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0b3RhbCArIE1hdGgucm91bmQodG9vbHRpcERhdGFba2V5XS52YWx1ZSBhcyBudW1iZXIpO1xuICAgICAgICAgICAgICAgICAgfSwgMCl9XG4gICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgPC90YWJsZT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PixcbiAgICBkb2N1bWVudC5ib2R5XG4gICk7XG59O1xuIl19 */",
42387
42379
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
42388
42380
  }),
42389
42381
  children: jsxRuntime.jsxs("tbody", {
42390
- children: [legendItems.map(function (legendItem, index) {
42391
- if (!tooltipData[legendItem.yKey] || tooltipData[legendItem.yKey].value === null) {
42392
- // yKey could not be found in tooltipData
42393
- return null;
42394
- }
42395
- return visibleYKeys.includes(legendItem.yKey) && jsxRuntime.jsxs("tr", {
42396
- children: [jsxRuntime.jsx("td", {
42397
- style: {
42398
- verticalAlign: 'middle',
42399
- padding: index === 0 ? '12px 8px 0 0' : '8px 8px 0 0',
42400
- width: 'auto'
42401
- },
42402
- children: jsxRuntime.jsx(LegendItemBox, {
42403
- color: getColor({
42404
- defaultColor: legendItem.color,
42405
- value: tooltipData[legendItem.yKey].value,
42406
- yKey: legendItem.yKey,
42407
- conditionalFormattingRules: conditionalFormattingRules
42408
- }),
42409
- style: legendItem.style,
42410
- yKey: legendItem.yKey
42411
- })
42412
- }), jsxRuntime.jsx("td", {
42413
- style: {
42414
- padding: '8px 0 0 0'
42415
- },
42416
- children: keys[legendItem.yKey].keyFormatted
42417
- }), jsxRuntime.jsx("td", {
42418
- style: {
42419
- fontWeight: 'bold',
42420
- padding: '8px 0 0 16px'
42421
- },
42422
- children: tooltipData[legendItem.yKey].formattedValue ? tooltipData[legendItem.yKey].formattedValue : tooltipData[legendItem.yKey].value
42423
- })]
42424
- }, legendItem.yKey);
42382
+ children: [items.map(function (item, index) {
42383
+ var _item$legendItems;
42384
+ return jsxRuntime.jsx(React.Fragment, {
42385
+ children: (_item$legendItems = item.legendItems) == null ? void 0 : _item$legendItems.map(function (legendItem, index) {
42386
+ var _item$visibleYKeys, _item$conditionalForm;
42387
+ if (!tooltipData[legendItem.yKey] || tooltipData[legendItem.yKey].value === null) {
42388
+ // yKey could not be found in tooltipData
42389
+ return null;
42390
+ }
42391
+ return ((_item$visibleYKeys = item.visibleYKeys) == null ? void 0 : _item$visibleYKeys.includes(legendItem.yKey)) && jsxRuntime.jsxs("tr", {
42392
+ children: [jsxRuntime.jsx("td", {
42393
+ style: {
42394
+ verticalAlign: 'middle',
42395
+ padding: index === 0 ? '12px 8px 0 0' : '8px 8px 0 0',
42396
+ width: 'auto'
42397
+ },
42398
+ children: jsxRuntime.jsx(LegendItemBox, {
42399
+ color: getColor({
42400
+ defaultColor: legendItem.color,
42401
+ value: tooltipData[legendItem.yKey].value,
42402
+ yKey: legendItem.yKey,
42403
+ conditionalFormattingRules: (_item$conditionalForm = item.conditionalFormattingRules) != null ? _item$conditionalForm : []
42404
+ }),
42405
+ style: legendItem.style,
42406
+ yKey: legendItem.yKey
42407
+ })
42408
+ }), jsxRuntime.jsx("td", {
42409
+ style: {
42410
+ padding: '8px 0 0 0'
42411
+ },
42412
+ children: keys[legendItem.yKey].keyFormatted
42413
+ }), jsxRuntime.jsx("td", {
42414
+ style: {
42415
+ fontWeight: 'bold',
42416
+ padding: '8px 0 0 16px'
42417
+ },
42418
+ children: tooltipData[legendItem.yKey].formattedValue ? tooltipData[legendItem.yKey].formattedValue : tooltipData[legendItem.yKey].value
42419
+ })]
42420
+ }, legendItem.yKey);
42421
+ })
42422
+ }, index);
42425
42423
  }), showRoundedTotal && jsxRuntime.jsxs("tr", {
42426
42424
  children: [jsxRuntime.jsx("td", {
42427
42425
  colSpan: 2,
@@ -42535,16 +42533,14 @@ var LegendItem = function LegendItem(_ref) {
42535
42533
  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)."; }
42536
42534
  var Legend$1 = function Legend(_ref) {
42537
42535
  var keys = _ref.keys,
42538
- visibleYKeys = _ref.visibleYKeys,
42539
- legendItems = _ref.legendItems,
42540
42536
  setVisibleYKeys = _ref.setVisibleYKeys,
42541
- conditionalFormattingRules = _ref.conditionalFormattingRules,
42542
- marginLeft = _ref.marginLeft;
42537
+ marginLeft = _ref.marginLeft,
42538
+ items = _ref.items;
42543
42539
  return jsxRuntime.jsx("div", {
42544
42540
  className: /*#__PURE__*/css$1.css( {
42545
42541
  name: "qz6h7j-Legend",
42546
42542
  styles: "height:40px;padding-top:8px;label:Legend;",
42547
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxlZ2VuZC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNEJvQiIsImZpbGUiOiJMZWdlbmQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHsgTGVnZW5kSXRlbSB9IGZyb20gJy4vTGVnZW5kSXRlbSc7XG5pbXBvcnQgeyBTaGFwZURlZmluaXRpb24sIENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGUsIEtleSB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgU2Nyb2xsYmFyIH0gZnJvbSAnLi4vLi4vLi4vU2Nyb2xsYmFyL1Njcm9sbGJhcic7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9jc3MnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IExpbmVTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0xpbmVDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEFyZWFTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0FyZWFDaGFydFYyL3R5cGVzJztcblxuaW50ZXJmYWNlIExlZ2VuZFByb3BzPFQ+IHtcbiAgc2V0VmlzaWJsZVlLZXlzOiBSZWFjdC5EaXNwYXRjaDxSZWFjdC5TZXRTdGF0ZUFjdGlvbjxBcnJheTxzdHJpbmc+Pj47XG4gIHZpc2libGVZS2V5czogQXJyYXk8c3RyaW5nPjtcbiAga2V5czogeyBba2V5OiBzdHJpbmddOiBLZXkgfTtcbiAgbGVnZW5kSXRlbXM6IEFycmF5PFNoYXBlRGVmaW5pdGlvbjxUPj47XG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBBcnJheTxDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlPjtcbiAgbWFyZ2luTGVmdDogbnVtYmVyO1xufVxuXG5leHBvcnQgY29uc3QgTGVnZW5kID0gKHtcbiAga2V5cyxcbiAgdmlzaWJsZVlLZXlzLFxuICBsZWdlbmRJdGVtcyxcbiAgc2V0VmlzaWJsZVlLZXlzLFxuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcyxcbiAgbWFyZ2luTGVmdCxcbn06IExlZ2VuZFByb3BzPEJhclN0eWxlcyB8IExpbmVTdHlsZXMgfCBBcmVhU3R5bGVzPikgPT4ge1xuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtjc3MoeyBoZWlnaHQ6IDQwLCBwYWRkaW5nVG9wOiA4IH0pfT5cbiAgICAgIDxTY3JvbGxiYXJcbiAgICAgICAgY2xhc3NOYW1lPXtjc3Moe1xuICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcbiAgICAgICAgICBmbGV4V3JhcDogJ25vd3JhcCcsXG4gICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgbWFyZ2luTGVmdDogbWFyZ2luTGVmdCA/IGAke21hcmdpbkxlZnR9cHhgIDogdW5kZWZpbmVkLFxuICAgICAgICB9KX1cbiAgICAgICAgeD17dHJ1ZX1cbiAgICAgID5cbiAgICAgICAge2xlZ2VuZEl0ZW1zLm1hcChcbiAgICAgICAgICBsZWdlbmRJdGVtID0+XG4gICAgICAgICAgICBrZXlzW2xlZ2VuZEl0ZW0ueUtleV0gJiYgKFxuICAgICAgICAgICAgICA8TGVnZW5kSXRlbVxuICAgICAgICAgICAgICAgIHsuLi5sZWdlbmRJdGVtfVxuICAgICAgICAgICAgICAgIGtleT17YGxlZ2VuZC0ke2xlZ2VuZEl0ZW0ueUtleX1gfVxuICAgICAgICAgICAgICAgIHlLZXlGb3JtYXR0ZWQ9e2tleXNbbGVnZW5kSXRlbS55S2V5XS5rZXlGb3JtYXR0ZWR9XG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT5cbiAgICAgICAgICAgICAgICAgIHNldFZpc2libGVZS2V5cyhwcmV2ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IG5ld1Zpc2libGVMZWdlbmRJdGVtczogQXJyYXk8c3RyaW5nPiA9IFtdO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChwcmV2Lmxlbmd0aCA9PT0gbGVnZW5kSXRlbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zID0gW2xlZ2VuZEl0ZW0ueUtleV07XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgaWYgKHByZXYuaW5jbHVkZXMobGVnZW5kSXRlbS55S2V5KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zID0gcHJldi5maWx0ZXIocHJldkxlZ2VuZEl0ZW1JZCA9PiBwcmV2TGVnZW5kSXRlbUlkICE9PSBsZWdlbmRJdGVtLnlLZXkpO1xuICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuZXdWaXNpYmxlTGVnZW5kSXRlbXMgPSBbLi4ucHJldiwgbGVnZW5kSXRlbS55S2V5XTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zLmxlbmd0aCA9PT0gMFxuICAgICAgICAgICAgICAgICAgICAgID8gbGVnZW5kSXRlbXMubWFwKGxlZ2VuZEl0ZW0gPT4gbGVnZW5kSXRlbS55S2V5KVxuICAgICAgICAgICAgICAgICAgICAgIDogbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zO1xuICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdmlzaWJsZT17dmlzaWJsZVlLZXlzLmluY2x1ZGVzKGxlZ2VuZEl0ZW0ueUtleSl9XG4gICAgICAgICAgICAgICAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM9e2NvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKVxuICAgICAgICApfVxuICAgICAgPC9TY3JvbGxiYXI+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuIl19 */",
42543
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxlZ2VuZC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNEJvQiIsImZpbGUiOiJMZWdlbmQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IEZyYWdtZW50IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBMZWdlbmRJdGVtIH0gZnJvbSAnLi9MZWdlbmRJdGVtJztcbmltcG9ydCB7IFNoYXBlRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgS2V5IH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBTY3JvbGxiYXIgfSBmcm9tICcuLi8uLi8uLi9TY3JvbGxiYXIvU2Nyb2xsYmFyJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBCYXJTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgTGluZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvTGluZUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQXJlYVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQXJlYUNoYXJ0VjIvdHlwZXMnO1xuXG5pbnRlcmZhY2UgTGVnZW5kUHJvcHM8VD4ge1xuICBzZXRWaXNpYmxlWUtleXM/OiBSZWFjdC5EaXNwYXRjaDxSZWFjdC5TZXRTdGF0ZUFjdGlvbjxBcnJheTxzdHJpbmc+Pj47XG4gIGtleXM6IHsgW2tleTogc3RyaW5nXTogS2V5IH07XG4gIG1hcmdpbkxlZnQ6IG51bWJlcjtcbiAgaXRlbXM/OiB7XG4gICAgbGVnZW5kSXRlbXM6IEFycmF5PFNoYXBlRGVmaW5pdGlvbjxUPj47XG4gICAgdmlzaWJsZVlLZXlzOiBBcnJheTxzdHJpbmc+O1xuICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBBcnJheTxDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlPjtcbiAgfVtdO1xufVxuXG5leHBvcnQgY29uc3QgTGVnZW5kID0gKHtcbiAga2V5cyxcbiAgc2V0VmlzaWJsZVlLZXlzLFxuICBtYXJnaW5MZWZ0LFxuICBpdGVtcyxcbn06IExlZ2VuZFByb3BzPEJhclN0eWxlcyB8IExpbmVTdHlsZXMgfCBBcmVhU3R5bGVzPikgPT4ge1xuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtjc3MoeyBoZWlnaHQ6IDQwLCBwYWRkaW5nVG9wOiA4IH0pfT5cbiAgICAgIDxTY3JvbGxiYXJcbiAgICAgICAgY2xhc3NOYW1lPXtjc3Moe1xuICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcbiAgICAgICAgICBmbGV4V3JhcDogJ25vd3JhcCcsXG4gICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgbWFyZ2luTGVmdDogbWFyZ2luTGVmdCA/IGAke21hcmdpbkxlZnR9cHhgIDogdW5kZWZpbmVkLFxuICAgICAgICB9KX1cbiAgICAgICAgeD17dHJ1ZX1cbiAgICAgID5cbiAgICAgICAge2l0ZW1zPy5tYXAoKGl0ZW0sIGluZGV4KSA9PiAoXG4gICAgICAgICAgPEZyYWdtZW50IGtleT17aW5kZXh9PlxuICAgICAgICAgICAge2l0ZW0ubGVnZW5kSXRlbXM/Lm1hcChcbiAgICAgICAgICAgICAgbGVnZW5kSXRlbSA9PlxuICAgICAgICAgICAgICAgIGtleXNbbGVnZW5kSXRlbS55S2V5XSAmJiAoXG4gICAgICAgICAgICAgICAgICA8TGVnZW5kSXRlbVxuICAgICAgICAgICAgICAgICAgICB7Li4ubGVnZW5kSXRlbX1cbiAgICAgICAgICAgICAgICAgICAga2V5PXtgbGVnZW5kLSR7bGVnZW5kSXRlbS55S2V5fWB9XG4gICAgICAgICAgICAgICAgICAgIHlLZXlGb3JtYXR0ZWQ9e2tleXNbbGVnZW5kSXRlbS55S2V5XS5rZXlGb3JtYXR0ZWR9XG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+XG4gICAgICAgICAgICAgICAgICAgICAgc2V0VmlzaWJsZVlLZXlzICYmXG4gICAgICAgICAgICAgICAgICAgICAgc2V0VmlzaWJsZVlLZXlzKHByZXYgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IG5ld1Zpc2libGVMZWdlbmRJdGVtczogQXJyYXk8c3RyaW5nPiA9IFtdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocHJldi5sZW5ndGggPT09IGl0ZW0ubGVnZW5kSXRlbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG5ld1Zpc2libGVMZWdlbmRJdGVtcyA9IFtsZWdlbmRJdGVtLnlLZXldO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHByZXYuaW5jbHVkZXMobGVnZW5kSXRlbS55S2V5KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld1Zpc2libGVMZWdlbmRJdGVtcyA9IHByZXYuZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJldkxlZ2VuZEl0ZW1JZCA9PiBwcmV2TGVnZW5kSXRlbUlkICE9PSBsZWdlbmRJdGVtLnlLZXlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld1Zpc2libGVMZWdlbmRJdGVtcyA9IFsuLi5wcmV2LCBsZWdlbmRJdGVtLnlLZXldO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXdWaXNpYmxlTGVnZW5kSXRlbXMubGVuZ3RoID09PSAwXG4gICAgICAgICAgICAgICAgICAgICAgICAgID8gaXRlbS5sZWdlbmRJdGVtcy5tYXAobGVnZW5kSXRlbSA9PiBsZWdlbmRJdGVtLnlLZXkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDogbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zO1xuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdmlzaWJsZT17c2V0VmlzaWJsZVlLZXlzID8gaXRlbS52aXNpYmxlWUtleXMuaW5jbHVkZXMobGVnZW5kSXRlbS55S2V5KSA6IHRydWV9XG4gICAgICAgICAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzPXtpdGVtLmNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvRnJhZ21lbnQ+XG4gICAgICAgICkpfVxuICAgICAgPC9TY3JvbGxiYXI+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuIl19 */",
42548
42544
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$7
42549
42545
  }),
42550
42546
  children: jsxRuntime.jsx(Scrollbar, {
@@ -42554,34 +42550,39 @@ var Legend$1 = function Legend(_ref) {
42554
42550
  flexWrap: 'nowrap',
42555
42551
  alignItems: 'center',
42556
42552
  marginLeft: marginLeft ? marginLeft + "px" : undefined
42557
- }, ";label:Legend;", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxlZ2VuZC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBOEJtQiIsImZpbGUiOiJMZWdlbmQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHsgTGVnZW5kSXRlbSB9IGZyb20gJy4vTGVnZW5kSXRlbSc7XG5pbXBvcnQgeyBTaGFwZURlZmluaXRpb24sIENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGUsIEtleSB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgU2Nyb2xsYmFyIH0gZnJvbSAnLi4vLi4vLi4vU2Nyb2xsYmFyL1Njcm9sbGJhcic7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9jc3MnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IExpbmVTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0xpbmVDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IEFyZWFTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0FyZWFDaGFydFYyL3R5cGVzJztcblxuaW50ZXJmYWNlIExlZ2VuZFByb3BzPFQ+IHtcbiAgc2V0VmlzaWJsZVlLZXlzOiBSZWFjdC5EaXNwYXRjaDxSZWFjdC5TZXRTdGF0ZUFjdGlvbjxBcnJheTxzdHJpbmc+Pj47XG4gIHZpc2libGVZS2V5czogQXJyYXk8c3RyaW5nPjtcbiAga2V5czogeyBba2V5OiBzdHJpbmddOiBLZXkgfTtcbiAgbGVnZW5kSXRlbXM6IEFycmF5PFNoYXBlRGVmaW5pdGlvbjxUPj47XG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBBcnJheTxDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlPjtcbiAgbWFyZ2luTGVmdDogbnVtYmVyO1xufVxuXG5leHBvcnQgY29uc3QgTGVnZW5kID0gKHtcbiAga2V5cyxcbiAgdmlzaWJsZVlLZXlzLFxuICBsZWdlbmRJdGVtcyxcbiAgc2V0VmlzaWJsZVlLZXlzLFxuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcyxcbiAgbWFyZ2luTGVmdCxcbn06IExlZ2VuZFByb3BzPEJhclN0eWxlcyB8IExpbmVTdHlsZXMgfCBBcmVhU3R5bGVzPikgPT4ge1xuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtjc3MoeyBoZWlnaHQ6IDQwLCBwYWRkaW5nVG9wOiA4IH0pfT5cbiAgICAgIDxTY3JvbGxiYXJcbiAgICAgICAgY2xhc3NOYW1lPXtjc3Moe1xuICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcbiAgICAgICAgICBmbGV4V3JhcDogJ25vd3JhcCcsXG4gICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgbWFyZ2luTGVmdDogbWFyZ2luTGVmdCA/IGAke21hcmdpbkxlZnR9cHhgIDogdW5kZWZpbmVkLFxuICAgICAgICB9KX1cbiAgICAgICAgeD17dHJ1ZX1cbiAgICAgID5cbiAgICAgICAge2xlZ2VuZEl0ZW1zLm1hcChcbiAgICAgICAgICBsZWdlbmRJdGVtID0+XG4gICAgICAgICAgICBrZXlzW2xlZ2VuZEl0ZW0ueUtleV0gJiYgKFxuICAgICAgICAgICAgICA8TGVnZW5kSXRlbVxuICAgICAgICAgICAgICAgIHsuLi5sZWdlbmRJdGVtfVxuICAgICAgICAgICAgICAgIGtleT17YGxlZ2VuZC0ke2xlZ2VuZEl0ZW0ueUtleX1gfVxuICAgICAgICAgICAgICAgIHlLZXlGb3JtYXR0ZWQ9e2tleXNbbGVnZW5kSXRlbS55S2V5XS5rZXlGb3JtYXR0ZWR9XG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT5cbiAgICAgICAgICAgICAgICAgIHNldFZpc2libGVZS2V5cyhwcmV2ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IG5ld1Zpc2libGVMZWdlbmRJdGVtczogQXJyYXk8c3RyaW5nPiA9IFtdO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChwcmV2Lmxlbmd0aCA9PT0gbGVnZW5kSXRlbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zID0gW2xlZ2VuZEl0ZW0ueUtleV07XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgaWYgKHByZXYuaW5jbHVkZXMobGVnZW5kSXRlbS55S2V5KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zID0gcHJldi5maWx0ZXIocHJldkxlZ2VuZEl0ZW1JZCA9PiBwcmV2TGVnZW5kSXRlbUlkICE9PSBsZWdlbmRJdGVtLnlLZXkpO1xuICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuZXdWaXNpYmxlTGVnZW5kSXRlbXMgPSBbLi4ucHJldiwgbGVnZW5kSXRlbS55S2V5XTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zLmxlbmd0aCA9PT0gMFxuICAgICAgICAgICAgICAgICAgICAgID8gbGVnZW5kSXRlbXMubWFwKGxlZ2VuZEl0ZW0gPT4gbGVnZW5kSXRlbS55S2V5KVxuICAgICAgICAgICAgICAgICAgICAgIDogbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zO1xuICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdmlzaWJsZT17dmlzaWJsZVlLZXlzLmluY2x1ZGVzKGxlZ2VuZEl0ZW0ueUtleSl9XG4gICAgICAgICAgICAgICAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM9e2NvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKVxuICAgICAgICApfVxuICAgICAgPC9TY3JvbGxiYXI+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuIl19 */"),
42553
+ }, ";label:Legend;", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkxlZ2VuZC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBOEJtQiIsImZpbGUiOiJMZWdlbmQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IEZyYWdtZW50IH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBMZWdlbmRJdGVtIH0gZnJvbSAnLi9MZWdlbmRJdGVtJztcbmltcG9ydCB7IFNoYXBlRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgS2V5IH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBTY3JvbGxiYXIgfSBmcm9tICcuLi8uLi8uLi9TY3JvbGxiYXIvU2Nyb2xsYmFyJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBCYXJTdHlsZXMgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgTGluZVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvTGluZUNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQXJlYVN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQXJlYUNoYXJ0VjIvdHlwZXMnO1xuXG5pbnRlcmZhY2UgTGVnZW5kUHJvcHM8VD4ge1xuICBzZXRWaXNpYmxlWUtleXM/OiBSZWFjdC5EaXNwYXRjaDxSZWFjdC5TZXRTdGF0ZUFjdGlvbjxBcnJheTxzdHJpbmc+Pj47XG4gIGtleXM6IHsgW2tleTogc3RyaW5nXTogS2V5IH07XG4gIG1hcmdpbkxlZnQ6IG51bWJlcjtcbiAgaXRlbXM/OiB7XG4gICAgbGVnZW5kSXRlbXM6IEFycmF5PFNoYXBlRGVmaW5pdGlvbjxUPj47XG4gICAgdmlzaWJsZVlLZXlzOiBBcnJheTxzdHJpbmc+O1xuICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBBcnJheTxDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlPjtcbiAgfVtdO1xufVxuXG5leHBvcnQgY29uc3QgTGVnZW5kID0gKHtcbiAga2V5cyxcbiAgc2V0VmlzaWJsZVlLZXlzLFxuICBtYXJnaW5MZWZ0LFxuICBpdGVtcyxcbn06IExlZ2VuZFByb3BzPEJhclN0eWxlcyB8IExpbmVTdHlsZXMgfCBBcmVhU3R5bGVzPikgPT4ge1xuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtjc3MoeyBoZWlnaHQ6IDQwLCBwYWRkaW5nVG9wOiA4IH0pfT5cbiAgICAgIDxTY3JvbGxiYXJcbiAgICAgICAgY2xhc3NOYW1lPXtjc3Moe1xuICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcbiAgICAgICAgICBmbGV4V3JhcDogJ25vd3JhcCcsXG4gICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgbWFyZ2luTGVmdDogbWFyZ2luTGVmdCA/IGAke21hcmdpbkxlZnR9cHhgIDogdW5kZWZpbmVkLFxuICAgICAgICB9KX1cbiAgICAgICAgeD17dHJ1ZX1cbiAgICAgID5cbiAgICAgICAge2l0ZW1zPy5tYXAoKGl0ZW0sIGluZGV4KSA9PiAoXG4gICAgICAgICAgPEZyYWdtZW50IGtleT17aW5kZXh9PlxuICAgICAgICAgICAge2l0ZW0ubGVnZW5kSXRlbXM/Lm1hcChcbiAgICAgICAgICAgICAgbGVnZW5kSXRlbSA9PlxuICAgICAgICAgICAgICAgIGtleXNbbGVnZW5kSXRlbS55S2V5XSAmJiAoXG4gICAgICAgICAgICAgICAgICA8TGVnZW5kSXRlbVxuICAgICAgICAgICAgICAgICAgICB7Li4ubGVnZW5kSXRlbX1cbiAgICAgICAgICAgICAgICAgICAga2V5PXtgbGVnZW5kLSR7bGVnZW5kSXRlbS55S2V5fWB9XG4gICAgICAgICAgICAgICAgICAgIHlLZXlGb3JtYXR0ZWQ9e2tleXNbbGVnZW5kSXRlbS55S2V5XS5rZXlGb3JtYXR0ZWR9XG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+XG4gICAgICAgICAgICAgICAgICAgICAgc2V0VmlzaWJsZVlLZXlzICYmXG4gICAgICAgICAgICAgICAgICAgICAgc2V0VmlzaWJsZVlLZXlzKHByZXYgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IG5ld1Zpc2libGVMZWdlbmRJdGVtczogQXJyYXk8c3RyaW5nPiA9IFtdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocHJldi5sZW5ndGggPT09IGl0ZW0ubGVnZW5kSXRlbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG5ld1Zpc2libGVMZWdlbmRJdGVtcyA9IFtsZWdlbmRJdGVtLnlLZXldO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHByZXYuaW5jbHVkZXMobGVnZW5kSXRlbS55S2V5KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld1Zpc2libGVMZWdlbmRJdGVtcyA9IHByZXYuZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJldkxlZ2VuZEl0ZW1JZCA9PiBwcmV2TGVnZW5kSXRlbUlkICE9PSBsZWdlbmRJdGVtLnlLZXlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld1Zpc2libGVMZWdlbmRJdGVtcyA9IFsuLi5wcmV2LCBsZWdlbmRJdGVtLnlLZXldO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXdWaXNpYmxlTGVnZW5kSXRlbXMubGVuZ3RoID09PSAwXG4gICAgICAgICAgICAgICAgICAgICAgICAgID8gaXRlbS5sZWdlbmRJdGVtcy5tYXAobGVnZW5kSXRlbSA9PiBsZWdlbmRJdGVtLnlLZXkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDogbmV3VmlzaWJsZUxlZ2VuZEl0ZW1zO1xuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdmlzaWJsZT17c2V0VmlzaWJsZVlLZXlzID8gaXRlbS52aXNpYmxlWUtleXMuaW5jbHVkZXMobGVnZW5kSXRlbS55S2V5KSA6IHRydWV9XG4gICAgICAgICAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzPXtpdGVtLmNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvRnJhZ21lbnQ+XG4gICAgICAgICkpfVxuICAgICAgPC9TY3JvbGxiYXI+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuIl19 */"),
42558
42554
  x: true,
42559
- children: legendItems.map(function (legendItem) {
42560
- return keys[legendItem.yKey] && react.createElement(LegendItem, _extends({}, legendItem, {
42561
- key: "legend-" + legendItem.yKey,
42562
- yKeyFormatted: keys[legendItem.yKey].keyFormatted,
42563
- onClick: function onClick() {
42564
- return setVisibleYKeys(function (prev) {
42565
- var newVisibleLegendItems = [];
42566
- if (prev.length === legendItems.length) {
42567
- newVisibleLegendItems = [legendItem.yKey];
42568
- } else {
42569
- if (prev.includes(legendItem.yKey)) {
42570
- newVisibleLegendItems = prev.filter(function (prevLegendItemId) {
42571
- return prevLegendItemId !== legendItem.yKey;
42572
- });
42573
- } else {
42574
- newVisibleLegendItems = [].concat(prev, [legendItem.yKey]);
42575
- }
42576
- }
42577
- return newVisibleLegendItems.length === 0 ? legendItems.map(function (legendItem) {
42578
- return legendItem.yKey;
42579
- }) : newVisibleLegendItems;
42580
- });
42581
- },
42582
- visible: visibleYKeys.includes(legendItem.yKey),
42583
- conditionalFormattingRules: conditionalFormattingRules
42584
- }));
42555
+ children: items == null ? void 0 : items.map(function (item, index) {
42556
+ var _item$legendItems;
42557
+ return jsxRuntime.jsx(React.Fragment, {
42558
+ children: (_item$legendItems = item.legendItems) == null ? void 0 : _item$legendItems.map(function (legendItem) {
42559
+ return keys[legendItem.yKey] && react.createElement(LegendItem, _extends({}, legendItem, {
42560
+ key: "legend-" + legendItem.yKey,
42561
+ yKeyFormatted: keys[legendItem.yKey].keyFormatted,
42562
+ onClick: function onClick() {
42563
+ return setVisibleYKeys && setVisibleYKeys(function (prev) {
42564
+ var newVisibleLegendItems = [];
42565
+ if (prev.length === item.legendItems.length) {
42566
+ newVisibleLegendItems = [legendItem.yKey];
42567
+ } else {
42568
+ if (prev.includes(legendItem.yKey)) {
42569
+ newVisibleLegendItems = prev.filter(function (prevLegendItemId) {
42570
+ return prevLegendItemId !== legendItem.yKey;
42571
+ });
42572
+ } else {
42573
+ newVisibleLegendItems = [].concat(prev, [legendItem.yKey]);
42574
+ }
42575
+ }
42576
+ return newVisibleLegendItems.length === 0 ? item.legendItems.map(function (legendItem) {
42577
+ return legendItem.yKey;
42578
+ }) : newVisibleLegendItems;
42579
+ });
42580
+ },
42581
+ visible: setVisibleYKeys ? item.visibleYKeys.includes(legendItem.yKey) : true,
42582
+ conditionalFormattingRules: item.conditionalFormattingRules
42583
+ }));
42584
+ })
42585
+ }, index);
42585
42586
  })
42586
42587
  })
42587
42588
  });
@@ -42683,19 +42684,19 @@ var buildMargin = function buildMargin(yTicks, showYAxisLabels, hasYAxisTitle, h
42683
42684
  };
42684
42685
  };
42685
42686
 
42686
- function useFlattenedData(xScaleKey, xScaleDataType, chart) {
42687
+ function useFlattenedData(xScaleKey, xScaleDataType, data, yKeys) {
42687
42688
  return React.useMemo(function () {
42688
- if (xScaleKey && xScaleDataType) {
42689
+ if (xScaleKey && xScaleDataType && yKeys.length > 0) {
42689
42690
  return flattenData({
42690
- data: chart.data,
42691
+ data: data,
42691
42692
  xScaleKey: xScaleKey,
42692
42693
  xScaleDataType: xScaleDataType,
42693
- yKeys: chart.y.keys
42694
+ yKeys: yKeys
42694
42695
  });
42695
42696
  } else {
42696
42697
  return [];
42697
42698
  }
42698
- }, [chart.data, xScaleKey, xScaleDataType, chart.y.keys]);
42699
+ }, [data, xScaleKey, xScaleDataType, yKeys]);
42699
42700
  }
42700
42701
 
42701
42702
  var GoalLine = function GoalLine(_ref) {
@@ -43044,6 +43045,17 @@ function useTooltip$1(initialTooltipState) {
43044
43045
  };
43045
43046
  }
43046
43047
 
43048
+ function useYScale(innerHeight, scale$1) {
43049
+ return React.useMemo(function () {
43050
+ return scale.scaleLinear({
43051
+ range: [innerHeight, 0],
43052
+ domain: scale$1.ordering === 'asc' ? [scale$1.min, scale$1.max] : [scale$1.max, scale$1.min],
43053
+ nice: true,
43054
+ round: true
43055
+ });
43056
+ }, [innerHeight, scale$1]);
43057
+ }
43058
+
43047
43059
  var LineChart$5 = function LineChart(_ref) {
43048
43060
  var _theme$axis;
43049
43061
  var chart = _ref.chart,
@@ -43109,14 +43121,8 @@ var LineChart$5 = function LineChart(_ref) {
43109
43121
  }
43110
43122
  return null;
43111
43123
  }, [innerWidth, chart.x, chart.data]);
43112
- var _yScale = React.useMemo(function () {
43113
- return scale.scaleLinear({
43114
- range: [innerHeight, 0],
43115
- domain: chart.y.scale.ordering === 'asc' ? [chart.y.scale.min, chart.y.scale.max] : [chart.y.scale.max, chart.y.scale.min],
43116
- nice: true
43117
- });
43118
- }, [innerHeight, chart.y]);
43119
- var dataFlattened = useFlattenedData(xScaleKey, xScaleDataType, chart);
43124
+ var _yScale = useYScale(innerHeight, chart.y.scale);
43125
+ var dataFlattened = useFlattenedData(xScaleKey, xScaleDataType, chart.data, chart.y.keys);
43120
43126
  var handleMouseMove = React.useCallback(function (event) {
43121
43127
  if (!xKey || !xScaleKey || xScale === null) return;
43122
43128
  var tooltipData = getTooltipData({
@@ -43143,6 +43149,11 @@ var LineChart$5 = function LineChart(_ref) {
43143
43149
  var yTickValues = chart.y.ticks.map(function (tick) {
43144
43150
  return Number(tick.value);
43145
43151
  });
43152
+ var legendTooltipItems = [{
43153
+ legendItems: chart.lines,
43154
+ visibleYKeys: visibleYKeys,
43155
+ conditionalFormattingRules: chart.conditionalFormattingRules
43156
+ }];
43146
43157
  return jsxRuntime.jsxs(React__default.Fragment, {
43147
43158
  children: [jsxRuntime.jsxs(ChartWrapper$1, {
43148
43159
  width: width,
@@ -43177,93 +43188,19 @@ var LineChart$5 = function LineChart(_ref) {
43177
43188
  yScale: _yScale,
43178
43189
  ticks: yTickValues,
43179
43190
  stroke: theme == null || (_theme$axis = theme.axis) == null ? void 0 : _theme$axis.stroke
43180
- }), jsxRuntime.jsxs(group.Group, {
43181
- children: [chart.y.keys.map(function (yKey) {
43182
- var _chart$lines$filter$;
43183
- return jsxRuntime.jsx(shape.LinePath, {
43184
- visibility: visibleYKeys.includes(yKey) ? 'visible' : 'hidden',
43185
- data: dataFlattened,
43186
- x: function x(d) {
43187
- var _xScale;
43188
- // @ts-ignore
43189
- var xValue = d[xScaleKey];
43190
- var xValueAdjusted = xScaleDataType === 'date_time' ? new Date(xValue) : xScaleDataType === 'number' ? Number(xValue) : String(xValue);
43191
- // @ts-ignore
43192
- return (_xScale = xScale(xValueAdjusted)) != null ? _xScale : 0;
43193
- },
43194
- y: function y(d) {
43195
- return _yScale(Number(d[yKey]));
43196
- },
43197
- stroke: chart.lines.filter(function (legendItem) {
43198
- return legendItem.yKey === yKey;
43199
- })[0].color,
43200
- strokeWidth: chart.lines.filter(function (legendItem) {
43201
- return legendItem.yKey === yKey;
43202
- })[0].style.strokeWidth,
43203
- strokeLinecap: "round",
43204
- strokeDasharray: (_chart$lines$filter$ = chart.lines.filter(function (legendItem) {
43205
- return legendItem.yKey === yKey;
43206
- })[0].style.strokeDasharray) != null ? _chart$lines$filter$ : undefined,
43207
- shapeRendering: "smooth",
43208
- defined: function defined(d) {
43209
- return d[yKey] !== null;
43210
- },
43211
- curve: curve
43212
- }, yKey);
43213
- }), chart.conditionalFormattingRules.map(function (conditionalFormattingRule) {
43214
- var _chart$lines$filter$2;
43215
- if (conditionalFormattingRule.operator !== '<=' && conditionalFormattingRule.operator !== '>=') return null;
43216
- var yKey = conditionalFormattingRule.yKey;
43217
- var clipPathId = "clip-path-" + yKey + "-" + conditionalFormattingRule.value + "-" + conditionalFormattingRule.color + "-" + Math.random(); // Do not remove Math.random() - required to ensure unique clipPathId per view instance
43218
-
43219
- var clipArea = getClipArea({
43220
- conditionalFormattingRule: conditionalFormattingRule,
43221
- chart: {
43222
- width: innerWidth,
43223
- height: innerHeight,
43224
- yScale: _yScale
43225
- }
43226
- });
43227
-
43228
- // return a new <LinePath /> for each conditional formatting rule with a matching <ReactClipPath /> to frame the part of the path that should be visible
43229
- return jsxRuntime.jsxs(group.Group, {
43230
- children: [jsxRuntime.jsx(shape.LinePath, {
43231
- clipPath: "url(#" + clipPathId + ")",
43232
- visibility: visibleYKeys.includes(yKey) ? 'visible' : 'hidden',
43233
- data: dataFlattened,
43234
- x: function x(d) {
43235
- var _xScale2;
43236
- // @ts-ignore
43237
- var xValue = d[xScaleKey];
43238
- var xValueAdjusted = xScaleDataType === 'date_time' ? new Date(xValue) : xScaleDataType === 'number' ? Number(xValue) : String(xValue);
43239
- // @ts-ignore
43240
- return (_xScale2 = xScale(xValueAdjusted)) != null ? _xScale2 : 0;
43241
- },
43242
- y: function y(d) {
43243
- return _yScale(Number(d[yKey]));
43244
- },
43245
- stroke: conditionalFormattingRule.color,
43246
- strokeWidth: chart.lines.filter(function (legendItem) {
43247
- return legendItem.yKey === yKey;
43248
- })[0].style.strokeWidth,
43249
- strokeLinecap: "round",
43250
- strokeDasharray: (_chart$lines$filter$2 = chart.lines.filter(function (legendItem) {
43251
- return legendItem.yKey === yKey;
43252
- })[0].style.strokeDasharray) != null ? _chart$lines$filter$2 : undefined,
43253
- shapeRendering: "smooth",
43254
- defined: function defined(d) {
43255
- return d[yKey] !== null;
43256
- },
43257
- curve: curve
43258
- }, yKey), jsxRuntime.jsx(clipPath.RectClipPath, {
43259
- id: clipPathId,
43260
- x: clipArea.x,
43261
- y: clipArea.y,
43262
- width: clipArea.width,
43263
- height: clipArea.height
43264
- })]
43265
- }, clipPathId);
43266
- })]
43191
+ }), jsxRuntime.jsx(group.Group, {
43192
+ children: xScaleKey !== null && jsxRuntime.jsx(Lines, {
43193
+ lines: chart.lines,
43194
+ conditionalFormattingRules: chart.conditionalFormattingRules,
43195
+ curve: curve,
43196
+ yKeys: chart.y.keys,
43197
+ visibleYKeys: visibleYKeys,
43198
+ data: dataFlattened,
43199
+ xScaleKey: xScaleKey,
43200
+ xScaleDataType: xScaleDataType,
43201
+ xScale: xScale,
43202
+ yScale: _yScale
43203
+ })
43267
43204
  })]
43268
43205
  }), tooltipData && jsxRuntime.jsxs("g", {
43269
43206
  children: [jsxRuntime.jsx(Line, {
@@ -43295,27 +43232,117 @@ var LineChart$5 = function LineChart(_ref) {
43295
43232
  width: innerWidth
43296
43233
  })]
43297
43234
  }), options.showLegend && jsxRuntime.jsx(Legend$1, {
43298
- legendItems: chart.lines,
43299
- visibleYKeys: visibleYKeys,
43235
+ items: legendTooltipItems,
43300
43236
  setVisibleYKeys: setVisibleYKeys,
43301
43237
  keys: chart.keys,
43302
- conditionalFormattingRules: chart.conditionalFormattingRules,
43303
43238
  marginLeft: margin.left - margin.leftTitleOffset
43304
43239
  }), tooltipOpen && tooltipData && xKey && jsxRuntime.jsx(Tooltip$1, {
43240
+ items: legendTooltipItems,
43305
43241
  tooltipData: tooltipData,
43306
43242
  tooltipLeft: tooltipLeft,
43307
43243
  tooltipTop: tooltipTop,
43308
43244
  xKey: xKey,
43309
43245
  keys: chart.keys,
43310
- visibleYKeys: visibleYKeys,
43311
43246
  yKeys: chart.y.keys,
43312
- legendItems: chart.lines,
43313
43247
  showRoundedTotal: options.showRoundedTotal,
43314
- conditionalFormattingRules: chart.conditionalFormattingRules,
43315
43248
  theme: themeCSS.popoverMenus
43316
43249
  })]
43317
43250
  });
43318
43251
  };
43252
+ function Lines(_ref2) {
43253
+ var yKeys = _ref2.yKeys,
43254
+ visibleYKeys = _ref2.visibleYKeys,
43255
+ data = _ref2.data,
43256
+ xScaleKey = _ref2.xScaleKey,
43257
+ xScaleDataType = _ref2.xScaleDataType,
43258
+ xScale = _ref2.xScale,
43259
+ yScale = _ref2.yScale,
43260
+ lines = _ref2.lines,
43261
+ curve = _ref2.curve,
43262
+ conditionalFormattingRules = _ref2.conditionalFormattingRules;
43263
+ return jsxRuntime.jsxs(React.Fragment, {
43264
+ children: [yKeys.map(function (yKey) {
43265
+ var _lines$filter$0$style;
43266
+ return jsxRuntime.jsx(shape.LinePath, {
43267
+ visibility: visibleYKeys.includes(yKey) ? 'visible' : 'hidden',
43268
+ data: data,
43269
+ x: function x(d) {
43270
+ var _ref3;
43271
+ var xValue = d[xScaleKey];
43272
+ var xValueAdjusted = xScaleDataType === 'date_time' ? new Date(xValue) : xScaleDataType === 'number' ? Number(xValue) : String(xValue);
43273
+ return (_ref3 = xScale(xValueAdjusted)) != null ? _ref3 : 0;
43274
+ },
43275
+ y: function y(d) {
43276
+ return yScale(d[yKey]);
43277
+ },
43278
+ stroke: lines.filter(function (legendItem) {
43279
+ return legendItem.yKey === yKey;
43280
+ })[0].color,
43281
+ strokeWidth: lines.filter(function (legendItem) {
43282
+ return legendItem.yKey === yKey;
43283
+ })[0].style.strokeWidth,
43284
+ strokeLinecap: "round",
43285
+ strokeDasharray: (_lines$filter$0$style = lines.filter(function (legendItem) {
43286
+ return legendItem.yKey === yKey;
43287
+ })[0].style.strokeDasharray) != null ? _lines$filter$0$style : undefined,
43288
+ shapeRendering: "smooth",
43289
+ defined: function defined(d) {
43290
+ return d[yKey] !== null;
43291
+ },
43292
+ curve: curve
43293
+ }, yKey);
43294
+ }), conditionalFormattingRules.map(function (conditionalFormattingRule) {
43295
+ var _lines$filter$0$style2;
43296
+ if (conditionalFormattingRule.operator !== '<=' && conditionalFormattingRule.operator !== '>=') return null;
43297
+ var yKey = conditionalFormattingRule.yKey;
43298
+ var clipPathId = "clip-path-" + yKey + "-" + conditionalFormattingRule.value + "-" + conditionalFormattingRule.color + "-" + Math.random(); // Do not remove Math.random() - required to ensure unique clipPathId per view instance
43299
+
43300
+ var clipArea = getClipArea({
43301
+ conditionalFormattingRule: conditionalFormattingRule,
43302
+ chart: {
43303
+ width: innerWidth,
43304
+ height: innerHeight,
43305
+ yScale: yScale
43306
+ }
43307
+ });
43308
+ return jsxRuntime.jsxs(group.Group, {
43309
+ children: [jsxRuntime.jsx(shape.LinePath, {
43310
+ clipPath: "url(#" + clipPathId + ")",
43311
+ visibility: visibleYKeys.includes(yKey) ? 'visible' : 'hidden',
43312
+ data: data,
43313
+ x: function x(d) {
43314
+ var _ref4;
43315
+ var xValue = d[xScaleKey];
43316
+ var xValueAdjusted = xScaleDataType === 'date_time' ? new Date(xValue) : xScaleDataType === 'number' ? Number(xValue) : String(xValue);
43317
+ return (_ref4 = xScale(xValueAdjusted)) != null ? _ref4 : 0;
43318
+ },
43319
+ y: function y(d) {
43320
+ return yScale(d[yKey]);
43321
+ },
43322
+ stroke: conditionalFormattingRule.color,
43323
+ strokeWidth: lines.filter(function (legendItem) {
43324
+ return legendItem.yKey === yKey;
43325
+ })[0].style.strokeWidth,
43326
+ strokeLinecap: "round",
43327
+ strokeDasharray: (_lines$filter$0$style2 = lines.filter(function (legendItem) {
43328
+ return legendItem.yKey === yKey;
43329
+ })[0].style.strokeDasharray) != null ? _lines$filter$0$style2 : undefined,
43330
+ shapeRendering: "smooth",
43331
+ defined: function defined(d) {
43332
+ return d[yKey] !== null;
43333
+ },
43334
+ curve: curve
43335
+ }, yKey), jsxRuntime.jsx(clipPath.RectClipPath, {
43336
+ id: clipPathId,
43337
+ x: clipArea.x,
43338
+ y: clipArea.y,
43339
+ width: clipArea.width,
43340
+ height: clipArea.height
43341
+ })]
43342
+ }, clipPathId);
43343
+ })]
43344
+ });
43345
+ }
43319
43346
 
43320
43347
  function getBarFill(bars, conditionalFormattingRules, barKey, barValues) {
43321
43348
  var _bars$find;
@@ -43332,7 +43359,7 @@ function getBarFill(bars, conditionalFormattingRules, barKey, barValues) {
43332
43359
  if (compare({
43333
43360
  op: rule.operator,
43334
43361
  value: rule.value
43335
- }, value)) {
43362
+ }, value) && rule.yKey === barKey) {
43336
43363
  fill = rule.color;
43337
43364
  break;
43338
43365
  }
@@ -43341,12 +43368,43 @@ function getBarFill(bars, conditionalFormattingRules, barKey, barValues) {
43341
43368
  return fill;
43342
43369
  }
43343
43370
 
43344
- function _EMOTION_STRINGIFIED_CSS_ERROR__$9() { 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)."; }
43345
- var BAR_RADIUS = 2;
43346
43371
  var PADDING = {
43347
43372
  paddingOuter: 0.05,
43348
43373
  paddingInner: 0.3
43349
43374
  };
43375
+
43376
+ function useBarXScale(xScaleDataType, innerWidth, xScaleKey, data) {
43377
+ return React.useMemo(function () {
43378
+ if (xScaleDataType === 'string') {
43379
+ return scale.scaleBand(_extends({
43380
+ range: [0, innerWidth],
43381
+ domain: xScaleKey ? [].concat(data.map(function (d) {
43382
+ return d[xScaleKey] && d[xScaleKey].value !== null ? String(d[xScaleKey].value) : '';
43383
+ })) : []
43384
+ }, PADDING));
43385
+ }
43386
+ if (xScaleDataType === 'date_time' && xScaleKey) {
43387
+ return scale.scaleBand(_extends({
43388
+ range: [0, innerWidth],
43389
+ domain: data.map(function (d) {
43390
+ return new Date(d[xScaleKey].value);
43391
+ })
43392
+ }, PADDING));
43393
+ }
43394
+ if (xScaleDataType === 'number' && xScaleKey) {
43395
+ return scale.scaleBand(_extends({
43396
+ range: [0, innerWidth],
43397
+ domain: data.map(function (d) {
43398
+ return d[xScaleKey] && d[xScaleKey].value !== null ? Number(d[xScaleKey].value) : 0;
43399
+ })
43400
+ }, PADDING));
43401
+ }
43402
+ return null;
43403
+ }, [innerWidth, data]);
43404
+ }
43405
+
43406
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$9() { 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)."; }
43407
+ var BAR_RADIUS = 2;
43350
43408
  var BarChart$5 = function BarChart(_ref) {
43351
43409
  var _theme$axis;
43352
43410
  var chart = _ref.chart,
@@ -43377,41 +43435,8 @@ var BarChart$5 = function BarChart(_ref) {
43377
43435
  var xScaleKey = chart.x.scale.key;
43378
43436
  var yScaleKeys = chart.y.keys;
43379
43437
  var xScaleDataType = chart.x.scale.dataType;
43380
- var xScale = React.useMemo(function () {
43381
- if (xScaleDataType === 'string') {
43382
- return scale.scaleBand(_extends({
43383
- range: [0, innerWidth],
43384
- domain: xScaleKey ? [].concat(chart.data.map(function (d) {
43385
- return d[xScaleKey] && d[xScaleKey].value !== null ? String(d[xScaleKey].value) : '';
43386
- })) : []
43387
- }, PADDING));
43388
- }
43389
- if (xScaleDataType === 'date_time' && xScaleKey) {
43390
- return scale.scaleBand(_extends({
43391
- range: [0, innerWidth],
43392
- domain: chart.data.map(function (d) {
43393
- return new Date(d[xScaleKey].value);
43394
- })
43395
- }, PADDING));
43396
- }
43397
- if (xScaleDataType === 'number' && xScaleKey) {
43398
- return scale.scaleBand(_extends({
43399
- range: [0, innerWidth],
43400
- domain: chart.data.map(function (d) {
43401
- return d[xScaleKey] && d[xScaleKey].value !== null ? Number(d[xScaleKey].value) : 0;
43402
- })
43403
- }, PADDING));
43404
- }
43405
- return null;
43406
- }, [innerWidth, chart.x, chart.data]);
43407
- var yScale = React.useMemo(function () {
43408
- return scale.scaleLinear({
43409
- range: [innerHeight, 0],
43410
- domain: chart.y.scale.ordering === 'asc' ? [chart.y.scale.min, chart.y.scale.max] : [chart.y.scale.max, chart.y.scale.min],
43411
- nice: true,
43412
- round: true
43413
- });
43414
- }, [innerHeight, chart.y]);
43438
+ var xScale = useBarXScale(xScaleDataType, innerWidth, xScaleKey, chart.data);
43439
+ var yScale = useYScale(innerHeight, chart.y.scale);
43415
43440
  var innerXScale = React.useMemo(function () {
43416
43441
  if (!options.stacked && xScale && 'bandwidth' in xScale) {
43417
43442
  return scale.scaleBand({
@@ -43422,7 +43447,7 @@ var BarChart$5 = function BarChart(_ref) {
43422
43447
  }
43423
43448
  return undefined;
43424
43449
  }, [xScale, yScaleKeys, options.stacked, xScaleDataType]);
43425
- var dataFlattened = useFlattenedData(xScaleKey, xScaleDataType, chart);
43450
+ var dataFlattened = useFlattenedData(xScaleKey, xScaleDataType, chart.data, chart.y.keys);
43426
43451
  var handleMouseMove = React.useCallback(function (event) {
43427
43452
  if (!xKey || !xScaleKey || xScale === null) return;
43428
43453
  var tooltipData = getTooltipData({
@@ -43468,6 +43493,13 @@ var BarChart$5 = function BarChart(_ref) {
43468
43493
  var yTickValues = chart.y.ticks.map(function (tick) {
43469
43494
  return Number(tick.value);
43470
43495
  });
43496
+ var legendTooltipItems = [{
43497
+ visibleYKeys: chart.bars.map(function (legendItem) {
43498
+ return legendItem.yKey;
43499
+ }),
43500
+ legendItems: chart.bars,
43501
+ conditionalFormattingRules: chart.conditionalFormattingRules
43502
+ }];
43471
43503
  return jsxRuntime.jsxs(React.Fragment, {
43472
43504
  children: [jsxRuntime.jsxs(ChartWrapper$1, {
43473
43505
  width: width,
@@ -43503,57 +43535,25 @@ var BarChart$5 = function BarChart(_ref) {
43503
43535
  ticks: yTickValues,
43504
43536
  stroke: theme == null || (_theme$axis = theme.axis) == null ? void 0 : _theme$axis.stroke
43505
43537
  }), jsxRuntime.jsxs(group.Group, {
43506
- children: [!options.stacked && jsxRuntime.jsx(shape.BarGroup, {
43538
+ children: [!options.stacked && jsxRuntime.jsx(BarGroup, {
43507
43539
  data: dataFlattened,
43508
43540
  keys: yScaleKeys,
43509
43541
  height: innerHeight,
43510
- x0: function x0(d) {
43511
- // @ts-ignore
43512
- var xValue = d[xScaleKey];
43513
- if (xScaleDataType === 'string') return xValue;
43514
- var xValueAdjusted = xScaleDataType === 'date_time' ? new Date(xValue) : xScaleDataType === 'number' ? Number(xValue) : String(xValue);
43515
- // @ts-ignore
43516
- return xValueAdjusted;
43517
- }
43518
- // @ts-ignore
43519
- ,
43520
- x0Scale: xScale
43521
- // @ts-ignore
43522
- ,
43523
- x1Scale: innerXScale,
43542
+ xKey: xKey,
43543
+ xScaleDataType: xScaleDataType,
43544
+ xScale: xScale,
43545
+ innerXScale: innerXScale,
43524
43546
  yScale: yScale,
43525
- color: function color() {
43526
- return '';
43527
- },
43528
- children: function children(barGroups) {
43529
- return barGroups.map(function (barGroup) {
43530
- return jsxRuntime.jsx(group.Group, {
43531
- left: barGroup.x0,
43532
- children: barGroup.bars.map(function (bar) {
43533
- if (bar.value === null) return null;
43534
- if (bar.height < 0 || bar.width < 0) return null;
43535
- return jsxRuntime.jsx(Bar, {
43536
- x: bar.x,
43537
- y: bar.y,
43538
- width: bar.width,
43539
- height: bar.height,
43540
- fill: getBarFill(chart.bars, chart.conditionalFormattingRules, bar.key, bar.value),
43541
- onClick: function onClick(e) {
43542
- return handleOnBarClick(e, barGroup, bar);
43543
- },
43544
- enableHover: enableHover
43545
- }, "bar-group-bar-" + barGroup.index + "-" + bar.index + "-" + bar.value + "-" + bar.key);
43546
- })
43547
- }, "bar-group-" + barGroup.index + "-" + barGroup.x0);
43548
- });
43549
- }
43547
+ onClick: handleOnBarClick,
43548
+ conditionalFormattingRules: chart.conditionalFormattingRules,
43549
+ bars: chart.bars,
43550
+ enableHover: enableHover
43550
43551
  }), options.stacked && jsxRuntime.jsx(shape.BarStack, {
43551
43552
  x: function x(d) {
43552
43553
  // @ts-ignore
43553
43554
  var xValue = d[xScaleKey];
43554
43555
  if (xScaleDataType === 'string') return xValue;
43555
43556
  var xValueAdjusted = xScaleDataType === 'date_time' ? new Date(xValue) : xScaleDataType === 'number' ? Number(xValue) : String(xValue);
43556
- // @ts-ignore
43557
43557
  return xValueAdjusted;
43558
43558
  }
43559
43559
  // @ts-ignore
@@ -43601,31 +43601,79 @@ var BarChart$5 = function BarChart(_ref) {
43601
43601
  width: innerWidth
43602
43602
  })]
43603
43603
  }), options.showLegend && jsxRuntime.jsx(Legend$1, {
43604
- legendItems: chart.bars,
43605
- visibleYKeys: chart.bars.map(function (legendItem) {
43606
- return legendItem.yKey;
43607
- }),
43604
+ items: legendTooltipItems,
43608
43605
  setVisibleYKeys: function setVisibleYKeys() {},
43609
43606
  keys: chart.keys,
43610
- conditionalFormattingRules: chart.conditionalFormattingRules,
43611
43607
  marginLeft: margin.left - margin.leftTitleOffset
43612
43608
  }), tooltipOpen && tooltipData && xKey && jsxRuntime.jsx(Tooltip$1, {
43609
+ items: legendTooltipItems,
43613
43610
  tooltipData: tooltipData,
43614
43611
  tooltipLeft: tooltipLeft,
43615
43612
  tooltipTop: tooltipTop,
43616
43613
  xKey: xKey,
43617
43614
  keys: chart.keys,
43618
- visibleYKeys: chart.bars.map(function (legendItem) {
43619
- return legendItem.yKey;
43620
- }),
43621
43615
  yKeys: chart.y.keys,
43622
- legendItems: chart.bars,
43623
43616
  showRoundedTotal: options.showRoundedTotal,
43624
- conditionalFormattingRules: chart.conditionalFormattingRules,
43625
43617
  theme: themeCSS.popoverMenus
43626
43618
  })]
43627
43619
  });
43628
43620
  };
43621
+ function BarGroup(_ref2) {
43622
+ var data = _ref2.data,
43623
+ keys = _ref2.keys,
43624
+ height = _ref2.height,
43625
+ xKey = _ref2.xKey,
43626
+ xScaleDataType = _ref2.xScaleDataType,
43627
+ xScale = _ref2.xScale,
43628
+ innerXScale = _ref2.innerXScale,
43629
+ yScale = _ref2.yScale,
43630
+ _onClick = _ref2.onClick,
43631
+ conditionalFormattingRules = _ref2.conditionalFormattingRules,
43632
+ bars = _ref2.bars,
43633
+ enableHover = _ref2.enableHover;
43634
+ return jsxRuntime.jsx(shape.BarGroup, {
43635
+ data: data,
43636
+ keys: keys,
43637
+ height: height,
43638
+ x0: function x0(d) {
43639
+ var xValue = d[xKey];
43640
+ if (xScaleDataType === 'string') return String(xValue);
43641
+ var xValueAdjusted = xScaleDataType === 'date_time' ? new Date(String(xValue)) : xScaleDataType === 'number' ? Number(xValue) : String(xValue);
43642
+ return xValueAdjusted;
43643
+ }
43644
+ // @ts-ignore
43645
+ ,
43646
+ x0Scale: xScale
43647
+ // @ts-ignore
43648
+ ,
43649
+ x1Scale: innerXScale,
43650
+ yScale: yScale,
43651
+ color: function color() {
43652
+ return '';
43653
+ },
43654
+ children: function children(barGroups) {
43655
+ return barGroups.map(function (barGroup) {
43656
+ return jsxRuntime.jsx(group.Group, {
43657
+ left: barGroup.x0,
43658
+ children: barGroup.bars.map(function (bar) {
43659
+ if (bar.value === null || bar.height < 0 || bar.width < 0) return null;
43660
+ return jsxRuntime.jsx(Bar, {
43661
+ x: bar.x,
43662
+ y: bar.y,
43663
+ width: bar.width,
43664
+ height: bar.height,
43665
+ fill: getBarFill(bars, conditionalFormattingRules, String(bar.key), bar.value),
43666
+ onClick: function onClick(e) {
43667
+ return _onClick(e, barGroup, bar);
43668
+ },
43669
+ enableHover: enableHover
43670
+ }, "bar-group-bar-" + barGroup.index + "-" + bar.index + "-" + bar.value + "-" + String(bar.key));
43671
+ })
43672
+ }, "bar-group-" + barGroup.index + "-" + barGroup.x0);
43673
+ });
43674
+ }
43675
+ });
43676
+ }
43629
43677
  var Bar = function Bar(props) {
43630
43678
  var _useState = React.useState(props.fill),
43631
43679
  fillColor = _useState[0],
@@ -43647,7 +43695,7 @@ var Bar = function Bar(props) {
43647
43695
  className: props.enableHover ? /*#__PURE__*/css$1.css( {
43648
43696
  name: "4nk3o1-Bar",
43649
43697
  styles: "cursor:pointer;label:Bar;",
43650
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJhckNoYXJ0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEwWXFDIiwiZmlsZSI6IkJhckNoYXJ0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhckNoYXJ0UmVwcmVzZW50YXRpb24gfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXMnO1xuaW1wb3J0IHsgQ2hhcnRUaGVtZSB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEdyb3VwIH0gZnJvbSAnQHZpc3gvZ3JvdXAnO1xuaW1wb3J0IHsgZ2V0Q2hhcnRUaGVtZUNTUywgZ2V0VG9vbHRpcERhdGEgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBGcmFnbWVudCwgdXNlQ2FsbGJhY2ssIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgVG9vbHRpcCB9IGZyb20gJy4uL1Rvb2x0aXAnO1xuaW1wb3J0IHsgTGVnZW5kIH0gZnJvbSAnLi4vTGVnZW5kJztcbmltcG9ydCB7IEJhckdyb3VwLCBCYXJTdGFjayB9IGZyb20gJ0B2aXN4L3NoYXBlJztcbmltcG9ydCB7IERhdGFUeXBlIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9GaWVsZC90eXBlcyc7XG5pbXBvcnQgeyBzY2FsZUxpbmVhciwgc2NhbGVCYW5kIH0gZnJvbSAnQHZpc3gvc2NhbGUnO1xuaW1wb3J0IHsgZ2V0QmFyRmlsbCB9IGZyb20gJy4vZ2V0QmFyRmlsbCc7XG5pbXBvcnQgeyBidWlsZE1hcmdpbiB9IGZyb20gJy4uLy4uL3V0aWxzL2J1aWxkTWFyZ2luJztcbmltcG9ydCB7IENoYXJ0T25WaWV3Q2xpY2ssIENoYXJ0RGF0YURlZmluaXRpb24sIERhdGFJdGVtIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9DaGFydHNWMi90eXBlcyc7XG5pbXBvcnQgeyBsaWdodGVuQ29sb3IgfSBmcm9tICcuLi8uLi8uLi9zdHlsZXMvY29sb3IuZnVuY3Rpb25zJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBCYXJHcm91cEJhciwgQmFyR3JvdXAgYXMgQmFyR3JvdXBUeXBlIH0gZnJvbSAnQHZpc3gvc2hhcGUvbGliL3R5cGVzJztcbmltcG9ydCB7IHVzZUZsYXR0ZW5lZERhdGEgfSBmcm9tICcuLi9ob29rcy91c2VGbGF0dGVuZWREYXRhJztcbmltcG9ydCBHb2FsTGluZXMgZnJvbSAnLi4vR29hbExpbmUvR29hbExpbmVzJztcbmltcG9ydCB7IEF4aXNCb3R0b20gfSBmcm9tICcuLi9BeGlzL0F4aXNCb3R0b20nO1xuaW1wb3J0IHsgQXhpc0xlZnQgfSBmcm9tICcuLi9BeGlzL0F4aXNMZWZ0JztcbmltcG9ydCB7IEdyaWRSb3dzIH0gZnJvbSAnLi4vR3JpZFJvd3MvR3JpZFJvd3MnO1xuaW1wb3J0IHsgQ2hhcnRXcmFwcGVyIH0gZnJvbSAnLi4vQ2hhcnRXcmFwcGVyL0NoYXJ0V3JhcHBlcic7XG5pbXBvcnQgeyBMaW5lIH0gZnJvbSAnLi4vVG9vbHRpcC9MaW5lJztcbmltcG9ydCB1c2VUb29sdGlwIGZyb20gJy4uL2hvb2tzL3VzZVRvb2x0aXAnO1xuXG4vLyBOZWVkIHRvIGxvb2sgYXQgdXBkYXRpbmcgQmFyQ2hhcnQgdG8gdXNlIHRoaXMgdHlwZSBtZXRob2Qgb2YgcmVuZGVyaW5nIC0gaHR0cHM6Ly9jb2Rlc2FuZGJveC5pby9wL3NhbmRib3gvdmlzeC1iYXItY2hhcnQtajlzbXBqP2ZpbGU9JTJGRXhhbXBsZS50c3hcbi8vIEN1cnJlbnRseSBpdCdzIHVzaW5nIFN0YWNrZWQgQ2hhcnQgd2hpY2ggaXNuJ3QgdGVjaG5pY2FsbHkgY29ycmVjdFxuXG5leHBvcnQgdHlwZSBCYXJDaGFydFByb3BzID0ge1xuICB3aWR0aDogbnVtYmVyO1xuICBoZWlnaHQ6IG51bWJlcjtcbiAgdGhlbWU/OiBDaGFydFRoZW1lO1xuICBjaGFydDogQmFyQ2hhcnRSZXByZXNlbnRhdGlvbjtcbiAgb3B0aW9uczoge1xuICAgIHN0YWNrZWQ6IGJvb2xlYW47XG4gICAgc2hvd1JvdW5kZWRUb3RhbDogYm9vbGVhbjtcbiAgICBzaG93TGVnZW5kOiBib29sZWFuO1xuICAgIHJlbW92ZVN0cm9rZTogYm9vbGVhbjtcbiAgICBheGlzOiB7XG4gICAgICBzaG93WEF4aXNMYWJlbHM6IGJvb2xlYW47XG4gICAgICBzaG93WUF4aXNMYWJlbHM6IGJvb2xlYW47XG4gICAgfTtcbiAgfTtcbiAgb25DbGljazogKHBhcmFtczogQ2hhcnRPblZpZXdDbGljaykgPT4gdm9pZDtcbiAgZW5hYmxlSG92ZXI/OiBib29sZWFuO1xufTtcblxuY29uc3QgQkFSX1JBRElVUyA9IDI7XG5cbmNvbnN0IFBBRERJTkcgPSB7XG4gIHBhZGRpbmdPdXRlcjogMC4wNSxcbiAgcGFkZGluZ0lubmVyOiAwLjMsXG59O1xuXG5leHBvcnQgY29uc3QgQmFyQ2hhcnQgPSAoeyBjaGFydCwgd2lkdGgsIGhlaWdodCwgb3B0aW9ucywgdGhlbWUsIG9uQ2xpY2ssIGVuYWJsZUhvdmVyIH06IEJhckNoYXJ0UHJvcHMpID0+IHtcbiAgY29uc3Qge1xuICAgIHRvb2x0aXBPcGVuLFxuICAgIHRvb2x0aXBMZWZ0ID0gMCxcbiAgICB0b29sdGlwVG9wID0gMCxcbiAgICBsaW5lTGVmdCA9IDAsXG4gICAgdG9vbHRpcERhdGEsXG4gICAgaGlkZVRvb2x0aXAsXG4gICAgc2hvd1Rvb2x0aXAsXG4gIH0gPSB1c2VUb29sdGlwPHtcbiAgICBba2V5SWQ6IHN0cmluZ106IERhdGFJdGVtO1xuICB9IHwgbnVsbD4oKTtcblxuICBjb25zdCBtYXJnaW4gPSBidWlsZE1hcmdpbihjaGFydC55LnRpY2tzLCBvcHRpb25zLmF4aXMuc2hvd1lBeGlzTGFiZWxzLCBjaGFydC55LnRpdGxlICE9IG51bGwsIGNoYXJ0LngudGl0bGUgIT0gbnVsbCk7XG5cbiAgLy8gY29uc3QgW3Zpc2libGVZS2V5cywgc2V0VmlzaWJsZVlLZXlzXSA9IHVzZVN0YXRlKGNoYXJ0LmJhcnMubWFwKChsZWdlbmRJdGVtKSA9PiBsZWdlbmRJdGVtLnlLZXkpKTtcblxuICBjb25zdCBpbm5lcldpZHRoID0gd2lkdGggLSBtYXJnaW4ubGVmdCAtIG1hcmdpbi5yaWdodDtcbiAgY29uc3QgaW5uZXJIZWlnaHQgPSBoZWlnaHQgLSBtYXJnaW4udG9wIC0gbWFyZ2luLmJvdHRvbSAtIChvcHRpb25zLnNob3dMZWdlbmQgPyA0MCA6IDApO1xuICBjb25zdCB4S2V5ID0gY2hhcnQueC5rZXk7XG4gIGNvbnN0IHhTY2FsZUtleSA9IGNoYXJ0Lnguc2NhbGUua2V5O1xuICBjb25zdCB5U2NhbGVLZXlzID0gY2hhcnQueS5rZXlzO1xuICBjb25zdCB4U2NhbGVEYXRhVHlwZTogRGF0YVR5cGUgPSBjaGFydC54LnNjYWxlLmRhdGFUeXBlO1xuXG4gIGNvbnN0IHhTY2FsZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICh4U2NhbGVEYXRhVHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiBzY2FsZUJhbmQ8c3RyaW5nPih7XG4gICAgICAgIHJhbmdlOiBbMCwgaW5uZXJXaWR0aF0sXG4gICAgICAgIGRvbWFpbjogeFNjYWxlS2V5XG4gICAgICAgICAgPyBbLi4uY2hhcnQuZGF0YS5tYXAoZCA9PiAoZFt4U2NhbGVLZXldICYmIGRbeFNjYWxlS2V5XS52YWx1ZSAhPT0gbnVsbCA/IFN0cmluZyhkW3hTY2FsZUtleV0udmFsdWUpIDogJycpKV1cbiAgICAgICAgICA6IFtdLFxuICAgICAgICAuLi5QQURESU5HLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHhTY2FsZURhdGFUeXBlID09PSAnZGF0ZV90aW1lJyAmJiB4U2NhbGVLZXkpIHtcbiAgICAgIHJldHVybiBzY2FsZUJhbmQ8RGF0ZT4oe1xuICAgICAgICByYW5nZTogWzAsIGlubmVyV2lkdGhdLFxuICAgICAgICBkb21haW46IGNoYXJ0LmRhdGEubWFwKGQgPT4gbmV3IERhdGUoZFt4U2NhbGVLZXldLnZhbHVlIGFzIHN0cmluZykpLFxuICAgICAgICAuLi5QQURESU5HLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHhTY2FsZURhdGFUeXBlID09PSAnbnVtYmVyJyAmJiB4U2NhbGVLZXkpIHtcbiAgICAgIHJldHVybiBzY2FsZUJhbmQ8bnVtYmVyPih7XG4gICAgICAgIHJhbmdlOiBbMCwgaW5uZXJXaWR0aF0sXG4gICAgICAgIGRvbWFpbjogY2hhcnQuZGF0YS5tYXAoZCA9PiAoZFt4U2NhbGVLZXldICYmIGRbeFNjYWxlS2V5XS52YWx1ZSAhPT0gbnVsbCA/IE51bWJlcihkW3hTY2FsZUtleV0udmFsdWUpIDogMCkpLFxuICAgICAgICAuLi5QQURESU5HLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH0sIFtpbm5lcldpZHRoLCBjaGFydC54LCBjaGFydC5kYXRhXSk7XG5cbiAgY29uc3QgeVNjYWxlID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgc2NhbGVMaW5lYXI8bnVtYmVyPih7XG4gICAgICAgIHJhbmdlOiBbaW5uZXJIZWlnaHQsIDBdLFxuICAgICAgICBkb21haW46XG4gICAgICAgICAgY2hhcnQueS5zY2FsZS5vcmRlcmluZyA9PT0gJ2FzYydcbiAgICAgICAgICAgID8gW2NoYXJ0Lnkuc2NhbGUubWluIGFzIG51bWJlciwgY2hhcnQueS5zY2FsZS5tYXggYXMgbnVtYmVyXVxuICAgICAgICAgICAgOiBbY2hhcnQueS5zY2FsZS5tYXggYXMgbnVtYmVyLCBjaGFydC55LnNjYWxlLm1pbiBhcyBudW1iZXJdLFxuICAgICAgICBuaWNlOiB0cnVlLFxuICAgICAgICByb3VuZDogdHJ1ZSxcbiAgICAgIH0pLFxuICAgIFtpbm5lckhlaWdodCwgY2hhcnQueV1cbiAgKTtcblxuICBjb25zdCBpbm5lclhTY2FsZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghb3B0aW9ucy5zdGFja2VkICYmIHhTY2FsZSAmJiAnYmFuZHdpZHRoJyBpbiB4U2NhbGUpIHtcbiAgICAgIHJldHVybiBzY2FsZUJhbmQ8c3RyaW5nPih7XG4gICAgICAgIHJhbmdlOiBbMCwgeFNjYWxlPy5iYW5kd2lkdGgoKV0sXG4gICAgICAgIGRvbWFpbjogeVNjYWxlS2V5cyxcbiAgICAgICAgcGFkZGluZzogMC4xLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfSwgW3hTY2FsZSwgeVNjYWxlS2V5cywgb3B0aW9ucy5zdGFja2VkLCB4U2NhbGVEYXRhVHlwZV0pO1xuXG4gIGNvbnN0IGRhdGFGbGF0dGVuZWQgPSB1c2VGbGF0dGVuZWREYXRhPEJhckNoYXJ0UmVwcmVzZW50YXRpb24sIENoYXJ0RGF0YURlZmluaXRpb24+KHhTY2FsZUtleSwgeFNjYWxlRGF0YVR5cGUsIGNoYXJ0KTtcblxuICBjb25zdCBoYW5kbGVNb3VzZU1vdmUgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8U1ZHRWxlbWVudD4pID0+IHtcbiAgICAgIGlmICgheEtleSB8fCAheFNjYWxlS2V5IHx8IHhTY2FsZSA9PT0gbnVsbCkgcmV0dXJuO1xuXG4gICAgICBjb25zdCB0b29sdGlwRGF0YSA9IGdldFRvb2x0aXBEYXRhKHtcbiAgICAgICAgZGF0YTogY2hhcnQuZGF0YSxcbiAgICAgICAgZXZlbnQsXG4gICAgICAgIG1hcmdpbixcbiAgICAgICAgeFNjYWxlS2V5LFxuICAgICAgICB4U2NhbGVEYXRhVHlwZSxcbiAgICAgICAgeE9yZGVyaW5nOiBjaGFydC54LnNjYWxlLm9yZGVyaW5nLFxuICAgICAgICB4U2NhbGUsXG4gICAgICAgIGNoYXJ0VHlwZTogJ2JhcicsXG4gICAgICB9KTtcblxuICAgICAgc2hvd1Rvb2x0aXAoe1xuICAgICAgICBsaW5lTGVmdDogdG9vbHRpcERhdGE/LmxpbmVMZWZ0LFxuICAgICAgICB0b29sdGlwTGVmdDogZXZlbnQucGFnZVgsXG4gICAgICAgIHRvb2x0aXBUb3A6IGV2ZW50LnBhZ2VZLFxuICAgICAgICB0b29sdGlwRGF0YTogdG9vbHRpcERhdGE/LnRvb2x0aXBEYXRhLFxuICAgICAgfSk7XG4gICAgfSxcbiAgICBbc2hvd1Rvb2x0aXAsIHhTY2FsZSwgbWFyZ2luLCB4S2V5LCB4U2NhbGVLZXksIHhTY2FsZURhdGFUeXBlLCBjaGFydC54LnNjYWxlLm9yZGVyaW5nLCBjaGFydC5kYXRhXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZU1vdXNlTGVhdmUgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaGlkZVRvb2x0aXAoKTtcbiAgfSwgW2hpZGVUb29sdGlwXSk7XG5cbiAgY29uc3QgaGFuZGxlT25CYXJDbGljayA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudDogUmVhY3QuTW91c2VFdmVudDxTVkdSZWN0RWxlbWVudCwgTW91c2VFdmVudD4sIGJhckdyb3VwOiBCYXJHcm91cFR5cGU8c3RyaW5nPiwgYmFyOiBCYXJHcm91cEJhcjxzdHJpbmc+KSA9PiB7XG4gICAgICBvbkNsaWNrKHtcbiAgICAgICAgY2xpY2tlZFZhbHVlOiB7XG4gICAgICAgICAgaW5kZXg6IGJhckdyb3VwLmluZGV4LFxuICAgICAgICAgIHk6IHtcbiAgICAgICAgICAgIGtleTogYmFyLmtleSxcbiAgICAgICAgICAgIHZhbHVlOiBiYXIudmFsdWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB4OiB7XG4gICAgICAgICAgICAuLi5jaGFydC54LnRpY2tzW2Jhckdyb3VwLmluZGV4XSxcbiAgICAgICAgICAgIHZhbHVlOiBjaGFydC5kYXRhW2Jhckdyb3VwLmluZGV4XVt4S2V5XS52YWx1ZSA/PyAnJyxcbiAgICAgICAgICAgIGtleTogeEtleSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBjbGlja0V2ZW50OiBldmVudCxcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgW29uQ2xpY2ssIGNoYXJ0LmRhdGEsIHhLZXldXG4gICk7XG5cbiAgY29uc3QgdGhlbWVDU1MgPSB1c2VNZW1vKCgpID0+IGdldENoYXJ0VGhlbWVDU1ModGhlbWUpLCBbdGhlbWVdKTtcblxuICBjb25zdCB5VGlja1ZhbHVlcyA9IGNoYXJ0LnkudGlja3MubWFwKHRpY2sgPT4gTnVtYmVyKHRpY2sudmFsdWUpKTtcblxuICByZXR1cm4gKFxuICAgIDxGcmFnbWVudD5cbiAgICAgIHsvKiB3aWR0aC9oZWlnaHQgMTAwJSByZXF1aXJlZCBvciB1c2VQYXJlbnRTaXplKCkgY29udGludW91c2x5IHNjYWxlcyBhcyBwYXJlbnQgZWxlbWVudCBoYXMgbm8gc3BlY2lmaWVkIGhlaWdodCAqL31cbiAgICAgIDxDaGFydFdyYXBwZXJcbiAgICAgICAgd2lkdGg9e3dpZHRofVxuICAgICAgICBoZWlnaHQ9e2hlaWdodH1cbiAgICAgICAgb25Nb3VzZU1vdmU9e2hhbmRsZU1vdXNlTW92ZX1cbiAgICAgICAgb25Nb3VzZUxlYXZlPXtoYW5kbGVNb3VzZUxlYXZlfVxuICAgICAgICBzaG93TGVnZW5kPXtvcHRpb25zLnNob3dMZWdlbmR9XG4gICAgICA+XG4gICAgICAgIDxHcm91cCBsZWZ0PXttYXJnaW4ubGVmdH0gdG9wPXttYXJnaW4udG9wfT5cbiAgICAgICAgICA8R3JpZFJvd3NcbiAgICAgICAgICAgIHRpY2tzPXt5VGlja1ZhbHVlc31cbiAgICAgICAgICAgIHlTY2FsZT17eVNjYWxlfVxuICAgICAgICAgICAgd2lkdGg9e2lubmVyV2lkdGh9XG4gICAgICAgICAgICBoZWlnaHQ9e2lubmVySGVpZ2h0fVxuICAgICAgICAgICAgcmVtb3ZlU3Ryb2tlPXtvcHRpb25zLnJlbW92ZVN0cm9rZX1cbiAgICAgICAgICAgIHRoZW1lQ1NTPXt0aGVtZUNTU31cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxBeGlzQm90dG9tXG4gICAgICAgICAgICB4PXtjaGFydC54fVxuICAgICAgICAgICAgbWFyZ2luPXttYXJnaW59XG4gICAgICAgICAgICB0aGVtZUNTUz17dGhlbWVDU1N9XG4gICAgICAgICAgICBzaG93PXtvcHRpb25zLmF4aXMuc2hvd1hBeGlzTGFiZWxzfVxuICAgICAgICAgICAgcmVtb3ZlU3Ryb2tlPXtvcHRpb25zLnJlbW92ZVN0cm9rZX1cbiAgICAgICAgICAgIHhTY2FsZURhdGFUeXBlPXt4U2NhbGVEYXRhVHlwZX1cbiAgICAgICAgICAgIHhTY2FsZT17eFNjYWxlfVxuICAgICAgICAgICAgaGVpZ2h0PXtpbm5lckhlaWdodH1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxBeGlzTGVmdFxuICAgICAgICAgICAgc2hvdz17b3B0aW9ucy5heGlzLnNob3dZQXhpc0xhYmVsc31cbiAgICAgICAgICAgIHk9e2NoYXJ0Lnl9XG4gICAgICAgICAgICBtYXJnaW49e21hcmdpbn1cbiAgICAgICAgICAgIHRoZW1lQ1NTPXt0aGVtZUNTU31cbiAgICAgICAgICAgIHlTY2FsZT17eVNjYWxlfVxuICAgICAgICAgICAgdGlja3M9e3lUaWNrVmFsdWVzfVxuICAgICAgICAgICAgc3Ryb2tlPXt0aGVtZT8uYXhpcz8uc3Ryb2tlfVxuICAgICAgICAgIC8+XG4gICAgICAgICAgPEdyb3VwPlxuICAgICAgICAgICAgeyFvcHRpb25zLnN0YWNrZWQgJiYgKFxuICAgICAgICAgICAgICA8QmFyR3JvdXBcbiAgICAgICAgICAgICAgICBkYXRhPXtkYXRhRmxhdHRlbmVkfVxuICAgICAgICAgICAgICAgIGtleXM9e3lTY2FsZUtleXN9XG4gICAgICAgICAgICAgICAgaGVpZ2h0PXtpbm5lckhlaWdodH1cbiAgICAgICAgICAgICAgICB4MD17ZCA9PiB7XG4gICAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgICAgICBjb25zdCB4VmFsdWUgPSBkW3hTY2FsZUtleV07XG5cbiAgICAgICAgICAgICAgICAgIGlmICh4U2NhbGVEYXRhVHlwZSA9PT0gJ3N0cmluZycpIHJldHVybiB4VmFsdWU7XG5cbiAgICAgICAgICAgICAgICAgIGNvbnN0IHhWYWx1ZUFkanVzdGVkID1cbiAgICAgICAgICAgICAgICAgICAgeFNjYWxlRGF0YVR5cGUgPT09ICdkYXRlX3RpbWUnXG4gICAgICAgICAgICAgICAgICAgICAgPyBuZXcgRGF0ZSh4VmFsdWUpXG4gICAgICAgICAgICAgICAgICAgICAgOiB4U2NhbGVEYXRhVHlwZSA9PT0gJ251bWJlcidcbiAgICAgICAgICAgICAgICAgICAgICA/IE51bWJlcih4VmFsdWUpXG4gICAgICAgICAgICAgICAgICAgICAgOiBTdHJpbmcoeFZhbHVlKTtcbiAgICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgICAgIHJldHVybiB4VmFsdWVBZGp1c3RlZDtcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgICB4MFNjYWxlPXt4U2NhbGV9XG4gICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICAgIHgxU2NhbGU9e2lubmVyWFNjYWxlfVxuICAgICAgICAgICAgICAgIHlTY2FsZT17eVNjYWxlfVxuICAgICAgICAgICAgICAgIGNvbG9yPXsoKSA9PiAnJ31cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtiYXJHcm91cHMgPT4ge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIGJhckdyb3Vwcy5tYXAoYmFyR3JvdXAgPT4gKFxuICAgICAgICAgICAgICAgICAgICA8R3JvdXAga2V5PXtgYmFyLWdyb3VwLSR7YmFyR3JvdXAuaW5kZXh9LSR7YmFyR3JvdXAueDB9YH0gbGVmdD17YmFyR3JvdXAueDB9PlxuICAgICAgICAgICAgICAgICAgICAgIHtiYXJHcm91cC5iYXJzLm1hcChiYXIgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGJhci52YWx1ZSA9PT0gbnVsbCkgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoYmFyLmhlaWdodCA8IDAgfHwgYmFyLndpZHRoIDwgMCkgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8QmFyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5PXtgYmFyLWdyb3VwLWJhci0ke2Jhckdyb3VwLmluZGV4fS0ke2Jhci5pbmRleH0tJHtiYXIudmFsdWV9LSR7YmFyLmtleX1gfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHg9e2Jhci54fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHk9e2Jhci55fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPXtiYXIud2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PXtiYXIuaGVpZ2h0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9e2dldEJhckZpbGwoY2hhcnQuYmFycywgY2hhcnQuY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXMsIGJhci5rZXksIGJhci52YWx1ZSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17ZSA9PiBoYW5kbGVPbkJhckNsaWNrKGUsIGJhckdyb3VwLCBiYXIpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZUhvdmVyPXtlbmFibGVIb3Zlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgIDwvR3JvdXA+XG4gICAgICAgICAgICAgICAgICApKTtcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICA8L0Jhckdyb3VwPlxuICAgICAgICAgICAgKX1cblxuICAgICAgICAgICAgey8qIEhvdyB0byB3ZSBnZXQgJ3NjYWxlVmFsdWUnIGhlcmU/IFdpbGwgd2UgbmVlZCB0byBzdGFydCBzdG9yaW5nIHNjYWxlS2V5IGFzIHdlbGwgYXMgeEtleT8gKi99XG4gICAgICAgICAgICB7b3B0aW9ucy5zdGFja2VkICYmIChcbiAgICAgICAgICAgICAgPEJhclN0YWNrXG4gICAgICAgICAgICAgICAgeD17ZCA9PiB7XG4gICAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgICAgICBjb25zdCB4VmFsdWUgPSBkW3hTY2FsZUtleV07XG4gICAgICAgICAgICAgICAgICBpZiAoeFNjYWxlRGF0YVR5cGUgPT09ICdzdHJpbmcnKSByZXR1cm4geFZhbHVlO1xuXG4gICAgICAgICAgICAgICAgICBjb25zdCB4VmFsdWVBZGp1c3RlZCA9XG4gICAgICAgICAgICAgICAgICAgIHhTY2FsZURhdGFUeXBlID09PSAnZGF0ZV90aW1lJ1xuICAgICAgICAgICAgICAgICAgICAgID8gbmV3IERhdGUoeFZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgIDogeFNjYWxlRGF0YVR5cGUgPT09ICdudW1iZXInXG4gICAgICAgICAgICAgICAgICAgICAgPyBOdW1iZXIoeFZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgIDogU3RyaW5nKHhWYWx1ZSk7XG4gICAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgICAgICByZXR1cm4geFZhbHVlQWRqdXN0ZWQ7XG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgICAgeFNjYWxlPXt4U2NhbGV9XG4gICAgICAgICAgICAgICAgeVNjYWxlPXt5U2NhbGV9XG4gICAgICAgICAgICAgICAgZGF0YT17ZGF0YUZsYXR0ZW5lZH1cbiAgICAgICAgICAgICAgICBrZXlzPXtjaGFydC55LmtleXN9XG4gICAgICAgICAgICAgICAgY29sb3I9eygpID0+ICcnfVxuICAgICAgICAgICAgICAgIGhlaWdodD17aW5uZXJIZWlnaHR9XG4gICAgICAgICAgICAgICAgd2lkdGg9e2lubmVyV2lkdGh9XG4gICAgICAgICAgICAgICAgb2Zmc2V0PVwibm9uZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7YmFyU3RhY2tzID0+XG4gICAgICAgICAgICAgICAgICBiYXJTdGFja3MubWFwKGJhclN0YWNrID0+XG4gICAgICAgICAgICAgICAgICAgIGJhclN0YWNrLmJhcnMubWFwKGJhciA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgaWYgKGJhci5oZWlnaHQgPCAzKSByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICBjb25zdCBCQVJfUEFERElORyA9IDEuNTtcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3RcbiAgICAgICAgICAgICAgICAgICAgICAgICAga2V5PXtgYmFyLXN0YWNrLSR7YmFyU3RhY2suaW5kZXh9LSR7YmFyLmluZGV4fWB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHg9e2Jhci54fVxuICAgICAgICAgICAgICAgICAgICAgICAgICB5PXtiYXIueX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9e2Jhci53aWR0aH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PXtiYXIuaGVpZ2h0IC0gQkFSX1BBRERJTkd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9e2dldEJhckZpbGwoY2hhcnQuYmFycywgY2hhcnQuY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXMsIGJhci5rZXksIGJhci5iYXIuZGF0YSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJ4PXtCQVJfUkFESVVTfVxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9CYXJTdGFjaz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9Hcm91cD5cbiAgICAgICAgPC9Hcm91cD5cbiAgICAgICAgey8qIC0tLS0tIFRPT0xUSVAgQ1JPU1NIQUlSIC0tLS0tICovfVxuICAgICAgICB7dG9vbHRpcERhdGEgJiYgKFxuICAgICAgICAgIDxnPlxuICAgICAgICAgICAgPExpbmUgeD17bGluZUxlZnR9IG1hcmdpbj17bWFyZ2lufSBoZWlnaHQ9e2lubmVySGVpZ2h0fSAvPlxuICAgICAgICAgIDwvZz5cbiAgICAgICAgKX1cbiAgICAgICAgey8qIC0tLS0tIEdPQUwgTElORVMgLS0tLS0tICovfVxuICAgICAgICA8R29hbExpbmVzIGdvYWxMaW5lcz17Y2hhcnQuZ29hbExpbmVzfSB5PXtkID0+IHlTY2FsZShkKX0gbWFyZ2luPXttYXJnaW59IHdpZHRoPXtpbm5lcldpZHRofSAvPlxuICAgICAgPC9DaGFydFdyYXBwZXI+XG4gICAgICB7LyogLS0tLS0gTEVHRU5EIC0tLS0tICovfVxuICAgICAge29wdGlvbnMuc2hvd0xlZ2VuZCAmJiAoXG4gICAgICAgIDxMZWdlbmRcbiAgICAgICAgICBsZWdlbmRJdGVtcz17Y2hhcnQuYmFyc31cbiAgICAgICAgICB2aXNpYmxlWUtleXM9e2NoYXJ0LmJhcnMubWFwKGxlZ2VuZEl0ZW0gPT4gbGVnZW5kSXRlbS55S2V5KX1cbiAgICAgICAgICBzZXRWaXNpYmxlWUtleXM9eygpID0+IHt9fVxuICAgICAgICAgIGtleXM9e2NoYXJ0LmtleXN9XG4gICAgICAgICAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM9e2NoYXJ0LmNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzfVxuICAgICAgICAgIG1hcmdpbkxlZnQ9e21hcmdpbi5sZWZ0IC0gbWFyZ2luLmxlZnRUaXRsZU9mZnNldH1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgICB7LyogLS0tLS0gVE9PTFRJUCAtLS0tLSAqL31cbiAgICAgIHt0b29sdGlwT3BlbiAmJiB0b29sdGlwRGF0YSAmJiB4S2V5ICYmIChcbiAgICAgICAgPFRvb2x0aXBcbiAgICAgICAgICB0b29sdGlwRGF0YT17dG9vbHRpcERhdGF9XG4gICAgICAgICAgdG9vbHRpcExlZnQ9e3Rvb2x0aXBMZWZ0fVxuICAgICAgICAgIHRvb2x0aXBUb3A9e3Rvb2x0aXBUb3B9XG4gICAgICAgICAgeEtleT17eEtleX1cbiAgICAgICAgICBrZXlzPXtjaGFydC5rZXlzfVxuICAgICAgICAgIHZpc2libGVZS2V5cz17Y2hhcnQuYmFycy5tYXAobGVnZW5kSXRlbSA9PiBsZWdlbmRJdGVtLnlLZXkpfVxuICAgICAgICAgIHlLZXlzPXtjaGFydC55LmtleXN9XG4gICAgICAgICAgbGVnZW5kSXRlbXM9e2NoYXJ0LmJhcnN9XG4gICAgICAgICAgc2hvd1JvdW5kZWRUb3RhbD17b3B0aW9ucy5zaG93Um91bmRlZFRvdGFsfVxuICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzPXtjaGFydC5jb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlc31cbiAgICAgICAgICB0aGVtZT17dGhlbWVDU1MucG9wb3Zlck1lbnVzfVxuICAgICAgICAvPlxuICAgICAgKX1cbiAgICA8L0ZyYWdtZW50PlxuICApO1xufTtcblxuY29uc3QgQmFyID0gKHByb3BzOiB7XG4gIG9uQ2xpY2s6IChlOiBSZWFjdC5Nb3VzZUV2ZW50PFNWR1JlY3RFbGVtZW50LCBNb3VzZUV2ZW50PikgPT4gdm9pZDtcbiAgZmlsbD86IHN0cmluZztcbiAgeDogbnVtYmVyO1xuICB5OiBudW1iZXI7XG4gIHdpZHRoOiBudW1iZXI7XG4gIGhlaWdodDogbnVtYmVyO1xuICBrZXk6IHN0cmluZztcbiAgZW5hYmxlSG92ZXI/OiBib29sZWFuO1xufSkgPT4ge1xuICBjb25zdCBbZmlsbENvbG9yLCBzZXRGaWxsQ29sb3JdID0gdXNlU3RhdGUocHJvcHMuZmlsbCk7XG4gIHJldHVybiAoXG4gICAgPHJlY3RcbiAgICAgIGtleT17cHJvcHMua2V5fVxuICAgICAgeD17cHJvcHMueH1cbiAgICAgIHk9e3Byb3BzLnl9XG4gICAgICB3aWR0aD17cHJvcHMud2lkdGh9XG4gICAgICBoZWlnaHQ9e3Byb3BzLmhlaWdodH1cbiAgICAgIGZpbGw9e2ZpbGxDb2xvcn1cbiAgICAgIHJ4PXtCQVJfUkFESVVTfVxuICAgICAgb25DbGljaz17cHJvcHMub25DbGlja31cbiAgICAgIG9uTW91c2VFbnRlcj17KCkgPT4gcHJvcHMuZW5hYmxlSG92ZXIgJiYgc2V0RmlsbENvbG9yKGxpZ2h0ZW5Db2xvcihwcm9wcy5maWxsLCAwLjgpKX1cbiAgICAgIG9uTW91c2VMZWF2ZT17KCkgPT4gcHJvcHMuZW5hYmxlSG92ZXIgJiYgc2V0RmlsbENvbG9yKHByb3BzLmZpbGwpfVxuICAgICAgY2xhc3NOYW1lPXtwcm9wcy5lbmFibGVIb3ZlciA/IGNzcyh7IGN1cnNvcjogJ3BvaW50ZXInIH0pIDogJyd9XG4gICAgLz5cbiAgKTtcbn07XG4iXX0= */",
43698
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJhckNoYXJ0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE4WXFDIiwiZmlsZSI6IkJhckNoYXJ0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhckNoYXJ0UmVwcmVzZW50YXRpb24sIEJhclN0eWxlcyB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQmFyQ2hhcnRWMi90eXBlcyc7XG5pbXBvcnQgeyBDaGFydFRoZW1lIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgR3JvdXAgfSBmcm9tICdAdmlzeC9ncm91cCc7XG5pbXBvcnQgeyBnZXRDaGFydFRoZW1lQ1NTLCBnZXRUb29sdGlwRGF0YSB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IEZyYWdtZW50LCB1c2VDYWxsYmFjaywgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBUb29sdGlwIH0gZnJvbSAnLi4vVG9vbHRpcCc7XG5pbXBvcnQgeyBMZWdlbmQgfSBmcm9tICcuLi9MZWdlbmQnO1xuaW1wb3J0IHsgQmFyR3JvdXAgYXMgVmlzeEJhckdyb3VwLCBCYXJTdGFjayB9IGZyb20gJ0B2aXN4L3NoYXBlJztcbmltcG9ydCB7IERhdGFUeXBlIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9GaWVsZC90eXBlcyc7XG5pbXBvcnQgeyBzY2FsZUJhbmQgfSBmcm9tICdAdmlzeC9zY2FsZSc7XG5pbXBvcnQgeyBnZXRCYXJGaWxsIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0QmFyRmlsbCc7XG5pbXBvcnQgeyBidWlsZE1hcmdpbiB9IGZyb20gJy4uLy4uL3V0aWxzL2J1aWxkTWFyZ2luJztcbmltcG9ydCB7XG4gIENoYXJ0RGF0YURlZmluaXRpb24sXG4gIENoYXJ0T25WaWV3Q2xpY2ssXG4gIENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGUsXG4gIERhdGFJdGVtLFxuICBTaGFwZURlZmluaXRpb24sXG59IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgbGlnaHRlbkNvbG9yIH0gZnJvbSAnLi4vLi4vLi4vc3R5bGVzL2NvbG9yLmZ1bmN0aW9ucyc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9jc3MnO1xuaW1wb3J0IHsgQmFyR3JvdXBCYXIsIEJhckdyb3VwIGFzIEJhckdyb3VwVHlwZSwgRGF0dW1PYmplY3QgfSBmcm9tICdAdmlzeC9zaGFwZS9saWIvdHlwZXMnO1xuaW1wb3J0IHsgdXNlRmxhdHRlbmVkRGF0YSB9IGZyb20gJy4uL2hvb2tzL3VzZUZsYXR0ZW5lZERhdGEnO1xuaW1wb3J0IEdvYWxMaW5lcyBmcm9tICcuLi9Hb2FsTGluZS9Hb2FsTGluZXMnO1xuaW1wb3J0IHsgQXhpc0JvdHRvbSB9IGZyb20gJy4uL0F4aXMvQXhpc0JvdHRvbSc7XG5pbXBvcnQgeyBBeGlzTGVmdCB9IGZyb20gJy4uL0F4aXMvQXhpc0xlZnQnO1xuaW1wb3J0IHsgR3JpZFJvd3MgfSBmcm9tICcuLi9HcmlkUm93cy9HcmlkUm93cyc7XG5pbXBvcnQgeyBDaGFydFdyYXBwZXIgfSBmcm9tICcuLi9DaGFydFdyYXBwZXIvQ2hhcnRXcmFwcGVyJztcbmltcG9ydCB7IFNjYWxlTGluZWFyLCBTY2FsZUJhbmQgfSBmcm9tICdAdmlzeC92ZW5kb3IvZDMtc2NhbGUnO1xuaW1wb3J0IHsgTGluZSB9IGZyb20gJy4uL1Rvb2x0aXAvTGluZSc7XG5pbXBvcnQgdXNlVG9vbHRpcCBmcm9tICcuLi9ob29rcy91c2VUb29sdGlwJztcbmltcG9ydCB7IHVzZUJhclhTY2FsZSB9IGZyb20gJy4vdXNlQmFyWFNjYWxlJztcbmltcG9ydCB7IHVzZVlTY2FsZSB9IGZyb20gJy4uL2hvb2tzL3VzZVlTY2FsZSc7XG5cbi8vIE5lZWQgdG8gbG9vayBhdCB1cGRhdGluZyBCYXJDaGFydCB0byB1c2UgdGhpcyB0eXBlIG1ldGhvZCBvZiByZW5kZXJpbmcgLSBodHRwczovL2NvZGVzYW5kYm94LmlvL3Avc2FuZGJveC92aXN4LWJhci1jaGFydC1qOXNtcGo/ZmlsZT0lMkZFeGFtcGxlLnRzeFxuLy8gQ3VycmVudGx5IGl0J3MgdXNpbmcgU3RhY2tlZCBDaGFydCB3aGljaCBpc24ndCB0ZWNobmljYWxseSBjb3JyZWN0XG5cbmV4cG9ydCB0eXBlIEJhckNoYXJ0UHJvcHMgPSB7XG4gIHdpZHRoOiBudW1iZXI7XG4gIGhlaWdodDogbnVtYmVyO1xuICB0aGVtZT86IENoYXJ0VGhlbWU7XG4gIGNoYXJ0OiBCYXJDaGFydFJlcHJlc2VudGF0aW9uO1xuICBvcHRpb25zOiB7XG4gICAgc3RhY2tlZDogYm9vbGVhbjtcbiAgICBzaG93Um91bmRlZFRvdGFsOiBib29sZWFuO1xuICAgIHNob3dMZWdlbmQ6IGJvb2xlYW47XG4gICAgcmVtb3ZlU3Ryb2tlOiBib29sZWFuO1xuICAgIGF4aXM6IHtcbiAgICAgIHNob3dYQXhpc0xhYmVsczogYm9vbGVhbjtcbiAgICAgIHNob3dZQXhpc0xhYmVsczogYm9vbGVhbjtcbiAgICB9O1xuICB9O1xuICBvbkNsaWNrOiAocGFyYW1zOiBDaGFydE9uVmlld0NsaWNrKSA9PiB2b2lkO1xuICBlbmFibGVIb3Zlcj86IGJvb2xlYW47XG59O1xuXG5jb25zdCBCQVJfUkFESVVTID0gMjtcblxuZXhwb3J0IGNvbnN0IEJhckNoYXJ0ID0gKHsgY2hhcnQsIHdpZHRoLCBoZWlnaHQsIG9wdGlvbnMsIHRoZW1lLCBvbkNsaWNrLCBlbmFibGVIb3ZlciB9OiBCYXJDaGFydFByb3BzKSA9PiB7XG4gIGNvbnN0IHtcbiAgICB0b29sdGlwT3BlbixcbiAgICB0b29sdGlwTGVmdCA9IDAsXG4gICAgdG9vbHRpcFRvcCA9IDAsXG4gICAgbGluZUxlZnQgPSAwLFxuICAgIHRvb2x0aXBEYXRhLFxuICAgIGhpZGVUb29sdGlwLFxuICAgIHNob3dUb29sdGlwLFxuICB9ID0gdXNlVG9vbHRpcDx7XG4gICAgW2tleUlkOiBzdHJpbmddOiBEYXRhSXRlbTtcbiAgfSB8IG51bGw+KCk7XG5cbiAgY29uc3QgbWFyZ2luID0gYnVpbGRNYXJnaW4oY2hhcnQueS50aWNrcywgb3B0aW9ucy5heGlzLnNob3dZQXhpc0xhYmVscywgY2hhcnQueS50aXRsZSAhPSBudWxsLCBjaGFydC54LnRpdGxlICE9IG51bGwpO1xuXG4gIC8vIGNvbnN0IFt2aXNpYmxlWUtleXMsIHNldFZpc2libGVZS2V5c10gPSB1c2VTdGF0ZShjaGFydC5iYXJzLm1hcCgobGVnZW5kSXRlbSkgPT4gbGVnZW5kSXRlbS55S2V5KSk7XG5cbiAgY29uc3QgaW5uZXJXaWR0aCA9IHdpZHRoIC0gbWFyZ2luLmxlZnQgLSBtYXJnaW4ucmlnaHQ7XG4gIGNvbnN0IGlubmVySGVpZ2h0ID0gaGVpZ2h0IC0gbWFyZ2luLnRvcCAtIG1hcmdpbi5ib3R0b20gLSAob3B0aW9ucy5zaG93TGVnZW5kID8gNDAgOiAwKTtcbiAgY29uc3QgeEtleSA9IGNoYXJ0Lngua2V5O1xuICBjb25zdCB4U2NhbGVLZXkgPSBjaGFydC54LnNjYWxlLmtleTtcbiAgY29uc3QgeVNjYWxlS2V5cyA9IGNoYXJ0Lnkua2V5cztcbiAgY29uc3QgeFNjYWxlRGF0YVR5cGU6IERhdGFUeXBlID0gY2hhcnQueC5zY2FsZS5kYXRhVHlwZTtcblxuICBjb25zdCB4U2NhbGUgPSB1c2VCYXJYU2NhbGUoeFNjYWxlRGF0YVR5cGUsIGlubmVyV2lkdGgsIHhTY2FsZUtleSwgY2hhcnQuZGF0YSk7XG5cbiAgY29uc3QgeVNjYWxlID0gdXNlWVNjYWxlKGlubmVySGVpZ2h0LCBjaGFydC55LnNjYWxlKTtcblxuICBjb25zdCBpbm5lclhTY2FsZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghb3B0aW9ucy5zdGFja2VkICYmIHhTY2FsZSAmJiAnYmFuZHdpZHRoJyBpbiB4U2NhbGUpIHtcbiAgICAgIHJldHVybiBzY2FsZUJhbmQ8c3RyaW5nPih7XG4gICAgICAgIHJhbmdlOiBbMCwgeFNjYWxlPy5iYW5kd2lkdGgoKV0sXG4gICAgICAgIGRvbWFpbjogeVNjYWxlS2V5cyxcbiAgICAgICAgcGFkZGluZzogMC4xLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfSwgW3hTY2FsZSwgeVNjYWxlS2V5cywgb3B0aW9ucy5zdGFja2VkLCB4U2NhbGVEYXRhVHlwZV0pO1xuXG4gIGNvbnN0IGRhdGFGbGF0dGVuZWQgPSB1c2VGbGF0dGVuZWREYXRhPENoYXJ0RGF0YURlZmluaXRpb24+KHhTY2FsZUtleSwgeFNjYWxlRGF0YVR5cGUsIGNoYXJ0LmRhdGEsIGNoYXJ0Lnkua2V5cyk7XG5cbiAgY29uc3QgaGFuZGxlTW91c2VNb3ZlID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50OiBSZWFjdC5Nb3VzZUV2ZW50PFNWR0VsZW1lbnQ+KSA9PiB7XG4gICAgICBpZiAoIXhLZXkgfHwgIXhTY2FsZUtleSB8fCB4U2NhbGUgPT09IG51bGwpIHJldHVybjtcblxuICAgICAgY29uc3QgdG9vbHRpcERhdGEgPSBnZXRUb29sdGlwRGF0YSh7XG4gICAgICAgIGRhdGE6IGNoYXJ0LmRhdGEsXG4gICAgICAgIGV2ZW50LFxuICAgICAgICBtYXJnaW4sXG4gICAgICAgIHhTY2FsZUtleSxcbiAgICAgICAgeFNjYWxlRGF0YVR5cGUsXG4gICAgICAgIHhPcmRlcmluZzogY2hhcnQueC5zY2FsZS5vcmRlcmluZyxcbiAgICAgICAgeFNjYWxlLFxuICAgICAgICBjaGFydFR5cGU6ICdiYXInLFxuICAgICAgfSk7XG5cbiAgICAgIHNob3dUb29sdGlwKHtcbiAgICAgICAgbGluZUxlZnQ6IHRvb2x0aXBEYXRhPy5saW5lTGVmdCxcbiAgICAgICAgdG9vbHRpcExlZnQ6IGV2ZW50LnBhZ2VYLFxuICAgICAgICB0b29sdGlwVG9wOiBldmVudC5wYWdlWSxcbiAgICAgICAgdG9vbHRpcERhdGE6IHRvb2x0aXBEYXRhPy50b29sdGlwRGF0YSxcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgW3Nob3dUb29sdGlwLCB4U2NhbGUsIG1hcmdpbiwgeEtleSwgeFNjYWxlS2V5LCB4U2NhbGVEYXRhVHlwZSwgY2hhcnQueC5zY2FsZS5vcmRlcmluZywgY2hhcnQuZGF0YV1cbiAgKTtcblxuICBjb25zdCBoYW5kbGVNb3VzZUxlYXZlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGhpZGVUb29sdGlwKCk7XG4gIH0sIFtoaWRlVG9vbHRpcF0pO1xuXG4gIGNvbnN0IGhhbmRsZU9uQmFyQ2xpY2sgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8U1ZHUmVjdEVsZW1lbnQsIE1vdXNlRXZlbnQ+LCBiYXJHcm91cDogQmFyR3JvdXBUeXBlPHN0cmluZz4sIGJhcjogQmFyR3JvdXBCYXI8c3RyaW5nPikgPT4ge1xuICAgICAgb25DbGljayh7XG4gICAgICAgIGNsaWNrZWRWYWx1ZToge1xuICAgICAgICAgIGluZGV4OiBiYXJHcm91cC5pbmRleCxcbiAgICAgICAgICB5OiB7XG4gICAgICAgICAgICBrZXk6IGJhci5rZXksXG4gICAgICAgICAgICB2YWx1ZTogYmFyLnZhbHVlLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgeDoge1xuICAgICAgICAgICAgLi4uY2hhcnQueC50aWNrc1tiYXJHcm91cC5pbmRleF0sXG4gICAgICAgICAgICB2YWx1ZTogY2hhcnQuZGF0YVtiYXJHcm91cC5pbmRleF1beEtleV0udmFsdWUgPz8gJycsXG4gICAgICAgICAgICBrZXk6IHhLZXksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgY2xpY2tFdmVudDogZXZlbnQsXG4gICAgICB9KTtcbiAgICB9LFxuICAgIFtvbkNsaWNrLCBjaGFydC5kYXRhLCB4S2V5XVxuICApO1xuXG4gIGNvbnN0IHRoZW1lQ1NTID0gdXNlTWVtbygoKSA9PiBnZXRDaGFydFRoZW1lQ1NTKHRoZW1lKSwgW3RoZW1lXSk7XG5cbiAgY29uc3QgeVRpY2tWYWx1ZXMgPSBjaGFydC55LnRpY2tzLm1hcCh0aWNrID0+IE51bWJlcih0aWNrLnZhbHVlKSk7XG5cbiAgY29uc3QgbGVnZW5kVG9vbHRpcEl0ZW1zID0gW1xuICAgIHtcbiAgICAgIHZpc2libGVZS2V5czogY2hhcnQuYmFycy5tYXAobGVnZW5kSXRlbSA9PiBsZWdlbmRJdGVtLnlLZXkpLFxuICAgICAgbGVnZW5kSXRlbXM6IGNoYXJ0LmJhcnMsXG4gICAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogY2hhcnQuY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXMsXG4gICAgfSxcbiAgXTtcbiAgcmV0dXJuIChcbiAgICA8RnJhZ21lbnQ+XG4gICAgICA8Q2hhcnRXcmFwcGVyXG4gICAgICAgIHdpZHRoPXt3aWR0aH1cbiAgICAgICAgaGVpZ2h0PXtoZWlnaHR9XG4gICAgICAgIG9uTW91c2VNb3ZlPXtoYW5kbGVNb3VzZU1vdmV9XG4gICAgICAgIG9uTW91c2VMZWF2ZT17aGFuZGxlTW91c2VMZWF2ZX1cbiAgICAgICAgc2hvd0xlZ2VuZD17b3B0aW9ucy5zaG93TGVnZW5kfVxuICAgICAgPlxuICAgICAgICA8R3JvdXAgbGVmdD17bWFyZ2luLmxlZnR9IHRvcD17bWFyZ2luLnRvcH0+XG4gICAgICAgICAgPEdyaWRSb3dzXG4gICAgICAgICAgICB0aWNrcz17eVRpY2tWYWx1ZXN9XG4gICAgICAgICAgICB5U2NhbGU9e3lTY2FsZX1cbiAgICAgICAgICAgIHdpZHRoPXtpbm5lcldpZHRofVxuICAgICAgICAgICAgaGVpZ2h0PXtpbm5lckhlaWdodH1cbiAgICAgICAgICAgIHJlbW92ZVN0cm9rZT17b3B0aW9ucy5yZW1vdmVTdHJva2V9XG4gICAgICAgICAgICB0aGVtZUNTUz17dGhlbWVDU1N9XG4gICAgICAgICAgLz5cbiAgICAgICAgICA8QXhpc0JvdHRvbVxuICAgICAgICAgICAgeD17Y2hhcnQueH1cbiAgICAgICAgICAgIG1hcmdpbj17bWFyZ2lufVxuICAgICAgICAgICAgdGhlbWVDU1M9e3RoZW1lQ1NTfVxuICAgICAgICAgICAgc2hvdz17b3B0aW9ucy5heGlzLnNob3dYQXhpc0xhYmVsc31cbiAgICAgICAgICAgIHJlbW92ZVN0cm9rZT17b3B0aW9ucy5yZW1vdmVTdHJva2V9XG4gICAgICAgICAgICB4U2NhbGVEYXRhVHlwZT17eFNjYWxlRGF0YVR5cGV9XG4gICAgICAgICAgICB4U2NhbGU9e3hTY2FsZX1cbiAgICAgICAgICAgIGhlaWdodD17aW5uZXJIZWlnaHR9XG4gICAgICAgICAgLz5cbiAgICAgICAgICA8QXhpc0xlZnRcbiAgICAgICAgICAgIHNob3c9e29wdGlvbnMuYXhpcy5zaG93WUF4aXNMYWJlbHN9XG4gICAgICAgICAgICB5PXtjaGFydC55fVxuICAgICAgICAgICAgbWFyZ2luPXttYXJnaW59XG4gICAgICAgICAgICB0aGVtZUNTUz17dGhlbWVDU1N9XG4gICAgICAgICAgICB5U2NhbGU9e3lTY2FsZX1cbiAgICAgICAgICAgIHRpY2tzPXt5VGlja1ZhbHVlc31cbiAgICAgICAgICAgIHN0cm9rZT17dGhlbWU/LmF4aXM/LnN0cm9rZX1cbiAgICAgICAgICAvPlxuICAgICAgICAgIDxHcm91cD5cbiAgICAgICAgICAgIHshb3B0aW9ucy5zdGFja2VkICYmIChcbiAgICAgICAgICAgICAgPEJhckdyb3VwXG4gICAgICAgICAgICAgICAgZGF0YT17ZGF0YUZsYXR0ZW5lZH1cbiAgICAgICAgICAgICAgICBrZXlzPXt5U2NhbGVLZXlzfVxuICAgICAgICAgICAgICAgIGhlaWdodD17aW5uZXJIZWlnaHR9XG4gICAgICAgICAgICAgICAgeEtleT17eEtleX1cbiAgICAgICAgICAgICAgICB4U2NhbGVEYXRhVHlwZT17eFNjYWxlRGF0YVR5cGV9XG4gICAgICAgICAgICAgICAgeFNjYWxlPXt4U2NhbGV9XG4gICAgICAgICAgICAgICAgaW5uZXJYU2NhbGU9e2lubmVyWFNjYWxlfVxuICAgICAgICAgICAgICAgIHlTY2FsZT17eVNjYWxlfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZU9uQmFyQ2xpY2t9XG4gICAgICAgICAgICAgICAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM9e2NoYXJ0LmNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzfVxuICAgICAgICAgICAgICAgIGJhcnM9e2NoYXJ0LmJhcnN9XG4gICAgICAgICAgICAgICAgZW5hYmxlSG92ZXI9e2VuYWJsZUhvdmVyfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cblxuICAgICAgICAgICAge29wdGlvbnMuc3RhY2tlZCAmJiAoXG4gICAgICAgICAgICAgIDxCYXJTdGFja1xuICAgICAgICAgICAgICAgIHg9e2QgPT4ge1xuICAgICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICAgICAgY29uc3QgeFZhbHVlID0gZFt4U2NhbGVLZXldO1xuICAgICAgICAgICAgICAgICAgaWYgKHhTY2FsZURhdGFUeXBlID09PSAnc3RyaW5nJykgcmV0dXJuIHhWYWx1ZTtcblxuICAgICAgICAgICAgICAgICAgY29uc3QgeFZhbHVlQWRqdXN0ZWQgPVxuICAgICAgICAgICAgICAgICAgICB4U2NhbGVEYXRhVHlwZSA9PT0gJ2RhdGVfdGltZSdcbiAgICAgICAgICAgICAgICAgICAgICA/IG5ldyBEYXRlKHhWYWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgICA6IHhTY2FsZURhdGFUeXBlID09PSAnbnVtYmVyJ1xuICAgICAgICAgICAgICAgICAgICAgID8gTnVtYmVyKHhWYWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgICA6IFN0cmluZyh4VmFsdWUpO1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIHhWYWx1ZUFkanVzdGVkO1xuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICAgIHhTY2FsZT17eFNjYWxlfVxuICAgICAgICAgICAgICAgIHlTY2FsZT17eVNjYWxlfVxuICAgICAgICAgICAgICAgIGRhdGE9e2RhdGFGbGF0dGVuZWR9XG4gICAgICAgICAgICAgICAga2V5cz17Y2hhcnQueS5rZXlzfVxuICAgICAgICAgICAgICAgIGNvbG9yPXsoKSA9PiAnJ31cbiAgICAgICAgICAgICAgICBoZWlnaHQ9e2lubmVySGVpZ2h0fVxuICAgICAgICAgICAgICAgIHdpZHRoPXtpbm5lcldpZHRofVxuICAgICAgICAgICAgICAgIG9mZnNldD1cIm5vbmVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2JhclN0YWNrcyA9PlxuICAgICAgICAgICAgICAgICAgYmFyU3RhY2tzLm1hcChiYXJTdGFjayA9PlxuICAgICAgICAgICAgICAgICAgICBiYXJTdGFjay5iYXJzLm1hcChiYXIgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgIGlmIChiYXIuaGVpZ2h0IDwgMykgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICAgICAgICAgICAgY29uc3QgQkFSX1BBRERJTkcgPSAxLjU7XG4gICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGtleT17YGJhci1zdGFjay0ke2JhclN0YWNrLmluZGV4fS0ke2Jhci5pbmRleH1gfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB4PXtiYXIueH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgeT17YmFyLnl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPXtiYXIud2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD17YmFyLmhlaWdodCAtIEJBUl9QQURESU5HfVxuICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPXtnZXRCYXJGaWxsKGNoYXJ0LmJhcnMsIGNoYXJ0LmNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLCBiYXIua2V5LCBiYXIuYmFyLmRhdGEpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICByeD17QkFSX1JBRElVU31cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvQmFyU3RhY2s+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvR3JvdXA+XG4gICAgICAgIDwvR3JvdXA+XG4gICAgICAgIHsvKiAtLS0tLSBUT09MVElQIENST1NTSEFJUiAtLS0tLSAqL31cbiAgICAgICAge3Rvb2x0aXBEYXRhICYmIChcbiAgICAgICAgICA8Zz5cbiAgICAgICAgICAgIDxMaW5lIHg9e2xpbmVMZWZ0fSBtYXJnaW49e21hcmdpbn0gaGVpZ2h0PXtpbm5lckhlaWdodH0gLz5cbiAgICAgICAgICA8L2c+XG4gICAgICAgICl9XG4gICAgICAgIHsvKiAtLS0tLSBHT0FMIExJTkVTIC0tLS0tLSAqL31cbiAgICAgICAgPEdvYWxMaW5lcyBnb2FsTGluZXM9e2NoYXJ0LmdvYWxMaW5lc30geT17ZCA9PiB5U2NhbGUoZCl9IG1hcmdpbj17bWFyZ2lufSB3aWR0aD17aW5uZXJXaWR0aH0gLz5cbiAgICAgIDwvQ2hhcnRXcmFwcGVyPlxuICAgICAgey8qIC0tLS0tIExFR0VORCAtLS0tLSAqL31cbiAgICAgIHtvcHRpb25zLnNob3dMZWdlbmQgJiYgKFxuICAgICAgICA8TGVnZW5kXG4gICAgICAgICAgaXRlbXM9e2xlZ2VuZFRvb2x0aXBJdGVtc31cbiAgICAgICAgICBzZXRWaXNpYmxlWUtleXM9eygpID0+IHt9fVxuICAgICAgICAgIGtleXM9e2NoYXJ0LmtleXN9XG4gICAgICAgICAgbWFyZ2luTGVmdD17bWFyZ2luLmxlZnQgLSBtYXJnaW4ubGVmdFRpdGxlT2Zmc2V0fVxuICAgICAgICAvPlxuICAgICAgKX1cbiAgICAgIHsvKiAtLS0tLSBUT09MVElQIC0tLS0tICovfVxuICAgICAge3Rvb2x0aXBPcGVuICYmIHRvb2x0aXBEYXRhICYmIHhLZXkgJiYgKFxuICAgICAgICA8VG9vbHRpcFxuICAgICAgICAgIGl0ZW1zPXtsZWdlbmRUb29sdGlwSXRlbXN9XG4gICAgICAgICAgdG9vbHRpcERhdGE9e3Rvb2x0aXBEYXRhfVxuICAgICAgICAgIHRvb2x0aXBMZWZ0PXt0b29sdGlwTGVmdH1cbiAgICAgICAgICB0b29sdGlwVG9wPXt0b29sdGlwVG9wfVxuICAgICAgICAgIHhLZXk9e3hLZXl9XG4gICAgICAgICAga2V5cz17Y2hhcnQua2V5c31cbiAgICAgICAgICB5S2V5cz17Y2hhcnQueS5rZXlzfVxuICAgICAgICAgIHNob3dSb3VuZGVkVG90YWw9e29wdGlvbnMuc2hvd1JvdW5kZWRUb3RhbH1cbiAgICAgICAgICB0aGVtZT17dGhlbWVDU1MucG9wb3Zlck1lbnVzfVxuICAgICAgICAvPlxuICAgICAgKX1cbiAgICA8L0ZyYWdtZW50PlxuICApO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIEJhckdyb3VwKHtcbiAgZGF0YSxcbiAga2V5cyxcbiAgaGVpZ2h0LFxuICB4S2V5LFxuICB4U2NhbGVEYXRhVHlwZSxcbiAgeFNjYWxlLFxuICBpbm5lclhTY2FsZSxcbiAgeVNjYWxlLFxuICBvbkNsaWNrLFxuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcyxcbiAgYmFycyxcbiAgZW5hYmxlSG92ZXIsXG59OiB7XG4gIGRhdGE6IENoYXJ0RGF0YURlZmluaXRpb25bXTtcbiAga2V5czogc3RyaW5nW107XG4gIGhlaWdodDogbnVtYmVyO1xuICB4S2V5OiBzdHJpbmc7XG4gIHhTY2FsZURhdGFUeXBlOiBEYXRhVHlwZTtcbiAgeFNjYWxlOiBTY2FsZUJhbmQ8c3RyaW5nPiB8IFNjYWxlQmFuZDxEYXRlPiB8IFNjYWxlQmFuZDxudW1iZXI+IHwgbnVsbDtcbiAgaW5uZXJYU2NhbGU6IFNjYWxlQmFuZDxzdHJpbmc+IHwgdW5kZWZpbmVkO1xuICB5U2NhbGU6IFNjYWxlTGluZWFyPG51bWJlciwgbnVtYmVyLCBuZXZlcj47XG4gIG9uQ2xpY2s6IChlOiBSZWFjdC5Nb3VzZUV2ZW50PFNWR1JlY3RFbGVtZW50LCBNb3VzZUV2ZW50PiwgYmFyR3JvdXA6IGFueSwgYmFyOiBhbnkpID0+IHZvaWQ7XG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlW107XG4gIGJhcnM6IFNoYXBlRGVmaW5pdGlvbjxCYXJTdHlsZXM+W107XG4gIGVuYWJsZUhvdmVyPzogYm9vbGVhbjtcbn0pIHtcbiAgcmV0dXJuIChcbiAgICA8VmlzeEJhckdyb3VwPERhdHVtT2JqZWN0PlxuICAgICAgZGF0YT17ZGF0YSBhcyBEYXR1bU9iamVjdFtdfVxuICAgICAga2V5cz17a2V5c31cbiAgICAgIGhlaWdodD17aGVpZ2h0fVxuICAgICAgeDA9e2QgPT4ge1xuICAgICAgICBjb25zdCB4VmFsdWUgPSBkW3hLZXkgYXMga2V5b2YgdHlwZW9mIGRdO1xuICAgICAgICBpZiAoeFNjYWxlRGF0YVR5cGUgPT09ICdzdHJpbmcnKSByZXR1cm4gU3RyaW5nKHhWYWx1ZSk7XG4gICAgICAgIGNvbnN0IHhWYWx1ZUFkanVzdGVkID1cbiAgICAgICAgICB4U2NhbGVEYXRhVHlwZSA9PT0gJ2RhdGVfdGltZSdcbiAgICAgICAgICAgID8gbmV3IERhdGUoU3RyaW5nKHhWYWx1ZSkpXG4gICAgICAgICAgICA6IHhTY2FsZURhdGFUeXBlID09PSAnbnVtYmVyJ1xuICAgICAgICAgICAgPyBOdW1iZXIoeFZhbHVlKVxuICAgICAgICAgICAgOiBTdHJpbmcoeFZhbHVlKTtcbiAgICAgICAgcmV0dXJuIHhWYWx1ZUFkanVzdGVkO1xuICAgICAgfX1cbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIHgwU2NhbGU9e3hTY2FsZX1cbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIHgxU2NhbGU9e2lubmVyWFNjYWxlfVxuICAgICAgeVNjYWxlPXt5U2NhbGV9XG4gICAgICBjb2xvcj17KCkgPT4gJyd9XG4gICAgPlxuICAgICAge2Jhckdyb3VwcyA9PiB7XG4gICAgICAgIHJldHVybiBiYXJHcm91cHMubWFwKGJhckdyb3VwID0+IChcbiAgICAgICAgICA8R3JvdXAga2V5PXtgYmFyLWdyb3VwLSR7YmFyR3JvdXAuaW5kZXh9LSR7YmFyR3JvdXAueDB9YH0gbGVmdD17YmFyR3JvdXAueDB9PlxuICAgICAgICAgICAge2Jhckdyb3VwLmJhcnMubWFwKGJhciA9PiB7XG4gICAgICAgICAgICAgIGlmIChiYXIudmFsdWUgPT09IG51bGwgfHwgYmFyLmhlaWdodCA8IDAgfHwgYmFyLndpZHRoIDwgMCkgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgPEJhclxuICAgICAgICAgICAgICAgICAga2V5PXtgYmFyLWdyb3VwLWJhci0ke2Jhckdyb3VwLmluZGV4fS0ke2Jhci5pbmRleH0tJHtiYXIudmFsdWV9LSR7U3RyaW5nKGJhci5rZXkpfWB9XG4gICAgICAgICAgICAgICAgICB4PXtiYXIueH1cbiAgICAgICAgICAgICAgICAgIHk9e2Jhci55fVxuICAgICAgICAgICAgICAgICAgd2lkdGg9e2Jhci53aWR0aH1cbiAgICAgICAgICAgICAgICAgIGhlaWdodD17YmFyLmhlaWdodH1cbiAgICAgICAgICAgICAgICAgIGZpbGw9e2dldEJhckZpbGwoYmFycywgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXMsIFN0cmluZyhiYXIua2V5KSwgYmFyLnZhbHVlKX1cbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2UgPT4gb25DbGljayhlLCBiYXJHcm91cCwgYmFyKX1cbiAgICAgICAgICAgICAgICAgIGVuYWJsZUhvdmVyPXtlbmFibGVIb3Zlcn1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgPC9Hcm91cD5cbiAgICAgICAgKSk7XG4gICAgICB9fVxuICAgIDwvVmlzeEJhckdyb3VwPlxuICApO1xufVxuXG5jb25zdCBCYXIgPSAocHJvcHM6IHtcbiAgb25DbGljazogKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8U1ZHUmVjdEVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB2b2lkO1xuICBmaWxsPzogc3RyaW5nO1xuICB4OiBudW1iZXI7XG4gIHk6IG51bWJlcjtcbiAgd2lkdGg6IG51bWJlcjtcbiAgaGVpZ2h0OiBudW1iZXI7XG4gIGtleTogc3RyaW5nO1xuICBlbmFibGVIb3Zlcj86IGJvb2xlYW47XG59KSA9PiB7XG4gIGNvbnN0IFtmaWxsQ29sb3IsIHNldEZpbGxDb2xvcl0gPSB1c2VTdGF0ZShwcm9wcy5maWxsKTtcbiAgcmV0dXJuIChcbiAgICA8cmVjdFxuICAgICAga2V5PXtwcm9wcy5rZXl9XG4gICAgICB4PXtwcm9wcy54fVxuICAgICAgeT17cHJvcHMueX1cbiAgICAgIHdpZHRoPXtwcm9wcy53aWR0aH1cbiAgICAgIGhlaWdodD17cHJvcHMuaGVpZ2h0fVxuICAgICAgZmlsbD17ZmlsbENvbG9yfVxuICAgICAgcng9e0JBUl9SQURJVVN9XG4gICAgICBvbkNsaWNrPXtwcm9wcy5vbkNsaWNrfVxuICAgICAgb25Nb3VzZUVudGVyPXsoKSA9PiBwcm9wcy5lbmFibGVIb3ZlciAmJiBzZXRGaWxsQ29sb3IobGlnaHRlbkNvbG9yKHByb3BzLmZpbGwsIDAuOCkpfVxuICAgICAgb25Nb3VzZUxlYXZlPXsoKSA9PiBwcm9wcy5lbmFibGVIb3ZlciAmJiBzZXRGaWxsQ29sb3IocHJvcHMuZmlsbCl9XG4gICAgICBjbGFzc05hbWU9e3Byb3BzLmVuYWJsZUhvdmVyID8gY3NzKHsgY3Vyc29yOiAncG9pbnRlcicgfSkgOiAnJ31cbiAgICAvPlxuICApO1xufTtcbiJdfQ== */",
43651
43699
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$9
43652
43700
  }) : ''
43653
43701
  }, props.key);
@@ -43823,14 +43871,8 @@ var AreaChart$5 = function AreaChart(_ref) {
43823
43871
  }
43824
43872
  return null;
43825
43873
  }, [innerWidth, chart.x, chart.data]);
43826
- var _yScale = React.useMemo(function () {
43827
- return scale.scaleLinear({
43828
- range: [innerHeight, 0],
43829
- domain: chart.y.scale.ordering === 'asc' ? [chart.y.scale.min, chart.y.scale.max] : [chart.y.scale.max, chart.y.scale.min],
43830
- nice: true
43831
- });
43832
- }, [innerHeight, chart.y.scale]);
43833
- var dataFlattened = useFlattenedData(xScaleKey, xScaleDataType, chart);
43874
+ var _yScale = useYScale(innerHeight, chart.y.scale);
43875
+ var dataFlattened = useFlattenedData(xScaleKey, xScaleDataType, chart.data, chart.y.keys);
43834
43876
  var handleMouseMove = React.useCallback(function (event) {
43835
43877
  if (!xKey || !xScaleKey || xScale === null) return;
43836
43878
  var tooltipData = getTooltipData({
@@ -43860,12 +43902,17 @@ var AreaChart$5 = function AreaChart(_ref) {
43860
43902
  step: Curves.curveStep,
43861
43903
  straight: Curves.curveLinear
43862
43904
  };
43863
- return curveMap[(_options$curve = options.curve) != null ? _options$curve : 'monotoneX'];
43905
+ return curveMap[(_options$curve = options.curve) != null ? _options$curve : 'natural'];
43864
43906
  }, [options.curve]);
43865
43907
  if (width === 0 || height === 0 || xScale === null) return jsxRuntime.jsx(React__default.Fragment, {});
43866
43908
  var yTickValues = chart.y.ticks.map(function (tick) {
43867
43909
  return Number(tick.value);
43868
43910
  });
43911
+ var legendTooltipItems = [{
43912
+ visibleYKeys: visibleYKeys,
43913
+ legendItems: chart.areas,
43914
+ conditionalFormattingRules: chart.conditionalFormattingRules
43915
+ }];
43869
43916
  return jsxRuntime.jsxs(React__default.Fragment, {
43870
43917
  children: [jsxRuntime.jsxs(ChartWrapper$1, {
43871
43918
  width: width,
@@ -44021,23 +44068,19 @@ var AreaChart$5 = function AreaChart(_ref) {
44021
44068
  width: innerWidth
44022
44069
  })]
44023
44070
  }), options.showLegend && jsxRuntime.jsx(Legend$1, {
44024
- legendItems: chart.areas,
44025
- visibleYKeys: visibleYKeys,
44071
+ items: legendTooltipItems,
44026
44072
  setVisibleYKeys: setVisibleYKeys,
44027
44073
  keys: chart.keys,
44028
- conditionalFormattingRules: chart.conditionalFormattingRules,
44029
44074
  marginLeft: margin.left - margin.leftTitleOffset
44030
44075
  }), tooltipOpen && tooltipData && xKey && jsxRuntime.jsx(Tooltip$1, {
44076
+ items: legendTooltipItems,
44031
44077
  tooltipData: tooltipData,
44032
44078
  tooltipLeft: tooltipLeft,
44033
44079
  tooltipTop: tooltipTop,
44034
44080
  xKey: xKey,
44035
44081
  keys: chart.keys,
44036
- visibleYKeys: visibleYKeys,
44037
44082
  yKeys: chart.y.keys,
44038
- legendItems: chart.areas,
44039
44083
  showRoundedTotal: options.showRoundedTotal,
44040
- conditionalFormattingRules: chart.conditionalFormattingRules,
44041
44084
  theme: themeCSS.popoverMenus
44042
44085
  })]
44043
44086
  });
@@ -44340,11 +44383,13 @@ var RadarChart$2 = function RadarChart(_ref) {
44340
44383
  })]
44341
44384
  })
44342
44385
  }), options.showLegend && jsxRuntime.jsx(Legend$1, {
44343
- legendItems: chart.lines,
44344
- visibleYKeys: visibleYKeys,
44386
+ items: [{
44387
+ legendItems: chart.lines,
44388
+ visibleYKeys: visibleYKeys,
44389
+ conditionalFormattingRules: []
44390
+ }],
44345
44391
  setVisibleYKeys: setVisibleYKeys,
44346
44392
  keys: chart.keys,
44347
- conditionalFormattingRules: [],
44348
44393
  marginLeft: margin.left - margin.leftTitleOffset
44349
44394
  })]
44350
44395
  });
@@ -49289,11 +49334,13 @@ var Legend$2 = function Legend(_ref) {
49289
49334
  };
49290
49335
  if (!showLegend) return null;
49291
49336
  return jsxRuntime.jsx(Legend$1, {
49292
- legendItems: items,
49293
- visibleYKeys: ['increase', 'decrease'],
49337
+ items: [{
49338
+ legendItems: items,
49339
+ visibleYKeys: ['increase', 'decrease'],
49340
+ conditionalFormattingRules: []
49341
+ }],
49294
49342
  keys: keys,
49295
49343
  marginLeft: margin.left - margin.leftTitleOffset,
49296
- conditionalFormattingRules: [],
49297
49344
  setVisibleYKeys: function setVisibleYKeys() {}
49298
49345
  });
49299
49346
  };