@wavemaker/app-rn-runtime 11.5.1-next.40401 → 11.5.1-rc.154

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.
Files changed (52) hide show
  1. app-rn-runtime/components/basic/buttongroup/buttongroup.styles.js +4 -2
  2. app-rn-runtime/components/basic/buttongroup/buttongroup.styles.js.map +1 -1
  3. app-rn-runtime/components/basic/label/label.component.js +1 -2
  4. app-rn-runtime/components/basic/label/label.component.js.map +1 -1
  5. app-rn-runtime/components/basic/label/label.props.js +0 -1
  6. app-rn-runtime/components/basic/label/label.props.js.map +1 -1
  7. app-rn-runtime/components/chart/area-chart/area-chart.component.js +28 -28
  8. app-rn-runtime/components/chart/area-chart/area-chart.component.js.map +1 -1
  9. app-rn-runtime/components/chart/area-chart/area-chart.props.js +9 -1
  10. app-rn-runtime/components/chart/area-chart/area-chart.props.js.map +1 -1
  11. app-rn-runtime/components/chart/bar-chart/bar-chart.component.js +15 -20
  12. app-rn-runtime/components/chart/bar-chart/bar-chart.component.js.map +1 -1
  13. app-rn-runtime/components/chart/basechart.component.js +83 -55
  14. app-rn-runtime/components/chart/basechart.component.js.map +1 -1
  15. app-rn-runtime/components/chart/basechart.props.js +9 -5
  16. app-rn-runtime/components/chart/basechart.props.js.map +1 -1
  17. app-rn-runtime/components/chart/basechart.styles.js +26 -3
  18. app-rn-runtime/components/chart/basechart.styles.js.map +1 -1
  19. app-rn-runtime/components/chart/line-chart/line-chart.component.js +45 -23
  20. app-rn-runtime/components/chart/line-chart/line-chart.component.js.map +1 -1
  21. app-rn-runtime/components/chart/line-chart/line-chart.props.js +1 -0
  22. app-rn-runtime/components/chart/line-chart/line-chart.props.js.map +1 -1
  23. app-rn-runtime/components/chart/pie-chart/pie-chart.component.js.map +1 -1
  24. app-rn-runtime/components/container/wizard/wizard.component.js +97 -5
  25. app-rn-runtime/components/container/wizard/wizard.component.js.map +1 -1
  26. app-rn-runtime/components/container/wizard/wizard.props.js +4 -0
  27. app-rn-runtime/components/container/wizard/wizard.props.js.map +1 -1
  28. app-rn-runtime/components/container/wizard/wizard.styles.js +103 -5
  29. app-rn-runtime/components/container/wizard/wizard.styles.js.map +1 -1
  30. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.component.js +0 -8
  31. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.component.js.map +1 -1
  32. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.props.js +1 -0
  33. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.props.js.map +1 -1
  34. app-rn-runtime/components/data/list/list.component.js +2 -3
  35. app-rn-runtime/components/data/list/list.component.js.map +1 -1
  36. app-rn-runtime/components/input/basenumber/basenumber.component.js +41 -7
  37. app-rn-runtime/components/input/basenumber/basenumber.component.js.map +1 -1
  38. app-rn-runtime/components/input/basenumber/basenumber.props.js +1 -0
  39. app-rn-runtime/components/input/basenumber/basenumber.props.js.map +1 -1
  40. app-rn-runtime/components/input/currency/currency.component.js +4 -1
  41. app-rn-runtime/components/input/currency/currency.component.js.map +1 -1
  42. app-rn-runtime/components/input/number/number.component.js +4 -1
  43. app-rn-runtime/components/input/number/number.component.js.map +1 -1
  44. app-rn-runtime/components/navigation/basenav/basenav.component.js +2 -1
  45. app-rn-runtime/components/navigation/basenav/basenav.component.js.map +1 -1
  46. app-rn-runtime/core/utils.js +16 -0
  47. app-rn-runtime/core/utils.js.map +1 -1
  48. app-rn-runtime/package.json +3 -3
  49. app-rn-runtime/variables/service-variable.js +0 -1
  50. app-rn-runtime/variables/service-variable.js.map +1 -1
  51. app-rn-runtime/components/chart/staticdata.js +0 -215
  52. app-rn-runtime/components/chart/staticdata.js.map +0 -1
@@ -10,7 +10,6 @@ import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/cor
10
10
  import WmIcon from "@wavemaker/app-rn-runtime/components/basic/icon/icon.component";
11
11
  import ThemeFactory from "@wavemaker/app-rn-runtime/components/chart/theme/chart.theme";
12
12
  import { DEFAULT_CLASS } from "./basechart.styles";
