@vizzly/dashboard 0.15.0-dev-ac044c49c73d54ff3c144918a639d24aea98b549 → 0.15.0-dev-99fa2919f27a2c00cd133f2bbc6a59fe90cb6b42

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.
@@ -34862,16 +34862,6 @@ var calculateMinMax = function calculateMinMax(values) {
34862
34862
  maxValue: maxValue
34863
34863
  };
34864
34864
  };
34865
- var normalizeKey = function normalizeKey(value) {
34866
- if (typeof value === 'number' || !isNaN(Number(value)) && !isNaN(parseFloat(value))) {
34867
- var numValue = Number(value);
34868
- if (numValue >= 0 && numValue <= 1) {
34869
- return numValue.toString();
34870
- }
34871
- return numValue.toString().split('.')[0];
34872
- }
34873
- return String(value);
34874
- };
34875
34865
 
34876
34866
  // @TODO: Adjust the totalItems logic to be flexible based on the available width
34877
34867
  var showDataLabel = function showDataLabel(totalItems) {
@@ -34891,7 +34881,7 @@ var getLabelDictionary = function getLabelDictionary(formattedData, keys) {
34891
34881
  var convertedArray = keys.map(function (key) {
34892
34882
  var _d$key, _ref;
34893
34883
  if (!((_d$key = d[key]) != null && _d$key.formattedValue)) return;
34894
- var valueKey = normalizeKey(d[key].value);
34884
+ var valueKey = String(d[key].value);
34895
34885
  var label = d[key].formattedValue;
34896
34886
  return _ref = {}, _ref[valueKey] = label, _ref;
34897
34887
  }).flat();
@@ -34915,11 +34905,10 @@ var getLabelDictionary = function getLabelDictionary(formattedData, keys) {
34915
34905
  return dictionary;
34916
34906
  };
34917
34907
  var getFormattedValue = function getFormattedValue(value, dictionary) {
34918
- var _dictionary$normalize;
34908
+ var _dictionary$actualVal;
34919
34909
  var actualValue = (value == null ? void 0 : value.value) !== undefined ? value.value : value;
34920
34910
  if (!dictionary) return actualValue;
34921
- var normalizedKey = normalizeKey(actualValue);
34922
- return (_dictionary$normalize = dictionary[normalizedKey]) != null ? _dictionary$normalize : actualValue;
34911
+ return (_dictionary$actualVal = dictionary[actualValue]) != null ? _dictionary$actualVal : actualValue;
34923
34912
  };
34924
34913
  var getAllChartValues = function getAllChartValues(data, keys) {
34925
34914
  var allValues = [];
@@ -45878,6 +45867,7 @@ function BarGroup(_ref) {
45878
45867
  var data = _ref.data,
45879
45868
  keys = _ref.keys,
45880
45869
  height = _ref.height,
45870
+ width = _ref.width,
45881
45871
  xKey = _ref.xKey,
45882
45872
  xScaleDataType = _ref.xScaleDataType,
45883
45873
  xScale = _ref.xScale,
@@ -45943,7 +45933,8 @@ function BarGroup(_ref) {
45943
45933
  showLabels: showLabels,
45944
45934
  labelDictionary: labelDictionary,
45945
45935
  yScale: yScale,
45946
- containerHeight: height
45936
+ containerHeight: height,
45937
+ chartWidth: width
45947
45938
  }, "bar-" + bar.index + "-" + bar.x);
45948
45939
  })
45949
45940
  }, "bar-group-" + barGroup.index + "-" + barGroup.x0);
@@ -45951,6 +45942,22 @@ function BarGroup(_ref) {
45951
45942
  }
45952
45943
  });
45953
45944
  }
