@vizzly/dashboard 0.15.0-dev-ec22f31a049b4f844d3ea606a85bd487c4553b03 → 0.15.0-dev-9c2753f2944feccf9be062635a5a86838c409695

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.
@@ -15,4 +15,4 @@ export declare type AxisBottomProps = {
15
15
  xScale: ScaleBand<string> | ScaleBand<Date> | ScaleBand<number> | ScaleLinear<number, number, never> | ScalePoint<string> | ScaleTime<number, number, never> | null;
16
16
  height: number;
17
17
  };
18
- export declare function AxisBottom({ x, margin, themeCSS, show, removeStroke, xScaleDataType, xScale, height, baselineShift }: AxisBottomProps): JSX.Element | null;
18
+ export declare function AxisBottom({ x, margin, themeCSS, show, removeStroke, xScaleDataType, xScale, height, baselineShift, }: AxisBottomProps): JSX.Element | null;
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { BarChartRepresentation } from '../../../../../shared-logic/src/BarChartV2/types';
3
- import { ChartTheme } from '../../../types';
4
3
  import { ChartOnViewClick } from '../../../../../shared-logic/src/ChartsV2/types';
4
+ import { ChartTheme } from '../../../types';
5
5
  export declare type BarChartProps = {
6
6
  width: number;
7
7
  height: number;
@@ -21,4 +21,4 @@ export declare type BarChartProps = {
21
21
  enableHover?: boolean;
22
22
  numberOfDimensions: number;
23
23
  };
24
- export declare const BarChart: ({ chart, width, height, options, theme, onClick, enableHover, numberOfDimensions }: BarChartProps) => JSX.Element;
24
+ export declare const BarChart: ({ chart, width, height, options, theme, onClick, enableHover, numberOfDimensions, }: BarChartProps) => JSX.Element;
@@ -1,8 +1,8 @@
1
1
  /// <reference types="react" />
2
- import { ChartDataDefinition, ConditionalFormattingRule, ShapeDefinition } from "../../../../../shared-logic/src/ChartsV2/types";
3
- import { BarStyles } from "../../../../../shared-logic/src/BarChartV2/types";
4
- import { ScaleLinear, ScaleBand } from '@visx/vendor/d3-scale';
5
- import { DataType } from "../../../../../shared-logic/src/Field/types";
2
+ import { ScaleBand, ScaleLinear } from '@visx/vendor/d3-scale';
3
+ import { BarStyles } from '../../../../../shared-logic/src/BarChartV2/types';
4
+ import { ChartDataDefinition, ConditionalFormattingRule, ShapeDefinition } from '../../../../../shared-logic/src/ChartsV2/types';
5
+ import { DataType } from '../../../../../shared-logic/src/Field/types';
6
6
  export declare type BarGroupProps = {
7
7
  data: ChartDataDefinition[];
8
8
  keys: string[];
@@ -1,8 +1,8 @@
1
1
  /// <reference types="react" />
2
- import { BarStyles } from "../../../../../shared-logic/src/BarChartV2/types";
3
- import { ConditionalFormattingRule, ShapeDefinition } from "../../../../../shared-logic/src/ChartsV2/types";
4
- import { ScaleLinear } from '@visx/vendor/d3-scale';
5
2
  import { DatumObject } from '@visx/shape/lib/types';
3
+ import { ScaleLinear } from '@visx/vendor/d3-scale';
4
+ import { BarStyles } from '../../../../../shared-logic/src/BarChartV2/types';
5
+ import { ConditionalFormattingRule, ShapeDefinition } from '../../../../../shared-logic/src/ChartsV2/types';
6
6
  export declare type BarStackedProps = {
7
7
  conditionalFormattingRules: ConditionalFormattingRule[];
8
8
  bars: ShapeDefinition<BarStyles>[];
@@ -15,4 +15,4 @@ export declare type BarStackedProps = {
15
15
  height: number;
16
16
  width: number;
17
17
  };
18
- export declare const BarStacked: ({ xScaleDataType, data, xScaleKey, yScale, keys, bars, conditionalFormattingRules, xScale, height, width }: BarStackedProps) => JSX.Element;
18
+ export declare const BarStacked: ({ xScaleDataType, data, xScaleKey, yScale, keys, bars, conditionalFormattingRules, xScale, height, width, }: BarStackedProps) => JSX.Element;
@@ -44471,58 +44471,7 @@ function Lines(_ref2) {
44471
44471
  });
44472
44472
  }
44473
44473
 
44474
- var PADDING = {
44475
- paddingOuter: 0.05,
44476
- paddingInner: 0.3
44477
- };
44478
-
44479
- function useBarXScale(xScaleDataType, innerWidth, xScaleKey, data) {
44480
- return React.useMemo(function () {
44481
- if (xScaleDataType === 'string') {
44482
- return scale.scaleBand(_extends({
44483
- range: [0, innerWidth],
44484
- domain: xScaleKey ? [].concat(data.map(function (d) {
44485
- return d[xScaleKey] && d[xScaleKey].value !== null ? String(d[xScaleKey].value) : '';
44486
- })) : []
44487
- }, PADDING));
44488
- }
44489
- if (xScaleDataType === 'date_time' && xScaleKey) {
44490
- return scale.scaleBand(_extends({
44491
- range: [0, innerWidth],
44492
- domain: data.map(function (d) {
44493
- return new Date(d[xScaleKey].value);
44494
- })
44495
- }, PADDING));
44496
- }
44497
- if (xScaleDataType === 'number' && xScaleKey) {
44498
- return scale.scaleBand(_extends({
44499
- range: [0, innerWidth],
44500
- domain: data.map(function (d) {
44501
- return d[xScaleKey] && d[xScaleKey].value !== null ? Number(d[xScaleKey].value) : 0;
44502
- })
44503
- }, PADDING));
44504
- }
44505
- return null;
44506
- }, [innerWidth, data]);
44507
- }
44508
-
44509
- var useBottomAxisBaseLineShift = function useBottomAxisBaseLineShift(_ref) {
44510
- var showDetailedSubGroupingLabels = _ref.showDetailedSubGroupingLabels,
44511
- hasBottomTitle = _ref.hasBottomTitle,
44512
- hasLeftTitle = _ref.hasLeftTitle;
44513
- if (!showDetailedSubGroupingLabels) {
44514
- return {
44515
- bottomAxisBaselineShift: 0,
44516
- bottomOffset: 0,
44517
- leftOffset: 0
44518
- };
44519
- }
44520
- return {
44521
- bottomAxisBaselineShift: hasBottomTitle ? -65 : -60,
44522
- bottomOffset: hasBottomTitle ? -15 : 10,
44523
- leftOffset: hasLeftTitle ? -10 : 0
44524
- };
44525
- };
44474
+ var BAR_RADIUS = 2;
44526
44475
 
44527
44476
  function getBarFill(bars, conditionalFormattingRules, barKey, barValues) {
44528
44477
  var _bars$find;
@@ -44548,73 +44497,6 @@ function getBarFill(bars, conditionalFormattingRules, barKey, barValues) {
44548
44497
  return fill;
44549
44498
  }
44550
44499
 
44551
- var BAR_RADIUS = 2;
44552
-
44553
- var BarStacked = function BarStacked(_ref) {
44554
- var xScaleDataType = _ref.xScaleDataType,
44555
- data = _ref.data,
44556
- xScaleKey = _ref.xScaleKey,
44557
- yScale = _ref.yScale,
44558
- keys = _ref.keys,
44559
- bars = _ref.bars,
44560
- conditionalFormattingRules = _ref.conditionalFormattingRules,
44561
- xScale = _ref.xScale,
44562
- height = _ref.height,
44563
- width = _ref.width;
44564
- var handleGetXValue = function handleGetXValue(d) {
44565
- var xValue = d[xScaleKey];
44566
- if (xScaleDataType === 'string') return String(xValue);
44567
- if (xScaleDataType === 'date_time') {
44568
- return new Date(xValue);
44569
- }
44570
- if (xScaleDataType === 'number') {
44571
- return Number(xValue);
44572
- }
44573
- return String(xValue);
44574
- };
44575
- return jsxRuntime.jsx(shape.BarStack, {
44576
- x: handleGetXValue,
44577
- xScale: xScale,
44578
- yScale: yScale,
44579
- data: data,
44580
- keys: keys,
44581
- color: function color() {
44582
- return '';
44583
- },
44584
- height: height,
44585
- width: width,
44586
- offset: "none",
44587
- children: function children(barStacks) {
44588
- return barStacks.map(function (barStack) {
44589
- return barStack.bars.map(function (bar) {
44590
- return jsxRuntime.jsx(Bar, {
44591
- bar: bar,
44592
- barStack: barStack,
44593
- bars: bars,
44594
- conditionalFormattingRules: conditionalFormattingRules
44595
- }, bar.key.toString());
44596
- });
44597
- });
44598
- }
44599
- });
44600
- };
44601
- var Bar = function Bar(_ref2) {
44602
- var bar = _ref2.bar,
44603
- barStack = _ref2.barStack,
44604
- bars = _ref2.bars,
44605
- conditionalFormattingRules = _ref2.conditionalFormattingRules;
44606
- var BAR_PADDING = 1.5;
44607
- if (bar.height < 3) return null;
44608
- return jsxRuntime.jsx("rect", {
44609
- x: bar.x,
44610
- y: bar.y,
44611
- width: bar.width,
44612
- height: bar.height - BAR_PADDING,
44613
- fill: getBarFill(bars, conditionalFormattingRules, bar.key, bar.bar.data),
44614
- rx: BAR_RADIUS
44615
- }, "bar-stack-" + barStack.index + "-" + bar.index);
44616
- };
44617
-
44618
44500
  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)."; }
44619
44501
  function BarGroup(_ref) {
44620
44502
  var data = _ref.data,
@@ -44664,7 +44546,7 @@ function BarGroup(_ref) {
44664
44546
  return jsxRuntime.jsx(group.Group, {
44665
44547
  left: barGroup.x0,
44666
44548
  children: barGroup.bars.map(function (bar) {
44667
- return jsxRuntime.jsx(Bar$1, {
44549
+ return jsxRuntime.jsx(Bar, {
44668
44550
  bar: bar,
44669
44551
  barGroup: barGroup,
44670
44552
  bars: bars,
@@ -44682,7 +44564,7 @@ function BarGroup(_ref) {
44682
44564
  }
44683
44565
  });
44684
44566
  }
44685
- var Bar$1 = function Bar(_ref2) {
44567
+ var Bar = function Bar(_ref2) {
44686
44568
  var bar = _ref2.bar,
44687
44569
  barGroup = _ref2.barGroup,
44688
44570
  bars = _ref2.bars,
@@ -44696,6 +44578,7 @@ var Bar$1 = function Bar(_ref2) {
44696
44578
  var showBar = bar.value !== null && bar.height > 0 && bar.width > 0;
44697
44579
  return jsxRuntime.jsxs(React.Fragment, {
44698
44580
  children: [showBar && jsxRuntime.jsx(BarRect, {
44581
+ barRectKey: "bar-group-bar-" + barGroup.index + "-" + bar.index + "-" + bar.value + "-" + String(bar.key),
44699
44582
  x: bar.x,
44700
44583
  y: bar.y,
44701
44584
  width: bar.width,
@@ -44705,7 +44588,7 @@ var Bar$1 = function Bar(_ref2) {
44705
44588
  return _onClick(e, barGroup, bar);
44706
44589
  },
44707
44590
  enableHover: enableHover
44708
- }, "bar-group-bar-" + barGroup.index + "-" + bar.index + "-" + bar.value + "-" + String(bar.key)), jsxRuntime.jsx(BarLabel, {
44591
+ }), jsxRuntime.jsx(BarLabel, {
44709
44592
  bar: bar,
44710
44593
  barGroup: barGroup,
44711
44594
  yLabelPosition: yLabelPosition,
@@ -44722,7 +44605,7 @@ var BarRect = function BarRect(_ref3) {
44722
44605
  y = _ref3.y,
44723
44606
  width = _ref3.width,
44724
44607
  height = _ref3.height,
44725
- key = _ref3.key,
44608
+ barRectKey = _ref3.barRectKey,
44726
44609
  enableHover = _ref3.enableHover;
44727
44610
  var _useState = React.useState(fill),
44728
44611
  fillColor = _useState[0],
@@ -44730,7 +44613,7 @@ var BarRect = function BarRect(_ref3) {
44730
44613
  var classes = enableHover ? /*#__PURE__*/css$1.css( {
44731
44614
  name: "1ltmijl-classes",
44732
44615
  styles: "cursor:pointer;label:classes;",
44733
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJhckdyb3VwLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtTGtDIiwiZmlsZSI6IkJhckdyb3VwLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gXCJAZW1vdGlvbi9jc3NcIjtcbmltcG9ydCB7IEZyYWdtZW50LCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgbGlnaHRlbkNvbG9yIH0gZnJvbSBcIi4uLy4uLy4uL3N0eWxlcy9jb2xvci5mdW5jdGlvbnNcIjtcbmltcG9ydCB7IEJBUl9SQURJVVMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvQk9SREVSX1JBRElVUydcbmltcG9ydCB7IGdldEJhckZpbGwgfSBmcm9tIFwiLi4vZ2V0QmFyRmlsbFwiO1xuaW1wb3J0IHsgQ2hhcnREYXRhRGVmaW5pdGlvbiwgQ29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZSwgU2hhcGVEZWZpbml0aW9uIH0gZnJvbSBcInNoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXNcIjtcbmltcG9ydCB7IEJhclN0eWxlcyB9IGZyb20gXCJzaGFyZWQtbG9naWMvc3JjL0JhckNoYXJ0VjIvdHlwZXNcIjtcbmltcG9ydCB7IEJhckdyb3VwIGFzIFZpc3hCYXJHcm91cCB9IGZyb20gJ0B2aXN4L3NoYXBlJztcbmltcG9ydCB7IFNjYWxlTGluZWFyLCBTY2FsZUJhbmQgfSBmcm9tICdAdmlzeC92ZW5kb3IvZDMtc2NhbGUnO1xuaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tIFwic2hhcmVkLWxvZ2ljL3NyYy9GaWVsZC90eXBlc1wiO1xuaW1wb3J0IHsgRGF0dW1PYmplY3QgfSBmcm9tICdAdmlzeC9zaGFwZS9saWIvdHlwZXMnO1xuaW1wb3J0IHsgR3JvdXAgfSBmcm9tICdAdmlzeC9ncm91cCc7XG5cbmV4cG9ydCB0eXBlIEJhckdyb3VwUHJvcHMgPSB7XG4gICAgZGF0YTogQ2hhcnREYXRhRGVmaW5pdGlvbltdO1xuICAgIGtleXM6IHN0cmluZ1tdO1xuICAgIGhlaWdodDogbnVtYmVyO1xuICAgIHhLZXk6IHN0cmluZztcbiAgICB4U2NhbGVEYXRhVHlwZTogRGF0YVR5cGU7XG4gICAgeFNjYWxlOiBTY2FsZUJhbmQ8c3RyaW5nPiB8IFNjYWxlQmFuZDxEYXRlPiB8IFNjYWxlQmFuZDxudW1iZXI+IHwgbnVsbDtcbiAgICBpbm5lclhTY2FsZTogU2NhbGVCYW5kPHN0cmluZz4gfCB1bmRlZmluZWQ7XG4gICAgeVNjYWxlOiBTY2FsZUxpbmVhcjxudW1iZXIsIG51bWJlciwgbmV2ZXI+O1xuICAgIG9uQ2xpY2s6IChlOiBSZWFjdC5Nb3VzZUV2ZW50PFNWR1JlY3RFbGVtZW50LCBNb3VzZUV2ZW50PiwgYmFyR3JvdXA6IGFueSwgYmFyOiBhbnkpID0+IHZvaWQ7XG4gICAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM6IENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVbXTtcbiAgICBiYXJzOiBTaGFwZURlZmluaXRpb248QmFyU3R5bGVzPltdO1xuICAgIGVuYWJsZUhvdmVyPzogYm9vbGVhbjtcbiAgICB5QXhpc0xhYmVscz86IHN0cmluZ1tdO1xuICAgIHlMYWJlbFBvc2l0aW9uPzogbnVtYmVyO1xuICAgIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzOiBib29sZWFuO1xuICAgIGxhYmVsU3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIEJhckdyb3VwKHtcbiAgICBkYXRhLFxuICAgIGtleXMsXG4gICAgaGVpZ2h0LFxuICAgIHhLZXksXG4gICAgeFNjYWxlRGF0YVR5cGUsXG4gICAgeFNjYWxlLFxuICAgIGlubmVyWFNjYWxlLFxuICAgIHlTY2FsZSxcbiAgICBvbkNsaWNrLFxuICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLFxuICAgIGJhcnMsXG4gICAgZW5hYmxlSG92ZXIsXG4gICAgeUF4aXNMYWJlbHMsXG4gICAgeUxhYmVsUG9zaXRpb24sXG4gICAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHMsXG4gICAgbGFiZWxTdHlsZSxcbn06IEJhckdyb3VwUHJvcHMpIHtcbiAgICBjb25zdCBnZXRHcm91cFBvc2l0aW9uID0gKGQ6IERhdHVtT2JqZWN0KSA9PiB7XG4gICAgICAgIGNvbnN0IHhWYWx1ZSA9IGRbeEtleSBhcyBrZXlvZiB0eXBlb2YgZF07XG5cbiAgICAgICAgaWYgKHhTY2FsZURhdGFUeXBlID09PSAnc3RyaW5nJykgcmV0dXJuIFN0cmluZyh4VmFsdWUpO1xuXG4gICAgICAgIGlmICh4U2NhbGVEYXRhVHlwZSA9PT0gJ2RhdGVfdGltZScpIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgRGF0ZShTdHJpbmcoeFZhbHVlKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoeFNjYWxlRGF0YVR5cGUgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgICByZXR1cm4gTnVtYmVyKHhWYWx1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gU3RyaW5nKHhWYWx1ZSk7XG4gICAgfTtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDxWaXN4QmFyR3JvdXA8RGF0dW1PYmplY3Q+XG4gICAgICAgICAgICBkYXRhPXtkYXRhIGFzIERhdHVtT2JqZWN0W119XG4gICAgICAgICAgICBrZXlzPXtrZXlzfVxuICAgICAgICAgICAgaGVpZ2h0PXtoZWlnaHR9XG4gICAgICAgICAgICB4MD17Z2V0R3JvdXBQb3NpdGlvbn1cbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIHgwU2NhbGU9e3hTY2FsZX1cbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIHgxU2NhbGU9e2lubmVyWFNjYWxlfVxuICAgICAgICAgICAgeVNjYWxlPXt5U2NhbGV9XG4gICAgICAgICAgICBjb2xvcj17KCkgPT4gJyd9XG4gICAgICAgID5cbiAgICAgICAgICAgIHtiYXJHcm91cHMgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBiYXJHcm91cHMubWFwKGJhckdyb3VwID0+IChcbiAgICAgICAgICAgICAgICAgICAgPEdyb3VwIGtleT17YGJhci1ncm91cC0ke2Jhckdyb3VwLmluZGV4fS0ke2Jhckdyb3VwLngwfWB9IGxlZnQ9e2Jhckdyb3VwLngwfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtiYXJHcm91cC5iYXJzLm1hcChiYXIgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCYXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5PXtgYmFyLSR7YmFyLmluZGV4fS0ke2Jhci54fWB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhcj17YmFyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXJHcm91cD17YmFyR3JvdXB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhcnM9e2JhcnN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzPXtjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlSG92ZXI9e2VuYWJsZUhvdmVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbFN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVscz17c2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHlBeGlzTGFiZWxzPXt5QXhpc0xhYmVsc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeUxhYmVsUG9zaXRpb249e3lMYWJlbFBvc2l0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgICAgICAgPC9Hcm91cD5cbiAgICAgICAgICAgICAgICApKTtcbiAgICAgICAgICAgIH19XG4gICAgICAgIDwvVmlzeEJhckdyb3VwPlxuICAgICk7XG59XG5cbnR5cGUgQmFyUHJvcHMgPSB7XG4gICAgYmFyOiBhbnksXG4gICAgYmFyR3JvdXA6IGFueSxcbiAgICBiYXJzOiBTaGFwZURlZmluaXRpb248QmFyU3R5bGVzPltdO1xuICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzOiBDb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlW107XG4gICAgZW5hYmxlSG92ZXI/OiBib29sZWFuO1xuICAgIG9uQ2xpY2s6IChlOiBSZWFjdC5Nb3VzZUV2ZW50PFNWR1JlY3RFbGVtZW50LCBNb3VzZUV2ZW50PiwgYmFyR3JvdXA6IGFueSwgYmFyOiBhbnkpID0+IHZvaWQ7XG4gICAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM6IGJvb2xlYW47XG4gICAgbGFiZWxTdHlsZT86IFJlYWN0LkNTU1Byb3BlcnRpZXM7XG4gICAgeUF4aXNMYWJlbHM/OiBzdHJpbmdbXTtcbiAgICB5TGFiZWxQb3NpdGlvbj86IG51bWJlcjtcbn1cblxuY29uc3QgQmFyID0gKHtcbiAgICBiYXIsXG4gICAgYmFyR3JvdXAsXG4gICAgYmFycyxcbiAgICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcyxcbiAgICBlbmFibGVIb3ZlcixcbiAgICBsYWJlbFN0eWxlLFxuICAgIG9uQ2xpY2ssXG4gICAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHMsXG4gICAgeUF4aXNMYWJlbHMsXG4gICAgeUxhYmVsUG9zaXRpb24sXG59OiBCYXJQcm9wcykgPT4ge1xuICAgIGNvbnN0IHNob3dCYXIgPSBiYXIudmFsdWUgIT09IG51bGwgJiYgYmFyLmhlaWdodCA+IDAgJiYgYmFyLndpZHRoID4gMDtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDxGcmFnbWVudD5cbiAgICAgICAgICAgIHtzaG93QmFyICYmIDxCYXJSZWN0XG4gICAgICAgICAgICAgICAga2V5PXtgYmFyLWdyb3VwLWJhci0ke2Jhckdyb3VwLmluZGV4fS0ke2Jhci5pbmRleH0tJHtiYXIudmFsdWV9LSR7U3RyaW5nKGJhci5rZXkpfWB9XG4gICAgICAgICAgICAgICAgeD17YmFyLnh9XG4gICAgICAgICAgICAgICAgeT17YmFyLnl9XG4gICAgICAgICAgICAgICAgd2lkdGg9e2Jhci53aWR0aH1cbiAgICAgICAgICAgICAgICBoZWlnaHQ9e2Jhci5oZWlnaHR9XG4gICAgICAgICAgICAgICAgZmlsbD17Z2V0QmFyRmlsbChiYXJzLCBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcywgU3RyaW5nKGJhci5rZXkpLCBiYXIudmFsdWUpfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2UgPT4gb25DbGljayhlLCBiYXJHcm91cCwgYmFyKX1cbiAgICAgICAgICAgICAgICBlbmFibGVIb3Zlcj17ZW5hYmxlSG92ZXJ9XG4gICAgICAgICAgICAvPn1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPEJhckxhYmVsXG4gICAgICAgICAgICAgICAgYmFyPXtiYXJ9XG4gICAgICAgICAgICAgICAgYmFyR3JvdXA9e2Jhckdyb3VwfVxuICAgICAgICAgICAgICAgIHlMYWJlbFBvc2l0aW9uPXt5TGFiZWxQb3NpdGlvbn1cbiAgICAgICAgICAgICAgICB5QXhpc0xhYmVscz17eUF4aXNMYWJlbHN9XG4gICAgICAgICAgICAgICAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM9e3Nob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzfVxuICAgICAgICAgICAgICAgIGxhYmVsU3R5bGU9e2xhYmVsU3R5bGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICA8L0ZyYWdtZW50PlxuICAgICk7XG59O1xuXG50eXBlIEJhclJlY3RQcm9wcyA9IHtcbiAgICBvbkNsaWNrOiAoZTogUmVhY3QuTW91c2VFdmVudDxTVkdSZWN0RWxlbWVudCwgTW91c2VFdmVudD4pID0+IHZvaWQ7XG4gICAgZmlsbD86IHN0cmluZztcbiAgICB4OiBudW1iZXI7XG4gICAgeTogbnVtYmVyO1xuICAgIHdpZHRoOiBudW1iZXI7XG4gICAgaGVpZ2h0OiBudW1iZXI7XG4gICAga2V5OiBzdHJpbmc7XG4gICAgZW5hYmxlSG92ZXI/OiBib29sZWFuO1xufTtcblxuY29uc3QgQmFyUmVjdCA9ICh7XG4gICAgb25DbGljayxcbiAgICBmaWxsLFxuICAgIHgsXG4gICAgeSxcbiAgICB3aWR0aCxcbiAgICBoZWlnaHQsXG4gICAga2V5LFxuICAgIGVuYWJsZUhvdmVyLFxufTogQmFyUmVjdFByb3BzKSA9PiB7XG4gICAgY29uc3QgW2ZpbGxDb2xvciwgc2V0RmlsbENvbG9yXSA9IHVzZVN0YXRlKGZpbGwpO1xuXG4gICAgY29uc3QgY2xhc3NlcyA9IGVuYWJsZUhvdmVyID8gY3NzKHsgY3Vyc29yOiAncG9pbnRlcicgfSkgOiAnJztcblxuICAgIGNvbnN0IGhhbmRsZU9uTW91c2VFbnRlciA9ICgpID0+IHtcbiAgICAgICAgaWYgKGVuYWJsZUhvdmVyKSB7XG4gICAgICAgICAgICBzZXRGaWxsQ29sb3IobGlnaHRlbkNvbG9yKGZpbGwsIDAuOCkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgaGFuZGxlT25Nb3VzZUxlYXZlID0gKCkgPT4ge1xuICAgICAgICBpZiAoZW5hYmxlSG92ZXIpIHtcbiAgICAgICAgICAgIHNldEZpbGxDb2xvcihmaWxsKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAoXG4gICAgICAgIDxyZWN0XG4gICAgICAgICAgICBrZXk9e2tleX1cbiAgICAgICAgICAgIHg9e3h9XG4gICAgICAgICAgICB5PXt5fVxuICAgICAgICAgICAgd2lkdGg9e3dpZHRofVxuICAgICAgICAgICAgaGVpZ2h0PXtoZWlnaHR9XG4gICAgICAgICAgICBmaWxsPXtmaWxsQ29sb3J9XG4gICAgICAgICAgICByeD17QkFSX1JBRElVU31cbiAgICAgICAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICAgICAgICBvbk1vdXNlRW50ZXI9e2hhbmRsZU9uTW91c2VFbnRlcn1cbiAgICAgICAgICAgIG9uTW91c2VMZWF2ZT17aGFuZGxlT25Nb3VzZUxlYXZlfVxuICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzfVxuICAgICAgICAvPlxuICAgICk7XG59O1xuXG50eXBlIEJhckxhYmVsUHJvcHMgPSB7XG4gICAgYmFyOiBhbnk7XG4gICAgYmFyR3JvdXA6IGFueTtcbiAgICB5TGFiZWxQb3NpdGlvbj86IG51bWJlcjtcbiAgICB5QXhpc0xhYmVscz86IHN0cmluZ1tdO1xuICAgIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzOiBib29sZWFuO1xuICAgIGxhYmVsU3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xufTtcblxuY29uc3QgQmFyTGFiZWwgPSAoe1xuICAgIGJhcixcbiAgICBiYXJHcm91cCxcbiAgICB5TGFiZWxQb3NpdGlvbixcbiAgICB5QXhpc0xhYmVscyxcbiAgICBzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVscyxcbiAgICBsYWJlbFN0eWxlLFxufTogQmFyTGFiZWxQcm9wcykgPT4ge1xuICAgIGlmICghc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHMgfHwgIXlMYWJlbFBvc2l0aW9uIHx8ICF5QXhpc0xhYmVscykgcmV0dXJuIG51bGw7XG5cbiAgICBjb25zdCBsYWJlbCA9IHlBeGlzTGFiZWxzW2Jhci5pbmRleF07XG4gICAgY29uc3QgY29sdW1uTGFiZWwgPSBsYWJlbC5zcGxpdCgn4oCiJylbMF07XG5cbiAgICBsZXQgZm9ybWF0dGVkQ29sdW1uTGFiZWw6IHN0cmluZztcbiAgICBpZiAoY29sdW1uTGFiZWwubGVuZ3RoID49IDEzKSB7XG4gICAgICAgIGZvcm1hdHRlZENvbHVtbkxhYmVsID0gY29sdW1uTGFiZWwuc2xpY2UoMCwgMTApICsgJy4uLic7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgZm9ybWF0dGVkQ29sdW1uTGFiZWwgPSBjb2x1bW5MYWJlbC5zbGljZSgwLCAxMyk7XG4gICAgfVxuXG4gICAgY29uc3QgbGFiZWxYR2FwID0gNDtcbiAgICBjb25zdCBsYWJlbFhQb3NpdGlvbiA9IGJhci54ICsgKGJhci53aWR0aCAvIDIpICsgbGFiZWxYR2FwO1xuXG4gICAgY29uc3QgbGFiZWxZR2FwID0gMTU7XG4gICAgY29uc3QgbGFiZWxZUG9zaXRpb24gPSB5TGFiZWxQb3NpdGlvbiArIGxhYmVsWUdhcDtcblxuICAgIGNvbnN0IGxhYmVsS2V5ID0gYGxhYmVsLSR7YmFyR3JvdXAuaW5kZXh9LSR7YmFyLmluZGV4fS0ke2xhYmVsfWA7XG5cbiAgICByZXR1cm4gPHRleHRcbiAgICAgICAga2V5PXtsYWJlbEtleX1cbiAgICAgICAgeD17bGFiZWxYUG9zaXRpb259XG4gICAgICAgIHk9e2xhYmVsWVBvc2l0aW9ufVxuICAgICAgICBzdHlsZT17bGFiZWxTdHlsZX1cbiAgICAgICAgdHJhbnNmb3JtPXtgcm90YXRlKC03MCwgJHtsYWJlbFhQb3NpdGlvbn0sICR7bGFiZWxZUG9zaXRpb259KWB9XG4gICAgICAgIHRleHRBbmNob3I9J2VuZCdcbiAgICA+XG4gICAgICAgIHtmb3JtYXR0ZWRDb2x1bW5MYWJlbH1cbiAgICA8L3RleHQ+XG59Il19 */",
44616
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkJhckdyb3VwLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE0S2dDIiwiZmlsZSI6IkJhckdyb3VwLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBHcm91cCB9IGZyb20gJ0B2aXN4L2dyb3VwJztcbmltcG9ydCB7IEJhckdyb3VwIGFzIFZpc3hCYXJHcm91cCB9IGZyb20gJ0B2aXN4L3NoYXBlJztcbmltcG9ydCB7IERhdHVtT2JqZWN0IH0gZnJvbSAnQHZpc3gvc2hhcGUvbGliL3R5cGVzJztcbmltcG9ydCB7IFNjYWxlQmFuZCwgU2NhbGVMaW5lYXIgfSBmcm9tICdAdmlzeC92ZW5kb3IvZDMtc2NhbGUnO1xuaW1wb3J0IHsgRnJhZ21lbnQsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgQmFyU3R5bGVzIH0gZnJvbSAnc2hhcmVkLWxvZ2ljL3NyYy9CYXJDaGFydFYyL3R5cGVzJztcbmltcG9ydCB7IENoYXJ0RGF0YURlZmluaXRpb24sIENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGUsIFNoYXBlRGVmaW5pdGlvbiB9IGZyb20gJ3NoYXJlZC1sb2dpYy9zcmMvQ2hhcnRzVjIvdHlwZXMnO1xuaW1wb3J0IHsgRGF0YVR5cGUgfSBmcm9tICdzaGFyZWQtbG9naWMvc3JjL0ZpZWxkL3R5cGVzJztcbmltcG9ydCB7IGxpZ2h0ZW5Db2xvciB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9jb2xvci5mdW5jdGlvbnMnO1xuaW1wb3J0IHsgQkFSX1JBRElVUyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9CT1JERVJfUkFESVVTJztcbmltcG9ydCB7IGdldEJhckZpbGwgfSBmcm9tICcuLi9nZXRCYXJGaWxsJztcblxuZXhwb3J0IHR5cGUgQmFyR3JvdXBQcm9wcyA9IHtcbiAgZGF0YTogQ2hhcnREYXRhRGVmaW5pdGlvbltdO1xuICBrZXlzOiBzdHJpbmdbXTtcbiAgaGVpZ2h0OiBudW1iZXI7XG4gIHhLZXk6IHN0cmluZztcbiAgeFNjYWxlRGF0YVR5cGU6IERhdGFUeXBlO1xuICB4U2NhbGU6IFNjYWxlQmFuZDxzdHJpbmc+IHwgU2NhbGVCYW5kPERhdGU+IHwgU2NhbGVCYW5kPG51bWJlcj4gfCBudWxsO1xuICBpbm5lclhTY2FsZTogU2NhbGVCYW5kPHN0cmluZz4gfCB1bmRlZmluZWQ7XG4gIHlTY2FsZTogU2NhbGVMaW5lYXI8bnVtYmVyLCBudW1iZXIsIG5ldmVyPjtcbiAgb25DbGljazogKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8U1ZHUmVjdEVsZW1lbnQsIE1vdXNlRXZlbnQ+LCBiYXJHcm91cDogYW55LCBiYXI6IGFueSkgPT4gdm9pZDtcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM6IENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVbXTtcbiAgYmFyczogU2hhcGVEZWZpbml0aW9uPEJhclN0eWxlcz5bXTtcbiAgZW5hYmxlSG92ZXI/OiBib29sZWFuO1xuICB5QXhpc0xhYmVscz86IHN0cmluZ1tdO1xuICB5TGFiZWxQb3NpdGlvbj86IG51bWJlcjtcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM6IGJvb2xlYW47XG4gIGxhYmVsU3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIEJhckdyb3VwKHtcbiAgZGF0YSxcbiAga2V5cyxcbiAgaGVpZ2h0LFxuICB4S2V5LFxuICB4U2NhbGVEYXRhVHlwZSxcbiAgeFNjYWxlLFxuICBpbm5lclhTY2FsZSxcbiAgeVNjYWxlLFxuICBvbkNsaWNrLFxuICBjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlcyxcbiAgYmFycyxcbiAgZW5hYmxlSG92ZXIsXG4gIHlBeGlzTGFiZWxzLFxuICB5TGFiZWxQb3NpdGlvbixcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHMsXG4gIGxhYmVsU3R5bGUsXG59OiBCYXJHcm91cFByb3BzKSB7XG4gIGNvbnN0IGdldEdyb3VwUG9zaXRpb24gPSAoZDogRGF0dW1PYmplY3QpID0+IHtcbiAgICBjb25zdCB4VmFsdWUgPSBkW3hLZXkgYXMga2V5b2YgdHlwZW9mIGRdO1xuXG4gICAgaWYgKHhTY2FsZURhdGFUeXBlID09PSAnc3RyaW5nJykgcmV0dXJuIFN0cmluZyh4VmFsdWUpO1xuXG4gICAgaWYgKHhTY2FsZURhdGFUeXBlID09PSAnZGF0ZV90aW1lJykge1xuICAgICAgcmV0dXJuIG5ldyBEYXRlKFN0cmluZyh4VmFsdWUpKTtcbiAgICB9XG5cbiAgICBpZiAoeFNjYWxlRGF0YVR5cGUgPT09ICdudW1iZXInKSB7XG4gICAgICByZXR1cm4gTnVtYmVyKHhWYWx1ZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFN0cmluZyh4VmFsdWUpO1xuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPFZpc3hCYXJHcm91cDxEYXR1bU9iamVjdD5cbiAgICAgIGRhdGE9e2RhdGEgYXMgRGF0dW1PYmplY3RbXX1cbiAgICAgIGtleXM9e2tleXN9XG4gICAgICBoZWlnaHQ9e2hlaWdodH1cbiAgICAgIHgwPXtnZXRHcm91cFBvc2l0aW9ufVxuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgeDBTY2FsZT17eFNjYWxlfVxuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgeDFTY2FsZT17aW5uZXJYU2NhbGV9XG4gICAgICB5U2NhbGU9e3lTY2FsZX1cbiAgICAgIGNvbG9yPXsoKSA9PiAnJ31cbiAgICA+XG4gICAgICB7KGJhckdyb3VwcykgPT4ge1xuICAgICAgICByZXR1cm4gYmFyR3JvdXBzLm1hcCgoYmFyR3JvdXApID0+IChcbiAgICAgICAgICA8R3JvdXAga2V5PXtgYmFyLWdyb3VwLSR7YmFyR3JvdXAuaW5kZXh9LSR7YmFyR3JvdXAueDB9YH0gbGVmdD17YmFyR3JvdXAueDB9PlxuICAgICAgICAgICAge2Jhckdyb3VwLmJhcnMubWFwKChiYXIpID0+IChcbiAgICAgICAgICAgICAgPEJhclxuICAgICAgICAgICAgICAgIGtleT17YGJhci0ke2Jhci5pbmRleH0tJHtiYXIueH1gfVxuICAgICAgICAgICAgICAgIGJhcj17YmFyfVxuICAgICAgICAgICAgICAgIGJhckdyb3VwPXtiYXJHcm91cH1cbiAgICAgICAgICAgICAgICBiYXJzPXtiYXJzfVxuICAgICAgICAgICAgICAgIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzPXtjb25kaXRpb25hbEZvcm1hdHRpbmdSdWxlc31cbiAgICAgICAgICAgICAgICBlbmFibGVIb3Zlcj17ZW5hYmxlSG92ZXJ9XG4gICAgICAgICAgICAgICAgbGFiZWxTdHlsZT17bGFiZWxTdHlsZX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgICAgICAgICAgIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzPXtzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVsc31cbiAgICAgICAgICAgICAgICB5QXhpc0xhYmVscz17eUF4aXNMYWJlbHN9XG4gICAgICAgICAgICAgICAgeUxhYmVsUG9zaXRpb249e3lMYWJlbFBvc2l0aW9ufVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKSl9XG4gICAgICAgICAgPC9Hcm91cD5cbiAgICAgICAgKSk7XG4gICAgICB9fVxuICAgIDwvVmlzeEJhckdyb3VwPlxuICApO1xufVxuXG50eXBlIEJhclByb3BzID0ge1xuICBiYXI6IGFueTtcbiAgYmFyR3JvdXA6IGFueTtcbiAgYmFyczogU2hhcGVEZWZpbml0aW9uPEJhclN0eWxlcz5bXTtcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXM6IENvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVbXTtcbiAgZW5hYmxlSG92ZXI/OiBib29sZWFuO1xuICBvbkNsaWNrOiAoZTogUmVhY3QuTW91c2VFdmVudDxTVkdSZWN0RWxlbWVudCwgTW91c2VFdmVudD4sIGJhckdyb3VwOiBhbnksIGJhcjogYW55KSA9PiB2b2lkO1xuICBzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVsczogYm9vbGVhbjtcbiAgbGFiZWxTdHlsZT86IFJlYWN0LkNTU1Byb3BlcnRpZXM7XG4gIHlBeGlzTGFiZWxzPzogc3RyaW5nW107XG4gIHlMYWJlbFBvc2l0aW9uPzogbnVtYmVyO1xufTtcblxuY29uc3QgQmFyID0gKHtcbiAgYmFyLFxuICBiYXJHcm91cCxcbiAgYmFycyxcbiAgY29uZGl0aW9uYWxGb3JtYXR0aW5nUnVsZXMsXG4gIGVuYWJsZUhvdmVyLFxuICBsYWJlbFN0eWxlLFxuICBvbkNsaWNrLFxuICBzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVscyxcbiAgeUF4aXNMYWJlbHMsXG4gIHlMYWJlbFBvc2l0aW9uLFxufTogQmFyUHJvcHMpID0+IHtcbiAgY29uc3Qgc2hvd0JhciA9IGJhci52YWx1ZSAhPT0gbnVsbCAmJiBiYXIuaGVpZ2h0ID4gMCAmJiBiYXIud2lkdGggPiAwO1xuXG4gIHJldHVybiAoXG4gICAgPEZyYWdtZW50PlxuICAgICAge3Nob3dCYXIgJiYgKFxuICAgICAgICA8QmFyUmVjdFxuICAgICAgICAgIGJhclJlY3RLZXk9e2BiYXItZ3JvdXAtYmFyLSR7YmFyR3JvdXAuaW5kZXh9LSR7YmFyLmluZGV4fS0ke2Jhci52YWx1ZX0tJHtTdHJpbmcoYmFyLmtleSl9YH1cbiAgICAgICAgICB4PXtiYXIueH1cbiAgICAgICAgICB5PXtiYXIueX1cbiAgICAgICAgICB3aWR0aD17YmFyLndpZHRofVxuICAgICAgICAgIGhlaWdodD17YmFyLmhlaWdodH1cbiAgICAgICAgICBmaWxsPXtnZXRCYXJGaWxsKGJhcnMsIGNvbmRpdGlvbmFsRm9ybWF0dGluZ1J1bGVzLCBTdHJpbmcoYmFyLmtleSksIGJhci52YWx1ZSl9XG4gICAgICAgICAgb25DbGljaz17KGUpID0+IG9uQ2xpY2soZSwgYmFyR3JvdXAsIGJhcil9XG4gICAgICAgICAgZW5hYmxlSG92ZXI9e2VuYWJsZUhvdmVyfVxuICAgICAgICAvPlxuICAgICAgKX1cblxuICAgICAgPEJhckxhYmVsXG4gICAgICAgIGJhcj17YmFyfVxuICAgICAgICBiYXJHcm91cD17YmFyR3JvdXB9XG4gICAgICAgIHlMYWJlbFBvc2l0aW9uPXt5TGFiZWxQb3NpdGlvbn1cbiAgICAgICAgeUF4aXNMYWJlbHM9e3lBeGlzTGFiZWxzfVxuICAgICAgICBzaG93RGV0YWlsZWRTdWJHcm91cGluZ0xhYmVscz17c2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHN9XG4gICAgICAgIGxhYmVsU3R5bGU9e2xhYmVsU3R5bGV9XG4gICAgICAvPlxuICAgIDwvRnJhZ21lbnQ+XG4gICk7XG59O1xuXG50eXBlIEJhclJlY3RQcm9wcyA9IHtcbiAgb25DbGljazogKGU6IFJlYWN0Lk1vdXNlRXZlbnQ8U1ZHUmVjdEVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB2b2lkO1xuICBmaWxsPzogc3RyaW5nO1xuICB4OiBudW1iZXI7XG4gIHk6IG51bWJlcjtcbiAgd2lkdGg6IG51bWJlcjtcbiAgaGVpZ2h0OiBudW1iZXI7XG4gIGJhclJlY3RLZXk6IHN0cmluZztcbiAgZW5hYmxlSG92ZXI/OiBib29sZWFuO1xufTtcblxuY29uc3QgQmFyUmVjdCA9ICh7IG9uQ2xpY2ssIGZpbGwsIHgsIHksIHdpZHRoLCBoZWlnaHQsIGJhclJlY3RLZXksIGVuYWJsZUhvdmVyIH06IEJhclJlY3RQcm9wcykgPT4ge1xuICBjb25zdCBbZmlsbENvbG9yLCBzZXRGaWxsQ29sb3JdID0gdXNlU3RhdGUoZmlsbCk7XG5cbiAgY29uc3QgY2xhc3NlcyA9IGVuYWJsZUhvdmVyID8gY3NzKHsgY3Vyc29yOiAncG9pbnRlcicgfSkgOiAnJztcblxuICBjb25zdCBoYW5kbGVPbk1vdXNlRW50ZXIgPSAoKSA9PiB7XG4gICAgaWYgKGVuYWJsZUhvdmVyKSB7XG4gICAgICBzZXRGaWxsQ29sb3IobGlnaHRlbkNvbG9yKGZpbGwsIDAuOCkpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVPbk1vdXNlTGVhdmUgPSAoKSA9PiB7XG4gICAgaWYgKGVuYWJsZUhvdmVyKSB7XG4gICAgICBzZXRGaWxsQ29sb3IoZmlsbCk7XG4gICAgfVxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPHJlY3RcbiAgICAgIGtleT17YmFyUmVjdEtleX1cbiAgICAgIHg9e3h9XG4gICAgICB5PXt5fVxuICAgICAgd2lkdGg9e3dpZHRofVxuICAgICAgaGVpZ2h0PXtoZWlnaHR9XG4gICAgICBmaWxsPXtmaWxsQ29sb3J9XG4gICAgICByeD17QkFSX1JBRElVU31cbiAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICBvbk1vdXNlRW50ZXI9e2hhbmRsZU9uTW91c2VFbnRlcn1cbiAgICAgIG9uTW91c2VMZWF2ZT17aGFuZGxlT25Nb3VzZUxlYXZlfVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzfVxuICAgIC8+XG4gICk7XG59O1xuXG50eXBlIEJhckxhYmVsUHJvcHMgPSB7XG4gIGJhcjogYW55O1xuICBiYXJHcm91cDogYW55O1xuICB5TGFiZWxQb3NpdGlvbj86IG51bWJlcjtcbiAgeUF4aXNMYWJlbHM/OiBzdHJpbmdbXTtcbiAgc2hvd0RldGFpbGVkU3ViR3JvdXBpbmdMYWJlbHM6IGJvb2xlYW47XG4gIGxhYmVsU3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzO1xufTtcblxuY29uc3QgQmFyTGFiZWwgPSAoe1xuICBiYXIsXG4gIGJhckdyb3VwLFxuICB5TGFiZWxQb3NpdGlvbixcbiAgeUF4aXNMYWJlbHMsXG4gIHNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzLFxuICBsYWJlbFN0eWxlLFxufTogQmFyTGFiZWxQcm9wcykgPT4ge1xuICBpZiAoIXNob3dEZXRhaWxlZFN1Ykdyb3VwaW5nTGFiZWxzIHx8ICF5TGFiZWxQb3NpdGlvbiB8fCAheUF4aXNMYWJlbHMpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGxhYmVsID0geUF4aXNMYWJlbHNbYmFyLmluZGV4XTtcbiAgY29uc3QgY29sdW1uTGFiZWwgPSBsYWJlbC5zcGxpdCgn4oCiJylbMF07XG5cbiAgbGV0IGZvcm1hdHRlZENvbHVtbkxhYmVsOiBzdHJpbmc7XG4gIGlmIChjb2x1bW5MYWJlbC5sZW5ndGggPj0gMTMpIHtcbiAgICBmb3JtYXR0ZWRDb2x1bW5MYWJlbCA9IGNvbHVtbkxhYmVsLnNsaWNlKDAsIDEwKSArICcuLi4nO1xuICB9IGVsc2Uge1xuICAgIGZvcm1hdHRlZENvbHVtbkxhYmVsID0gY29sdW1uTGFiZWwuc2xpY2UoMCwgMTMpO1xuICB9XG5cbiAgY29uc3QgbGFiZWxYR2FwID0gNDtcbiAgY29uc3QgbGFiZWxYUG9zaXRpb24gPSBiYXIueCArIGJhci53aWR0aCAvIDIgKyBsYWJlbFhHYXA7XG5cbiAgY29uc3QgbGFiZWxZR2FwID0gMTU7XG4gIGNvbnN0IGxhYmVsWVBvc2l0aW9uID0geUxhYmVsUG9zaXRpb24gKyBsYWJlbFlHYXA7XG5cbiAgY29uc3QgbGFiZWxLZXkgPSBgbGFiZWwtJHtiYXJHcm91cC5pbmRleH0tJHtiYXIuaW5kZXh9LSR7bGFiZWx9YDtcblxuICByZXR1cm4gKFxuICAgIDx0ZXh0XG4gICAgICBrZXk9e2xhYmVsS2V5fVxuICAgICAgeD17bGFiZWxYUG9zaXRpb259XG4gICAgICB5PXtsYWJlbFlQb3NpdGlvbn1cbiAgICAgIHN0eWxlPXtsYWJlbFN0eWxlfVxuICAgICAgdHJhbnNmb3JtPXtgcm90YXRlKC03MCwgJHtsYWJlbFhQb3NpdGlvbn0sICR7bGFiZWxZUG9zaXRpb259KWB9XG4gICAgICB0ZXh0QW5jaG9yPVwiZW5kXCJcbiAgICA+XG4gICAgICB7Zm9ybWF0dGVkQ29sdW1uTGFiZWx9XG4gICAgPC90ZXh0PlxuICApO1xufTtcbiJdfQ== */",
44734
44617
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$9
44735
44618
  }) : '';
44736
44619
  var handleOnMouseEnter = function handleOnMouseEnter() {
@@ -44754,7 +44637,7 @@ var BarRect = function BarRect(_ref3) {
44754
44637
  onMouseEnter: handleOnMouseEnter,
44755
44638
  onMouseLeave: handleOnMouseLeave,
44756
44639
  className: classes
44757
- }, key);
44640
+ }, barRectKey);
44758
44641
  };
44759
44642
  var BarLabel = function BarLabel(_ref4) {
44760
44643
  var bar = _ref4.bar,
@@ -44787,6 +44670,124 @@ var BarLabel = function BarLabel(_ref4) {
44787
44670
  }, labelKey);
44788
44671
  };
44789
44672
 
44673
+ var BarStacked = function BarStacked(_ref) {
44674
+ var xScaleDataType = _ref.xScaleDataType,
44675
+ data = _ref.data,
44676
+ xScaleKey = _ref.xScaleKey,
44677
+ yScale = _ref.yScale,
44678
+ keys = _ref.keys,
44679
+ bars = _ref.bars,
44680
+ conditionalFormattingRules = _ref.conditionalFormattingRules,
44681
+ xScale = _ref.xScale,
44682
+ height = _ref.height,
44683
+ width = _ref.width;
44684
+ var handleGetXValue = function handleGetXValue(d) {
44685
+ var xValue = d[xScaleKey];
44686
+ if (xScaleDataType === 'string') return String(xValue);
44687
+ if (xScaleDataType === 'date_time') {
44688
+ return new Date(xValue);
44689
+ }
44690
+ if (xScaleDataType === 'number') {
44691
+ return Number(xValue);
44692
+ }
44693
+ return String(xValue);
44694
+ };
44695
+ return jsxRuntime.jsx(shape.BarStack, {
44696
+ x: handleGetXValue,
44697
+ xScale: xScale,
44698
+ yScale: yScale,
44699
+ data: data,
44700
+ keys: keys,
44701
+ color: function color() {
44702
+ return '';
44703
+ },
44704
+ height: height,
44705
+ width: width,
44706
+ offset: "none",
44707
+ children: function children(barStacks) {
44708
+ return barStacks.map(function (barStack) {
44709
+ return barStack.bars.map(function (bar) {
44710
+ return jsxRuntime.jsx(Bar$1, {
44711
+ bar: bar,
44712
+ barStack: barStack,
44713
+ bars: bars,
44714
+ conditionalFormattingRules: conditionalFormattingRules
44715
+ }, bar.key.toString() + "-" + bar.index + "-" + bar.x);
44716
+ });
44717
+ });
44718
+ }
44719
+ });
44720
+ };
44721
+ var Bar$1 = function Bar(_ref2) {
44722
+ var bar = _ref2.bar,
44723
+ barStack = _ref2.barStack,
44724
+ bars = _ref2.bars,
44725
+ conditionalFormattingRules = _ref2.conditionalFormattingRules;
44726
+ var BAR_PADDING = 1.5;
44727
+ if (bar.height < 3) return null;
44728
+ return jsxRuntime.jsx("rect", {
44729
+ x: bar.x,
44730
+ y: bar.y,
44731
+ width: bar.width,
44732
+ height: bar.height - BAR_PADDING,
44733
+ fill: getBarFill(bars, conditionalFormattingRules, bar.key, bar.bar.data),
44734
+ rx: BAR_RADIUS
44735
+ }, "bar-stack-" + barStack.index + "-" + bar.index);
44736
+ };
44737
+
44738
+ var useBottomAxisBaseLineShift = function useBottomAxisBaseLineShift(_ref) {
44739
+ var showDetailedSubGroupingLabels = _ref.showDetailedSubGroupingLabels,
44740
+ hasBottomTitle = _ref.hasBottomTitle,
44741
+ hasLeftTitle = _ref.hasLeftTitle;
44742
+ if (!showDetailedSubGroupingLabels) {
44743
+ return {
44744
+ bottomAxisBaselineShift: 0,
44745
+ bottomOffset: 0,
44746
+ leftOffset: 0
44747
+ };
44748
+ }
44749
+ return {
44750
+ bottomAxisBaselineShift: hasBottomTitle ? -65 : -60,
44751
+ bottomOffset: hasBottomTitle ? -15 : 10,
44752
+ leftOffset: hasLeftTitle ? -10 : 0
44753
+ };
44754
+ };
44755
+
44756
+ var PADDING = {
44757
+ paddingOuter: 0.05,
44758
+ paddingInner: 0.3
44759
+ };
44760
+
44761
+ function useBarXScale(xScaleDataType, innerWidth, xScaleKey, data) {
44762
+ return React.useMemo(function () {
44763
+ if (xScaleDataType === 'string') {
44764
+ return scale.scaleBand(_extends({
44765
+ range: [0, innerWidth],
44766
+ domain: xScaleKey ? [].concat(data.map(function (d) {
44767
+ return d[xScaleKey] && d[xScaleKey].value !== null ? String(d[xScaleKey].value) : '';
44768
+ })) : []
44769
+ }, PADDING));
44770
+ }
44771
+ if (xScaleDataType === 'date_time' && xScaleKey) {
44772
+ return scale.scaleBand(_extends({
44773
+ range: [0, innerWidth],
44774
+ domain: data.map(function (d) {
44775
+ return new Date(d[xScaleKey].value);
44776
+ })
44777
+ }, PADDING));
44778
+ }
44779
+ if (xScaleDataType === 'number' && xScaleKey) {
44780
+ return scale.scaleBand(_extends({
44781
+ range: [0, innerWidth],
44782
+ domain: data.map(function (d) {
44783
+ return d[xScaleKey] && d[xScaleKey].value !== null ? Number(d[xScaleKey].value) : 0;
44784
+ })
44785
+ }, PADDING));
44786
+ }
44787
+ return null;
44788
+ }, [innerWidth, data]);
44789
+ }
44790
+
44790
44791
  var BarChart$5 = function BarChart(_ref) {
44791
44792
  var _theme$axis;
44792
44793
  var chart = _ref.chart,
@@ -44808,7 +44809,7 @@ var BarChart$5 = function BarChart(_ref) {
44808
44809
  tooltipData = _useTooltip.tooltipData,
44809
44810
  hideTooltip = _useTooltip.hideTooltip,
44810
44811
  showTooltip = _useTooltip.showTooltip;
44811
- var showDetailedSubGroupingLabels = numberOfDimensions === 2 && width > 450;
44812
+ var showDetailedSubGroupingLabels = !options.stacked && numberOfDimensions === 2 && width > 450;
44812
44813
  var hasBottomTitle = chart.x.title != null;
44813
44814
  var hasLeftTitle = chart.y.title != null;
44814
44815
  var _useBottomAxisBaseLin = useBottomAxisBaseLineShift({
@@ -44821,7 +44822,7 @@ var BarChart$5 = function BarChart(_ref) {
44821
44822
  leftOffset = _useBottomAxisBaseLin.leftOffset;
44822
44823
  var margin = buildMargin(chart.y.ticks, options.axis.showYAxisLabels, hasLeftTitle, hasBottomTitle, showDetailedSubGroupingLabels);
44823
44824
  var innerWidth = width - margin.left - margin.right;
44824
- var innerHeight = height - margin.top - margin.bottom - (options.showLegend ? 50 : 0) - (showDetailedSubGroupingLabels ? 50 : 0);
44825
+ var innerHeight = height - margin.top - margin.bottom - (options.showLegend ? 50 : 0) - (showDetailedSubGroupingLabels ? 50 : 0) + (options.axis.showXAxisLabels ? 0 : 25);
44825
44826
  var xKey = chart.x.key;
44826
44827
  var xScaleKey = chart.x.scale.key;
44827
44828
  var xScaleDataType = chart.x.scale.dataType;