@carbon/charts 0.29.7 → 0.29.8

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.
@@ -10,4 +10,5 @@ export declare class Axis extends Component {
10
10
  render(animate?: boolean): void;
11
11
  getInvisibleAxisRef(): any;
12
12
  getTitleRef(): any;
13
+ getNumberOfFittingTicks(size: any, tickSize: any, spaceRatio: any): any;
13
14
  }
@@ -35,6 +35,9 @@ var Axis = /** @class */ (function (_super) {
35
35
  var axisPosition = this.configs.position;
36
36
  var options = this.model.getOptions();
37
37
  var axisOptions = Tools.getProperty(options, "axes", axisPosition);
38
+ var numberOfTicksProvided = Tools.getProperty(axisOptions, "ticks", "number");
39
+ var isNumberOfTicksProvided = numberOfTicksProvided !== null;
40
+ var isVerticalAxis = axisPosition === AxisPositions.LEFT || axisPosition === AxisPositions.RIGHT;
38
41
  var svg = this.getContainerSVG();
39
42
  var _a = DOMUtils.getSVGElementSize(this.parent, { useAttrs: true }), width = _a.width, height = _a.height;
40
43
  var startPosition, endPosition;
@@ -70,12 +73,40 @@ var Axis = /** @class */ (function (_super) {
70
73
  axisFunction = axisTop;
71
74
  break;
72
75
  }
76
+ // Add axis into the parent
77
+ var container = DOMUtils.appendOrSelect(svg, "g.axis." + axisPosition);
78
+ var axisRefExists = !container.select("g.ticks").empty();
79
+ var axisRef = DOMUtils.appendOrSelect(container, "g.ticks");
80
+ if (!axisRefExists) {
81
+ axisRef.attr("role", Roles.GRAPHICS_OBJECT + " " + Roles.GROUP);
82
+ }
83
+ // We draw the invisible axis because of the async nature of d3 transitions
84
+ // To be able to tell the final width & height of the axis when initiaing the transition
85
+ // The invisible axis is updated instantly and without a transition
86
+ var invisibleAxisRef = DOMUtils.appendOrSelect(container, "g.ticks.invisible")
87
+ .style("opacity", "0")
88
+ .attr("aria-hidden", true);
89
+ // Append to DOM a fake tick to get the right computed font height
90
+ var fakeTick = DOMUtils.appendOrSelect(invisibleAxisRef, "g.tick");
91
+ var fakeTickText = DOMUtils.appendOrSelect(fakeTick, "text").text("0");
92
+ var tickHeight = DOMUtils.getSVGElementSize(fakeTickText.node(), { useBBox: true }).height;
93
+ fakeTick.remove();
73
94
  // Initialize axis object
74
95
  var axis = axisFunction(scale)
75
96
  .tickSizeOuter(0)
76
97
  .tickFormat(Tools.getProperty(axisOptions, "ticks", "formatter"));
77
98
  if (scale.ticks) {
78
- var numberOfTicks = Tools.getProperty(axisOptions, "ticks", "number") || Configuration.axis.ticks.number;
99
+ var numberOfTicks = void 0;
100
+ if (isNumberOfTicksProvided) {
101
+ numberOfTicks = numberOfTicksProvided;
102
+ }
103
+ else {
104
+ numberOfTicks = Configuration.axis.ticks.number;
105
+ if (isVerticalAxis) {
106
+ // Set how many ticks based on height
107
+ numberOfTicks = this.getNumberOfFittingTicks(height, tickHeight, Configuration.tickSpaceRatioVertical);
108
+ }
109
+ }
79
110
  axis.ticks(numberOfTicks);
80
111
  if (this.scaleType === ScaleTypes.TIME) {
81
112
  var tickValues = scale.ticks(numberOfTicks).concat(scale.domain())
@@ -90,19 +121,6 @@ var Axis = /** @class */ (function (_super) {
90
121
  axis.tickValues(tickValues);
91
122
  }
92
123
  }
93
- // Add axis into the parent
94
- var container = DOMUtils.appendOrSelect(svg, "g.axis." + axisPosition);
95
- var axisRefExists = !container.select("g.ticks").empty();
96
- var axisRef = DOMUtils.appendOrSelect(container, "g.ticks");
97
- if (!axisRefExists) {
98
- axisRef.attr("role", Roles.GRAPHICS_OBJECT + " " + Roles.GROUP);
99
- }
100
- // We draw the invisible axis because of the async nature of d3 transitions
101
- // To be able to tell the final width & height of the axis when initiaing the transition
102
- // The invisible axis is updated instantly and without a transition
103
- var invisibleAxisRef = DOMUtils.appendOrSelect(container, "g.ticks.invisible")
104
- .style("opacity", "0")
105
- .attr("aria-hidden", true);
106
124
  // Position and transition the axis
107
125
  switch (axisPosition) {
108
126
  case AxisPositions.LEFT:
@@ -174,6 +192,11 @@ var Axis = /** @class */ (function (_super) {
174
192
  rotateTicks = estimatedTickSize < minTickSize;
175
193
  }
176
194
  if (rotateTicks) {
195
+ if (!isNumberOfTicksProvided) {
196
+ axis.ticks(this.getNumberOfFittingTicks(width, tickHeight, Configuration.tickSpaceRatioHorizontal));
197
+ invisibleAxisRef.call(axis);
198
+ axisRef.call(axis);
199
+ }
177
200
  container.selectAll("g.ticks g.tick text")
178
201
  .attr("transform", "rotate(45)")
179
202
  .style("text-anchor", axisPosition === AxisPositions.TOP ? "end" : "start");
@@ -195,6 +218,10 @@ var Axis = /** @class */ (function (_super) {
195
218
  return this.getContainerSVG()
196
219
  .select("g.axis." + axisPosition + " text.axis-title");
197
220
  };
221
+ Axis.prototype.getNumberOfFittingTicks = function (size, tickSize, spaceRatio) {
222
+ var numberOfTicksFit = Math.floor(size / (tickSize * spaceRatio));
223
+ return Tools.clamp(numberOfTicksFit, 2, Configuration.axis.ticks.number);
224
+ };
198
225
  return Axis;
199
226
  }(Component));
200
227
  export { Axis };
@@ -1 +1 @@
1
- {"version":3,"file":"axis.js","sourceRoot":"","sources":["axis.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,mBAAmB;AACnB,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,aAAa,MAAM,qBAAqB,CAAC;AAErD,aAAa;AACb,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEnE;IAA0B,wBAAS;IAQlC,cAAY,KAAiB,EAAE,QAAa,EAAE,OAAa;QAA3D,YACC,kBAAM,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,SAO/B;QAfD,UAAI,GAAG,MAAM,CAAC;QAUb,IAAI,OAAO,EAAE;YACZ,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;SACvB;QAED,KAAI,CAAC,OAAO,GAAG,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC;;IACrC,CAAC;IAED,qBAAM,GAAN,UAAO,OAAc;QAAd,wBAAA,EAAA,cAAc;QACZ,IAAA,oCAAsB,CAAkB;QAChD,IAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;QACxC,IAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;QAErE,IAAM,GAAG,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,IAAA,gEAA+E,EAA7E,gBAAK,EAAE,kBAAsE,CAAC;QAEtF,IAAI,aAAa,EAAE,WAAW,CAAC;QAC/B,IAAI,YAAY,KAAK,aAAa,CAAC,MAAM,IAAI,YAAY,KAAK,aAAa,CAAC,GAAG,EAAE;YAChF,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9E,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;SAC1F;aAAM;YACN,aAAa,GAAG,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YAC7C,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;SAC/B;QAED,2CAA2C;QAC3C,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAE7E,IAAI,IAAI,CAAC,SAAS,KAAK,UAAU,CAAC,MAAM,EAAE;YACzC,KAAK,CAAC,UAAU,CAAC,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC;SAC/C;aAAM;YACN,KAAK,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC;SAC1C;QAED,8CAA8C;QAC9C,IAAI,YAAY,CAAC;QACjB,QAAQ,YAAY,EAAE;YACrB,KAAK,aAAa,CAAC,IAAI;gBACtB,YAAY,GAAG,QAAQ,CAAC;gBACxB,MAAM;YACP,KAAK,aAAa,CAAC,MAAM;gBACxB,YAAY,GAAG,UAAU,CAAC;gBAC1B,MAAM;YACP,KAAK,aAAa,CAAC,KAAK;gBACvB,YAAY,GAAG,SAAS,CAAC;gBACzB,MAAM;YACP,KAAK,aAAa,CAAC,GAAG;gBACrB,YAAY,GAAG,OAAO,CAAC;gBACvB,MAAM;SACP;QAED,yBAAyB;QACzB,IAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC;aAC9B,aAAa,CAAC,CAAC,CAAC;aAChB,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;QAEnE,IAAI,KAAK,CAAC,KAAK,EAAE;YAChB,IAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YAC3G,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAE1B,IAAI,IAAI,CAAC,SAAS,KAAK,UAAU,CAAC,IAAI,EAAE;gBACvC,IAAI,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;qBAChE,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,CAAC,IAAI,EAAL,CAAK,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC5B,UAAU,GAAG,KAAK,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;gBAErD,6BAA6B;gBAC7B,0CAA0C;gBAC1C,IAAI,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,iBAAiB,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;oBACxF,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC5C,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;iBACxB;gBAED,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;aAC5B;SACD;QAED,2BAA2B;QAC3B,IAAM,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,GAAG,EAAE,YAAU,YAAc,CAAC,CAAC;QACzE,IAAM,aAAa,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,CAAC;QAC3D,IAAI,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAC5D,IAAI,CAAC,aAAa,EAAE;YACnB,OAAO,CAAC,IAAI,CAAC,MAAM,EAAK,KAAK,CAAC,eAAe,SAAI,KAAK,CAAC,KAAO,CAAC,CAAC;SAChE;QAED,2EAA2E;QAC3E,wFAAwF;QACxF,mEAAmE;QACnE,IAAM,gBAAgB,GAAG,QAAQ,CAAC,cAAc,CAAC,SAAS,EAAE,mBAAmB,CAAC;aAC9E,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC;aACrB,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAE5B,mCAAmC;QACnC,QAAQ,YAAY,EAAE;YACrB,KAAK,aAAa,CAAC,IAAI;gBACtB,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,eAAa,IAAI,CAAC,OAAO,CAAC,IAAI,SAAM,CAAC,CAAC;gBAChE,MAAM;YACP,KAAK,aAAa,CAAC,MAAM;gBACxB,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,mBAAgB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,OAAG,CAAC,CAAC;gBAC3E,MAAM;YACP,KAAK,aAAa,CAAC,KAAK;gBACvB,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAa,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,UAAM,CAAC,CAAC;gBACzE,MAAM;YACP,KAAK,aAAa,CAAC,GAAG;gBACrB,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,kBAAgB,IAAI,CAAC,OAAO,CAAC,GAAG,MAAG,CAAC,CAAC;gBAC/D,MAAM;SACP;QAED,0BAA0B;QAC1B,IAAI,WAAW,CAAC,KAAK,EAAE;YACtB,IAAM,YAAY,GAAG,QAAQ,CAAC,cAAc,CAAC,SAAS,EAAE,iBAAiB,CAAC;iBACxE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAE1B,QAAQ,YAAY,EAAE;gBACrB,KAAK,aAAa,CAAC,IAAI;oBACtB,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC;yBAC3C,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;yBACZ,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;yBAClC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;yBACjB,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;oBACjC,MAAM;gBACP,KAAK,aAAa,CAAC,MAAM;oBACxB,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAa,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,WAAK,MAAM,MAAG,CAAC;yBACrG,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;oBACjC,MAAM;gBACP,KAAK,aAAa,CAAC,KAAK;oBACvB,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC;yBAC1C,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC;yBACjB,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;yBAC/B,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;yBACjB,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;oBACjC,MAAM;gBACP,KAAK,aAAa,CAAC,GAAG;oBACb,IAAA,gFAAmB,CAAiE;oBAC5F,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAa,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,WAAK,WAAW,GAAG,CAAC,MAAG,CAAC;yBAC9G,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;oBACjC,MAAM;aACP;SACD;QAED,qCAAqC;QACrC,IAAI,CAAC,OAAO,IAAI,CAAC,aAAa,EAAE;YAC/B,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC7B;aAAM;YACN,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;iBAClF,IAAI,CAAC,IAAI,CAAC,CAAC;SACb;QAED,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE5B,IAAI,YAAY,KAAK,aAAa,CAAC,MAAM,IAAI,YAAY,KAAK,aAAa,CAAC,GAAG,EAAE;YAChF,IAAI,WAAW,GAAG,KAAK,CAAC;YAExB,8CAA8C;YAC9C,mDAAmD;YACnD,IAAI,KAAK,CAAC,IAAI,EAAE;gBACf,IAAM,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,CAAC;gBAEpE,uDAAuD;gBACvD,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,UAAA,QAAQ,IAAI,OAAA,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,EAA7E,CAA6E,CAAC,CAAC;aACxH;iBAAM;gBACN,uCAAuC;gBACvC,sDAAsD;gBACtD,IAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,qBAAqB,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC;gBACnI,IAAM,iBAAiB,GAAG,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;gBAE3D,WAAW,GAAG,iBAAiB,GAAG,WAAW,CAAC;aAC9C;YAED,IAAI,WAAW,EAAE;gBAChB,SAAS,CAAC,SAAS,CAAC,qBAAqB,CAAC;qBACxC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC;qBAC/B,KAAK,CAAC,aAAa,EAAE,YAAY,KAAK,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;aAC7E;iBAAM;gBACN,SAAS,CAAC,SAAS,CAAC,qBAAqB,CAAC;qBACxC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC;qBACvB,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;aAC7B;SACD;IACF,CAAC;IAED,kCAAmB,GAAnB;QACS,IAAA,oCAAsB,CAAkB;QAEhD,OAAO,IAAI,CAAC,eAAe,EAAE;aAC3B,MAAM,CAAC,YAAU,YAAY,uBAAoB,CAAC,CAAC;IACtD,CAAC;IAED,0BAAW,GAAX;QACS,IAAA,oCAAsB,CAAkB;QAEhD,OAAO,IAAI,CAAC,eAAe,EAAE;aAC3B,MAAM,CAAC,YAAU,YAAY,qBAAkB,CAAC,CAAC;IACpD,CAAC;IACF,WAAC;AAAD,CAAC,AA3MD,CAA0B,SAAS,GA2MlC","sourcesContent":["// Internal Imports\nimport { Component } from \"../component\";\nimport { AxisPositions, ScaleTypes, Roles } from \"../../interfaces\";\nimport { Tools } from \"../../tools\";\nimport { ChartModel } from \"../../model\";\nimport { DOMUtils } from \"../../services\";\nimport * as Configuration from \"../../configuration\";\n\n// D3 Imports\nimport { axisBottom, axisLeft, axisRight, axisTop } from \"d3-axis\";\n\nexport class Axis extends Component {\n\ttype = \"axes\";\n\n\tmargins: any;\n\n\tscale: any;\n\tscaleType: ScaleTypes;\n\n\tconstructor(model: ChartModel, services: any, configs?: any) {\n\t\tsuper(model, services, configs);\n\n\t\tif (configs) {\n\t\t\tthis.configs = configs;\n\t\t}\n\n\t\tthis.margins = this.configs.margins;\n\t}\n\n\trender(animate = true) {\n\t\tconst { position: axisPosition } = this.configs;\n\t\tconst options = this.model.getOptions();\n\t\tconst axisOptions = Tools.getProperty(options, \"axes\", axisPosition);\n\n\t\tconst svg = this.getContainerSVG();\n\t\tconst { width, height } = DOMUtils.getSVGElementSize(this.parent, { useAttrs: true });\n\n\t\tlet startPosition, endPosition;\n\t\tif (axisPosition === AxisPositions.BOTTOM || axisPosition === AxisPositions.TOP) {\n\t\t\tstartPosition = this.configs.axes[AxisPositions.LEFT] ? this.margins.left : 0;\n\t\t\tendPosition = this.configs.axes[AxisPositions.RIGHT] ? width - this.margins.right : width;\n\t\t} else {\n\t\t\tstartPosition = height - this.margins.bottom;\n\t\t\tendPosition = this.margins.top;\n\t\t}\n\n\t\t// Grab the scale off of the Scales service\n\t\tconst scale = this.services.cartesianScales.getScaleByPosition(axisPosition);\n\n\t\tif (this.scaleType === ScaleTypes.LABELS) {\n\t\t\tscale.rangeRound([startPosition, endPosition]);\n\t\t} else {\n\t\t\tscale.range([startPosition, endPosition]);\n\t\t}\n\n\t\t// Identify the corresponding d3 axis function\n\t\tlet axisFunction;\n\t\tswitch (axisPosition) {\n\t\t\tcase AxisPositions.LEFT:\n\t\t\t\taxisFunction = axisLeft;\n\t\t\t\tbreak;\n\t\t\tcase AxisPositions.BOTTOM:\n\t\t\t\taxisFunction = axisBottom;\n\t\t\t\tbreak;\n\t\t\tcase AxisPositions.RIGHT:\n\t\t\t\taxisFunction = axisRight;\n\t\t\t\tbreak;\n\t\t\tcase AxisPositions.TOP:\n\t\t\t\taxisFunction = axisTop;\n\t\t\t\tbreak;\n\t\t}\n\n\t\t// Initialize axis object\n\t\tconst axis = axisFunction(scale)\n\t\t\t.tickSizeOuter(0)\n\t\t\t.tickFormat(Tools.getProperty(axisOptions, \"ticks\", \"formatter\"));\n\n\t\tif (scale.ticks) {\n\t\t\tconst numberOfTicks = Tools.getProperty(axisOptions, \"ticks\", \"number\") || Configuration.axis.ticks.number;\n\t\t\taxis.ticks(numberOfTicks);\n\n\t\t\tif (this.scaleType === ScaleTypes.TIME) {\n\t\t\t\tlet tickValues = scale.ticks(numberOfTicks).concat(scale.domain())\n\t\t\t\t\t.map(date => +date).sort();\n\t\t\t\ttickValues = Tools.removeArrayDuplicates(tickValues);\n\n\t\t\t\t// Remove labels on the edges\n\t\t\t\t// If there are more than 2 labels to show\n\t\t\t\tif (Tools.getProperty(options, \"timeScale\", \"addSpaceOnEdges\") && tickValues.length > 2) {\n\t\t\t\t\ttickValues.splice(tickValues.length - 1, 1);\n\t\t\t\t\ttickValues.splice(0, 1);\n\t\t\t\t}\n\n\t\t\t\taxis.tickValues(tickValues);\n\t\t\t}\n\t\t}\n\n\t\t// Add axis into the parent\n\t\tconst container = DOMUtils.appendOrSelect(svg, `g.axis.${axisPosition}`);\n\t\tconst axisRefExists = !container.select(`g.ticks`).empty();\n\t\tlet axisRef = DOMUtils.appendOrSelect(container, `g.ticks`);\n\t\tif (!axisRefExists) {\n\t\t\taxisRef.attr(\"role\", `${Roles.GRAPHICS_OBJECT} ${Roles.GROUP}`);\n\t\t}\n\n\t\t// We draw the invisible axis because of the async nature of d3 transitions\n\t\t// To be able to tell the final width & height of the axis when initiaing the transition\n\t\t// The invisible axis is updated instantly and without a transition\n\t\tconst invisibleAxisRef = DOMUtils.appendOrSelect(container, `g.ticks.invisible`)\n\t\t\t.style(\"opacity\", \"0\")\n\t\t\t.attr(\"aria-hidden\", true);\n\n\t\t// Position and transition the axis\n\t\tswitch (axisPosition) {\n\t\t\tcase AxisPositions.LEFT:\n\t\t\t\taxisRef.attr(\"transform\", `translate(${this.margins.left}, 0)`);\n\t\t\t\tbreak;\n\t\t\tcase AxisPositions.BOTTOM:\n\t\t\t\taxisRef.attr(\"transform\", `translate(0, ${height - this.margins.bottom})`);\n\t\t\t\tbreak;\n\t\t\tcase AxisPositions.RIGHT:\n\t\t\t\taxisRef.attr(\"transform\", `translate(${width - this.margins.right}, 0)`);\n\t\t\t\tbreak;\n\t\t\tcase AxisPositions.TOP:\n\t\t\t\taxisRef.attr(\"transform\", `translate(0, ${this.margins.top})`);\n\t\t\t\tbreak;\n\t\t}\n\n\t\t// Position the axis title\n\t\tif (axisOptions.title) {\n\t\t\tconst axisTitleRef = DOMUtils.appendOrSelect(container, `text.axis-title`)\n\t\t\t\t.text(axisOptions.title);\n\n\t\t\tswitch (axisPosition) {\n\t\t\t\tcase AxisPositions.LEFT:\n\t\t\t\t\taxisTitleRef.attr(\"transform\", \"rotate(-90)\")\n\t\t\t\t\t\t.attr(\"y\", 0)\n\t\t\t\t\t\t.attr(\"x\", -(scale.range()[0] / 2))\n\t\t\t\t\t\t.attr(\"dy\", \"1em\")\n\t\t\t\t\t\t.style(\"text-anchor\", \"middle\");\n\t\t\t\t\tbreak;\n\t\t\t\tcase AxisPositions.BOTTOM:\n\t\t\t\t\taxisTitleRef.attr(\"transform\", `translate(${this.margins.left / 2 + scale.range()[1] / 2}, ${height})`)\n\t\t\t\t\t\t.style(\"text-anchor\", \"middle\");\n\t\t\t\t\tbreak;\n\t\t\t\tcase AxisPositions.RIGHT:\n\t\t\t\t\taxisTitleRef.attr(\"transform\", \"rotate(90)\")\n\t\t\t\t\t\t.attr(\"y\", -width)\n\t\t\t\t\t\t.attr(\"x\", scale.range()[0] / 2)\n\t\t\t\t\t\t.attr(\"dy\", \"1em\")\n\t\t\t\t\t\t.style(\"text-anchor\", \"middle\");\n\t\t\t\t\tbreak;\n\t\t\t\tcase AxisPositions.TOP:\n\t\t\t\t\tconst { height: titleHeight } = DOMUtils.getSVGElementSize(axisTitleRef, { useBBox: true });\n\t\t\t\t\taxisTitleRef.attr(\"transform\", `translate(${this.margins.left / 2 + scale.range()[1] / 2}, ${titleHeight / 2})`)\n\t\t\t\t\t\t.style(\"text-anchor\", \"middle\");\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// Apply new axis to the axis element\n\t\tif (!animate || !axisRefExists) {\n\t\t\taxisRef = axisRef.call(axis);\n\t\t} else {\n\t\t\taxisRef = axisRef.transition(this.services.transitions.getTransition(\"axis-update\"))\n\t\t\t\t.call(axis);\n\t\t}\n\n\t\tinvisibleAxisRef.call(axis);\n\n\t\tif (axisPosition === AxisPositions.BOTTOM || axisPosition === AxisPositions.TOP) {\n\t\t\tlet rotateTicks = false;\n\n\t\t\t// If we're dealing with a discrete scale type\n\t\t\t// We're able to grab the spacing between the ticks\n\t\t\tif (scale.step) {\n\t\t\t\tconst textNodes = invisibleAxisRef.selectAll(\"g.tick text\").nodes();\n\n\t\t\t\t// If any ticks are any larger than the scale step size\n\t\t\t\trotateTicks = textNodes.some(textNode => DOMUtils.getSVGElementSize(textNode, { useBBox: true }).width >= scale.step());\n\t\t\t} else {\n\t\t\t\t// When dealing with a continuous scale\n\t\t\t\t// We need to calculate an estimated size of the ticks\n\t\t\t\tconst minTickSize = Tools.getProperty(axisOptions, \"ticks\", \"rotateIfSmallerThan\") || Configuration.axis.ticks.rotateIfSmallerThan;\n\t\t\t\tconst estimatedTickSize = width / scale.ticks().length / 2;\n\n\t\t\t\trotateTicks = estimatedTickSize < minTickSize;\n\t\t\t}\n\n\t\t\tif (rotateTicks) {\n\t\t\t\tcontainer.selectAll(\"g.ticks g.tick text\")\n\t\t\t\t\t.attr(\"transform\", `rotate(45)`)\n\t\t\t\t\t.style(\"text-anchor\", axisPosition === AxisPositions.TOP ? \"end\" : \"start\");\n\t\t\t} else {\n\t\t\t\tcontainer.selectAll(\"g.ticks g.tick text\")\n\t\t\t\t\t.attr(\"transform\", null)\n\t\t\t\t\t.style(\"text-anchor\", null);\n\t\t\t}\n\t\t}\n\t}\n\n\tgetInvisibleAxisRef() {\n\t\tconst { position: axisPosition } = this.configs;\n\n\t\treturn this.getContainerSVG()\n\t\t\t.select(`g.axis.${axisPosition} g.ticks.invisible`);\n\t}\n\n\tgetTitleRef() {\n\t\tconst { position: axisPosition } = this.configs;\n\n\t\treturn this.getContainerSVG()\n\t\t\t.select(`g.axis.${axisPosition} text.axis-title`);\n\t}\n}\n"]}
1
+ {"version":3,"file":"axis.js","sourceRoot":"","sources":["axis.ts"],"names":[],"mappings":"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","sourcesContent":["// Internal Imports\nimport { Component } from \"../component\";\nimport { AxisPositions, ScaleTypes, Roles } from \"../../interfaces\";\nimport { Tools } from \"../../tools\";\nimport { ChartModel } from \"../../model\";\nimport { DOMUtils } from \"../../services\";\nimport * as Configuration from \"../../configuration\";\n\n// D3 Imports\nimport { axisBottom, axisLeft, axisRight, axisTop } from \"d3-axis\";\n\nexport class Axis extends Component {\n\ttype = \"axes\";\n\n\tmargins: any;\n\n\tscale: any;\n\tscaleType: ScaleTypes;\n\n\tconstructor(model: ChartModel, services: any, configs?: any) {\n\t\tsuper(model, services, configs);\n\n\t\tif (configs) {\n\t\t\tthis.configs = configs;\n\t\t}\n\n\t\tthis.margins = this.configs.margins;\n\t}\n\n\trender(animate = true) {\n\t\tconst { position: axisPosition } = this.configs;\n\t\tconst options = this.model.getOptions();\n\t\tconst axisOptions = Tools.getProperty(options, \"axes\", axisPosition);\n\t\tconst numberOfTicksProvided = Tools.getProperty(axisOptions, \"ticks\", \"number\");\n\t\tconst isNumberOfTicksProvided = numberOfTicksProvided !== null;\n\t\tconst isVerticalAxis = axisPosition === AxisPositions.LEFT || axisPosition === AxisPositions.RIGHT;\n\n\t\tconst svg = this.getContainerSVG();\n\t\tconst { width, height } = DOMUtils.getSVGElementSize(this.parent, { useAttrs: true });\n\n\t\tlet startPosition, endPosition;\n\t\tif (axisPosition === AxisPositions.BOTTOM || axisPosition === AxisPositions.TOP) {\n\t\t\tstartPosition = this.configs.axes[AxisPositions.LEFT] ? this.margins.left : 0;\n\t\t\tendPosition = this.configs.axes[AxisPositions.RIGHT] ? width - this.margins.right : width;\n\t\t} else {\n\t\t\tstartPosition = height - this.margins.bottom;\n\t\t\tendPosition = this.margins.top;\n\t\t}\n\n\t\t// Grab the scale off of the Scales service\n\t\tconst scale = this.services.cartesianScales.getScaleByPosition(axisPosition);\n\n\t\tif (this.scaleType === ScaleTypes.LABELS) {\n\t\t\tscale.rangeRound([startPosition, endPosition]);\n\t\t} else {\n\t\t\tscale.range([startPosition, endPosition]);\n\t\t}\n\n\t\t// Identify the corresponding d3 axis function\n\t\tlet axisFunction;\n\t\tswitch (axisPosition) {\n\t\t\tcase AxisPositions.LEFT:\n\t\t\t\taxisFunction = axisLeft;\n\t\t\t\tbreak;\n\t\t\tcase AxisPositions.BOTTOM:\n\t\t\t\taxisFunction = axisBottom;\n\t\t\t\tbreak;\n\t\t\tcase AxisPositions.RIGHT:\n\t\t\t\taxisFunction = axisRight;\n\t\t\t\tbreak;\n\t\t\tcase AxisPositions.TOP:\n\t\t\t\taxisFunction = axisTop;\n\t\t\t\tbreak;\n\t\t}\n\n\t\t// Add axis into the parent\n\t\tconst container = DOMUtils.appendOrSelect(svg, `g.axis.${axisPosition}`);\n\t\tconst axisRefExists = !container.select(`g.ticks`).empty();\n\t\tlet axisRef = DOMUtils.appendOrSelect(container, `g.ticks`);\n\t\tif (!axisRefExists) {\n\t\t\taxisRef.attr(\"role\", `${Roles.GRAPHICS_OBJECT} ${Roles.GROUP}`);\n\t\t}\n\n\t\t// We draw the invisible axis because of the async nature of d3 transitions\n\t\t// To be able to tell the final width & height of the axis when initiaing the transition\n\t\t// The invisible axis is updated instantly and without a transition\n\t\tconst invisibleAxisRef = DOMUtils.appendOrSelect(container, `g.ticks.invisible`)\n\t\t\t.style(\"opacity\", \"0\")\n\t\t\t.attr(\"aria-hidden\", true);\n\n\t\t// Append to DOM a fake tick to get the right computed font height\n\t\tconst fakeTick = DOMUtils.appendOrSelect(invisibleAxisRef, `g.tick`);\n\t\tconst fakeTickText = DOMUtils.appendOrSelect(fakeTick, `text`).text(\"0\");\n\t\tconst tickHeight = DOMUtils.getSVGElementSize(fakeTickText.node(), { useBBox: true }).height;\n\t\tfakeTick.remove();\n\n\t\t// Initialize axis object\n\t\tconst axis = axisFunction(scale)\n\t\t\t.tickSizeOuter(0)\n\t\t\t.tickFormat(Tools.getProperty(axisOptions, \"ticks\", \"formatter\"));\n\n\t\tif (scale.ticks) {\n\t\t\tlet numberOfTicks;\n\n\t\t\tif (isNumberOfTicksProvided) {\n\t\t\t\tnumberOfTicks = numberOfTicksProvided;\n\t\t\t} else {\n\t\t\t\tnumberOfTicks = Configuration.axis.ticks.number;\n\t\t\t\tif (isVerticalAxis) {\n\t\t\t\t\t// Set how many ticks based on height\n\t\t\t\t\tnumberOfTicks = this.getNumberOfFittingTicks(height, tickHeight, Configuration.tickSpaceRatioVertical);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\taxis.ticks(numberOfTicks);\n\n\t\t\tif (this.scaleType === ScaleTypes.TIME) {\n\t\t\t\tlet tickValues = scale.ticks(numberOfTicks).concat(scale.domain())\n\t\t\t\t\t.map(date => +date).sort();\n\t\t\t\ttickValues = Tools.removeArrayDuplicates(tickValues);\n\n\t\t\t\t// Remove labels on the edges\n\t\t\t\t// If there are more than 2 labels to show\n\t\t\t\tif (Tools.getProperty(options, \"timeScale\", \"addSpaceOnEdges\") && tickValues.length > 2) {\n\t\t\t\t\ttickValues.splice(tickValues.length - 1, 1);\n\t\t\t\t\ttickValues.splice(0, 1);\n\t\t\t\t}\n\n\t\t\t\taxis.tickValues(tickValues);\n\t\t\t}\n\t\t}\n\n\t\t// Position and transition the axis\n\t\tswitch (axisPosition) {\n\t\t\tcase AxisPositions.LEFT:\n\t\t\t\taxisRef.attr(\"transform\", `translate(${this.margins.left}, 0)`);\n\t\t\t\tbreak;\n\t\t\tcase AxisPositions.BOTTOM:\n\t\t\t\taxisRef.attr(\"transform\", `translate(0, ${height - this.margins.bottom})`);\n\t\t\t\tbreak;\n\t\t\tcase AxisPositions.RIGHT:\n\t\t\t\taxisRef.attr(\"transform\", `translate(${width - this.margins.right}, 0)`);\n\t\t\t\tbreak;\n\t\t\tcase AxisPositions.TOP:\n\t\t\t\taxisRef.attr(\"transform\", `translate(0, ${this.margins.top})`);\n\t\t\t\tbreak;\n\t\t}\n\n\t\t// Position the axis title\n\t\tif (axisOptions.title) {\n\t\t\tconst axisTitleRef = DOMUtils.appendOrSelect(container, `text.axis-title`)\n\t\t\t\t.text(axisOptions.title);\n\n\t\t\tswitch (axisPosition) {\n\t\t\t\tcase AxisPositions.LEFT:\n\t\t\t\t\taxisTitleRef.attr(\"transform\", \"rotate(-90)\")\n\t\t\t\t\t\t.attr(\"y\", 0)\n\t\t\t\t\t\t.attr(\"x\", -(scale.range()[0] / 2))\n\t\t\t\t\t\t.attr(\"dy\", \"1em\")\n\t\t\t\t\t\t.style(\"text-anchor\", \"middle\");\n\t\t\t\t\tbreak;\n\t\t\t\tcase AxisPositions.BOTTOM:\n\t\t\t\t\taxisTitleRef.attr(\"transform\", `translate(${this.margins.left / 2 + scale.range()[1] / 2}, ${height})`)\n\t\t\t\t\t\t.style(\"text-anchor\", \"middle\");\n\t\t\t\t\tbreak;\n\t\t\t\tcase AxisPositions.RIGHT:\n\t\t\t\t\taxisTitleRef.attr(\"transform\", \"rotate(90)\")\n\t\t\t\t\t\t.attr(\"y\", -width)\n\t\t\t\t\t\t.attr(\"x\", scale.range()[0] / 2)\n\t\t\t\t\t\t.attr(\"dy\", \"1em\")\n\t\t\t\t\t\t.style(\"text-anchor\", \"middle\");\n\t\t\t\t\tbreak;\n\t\t\t\tcase AxisPositions.TOP:\n\t\t\t\t\tconst { height: titleHeight } = DOMUtils.getSVGElementSize(axisTitleRef, { useBBox: true });\n\t\t\t\t\taxisTitleRef.attr(\"transform\", `translate(${this.margins.left / 2 + scale.range()[1] / 2}, ${titleHeight / 2})`)\n\t\t\t\t\t\t.style(\"text-anchor\", \"middle\");\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// Apply new axis to the axis element\n\t\tif (!animate || !axisRefExists) {\n\t\t\taxisRef = axisRef.call(axis);\n\t\t} else {\n\t\t\taxisRef = axisRef.transition(this.services.transitions.getTransition(\"axis-update\"))\n\t\t\t\t.call(axis);\n\t\t}\n\n\t\tinvisibleAxisRef.call(axis);\n\n\t\tif (axisPosition === AxisPositions.BOTTOM || axisPosition === AxisPositions.TOP) {\n\t\t\tlet rotateTicks = false;\n\n\t\t\t// If we're dealing with a discrete scale type\n\t\t\t// We're able to grab the spacing between the ticks\n\t\t\tif (scale.step) {\n\t\t\t\tconst textNodes = invisibleAxisRef.selectAll(\"g.tick text\").nodes();\n\n\t\t\t\t// If any ticks are any larger than the scale step size\n\t\t\t\trotateTicks = textNodes.some(textNode => DOMUtils.getSVGElementSize(textNode, { useBBox: true }).width >= scale.step());\n\t\t\t} else {\n\t\t\t\t// When dealing with a continuous scale\n\t\t\t\t// We need to calculate an estimated size of the ticks\n\t\t\t\tconst minTickSize = Tools.getProperty(axisOptions, \"ticks\", \"rotateIfSmallerThan\") || Configuration.axis.ticks.rotateIfSmallerThan;\n\t\t\t\tconst estimatedTickSize = width / scale.ticks().length / 2;\n\n\t\t\t\trotateTicks = estimatedTickSize < minTickSize;\n\t\t\t}\n\n\t\t\tif (rotateTicks) {\n\t\t\t\tif (!isNumberOfTicksProvided) {\n\t\t\t\t\taxis.ticks(this.getNumberOfFittingTicks(width, tickHeight, Configuration.tickSpaceRatioHorizontal));\n\n\t\t\t\t\tinvisibleAxisRef.call(axis);\n\t\t\t\t\taxisRef.call(axis);\n\t\t\t\t}\n\n\t\t\t\tcontainer.selectAll(\"g.ticks g.tick text\")\n\t\t\t\t\t.attr(\"transform\", `rotate(45)`)\n\t\t\t\t\t.style(\"text-anchor\", axisPosition === AxisPositions.TOP ? \"end\" : \"start\");\n\t\t\t} else {\n\t\t\t\tcontainer.selectAll(\"g.ticks g.tick text\")\n\t\t\t\t\t.attr(\"transform\", null)\n\t\t\t\t\t.style(\"text-anchor\", null);\n\t\t\t}\n\t\t}\n\t}\n\n\tgetInvisibleAxisRef() {\n\t\tconst { position: axisPosition } = this.configs;\n\n\t\treturn this.getContainerSVG()\n\t\t\t.select(`g.axis.${axisPosition} g.ticks.invisible`);\n\t}\n\n\tgetTitleRef() {\n\t\tconst { position: axisPosition } = this.configs;\n\n\t\treturn this.getContainerSVG()\n\t\t\t.select(`g.axis.${axisPosition} text.axis-title`);\n\t}\n\n\tgetNumberOfFittingTicks(size, tickSize, spaceRatio) {\n\t\tconst numberOfTicksFit = Math.floor(size / (tickSize * spaceRatio));\n\t\treturn Tools.clamp(numberOfTicksFit, 2, Configuration.axis.ticks.number);\n\t}\n}\n"]}
@@ -65,3 +65,5 @@ export declare const spacers: {
65
65
  size: number;
66
66
  };
67
67
  };
68
+ export declare const tickSpaceRatioVertical = 2.5;
69
+ export declare const tickSpaceRatioHorizontal = 3.5;
package/configuration.js CHANGED
@@ -247,4 +247,6 @@ export var spacers = {
247
247
  size: 24
248
248
  }
249
249
  };
250
+ export var tickSpaceRatioVertical = 2.5;
251
+ export var tickSpaceRatioHorizontal = 3.5;
250
252
  //# sourceMappingURL=../src/configuration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configuration.js","sourceRoot":"","sources":["configuration.ts"],"names":[],"mappings":"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","sourcesContent":["import { Tools } from \"./tools\";\nimport {\n\tBaseChartOptions,\n\tAxisChartOptions,\n\tScatterChartOptions,\n\tLineChartOptions,\n\tBarChartOptions,\n\tStackedBarChartOptions,\n\tPieChartOptions,\n\tDonutChartOptions,\n\tBubbleChartOptions,\n\t// Components\n\tGridOptions,\n\tAxesOptions,\n\tTimeScaleOptions,\n\tTooltipOptions,\n\tAxisTooltipOptions,\n\tBarTooltipOptions,\n\tLegendOptions,\n\tLegendPositions,\n\tStackedBarOptions\n} from \"./interfaces\";\n\n/*\n *****************************\n * User configurable options *\n *****************************\n */\n\n/**\n * Legend options\n */\nexport const legend: LegendOptions = {\n\tposition: LegendPositions.BOTTOM,\n\tclickable: true,\n\tenabled: true,\n\titems: {\n\t\tstatus: {\n\t\t\tACTIVE: 1,\n\t\t\tDISABLED: 0\n\t\t},\n\t\thorizontalSpace: 12,\n\t\tverticalSpace: 24,\n\t\ttextYOffset: 8\n\t},\n\tcheckbox: {\n\t\tradius: 6.5,\n\t\tspaceAfter: 4\n\t}\n};\n\n/**\n * Grid options\n */\nexport const grid: GridOptions = {\n\tx: {\n\t\tnumberOfTicks: 5\n\t},\n\ty: {\n\t\tnumberOfTicks: 5\n\t}\n};\n\n/**\n * Tooltip options\n */\nexport const baseTooltip: TooltipOptions = {\n\tdatapoint: {\n\t\thorizontalOffset: 10,\n\t\tenabled: true,\n\t},\n\ttitle: {\n\t\tverticalOffset: .75,\n\t\twidth: .4\n\t}\n};\n\nexport const axisChartTooltip: AxisTooltipOptions = Tools.merge({}, baseTooltip, {\n\tgridline: {\n\t\tenabled: true,\n\t\tthreshold: 0.25\n\t}\n} as AxisTooltipOptions);\n\nexport const barChartTooltip: BarTooltipOptions = Tools.merge({}, axisChartTooltip , {\n\tdatapoint: {\n\t\tverticalOffset: 4\n\t},\n\tgridline: {\n\t\tenabled: false\n\t}\n} as BarTooltipOptions);\n\n// We setup no axes by default, the TwoDimensionalAxes component\n// Will setup axes options based on what user provides\nconst axes: AxesOptions = { };\n\nconst timeScale: TimeScaleOptions = {\n\taddSpaceOnEdges: 1,\n};\n\n/**\n * Base chart options common to any chart\n */\nconst chart: BaseChartOptions = {\n\twidth: \"100%\",\n\theight: \"100%\",\n\tresizable: true,\n\ttooltip: baseTooltip,\n\tlegend,\n\tstyle: {\n\t\tprefix: \"cc\"\n\t}\n};\n\n/**\n * Options common to any chart with an axis\n */\nconst axisChart: AxisChartOptions = Tools.merge({}, chart, {\n\taxes,\n\ttimeScale,\n\tgrid,\n\ttooltip: axisChartTooltip\n} as AxisChartOptions);\n\n/**\n * options specific to simple bar charts\n */\nconst baseBarChart: BarChartOptions = Tools.merge({}, axisChart, {\n\tbars: {\n\t\tmaxWidth: 16\n\t},\n\ttimeScale: Tools.merge(timeScale, {\n\t\taddSpaceOnEdges: 1\n\t} as TimeScaleOptions),\n\ttooltip: barChartTooltip,\n} as BarChartOptions);\n\n/**\n * options specific to simple bar charts\n */\nconst simpleBarChart: BarChartOptions = Tools.merge({}, baseBarChart, {\n\n} as BarChartOptions);\n\n/**\n * options specific to simple bar charts\n */\nconst groupedBarChart: BarChartOptions = Tools.merge({}, baseBarChart, {\n\n} as BarChartOptions);\n\n/**\n * options specific to stacked bar charts\n */\nconst stackedBarChart: StackedBarChartOptions = Tools.merge({}, baseBarChart, {\n\tbars: Tools.merge({}, baseBarChart.bars, {\n\t\tdividerSize: 1.5\n\t} as StackedBarOptions)\n} as BarChartOptions);\n\n/**\n * options specific to line charts\n */\nconst lineChart: LineChartOptions = Tools.merge({}, axisChart, {\n\tpoints: {\n\t\t// default point radius to 3\n\t\tradius: 3,\n\t\tfilled: false\n\t}\n} as LineChartOptions);\n\n/**\n * options specific to scatter charts\n */\nconst scatterChart: ScatterChartOptions = Tools.merge({}, axisChart, {\n\tpoints: {\n\t\t// default point radius to 4\n\t\tradius: 4,\n\t\tfillOpacity: 0.3,\n\t\tfilled: true\n\t}\n} as ScatterChartOptions);\n\n/**\n * options specific to bubble charts\n */\nconst bubbleChart: BubbleChartOptions = Tools.merge({}, axisChart, {\n\tbubble: {\n\t\tradiusRange: (chartSize, data) => {\n\t\t\tconst smallerChartDimension = Math.min(chartSize.width, chartSize.height);\n\t\t\treturn [\n\t\t\t\tsmallerChartDimension * 3 / 400,\n\t\t\t\tsmallerChartDimension * 25 / 400\n\t\t\t];\n\t\t},\n\t\tfillOpacity: 0.2\n\t}\n} as BubbleChartOptions);\n\n/**\n * options specific to pie charts\n */\nconst pieChart: PieChartOptions = Tools.merge({}, chart, {\n\tpie: {\n\t\tradiusOffset: -15,\n\t\tinnerRadius: 2,\n\t\tpadAngle: 0.007,\n\t\thoverArc: {\n\t\t\touterRadiusOffset: 3\n\t\t},\n\t\txOffset: 30,\n\t\tyOffset: 20,\n\t\tyOffsetCallout: 10,\n\t\tcallout: {\n\t\t\tminSliceDegree: 5,\n\t\t\toffsetX: 15,\n\t\t\toffsetY: 12,\n\t\t\thorizontalLineLength: 8,\n\t\t\ttextMargin: 2\n\t\t},\n\t\tlabels: {\n\t\t\tformatter: null\n\t\t}\n\t}\n} as PieChartOptions);\n\n/**\n * options specific to donut charts\n */\nconst donutChart: DonutChartOptions = Tools.merge({}, pieChart, {\n\tdonut: {\n\t\tcenter: {\n\t\t\tnumberFontSize: radius => Math.min((radius / 100) * 24, 24) + \"px\",\n\t\t\ttitleFontSize: radius => Math.min((radius / 100) * 15, 15) + \"px\",\n\t\t\ttitleYPosition: radius => Math.min((radius / 80) * 20, 20),\n\t\t\tnumberFormatter: number => Math.floor(number).toLocaleString()\n\t\t}\n\t}\n} as DonutChartOptions);\n\nexport const options = {\n\tchart,\n\taxisChart,\n\tsimpleBarChart,\n\tgroupedBarChart,\n\tstackedBarChart,\n\tbubbleChart,\n\tlineChart,\n\tscatterChart,\n\tpieChart,\n\tdonutChart\n};\n\n/**\n * Options for line behaviour\n */\nexport const lines = {\n\topacity: {\n\t\tunselected: 0.3,\n\t\tselected: 1\n\t}\n};\n\n/**\n * Base transition configuration\n */\nexport const transitions = {\n\tdefault: {\n\t\tduration: 300\n\t},\n\tpie_slice_mouseover: {\n\t\tduration: 100\n\t},\n\tpie_chart_titles: {\n\t\tduration: 375\n\t},\n\tgraph_element_mouseover_fill_update: {\n\t\tduration: 100\n\t},\n\tgraph_element_mouseout_fill_update: {\n\t\tduration: 100\n\t}\n};\n\nexport const axis = {\n\tticks: {\n\t\tnumber: 7,\n\t\trotateIfSmallerThan: 30\n\t}\n};\n\nexport const spacers = {\n\tdefault: {\n\t\tsize: 24\n\t}\n};\n"]}
1
+ {"version":3,"file":"configuration.js","sourceRoot":"","sources":["configuration.ts"],"names":[],"mappings":"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","sourcesContent":["import { Tools } from \"./tools\";\nimport {\n\tBaseChartOptions,\n\tAxisChartOptions,\n\tScatterChartOptions,\n\tLineChartOptions,\n\tBarChartOptions,\n\tStackedBarChartOptions,\n\tPieChartOptions,\n\tDonutChartOptions,\n\tBubbleChartOptions,\n\t// Components\n\tGridOptions,\n\tAxesOptions,\n\tTimeScaleOptions,\n\tTooltipOptions,\n\tAxisTooltipOptions,\n\tBarTooltipOptions,\n\tLegendOptions,\n\tLegendPositions,\n\tStackedBarOptions\n} from \"./interfaces\";\n\n/*\n *****************************\n * User configurable options *\n *****************************\n */\n\n/**\n * Legend options\n */\nexport const legend: LegendOptions = {\n\tposition: LegendPositions.BOTTOM,\n\tclickable: true,\n\tenabled: true,\n\titems: {\n\t\tstatus: {\n\t\t\tACTIVE: 1,\n\t\t\tDISABLED: 0\n\t\t},\n\t\thorizontalSpace: 12,\n\t\tverticalSpace: 24,\n\t\ttextYOffset: 8\n\t},\n\tcheckbox: {\n\t\tradius: 6.5,\n\t\tspaceAfter: 4\n\t}\n};\n\n/**\n * Grid options\n */\nexport const grid: GridOptions = {\n\tx: {\n\t\tnumberOfTicks: 5\n\t},\n\ty: {\n\t\tnumberOfTicks: 5\n\t}\n};\n\n/**\n * Tooltip options\n */\nexport const baseTooltip: TooltipOptions = {\n\tdatapoint: {\n\t\thorizontalOffset: 10,\n\t\tenabled: true,\n\t},\n\ttitle: {\n\t\tverticalOffset: .75,\n\t\twidth: .4\n\t}\n};\n\nexport const axisChartTooltip: AxisTooltipOptions = Tools.merge({}, baseTooltip, {\n\tgridline: {\n\t\tenabled: true,\n\t\tthreshold: 0.25\n\t}\n} as AxisTooltipOptions);\n\nexport const barChartTooltip: BarTooltipOptions = Tools.merge({}, axisChartTooltip , {\n\tdatapoint: {\n\t\tverticalOffset: 4\n\t},\n\tgridline: {\n\t\tenabled: false\n\t}\n} as BarTooltipOptions);\n\n// We setup no axes by default, the TwoDimensionalAxes component\n// Will setup axes options based on what user provides\nconst axes: AxesOptions = { };\n\nconst timeScale: TimeScaleOptions = {\n\taddSpaceOnEdges: 1,\n};\n\n/**\n * Base chart options common to any chart\n */\nconst chart: BaseChartOptions = {\n\twidth: \"100%\",\n\theight: \"100%\",\n\tresizable: true,\n\ttooltip: baseTooltip,\n\tlegend,\n\tstyle: {\n\t\tprefix: \"cc\"\n\t}\n};\n\n/**\n * Options common to any chart with an axis\n */\nconst axisChart: AxisChartOptions = Tools.merge({}, chart, {\n\taxes,\n\ttimeScale,\n\tgrid,\n\ttooltip: axisChartTooltip\n} as AxisChartOptions);\n\n/**\n * options specific to simple bar charts\n */\nconst baseBarChart: BarChartOptions = Tools.merge({}, axisChart, {\n\tbars: {\n\t\tmaxWidth: 16\n\t},\n\ttimeScale: Tools.merge(timeScale, {\n\t\taddSpaceOnEdges: 1\n\t} as TimeScaleOptions),\n\ttooltip: barChartTooltip,\n} as BarChartOptions);\n\n/**\n * options specific to simple bar charts\n */\nconst simpleBarChart: BarChartOptions = Tools.merge({}, baseBarChart, {\n\n} as BarChartOptions);\n\n/**\n * options specific to simple bar charts\n */\nconst groupedBarChart: BarChartOptions = Tools.merge({}, baseBarChart, {\n\n} as BarChartOptions);\n\n/**\n * options specific to stacked bar charts\n */\nconst stackedBarChart: StackedBarChartOptions = Tools.merge({}, baseBarChart, {\n\tbars: Tools.merge({}, baseBarChart.bars, {\n\t\tdividerSize: 1.5\n\t} as StackedBarOptions)\n} as BarChartOptions);\n\n/**\n * options specific to line charts\n */\nconst lineChart: LineChartOptions = Tools.merge({}, axisChart, {\n\tpoints: {\n\t\t// default point radius to 3\n\t\tradius: 3,\n\t\tfilled: false\n\t}\n} as LineChartOptions);\n\n/**\n * options specific to scatter charts\n */\nconst scatterChart: ScatterChartOptions = Tools.merge({}, axisChart, {\n\tpoints: {\n\t\t// default point radius to 4\n\t\tradius: 4,\n\t\tfillOpacity: 0.3,\n\t\tfilled: true\n\t}\n} as ScatterChartOptions);\n\n/**\n * options specific to bubble charts\n */\nconst bubbleChart: BubbleChartOptions = Tools.merge({}, axisChart, {\n\tbubble: {\n\t\tradiusRange: (chartSize, data) => {\n\t\t\tconst smallerChartDimension = Math.min(chartSize.width, chartSize.height);\n\t\t\treturn [\n\t\t\t\tsmallerChartDimension * 3 / 400,\n\t\t\t\tsmallerChartDimension * 25 / 400\n\t\t\t];\n\t\t},\n\t\tfillOpacity: 0.2\n\t}\n} as BubbleChartOptions);\n\n/**\n * options specific to pie charts\n */\nconst pieChart: PieChartOptions = Tools.merge({}, chart, {\n\tpie: {\n\t\tradiusOffset: -15,\n\t\tinnerRadius: 2,\n\t\tpadAngle: 0.007,\n\t\thoverArc: {\n\t\t\touterRadiusOffset: 3\n\t\t},\n\t\txOffset: 30,\n\t\tyOffset: 20,\n\t\tyOffsetCallout: 10,\n\t\tcallout: {\n\t\t\tminSliceDegree: 5,\n\t\t\toffsetX: 15,\n\t\t\toffsetY: 12,\n\t\t\thorizontalLineLength: 8,\n\t\t\ttextMargin: 2\n\t\t},\n\t\tlabels: {\n\t\t\tformatter: null\n\t\t}\n\t}\n} as PieChartOptions);\n\n/**\n * options specific to donut charts\n */\nconst donutChart: DonutChartOptions = Tools.merge({}, pieChart, {\n\tdonut: {\n\t\tcenter: {\n\t\t\tnumberFontSize: radius => Math.min((radius / 100) * 24, 24) + \"px\",\n\t\t\ttitleFontSize: radius => Math.min((radius / 100) * 15, 15) + \"px\",\n\t\t\ttitleYPosition: radius => Math.min((radius / 80) * 20, 20),\n\t\t\tnumberFormatter: number => Math.floor(number).toLocaleString()\n\t\t}\n\t}\n} as DonutChartOptions);\n\nexport const options = {\n\tchart,\n\taxisChart,\n\tsimpleBarChart,\n\tgroupedBarChart,\n\tstackedBarChart,\n\tbubbleChart,\n\tlineChart,\n\tscatterChart,\n\tpieChart,\n\tdonutChart\n};\n\n/**\n * Options for line behaviour\n */\nexport const lines = {\n\topacity: {\n\t\tunselected: 0.3,\n\t\tselected: 1\n\t}\n};\n\n/**\n * Base transition configuration\n */\nexport const transitions = {\n\tdefault: {\n\t\tduration: 300\n\t},\n\tpie_slice_mouseover: {\n\t\tduration: 100\n\t},\n\tpie_chart_titles: {\n\t\tduration: 375\n\t},\n\tgraph_element_mouseover_fill_update: {\n\t\tduration: 100\n\t},\n\tgraph_element_mouseout_fill_update: {\n\t\tduration: 100\n\t}\n};\n\nexport const axis = {\n\tticks: {\n\t\tnumber: 7,\n\t\trotateIfSmallerThan: 30\n\t}\n};\n\nexport const spacers = {\n\tdefault: {\n\t\tsize: 24\n\t}\n};\n\nexport const tickSpaceRatioVertical = 2.5;\nexport const tickSpaceRatioHorizontal = 3.5;\n"]}
@@ -1 +1 @@
1
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t=t||self).ChartsDemoData={})}(this,(function(t){"use strict";var e,r,a,n,o,i,s,c,u,l,p,d,f,v,h,b,m,y=require("d3-time-format/locale/tr-TR.json"),g={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[65e3,-29123,-35213,51213,16932]},{label:"Dataset 2",data:[32432,-21312,-56456,-21312,34234]},{label:"Dataset 3",data:[-12312,23232,34232,-12312,-34234]},{label:"Dataset 4",data:[-32423,21313,64353,24134,32423]}]},w={title:"Grouped bar (discrete)",axes:{left:{primary:!0},bottom:{scaleType:"labels",secondary:!0}}},O=g,j={title:"Grouped horizontal bar (discrete)",axes:{left:{scaleType:"labels",primary:!0},bottom:{secondary:!0}}},_={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[65e3,29123,35213,51213,16932]}]},D={title:"Simple bar (discrete)",axes:{left:{primary:!0},bottom:{scaleType:"labels",secondary:!0}}},S={title:"Simple bar (fixed domain)",axes:{left:{primary:!0,domain:[-1e5,1e5]},bottom:{scaleType:"labels",secondary:!0}}},T=_,A={title:"Simple horizontal bar (discrete)",axes:{left:{primary:!0,scaleType:"labels"},bottom:{secondary:!0}}},C={labels:["Qty","More","Sold","Restocking","Miscellaneous"],datasets:[{label:"Dataset 1",data:[{date:new Date(2019,0,1),value:1e4},{date:new Date(2019,0,2),value:65e3},{date:new Date(2019,0,3),value:1e4},{date:new Date(2019,0,6),value:49213},{date:new Date(2019,0,7),value:51213}]}]},M={title:"Simple bar (time series - Turkish)",axes:{left:{primary:!0},bottom:{scaleType:"time",secondary:!0}},locale:{time:y}},x={title:"Simple horizontal bar (time series)",axes:{left:{scaleType:"time",primary:!0},bottom:{secondary:!0}}},E=C,B={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[65e3,29123,35213,51213,16932]},{label:"Dataset 2",data:[32432,21312,56456,21312,34234]},{label:"Dataset 3",data:[12312,23232,34232,12312,34234]},{label:"Dataset 4",data:[32423,21313,64353,24134,32423]}]},P={title:"Stacked bar (discrete)",axes:{left:{primary:!0,stacked:!0},bottom:{scaleType:"labels",secondary:!0}}},R=B,k={title:"Stacked horizontal bar (discrete)",axes:{left:{scaleType:"labels",primary:!0},bottom:{stacked:!0,secondary:!0}}},I={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[{date:new Date(2019,0,1),value:1e4},{date:new Date(2019,0,5),value:65e3},{date:new Date(2019,0,8),value:1e4},{date:new Date(2019,0,13),value:49213},{date:new Date(2019,0,17),value:51213}]},{label:"Dataset 2",data:[{date:new Date(2019,0,3),value:75e3},{date:new Date(2019,0,6),value:57312},{date:new Date(2019,0,8),value:21432},{date:new Date(2019,0,15),value:70323},{date:new Date(2019,0,19),value:21300}]},{label:"Dataset 3",data:[{date:new Date(2019,0,1),value:5e4},{date:new Date(2019,0,5),value:15e3},{date:new Date(2019,0,8),value:2e4},{date:new Date(2019,0,13),value:39213},{date:new Date(2019,0,17),value:61213}]},{label:"Dataset 4",data:[{date:new Date(2019,0,2),value:10},{date:new Date(2019,0,6),value:37312},{date:new Date(2019,0,8),value:51432},{date:new Date(2019,0,15),value:40323},{date:new Date(2019,0,19),value:31300}]}]},L={title:"Stacked bar (time series)",axes:{left:{primary:!0,stacked:!0},bottom:{scaleType:"time",secondary:!0}}},U={title:"Stacked horizontal bar (time series)",axes:{left:{primary:!0,scaleType:"time"},bottom:{stacked:!0,secondary:!0}}},z=I,F={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[{date:new Date(2019,0,1),value:1e4,radius:6},{date:new Date(2019,0,5),value:45e3,radius:5},{date:new Date(2019,0,8),value:1e4,radius:8},{date:new Date(2019,0,13),value:49213,radius:11},{date:new Date(2019,0,17),value:51213,radius:3}]},{label:"Dataset 2",data:[{date:new Date(2019,0,2),value:12e3,radius:4},{date:new Date(2019,0,6),value:57312,radius:6},{date:new Date(2019,0,8),value:21432,radius:8},{date:new Date(2019,0,15),value:70323,radius:3},{date:new Date(2019,0,19),value:21300,radius:5}]},{label:"Dataset 3",data:[{date:new Date(2019,0,1),value:5e4,radius:5},{date:new Date(2019,0,1),value:15e3,radius:3},{date:new Date(2019,0,2),value:2e4,radius:8},{date:new Date(2019,0,2),value:39213,radius:4},{date:new Date(2019,0,3),value:61213,radius:3},{date:new Date(2019,0,3),value:5e4,radius:5},{date:new Date(2019,0,4),value:15e3,radius:3},{date:new Date(2019,0,4),value:2e4,radius:2},{date:new Date(2019,0,5),value:39213,radius:4},{date:new Date(2019,0,6),value:61213,radius:3}]},{label:"Dataset 4",data:[{date:new Date(2019,0,2),value:5e3,radius:2},{date:new Date(2019,0,6),value:37312,radius:3},{date:new Date(2019,0,8),value:51432,radius:5},{date:new Date(2019,0,15),value:5e3,radius:7},{date:new Date(2019,0,19),value:31300,radius:2},{date:new Date(2019,0,4),value:34242,radius:5},{date:new Date(2019,0,5),value:62324,radius:12},{date:new Date(2019,0,9),value:21321,radius:9},{date:new Date(2019,0,12),value:13421,radius:2},{date:new Date(2019,0,14),value:32523,radius:15}]}]},N={title:"Bubble (time series)",axes:{bottom:{title:"2019 Annual Sales Figures",scaleType:"time",secondary:!0},left:{primary:!0}}},V={labels:["2V2N 9KYPM version 1","L22I P66EP L22I P66EP L22I P66EP","JQAI 2M4L1","J9DZ F37AP","YEL48 Q6XK YEL48","P66EP L22I L22I"],datasets:[{label:"Dataset 1",data:[2e4,65e3,75e3,1200,1e4,25e3]}]},G={title:"Pie",resizable:!0},H=V,$={title:"Donut",resizable:!0,donut:{center:{label:"Browsers"}}},J={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[32100,23500,53100,42300,12300]},{label:"Dataset 2",data:[34200,53200,42300,21400,0]},{label:"Dataset 3 long name",data:[41200,23400,34210,1400,42100]},{label:"Dataset 4 long name",data:[22e3,1200,9e3,24e3,3e3]},{label:"Dataset 5 long name",data:[2412,3e4,1e4,5e3,31e3]},{label:"Dataset 6 long name",data:[0,2e4,4e4,6e4,8e4]}]},Q={title:"Line (discrete)",axes:{bottom:{title:"2018 Annual Sales Figures",scaleType:"labels",secondary:!0},left:{primary:!0}}},W={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[{date:new Date(2019,0,1),value:1e4},{date:new Date(2019,0,5),value:65e3},{date:new Date(2019,0,8),value:1e4},{date:new Date(2019,0,13),value:49213},{date:new Date(2019,0,17),value:51213}]},{label:"Dataset 2",data:[{date:new Date(2019,0,2),value:0},{date:new Date(2019,0,6),value:57312},{date:new Date(2019,0,8),value:21432},{date:new Date(2019,0,15),value:70323},{date:new Date(2019,0,19),value:21300}]},{label:"Dataset 3",data:[{date:new Date(2019,0,1),value:5e4},{date:new Date(2019,0,5),value:15e3},{date:new Date(2019,0,8),value:2e4},{date:new Date(2019,0,13),value:39213},{date:new Date(2019,0,17),value:61213}]},{label:"Dataset 4",data:[{date:new Date(2019,0,2),value:10},{date:new Date(2019,0,6),value:37312},{date:new Date(2019,0,8),value:51432},{date:new Date(2019,0,15),value:40323},{date:new Date(2019,0,19),value:31300}]}]},Y={title:"Line (time series)",axes:{left:{secondary:!0},bottom:{scaleType:"time",primary:!0}},curve:"curveMonotoneX"},K={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[32100,23500,53100,42300,12300]},{label:"Dataset 2",data:[34200,53200,42300,21400,0]},{label:"Dataset 3 long name",data:[41200,23400,34210,1400,42100]},{label:"Dataset 4 long name",data:[22e3,1200,9e3,24e3,3e3]},{label:"Dataset 5 long name",data:[2412,3e4,1e4,5e3,31e3]},{label:"Dataset 6 long name",data:[0,2e4,4e4,6e4,8e4]}]},q={title:"Scatter (discrete)",axes:{bottom:{title:"2018 Annual Sales Figures",scaleType:"labels",secondary:!0},left:{primary:!0}}},Z=W,X={title:"Scatter (time series)",axes:{bottom:{title:"2019 Annual Sales Figures",scaleType:"time",secondary:!0},left:{primary:!0}}};!function(t){t.GRAPHICS_DOCUMENT="graphics-document",t.GRAPHICS_OBJECT="graphics-object",t.GRAPHICS_SYMBOL="graphics-symbol",t.GROUP="group"}(e||(e={})),function(t){t.SLICE_MOUSEOVER="pie-slice-mouseover",t.SLICE_MOUSEMOVE="pie-slice-mousemove",t.SLICE_CLICK="pie-slice-click",t.SLICE_MOUSEOUT="pie-slice-mouseout"}(r||(r={})),function(t){t.BAR_MOUSEOVER="bar-mouseover",t.BAR_MOUSEMOVE="bar-mousemove",t.BAR_CLICK="bar-click",t.BAR_MOUSEOUT="bar-mouseout"}(a||(a={})),function(t){t.SCATTER_MOUSEOVER="scatter-mouseover",t.SCATTER_MOUSEMOVE="scatter-mousemove",t.SCATTER_CLICK="scatter-click",t.SCATTER_MOUSEOUT="scatter-mouseout"}(n||(n={})),function(t){t.POINT_MOUSEOVER="scatter-mouseover",t.POINT_MOUSEMOVE="scatter-mousemove",t.POINT_CLICK="scatter-click",t.POINT_MOUSEOUT="scatter-mouseout"}(o||(o={})),function(t){t.DEFAULT="default",t.G100="g100",t.G90="g90",t.G10="g10"}(i||(i={})),function(t){t.LEFT="left",t.RIGHT="right",t.TOP="top",t.BOTTOM="bottom"}(s||(s={})),function(t){t.VERTICAL="vertical",t.HORIZONTAL="horizontal"}(c||(c={})),function(t){t.PRIMARY="primary",t.SECONDARY="secondary"}(u||(u={})),function(t){t.TIME="time",t.LINEAR="linear",t.LOG="log",t.LABELS="labels"}(l||(l={})),function(t){t.MOUSE="mouse",t.TOP="top",t.BOTTOM="bottom"}(p||(p={})),function(t){t.DATAPOINT="datapoint",t.GRIDLINE="gridline",t.TITLE="title"}(d||(d={})),function(t){t.RIGHT="right",t.LEFT="left",t.TOP="top",t.BOTTOM="bottom"}(f||(f={})),function(t){t.HORIZONTAL="horizontal",t.VERTICAL="vertical"}(v||(v={})),function(t){t.ROW="row",t.COLUMN="column",t.ROW_REVERSE="row-reverse",t.COLUMN_REVERSE="column-reverse"}(h||(h={})),function(t){t.FIXED="fixed",t.PREFERRED="preferred",t.STRETCH="stretch"}(b||(b={})),function(t){t.LEFT="left",t.RIGHT="right"}(m||(m={}));var tt="object"==typeof global&&global&&global.Object===Object&&global,et="object"==typeof self&&self&&self.Object===Object&&self,rt=tt||et||Function("return this")(),at=rt.Symbol,nt=Object.prototype,ot=nt.hasOwnProperty,it=nt.toString,st=at?at.toStringTag:void 0;var ct=Object.prototype.toString;var ut=at?at.toStringTag:void 0;function lt(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":ut&&ut in Object(t)?function(t){var e=ot.call(t,st),r=t[st];try{t[st]=void 0;var a=!0}catch(t){}var n=it.call(t);return a&&(e?t[st]=r:delete t[st]),n}(t):function(t){return ct.call(t)}(t)}function pt(t){return null!=t&&"object"==typeof t}var dt=Array.isArray;function ft(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}var vt=/^\s+|\s+$/g,ht=/^[-+]0x[0-9a-f]+$/i,bt=/^0b[01]+$/i,mt=/^0o[0-7]+$/i,yt=parseInt;function gt(t){if("number"==typeof t)return t;if(function(t){return"symbol"==typeof t||pt(t)&&"[object Symbol]"==lt(t)}(t))return NaN;if(ft(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=ft(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(vt,"");var r=bt.test(t);return r||mt.test(t)?yt(t.slice(2),r?2:8):ht.test(t)?NaN:+t}function wt(t){return t}function Ot(t){if(!ft(t))return!1;var e=lt(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}var jt,_t=rt["__core-js_shared__"],Dt=(jt=/[^.]+$/.exec(_t&&_t.keys&&_t.keys.IE_PROTO||""))?"Symbol(src)_1."+jt:"";var St=Function.prototype.toString;function Tt(t){if(null!=t){try{return St.call(t)}catch(t){}try{return t+""}catch(t){}}return""}var At=/^\[object .+?Constructor\]$/,Ct=Function.prototype,Mt=Object.prototype,xt=Ct.toString,Et=Mt.hasOwnProperty,Bt=RegExp("^"+xt.call(Et).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Pt(t){return!(!ft(t)||(e=t,Dt&&Dt in e))&&(Ot(t)?Bt:At).test(Tt(t));var e}function Rt(t,e){var r=function(t,e){return null==t?void 0:t[e]}(t,e);return Pt(r)?r:void 0}var kt=Rt(rt,"WeakMap"),It=Object.create,Lt=function(){function t(){}return function(e){if(!ft(e))return{};if(It)return It(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}();function Ut(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}function zt(t,e){var r=-1,a=t.length;for(e||(e=Array(a));++r<a;)e[r]=t[r];return e}var Ft=Date.now;var Nt,Vt,Gt,Ht=function(){try{var t=Rt(Object,"defineProperty");return t({},"",{}),t}catch(t){}}(),$t=(Nt=Ht?function(t,e){return Ht(t,"toString",{configurable:!0,enumerable:!1,value:(r=e,function(){return r}),writable:!0});var r}:wt,Vt=0,Gt=0,function(){var t=Ft(),e=16-(t-Gt);if(Gt=t,e>0){if(++Vt>=800)return arguments[0]}else Vt=0;return Nt.apply(void 0,arguments)});function Jt(t){return t!=t}function Qt(t,e){return!!(null==t?0:t.length)&&function(t,e,r){return e==e?function(t,e,r){for(var a=r-1,n=t.length;++a<n;)if(t[a]===e)return a;return-1}(t,e,r):function(t,e,r,a){for(var n=t.length,o=r+(a?1:-1);a?o--:++o<n;)if(e(t[o],o,t))return o;return-1}(t,Jt,r)}(t,e,0)>-1}var Wt=/^(?:0|[1-9]\d*)$/;function Yt(t,e){var r=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==r||"symbol"!=r&&Wt.test(t))&&t>-1&&t%1==0&&t<e}function Kt(t,e,r){"__proto__"==e&&Ht?Ht(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}function qt(t,e){return t===e||t!=t&&e!=e}var Zt=Object.prototype.hasOwnProperty;function Xt(t,e,r){var a=t[e];Zt.call(t,e)&&qt(a,r)&&(void 0!==r||e in t)||Kt(t,e,r)}function te(t,e,r,a){var n=!r;r||(r={});for(var o=-1,i=e.length;++o<i;){var s=e[o],c=a?a(r[s],t[s],s,r,t):void 0;void 0===c&&(c=t[s]),n?Kt(r,s,c):Xt(r,s,c)}return r}var ee=Math.max;function re(t,e){return $t(function(t,e,r){return e=ee(void 0===e?t.length-1:e,0),function(){for(var a=arguments,n=-1,o=ee(a.length-e,0),i=Array(o);++n<o;)i[n]=a[e+n];n=-1;for(var s=Array(e+1);++n<e;)s[n]=a[n];return s[e]=r(i),Ut(t,this,s)}}(t,e,wt),t+"")}function ae(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}function ne(t){return null!=t&&ae(t.length)&&!Ot(t)}var oe=Object.prototype;function ie(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||oe)}function se(t){return pt(t)&&"[object Arguments]"==lt(t)}var ce=Object.prototype,ue=ce.hasOwnProperty,le=ce.propertyIsEnumerable,pe=se(function(){return arguments}())?se:function(t){return pt(t)&&ue.call(t,"callee")&&!le.call(t,"callee")};var de="object"==typeof t&&t&&!t.nodeType&&t,fe=de&&"object"==typeof module&&module&&!module.nodeType&&module,ve=fe&&fe.exports===de?rt.Buffer:void 0,he=(ve?ve.isBuffer:void 0)||function(){return!1},be={};function me(t){return function(e){return t(e)}}be["[object Float32Array]"]=be["[object Float64Array]"]=be["[object Int8Array]"]=be["[object Int16Array]"]=be["[object Int32Array]"]=be["[object Uint8Array]"]=be["[object Uint8ClampedArray]"]=be["[object Uint16Array]"]=be["[object Uint32Array]"]=!0,be["[object Arguments]"]=be["[object Array]"]=be["[object ArrayBuffer]"]=be["[object Boolean]"]=be["[object DataView]"]=be["[object Date]"]=be["[object Error]"]=be["[object Function]"]=be["[object Map]"]=be["[object Number]"]=be["[object Object]"]=be["[object RegExp]"]=be["[object Set]"]=be["[object String]"]=be["[object WeakMap]"]=!1;var ye="object"==typeof t&&t&&!t.nodeType&&t,ge=ye&&"object"==typeof module&&module&&!module.nodeType&&module,we=ge&&ge.exports===ye&&tt.process,Oe=function(){try{var t=ge&&ge.require&&ge.require("util").types;return t||we&&we.binding&&we.binding("util")}catch(t){}}(),je=Oe&&Oe.isTypedArray,_e=je?me(je):function(t){return pt(t)&&ae(t.length)&&!!be[lt(t)]},De=Object.prototype.hasOwnProperty;function Se(t,e){var r=dt(t),a=!r&&pe(t),n=!r&&!a&&he(t),o=!r&&!a&&!n&&_e(t),i=r||a||n||o,s=i?function(t,e){for(var r=-1,a=Array(t);++r<t;)a[r]=e(r);return a}(t.length,String):[],c=s.length;for(var u in t)!e&&!De.call(t,u)||i&&("length"==u||n&&("offset"==u||"parent"==u)||o&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||Yt(u,c))||s.push(u);return s}function Te(t,e){return function(r){return t(e(r))}}var Ae=Te(Object.keys,Object),Ce=Object.prototype.hasOwnProperty;function Me(t){return ne(t)?Se(t):function(t){if(!ie(t))return Ae(t);var e=[];for(var r in Object(t))Ce.call(t,r)&&"constructor"!=r&&e.push(r);return e}(t)}var xe=Object.prototype.hasOwnProperty;function Ee(t){if(!ft(t))return function(t){var e=[];if(null!=t)for(var r in Object(t))e.push(r);return e}(t);var e=ie(t),r=[];for(var a in t)("constructor"!=a||!e&&xe.call(t,a))&&r.push(a);return r}function Be(t){return ne(t)?Se(t,!0):Ee(t)}var Pe=Rt(Object,"create");var Re=Object.prototype.hasOwnProperty;var ke=Object.prototype.hasOwnProperty;function Ie(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var a=t[e];this.set(a[0],a[1])}}function Le(t,e){for(var r=t.length;r--;)if(qt(t[r][0],e))return r;return-1}Ie.prototype.clear=function(){this.__data__=Pe?Pe(null):{},this.size=0},Ie.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},Ie.prototype.get=function(t){var e=this.__data__;if(Pe){var r=e[t];return"__lodash_hash_undefined__"===r?void 0:r}return Re.call(e,t)?e[t]:void 0},Ie.prototype.has=function(t){var e=this.__data__;return Pe?void 0!==e[t]:ke.call(e,t)},Ie.prototype.set=function(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=Pe&&void 0===e?"__lodash_hash_undefined__":e,this};var Ue=Array.prototype.splice;function ze(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var a=t[e];this.set(a[0],a[1])}}ze.prototype.clear=function(){this.__data__=[],this.size=0},ze.prototype.delete=function(t){var e=this.__data__,r=Le(e,t);return!(r<0)&&(r==e.length-1?e.pop():Ue.call(e,r,1),--this.size,!0)},ze.prototype.get=function(t){var e=this.__data__,r=Le(e,t);return r<0?void 0:e[r][1]},ze.prototype.has=function(t){return Le(this.__data__,t)>-1},ze.prototype.set=function(t,e){var r=this.__data__,a=Le(r,t);return a<0?(++this.size,r.push([t,e])):r[a][1]=e,this};var Fe=Rt(rt,"Map");function Ne(t,e){var r,a,n=t.__data__;return("string"==(a=typeof(r=e))||"number"==a||"symbol"==a||"boolean"==a?"__proto__"!==r:null===r)?n["string"==typeof e?"string":"hash"]:n.map}function Ve(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var a=t[e];this.set(a[0],a[1])}}function Ge(t,e){for(var r=-1,a=e.length,n=t.length;++r<a;)t[n+r]=e[r];return t}Ve.prototype.clear=function(){this.size=0,this.__data__={hash:new Ie,map:new(Fe||ze),string:new Ie}},Ve.prototype.delete=function(t){var e=Ne(this,t).delete(t);return this.size-=e?1:0,e},Ve.prototype.get=function(t){return Ne(this,t).get(t)},Ve.prototype.has=function(t){return Ne(this,t).has(t)},Ve.prototype.set=function(t,e){var r=Ne(this,t),a=r.size;return r.set(t,e),this.size+=r.size==a?0:1,this};var He=Te(Object.getPrototypeOf,Object),$e=Function.prototype,Je=Object.prototype,Qe=$e.toString,We=Je.hasOwnProperty,Ye=Qe.call(Object);function Ke(t){var e=this.__data__=new ze(t);this.size=e.size}Ke.prototype.clear=function(){this.__data__=new ze,this.size=0},Ke.prototype.delete=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r},Ke.prototype.get=function(t){return this.__data__.get(t)},Ke.prototype.has=function(t){return this.__data__.has(t)},Ke.prototype.set=function(t,e){var r=this.__data__;if(r instanceof ze){var a=r.__data__;if(!Fe||a.length<199)return a.push([t,e]),this.size=++r.size,this;r=this.__data__=new Ve(a)}return r.set(t,e),this.size=r.size,this};var qe="object"==typeof t&&t&&!t.nodeType&&t,Ze=qe&&"object"==typeof module&&module&&!module.nodeType&&module,Xe=Ze&&Ze.exports===qe?rt.Buffer:void 0,tr=Xe?Xe.allocUnsafe:void 0;function er(t,e){if(e)return t.slice();var r=t.length,a=tr?tr(r):new t.constructor(r);return t.copy(a),a}function rr(){return[]}var ar=Object.prototype.propertyIsEnumerable,nr=Object.getOwnPropertySymbols,or=nr?function(t){return null==t?[]:(t=Object(t),function(t,e){for(var r=-1,a=null==t?0:t.length,n=0,o=[];++r<a;){var i=t[r];e(i,r,t)&&(o[n++]=i)}return o}(nr(t),(function(e){return ar.call(t,e)})))}:rr;var ir=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)Ge(e,or(t)),t=He(t);return e}:rr;function sr(t,e,r){var a=e(t);return dt(t)?a:Ge(a,r(t))}function cr(t){return sr(t,Me,or)}function ur(t){return sr(t,Be,ir)}var lr=Rt(rt,"DataView"),pr=Rt(rt,"Promise"),dr=Rt(rt,"Set"),fr=Tt(lr),vr=Tt(Fe),hr=Tt(pr),br=Tt(dr),mr=Tt(kt),yr=lt;(lr&&"[object DataView]"!=yr(new lr(new ArrayBuffer(1)))||Fe&&"[object Map]"!=yr(new Fe)||pr&&"[object Promise]"!=yr(pr.resolve())||dr&&"[object Set]"!=yr(new dr)||kt&&"[object WeakMap]"!=yr(new kt))&&(yr=function(t){var e=lt(t),r="[object Object]"==e?t.constructor:void 0,a=r?Tt(r):"";if(a)switch(a){case fr:return"[object DataView]";case vr:return"[object Map]";case hr:return"[object Promise]";case br:return"[object Set]";case mr:return"[object WeakMap]"}return e});var gr=yr,wr=Object.prototype.hasOwnProperty;var Or=rt.Uint8Array;function jr(t){var e=new t.constructor(t.byteLength);return new Or(e).set(new Or(t)),e}var _r=/\w*$/;var Dr=at?at.prototype:void 0,Sr=Dr?Dr.valueOf:void 0;function Tr(t,e){var r=e?jr(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}function Ar(t,e,r){var a,n,o,i=t.constructor;switch(e){case"[object ArrayBuffer]":return jr(t);case"[object Boolean]":case"[object Date]":return new i(+t);case"[object DataView]":return function(t,e){var r=e?jr(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}(t,r);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return Tr(t,r);case"[object Map]":return new i;case"[object Number]":case"[object String]":return new i(t);case"[object RegExp]":return(o=new(n=t).constructor(n.source,_r.exec(n))).lastIndex=n.lastIndex,o;case"[object Set]":return new i;case"[object Symbol]":return a=t,Sr?Object(Sr.call(a)):{}}}function Cr(t){return"function"!=typeof t.constructor||ie(t)?{}:Lt(He(t))}var Mr=Oe&&Oe.isMap,xr=Mr?me(Mr):function(t){return pt(t)&&"[object Map]"==gr(t)};var Er=Oe&&Oe.isSet,Br=Er?me(Er):function(t){return pt(t)&&"[object Set]"==gr(t)},Pr={};function Rr(t,e,r,a,n,o){var i,s=1&e,c=2&e,u=4&e;if(r&&(i=n?r(t,a,n,o):r(t)),void 0!==i)return i;if(!ft(t))return t;var l=dt(t);if(l){if(i=function(t){var e=t.length,r=new t.constructor(e);return e&&"string"==typeof t[0]&&wr.call(t,"index")&&(r.index=t.index,r.input=t.input),r}(t),!s)return zt(t,i)}else{var p=gr(t),d="[object Function]"==p||"[object GeneratorFunction]"==p;if(he(t))return er(t,s);if("[object Object]"==p||"[object Arguments]"==p||d&&!n){if(i=c||d?{}:Cr(t),!s)return c?function(t,e){return te(t,ir(t),e)}(t,function(t,e){return t&&te(e,Be(e),t)}(i,t)):function(t,e){return te(t,or(t),e)}(t,function(t,e){return t&&te(e,Me(e),t)}(i,t))}else{if(!Pr[p])return n?t:{};i=Ar(t,p,s)}}o||(o=new Ke);var f=o.get(t);if(f)return f;o.set(t,i),Br(t)?t.forEach((function(a){i.add(Rr(a,e,r,a,t,o))})):xr(t)&&t.forEach((function(a,n){i.set(n,Rr(a,e,r,n,t,o))}));var v=u?c?ur:cr:c?keysIn:Me,h=l?void 0:v(t);return function(t,e){for(var r=-1,a=null==t?0:t.length;++r<a&&!1!==e(t[r],r,t););}(h||t,(function(a,n){h&&(a=t[n=a]),Xt(i,n,Rr(a,e,r,n,t,o))})),i}Pr["[object Arguments]"]=Pr["[object Array]"]=Pr["[object ArrayBuffer]"]=Pr["[object DataView]"]=Pr["[object Boolean]"]=Pr["[object Date]"]=Pr["[object Float32Array]"]=Pr["[object Float64Array]"]=Pr["[object Int8Array]"]=Pr["[object Int16Array]"]=Pr["[object Int32Array]"]=Pr["[object Map]"]=Pr["[object Number]"]=Pr["[object Object]"]=Pr["[object RegExp]"]=Pr["[object Set]"]=Pr["[object String]"]=Pr["[object Symbol]"]=Pr["[object Uint8Array]"]=Pr["[object Uint8ClampedArray]"]=Pr["[object Uint16Array]"]=Pr["[object Uint32Array]"]=!0,Pr["[object Error]"]=Pr["[object Function]"]=Pr["[object WeakMap]"]=!1;function kr(t){return Rr(t,5)}function Ir(t){var e=-1,r=null==t?0:t.length;for(this.__data__=new Ve;++e<r;)this.add(t[e])}function Lr(t,e){return t.has(e)}function Ur(t){var e=-1,r=Array(t.size);return t.forEach((function(t){r[++e]=t})),r}Ir.prototype.add=Ir.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Ir.prototype.has=function(t){return this.__data__.has(t)};var zr,Fr=function(t,e,r){for(var a=-1,n=Object(t),o=r(t),i=o.length;i--;){var s=o[zr?i:++a];if(!1===e(n[s],s,n))break}return t},Nr=function(){return rt.Date.now()},Vr=Math.max,Gr=Math.min;function Hr(t,e,r){var a,n,o,i,s,c,u=0,l=!1,p=!1,d=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function f(e){var r=a,o=n;return a=n=void 0,u=e,i=t.apply(o,r)}function v(t){return u=t,s=setTimeout(b,e),l?f(t):i}function h(t){var r=t-c;return void 0===c||r>=e||r<0||p&&t-u>=o}function b(){var t=Nr();if(h(t))return m(t);s=setTimeout(b,function(t){var r=e-(t-c);return p?Gr(r,o-(t-u)):r}(t))}function m(t){return s=void 0,d&&a?f(t):(a=n=void 0,i)}function y(){var t=Nr(),r=h(t);if(a=arguments,n=this,c=t,r){if(void 0===s)return v(c);if(p)return clearTimeout(s),s=setTimeout(b,e),f(c)}return void 0===s&&(s=setTimeout(b,e)),i}return e=gt(e)||0,ft(r)&&(l=!!r.leading,o=(p="maxWait"in r)?Vr(gt(r.maxWait)||0,e):o,d="trailing"in r?!!r.trailing:d),y.cancel=function(){void 0!==s&&clearTimeout(s),u=0,a=c=n=s=void 0},y.flush=function(){return void 0===s?i:m(Nr())},y}function $r(t,e,r){(void 0===r||qt(t[e],r))&&(void 0!==r||e in t)||Kt(t,e,r)}function Jr(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}function Qr(t,e,r,a,n,o,i){var s=Jr(t,r),c=Jr(e,r),u=i.get(c);if(u)$r(t,r,u);else{var l,p=o?o(s,c,r+"",t,e,i):void 0,d=void 0===p;if(d){var f=dt(c),v=!f&&he(c),h=!f&&!v&&_e(c);p=c,f||v||h?dt(s)?p=s:pt(l=s)&&ne(l)?p=zt(s):v?(d=!1,p=er(c,!0)):h?(d=!1,p=Tr(c,!0)):p=[]:function(t){if(!pt(t)||"[object Object]"!=lt(t))return!1;var e=He(t);if(null===e)return!0;var r=We.call(e,"constructor")&&e.constructor;return"function"==typeof r&&r instanceof r&&Qe.call(r)==Ye}(c)||pe(c)?(p=s,pe(s)?p=function(t){return te(t,Be(t))}(s):ft(s)&&!Ot(s)||(p=Cr(c))):d=!1}d&&(i.set(c,p),n(p,c,a,o,i),i.delete(c)),$r(t,r,p)}}function Wr(t,e,r,a,n){t!==e&&Fr(e,(function(o,i){if(n||(n=new Ke),ft(o))Qr(t,e,i,r,Wr,a,n);else{var s=a?a(Jr(t,i),o,i+"",t,e,n):void 0;void 0===s&&(s=o),$r(t,i,s)}}),Be)}function Yr(t,e,r){for(var a=-1,n=null==t?0:t.length;++a<n;)if(r(e,t[a]))return!0;return!1}var Kr,qr,Zr=(Kr=function(t,e,r){Wr(t,e,r)},re((function(t,e){var r=-1,a=e.length,n=a>1?e[a-1]:void 0,o=a>2?e[2]:void 0;for(n=Kr.length>3&&"function"==typeof n?(a--,n):void 0,o&&function(t,e,r){if(!ft(r))return!1;var a=typeof e;return!!("number"==a?ne(r)&&Yt(e,r.length):"string"==a&&e in r)&&qt(r[e],t)}(e[0],e[1],o)&&(n=a<3?void 0:n,a=1),t=Object(t);++r<a;){var i=e[r];i&&Kr(t,i,r,n)}return t}))),Xr=dr&&1/Ur(new dr([,-0]))[1]==1/0?function(t){return new dr(t)}:function(){};function ta(t){return t&&t.length?function(t,e,r){var a=-1,n=Qt,o=t.length,i=!0,s=[],c=s;if(r)i=!1,n=Yr;else if(o>=200){var u=e?null:Xr(t);if(u)return Ur(u);i=!1,n=Lr,c=new Ir}else c=e?[]:s;t:for(;++a<o;){var l=t[a],p=e?e(l):l;if(l=r||0!==l?l:0,i&&p==p){for(var d=c.length;d--;)if(c[d]===p)continue t;e&&c.push(p),s.push(l)}else n(c,p,r)||(c!==s&&c.push(p),s.push(l))}return s}(t):[]}!function(t){t.debounce=Hr,t.clone=kr,t.merge=Zr,t.removeArrayDuplicates=ta,t.getDimensions=function(t){return{width:parseFloat(t.style.width.replace("px","")||t.offsetWidth),height:parseFloat(t.style.height.replace("px","")||t.offsetHeight)}},t.getTranslationValues=function(t){var e=t.getAttribute("transform").match(/translate\([0-9]+\.?[0-9]*,[0-9]+\.?[0-9]*\)/);if(e[0]){var r=e[0].replace(/translate\(/,"").replace(/\)/,"").split(",");return{tx:r[0],ty:r[1]}}return null},t.getTranformOffsets=function(t){var e=/\(([^)]+)\)/.exec(t)[1].split(",");return{x:parseFloat(e[0]),y:parseFloat(e[1])}},t.capitalizeFirstLetter=function(t){return t[0].toUpperCase()+t.slice(1)},t.convertValueToPercentage=function(t,e){var r=t/e.reduce((function(t,e){return t+e.value}),0)*100;return r<1?r.toPrecision(1):Math.floor(r)},t.arrayDifferences=function(t,e){var r={missing:[],added:[]};return t.forEach((function(t){-1===e.indexOf(t)&&r.missing.push(t)})),e.forEach((function(e){-1===t.indexOf(e)&&r.added.push(e)})),r},t.getDuplicateValues=function(t){var e=[],r=[];return t.forEach((function(t){-1!==e.indexOf(t)&&-1===r.indexOf(t)&&r.push(t),e.push(t)})),r},t.moveToFront=function(t){return t.each((function(){this.parentNode.appendChild(this)}))},t.getProperty=function(t){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];var a=t;if(a){for(var n=0,o=e;n<o.length;n++){var i=o[n];if(null===a[i]||void 0===a[i])return null;a=a[i]}return a}return null},t.flipSVGCoordinatesBasedOnOrientation=function(t,e){return e===c.HORIZONTAL?{y0:t.x0,y1:t.x1,x0:t.y0,x1:t.y1}:t},t.generateSVGPathString=function(e,r){var a=t.flipSVGCoordinatesBasedOnOrientation(e,r),n=a.x0,o=a.x1,i=a.y0,s=a.y1;return"M"+n+","+i+"L"+n+","+s+"L"+o+","+s+"L"+o+","+i+"L"+n+","+i}}(qr||(qr={}));var ea=qr.merge({},Q,{title:"Step (discrete)",curve:"curveStepAfter"}),ra=J,aa=qr.merge({},Y,{title:"Step (time series)",curve:"curveStepAfter"}),na=W;function oa(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function ia(t,e){return t(e={exports:{}},e.exports),e.exports}var sa=ia((function(t){var e=function(){var t=String.fromCharCode,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",a={};function n(t,e){if(!a[t]){a[t]={};for(var r=0;r<t.length;r++)a[t][t.charAt(r)]=r}return a[t][e]}var o={compressToBase64:function(t){if(null==t)return"";var r=o._compress(t,6,(function(t){return e.charAt(t)}));switch(r.length%4){default:case 0:return r;case 1:return r+"===";case 2:return r+"==";case 3:return r+"="}},decompressFromBase64:function(t){return null==t?"":""==t?null:o._decompress(t.length,32,(function(r){return n(e,t.charAt(r))}))},compressToUTF16:function(e){return null==e?"":o._compress(e,15,(function(e){return t(e+32)}))+" "},decompressFromUTF16:function(t){return null==t?"":""==t?null:o._decompress(t.length,16384,(function(e){return t.charCodeAt(e)-32}))},compressToUint8Array:function(t){for(var e=o.compress(t),r=new Uint8Array(2*e.length),a=0,n=e.length;a<n;a++){var i=e.charCodeAt(a);r[2*a]=i>>>8,r[2*a+1]=i%256}return r},decompressFromUint8Array:function(e){if(null==e)return o.decompress(e);for(var r=new Array(e.length/2),a=0,n=r.length;a<n;a++)r[a]=256*e[2*a]+e[2*a+1];var i=[];return r.forEach((function(e){i.push(t(e))})),o.decompress(i.join(""))},compressToEncodedURIComponent:function(t){return null==t?"":o._compress(t,6,(function(t){return r.charAt(t)}))},decompressFromEncodedURIComponent:function(t){return null==t?"":""==t?null:(t=t.replace(/ /g,"+"),o._decompress(t.length,32,(function(e){return n(r,t.charAt(e))})))},compress:function(e){return o._compress(e,16,(function(e){return t(e)}))},_compress:function(t,e,r){if(null==t)return"";var a,n,o,i={},s={},c="",u="",l="",p=2,d=3,f=2,v=[],h=0,b=0;for(o=0;o<t.length;o+=1)if(c=t.charAt(o),Object.prototype.hasOwnProperty.call(i,c)||(i[c]=d++,s[c]=!0),u=l+c,Object.prototype.hasOwnProperty.call(i,u))l=u;else{if(Object.prototype.hasOwnProperty.call(s,l)){if(l.charCodeAt(0)<256){for(a=0;a<f;a++)h<<=1,b==e-1?(b=0,v.push(r(h)),h=0):b++;for(n=l.charCodeAt(0),a=0;a<8;a++)h=h<<1|1&n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n>>=1}else{for(n=1,a=0;a<f;a++)h=h<<1|n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n=0;for(n=l.charCodeAt(0),a=0;a<16;a++)h=h<<1|1&n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n>>=1}0==--p&&(p=Math.pow(2,f),f++),delete s[l]}else for(n=i[l],a=0;a<f;a++)h=h<<1|1&n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n>>=1;0==--p&&(p=Math.pow(2,f),f++),i[u]=d++,l=String(c)}if(""!==l){if(Object.prototype.hasOwnProperty.call(s,l)){if(l.charCodeAt(0)<256){for(a=0;a<f;a++)h<<=1,b==e-1?(b=0,v.push(r(h)),h=0):b++;for(n=l.charCodeAt(0),a=0;a<8;a++)h=h<<1|1&n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n>>=1}else{for(n=1,a=0;a<f;a++)h=h<<1|n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n=0;for(n=l.charCodeAt(0),a=0;a<16;a++)h=h<<1|1&n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n>>=1}0==--p&&(p=Math.pow(2,f),f++),delete s[l]}else for(n=i[l],a=0;a<f;a++)h=h<<1|1&n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n>>=1;0==--p&&(p=Math.pow(2,f),f++)}for(n=2,a=0;a<f;a++)h=h<<1|1&n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n>>=1;for(;;){if(h<<=1,b==e-1){v.push(r(h));break}b++}return v.join("")},decompress:function(t){return null==t?"":""==t?null:o._decompress(t.length,32768,(function(e){return t.charCodeAt(e)}))},_decompress:function(e,r,a){var n,o,i,s,c,u,l,p=[],d=4,f=4,v=3,h="",b=[],m={val:a(0),position:r,index:1};for(n=0;n<3;n+=1)p[n]=n;for(i=0,c=Math.pow(2,2),u=1;u!=c;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=r,m.val=a(m.index++)),i|=(s>0?1:0)*u,u<<=1;switch(i){case 0:for(i=0,c=Math.pow(2,8),u=1;u!=c;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=r,m.val=a(m.index++)),i|=(s>0?1:0)*u,u<<=1;l=t(i);break;case 1:for(i=0,c=Math.pow(2,16),u=1;u!=c;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=r,m.val=a(m.index++)),i|=(s>0?1:0)*u,u<<=1;l=t(i);break;case 2:return""}for(p[3]=l,o=l,b.push(l);;){if(m.index>e)return"";for(i=0,c=Math.pow(2,v),u=1;u!=c;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=r,m.val=a(m.index++)),i|=(s>0?1:0)*u,u<<=1;switch(l=i){case 0:for(i=0,c=Math.pow(2,8),u=1;u!=c;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=r,m.val=a(m.index++)),i|=(s>0?1:0)*u,u<<=1;p[f++]=t(i),l=f-1,d--;break;case 1:for(i=0,c=Math.pow(2,16),u=1;u!=c;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=r,m.val=a(m.index++)),i|=(s>0?1:0)*u,u<<=1;p[f++]=t(i),l=f-1,d--;break;case 2:return b.join("")}if(0==d&&(d=Math.pow(2,v),v++),p[l])h=p[l];else{if(l!==f)return null;h=o+o.charAt(0)}b.push(h),p[f++]=o+h.charAt(0),o=h,0==--d&&(d=Math.pow(2,v),v++)}}};return o}();null!=t&&(t.exports=e)})),ca=ia((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.getParameters=function(t){return e=JSON.stringify(t),sa.compressToBase64(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"");var e}}));oa(ca);ca.getParameters;var ua=ia((function(t,e){e.__esModule=!0,e.getParameters=ca.getParameters}));oa(ua);var la=ua.getParameters,pa=require("@carbon/charts/package.json").version,da=function(t){var e={};return Object.keys(t).forEach((function(r){return e[r]={content:t[r]}})),"https://codesandbox.io/api/v1/sandboxes/define?parameters="+la({files:e})},fa={SimpleBarChart:{vanilla:"SimpleBarChart",angular:"ibm-simple-bar-chart",vue:"ccv-simple-bar-chart"},GroupedBarChart:{vanilla:"GroupedBarChart",angular:"ibm-grouped-bar-chart",vue:"ccv-grouped-bar-chart"},StackedBarChart:{vanilla:"StackedBarChart",angular:"ibm-stacked-bar-chart",vue:"ccv-stacked-bar-chart"},BubbleChart:{vanilla:"BubbleChart",angular:"ibm-bubble-chart",vue:"ccv-bubble-chart"},LineChart:{vanilla:"LineChart",angular:"ibm-line-chart",vue:"ccv-line-chart"},ScatterChart:{vanilla:"ScatterChart",angular:"ibm-scatter-chart",vue:"ccv-scatter-chart"},PieChart:{vanilla:"PieChart",angular:"ibm-pie-chart",vue:"ccv-pie-chart"},DonutChart:{vanilla:"DonutChart",angular:"ibm-donut-chart",vue:"ccv-donut-chart"}},va=[{title:"Bar (vertical)",demos:[{options:D,data:_,chartType:fa.SimpleBarChart},{options:M,data:C,chartType:fa.SimpleBarChart},{options:S,data:_,chartType:fa.SimpleBarChart},{options:w,data:g,chartType:fa.GroupedBarChart},{options:P,data:B,chartType:fa.StackedBarChart},{options:L,data:I,chartType:fa.StackedBarChart}]},{title:"Bar (horizontal)",demos:[{options:A,data:T,chartType:fa.SimpleBarChart},{options:x,data:E,chartType:fa.SimpleBarChart},{options:j,data:O,chartType:fa.GroupedBarChart},{options:k,data:R,chartType:fa.StackedBarChart},{options:U,data:z,chartType:fa.StackedBarChart}]},{title:"Bubble",demos:[{options:N,data:F,chartType:fa.BubbleChart}]},{title:"Donut",demos:[{options:$,data:H,chartType:fa.DonutChart}]},{title:"Line",demos:[{options:Y,data:W,chartType:fa.LineChart},{options:Q,data:J,chartType:fa.LineChart}]},{title:"Pie",demos:[{options:G,data:V,chartType:fa.PieChart}]},{title:"Scatter",demos:[{options:X,data:Z,chartType:fa.ScatterChart},{options:q,data:K,chartType:fa.ScatterChart}]},{title:"Step",demos:[{options:ea,data:ra,chartType:fa.LineChart},{options:aa,data:na,chartType:fa.LineChart}]}],ha=function(t){return t.replace(/[^\w\s]/gi,"").replace(/\s\s+/g," ").toLowerCase().replace(/\s+/g,"-")},ba=va=va.map((function(t){return t.demos=t.demos.map((function(e){return e.title=e.options.title,e.id=ha(t.title)+"--"+ha(e.options.title),e.options.height="400px",e.codesandbox||(e.codesandbox={}),e.codesandbox.react=da(function(t){var e=JSON.stringify(t.data,null,"\t"),r=JSON.stringify(t.options,null,"\t"),a=t.chartType.vanilla;return{"src/index.html":'<div id="root"></div>\n ',"src/index.js":'import React from "react";\nimport ReactDOM from "react-dom";\nimport { '+a+' } from "@carbon/charts-react";\nimport "@carbon/charts/styles.css";\n// Or\n// import "@carbon/charts/styles/styles.scss";\n\nclass App extends React.Component {\n\tstate = {\n\t\tdata: '+e+",\n\t\toptions: "+r+"\n\t};\n\n\trender = () => (\n\t\t<"+a+"\n\t\t\tdata={this.state.data}\n\t\t\toptions={this.state.options}>\n\t\t</"+a+'>\n\t);\n}\nReactDOM.render(<App />, document.getElementById("root"));\n ',"package.json":{dependencies:{"@carbon/charts":pa,"@carbon/charts-react":pa,d3:"5.12.0",react:"16.12.0","react-dom":"16.12.0","react-scripts":"3.0.1"}}}}(e)),e.codesandbox.vue=da(function(t){var e=JSON.stringify(t.data,null,"\t\t"),r=JSON.stringify(t.options,null,"\t\t"),a=t.chartType.vue;return{"src/components/chart.vue":'<script>\nimport Vue from "vue";\nimport "@carbon/charts/styles.css";\nimport chartsVue from "@carbon/charts-vue";\nVue.use(chartsVue);\nexport default {\n\tname: "Chart",\n\tcomponents: {},\n\tdata() {\n\t\treturn {\n\t\t\tdata: '+e+",\n\t\t\toptions: "+r+'\n\t\t};\n\t},\n\ttemplate: "<'+a+' :data="data" :options="options"></'+a+'>"\n};\n<\/script>\n ',"src/App.vue":'<template>\n\t<div id="app">\n\t\t<Chart/>\n\t</div>\n</template>\n<script>\nimport Chart from "./components/chart";\nexport default {\n\tname: "App",\n\tcomponents: {\n\t\tChart\n\t}\n};\n<\/script>\n ',"src/main.js":'import Vue from "vue";\nimport App from "./App.vue";\nVue.config.productionTip = false;\nnew Vue({\n\trender: h => h(App)\n}).$mount("#app");\n',"package.json":JSON.stringify({dependencies:{"@carbon/charts":pa,"@carbon/charts-vue":pa,"@vue/cli-plugin-babel":"4.1.1",d3:"5.15.0",vue:"^2.6.11"}},null,"\t\t")}}(e)),e.code||(e.code={}),e.code.angular=function(t){var e=JSON.stringify(t.data,null,"\t\t"),r=JSON.stringify(t.options,null,"\t\t"),a=t.chartType.angular;return{"src/index.html":'<!DOCTYPE html>\n<html lang="en">\n\t<head>\n\t\t<meta charset="utf-8" />\n\t\t<title>Angular</title>\n\t</head>\n\t<body>\n\t\t<app-root></app-root>\n\t</body>\n</html>',"src/main.ts":'import { platformBrowserDynamic } from "@angular/platform-browser-dynamic";\nimport { AppModule } from "./app/app.module";\nplatformBrowserDynamic()\n\t.bootstrapModule(AppModule)\n\t.catch(err => console.log(err));\n',"src/app/app.component.html":"<"+a+' [data]="data" [options]="options"></'+a+">","src/app/app.component.ts":'import { Component } from "@angular/core";\n@Component({\n\tselector: "app-root",\n\ttemplateUrl: "./app.component.html"\n})\nexport class AppComponent {\n\tdata = '+e+";\n\toptions = "+r+";\n}","src/app/app.module.ts":'import { NgModule } from "@angular/core";\nimport { BrowserModule } from "@angular/platform-browser";\nimport { ChartsModule } from "@carbon/charts-angular";\nimport { AppComponent } from "./app.component";\n@NgModule({\n\timports: [BrowserModule, ChartsModule],\n\tdeclarations: [AppComponent],\n\tbootstrap: [AppComponent]\n})\nexport class AppModule {}',".angular-cli.json":'{\n\t"apps": [\n\t\t{\n\t\t\t"root": "src",\n\t\t\t"outDir": "dist",\n\t\t\t"assets": ["assets", "favicon.ico"],\n\t\t\t"index": "index.html",\n\t\t\t"main": "main.ts",\n\t\t\t"polyfills": "polyfills.ts",\n\t\t\t"prefix": "app",\n\t\t\t"styles": ["styles.css"],\n\t\t\t"scripts": [],\n\t\t\t"environmentSource": "environments/environment.ts",\n\t\t\t"environments": {\n\t\t\t\t"dev": "environments/environment.ts",\n\t\t\t\t"prod": "environments/environment.prod.ts"\n\t\t\t}\n\t\t}\n\t]\n}',"package.json":JSON.stringify({dependencies:{"@angular/animations":"8.2.14","@angular/common":"8.2.14","@angular/compiler":"8.2.14","@angular/core":"8.2.14","@angular/forms":"8.2.14","@angular/platform-browser":"8.2.14","@angular/platform-browser-dynamic":"8.2.14","@angular/router":"8.2.14","@carbon/charts":pa,"@carbon/charts-angular":pa,"core-js":"3.6.0",d3:"5.15.0",rxjs:"6.5.3","zone.js":"0.10.2"}},null,"\t")}}(e),e})),t}));t.bubbleData=F,t.bubbleOptions=N,t.chartTypes=fa,t.demoGroups=ba,t.donutData=H,t.donutOptions=$,t.groupedBarData=g,t.groupedBarOptions=w,t.groupedHorizontalBarData=O,t.groupedHorizontalBarOptions=j,t.lineData=J,t.lineOptions=Q,t.lineTimeSeriesData=W,t.lineTimeSeriesOptions=Y,t.pieData=V,t.pieOptions=G,t.scatterData=K,t.scatterOptions=q,t.scatterTimeSeriesData=Z,t.scatterTimeSeriesOptions=X,t.simpleBarData=_,t.simpleBarFixedDomainOptions=S,t.simpleBarOptions=D,t.simpleBarTimeSeriesData=C,t.simpleBarTimeSeriesOptions=M,t.simpleHorizontalBarData=T,t.simpleHorizontalBarOptions=A,t.simpleHorizontalBarTimeSeriesData=E,t.simpleHorizontalBarTimeSeriesOptions=x,t.stackedBarData=B,t.stackedBarOptions=P,t.stackedBarTimeSeriesData=I,t.stackedBarTimeSeriesOptions=L,t.stackedHorizontalBarData=R,t.stackedHorizontalBarOptions=k,t.stackedHorizontalBarTimeSeriesData=z,t.stackedHorizontalBarTimeSeriesOptions=U,t.stepData=ra,t.stepOptions=ea,t.stepTimeSeriesData=na,t.stepTimeSeriesOptions=aa,Object.defineProperty(t,"__esModule",{value:!0})}));
1
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t=t||self).ChartsDemoData={})}(this,(function(t){"use strict";var e,r,a,n,o,i,s,c,u,l,p,d,f,v,h,b,m,y=require("d3-time-format/locale/tr-TR.json"),g={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[65e3,-29123,-35213,51213,16932]},{label:"Dataset 2",data:[32432,-21312,-56456,-21312,34234]},{label:"Dataset 3",data:[-12312,23232,34232,-12312,-34234]},{label:"Dataset 4",data:[-32423,21313,64353,24134,32423]}]},w={title:"Grouped bar (discrete)",axes:{left:{primary:!0},bottom:{scaleType:"labels",secondary:!0}}},O=g,j={title:"Grouped horizontal bar (discrete)",axes:{left:{scaleType:"labels",primary:!0},bottom:{secondary:!0}}},_={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[65e3,29123,35213,51213,16932]}]},D={title:"Simple bar (discrete)",axes:{left:{primary:!0},bottom:{scaleType:"labels",secondary:!0}}},S={title:"Simple bar (fixed domain)",axes:{left:{primary:!0,domain:[-1e5,1e5]},bottom:{scaleType:"labels",secondary:!0}}},T=_,A={title:"Simple horizontal bar (discrete)",axes:{left:{primary:!0,scaleType:"labels"},bottom:{secondary:!0}}},C={labels:["Qty","More","Sold","Restocking","Miscellaneous"],datasets:[{label:"Dataset 1",data:[{date:new Date(2019,0,1),value:1e4},{date:new Date(2019,0,2),value:65e3},{date:new Date(2019,0,3),value:1e4},{date:new Date(2019,0,6),value:49213},{date:new Date(2019,0,7),value:51213}]}]},M={title:"Simple bar (time series - Turkish)",axes:{left:{primary:!0},bottom:{scaleType:"time",secondary:!0}},locale:{time:y}},x={title:"Simple horizontal bar (time series)",axes:{left:{scaleType:"time",primary:!0},bottom:{secondary:!0}}},E=C,B={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[65e3,29123,35213,51213,16932]},{label:"Dataset 2",data:[32432,21312,56456,21312,34234]},{label:"Dataset 3",data:[12312,23232,34232,12312,34234]},{label:"Dataset 4",data:[32423,21313,64353,24134,32423]}]},P={title:"Stacked bar (discrete)",axes:{left:{primary:!0,stacked:!0},bottom:{scaleType:"labels",secondary:!0}}},R=B,k={title:"Stacked horizontal bar (discrete)",axes:{left:{scaleType:"labels",primary:!0},bottom:{stacked:!0,secondary:!0}}},I={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[{date:new Date(2019,0,1),value:1e4},{date:new Date(2019,0,5),value:65e3},{date:new Date(2019,0,8),value:1e4},{date:new Date(2019,0,13),value:49213},{date:new Date(2019,0,17),value:51213}]},{label:"Dataset 2",data:[{date:new Date(2019,0,3),value:75e3},{date:new Date(2019,0,6),value:57312},{date:new Date(2019,0,8),value:21432},{date:new Date(2019,0,15),value:70323},{date:new Date(2019,0,19),value:21300}]},{label:"Dataset 3",data:[{date:new Date(2019,0,1),value:5e4},{date:new Date(2019,0,5),value:15e3},{date:new Date(2019,0,8),value:2e4},{date:new Date(2019,0,13),value:39213},{date:new Date(2019,0,17),value:61213}]},{label:"Dataset 4",data:[{date:new Date(2019,0,2),value:10},{date:new Date(2019,0,6),value:37312},{date:new Date(2019,0,8),value:51432},{date:new Date(2019,0,15),value:40323},{date:new Date(2019,0,19),value:31300}]}]},L={title:"Stacked bar (time series)",axes:{left:{primary:!0,stacked:!0},bottom:{scaleType:"time",secondary:!0}}},U={title:"Stacked horizontal bar (time series)",axes:{left:{primary:!0,scaleType:"time"},bottom:{stacked:!0,secondary:!0}}},z=I,F={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[{date:new Date(2019,0,1),value:1e4,radius:6},{date:new Date(2019,0,5),value:45e3,radius:5},{date:new Date(2019,0,8),value:1e4,radius:8},{date:new Date(2019,0,13),value:49213,radius:11},{date:new Date(2019,0,17),value:51213,radius:3}]},{label:"Dataset 2",data:[{date:new Date(2019,0,2),value:12e3,radius:4},{date:new Date(2019,0,6),value:57312,radius:6},{date:new Date(2019,0,8),value:21432,radius:8},{date:new Date(2019,0,15),value:70323,radius:3},{date:new Date(2019,0,19),value:21300,radius:5}]},{label:"Dataset 3",data:[{date:new Date(2019,0,1),value:5e4,radius:5},{date:new Date(2019,0,1),value:15e3,radius:3},{date:new Date(2019,0,2),value:2e4,radius:8},{date:new Date(2019,0,2),value:39213,radius:4},{date:new Date(2019,0,3),value:61213,radius:3},{date:new Date(2019,0,3),value:5e4,radius:5},{date:new Date(2019,0,4),value:15e3,radius:3},{date:new Date(2019,0,4),value:2e4,radius:2},{date:new Date(2019,0,5),value:39213,radius:4},{date:new Date(2019,0,6),value:61213,radius:3}]},{label:"Dataset 4",data:[{date:new Date(2019,0,2),value:5e3,radius:2},{date:new Date(2019,0,6),value:37312,radius:3},{date:new Date(2019,0,8),value:51432,radius:5},{date:new Date(2019,0,15),value:5e3,radius:7},{date:new Date(2019,0,19),value:31300,radius:2},{date:new Date(2019,0,4),value:34242,radius:5},{date:new Date(2019,0,5),value:62324,radius:12},{date:new Date(2019,0,9),value:21321,radius:9},{date:new Date(2019,0,12),value:13421,radius:2},{date:new Date(2019,0,14),value:32523,radius:15}]}]},N={title:"Bubble (time series)",axes:{bottom:{title:"2019 Annual Sales Figures",scaleType:"time",secondary:!0},left:{primary:!0}}},V={labels:["2V2N 9KYPM version 1","L22I P66EP L22I P66EP L22I P66EP","JQAI 2M4L1","J9DZ F37AP","YEL48 Q6XK YEL48","P66EP L22I L22I"],datasets:[{label:"Dataset 1",data:[2e4,65e3,75e3,1200,1e4,25e3]}]},G={title:"Pie",resizable:!0},H=V,$={title:"Donut",resizable:!0,donut:{center:{label:"Browsers"}}},J={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[32100,23500,53100,42300,12300]},{label:"Dataset 2",data:[34200,53200,42300,21400,0]},{label:"Dataset 3 long name",data:[41200,23400,34210,1400,42100]},{label:"Dataset 4 long name",data:[22e3,1200,9e3,24e3,3e3]},{label:"Dataset 5 long name",data:[2412,3e4,1e4,5e3,31e3]},{label:"Dataset 6 long name",data:[0,2e4,4e4,6e4,8e4]}]},Q={title:"Line (discrete)",axes:{bottom:{title:"2018 Annual Sales Figures",scaleType:"labels",secondary:!0},left:{primary:!0}}},W={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[{date:new Date(2019,0,1),value:1e4},{date:new Date(2019,0,5),value:65e3},{date:new Date(2019,0,8),value:1e4},{date:new Date(2019,0,13),value:49213},{date:new Date(2019,0,17),value:51213}]},{label:"Dataset 2",data:[{date:new Date(2019,0,2),value:0},{date:new Date(2019,0,6),value:57312},{date:new Date(2019,0,8),value:21432},{date:new Date(2019,0,15),value:70323},{date:new Date(2019,0,19),value:21300}]},{label:"Dataset 3",data:[{date:new Date(2019,0,1),value:5e4},{date:new Date(2019,0,5),value:15e3},{date:new Date(2019,0,8),value:2e4},{date:new Date(2019,0,13),value:39213},{date:new Date(2019,0,17),value:61213}]},{label:"Dataset 4",data:[{date:new Date(2019,0,2),value:10},{date:new Date(2019,0,6),value:37312},{date:new Date(2019,0,8),value:51432},{date:new Date(2019,0,15),value:40323},{date:new Date(2019,0,19),value:31300}]}]},Y={title:"Line (time series)",axes:{left:{secondary:!0},bottom:{scaleType:"time",primary:!0}},curve:"curveMonotoneX"},K={labels:["Qty","More","Sold","Restocking","Misc"],datasets:[{label:"Dataset 1",data:[32100,23500,53100,42300,12300]},{label:"Dataset 2",data:[34200,53200,42300,21400,0]},{label:"Dataset 3 long name",data:[41200,23400,34210,1400,42100]},{label:"Dataset 4 long name",data:[22e3,1200,9e3,24e3,3e3]},{label:"Dataset 5 long name",data:[2412,3e4,1e4,5e3,31e3]},{label:"Dataset 6 long name",data:[0,2e4,4e4,6e4,8e4]}]},q={title:"Scatter (discrete)",axes:{bottom:{title:"2018 Annual Sales Figures",scaleType:"labels",secondary:!0},left:{primary:!0}}},Z=W,X={title:"Scatter (time series)",axes:{bottom:{title:"2019 Annual Sales Figures",scaleType:"time",secondary:!0},left:{primary:!0}}};!function(t){t.GRAPHICS_DOCUMENT="graphics-document",t.GRAPHICS_OBJECT="graphics-object",t.GRAPHICS_SYMBOL="graphics-symbol",t.GROUP="group"}(e||(e={})),function(t){t.SLICE_MOUSEOVER="pie-slice-mouseover",t.SLICE_MOUSEMOVE="pie-slice-mousemove",t.SLICE_CLICK="pie-slice-click",t.SLICE_MOUSEOUT="pie-slice-mouseout"}(r||(r={})),function(t){t.BAR_MOUSEOVER="bar-mouseover",t.BAR_MOUSEMOVE="bar-mousemove",t.BAR_CLICK="bar-click",t.BAR_MOUSEOUT="bar-mouseout"}(a||(a={})),function(t){t.SCATTER_MOUSEOVER="scatter-mouseover",t.SCATTER_MOUSEMOVE="scatter-mousemove",t.SCATTER_CLICK="scatter-click",t.SCATTER_MOUSEOUT="scatter-mouseout"}(n||(n={})),function(t){t.POINT_MOUSEOVER="scatter-mouseover",t.POINT_MOUSEMOVE="scatter-mousemove",t.POINT_CLICK="scatter-click",t.POINT_MOUSEOUT="scatter-mouseout"}(o||(o={})),function(t){t.DEFAULT="default",t.G100="g100",t.G90="g90",t.G10="g10"}(i||(i={})),function(t){t.LEFT="left",t.RIGHT="right",t.TOP="top",t.BOTTOM="bottom"}(s||(s={})),function(t){t.VERTICAL="vertical",t.HORIZONTAL="horizontal"}(c||(c={})),function(t){t.PRIMARY="primary",t.SECONDARY="secondary"}(u||(u={})),function(t){t.TIME="time",t.LINEAR="linear",t.LOG="log",t.LABELS="labels"}(l||(l={})),function(t){t.MOUSE="mouse",t.TOP="top",t.BOTTOM="bottom"}(p||(p={})),function(t){t.DATAPOINT="datapoint",t.GRIDLINE="gridline",t.TITLE="title"}(d||(d={})),function(t){t.RIGHT="right",t.LEFT="left",t.TOP="top",t.BOTTOM="bottom"}(f||(f={})),function(t){t.HORIZONTAL="horizontal",t.VERTICAL="vertical"}(v||(v={})),function(t){t.ROW="row",t.COLUMN="column",t.ROW_REVERSE="row-reverse",t.COLUMN_REVERSE="column-reverse"}(h||(h={})),function(t){t.FIXED="fixed",t.PREFERRED="preferred",t.STRETCH="stretch"}(b||(b={})),function(t){t.LEFT="left",t.RIGHT="right"}(m||(m={}));var tt="object"==typeof global&&global&&global.Object===Object&&global,et="object"==typeof self&&self&&self.Object===Object&&self,rt=tt||et||Function("return this")(),at=rt.Symbol,nt=Object.prototype,ot=nt.hasOwnProperty,it=nt.toString,st=at?at.toStringTag:void 0;var ct=Object.prototype.toString;var ut=at?at.toStringTag:void 0;function lt(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":ut&&ut in Object(t)?function(t){var e=ot.call(t,st),r=t[st];try{t[st]=void 0;var a=!0}catch(t){}var n=it.call(t);return a&&(e?t[st]=r:delete t[st]),n}(t):function(t){return ct.call(t)}(t)}function pt(t){return null!=t&&"object"==typeof t}var dt=Array.isArray;function ft(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}var vt=/^\s+|\s+$/g,ht=/^[-+]0x[0-9a-f]+$/i,bt=/^0b[01]+$/i,mt=/^0o[0-7]+$/i,yt=parseInt;function gt(t){if("number"==typeof t)return t;if(function(t){return"symbol"==typeof t||pt(t)&&"[object Symbol]"==lt(t)}(t))return NaN;if(ft(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=ft(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(vt,"");var r=bt.test(t);return r||mt.test(t)?yt(t.slice(2),r?2:8):ht.test(t)?NaN:+t}function wt(t){return t}function Ot(t){if(!ft(t))return!1;var e=lt(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}var jt,_t=rt["__core-js_shared__"],Dt=(jt=/[^.]+$/.exec(_t&&_t.keys&&_t.keys.IE_PROTO||""))?"Symbol(src)_1."+jt:"";var St=Function.prototype.toString;function Tt(t){if(null!=t){try{return St.call(t)}catch(t){}try{return t+""}catch(t){}}return""}var At=/^\[object .+?Constructor\]$/,Ct=Function.prototype,Mt=Object.prototype,xt=Ct.toString,Et=Mt.hasOwnProperty,Bt=RegExp("^"+xt.call(Et).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Pt(t){return!(!ft(t)||(e=t,Dt&&Dt in e))&&(Ot(t)?Bt:At).test(Tt(t));var e}function Rt(t,e){var r=function(t,e){return null==t?void 0:t[e]}(t,e);return Pt(r)?r:void 0}var kt=Rt(rt,"WeakMap"),It=Object.create,Lt=function(){function t(){}return function(e){if(!ft(e))return{};if(It)return It(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}();function Ut(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}function zt(t,e){var r=-1,a=t.length;for(e||(e=Array(a));++r<a;)e[r]=t[r];return e}var Ft=Date.now;var Nt,Vt,Gt,Ht=function(){try{var t=Rt(Object,"defineProperty");return t({},"",{}),t}catch(t){}}(),$t=(Nt=Ht?function(t,e){return Ht(t,"toString",{configurable:!0,enumerable:!1,value:(r=e,function(){return r}),writable:!0});var r}:wt,Vt=0,Gt=0,function(){var t=Ft(),e=16-(t-Gt);if(Gt=t,e>0){if(++Vt>=800)return arguments[0]}else Vt=0;return Nt.apply(void 0,arguments)});function Jt(t){return t!=t}function Qt(t,e){return!!(null==t?0:t.length)&&function(t,e,r){return e==e?function(t,e,r){for(var a=r-1,n=t.length;++a<n;)if(t[a]===e)return a;return-1}(t,e,r):function(t,e,r,a){for(var n=t.length,o=r+(a?1:-1);a?o--:++o<n;)if(e(t[o],o,t))return o;return-1}(t,Jt,r)}(t,e,0)>-1}var Wt=/^(?:0|[1-9]\d*)$/;function Yt(t,e){var r=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==r||"symbol"!=r&&Wt.test(t))&&t>-1&&t%1==0&&t<e}function Kt(t,e,r){"__proto__"==e&&Ht?Ht(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}function qt(t,e){return t===e||t!=t&&e!=e}var Zt=Object.prototype.hasOwnProperty;function Xt(t,e,r){var a=t[e];Zt.call(t,e)&&qt(a,r)&&(void 0!==r||e in t)||Kt(t,e,r)}function te(t,e,r,a){var n=!r;r||(r={});for(var o=-1,i=e.length;++o<i;){var s=e[o],c=a?a(r[s],t[s],s,r,t):void 0;void 0===c&&(c=t[s]),n?Kt(r,s,c):Xt(r,s,c)}return r}var ee=Math.max;function re(t,e){return $t(function(t,e,r){return e=ee(void 0===e?t.length-1:e,0),function(){for(var a=arguments,n=-1,o=ee(a.length-e,0),i=Array(o);++n<o;)i[n]=a[e+n];n=-1;for(var s=Array(e+1);++n<e;)s[n]=a[n];return s[e]=r(i),Ut(t,this,s)}}(t,e,wt),t+"")}function ae(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}function ne(t){return null!=t&&ae(t.length)&&!Ot(t)}var oe=Object.prototype;function ie(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||oe)}function se(t){return pt(t)&&"[object Arguments]"==lt(t)}var ce=Object.prototype,ue=ce.hasOwnProperty,le=ce.propertyIsEnumerable,pe=se(function(){return arguments}())?se:function(t){return pt(t)&&ue.call(t,"callee")&&!le.call(t,"callee")};var de="object"==typeof t&&t&&!t.nodeType&&t,fe=de&&"object"==typeof module&&module&&!module.nodeType&&module,ve=fe&&fe.exports===de?rt.Buffer:void 0,he=(ve?ve.isBuffer:void 0)||function(){return!1},be={};function me(t){return function(e){return t(e)}}be["[object Float32Array]"]=be["[object Float64Array]"]=be["[object Int8Array]"]=be["[object Int16Array]"]=be["[object Int32Array]"]=be["[object Uint8Array]"]=be["[object Uint8ClampedArray]"]=be["[object Uint16Array]"]=be["[object Uint32Array]"]=!0,be["[object Arguments]"]=be["[object Array]"]=be["[object ArrayBuffer]"]=be["[object Boolean]"]=be["[object DataView]"]=be["[object Date]"]=be["[object Error]"]=be["[object Function]"]=be["[object Map]"]=be["[object Number]"]=be["[object Object]"]=be["[object RegExp]"]=be["[object Set]"]=be["[object String]"]=be["[object WeakMap]"]=!1;var ye="object"==typeof t&&t&&!t.nodeType&&t,ge=ye&&"object"==typeof module&&module&&!module.nodeType&&module,we=ge&&ge.exports===ye&&tt.process,Oe=function(){try{var t=ge&&ge.require&&ge.require("util").types;return t||we&&we.binding&&we.binding("util")}catch(t){}}(),je=Oe&&Oe.isTypedArray,_e=je?me(je):function(t){return pt(t)&&ae(t.length)&&!!be[lt(t)]},De=Object.prototype.hasOwnProperty;function Se(t,e){var r=dt(t),a=!r&&pe(t),n=!r&&!a&&he(t),o=!r&&!a&&!n&&_e(t),i=r||a||n||o,s=i?function(t,e){for(var r=-1,a=Array(t);++r<t;)a[r]=e(r);return a}(t.length,String):[],c=s.length;for(var u in t)!e&&!De.call(t,u)||i&&("length"==u||n&&("offset"==u||"parent"==u)||o&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||Yt(u,c))||s.push(u);return s}function Te(t,e){return function(r){return t(e(r))}}var Ae=Te(Object.keys,Object),Ce=Object.prototype.hasOwnProperty;function Me(t){return ne(t)?Se(t):function(t){if(!ie(t))return Ae(t);var e=[];for(var r in Object(t))Ce.call(t,r)&&"constructor"!=r&&e.push(r);return e}(t)}var xe=Object.prototype.hasOwnProperty;function Ee(t){if(!ft(t))return function(t){var e=[];if(null!=t)for(var r in Object(t))e.push(r);return e}(t);var e=ie(t),r=[];for(var a in t)("constructor"!=a||!e&&xe.call(t,a))&&r.push(a);return r}function Be(t){return ne(t)?Se(t,!0):Ee(t)}var Pe=Rt(Object,"create");var Re=Object.prototype.hasOwnProperty;var ke=Object.prototype.hasOwnProperty;function Ie(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var a=t[e];this.set(a[0],a[1])}}function Le(t,e){for(var r=t.length;r--;)if(qt(t[r][0],e))return r;return-1}Ie.prototype.clear=function(){this.__data__=Pe?Pe(null):{},this.size=0},Ie.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},Ie.prototype.get=function(t){var e=this.__data__;if(Pe){var r=e[t];return"__lodash_hash_undefined__"===r?void 0:r}return Re.call(e,t)?e[t]:void 0},Ie.prototype.has=function(t){var e=this.__data__;return Pe?void 0!==e[t]:ke.call(e,t)},Ie.prototype.set=function(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=Pe&&void 0===e?"__lodash_hash_undefined__":e,this};var Ue=Array.prototype.splice;function ze(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var a=t[e];this.set(a[0],a[1])}}ze.prototype.clear=function(){this.__data__=[],this.size=0},ze.prototype.delete=function(t){var e=this.__data__,r=Le(e,t);return!(r<0)&&(r==e.length-1?e.pop():Ue.call(e,r,1),--this.size,!0)},ze.prototype.get=function(t){var e=this.__data__,r=Le(e,t);return r<0?void 0:e[r][1]},ze.prototype.has=function(t){return Le(this.__data__,t)>-1},ze.prototype.set=function(t,e){var r=this.__data__,a=Le(r,t);return a<0?(++this.size,r.push([t,e])):r[a][1]=e,this};var Fe=Rt(rt,"Map");function Ne(t,e){var r,a,n=t.__data__;return("string"==(a=typeof(r=e))||"number"==a||"symbol"==a||"boolean"==a?"__proto__"!==r:null===r)?n["string"==typeof e?"string":"hash"]:n.map}function Ve(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var a=t[e];this.set(a[0],a[1])}}function Ge(t,e){for(var r=-1,a=e.length,n=t.length;++r<a;)t[n+r]=e[r];return t}Ve.prototype.clear=function(){this.size=0,this.__data__={hash:new Ie,map:new(Fe||ze),string:new Ie}},Ve.prototype.delete=function(t){var e=Ne(this,t).delete(t);return this.size-=e?1:0,e},Ve.prototype.get=function(t){return Ne(this,t).get(t)},Ve.prototype.has=function(t){return Ne(this,t).has(t)},Ve.prototype.set=function(t,e){var r=Ne(this,t),a=r.size;return r.set(t,e),this.size+=r.size==a?0:1,this};var He=Te(Object.getPrototypeOf,Object),$e=Function.prototype,Je=Object.prototype,Qe=$e.toString,We=Je.hasOwnProperty,Ye=Qe.call(Object);function Ke(t,e,r){return void 0===r&&(r=e,e=void 0),void 0!==r&&(r=(r=gt(r))==r?r:0),void 0!==e&&(e=(e=gt(e))==e?e:0),function(t,e,r){return t==t&&(void 0!==r&&(t=t<=r?t:r),void 0!==e&&(t=t>=e?t:e)),t}(gt(t),e,r)}function qe(t){var e=this.__data__=new ze(t);this.size=e.size}qe.prototype.clear=function(){this.__data__=new ze,this.size=0},qe.prototype.delete=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r},qe.prototype.get=function(t){return this.__data__.get(t)},qe.prototype.has=function(t){return this.__data__.has(t)},qe.prototype.set=function(t,e){var r=this.__data__;if(r instanceof ze){var a=r.__data__;if(!Fe||a.length<199)return a.push([t,e]),this.size=++r.size,this;r=this.__data__=new Ve(a)}return r.set(t,e),this.size=r.size,this};var Ze="object"==typeof t&&t&&!t.nodeType&&t,Xe=Ze&&"object"==typeof module&&module&&!module.nodeType&&module,tr=Xe&&Xe.exports===Ze?rt.Buffer:void 0,er=tr?tr.allocUnsafe:void 0;function rr(t,e){if(e)return t.slice();var r=t.length,a=er?er(r):new t.constructor(r);return t.copy(a),a}function ar(){return[]}var nr=Object.prototype.propertyIsEnumerable,or=Object.getOwnPropertySymbols,ir=or?function(t){return null==t?[]:(t=Object(t),function(t,e){for(var r=-1,a=null==t?0:t.length,n=0,o=[];++r<a;){var i=t[r];e(i,r,t)&&(o[n++]=i)}return o}(or(t),(function(e){return nr.call(t,e)})))}:ar;var sr=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)Ge(e,ir(t)),t=He(t);return e}:ar;function cr(t,e,r){var a=e(t);return dt(t)?a:Ge(a,r(t))}function ur(t){return cr(t,Me,ir)}function lr(t){return cr(t,Be,sr)}var pr=Rt(rt,"DataView"),dr=Rt(rt,"Promise"),fr=Rt(rt,"Set"),vr=Tt(pr),hr=Tt(Fe),br=Tt(dr),mr=Tt(fr),yr=Tt(kt),gr=lt;(pr&&"[object DataView]"!=gr(new pr(new ArrayBuffer(1)))||Fe&&"[object Map]"!=gr(new Fe)||dr&&"[object Promise]"!=gr(dr.resolve())||fr&&"[object Set]"!=gr(new fr)||kt&&"[object WeakMap]"!=gr(new kt))&&(gr=function(t){var e=lt(t),r="[object Object]"==e?t.constructor:void 0,a=r?Tt(r):"";if(a)switch(a){case vr:return"[object DataView]";case hr:return"[object Map]";case br:return"[object Promise]";case mr:return"[object Set]";case yr:return"[object WeakMap]"}return e});var wr=gr,Or=Object.prototype.hasOwnProperty;var jr=rt.Uint8Array;function _r(t){var e=new t.constructor(t.byteLength);return new jr(e).set(new jr(t)),e}var Dr=/\w*$/;var Sr=at?at.prototype:void 0,Tr=Sr?Sr.valueOf:void 0;function Ar(t,e){var r=e?_r(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}function Cr(t,e,r){var a,n,o,i=t.constructor;switch(e){case"[object ArrayBuffer]":return _r(t);case"[object Boolean]":case"[object Date]":return new i(+t);case"[object DataView]":return function(t,e){var r=e?_r(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}(t,r);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return Ar(t,r);case"[object Map]":return new i;case"[object Number]":case"[object String]":return new i(t);case"[object RegExp]":return(o=new(n=t).constructor(n.source,Dr.exec(n))).lastIndex=n.lastIndex,o;case"[object Set]":return new i;case"[object Symbol]":return a=t,Tr?Object(Tr.call(a)):{}}}function Mr(t){return"function"!=typeof t.constructor||ie(t)?{}:Lt(He(t))}var xr=Oe&&Oe.isMap,Er=xr?me(xr):function(t){return pt(t)&&"[object Map]"==wr(t)};var Br=Oe&&Oe.isSet,Pr=Br?me(Br):function(t){return pt(t)&&"[object Set]"==wr(t)},Rr={};function kr(t,e,r,a,n,o){var i,s=1&e,c=2&e,u=4&e;if(r&&(i=n?r(t,a,n,o):r(t)),void 0!==i)return i;if(!ft(t))return t;var l=dt(t);if(l){if(i=function(t){var e=t.length,r=new t.constructor(e);return e&&"string"==typeof t[0]&&Or.call(t,"index")&&(r.index=t.index,r.input=t.input),r}(t),!s)return zt(t,i)}else{var p=wr(t),d="[object Function]"==p||"[object GeneratorFunction]"==p;if(he(t))return rr(t,s);if("[object Object]"==p||"[object Arguments]"==p||d&&!n){if(i=c||d?{}:Mr(t),!s)return c?function(t,e){return te(t,sr(t),e)}(t,function(t,e){return t&&te(e,Be(e),t)}(i,t)):function(t,e){return te(t,ir(t),e)}(t,function(t,e){return t&&te(e,Me(e),t)}(i,t))}else{if(!Rr[p])return n?t:{};i=Cr(t,p,s)}}o||(o=new qe);var f=o.get(t);if(f)return f;o.set(t,i),Pr(t)?t.forEach((function(a){i.add(kr(a,e,r,a,t,o))})):Er(t)&&t.forEach((function(a,n){i.set(n,kr(a,e,r,n,t,o))}));var v=u?c?lr:ur:c?keysIn:Me,h=l?void 0:v(t);return function(t,e){for(var r=-1,a=null==t?0:t.length;++r<a&&!1!==e(t[r],r,t););}(h||t,(function(a,n){h&&(a=t[n=a]),Xt(i,n,kr(a,e,r,n,t,o))})),i}Rr["[object Arguments]"]=Rr["[object Array]"]=Rr["[object ArrayBuffer]"]=Rr["[object DataView]"]=Rr["[object Boolean]"]=Rr["[object Date]"]=Rr["[object Float32Array]"]=Rr["[object Float64Array]"]=Rr["[object Int8Array]"]=Rr["[object Int16Array]"]=Rr["[object Int32Array]"]=Rr["[object Map]"]=Rr["[object Number]"]=Rr["[object Object]"]=Rr["[object RegExp]"]=Rr["[object Set]"]=Rr["[object String]"]=Rr["[object Symbol]"]=Rr["[object Uint8Array]"]=Rr["[object Uint8ClampedArray]"]=Rr["[object Uint16Array]"]=Rr["[object Uint32Array]"]=!0,Rr["[object Error]"]=Rr["[object Function]"]=Rr["[object WeakMap]"]=!1;function Ir(t){return kr(t,5)}function Lr(t){var e=-1,r=null==t?0:t.length;for(this.__data__=new Ve;++e<r;)this.add(t[e])}function Ur(t,e){return t.has(e)}function zr(t){var e=-1,r=Array(t.size);return t.forEach((function(t){r[++e]=t})),r}Lr.prototype.add=Lr.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Lr.prototype.has=function(t){return this.__data__.has(t)};var Fr,Nr=function(t,e,r){for(var a=-1,n=Object(t),o=r(t),i=o.length;i--;){var s=o[Fr?i:++a];if(!1===e(n[s],s,n))break}return t},Vr=function(){return rt.Date.now()},Gr=Math.max,Hr=Math.min;function $r(t,e,r){var a,n,o,i,s,c,u=0,l=!1,p=!1,d=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function f(e){var r=a,o=n;return a=n=void 0,u=e,i=t.apply(o,r)}function v(t){return u=t,s=setTimeout(b,e),l?f(t):i}function h(t){var r=t-c;return void 0===c||r>=e||r<0||p&&t-u>=o}function b(){var t=Vr();if(h(t))return m(t);s=setTimeout(b,function(t){var r=e-(t-c);return p?Hr(r,o-(t-u)):r}(t))}function m(t){return s=void 0,d&&a?f(t):(a=n=void 0,i)}function y(){var t=Vr(),r=h(t);if(a=arguments,n=this,c=t,r){if(void 0===s)return v(c);if(p)return clearTimeout(s),s=setTimeout(b,e),f(c)}return void 0===s&&(s=setTimeout(b,e)),i}return e=gt(e)||0,ft(r)&&(l=!!r.leading,o=(p="maxWait"in r)?Gr(gt(r.maxWait)||0,e):o,d="trailing"in r?!!r.trailing:d),y.cancel=function(){void 0!==s&&clearTimeout(s),u=0,a=c=n=s=void 0},y.flush=function(){return void 0===s?i:m(Vr())},y}function Jr(t,e,r){(void 0===r||qt(t[e],r))&&(void 0!==r||e in t)||Kt(t,e,r)}function Qr(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}function Wr(t,e,r,a,n,o,i){var s=Qr(t,r),c=Qr(e,r),u=i.get(c);if(u)Jr(t,r,u);else{var l,p=o?o(s,c,r+"",t,e,i):void 0,d=void 0===p;if(d){var f=dt(c),v=!f&&he(c),h=!f&&!v&&_e(c);p=c,f||v||h?dt(s)?p=s:pt(l=s)&&ne(l)?p=zt(s):v?(d=!1,p=rr(c,!0)):h?(d=!1,p=Ar(c,!0)):p=[]:function(t){if(!pt(t)||"[object Object]"!=lt(t))return!1;var e=He(t);if(null===e)return!0;var r=We.call(e,"constructor")&&e.constructor;return"function"==typeof r&&r instanceof r&&Qe.call(r)==Ye}(c)||pe(c)?(p=s,pe(s)?p=function(t){return te(t,Be(t))}(s):ft(s)&&!Ot(s)||(p=Mr(c))):d=!1}d&&(i.set(c,p),n(p,c,a,o,i),i.delete(c)),Jr(t,r,p)}}function Yr(t,e,r,a,n){t!==e&&Nr(e,(function(o,i){if(n||(n=new qe),ft(o))Wr(t,e,i,r,Yr,a,n);else{var s=a?a(Qr(t,i),o,i+"",t,e,n):void 0;void 0===s&&(s=o),Jr(t,i,s)}}),Be)}function Kr(t,e,r){for(var a=-1,n=null==t?0:t.length;++a<n;)if(r(e,t[a]))return!0;return!1}var qr,Zr,Xr=(qr=function(t,e,r){Yr(t,e,r)},re((function(t,e){var r=-1,a=e.length,n=a>1?e[a-1]:void 0,o=a>2?e[2]:void 0;for(n=qr.length>3&&"function"==typeof n?(a--,n):void 0,o&&function(t,e,r){if(!ft(r))return!1;var a=typeof e;return!!("number"==a?ne(r)&&Yt(e,r.length):"string"==a&&e in r)&&qt(r[e],t)}(e[0],e[1],o)&&(n=a<3?void 0:n,a=1),t=Object(t);++r<a;){var i=e[r];i&&qr(t,i,r,n)}return t}))),ta=fr&&1/zr(new fr([,-0]))[1]==1/0?function(t){return new fr(t)}:function(){};function ea(t){return t&&t.length?function(t,e,r){var a=-1,n=Qt,o=t.length,i=!0,s=[],c=s;if(r)i=!1,n=Kr;else if(o>=200){var u=e?null:ta(t);if(u)return zr(u);i=!1,n=Ur,c=new Lr}else c=e?[]:s;t:for(;++a<o;){var l=t[a],p=e?e(l):l;if(l=r||0!==l?l:0,i&&p==p){for(var d=c.length;d--;)if(c[d]===p)continue t;e&&c.push(p),s.push(l)}else n(c,p,r)||(c!==s&&c.push(p),s.push(l))}return s}(t):[]}!function(t){t.debounce=$r,t.clone=Ir,t.merge=Xr,t.removeArrayDuplicates=ea,t.clamp=Ke,t.getDimensions=function(t){return{width:parseFloat(t.style.width.replace("px","")||t.offsetWidth),height:parseFloat(t.style.height.replace("px","")||t.offsetHeight)}},t.getTranslationValues=function(t){var e=t.getAttribute("transform").match(/translate\([0-9]+\.?[0-9]*,[0-9]+\.?[0-9]*\)/);if(e[0]){var r=e[0].replace(/translate\(/,"").replace(/\)/,"").split(",");return{tx:r[0],ty:r[1]}}return null},t.getTranformOffsets=function(t){var e=/\(([^)]+)\)/.exec(t)[1].split(",");return{x:parseFloat(e[0]),y:parseFloat(e[1])}},t.capitalizeFirstLetter=function(t){return t[0].toUpperCase()+t.slice(1)},t.convertValueToPercentage=function(t,e){var r=t/e.reduce((function(t,e){return t+e.value}),0)*100;return r<1?r.toPrecision(1):Math.floor(r)},t.arrayDifferences=function(t,e){var r={missing:[],added:[]};return t.forEach((function(t){-1===e.indexOf(t)&&r.missing.push(t)})),e.forEach((function(e){-1===t.indexOf(e)&&r.added.push(e)})),r},t.getDuplicateValues=function(t){var e=[],r=[];return t.forEach((function(t){-1!==e.indexOf(t)&&-1===r.indexOf(t)&&r.push(t),e.push(t)})),r},t.moveToFront=function(t){return t.each((function(){this.parentNode.appendChild(this)}))},t.getProperty=function(t){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];var a=t;if(a){for(var n=0,o=e;n<o.length;n++){var i=o[n];if(null===a[i]||void 0===a[i])return null;a=a[i]}return a}return null},t.flipSVGCoordinatesBasedOnOrientation=function(t,e){return e===c.HORIZONTAL?{y0:t.x0,y1:t.x1,x0:t.y0,x1:t.y1}:t},t.generateSVGPathString=function(e,r){var a=t.flipSVGCoordinatesBasedOnOrientation(e,r),n=a.x0,o=a.x1,i=a.y0,s=a.y1;return"M"+n+","+i+"L"+n+","+s+"L"+o+","+s+"L"+o+","+i+"L"+n+","+i}}(Zr||(Zr={}));var ra=Zr.merge({},Q,{title:"Step (discrete)",curve:"curveStepAfter"}),aa=J,na=Zr.merge({},Y,{title:"Step (time series)",curve:"curveStepAfter"}),oa=W;function ia(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function sa(t,e){return t(e={exports:{}},e.exports),e.exports}var ca=sa((function(t){var e=function(){var t=String.fromCharCode,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",a={};function n(t,e){if(!a[t]){a[t]={};for(var r=0;r<t.length;r++)a[t][t.charAt(r)]=r}return a[t][e]}var o={compressToBase64:function(t){if(null==t)return"";var r=o._compress(t,6,(function(t){return e.charAt(t)}));switch(r.length%4){default:case 0:return r;case 1:return r+"===";case 2:return r+"==";case 3:return r+"="}},decompressFromBase64:function(t){return null==t?"":""==t?null:o._decompress(t.length,32,(function(r){return n(e,t.charAt(r))}))},compressToUTF16:function(e){return null==e?"":o._compress(e,15,(function(e){return t(e+32)}))+" "},decompressFromUTF16:function(t){return null==t?"":""==t?null:o._decompress(t.length,16384,(function(e){return t.charCodeAt(e)-32}))},compressToUint8Array:function(t){for(var e=o.compress(t),r=new Uint8Array(2*e.length),a=0,n=e.length;a<n;a++){var i=e.charCodeAt(a);r[2*a]=i>>>8,r[2*a+1]=i%256}return r},decompressFromUint8Array:function(e){if(null==e)return o.decompress(e);for(var r=new Array(e.length/2),a=0,n=r.length;a<n;a++)r[a]=256*e[2*a]+e[2*a+1];var i=[];return r.forEach((function(e){i.push(t(e))})),o.decompress(i.join(""))},compressToEncodedURIComponent:function(t){return null==t?"":o._compress(t,6,(function(t){return r.charAt(t)}))},decompressFromEncodedURIComponent:function(t){return null==t?"":""==t?null:(t=t.replace(/ /g,"+"),o._decompress(t.length,32,(function(e){return n(r,t.charAt(e))})))},compress:function(e){return o._compress(e,16,(function(e){return t(e)}))},_compress:function(t,e,r){if(null==t)return"";var a,n,o,i={},s={},c="",u="",l="",p=2,d=3,f=2,v=[],h=0,b=0;for(o=0;o<t.length;o+=1)if(c=t.charAt(o),Object.prototype.hasOwnProperty.call(i,c)||(i[c]=d++,s[c]=!0),u=l+c,Object.prototype.hasOwnProperty.call(i,u))l=u;else{if(Object.prototype.hasOwnProperty.call(s,l)){if(l.charCodeAt(0)<256){for(a=0;a<f;a++)h<<=1,b==e-1?(b=0,v.push(r(h)),h=0):b++;for(n=l.charCodeAt(0),a=0;a<8;a++)h=h<<1|1&n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n>>=1}else{for(n=1,a=0;a<f;a++)h=h<<1|n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n=0;for(n=l.charCodeAt(0),a=0;a<16;a++)h=h<<1|1&n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n>>=1}0==--p&&(p=Math.pow(2,f),f++),delete s[l]}else for(n=i[l],a=0;a<f;a++)h=h<<1|1&n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n>>=1;0==--p&&(p=Math.pow(2,f),f++),i[u]=d++,l=String(c)}if(""!==l){if(Object.prototype.hasOwnProperty.call(s,l)){if(l.charCodeAt(0)<256){for(a=0;a<f;a++)h<<=1,b==e-1?(b=0,v.push(r(h)),h=0):b++;for(n=l.charCodeAt(0),a=0;a<8;a++)h=h<<1|1&n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n>>=1}else{for(n=1,a=0;a<f;a++)h=h<<1|n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n=0;for(n=l.charCodeAt(0),a=0;a<16;a++)h=h<<1|1&n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n>>=1}0==--p&&(p=Math.pow(2,f),f++),delete s[l]}else for(n=i[l],a=0;a<f;a++)h=h<<1|1&n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n>>=1;0==--p&&(p=Math.pow(2,f),f++)}for(n=2,a=0;a<f;a++)h=h<<1|1&n,b==e-1?(b=0,v.push(r(h)),h=0):b++,n>>=1;for(;;){if(h<<=1,b==e-1){v.push(r(h));break}b++}return v.join("")},decompress:function(t){return null==t?"":""==t?null:o._decompress(t.length,32768,(function(e){return t.charCodeAt(e)}))},_decompress:function(e,r,a){var n,o,i,s,c,u,l,p=[],d=4,f=4,v=3,h="",b=[],m={val:a(0),position:r,index:1};for(n=0;n<3;n+=1)p[n]=n;for(i=0,c=Math.pow(2,2),u=1;u!=c;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=r,m.val=a(m.index++)),i|=(s>0?1:0)*u,u<<=1;switch(i){case 0:for(i=0,c=Math.pow(2,8),u=1;u!=c;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=r,m.val=a(m.index++)),i|=(s>0?1:0)*u,u<<=1;l=t(i);break;case 1:for(i=0,c=Math.pow(2,16),u=1;u!=c;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=r,m.val=a(m.index++)),i|=(s>0?1:0)*u,u<<=1;l=t(i);break;case 2:return""}for(p[3]=l,o=l,b.push(l);;){if(m.index>e)return"";for(i=0,c=Math.pow(2,v),u=1;u!=c;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=r,m.val=a(m.index++)),i|=(s>0?1:0)*u,u<<=1;switch(l=i){case 0:for(i=0,c=Math.pow(2,8),u=1;u!=c;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=r,m.val=a(m.index++)),i|=(s>0?1:0)*u,u<<=1;p[f++]=t(i),l=f-1,d--;break;case 1:for(i=0,c=Math.pow(2,16),u=1;u!=c;)s=m.val&m.position,m.position>>=1,0==m.position&&(m.position=r,m.val=a(m.index++)),i|=(s>0?1:0)*u,u<<=1;p[f++]=t(i),l=f-1,d--;break;case 2:return b.join("")}if(0==d&&(d=Math.pow(2,v),v++),p[l])h=p[l];else{if(l!==f)return null;h=o+o.charAt(0)}b.push(h),p[f++]=o+h.charAt(0),o=h,0==--d&&(d=Math.pow(2,v),v++)}}};return o}();null!=t&&(t.exports=e)})),ua=sa((function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.getParameters=function(t){return e=JSON.stringify(t),ca.compressToBase64(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"");var e}}));ia(ua);ua.getParameters;var la=sa((function(t,e){e.__esModule=!0,e.getParameters=ua.getParameters}));ia(la);var pa=la.getParameters,da=require("@carbon/charts/package.json").version,fa=function(t){var e={};return Object.keys(t).forEach((function(r){return e[r]={content:t[r]}})),"https://codesandbox.io/api/v1/sandboxes/define?parameters="+pa({files:e})},va={SimpleBarChart:{vanilla:"SimpleBarChart",angular:"ibm-simple-bar-chart",vue:"ccv-simple-bar-chart"},GroupedBarChart:{vanilla:"GroupedBarChart",angular:"ibm-grouped-bar-chart",vue:"ccv-grouped-bar-chart"},StackedBarChart:{vanilla:"StackedBarChart",angular:"ibm-stacked-bar-chart",vue:"ccv-stacked-bar-chart"},BubbleChart:{vanilla:"BubbleChart",angular:"ibm-bubble-chart",vue:"ccv-bubble-chart"},LineChart:{vanilla:"LineChart",angular:"ibm-line-chart",vue:"ccv-line-chart"},ScatterChart:{vanilla:"ScatterChart",angular:"ibm-scatter-chart",vue:"ccv-scatter-chart"},PieChart:{vanilla:"PieChart",angular:"ibm-pie-chart",vue:"ccv-pie-chart"},DonutChart:{vanilla:"DonutChart",angular:"ibm-donut-chart",vue:"ccv-donut-chart"}},ha=[{title:"Bar (vertical)",demos:[{options:D,data:_,chartType:va.SimpleBarChart},{options:M,data:C,chartType:va.SimpleBarChart},{options:S,data:_,chartType:va.SimpleBarChart},{options:w,data:g,chartType:va.GroupedBarChart},{options:P,data:B,chartType:va.StackedBarChart},{options:L,data:I,chartType:va.StackedBarChart}]},{title:"Bar (horizontal)",demos:[{options:A,data:T,chartType:va.SimpleBarChart},{options:x,data:E,chartType:va.SimpleBarChart},{options:j,data:O,chartType:va.GroupedBarChart},{options:k,data:R,chartType:va.StackedBarChart},{options:U,data:z,chartType:va.StackedBarChart}]},{title:"Bubble",demos:[{options:N,data:F,chartType:va.BubbleChart}]},{title:"Donut",demos:[{options:$,data:H,chartType:va.DonutChart}]},{title:"Line",demos:[{options:Y,data:W,chartType:va.LineChart},{options:Q,data:J,chartType:va.LineChart}]},{title:"Pie",demos:[{options:G,data:V,chartType:va.PieChart}]},{title:"Scatter",demos:[{options:X,data:Z,chartType:va.ScatterChart},{options:q,data:K,chartType:va.ScatterChart}]},{title:"Step",demos:[{options:ra,data:aa,chartType:va.LineChart},{options:na,data:oa,chartType:va.LineChart}]}],ba=function(t){return t.replace(/[^\w\s]/gi,"").replace(/\s\s+/g," ").toLowerCase().replace(/\s+/g,"-")},ma=ha=ha.map((function(t){return t.demos=t.demos.map((function(e){return e.title=e.options.title,e.id=ba(t.title)+"--"+ba(e.options.title),e.options.height="400px",e.codesandbox||(e.codesandbox={}),e.codesandbox.react=fa(function(t){var e=JSON.stringify(t.data,null,"\t"),r=JSON.stringify(t.options,null,"\t"),a=t.chartType.vanilla;return{"src/index.html":'<div id="root"></div>\n ',"src/index.js":'import React from "react";\nimport ReactDOM from "react-dom";\nimport { '+a+' } from "@carbon/charts-react";\nimport "@carbon/charts/styles.css";\n// Or\n// import "@carbon/charts/styles/styles.scss";\n\nclass App extends React.Component {\n\tstate = {\n\t\tdata: '+e+",\n\t\toptions: "+r+"\n\t};\n\n\trender = () => (\n\t\t<"+a+"\n\t\t\tdata={this.state.data}\n\t\t\toptions={this.state.options}>\n\t\t</"+a+'>\n\t);\n}\nReactDOM.render(<App />, document.getElementById("root"));\n ',"package.json":{dependencies:{"@carbon/charts":da,"@carbon/charts-react":da,d3:"5.12.0",react:"16.12.0","react-dom":"16.12.0","react-scripts":"3.0.1"}}}}(e)),e.codesandbox.vue=fa(function(t){var e=JSON.stringify(t.data,null,"\t\t"),r=JSON.stringify(t.options,null,"\t\t"),a=t.chartType.vue;return{"src/components/chart.vue":'<script>\nimport Vue from "vue";\nimport "@carbon/charts/styles.css";\nimport chartsVue from "@carbon/charts-vue";\nVue.use(chartsVue);\nexport default {\n\tname: "Chart",\n\tcomponents: {},\n\tdata() {\n\t\treturn {\n\t\t\tdata: '+e+",\n\t\t\toptions: "+r+'\n\t\t};\n\t},\n\ttemplate: "<'+a+' :data="data" :options="options"></'+a+'>"\n};\n<\/script>\n ',"src/App.vue":'<template>\n\t<div id="app">\n\t\t<Chart/>\n\t</div>\n</template>\n<script>\nimport Chart from "./components/chart";\nexport default {\n\tname: "App",\n\tcomponents: {\n\t\tChart\n\t}\n};\n<\/script>\n ',"src/main.js":'import Vue from "vue";\nimport App from "./App.vue";\nVue.config.productionTip = false;\nnew Vue({\n\trender: h => h(App)\n}).$mount("#app");\n',"package.json":JSON.stringify({dependencies:{"@carbon/charts":da,"@carbon/charts-vue":da,"@vue/cli-plugin-babel":"4.1.1",d3:"5.15.0",vue:"^2.6.11"}},null,"\t\t")}}(e)),e.code||(e.code={}),e.code.angular=function(t){var e=JSON.stringify(t.data,null,"\t\t"),r=JSON.stringify(t.options,null,"\t\t"),a=t.chartType.angular;return{"src/index.html":'<!DOCTYPE html>\n<html lang="en">\n\t<head>\n\t\t<meta charset="utf-8" />\n\t\t<title>Angular</title>\n\t</head>\n\t<body>\n\t\t<app-root></app-root>\n\t</body>\n</html>',"src/main.ts":'import { platformBrowserDynamic } from "@angular/platform-browser-dynamic";\nimport { AppModule } from "./app/app.module";\nplatformBrowserDynamic()\n\t.bootstrapModule(AppModule)\n\t.catch(err => console.log(err));\n',"src/app/app.component.html":"<"+a+' [data]="data" [options]="options"></'+a+">","src/app/app.component.ts":'import { Component } from "@angular/core";\n@Component({\n\tselector: "app-root",\n\ttemplateUrl: "./app.component.html"\n})\nexport class AppComponent {\n\tdata = '+e+";\n\toptions = "+r+";\n}","src/app/app.module.ts":'import { NgModule } from "@angular/core";\nimport { BrowserModule } from "@angular/platform-browser";\nimport { ChartsModule } from "@carbon/charts-angular";\nimport { AppComponent } from "./app.component";\n@NgModule({\n\timports: [BrowserModule, ChartsModule],\n\tdeclarations: [AppComponent],\n\tbootstrap: [AppComponent]\n})\nexport class AppModule {}',".angular-cli.json":'{\n\t"apps": [\n\t\t{\n\t\t\t"root": "src",\n\t\t\t"outDir": "dist",\n\t\t\t"assets": ["assets", "favicon.ico"],\n\t\t\t"index": "index.html",\n\t\t\t"main": "main.ts",\n\t\t\t"polyfills": "polyfills.ts",\n\t\t\t"prefix": "app",\n\t\t\t"styles": ["styles.css"],\n\t\t\t"scripts": [],\n\t\t\t"environmentSource": "environments/environment.ts",\n\t\t\t"environments": {\n\t\t\t\t"dev": "environments/environment.ts",\n\t\t\t\t"prod": "environments/environment.prod.ts"\n\t\t\t}\n\t\t}\n\t]\n}',"package.json":JSON.stringify({dependencies:{"@angular/animations":"8.2.14","@angular/common":"8.2.14","@angular/compiler":"8.2.14","@angular/core":"8.2.14","@angular/forms":"8.2.14","@angular/platform-browser":"8.2.14","@angular/platform-browser-dynamic":"8.2.14","@angular/router":"8.2.14","@carbon/charts":da,"@carbon/charts-angular":da,"core-js":"3.6.0",d3:"5.15.0",rxjs:"6.5.3","zone.js":"0.10.2"}},null,"\t")}}(e),e})),t}));t.bubbleData=F,t.bubbleOptions=N,t.chartTypes=va,t.demoGroups=ma,t.donutData=H,t.donutOptions=$,t.groupedBarData=g,t.groupedBarOptions=w,t.groupedHorizontalBarData=O,t.groupedHorizontalBarOptions=j,t.lineData=J,t.lineOptions=Q,t.lineTimeSeriesData=W,t.lineTimeSeriesOptions=Y,t.pieData=V,t.pieOptions=G,t.scatterData=K,t.scatterOptions=q,t.scatterTimeSeriesData=Z,t.scatterTimeSeriesOptions=X,t.simpleBarData=_,t.simpleBarFixedDomainOptions=S,t.simpleBarOptions=D,t.simpleBarTimeSeriesData=C,t.simpleBarTimeSeriesOptions=M,t.simpleHorizontalBarData=T,t.simpleHorizontalBarOptions=A,t.simpleHorizontalBarTimeSeriesData=E,t.simpleHorizontalBarTimeSeriesOptions=x,t.stackedBarData=B,t.stackedBarOptions=P,t.stackedBarTimeSeriesData=I,t.stackedBarTimeSeriesOptions=L,t.stackedHorizontalBarData=R,t.stackedHorizontalBarOptions=k,t.stackedHorizontalBarTimeSeriesData=z,t.stackedHorizontalBarTimeSeriesOptions=U,t.stepData=aa,t.stepOptions=ra,t.stepTimeSeriesData=oa,t.stepTimeSeriesOptions=na,Object.defineProperty(t,"__esModule",{value:!0})}));
@@ -362,8 +362,8 @@
362
362
  "signature": "fa19d53832e7a2e867b5800a08f68e363e2ef58da4443cd420e8bf7b6b21a996"
