@wavemaker/app-rn-runtime 11.7.0-next.139427 → 11.7.0-next.139430

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 (35) hide show
  1. app-rn-runtime/components/chart/bar-chart/bar-chart.component.js +5 -22
  2. app-rn-runtime/components/chart/bar-chart/bar-chart.component.js.map +1 -1
  3. app-rn-runtime/components/chart/basechart.component.js +23 -1
  4. app-rn-runtime/components/chart/basechart.component.js.map +1 -1
  5. app-rn-runtime/components/chart/bubble-chart/bubble-chart.component.js +4 -2
  6. app-rn-runtime/components/chart/bubble-chart/bubble-chart.component.js.map +1 -1
  7. app-rn-runtime/components/chart/line-chart/line-chart.component.js +4 -21
  8. app-rn-runtime/components/chart/line-chart/line-chart.component.js.map +1 -1
  9. app-rn-runtime/components/container/container.component.js +1 -3
  10. app-rn-runtime/components/container/container.component.js.map +1 -1
  11. app-rn-runtime/components/container/wizard/wizard.component.js +2 -1
  12. app-rn-runtime/components/container/wizard/wizard.component.js.map +1 -1
  13. app-rn-runtime/components/container/wizard/wizard.styles.js +0 -1
  14. app-rn-runtime/components/container/wizard/wizard.styles.js.map +1 -1
  15. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.styles.js +1 -1
  16. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.styles.js.map +1 -1
  17. app-rn-runtime/components/data/form/form.styles.js +1 -1
  18. app-rn-runtime/components/data/form/form.styles.js.map +1 -1
  19. app-rn-runtime/components/data/list/list-action-template/list-action-template.component.js +28 -0
  20. app-rn-runtime/components/data/list/list-action-template/list-action-template.component.js.map +1 -0
  21. app-rn-runtime/components/data/list/list-action-template/list-action-template.props.js +12 -0
  22. app-rn-runtime/components/data/list/list-action-template/list-action-template.props.js.map +1 -0
  23. app-rn-runtime/components/data/list/list-action-template/list-action-template.styles.js +36 -0
  24. app-rn-runtime/components/data/list/list-action-template/list-action-template.styles.js.map +1 -0
  25. app-rn-runtime/components/data/list/list.component.js +14 -2
  26. app-rn-runtime/components/data/list/list.component.js.map +1 -1
  27. app-rn-runtime/components/data/list/list.props.js +1 -0
  28. app-rn-runtime/components/data/list/list.props.js.map +1 -1
  29. app-rn-runtime/components/data/liveform/liveform.component.js +7 -11
  30. app-rn-runtime/components/data/liveform/liveform.component.js.map +1 -1
  31. app-rn-runtime/components/input/fileupload/fileupload.component.js +2 -2
  32. app-rn-runtime/components/input/fileupload/fileupload.component.js.map +1 -1
  33. app-rn-runtime/package.json +3 -3
  34. app-rn-runtime/variables/http.service.js +4 -0
  35. app-rn-runtime/variables/http.service.js.map +1 -1
@@ -1,7 +1,4 @@
1
1
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
3
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
4
- function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
5
2
  import React from 'react';
6
3
  import { View, Text, Platform } from 'react-native';