13
- import { constructSampleData, getChartType } from "./staticdata";
14
13
  export class BaseChartComponentState extends BaseComponentState {
15
14
  constructor() {
16
15
  super(...arguments);
@@ -85,12 +84,13 @@ export class BaseChartComponent extends BaseComponent {
85
84
  if (this.state.props.showlegend === 'hide') {
86
85
  return null;
87
86
  }
88
- let top = this.props.showlegend === 'bottom' ? parseInt(this.styles.root.height) : 0;
87
+ const props = this.state.props;
88
+ let top = props.showlegend === 'bottom' ? parseInt(this.styles.root.height) : 0;
89
89
  if (top) {
90
90
  top = top - 50; // remove legendHeight
91
91
  }
92
92
 
93
- const orientation = this.props.showlegend === 'right' || this.props.showlegend === 'left' ? 'vertical' : 'horizontal';
93
+ const orientation = props.showlegend === 'right' || props.showlegend === 'left' ? 'vertical' : 'horizontal';
94
94
  return /*#__PURE__*/React.createElement(VictoryLegend, {
95
95
  colorScale: colorScale,
96
96
  name: 'legendData',
@@ -115,41 +115,75 @@ export class BaseChartComponent extends BaseComponent {
115
115
  }
116
116
  // x axis with vertical lines having grid stroke colors
117
117
  getXaxis() {
118
+ const minIndex = 0;
119
+ const maxIndex = this.state.xaxisDatakeyArr.length - 1;
120
+ const props = this.state.props;
121
+ const getTickValueLabel = props.xtickexpr;
118
122
  return /*#__PURE__*/React.createElement(VictoryAxis, {
119
- crossAxis: true,
120
- label: (this.props.xaxislabel || this.props.xaxisdatakey || "name") + (this.props.xunits ? `(${this.props.xunits})` : ''),
123
+ crossAxis: false,
124
+ label: (props.xaxislabel || props.xaxisdatakey || "name") + (props.xunits ? `(${props.xunits})` : ''),
121
125
  style: {
122
- grid: this.styles.grid,
123
- axis: {
124
- stroke: this.props.showxaxis === false ? 'none' : '#000000'
125
- }
126
+ axisLabel: this.theme.mergeStyle(this.styles.axisLabel, this.styles.yAxisLabel, {
127
+ padding: props.yaxislabeldistance
128
+ }),
129
+ grid: props.hidegridxaxis ? {
130
+ stroke: null
131
+ } : this.theme.mergeStyle(this.styles.grid, this.styles.xGrid),
132
+ axis: props.showxaxis === false ? {
133
+ stroke: 'none'
134
+ } : this.theme.mergeStyle(this.styles.axis, this.styles.xAxis),
135
+ ticks: this.theme.mergeStyle(this.styles.ticks, this.styles.xTicks),
136
+ tickLabels: this.theme.mergeStyle(this.styles.tickLabels, this.styles.xTickLabels)
126
137
  },
127
- fixLabelOverlap: false,
138
+ fixLabelOverlap: props.autoadjustlabels ? true : false,
128
139
  tickLabelComponent: /*#__PURE__*/React.createElement(VictoryLabel, {
129
- angle: this.props.labelangle || 0
140
+ angle: props.labelangle || 0
130
141
  }),
131
142
  theme: this.state.theme,
132
143
  tickCount: this.state.xaxisDatakeyArr.length,
133
- tickFormat: d => `${this.state.xaxisDatakeyArr[d] ? this.state.xaxisDatakeyArr[d] : ''}`
144
+ invertAxis: this.isRTL,
145
+ tickFormat: (d, i, ticks) => {
146
+ if (getTickValueLabel) {
147
+ return getTickValueLabel(this.state.xaxisDatakeyArr[d], i, (ticks || []).length);
148
+ } else if (this.state.xaxisDatakeyArr) {
149
+ return this.state.xaxisDatakeyArr[d];
150
+ }
151
+ return '';
152
+ }
134
153
  });
135
154
  }
136
155
 
137
156
  /* y axis with horizontal lines having grid stroke colors*/
138
157
  getYAxis() {
158
+ const props = this.state.props;
159
+ if (props.showyaxis === false) {
160
+ return null;
161
+ }
162
+ const getTickValueLabel = props.ytickexpr;
139
163
  return /*#__PURE__*/React.createElement(VictoryAxis, {
140
- crossAxis: true,
141
- label: (this.props.yaxislabel || this.props.yaxisdatakey || "datavalue") + (this.props.yunits ? `(${this.props.yunits})` : ''),
164
+ crossAxis: false,
165
+ label: (props.yaxislabel || props.yaxisdatakey) + (props.yunits ? `(${props.yunits})` : ''),
142
166
  style: {
143
- axisLabel: {
144
- padding: this.props.yaxislabeldistance
145
- },
146
- grid: this.styles.grid,
147
- axis: {
148
- stroke: this.props.showyaxis === false ? 'none' : '#000000'
149
- }
167
+ axisLabel: this.theme.mergeStyle(this.styles.axisLabel, this.styles.yAxisLabel, {
168
+ padding: props.yaxislabeldistance
169
+ }),
170
+ grid: props.hidegridyaxis ? {
171
+ stroke: null
172
+ } : this.theme.mergeStyle(this.styles.grid, this.styles.yGrid),
173
+ axis: props.showxaxis === false ? {
174
+ stroke: 'none'
175
+ } : this.theme.mergeStyle(this.styles.axis, this.styles.yAxis),
176
+ ticks: this.theme.mergeStyle(this.styles.ticks, this.styles.yTicks),
177
+ tickLabels: this.theme.mergeStyle(this.styles.tickLabels, this.styles.yTickLabels)
150
178
  },
179
+ fixLabelOverlap: props.autoadjustlabels ? true : false,
151
180
  theme: this.state.theme,
152
- tickFormat: t => `${this.abbreviateNumber(t)}`,
181
+ tickFormat: (d, i, ticks) => {
182
+ if (getTickValueLabel) {
183
+ return getTickValueLabel(d, i, (ticks || []).length);
184
+ }
185
+ return this.abbreviateNumber(d);
186
+ },
153
187
  dependentAxis: true
154
188
  });
155
189
  }
@@ -161,7 +195,8 @@ export class BaseChartComponent extends BaseComponent {
161
195
 
162
196
  // Check whether X/Y Domain was set to Min and is supported for the present chart
163
197
  isAxisDomainValid(axis) {
164
- if (get(this.props, axis + 'domain') === 'Min' && this.isAxisDomainSupported(this.props.type)) {
198
+ const props = this.state.props;
199
+ if (get(props, axis + 'domain') === 'Min' && this.isAxisDomainSupported(props.type)) {
165
200
  return true;
166
201
  }
167
202
  return false;
@@ -211,7 +246,7 @@ export class BaseChartComponent extends BaseComponent {
211
246
  }
212
247
  const xValues = {};
213
248
  /*
214
- compute the min x value
249
+ compute the min x valuex
215
250
  eg: When data has objects
216
251
  input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]
217
252
  min x: 1
@@ -301,12 +336,9 @@ export class BaseChartComponent extends BaseComponent {
301
336
  let themeToUse;
302
337
  if (typeof themeName === 'string') {
303
338
  if (!colorsToUse.length) {
304
- colorsToUse = props.customcolors;
305
- }
306
- if (props.customcolors === undefined) {
307
339
  colorsToUse = ThemeFactory.getColorsObj(themeName);
308
340
  }
309
- themeToUse = ThemeFactory.getTheme(themeName, this.props.styles, colorsToUse);
341
+ themeToUse = ThemeFactory.getTheme(themeName, props.styles, colorsToUse);
310
342
  } else if (typeof themeName === 'object') {
311
343
  // if theme is passed as an object then use that custom theme.
312
344
  themeToUse = props.theme;
@@ -317,9 +349,10 @@ export class BaseChartComponent extends BaseComponent {
317
349
  });
318
350
  }
319
351
  prepareLegendData() {
352
+ const props = this.state.props;
320
353
  if (this.state.yAxis) {
321
354
  let ldata;
322
- if (this.props.type === 'Stack') {
355
+ if (props.type === 'Stack') {
323
356
  const data = orderBy(this.state.data[0], 'y', 'asc');
324
357
  ldata = data.map(d => {
325
358
  return {
@@ -365,23 +398,18 @@ export class BaseChartComponent extends BaseComponent {
365
398
  // If date string is bound to xaxis then we are pushing the x values as indexes.
366
399
  getxAxisVal(dataObj, xKey, index, xaxisDatakeyArr) {
367
400
  const value = get(dataObj, xKey);
368
- if (moment(value).isValid() || isNaN(value) || typeof value === 'string' || typeof value === 'number') {
401
+ if (moment(value, true).isValid() || isNaN(value)) {
369
402
  xaxisDatakeyArr.push(value);
370
403
  return index;
371
404
  }
372
405
  return value;
373
406
  }
374
407
  prepareDataItems(dataset) {
375
- let xaxis = this.props.xaxisdatakey;
376
- let yaxis = this.props.yaxisdatakey;
408
+ const props = this.state.props;
409
+ let xaxis = props.xaxisdatakey;
410
+ let yaxis = props.yaxisdatakey;
377
411
  let xaxisDatakeyArr = [];
378
412
  let datasets = [];
379
- if (dataset.length === 0) {
380
- var _yaxis;
381
- dataset = constructSampleData(getChartType(this.props), (_yaxis = yaxis) === null || _yaxis === void 0 ? void 0 : _yaxis.split(','), this.props.shape);
382
- xaxis = "x";
383
- yaxis = "y";
384
- }
385
413
  if (xaxis && yaxis) {
386
414
  let yPts = yaxis.split(',');
387
415
  yPts.forEach(y => {
@@ -396,11 +424,11 @@ export class BaseChartComponent extends BaseComponent {
396
424
  x: xVal,
397
425
  y: yVal
398
426
  };
399
- if (this.props.bubblesize) {
400
- set(dataObj, 'size', get(o, this.props.bubblesize, 5));
427
+ if (props.bubblesize) {
428
+ set(dataObj, 'size', get(o, props.bubblesize, 5));
401
429
  }
402
- if (this.props.shape) {
403
- set(dataObj, 'symbol', shapes[this.props.shape]);
430
+ if (props.shape) {
431
+ set(dataObj, 'symbol', shapes[props.shape]);
404
432
  }
405
433
  return dataObj;
406
434
  }));
@@ -408,7 +436,7 @@ export class BaseChartComponent extends BaseComponent {
408
436
  });
409
437
  // chartTransform
410
438
  this.invokeEventCallback('onTransform', [undefined, this.proxy]);
411
- if (this.props.type == 'Pie' || this.props.type === 'Donut') {
439
+ if (props.type == 'Pie' || props.type === 'Donut') {
412
440
  // for animation effect
413
441
  setTimeout(() => {
414
442
  this.updateState({
@@ -420,23 +448,25 @@ export class BaseChartComponent extends BaseComponent {
420
448
  }
421
449
  }
422
450
  renderLoadingIcon() {
451
+ const props = this.state.props;
423
452
  return /*#__PURE__*/React.createElement(WmIcon, {
424
453
  styles: this.styles.loadingIcon,
425
- iconclass: this.props.loadingicon,
426
- caption: this.props.loadingdatamsg
454
+ iconclass: props.loadingicon,
455
+ caption: props.loadingdatamsg
427
456
  });
428
457
  }
429
458
  updateData(datasets, yPts, xaxisDatakeyArr) {
459
+ const props = this.state.props;
430
460
  this.updateState({
431
461
  data: datasets,
432
462
  yAxis: yPts,
433
463
  xaxisDatakeyArr: xaxisDatakeyArr
434
464
  }, () => {
435
465
  this.prepareLegendData();
436
- if (!this.props.labeltype || this.props.labeltype === 'percent') {
466
+ if (!props.labeltype || props.labeltype === 'percent') {
437
467
  this.setTotal(this.state.data[0]);
438
468
  }
439
- if (this.isAxisDomainSupported(this.props.type) && (this.props.ydomain || this.props.xdomain)) {
469
+ if (this.isAxisDomainSupported(props.type) && (props.ydomain || props.xdomain)) {
440
470
  this.setDomainValues();
441
471
  }
442
472
  this.updateState({
@@ -455,6 +485,7 @@ export class BaseChartComponent extends BaseComponent {
455
485
  }
456
486
  onPropertyChange(name, $new, $old) {
457
487
  super.onPropertyChange(name, $new, $old);
488
+ const props = this.state.props;
458
489
  let units = '';
459
490
  switch (name) {
460
491
  case 'customcolors':
@@ -469,7 +500,7 @@ export class BaseChartComponent extends BaseComponent {
469
500
  });
470
501
  break;
471
502
  case 'theme':
472
- this.applyTheme(this.props);
503
+ this.applyTheme(props);
473
504
  break;
474
505
  case 'dataset':
475
506
  if (!isArray($new)) {
@@ -482,16 +513,16 @@ export class BaseChartComponent extends BaseComponent {
482
513
  $new && this.prepareDataItems($new);
483
514
  break;
484
515
  case 'xaxislabel':
485
- if (this.props.xunits) {
486
- units = ' (' + this.props.xunits + ')';
516
+ if (props.xunits) {
517
+ units = ' (' + props.xunits + ')';
487
518
  }
488
519
  this.updateState({
489
520
  xLabel: $new + units
490
521
  });
491
522
  break;
492
523
  case 'yaxislabel':
493
- if (this.props.yunits) {
494
- units = ' (' + this.props.yunits + ')';
524
+ if (props.yunits) {
525
+ units = ' (' + props.yunits + ')';
495
526
  }
496
527
  this.updateState({
497
528
  yLabel: $new + units
@@ -500,7 +531,4 @@ export class BaseChartComponent extends BaseComponent {
500
531
  }
501
532
  }
502
533
  }
503
- function getDataType(widgetContext) {
504
- throw new Error("Function not implemented.");
505
- }
506
534
  //# sourceMappingURL=basechart.component.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","Dimensions","moment","forEach","get","isArray","isEmpty","isObject","maxBy","minBy","set","trim","orderBy","VictoryAxis","VictoryLegend","VictoryLabel","BaseComponent","BaseComponentState","WmIcon","ThemeFactory","DEFAULT_CLASS","constructSampleData","getChartType","BaseChartComponentState","constructor","arguments","_defineProperty","undefined","screenWidth","width","shapes","SI_SYMBOL","BaseChartComponent","props","defaultClass","length","defaultProps","defaultState","theme","applyTheme","componentDidMount","abbreviateNumber","number","tier","Math","log10","abs","suffix","scale","pow","scaled","toFixed","getLegendView","colorScale","state","showlegend","top","parseInt","styles","root","height","orientation","createElement","name","gutter","data","legendData","style","border","stroke","borderPadding","left","y","getYScaleMinValue","value","_min","floor","getXaxis","crossAxis","label","xaxislabel","xaxisdatakey","xunits","grid","axis","showxaxis","fixLabelOverlap","tickLabelComponent","angle","labelangle","tickCount","xaxisDatakeyArr","tickFormat","d","getYAxis","yaxislabel","yaxisdatakey","yunits","axisLabel","padding","yaxislabeldistance","showyaxis","t","dependentAxis","isAxisDomainSupported","type","isAxisDomainValid","areMinMaxValuesValid","values","isFinite","min","max","setDomainValues","xDomainValues","yDomainValues","x","getXMinMaxValues","getYMinMaxValues","updateState","chartMinX","chartMaxX","yMin","chartMinY","chartMaxY","datum","xValues","dataObject","yValues","minValues","maxValues","push","setHeightWidthOnChart","cb","chartHeight","chartWidth","themeName","colorsToUse","customcolors","split","map","themeToUse","getColorsObj","getTheme","colors","prepareLegendData","yAxis","ldata","prepareEvents","_","idx","childName","target","eventKey","String","eventHandlers","onClick","mutation","onMouseOver","onMouseOut","getxAxisVal","dataObj","xKey","index","isValid","isNaN","prepareDataItems","dataset","xaxis","yaxis","datasets","_yaxis","shape","yPts","o","xindex","xVal","yVal","parseFloat","bubblesize","invokeEventCallback","proxy","setTimeout","endAngle","updateData","renderLoadingIcon","loadingIcon","iconclass","loadingicon","caption","loadingdatamsg","labeltype","setTotal","ydomain","xdomain","loading","total","onPropertyChange","$new","$old","units","xLabel","yLabel","getDataType","widgetContext","Error"],"sources":["basechart.component.tsx"],"sourcesContent":["import React from \"react\";\nimport { Dimensions } from 'react-native';\nimport moment from \"moment\";\nimport {forEach, get, isArray, isEmpty, isObject, maxBy, minBy, set, trim, orderBy} from \"lodash-es\";\nimport { ScatterSymbolType } from \"victory-core\";\nimport {VictoryAxis, VictoryLegend, VictoryLabel} from \"victory-native\";\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport WmIcon from \"@wavemaker/app-rn-runtime/components/basic/icon/icon.component\";\nimport ThemeFactory from \"@wavemaker/app-rn-runtime/components/chart/theme/chart.theme\";\n\nimport BaseChartComponentProps from \"./basechart.props\";\nimport { DEFAULT_CLASS, BaseChartComponentStyles} from \"./basechart.styles\";\nimport _ from \"lodash\";\nimport { constructSampleData, getChartType } from \"./staticdata\";\n\nexport class BaseChartComponentState <T extends BaseChartComponentProps> extends BaseComponentState<T> {\n data: any = [];\n content: any = null;\n yAxis: Array<string> = [];\n xaxisDatakeyArr: Array<any> = [];\n legendData: any = [];\n theme: any;\n colors: any;\n xLabel: string = '';\n yLabel: string = '';\n total: number = 0;\n endAngle: number = 0;\n loading: boolean = true;\n chartHeight: number = 0;\n chartWidth: number = 0;\n chartMinY: number | undefined = undefined;\n chartMinX: number | undefined = undefined;\n chartMaxY: number | undefined = undefined;\n chartMaxX: number | undefined = undefined;\n}\n\nconst screenWidth = Dimensions.get(\"window\").width;\n\nconst shapes: {[key: string]: any} = {\n 'circle': 'circle',\n 'cross': 'cross',\n 'diamond': 'diamond',\n 'plus': 'plus',\n 'minus': 'minus',\n 'square': 'square',\n 'star': 'star',\n 'triangle-down': 'triangleDown',\n 'triangle-up': 'triangleUp',\n};\n\nconst SI_SYMBOL = [\"\", \"k\", \"M\", \"G\", \"T\", \"P\", \"E\"];\n\nexport abstract class BaseChartComponent<T extends BaseChartComponentProps, S extends BaseChartComponentState<T>, L extends BaseChartComponentStyles> extends BaseComponent<T, S, L> {\n protected screenWidth: number = screenWidth;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n if (!props.theme) {\n this.applyTheme(props);\n }\n }\n\n componentDidMount() {\n super.componentDidMount();\n }\n\n abbreviateNumber(number: any) {\n if (typeof number !== 'number') {\n return number;\n }\n const tier = Math.log10(Math.abs(number)) / 3 | 0;\n\n if (tier == 0) {\n return number;\n }\n\n // get suffix and determine scale\n const suffix = SI_SYMBOL[tier];\n const scale = Math.pow(10, tier * 3);\n\n // scale the number\n var scaled = number / scale;\n\n // format number and add suffix\n return scaled.toFixed(1) + suffix;\n }\n\n getLegendView(colorScale?: any) {\n if (this.state.props.showlegend === 'hide') {\n return null;\n }\n let top = this.props.showlegend === 'bottom' ? parseInt(this.styles.root.height as string) : 0;\n if (top) {\n top = top - (50); // remove legendHeight\n }\n const orientation = (this.props.showlegend === 'right' || this.props.showlegend === 'left') ? 'vertical' : 'horizontal';\n return <VictoryLegend\n colorScale={colorScale}\n name={'legendData'}\n orientation={orientation}\n gutter={20}\n data={this.state.legendData}\n style={{ border: { stroke: 'none' } }}\n borderPadding={{top: 30, left: 50}}\n y={top}\n />\n }\n\n getYScaleMinValue(value: number) {\n const _min = Math.floor(value);\n return Math.abs(value) - _min > 0 ? value - .1 : _min - 1;\n };\n\n // x axis with vertical lines having grid stroke colors\n getXaxis() {\n return <VictoryAxis crossAxis label={(this.props.xaxislabel || this.props.xaxisdatakey || \"name\") + (this.props.xunits ? `(${this.props.xunits})` : '')}\n style={{\n grid: this.styles.grid,\n axis: {stroke: this.props.showxaxis === false? 'none': '#000000'}\n }}\n fixLabelOverlap={false}\n tickLabelComponent={<VictoryLabel angle={this.props.labelangle || 0} />} theme={this.state.theme}\n tickCount={this.state.xaxisDatakeyArr.length} \n tickFormat={(d) => `${this.state.xaxisDatakeyArr[d] ? this.state.xaxisDatakeyArr[d]: ''}`}/>; \n} \n \n /* y axis with horizontal lines having grid stroke colors*/\n getYAxis() {\n return <VictoryAxis crossAxis label={(this.props.yaxislabel || this.props.yaxisdatakey || \"datavalue\") + (this.props.yunits ? `(${this.props.yunits})` : '')}\n style={{\n axisLabel: {padding: this.props.yaxislabeldistance},\n grid: this.styles.grid,\n axis: {stroke: this.props.showyaxis === false? 'none': '#000000'}\n }}\n theme={this.state.theme}\n tickFormat={(t) => `${this.abbreviateNumber(t)}`} dependentAxis />;\n }\n\n // X/Y Domain properties are supported only for Column and Area charts\n isAxisDomainSupported(type: string) {\n return type === 'Column'|| type === 'Area';\n }\n\n // Check whether X/Y Domain was set to Min and is supported for the present chart\n isAxisDomainValid(axis: string) {\n if (get(this.props, axis + 'domain') === 'Min' && (this.isAxisDomainSupported(this.props.type))) {\n return true;\n }\n return false;\n };\n\n// Check whether min and max values are finite or not\n areMinMaxValuesValid(values: any) {\n if (isFinite(values.min) && isFinite(values.max)) {\n return true;\n }\n return false;\n };\n\n setDomainValues() {\n let xDomainValues, yDomainValues;\n if (this.state.data.length > 0) {\n if (this.isAxisDomainValid('x') && typeof this.state.data[0].x === 'number') {\n xDomainValues = this.getXMinMaxValues(this.state.data[0]);\n }\n if (this.isAxisDomainValid('y')) {\n yDomainValues = this.getYMinMaxValues(this.state.data);\n }\n if (xDomainValues) {\n this.updateState({\n chartMinX: yDomainValues.min.x,\n chartMaxX: yDomainValues.max.x\n } as S)\n }\n let yMin;\n if (yDomainValues) {\n if (this.areMinMaxValuesValid({max: yDomainValues.max.y, min: yDomainValues.min.y})) {\n yMin = this.getYScaleMinValue(yDomainValues.min.y);\n }\n this.updateState({\n chartMinY: yMin ? yMin : yDomainValues.min.y,\n chartMaxY: yDomainValues.max.y\n } as S);\n }\n }\n }\n\n // Getting the min and max values among all the x values\n getXMinMaxValues(datum: Array<{x: number, y: any}>) {\n if (!datum) {\n return;\n }\n const xValues: any = {};\n /*\n compute the min x value\n eg: When data has objects\n input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]\n min x: 1\n eg: When data has arrays\n input: [[10, 20], [20, 30], [30, 40]];\n min x: 10\n */\n xValues.min = minBy(datum, (dataObject: {x: any, y: any}) => dataObject.x) || {x: undefined};\n /*\n compute the max x value\n eg: When data has objects\n input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]\n max x: 3\n eg: When data has arrays\n input: [[10, 20], [20, 30], [30, 40]];\n max x: 30\n */\n xValues.max = maxBy(datum, (dataObject: {x: any, y: any}) => dataObject.x)|| {x: undefined};\n return xValues;\n }\n\n // Getting the min and max values among all the y values\n getYMinMaxValues(datum: Array<Array<{x: any, y: number}>>) {\n const yValues: any = {},\n minValues: any = [],\n maxValues: any = [];\n if (!datum) {\n return;\n }\n\n /*\n Getting the min and max y values among all the series of data\n compute the min y value\n eg: When data has objects\n input: [[{x:1, y:2}, {x:2, y:3}, {x:3, y:4}], [{x:2, y:3}, {x:3, y:4}, {x:4, y:5}]]\n min y values : '2'(among first set) & '3'(among second set)\n max y values : '4'(among first set) & '5'(among second set)\n\n eg: When data has arrays\n input: [[[10, 20], [20, 30], [30, 40]], [[20, 30], [30, 40], [40, 50]]]\n min y values : '20'(among first set) & '30'(among second set)\n max y values : '40'(among first set) & '50'(among second set)\n */\n\n forEach(datum, data => {\n if (data && !isEmpty(data)) {\n minValues.push(minBy(data, (dataObject: {x: any, y: any}) => { return dataObject.y }));\n maxValues.push(maxBy(data, (dataObject: {x: any, y: any}) => { return dataObject.y }));\n }\n });\n // Gets the least and highest values among all the min and max values of respective series of data\n yValues.min = minBy(minValues, (dataObject: {x: any, y: any}) => dataObject.y) || {y: undefined};\n yValues.max = maxBy(maxValues, (dataObject: {x: any, y: any}) => dataObject.y) || {y: undefined};\n return yValues;\n }\n\n setHeightWidthOnChart(cb?: () => void) {\n let height = this.styles.root.height || 250;\n let width = this.styles.root.width || screenWidth;\n if (height && typeof height === 'string') {\n height = parseInt(height);\n }\n if (width && typeof width === 'string') {\n width = parseInt(width);\n }\n this.updateState({\n chartHeight: height,\n chartWidth: width\n } as S, cb);\n }\n\n applyTheme(props: BaseChartComponentProps) {\n let themeName = props.theme ? props.theme : (props.type === 'Pie' ? 'Azure' : 'Terrestrial');\n let colorsToUse = [];\n if (typeof props.customcolors === 'string' && !isEmpty(props.customcolors)) {\n colorsToUse = props.customcolors.split(',').map(trim);\n }\n let themeToUse;\n if (typeof themeName === 'string') {\n if (!colorsToUse.length) {\n colorsToUse = props.customcolors;\n }\n if(props.customcolors===undefined) {\n colorsToUse = ThemeFactory.getColorsObj(themeName);\n }\n themeToUse = ThemeFactory.getTheme(themeName, this.props.styles, colorsToUse);\n } else if (typeof themeName === 'object') {\n // if theme is passed as an object then use that custom theme.\n themeToUse = props.theme;\n }\n this.updateState({\n colors: colorsToUse,\n theme: themeToUse\n } as S);\n }\n\n prepareLegendData() {\n if (this.state.yAxis) {\n let ldata: any;\n if (this.props.type === 'Stack') {\n const data = orderBy(this.state.data[0], 'y', 'asc');\n ldata = data.map((d: any) => {\n return {\n name: this.state.xaxisDatakeyArr[d.x]\n }\n });\n } else {\n ldata = this.state.yAxis.map((d: string) => {\n return {\n name: d\n }\n });\n }\n\n this.updateState({\n legendData: ldata\n } as S);\n }\n }\n\n prepareEvents(name: string) {\n return this.state.legendData.map((_: any, idx: number) => {\n return {\n childName: ['legend'],\n target: 'data',\n eventKey: String(idx),\n eventHandlers: {\n onClick: () => {\n return [\n {\n childName: [name + '_' + idx],\n target: 'data',\n eventKey: 'all',\n mutation: (props: any) => {\n return null;\n }\n }\n ];\n },\n onMouseOver: () => {\n },\n onMouseOut: () => {\n }\n }\n };\n });\n }\n\n // If date string is bound to xaxis then we are pushing the x values as indexes.\n getxAxisVal(dataObj: {[key: string] : any}, xKey: string, index: number, xaxisDatakeyArr: Array<any>) {\n const value: any = get(dataObj, xKey);\n if (moment(value).isValid() || isNaN(value) || typeof value === 'string' || typeof value === 'number') {\n xaxisDatakeyArr.push(value);\n return index;\n }\n return value;\n }\n\n prepareDataItems(dataset: any) {\n let xaxis = this.props.xaxisdatakey;\n let yaxis = this.props.yaxisdatakey;\n let xaxisDatakeyArr: Array<any> = [];\n let datasets: any = [];\n if (dataset.length === 0) {\n dataset = constructSampleData(getChartType(this.props), yaxis?.split(','), this.props.shape);\n xaxis = \"x\";\n yaxis = \"y\";\n }\n if (xaxis && yaxis) {\n let yPts = yaxis.split(',');\n yPts.forEach((y: any) => {\n if (xaxis !== y) {\n datasets.push(dataset.map((o: {[key: string] : any}, xindex: number) => {\n const xVal = this.getxAxisVal(o, xaxis, xindex, xaxisDatakeyArr);\n let yVal: string | number = get(o, y);\n if (typeof yVal === 'string') {\n yVal = parseFloat(yVal) || yVal;\n }\n let dataObj = {\n x: xVal,\n y: yVal,\n };\n if (this.props.bubblesize) {\n set(dataObj, 'size', get(o, this.props.bubblesize, 5));\n }\n if (this.props.shape) {\n set(dataObj, 'symbol', shapes[this.props.shape]);\n }\n return dataObj;\n }));\n }\n });\n // chartTransform\n this.invokeEventCallback('onTransform', [undefined, this.proxy]);\n if (this.props.type == 'Pie' || this.props.type === 'Donut') {\n // for animation effect\n setTimeout(() => {\n this.updateState({\n endAngle: 360,\n } as S);\n }, 500);\n }\n this.updateData(datasets, yPts, xaxisDatakeyArr);\n }\n }\n\n\n protected renderLoadingIcon() {\n return (<WmIcon styles={this.styles.loadingIcon}\n iconclass={this.props.loadingicon}\n caption={this.props.loadingdatamsg}></WmIcon>);\n }\n\n updateData(datasets: any, yPts: any, xaxisDatakeyArr: Array<any>) {\n this.updateState({\n data: datasets as any,\n yAxis: yPts,\n xaxisDatakeyArr: xaxisDatakeyArr\n } as S, () => {\n this.prepareLegendData();\n if (!this.props.labeltype || this.props.labeltype === 'percent') {\n this.setTotal(this.state.data[0]);\n }\n if (this.isAxisDomainSupported(this.props.type) && (this.props.ydomain || this.props.xdomain)) {\n this.setDomainValues();\n }\n this.updateState({\n loading: false\n } as S);\n });\n }\n\n setTotal(data: Array<{x: any, y: number}>) {\n let total = 0;\n data.forEach((d: {x: any, y: any}) => {\n total += d.y as number;\n });\n this.updateState({\n total: total\n } as S);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n let units = '';\n switch(name) {\n case 'customcolors':\n if (isEmpty($new)) {\n return;\n }\n if (typeof $new === 'string') {\n $new = $new.split(',');\n }\n this.updateState({\n colors: $new\n } as S);\n break;\n case 'theme':\n this.applyTheme(this.props);\n break;\n case 'dataset':\n if (!isArray($new)) {\n if (isObject($new) && !isEmpty($new)) {\n $new = [$new];\n } else {\n $new = [];\n }\n }\n $new && this.prepareDataItems($new);\n break;\n case 'xaxislabel':\n if (this.props.xunits) {\n units = ' (' + this.props.xunits + ')';\n }\n this.updateState({\n xLabel: $new + units\n } as S);\n break;\n case 'yaxislabel':\n if (this.props.yunits) {\n units = ' (' + this.props.yunits + ')';\n }\n this.updateState({\n yLabel: $new + units\n } as S);\n break;\n }\n }\n}\nfunction getDataType(widgetContext: { yaxisdatakey: string | null | undefined; shape: any; }): any {\n throw new Error(\"Function not implemented.\");\n}\n\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,QAAQ,cAAc;AACzC,OAAOC,MAAM,MAAM,QAAQ;AAC3B,SAAQC,OAAO,EAAEC,GAAG,EAAEC,OAAO,EAAEC,OAAO,EAAEC,QAAQ,EAAEC,KAAK,EAAEC,KAAK,EAAEC,GAAG,EAAEC,IAAI,EAAEC,OAAO,QAAO,WAAW;AAEpG,SAAQC,WAAW,EAAEC,aAAa,EAAEC,YAAY,QAAO,gBAAgB;AAEvE,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AACjG,OAAOC,MAAM,MAAM,gEAAgE;AACnF,OAAOC,YAAY,MAAO,8DAA8D;AAGxF,SAASC,aAAa,QAAiC,oBAAoB;AAE3E,SAASC,mBAAmB,EAAEC,YAAY,QAAQ,cAAc;AAEhE,OAAO,MAAMC,uBAAuB,SAA6CN,kBAAkB,CAAI;EAAAO,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,eACzF,EAAE;IAAAA,eAAA,kBACC,IAAI;IAAAA,eAAA,gBACI,EAAE;IAAAA,eAAA,0BACK,EAAE;IAAAA,eAAA,qBACd,EAAE;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,iBAGH,EAAE;IAAAA,eAAA,iBACF,EAAE;IAAAA,eAAA,gBACH,CAAC;IAAAA,eAAA,mBACE,CAAC;IAAAA,eAAA,kBACD,IAAI;IAAAA,eAAA,sBACD,CAAC;IAAAA,eAAA,qBACF,CAAC;IAAAA,eAAA,oBACUC,SAAS;IAAAD,eAAA,oBACTC,SAAS;IAAAD,eAAA,oBACTC,SAAS;IAAAD,eAAA,oBACTC,SAAS;EAAA;AAC3C;AAEA,MAAMC,WAAW,GAAG3B,UAAU,CAACG,GAAG,CAAC,QAAQ,CAAC,CAACyB,KAAK;AAElD,MAAMC,MAA4B,GAAG;EACnC,QAAQ,EAAE,QAAQ;EAClB,OAAO,EAAE,OAAO;EAChB,SAAS,EAAE,SAAS;EACpB,MAAM,EAAE,MAAM;EACd,OAAO,EAAE,OAAO;EAChB,QAAQ,EAAE,QAAQ;EAClB,MAAM,EAAE,MAAM;EACd,eAAe,EAAE,cAAc;EAC/B,aAAa,EAAE;AACjB,CAAC;AAED,MAAMC,SAAS,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;AAEpD,OAAO,MAAeC,kBAAkB,SAAsHhB,aAAa,CAAU;EAEnLQ,WAAWA,CAACS,KAAQ,EAAmF;IAAA,IAA1EC,YAAoB,GAAAT,SAAA,CAAAU,MAAA,QAAAV,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAGL,aAAa;IAAA,IAAEgB,YAAgB,GAAAX,SAAA,CAAAU,MAAA,OAAAV,SAAA,MAAAE,SAAA;IAAA,IAAEU,YAAgB,GAAAZ,SAAA,CAAAU,MAAA,OAAAV,SAAA,MAAAE,SAAA;IACnG,KAAK,CAACM,KAAK,EAAEC,YAAY,EAAEE,YAAY,EAAEC,YAAY,CAAC;IAAC,KAD5BH,YAAoB,GAApBA,YAAoB;IAAAR,eAAA,sBADjBE,WAAW;IAGzC,IAAI,CAACK,KAAK,CAACK,KAAK,EAAE;MAChB,IAAI,CAACC,UAAU,CAACN,KAAK,CAAC;IACxB;EACF;EAEAO,iBAAiBA,CAAA,EAAG;IAClB,KAAK,CAACA,iBAAiB,CAAC,CAAC;EAC3B;EAEAC,gBAAgBA,CAACC,MAAW,EAAE;IAC5B,IAAI,OAAOA,MAAM,KAAK,QAAQ,EAAE;MAC9B,OAAOA,MAAM;IACf;IACA,MAAMC,IAAI,GAAGC,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,GAAG,CAACJ,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAEjD,IAAIC,IAAI,IAAI,CAAC,EAAE;MACb,OAAOD,MAAM;IACf;;IAEA;IACA,MAAMK,MAAM,GAAGhB,SAAS,CAACY,IAAI,CAAC;IAC9B,MAAMK,KAAK,GAAGJ,IAAI,CAACK,GAAG,CAAC,EAAE,EAAEN,IAAI,GAAG,CAAC,CAAC;;IAEpC;IACA,IAAIO,MAAM,GAAGR,MAAM,GAAGM,KAAK;;IAE3B;IACA,OAAOE,MAAM,CAACC,OAAO,CAAC,CAAC,CAAC,GAAGJ,MAAM;EACnC;EAEAK,aAAaA,CAACC,UAAgB,EAAE;IAC9B,IAAI,IAAI,CAACC,KAAK,CAACrB,KAAK,CAACsB,UAAU,KAAK,MAAM,EAAE;MAC1C,OAAO,IAAI;IACb;IACA,IAAIC,GAAG,GAAG,IAAI,CAACvB,KAAK,CAACsB,UAAU,KAAK,QAAQ,GAAGE,QAAQ,CAAC,IAAI,CAACC,MAAM,CAACC,IAAI,CAACC,MAAgB,CAAC,GAAG,CAAC;IAC9F,IAAIJ,GAAG,EAAE;MACPA,GAAG,GAAGA,GAAG,GAAI,EAAG,CAAC,CAAC;IACpB;;IACA,MAAMK,WAAW,GAAI,IAAI,CAAC5B,KAAK,CAACsB,UAAU,KAAK,OAAO,IAAI,IAAI,CAACtB,KAAK,CAACsB,UAAU,KAAK,MAAM,GAAI,UAAU,GAAG,YAAY;IACvH,oBAAOvD,KAAA,CAAA8D,aAAA,CAAChD,aAAa;MACnBuC,UAAU,EAAEA,UAAW;MACvBU,IAAI,EAAE,YAAa;MACnBF,WAAW,EAAEA,WAAY;MACzBG,MAAM,EAAE,EAAG;MACXC,IAAI,EAAE,IAAI,CAACX,KAAK,CAACY,UAAW;MAC5BC,KAAK,EAAE;QAAEC,MAAM,EAAE;UAAEC,MAAM,EAAE;QAAO;MAAE,CAAE;MACtCC,aAAa,EAAE;QAACd,GAAG,EAAE,EAAE;QAAEe,IAAI,EAAE;MAAE,CAAE;MACnCC,CAAC,EAAEhB;IAAI,CACR,CAAC;EACJ;EAEAiB,iBAAiBA,CAACC,KAAa,EAAE;IAC/B,MAAMC,IAAI,GAAG/B,IAAI,CAACgC,KAAK,CAACF,KAAK,CAAC;IAC9B,OAAO9B,IAAI,CAACE,GAAG,CAAC4B,KAAK,CAAC,GAAGC,IAAI,GAAG,CAAC,GAAGD,KAAK,GAAG,EAAE,GAAGC,IAAI,GAAG,CAAC;EAC3D;EAEA;EACAE,QAAQA,CAAA,EAAG;IACT,oBAAO7E,KAAA,CAAA8D,aAAA,CAACjD,WAAW;MAACiE,SAAS;MAACC,KAAK,EAAE,CAAC,IAAI,CAAC9C,KAAK,CAAC+C,UAAU,IAAI,IAAI,CAAC/C,KAAK,CAACgD,YAAY,IAAI,MAAM,KAAK,IAAI,CAAChD,KAAK,CAACiD,MAAM,GAAI,IAAG,IAAI,CAACjD,KAAK,CAACiD,MAAO,GAAE,GAAG,EAAE,CAAE;MACpIf,KAAK,EAAE;QACLgB,IAAI,EAAE,IAAI,CAACzB,MAAM,CAACyB,IAAI;QACtBC,IAAI,EAAE;UAACf,MAAM,EAAE,IAAI,CAACpC,KAAK,CAACoD,SAAS,KAAK,KAAK,GAAE,MAAM,GAAE;QAAS;MAClE,CAAE;MACFC,eAAe,EAAE,KAAM;MACvBC,kBAAkB,eAAEvF,KAAA,CAAA8D,aAAA,CAAC/C,YAAY;QAACyE,KAAK,EAAE,IAAI,CAACvD,KAAK,CAACwD,UAAU,IAAI;MAAE,CAAE,CAAE;MAACnD,KAAK,EAAE,IAAI,CAACgB,KAAK,CAAChB,KAAM;MACjGoD,SAAS,EAAE,IAAI,CAACpC,KAAK,CAACqC,eAAe,CAACxD,MAAO;MAC7CyD,UAAU,EAAGC,CAAC,IAAM,GAAE,IAAI,CAACvC,KAAK,CAACqC,eAAe,CAACE,CAAC,CAAC,GAAG,IAAI,CAACvC,KAAK,CAACqC,eAAe,CAACE,CAAC,CAAC,GAAE,EAAG;IAAE,CAAC,CAAC;EACpH;;EAEE;EACAC,QAAQA,CAAA,EAAG;IACT,oBAAO9F,KAAA,CAAA8D,aAAA,CAACjD,WAAW;MAACiE,SAAS;MAACC,KAAK,EAAE,CAAC,IAAI,CAAC9C,KAAK,CAAC8D,UAAU,IAAI,IAAI,CAAC9D,KAAK,CAAC+D,YAAY,IAAI,WAAW,KAAK,IAAI,CAAC/D,KAAK,CAACgE,MAAM,GAAI,IAAG,IAAI,CAAChE,KAAK,CAACgE,MAAO,GAAE,GAAG,EAAE,CAAE;MACzI9B,KAAK,EAAE;QACL+B,SAAS,EAAE;UAACC,OAAO,EAAE,IAAI,CAAClE,KAAK,CAACmE;QAAkB,CAAC;QACnDjB,IAAI,EAAE,IAAI,CAACzB,MAAM,CAACyB,IAAI;QACtBC,IAAI,EAAE;UAACf,MAAM,EAAE,IAAI,CAACpC,KAAK,CAACoE,SAAS,KAAK,KAAK,GAAE,MAAM,GAAE;QAAS;MAClE,CAAE;MACF/D,KAAK,EAAE,IAAI,CAACgB,KAAK,CAAChB,KAAM;MACxBsD,UAAU,EAAGU,CAAC,IAAM,GAAE,IAAI,CAAC7D,gBAAgB,CAAC6D,CAAC,CAAE,EAAE;MAACC,aAAa;IAAA,CAAE,CAAC;EACxF;;EAEA;EACAC,qBAAqBA,CAACC,IAAY,EAAE;IAClC,OAAOA,IAAI,KAAK,QAAQ,IAAGA,IAAI,KAAK,MAAM;EAC5C;;EAEA;EACAC,iBAAiBA,CAACtB,IAAY,EAAE;IAC9B,IAAIhF,GAAG,CAAC,IAAI,CAAC6B,KAAK,EAAEmD,IAAI,GAAG,QAAQ,CAAC,KAAK,KAAK,IAAK,IAAI,CAACoB,qBAAqB,CAAC,IAAI,CAACvE,KAAK,CAACwE,IAAI,CAAE,EAAE;MAC/F,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd;EAEF;EACEE,oBAAoBA,CAACC,MAAW,EAAE;IAChC,IAAIC,QAAQ,CAACD,MAAM,CAACE,GAAG,CAAC,IAAID,QAAQ,CAACD,MAAM,CAACG,GAAG,CAAC,EAAE;MAChD,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd;EAEAC,eAAeA,CAAA,EAAG;IAChB,IAAIC,aAAa,EAAEC,aAAa;IAChC,IAAI,IAAI,CAAC5D,KAAK,CAACW,IAAI,CAAC9B,MAAM,GAAG,CAAC,EAAE;MAC9B,IAAI,IAAI,CAACuE,iBAAiB,CAAC,GAAG,CAAC,IAAI,OAAO,IAAI,CAACpD,KAAK,CAACW,IAAI,CAAC,CAAC,CAAC,CAACkD,CAAC,KAAK,QAAQ,EAAE;QAC3EF,aAAa,GAAG,IAAI,CAACG,gBAAgB,CAAC,IAAI,CAAC9D,KAAK,CAACW,IAAI,CAAC,CAAC,CAAC,CAAC;MAC3D;MACA,IAAI,IAAI,CAACyC,iBAAiB,CAAC,GAAG,CAAC,EAAE;QAC/BQ,aAAa,GAAG,IAAI,CAACG,gBAAgB,CAAC,IAAI,CAAC/D,KAAK,CAACW,IAAI,CAAC;MACxD;MACA,IAAIgD,aAAa,EAAE;QACjB,IAAI,CAACK,WAAW,CAAC;UACfC,SAAS,EAAEL,aAAa,CAACJ,GAAG,CAACK,CAAC;UAC9BK,SAAS,EAAEN,aAAa,CAACH,GAAG,CAACI;QAC/B,CAAM,CAAC;MACT;MACA,IAAIM,IAAI;MACR,IAAIP,aAAa,EAAE;QACjB,IAAI,IAAI,CAACP,oBAAoB,CAAC;UAACI,GAAG,EAAEG,aAAa,CAACH,GAAG,CAACvC,CAAC;UAAEsC,GAAG,EAAEI,aAAa,CAACJ,GAAG,CAACtC;QAAC,CAAC,CAAC,EAAE;UACnFiD,IAAI,GAAG,IAAI,CAAChD,iBAAiB,CAACyC,aAAa,CAACJ,GAAG,CAACtC,CAAC,CAAC;QACpD;QACA,IAAI,CAAC8C,WAAW,CAAC;UACfI,SAAS,EAAED,IAAI,GAAGA,IAAI,GAAGP,aAAa,CAACJ,GAAG,CAACtC,CAAC;UAC5CmD,SAAS,EAAET,aAAa,CAACH,GAAG,CAACvC;QAC/B,CAAM,CAAC;MACT;IACF;EACF;;EAEA;EACA4C,gBAAgBA,CAACQ,KAAiC,EAAE;IAClD,IAAI,CAACA,KAAK,EAAE;MACV;IACF;IACA,MAAMC,OAAY,GAAG,CAAC,CAAC;IACvB;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIA,OAAO,CAACf,GAAG,GAAGrG,KAAK,CAACmH,KAAK,EAAGE,UAA4B,IAAKA,UAAU,CAACX,CAAC,CAAC,IAAI;MAACA,CAAC,EAAExF;IAAS,CAAC;IAC5F;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACIkG,OAAO,CAACd,GAAG,GAAGvG,KAAK,CAACoH,KAAK,EAAGE,UAA4B,IAAKA,UAAU,CAACX,CAAC,CAAC,IAAG;MAACA,CAAC,EAAExF;IAAS,CAAC;IAC3F,OAAOkG,OAAO;EAChB;;EAEA;EACAR,gBAAgBA,CAACO,KAAwC,EAAE;IACzD,MAAMG,OAAY,GAAG,CAAC,CAAC;MACrBC,SAAc,GAAG,EAAE;MACnBC,SAAc,GAAG,EAAE;IACrB,IAAI,CAACL,KAAK,EAAE;MACV;IACF;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;IAGIzH,OAAO,CAACyH,KAAK,EAAE3D,IAAI,IAAI;MACrB,IAAIA,IAAI,IAAI,CAAC3D,OAAO,CAAC2D,IAAI,CAAC,EAAE;QAC1B+D,SAAS,CAACE,IAAI,CAACzH,KAAK,CAACwD,IAAI,EAAI6D,UAA4B,IAAK;UAAE,OAAOA,UAAU,CAACtD,CAAC;QAAC,CAAC,CAAC,CAAC;QACvFyD,SAAS,CAACC,IAAI,CAAC1H,KAAK,CAACyD,IAAI,EAAI6D,UAA4B,IAAK;UAAE,OAAOA,UAAU,CAACtD,CAAC;QAAC,CAAC,CAAC,CAAC;MACzF;IACF,CAAC,CAAC;IACF;IACAuD,OAAO,CAACjB,GAAG,GAAGrG,KAAK,CAACuH,SAAS,EAAGF,UAA4B,IAAKA,UAAU,CAACtD,CAAC,CAAC,IAAI;MAACA,CAAC,EAAE7C;IAAS,CAAC;IAChGoG,OAAO,CAAChB,GAAG,GAAGvG,KAAK,CAACyH,SAAS,EAAGH,UAA4B,IAAKA,UAAU,CAACtD,CAAC,CAAC,IAAI;MAACA,CAAC,EAAE7C;IAAS,CAAC;IAChG,OAAOoG,OAAO;EAChB;EAEAI,qBAAqBA,CAACC,EAAe,EAAE;IACrC,IAAIxE,MAAM,GAAG,IAAI,CAACF,MAAM,CAACC,IAAI,CAACC,MAAM,IAAI,GAAG;IAC3C,IAAI/B,KAAK,GAAG,IAAI,CAAC6B,MAAM,CAACC,IAAI,CAAC9B,KAAK,IAAID,WAAW;IACjD,IAAIgC,MAAM,IAAI,OAAOA,MAAM,KAAK,QAAQ,EAAE;MACxCA,MAAM,GAAGH,QAAQ,CAACG,MAAM,CAAC;IAC3B;IACA,IAAI/B,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;MACtCA,KAAK,GAAG4B,QAAQ,CAAC5B,KAAK,CAAC;IACzB;IACA,IAAI,CAACyF,WAAW,CAAC;MACfe,WAAW,EAAEzE,MAAM;MACnB0E,UAAU,EAAEzG;IACd,CAAC,EAAOuG,EAAE,CAAC;EACb;EAEA7F,UAAUA,CAACN,KAA8B,EAAE;IACzC,IAAIsG,SAAS,GAAGtG,KAAK,CAACK,KAAK,GAAGL,KAAK,CAACK,KAAK,GAAIL,KAAK,CAACwE,IAAI,KAAK,KAAK,GAAG,OAAO,GAAG,aAAc;IAC5F,IAAI+B,WAAW,GAAG,EAAE;IACpB,IAAI,OAAOvG,KAAK,CAACwG,YAAY,KAAK,QAAQ,IAAI,CAACnI,OAAO,CAAC2B,KAAK,CAACwG,YAAY,CAAC,EAAE;MAC1ED,WAAW,GAAGvG,KAAK,CAACwG,YAAY,CAACC,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,CAAChI,IAAI,CAAC;IACvD;IACA,IAAIiI,UAAU;IACd,IAAI,OAAOL,SAAS,KAAK,QAAQ,EAAE;MACjC,IAAI,CAACC,WAAW,CAACrG,MAAM,EAAE;QACvBqG,WAAW,GAAGvG,KAAK,CAACwG,YAAY;MAClC;MACA,IAAGxG,KAAK,CAACwG,YAAY,KAAG9G,SAAS,EAAE;QACjC6G,WAAW,GAAGrH,YAAY,CAAC0H,YAAY,CAACN,SAAS,CAAC;MACpD;MACAK,UAAU,GAAGzH,YAAY,CAAC2H,QAAQ,CAACP,SAAS,EAAE,IAAI,CAACtG,KAAK,CAACyB,MAAM,EAAE8E,WAAW,CAAC;IAC/E,CAAC,MAAM,IAAI,OAAOD,SAAS,KAAK,QAAQ,EAAE;MACxC;MACAK,UAAU,GAAG3G,KAAK,CAACK,KAAK;IAC1B;IACA,IAAI,CAACgF,WAAW,CAAC;MACfyB,MAAM,EAAEP,WAAW;MACnBlG,KAAK,EAAEsG;IACT,CAAM,CAAC;EACT;EAEAI,iBAAiBA,CAAA,EAAG;IAClB,IAAI,IAAI,CAAC1F,KAAK,CAAC2F,KAAK,EAAE;MACpB,IAAIC,KAAU;MACd,IAAI,IAAI,CAACjH,KAAK,CAACwE,IAAI,KAAK,OAAO,EAAE;QAC/B,MAAMxC,IAAI,GAAGrD,OAAO,CAAC,IAAI,CAAC0C,KAAK,CAACW,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC;QACpDiF,KAAK,GAAGjF,IAAI,CAAC0E,GAAG,CAAE9C,CAAM,IAAK;UAC3B,OAAO;YACL9B,IAAI,EAAE,IAAI,CAACT,KAAK,CAACqC,eAAe,CAACE,CAAC,CAACsB,CAAC;UACtC,CAAC;QACH,CAAC,CAAC;MACJ,CAAC,MAAM;QACL+B,KAAK,GAAG,IAAI,CAAC5F,KAAK,CAAC2F,KAAK,CAACN,GAAG,CAAE9C,CAAS,IAAK;UAC1C,OAAO;YACL9B,IAAI,EAAE8B;UACR,CAAC;QACH,CAAC,CAAC;MACJ;MAEA,IAAI,CAACyB,WAAW,CAAC;QACfpD,UAAU,EAAEgF;MACd,CAAM,CAAC;IACT;EACF;EAEAC,aAAaA,CAACpF,IAAY,EAAE;IAC1B,OAAO,IAAI,CAACT,KAAK,CAACY,UAAU,CAACyE,GAAG,CAAC,CAACS,CAAM,EAAEC,GAAW,KAAK;MACxD,OAAO;QACLC,SAAS,EAAE,CAAC,QAAQ,CAAC;QACrBC,MAAM,EAAE,MAAM;QACdC,QAAQ,EAAEC,MAAM,CAACJ,GAAG,CAAC;QACrBK,aAAa,EAAE;UACbC,OAAO,EAAEA,CAAA,KAAM;YACb,OAAO,CACL;cACEL,SAAS,EAAE,CAACvF,IAAI,GAAG,GAAG,GAAGsF,GAAG,CAAC;cAC7BE,MAAM,EAAE,MAAM;cACdC,QAAQ,EAAE,KAAK;cACfI,QAAQ,EAAG3H,KAAU,IAAK;gBACxB,OAAO,IAAI;cACb;YACF,CAAC,CACF;UACH,CAAC;UACD4H,WAAW,EAAEA,CAAA,KAAM,CACnB,CAAC;UACDC,UAAU,EAAEA,CAAA,KAAM,CAClB;QACF;MACF,CAAC;IACH,CAAC,CAAC;EACJ;;EAEA;EACAC,WAAWA,CAACC,OAA8B,EAAEC,IAAY,EAAEC,KAAa,EAAEvE,eAA2B,EAAE;IACpG,MAAMjB,KAAU,GAAGtE,GAAG,CAAC4J,OAAO,EAAEC,IAAI,CAAC;IACrC,IAAI/J,MAAM,CAACwE,KAAK,CAAC,CAACyF,OAAO,CAAC,CAAC,IAAIC,KAAK,CAAC1F,KAAK,CAAC,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;MACrGiB,eAAe,CAACuC,IAAI,CAACxD,KAAK,CAAC;MAC3B,OAAOwF,KAAK;IACd;IACA,OAAOxF,KAAK;EACd;EAEA2F,gBAAgBA,CAACC,OAAY,EAAE;IAC7B,IAAIC,KAAK,GAAG,IAAI,CAACtI,KAAK,CAACgD,YAAY;IACnC,IAAIuF,KAAK,GAAG,IAAI,CAACvI,KAAK,CAAC+D,YAAY;IACnC,IAAIL,eAA2B,GAAG,EAAE;IACpC,IAAI8E,QAAa,GAAG,EAAE;IACtB,IAAIH,OAAO,CAACnI,MAAM,KAAK,CAAC,EAAE;MAAA,IAAAuI,MAAA;MACxBJ,OAAO,GAAGjJ,mBAAmB,CAACC,YAAY,CAAC,IAAI,CAACW,KAAK,CAAC,GAAAyI,MAAA,GAAEF,KAAK,cAAAE,MAAA,uBAALA,MAAA,CAAOhC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,CAACzG,KAAK,CAAC0I,KAAK,CAAC;MAC5FJ,KAAK,GAAG,GAAG;MACXC,KAAK,GAAG,GAAG;IACb;IACA,IAAID,KAAK,IAAIC,KAAK,EAAE;MAClB,IAAII,IAAI,GAAGJ,KAAK,CAAC9B,KAAK,CAAC,GAAG,CAAC;MAC3BkC,IAAI,CAACzK,OAAO,CAAEqE,CAAM,IAAK;QACvB,IAAI+F,KAAK,KAAK/F,CAAC,EAAE;UACfiG,QAAQ,CAACvC,IAAI,CAACoC,OAAO,CAAC3B,GAAG,CAAC,CAACkC,CAAwB,EAAEC,MAAc,KAAK;YACtE,MAAMC,IAAI,GAAG,IAAI,CAAChB,WAAW,CAACc,CAAC,EAAEN,KAAK,EAAEO,MAAM,EAAEnF,eAAe,CAAC;YAChE,IAAIqF,IAAqB,GAAG5K,GAAG,CAACyK,CAAC,EAAErG,CAAC,CAAC;YACrC,IAAI,OAAOwG,IAAI,KAAK,QAAQ,EAAE;cAC5BA,IAAI,GAAGC,UAAU,CAACD,IAAI,CAAC,IAAIA,IAAI;YACjC;YACA,IAAIhB,OAAO,GAAG;cACZ7C,CAAC,EAAE4D,IAAI;cACPvG,CAAC,EAAEwG;YACL,CAAC;YACD,IAAI,IAAI,CAAC/I,KAAK,CAACiJ,UAAU,EAAE;cACzBxK,GAAG,CAACsJ,OAAO,EAAE,MAAM,EAAE5J,GAAG,CAACyK,CAAC,EAAE,IAAI,CAAC5I,KAAK,CAACiJ,UAAU,EAAE,CAAC,CAAC,CAAC;YACxD;YACA,IAAI,IAAI,CAACjJ,KAAK,CAAC0I,KAAK,EAAE;cACpBjK,GAAG,CAACsJ,OAAO,EAAE,QAAQ,EAAElI,MAAM,CAAC,IAAI,CAACG,KAAK,CAAC0I,KAAK,CAAC,CAAC;YAClD;YACA,OAAOX,OAAO;UAChB,CAAC,CAAC,CAAC;QACL;MACF,CAAC,CAAC;MACF;MACA,IAAI,CAACmB,mBAAmB,CAAC,aAAa,EAAE,CAACxJ,SAAS,EAAE,IAAI,CAACyJ,KAAK,CAAC,CAAC;MAChE,IAAI,IAAI,CAACnJ,KAAK,CAACwE,IAAI,IAAI,KAAK,IAAI,IAAI,CAACxE,KAAK,CAACwE,IAAI,KAAK,OAAO,EAAE;QAC3D;QACA4E,UAAU,CAAC,MAAM;UACf,IAAI,CAAC/D,WAAW,CAAC;YACfgE,QAAQ,EAAE;UACZ,CAAM,CAAC;QACT,CAAC,EAAE,GAAG,CAAC;MACT;MACA,IAAI,CAACC,UAAU,CAACd,QAAQ,EAAEG,IAAI,EAAEjF,eAAe,CAAC;IAClD;EACF;EAGU6F,iBAAiBA,CAAA,EAAG;IAC5B,oBAAQxL,KAAA,CAAA8D,aAAA,CAAC5C,MAAM;MAACwC,MAAM,EAAE,IAAI,CAACA,MAAM,CAAC+H,WAAY;MAChDC,SAAS,EAAE,IAAI,CAACzJ,KAAK,CAAC0J,WAAY;MAClCC,OAAO,EAAE,IAAI,CAAC3J,KAAK,CAAC4J;IAAe,CAAS,CAAC;EAC/C;EAEAN,UAAUA,CAACd,QAAa,EAAEG,IAAS,EAAEjF,eAA2B,EAAE;IAChE,IAAI,CAAC2B,WAAW,CAAC;MACfrD,IAAI,EAAEwG,QAAe;MACrBxB,KAAK,EAAE2B,IAAI;MACXjF,eAAe,EAAEA;IACnB,CAAC,EAAO,MAAM;MACZ,IAAI,CAACqD,iBAAiB,CAAC,CAAC;MACxB,IAAI,CAAC,IAAI,CAAC/G,KAAK,CAAC6J,SAAS,IAAI,IAAI,CAAC7J,KAAK,CAAC6J,SAAS,KAAK,SAAS,EAAE;QAC/D,IAAI,CAACC,QAAQ,CAAC,IAAI,CAACzI,KAAK,CAACW,IAAI,CAAC,CAAC,CAAC,CAAC;MACnC;MACA,IAAI,IAAI,CAACuC,qBAAqB,CAAC,IAAI,CAACvE,KAAK,CAACwE,IAAI,CAAC,KAAK,IAAI,CAACxE,KAAK,CAAC+J,OAAO,IAAI,IAAI,CAAC/J,KAAK,CAACgK,OAAO,CAAC,EAAE;QAC7F,IAAI,CAACjF,eAAe,CAAC,CAAC;MACxB;MACA,IAAI,CAACM,WAAW,CAAC;QACf4E,OAAO,EAAE;MACX,CAAM,CAAC;IACT,CAAC,CAAC;EACJ;EAEAH,QAAQA,CAAC9H,IAAgC,EAAE;IACzC,IAAIkI,KAAK,GAAG,CAAC;IACblI,IAAI,CAAC9D,OAAO,CAAE0F,CAAmB,IAAK;MACpCsG,KAAK,IAAItG,CAAC,CAACrB,CAAW;IACxB,CAAC,CAAC;IACF,IAAI,CAAC8C,WAAW,CAAC;MACf6E,KAAK,EAAEA;IACT,CAAM,CAAC;EACT;EAEAC,gBAAgBA,CAACrI,IAAY,EAAEsI,IAAS,EAAEC,IAAS,EAAE;IACnD,KAAK,CAACF,gBAAgB,CAACrI,IAAI,EAAEsI,IAAI,EAAEC,IAAI,CAAC;IACxC,IAAIC,KAAK,GAAG,EAAE;IACd,QAAOxI,IAAI;MACT,KAAK,cAAc;QACjB,IAAIzD,OAAO,CAAC+L,IAAI,CAAC,EAAE;UACjB;QACF;QACA,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;UAC5BA,IAAI,GAAGA,IAAI,CAAC3D,KAAK,CAAC,GAAG,CAAC;QACxB;QACA,IAAI,CAACpB,WAAW,CAAC;UACfyB,MAAM,EAAEsD;QACV,CAAM,CAAC;QACP;MACF,KAAK,OAAO;QACV,IAAI,CAAC9J,UAAU,CAAC,IAAI,CAACN,KAAK,CAAC;QAC3B;MACF,KAAK,SAAS;QACZ,IAAI,CAAC5B,OAAO,CAACgM,IAAI,CAAC,EAAE;UAClB,IAAI9L,QAAQ,CAAC8L,IAAI,CAAC,IAAI,CAAC/L,OAAO,CAAC+L,IAAI,CAAC,EAAE;YACpCA,IAAI,GAAG,CAACA,IAAI,CAAC;UACf,CAAC,MAAM;YACLA,IAAI,GAAG,EAAE;UACX;QACF;QACAA,IAAI,IAAI,IAAI,CAAChC,gBAAgB,CAACgC,IAAI,CAAC;QACnC;MACF,KAAK,YAAY;QACf,IAAI,IAAI,CAACpK,KAAK,CAACiD,MAAM,EAAE;UACrBqH,KAAK,GAAG,IAAI,GAAG,IAAI,CAACtK,KAAK,CAACiD,MAAM,GAAG,GAAG;QACxC;QACA,IAAI,CAACoC,WAAW,CAAC;UACfkF,MAAM,EAAEH,IAAI,GAAGE;QACjB,CAAM,CAAC;QACP;MACF,KAAK,YAAY;QACf,IAAI,IAAI,CAACtK,KAAK,CAACgE,MAAM,EAAE;UACrBsG,KAAK,GAAG,IAAI,GAAG,IAAI,CAACtK,KAAK,CAACgE,MAAM,GAAG,GAAG;QACxC;QACA,IAAI,CAACqB,WAAW,CAAC;UACfmF,MAAM,EAAEJ,IAAI,GAAGE;QACjB,CAAM,CAAC;QACP;IACJ;EACF;AACF;AACA,SAASG,WAAWA,CAACC,aAAuE,EAAO;EACjG,MAAM,IAAIC,KAAK,CAAC,2BAA2B,CAAC;AAC9C"}
1
+ {"version":3,"names":["React","Dimensions","moment","forEach","get","isArray","isEmpty","isObject","maxBy","minBy","set","trim","orderBy","VictoryAxis","VictoryLegend","VictoryLabel","BaseComponent","BaseComponentState","WmIcon","ThemeFactory","DEFAULT_CLASS","BaseChartComponentState","constructor","arguments","_defineProperty","undefined","screenWidth","width","shapes","SI_SYMBOL","BaseChartComponent","props","defaultClass","length","defaultProps","defaultState","theme","applyTheme","componentDidMount","abbreviateNumber","number","tier","Math","log10","abs","suffix","scale","pow","scaled","toFixed","getLegendView","colorScale","state","showlegend","top","parseInt","styles","root","height","orientation","createElement","name","gutter","data","legendData","style","border","stroke","borderPadding","left","y","getYScaleMinValue","value","_min","floor","getXaxis","minIndex","maxIndex","xaxisDatakeyArr","getTickValueLabel","xtickexpr","crossAxis","label","xaxislabel","xaxisdatakey","xunits","axisLabel","mergeStyle","yAxisLabel","padding","yaxislabeldistance","grid","hidegridxaxis","xGrid","axis","showxaxis","xAxis","ticks","xTicks","tickLabels","xTickLabels","fixLabelOverlap","autoadjustlabels","tickLabelComponent","angle","labelangle","tickCount","invertAxis","isRTL","tickFormat","d","i","getYAxis","showyaxis","ytickexpr","yaxislabel","yaxisdatakey","yunits","hidegridyaxis","yGrid","yAxis","yTicks","yTickLabels","dependentAxis","isAxisDomainSupported","type","isAxisDomainValid","areMinMaxValuesValid","values","isFinite","min","max","setDomainValues","xDomainValues","yDomainValues","x","getXMinMaxValues","getYMinMaxValues","updateState","chartMinX","chartMaxX","yMin","chartMinY","chartMaxY","datum","xValues","dataObject","yValues","minValues","maxValues","push","setHeightWidthOnChart","cb","chartHeight","chartWidth","themeName","colorsToUse","customcolors","split","map","themeToUse","getColorsObj","getTheme","colors","prepareLegendData","ldata","prepareEvents","_","idx","childName","target","eventKey","String","eventHandlers","onClick","mutation","onMouseOver","onMouseOut","getxAxisVal","dataObj","xKey","index","isValid","isNaN","prepareDataItems","dataset","xaxis","yaxis","datasets","yPts","o","xindex","xVal","yVal","parseFloat","bubblesize","shape","invokeEventCallback","proxy","setTimeout","endAngle","updateData","renderLoadingIcon","loadingIcon","iconclass","loadingicon","caption","loadingdatamsg","labeltype","setTotal","ydomain","xdomain","loading","total","onPropertyChange","$new","$old","units","xLabel","yLabel"],"sources":["basechart.component.tsx"],"sourcesContent":["import React from \"react\";\nimport { Dimensions } from 'react-native';\nimport moment from \"moment\";\nimport {forEach, get, isArray, isEmpty, isObject, maxBy, minBy, set, trim, orderBy} from \"lodash-es\";\nimport { ScatterSymbolType } from \"victory-core\";\nimport {VictoryAxis, VictoryLegend, VictoryLabel} from \"victory-native\";\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport WmIcon from \"@wavemaker/app-rn-runtime/components/basic/icon/icon.component\";\nimport ThemeFactory from \"@wavemaker/app-rn-runtime/components/chart/theme/chart.theme\";\n\nimport BaseChartComponentProps from \"./basechart.props\";\nimport { DEFAULT_CLASS, BaseChartComponentStyles} from \"./basechart.styles\";\nimport _ from \"lodash\";\n\n\nexport class BaseChartComponentState <T extends BaseChartComponentProps> extends BaseComponentState<T> {\n data: any = [];\n content: any = null;\n yAxis: Array<string> = [];\n xaxisDatakeyArr: Array<any> = [];\n legendData: any = [];\n theme: any;\n colors: any;\n xLabel: string = '';\n yLabel: string = '';\n total: number = 0;\n endAngle: number = 0;\n loading: boolean = true;\n chartHeight: number = 0;\n chartWidth: number = 0;\n chartMinY: number | undefined = undefined;\n chartMinX: number | undefined = undefined;\n chartMaxY: number | undefined = undefined;\n chartMaxX: number | undefined = undefined;\n}\n\nconst screenWidth = Dimensions.get(\"window\").width;\n\nconst shapes: {[key: string]: ScatterSymbolType} = {\n 'circle': 'circle',\n 'cross': 'cross',\n 'diamond': 'diamond',\n 'plus': 'plus',\n 'minus': 'minus',\n 'square': 'square',\n 'star': 'star',\n 'triangle-down': 'triangleDown',\n 'triangle-up': 'triangleUp'\n};\n\nconst SI_SYMBOL = [\"\", \"k\", \"M\", \"G\", \"T\", \"P\", \"E\"];\n\nexport abstract class BaseChartComponent<T extends BaseChartComponentProps, S extends BaseChartComponentState<T>, L extends BaseChartComponentStyles> extends BaseComponent<T, S, L> {\n protected screenWidth: number = screenWidth;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n if (!props.theme) {\n this.applyTheme(props);\n }\n }\n\n componentDidMount() {\n super.componentDidMount();\n }\n\n abbreviateNumber(number: any) {\n if (typeof number !== 'number') {\n return number;\n }\n const tier = Math.log10(Math.abs(number)) / 3 | 0;\n\n if (tier == 0) {\n return number;\n }\n\n // get suffix and determine scale\n const suffix = SI_SYMBOL[tier];\n const scale = Math.pow(10, tier * 3);\n\n // scale the number\n var scaled = number / scale;\n\n // format number and add suffix\n return scaled.toFixed(1) + suffix;\n }\n\n getLegendView(colorScale?: any) {\n if (this.state.props.showlegend === 'hide') {\n return null;\n }\n const props = this.state.props;\n let top = props.showlegend === 'bottom' ? parseInt(this.styles.root.height as string) : 0;\n if (top) {\n top = top - (50); // remove legendHeight\n }\n const orientation = (props.showlegend === 'right' || props.showlegend === 'left') ? 'vertical' : 'horizontal';\n return <VictoryLegend\n colorScale={colorScale}\n name={'legendData'}\n orientation={orientation}\n gutter={20}\n data={this.state.legendData}\n style={{ border: { stroke: 'none' } }}\n borderPadding={{top: 30, left: 50}}\n y={top}\n />\n }\n\n getYScaleMinValue(value: number) {\n const _min = Math.floor(value);\n return Math.abs(value) - _min > 0 ? value - .1 : _min - 1;\n };\n\n // x axis with vertical lines having grid stroke colors\n getXaxis() {\n const minIndex = 0;\n const maxIndex = this.state.xaxisDatakeyArr.length - 1;\n const props = this.state.props;\n const getTickValueLabel = props.xtickexpr as any;\n return <VictoryAxis crossAxis={false} label={(props.xaxislabel || props.xaxisdatakey || \"name\") + (props.xunits ? `(${props.xunits})` : '')}\n style={{\n axisLabel: this.theme.mergeStyle(this.styles.axisLabel, this.styles.yAxisLabel, {padding: props.yaxislabeldistance}),\n grid: props.hidegridxaxis ?\n { stroke: null } : this.theme.mergeStyle(this.styles.grid, this.styles.xGrid),\n axis: props.showxaxis === false ?\n { stroke: 'none' } : this.theme.mergeStyle(this.styles.axis, this.styles.xAxis),\n ticks: this.theme.mergeStyle(this.styles.ticks, this.styles.xTicks),\n tickLabels: this.theme.mergeStyle(this.styles.tickLabels, this.styles.xTickLabels)\n }}\n fixLabelOverlap= {props.autoadjustlabels?true:false}\n tickLabelComponent={<VictoryLabel angle={props.labelangle || 0} />} theme={this.state.theme}\n tickCount={this.state.xaxisDatakeyArr.length} \n invertAxis={this.isRTL}\n tickFormat= {(d, i, ticks) => {\n if (getTickValueLabel) {\n return getTickValueLabel(this.state.xaxisDatakeyArr[d], i, (ticks || []).length);\n } else if (this.state.xaxisDatakeyArr) {\n return this.state.xaxisDatakeyArr[d];\n }\n return '';\n }}\n />; \n} \n\n\n /* y axis with horizontal lines having grid stroke colors*/\n getYAxis() {\n const props = this.state.props;\n if (props.showyaxis === false) {\n return null;\n }\n const getTickValueLabel = props.ytickexpr as any;\n return <VictoryAxis crossAxis={false} label={(props.yaxislabel || props.yaxisdatakey) + (props.yunits ? `(${props.yunits})` : '')}\n style={{\n axisLabel: this.theme.mergeStyle(this.styles.axisLabel, this.styles.yAxisLabel, {padding: props.yaxislabeldistance}),\n grid: props.hidegridyaxis ? { stroke: null } : this.theme.mergeStyle(this.styles.grid, this.styles.yGrid),\n axis: props.showxaxis === false ?\n { stroke: 'none' } : this.theme.mergeStyle(this.styles.axis, this.styles.yAxis),\n ticks: this.theme.mergeStyle(this.styles.ticks, this.styles.yTicks),\n tickLabels: this.theme.mergeStyle(this.styles.tickLabels, this.styles.yTickLabels)\n }}\n fixLabelOverlap= {props.autoadjustlabels?true:false}\n theme={this.state.theme}\n tickFormat= {(d, i, ticks) => {\n if (getTickValueLabel) {\n return getTickValueLabel(d, i, (ticks || []).length);\n }\n return this.abbreviateNumber(d);\n }}\n dependentAxis />;\n }\n \n \n\n // X/Y Domain properties are supported only for Column and Area charts\n isAxisDomainSupported(type: string) {\n return type === 'Column'|| type === 'Area';\n }\n\n // Check whether X/Y Domain was set to Min and is supported for the present chart\n isAxisDomainValid(axis: string) {\n const props = this.state.props;\n if (get(props, axis + 'domain') === 'Min' && (this.isAxisDomainSupported(props.type))) {\n return true;\n }\n return false;\n };\n\n// Check whether min and max values are finite or not\n areMinMaxValuesValid(values: any) {\n if (isFinite(values.min) && isFinite(values.max)) {\n return true;\n }\n return false;\n };\n\n setDomainValues() {\n let xDomainValues, yDomainValues;\n if (this.state.data.length > 0) {\n if (this.isAxisDomainValid('x') && typeof this.state.data[0].x === 'number') {\n xDomainValues = this.getXMinMaxValues(this.state.data[0]);\n }\n if (this.isAxisDomainValid('y')) {\n yDomainValues = this.getYMinMaxValues(this.state.data);\n }\n if (xDomainValues) {\n this.updateState({\n chartMinX: yDomainValues.min.x,\n chartMaxX: yDomainValues.max.x\n } as S)\n }\n let yMin;\n if (yDomainValues) {\n if (this.areMinMaxValuesValid({max: yDomainValues.max.y, min: yDomainValues.min.y})) {\n yMin = this.getYScaleMinValue(yDomainValues.min.y);\n }\n this.updateState({\n chartMinY: yMin ? yMin : yDomainValues.min.y,\n chartMaxY: yDomainValues.max.y\n } as S);\n }\n }\n }\n\n // Getting the min and max values among all the x values\n getXMinMaxValues(datum: Array<{x: number, y: any}>) {\n if (!datum) {\n return;\n }\n const xValues: any = {};\n /*\n compute the min x valuex\n eg: When data has objects\n input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]\n min x: 1\n eg: When data has arrays\n input: [[10, 20], [20, 30], [30, 40]];\n min x: 10\n */\n xValues.min = minBy(datum, (dataObject: {x: any, y: any}) => dataObject.x) || {x: undefined};\n /*\n compute the max x value\n eg: When data has objects\n input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]\n max x: 3\n eg: When data has arrays\n input: [[10, 20], [20, 30], [30, 40]];\n max x: 30\n */\n xValues.max = maxBy(datum, (dataObject: {x: any, y: any}) => dataObject.x)|| {x: undefined};\n return xValues;\n }\n\n // Getting the min and max values among all the y values\n getYMinMaxValues(datum: Array<Array<{x: any, y: number}>>) {\n const yValues: any = {},\n minValues: any = [],\n maxValues: any = [];\n if (!datum) {\n return;\n }\n\n /*\n Getting the min and max y values among all the series of data\n compute the min y value\n eg: When data has objects\n input: [[{x:1, y:2}, {x:2, y:3}, {x:3, y:4}], [{x:2, y:3}, {x:3, y:4}, {x:4, y:5}]]\n min y values : '2'(among first set) & '3'(among second set)\n max y values : '4'(among first set) & '5'(among second set)\n\n eg: When data has arrays\n input: [[[10, 20], [20, 30], [30, 40]], [[20, 30], [30, 40], [40, 50]]]\n min y values : '20'(among first set) & '30'(among second set)\n max y values : '40'(among first set) & '50'(among second set)\n */\n\n forEach(datum, data => {\n if (data && !isEmpty(data)) {\n minValues.push(minBy(data, (dataObject: {x: any, y: any}) => { return dataObject.y }));\n maxValues.push(maxBy(data, (dataObject: {x: any, y: any}) => { return dataObject.y }));\n }\n });\n // Gets the least and highest values among all the min and max values of respective series of data\n yValues.min = minBy(minValues, (dataObject: {x: any, y: any}) => dataObject.y) || {y: undefined};\n yValues.max = maxBy(maxValues, (dataObject: {x: any, y: any}) => dataObject.y) || {y: undefined};\n return yValues;\n }\n\n setHeightWidthOnChart(cb?: () => void) {\n let height = this.styles.root.height || 250;\n let width = this.styles.root.width || screenWidth;\n if (height && typeof height === 'string') {\n height = parseInt(height);\n }\n if (width && typeof width === 'string') {\n width = parseInt(width);\n }\n this.updateState({\n chartHeight: height,\n chartWidth: width\n } as S, cb);\n }\n\n applyTheme(props: BaseChartComponentProps) {\n let themeName = props.theme ? props.theme : (props.type === 'Pie' ? 'Azure' : 'Terrestrial');\n let colorsToUse = [];\n if (typeof props.customcolors === 'string' && !isEmpty(props.customcolors)) {\n colorsToUse = props.customcolors.split(',').map(trim);\n }\n let themeToUse;\n if (typeof themeName === 'string') {\n if (!colorsToUse.length) {\n colorsToUse = ThemeFactory.getColorsObj(themeName);\n }\n themeToUse = ThemeFactory.getTheme(themeName, props.styles, colorsToUse);\n } else if (typeof themeName === 'object') {\n // if theme is passed as an object then use that custom theme.\n themeToUse = props.theme;\n }\n this.updateState({\n colors: colorsToUse,\n theme: themeToUse\n } as S);\n }\n\n prepareLegendData() {\n const props = this.state.props;\n if (this.state.yAxis) {\n let ldata: any;\n if (props.type === 'Stack') {\n const data = orderBy(this.state.data[0], 'y', 'asc');\n ldata = data.map((d: any) => {\n return {\n name: this.state.xaxisDatakeyArr[d.x]\n }\n });\n } else {\n ldata = this.state.yAxis.map((d: string) => {\n return {\n name: d\n }\n });\n }\n\n this.updateState({\n legendData: ldata\n } as S);\n }\n }\n\n prepareEvents(name: string) {\n return this.state.legendData.map((_: any, idx: number) => {\n return {\n childName: ['legend'],\n target: 'data',\n eventKey: String(idx),\n eventHandlers: {\n onClick: () => {\n return [\n {\n childName: [name + '_' + idx],\n target: 'data',\n eventKey: 'all',\n mutation: (props: any) => {\n return null;\n }\n }\n ];\n },\n onMouseOver: () => {\n },\n onMouseOut: () => {\n }\n }\n };\n });\n }\n\n // If date string is bound to xaxis then we are pushing the x values as indexes.\n getxAxisVal(dataObj: {[key: string] : any}, xKey: string, index: number, xaxisDatakeyArr: Array<any>) {\n const value: any = get(dataObj, xKey);\n if (moment(value, true).isValid() || isNaN(value)) {\n xaxisDatakeyArr.push(value);\n return index;\n }\n return value;\n }\n\n prepareDataItems(dataset: any) {\n const props = this.state.props;\n let xaxis = props.xaxisdatakey;\n let yaxis = props.yaxisdatakey;\n let xaxisDatakeyArr: Array<any> = [];\n let datasets: any = [];\n\n if (xaxis && yaxis) {\n let yPts = yaxis.split(',');\n yPts.forEach((y: any) => {\n if (xaxis !== y) {\n datasets.push(dataset.map((o: {[key: string] : any}, xindex: number) => {\n const xVal = this.getxAxisVal(o, xaxis, xindex, xaxisDatakeyArr);\n let yVal: string | number = get(o, y);\n if (typeof yVal === 'string') {\n yVal = parseFloat(yVal) || yVal;\n }\n let dataObj = {\n x: xVal,\n y: yVal,\n };\n if (props.bubblesize) {\n set(dataObj, 'size', get(o, props.bubblesize, 5));\n }\n if (props.shape) {\n set(dataObj, 'symbol', shapes[props.shape]);\n }\n return dataObj;\n }));\n }\n });\n // chartTransform\n this.invokeEventCallback('onTransform', [undefined, this.proxy]);\n if (props.type == 'Pie' || props.type === 'Donut') {\n // for animation effect\n setTimeout(() => {\n this.updateState({\n endAngle: 360,\n } as S);\n }, 500);\n }\n this.updateData(datasets, yPts, xaxisDatakeyArr);\n }\n }\n\n\n protected renderLoadingIcon() {\n const props = this.state.props;\n return (<WmIcon styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\n caption={props.loadingdatamsg}></WmIcon>);\n }\n\n updateData(datasets: any, yPts: any, xaxisDatakeyArr: Array<any>) {\n const props = this.state.props;\n this.updateState({\n data: datasets as any,\n yAxis: yPts,\n xaxisDatakeyArr: xaxisDatakeyArr\n } as S, () => {\n this.prepareLegendData();\n if (!props.labeltype || props.labeltype === 'percent') {\n this.setTotal(this.state.data[0]);\n }\n if (this.isAxisDomainSupported(props.type) && (props.ydomain || props.xdomain)) {\n this.setDomainValues();\n }\n this.updateState({\n loading: false\n } as S);\n });\n }\n\n setTotal(data: Array<{x: any, y: number}>) {\n let total = 0;\n data.forEach((d: {x: any, y: any}) => {\n total += d.y as number;\n });\n this.updateState({\n total: total\n } as S);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n let units = '';\n switch(name) {\n case 'customcolors':\n if (isEmpty($new)) {\n return;\n }\n if (typeof $new === 'string') {\n $new = $new.split(',');\n }\n this.updateState({\n colors: $new\n } as S);\n break;\n case 'theme':\n this.applyTheme(props);\n break;\n case 'dataset':\n if (!isArray($new)) {\n if (isObject($new) && !isEmpty($new)) {\n $new = [$new];\n } else {\n $new = [];\n }\n }\n $new && this.prepareDataItems($new);\n break;\n case 'xaxislabel':\n if (props.xunits) {\n units = ' (' + props.xunits + ')';\n }\n this.updateState({\n xLabel: $new + units\n } as S);\n break;\n case 'yaxislabel':\n if (props.yunits) {\n units = ' (' + props.yunits + ')';\n }\n this.updateState({\n yLabel: $new + units\n } as S);\n break;\n }\n }\n}\n"],"mappings":"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"}
@@ -18,10 +18,9 @@ export default class BaseChartComponentProps extends BaseProps {
18
18
  _defineProperty(this, "staggerlabels", false);
19
19
  _defineProperty(this, "yaxislabel", '');
20
20
  _defineProperty(this, "yunits", '');
21
- _defineProperty(this, "yaxislabeldistance", 50);
21
+ _defineProperty(this, "yaxislabeldistance", 60);
22
22
  _defineProperty(this, "xaxislabeldistance", 30);
23
- // customcolors: string | Array<string> = '';
24
- _defineProperty(this, "customcolors", void 0);
23
+ _defineProperty(this, "customcolors", '');
25
24
  _defineProperty(this, "legendheight", 0);
26
25
  _defineProperty(this, "labellegendheight", 0);
27
26
  _defineProperty(this, "labeltype", 'percent');
@@ -42,9 +41,14 @@ export default class BaseChartComponentProps extends BaseProps {
42
41
  _defineProperty(this, "showvalues", false);
43
42
  _defineProperty(this, "showyaxis", true);
44
43
  _defineProperty(this, "showxaxis", true);
45
- _defineProperty(this, "ydomain", '');
46
- _defineProperty(this, "xdomain", '');
44
+ _defineProperty(this, "ydomain", 'Min');
45
+ _defineProperty(this, "xdomain", 'Min');
47
46
  _defineProperty(this, "labelangle", 0);
47
+ _defineProperty(this, "xtickexpr", void 0);
48
+ _defineProperty(this, "ytickexpr", void 0);
49
+ _defineProperty(this, "hidegridxaxis", false);
50
+ _defineProperty(this, "hidegridyaxis", false);
51
+ _defineProperty(this, "autoadjustlabels", false);
48
52
  }
49
53
  }
50
54
  //# sourceMappingURL=basechart.props.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BaseProps","BaseChartComponentProps","constructor","arguments","_defineProperty"],"sources":["basechart.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class BaseChartComponentProps extends BaseProps {\n xaxisdatakey: string = '';\n yaxisdatakey: string = '';\n iconclass = '';\n dataset: any;\n type: string = '';\n title: string = '';\n subheading: string = '';\n theme: string = '';\n xaxislabel: string = '';\n xunits: string = '';\n staggerlabels: boolean = false;\n yaxislabel: string = '';\n yunits: string = '';\n yaxislabeldistance: number = 50;\n xaxislabeldistance: number = 30;\n // customcolors: string | Array<string> = '';\n customcolors: any;\n legendheight: number = 0;\n labellegendheight: number = 0;\n labeltype: 'percent' | 'value' | 'key-value' | 'key' = 'percent';\n bubblesize: string= '';\n shape: string = '';\n loadingicon='fa fa-circle-o-notch fa-pulse';\n loadingdatamsg = 'Loading...';\n nodatamessage = 'No data found';\n offsetbottom: number = 50;\n offsettop: number = 70;\n offsetleft: number = 65;\n offsetright: number = 25;\n showlegend: string = 'top';\n showlabels: 'inside' | 'outside' | 'hide' = 'outside';\n tooltips: boolean = false;\n interpolation: string = 'linear';\n highlightpoints: boolean = false;\n showvalues: boolean = false;\n showyaxis: boolean = true;\n showxaxis: boolean = true;\n ydomain: string = '';\n xdomain: string = '';\n labelangle: number = 0;\n \n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,uBAAuB,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,uBACtC,EAAE;IAAAA,eAAA,uBACF,EAAE;IAAAA,eAAA,oBACb,EAAE;IAAAA,eAAA;IAAAA,eAAA,eAEC,EAAE;IAAAA,eAAA,gBACD,EAAE;IAAAA,eAAA,qBACG,EAAE;IAAAA,eAAA,gBACP,EAAE;IAAAA,eAAA,qBACG,EAAE;IAAAA,eAAA,iBACN,EAAE;IAAAA,eAAA,wBACM,KAAK;IAAAA,eAAA,qBACT,EAAE;IAAAA,eAAA,iBACN,EAAE;IAAAA,eAAA,6BACU,EAAE;IAAAA,eAAA,6BACF,EAAE;IAC/B;IAAAA,eAAA;IAAAA,eAAA,uBAEuB,CAAC;IAAAA,eAAA,4BACI,CAAC;IAAAA,eAAA,oBAC0B,SAAS;IAAAA,eAAA,qBAC5C,EAAE;IAAAA,eAAA,gBACN,EAAE;IAAAA,eAAA,sBACN,+BAA+B;IAAAA,eAAA,yBAC1B,YAAY;IAAAA,eAAA,wBACb,eAAe;IAAAA,eAAA,uBACR,EAAE;IAAAA,eAAA,oBACL,EAAE;IAAAA,eAAA,qBACD,EAAE;IAAAA,eAAA,sBACD,EAAE;IAAAA,eAAA,qBACH,KAAK;IAAAA,eAAA,qBACkB,SAAS;IAAAA,eAAA,mBACjC,KAAK;IAAAA,eAAA,wBACD,QAAQ;IAAAA,eAAA,0BACL,KAAK;IAAAA,eAAA,qBACV,KAAK;IAAAA,eAAA,oBACN,IAAI;IAAAA,eAAA,oBACJ,IAAI;IAAAA,eAAA,kBACP,EAAE;IAAAA,eAAA,kBACF,EAAE;IAAAA,eAAA,qBACC,CAAC;EAAA;AAExB"}
1
+ {"version":3,"names":["BaseProps","BaseChartComponentProps","constructor","arguments","_defineProperty"],"sources":["basechart.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class BaseChartComponentProps extends BaseProps {\n xaxisdatakey: string = '';\n yaxisdatakey: string = '';\n iconclass = '';\n dataset: any;\n type: string = '';\n title: string = '';\n subheading: string = '';\n theme: string = '';\n xaxislabel: string = '';\n xunits: string = '';\n staggerlabels: boolean = false;\n yaxislabel: string = '';\n yunits: string = '';\n yaxislabeldistance: number = 60;\n xaxislabeldistance: number = 30;\n customcolors: string | Array<string> = '';\n legendheight: number = 0;\n labellegendheight: number = 0;\n labeltype: 'percent' | 'value' | 'key-value' | 'key' = 'percent';\n bubblesize: string= '';\n shape: string = '';\n loadingicon='fa fa-circle-o-notch fa-pulse';\n loadingdatamsg = 'Loading...';\n nodatamessage = 'No data found';\n offsetbottom: number = 50;\n offsettop: number = 70;\n offsetleft: number = 65;\n offsetright: number = 25;\n showlegend: string = 'top';\n showlabels: 'inside' | 'outside' | 'hide' = 'outside';\n tooltips: boolean = false;\n interpolation: string = 'linear';\n highlightpoints: boolean = false;\n showvalues: boolean = false;\n showyaxis: boolean = true;\n showxaxis: boolean = true;\n ydomain: string = 'Min';\n xdomain: string = 'Min';\n labelangle: number = 0;\n xtickexpr?: (item: any, index: number, length: number) => any;\n ytickexpr?: (item: any, index: number, length: number) => any;\n hidegridxaxis: boolean = false;\n hidegridyaxis: boolean = false;\n autoadjustlabels: boolean = false;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,uBAAuB,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,uBACtC,EAAE;IAAAA,eAAA,uBACF,EAAE;IAAAA,eAAA,oBACb,EAAE;IAAAA,eAAA;IAAAA,eAAA,eAEC,EAAE;IAAAA,eAAA,gBACD,EAAE;IAAAA,eAAA,qBACG,EAAE;IAAAA,eAAA,gBACP,EAAE;IAAAA,eAAA,qBACG,EAAE;IAAAA,eAAA,iBACN,EAAE;IAAAA,eAAA,wBACM,KAAK;IAAAA,eAAA,qBACT,EAAE;IAAAA,eAAA,iBACN,EAAE;IAAAA,eAAA,6BACU,EAAE;IAAAA,eAAA,6BACF,EAAE;IAAAA,eAAA,uBACQ,EAAE;IAAAA,eAAA,uBAClB,CAAC;IAAAA,eAAA,4BACI,CAAC;IAAAA,eAAA,oBAC0B,SAAS;IAAAA,eAAA,qBAC5C,EAAE;IAAAA,eAAA,gBACN,EAAE;IAAAA,eAAA,sBACN,+BAA+B;IAAAA,eAAA,yBAC1B,YAAY;IAAAA,eAAA,wBACb,eAAe;IAAAA,eAAA,uBACR,EAAE;IAAAA,eAAA,oBACL,EAAE;IAAAA,eAAA,qBACD,EAAE;IAAAA,eAAA,sBACD,EAAE;IAAAA,eAAA,qBACH,KAAK;IAAAA,eAAA,qBACkB,SAAS;IAAAA,eAAA,mBACjC,KAAK;IAAAA,eAAA,wBACD,QAAQ;IAAAA,eAAA,0BACL,KAAK;IAAAA,eAAA,qBACV,KAAK;IAAAA,eAAA,oBACN,IAAI;IAAAA,eAAA,oBACJ,IAAI;IAAAA,eAAA,kBACP,KAAK;IAAAA,eAAA,kBACL,KAAK;IAAAA,eAAA,qBACF,CAAC;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,wBAGG,KAAK;IAAAA,eAAA,wBACL,KAAK;IAAAA,eAAA,2BACF,KAAK;EAAA;AACnC"}
@@ -1,3 +1,4 @@
1
+ import Color from "color";
1
2
  import BASE_THEME from '@wavemaker/app-rn-runtime/styles/theme';
2
3
  import { defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';
3
4
  export const DEFAULT_CLASS = 'app-chart';
@@ -16,8 +17,7 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
16
17
  title: {
17
18
  color: themeVariables.chartTitleColor,
18
19
  fontSize: 20,
19
- lineHeight: 24,
20
- paddingLeft: 10
20
+ lineHeight: 24
21
21
  },
22
22
  subHeading: {
23
23
  fontSize: 12,
@@ -26,7 +26,30 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
26
26
  },
27
27
  legendText: {},
28
28
  legenedDot: {},
29
- grid: {},
29
+ axis: {
30
+ stroke: Color(themeVariables.chartAxisColor).fade(0.3).rgb().toString()
31
+ },
32
+ xAxis: {},
33
+ yAxis: {},
34
+ axisLabel: {},
35
+ xAxisLabel: {},
36
+ yAxisLabel: {},
37
+ grid: {
38
+ stroke: Color(themeVariables.chartAxisColor).fade(0.8).rgb().toString(),
39
+ strokeDasharray: '16 4'
40
+ },
41
+ xGrid: {},
42
+ yGrid: {},
43
+ ticks: {
44
+ stroke: Color(themeVariables.chartAxisColor).fade(0.8).rgb().toString()
45
+ },
46
+ xTicks: {},
47
+ yTicks: {},
48
+ tickLabels: {
49
+ stroke: Color(themeVariables.chartAxisColor).fade(0.8).rgb().toString()
50
+ },
51
+ xTickLabels: {},
52
+ yTickLabels: {},
30
53
  barChart: {}
31
54
  });
32
55
  addStyle(DEFAULT_CLASS, '', defaultStyles);
@@ -1 +1 @@
1
- {"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","text","icon","fontSize","line","color","chartLineColor","title","chartTitleColor","lineHeight","paddingLeft","subHeading","chartSubTitleColor","legendText","legenedDot","grid","barChart"],"sources":["basechart.styles.ts"],"sourcesContent":["import { TextStyle, ViewStyle } from 'react-native';\nimport BASE_THEME from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { VictoryStyleObject } from \"victory-core\";\nimport { WmIconStyles } from '@wavemaker/app-rn-runtime/components/basic/icon/icon.styles';\n\n\nexport type BaseChartComponentStyles = BaseStyles & {\n title: TextStyle,\n icon: WmIconStyles,\n subHeading: TextStyle,\n grid: VictoryStyleObject,\n legendText: TextStyle,\n legenedDot: ViewStyle \n};\n\nexport const DEFAULT_CLASS = 'app-chart';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: BaseChartComponentStyles = defineStyles({\n root: {},\n text: {},\n icon: {\n icon: {\n fontSize: 20\n }\n } as WmIconStyles,\n line: {\n color: themeVariables.chartLineColor\n },\n title: {\n color: themeVariables.chartTitleColor,\n fontSize: 20,\n lineHeight: 24,\n paddingLeft: 10,\n },\n subHeading: {\n fontSize: 12,\n lineHeight: 16,\n color: themeVariables.chartSubTitleColor\n },\n legendText: {},\n legenedDot: {},\n grid: {},\n barChart: {}\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n});\n"],"mappings":"AACA,OAAOA,UAAU,MAAM,wCAAwC;AAC/D,SAAqBC,YAAY,QAAQ,+CAA+C;AAcxF,OAAO,MAAMC,aAAa,GAAG,WAAW;AACxCF,UAAU,CAACG,aAAa,CAAC,CAACC,cAAc,EAAEC,QAAQ,KAAK;EACrD,MAAMC,aAAuC,GAAGL,YAAY,CAAC;IAC3DM,IAAI,EAAE,CAAC,CAAC;IACRC,IAAI,EAAE,CAAC,CAAC;IACRC,IAAI,EAAE;MACJA,IAAI,EAAE;QACJC,QAAQ,EAAE;MACZ;IACF,CAAiB;IACjBC,IAAI,EAAE;MACJC,KAAK,EAAER,cAAc,CAACS;IACxB,CAAC;IACDC,KAAK,EAAE;MACLF,KAAK,EAAER,cAAc,CAACW,eAAe;MACrCL,QAAQ,EAAE,EAAE;MACZM,UAAU,EAAE,EAAE;MACdC,WAAW,EAAE;IACf,CAAC;IACDC,UAAU,EAAE;MACVR,QAAQ,EAAE,EAAE;MACZM,UAAU,EAAE,EAAE;MACdJ,KAAK,EAAER,cAAc,CAACe;IACxB,CAAC;IACDC,UAAU,EAAE,CAAC,CAAC;IACdC,UAAU,EAAE,CAAC,CAAC;IACdC,IAAI,EAAE,CAAC,CAAC;IACRC,QAAQ,EAAE,CAAC;EACb,CAAC,CAAC;EAEFlB,QAAQ,CAACH,aAAa,EAAE,EAAE,EAAEI,aAAa,CAAC;AAC5C,CAAC,CAAC"}
1
+ {"version":3,"names":["Color","BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","text","icon","fontSize","line","color","chartLineColor","title","chartTitleColor","lineHeight","subHeading","chartSubTitleColor","legendText","legenedDot","axis","stroke","chartAxisColor","fade","rgb","toString","xAxis","yAxis","axisLabel","xAxisLabel","yAxisLabel","grid","strokeDasharray","xGrid","yGrid","ticks","xTicks","yTicks","tickLabels","xTickLabels","yTickLabels","barChart"],"sources":["basechart.styles.ts"],"sourcesContent":["import { TextStyle, ViewStyle } from 'react-native';\nimport Color from \"color\";\nimport BASE_THEME from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { VictoryStyleObject } from \"victory-core\";\nimport { WmIconStyles } from '@wavemaker/app-rn-runtime/components/basic/icon/icon.styles';\n\n\nexport type BaseChartComponentStyles = BaseStyles & {\n title: TextStyle,\n icon: WmIconStyles,\n subHeading: TextStyle,\n axis: VictoryStyleObject,\n xAxis: VictoryStyleObject,\n yAxis: VictoryStyleObject,\n axisLabel: VictoryStyleObject,\n xAxisLabel: VictoryStyleObject,\n yAxisLabel: VictoryStyleObject,\n ticks: VictoryStyleObject,\n xTicks: VictoryStyleObject,\n yTicks: VictoryStyleObject,\n tickLabels: VictoryStyleObject,\n xTickLabels: VictoryStyleObject,\n yTickLabels: VictoryStyleObject,\n grid: VictoryStyleObject,\n xGrid: VictoryStyleObject,\n yGrid: VictoryStyleObject,\n legendText: TextStyle,\n legenedDot: ViewStyle \n};\n\nexport const DEFAULT_CLASS = 'app-chart';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: BaseChartComponentStyles = defineStyles({\n root: {},\n text: {},\n icon: {\n icon: {\n fontSize: 20\n }\n } as WmIconStyles,\n line: {\n color: themeVariables.chartLineColor\n },\n title: {\n color: themeVariables.chartTitleColor,\n fontSize: 20,\n lineHeight: 24,\n },\n subHeading: {\n fontSize: 12,\n lineHeight: 16,\n color: themeVariables.chartSubTitleColor\n },\n legendText: {},\n legenedDot: {},\n axis: {\n stroke: Color(themeVariables.chartAxisColor).fade(0.3).rgb().toString()\n } as any,\n xAxis: {} as any,\n yAxis: {} as any,\n axisLabel: {} as any,\n xAxisLabel: {} as any,\n yAxisLabel: {} as any,\n grid: {\n stroke: Color(themeVariables.chartAxisColor).fade(0.8).rgb().toString(),\n strokeDasharray: '16 4'\n } as any,\n xGrid: {} as any,\n yGrid: {} as any,\n ticks: {\n stroke: Color(themeVariables.chartAxisColor).fade(0.8).rgb().toString(),\n } as any,\n xTicks: {} as any,\n yTicks: {} as any,\n tickLabels: {\n stroke: Color(themeVariables.chartAxisColor).fade(0.8).rgb().toString(),\n } as any,\n xTickLabels: {} as any,\n yTickLabels: {} as any,\n barChart: {}\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n});\n"],"mappings":"AACA,OAAOA,KAAK,MAAO,OAAO;AAC1B,OAAOC,UAAU,MAAM,wCAAwC;AAC/D,SAAqBC,YAAY,QAAQ,+CAA+C;AA4BxF,OAAO,MAAMC,aAAa,GAAG,WAAW;AACxCF,UAAU,CAACG,aAAa,CAAC,CAACC,cAAc,EAAEC,QAAQ,KAAK;EACrD,MAAMC,aAAuC,GAAGL,YAAY,CAAC;IAC3DM,IAAI,EAAE,CAAC,CAAC;IACRC,IAAI,EAAE,CAAC,CAAC;IACRC,IAAI,EAAE;MACJA,IAAI,EAAE;QACJC,QAAQ,EAAE;MACZ;IACF,CAAiB;IACjBC,IAAI,EAAE;MACJC,KAAK,EAAER,cAAc,CAACS;IACxB,CAAC;IACDC,KAAK,EAAE;MACLF,KAAK,EAAER,cAAc,CAACW,eAAe;MACrCL,QAAQ,EAAE,EAAE;MACZM,UAAU,EAAE;IACd,CAAC;IACDC,UAAU,EAAE;MACVP,QAAQ,EAAE,EAAE;MACZM,UAAU,EAAE,EAAE;MACdJ,KAAK,EAAER,cAAc,CAACc;IACxB,CAAC;IACDC,UAAU,EAAE,CAAC,CAAC;IACdC,UAAU,EAAE,CAAC,CAAC;IACdC,IAAI,EAAE;MACJC,MAAM,EAAEvB,KAAK,CAACK,cAAc,CAACmB,cAAc,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC;IACxE,CAAQ;IACRC,KAAK,EAAE,CAAC,CAAQ;IAChBC,KAAK,EAAE,CAAC,CAAQ;IAChBC,SAAS,EAAE,CAAC,CAAQ;IACpBC,UAAU,EAAE,CAAC,CAAQ;IACrBC,UAAU,EAAE,CAAC,CAAQ;IACrBC,IAAI,EAAE;MACJV,MAAM,EAAEvB,KAAK,CAACK,cAAc,CAACmB,cAAc,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;MACvEO,eAAe,EAAE;IACnB,CAAQ;IACRC,KAAK,EAAE,CAAC,CAAQ;IAChBC,KAAK,EAAE,CAAC,CAAQ;IAChBC,KAAK,EAAE;MACLd,MAAM,EAAEvB,KAAK,CAACK,cAAc,CAACmB,cAAc,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC;IACxE,CAAQ;IACRW,MAAM,EAAE,CAAC,CAAQ;IACjBC,MAAM,EAAE,CAAC,CAAQ;IACjBC,UAAU,EAAE;MACVjB,MAAM,EAAEvB,KAAK,CAACK,cAAc,CAACmB,cAAc,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC;IACxE,CAAQ;IACRc,WAAW,EAAE,CAAC,CAAQ;IACtBC,WAAW,EAAE,CAAC,CAAQ;IACtBC,QAAQ,EAAE,CAAC;EACb,CAAC,CAAC;EAEFrC,QAAQ,CAACH,aAAa,EAAE,EAAE,EAAEI,aAAa,CAAC;AAC5C,CAAC,CAAC"}