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

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 (34) hide show
  1. app-rn-runtime/components/basic/buttongroup/buttongroup.styles.js +2 -4
  2. app-rn-runtime/components/basic/buttongroup/buttongroup.styles.js.map +1 -1
  3. app-rn-runtime/components/basic/label/label.component.js +2 -1
  4. app-rn-runtime/components/basic/label/label.component.js.map +1 -1
  5. app-rn-runtime/components/basic/label/label.props.js +1 -0
  6. app-rn-runtime/components/basic/label/label.props.js.map +1 -1
  7. app-rn-runtime/components/chart/area-chart/area-chart.component.js +18 -13
  8. app-rn-runtime/components/chart/area-chart/area-chart.component.js.map +1 -1
  9. app-rn-runtime/components/chart/bar-chart/bar-chart.component.js +20 -15
  10. app-rn-runtime/components/chart/bar-chart/bar-chart.component.js.map +1 -1
  11. app-rn-runtime/components/chart/basechart.component.js +28 -13
  12. app-rn-runtime/components/chart/basechart.component.js.map +1 -1
  13. app-rn-runtime/components/chart/basechart.props.js +2 -1
  14. app-rn-runtime/components/chart/basechart.props.js.map +1 -1
  15. app-rn-runtime/components/chart/basechart.styles.js +2 -1
  16. app-rn-runtime/components/chart/basechart.styles.js.map +1 -1
  17. app-rn-runtime/components/chart/line-chart/line-chart.component.js +18 -15
  18. app-rn-runtime/components/chart/line-chart/line-chart.component.js.map +1 -1
  19. app-rn-runtime/components/chart/pie-chart/pie-chart.component.js.map +1 -1
  20. app-rn-runtime/components/chart/staticdata.js +215 -0
  21. app-rn-runtime/components/chart/staticdata.js.map +1 -0
  22. app-rn-runtime/components/container/wizard/wizard.component.js +3 -3
  23. app-rn-runtime/components/container/wizard/wizard.component.js.map +1 -1
  24. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.component.js +8 -0
  25. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.component.js.map +1 -1
  26. app-rn-runtime/components/data/list/list.component.js +3 -2
  27. app-rn-runtime/components/data/list/list.component.js.map +1 -1
  28. app-rn-runtime/components/input/basenumber/basenumber.component.js +2 -2
  29. app-rn-runtime/components/input/basenumber/basenumber.component.js.map +1 -1
  30. app-rn-runtime/components/navigation/basenav/basenav.component.js +1 -2
  31. app-rn-runtime/components/navigation/basenav/basenav.component.js.map +1 -1
  32. app-rn-runtime/package.json +3 -3
  33. app-rn-runtime/variables/service-variable.js +1 -0
  34. app-rn-runtime/variables/service-variable.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["React","Dimensions","moment","forEach","get","isArray","isEmpty","isObject","maxBy","minBy","set","trim","orderBy","VictoryAxis","VictoryLegend","VictoryLabel","BaseComponent","BaseComponentState","WmIcon","ThemeFactory","DEFAULT_CLASS","BaseChartComponentState","constructor","arguments","_defineProperty","undefined","screenWidth","width","shapes","SI_SYMBOL","BaseChartComponent","props","defaultClass","length","defaultProps","defaultState","theme","applyTheme","componentDidMount","abbreviateNumber","number","tier","Math","log10","abs","suffix","scale","pow","scaled","toFixed","getLegendView","colorScale","state","showlegend","top","parseInt","styles","root","height","orientation","createElement","name","gutter","data","legendData","style","border","stroke","borderPadding","left","y","getYScaleMinValue","value","_min","floor","getXaxis","showxaxis","crossAxis","label","xaxislabel","xaxisdatakey","xunits","grid","fixLabelOverlap","tickLabelComponent","angle","labelangle","tickFormat","d","xaxisDatakeyArr","getYAxis","showyaxis","yaxislabel","yaxisdatakey","yunits","axisLabel","padding","yaxislabeldistance","t","dependentAxis","isAxisDomainSupported","type","isAxisDomainValid","axis","areMinMaxValuesValid","values","isFinite","min","max","setDomainValues","xDomainValues","yDomainValues","x","getXMinMaxValues","getYMinMaxValues","updateState","chartMinX","chartMaxX","yMin","chartMinY","chartMaxY","datum","xValues","dataObject","yValues","minValues","maxValues","push","setHeightWidthOnChart","cb","chartHeight","chartWidth","themeName","colorsToUse","customcolors","split","map","themeToUse","getColorsObj","getTheme","colors","prepareLegendData","yAxis","ldata","prepareEvents","_","idx","childName","target","eventKey","String","eventHandlers","onClick","mutation","onMouseOver","onMouseOut","getxAxisVal","dataObj","xKey","index","isValid","isNaN","prepareDataItems","dataset","xaxis","yaxis","datasets","yPts","o","xindex","xVal","yVal","parseFloat","bubblesize","shape","invokeEventCallback","proxy","setTimeout","endAngle","updateData","renderLoadingIcon","loadingIcon","iconclass","loadingicon","caption","loadingdatamsg","labeltype","setTotal","ydomain","xdomain","loading","total","onPropertyChange","$new","$old","units","xLabel","yLabel"],"sources":["basechart.component.tsx"],"sourcesContent":["import React from \"react\";\nimport { Dimensions } from 'react-native';\nimport moment from \"moment\";\nimport {forEach, get, isArray, isEmpty, isObject, maxBy, minBy, set, trim, orderBy} from \"lodash-es\";\nimport { ScatterSymbolType } from \"victory-core\";\nimport {VictoryAxis, VictoryLegend, VictoryLabel} from \"victory-native\";\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport WmIcon from \"@wavemaker/app-rn-runtime/components/basic/icon/icon.component\";\nimport ThemeFactory from \"@wavemaker/app-rn-runtime/components/chart/theme/chart.theme\";\n\nimport BaseChartComponentProps from \"./basechart.props\";\nimport { DEFAULT_CLASS, BaseChartComponentStyles} from \"./basechart.styles\";\n\nexport class BaseChartComponentState <T extends BaseChartComponentProps> extends BaseComponentState<T> {\n data: any = [];\n content: any = null;\n yAxis: Array<string> = [];\n xaxisDatakeyArr: Array<any> = [];\n legendData: any = [];\n theme: any;\n colors: any;\n xLabel: string = '';\n yLabel: string = '';\n total: number = 0;\n endAngle: number = 0;\n loading: boolean = true;\n chartHeight: number = 0;\n chartWidth: number = 0;\n chartMinY: number | undefined = undefined;\n chartMinX: number | undefined = undefined;\n chartMaxY: number | undefined = undefined;\n chartMaxX: number | undefined = undefined;\n}\n\nconst screenWidth = Dimensions.get(\"window\").width;\n\nconst shapes: {[key: string]: ScatterSymbolType} = {\n 'circle': 'circle',\n 'cross': 'cross',\n 'diamond': 'diamond',\n 'plus': 'plus',\n 'minus': 'minus',\n 'square': 'square',\n 'star': 'star',\n 'triangle-down': 'triangleDown',\n 'triangle-up': 'triangleUp'\n};\n\nconst SI_SYMBOL = [\"\", \"k\", \"M\", \"G\", \"T\", \"P\", \"E\"];\n\nexport abstract class BaseChartComponent<T extends BaseChartComponentProps, S extends BaseChartComponentState<T>, L extends BaseChartComponentStyles> extends BaseComponent<T, S, L> {\n protected screenWidth: number = screenWidth;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n if (!props.theme) {\n this.applyTheme(props);\n }\n }\n\n componentDidMount() {\n super.componentDidMount();\n }\n\n abbreviateNumber(number: any) {\n if (typeof number !== 'number') {\n return number;\n }\n const tier = Math.log10(Math.abs(number)) / 3 | 0;\n\n if (tier == 0) {\n return number;\n }\n\n // get suffix and determine scale\n const suffix = SI_SYMBOL[tier];\n const scale = Math.pow(10, tier * 3);\n\n // scale the number\n var scaled = number / scale;\n\n // format number and add suffix\n return scaled.toFixed(1) + suffix;\n }\n\n getLegendView(colorScale?: any) {\n if (this.state.props.showlegend === 'hide') {\n return null;\n }\n let top = this.props.showlegend === 'bottom' ? parseInt(this.styles.root.height as string) : 0;\n if (top) {\n top = top - (50); // remove legendHeight\n }\n const orientation = (this.props.showlegend === 'right' || this.props.showlegend === 'left') ? 'vertical' : 'horizontal';\n return <VictoryLegend\n colorScale={colorScale}\n name={'legendData'}\n orientation={orientation}\n gutter={20}\n data={this.state.legendData}\n style={{ border: { stroke: 'none' } }}\n borderPadding={{top: 30, left: 50}}\n y={top}\n />\n }\n\n getYScaleMinValue(value: number) {\n const _min = Math.floor(value);\n return Math.abs(value) - _min > 0 ? value - .1 : _min - 1;\n };\n\n // x axis with vertical lines having grid stroke colors\n getXaxis() {\n if (this.props.showxaxis === false) {\n return null;\n }\n return <VictoryAxis crossAxis label={(this.props.xaxislabel || this.props.xaxisdatakey) + (this.props.xunits ? `(${this.props.xunits})` : '')}\n style={{\n grid: this.styles.grid\n }}\n fixLabelOverlap={true}\n tickLabelComponent={<VictoryLabel angle={this.props.labelangle || 0} />} theme={this.state.theme}\n tickFormat={(d) => `${this.state.xaxisDatakeyArr.length ? this.state.xaxisDatakeyArr[d] : d}`}/>;\n }\n /* y axis with horizontal lines having grid stroke colors*/\n getYAxis() {\n if (this.props.showyaxis === false) {\n return null;\n }\n return <VictoryAxis crossAxis label={(this.props.yaxislabel || this.props.yaxisdatakey) + (this.props.yunits ? `(${this.props.yunits})` : '')}\n style={{\n axisLabel: {padding: this.props.yaxislabeldistance},\n grid: this.styles.grid\n }}\n theme={this.state.theme}\n tickFormat={(t) => `${this.abbreviateNumber(t)}`} dependentAxis />;\n }\n\n // X/Y Domain properties are supported only for Column and Area charts\n isAxisDomainSupported(type: string) {\n return type === 'Column'|| type === 'Area';\n }\n\n // Check whether X/Y Domain was set to Min and is supported for the present chart\n isAxisDomainValid(axis: string) {\n if (get(this.props, axis + 'domain') === 'Min' && (this.isAxisDomainSupported(this.props.type))) {\n return true;\n }\n return false;\n };\n\n// Check whether min and max values are finite or not\n areMinMaxValuesValid(values: any) {\n if (isFinite(values.min) && isFinite(values.max)) {\n return true;\n }\n return false;\n };\n\n setDomainValues() {\n let xDomainValues, yDomainValues;\n if (this.state.data.length > 0) {\n if (this.isAxisDomainValid('x') && typeof this.state.data[0].x === 'number') {\n xDomainValues = this.getXMinMaxValues(this.state.data[0]);\n }\n if (this.isAxisDomainValid('y')) {\n yDomainValues = this.getYMinMaxValues(this.state.data);\n }\n if (xDomainValues) {\n this.updateState({\n chartMinX: yDomainValues.min.x,\n chartMaxX: yDomainValues.max.x\n } as S)\n }\n let yMin;\n if (yDomainValues) {\n if (this.areMinMaxValuesValid({max: yDomainValues.max.y, min: yDomainValues.min.y})) {\n yMin = this.getYScaleMinValue(yDomainValues.min.y);\n }\n this.updateState({\n chartMinY: yMin ? yMin : yDomainValues.min.y,\n chartMaxY: yDomainValues.max.y\n } as S);\n }\n }\n }\n\n // Getting the min and max values among all the x values\n getXMinMaxValues(datum: Array<{x: number, y: any}>) {\n if (!datum) {\n return;\n }\n const xValues: any = {};\n /*\n compute the min x value\n eg: When data has objects\n input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]\n min x: 1\n eg: When data has arrays\n input: [[10, 20], [20, 30], [30, 40]];\n min x: 10\n */\n xValues.min = minBy(datum, (dataObject: {x: any, y: any}) => dataObject.x) || {x: undefined};\n /*\n compute the max x value\n eg: When data has objects\n input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]\n max x: 3\n eg: When data has arrays\n input: [[10, 20], [20, 30], [30, 40]];\n max x: 30\n */\n xValues.max = maxBy(datum, (dataObject: {x: any, y: any}) => dataObject.x)|| {x: undefined};\n return xValues;\n }\n\n // Getting the min and max values among all the y values\n getYMinMaxValues(datum: Array<Array<{x: any, y: number}>>) {\n const yValues: any = {},\n minValues: any = [],\n maxValues: any = [];\n if (!datum) {\n return;\n }\n\n /*\n Getting the min and max y values among all the series of data\n compute the min y value\n eg: When data has objects\n input: [[{x:1, y:2}, {x:2, y:3}, {x:3, y:4}], [{x:2, y:3}, {x:3, y:4}, {x:4, y:5}]]\n min y values : '2'(among first set) & '3'(among second set)\n max y values : '4'(among first set) & '5'(among second set)\n\n eg: When data has arrays\n input: [[[10, 20], [20, 30], [30, 40]], [[20, 30], [30, 40], [40, 50]]]\n min y values : '20'(among first set) & '30'(among second set)\n max y values : '40'(among first set) & '50'(among second set)\n */\n\n forEach(datum, data => {\n if (data && !isEmpty(data)) {\n minValues.push(minBy(data, (dataObject: {x: any, y: any}) => { return dataObject.y }));\n maxValues.push(maxBy(data, (dataObject: {x: any, y: any}) => { return dataObject.y }));\n }\n });\n // Gets the least and highest values among all the min and max values of respective series of data\n yValues.min = minBy(minValues, (dataObject: {x: any, y: any}) => dataObject.y) || {y: undefined};\n yValues.max = maxBy(maxValues, (dataObject: {x: any, y: any}) => dataObject.y) || {y: undefined};\n return yValues;\n }\n\n setHeightWidthOnChart(cb?: () => void) {\n let height = this.styles.root.height || 250;\n let width = this.styles.root.width || screenWidth;\n if (height && typeof height === 'string') {\n height = parseInt(height);\n }\n if (width && typeof width === 'string') {\n width = parseInt(width);\n }\n this.updateState({\n chartHeight: height,\n chartWidth: width\n } as S, cb);\n }\n\n applyTheme(props: BaseChartComponentProps) {\n let themeName = props.theme ? props.theme : (props.type === 'Pie' ? 'Azure' : 'Terrestrial');\n let colorsToUse = [];\n if (typeof props.customcolors === 'string' && !isEmpty(props.customcolors)) {\n colorsToUse = props.customcolors.split(',').map(trim);\n }\n let themeToUse;\n if (typeof themeName === 'string') {\n if (!colorsToUse.length) {\n colorsToUse = ThemeFactory.getColorsObj(themeName);\n }\n themeToUse = ThemeFactory.getTheme(themeName, this.props.styles, colorsToUse);\n } else if (typeof themeName === 'object') {\n // if theme is passed as an object then use that custom theme.\n themeToUse = props.theme;\n }\n this.updateState({\n colors: colorsToUse,\n theme: themeToUse\n } as S);\n }\n\n prepareLegendData() {\n if (this.state.yAxis) {\n let ldata: any;\n if (this.props.type === 'Stack') {\n const data = orderBy(this.state.data[0], 'y', 'asc');\n ldata = data.map((d: any) => {\n return {\n name: this.state.xaxisDatakeyArr[d.x]\n }\n });\n } else {\n ldata = this.state.yAxis.map((d: string) => {\n return {\n name: d\n }\n });\n }\n\n this.updateState({\n legendData: ldata\n } as S);\n }\n }\n\n prepareEvents(name: string) {\n return this.state.legendData.map((_: any, idx: number) => {\n return {\n childName: ['legend'],\n target: 'data',\n eventKey: String(idx),\n eventHandlers: {\n onClick: () => {\n return [\n {\n childName: [name + '_' + idx],\n target: 'data',\n eventKey: 'all',\n mutation: (props: any) => {\n return null;\n }\n }\n ];\n },\n onMouseOver: () => {\n },\n onMouseOut: () => {\n }\n }\n };\n });\n }\n\n // If date string is bound to xaxis then we are pushing the x values as indexes.\n getxAxisVal(dataObj: {[key: string] : any}, xKey: string, index: number, xaxisDatakeyArr: Array<any>) {\n const value: any = get(dataObj, xKey);\n if (moment(value, true).isValid() || isNaN(value)) {\n xaxisDatakeyArr.push(value);\n return index;\n }\n return value;\n }\n\n prepareDataItems(dataset: any) {\n let xaxis = this.props.xaxisdatakey;\n let yaxis = this.props.yaxisdatakey;\n let xaxisDatakeyArr: Array<any> = [];\n let datasets: any = [];\n\n if (xaxis && yaxis) {\n let yPts = yaxis.split(',');\n yPts.forEach((y: any) => {\n if (xaxis !== y) {\n datasets.push(dataset.map((o: {[key: string] : any}, xindex: number) => {\n const xVal = this.getxAxisVal(o, xaxis, xindex, xaxisDatakeyArr);\n let yVal: string | number = get(o, y);\n if (typeof yVal === 'string') {\n yVal = parseFloat(yVal) || yVal;\n }\n let dataObj = {\n x: xVal,\n y: yVal,\n };\n if (this.props.bubblesize) {\n set(dataObj, 'size', get(o, this.props.bubblesize, 5));\n }\n if (this.props.shape) {\n set(dataObj, 'symbol', shapes[this.props.shape]);\n }\n return dataObj;\n }));\n }\n });\n // chartTransform\n this.invokeEventCallback('onTransform', [undefined, this.proxy]);\n if (this.props.type == 'Pie' || this.props.type === 'Donut') {\n // for animation effect\n setTimeout(() => {\n this.updateState({\n endAngle: 360,\n } as S);\n }, 500);\n }\n this.updateData(datasets, yPts, xaxisDatakeyArr);\n }\n }\n\n\n protected renderLoadingIcon() {\n return (<WmIcon styles={this.styles.loadingIcon}\n iconclass={this.props.loadingicon}\n caption={this.props.loadingdatamsg}></WmIcon>);\n }\n\n updateData(datasets: any, yPts: any, xaxisDatakeyArr: Array<any>) {\n this.updateState({\n data: datasets as any,\n yAxis: yPts,\n xaxisDatakeyArr: xaxisDatakeyArr\n } as S, () => {\n this.prepareLegendData();\n if (!this.props.labeltype || this.props.labeltype === 'percent') {\n this.setTotal(this.state.data[0]);\n }\n if (this.isAxisDomainSupported(this.props.type) && (this.props.ydomain || this.props.xdomain)) {\n this.setDomainValues();\n }\n this.updateState({\n loading: false\n } as S);\n });\n }\n\n setTotal(data: Array<{x: any, y: number}>) {\n let total = 0;\n data.forEach((d: {x: any, y: any}) => {\n total += d.y as number;\n });\n this.updateState({\n total: total\n } as S);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n let units = '';\n switch(name) {\n case 'customcolors':\n if (isEmpty($new)) {\n return;\n }\n if (typeof $new === 'string') {\n $new = $new.split(',');\n }\n this.updateState({\n colors: $new\n } as S);\n break;\n case 'theme':\n this.applyTheme(this.props);\n break;\n case 'dataset':\n if (!isArray($new)) {\n if (isObject($new) && !isEmpty($new)) {\n $new = [$new];\n } else {\n $new = [];\n }\n }\n $new && this.prepareDataItems($new);\n break;\n case 'xaxislabel':\n if (this.props.xunits) {\n units = ' (' + this.props.xunits + ')';\n }\n this.updateState({\n xLabel: $new + units\n } as S);\n break;\n case 'yaxislabel':\n if (this.props.yunits) {\n units = ' (' + this.props.yunits + ')';\n }\n this.updateState({\n yLabel: $new + units\n } as S);\n break;\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","Dimensions","moment","forEach","get","isArray","isEmpty","isObject","maxBy","minBy","set","trim","orderBy","VictoryAxis","VictoryLegend","VictoryLabel","BaseComponent","BaseComponentState","WmIcon","ThemeFactory","DEFAULT_CLASS","constructSampleData","getChartType","BaseChartComponentState","constructor","arguments","_defineProperty","undefined","screenWidth","width","shapes","SI_SYMBOL","BaseChartComponent","props","defaultClass","length","defaultProps","defaultState","theme","applyTheme","componentDidMount","abbreviateNumber","number","tier","Math","log10","abs","suffix","scale","pow","scaled","toFixed","getLegendView","colorScale","state","showlegend","top","parseInt","styles","root","height","orientation","createElement","name","gutter","data","legendData","style","border","stroke","borderPadding","left","y","getYScaleMinValue","value","_min","floor","getXaxis","crossAxis","label","xaxislabel","xaxisdatakey","xunits","grid","axis","showxaxis","fixLabelOverlap","tickLabelComponent","angle","labelangle","tickCount","xaxisDatakeyArr","tickFormat","d","getYAxis","yaxislabel","yaxisdatakey","yunits","axisLabel","padding","yaxislabeldistance","showyaxis","t","dependentAxis","isAxisDomainSupported","type","isAxisDomainValid","areMinMaxValuesValid","values","isFinite","min","max","setDomainValues","xDomainValues","yDomainValues","x","getXMinMaxValues","getYMinMaxValues","updateState","chartMinX","chartMaxX","yMin","chartMinY","chartMaxY","datum","xValues","dataObject","yValues","minValues","maxValues","push","setHeightWidthOnChart","cb","chartHeight","chartWidth","themeName","colorsToUse","customcolors","split","map","themeToUse","getColorsObj","getTheme","colors","prepareLegendData","yAxis","ldata","prepareEvents","_","idx","childName","target","eventKey","String","eventHandlers","onClick","mutation","onMouseOver","onMouseOut","getxAxisVal","dataObj","xKey","index","isValid","isNaN","prepareDataItems","dataset","xaxis","yaxis","datasets","_yaxis","shape","yPts","o","xindex","xVal","yVal","parseFloat","bubblesize","invokeEventCallback","proxy","setTimeout","endAngle","updateData","renderLoadingIcon","loadingIcon","iconclass","loadingicon","caption","loadingdatamsg","labeltype","setTotal","ydomain","xdomain","loading","total","onPropertyChange","$new","$old","units","xLabel","yLabel","getDataType","widgetContext","Error"],"sources":["basechart.component.tsx"],"sourcesContent":["import React from \"react\";\nimport { Dimensions } from 'react-native';\nimport moment from \"moment\";\nimport {forEach, get, isArray, isEmpty, isObject, maxBy, minBy, set, trim, orderBy} from \"lodash-es\";\nimport { ScatterSymbolType } from \"victory-core\";\nimport {VictoryAxis, VictoryLegend, VictoryLabel} from \"victory-native\";\n\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport WmIcon from \"@wavemaker/app-rn-runtime/components/basic/icon/icon.component\";\nimport ThemeFactory from \"@wavemaker/app-rn-runtime/components/chart/theme/chart.theme\";\n\nimport BaseChartComponentProps from \"./basechart.props\";\nimport { DEFAULT_CLASS, BaseChartComponentStyles} from \"./basechart.styles\";\nimport _ from \"lodash\";\nimport { constructSampleData, getChartType } from \"./staticdata\";\n\nexport class BaseChartComponentState <T extends BaseChartComponentProps> extends BaseComponentState<T> {\n data: any = [];\n content: any = null;\n yAxis: Array<string> = [];\n xaxisDatakeyArr: Array<any> = [];\n legendData: any = [];\n theme: any;\n colors: any;\n xLabel: string = '';\n yLabel: string = '';\n total: number = 0;\n endAngle: number = 0;\n loading: boolean = true;\n chartHeight: number = 0;\n chartWidth: number = 0;\n chartMinY: number | undefined = undefined;\n chartMinX: number | undefined = undefined;\n chartMaxY: number | undefined = undefined;\n chartMaxX: number | undefined = undefined;\n}\n\nconst screenWidth = Dimensions.get(\"window\").width;\n\nconst shapes: {[key: string]: any} = {\n 'circle': 'circle',\n 'cross': 'cross',\n 'diamond': 'diamond',\n 'plus': 'plus',\n 'minus': 'minus',\n 'square': 'square',\n 'star': 'star',\n 'triangle-down': 'triangleDown',\n 'triangle-up': 'triangleUp',\n};\n\nconst SI_SYMBOL = [\"\", \"k\", \"M\", \"G\", \"T\", \"P\", \"E\"];\n\nexport abstract class BaseChartComponent<T extends BaseChartComponentProps, S extends BaseChartComponentState<T>, L extends BaseChartComponentStyles> extends BaseComponent<T, S, L> {\n protected screenWidth: number = screenWidth;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n if (!props.theme) {\n this.applyTheme(props);\n }\n }\n\n componentDidMount() {\n super.componentDidMount();\n }\n\n abbreviateNumber(number: any) {\n if (typeof number !== 'number') {\n return number;\n }\n const tier = Math.log10(Math.abs(number)) / 3 | 0;\n\n if (tier == 0) {\n return number;\n }\n\n // get suffix and determine scale\n const suffix = SI_SYMBOL[tier];\n const scale = Math.pow(10, tier * 3);\n\n // scale the number\n var scaled = number / scale;\n\n // format number and add suffix\n return scaled.toFixed(1) + suffix;\n }\n\n getLegendView(colorScale?: any) {\n if (this.state.props.showlegend === 'hide') {\n return null;\n }\n let top = this.props.showlegend === 'bottom' ? parseInt(this.styles.root.height as string) : 0;\n if (top) {\n top = top - (50); // remove legendHeight\n }\n const orientation = (this.props.showlegend === 'right' || this.props.showlegend === 'left') ? 'vertical' : 'horizontal';\n return <VictoryLegend\n colorScale={colorScale}\n name={'legendData'}\n orientation={orientation}\n gutter={20}\n data={this.state.legendData}\n style={{ border: { stroke: 'none' } }}\n borderPadding={{top: 30, left: 50}}\n y={top}\n />\n }\n\n getYScaleMinValue(value: number) {\n const _min = Math.floor(value);\n return Math.abs(value) - _min > 0 ? value - .1 : _min - 1;\n };\n\n // x axis with vertical lines having grid stroke colors\n getXaxis() {\n return <VictoryAxis crossAxis label={(this.props.xaxislabel || this.props.xaxisdatakey || \"name\") + (this.props.xunits ? `(${this.props.xunits})` : '')}\n style={{\n grid: this.styles.grid,\n axis: {stroke: this.props.showxaxis === false? 'none': '#000000'}\n }}\n fixLabelOverlap={false}\n tickLabelComponent={<VictoryLabel angle={this.props.labelangle || 0} />} theme={this.state.theme}\n tickCount={this.state.xaxisDatakeyArr.length} \n tickFormat={(d) => `${this.state.xaxisDatakeyArr[d] ? this.state.xaxisDatakeyArr[d]: ''}`}/>; \n} \n \n /* y axis with horizontal lines having grid stroke colors*/\n getYAxis() {\n return <VictoryAxis crossAxis label={(this.props.yaxislabel || this.props.yaxisdatakey || \"datavalue\") + (this.props.yunits ? `(${this.props.yunits})` : '')}\n style={{\n axisLabel: {padding: this.props.yaxislabeldistance},\n grid: this.styles.grid,\n axis: {stroke: this.props.showyaxis === false? 'none': '#000000'}\n }}\n theme={this.state.theme}\n tickFormat={(t) => `${this.abbreviateNumber(t)}`} dependentAxis />;\n }\n\n // X/Y Domain properties are supported only for Column and Area charts\n isAxisDomainSupported(type: string) {\n return type === 'Column'|| type === 'Area';\n }\n\n // Check whether X/Y Domain was set to Min and is supported for the present chart\n isAxisDomainValid(axis: string) {\n if (get(this.props, axis + 'domain') === 'Min' && (this.isAxisDomainSupported(this.props.type))) {\n return true;\n }\n return false;\n };\n\n// Check whether min and max values are finite or not\n areMinMaxValuesValid(values: any) {\n if (isFinite(values.min) && isFinite(values.max)) {\n return true;\n }\n return false;\n };\n\n setDomainValues() {\n let xDomainValues, yDomainValues;\n if (this.state.data.length > 0) {\n if (this.isAxisDomainValid('x') && typeof this.state.data[0].x === 'number') {\n xDomainValues = this.getXMinMaxValues(this.state.data[0]);\n }\n if (this.isAxisDomainValid('y')) {\n yDomainValues = this.getYMinMaxValues(this.state.data);\n }\n if (xDomainValues) {\n this.updateState({\n chartMinX: yDomainValues.min.x,\n chartMaxX: yDomainValues.max.x\n } as S)\n }\n let yMin;\n if (yDomainValues) {\n if (this.areMinMaxValuesValid({max: yDomainValues.max.y, min: yDomainValues.min.y})) {\n yMin = this.getYScaleMinValue(yDomainValues.min.y);\n }\n this.updateState({\n chartMinY: yMin ? yMin : yDomainValues.min.y,\n chartMaxY: yDomainValues.max.y\n } as S);\n }\n }\n }\n\n // Getting the min and max values among all the x values\n getXMinMaxValues(datum: Array<{x: number, y: any}>) {\n if (!datum) {\n return;\n }\n const xValues: any = {};\n /*\n compute the min x value\n eg: When data has objects\n input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]\n min x: 1\n eg: When data has arrays\n input: [[10, 20], [20, 30], [30, 40]];\n min x: 10\n */\n xValues.min = minBy(datum, (dataObject: {x: any, y: any}) => dataObject.x) || {x: undefined};\n /*\n compute the max x value\n eg: When data has objects\n input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]\n max x: 3\n eg: When data has arrays\n input: [[10, 20], [20, 30], [30, 40]];\n max x: 30\n */\n xValues.max = maxBy(datum, (dataObject: {x: any, y: any}) => dataObject.x)|| {x: undefined};\n return xValues;\n }\n\n // Getting the min and max values among all the y values\n getYMinMaxValues(datum: Array<Array<{x: any, y: number}>>) {\n const yValues: any = {},\n minValues: any = [],\n maxValues: any = [];\n if (!datum) {\n return;\n }\n\n /*\n Getting the min and max y values among all the series of data\n compute the min y value\n eg: When data has objects\n input: [[{x:1, y:2}, {x:2, y:3}, {x:3, y:4}], [{x:2, y:3}, {x:3, y:4}, {x:4, y:5}]]\n min y values : '2'(among first set) & '3'(among second set)\n max y values : '4'(among first set) & '5'(among second set)\n\n eg: When data has arrays\n input: [[[10, 20], [20, 30], [30, 40]], [[20, 30], [30, 40], [40, 50]]]\n min y values : '20'(among first set) & '30'(among second set)\n max y values : '40'(among first set) & '50'(among second set)\n */\n\n forEach(datum, data => {\n if (data && !isEmpty(data)) {\n minValues.push(minBy(data, (dataObject: {x: any, y: any}) => { return dataObject.y }));\n maxValues.push(maxBy(data, (dataObject: {x: any, y: any}) => { return dataObject.y }));\n }\n });\n // Gets the least and highest values among all the min and max values of respective series of data\n yValues.min = minBy(minValues, (dataObject: {x: any, y: any}) => dataObject.y) || {y: undefined};\n yValues.max = maxBy(maxValues, (dataObject: {x: any, y: any}) => dataObject.y) || {y: undefined};\n return yValues;\n }\n\n setHeightWidthOnChart(cb?: () => void) {\n let height = this.styles.root.height || 250;\n let width = this.styles.root.width || screenWidth;\n if (height && typeof height === 'string') {\n height = parseInt(height);\n }\n if (width && typeof width === 'string') {\n width = parseInt(width);\n }\n this.updateState({\n chartHeight: height,\n chartWidth: width\n } as S, cb);\n }\n\n applyTheme(props: BaseChartComponentProps) {\n let themeName = props.theme ? props.theme : (props.type === 'Pie' ? 'Azure' : 'Terrestrial');\n let colorsToUse = [];\n if (typeof props.customcolors === 'string' && !isEmpty(props.customcolors)) {\n colorsToUse = props.customcolors.split(',').map(trim);\n }\n let themeToUse;\n if (typeof themeName === 'string') {\n if (!colorsToUse.length) {\n colorsToUse = props.customcolors;\n }\n if(props.customcolors===undefined) {\n colorsToUse = ThemeFactory.getColorsObj(themeName);\n }\n themeToUse = ThemeFactory.getTheme(themeName, this.props.styles, colorsToUse);\n } else if (typeof themeName === 'object') {\n // if theme is passed as an object then use that custom theme.\n themeToUse = props.theme;\n }\n this.updateState({\n colors: colorsToUse,\n theme: themeToUse\n } as S);\n }\n\n prepareLegendData() {\n if (this.state.yAxis) {\n let ldata: any;\n if (this.props.type === 'Stack') {\n const data = orderBy(this.state.data[0], 'y', 'asc');\n ldata = data.map((d: any) => {\n return {\n name: this.state.xaxisDatakeyArr[d.x]\n }\n });\n } else {\n ldata = this.state.yAxis.map((d: string) => {\n return {\n name: d\n }\n });\n }\n\n this.updateState({\n legendData: ldata\n } as S);\n }\n }\n\n prepareEvents(name: string) {\n return this.state.legendData.map((_: any, idx: number) => {\n return {\n childName: ['legend'],\n target: 'data',\n eventKey: String(idx),\n eventHandlers: {\n onClick: () => {\n return [\n {\n childName: [name + '_' + idx],\n target: 'data',\n eventKey: 'all',\n mutation: (props: any) => {\n return null;\n }\n }\n ];\n },\n onMouseOver: () => {\n },\n onMouseOut: () => {\n }\n }\n };\n });\n }\n\n // If date string is bound to xaxis then we are pushing the x values as indexes.\n getxAxisVal(dataObj: {[key: string] : any}, xKey: string, index: number, xaxisDatakeyArr: Array<any>) {\n const value: any = get(dataObj, xKey);\n if (moment(value).isValid() || isNaN(value) || typeof value === 'string' || typeof value === 'number') {\n xaxisDatakeyArr.push(value);\n return index;\n }\n return value;\n }\n\n prepareDataItems(dataset: any) {\n let xaxis = this.props.xaxisdatakey;\n let yaxis = this.props.yaxisdatakey;\n let xaxisDatakeyArr: Array<any> = [];\n let datasets: any = [];\n if (dataset.length === 0) {\n dataset = constructSampleData(getChartType(this.props), yaxis?.split(','), this.props.shape);\n xaxis = \"x\";\n yaxis = \"y\";\n }\n if (xaxis && yaxis) {\n let yPts = yaxis.split(',');\n yPts.forEach((y: any) => {\n if (xaxis !== y) {\n datasets.push(dataset.map((o: {[key: string] : any}, xindex: number) => {\n const xVal = this.getxAxisVal(o, xaxis, xindex, xaxisDatakeyArr);\n let yVal: string | number = get(o, y);\n if (typeof yVal === 'string') {\n yVal = parseFloat(yVal) || yVal;\n }\n let dataObj = {\n x: xVal,\n y: yVal,\n };\n if (this.props.bubblesize) {\n set(dataObj, 'size', get(o, this.props.bubblesize, 5));\n }\n if (this.props.shape) {\n set(dataObj, 'symbol', shapes[this.props.shape]);\n }\n return dataObj;\n }));\n }\n });\n // chartTransform\n this.invokeEventCallback('onTransform', [undefined, this.proxy]);\n if (this.props.type == 'Pie' || this.props.type === 'Donut') {\n // for animation effect\n setTimeout(() => {\n this.updateState({\n endAngle: 360,\n } as S);\n }, 500);\n }\n this.updateData(datasets, yPts, xaxisDatakeyArr);\n }\n }\n\n\n protected renderLoadingIcon() {\n return (<WmIcon styles={this.styles.loadingIcon}\n iconclass={this.props.loadingicon}\n caption={this.props.loadingdatamsg}></WmIcon>);\n }\n\n updateData(datasets: any, yPts: any, xaxisDatakeyArr: Array<any>) {\n this.updateState({\n data: datasets as any,\n yAxis: yPts,\n xaxisDatakeyArr: xaxisDatakeyArr\n } as S, () => {\n this.prepareLegendData();\n if (!this.props.labeltype || this.props.labeltype === 'percent') {\n this.setTotal(this.state.data[0]);\n }\n if (this.isAxisDomainSupported(this.props.type) && (this.props.ydomain || this.props.xdomain)) {\n this.setDomainValues();\n }\n this.updateState({\n loading: false\n } as S);\n });\n }\n\n setTotal(data: Array<{x: any, y: number}>) {\n let total = 0;\n data.forEach((d: {x: any, y: any}) => {\n total += d.y as number;\n });\n this.updateState({\n total: total\n } as S);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n let units = '';\n switch(name) {\n case 'customcolors':\n if (isEmpty($new)) {\n return;\n }\n if (typeof $new === 'string') {\n $new = $new.split(',');\n }\n this.updateState({\n colors: $new\n } as S);\n break;\n case 'theme':\n this.applyTheme(this.props);\n break;\n case 'dataset':\n if (!isArray($new)) {\n if (isObject($new) && !isEmpty($new)) {\n $new = [$new];\n } else {\n $new = [];\n }\n }\n $new && this.prepareDataItems($new);\n break;\n case 'xaxislabel':\n if (this.props.xunits) {\n units = ' (' + this.props.xunits + ')';\n }\n this.updateState({\n xLabel: $new + units\n } as S);\n break;\n case 'yaxislabel':\n if (this.props.yunits) {\n units = ' (' + this.props.yunits + ')';\n }\n this.updateState({\n yLabel: $new + units\n } as S);\n break;\n }\n }\n}\nfunction getDataType(widgetContext: { yaxisdatakey: string | null | undefined; shape: any; }): any {\n throw new Error(\"Function not implemented.\");\n}\n\n"],"mappings":"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"}
