@wavemaker/app-rn-runtime 11.10.5-rc.6100 → 11.11.0-rc.6106

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 (57) hide show
  1. package/components/basic/animatedview.component.js +3 -2
  2. package/components/basic/animatedview.component.js.map +1 -1
  3. package/components/basic/audio/audio.component.js.map +1 -1
  4. package/components/basic/picture/picture.component.js +20 -13
  5. package/components/basic/picture/picture.component.js.map +1 -1
  6. package/components/basic/picture/picture.styles.js.map +1 -1
  7. package/components/basic/skeleton/skeleton.component.js.map +1 -1
  8. package/components/basic/skeleton/skeleton.styles.js.map +1 -1
  9. package/components/chart/bar-chart/bar-chart.component.js +4 -2
  10. package/components/chart/bar-chart/bar-chart.component.js.map +1 -1
  11. package/components/chart/bar-chart/bar-chart.props.js +1 -0
  12. package/components/chart/bar-chart/bar-chart.props.js.map +1 -1
  13. package/components/chart/basechart.component.js +6 -2
  14. package/components/chart/basechart.component.js.map +1 -1
  15. package/components/chart/basechart.props.js +2 -0
  16. package/components/chart/basechart.props.js.map +1 -1
  17. package/components/container/container.component.js +10 -2
  18. package/components/container/container.component.js.map +1 -1
  19. package/components/container/container.props.js +1 -0
  20. package/components/container/container.props.js.map +1 -1
  21. package/components/container/container.styles.js +3 -0
  22. package/components/container/container.styles.js.map +1 -1
  23. package/components/data/list/list.component.js +42 -13
  24. package/components/data/list/list.component.js.map +1 -1
  25. package/components/data/list/list.props.js +3 -0
  26. package/components/data/list/list.props.js.map +1 -1
  27. package/components/input/calendar/views/month-view.js.map +1 -1
  28. package/components/input/epoch/datetime/datetime.styles.js.map +1 -1
  29. package/components/navigation/appnavbar/appnavbar.component.js +67 -37
  30. package/components/navigation/appnavbar/appnavbar.component.js.map +1 -1
  31. package/components/navigation/appnavbar/appnavbar.props.js +1 -0
  32. package/components/navigation/appnavbar/appnavbar.props.js.map +1 -1
  33. package/components/navigation/appnavbar/appnavbar.styles.js.map +1 -1
  34. package/components/page/page-content/page-content.component.js +1 -1
  35. package/components/page/page-content/page-content.component.js.map +1 -1
  36. package/components/page/page.component.js +46 -4
  37. package/components/page/page.component.js.map +1 -1
  38. package/components/page/page.props.js +11 -1
  39. package/components/page/page.props.js.map +1 -1
  40. package/components/page/tabbar/tabbar.component.js +135 -40
  41. package/components/page/tabbar/tabbar.component.js.map +1 -1
  42. package/components/page/tabbar/tabbar.props.js +1 -0
  43. package/components/page/tabbar/tabbar.props.js.map +1 -1
  44. package/core/base.component.js +29 -5
  45. package/core/base.component.js.map +1 -1
  46. package/core/components/floatinglabel.component.js.map +1 -1
  47. package/core/components/textinput.component.js +18 -2
  48. package/core/components/textinput.component.js.map +1 -1
  49. package/core/fixed-view.component.js +5 -3
  50. package/core/fixed-view.component.js.map +1 -1
  51. package/core/sticky-container.component.js +168 -0
  52. package/core/sticky-container.component.js.map +1 -0
  53. package/npm-shrinkwrap.json +101 -50
  54. package/package-lock.json +101 -50
  55. package/package.json +6 -3
  56. package/runtime/App.js +14 -3
  57. package/runtime/App.js.map +1 -1