363
363
  },
364
364
  "../../src/components/axes/axis.ts": {
365
- "version": "9f5b497c91bf9068a6d1db498b53f2e42943fce70ced2b443fbe5ea4dbc68ac5",
366
- "signature": "9f5b497c91bf9068a6d1db498b53f2e42943fce70ced2b443fbe5ea4dbc68ac5"
365
+ "version": "04ee35d144b03e581383da4b2fae10d9764d171a862958f20f0a29a909ee574e",
366
+ "signature": "04ee35d144b03e581383da4b2fae10d9764d171a862958f20f0a29a909ee574e"
367
367
  },
368
368
  "../../src/components/axes/grid.ts": {
369
369
  "version": "cd1cf7bc95afbb710c2a1a716ec9eb12315877f9e84cfc84e1ffb7f0b0057847",
@@ -430,8 +430,8 @@
430
430
  "signature": "3a7e99b38baf42336c2e80414fb5eb50aac24f172499b30a80579eeb2d14c0e7"
431
431
  },
432
432
  "../../src/configuration.ts": {
433
- "version": "d0cf7d5d839a946b0f624eb7ea9ab0a2c27fb4a38a8723f8d2568fa96ec556f1",
434
- "signature": "d0cf7d5d839a946b0f624eb7ea9ab0a2c27fb4a38a8723f8d2568fa96ec556f1"
433
+ "version": "af3bce871faaf063dea15a1c3a04a46956898a4f30fd2163769a1d70268e9b99",
434
+ "signature": "af3bce871faaf063dea15a1c3a04a46956898a4f30fd2163769a1d70268e9b99"
435
435
  },