@@ -20,7 +20,8 @@ export default class BaseChartComponentProps extends BaseProps {
20
20
  _defineProperty(this, "yunits", '');
21
21
  _defineProperty(this, "yaxislabeldistance", 50);
22
22
  _defineProperty(this, "xaxislabeldistance", 30);
23
- _defineProperty(this, "customcolors", '');
23
+ // customcolors: string | Array<string> = '';
24
+ _defineProperty(this, "customcolors", void 0);
24
25
  _defineProperty(this, "legendheight", 0);
25
26
  _defineProperty(this, "labellegendheight", 0);
26
27
  _defineProperty(this, "labeltype", 'percent');
@@ -1 +1 @@
1
- {"version":3,"names":["BaseProps","BaseChartComponentProps","constructor","arguments","_defineProperty"],"sources":["basechart.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class BaseChartComponentProps extends BaseProps {\n xaxisdatakey: string = '';\n yaxisdatakey: string = '';\n iconclass = '';\n dataset: any;\n type: string = '';\n title: string = '';\n subheading: string = '';\n theme: string = '';\n xaxislabel: string = '';\n xunits: string = '';\n staggerlabels: boolean = false;\n yaxislabel: string = '';\n yunits: string = '';\n yaxislabeldistance: number = 50;\n xaxislabeldistance: number = 30;\n customcolors: string | Array<string> = '';\n legendheight: number = 0;\n labellegendheight: number = 0;\n labeltype: 'percent' | 'value' | 'key-value' | 'key' = 'percent';\n bubblesize: string= '';\n shape: string = '';\n loadingicon='fa fa-circle-o-notch fa-pulse';\n loadingdatamsg = 'Loading...';\n nodatamessage = 'No data found';\n offsetbottom: number = 50;\n offsettop: number = 70;\n offsetleft: number = 65;\n offsetright: number = 25;\n showlegend: string = 'top';\n showlabels: 'inside' | 'outside' | 'hide' = 'outside';\n tooltips: boolean = false;\n interpolation: string = 'linear';\n highlightpoints: boolean = false;\n showvalues: boolean = false;\n showyaxis: boolean = true;\n showxaxis: boolean = true;\n ydomain: string = '';\n xdomain: string = '';\n labelangle: number = 0;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,uBAAuB,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,uBACtC,EAAE;IAAAA,eAAA,uBACF,EAAE;IAAAA,eAAA,oBACb,EAAE;IAAAA,eAAA;IAAAA,eAAA,eAEC,EAAE;IAAAA,eAAA,gBACD,EAAE;IAAAA,eAAA,qBACG,EAAE;IAAAA,eAAA,gBACP,EAAE;IAAAA,eAAA,qBACG,EAAE;IAAAA,eAAA,iBACN,EAAE;IAAAA,eAAA,wBACM,KAAK;IAAAA,eAAA,qBACT,EAAE;IAAAA,eAAA,iBACN,EAAE;IAAAA,eAAA,6BACU,EAAE;IAAAA,eAAA,6BACF,EAAE;IAAAA,eAAA,uBACQ,EAAE;IAAAA,eAAA,uBAClB,CAAC;IAAAA,eAAA,4BACI,CAAC;IAAAA,eAAA,oBAC0B,SAAS;IAAAA,eAAA,qBAC5C,EAAE;IAAAA,eAAA,gBACN,EAAE;IAAAA,eAAA,sBACN,+BAA+B;IAAAA,eAAA,yBAC1B,YAAY;IAAAA,eAAA,wBACb,eAAe;IAAAA,eAAA,uBACR,EAAE;IAAAA,eAAA,oBACL,EAAE;IAAAA,eAAA,qBACD,EAAE;IAAAA,eAAA,sBACD,EAAE;IAAAA,eAAA,qBACH,KAAK;IAAAA,eAAA,qBACkB,SAAS;IAAAA,eAAA,mBACjC,KAAK;IAAAA,eAAA,wBACD,QAAQ;IAAAA,eAAA,0BACL,KAAK;IAAAA,eAAA,qBACV,KAAK;IAAAA,eAAA,oBACN,IAAI;IAAAA,eAAA,oBACJ,IAAI;IAAAA,eAAA,kBACP,EAAE;IAAAA,eAAA,kBACF,EAAE;IAAAA,eAAA,qBACC,CAAC;EAAA;AACxB"}
1
+ {"version":3,"names":["BaseProps","BaseChartComponentProps","constructor","arguments","_defineProperty"],"sources":["basechart.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\n\nexport default class BaseChartComponentProps extends BaseProps {\n xaxisdatakey: string = '';\n yaxisdatakey: string = '';\n iconclass = '';\n dataset: any;\n type: string = '';\n title: string = '';\n subheading: string = '';\n theme: string = '';\n xaxislabel: string = '';\n xunits: string = '';\n staggerlabels: boolean = false;\n yaxislabel: string = '';\n yunits: string = '';\n yaxislabeldistance: number = 50;\n xaxislabeldistance: number = 30;\n // customcolors: string | Array<string> = '';\n customcolors: any;\n legendheight: number = 0;\n labellegendheight: number = 0;\n labeltype: 'percent' | 'value' | 'key-value' | 'key' = 'percent';\n bubblesize: string= '';\n shape: string = '';\n loadingicon='fa fa-circle-o-notch fa-pulse';\n loadingdatamsg = 'Loading...';\n nodatamessage = 'No data found';\n offsetbottom: number = 50;\n offsettop: number = 70;\n offsetleft: number = 65;\n offsetright: number = 25;\n showlegend: string = 'top';\n showlabels: 'inside' | 'outside' | 'hide' = 'outside';\n tooltips: boolean = false;\n interpolation: string = 'linear';\n highlightpoints: boolean = false;\n showvalues: boolean = false;\n showyaxis: boolean = true;\n showxaxis: boolean = true;\n ydomain: string = '';\n xdomain: string = '';\n labelangle: number = 0;\n \n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,+CAA+C;AAEzE,eAAe,MAAMC,uBAAuB,SAASD,SAAS,CAAC;EAAAE,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,uBACtC,EAAE;IAAAA,eAAA,uBACF,EAAE;IAAAA,eAAA,oBACb,EAAE;IAAAA,eAAA;IAAAA,eAAA,eAEC,EAAE;IAAAA,eAAA,gBACD,EAAE;IAAAA,eAAA,qBACG,EAAE;IAAAA,eAAA,gBACP,EAAE;IAAAA,eAAA,qBACG,EAAE;IAAAA,eAAA,iBACN,EAAE;IAAAA,eAAA,wBACM,KAAK;IAAAA,eAAA,qBACT,EAAE;IAAAA,eAAA,iBACN,EAAE;IAAAA,eAAA,6BACU,EAAE;IAAAA,eAAA,6BACF,EAAE;IAC/B;IAAAA,eAAA;IAAAA,eAAA,uBAEuB,CAAC;IAAAA,eAAA,4BACI,CAAC;IAAAA,eAAA,oBAC0B,SAAS;IAAAA,eAAA,qBAC5C,EAAE;IAAAA,eAAA,gBACN,EAAE;IAAAA,eAAA,sBACN,+BAA+B;IAAAA,eAAA,yBAC1B,YAAY;IAAAA,eAAA,wBACb,eAAe;IAAAA,eAAA,uBACR,EAAE;IAAAA,eAAA,oBACL,EAAE;IAAAA,eAAA,qBACD,EAAE;IAAAA,eAAA,sBACD,EAAE;IAAAA,eAAA,qBACH,KAAK;IAAAA,eAAA,qBACkB,SAAS;IAAAA,eAAA,mBACjC,KAAK;IAAAA,eAAA,wBACD,QAAQ;IAAAA,eAAA,0BACL,KAAK;IAAAA,eAAA,qBACV,KAAK;IAAAA,eAAA,oBACN,IAAI;IAAAA,eAAA,oBACJ,IAAI;IAAAA,eAAA,kBACP,EAAE;IAAAA,eAAA,kBACF,EAAE;IAAAA,eAAA,qBACC,CAAC;EAAA;AAExB"}
@@ -16,7 +16,8 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
16
16
  title: {
17
17
  color: themeVariables.chartTitleColor,
18
18
  fontSize: 20,
19
- lineHeight: 24
19
+ lineHeight: 24,
20
+ paddingLeft: 10
20
21
  },
21
22
  subHeading: {
22
23
  fontSize: 12,
@@ -1 +1 @@
1
- {"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","text","icon","fontSize","line","color","chartLineColor","title","chartTitleColor","lineHeight","subHeading","chartSubTitleColor","legendText","legenedDot","grid","barChart"],"sources":["basechart.styles.ts"],"sourcesContent":["import { TextStyle, ViewStyle } from 'react-native';\nimport BASE_THEME from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { VictoryStyleObject } from \"victory-core\";\nimport { WmIconStyles } from '@wavemaker/app-rn-runtime/components/basic/icon/icon.styles';\n\n\nexport type BaseChartComponentStyles = BaseStyles & {\n title: TextStyle,\n icon: WmIconStyles,\n subHeading: TextStyle,\n grid: VictoryStyleObject,\n legendText: TextStyle,\n legenedDot: ViewStyle \n};\n\nexport const DEFAULT_CLASS = 'app-chart';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: BaseChartComponentStyles = defineStyles({\n root: {},\n text: {},\n icon: {\n icon: {\n fontSize: 20\n }\n } as WmIconStyles,\n line: {\n color: themeVariables.chartLineColor\n },\n title: {\n color: themeVariables.chartTitleColor,\n fontSize: 20,\n lineHeight: 24,\n },\n subHeading: {\n fontSize: 12,\n lineHeight: 16,\n color: themeVariables.chartSubTitleColor\n },\n legendText: {},\n legenedDot: {},\n grid: {},\n barChart: {}\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n});\n"],"mappings":"AACA,OAAOA,UAAU,MAAM,wCAAwC;AAC/D,SAAqBC,YAAY,QAAQ,+CAA+C;AAcxF,OAAO,MAAMC,aAAa,GAAG,WAAW;AACxCF,UAAU,CAACG,aAAa,CAAC,CAACC,cAAc,EAAEC,QAAQ,KAAK;EACrD,MAAMC,aAAuC,GAAGL,YAAY,CAAC;IAC3DM,IAAI,EAAE,CAAC,CAAC;IACRC,IAAI,EAAE,CAAC,CAAC;IACRC,IAAI,EAAE;MACJA,IAAI,EAAE;QACJC,QAAQ,EAAE;MACZ;IACF,CAAiB;IACjBC,IAAI,EAAE;MACJC,KAAK,EAAER,cAAc,CAACS;IACxB,CAAC;IACDC,KAAK,EAAE;MACLF,KAAK,EAAER,cAAc,CAACW,eAAe;MACrCL,QAAQ,EAAE,EAAE;MACZM,UAAU,EAAE;IACd,CAAC;IACDC,UAAU,EAAE;MACVP,QAAQ,EAAE,EAAE;MACZM,UAAU,EAAE,EAAE;MACdJ,KAAK,EAAER,cAAc,CAACc;IACxB,CAAC;IACDC,UAAU,EAAE,CAAC,CAAC;IACdC,UAAU,EAAE,CAAC,CAAC;IACdC,IAAI,EAAE,CAAC,CAAC;IACRC,QAAQ,EAAE,CAAC;EACb,CAAC,CAAC;EAEFjB,QAAQ,CAACH,aAAa,EAAE,EAAE,EAAEI,aAAa,CAAC;AAC5C,CAAC,CAAC"}
1
+ {"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","text","icon","fontSize","line","color","chartLineColor","title","chartTitleColor","lineHeight","paddingLeft","subHeading","chartSubTitleColor","legendText","legenedDot","grid","barChart"],"sources":["basechart.styles.ts"],"sourcesContent":["import { TextStyle, ViewStyle } from 'react-native';\nimport BASE_THEME from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { VictoryStyleObject } from \"victory-core\";\nimport { WmIconStyles } from '@wavemaker/app-rn-runtime/components/basic/icon/icon.styles';\n\n\nexport type BaseChartComponentStyles = BaseStyles & {\n title: TextStyle,\n icon: WmIconStyles,\n subHeading: TextStyle,\n grid: VictoryStyleObject,\n legendText: TextStyle,\n legenedDot: ViewStyle \n};\n\nexport const DEFAULT_CLASS = 'app-chart';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: BaseChartComponentStyles = defineStyles({\n root: {},\n text: {},\n icon: {\n icon: {\n fontSize: 20\n }\n } as WmIconStyles,\n line: {\n color: themeVariables.chartLineColor\n },\n title: {\n color: themeVariables.chartTitleColor,\n fontSize: 20,\n lineHeight: 24,\n paddingLeft: 10,\n },\n subHeading: {\n fontSize: 12,\n lineHeight: 16,\n color: themeVariables.chartSubTitleColor\n },\n legendText: {},\n legenedDot: {},\n grid: {},\n barChart: {}\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n});\n"],"mappings":"AACA,OAAOA,UAAU,MAAM,wCAAwC;AAC/D,SAAqBC,YAAY,QAAQ,+CAA+C;AAcxF,OAAO,MAAMC,aAAa,GAAG,WAAW;AACxCF,UAAU,CAACG,aAAa,CAAC,CAACC,cAAc,EAAEC,QAAQ,KAAK;EACrD,MAAMC,aAAuC,GAAGL,YAAY,CAAC;IAC3DM,IAAI,EAAE,CAAC,CAAC;IACRC,IAAI,EAAE,CAAC,CAAC;IACRC,IAAI,EAAE;MACJA,IAAI,EAAE;QACJC,QAAQ,EAAE;MACZ;IACF,CAAiB;IACjBC,IAAI,EAAE;MACJC,KAAK,EAAER,cAAc,CAACS;IACxB,CAAC;IACDC,KAAK,EAAE;MACLF,KAAK,EAAER,cAAc,CAACW,eAAe;MACrCL,QAAQ,EAAE,EAAE;MACZM,UAAU,EAAE,EAAE;MACdC,WAAW,EAAE;IACf,CAAC;IACDC,UAAU,EAAE;MACVR,QAAQ,EAAE,EAAE;MACZM,UAAU,EAAE,EAAE;MACdJ,KAAK,EAAER,cAAc,CAACe;IACxB,CAAC;IACDC,UAAU,EAAE,CAAC,CAAC;IACdC,UAAU,EAAE,CAAC,CAAC;IACdC,IAAI,EAAE,CAAC,CAAC;IACRC,QAAQ,EAAE,CAAC;EACb,CAAC,CAAC;EAEFlB,QAAQ,CAACH,aAAa,EAAE,EAAE,EAAEI,aAAa,CAAC;AAC5C,CAAC,CAAC"}
@@ -1,11 +1,11 @@
1
1
  import React from 'react';
2
- import { View } from 'react-native';
3
- import { Svg } from 'react-native-svg';
4
- import { VictoryChart, VictoryLine, VictoryLegend, VictoryScatter, VictoryGroup } from 'victory-native';
2
+ import { Text, View } from 'react-native';
3
+ import { VictoryChart, VictoryLine, VictoryScatter, VictoryGroup } from 'victory-native';
5
4
  import WmLineChartProps from './line-chart.props';
6
5
  import { DEFAULT_CLASS } from './line-chart.styles';
7
6
  import { BaseChartComponent, BaseChartComponentState } from "@wavemaker/app-rn-runtime/components/chart/basechart.component";
8
7
  import ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';
8
+ import WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';
9
9
  export class WmLineChartState extends BaseChartComponentState {}
10
10
  export default class WmLineChart extends BaseChartComponent {
11
11
  constructor(props) {
@@ -14,11 +14,23 @@ export default class WmLineChart extends BaseChartComponent {
14
14
  renderWidget(props) {
15
15
  var _this$state$data;
16
16
  if (!((_this$state$data = this.state.data) !== null && _this$state$data !== void 0 && _this$state$data.length)) {
17
- return null;
17
+ /*#__PURE__*/React.createElement(VictoryLine, null);
18
18
  }
19
19
  return /*#__PURE__*/React.createElement(View, {
20
20
  style: this.styles.root
21
- }, /*#__PURE__*/React.createElement(VictoryChart, {
21
+ }, /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(View, {
22
+ style: {
23
+ flexDirection: 'row',
24
+ alignItems: 'center'
25
+ }
26
+ }, props.iconclass ? /*#__PURE__*/React.createElement(WmIcon, {
27
+ iconclass: props.iconclass,
28
+ styles: this.styles.icon
29
+ }) : null, /*#__PURE__*/React.createElement(Text, {
30
+ style: this.styles.title
31
+ }, props.title)), /*#__PURE__*/React.createElement(Text, {
32
+ style: this.styles.subHeading
33
+ }, props.subheading)), /*#__PURE__*/React.createElement(VictoryChart, {
22
34
  theme: this.state.theme,
23
35
  height: this.styles.root.height,
24
36
  width: this.styles.root.width || this.screenWidth,
@@ -28,16 +40,7 @@ export default class WmLineChart extends BaseChartComponent {
28
40
  left: props.offsetleft,
29
41
  right: props.offsetright
30
42
  }
31
- }, /*#__PURE__*/React.createElement(VictoryLegend, {
32
- name: 'legend',
33
- containerComponent: /*#__PURE__*/React.createElement(Svg, null),
34
- title: [props.title, props.subheading],
35
- orientation: "horizontal",
36
- gutter: 20,
37
- data: [],
38
- theme: this.state.theme,
39
- y: 0
40
- }), this.getLegendView(), this.getXaxis(), this.getYAxis(), this.state.data.map((d, i) => {
43
+ }, this.getLegendView(), this.getXaxis(), this.getYAxis(), this.state.data.map((d, i) => {
41
44
  return /*#__PURE__*/React.createElement(VictoryGroup, {
42
45
  key: props.name + '_line_group_' + i
43
46
  }, /*#__PURE__*/React.createElement(VictoryLine, {
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Svg","VictoryChart","VictoryLine","VictoryLegend","VictoryScatter","VictoryGroup","WmLineChartProps","DEFAULT_CLASS","BaseChartComponent","BaseChartComponentState","ThemeVariables","WmLineChartState","WmLineChart","constructor","props","renderWidget","_this$state$data","state","data","length","createElement","style","styles","root","theme","height","width","screenWidth","padding","top","offsettop","bottom","offsetbottom","left","offsetleft","right","offsetright","name","containerComponent","title","subheading","orientation","gutter","y","getLegendView","getXaxis","getYAxis","map","d","i","key","interpolation","standalone","stroke","colors","INSTANCE","chartLineColor","strokeWidth","linethickness","highlightpoints","size","fill","opacity"],"sources":["line-chart.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport { Svg } from 'react-native-svg';\n\nimport {\n VictoryChart,\n VictoryLine,\n VictoryLegend,\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\";\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 renderWidget(props: WmLineChartProps) {\n if (!this.state.data?.length) {\n return null;\n }\n return (<View\n style={this.styles.root}\n >\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 y={0}\n />\n {this.getLegendView()}\n {this.getXaxis()}\n {this.getYAxis()}\n {\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 + '_line_' + i}\n standalone={true}\n style={{\n data: {\n stroke: (this.state.colors[i] || ThemeVariables.INSTANCE.chartLineColor),\n strokeWidth: props.linethickness}\n }}\n data={d}\n />\n {(props.highlightpoints || this.state.data.length === 1) ?\n <VictoryScatter size={5} key={props.name + '_scatter' + i}\n style={{\n data: { fill: this.state.colors[i], opacity: 0.8}\n }}\n data={d}\n />: null}</VictoryGroup>\n })\n }\n </VictoryChart>\n </View>);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","Text","View","VictoryChart","VictoryLine","VictoryScatter","VictoryGroup","WmLineChartProps","DEFAULT_CLASS","BaseChartComponent","BaseChartComponentState","ThemeVariables","WmIcon","WmLineChartState","WmLineChart","constructor","props","renderWidget","_this$state$data","state","data","length","createElement","style","styles","root","flexDirection","alignItems","iconclass","icon","title","subHeading","subheading","theme","height","width","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","highlightpoints","size","fill","opacity"],"sources":["line-chart.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View } from 'react-native';\nimport { Svg } from 'react-native-svg';\n\nimport {\n VictoryChart,\n VictoryLine,\n VictoryLegend,\n VictoryScatter,\n VictoryGroup,\n VictoryLabel\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 renderWidget(props: WmLineChartProps) {\n if (!this.state.data?.length) {\n <VictoryLine/>\n }\n return (<View\n style={this.styles.root}\n >\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.styles.root.width as number || 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 {\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 + '_line_' + i}\n standalone={true}\n style={{\n data: {\n stroke: (this.state.colors[i] || ThemeVariables.INSTANCE.chartLineColor),\n strokeWidth: props.linethickness}\n }}\n data={d}\n />\n {(props.highlightpoints || this.state.data.length === 1) ?\n <VictoryScatter size={5} key={props.name + '_scatter' + i}\n style={{\n data: { fill: this.state.colors[i], opacity: 0.8}\n }}\n data={d}\n />: null}</VictoryGroup>\n })\n }\n </VictoryChart>\n </View>);\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Text","Platform","Svg","VictoryLabel","VictoryPie","WmPieChartProps","DEFAULT_CLASS","formatCompactNumber","WmIcon","BaseChartComponent","BaseChartComponentState","WmDonutChartProps","Legend","WmPieChartState","constructor","arguments","_defineProperty","WmPieChart","props","type","e","_e$nativeEvent","viewWidth","nativeEvent","layout","width","updateState","chartWidth","totalHeight","height","_e$nativeEvent2","infoHeight","opacity","_e$nativeEvent3","_e$nativeEvent4","legendWidth","legendHeight","componentDidMount","getLabel","d","labeltype","Math","round","y","state","total","xaxisDatakeyArr","x","onSelect","event","data","value","slice","label","datum","selectedItem","dataset","index","selectedChartItem","color","style","fill","_dataObj","invokeEventCallback","proxy","renderWidget","length","pieData","showlegend","chartHeight","styles","root","radius","min","innerRadius","donutratio","styleProp","labelRadius","showlabels","labels","display","origin","orientation","legendData","map","name","colors","createElement","onLayout","onViewLayoutChange","onInfoViewLayoutChange","flexDirection","alignItems","iconclass","icon","title","subHeading","subheading","onLegendViewLayoutChange","testStyle","legendText","dotStyle","legenedDot","justifyContent","flex","standalone","colorScale","_ref","endAngle","theme","key","labelPlacement","labelplacement","events","target","eventHandlers","OS","onClick","bind","onPress","textAnchor","text","centerlabel","maxWidth"],"sources":["pie-chart.component.tsx"],"sourcesContent":["import React from 'react';\nimport { LayoutChangeEvent, View, Text, Platform } from 'react-native';\nimport { Svg } from 'react-native-svg';\n\nimport { VictoryLabel, VictoryLegend, VictoryPie } from 'victory-native';\n\nimport WmPieChartProps from './pie-chart.props';\nimport { DEFAULT_CLASS, WmPieChartStyles } from './pie-chart.styles';\n\nimport { formatCompactNumber } from '@wavemaker/app-rn-runtime/core/utils';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport {\n BaseChartComponent,\n BaseChartComponentState\n} from '@wavemaker/app-rn-runtime/components/chart/basechart.component';\nimport WmDonutChartProps from '@wavemaker/app-rn-runtime/components/chart/donut-chart/donut-chart.props';\nimport { Legend } from '../legend/legend.component';\n\nexport class WmPieChartState extends BaseChartComponentState<WmPieChartProps> {\n chartWidth = 0;\n totalHeight = 0;\n infoHeight = 10;\n legendWidth = 0;\n legendHeight = 0;\n opacity = 0;\n}\n\nexport default class WmPieChart extends BaseChartComponent<WmPieChartProps, WmPieChartState, WmPieChartStyles> {\n\n constructor(props: WmPieChartProps) {\n super(props, DEFAULT_CLASS, props.type === 'Donut' ? new WmDonutChartProps() : new WmPieChartProps(), new WmPieChartState());\n }\n\n componentDidMount() {\n super.componentDidMount();\n }\n\n onViewLayoutChange = (e: LayoutChangeEvent) => {\n let viewWidth = e.nativeEvent.layout.width;\n this.updateState({\n chartWidth: viewWidth,\n totalHeight: e.nativeEvent?.layout.height\n } as WmPieChartState)\n }\n\n onInfoViewLayoutChange = (e: LayoutChangeEvent) => {\n this.updateState({\n infoHeight: e.nativeEvent?.layout.height,\n opacity: 1\n } as WmPieChartState);\n }\n\n onLegendViewLayoutChange = (e: LayoutChangeEvent) => {\n this.updateState({\n legendWidth: e.nativeEvent?.layout.width,\n legendHeight: e.nativeEvent?.layout.height\n } as WmPieChartState);\n }\n\n getLabel(d: {x: any, y: any}, props: WmPieChartProps): string {\n switch(props.labeltype) {\n case 'percent': {\n return Math.round(d.y * 100 /this.state.total) + '%';\n }\n case 'key': {\n return this.state.xaxisDatakeyArr[d.x];\n }\n case 'value': {\n return formatCompactNumber(d.y);\n }\n case 'key-value': {\n return this.state.xaxisDatakeyArr[d.x] + ' ' + d.y;\n }\n }\n }\n\n onSelect(event: any, data: any){\n let value = data.slice.value;\n let label = this.state.xaxisDatakeyArr[data.datum.x];\n let selectedItem = this.props.dataset[data.index];\n let selectedChartItem = data.slice;\n selectedChartItem[\"data\"] = {x: label, y: value, color: data.style.fill, _dataObj: selectedItem}\n this.invokeEventCallback('onSelect', [event.nativeEvent, this.proxy, selectedItem, selectedChartItem ]);\n }\n\n renderWidget(props: WmPieChartProps) {\n if (!this.state.data.length) {\n return null;\n }\n const pieData = this.state.data[0];\n const chartWidth = this.state.chartWidth \n - (props.showlegend === 'right' ? this.state.legendWidth : 0);\n const chartHeight = (this.styles.root.height ? this.state.totalHeight : chartWidth) \n - this.state.infoHeight \n - (props.showlegend === 'right' ? 0 : this.state.legendHeight);\n let radius = (Math.min(chartWidth, chartHeight) - 40)/ 2;\n let innerRadius = props.donutratio * radius;\n let styleProp = {};\n let labelRadius;\n if (props.showlabels === 'hide') {\n styleProp={labels: { display: \"none\" }};\n } else if (props.showlabels === 'inside') {\n labelRadius = radius/2;\n } else {\n labelRadius = radius + 8;\n }\n const origin = {x: (chartWidth/2), y: (chartHeight/2)};\n const orientation = props.showlegend === 'right' ? 'vertical' : 'horizontal';\n let legendData = pieData.map((d: {x: any, y: any}, index: number) => {\n return {\n name: this.state.xaxisDatakeyArr[d.x],\n color: this.state.colors[index % (this.state.colors.length)]\n };\n });\n return (\n <View style={[{opacity: this.state.opacity}, this.styles.root]}\n onLayout={this.onViewLayoutChange}>\n <View onLayout={this.onInfoViewLayoutChange}>\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 {props.showlegend === 'top' ? \n (<View onLayout={this.onLegendViewLayoutChange}>\n <Legend data={legendData}\n testStyle={this.styles.legendText}\n dotStyle={this.styles.legenedDot}></Legend>\n </View>) : null }\n <View style={{flexDirection: 'row', justifyContent: 'center', alignItems: 'center'}}>\n <View style={{flex: 1}}>\n {chartWidth ? (\n <Svg\n width={chartWidth}\n height={chartHeight}\n >\n <VictoryPie\n style={styleProp}\n standalone={false}\n colorScale={this.state.colors}\n labels={({datum}) => this.getLabel(datum, props)}\n endAngle={this.state.endAngle || 0}\n radius={radius}\n innerRadius={innerRadius}\n theme={this.state.theme}\n key={props.name}\n name={props.name}\n data={pieData}\n origin={origin}\n labelPlacement={props.labelplacement}\n labelRadius={labelRadius}\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 <VictoryLabel\n textAnchor=\"middle\"\n style={this.styles.title as any}\n x={origin.x} y={origin.y}\n text={props.centerlabel}\n />\n </Svg>) : null}\n </View>\n {props.showlegend === 'right' ? \n (<View style={{maxWidth: '50%'}} onLayout={this.onLegendViewLayoutChange}>\n <Legend data={legendData}\n testStyle={this.styles.legendText}\n dotStyle={this.styles.legenedDot}\n orientation='vertical'></Legend>\n </View>) : null }\n </View>\n {props.showlegend === 'bottom' ? \n (<View onLayout={this.onLegendViewLayoutChange}>\n <Legend data={legendData}\n testStyle={this.styles.legendText}\n dotStyle={this.styles.legenedDot}></Legend>\n </View>) : null }\n </View>\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","View","Text","Platform","Svg","VictoryLabel","VictoryPie","WmPieChartProps","DEFAULT_CLASS","formatCompactNumber","WmIcon","BaseChartComponent","BaseChartComponentState","WmDonutChartProps","Legend","WmPieChartState","constructor","arguments","_defineProperty","WmPieChart","props","type","e","_e$nativeEvent","viewWidth","nativeEvent","layout","width","updateState","chartWidth","totalHeight","height","_e$nativeEvent2","infoHeight","opacity","_e$nativeEvent3","_e$nativeEvent4","legendWidth","legendHeight","componentDidMount","getLabel","d","labeltype","Math","round","y","state","total","xaxisDatakeyArr","x","onSelect","event","data","value","slice","label","datum","selectedItem","dataset","index","selectedChartItem","color","style","fill","_dataObj","invokeEventCallback","proxy","renderWidget","length","pieData","showlegend","chartHeight","styles","root","radius","min","innerRadius","donutratio","styleProp","labelRadius","showlabels","labels","display","origin","orientation","legendData","map","name","colors","createElement","onLayout","onViewLayoutChange","onInfoViewLayoutChange","flexDirection","alignItems","iconclass","icon","title","subHeading","subheading","onLegendViewLayoutChange","testStyle","legendText","dotStyle","legenedDot","justifyContent","flex","standalone","colorScale","_ref","endAngle","theme","key","labelPlacement","labelplacement","events","target","eventHandlers","OS","onClick","bind","onPress","textAnchor","text","centerlabel","maxWidth"],"sources":["pie-chart.component.tsx"],"sourcesContent":["import React from 'react';\nimport { LayoutChangeEvent, View, Text, Platform } from 'react-native';\nimport { Svg } from 'react-native-svg';\n\nimport { VictoryLabel, VictoryLegend, VictoryPie } from 'victory-native';\n\nimport WmPieChartProps from './pie-chart.props';\nimport { DEFAULT_CLASS, WmPieChartStyles } from './pie-chart.styles';\n\nimport { formatCompactNumber } from '@wavemaker/app-rn-runtime/core/utils';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport {\n BaseChartComponent,\n BaseChartComponentState\n} from '@wavemaker/app-rn-runtime/components/chart/basechart.component';\nimport WmDonutChartProps from '@wavemaker/app-rn-runtime/components/chart/donut-chart/donut-chart.props';\nimport { Legend } from '../legend/legend.component';\n\n\nexport class WmPieChartState extends BaseChartComponentState<WmPieChartProps> {\n chartWidth = 0;\n totalHeight = 0;\n infoHeight = 10;\n legendWidth = 0;\n legendHeight = 0;\n opacity = 0;\n}\n\nexport default class WmPieChart extends BaseChartComponent<WmPieChartProps, WmPieChartState, WmPieChartStyles> {\n\n constructor(props: WmPieChartProps) {\n super(props, DEFAULT_CLASS, props.type === 'Donut' ? new WmDonutChartProps() : new WmPieChartProps(), new WmPieChartState());\n }\n\n componentDidMount() {\n super.componentDidMount();\n }\n\n onViewLayoutChange = (e: LayoutChangeEvent) => {\n let viewWidth = e.nativeEvent.layout.width;\n this.updateState({\n chartWidth: viewWidth,\n totalHeight: e.nativeEvent?.layout.height\n } as WmPieChartState)\n }\n\n onInfoViewLayoutChange = (e: LayoutChangeEvent) => {\n this.updateState({\n infoHeight: e.nativeEvent?.layout.height,\n opacity: 1\n } as WmPieChartState);\n }\n\n onLegendViewLayoutChange = (e: LayoutChangeEvent) => {\n this.updateState({\n legendWidth: e.nativeEvent?.layout.width,\n legendHeight: e.nativeEvent?.layout.height\n } as WmPieChartState);\n }\n\n getLabel(d: {x: any, y: any}, props: WmPieChartProps): string {\n switch(props.labeltype) {\n case 'percent': {\n return Math.round(d.y * 100 /this.state.total) + '%';\n }\n case 'key': {\n return this.state.xaxisDatakeyArr[d.x];\n }\n case 'value': {\n return formatCompactNumber(d.y);\n }\n case 'key-value': {\n return this.state.xaxisDatakeyArr[d.x] + ' ' + d.y;\n }\n }\n }\n\n onSelect(event: any, data: any){\n let value = data.slice.value;\n let label = this.state.xaxisDatakeyArr[data.datum.x];\n let selectedItem = this.props.dataset[data.index];\n let selectedChartItem = data.slice;\n selectedChartItem[\"data\"] = {x: label, y: value, color: data.style.fill, _dataObj: selectedItem}\n this.invokeEventCallback('onSelect', [event.nativeEvent, this.proxy, selectedItem, selectedChartItem ]);\n }\n\n renderWidget(props: WmPieChartProps) {\n if (!this.state.data.length) {\n return null;\n } \n const pieData = this.state.data[0];\n const chartWidth = this.state.chartWidth \n - (props.showlegend === 'right' ? this.state.legendWidth : 0);\n const chartHeight = (this.styles.root.height ? this.state.totalHeight : chartWidth) \n - this.state.infoHeight \n - (props.showlegend === 'right' ? 0 : this.state.legendHeight);\n let radius = (Math.min(chartWidth, chartHeight) - 40)/ 2;\n let innerRadius = props.donutratio * radius;\n let styleProp = {};\n let labelRadius;\n if (props.showlabels === 'hide') {\n styleProp={labels: { display: \"none\" }};\n } else if (props.showlabels === 'inside') {\n labelRadius = radius/2;\n } else {\n labelRadius = radius + 8;\n }\n const origin = {x: (chartWidth/2), y: (chartHeight/2)};\n const orientation = props.showlegend === 'right' ? 'vertical' : 'horizontal';\n let legendData = pieData.map((d: {x: any, y: any}, index: number) => {\n return {\n name: this.state.xaxisDatakeyArr[d.x],\n color: this.state.colors[index % (this.state.colors.length)]\n };\n });\n return (\n <View style={[{opacity: this.state.opacity}, this.styles.root]}\n onLayout={this.onViewLayoutChange}>\n <View onLayout={this.onInfoViewLayoutChange}>\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 {props.showlegend === 'top' ? \n (<View onLayout={this.onLegendViewLayoutChange}>\n <Legend data={legendData}\n testStyle={this.styles.legendText}\n dotStyle={this.styles.legenedDot}></Legend>\n </View>) : null }\n <View style={{flexDirection: 'row', justifyContent: 'center', alignItems: 'center'}}>\n <View style={{flex: 1}}>\n {chartWidth ? (\n <Svg\n width={chartWidth}\n height={chartHeight}\n >\n <VictoryPie\n style={styleProp}\n standalone={false}\n colorScale={this.state.colors}\n labels={({datum}) => this.getLabel(datum, props)}\n endAngle={this.state.endAngle || 0}\n radius={radius}\n innerRadius={innerRadius}\n theme={this.state.theme}\n key={props.name}\n name={props.name}\n data={pieData}\n origin={origin}\n labelPlacement={props.labelplacement}\n labelRadius={labelRadius}\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 <VictoryLabel\n textAnchor=\"middle\"\n style={this.styles.title as any}\n x={origin.x} y={origin.y}\n text={props.centerlabel}\n />\n </Svg>) : null}\n </View>\n {props.showlegend === 'right' ? \n (<View style={{maxWidth: '50%'}} onLayout={this.onLegendViewLayoutChange}>\n <Legend data={legendData}\n testStyle={this.styles.legendText}\n dotStyle={this.styles.legenedDot}\n orientation='vertical'></Legend>\n </View>) : null }\n </View>\n {props.showlegend === 'bottom' ? \n (<View onLayout={this.onLegendViewLayoutChange}>\n <Legend data={legendData}\n testStyle={this.styles.legendText}\n dotStyle={this.styles.legenedDot}></Legend>\n </View>) : null }\n </View>\n );\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,215 @@
1
+ import _ from "lodash";
2
+ const dataTypeJSON = ['Column', 'Line', 'Pie', 'Bar', 'Donut', 'Bubble'];
3
+ const SAMPLE_DATA1 = {
4
+ 'group1': 'Europe',
5
+ 'group2': 'Asia',
6
+ 'group3': 'America',
7
+ 'group4': 'Australia'
8
+ };
9
+ const SAMPLE_DATA = {
10
+ 'group1': '01/01/2001',
11
+ 'group2': '01/01/2002',
12
+ 'group3': '01/01/2003'
13
+ };
14
+ const SAMPLE_DATA2 = {
15
+ 'group1': '78.6',
16
+ 'group2': '79',
17
+ 'group3': '80',
18
+ 'group4': '80.66'
19
+ };
20
+ export const chartTypes = ['Column', 'Line', 'Area', 'Cumulative Line', 'Bar', 'Pie', 'Donut', 'Bubble'];
21
+ export const isPieChart = type => type === 'Pie';
22
+
23
+ // returns true if chart type is line
24
+ export const isLineChart = type => type === 'Line';
25
+
26
+ // returns true if chart type is bar
27
+ export const isBarChart = type => type === 'Bar';
28
+
29
+ // returns true if chart type is donut
30
+ export const isDonutChart = type => type === 'Donut';
31
+
32
+ // returns true if chart type is bubble
33
+ export const isBubbleChart = type => type === 'Bubble';
34
+ export const isAreaChart = type => type === 'Area';
35
+
36
+ // returns true if chart type is column
37
+ export const isColumnChart = type => type === 'Column';
38
+ export const isPieType = type => isPieChart(type) || isDonutChart(type);
39
+
40
+ // The format of chart data is array of json objects in case of the following types of chart
41
+ export const isChartDataJSON = type => _.includes(dataTypeJSON, type) || !_.includes(chartTypes, type);
42
+ export const constructSampleData = (dataType, yaxisLength, shape) => {
43
+ let first_series = [],
44
+ second_series = [],
45
+ third_series = [],
46
+ first_series_array = [],
47
+ second_series_array = [],
48
+ third_series_array = [],
49
+ data = [];
50
+ switch (dataType) {
51
+ case 'jsonFormat':
52
+ first_series = [{
53
+ 'x': '01/01/2001',
54
+ 'y': 4000000
55
+ }, {
56
+ 'x': '01/01/2002',
57
+ 'y': 1000000
58
+ }, {
59
+ 'x': '01/01/2003',
60
+ 'y': 5000000
61
+ }];
62
+ second_series = [{
63
+ 'x': '01/01/2001',
64
+ 'y': 3000000
65
+ }, {
66
+ 'x': '01/01/2002',
67
+ 'y': 4000000
68
+ }, {
69
+ 'x': '01/01/2003',
70
+ 'y': 7000000
71
+ }];
72
+ third_series = [{
73
+ 'x': '01/01/2001',
74
+ 'y': 2000000
75
+ }, {
76
+ 'x': '01/01/2002',
77
+ 'y': 8000000
78
+ }, {
79
+ 'x': '01/01/2003',
80
+ 'y': 6000000
81
+ }];
82
+ data[0] = {
83
+ values: first_series,
84
+ key: SAMPLE_DATA.group1
85
+ };
86
+ if (yaxisLength >= 2) {
87
+ data[1] = {
88
+ values: second_series,
89
+ key: SAMPLE_DATA.group2
90
+ };
91
+ }
92
+ if (yaxisLength >= 3) {
93
+ data[2] = {
94
+ values: third_series,
95
+ key: SAMPLE_DATA.group3
96
+ };
97
+ }
98
+ break;
99
+ case 'arrayFormat':
100
+ first_series_array = [[1, 4000000], [2, 1000000], [3, 5000000]];
101
+ second_series_array = [[1, 3000000], [2, 4000000], [3, 7000000]];
102
+ third_series_array = [[1, 2000000], [2, 8000000], [3, 6000000]];
103
+ data[0] = {
104
+ values: first_series_array,
105
+ key: SAMPLE_DATA.group1
106
+ };
107
+ if (yaxisLength >= 2) {
108
+ data[1] = {
109
+ values: second_series_array,
110
+ key: SAMPLE_DATA.group2
111
+ };
112
+ }
113
+ if (yaxisLength >= 3) {
114
+ data[2] = {
115
+ values: third_series_array,
116
+ key: SAMPLE_DATA.group3
117
+ };
118
+ }
119
+ break;
120
+ case 'columnChartFormat':
121
+ data = [{
122
+ 'x': SAMPLE_DATA.group1,
123
+ 'y': 3
124
+ }];
125
+ break;
126
+ case 'barChartFormat':
127
+ data = [{
128
+ 'x': SAMPLE_DATA.group1,
129
+ 'y': 2000000
130
+ }, {
131
+ 'x': SAMPLE_DATA.group2,
132
+ 'y': 1000000
133
+ }, {
134
+ 'x': SAMPLE_DATA.group3,
135
+ 'y': 3000000
136
+ }];
137
+ break;
138
+ case 'lineChartFormat':
139
+ data = [{
140
+ 'x': SAMPLE_DATA1.group1,
141
+ 'y': 2
142
+ }, {
143
+ 'x': SAMPLE_DATA1.group2,
144
+ 'y': 0
145
+ }, {
146
+ 'x': SAMPLE_DATA1.group3,
147
+ 'y': 3
148
+ }];
149
+ break;
150
+ case 'bubbleFormat':
151
+ // shape = shape === 'random' ? shapes[Math.floor(Math.random() * shapes.length)] : shape;
152
+ data = [{
153
+ 'x': SAMPLE_DATA2.group1,
154
+ 'y': 1000000
155
+ }, {
156
+ 'x': SAMPLE_DATA2.group2,
157
+ 'y': 2000000
158
+ }, {
159
+ 'x': SAMPLE_DATA2.group3,
160
+ 'y': 3000000
161
+ }, {
162
+ 'x': SAMPLE_DATA2.group4,
163
+ 'y': 4000000
164
+ }];
165
+ break;
166
+ case 'pieChartFormat':
167
+ data = [{
168
+ 'x': SAMPLE_DATA1.group1,
169
+ 'y': 1000000
170
+ }, {
171
+ 'x': SAMPLE_DATA1.group2,
172
+ 'y': 2000000
173
+ }, {
174
+ 'x': SAMPLE_DATA1.group3,
175
+ 'y': 3000000
176
+ }, {
177
+ 'x': SAMPLE_DATA1.group4,
178
+ 'y': 4000000
179
+ }];
180
+ break;
181
+ }
182
+ return data;
183
+ };
184
+ export const getChartType = widgetContext => {
185
+ const type = widgetContext.type;
186
+ if (isLineChart(type)) {
187
+ return 'lineChartFormat';
188
+ }
189
+ if (isAreaChart(type)) {
190
+ return 'lineChartFormat';
191
+ }
192
+ if (isBarChart(type)) {
193
+ return 'barChartFormat';
194
+ }
195
+ if (isColumnChart(type)) {
196
+ return 'columnChartFormat';
197
+ }
198
+ if (isPieChart(type)) {
199
+ return 'pieChartFormat';
200
+ }
201
+ if (isBubbleChart(type)) {
202
+ return 'bubbleFormat';
203
+ }
204
+ if (isDonutChart(type)) {
205
+ return 'pieChartFormat';
206
+ }
207
+ return isChartDataJSON(type) ? 'jsonFormat' : 'arrayFormat';
208
+ };
209
+
210
+ // Sample data to populate when no data is bound
211
+ export const getSampleData = widgetContext => constructSampleData(getDataType(widgetContext), _.split(widgetContext.yaxisdatakey, ',').length, widgetContext.shape);
212
+ function getDataType(widgetContext) {
213
+ throw new Error("Function not implemented.");
214
+ }
215
+ //# sourceMappingURL=staticdata.js.map