@@ -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","WmLottie","BaseChartComponentState","constructor","args","_defineProperty","undefined","screenWidth","width","shapes","SI_SYMBOL","BaseChartComponent","props","defaultClass","defaultProps","defaultState","e","viewWidth","nativeEvent","layout","viewHeight","height","handleLayout","state","chartWidth","updateState","Number","totalHeight","viewRef","createRef","theme","applyTheme","subscribe","event","isTooltipOpen","componentDidMount","abbreviateNumber","number","tier","Math","log10","abs","suffix","scale","pow","scaled","toFixed","getLegendView","colorScale","showlegend","top","parseInt","styles","root","orientation","createElement","name","gutter","data","legendData","style","border","stroke","borderPadding","left","y","getYScaleMinValue","value","_min","floor","setYAxisFormat","yVal","ynumberformat","matchFixed","match","matchExponential","toExponential","toLocaleString","getXaxis","minIndex","maxIndex","xaxisDatakeyArr","length","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","setTooltipPartialLayout","tooltipLayout","tooltipoffsetx","tooltipoffsety","renderPointer","transform","rotate","bottom","tooltipPointer","borderBottomWidth","getTooltip","yAxisData","tooltipYaxis","renderitempartial","onLayout","bind","position","tooltipYPosition","tooltipXPosition","zIndex","selectedItem","index","tooltipContainer","fontSize","fontWeight","tooltipXText","tooltipXaxis","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","parseFloat","bubblesize","invokeEventCallback","proxy","setTimeout","endAngle","updateData","renderLoadingIcon","id","getTestId","loadingIcon","iconclass","loadingicon","caption","loadingdatamsg","labeltype","setTotal","ydomain","xdomain","loading","total","onPropertyChange","$new","$old","units","xLabel","yLabel","renderSkeleton","skeletonanimationresource","_this$styles","_this$styles2","_this$styles3","content","skeleton","source","loop","autoplay","speed","skeletonanimationspeed","getDataType","widgetContext","Error"],"sources":["basechart.component.tsx"],"sourcesContent":["import React from \"react\";\nimport { Dimensions, View, Text, LayoutChangeEvent} 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\";\nimport WmLottie from \"../basic/lottie/lottie.component\";\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 = 80;\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 viewRef: React.RefObject<View>;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n this.viewRef = React.createRef();\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 \n this.handleLayout(e)\n \n if (this?.state && viewWidth !== this.state.chartWidth) {\n this.updateState({\n chartWidth: Number(viewWidth),\n totalHeight: Number(viewHeight)\n } as any)\n }\n }\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 setYAxisFormat(yVal: any, ynumberformat: string){\n const matchFixed = ynumberformat.match(/\\.([0-9])f/);\n const matchExponential = ynumberformat.match(/\\.([0-9])g/);\n if (matchFixed) {\n return yVal.toFixed(parseInt(matchFixed[1], 10));\n } else if (matchExponential) {\n return yVal.toExponential(parseInt(matchExponential[1], 10));\n }\n switch (ynumberformat) {\n case '%':\n return (yVal * 100).toFixed(0) + '%';\n case 'Billion':\n return (yVal / 1e9).toFixed(1) + 'B';\n case 'Million':\n return (yVal / 1e6).toFixed(1) + 'M';\n case 'Thousand':\n return (yVal / 1e3).toFixed(1) + 'K';\n case ',r':\n return yVal.toLocaleString();\n }\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: number, i: number, ticks: any) => {\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 const ynumberformat = props.ynumberformat;\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: number, i: number, ticks: any) => {\n if (getTickValueLabel) {\n return getTickValueLabel(d, i, (ticks || []).length);\n }\n if (ynumberformat) {\n return this.setYAxisFormat(d, ynumberformat);\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 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 const ynumberformat = this.state.props.ynumberformat;\n let yAxisData = ynumberformat ? this.setYAxisFormat(this.state.tooltipYaxis, ynumberformat) : this.state.tooltipYaxis;\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 <Text style={[{ fontSize: 16, fontWeight: 'bold' },this.styles.tooltipXText]}>{this.state.tooltipXaxis}</Text>\n <Text style={this.styles.tooltipXText}>{yAxisData}</Text>\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 id={this.getTestId('loadericon')} styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\n caption={props.loadingdatamsg}></WmIcon>);\n }\n\n updateData(datasets: any, yPts: any, xaxisDatakeyArr: Array<any>) {\n const props = this.state.props;\n this.updateState({\n data: datasets as any,\n yAxis: yPts,\n xaxisDatakeyArr: xaxisDatakeyArr\n } as S, () => {\n this.prepareLegendData();\n if (!props.labeltype || props.labeltype === 'percent') {\n this.setTotal(this.state.data[0]);\n }\n if (this.isAxisDomainSupported(props.type) && (props.ydomain || props.xdomain)) {\n this.setDomainValues();\n }\n this.updateState({\n loading: false\n } as S);\n });\n }\n\n setTotal(data: Array<{x: any, y: number}>) {\n let total = 0;\n data.forEach((d: {x: any, y: any}) => {\n total += d.y as number;\n });\n this.updateState({\n total: total\n } as S);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n let units = '';\n switch(name) {\n case 'customcolors':\n if (isEmpty($new)) {\n return;\n }\n if (typeof $new === 'string') {\n $new = $new.split(',');\n }\n this.updateState({\n colors: $new\n } as S);\n break;\n case 'theme':\n this.applyTheme(props);\n break;\n case 'dataset':\n if (!isArray($new)) {\n if (isObject($new) && !isEmpty($new)) {\n $new = [$new];\n } else {\n $new = [];\n }\n }\n $new && this.prepareDataItems($new);\n break;\n case 'xaxislabel':\n if (props.xunits) {\n units = ' (' + props.xunits + ')';\n }\n this.updateState({\n xLabel: $new + units\n } as S);\n break;\n case 'yaxislabel':\n if (props.yunits) {\n units = ' (' + props.yunits + ')';\n }\n this.updateState({\n yLabel: $new + units\n } as S);\n break;\n }\n }\n\n public renderSkeleton(props: T): React.ReactNode {\n if(props.skeletonanimationresource) {\n return <View style={[{width: '100%'}, this.styles?.root]}>\n <WmLottie styles={{ content: {...this.styles?.root, ...this.styles?.skeleton?.root} }} source={props.skeletonanimationresource} loop={true} autoplay={true} speed={this.props.skeletonanimationspeed}/>\n </View>\n }\n return null;\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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","ignoreList":[]}
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","WmLottie","BaseChartComponentState","constructor","args","_defineProperty","undefined","screenWidth","width","shapes","SI_SYMBOL","BaseChartComponent","props","defaultClass","defaultProps","defaultState","e","viewWidth","nativeEvent","layout","viewHeight","height","handleLayout","state","chartWidth","updateState","Number","totalHeight","viewRef","createRef","theme","applyTheme","subscribe","event","isTooltipOpen","componentDidMount","abbreviateNumber","number","tier","Math","log10","abs","suffix","scale","pow","scaled","toFixed","getLegendView","colorScale","showlegend","top","parseInt","styles","root","orientation","createElement","name","gutter","data","legendData","style","border","stroke","borderPadding","left","y","getYScaleMinValue","value","_min","floor","setYAxisFormat","yVal","ynumberformat","matchFixed","match","matchExponential","toExponential","toLocaleString","getXaxis","minIndex","maxIndex","xaxisDatakeyArr","length","getTickValueLabel","xtickexpr","yaxislabeldistance","crossAxis","label","xaxislabel","xaxisdatakey","xunits","axisLabel","mergeStyle","yAxisLabel","grid","hidegridxaxis","xGrid","axis","showxaxis","xAxis","ticks","xTicks","tickLabels","showxaxislabels","fill","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","showyaxislabels","yTickLabels","x","offsetxaxis","dependentAxis","setTooltipTemplate","partialName","template","setTooltipPartialLayout","tooltipLayout","tooltipoffsetx","tooltipoffsety","renderPointer","transform","rotate","bottom","tooltipPointer","borderBottomWidth","getTooltip","yAxisData","tooltipYaxis","renderitempartial","onLayout","bind","position","tooltipYPosition","tooltipXPosition","zIndex","selectedItem","index","tooltipContainer","fontSize","fontWeight","tooltipXText","tooltipXaxis","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","parseFloat","bubblesize","invokeEventCallback","proxy","setTimeout","endAngle","updateData","renderLoadingIcon","id","getTestId","loadingIcon","iconclass","loadingicon","caption","loadingdatamsg","labeltype","setTotal","ydomain","xdomain","loading","total","onPropertyChange","$new","$old","units","xLabel","yLabel","renderSkeleton","skeletonanimationresource","_this$styles","_this$styles2","_this$styles3","content","skeleton","source","loop","autoplay","speed","skeletonanimationspeed","getDataType","widgetContext","Error"],"sources":["basechart.component.tsx"],"sourcesContent":["import React from \"react\";\nimport { Dimensions, View, Text, LayoutChangeEvent} 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\";\nimport WmLottie from \"../basic/lottie/lottie.component\";\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 = 80;\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 viewRef: React.RefObject<View>;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n this.viewRef = React.createRef();\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 \n this.handleLayout(e)\n \n if (this?.state && viewWidth !== this.state.chartWidth) {\n this.updateState({\n chartWidth: Number(viewWidth),\n totalHeight: Number(viewHeight)\n } as any)\n }\n }\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 setYAxisFormat(yVal: any, ynumberformat: string){\n const matchFixed = ynumberformat.match(/\\.([0-9])f/);\n const matchExponential = ynumberformat.match(/\\.([0-9])g/);\n if (matchFixed) {\n return yVal.toFixed(parseInt(matchFixed[1], 10));\n } else if (matchExponential) {\n return yVal.toExponential(parseInt(matchExponential[1], 10));\n }\n switch (ynumberformat) {\n case '%':\n return (yVal * 100).toFixed(0) + '%';\n case 'Billion':\n return (yVal / 1e9).toFixed(1) + 'B';\n case 'Million':\n return (yVal / 1e6).toFixed(1) + 'M';\n case 'Thousand':\n return (yVal / 1e3).toFixed(1) + 'K';\n case ',r':\n return yVal.toLocaleString();\n }\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: props.showxaxislabels === false ? {fill: 'none'} : 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: number, i: number, ticks: any) => {\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 const ynumberformat = props.ynumberformat;\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: props.showyaxislabels === false ? {fill: 'none'} : 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: number, i: number, ticks: any) => {\n if (getTickValueLabel) {\n return getTickValueLabel(d, i, (ticks || []).length);\n }\n if (ynumberformat) {\n return this.setYAxisFormat(d, ynumberformat);\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 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 const ynumberformat = this.state.props.ynumberformat;\n let yAxisData = ynumberformat ? this.setYAxisFormat(this.state.tooltipYaxis, ynumberformat) : this.state.tooltipYaxis;\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 <Text style={[{ fontSize: 16, fontWeight: 'bold' },this.styles.tooltipXText]}>{this.state.tooltipXaxis}</Text>\n <Text style={this.styles.tooltipXText}>{yAxisData}</Text>\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 id={this.getTestId('loadericon')} styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\n caption={props.loadingdatamsg}></WmIcon>);\n }\n\n updateData(datasets: any, yPts: any, xaxisDatakeyArr: Array<any>) {\n const props = this.state.props;\n this.updateState({\n data: datasets as any,\n yAxis: yPts,\n xaxisDatakeyArr: xaxisDatakeyArr\n } as S, () => {\n this.prepareLegendData();\n if (!props.labeltype || props.labeltype === 'percent') {\n this.setTotal(this.state.data[0]);\n }\n if (this.isAxisDomainSupported(props.type) && (props.ydomain || props.xdomain)) {\n this.setDomainValues();\n }\n this.updateState({\n loading: false\n } as S);\n });\n }\n\n setTotal(data: Array<{x: any, y: number}>) {\n let total = 0;\n data.forEach((d: {x: any, y: any}) => {\n total += d.y as number;\n });\n this.updateState({\n total: total\n } as S);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n let units = '';\n switch(name) {\n case 'customcolors':\n if (isEmpty($new)) {\n return;\n }\n if (typeof $new === 'string') {\n $new = $new.split(',');\n }\n this.updateState({\n colors: $new\n } as S);\n break;\n case 'theme':\n this.applyTheme(props);\n break;\n case 'dataset':\n if (!isArray($new)) {\n if (isObject($new) && !isEmpty($new)) {\n $new = [$new];\n } else {\n $new = [];\n }\n }\n $new && this.prepareDataItems($new);\n break;\n case 'xaxislabel':\n if (props.xunits) {\n units = ' (' + props.xunits + ')';\n }\n this.updateState({\n xLabel: $new + units\n } as S);\n break;\n case 'yaxislabel':\n if (props.yunits) {\n units = ' (' + props.yunits + ')';\n }\n this.updateState({\n yLabel: $new + units\n } as S);\n break;\n }\n }\n\n public renderSkeleton(props: T): React.ReactNode {\n if(props.skeletonanimationresource) {\n return <View style={[{width: '100%'}, this.styles?.root]}>\n <WmLottie styles={{ content: {...this.styles?.root, ...this.styles?.skeleton?.root} }} source={props.skeletonanimationresource} loop={true} autoplay={true} speed={this.props.skeletonanimationspeed}/>\n </View>\n }\n return null;\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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","ignoreList":[]}
@@ -56,6 +56,8 @@ export default class BaseChartComponentProps extends SkeletonAnimationProps {
56
56
  _defineProperty(this, "accessibilityrole", void 0);
57
57
  _defineProperty(this, "renderitempartial", void 0);
58
58
  _defineProperty(this, "ynumberformat", '');
59
+ _defineProperty(this, "showxaxislabels", true);
60
+ _defineProperty(this, "showyaxislabels", true);
59
61
  }