45945
+ function calculateBarLabelPosition(bar, barGroup, chartWidth, displayValue) {
45946
+ if (!displayValue) return false;
45947
+ var ESTIMATED_FONT_WIDTH = 5.75;
45948
+ var minWidthPercent = 0.02;
45949
+ var maxWidthPercent = 0.15;
45950
+ var minWidthPx = chartWidth * minWidthPercent;
45951
+ var maxWidthPx = chartWidth * maxWidthPercent;
45952
+ var minSize = 0.5;
45953
+ var maxSize = 1.2;
45954
+ var normalizedBarWidth = Math.min(Math.max(bar.width, minWidthPx), maxWidthPx);
45955
+ var logInput = 1 + (normalizedBarWidth - minWidthPx) / (maxWidthPx - minWidthPx) * (Math.E - 1);
45956
+ var logRatio = Math.log(logInput);
45957
+ var size = minSize + logRatio * (maxSize - minSize);
45958
+ var basePosition = barGroup.bars.length > 1 ? bar.x + bar.width * size / 2 : bar.width * size / 2;
45959
+ return basePosition - displayValue.length * ESTIMATED_FONT_WIDTH / 2;
45960
+ }
45954
45961
  var Bar = function Bar(_ref2) {
45955
45962
  var bar = _ref2.bar,
45956
45963
  barGroup = _ref2.barGroup,
@@ -45966,18 +45973,20 @@ var Bar = function Bar(_ref2) {
45966
45973
  showLabels = _ref2.showLabels,
45967
45974
  labelDictionary = _ref2.labelDictionary,
45968
45975
  yScale = _ref2.yScale,
45969
- containerHeight = _ref2.containerHeight;
45976
+ containerHeight = _ref2.containerHeight,
45977
+ chartWidth = _ref2.chartWidth;
45970
45978
  var X_PADDING = 10;
45971
45979
  var Y_PADDING = 8;
45972
45980
  var minWidth = 20;
45973
45981
  var minContainerHeight = 50;
45974
45982
  var showBar = bar.value !== null && bar.height > 0 && bar.width > 0;
45975
- var labelX = bar.x - X_PADDING;
45976
45983
  var barTopY = yScale(bar.value);
45984
+ var labelX = bar.x - X_PADDING;
45977
45985
  var labelY = barTopY - Y_PADDING;
45978
45986
  var showMinMax = showDataLabel(totalItems);
45979
45987
  var hasSpaceForLabel = showLabels && bar.width > minWidth && containerHeight > minContainerHeight;
45980
45988
  var displayValue = getFormattedValue(bar.value, labelDictionary);
45989
+ var barPosition = chartWidth ? calculateBarLabelPosition(bar, barGroup, chartWidth, displayValue) : labelX;
45981
45990
  return jsxs(Fragment, {
45982
45991
  children: [showBar && jsx(BarRect, {
45983
45992
  barRectKey: "bar-group-bar-" + barGroup.index + "-" + bar.index + "-" + bar.value + "-" + String(bar.key),
@@ -45990,8 +45999,8 @@ var Bar = function Bar(_ref2) {
45990
45999
  return _onClick(e, barGroup, bar);
45991
46000
  },
45992
46001
  enableHover: enableHover
45993
- }), hasSpaceForLabel && showMinMax && jsx(DataLabel, {
45994
- x: labelX,
46002
+ }), hasSpaceForLabel && showMinMax && barPosition !== false && jsx(DataLabel, {
46003
+ x: barPosition,
45995
46004
  y: labelY,
45996
46005
  title: displayValue,
45997
46006
  dx: 1,
@@ -46024,7 +46033,7 @@ var BarRect = function BarRect(_ref3) {
46024
46033
  } : {
46025
46034
  name: "1ltmijl-classes",
46026
46035
  styles: "cursor:pointer;label:classes;",
46027
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJhckdyb3VwLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1TmdDIiwiZmlsZSI6IkJhckdyb3VwLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBHcm91cCB9IGZyb20gJ0B2aXN4L2dyb3VwJztcbmltcG9ydCB7IEJhckdyb3VwIGFzIFZpc3hCYXJHcm91cCB9IGZyb20gJ0B2aXN4L3NoYXBlJztcbmltcG9ydCB7IERhdHVtT2JqZWN0IH0gZnJvbSAnQHZpc3gvc2hhcGUvbGliL3R5cGVzJztcbmltcG9ydCB7IFNjYWxlQmFuZCwgU2NhbGVMaW5lYXIgfSBmcm9tICdAdmlzeC92ZW5kb3IvZDMtc2NhbGUnO1xuaW1wb3J0IHsgRnJhZ21lbnQsIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IENoYXJ0RGF0YURlZmluaXRpb24sIENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGUsIFNoYXBlRGVmaW5pdGlvbiB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgZ2V0QWxsQ2hhcnRWYWx1ZXMsIGdldEZvcm1hdHRlZFZhbHVlLCBzaG93RGF0YUxhYmVsIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9EYXRhTGFiZWwvaW5kZXgnO1xuaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0ZpZWxkL3R5cGVzJztcbmltcG9ydCB7IGxpZ2h0ZW5Db2xvciB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9jb2xvci5mdW5jdGlvbnMnO1xuaW1wb3J0IHsgRGF0YUxhYmVsIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9EYXRhTGFiZWwnO1xuaW1wb3J0IHsgQkFSX1JBRElVUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9CT1JERVJfUkFESVVTJztcbmltcG9ydCB7IGdldEJhckZpbGwgfSBmcm9tICcuLi9nZXRCYXJGaWxsJztcblxuZXhwb3J0IHR5cGUgQmFyR3JvdXBQcm9wcyA9IHtcbiAgZGF0YTogQ2hhcnREYXRhRGVmaW5pdGlvbltdO1xuICBrZXlzOiBzdHJpbmdbXTtcbiAgaGVpZ2h0OiBudW1iZXI7XG4gIHhLZXk6IHN0cmluZztcbiAgeFNjYWxlRGF0YVR5cGU6IERhdGFUeXBlO1xuICB4U2NhbGU6IFNjYWxlQmFuZDxzdHJpbmc+IHwgU2NhbGVCYW5kPERhdGU+IHwgU2NhbGVCYW5kPG51bWJlcj4gfCBudWxsO1xuICBpbm5lclhTY2FsZTogU2NhbGVCYW5kPHN0cmluZz4gfCB1bmRlZmluZWQ7XG4gIHlTY2FsZTogU2NhbGVMaW5lYXI8bnVtYmVyLCBudW1iZXIsIG5ldmVyPjtcbiAgb25DbGljazogKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8U1ZHUmVjdEVsZW1lbnQsIE1vdXNlRXZlbnQ+LCBiYXJHcm91cDogYW55LCBiYXI6IGFueSkgPT4gdm9pZDtcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM6IENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVbXTtcbiAgYmFyczogU2hhcGVEZWZpbml0aW9uPEJhclN0eWxlcz5bXTtcbiAgZW5hYmxlSG92ZXI/OiBib29sZWFuO1xuICB5QXhpc0xhYmVscz86IHN0cmluZ1tdO1xuICB5TGFiZWxQb3NpdGlvbj86IG51bWJlcjtcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM6IGJvb2xlYW47XG4gIGxhYmVsU3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xuICBzaG93TGFiZWxzPzogYm9vbGVhbjtcbiAgbGFiZWxEaWN0aW9uYXJ5OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIEJhckdyb3VwKHtcbiAgZGF0YSxcbiAga2V5cyxcbiAgaGVpZ2h0LFxuICB4S2V5LFxuICB4U2NhbGVEYXRhVHlwZSxcbiAgeFNjYWxlLFxuICBpbm5lclhTY2FsZSxcbiAgeVNjYWxlLFxuICBvbkNsaWNrLFxuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcyxcbiAgYmFycyxcbiAgZW5hYmxlSG92ZXIsXG4gIHlBeGlzTGFiZWxzLFxuICB5TGFiZWxQb3NpdGlvbixcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHMsXG4gIGxhYmVsU3R5bGUsXG4gIHNob3dMYWJlbHMsXG4gIGxhYmVsRGljdGlvbmFyeSxcbn06IEJhckdyb3VwUHJvcHMpIHtcbiAgY29uc3QgZ2V0R3JvdXBQb3NpdGlvbiA9IChkOiBEYXR1bU9iamVjdCkgPT4ge1xuICAgIGNvbnN0IHhWYWx1ZSA9IGRbeEtleSBhcyBrZXlvZiB0eXBlb2YgZF07XG5cbiAgICBpZiAoeFNjYWxlRGF0YVR5cGUgPT09ICdzdHJpbmcnKSByZXR1cm4gU3RyaW5nKHhWYWx1ZSk7XG5cbiAgICBpZiAoeFNjYWxlRGF0YVR5cGUgPT09ICdkYXRlX3RpbWUnKSB7XG4gICAgICByZXR1cm4gbmV3IERhdGUoU3RyaW5nKHhWYWx1ZSkpO1xuICAgIH1cblxuICAgIGlmICh4U2NhbGVEYXRhVHlwZSA9PT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiBOdW1iZXIoeFZhbHVlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gU3RyaW5nKHhWYWx1ZSk7XG4gIH07XG5cbiAgY29uc3QgdG90YWxJdGVtcyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGFsbEJhclZhbHVlcyA9IGdldEFsbENoYXJ0VmFsdWVzKGRhdGEsIGtleXMpO1xuICAgIHJldHVybiBhbGxCYXJWYWx1ZXMubGVuZ3RoO1xuICB9LCBbZGF0YSwga2V5c10pO1xuXG4gIHJldHVybiAoXG4gICAgPFZpc3hCYXJHcm91cDxEYXR1bU9iamVjdD5cbiAgICAgIGRhdGE9e2RhdGEgYXMgRGF0dW1PYmplY3RbXX1cbiAgICAgIGtleXM9e2tleXN9XG4gICAgICBoZWlnaHQ9e2hlaWdodH1cbiAgICAgIHgwPXtnZXRHcm91cFBvc2l0aW9ufVxuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgeDBTY2FsZT17eFNjYWxlfVxuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgeDFTY2FsZT17aW5uZXJYU2NhbGV9XG4gICAgICB5U2NhbGU9e3lTY2FsZX1cbiAgICAgIGNvbG9yPXsoKSA9PiAnJ31cbiAgICA+XG4gICAgICB7KGJhckdyb3VwcykgPT4ge1xuICAgICAgICByZXR1cm4gYmFyR3JvdXBzLm1hcCgoYmFyR3JvdXApID0+IChcbiAgICAgICAgICA8R3JvdXAga2V5PXtgYmFyLWdyb3VwLSR7YmFyR3JvdXAuaW5kZXh9LSR7YmFyR3JvdXAueDB9YH0gbGVmdD17YmFyR3JvdXAueDB9PlxuICAgICAgICAgICAge2Jhckdyb3VwLmJhcnMubWFwKChiYXIpID0+IChcbiAgICAgICAgICAgICAgPEJhclxuICAgICAgICAgICAgICAgIGtleT17YGJhci0ke2Jhci5pbmRleH0tJHtiYXIueH1gfVxuICAgICAgICAgICAgICAgIGJhcj17YmFyfVxuICAgICAgICAgICAgICAgIGJhckdyb3VwPXtiYXJHcm91cH1cbiAgICAgICAgICAgICAgICBiYXJzPXtiYXJzfVxuICAgICAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzPXtjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlc31cbiAgICAgICAgICAgICAgICBlbmFibGVIb3Zlcj17ZW5hYmxlSG92ZXJ9XG4gICAgICAgICAgICAgICAgbGFiZWxTdHlsZT17bGFiZWxTdHlsZX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgICAgICAgICAgIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzPXtzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVsc31cbiAgICAgICAgICAgICAgICB5QXhpc0xhYmVscz17eUF4aXNMYWJlbHN9XG4gICAgICAgICAgICAgICAgeUxhYmVsUG9zaXRpb249e3lMYWJlbFBvc2l0aW9ufVxuICAgICAgICAgICAgICAgIHRvdGFsSXRlbXM9e3RvdGFsSXRlbXN9XG4gICAgICAgICAgICAgICAgc2hvd0xhYmVscz17c2hvd0xhYmVsc31cbiAgICAgICAgICAgICAgICBsYWJlbERpY3Rpb25hcnk9e2xhYmVsRGljdGlvbmFyeX1cbiAgICAgICAgICAgICAgICB5U2NhbGU9e3lTY2FsZX1cbiAgICAgICAgICAgICAgICBjb250YWluZXJIZWlnaHQ9e2hlaWdodH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICkpfVxuICAgICAgICAgIDwvR3JvdXA+XG4gICAgICAgICkpO1xuICAgICAgfX1cbiAgICA8L1Zpc3hCYXJHcm91cD5cbiAgKTtcbn1cblxudHlwZSBCYXJQcm9wcyA9IHtcbiAgYmFyOiBhbnk7XG4gIGJhckdyb3VwOiBhbnk7XG4gIGJhcnM6IFNoYXBlRGVmaW5pdGlvbjxCYXJTdHlsZXM+W107XG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlW107XG4gIGVuYWJsZUhvdmVyPzogYm9vbGVhbjtcbiAgb25DbGljazogKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8U1ZHUmVjdEVsZW1lbnQsIE1vdXNlRXZlbnQ+LCBiYXJHcm91cDogYW55LCBiYXI6IGFueSkgPT4gdm9pZDtcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM6IGJvb2xlYW47XG4gIGxhYmVsU3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xuICB5QXhpc0xhYmVscz86IHN0cmluZ1tdO1xuICB5TGFiZWxQb3NpdGlvbj86IG51bWJlcjtcbiAgdG90YWxJdGVtczogbnVtYmVyO1xuICBzaG93TGFiZWxzPzogYm9vbGVhbjtcbiAgbGFiZWxEaWN0aW9uYXJ5PzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbiAgeVNjYWxlOiBTY2FsZUxpbmVhcjxudW1iZXIsIG51bWJlciwgbmV2ZXI+O1xuICBjb250YWluZXJIZWlnaHQ6IG51bWJlcjtcbn07XG5cbmNvbnN0IEJhciA9ICh7XG4gIGJhcixcbiAgYmFyR3JvdXAsXG4gIGJhcnMsXG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLFxuICBlbmFibGVIb3ZlcixcbiAgbGFiZWxTdHlsZSxcbiAgb25DbGljayxcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHMsXG4gIHlBeGlzTGFiZWxzLFxuICB5TGFiZWxQb3NpdGlvbixcbiAgdG90YWxJdGVtcyxcbiAgc2hvd0xhYmVscyxcbiAgbGFiZWxEaWN0aW9uYXJ5LFxuICB5U2NhbGUsXG4gIGNvbnRhaW5lckhlaWdodCxcbn06IEJhclByb3BzKSA9PiB7XG4gIGNvbnN0IFhfUEFERElORyA9IDEwO1xuICBjb25zdCBZX1BBRERJTkcgPSA4O1xuXG4gIGNvbnN0IG1pbldpZHRoID0gMjA7XG4gIGNvbnN0IG1pbkNvbnRhaW5lckhlaWdodCA9IDUwO1xuXG4gIGNvbnN0IHNob3dCYXIgPSBiYXIudmFsdWUgIT09IG51bGwgJiYgYmFyLmhlaWdodCA+IDAgJiYgYmFyLndpZHRoID4gMDtcblxuICBjb25zdCBsYWJlbFggPSBiYXIueCAtIFhfUEFERElORztcbiAgY29uc3QgYmFyVG9wWSA9IHlTY2FsZShiYXIudmFsdWUpO1xuICBjb25zdCBsYWJlbFkgPSBiYXJUb3BZIC0gWV9QQURESU5HO1xuXG4gIGNvbnN0IHNob3dNaW5NYXggPSBzaG93RGF0YUxhYmVsKHRvdGFsSXRlbXMpO1xuICBjb25zdCBoYXNTcGFjZUZvckxhYmVsID0gc2hvd0xhYmVscyAmJiBiYXIud2lkdGggPiBtaW5XaWR0aCAmJiBjb250YWluZXJIZWlnaHQgPiBtaW5Db250YWluZXJIZWlnaHQ7XG5cbiAgY29uc3QgZGlzcGxheVZhbHVlID0gZ2V0Rm9ybWF0dGVkVmFsdWUoYmFyLnZhbHVlLCBsYWJlbERpY3Rpb25hcnkpO1xuXG4gIHJldHVybiAoXG4gICAgPEZyYWdtZW50PlxuICAgICAge3Nob3dCYXIgJiYgKFxuICAgICAgICA8QmFyUmVjdFxuICAgICAgICAgIGJhclJlY3RLZXk9e2BiYXItZ3JvdXAtYmFyLSR7YmFyR3JvdXAuaW5kZXh9LSR7YmFyLmluZGV4fS0ke2Jhci52YWx1ZX0tJHtTdHJpbmcoYmFyLmtleSl9YH1cbiAgICAgICAgICB4PXtiYXIueH1cbiAgICAgICAgICB5PXtiYXIueX1cbiAgICAgICAgICB3aWR0aD17YmFyLndpZHRofVxuICAgICAgICAgIGhlaWdodD17YmFyLmhlaWdodH1cbiAgICAgICAgICBmaWxsPXtnZXRCYXJGaWxsKGJhcnMsIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLCBTdHJpbmcoYmFyLmtleSksIGJhci52YWx1ZSl9XG4gICAgICAgICAgb25DbGljaz17KGUpID0+IG9uQ2xpY2soZSwgYmFyR3JvdXAsIGJhcil9XG4gICAgICAgICAgZW5hYmxlSG92ZXI9e2VuYWJsZUhvdmVyfVxuICAgICAgICAvPlxuICAgICAgKX1cblxuICAgICAge2hhc1NwYWNlRm9yTGFiZWwgJiYgc2hvd01pbk1heCAmJiA8RGF0YUxhYmVsIHg9e2xhYmVsWH0geT17bGFiZWxZfSB0aXRsZT17ZGlzcGxheVZhbHVlfSBkeD17MX0gZHk9ezB9IC8+fVxuXG4gICAgICA8QmFyTGFiZWxcbiAgICAgICAgYmFyPXtiYXJ9XG4gICAgICAgIGJhckdyb3VwPXtiYXJHcm91cH1cbiAgICAgICAgeUxhYmVsUG9zaXRpb249e3lMYWJlbFBvc2l0aW9ufVxuICAgICAgICB5QXhpc0xhYmVscz17eUF4aXNMYWJlbHN9XG4gICAgICAgIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzPXtzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVsc31cbiAgICAgICAgbGFiZWxTdHlsZT17bGFiZWxTdHlsZX1cbiAgICAgIC8+XG4gICAgPC9GcmFnbWVudD5cbiAgKTtcbn07XG5cbnR5cGUgQmFyUmVjdFByb3BzID0ge1xuICBvbkNsaWNrOiAoZTogUmVhY3QuTW91c2VFdmVudDxTVkdSZWN0RWxlbWVudCwgTW91c2VFdmVudD4pID0+IHZvaWQ7XG4gIGZpbGw/OiBzdHJpbmc7XG4gIHg6IG51bWJlcjtcbiAgeTogbnVtYmVyO1xuICB3aWR0aDogbnVtYmVyO1xuICBoZWlnaHQ6IG51bWJlcjtcbiAgYmFyUmVjdEtleTogc3RyaW5nO1xuICBlbmFibGVIb3Zlcj86IGJvb2xlYW47XG59O1xuXG5jb25zdCBCYXJSZWN0ID0gKHsgb25DbGljaywgZmlsbCwgeCwgeSwgd2lkdGgsIGhlaWdodCwgYmFyUmVjdEtleSwgZW5hYmxlSG92ZXIgfTogQmFyUmVjdFByb3BzKSA9PiB7XG4gIGNvbnN0IFtpc0hvdmVyZWQsIHNldElzSG92ZXJlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgY2xhc3NlcyA9IGVuYWJsZUhvdmVyID8gY3NzKHsgY3Vyc29yOiAncG9pbnRlcicgfSkgOiAnJztcblxuICBjb25zdCBkaXNwbGF5Q29sb3IgPSBpc0hvdmVyZWQgJiYgZW5hYmxlSG92ZXIgPyBsaWdodGVuQ29sb3IoZmlsbCwgMC44KSA6IGZpbGw7XG5cbiAgY29uc3QgaGFuZGxlT25Nb3VzZUVudGVyID0gKCkgPT4ge1xuICAgIGlmIChlbmFibGVIb3Zlcikge1xuICAgICAgc2V0SXNIb3ZlcmVkKHRydWUpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVPbk1vdXNlTGVhdmUgPSAoKSA9PiB7XG4gICAgaWYgKGVuYWJsZUhvdmVyKSB7XG4gICAgICBzZXRJc0hvdmVyZWQoZmFsc2UpO1xuICAgIH1cbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxyZWN0XG4gICAgICBrZXk9e2JhclJlY3RLZXl9XG4gICAgICB4PXt4fVxuICAgICAgeT17eX1cbiAgICAgIHdpZHRoPXt3aWR0aH1cbiAgICAgIGhlaWdodD17aGVpZ2h0fVxuICAgICAgZmlsbD17ZGlzcGxheUNvbG9yfVxuICAgICAgcng9e0JBUl9SQURJVVN9XG4gICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgb25Nb3VzZUVudGVyPXtoYW5kbGVPbk1vdXNlRW50ZXJ9XG4gICAgICBvbk1vdXNlTGVhdmU9e2hhbmRsZU9uTW91c2VMZWF2ZX1cbiAgICAgIGNsYXNzTmFtZT17Y2xhc3Nlc31cbiAgICAvPlxuICApO1xufTtcblxudHlwZSBCYXJMYWJlbFByb3BzID0ge1xuICBiYXI6IGFueTtcbiAgYmFyR3JvdXA6IGFueTtcbiAgeUxhYmVsUG9zaXRpb24/OiBudW1iZXI7XG4gIHlBeGlzTGFiZWxzPzogc3RyaW5nW107XG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzOiBib29sZWFuO1xuICBsYWJlbFN0eWxlPzogUmVhY3QuQ1NTUHJvcGVydGllcztcbn07XG5cbmNvbnN0IEJhckxhYmVsID0gKHtcbiAgYmFyLFxuICBiYXJHcm91cCxcbiAgeUxhYmVsUG9zaXRpb24sXG4gIHlBeGlzTGFiZWxzLFxuICBzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVscyxcbiAgbGFiZWxTdHlsZSxcbn06IEJhckxhYmVsUHJvcHMpID0+IHtcbiAgaWYgKCFzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVscyB8fCAheUxhYmVsUG9zaXRpb24gfHwgIXlBeGlzTGFiZWxzKSByZXR1cm4gbnVsbDtcblxuICBjb25zdCBsYWJlbCA9IHlBeGlzTGFiZWxzW2Jhci5pbmRleF07XG4gIGNvbnN0IGNvbHVtbkxhYmVsID0gbGFiZWwuc3BsaXQoJ+KAoicpWzBdO1xuXG4gIGxldCBmb3JtYXR0ZWRDb2x1bW5MYWJlbDogc3RyaW5nO1xuICBpZiAoY29sdW1uTGFiZWwubGVuZ3RoID49IDEzKSB7XG4gICAgZm9ybWF0dGVkQ29sdW1uTGFiZWwgPSBjb2x1bW5MYWJlbC5zbGljZSgwLCAxMCkgKyAnLi4uJztcbiAgfSBlbHNlIHtcbiAgICBmb3JtYXR0ZWRDb2x1bW5MYWJlbCA9IGNvbHVtbkxhYmVsLnNsaWNlKDAsIDEzKTtcbiAgfVxuXG4gIGNvbnN0IGxhYmVsWEdhcCA9IDQ7XG4gIGNvbnN0IGxhYmVsWFBvc2l0aW9uID0gYmFyLnggKyBiYXIud2lkdGggLyAyICsgbGFiZWxYR2FwO1xuXG4gIGNvbnN0IGxhYmVsWUdhcCA9IDE1O1xuICBjb25zdCBsYWJlbFlQb3NpdGlvbiA9IHlMYWJlbFBvc2l0aW9uICsgbGFiZWxZR2FwO1xuXG4gIGNvbnN0IGxhYmVsS2V5ID0gYGxhYmVsLSR7YmFyR3JvdXAuaW5kZXh9LSR7YmFyLmluZGV4fS0ke2xhYmVsfWA7XG5cbiAgcmV0dXJuIChcbiAgICA8dGV4dFxuICAgICAga2V5PXtsYWJlbEtleX1cbiAgICAgIHg9e2xhYmVsWFBvc2l0aW9ufVxuICAgICAgeT17bGFiZWxZUG9zaXRpb259XG4gICAgICBzdHlsZT17bGFiZWxTdHlsZX1cbiAgICAgIHRyYW5zZm9ybT17YHJvdGF0ZSgtNzAsICR7bGFiZWxYUG9zaXRpb259LCAke2xhYmVsWVBvc2l0aW9ufSlgfVxuICAgICAgdGV4dEFuY2hvcj1cImVuZFwiXG4gICAgPlxuICAgICAge2Zvcm1hdHRlZENvbHVtbkxhYmVsfVxuICAgIDwvdGV4dD5cbiAgKTtcbn07XG4iXX0= */",
46036
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJhckdyb3VwLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyUGdDIiwiZmlsZSI6IkJhckdyb3VwLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBHcm91cCB9IGZyb20gJ0B2aXN4L2dyb3VwJztcbmltcG9ydCB7IEJhckdyb3VwIGFzIFZpc3hCYXJHcm91cCB9IGZyb20gJ0B2aXN4L3NoYXBlJztcbmltcG9ydCB7IERhdHVtT2JqZWN0IH0gZnJvbSAnQHZpc3gvc2hhcGUvbGliL3R5cGVzJztcbmltcG9ydCB7IFNjYWxlQmFuZCwgU2NhbGVMaW5lYXIgfSBmcm9tICdAdmlzeC92ZW5kb3IvZDMtc2NhbGUnO1xuaW1wb3J0IHsgRnJhZ21lbnQsIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IENoYXJ0RGF0YURlZmluaXRpb24sIENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGUsIFNoYXBlRGVmaW5pdGlvbiB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgZ2V0QWxsQ2hhcnRWYWx1ZXMsIGdldEZvcm1hdHRlZFZhbHVlLCBzaG93RGF0YUxhYmVsIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9EYXRhTGFiZWwvaW5kZXgnO1xuaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0ZpZWxkL3R5cGVzJztcbmltcG9ydCB7IGxpZ2h0ZW5Db2xvciB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9jb2xvci5mdW5jdGlvbnMnO1xuaW1wb3J0IHsgRGF0YUxhYmVsIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9EYXRhTGFiZWwnO1xuaW1wb3J0IHsgQkFSX1JBRElVUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9CT1JERVJfUkFESVVTJztcbmltcG9ydCB7IGdldEJhckZpbGwgfSBmcm9tICcuLi9nZXRCYXJGaWxsJztcblxuZXhwb3J0IHR5cGUgQmFyR3JvdXBQcm9wcyA9IHtcbiAgZGF0YTogQ2hhcnREYXRhRGVmaW5pdGlvbltdO1xuICBrZXlzOiBzdHJpbmdbXTtcbiAgaGVpZ2h0OiBudW1iZXI7XG4gIHdpZHRoPzogbnVtYmVyO1xuICB4S2V5OiBzdHJpbmc7XG4gIHhTY2FsZURhdGFUeXBlOiBEYXRhVHlwZTtcbiAgeFNjYWxlOiBTY2FsZUJhbmQ8c3RyaW5nPiB8IFNjYWxlQmFuZDxEYXRlPiB8IFNjYWxlQmFuZDxudW1iZXI+IHwgbnVsbDtcbiAgaW5uZXJYU2NhbGU6IFNjYWxlQmFuZDxzdHJpbmc+IHwgdW5kZWZpbmVkO1xuICB5U2NhbGU6IFNjYWxlTGluZWFyPG51bWJlciwgbnVtYmVyLCBuZXZlcj47XG4gIG9uQ2xpY2s6IChlOiBSZWFjdC5Nb3VzZUV2ZW50PFNWR1JlY3RFbGVtZW50LCBNb3VzZUV2ZW50PiwgYmFyR3JvdXA6IGFueSwgYmFyOiBhbnkpID0+IHZvaWQ7XG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlW107XG4gIGJhcnM6IFNoYXBlRGVmaW5pdGlvbjxCYXJTdHlsZXM+W107XG4gIGVuYWJsZUhvdmVyPzogYm9vbGVhbjtcbiAgeUF4aXNMYWJlbHM/OiBzdHJpbmdbXTtcbiAgeUxhYmVsUG9zaXRpb24/OiBudW1iZXI7XG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzOiBib29sZWFuO1xuICBsYWJlbFN0eWxlPzogUmVhY3QuQ1NTUHJvcGVydGllcztcbiAgc2hvd0xhYmVscz86IGJvb2xlYW47XG4gIGxhYmVsRGljdGlvbmFyeTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBCYXJHcm91cCh7XG4gIGRhdGEsXG4gIGtleXMsXG4gIGhlaWdodCxcbiAgd2lkdGgsXG4gIHhLZXksXG4gIHhTY2FsZURhdGFUeXBlLFxuICB4U2NhbGUsXG4gIGlubmVyWFNjYWxlLFxuICB5U2NhbGUsXG4gIG9uQ2xpY2ssXG4gIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLFxuICBiYXJzLFxuICBlbmFibGVIb3ZlcixcbiAgeUF4aXNMYWJlbHMsXG4gIHlMYWJlbFBvc2l0aW9uLFxuICBzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVscyxcbiAgbGFiZWxTdHlsZSxcbiAgc2hvd0xhYmVscyxcbiAgbGFiZWxEaWN0aW9uYXJ5LFxufTogQmFyR3JvdXBQcm9wcykge1xuICBjb25zdCBnZXRHcm91cFBvc2l0aW9uID0gKGQ6IERhdHVtT2JqZWN0KSA9PiB7XG4gICAgY29uc3QgeFZhbHVlID0gZFt4S2V5IGFzIGtleW9mIHR5cGVvZiBkXTtcblxuICAgIGlmICh4U2NhbGVEYXRhVHlwZSA9PT0gJ3N0cmluZycpIHJldHVybiBTdHJpbmcoeFZhbHVlKTtcblxuICAgIGlmICh4U2NhbGVEYXRhVHlwZSA9PT0gJ2RhdGVfdGltZScpIHtcbiAgICAgIHJldHVybiBuZXcgRGF0ZShTdHJpbmcoeFZhbHVlKSk7XG4gICAgfVxuXG4gICAgaWYgKHhTY2FsZURhdGFUeXBlID09PSAnbnVtYmVyJykge1xuICAgICAgcmV0dXJuIE51bWJlcih4VmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiBTdHJpbmcoeFZhbHVlKTtcbiAgfTtcblxuICBjb25zdCB0b3RhbEl0ZW1zID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgYWxsQmFyVmFsdWVzID0gZ2V0QWxsQ2hhcnRWYWx1ZXMoZGF0YSwga2V5cyk7XG4gICAgcmV0dXJuIGFsbEJhclZhbHVlcy5sZW5ndGg7XG4gIH0sIFtkYXRhLCBrZXlzXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8VmlzeEJhckdyb3VwPERhdHVtT2JqZWN0PlxuICAgICAgZGF0YT17ZGF0YSBhcyBEYXR1bU9iamVjdFtdfVxuICAgICAga2V5cz17a2V5c31cbiAgICAgIGhlaWdodD17aGVpZ2h0fVxuICAgICAgeDA9e2dldEdyb3VwUG9zaXRpb259XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICB4MFNjYWxlPXt4U2NhbGV9XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICB4MVNjYWxlPXtpbm5lclhTY2FsZX1cbiAgICAgIHlTY2FsZT17eVNjYWxlfVxuICAgICAgY29sb3I9eygpID0+ICcnfVxuICAgID5cbiAgICAgIHsoYmFyR3JvdXBzKSA9PiB7XG4gICAgICAgIHJldHVybiBiYXJHcm91cHMubWFwKChiYXJHcm91cCkgPT4gKFxuICAgICAgICAgIDxHcm91cCBrZXk9e2BiYXItZ3JvdXAtJHtiYXJHcm91cC5pbmRleH0tJHtiYXJHcm91cC54MH1gfSBsZWZ0PXtiYXJHcm91cC54MH0+XG4gICAgICAgICAgICB7YmFyR3JvdXAuYmFycy5tYXAoKGJhcikgPT4gKFxuICAgICAgICAgICAgICA8QmFyXG4gICAgICAgICAgICAgICAga2V5PXtgYmFyLSR7YmFyLmluZGV4fS0ke2Jhci54fWB9XG4gICAgICAgICAgICAgICAgYmFyPXtiYXJ9XG4gICAgICAgICAgICAgICAgYmFyR3JvdXA9e2Jhckdyb3VwfVxuICAgICAgICAgICAgICAgIGJhcnM9e2JhcnN9XG4gICAgICAgICAgICAgICAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM9e2NvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzfVxuICAgICAgICAgICAgICAgIGVuYWJsZUhvdmVyPXtlbmFibGVIb3Zlcn1cbiAgICAgICAgICAgICAgICBsYWJlbFN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICAgICAgICAgICAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM9e3Nob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzfVxuICAgICAgICAgICAgICAgIHlBeGlzTGFiZWxzPXt5QXhpc0xhYmVsc31cbiAgICAgICAgICAgICAgICB5TGFiZWxQb3NpdGlvbj17eUxhYmVsUG9zaXRpb259XG4gICAgICAgICAgICAgICAgdG90YWxJdGVtcz17dG90YWxJdGVtc31cbiAgICAgICAgICAgICAgICBzaG93TGFiZWxzPXtzaG93TGFiZWxzfVxuICAgICAgICAgICAgICAgIGxhYmVsRGljdGlvbmFyeT17bGFiZWxEaWN0aW9uYXJ5fVxuICAgICAgICAgICAgICAgIHlTY2FsZT17eVNjYWxlfVxuICAgICAgICAgICAgICAgIGNvbnRhaW5lckhlaWdodD17aGVpZ2h0fVxuICAgICAgICAgICAgICAgIGNoYXJ0V2lkdGg9e3dpZHRofVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKSl9XG4gICAgICAgICAgPC9Hcm91cD5cbiAgICAgICAgKSk7XG4gICAgICB9fVxuICAgIDwvVmlzeEJhckdyb3VwPlxuICApO1xufVxuXG5mdW5jdGlvbiBjYWxjdWxhdGVCYXJMYWJlbFBvc2l0aW9uKFxuICBiYXI6IGFueSxcbiAgYmFyR3JvdXA6IGFueSxcbiAgY2hhcnRXaWR0aDogbnVtYmVyLFxuICBkaXNwbGF5VmFsdWU6IHN0cmluZyB8IG51bGwsXG4pOiBudW1iZXIgfCBmYWxzZSB7XG4gIGlmICghZGlzcGxheVZhbHVlKSByZXR1cm4gZmFsc2U7XG5cbiAgY29uc3QgRVNUSU1BVEVEX0ZPTlRfV0lEVEggPSA1Ljc1O1xuXG4gIGNvbnN0IG1pbldpZHRoUGVyY2VudCA9IDAuMDI7XG4gIGNvbnN0IG1heFdpZHRoUGVyY2VudCA9IDAuMTU7XG4gIGNvbnN0IG1pbldpZHRoUHggPSBjaGFydFdpZHRoICogbWluV2lkdGhQZXJjZW50O1xuICBjb25zdCBtYXhXaWR0aFB4ID0gY2hhcnRXaWR0aCAqIG1heFdpZHRoUGVyY2VudDtcblxuICBjb25zdCBtaW5TaXplID0gMC41O1xuICBjb25zdCBtYXhTaXplID0gMS4yO1xuXG4gIGNvbnN0IG5vcm1hbGl6ZWRCYXJXaWR0aCA9IE1hdGgubWluKE1hdGgubWF4KGJhci53aWR0aCwgbWluV2lkdGhQeCksIG1heFdpZHRoUHgpO1xuICBjb25zdCBsb2dJbnB1dCA9IDEgKyAoKG5vcm1hbGl6ZWRCYXJXaWR0aCAtIG1pbldpZHRoUHgpIC8gKG1heFdpZHRoUHggLSBtaW5XaWR0aFB4KSkgKiAoTWF0aC5FIC0gMSk7XG4gIGNvbnN0IGxvZ1JhdGlvID0gTWF0aC5sb2cobG9nSW5wdXQpO1xuICBjb25zdCBzaXplID0gbWluU2l6ZSArIGxvZ1JhdGlvICogKG1heFNpemUgLSBtaW5TaXplKTtcblxuICBjb25zdCBiYXNlUG9zaXRpb24gPSBiYXJHcm91cC5iYXJzLmxlbmd0aCA+IDEgPyBiYXIueCArIChiYXIud2lkdGggKiBzaXplKSAvIDIgOiAoYmFyLndpZHRoICogc2l6ZSkgLyAyO1xuXG4gIHJldHVybiBiYXNlUG9zaXRpb24gLSAoZGlzcGxheVZhbHVlLmxlbmd0aCAqIEVTVElNQVRFRF9GT05UX1dJRFRIKSAvIDI7XG59XG5cbnR5cGUgQmFyUHJvcHMgPSB7XG4gIGJhcjogYW55O1xuICBiYXJHcm91cDogYW55O1xuICBiYXJzOiBTaGFwZURlZmluaXRpb248QmFyU3R5bGVzPltdO1xuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlczogQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZVtdO1xuICBlbmFibGVIb3Zlcj86IGJvb2xlYW47XG4gIG9uQ2xpY2s6IChlOiBSZWFjdC5Nb3VzZUV2ZW50PFNWR1JlY3RFbGVtZW50LCBNb3VzZUV2ZW50PiwgYmFyR3JvdXA6IGFueSwgYmFyOiBhbnkpID0+IHZvaWQ7XG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzOiBib29sZWFuO1xuICBsYWJlbFN0eWxlPzogUmVhY3QuQ1NTUHJvcGVydGllcztcbiAgeUF4aXNMYWJlbHM/OiBzdHJpbmdbXTtcbiAgeUxhYmVsUG9zaXRpb24/OiBudW1iZXI7XG4gIHRvdGFsSXRlbXM6IG51bWJlcjtcbiAgc2hvd0xhYmVscz86IGJvb2xlYW47XG4gIGxhYmVsRGljdGlvbmFyeT86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG4gIHlTY2FsZTogU2NhbGVMaW5lYXI8bnVtYmVyLCBudW1iZXIsIG5ldmVyPjtcbiAgY29udGFpbmVySGVpZ2h0OiBudW1iZXI7XG4gIGNoYXJ0V2lkdGg/OiBudW1iZXI7XG59O1xuXG5jb25zdCBCYXIgPSAoe1xuICBiYXIsXG4gIGJhckdyb3VwLFxuICBiYXJzLFxuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcyxcbiAgZW5hYmxlSG92ZXIsXG4gIGxhYmVsU3R5bGUsXG4gIG9uQ2xpY2ssXG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzLFxuICB5QXhpc0xhYmVscyxcbiAgeUxhYmVsUG9zaXRpb24sXG4gIHRvdGFsSXRlbXMsXG4gIHNob3dMYWJlbHMsXG4gIGxhYmVsRGljdGlvbmFyeSxcbiAgeVNjYWxlLFxuICBjb250YWluZXJIZWlnaHQsXG4gIGNoYXJ0V2lkdGgsXG59OiBCYXJQcm9wcykgPT4ge1xuICBjb25zdCBYX1BBRERJTkcgPSAxMDtcbiAgY29uc3QgWV9QQURESU5HID0gODtcblxuICBjb25zdCBtaW5XaWR0aCA9IDIwO1xuICBjb25zdCBtaW5Db250YWluZXJIZWlnaHQgPSA1MDtcblxuICBjb25zdCBzaG93QmFyID0gYmFyLnZhbHVlICE9PSBudWxsICYmIGJhci5oZWlnaHQgPiAwICYmIGJhci53aWR0aCA+IDA7XG5cbiAgY29uc3QgYmFyVG9wWSA9IHlTY2FsZShiYXIudmFsdWUpO1xuICBjb25zdCBsYWJlbFggPSBiYXIueCAtIFhfUEFERElORztcbiAgY29uc3QgbGFiZWxZID0gYmFyVG9wWSAtIFlfUEFERElORztcblxuICBjb25zdCBzaG93TWluTWF4ID0gc2hvd0RhdGFMYWJlbCh0b3RhbEl0ZW1zKTtcbiAgY29uc3QgaGFzU3BhY2VGb3JMYWJlbCA9IHNob3dMYWJlbHMgJiYgYmFyLndpZHRoID4gbWluV2lkdGggJiYgY29udGFpbmVySGVpZ2h0ID4gbWluQ29udGFpbmVySGVpZ2h0O1xuXG4gIGNvbnN0IGRpc3BsYXlWYWx1ZSA9IGdldEZvcm1hdHRlZFZhbHVlKGJhci52YWx1ZSwgbGFiZWxEaWN0aW9uYXJ5KTtcbiAgY29uc3QgYmFyUG9zaXRpb24gPSBjaGFydFdpZHRoID8gY2FsY3VsYXRlQmFyTGFiZWxQb3NpdGlvbihiYXIsIGJhckdyb3VwLCBjaGFydFdpZHRoLCBkaXNwbGF5VmFsdWUpIDogbGFiZWxYO1xuXG4gIHJldHVybiAoXG4gICAgPEZyYWdtZW50PlxuICAgICAge3Nob3dCYXIgJiYgKFxuICAgICAgICA8QmFyUmVjdFxuICAgICAgICAgIGJhclJlY3RLZXk9e2BiYXItZ3JvdXAtYmFyLSR7YmFyR3JvdXAuaW5kZXh9LSR7YmFyLmluZGV4fS0ke2Jhci52YWx1ZX0tJHtTdHJpbmcoYmFyLmtleSl9YH1cbiAgICAgICAgICB4PXtiYXIueH1cbiAgICAgICAgICB5PXtiYXIueX1cbiAgICAgICAgICB3aWR0aD17YmFyLndpZHRofVxuICAgICAgICAgIGhlaWdodD17YmFyLmhlaWdodH1cbiAgICAgICAgICBmaWxsPXtnZXRCYXJGaWxsKGJhcnMsIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLCBTdHJpbmcoYmFyLmtleSksIGJhci52YWx1ZSl9XG4gICAgICAgICAgb25DbGljaz17KGUpID0+IG9uQ2xpY2soZSwgYmFyR3JvdXAsIGJhcil9XG4gICAgICAgICAgZW5hYmxlSG92ZXI9e2VuYWJsZUhvdmVyfVxuICAgICAgICAvPlxuICAgICAgKX1cblxuICAgICAge2hhc1NwYWNlRm9yTGFiZWwgJiYgc2hvd01pbk1heCAmJiBiYXJQb3NpdGlvbiAhPT0gZmFsc2UgJiYgKFxuICAgICAgICA8RGF0YUxhYmVsIHg9e2JhclBvc2l0aW9ufSB5PXtsYWJlbFl9IHRpdGxlPXtkaXNwbGF5VmFsdWV9IGR4PXsxfSBkeT17MH0gLz5cbiAgICAgICl9XG5cbiAgICAgIDxCYXJMYWJlbFxuICAgICAgICBiYXI9e2Jhcn1cbiAgICAgICAgYmFyR3JvdXA9e2Jhckdyb3VwfVxuICAgICAgICB5TGFiZWxQb3NpdGlvbj17eUxhYmVsUG9zaXRpb259XG4gICAgICAgIHlBeGlzTGFiZWxzPXt5QXhpc0xhYmVsc31cbiAgICAgICAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM9e3Nob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzfVxuICAgICAgICBsYWJlbFN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgLz5cbiAgICA8L0ZyYWdtZW50PlxuICApO1xufTtcblxudHlwZSBCYXJSZWN0UHJvcHMgPSB7XG4gIG9uQ2xpY2s6IChlOiBSZWFjdC5Nb3VzZUV2ZW50PFNWR1JlY3RFbGVtZW50LCBNb3VzZUV2ZW50PikgPT4gdm9pZDtcbiAgZmlsbD86IHN0cmluZztcbiAgeDogbnVtYmVyO1xuICB5OiBudW1iZXI7XG4gIHdpZHRoOiBudW1iZXI7XG4gIGhlaWdodDogbnVtYmVyO1xuICBiYXJSZWN0S2V5OiBzdHJpbmc7XG4gIGVuYWJsZUhvdmVyPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IEJhclJlY3QgPSAoeyBvbkNsaWNrLCBmaWxsLCB4LCB5LCB3aWR0aCwgaGVpZ2h0LCBiYXJSZWN0S2V5LCBlbmFibGVIb3ZlciB9OiBCYXJSZWN0UHJvcHMpID0+IHtcbiAgY29uc3QgW2lzSG92ZXJlZCwgc2V0SXNIb3ZlcmVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICBjb25zdCBjbGFzc2VzID0gZW5hYmxlSG92ZXIgPyBjc3MoeyBjdXJzb3I6ICdwb2ludGVyJyB9KSA6ICcnO1xuXG4gIGNvbnN0IGRpc3BsYXlDb2xvciA9IGlzSG92ZXJlZCAmJiBlbmFibGVIb3ZlciA/IGxpZ2h0ZW5Db2xvcihmaWxsLCAwLjgpIDogZmlsbDtcblxuICBjb25zdCBoYW5kbGVPbk1vdXNlRW50ZXIgPSAoKSA9PiB7XG4gICAgaWYgKGVuYWJsZUhvdmVyKSB7XG4gICAgICBzZXRJc0hvdmVyZWQodHJ1ZSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZU9uTW91c2VMZWF2ZSA9ICgpID0+IHtcbiAgICBpZiAoZW5hYmxlSG92ZXIpIHtcbiAgICAgIHNldElzSG92ZXJlZChmYWxzZSk7XG4gICAgfVxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPHJlY3RcbiAgICAgIGtleT17YmFyUmVjdEtleX1cbiAgICAgIHg9e3h9XG4gICAgICB5PXt5fVxuICAgICAgd2lkdGg9e3dpZHRofVxuICAgICAgaGVpZ2h0PXtoZWlnaHR9XG4gICAgICBmaWxsPXtkaXNwbGF5Q29sb3J9XG4gICAgICByeD17QkFSX1JBRElVU31cbiAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICBvbk1vdXNlRW50ZXI9e2hhbmRsZU9uTW91c2VFbnRlcn1cbiAgICAgIG9uTW91c2VMZWF2ZT17aGFuZGxlT25Nb3VzZUxlYXZlfVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzfVxuICAgIC8+XG4gICk7XG59O1xuXG50eXBlIEJhckxhYmVsUHJvcHMgPSB7XG4gIGJhcjogYW55O1xuICBiYXJHcm91cDogYW55O1xuICB5TGFiZWxQb3NpdGlvbj86IG51bWJlcjtcbiAgeUF4aXNMYWJlbHM/OiBzdHJpbmdbXTtcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM6IGJvb2xlYW47XG4gIGxhYmVsU3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xufTtcblxuY29uc3QgQmFyTGFiZWwgPSAoe1xuICBiYXIsXG4gIGJhckdyb3VwLFxuICB5TGFiZWxQb3NpdGlvbixcbiAgeUF4aXNMYWJlbHMsXG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzLFxuICBsYWJlbFN0eWxlLFxufTogQmFyTGFiZWxQcm9wcykgPT4ge1xuICBpZiAoIXNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzIHx8ICF5TGFiZWxQb3NpdGlvbiB8fCAheUF4aXNMYWJlbHMpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGxhYmVsID0geUF4aXNMYWJlbHNbYmFyLmluZGV4XTtcbiAgY29uc3QgY29sdW1uTGFiZWwgPSBsYWJlbC5zcGxpdCgn4oCiJylbMF07XG5cbiAgbGV0IGZvcm1hdHRlZENvbHVtbkxhYmVsOiBzdHJpbmc7XG4gIGlmIChjb2x1bW5MYWJlbC5sZW5ndGggPj0gMTMpIHtcbiAgICBmb3JtYXR0ZWRDb2x1bW5MYWJlbCA9IGNvbHVtbkxhYmVsLnNsaWNlKDAsIDEwKSArICcuLi4nO1xuICB9IGVsc2Uge1xuICAgIGZvcm1hdHRlZENvbHVtbkxhYmVsID0gY29sdW1uTGFiZWwuc2xpY2UoMCwgMTMpO1xuICB9XG5cbiAgY29uc3QgbGFiZWxYR2FwID0gNDtcbiAgY29uc3QgbGFiZWxYUG9zaXRpb24gPSBiYXIueCArIGJhci53aWR0aCAvIDIgKyBsYWJlbFhHYXA7XG5cbiAgY29uc3QgbGFiZWxZR2FwID0gMTU7XG4gIGNvbnN0IGxhYmVsWVBvc2l0aW9uID0geUxhYmVsUG9zaXRpb24gKyBsYWJlbFlHYXA7XG5cbiAgY29uc3QgbGFiZWxLZXkgPSBgbGFiZWwtJHtiYXJHcm91cC5pbmRleH0tJHtiYXIuaW5kZXh9LSR7bGFiZWx9YDtcblxuICByZXR1cm4gKFxuICAgIDx0ZXh0XG4gICAgICBrZXk9e2xhYmVsS2V5fVxuICAgICAgeD17bGFiZWxYUG9zaXRpb259XG4gICAgICB5PXtsYWJlbFlQb3NpdGlvbn1cbiAgICAgIHN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgdHJhbnNmb3JtPXtgcm90YXRlKC03MCwgJHtsYWJlbFhQb3NpdGlvbn0sICR7bGFiZWxZUG9zaXRpb259KWB9XG4gICAgICB0ZXh0QW5jaG9yPVwiZW5kXCJcbiAgICA+XG4gICAgICB7Zm9ybWF0dGVkQ29sdW1uTGFiZWx9XG4gICAgPC90ZXh0PlxuICApO1xufTtcbiJdfQ== */",
46028
46037
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$9
46029
46038
  }) : '';
46030
46039
  var displayColor = isHovered && enableHover ? lightenColor$2(fill, 0.8) : fill;
@@ -46459,6 +46468,7 @@ var BarChart$5 = function BarChart(_ref) {
46459
46468
  data: dataFlattened,
46460
46469
  keys: yScaleKeys,
46461
46470
  height: innerHeight,
46471
+ width: width,
46462
46472
  xKey: xKey,
46463
46473
  xScaleDataType: xScaleDataType,
46464
46474
  xScale: xScale,
@@ -57107,10 +57117,9 @@ var Bar$2 = function Bar(_ref4) {
57107
57117
  var labelX = bar.x - xPadding;
57108
57118
  var labelY = getStepYPosition(step, barHeight, y);
57109
57119
  var isFirstOrLastStep = barGroup.index === 0 || barGroup.index === totalItems - 1;
57110
- var keyValue = step.end - step.start;
57111
- var displayValue = getFormattedValue(keyValue, labelDictionary);
57120
+ var displayValue = getFormattedValue(bar.value, labelDictionary);
57112
57121
  var unformattedValue = displayValue.length > 15;
57113
- if (unformattedValue) displayValue = keyValue;
57122
+ if (unformattedValue) displayValue = bar.value;
57114
57123
  var showMinMax = unformattedValue ? isFirstOrLastStep : totalItems < 20 || isFirstOrLastStep;
57115
57124
  var shouldShowLabel = showLabels && showMinMax;
57116
57125
  return jsxs(Fragment$1, {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@vizzly/dashboard",
3
3
  "author": "james@vizzly.co",
4
- "version": "0.15.0-dev-ac044c49c73d54ff3c144918a639d24aea98b549",
4
+ "version": "0.15.0-dev-99fa2919f27a2c00cd133f2bbc6a59fe90cb6b42",
5
5
  "source": "src/index.tsx",
6
6
  "types": "./dist/dashboard/src/index.d.ts",
7
7
  "module": "./dist/dashboard.esm.js",