436
436
  "../../src/services/colorPalettes.ts": {
437
437
  "version": "e4f5595f10b6565508dbd77a53decb500b0318494090c2b250b960855452cf1c",
@@ -466,8 +466,8 @@
466
466
  "signature": "3ab2b65b9a3eb5cae714127d833cdea81dacb9db3bf3716f0941dcb5c5f49941"
467
467
  },
468
468
  "../../src/tools.ts": {
469
- "version": "3edd240f2ce70c091314455e57e8dece4d35f29cc4b675d526481cab575bede6",
470
- "signature": "3edd240f2ce70c091314455e57e8dece4d35f29cc4b675d526481cab575bede6"
469
+ "version": "710f1aebe8386c60441d21ed52fa29f4f15b5a94b90771840ac663f22ae8183e",
470
+ "signature": "710f1aebe8386c60441d21ed52fa29f4f15b5a94b90771840ac663f22ae8183e"
471
471
  },
472
472
  "../../demo/demo-data/step.ts": {
473
473
  "version": "c2d14d34e0b585ddf21829d208e72d2b3d462d2e5bb5b2564b24778d5482cda6",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@carbon/charts",
3
- "version": "0.29.7",
3
+ "version": "0.29.8",
4
4
  "description": "Carbon charting components",
5
5
  "main": "./bundle.js",
6
6
  "module": "./index.js",
package/tools.d.ts CHANGED
@@ -4,6 +4,7 @@ export declare namespace Tools {
4
4
  export const clone: any;
5
5
  export const merge: any;
6
6
  export const removeArrayDuplicates: any;
7
+ export const clamp: any;
7
8
  /**************************************
8
9
  * DOM-related operations *
9
10
  *************************************/
package/tools.js CHANGED
@@ -1,6 +1,6 @@
1
1
  // Internal imports
2
2
  import { CartesianOrientations } from "./interfaces";
3
- import { debounce as lodashDebounce, merge as lodashMerge, cloneDeep as lodashCloneDeep, uniq as lodashUnique } from "lodash-es";
3
+ import { debounce as lodashDebounce, merge as lodashMerge, cloneDeep as lodashCloneDeep, uniq as lodashUnique, clamp as lodashClamp } from "lodash-es";
4
4
  // Functions
5
5
  export var Tools;
6
6
  (function (Tools) {
@@ -9,6 +9,7 @@ export var Tools;
9
9
  Tools.clone = lodashCloneDeep;
10
10
  Tools.merge = lodashMerge;
11
11
  Tools.removeArrayDuplicates = lodashUnique;
12
+ Tools.clamp = lodashClamp;
12
13
  /**************************************
13
14
  * DOM-related operations *
14
15
  *************************************/