60
62
  }
61
63
  //# sourceMappingURL=basechart.props.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["SkeletonAnimationProps","BaseChartComponentProps","constructor","args","_defineProperty","undefined"],"sources":["basechart.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { SkeletonAnimationProps } from '@wavemaker/app-rn-runtime/runtime/base-fragment.component';\nimport { AccessibilityRole } from 'react-native';\n\nexport default class BaseChartComponentProps extends SkeletonAnimationProps {\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 = undefined;\n xaxislabeldistance?: number = undefined;\n offsetxaxis?: number = undefined;\n offsetyaxis?: number = undefined;\n customcolors: string | Array<string> = '';\n legendheight: number = 0;\n labellegendheight: number = 0;\n labeltype: 'percent' | 'value' | 'key-value' | 'key' = 'percent';\n bubblesize: string= '';\n shape: string = '';\n loadingicon='fa fa-circle-o-notch fa-pulse';\n loadingdatamsg = 'Loading...';\n nodatamessage = 'No data found';\n offsetbottom: number = 50;\n offsettop: number = 70;\n offsetleft: number = 65;\n offsetright: number = 25;\n showlegend: string = 'top';\n showlabels: 'inside' | 'outside' | 'hide' = 'outside';\n tooltips: boolean = false;\n interpolation: string = 'linear';\n highlightpoints: boolean = false;\n showvalues: boolean = false;\n showyaxis: boolean = true;\n showxaxis: boolean = true;\n ydomain: string = 'Min';\n xdomain: string = 'Min';\n labelangle: number = 0;\n xtickexpr?: (item: any, index: number, length: number) => any;\n ytickexpr?: (item: any, index: number, length: number) => any;\n hidegridxaxis: boolean = false;\n hidegridyaxis: boolean = false;\n autoadjustlabels: boolean = false;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole;\n renderitempartial?: (item: any, index: number, partialName: string)=> React.ReactNode;\n ynumberformat?: string = '';\n}\n"],"mappings":";;;AACA,SAASA,sBAAsB,QAAQ,2DAA2D;AAGlG,eAAe,MAAMC,uBAAuB,SAASD,sBAAsB,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,uBACnD,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,6BACWC,SAAS;IAAAD,eAAA,6BACTC,SAAS;IAAAD,eAAA,sBAChBC,SAAS;IAAAD,eAAA,sBACTC,SAAS;IAAAD,eAAA,uBACO,EAAE;IAAAA,eAAA,uBAClB,CAAC;IAAAA,eAAA,4BACI,CAAC;IAAAA,eAAA,oBAC0B,SAAS;IAAAA,eAAA,qBAC5C,EAAE;IAAAA,eAAA,gBACN,EAAE;IAAAA,eAAA,sBACN,+BAA+B;IAAAA,eAAA,yBAC1B,YAAY;IAAAA,eAAA,wBACb,eAAe;IAAAA,eAAA,uBACR,EAAE;IAAAA,eAAA,oBACL,EAAE;IAAAA,eAAA,qBACD,EAAE;IAAAA,eAAA,sBACD,EAAE;IAAAA,eAAA,qBACH,KAAK;IAAAA,eAAA,qBACkB,SAAS;IAAAA,eAAA,mBACjC,KAAK;IAAAA,eAAA,wBACD,QAAQ;IAAAA,eAAA,0BACL,KAAK;IAAAA,eAAA,qBACV,KAAK;IAAAA,eAAA,oBACN,IAAI;IAAAA,eAAA,oBACJ,IAAI;IAAAA,eAAA,kBACP,KAAK;IAAAA,eAAA,kBACL,KAAK;IAAAA,eAAA,qBACF,CAAC;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,wBAGG,KAAK;IAAAA,eAAA,wBACL,KAAK;IAAAA,eAAA,2BACF,KAAK;IAAAA,eAAA,6BACHC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA;IAAAA,eAAA;IAAAA,eAAA,wBAGA,EAAE;EAAA;AAC7B","ignoreList":[]}