7
4
  import { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';
@@ -10,25 +7,10 @@ import { BaseChartComponent, BaseChartComponentState } from "@wavemaker/app-rn-r
10
7
  import WmBarChartProps from './bar-chart.props';
11
8
  import { DEFAULT_CLASS } from './bar-chart.styles';
12
9
  import WmIcon from "@wavemaker/app-rn-runtime/components/basic/icon/icon.component";
13
- export class WmBarChartState extends BaseChartComponentState {
14
- constructor() {
15
- super(...arguments);
16
- _defineProperty(this, "chartWidth", 0);
17
- _defineProperty(this, "totalHeight", 0);
18
- }
19
- }
10
+ export class WmBarChartState extends BaseChartComponentState {}
20
11
  export default class WmBarChart extends BaseChartComponent {
21
12
  constructor(props) {
22
13
  super(props, DEFAULT_CLASS, new WmBarChartProps(), new WmBarChartState());
23
- _defineProperty(this, "onViewLayoutChange", e => {
24
- var _e$nativeEvent;
25
- console.log(e.nativeEvent.layout);
26
- let viewWidth = e.nativeEvent.layout.width;
27
- this.updateState({
28
- chartWidth: Number(viewWidth),
29
- totalHeight: Number((_e$nativeEvent = e.nativeEvent) === null || _e$nativeEvent === void 0 ? void 0 : _e$nativeEvent.layout.height)
30
- });
31
- });
32
14
  }
33
15
  labelFn(data) {
34
16
  return this.abbreviateNumber(data.datum.y);
@@ -97,13 +79,14 @@ export default class WmBarChart extends BaseChartComponent {
97
79
  if (!this.state.data.length) {
98
80
  return null;
99
81
  }
82
+ this.getLayoutValues();
100
83
  let mindomain = {
101
84
  x: this.props.xdomain === 'Min' ? this.state.chartMinX : undefined,
102
85
  y: this.props.ydomain === 'Min' ? this.state.chartMinY : undefined
103
86
  };
104
87
  return /*#__PURE__*/React.createElement(View, _extends({}, getAccessibilityProps(AccessibilityWidgetType.LINECHART, props), {
105
88
  style: this.styles.root,
106
- onLayout: this.onViewLayoutChange
89
+ onLayout: this.onViewLayoutChange.bind(this)
107
90
  }), this.getTooltip(), /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(View, {
108
91
  style: {
109
92
  flexDirection: 'row',
@@ -118,8 +101,8 @@ export default class WmBarChart extends BaseChartComponent {
118
101
  style: this.styles.subHeading
119
102
  }, props.subheading)), /*#__PURE__*/React.createElement(VictoryChart, {
120
103
  theme: this.state.theme,
121
- height: this.state.totalHeight || this.styles.root.height,
122
- width: this.state.chartWidth || this.screenWidth,
104
+ height: this.styles.root.height,
105
+ width: this.isWidthtPercent ? this.state.chartWidth : this.screenWidth,
123
106
  minDomain: mindomain,
124
107
  padding: {
125
108
  top: props.offsettop,
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Text","Platform","AccessibilityWidgetType","getAccessibilityProps","VictoryChart","VictoryBar","VictoryStack","VictoryGroup","BaseChartComponent","BaseChartComponentState","WmBarChartProps","DEFAULT_CLASS","WmIcon","WmBarChartState","constructor","arguments","_defineProperty","WmBarChart","props","e","_e$nativeEvent","console","log","nativeEvent","layout","viewWidth","width","updateState","chartWidth","Number","totalHeight","height","labelFn","data","abbreviateNumber","datum","y","getBarChart","state","map","d","i","createElement","key","name","horizontal","labels","showvalues","bind","undefined","isRTL","toReversed","alignment","style","customcolors","fill","_ref","colors","x","length","cornerRadius","topLeft","styles","bar","borderTopLeftRadius","topRight","borderTopRightRadius","bottomLeft","borderBottomLeftRadius","bottomRight","borderBottomRightRadius","events","target","eventHandlers","OS","onClick","onSelect","onPress","event","value","index","label","xaxisDatakeyArr","selectedItem","dataset","setTooltipPosition","selectedChartItem","series","_dataObj","tooltipXaxis","tooltipYaxis","isTooltipOpen","invokeEventCallback","proxy","renderWidget","mindomain","xdomain","chartMinX","ydomain","chartMinY","_extends","LINECHART","root","onLayout","onViewLayoutChange","getTooltip","flexDirection","alignItems","iconclass","icon","title","subHeading","subheading","theme","screenWidth","minDomain","padding","top","offsettop","bottom","offsetbottom","left","offsetleft","right","offsetright","getLegendView","getXaxis","getYAxis","viewtype","colorScale","offset"],"sources":["bar-chart.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text, Platform, LayoutChangeEvent } from 'react-native';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \nimport {\n VictoryChart,\n VictoryBar,\n VictoryLegend,\n VictoryStack,\n VictoryGroup\n} from \"victory-native\";\n\nimport {\n BaseChartComponent,\n BaseChartComponentState\n} from \"@wavemaker/app-rn-runtime/components/chart/basechart.component\";\nimport WmBarChartProps from './bar-chart.props';\nimport { DEFAULT_CLASS, WmBarChartStyles } from './bar-chart.styles';\nimport WmIcon from \"@wavemaker/app-rn-runtime/components/basic/icon/icon.component\";\nimport { min } from 'moment';\n\nexport class WmBarChartState extends BaseChartComponentState<WmBarChartProps> {\n chartWidth = 0;\n totalHeight = 0;\n}\n\nexport default class WmBarChart extends BaseChartComponent<WmBarChartProps, WmBarChartState, WmBarChartStyles> {\n\n constructor(props: WmBarChartProps) {\n super(props, DEFAULT_CLASS, new WmBarChartProps(), new WmBarChartState());\n }\n\n labelFn(data: any): string | number | string[] | number[] | null {\n return this.abbreviateNumber(data.datum.y);\n }\n\n getBarChart(props: WmBarChartProps) {\n return this.state.data.map((d: any, i: number) => {\n return <VictoryBar key={props.name + '_' + i}\n horizontal={props.horizontal} labels={props.showvalues ? this.labelFn.bind(this) : undefined}\n data={this.isRTL?d.toReversed():d}\n height={100}\n alignment='start'\n style={props.customcolors?{\n data: {\n fill: ({ datum }) => this.state.colors[datum.x] ?? this.state.colors[datum.x % this.state.colors.length]\n }\n }:{}}\n cornerRadius={{topLeft: this.styles.bar.borderTopLeftRadius, topRight: this.styles.bar.borderTopRightRadius, bottomLeft: this.styles.bar.borderBottomLeftRadius, bottomRight: this.styles.bar.borderBottomRightRadius}}\n events={[{\n target: 'data',\n eventHandlers: Platform.OS == \"web\" ? {\n onClick: this.onSelect.bind(this)\n }:{\n onPress: this.onSelect.bind(this)\n }\n }]}/>\n });\n}\n onViewLayoutChange = (e: LayoutChangeEvent) => {\n console.log(e.nativeEvent.layout)\n let viewWidth = e.nativeEvent.layout.width;\n this.updateState({\n chartWidth: Number(viewWidth),\n totalHeight: Number(e.nativeEvent?.layout.height)\n } as WmBarChartState)\n }\n\nonSelect(event: any, data: any){\n let value = data.data[data.index].y;\n let label = this.state.xaxisDatakeyArr[data.datum.x];\n let selectedItem = this.props.dataset[data.index];\n const nativeEvent = event.nativeEvent;\n this.setTooltipPosition(nativeEvent);\n let selectedChartItem = [{series: 0, x: data.index, y: value,_dataObj: selectedItem},data.index];\n this.updateState({\n tooltipXaxis: label,\n tooltipYaxis: value,\n isTooltipOpen: true,\n selectedItem: {...selectedItem, index: data.index},\n } as WmBarChartState)\n this.invokeEventCallback('onSelect', [event.nativeEvent, this.proxy, selectedItem, selectedChartItem ]);\n}\n\n renderWidget(props: WmBarChartProps) {\n this.invokeEventCallback('onBeforerender', [this.proxy, null]);\n if (!this.state.data.length) {\n return null;\n }\n let mindomain={x: this.props.xdomain === 'Min' ? this.state.chartMinX: undefined, y: this.props.ydomain === 'Min' ? this.state.chartMinY: undefined};\n return (<View\n {...getAccessibilityProps(AccessibilityWidgetType.LINECHART, props)}\n style={this.styles.root}\n onLayout={this.onViewLayoutChange}\n >\n {this.getTooltip()}\n <View>\n <View style={{flexDirection: 'row', alignItems: 'center'}}>\n {props.iconclass ? (<WmIcon iconclass={props.iconclass} styles={this.styles.icon}></WmIcon>) : null }\n <Text style={this.styles.title}>{props.title}</Text>\n </View>\n <Text style={this.styles.subHeading}>{props.subheading}</Text>\n </View>\n <VictoryChart theme={this.state.theme}\n height={(this.state.totalHeight || this.styles.root.height) as number}\n width={this.state.chartWidth || this.screenWidth} \n minDomain={mindomain}\n padding={{ top: props.offsettop, bottom: props.offsetbottom, left: props.offsetleft, right: props.offsetright }}>\n {this.getLegendView()}\n {this.getXaxis()}\n {this.getYAxis()}\n {\n props.viewtype === 'Stacked' ? <VictoryStack colorScale={this.state.colors}>\n {\n this.getBarChart(props)\n }\n </VictoryStack> : <VictoryGroup colorScale={this.state.colors} offset={10} >\n {\n this.getBarChart(props) \n }\n </VictoryGroup>\n }\n </VictoryChart></View>);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","View","Text","Platform","AccessibilityWidgetType","getAccessibilityProps","VictoryChart","VictoryBar","VictoryStack","VictoryGroup","BaseChartComponent","BaseChartComponentState","WmBarChartProps","DEFAULT_CLASS","WmIcon","WmBarChartState","WmBarChart","constructor","props","labelFn","data","abbreviateNumber","datum","y","getBarChart","state","map","d","i","createElement","key","name","horizontal","labels","showvalues","bind","undefined","isRTL","toReversed","height","alignment","style","customcolors","fill","_ref","colors","x","length","cornerRadius","topLeft","styles","bar","borderTopLeftRadius","topRight","borderTopRightRadius","bottomLeft","borderBottomLeftRadius","bottomRight","borderBottomRightRadius","events","target","eventHandlers","OS","onClick","onSelect","onPress","event","value","index","label","xaxisDatakeyArr","selectedItem","dataset","nativeEvent","setTooltipPosition","selectedChartItem","series","_dataObj","updateState","tooltipXaxis","tooltipYaxis","isTooltipOpen","invokeEventCallback","proxy","renderWidget","getLayoutValues","mindomain","xdomain","chartMinX","ydomain","chartMinY","_extends","LINECHART","root","onLayout","onViewLayoutChange","getTooltip","flexDirection","alignItems","iconclass","icon","title","subHeading","subheading","theme","width","isWidthtPercent","chartWidth","screenWidth","minDomain","padding","top","offsettop","bottom","offsetbottom","left","offsetleft","right","offsetright","getLegendView","getXaxis","getYAxis","viewtype","colorScale","offset"],"sources":["bar-chart.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, Text, Platform, LayoutChangeEvent } from 'react-native';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \nimport {\n VictoryChart,\n VictoryBar,\n VictoryLegend,\n VictoryStack,\n VictoryGroup\n} from \"victory-native\";\n\nimport {\n BaseChartComponent,\n BaseChartComponentState\n} from \"@wavemaker/app-rn-runtime/components/chart/basechart.component\";\nimport WmBarChartProps from './bar-chart.props';\nimport { DEFAULT_CLASS, WmBarChartStyles } from './bar-chart.styles';\nimport WmIcon from \"@wavemaker/app-rn-runtime/components/basic/icon/icon.component\";\nimport { min } from 'moment';\n\nexport class WmBarChartState extends BaseChartComponentState<WmBarChartProps> {}\n\nexport default class WmBarChart extends BaseChartComponent<WmBarChartProps, WmBarChartState, WmBarChartStyles> {\n\n constructor(props: WmBarChartProps) {\n super(props, DEFAULT_CLASS, new WmBarChartProps(), new WmBarChartState());\n }\n\n labelFn(data: any): string | number | string[] | number[] | null {\n return this.abbreviateNumber(data.datum.y);\n }\n\n getBarChart(props: WmBarChartProps) {\n return this.state.data.map((d: any, i: number) => {\n return <VictoryBar key={props.name + '_' + i}\n horizontal={props.horizontal} labels={props.showvalues ? this.labelFn.bind(this) : undefined}\n data={this.isRTL?d.toReversed():d}\n height={100}\n alignment='start'\n style={props.customcolors?{\n data: {\n fill: ({ datum }) => this.state.colors[datum.x] ?? this.state.colors[datum.x % this.state.colors.length]\n }\n }:{}}\n cornerRadius={{topLeft: this.styles.bar.borderTopLeftRadius, topRight: this.styles.bar.borderTopRightRadius, bottomLeft: this.styles.bar.borderBottomLeftRadius, bottomRight: this.styles.bar.borderBottomRightRadius}}\n events={[{\n target: 'data',\n eventHandlers: Platform.OS == \"web\" ? {\n onClick: this.onSelect.bind(this)\n }:{\n onPress: this.onSelect.bind(this)\n }\n }]}/>\n });\n }\n\nonSelect(event: any, data: any){\n let value = data.data[data.index].y;\n let label = this.state.xaxisDatakeyArr[data.datum.x];\n let selectedItem = this.props.dataset[data.index];\n const nativeEvent = event.nativeEvent;\n this.setTooltipPosition(nativeEvent);\n let selectedChartItem = [{series: 0, x: data.index, y: value,_dataObj: selectedItem},data.index];\n this.updateState({\n tooltipXaxis: label,\n tooltipYaxis: value,\n isTooltipOpen: true,\n selectedItem: {...selectedItem, index: data.index},\n } as WmBarChartState)\n this.invokeEventCallback('onSelect', [event.nativeEvent, this.proxy, selectedItem, selectedChartItem ]);\n}\n\n renderWidget(props: WmBarChartProps) {\n this.invokeEventCallback('onBeforerender', [this.proxy, null]);\n if (!this.state.data.length) {\n return null;\n }\n this.getLayoutValues();\n let mindomain={x: this.props.xdomain === 'Min' ? this.state.chartMinX: undefined, y: this.props.ydomain === 'Min' ? this.state.chartMinY: undefined};\n return (<View\n {...getAccessibilityProps(AccessibilityWidgetType.LINECHART, props)}\n style={this.styles.root}\n onLayout={this.onViewLayoutChange.bind(this)}\n >\n {this.getTooltip()}\n <View>\n <View style={{flexDirection: 'row', alignItems: 'center'}}>\n {props.iconclass ? (<WmIcon iconclass={props.iconclass} styles={this.styles.icon}></WmIcon>) : null }\n <Text style={this.styles.title}>{props.title}</Text>\n </View>\n <Text style={this.styles.subHeading}>{props.subheading}</Text>\n </View>\n <VictoryChart theme={this.state.theme}\n height={(this.styles.root.height) as number}\n width={this.isWidthtPercent ? this.state.chartWidth : this.screenWidth}\n minDomain={mindomain}\n padding={{ top: props.offsettop, bottom: props.offsetbottom, left: props.offsetleft, right: props.offsetright }}>\n {this.getLegendView()}\n {this.getXaxis()}\n {this.getYAxis()}\n {\n props.viewtype === 'Stacked' ? <VictoryStack colorScale={this.state.colors}>\n {\n this.getBarChart(props)\n }\n </VictoryStack> : <VictoryGroup colorScale={this.state.colors} offset={10} >\n {\n this.getBarChart(props) \n }\n </VictoryGroup>\n }\n </VictoryChart></View>);\n }\n}\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,IAAI,EAAEC,QAAQ,QAA2B,cAAc;AACtE,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,8CAA8C;AAC7G,SACEC,YAAY,EACZC,UAAU,EAEVC,YAAY,EACZC,YAAY,QACP,gBAAgB;AAEvB,SACEC,kBAAkB,EAClBC,uBAAuB,QAClB,gEAAgE;AACvE,OAAOC,eAAe,MAAM,mBAAmB;AAC/C,SAASC,aAAa,QAA0B,oBAAoB;AACpE,OAAOC,MAAM,MAAM,gEAAgE;AAGnF,OAAO,MAAMC,eAAe,SAASJ,uBAAuB,CAAkB;AAE9E,eAAe,MAAMK,UAAU,SAASN,kBAAkB,CAAqD;EAE7GO,WAAWA,CAACC,KAAsB,EAAE;IAClC,KAAK,CAACA,KAAK,EAAEL,aAAa,EAAE,IAAID,eAAe,CAAC,CAAC,EAAE,IAAIG,eAAe,CAAC,CAAC,CAAC;EAC3E;EAEAI,OAAOA,CAACC,IAAS,EAAgD;IAC/D,OAAO,IAAI,CAACC,gBAAgB,CAACD,IAAI,CAACE,KAAK,CAACC,CAAC,CAAC;EAC5C;EAEAC,WAAWA,CAACN,KAAsB,EAAE;IACpC,OAAO,IAAI,CAACO,KAAK,CAACL,IAAI,CAACM,GAAG,CAAC,CAACC,CAAM,EAAEC,CAAS,KAAK;MAChD,oBAAO5B,KAAA,CAAA6B,aAAA,CAACtB,UAAU;QAACuB,GAAG,EAAEZ,KAAK,CAACa,IAAI,GAAG,GAAG,GAAGH,CAAE;QACzCI,UAAU,EAAEd,KAAK,CAACc,UAAW;QAACC,MAAM,EAAEf,KAAK,CAACgB,UAAU,GAAG,IAAI,CAACf,OAAO,CAACgB,IAAI,CAAC,IAAI,CAAC,GAAGC,SAAU;QAC7FhB,IAAI,EAAE,IAAI,CAACiB,KAAK,GAACV,CAAC,CAACW,UAAU,CAAC,CAAC,GAACX,CAAE;QAClCY,MAAM,EAAE,GAAI;QACZC,SAAS,EAAC,OAAO;QACjBC,KAAK,EAAEvB,KAAK,CAACwB,YAAY,GAAC;UACxBtB,IAAI,EAAE;YACJuB,IAAI,EAAEC,IAAA;cAAA,IAAC;gBAAEtB;cAAM,CAAC,GAAAsB,IAAA;cAAA,OAAK,IAAI,CAACnB,KAAK,CAACoB,MAAM,CAACvB,KAAK,CAACwB,CAAC,CAAC,IAAI,IAAI,CAACrB,KAAK,CAACoB,MAAM,CAACvB,KAAK,CAACwB,CAAC,GAAG,IAAI,CAACrB,KAAK,CAACoB,MAAM,CAACE,MAAM,CAAC;YAAA;UAC1G;QACF,CAAC,GAAC,CAAC,CAAE;QACLC,YAAY,EAAE;UAACC,OAAO,EAAE,IAAI,CAACC,MAAM,CAACC,GAAG,CAACC,mBAAmB;UAAEC,QAAQ,EAAE,IAAI,CAACH,MAAM,CAACC,GAAG,CAACG,oBAAoB;UAAEC,UAAU,EAAE,IAAI,CAACL,MAAM,CAACC,GAAG,CAACK,sBAAsB;UAAEC,WAAW,EAAE,IAAI,CAACP,MAAM,CAACC,GAAG,CAACO;QAAuB,CAAE;QACvNC,MAAM,EAAE,CAAC;UACPC,MAAM,EAAE,MAAM;UACdC,aAAa,EAAE1D,QAAQ,CAAC2D,EAAE,IAAI,KAAK,GAAG;YACpCC,OAAO,EAAE,IAAI,CAACC,QAAQ,CAAC7B,IAAI,CAAC,IAAI;UAClC,CAAC,GAAC;YACA8B,OAAO,EAAE,IAAI,CAACD,QAAQ,CAAC7B,IAAI,CAAC,IAAI;UAClC;QACF,CAAC;MAAE,CAAC,CAAC;IACT,CAAC,CAAC;EACJ;EAEF6B,QAAQA,CAACE,KAAU,EAAE9C,IAAS,EAAC;IAC7B,IAAI+C,KAAK,GAAG/C,IAAI,CAACA,IAAI,CAACA,IAAI,CAACgD,KAAK,CAAC,CAAC7C,CAAC;IACnC,IAAI8C,KAAK,GAAG,IAAI,CAAC5C,KAAK,CAAC6C,eAAe,CAAClD,IAAI,CAACE,KAAK,CAACwB,CAAC,CAAC;IACpD,IAAIyB,YAAY,GAAG,IAAI,CAACrD,KAAK,CAACsD,OAAO,CAACpD,IAAI,CAACgD,KAAK,CAAC;IACjD,MAAMK,WAAW,GAAGP,KAAK,CAACO,WAAW;IACnC,IAAI,CAACC,kBAAkB,CAACD,WAAW,CAAC;IACpC,IAAIE,iBAAiB,GAAG,CAAC;MAACC,MAAM,EAAE,CAAC;MAAE9B,CAAC,EAAE1B,IAAI,CAACgD,KAAK;MAAE7C,CAAC,EAAE4C,KAAK;MAACU,QAAQ,EAAEN;IAAY,CAAC,EAACnD,IAAI,CAACgD,KAAK,CAAC;IAChG,IAAI,CAACU,WAAW,CAAC;MACfC,YAAY,EAAEV,KAAK;MACnBW,YAAY,EAAEb,KAAK;MACnBc,aAAa,EAAE,IAAI;MACnBV,YAAY,EAAE;QAAC,GAAGA,YAAY;QAAEH,KAAK,EAAEhD,IAAI,CAACgD;MAAK;IACnD,CAAoB,CAAC;IACvB,IAAI,CAACc,mBAAmB,CAAC,UAAU,EAAE,CAAChB,KAAK,CAACO,WAAW,EAAE,IAAI,CAACU,KAAK,EAAEZ,YAAY,EAAEI,iBAAiB,CAAE,CAAC;EACzG;EAEES,YAAYA,CAAClE,KAAsB,EAAE;IACnC,IAAI,CAACgE,mBAAmB,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAACC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,IAAI,CAAC1D,KAAK,CAACL,IAAI,CAAC2B,MAAM,EAAE;MAC3B,OAAO,IAAI;IACb;IACA,IAAI,CAACsC,eAAe,CAAC,CAAC;IACtB,IAAIC,SAAS,GAAC;MAACxC,CAAC,EAAE,IAAI,CAAC5B,KAAK,CAACqE,OAAO,KAAK,KAAK,GAAG,IAAI,CAAC9D,KAAK,CAAC+D,SAAS,GAAEpD,SAAS;MAAEb,CAAC,EAAE,IAAI,CAACL,KAAK,CAACuE,OAAO,KAAK,KAAK,GAAG,IAAI,CAAChE,KAAK,CAACiE,SAAS,GAAEtD;IAAS,CAAC;IACpJ,oBAAQpC,KAAA,CAAA6B,aAAA,CAAC5B,IAAI,EAAA0F,QAAA,KACPtF,qBAAqB,CAACD,uBAAuB,CAACwF,SAAS,EAAE1E,KAAK,CAAC;MACnEuB,KAAK,EAAE,IAAI,CAACS,MAAM,CAAC2C,IAAK;MACxBC,QAAQ,EAAE,IAAI,CAACC,kBAAkB,CAAC5D,IAAI,CAAC,IAAI;IAAE,IAE5C,IAAI,CAAC6D,UAAU,CAAC,CAAC,eAClBhG,KAAA,CAAA6B,aAAA,CAAC5B,IAAI,qBACDD,KAAA,CAAA6B,aAAA,CAAC5B,IAAI;MAACwC,KAAK,EAAE;QAACwD,aAAa,EAAE,KAAK;QAAEC,UAAU,EAAE;MAAQ;IAAE,GACvDhF,KAAK,CAACiF,SAAS,gBAAInG,KAAA,CAAA6B,aAAA,CAACf,MAAM;MAACqF,SAAS,EAAEjF,KAAK,CAACiF,SAAU;MAACjD,MAAM,EAAE,IAAI,CAACA,MAAM,CAACkD;IAAK,CAAS,CAAC,GAAI,IAAI,eACnGpG,KAAA,CAAA6B,aAAA,CAAC3B,IAAI;MAACuC,KAAK,EAAE,IAAI,CAACS,MAAM,CAACmD;IAAM,GAAEnF,KAAK,CAACmF,KAAY,CAC/C,CAAC,eACPrG,KAAA,CAAA6B,aAAA,CAAC3B,IAAI;MAACuC,KAAK,EAAE,IAAI,CAACS,MAAM,CAACoD;IAAW,GAAEpF,KAAK,CAACqF,UAAiB,CACzD,CAAC,eACTvG,KAAA,CAAA6B,aAAA,CAACvB,YAAY;MAACkG,KAAK,EAAE,IAAI,CAAC/E,KAAK,CAAC+E,KAAM;MAClBjE,MAAM,EAAG,IAAI,CAACW,MAAM,CAAC2C,IAAI,CAACtD,MAAkB;MAC5CkE,KAAK,EAAE,IAAI,CAACC,eAAe,GAAG,IAAI,CAACjF,KAAK,CAACkF,UAAU,GAAG,IAAI,CAACC,WAAY;MACvEC,SAAS,EAAEvB,SAAU;MACrBwB,OAAO,EAAE;QAAEC,GAAG,EAAE7F,KAAK,CAAC8F,SAAS;QAAEC,MAAM,EAAE/F,KAAK,CAACgG,YAAY;QAAEC,IAAI,EAAEjG,KAAK,CAACkG,UAAU;QAAEC,KAAK,EAAEnG,KAAK,CAACoG;MAAY;IAAE,GACnI,IAAI,CAACC,aAAa,CAAC,CAAC,EACpB,IAAI,CAACC,QAAQ,CAAC,CAAC,EACf,IAAI,CAACC,QAAQ,CAAC,CAAC,EAEdvG,KAAK,CAACwG,QAAQ,KAAK,SAAS,gBAAG1H,KAAA,CAAA6B,aAAA,CAACrB,YAAY;MAACmH,UAAU,EAAE,IAAI,CAAClG,KAAK,CAACoB;IAAO,GAEvE,IAAI,CAACrB,WAAW,CAACN,KAAK,CAEZ,CAAC,gBAAGlB,KAAA,CAAA6B,aAAA,CAACpB,YAAY;MAACkH,UAAU,EAAE,IAAI,CAAClG,KAAK,CAACoB,MAAO;MAAE+E,MAAM,EAAE;IAAG,GAEvE,IAAI,CAACpG,WAAW,CAACN,KAAK,CAEZ,CAEJ,CAAO,CAAC;EACxB;AACF"}
@@ -10,6 +10,7 @@ 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 _ from "lodash";
13
14
  import { constructSampleData, getChartType } from "./staticdata";
14
15
  import { isWebPreviewMode } from "@wavemaker/app-rn-runtime/core/utils";
15
16
  export class BaseChartComponentState extends BaseComponentState {
@@ -29,6 +30,7 @@ export class BaseChartComponentState extends BaseComponentState {
29
30
  _defineProperty(this, "loading", true);
30
31
  _defineProperty(this, "chartHeight", 0);
31
32
  _defineProperty(this, "chartWidth", 0);
33
+ _defineProperty(this, "totalHeight", 0);
32
34
  _defineProperty(this, "chartMinY", undefined);
33
35
  _defineProperty(this, "chartMinX", undefined);
34
36
  _defineProperty(this, "chartMaxY", undefined);
@@ -65,6 +67,18 @@ export class BaseChartComponent extends BaseComponent {
65
67
  super(props, defaultClass, defaultProps, defaultState);
66
68
  this.defaultClass = defaultClass;
67
69
  _defineProperty(this, "screenWidth", screenWidth);
70
+ _defineProperty(this, "isHeightPercent", false);
71
+ _defineProperty(this, "isWidthtPercent", false);
72
+ _defineProperty(this, "onViewLayoutChange", e => {
73
+ let viewWidth = e.nativeEvent.layout.width;
74
+ let viewHeight = e.nativeEvent.layout.height;
75
+ if (viewWidth !== this.state.chartWidth) {
76
+ this.updateState({
77
+ chartWidth: Number(viewWidth),
78
+ totalHeight: Number(viewHeight)
79
+ });
80
+ }
81
+ });
68
82
  if (!props.theme) {
69
83
  this.applyTheme(props);
70
84
  }
@@ -77,6 +91,10 @@ export class BaseChartComponent extends BaseComponent {
77
91
  componentDidMount() {
78
92
  super.componentDidMount();
79
93
  }
94
+ getLayoutValues() {
95
+ this.isHeightPercent = _.isString(this.styles.root.height) && this.styles.root.height.endsWith('%');
96
+ this.isWidthtPercent = _.isString(this.styles.root.width) && this.styles.root.width.endsWith('%');
97
+ }
80
98
  abbreviateNumber(number) {
81
99
  if (typeof number !== 'number') {
82
100
  return number;
@@ -486,7 +504,11 @@ export class BaseChartComponent extends BaseComponent {
486
504
  getxAxisVal(dataObj, xKey, index, xaxisDatakeyArr) {
487
505
  const value = get(dataObj, xKey);
488
506
  if (moment(value).isValid() || isNaN(value) || typeof value === 'string' || typeof value === 'number') {
489
- xaxisDatakeyArr.push(value.replace("\\n", "\n"));
507
+ if (typeof value === "string") {
508
+ xaxisDatakeyArr.push(value.replace("\\n", "\n"));
509
+ } else {
510
+ xaxisDatakeyArr.push(value);
511
+ }
490
512
  return index;
491
513
  }
492
514
  return value;
@@ -1 +1 @@
1
- {"version":3,"names":["React","Dimensions","View","Text","moment","forEach","get","isArray","isEmpty","isObject","maxBy","minBy","set","trim","orderBy","VictoryAxis","VictoryLegend","VictoryLabel","BaseComponent","BaseComponentState","WmIcon","ThemeFactory","DEFAULT_CLASS","constructSampleData","getChartType","isWebPreviewMode","BaseChartComponentState","constructor","arguments","_defineProperty","undefined","screenWidth","width","shapes","SI_SYMBOL","BaseChartComponent","props","defaultClass","length","defaultProps","defaultState","theme","applyTheme","subscribe","event","updateState","isTooltipOpen","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","yaxislabeldistance","crossAxis","label","xaxislabel","xaxisdatakey","xunits","axisLabel","mergeStyle","yAxisLabel","grid","hidegridxaxis","xGrid","axis","showxaxis","xAxis","ticks","xTicks","tickLabels","xTickLabels","fixLabelOverlap","autoadjustlabels","axisLabelComponent","tickLabelComponent","offsetyaxis","angle","labelangle","tickCount","invertAxis","isRTL","tickFormat","d","i","getYAxis","showyaxis","ytickexpr","xaxislabeldistance","yaxislabel","yaxisdatakey","yunits","hidegridyaxis","yGrid","yAxis","yTicks","yTickLabels","x","offsetxaxis","dependentAxis","setTooltipTemplate","partialName","template","setTooltipPosition","nativeEvent","xCoordinate","offsetX","locationX","yCoordinate","offsetY","locationY","tooltipXPosition","tooltipoffsetx","tooltipYPosition","tooltipoffsety","setTooltipPartialLayout","tooltipLayout","layout","renderPointer","transform","rotate","bottom","tooltipPointer","borderBottomWidth","getTooltip","renderitempartial","onLayout","bind","position","zIndex","selectedItem","index","tooltipContainer","fontSize","fontWeight","tooltipXText","tooltipXaxis","tooltipYaxis","isAxisDomainSupported","type","isAxisDomainValid","areMinMaxValuesValid","values","isFinite","min","max","setDomainValues","xDomainValues","yDomainValues","getXMinMaxValues","getYMinMaxValues","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","isValid","isNaN","replace","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, View, Text, LayoutChangeEvent, LayoutRectangle} 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, VictoryVoronoiContainer, VictoryTooltip} 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\";\nimport { isWebPreviewMode } from \"@wavemaker/app-rn-runtime/core/utils\";\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 tooltipXPosition = 0;\n tooltipYPosition = 0;\n tooltipXaxis = 0;\n tooltipYaxis = 0;\n tooltipoffsetx: number = 50;\n tooltipoffsety: number = 60;\n isTooltipOpen: boolean = false;\n selectedItem: any = {}\n template: string = \"\";\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 this.subscribe('globaltouch', (event: any) => {\n this.updateState({\n isTooltipOpen: false\n } as any)\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 let height = this.styles.root.height || 250;\n let yaxislabeldistance = props.yaxislabeldistance ? props.yaxislabeldistance : height as number - 20;\n if (height && typeof height === 'string') {\n height = parseInt(height);\n }\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),\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 axisLabelComponent={<VictoryLabel y={yaxislabeldistance}/>}\n tickLabelComponent={<VictoryLabel y={props.offsetyaxis ? props.offsetyaxis : height as number - 30} 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 let xaxislabeldistance = props.xaxislabeldistance ? props.xaxislabeldistance : 20\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),\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 axisLabelComponent={<VictoryLabel x={xaxislabeldistance}/>}\n tickLabelComponent={<VictoryLabel x={props.offsetxaxis ? props.offsetxaxis : 50}/>} \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 orientation={this.isRTL?\"right\":\"left\"}\n dependentAxis />;\n }\n \n setTooltipTemplate(partialName: any) {\n this.updateState({ template: partialName} as any);\n }\n\n setTooltipPosition(nativeEvent: any){\n let xCoordinate = isWebPreviewMode() ? nativeEvent.offsetX : nativeEvent.locationX;\n let yCoordinate = isWebPreviewMode() ? nativeEvent.offsetY : nativeEvent.locationY;\n this.updateState({\n tooltipXPosition: xCoordinate - this.state.tooltipoffsetx,\n tooltipYPosition: yCoordinate - this.state.tooltipoffsety,\n } as any)\n }\n\n setTooltipPartialLayout(event: LayoutChangeEvent){\n let tooltipLayout = event.nativeEvent.layout;\n this.updateState({\n tooltipoffsetx: tooltipLayout.width/2,\n tooltipoffsety: tooltipLayout.height\n } as any)\n }\n \n renderPointer(){\n return (\n <View \n style={[\n {\n transform: [\n { rotate: '180deg' }\n ],\n bottom: -10,\n left: this.state.tooltipoffsetx - this.styles.tooltipPointer.borderBottomWidth/2\n },\n this.styles.tooltipPointer\n ]}\n />\n )\n }\n\n getTooltip() {\n return this.state.isTooltipOpen ? (\n !isEmpty(this.state.template) && this.props.renderitempartial ?\n <View onLayout={this.setTooltipPartialLayout.bind(this)} style={{ position: \"absolute\", top: this.state.tooltipYPosition as number, left: this.state.tooltipXPosition as number , zIndex: 99}}>\n {this.props.renderitempartial(this.state.selectedItem, this.state.selectedItem.index, this.state.template)}\n {this.renderPointer()}\n </View> : (\n <View style={[\n { position: \"absolute\", top: this.state.tooltipYPosition as number, left: this.state.tooltipXPosition as number},\n this.styles.tooltipContainer\n ]}>\n <View>\n <Text style={[{ fontSize: 16, fontWeight: 'bold' },this.styles.tooltipXText]}>{this.state.tooltipXaxis}</Text>\n <Text style={this.styles.tooltipXText}>{this.state.tooltipYaxis}</Text>\n </View>\n {this.renderPointer()}\n </View>)\n ) : null;\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 = props.customcolors as string[];\n }\n if(props.customcolors===undefined) {\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).isValid() || isNaN(value) || typeof value === 'string' || typeof value === 'number') {\n xaxisDatakeyArr.push(value.replace(\"\\\\n\",\"\\n\"));\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 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 (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}\nfunction getDataType(widgetContext: { yaxisdatakey: string | null | undefined; shape: any; }): any {\n throw new Error(\"Function not implemented.\");\n}\n\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","Dimensions","View","Text","moment","forEach","get","isArray","isEmpty","isObject","maxBy","minBy","set","trim","orderBy","VictoryAxis","VictoryLegend","VictoryLabel","BaseComponent","BaseComponentState","WmIcon","ThemeFactory","DEFAULT_CLASS","_","constructSampleData","getChartType","isWebPreviewMode","BaseChartComponentState","constructor","arguments","_defineProperty","undefined","screenWidth","width","shapes","SI_SYMBOL","BaseChartComponent","props","defaultClass","length","defaultProps","defaultState","e","viewWidth","nativeEvent","layout","viewHeight","height","state","chartWidth","updateState","Number","totalHeight","theme","applyTheme","subscribe","event","isTooltipOpen","componentDidMount","getLayoutValues","isHeightPercent","isString","styles","root","endsWith","isWidthtPercent","abbreviateNumber","number","tier","Math","log10","abs","suffix","scale","pow","scaled","toFixed","getLegendView","colorScale","showlegend","top","parseInt","orientation","createElement","name","gutter","data","legendData","style","border","stroke","borderPadding","left","y","getYScaleMinValue","value","_min","floor","getXaxis","minIndex","maxIndex","xaxisDatakeyArr","getTickValueLabel","xtickexpr","yaxislabeldistance","crossAxis","label","xaxislabel","xaxisdatakey","xunits","axisLabel","mergeStyle","yAxisLabel","grid","hidegridxaxis","xGrid","axis","showxaxis","xAxis","ticks","xTicks","tickLabels","xTickLabels","fixLabelOverlap","autoadjustlabels","axisLabelComponent","tickLabelComponent","offsetyaxis","angle","labelangle","tickCount","invertAxis","isRTL","tickFormat","d","i","getYAxis","showyaxis","ytickexpr","xaxislabeldistance","yaxislabel","yaxisdatakey","yunits","hidegridyaxis","yGrid","yAxis","yTicks","yTickLabels","x","offsetxaxis","dependentAxis","setTooltipTemplate","partialName","template","setTooltipPosition","xCoordinate","offsetX","locationX","yCoordinate","offsetY","locationY","tooltipXPosition","tooltipoffsetx","tooltipYPosition","tooltipoffsety","setTooltipPartialLayout","tooltipLayout","renderPointer","transform","rotate","bottom","tooltipPointer","borderBottomWidth","getTooltip","renderitempartial","onLayout","bind","position","zIndex","selectedItem","index","tooltipContainer","fontSize","fontWeight","tooltipXText","tooltipXaxis","tooltipYaxis","isAxisDomainSupported","type","isAxisDomainValid","areMinMaxValuesValid","values","isFinite","min","max","setDomainValues","xDomainValues","yDomainValues","getXMinMaxValues","getYMinMaxValues","chartMinX","chartMaxX","yMin","chartMinY","chartMaxY","datum","xValues","dataObject","yValues","minValues","maxValues","push","setHeightWidthOnChart","cb","chartHeight","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","isValid","isNaN","replace","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, View, Text, LayoutChangeEvent, LayoutRectangle} 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, VictoryVoronoiContainer, VictoryTooltip} 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\";\nimport { isWebPreviewMode } from \"@wavemaker/app-rn-runtime/core/utils\";\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 totalHeight: number = 0;\n chartMinY: number | undefined = undefined;\n chartMinX: number | undefined = undefined;\n chartMaxY: number | undefined = undefined;\n chartMaxX: number | undefined = undefined;\n tooltipXPosition = 0;\n tooltipYPosition = 0;\n tooltipXaxis = 0;\n tooltipYaxis = 0;\n tooltipoffsetx: number = 50;\n tooltipoffsety: number = 60;\n isTooltipOpen: boolean = false;\n selectedItem: any = {}\n template: string = \"\";\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 protected isHeightPercent: boolean = false;\n protected isWidthtPercent: boolean = false;\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 this.subscribe('globaltouch', (event: any) => {\n this.updateState({\n isTooltipOpen: false\n } as any)\n });\n }\n\n componentDidMount() {\n super.componentDidMount();\n }\n\n onViewLayoutChange = (e: LayoutChangeEvent) => {\n let viewWidth = e.nativeEvent.layout.width;\n let viewHeight = e.nativeEvent.layout.height;\n if (viewWidth !== this.state.chartWidth) {\n this.updateState({\n chartWidth: Number(viewWidth),\n totalHeight: Number(viewHeight)\n } as any)\n }\n }\n\n getLayoutValues(){\n this.isHeightPercent = _.isString(this.styles.root.height) && (this.styles.root.height as string).endsWith('%');\n this.isWidthtPercent = _.isString(this.styles.root.width) && (this.styles.root.width as string).endsWith('%');\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 let height = this.styles.root.height || 250;\n let yaxislabeldistance = props.yaxislabeldistance ? props.yaxislabeldistance : height as number - 20;\n if (height && typeof height === 'string') {\n height = parseInt(height);\n }\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),\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 axisLabelComponent={<VictoryLabel y={yaxislabeldistance}/>}\n tickLabelComponent={<VictoryLabel y={props.offsetyaxis ? props.offsetyaxis : height as number - 30} 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 let xaxislabeldistance = props.xaxislabeldistance ? props.xaxislabeldistance : 20\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),\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 axisLabelComponent={<VictoryLabel x={xaxislabeldistance}/>}\n tickLabelComponent={<VictoryLabel x={props.offsetxaxis ? props.offsetxaxis : 50}/>} \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 orientation={this.isRTL?\"right\":\"left\"}\n dependentAxis />;\n }\n \n setTooltipTemplate(partialName: any) {\n this.updateState({ template: partialName} as any);\n }\n\n setTooltipPosition(nativeEvent: any){\n let xCoordinate = isWebPreviewMode() ? nativeEvent.offsetX : nativeEvent.locationX;\n let yCoordinate = isWebPreviewMode() ? nativeEvent.offsetY : nativeEvent.locationY;\n this.updateState({\n tooltipXPosition: xCoordinate - this.state.tooltipoffsetx,\n tooltipYPosition: yCoordinate - this.state.tooltipoffsety,\n } as any)\n }\n\n setTooltipPartialLayout(event: LayoutChangeEvent){\n let tooltipLayout = event.nativeEvent.layout;\n this.updateState({\n tooltipoffsetx: tooltipLayout.width/2,\n tooltipoffsety: tooltipLayout.height\n } as any)\n }\n \n renderPointer(){\n return (\n <View \n style={[\n {\n transform: [\n { rotate: '180deg' }\n ],\n bottom: -10,\n left: this.state.tooltipoffsetx - this.styles.tooltipPointer.borderBottomWidth/2\n },\n this.styles.tooltipPointer\n ]}\n />\n )\n }\n\n getTooltip() {\n return this.state.isTooltipOpen ? (\n !isEmpty(this.state.template) && this.props.renderitempartial ?\n <View onLayout={this.setTooltipPartialLayout.bind(this)} style={{ position: \"absolute\", top: this.state.tooltipYPosition as number, left: this.state.tooltipXPosition as number , zIndex: 99}}>\n {this.props.renderitempartial(this.state.selectedItem, this.state.selectedItem.index, this.state.template)}\n {this.renderPointer()}\n </View> : (\n <View style={[\n { position: \"absolute\", top: this.state.tooltipYPosition as number, left: this.state.tooltipXPosition as number},\n this.styles.tooltipContainer\n ]}>\n <View>\n <Text style={[{ fontSize: 16, fontWeight: 'bold' },this.styles.tooltipXText]}>{this.state.tooltipXaxis}</Text>\n <Text style={this.styles.tooltipXText}>{this.state.tooltipYaxis}</Text>\n </View>\n {this.renderPointer()}\n </View>)\n ) : null;\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 = props.customcolors as string[];\n }\n if(props.customcolors===undefined) {\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).isValid() || isNaN(value) || typeof value === 'string' || typeof value === 'number') {\n if (typeof value === \"string\"){\n xaxisDatakeyArr.push(value.replace(\"\\\\n\",\"\\n\"));\n }\n else{\n xaxisDatakeyArr.push(value);\n }\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 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 (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}\nfunction getDataType(widgetContext: { yaxisdatakey: string | null | undefined; shape: any; }): any {\n throw new Error(\"Function not implemented.\");\n}\n\n"],"mappings":"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"}
@@ -41,12 +41,14 @@ export default class WmBubbleChart extends BaseChartComponent {
41
41
  if (!((_this$state$data = this.state.data) !== null && _this$state$data !== void 0 && _this$state$data.length)) {
42
42
  return null;
43
43
  }
44
+ this.getLayoutValues();
44
45
  return /*#__PURE__*/React.createElement(View, _extends({}, getAccessibilityProps(AccessibilityWidgetType.LINECHART, props), {
45
- style: this.styles.root
46
+ style: this.styles.root,
47
+ onLayout: this.onViewLayoutChange.bind(this)
46
48
  }), this.getTooltip(), /*#__PURE__*/React.createElement(VictoryChart, {
47
49
  theme: this.state.theme,
48
50
  height: this.styles.root.height,
49
- width: this.styles.root.width || this.screenWidth,
51
+ width: this.isWidthtPercent ? this.state.chartWidth : this.screenWidth,
50
52
  padding: {
51
53
  top: props.offsettop,
52
54
  bottom: props.offsetbottom,
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Platform","AccessibilityWidgetType","getAccessibilityProps","WmBubbleChartProps","DEFAULT_CLASS","BaseChartComponent","BaseChartComponentState","VictoryChart","VictoryLegend","VictoryScatter","Svg","WmBubbleChartState","WmBubbleChart","constructor","props","onSelect","event","data","value","index","y","label","state","xaxisDatakeyArr","datum","x","selectedItem","dataset","nativeEvent","setTooltipPosition","selectedChartItem","series","_dataObj","updateState","tooltipXaxis","tooltipYaxis","isTooltipOpen","invokeEventCallback","proxy","renderWidget","_this$state$data","length","createElement","_extends","LINECHART","style","styles","root","getTooltip","theme","height","width","screenWidth","padding","top","offsettop","bottom","offsetbottom","left","offsetleft","right","offsetright","name","containerComponent","title","subheading","orientation","gutter","getLegendView","getXaxis","getYAxis","map","d","i","colorScale","colors","fill","opacity","_ref","key","size","events","target","eventHandlers","OS","onClick","bind","onPress"],"sources":["bubble-chart.component.tsx"],"sourcesContent":["import React from 'react';\nimport {Text, View, Platform} from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \n\nimport WmBubbleChartProps from './bubble-chart.props';\nimport { DEFAULT_CLASS, WmBubbleChartStyles } from './bubble-chart.styles';\nimport {\n BaseChartComponent,\n BaseChartComponentState\n} from \"@wavemaker/app-rn-runtime/components/chart/basechart.component\";\nimport {VictoryAxis, VictoryChart, VictoryLegend, VictoryLine, VictoryScatter} from \"victory-native\";\nimport { ScatterSymbolType } from \"victory-core\";\nimport {Svg} from \"react-native-svg\";\nimport {get} from \"lodash-es\";\n\nexport class WmBubbleChartState extends BaseChartComponentState<WmBubbleChartProps> {}\n\nexport default class WmBubbleChart extends BaseChartComponent<WmBubbleChartProps, WmBubbleChartState, WmBubbleChartStyles> {\n\n constructor(props: WmBubbleChartProps) {\n super(props, DEFAULT_CLASS, new WmBubbleChartProps(), new WmBubbleChartState());\n }\n\n onSelect(event: any, data: any){\n let value = data.data[data.index].y;\n let label = this.state.xaxisDatakeyArr[data.datum.x];\n let selectedItem = this.props.dataset[data.index];\n const nativeEvent = event.nativeEvent;\n this.setTooltipPosition(nativeEvent);\n let selectedChartItem = [{series: 0, x: data.index, y: value,_dataObj: selectedItem},data.index];\n this.updateState({\n tooltipXaxis: label,\n tooltipYaxis: value,\n isTooltipOpen: true,\n selectedItem: {...selectedItem, index: data.index},\n } as WmBubbleChartState)\n this.invokeEventCallback('onSelect', [event.nativeEvent, this.proxy, selectedItem, selectedChartItem ]);\n }\n\n renderWidget(props: WmBubbleChartProps) {\n this.invokeEventCallback('onBeforerender', [this.proxy, null]);\n if (!this.state.data?.length) {\n return null;\n }\n return (<View\n {...getAccessibilityProps(AccessibilityWidgetType.LINECHART, props)}\n style={this.styles.root}\n >\n {this.getTooltip()}\n <VictoryChart\n theme={this.state.theme}\n height={this.styles.root.height as number}\n width={this.styles.root.width as number || this.screenWidth}\n padding={{ top: props.offsettop, bottom: props.offsetbottom, left: props.offsetleft, right: props.offsetright }}\n >\n <VictoryLegend\n name={'legend'}\n containerComponent={<Svg />}\n title={[props.title, props.subheading]}\n orientation=\"horizontal\"\n gutter={20}\n data={[]}\n theme={this.state.theme}\n />\n {this.getLegendView()}\n {this.getXaxis()}\n {this.getYAxis()}\n {this.state.data.map((d: any, i: number) => {\n return <VictoryScatter\n colorScale={this.state.colors}\n style={{\n data: { fill: this.state.colors[i], opacity: ({ datum }: any) => datum.opacity }\n }}\n key={props.name + '_bubble_' + i}\n name={props.name + '_bubble_' + i}\n data={d}\n size={5}\n events={[{\n target: 'data',\n eventHandlers: Platform.OS == \"web\" ? {\n onClick: this.onSelect.bind(this)\n }:{\n onPress: this.onSelect.bind(this)\n }\n }]}\n />\n })}\n </VictoryChart></View>);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","View","Platform","AccessibilityWidgetType","getAccessibilityProps","WmBubbleChartProps","DEFAULT_CLASS","BaseChartComponent","BaseChartComponentState","VictoryChart","VictoryLegend","VictoryScatter","Svg","WmBubbleChartState","WmBubbleChart","constructor","props","onSelect","event","data","value","index","y","label","state","xaxisDatakeyArr","datum","x","selectedItem","dataset","nativeEvent","setTooltipPosition","selectedChartItem","series","_dataObj","updateState","tooltipXaxis","tooltipYaxis","isTooltipOpen","invokeEventCallback","proxy","renderWidget","_this$state$data","length","getLayoutValues","createElement","_extends","LINECHART","style","styles","root","onLayout","onViewLayoutChange","bind","getTooltip","theme","height","width","isWidthtPercent","chartWidth","screenWidth","padding","top","offsettop","bottom","offsetbottom","left","offsetleft","right","offsetright","name","containerComponent","title","subheading","orientation","gutter","getLegendView","getXaxis","getYAxis","map","d","i","colorScale","colors","fill","opacity","_ref","key","size","events","target","eventHandlers","OS","onClick","onPress"],"sources":["bubble-chart.component.tsx"],"sourcesContent":["import React from 'react';\nimport {Text, View, Platform} from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \n\nimport WmBubbleChartProps from './bubble-chart.props';\nimport { DEFAULT_CLASS, WmBubbleChartStyles } from './bubble-chart.styles';\nimport {\n BaseChartComponent,\n BaseChartComponentState\n} from \"@wavemaker/app-rn-runtime/components/chart/basechart.component\";\nimport {VictoryAxis, VictoryChart, VictoryLegend, VictoryLine, VictoryScatter} from \"victory-native\";\nimport { ScatterSymbolType } from \"victory-core\";\nimport {Svg} from \"react-native-svg\";\nimport {get} from \"lodash-es\";\n\nexport class WmBubbleChartState extends BaseChartComponentState<WmBubbleChartProps> {}\n\nexport default class WmBubbleChart extends BaseChartComponent<WmBubbleChartProps, WmBubbleChartState, WmBubbleChartStyles> {\n\n constructor(props: WmBubbleChartProps) {\n super(props, DEFAULT_CLASS, new WmBubbleChartProps(), new WmBubbleChartState());\n }\n\n onSelect(event: any, data: any){\n let value = data.data[data.index].y;\n let label = this.state.xaxisDatakeyArr[data.datum.x];\n let selectedItem = this.props.dataset[data.index];\n const nativeEvent = event.nativeEvent;\n this.setTooltipPosition(nativeEvent);\n let selectedChartItem = [{series: 0, x: data.index, y: value,_dataObj: selectedItem},data.index];\n this.updateState({\n tooltipXaxis: label,\n tooltipYaxis: value,\n isTooltipOpen: true,\n selectedItem: {...selectedItem, index: data.index},\n } as WmBubbleChartState)\n this.invokeEventCallback('onSelect', [event.nativeEvent, this.proxy, selectedItem, selectedChartItem ]);\n }\n\n renderWidget(props: WmBubbleChartProps) {\n this.invokeEventCallback('onBeforerender', [this.proxy, null]);\n if (!this.state.data?.length) {\n return null;\n }\n this.getLayoutValues()\n return (<View\n {...getAccessibilityProps(AccessibilityWidgetType.LINECHART, props)}\n style={this.styles.root}\n onLayout={this.onViewLayoutChange.bind(this)}\n >\n {this.getTooltip()}\n <VictoryChart\n theme={this.state.theme}\n height={this.styles.root.height as number}\n width={this.isWidthtPercent ? this.state.chartWidth : this.screenWidth}\n padding={{ top: props.offsettop, bottom: props.offsetbottom, left: props.offsetleft, right: props.offsetright }}\n >\n <VictoryLegend\n name={'legend'}\n containerComponent={<Svg />}\n title={[props.title, props.subheading]}\n orientation=\"horizontal\"\n gutter={20}\n data={[]}\n theme={this.state.theme}\n />\n {this.getLegendView()}\n {this.getXaxis()}\n {this.getYAxis()}\n {this.state.data.map((d: any, i: number) => {\n return <VictoryScatter\n colorScale={this.state.colors}\n style={{\n data: { fill: this.state.colors[i], opacity: ({ datum }: any) => datum.opacity }\n }}\n key={props.name + '_bubble_' + i}\n name={props.name + '_bubble_' + i}\n data={d}\n size={5}\n events={[{\n target: 'data',\n eventHandlers: Platform.OS == \"web\" ? {\n onClick: this.onSelect.bind(this)\n }:{\n onPress: this.onSelect.bind(this)\n }\n }]}\n />\n })}\n </VictoryChart></View>);\n }\n}\n"],"mappings":"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"}
@@ -1,7 +1,4 @@
1
1
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
3
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
4
- function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
5
2
  import React from 'react';
6
3
  import { Text, View, Platform } from 'react-native';
7
4
  import { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility';
@@ -11,25 +8,10 @@ import { DEFAULT_CLASS } from './line-chart.styles';
11
8
  import { BaseChartComponent, BaseChartComponentState } from "@wavemaker/app-rn-runtime/components/chart/basechart.component";
12
9
  import ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';
13
10
  import WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';
14
- export class WmLineChartState extends BaseChartComponentState {
15
- constructor() {
16
- super(...arguments);
17
- _defineProperty(this, "chartWidth", 0);
18
- _defineProperty(this, "totalHeight", 0);
19
- }
20
- }
11
+ export class WmLineChartState extends BaseChartComponentState {}
21
12
  export default class WmLineChart extends BaseChartComponent {
22
13
  constructor(props) {
23
14
  super(props, DEFAULT_CLASS, new WmLineChartProps(), new WmLineChartState());
24
- _defineProperty(this, "onViewLayoutChange", e => {
25
- var _e$nativeEvent;
26
- console.log(e.nativeEvent.layout);
27
- let viewWidth = e.nativeEvent.layout.width;
28
- this.updateState({
29
- chartWidth: Number(viewWidth),
30
- totalHeight: Number((_e$nativeEvent = e.nativeEvent) === null || _e$nativeEvent === void 0 ? void 0 : _e$nativeEvent.layout.height)
31
- });
32
- });
33
15
  }
34
16
  onSelect(event, data) {
35
17
  let value = data.data[data.index].y;
@@ -60,6 +42,7 @@ export default class WmLineChart extends BaseChartComponent {
60
42
  if (!((_this$state$data = this.state.data) !== null && _this$state$data !== void 0 && _this$state$data.length)) {
61
43
  return null;
62
44
  }
45
+ this.getLayoutValues();
63
46
  return /*#__PURE__*/React.createElement(View, _extends({
64
47
  style: this.styles.root
65
48
  }, getAccessibilityProps(AccessibilityWidgetType.LINECHART, props), {
@@ -78,8 +61,8 @@ export default class WmLineChart extends BaseChartComponent {
78
61
  style: this.styles.subHeading
79
62
  }, props.subheading)), /*#__PURE__*/React.createElement(VictoryChart, {
80
63
  theme: this.state.theme,
81
- height: this.state.totalHeight || this.styles.root.height,
82
- width: this.state.chartWidth || this.screenWidth,
64
+ height: this.styles.root.height,
65
+ width: this.isWidthtPercent ? this.state.chartWidth : this.screenWidth,
83
66
  padding: {
84
67
  top: props.offsettop,
85
68
  bottom: props.offsetbottom,
@@ -1 +1 @@
1
- {"version":3,"names":["React","Text","View","Platform","AccessibilityWidgetType","getAccessibilityProps","VictoryChart","VictoryLine","VictoryScatter","VictoryGroup","WmLineChartProps","DEFAULT_CLASS","BaseChartComponent","BaseChartComponentState","ThemeVariables","WmIcon","WmLineChartState","constructor","arguments","_defineProperty","WmLineChart","props","e","_e$nativeEvent","console","log","nativeEvent","layout","viewWidth","width","updateState","chartWidth","Number","totalHeight","height","onSelect","event","data","value","index","y","label","state","xaxisDatakeyArr","datum","x","selectedItem","dataset","setTooltipPosition","selectedChartItem","series","_dataObj","tooltipXaxis","tooltipYaxis","isTooltipOpen","invokeEventCallback","proxy","renderWidget","_this$state$data","length","createElement","_extends","style","styles","root","LINECHART","onLayout","onViewLayoutChange","getTooltip","flexDirection","alignItems","iconclass","icon","title","subHeading","subheading","theme","screenWidth","padding","top","offsettop","bottom","offsetbottom","left","offsetleft","right","offsetright","getLegendView","getXaxis","getYAxis","map","d","i","key","name","interpolation","standalone","stroke","colors","INSTANCE","chartLineColor","strokeWidth","linethickness","isRTL","toReversed","size","highlightpoints","fill","opacity","events","target","eventHandlers","OS","onClick","bind","onPress"],"sources":["line-chart.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View, Platform, LayoutChangeEvent } from 'react-native';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \nimport {\n VictoryChart,\n VictoryLine,\n VictoryScatter,\n VictoryGroup,\n} from 'victory-native';\n\nimport WmLineChartProps from './line-chart.props';\nimport { DEFAULT_CLASS, WmLineChartStyles } from './line-chart.styles';\nimport {\n BaseChartComponent,\n BaseChartComponentState\n} from \"@wavemaker/app-rn-runtime/components/chart/basechart.component\";\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\nimport {InterpolationPropType} from \"victory-core\";\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\n\nexport class WmLineChartState extends BaseChartComponentState<WmLineChartProps> {\n chartWidth = 0;\n totalHeight = 0;\n}\n\nexport default class WmLineChart extends BaseChartComponent<WmLineChartProps, WmLineChartState, WmLineChartStyles> {\n\n constructor(props: WmLineChartProps) {\n super(props, DEFAULT_CLASS, new WmLineChartProps(), new WmLineChartState());\n }\n \n onSelect(event: any, data: any){\n let value = data.data[data.index].y;\n let label = this.state.xaxisDatakeyArr[data.datum.x];\n let selectedItem = this.props.dataset[data.index];\n const nativeEvent = event.nativeEvent;\n this.setTooltipPosition(nativeEvent);\n let selectedChartItem = [{series: 0, x: data.index, y: value,_dataObj: selectedItem},data.index];\n this.updateState({\n tooltipXaxis: label,\n tooltipYaxis: value,\n isTooltipOpen: true,\n selectedItem: {...selectedItem, index: data.index},\n } as WmLineChartState)\n this.invokeEventCallback('onSelect', [event.nativeEvent, this.proxy, selectedItem, selectedChartItem ]);\n }\n\n onViewLayoutChange = (e: LayoutChangeEvent) => {\n console.log(e.nativeEvent.layout)\n let viewWidth = e.nativeEvent.layout.width;\n this.updateState({\n chartWidth: Number(viewWidth),\n totalHeight: Number(e.nativeEvent?.layout.height)\n } as WmLineChartState)\n }\n\n\n renderWidget(props: WmLineChartProps) {\n this.invokeEventCallback('onBeforerender', [this.proxy, null]);\n if (!this.state.data?.length) {\n return null;\n }\n return (\n <View style={this.styles.root} {...getAccessibilityProps(AccessibilityWidgetType.LINECHART, props)} onLayout={this.onViewLayoutChange}>\n {this.getTooltip()}\n <View>\n <View style={{flexDirection: 'row', alignItems: 'center'}}>\n { props.iconclass ? (<WmIcon iconclass={props.iconclass} styles={this.styles.icon}></WmIcon>) : null }\n <Text style={this.styles.title}>{props.title}</Text>\n </View>\n <Text style={this.styles.subHeading}>{props.subheading}</Text>\n </View>\n <VictoryChart\n theme={this.state.theme}\n height={(this.state.totalHeight || this.styles.root.height) as number}\n width={this.state.chartWidth || this.screenWidth}\n padding={{ top: props.offsettop, bottom: props.offsetbottom, left: props.offsetleft, right: props.offsetright }}\n >\n {this.getLegendView()}\n {this.getXaxis()}\n {this.getYAxis()}\n {this.state.data.map((d: any, i: number) => {\n return <VictoryGroup key={props.name + '_line_group_' + i}>\n <VictoryLine interpolation={props.interpolation as InterpolationPropType} key={props.name + '_line_' + i}\n name={props.name + '_' + i}\n standalone={true}\n style={{\n data: {\n stroke: (this.state.colors[i] || ThemeVariables.INSTANCE.chartLineColor),\n strokeWidth: props.linethickness,\n }\n }} \n data={this.isRTL?d.toReversed():d}\n />\n \n <VictoryScatter size={5} key={props.name + '_scatter' + i}\n style={{\n data: (props.highlightpoints || this.state.data.length === 1) ? {fill: this.state.colors[i], opacity: 0.8} : {opacity:0}\n }}\n data={this.isRTL?d.toReversed():d}\n events={[{\n target: 'data',\n eventHandlers: Platform.OS == \"web\" ? {\n onClick: this.onSelect.bind(this)\n }:{\n onPress: this.onSelect.bind(this)\n }\n }]}\n />\n </VictoryGroup>\n })}\n </VictoryChart>\n </View>);\n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,IAAI,EAAEC,QAAQ,QAA2B,cAAc;AACtE,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,8CAA8C;AAC7G,SACEC,YAAY,EACZC,WAAW,EACXC,cAAc,EACdC,YAAY,QACP,gBAAgB;AAEvB,OAAOC,gBAAgB,MAAM,oBAAoB;AACjD,SAASC,aAAa,QAA2B,qBAAqB;AACtE,SACEC,kBAAkB,EAClBC,uBAAuB,QAClB,gEAAgE;AACvE,OAAOC,cAAc,MAAM,kDAAkD;AAE7E,OAAOC,MAAM,MAAM,gEAAgE;AAEnF,OAAO,MAAMC,gBAAgB,SAASH,uBAAuB,CAAmB;EAAAI,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,qBACjE,CAAC;IAAAA,eAAA,sBACA,CAAC;EAAA;AACjB;AAEA,eAAe,MAAMC,WAAW,SAASR,kBAAkB,CAAwD;EAEjHK,WAAWA,CAACI,KAAuB,EAAE;IACnC,KAAK,CAACA,KAAK,EAAEV,aAAa,EAAE,IAAID,gBAAgB,CAAC,CAAC,EAAE,IAAIM,gBAAgB,CAAC,CAAC,CAAC;IAACG,eAAA,6BAmBxDG,CAAoB,IAAK;MAAA,IAAAC,cAAA;MAC7CC,OAAO,CAACC,GAAG,CAACH,CAAC,CAACI,WAAW,CAACC,MAAM,CAAC;MACjC,IAAIC,SAAS,GAAGN,CAAC,CAACI,WAAW,CAACC,MAAM,CAACE,KAAK;MAC1C,IAAI,CAACC,WAAW,CAAC;QACfC,UAAU,EAAEC,MAAM,CAACJ,SAAS,CAAC;QAC7BK,WAAW,EAAED,MAAM,EAAAT,cAAA,GAACD,CAAC,CAACI,WAAW,cAAAH,cAAA,uBAAbA,cAAA,CAAeI,MAAM,CAACO,MAAM;MAClD,CAAqB,CAAC;IACxB,CAAC;EAzBD;EAEAC,QAAQA,CAACC,KAAU,EAAEC,IAAS,EAAC;IAC7B,IAAIC,KAAK,GAAGD,IAAI,CAACA,IAAI,CAACA,IAAI,CAACE,KAAK,CAAC,CAACC,CAAC;IACnC,IAAIC,KAAK,GAAG,IAAI,CAACC,KAAK,CAACC,eAAe,CAACN,IAAI,CAACO,KAAK,CAACC,CAAC,CAAC;IACpD,IAAIC,YAAY,GAAG,IAAI,CAACzB,KAAK,CAAC0B,OAAO,CAACV,IAAI,CAACE,KAAK,CAAC;IACjD,MAAMb,WAAW,GAAGU,KAAK,CAACV,WAAW;IACrC,IAAI,CAACsB,kBAAkB,CAACtB,WAAW,CAAC;IACpC,IAAIuB,iBAAiB,GAAG,CAAC;MAACC,MAAM,EAAE,CAAC;MAAEL,CAAC,EAAER,IAAI,CAACE,KAAK;MAAEC,CAAC,EAAEF,KAAK;MAACa,QAAQ,EAAEL;IAAY,CAAC,EAACT,IAAI,CAACE,KAAK,CAAC;IAChG,IAAI,CAACT,WAAW,CAAC;MACfsB,YAAY,EAAEX,KAAK;MACnBY,YAAY,EAAEf,KAAK;MACnBgB,aAAa,EAAE,IAAI;MACnBR,YAAY,EAAE;QAAC,GAAGA,YAAY;QAAEP,KAAK,EAAEF,IAAI,CAACE;MAAK;IACnD,CAAqB,CAAC;IACtB,IAAI,CAACgB,mBAAmB,CAAC,UAAU,EAAE,CAACnB,KAAK,CAACV,WAAW,EAAE,IAAI,CAAC8B,KAAK,EAAEV,YAAY,EAAEG,iBAAiB,CAAE,CAAC;EACzG;EAYAQ,YAAYA,CAACpC,KAAuB,EAAE;IAAA,IAAAqC,gBAAA;IACpC,IAAI,CAACH,mBAAmB,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAACC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC9D,IAAI,GAAAE,gBAAA,GAAC,IAAI,CAAChB,KAAK,CAACL,IAAI,cAAAqB,gBAAA,eAAfA,gBAAA,CAAiBC,MAAM,GAAE;MAC5B,OAAO,IAAI;IACb;IACA,oBACA3D,KAAA,CAAA4D,aAAA,CAAC1D,IAAI,EAAA2D,QAAA;MAACC,KAAK,EAAE,IAAI,CAACC,MAAM,CAACC;IAAK,GAAK3D,qBAAqB,CAACD,uBAAuB,CAAC6D,SAAS,EAAE5C,KAAK,CAAC;MAAE6C,QAAQ,EAAE,IAAI,CAACC;IAAmB,IACnI,IAAI,CAACC,UAAU,CAAC,CAAC,eAClBpE,KAAA,CAAA4D,aAAA,CAAC1D,IAAI,qBACHF,KAAA,CAAA4D,aAAA,CAAC1D,IAAI;MAAC4D,KAAK,EAAE;QAACO,aAAa,EAAE,KAAK;QAAEC,UAAU,EAAE;MAAQ;IAAE,GACtDjD,KAAK,CAACkD,SAAS,gBAAIvE,KAAA,CAAA4D,aAAA,CAAC7C,MAAM;MAACwD,SAAS,EAAElD,KAAK,CAACkD,SAAU;MAACR,MAAM,EAAE,IAAI,CAACA,MAAM,CAACS;IAAK,CAAS,CAAC,GAAI,IAAI,eACpGxE,KAAA,CAAA4D,aAAA,CAAC3D,IAAI;MAAC6D,KAAK,EAAE,IAAI,CAACC,MAAM,CAACU;IAAM,GAAEpD,KAAK,CAACoD,KAAY,CAC/C,CAAC,eACPzE,KAAA,CAAA4D,aAAA,CAAC3D,IAAI;MAAC6D,KAAK,EAAE,IAAI,CAACC,MAAM,CAACW;IAAW,GAAErD,KAAK,CAACsD,UAAiB,CACzD,CAAC,eACP3E,KAAA,CAAA4D,aAAA,CAACtD,YAAY;MACXsE,KAAK,EAAE,IAAI,CAAClC,KAAK,CAACkC,KAAM;MACxB1C,MAAM,EAAG,IAAI,CAACQ,KAAK,CAACT,WAAW,IAAI,IAAI,CAAC8B,MAAM,CAACC,IAAI,CAAC9B,MAAkB;MACtEL,KAAK,EAAE,IAAI,CAACa,KAAK,CAACX,UAAU,IAAI,IAAI,CAAC8C,WAAY;MACjDC,OAAO,EAAE;QAAEC,GAAG,EAAE1D,KAAK,CAAC2D,SAAS;QAAEC,MAAM,EAAE5D,KAAK,CAAC6D,YAAY;QAAEC,IAAI,EAAE9D,KAAK,CAAC+D,UAAU;QAAEC,KAAK,EAAEhE,KAAK,CAACiE;MAAY;IAAE,GAE/G,IAAI,CAACC,aAAa,CAAC,CAAC,EACpB,IAAI,CAACC,QAAQ,CAAC,CAAC,EACf,IAAI,CAACC,QAAQ,CAAC,CAAC,EACf,IAAI,CAAC/C,KAAK,CAACL,IAAI,CAACqD,GAAG,CAAC,CAACC,CAAM,EAAEC,CAAS,KAAK;MAC1C,oBAAO5F,KAAA,CAAA4D,aAAA,CAACnD,YAAY;QAACoF,GAAG,EAAExE,KAAK,CAACyE,IAAI,GAAG,cAAc,GAAGF;MAAE,gBACxD5F,KAAA,CAAA4D,aAAA,CAACrD,WAAW;QAACwF,aAAa,EAAE1E,KAAK,CAAC0E,aAAuC;QAAEF,GAAG,EAAExE,KAAK,CAACyE,IAAI,GAAG,QAAQ,GAAGF,CAAE;QACxGE,IAAI,EAAEzE,KAAK,CAACyE,IAAI,GAAG,GAAG,GAAGF,CAAE;QAC3BI,UAAU,EAAE,IAAK;QACjBlC,KAAK,EAAE;UACLzB,IAAI,EAAE;YACJ4D,MAAM,EAAG,IAAI,CAACvD,KAAK,CAACwD,MAAM,CAACN,CAAC,CAAC,IAAI9E,cAAc,CAACqF,QAAQ,CAACC,cAAe;YACxEC,WAAW,EAAEhF,KAAK,CAACiF;UACrB;QACF,CAAE;QACFjE,IAAI,EAAE,IAAI,CAACkE,KAAK,GAACZ,CAAC,CAACa,UAAU,CAAC,CAAC,GAACb;MAAE,CACnC,CAAC,eAEA3F,KAAA,CAAA4D,aAAA,CAACpD,cAAc;QAACiG,IAAI,EAAE,CAAE;QAACZ,GAAG,EAAExE,KAAK,CAACyE,IAAI,GAAG,UAAU,GAAGF,CAAE;QACtD9B,KAAK,EAAE;UACLzB,IAAI,EAAGhB,KAAK,CAACqF,eAAe,IAAI,IAAI,CAAChE,KAAK,CAACL,IAAI,CAACsB,MAAM,KAAK,CAAC,GAAI;YAACgD,IAAI,EAAE,IAAI,CAACjE,KAAK,CAACwD,MAAM,CAACN,CAAC,CAAC;YAAEgB,OAAO,EAAE;UAAG,CAAC,GAAG;YAACA,OAAO,EAAC;UAAC;QACzH,CAAE;QACFvE,IAAI,EAAE,IAAI,CAACkE,KAAK,GAACZ,CAAC,CAACa,UAAU,CAAC,CAAC,GAACb,CAAE;QAClCkB,MAAM,EAAE,CAAC;UACPC,MAAM,EAAE,MAAM;UACdC,aAAa,EAAE5G,QAAQ,CAAC6G,EAAE,IAAI,KAAK,GAAG;YACpCC,OAAO,EAAE,IAAI,CAAC9E,QAAQ,CAAC+E,IAAI,CAAC,IAAI;UAClC,CAAC,GAAC;YACAC,OAAO,EAAE,IAAI,CAAChF,QAAQ,CAAC+E,IAAI,CAAC,IAAI;UAClC;QACF,CAAC;MAAE,CACN,CACW,CAAC;IACnB,CAAC,CACW,CACV,CAAC;EACT;AACF"}
1
+ {"version":3,"names":["React","Text","View","Platform","AccessibilityWidgetType","getAccessibilityProps","VictoryChart","VictoryLine","VictoryScatter","VictoryGroup","WmLineChartProps","DEFAULT_CLASS","BaseChartComponent","BaseChartComponentState","ThemeVariables","WmIcon","WmLineChartState","WmLineChart","constructor","props","onSelect","event","data","value","index","y","label","state","xaxisDatakeyArr","datum","x","selectedItem","dataset","nativeEvent","setTooltipPosition","selectedChartItem","series","_dataObj","updateState","tooltipXaxis","tooltipYaxis","isTooltipOpen","invokeEventCallback","proxy","renderWidget","_this$state$data","length","getLayoutValues","createElement","_extends","style","styles","root","LINECHART","onLayout","onViewLayoutChange","getTooltip","flexDirection","alignItems","iconclass","icon","title","subHeading","subheading","theme","height","width","isWidthtPercent","chartWidth","screenWidth","padding","top","offsettop","bottom","offsetbottom","left","offsetleft","right","offsetright","getLegendView","getXaxis","getYAxis","map","d","i","key","name","interpolation","standalone","stroke","colors","INSTANCE","chartLineColor","strokeWidth","linethickness","isRTL","toReversed","size","highlightpoints","fill","opacity","events","target","eventHandlers","OS","onClick","bind","onPress"],"sources":["line-chart.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View, Platform, LayoutChangeEvent } from 'react-native';\nimport { AccessibilityWidgetType, getAccessibilityProps } from '@wavemaker/app-rn-runtime/core/accessibility'; \nimport {\n VictoryChart,\n VictoryLine,\n VictoryScatter,\n VictoryGroup,\n} from 'victory-native';\n\nimport WmLineChartProps from './line-chart.props';\nimport { DEFAULT_CLASS, WmLineChartStyles } from './line-chart.styles';\nimport {\n BaseChartComponent,\n BaseChartComponentState\n} from \"@wavemaker/app-rn-runtime/components/chart/basechart.component\";\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\nimport {InterpolationPropType} from \"victory-core\";\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\n\nexport class WmLineChartState extends BaseChartComponentState<WmLineChartProps> {}\n\nexport default class WmLineChart extends BaseChartComponent<WmLineChartProps, WmLineChartState, WmLineChartStyles> {\n\n constructor(props: WmLineChartProps) {\n super(props, DEFAULT_CLASS, new WmLineChartProps(), new WmLineChartState());\n }\n \n onSelect(event: any, data: any){\n let value = data.data[data.index].y;\n let label = this.state.xaxisDatakeyArr[data.datum.x];\n let selectedItem = this.props.dataset[data.index];\n const nativeEvent = event.nativeEvent;\n this.setTooltipPosition(nativeEvent);\n let selectedChartItem = [{series: 0, x: data.index, y: value,_dataObj: selectedItem},data.index];\n this.updateState({\n tooltipXaxis: label,\n tooltipYaxis: value,\n isTooltipOpen: true,\n selectedItem: {...selectedItem, index: data.index},\n } as WmLineChartState)\n this.invokeEventCallback('onSelect', [event.nativeEvent, this.proxy, selectedItem, selectedChartItem ]);\n }\n\n\n\n renderWidget(props: WmLineChartProps) {\n this.invokeEventCallback('onBeforerender', [this.proxy, null]);\n if (!this.state.data?.length) {\n return null;\n }\n this.getLayoutValues();\n return (\n <View style={this.styles.root} {...getAccessibilityProps(AccessibilityWidgetType.LINECHART, props)} onLayout={this.onViewLayoutChange}>\n {this.getTooltip()}\n <View>\n <View style={{flexDirection: 'row', alignItems: 'center'}}>\n { props.iconclass ? (<WmIcon iconclass={props.iconclass} styles={this.styles.icon}></WmIcon>) : null }\n <Text style={this.styles.title}>{props.title}</Text>\n </View>\n <Text style={this.styles.subHeading}>{props.subheading}</Text>\n </View>\n <VictoryChart\n theme={this.state.theme}\n height={(this.styles.root.height) as number}\n width={this.isWidthtPercent ? this.state.chartWidth : this.screenWidth}\n padding={{ top: props.offsettop, bottom: props.offsetbottom, left: props.offsetleft, right: props.offsetright }}\n >\n {this.getLegendView()}\n {this.getXaxis()}\n {this.getYAxis()}\n {this.state.data.map((d: any, i: number) => {\n return <VictoryGroup key={props.name + '_line_group_' + i}>\n <VictoryLine interpolation={props.interpolation as InterpolationPropType} key={props.name + '_line_' + i}\n name={props.name + '_' + i}\n standalone={true}\n style={{\n data: {\n stroke: (this.state.colors[i] || ThemeVariables.INSTANCE.chartLineColor),\n strokeWidth: props.linethickness,\n }\n }} \n data={this.isRTL?d.toReversed():d}\n />\n \n <VictoryScatter size={5} key={props.name + '_scatter' + i}\n style={{\n data: (props.highlightpoints || this.state.data.length === 1) ? {fill: this.state.colors[i], opacity: 0.8} : {opacity:0}\n }}\n data={this.isRTL?d.toReversed():d}\n events={[{\n target: 'data',\n eventHandlers: Platform.OS == \"web\" ? {\n onClick: this.onSelect.bind(this)\n }:{\n onPress: this.onSelect.bind(this)\n }\n }]}\n />\n </VictoryGroup>\n })}\n </VictoryChart>\n </View>);\n }\n}\n"],"mappings":"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"}