1
+ {"version":3,"names":["SkeletonAnimationProps","BaseChartComponentProps","constructor","args","_defineProperty","undefined"],"sources":["basechart.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { SkeletonAnimationProps } from '@wavemaker/app-rn-runtime/runtime/base-fragment.component';\nimport { AccessibilityRole } from 'react-native';\n\nexport default class BaseChartComponentProps extends SkeletonAnimationProps {\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 = undefined;\n xaxislabeldistance?: number = undefined;\n offsetxaxis?: number = undefined;\n offsetyaxis?: number = undefined;\n customcolors: string | Array<string> = '';\n legendheight: number = 0;\n labellegendheight: number = 0;\n labeltype: 'percent' | 'value' | 'key-value' | 'key' = 'percent';\n bubblesize: string= '';\n shape: string = '';\n loadingicon='fa fa-circle-o-notch fa-pulse';\n loadingdatamsg = 'Loading...';\n nodatamessage = 'No data found';\n offsetbottom: number = 50;\n offsettop: number = 70;\n offsetleft: number = 65;\n offsetright: number = 25;\n showlegend: string = 'top';\n showlabels: 'inside' | 'outside' | 'hide' = 'outside';\n tooltips: boolean = false;\n interpolation: string = 'linear';\n highlightpoints: boolean = false;\n showvalues: boolean = false;\n showyaxis: boolean = true;\n showxaxis: boolean = true;\n ydomain: string = 'Min';\n xdomain: string = 'Min';\n labelangle: number = 0;\n xtickexpr?: (item: any, index: number, length: number) => any;\n ytickexpr?: (item: any, index: number, length: number) => any;\n hidegridxaxis: boolean = false;\n hidegridyaxis: boolean = false;\n autoadjustlabels: boolean = false;\n accessibilitylabel?: string = undefined;\n hint?: string = undefined;\n accessibilityrole?: AccessibilityRole;\n renderitempartial?: (item: any, index: number, partialName: string)=> React.ReactNode;\n ynumberformat?: string = '';\n showxaxislabels: boolean = true;\n showyaxislabels: boolean = true;\n}\n"],"mappings":";;;AACA,SAASA,sBAAsB,QAAQ,2DAA2D;AAGlG,eAAe,MAAMC,uBAAuB,SAASD,sBAAsB,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,uBACnD,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,6BACWC,SAAS;IAAAD,eAAA,6BACTC,SAAS;IAAAD,eAAA,sBAChBC,SAAS;IAAAD,eAAA,sBACTC,SAAS;IAAAD,eAAA,uBACO,EAAE;IAAAA,eAAA,uBAClB,CAAC;IAAAA,eAAA,4BACI,CAAC;IAAAA,eAAA,oBAC0B,SAAS;IAAAA,eAAA,qBAC5C,EAAE;IAAAA,eAAA,gBACN,EAAE;IAAAA,eAAA,sBACN,+BAA+B;IAAAA,eAAA,yBAC1B,YAAY;IAAAA,eAAA,wBACb,eAAe;IAAAA,eAAA,uBACR,EAAE;IAAAA,eAAA,oBACL,EAAE;IAAAA,eAAA,qBACD,EAAE;IAAAA,eAAA,sBACD,EAAE;IAAAA,eAAA,qBACH,KAAK;IAAAA,eAAA,qBACkB,SAAS;IAAAA,eAAA,mBACjC,KAAK;IAAAA,eAAA,wBACD,QAAQ;IAAAA,eAAA,0BACL,KAAK;IAAAA,eAAA,qBACV,KAAK;IAAAA,eAAA,oBACN,IAAI;IAAAA,eAAA,oBACJ,IAAI;IAAAA,eAAA,kBACP,KAAK;IAAAA,eAAA,kBACL,KAAK;IAAAA,eAAA,qBACF,CAAC;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,wBAGG,KAAK;IAAAA,eAAA,wBACL,KAAK;IAAAA,eAAA,2BACF,KAAK;IAAAA,eAAA,6BACHC,SAAS;IAAAD,eAAA,eACvBC,SAAS;IAAAD,eAAA;IAAAA,eAAA;IAAAA,eAAA,wBAGA,EAAE;IAAAA,eAAA,0BACA,IAAI;IAAAA,eAAA,0BACJ,IAAI;EAAA;AACjC","ignoreList":[]}
@@ -11,6 +11,7 @@ import { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animate
11
11
  import { PartialHost, PartialHostState } from './partial-host.component';
12
12
  import { createSkeleton } from '../basic/skeleton/skeleton.component';
13
13
  import { ScrollView } from 'react-native-gesture-handler';
14
+ import { StickyView } from '@wavemaker/app-rn-runtime/core/sticky-container.component';
14
15
  export class WmContainerState extends PartialHostState {
15
16
  constructor(...args) {
16
17
  super(...args);
@@ -60,16 +61,23 @@ export default class WmContainer extends PartialHost {
60
61
  ...this.styles.root,
61
62
  ...this.styles.skeleton.root
62
63
  } : this.styles.root;
64
+ if (props.issticky) this.isSticky = true;
63
65
  return /*#__PURE__*/React.createElement(Animatedview, {
64
66
  entryanimation: props.animation,
65
67
  delay: props.animationdelay,
66
68
  style: styles,
67
- onLayout: event => this.handleLayout(event)
69
+ onLayout: (event, ref) => this.handleLayout(event, ref)
68
70
  }, this.getBackground(), /*#__PURE__*/React.createElement(Tappable, _extends({}, this.getTestPropsForAction(), {
69
71
  target: this,
70
72
  styles: dimensions,
71
73
  disableTouchEffect: this.state.props.disabletoucheffect
72
- }), !props.scrollable ? /*#__PURE__*/React.createElement(View, {
74
+ }), props.issticky ? /*#__PURE__*/React.createElement(StickyView, {
75
+ component: this,
76
+ style: this.styles.sticky,
77
+ theme: this.theme
78
+ }, /*#__PURE__*/React.createElement(View, {
79
+ style: styles
80
+ }, this.renderContent(props))) : !props.scrollable ? /*#__PURE__*/React.createElement(View, {
73
81
  style: [dimensions, this.styles.content]
74
82
  }, this.renderContent(props)) : /*#__PURE__*/React.createElement(ScrollView, {
75
83
  style: [dimensions, this.styles.content],
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","WmContainerProps","DEFAULT_CLASS","Tappable","Animatedview","PartialHost","PartialHostState","createSkeleton","ScrollView","WmContainerState","constructor","args","_defineProperty","WmContainer","props","getBackground","_showSkeleton","_background","renderSkeleton","showskeletonchildren","_this$props","dimensions","width","styles","root","undefined","height","skeletonStyles","skeleton","text","theme","createElement","style","opacity","_extends","getTestPropsForAction","target","disableTouchEffect","state","disabletoucheffect","content","renderContent","renderWidget","entryanimation","animation","delay","animationdelay","onLayout","event","handleLayout","scrollable","onScroll","notify","scrollEventThrottle"],"sources":["container.component.tsx"],"sourcesContent":["import React from 'react';\nimport { ColorValue, LayoutChangeEvent, View, ViewStyle } from 'react-native';\n\nimport WmContainerProps from './container.props';\nimport { DEFAULT_CLASS, WmContainerStyles } from './container.styles';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport { PartialHost, PartialHostState } from './partial-host.component';\nimport { createSkeleton } from '../basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '../basic/skeleton/skeleton.styles';\nimport { ScrollView } from 'react-native-gesture-handler';\n\nexport class WmContainerState extends PartialHostState<WmContainerProps> {\n isPartialLoaded = false;\n}\n\nexport default class WmContainer extends PartialHost<WmContainerProps, WmContainerState, WmContainerStyles> {\n constructor(props: WmContainerProps) {\n super(props, DEFAULT_CLASS, new WmContainerProps(), new WmContainerState());\n }\n\n getBackground(): React.JSX.Element | null {\n return this._showSkeleton ? null : this._background\n } \n \n public renderSkeleton(props: WmContainerProps): React.ReactNode {\n if(!props.showskeletonchildren) {\n const dimensions = {\n width: this.styles.root.width ? '100%' : undefined,\n height: this.styles.root.height ? '100%' : undefined\n }; \n const skeletonStyles: WmSkeletonStyles = this.props?.styles?.skeleton || { root: {}, text: {} } as WmSkeletonStyles\n return createSkeleton(this.theme, skeletonStyles, {\n ...this.styles.root\n }, (<View style={[this.styles.root, { opacity: 0 }]}>\n <Tappable {...this.getTestPropsForAction()} target={this} styles={dimensions} disableTouchEffect={this.state.props.disabletoucheffect}>\n <View style={[dimensions as ViewStyle, this.styles.content]}>{this.renderContent(props)}</View>\n </Tappable>\n\n </View>))\n }\n return null;\n }\n\n\n renderWidget(props: WmContainerProps) {\n const dimensions = {\n width: this.styles.root.width ? '100%' : undefined,\n height: this.styles.root.height ? '100%' : undefined\n };\n\n const styles = this._showSkeleton ? {\n ...this.styles.root,\n ...this.styles.skeleton.root\n } : this.styles.root\n return (\n <Animatedview \n entryanimation={props.animation} \n delay={props.animationdelay} \n style={styles}\n onLayout={(event: LayoutChangeEvent) => this.handleLayout(event)}\n >\n {this.getBackground()}\n <Tappable {...this.getTestPropsForAction()} target={this} styles={dimensions} disableTouchEffect={this.state.props.disabletoucheffect}>\n {!props.scrollable ? <View style={[dimensions as ViewStyle, this.styles.content]}>{this.renderContent(props)}</View> : \n <ScrollView style={[dimensions as ViewStyle, this.styles.content]}\n onScroll={(event) => {this.notify('scroll', [event])}}\n scrollEventThrottle={48}>\n {this.renderContent(props)}\n </ScrollView>}\n </Tappable>\n </Animatedview>\n );\n }\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAwCC,IAAI,QAAmB,cAAc;AAE7E,OAAOC,gBAAgB,MAAM,mBAAmB;AAChD,SAASC,aAAa,QAA2B,oBAAoB;AACrE,SAASC,QAAQ,QAAQ,mDAAmD;AAC5E,SAASC,YAAY,QAAQ,mEAAmE;AAChG,SAASC,WAAW,EAAEC,gBAAgB,QAAQ,0BAA0B;AACxE,SAASC,cAAc,QAAQ,sCAAsC;AAErE,SAASC,UAAU,QAAQ,8BAA8B;AAEzD,OAAO,MAAMC,gBAAgB,SAASH,gBAAgB,CAAmB;EAAAI,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,0BACrD,KAAK;EAAA;AACzB;AAEA,eAAe,MAAMC,WAAW,SAASR,WAAW,CAAwD;EAC1GK,WAAWA,CAACI,KAAuB,EAAE;IACnC,KAAK,CAACA,KAAK,EAAEZ,aAAa,EAAE,IAAID,gBAAgB,CAAC,CAAC,EAAE,IAAIQ,gBAAgB,CAAC,CAAC,CAAC;EAC7E;EAEAM,aAAaA,CAAA,EAA6B;IACxC,OAAO,IAAI,CAACC,aAAa,GAAG,IAAI,GAAG,IAAI,CAACC,WAAW;EACrD;EAEOC,cAAcA,CAACJ,KAAuB,EAAmB;IAC5D,IAAG,CAACA,KAAK,CAACK,oBAAoB,EAAE;MAAA,IAAAC,WAAA;MAC9B,MAAMC,UAAU,GAAG;QACjBC,KAAK,EAAE,IAAI,CAACC,MAAM,CAACC,IAAI,CAACF,KAAK,GAAG,MAAM,GAAGG,SAAS;QAClDC,MAAM,EAAE,IAAI,CAACH,MAAM,CAACC,IAAI,CAACE,MAAM,GAAG,MAAM,GAAGD;MAC7C,CAAC;MACD,MAAME,cAAgC,GAAG,EAAAP,WAAA,OAAI,CAACN,KAAK,cAAAM,WAAA,gBAAAA,WAAA,GAAVA,WAAA,CAAYG,MAAM,cAAAH,WAAA,uBAAlBA,WAAA,CAAoBQ,QAAQ,KAAI;QAAEJ,IAAI,EAAE,CAAC,CAAC;QAAEK,IAAI,EAAE,CAAC;MAAG,CAAqB;MACpH,OAAOtB,cAAc,CAAC,IAAI,CAACuB,KAAK,EAAEH,cAAc,EAAE;QAChD,GAAG,IAAI,CAACJ,MAAM,CAACC;MACjB,CAAC,eAAGzB,KAAA,CAAAgC,aAAA,CAAC/B,IAAI;QAACgC,KAAK,EAAE,CAAC,IAAI,CAACT,MAAM,CAACC,IAAI,EAAE;UAAES,OAAO,EAAE;QAAE,CAAC;MAAE,gBAC1ClC,KAAA,CAAAgC,aAAA,CAAC5B,QAAQ,EAAA+B,QAAA,KAAK,IAAI,CAACC,qBAAqB,CAAC,CAAC;QAAEC,MAAM,EAAE,IAAK;QAACb,MAAM,EAAEF,UAAW;QAACgB,kBAAkB,EAAE,IAAI,CAACC,KAAK,CAACxB,KAAK,CAACyB;MAAmB,iBAC5IxC,KAAA,CAAAgC,aAAA,CAAC/B,IAAI;QAACgC,KAAK,EAAE,CAACX,UAAU,EAAgB,IAAI,CAACE,MAAM,CAACiB,OAAO;MAAE,GAAE,IAAI,CAACC,aAAa,CAAC3B,KAAK,CAAQ,CACzF,CAEJ,CAAE,CAAC;IACX;IACA,OAAO,IAAI;EACb;EAGF4B,YAAYA,CAAC5B,KAAuB,EAAE;IACpC,MAAMO,UAAU,GAAG;MACjBC,KAAK,EAAE,IAAI,CAACC,MAAM,CAACC,IAAI,CAACF,KAAK,GAAG,MAAM,GAAGG,SAAS;MAClDC,MAAM,EAAE,IAAI,CAACH,MAAM,CAACC,IAAI,CAACE,MAAM,GAAG,MAAM,GAAGD;IAC7C,CAAC;IAED,MAAMF,MAAM,GAAG,IAAI,CAACP,aAAa,GAAG;MAClC,GAAG,IAAI,CAACO,MAAM,CAACC,IAAI;MACnB,GAAG,IAAI,CAACD,MAAM,CAACK,QAAQ,CAACJ;IAC1B,CAAC,GAAG,IAAI,CAACD,MAAM,CAACC,IAAI;IACpB,oBACEzB,KAAA,CAAAgC,aAAA,CAAC3B,YAAY;MACXuC,cAAc,EAAE7B,KAAK,CAAC8B,SAAU;MAChCC,KAAK,EAAE/B,KAAK,CAACgC,cAAe;MAC5Bd,KAAK,EAAET,MAAO;MACdwB,QAAQ,EAAGC,KAAwB,IAAK,IAAI,CAACC,YAAY,CAACD,KAAK;IAAE,GAEhE,IAAI,CAACjC,aAAa,CAAC,CAAC,eACrBhB,KAAA,CAAAgC,aAAA,CAAC5B,QAAQ,EAAA+B,QAAA,KAAK,IAAI,CAACC,qBAAqB,CAAC,CAAC;MAAEC,MAAM,EAAE,IAAK;MAACb,MAAM,EAAEF,UAAW;MAACgB,kBAAkB,EAAE,IAAI,CAACC,KAAK,CAACxB,KAAK,CAACyB;IAAmB,IACjI,CAACzB,KAAK,CAACoC,UAAU,gBAAGnD,KAAA,CAAAgC,aAAA,CAAC/B,IAAI;MAACgC,KAAK,EAAE,CAACX,UAAU,EAAgB,IAAI,CAACE,MAAM,CAACiB,OAAO;IAAE,GAAE,IAAI,CAACC,aAAa,CAAC3B,KAAK,CAAQ,CAAC,gBACrHf,KAAA,CAAAgC,aAAA,CAACvB,UAAU;MAACwB,KAAK,EAAE,CAACX,UAAU,EAAgB,IAAI,CAACE,MAAM,CAACiB,OAAO,CAAE;MACnEW,QAAQ,EAAGH,KAAK,IAAK;QAAC,IAAI,CAACI,MAAM,CAAC,QAAQ,EAAE,CAACJ,KAAK,CAAC,CAAC;MAAA,CAAE;MACtDK,mBAAmB,EAAE;IAAG,GACvB,IAAI,CAACZ,aAAa,CAAC3B,KAAK,CACf,CACJ,CACE,CAAC;EAEnB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["React","View","WmContainerProps","DEFAULT_CLASS","Tappable","Animatedview","PartialHost","PartialHostState","createSkeleton","ScrollView","StickyView","WmContainerState","constructor","args","_defineProperty","WmContainer","props","getBackground","_showSkeleton","_background","renderSkeleton","showskeletonchildren","_this$props","dimensions","width","styles","root","undefined","height","skeletonStyles","skeleton","text","theme","createElement","style","opacity","_extends","getTestPropsForAction","target","disableTouchEffect","state","disabletoucheffect","content","renderContent","renderWidget","issticky","isSticky","entryanimation","animation","delay","animationdelay","onLayout","event","ref","handleLayout","component","sticky","scrollable","onScroll","notify","scrollEventThrottle"],"sources":["container.component.tsx"],"sourcesContent":["import React from 'react';\nimport { ColorValue, LayoutChangeEvent, View, ViewStyle } from 'react-native';\n\nimport WmContainerProps from './container.props';\nimport { DEFAULT_CLASS, WmContainerStyles } from './container.styles';\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { Animatedview } from '@wavemaker/app-rn-runtime/components/basic/animatedview.component';\nimport { PartialHost, PartialHostState } from './partial-host.component';\nimport { createSkeleton } from '../basic/skeleton/skeleton.component';\nimport { WmSkeletonStyles } from '../basic/skeleton/skeleton.styles';\nimport { ScrollView } from 'react-native-gesture-handler';\nimport { StickyView } from '@wavemaker/app-rn-runtime/core/sticky-container.component';\n\nexport class WmContainerState extends PartialHostState<WmContainerProps> {\n isPartialLoaded = false;\n}\n\nexport default class WmContainer extends PartialHost<WmContainerProps, WmContainerState, WmContainerStyles> {\n constructor(props: WmContainerProps) {\n super(props, DEFAULT_CLASS, new WmContainerProps(), new WmContainerState());\n }\n\n getBackground(): React.JSX.Element | null {\n return this._showSkeleton ? null : this._background\n } \n \n public renderSkeleton(props: WmContainerProps): React.ReactNode {\n if(!props.showskeletonchildren) {\n const dimensions = {\n width: this.styles.root.width ? '100%' : undefined,\n height: this.styles.root.height ? '100%' : undefined\n }; \n const skeletonStyles: WmSkeletonStyles = this.props?.styles?.skeleton || { root: {}, text: {} } as WmSkeletonStyles\n return createSkeleton(this.theme, skeletonStyles, {\n ...this.styles.root\n }, (<View style={[this.styles.root, { opacity: 0 }]}>\n <Tappable {...this.getTestPropsForAction()} target={this} styles={dimensions} disableTouchEffect={this.state.props.disabletoucheffect}>\n <View style={[dimensions as ViewStyle, this.styles.content]}>{this.renderContent(props)}</View>\n </Tappable>\n\n </View>))\n }\n return null;\n }\n\n\n renderWidget(props: WmContainerProps) {\n const dimensions = {\n width: this.styles.root.width ? '100%' : undefined,\n height: this.styles.root.height ? '100%' : undefined\n };\n\n const styles = this._showSkeleton ? {\n ...this.styles.root,\n ...this.styles.skeleton.root\n } : this.styles.root\n if(props.issticky) this.isSticky = true;\n return (\n <Animatedview \n entryanimation={props.animation} \n delay={props.animationdelay} \n style={styles}\n onLayout={(event: LayoutChangeEvent, ref: React.RefObject<View>) => this.handleLayout(event, ref)}\n >\n {this.getBackground()}\n <Tappable {...this.getTestPropsForAction()} target={this} styles={dimensions} disableTouchEffect={this.state.props.disabletoucheffect}>\n { props.issticky ? \n <StickyView\n component={this}\n style={this.styles.sticky}\n theme={this.theme}>\n <View style={styles}>\n {this.renderContent(props)}\n </View>\n </StickyView>\n : !props.scrollable ? \n <View style={[dimensions as ViewStyle, this.styles.content]}>\n {this.renderContent(props)}\n </View>\n :<ScrollView style={[dimensions as ViewStyle, this.styles.content]}\n onScroll={(event) => {this.notify('scroll', [event])}}\n scrollEventThrottle={48}>\n {this.renderContent(props)}\n </ScrollView>\n }\n </Tappable>\n </Animatedview>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -9,6 +9,7 @@ export default class WmContainerProps extends PartialHostProps {
9
9
  _defineProperty(this, "animationdelay", null);
10
10
  _defineProperty(this, "onLoad", void 0);
11
11
  _defineProperty(this, "scrollable", false);
12
+ _defineProperty(this, "issticky", false);
12
13
  }
13
14
  }
14
15
  //# sourceMappingURL=container.props.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["PartialHostProps","WmContainerProps","constructor","args","_defineProperty"],"sources":["container.props.ts"],"sourcesContent":["import { PartialHostProps } from './partial-host.component';\n\nexport default class WmContainerProps extends PartialHostProps {\n animation?: string = null as any;\n animationdelay?: number = null as any;\n onLoad?: Function;\n scrollable?: Boolean = false as any;\n}\n"],"mappings":";;;AAAA,SAASA,gBAAgB,QAAQ,0BAA0B;AAE3D,eAAe,MAAMC,gBAAgB,SAASD,gBAAgB,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBACxC,IAAI;IAAAA,eAAA,yBACC,IAAI;IAAAA,eAAA;IAAAA,eAAA,qBAEP,KAAK;EAAA;AAC9B","ignoreList":[]}
1
+ {"version":3,"names":["PartialHostProps","WmContainerProps","constructor","args","_defineProperty"],"sources":["container.props.ts"],"sourcesContent":["import { PartialHostProps } from './partial-host.component';\n\nexport default class WmContainerProps extends PartialHostProps {\n animation?: string = null as any;\n animationdelay?: number = null as any;\n onLoad?: Function;\n scrollable?: Boolean = false as any;\n issticky?: Boolean = false as boolean;\n}\n"],"mappings":";;;AAAA,SAASA,gBAAgB,QAAQ,0BAA0B;AAE3D,eAAe,MAAMC,gBAAgB,SAASD,gBAAgB,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,oBACxC,IAAI;IAAAA,eAAA,yBACC,IAAI;IAAAA,eAAA;IAAAA,eAAA,qBAEP,KAAK;IAAAA,eAAA,mBACP,KAAK;EAAA;AAC5B","ignoreList":[]}
@@ -14,6 +14,9 @@ BASE_THEME.registerStyle((themeVariables, addStyle) => {
14
14
  shadowColor: 'transparent',
15
15
  backgroundColor: 'transparent'
16
16
  }
17
+ },
18
+ sticky: {
19
+ paddingHorizontal: 8
17
20
  }
18
21
  });
19
22
  addStyle(DEFAULT_CLASS, '', defaultStyles);
@@ -1 +1 @@
1
- {"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","text","content","flexDirection","skeleton","borderColor","shadowColor","backgroundColor","flex","paddingLeft","paddingRight","justifyContent","shadowOffset","width","height","shadowRadius","borderRadius","borderWidth","containerOutlineColor","borderStyle"],"sources":["container.styles.ts"],"sourcesContent":["import BASE_THEME, { AllStyle } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { WmSkeletonStyles } from '../basic/skeleton/skeleton.styles';\n\nexport type WmContainerStyles = BaseStyles & {\n content: AllStyle,\n skeleton: WmSkeletonStyles\n};\n\nexport const DEFAULT_CLASS = 'app-container';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmContainerStyles = defineStyles({\n root: {},\n text: {},\n content: {\n flexDirection: 'column'\n },\n skeleton: {\n root: {\n borderColor: 'transparent',\n shadowColor: 'transparent',\n backgroundColor: 'transparent',\n },\n } as any as WmSkeletonStyles\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n addStyle('media-body', '', {\n root: {\n flex: 1,\n paddingLeft: 8,\n paddingRight: 8,\n justifyContent: 'center'\n }\n } as WmContainerStyles);\n addStyle('media-right', '', {\n root: {\n justifyContent: 'center'\n }\n } as WmContainerStyles);\n addStyle('app-elevated-container', '', {\n root: {\n shadowColor: 'rgba(0, 0, 0, 0.2)',\n shadowOffset: {\n width: 2,\n height: 2\n },\n shadowRadius: 2,\n borderRadius: 8\n }\n } as WmContainerStyles);\n addStyle('app-outlined-container', '', {\n root: {\n borderWidth: 1,\n borderColor: themeVariables.containerOutlineColor,\n borderStyle: 'solid'\n }\n } as WmContainerStyles);\n});"],"mappings":"AAAA,OAAOA,UAAU,MAAqB,wCAAwC;AAC9E,SAAqBC,YAAY,QAAQ,+CAA+C;AAQxF,OAAO,MAAMC,aAAa,GAAG,eAAe;AAC5CF,UAAU,CAACG,aAAa,CAAC,CAACC,cAAc,EAAEC,QAAQ,KAAK;EACnD,MAAMC,aAAgC,GAAGL,YAAY,CAAC;IAClDM,IAAI,EAAE,CAAC,CAAC;IACRC,IAAI,EAAE,CAAC,CAAC;IACRC,OAAO,EAAE;MACLC,aAAa,EAAE;IACnB,CAAC;IACDC,QAAQ,EAAE;MACNJ,IAAI,EAAE;QACFK,WAAW,EAAE,aAAa;QAC1BC,WAAW,EAAE,aAAa;QAC1BC,eAAe,EAAE;MACrB;IACJ;EACJ,CAAC,CAAC;EAEFT,QAAQ,CAACH,aAAa,EAAE,EAAE,EAAEI,aAAa,CAAC;EAC1CD,QAAQ,CAAC,YAAY,EAAE,EAAE,EAAE;IACvBE,IAAI,EAAE;MACFQ,IAAI,EAAE,CAAC;MACPC,WAAW,EAAE,CAAC;MACdC,YAAY,EAAE,CAAC;MACfC,cAAc,EAAE;IACpB;EACJ,CAAsB,CAAC;EACvBb,QAAQ,CAAC,aAAa,EAAE,EAAE,EAAE;IACxBE,IAAI,EAAE;MACFW,cAAc,EAAE;IACpB;EACJ,CAAsB,CAAC;EACvBb,QAAQ,CAAC,wBAAwB,EAAE,EAAE,EAAE;IACnCE,IAAI,EAAE;MACFM,WAAW,EAAE,oBAAoB;MACjCM,YAAY,EAAE;QACVC,KAAK,EAAE,CAAC;QACRC,MAAM,EAAE;MACZ,CAAC;MACDC,YAAY,EAAE,CAAC;MACfC,YAAY,EAAE;IAClB;EACJ,CAAsB,CAAC;EACvBlB,QAAQ,CAAC,wBAAwB,EAAE,EAAE,EAAE;IACnCE,IAAI,EAAE;MACFiB,WAAW,EAAE,CAAC;MACdZ,WAAW,EAAER,cAAc,CAACqB,qBAAqB;MACjDC,WAAW,EAAE;IACjB;EACJ,CAAsB,CAAC;AAC3B,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["BASE_THEME","defineStyles","DEFAULT_CLASS","registerStyle","themeVariables","addStyle","defaultStyles","root","text","content","flexDirection","skeleton","borderColor","shadowColor","backgroundColor","sticky","paddingHorizontal","flex","paddingLeft","paddingRight","justifyContent","shadowOffset","width","height","shadowRadius","borderRadius","borderWidth","containerOutlineColor","borderStyle"],"sources":["container.styles.ts"],"sourcesContent":["import BASE_THEME, { AllStyle } from '@wavemaker/app-rn-runtime/styles/theme';\nimport { BaseStyles, defineStyles } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { WmSkeletonStyles } from '../basic/skeleton/skeleton.styles';\n\nexport type WmContainerStyles = BaseStyles & {\n content: AllStyle,\n skeleton: WmSkeletonStyles,\n sticky: AllStyle\n};\n\nexport const DEFAULT_CLASS = 'app-container';\nBASE_THEME.registerStyle((themeVariables, addStyle) => {\n const defaultStyles: WmContainerStyles = defineStyles({\n root: {},\n text: {},\n content: {\n flexDirection: 'column'\n },\n skeleton: {\n root: {\n borderColor: 'transparent',\n shadowColor: 'transparent',\n backgroundColor: 'transparent',\n },\n } as any as WmSkeletonStyles, \n sticky: {\n paddingHorizontal: 8\n }\n });\n\n addStyle(DEFAULT_CLASS, '', defaultStyles);\n addStyle('media-body', '', {\n root: {\n flex: 1,\n paddingLeft: 8,\n paddingRight: 8,\n justifyContent: 'center'\n }\n } as WmContainerStyles);\n addStyle('media-right', '', {\n root: {\n justifyContent: 'center'\n }\n } as WmContainerStyles);\n addStyle('app-elevated-container', '', {\n root: {\n shadowColor: 'rgba(0, 0, 0, 0.2)',\n shadowOffset: {\n width: 2,\n height: 2\n },\n shadowRadius: 2,\n borderRadius: 8\n }\n } as WmContainerStyles);\n addStyle('app-outlined-container', '', {\n root: {\n borderWidth: 1,\n borderColor: themeVariables.containerOutlineColor,\n borderStyle: 'solid'\n }\n } as WmContainerStyles);\n});"],"mappings":"AAAA,OAAOA,UAAU,MAAqB,wCAAwC;AAC9E,SAAqBC,YAAY,QAAQ,+CAA+C;AASxF,OAAO,MAAMC,aAAa,GAAG,eAAe;AAC5CF,UAAU,CAACG,aAAa,CAAC,CAACC,cAAc,EAAEC,QAAQ,KAAK;EACnD,MAAMC,aAAgC,GAAGL,YAAY,CAAC;IAClDM,IAAI,EAAE,CAAC,CAAC;IACRC,IAAI,EAAE,CAAC,CAAC;IACRC,OAAO,EAAE;MACLC,aAAa,EAAE;IACnB,CAAC;IACDC,QAAQ,EAAE;MACNJ,IAAI,EAAE;QACFK,WAAW,EAAE,aAAa;QAC1BC,WAAW,EAAE,aAAa;QAC1BC,eAAe,EAAE;MACrB;IACJ,CAA4B;IAC5BC,MAAM,EAAE;MACJC,iBAAiB,EAAE;IACvB;EACJ,CAAC,CAAC;EAEFX,QAAQ,CAACH,aAAa,EAAE,EAAE,EAAEI,aAAa,CAAC;EAC1CD,QAAQ,CAAC,YAAY,EAAE,EAAE,EAAE;IACvBE,IAAI,EAAE;MACFU,IAAI,EAAE,CAAC;MACPC,WAAW,EAAE,CAAC;MACdC,YAAY,EAAE,CAAC;MACfC,cAAc,EAAE;IACpB;EACJ,CAAsB,CAAC;EACvBf,QAAQ,CAAC,aAAa,EAAE,EAAE,EAAE;IACxBE,IAAI,EAAE;MACFa,cAAc,EAAE;IACpB;EACJ,CAAsB,CAAC;EACvBf,QAAQ,CAAC,wBAAwB,EAAE,EAAE,EAAE;IACnCE,IAAI,EAAE;MACFM,WAAW,EAAE,oBAAoB;MACjCQ,YAAY,EAAE;QACVC,KAAK,EAAE,CAAC;QACRC,MAAM,EAAE;MACZ,CAAC;MACDC,YAAY,EAAE,CAAC;MACfC,YAAY,EAAE;IAClB;EACJ,CAAsB,CAAC;EACvBpB,QAAQ,CAAC,wBAAwB,EAAE,EAAE,EAAE;IACnCE,IAAI,EAAE;MACFmB,WAAW,EAAE,CAAC;MACdd,WAAW,EAAER,cAAc,CAACuB,qBAAqB;MACjDC,WAAW,EAAE;IACjB;EACJ,CAAsB,CAAC;AAC3B,CAAC,CAAC","ignoreList":[]}
@@ -22,6 +22,7 @@ export class WmListState extends BaseComponentState {
22
22
  _defineProperty(this, "groupedData", []);
23
23
  _defineProperty(this, "currentPage", 1);
24
24
  _defineProperty(this, "maxRecordsToShow", 20);
25
+ _defineProperty(this, "loadingData", false);
25
26
  }
26
27
  }
27
28
  export default class WmList extends BaseComponent {
@@ -31,11 +32,12 @@ export default class WmList extends BaseComponent {
31
32
  _defineProperty(this, "selectedItemWidgets", {});
32
33
  _defineProperty(this, "keyExtractor", new DefaultKeyExtractor());
33
34
  _defineProperty(this, "endThreshold", -1);
34
- _defineProperty(this, "loadingData", false);
35
+ // private loadingData = false;
35
36
  _defineProperty(this, "hasMoreData", true);
36
37
  _defineProperty(this, "leftActionTemplate", void 0);
37
38
  _defineProperty(this, "rightActionTemplate", void 0);
38
39
  _defineProperty(this, "flatListRefs", {});
40
+ _defineProperty(this, "selectedItems", []);
39
41
  _defineProperty(this, "renderLeftActions", () => {
40
42
  return this.leftActionTemplate ? /*#__PURE__*/React.createElement(React.Fragment, null, this.leftActionTemplate.getTemplate()) : null;
41
43
  });
@@ -51,6 +53,12 @@ export default class WmList extends BaseComponent {
51
53
  this.onSelect(dataset[index], index);
52
54
  }
53
55
  });
56
+ _defineProperty(this, "getSelectedItems", () => {
57
+ if (!this.props.multiselect) {
58
+ return [this.selectedItems];
59
+ }
60
+ return this.selectedItems;
61
+ });
54
62
  _defineProperty(this, "scrollToItem", (groupKey, itemIndex) => {
55
63
  const refKey = groupKey || 'main';
56
64
  if (this.flatListRefs[refKey]) {
@@ -61,6 +69,16 @@ export default class WmList extends BaseComponent {
61
69
  });
62
70
  }
63
71
  });
72
+ _defineProperty(this, "getCaption", (isHorizontal, vData) => {
73
+ const {
74
+ nodatamessage,
75
+ ondemandmessage
76
+ } = this.state.props;
77
+ if (!isHorizontal) {
78
+ return this.hasMoreData ? ondemandmessage : nodatamessage;
79
+ }
80
+ return this.hasMoreData ? ondemandmessage : nodatamessage;
81
+ });
64
82
  this.updateState({
65
83
  maxRecordsToShow: this.state.props.pagesize
66
84
  });
@@ -94,6 +112,7 @@ export default class WmList extends BaseComponent {
94
112
  this.state.props.selecteditem && this.invokeEventCallback('onDeselect', [this.proxy, this.state.props.selecteditem]);
95
113
  selectedItem = $item;
96
114
  }
115
+ this.selectedItems = selectedItem;
97
116
  this.selectedItemWidgets = this.itemWidgets[$index];
98
117
  let groupKey = null;
99
118
  if (props.direction === 'horizontal') {
@@ -128,21 +147,27 @@ export default class WmList extends BaseComponent {
128
147
  return navigation === 'Scroll' || navigation === 'On-Demand';
129
148
  }
130
149
  loadData() {
131
- if (this.loadingData) {
150
+ if (this.state.loadingData) {
132
151
  return;
133
152
  }
134
153
  if (isArray(this.state.props.dataset) && this.state.props.dataset.length > this.state.maxRecordsToShow) {
135
- this.loadingData = true;
136
154
  this.updateState({
155
+ loadingData: true,
137
156
  maxRecordsToShow: this.state.maxRecordsToShow + this.state.props.pagesize
138
157
  });
139
158
  setTimeout(() => {
140
- this.loadingData = false;
159
+ // Force a re-render by making a small state update
160
+ this.updateState({
161
+ loadingData: false
162
+ });
141
163
  }, 100);
142
164
  } else if (this.loadDataOnDemand) {
143
165
  const $list = this.proxy;
144
166
  $list.loadingdata = true;
145
- this.loadingData = true;
167
+ // Set loading state via updateState
168
+ this.updateState({
169
+ loadingData: true
170
+ });
146
171
  this.props.getNextPageData && this.props.getNextPageData(null, this.proxy, this.state.currentPage + 1).then(data => {
147
172
  if (isArray(data) && data.length > 0 && isArray(this.state.props.dataset)) {
148
173
  $list.dataset = [...this.state.props.dataset, ...data];
@@ -295,7 +320,9 @@ export default class WmList extends BaseComponent {
295
320
  }
296
321
  break;
297
322
  case 'loadingdata':
298
- this.loadingData = $new && this.loadingData;
323
+ this.updateState({
324
+ loadingData: $new && this.state.loadingData
325
+ });
299
326
  break;
300
327
  case 'selecteditem':
301
328
  if ($new != $old && isNumber($new)) {
@@ -322,7 +349,9 @@ export default class WmList extends BaseComponent {
322
349
  }
323
350
  componentDidUpdate(prevProps, prevState, snapshot) {
324
351
  super.componentDidUpdate && super.componentDidUpdate(prevProps, prevState, snapshot);
325
- this.invokeEventCallback('onRender', [this, this.state.props.dataset]);
352
+ if (prevProps.triggeronrenderwhenhidden === true || this.showView()) {
353
+ this.invokeEventCallback('onRender', [this, this.state.props.dataset]);
354
+ }
326
355
  }
327
356
  getDefaultStyles() {
328
357
  const isHorizontal = this.state.props.direction === 'horizontal';
@@ -344,7 +373,7 @@ export default class WmList extends BaseComponent {
344
373
  ...this.styles.item,
345
374
  ...this.styles.skeleton.root
346
375
  } : this.styles.item;
347
- return index < this.state.maxRecordsToShow || isHorizontal ? /*#__PURE__*/React.createElement(Swipeable, {
376
+ return index < this.state.maxRecordsToShow || isHorizontal && this.state.props.horizontalondemandenabled === false ? /*#__PURE__*/React.createElement(Swipeable, {
348
377
  renderLeftActions: () => this.renderLeftActions(),
349
378
  renderRightActions: () => this.renderRightActions(),
350
379
  containerStyle: cols ? {
@@ -365,8 +394,8 @@ export default class WmList extends BaseComponent {
365
394
  }) : null, /*#__PURE__*/React.createElement(Tappable, _extends({}, this.getTestPropsForAction(`item${index}`), {
366
395
  disableTouchEffect: this.state.props.disabletoucheffect,
367
396
  onTap: $event => this.onSelect(item, index, $event),
368
- onLongTap: () => this.invokeEventCallback('onLongtap', [null, this.proxy]),
369
- onDoubleTap: () => this.invokeEventCallback('onDoubletap', [null, this.proxy]),
397
+ onLongTap: () => this.invokeEventCallback('onLongtap', [null, this.proxy, item]),
398
+ onDoubleTap: () => this.invokeEventCallback('onDoubletap', [null, this.proxy, item]),
370
399
  styles: [{
371
400
  display: 'flex',
372
401
  flexDirection: 'row'
@@ -377,7 +406,7 @@ export default class WmList extends BaseComponent {
377
406
  } : null, this.styles.itemContainer]
378
407
  }), props.renderItem(item, index, this), this.isSelected(item) ? /*#__PURE__*/React.createElement(WmIcon, {
379
408
  id: this.getTestId('icon' + index),
380
- iconclass: "wi wi-check-circle",
409
+ iconclass: props.selecteditemicon ? props.selecteditemicon : 'wi wi-check-circle',
381
410
  styles: this.styles.selectedIcon
382
411
  }) : null))) : null;
383
412
  }
@@ -463,10 +492,10 @@ export default class WmList extends BaseComponent {
463
492
  showsHorizontalScrollIndicator: !props.hidehorizontalscrollbar
464
493
  } : {
465
494
  numColumns: this.getNoOfColumns()
466
- })), this.loadDataOnDemand || v.data.length > this.state.maxRecordsToShow ? this.loadingData ? this.renderLoadingIcon(props) : /*#__PURE__*/React.createElement(WmLabel, {
495
+ })), this.loadDataOnDemand || v.data.length > this.state.maxRecordsToShow ? this.state.loadingData ? this.renderLoadingIcon(props) : /*#__PURE__*/React.createElement(WmLabel, {
467
496
  id: this.getTestId('ondemandmessage'),
468
497
  styles: this.styles.onDemandMessage,
469
- caption: this.hasMoreData && !isHorizontal ? props.ondemandmessage : props.nodatamessage,
498
+ caption: this.getCaption(isHorizontal, v.data),
470
499
  onTap: () => this.loadData()
471
500
  }) : null);
472
501
  }) : this.renderEmptyMessage(isHorizontal, null, null, props));