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

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
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_","dataTypeJSON","SAMPLE_DATA1","SAMPLE_DATA","SAMPLE_DATA2","chartTypes","isPieChart","type","isLineChart","isBarChart","isDonutChart","isBubbleChart","isAreaChart","isColumnChart","isPieType","isChartDataJSON","includes","constructSampleData","dataType","yaxisLength","shape","first_series","second_series","third_series","first_series_array","second_series_array","third_series_array","data","values","key","group1","group2","group3","group4","getChartType","widgetContext","getSampleData","getDataType","split","yaxisdatakey","length","Error"],"sources":["staticdata.tsx"],"sourcesContent":["import _ from \"lodash\";\n\nconst dataTypeJSON = ['Column', 'Line', 'Pie', 'Bar', 'Donut', 'Bubble']\n\nconst SAMPLE_DATA1 = {\n 'group1' : 'Europe',\n 'group2' : 'Asia',\n 'group3' : 'America',\n 'group4' : 'Australia'\n}\n\nconst SAMPLE_DATA = {\n 'group1' : '01/01/2001',\n 'group2' : '01/01/2002',\n 'group3' : '01/01/2003',\n};\nconst SAMPLE_DATA2 = {\n 'group1' : '78.6',\n 'group2' : '79',\n 'group3' : '80',\n 'group4' : '80.66'\n};\nexport const chartTypes = ['Column', 'Line', 'Area', 'Cumulative Line', 'Bar', 'Pie', 'Donut', 'Bubble']\n\nexport const isPieChart = (type: string) => type === 'Pie';\n\n// returns true if chart type is line\nexport const isLineChart = (type: string) => type === 'Line';\n\n// returns true if chart type is bar\nexport const isBarChart = (type: string) => type === 'Bar';\n\n// returns true if chart type is donut\nexport const isDonutChart = (type: string) => type === 'Donut';\n\n// returns true if chart type is bubble\nexport const isBubbleChart = (type: string) => type === 'Bubble';\n\nexport const isAreaChart = (type: string) => type === 'Area';\n\n// returns true if chart type is column\nexport const isColumnChart = (type: string) => type === 'Column';\n\nexport const isPieType = (type: string) => isPieChart(type) || isDonutChart(type);\n\n// The format of chart data is array of json objects in case of the following types of chart\nexport const isChartDataJSON = (type: any) => _.includes(dataTypeJSON, type) || !_.includes(chartTypes, type);\n\n\nexport const constructSampleData = (dataType: any, yaxisLength: any, shape: string) => {\n let first_series = [],\n second_series = [],\n third_series = [],\n first_series_array = [],\n second_series_array = [],\n third_series_array = [],\n data: { values?: { x: string | number; y?: string | number; size?: number; shape?: any; }[] | number[][]; key: any; }[] | { x: any; y?: number; }[] = [];\n switch (dataType) {\n case 'jsonFormat':\n first_series = [\n {'x': '01/01/2001', 'y': 4000000},\n {'x': '01/01/2002', 'y': 1000000},\n {'x': '01/01/2003', 'y': 5000000}\n ];\n second_series = [\n {'x': '01/01/2001', 'y': 3000000},\n {'x': '01/01/2002', 'y': 4000000},\n {'x': '01/01/2003', 'y': 7000000}\n ];\n third_series = [\n {'x': '01/01/2001', 'y': 2000000},\n {'x': '01/01/2002', 'y': 8000000},\n {'x': '01/01/2003', 'y': 6000000}\n ];\n data[0] = {\n values: first_series,\n key: SAMPLE_DATA.group1\n };\n if (yaxisLength >= 2) {\n data[1] = {\n values: second_series,\n key: SAMPLE_DATA.group2\n };\n }\n if (yaxisLength >= 3) {\n data[2] = {\n values: third_series,\n key: SAMPLE_DATA.group3\n };\n }\n break;\n case 'arrayFormat':\n first_series_array = [\n [1, 4000000],\n [2, 1000000],\n [3, 5000000]\n ];\n second_series_array = [\n [1, 3000000],\n [2, 4000000],\n [3, 7000000]\n ];\n third_series_array = [\n [1, 2000000],\n [2, 8000000],\n [3, 6000000]\n ];\n data[0] = {\n values: first_series_array,\n key: SAMPLE_DATA.group1\n };\n if (yaxisLength >= 2) {\n data[1] = {\n values: second_series_array,\n key: SAMPLE_DATA.group2\n };\n }\n if (yaxisLength >= 3) {\n data[2] = {\n values: third_series_array,\n key: SAMPLE_DATA.group3\n };\n }\n break;\n case 'columnChartFormat':\n data = [\n {'x': SAMPLE_DATA.group1, 'y': 3}\n ];\n break;\n case 'barChartFormat':\n data = [\n {'x': SAMPLE_DATA.group1, 'y': 2000000},\n {'x': SAMPLE_DATA.group2, 'y': 1000000},\n {'x': SAMPLE_DATA.group3, 'y': 3000000}\n ];\n break;\n case 'lineChartFormat':\n data = [\n {'x': SAMPLE_DATA1.group1, 'y': 2},\n {'x': SAMPLE_DATA1.group2, 'y': 0},\n {'x': SAMPLE_DATA1.group3, 'y': 3}\n ];\n break;\n case 'bubbleFormat':\n // shape = shape === 'random' ? shapes[Math.floor(Math.random() * shapes.length)] : shape;\n data = [\n {'x': SAMPLE_DATA2.group1, 'y': 1000000},\n {'x': SAMPLE_DATA2.group2, 'y': 2000000},\n {'x': SAMPLE_DATA2.group3, 'y': 3000000},\n {'x': SAMPLE_DATA2.group4, 'y': 4000000}\n ];\n break;\n case 'pieChartFormat':\n data = [\n {'x': SAMPLE_DATA1.group1, 'y': 1000000},\n {'x': SAMPLE_DATA1.group2, 'y': 2000000},\n {'x': SAMPLE_DATA1.group3, 'y': 3000000},\n {'x': SAMPLE_DATA1.group4, 'y': 4000000}\n ];\n break;\n \n }\n return data;\n\n};\n\nexport const getChartType = (widgetContext: { type: any; }) => {\n const type = widgetContext.type;\n if (isLineChart(type)) {\n return 'lineChartFormat';\n }\n if (isAreaChart(type)) {\n return 'lineChartFormat'; \n }\n if (isBarChart(type)) {\n return 'barChartFormat'; \n }\n if (isColumnChart(type)) {\n return 'columnChartFormat'; \n }\n if (isPieChart(type)) {\n return 'pieChartFormat';\n }\n if (isBubbleChart(type)) {\n return 'bubbleFormat';\n }\n if (isDonutChart(type)) {\n return 'pieChartFormat';\n}\n return isChartDataJSON(type) ? 'jsonFormat' : 'arrayFormat';\n};\n\n// Sample data to populate when no data is bound\nexport const getSampleData = (widgetContext: { yaxisdatakey: any; shape: any; }) => constructSampleData(getDataType(widgetContext), _.split(widgetContext.yaxisdatakey, ',').length, widgetContext.shape);\n\nfunction getDataType(widgetContext: { yaxisdatakey: any; shape: any; }): any {\n throw new Error(\"Function not implemented.\");\n}\n"],"mappings":"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"}
@@ -68,7 +68,7 @@ export default class WmWizard extends BaseComponent {
68
68
  const isFirstStep = index === 0;
69
69
  const isActiveStep = index === this.state.currentStep;
70
70
  const isNumberTextLayout = this.state.props.classname === 'number-text-inline';
71
- return item.props.show != false ? /*#__PURE__*/React.createElement(View, {
71
+ return item.state.props.show != false ? /*#__PURE__*/React.createElement(View, {
72
72
  style: [this.styles.headerWrapper, isNumberTextLayout ? {
73
73
  paddingRight: isActiveStep ? 0 : 5,
74
74
  paddingLeft: index === this.state.currentStep + 1 ? 0 : 5
@@ -88,10 +88,10 @@ export default class WmWizard extends BaseComponent {
88
88
  color: this.styles.activeStep.color
89
89
  }
90
90
  }),
91
- iconclass: item.props.iconclass || 'wm-sl-l sl-check'
91
+ iconclass: item.state.props.iconclass || 'wm-sl-l sl-check'
92
92
  })), (isNumberTextLayout && isActiveStep || !isNumberTextLayout) && /*#__PURE__*/React.createElement(Text, {
93
93
  style: this.styles.stepTitle
94
- }, item.props.title || 'Step Title'), this.numberOfSteps > 1 && isActiveStep && /*#__PURE__*/React.createElement(View, {
94
+ }, item.state.props.title || 'Step Title'), this.numberOfSteps > 1 && isActiveStep && /*#__PURE__*/React.createElement(View, {
95
95
  style: [this.styles.numberTextStepConnector, {
96
96
  width: isLastStep ? 0 : 50
97
97
  }]
@@ -1 +1 @@
1
- {"version":3,"names":["React","Text","View","TouchableOpacity","Platform","isArray","merge","BaseComponent","BaseComponentState","WmWizardProps","DEFAULT_CLASS","WmButton","WmIcon","WmAnchor","WmWizardState","constructor","arguments","_defineProperty","WmWizard","props","steps","children","defaultStepIndex","defaultstep","map","item","index","name","updateCurrentStep","addWizardStep","step","forceUpdate","componentDidMount","showActiveStep","_this$steps$this$stat","state","currentStep","setActive","_this$steps$this$stat2","isDone","length","undefined","setInActive","updateState","getStepStyle","style","styles","push","doneStep","activeStep","renderWizardHeader","isLastStep","numberOfSteps","isFirstStep","isActiveStep","isNumberTextLayout","classname","show","createElement","headerWrapper","paddingRight","paddingLeft","key","stepWrapper","onPress","bind","disabled","stepCounter","stepIcon","icon","color","iconclass","stepTitle","title","numberTextStepConnector","width","stepConnector","left","OS","isRTL","onPrev","invokePrevCB","onNext","eventName","invokeSkipCB","invokeNextCB","onDone","$event","invokeEventCallback","proxy","onCancel","onSkip","renderWidget","isSkippable","enableskip","root","_background","wizardHeader","i","wizardBody","wizardFooter","flexDirection","actionsalignment","wizardActions","theme","getStyle","doneButton","id","getTestId","caption","donebtnlabel","onTap","nextButton","iconposition","nextbtnlabel","prevButton","previousbtnlabel","cancelable","cancelbtnlabel","cancelButton","skipLink"],"sources":["wizard.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View, TouchableOpacity, Platform } from 'react-native';\nimport { isArray, merge } from 'lodash';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmWizardProps from './wizard.props';\nimport { DEFAULT_CLASS, WmWizardStyles } from './wizard.styles';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport WmAnchor from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.component';\nimport WmWizardstep from './wizardstep/wizardstep.component';\n\nexport class WmWizardState extends BaseComponentState<WmWizardProps> {\n currentStep: number = 0;\n isDone: boolean = false;\n}\n\nexport default class WmWizard extends BaseComponent<WmWizardProps, WmWizardState, WmWizardStyles> {\n private numberOfSteps: number = null as any;\n private steps = [] as WmWizardstep[];\n constructor(props: WmWizardProps) {\n super(props, DEFAULT_CLASS, new WmWizardProps());\n const steps = props.children;\n let defaultStepIndex = 0;\n if (isArray(steps) && props.defaultstep) {\n steps.map((item: any, index: any) => {\n if (props.defaultstep === item.props.name) {\n defaultStepIndex = index;\n }\n })\n }\n this.updateCurrentStep(defaultStepIndex);\n }\n\n addWizardStep(step: WmWizardstep) {\n this.steps[step.props.index] = step;\n this.forceUpdate();\n }\n\n componentDidMount() {\n super.componentDidMount();\n this.showActiveStep();\n }\n\n showActiveStep() {\n this.steps[this.state.currentStep]?.setActive();\n }\n\n updateCurrentStep(index: number, isDone = false) {\n this.steps[this.state.currentStep]?.setInActive();\n this.updateState({\n currentStep: index,\n isDone: isDone\n } as WmWizardState, () => this.showActiveStep());\n }\n\n getStepStyle(index: number) {\n const style = [this.styles.step];\n if (this.state.isDone || index < this.state.currentStep) {\n style.push(this.styles.doneStep);\n } else if (this.state.currentStep === index) {\n style.push(this.styles.activeStep);\n }\n return style;\n }\n\n renderWizardHeader(item: any, index: number) {\n const isLastStep = index === this.numberOfSteps - 1;\n const isFirstStep = index === 0;\n const isActiveStep = index === this.state.currentStep;\n const isNumberTextLayout = this.state.props.classname === 'number-text-inline';\n return item.props.show != false ? (\n <View style={[this.styles.headerWrapper, isNumberTextLayout ?\n {paddingRight: isActiveStep ? 0 : 5, paddingLeft: index === this.state.currentStep + 1 ? 0 : 5}: {}]} key={index+1}>\n <TouchableOpacity style={this.styles.stepWrapper}\n onPress={this.updateCurrentStep.bind(this, index, false)} disabled={index >= this.state.currentStep}>\n <View style={this.getStepStyle(index)}>\n {index >= this.state.currentStep && !this.state.isDone &&\n <Text style={isActiveStep ? this.styles.activeStep : this.styles.stepCounter}>{index+1}</Text>}\n {(index < this.state.currentStep || this.state.isDone) &&\n <WmIcon styles={merge({}, this.styles.stepIcon, {icon: {color: this.styles.activeStep.color}})}\n iconclass={item.props.iconclass || 'wm-sl-l sl-check'}></WmIcon>}\n </View>\n {((isNumberTextLayout && isActiveStep) || !isNumberTextLayout) &&\n <Text style={this.styles.stepTitle}>\n {item.props.title || 'Step Title'}</Text> }\n {this.numberOfSteps > 1 && isActiveStep &&\n <View style={[this.styles.numberTextStepConnector, {width: isLastStep ? 0 : 50}]}></View>}\n </TouchableOpacity>\n {this.numberOfSteps > 1 && <View style={[this.styles.stepConnector, { width: isFirstStep || isLastStep ? '50%' : '100%',\n left: Platform.OS == \"web\"?(!this.isRTL && isFirstStep) || (this.isRTL && isLastStep) ? '50%': '0%': isFirstStep ? '50%': '0%'}]}></View>}\n </View>\n ) : null;\n }\n\n onPrev(steps: any) {\n const index = this.state.currentStep;\n const currentStep = this.steps[index];\n currentStep.invokePrevCB(index);\n this.updateCurrentStep(index - 1);\n }\n\n onNext(steps: any, eventName?: string) {\n const index = this.state.currentStep;\n const currentStep = this.steps[index];\n if (eventName === 'skip') {\n currentStep.invokeSkipCB(index);\n } else {\n currentStep.invokeNextCB(index);\n }\n this.updateCurrentStep(index + 1);\n }\n\n onDone($event: any) {\n this.updateState({\n isDone: true\n } as WmWizardState);\n this.invokeEventCallback('onDone', [$event, this.proxy]);\n }\n\n onCancel() {\n this.invokeEventCallback('onCancel', [null, this.proxy]);\n }\n onSkip(steps: any) {\n this.onNext(steps, 'skip');\n }\n\n renderWidget(props: WmWizardProps) {\n this.numberOfSteps = this.steps.length;\n const activeStep = this.steps[this.state.currentStep];\n const isSkippable = this.steps[this.state.currentStep] && this.steps[this.state.currentStep].props.enableskip;\n return (\n <View style={this.styles.root}>\n {this._background}\n <View style={this.styles.wizardHeader}>\n {this.steps ? this.steps.map((step, i) => this.renderWizardHeader(step, i)) : null}\n </View>\n <View style={this.styles.wizardBody}>\n {props.children}\n </View>\n <View style={[this.styles.wizardFooter,\n {flexDirection: props.actionsalignment === 'right' ? 'row-reverse': 'row'}]}>\n {(this.state.currentStep+1) === this.numberOfSteps &&\n <WmButton iconclass={'wm-sl-l sl-check'} styles={merge({}, this.styles.wizardActions, this.theme.getStyle('btn-default'), this.styles.doneButton)}\n id = {this.getTestId('donebtn')} caption={props.donebtnlabel} onTap={this.onDone.bind(this)}></WmButton>\n }\n {(this.state.currentStep+1) < this.numberOfSteps &&\n <WmButton iconclass={'wi wi-chevron-right'} styles={merge({}, this.styles.wizardActions, this.theme.getStyle('btn-default'), this.styles.nextButton)}\n id = {this.getTestId('nextbtn')} \n iconposition={'right'} caption={props.nextbtnlabel} onTap={this.onNext.bind(this, this.steps)}></WmButton>\n }\n {this.state.currentStep > 0 &&\n <WmButton iconclass={'wi wi-chevron-left'} styles={merge({}, this.theme.getStyle('btn-default'), this.styles.wizardActions, this.styles.prevButton)} caption={props.previousbtnlabel}\n id = {this.getTestId('prevbtn')}\n onTap={this.onPrev.bind(this, this.steps)}></WmButton>\n }\n {props.cancelable ?\n <WmButton id = {this.getTestId('cancelbtn')} caption={props.cancelbtnlabel} styles={merge({}, this.theme.getStyle('btn-default'), this.styles.wizardActions, this.styles.cancelButton)} onTap={this.onCancel.bind(this)}></WmButton>\n : null\n }\n {isSkippable &&\n <WmAnchor iconclass={'wi wi-chevron-right'} iconposition={'right'} caption={'Skip'}\n id = {this.getTestId('skip')} \n styles={merge({}, this.styles.wizardActions, this.styles.skipLink)} onTap={this.onSkip.bind(this, this.steps)}></WmAnchor>\n }\n </View>\n </View>\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","Text","View","TouchableOpacity","Platform","isArray","merge","BaseComponent","BaseComponentState","WmWizardProps","DEFAULT_CLASS","WmButton","WmIcon","WmAnchor","WmWizardState","constructor","arguments","_defineProperty","WmWizard","props","steps","children","defaultStepIndex","defaultstep","map","item","index","name","updateCurrentStep","addWizardStep","step","forceUpdate","componentDidMount","showActiveStep","_this$steps$this$stat","state","currentStep","setActive","_this$steps$this$stat2","isDone","length","undefined","setInActive","updateState","getStepStyle","style","styles","push","doneStep","activeStep","renderWizardHeader","isLastStep","numberOfSteps","isFirstStep","isActiveStep","isNumberTextLayout","classname","show","createElement","headerWrapper","paddingRight","paddingLeft","key","stepWrapper","onPress","bind","disabled","stepCounter","stepIcon","icon","color","iconclass","stepTitle","title","numberTextStepConnector","width","stepConnector","left","OS","isRTL","onPrev","invokePrevCB","onNext","eventName","invokeSkipCB","invokeNextCB","onDone","$event","invokeEventCallback","proxy","onCancel","onSkip","renderWidget","isSkippable","enableskip","root","_background","wizardHeader","i","wizardBody","wizardFooter","flexDirection","actionsalignment","wizardActions","theme","getStyle","doneButton","id","getTestId","caption","donebtnlabel","onTap","nextButton","iconposition","nextbtnlabel","prevButton","previousbtnlabel","cancelable","cancelbtnlabel","cancelButton","skipLink"],"sources":["wizard.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View, TouchableOpacity, Platform } from 'react-native';\nimport { isArray, merge } from 'lodash';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmWizardProps from './wizard.props';\nimport { DEFAULT_CLASS, WmWizardStyles } from './wizard.styles';\nimport WmButton from '@wavemaker/app-rn-runtime/components/basic/button/button.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport WmAnchor from '@wavemaker/app-rn-runtime/components/basic/anchor/anchor.component';\nimport WmWizardstep from './wizardstep/wizardstep.component';\n\nexport class WmWizardState extends BaseComponentState<WmWizardProps> {\n currentStep: number = 0;\n isDone: boolean = false;\n}\n\nexport default class WmWizard extends BaseComponent<WmWizardProps, WmWizardState, WmWizardStyles> {\n private numberOfSteps: number = null as any;\n private steps = [] as WmWizardstep[];\n constructor(props: WmWizardProps) {\n super(props, DEFAULT_CLASS, new WmWizardProps());\n const steps = props.children;\n let defaultStepIndex = 0;\n if (isArray(steps) && props.defaultstep) {\n steps.map((item: any, index: any) => {\n if (props.defaultstep === item.props.name) {\n defaultStepIndex = index;\n }\n })\n }\n this.updateCurrentStep(defaultStepIndex);\n }\n\n addWizardStep(step: WmWizardstep) {\n this.steps[step.props.index] = step;\n this.forceUpdate();\n }\n\n componentDidMount() {\n super.componentDidMount();\n this.showActiveStep();\n }\n\n showActiveStep() {\n this.steps[this.state.currentStep]?.setActive();\n }\n\n updateCurrentStep(index: number, isDone = false) {\n this.steps[this.state.currentStep]?.setInActive();\n this.updateState({\n currentStep: index,\n isDone: isDone\n } as WmWizardState, () => this.showActiveStep());\n }\n\n getStepStyle(index: number) {\n const style = [this.styles.step];\n if (this.state.isDone || index < this.state.currentStep) {\n style.push(this.styles.doneStep);\n } else if (this.state.currentStep === index) {\n style.push(this.styles.activeStep);\n }\n return style;\n }\n\n renderWizardHeader(item: any, index: number) {\n const isLastStep = index === this.numberOfSteps - 1;\n const isFirstStep = index === 0;\n const isActiveStep = index === this.state.currentStep;\n const isNumberTextLayout = this.state.props.classname === 'number-text-inline';\n return item.state.props.show != false ? (\n <View style={[this.styles.headerWrapper, isNumberTextLayout ?\n {paddingRight: isActiveStep ? 0 : 5, paddingLeft: index === this.state.currentStep + 1 ? 0 : 5}: {}]} key={index+1}>\n <TouchableOpacity style={this.styles.stepWrapper}\n onPress={this.updateCurrentStep.bind(this, index, false)} disabled={index >= this.state.currentStep}>\n <View style={this.getStepStyle(index)}>\n {index >= this.state.currentStep && !this.state.isDone &&\n <Text style={isActiveStep ? this.styles.activeStep : this.styles.stepCounter}>{index+1}</Text>}\n {(index < this.state.currentStep || this.state.isDone) &&\n <WmIcon styles={merge({}, this.styles.stepIcon, {icon: {color: this.styles.activeStep.color}})}\n iconclass={item.state.props.iconclass || 'wm-sl-l sl-check'}></WmIcon>}\n </View>\n {((isNumberTextLayout && isActiveStep) || !isNumberTextLayout) &&\n <Text style={this.styles.stepTitle}>\n {item.state.props.title || 'Step Title'}</Text> }\n {this.numberOfSteps > 1 && isActiveStep &&\n <View style={[this.styles.numberTextStepConnector, {width: isLastStep ? 0 : 50}]}></View>}\n </TouchableOpacity>\n {this.numberOfSteps > 1 && <View style={[this.styles.stepConnector, { width: isFirstStep || isLastStep ? '50%' : '100%',\n left: Platform.OS == \"web\"?(!this.isRTL && isFirstStep) || (this.isRTL && isLastStep) ? '50%': '0%': isFirstStep ? '50%': '0%'}]}></View>}\n </View>\n ) : null;\n }\n\n onPrev(steps: any) {\n const index = this.state.currentStep;\n const currentStep = this.steps[index];\n currentStep.invokePrevCB(index);\n this.updateCurrentStep(index - 1);\n }\n\n onNext(steps: any, eventName?: string) {\n const index = this.state.currentStep;\n const currentStep = this.steps[index];\n if (eventName === 'skip') {\n currentStep.invokeSkipCB(index);\n } else {\n currentStep.invokeNextCB(index);\n }\n this.updateCurrentStep(index + 1);\n }\n\n onDone($event: any) {\n this.updateState({\n isDone: true\n } as WmWizardState);\n this.invokeEventCallback('onDone', [$event, this.proxy]);\n }\n\n onCancel() {\n this.invokeEventCallback('onCancel', [null, this.proxy]);\n }\n onSkip(steps: any) {\n this.onNext(steps, 'skip');\n }\n\n renderWidget(props: WmWizardProps) {\n this.numberOfSteps = this.steps.length;\n const activeStep = this.steps[this.state.currentStep];\n const isSkippable = this.steps[this.state.currentStep] && this.steps[this.state.currentStep].props.enableskip;\n return (\n <View style={this.styles.root}>\n {this._background}\n <View style={this.styles.wizardHeader}>\n {this.steps ? this.steps.map((step, i) => this.renderWizardHeader(step, i)) : null}\n </View>\n <View style={this.styles.wizardBody}>\n {props.children}\n </View>\n <View style={[this.styles.wizardFooter,\n {flexDirection: props.actionsalignment === 'right' ? 'row-reverse': 'row'}]}>\n {(this.state.currentStep+1) === this.numberOfSteps &&\n <WmButton iconclass={'wm-sl-l sl-check'} styles={merge({}, this.styles.wizardActions, this.theme.getStyle('btn-default'), this.styles.doneButton)}\n id = {this.getTestId('donebtn')} caption={props.donebtnlabel} onTap={this.onDone.bind(this)}></WmButton>\n }\n {(this.state.currentStep+1) < this.numberOfSteps &&\n <WmButton iconclass={'wi wi-chevron-right'} styles={merge({}, this.styles.wizardActions, this.theme.getStyle('btn-default'), this.styles.nextButton)}\n id = {this.getTestId('nextbtn')} \n iconposition={'right'} caption={props.nextbtnlabel} onTap={this.onNext.bind(this, this.steps)}></WmButton>\n }\n {this.state.currentStep > 0 &&\n <WmButton iconclass={'wi wi-chevron-left'} styles={merge({}, this.theme.getStyle('btn-default'), this.styles.wizardActions, this.styles.prevButton)} caption={props.previousbtnlabel}\n id = {this.getTestId('prevbtn')}\n onTap={this.onPrev.bind(this, this.steps)}></WmButton>\n }\n {props.cancelable ?\n <WmButton id = {this.getTestId('cancelbtn')} caption={props.cancelbtnlabel} styles={merge({}, this.theme.getStyle('btn-default'), this.styles.wizardActions, this.styles.cancelButton)} onTap={this.onCancel.bind(this)}></WmButton>\n : null\n }\n {isSkippable &&\n <WmAnchor iconclass={'wi wi-chevron-right'} iconposition={'right'} caption={'Skip'}\n id = {this.getTestId('skip')} \n styles={merge({}, this.styles.wizardActions, this.styles.skipLink)} onTap={this.onSkip.bind(this, this.steps)}></WmAnchor>\n }\n </View>\n </View>\n );\n }\n}\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,IAAI,EAAEC,gBAAgB,EAAEC,QAAQ,QAAQ,cAAc;AACrE,SAASC,OAAO,EAAEC,KAAK,QAAQ,QAAQ;AACvC,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AAEjG,OAAOC,aAAa,MAAM,gBAAgB;AAC1C,SAASC,aAAa,QAAwB,iBAAiB;AAC/D,OAAOC,QAAQ,MAAM,oEAAoE;AACzF,OAAOC,MAAM,MAAM,gEAAgE;AACnF,OAAOC,QAAQ,MAAM,oEAAoE;AAGzF,OAAO,MAAMC,aAAa,SAASN,kBAAkB,CAAgB;EAAAO,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,sBAC7C,CAAC;IAAAA,eAAA,iBACL,KAAK;EAAA;AACzB;AAEA,eAAe,MAAMC,QAAQ,SAASX,aAAa,CAA+C;EAGhGQ,WAAWA,CAACI,KAAoB,EAAE;IAChC,KAAK,CAACA,KAAK,EAAET,aAAa,EAAE,IAAID,aAAa,CAAC,CAAC,CAAC;IAACQ,eAAA,wBAHnB,IAAI;IAAAA,eAAA,gBACpB,EAAE;IAGhB,MAAMG,KAAK,GAAGD,KAAK,CAACE,QAAQ;IAC5B,IAAIC,gBAAgB,GAAG,CAAC;IACxB,IAAIjB,OAAO,CAACe,KAAK,CAAC,IAAID,KAAK,CAACI,WAAW,EAAE;MACvCH,KAAK,CAACI,GAAG,CAAC,CAACC,IAAS,EAAEC,KAAU,KAAK;QACnC,IAAIP,KAAK,CAACI,WAAW,KAAKE,IAAI,CAACN,KAAK,CAACQ,IAAI,EAAE;UACzCL,gBAAgB,GAAGI,KAAK;QAC1B;MACF,CAAC,CAAC;IACJ;IACA,IAAI,CAACE,iBAAiB,CAACN,gBAAgB,CAAC;EAC1C;EAEAO,aAAaA,CAACC,IAAkB,EAAE;IAChC,IAAI,CAACV,KAAK,CAACU,IAAI,CAACX,KAAK,CAACO,KAAK,CAAC,GAAGI,IAAI;IACnC,IAAI,CAACC,WAAW,CAAC,CAAC;EACpB;EAEAC,iBAAiBA,CAAA,EAAG;IAClB,KAAK,CAACA,iBAAiB,CAAC,CAAC;IACzB,IAAI,CAACC,cAAc,CAAC,CAAC;EACvB;EAEAA,cAAcA,CAAA,EAAG;IAAA,IAAAC,qBAAA;IACf,CAAAA,qBAAA,OAAI,CAACd,KAAK,CAAC,IAAI,CAACe,KAAK,CAACC,WAAW,CAAC,cAAAF,qBAAA,uBAAlCA,qBAAA,CAAoCG,SAAS,CAAC,CAAC;EACjD;EAEAT,iBAAiBA,CAACF,KAAa,EAAkB;IAAA,IAAAY,sBAAA;IAAA,IAAhBC,MAAM,GAAAvB,SAAA,CAAAwB,MAAA,QAAAxB,SAAA,QAAAyB,SAAA,GAAAzB,SAAA,MAAG,KAAK;IAC7C,CAAAsB,sBAAA,OAAI,CAAClB,KAAK,CAAC,IAAI,CAACe,KAAK,CAACC,WAAW,CAAC,cAAAE,sBAAA,uBAAlCA,sBAAA,CAAoCI,WAAW,CAAC,CAAC;IACjD,IAAI,CAACC,WAAW,CAAC;MACfP,WAAW,EAAEV,KAAK;MAClBa,MAAM,EAAEA;IACV,CAAC,EAAmB,MAAM,IAAI,CAACN,cAAc,CAAC,CAAC,CAAC;EAClD;EAEAW,YAAYA,CAAClB,KAAa,EAAE;IAC1B,MAAMmB,KAAK,GAAG,CAAC,IAAI,CAACC,MAAM,CAAChB,IAAI,CAAC;IAChC,IAAI,IAAI,CAACK,KAAK,CAACI,MAAM,IAAIb,KAAK,GAAG,IAAI,CAACS,KAAK,CAACC,WAAW,EAAE;MACvDS,KAAK,CAACE,IAAI,CAAC,IAAI,CAACD,MAAM,CAACE,QAAQ,CAAC;IAClC,CAAC,MAAM,IAAI,IAAI,CAACb,KAAK,CAACC,WAAW,KAAKV,KAAK,EAAE;MAC3CmB,KAAK,CAACE,IAAI,CAAC,IAAI,CAACD,MAAM,CAACG,UAAU,CAAC;IACpC;IACA,OAAOJ,KAAK;EACd;EAEAK,kBAAkBA,CAACzB,IAAS,EAAEC,KAAa,EAAE;IAC3C,MAAMyB,UAAU,GAAGzB,KAAK,KAAK,IAAI,CAAC0B,aAAa,GAAG,CAAC;IACnD,MAAMC,WAAW,GAAG3B,KAAK,KAAK,CAAC;IAC/B,MAAM4B,YAAY,GAAG5B,KAAK,KAAK,IAAI,CAACS,KAAK,CAACC,WAAW;IACrD,MAAMmB,kBAAkB,GAAG,IAAI,CAACpB,KAAK,CAAChB,KAAK,CAACqC,SAAS,KAAK,oBAAoB;IAC9E,OAAO/B,IAAI,CAACU,KAAK,CAAChB,KAAK,CAACsC,IAAI,IAAI,KAAK,gBACnCzD,KAAA,CAAA0D,aAAA,CAACxD,IAAI;MAAC2C,KAAK,EAAE,CAAC,IAAI,CAACC,MAAM,CAACa,aAAa,EAAEJ,kBAAkB,GACzD;QAACK,YAAY,EAAEN,YAAY,GAAG,CAAC,GAAG,CAAC;QAAEO,WAAW,EAAEnC,KAAK,KAAK,IAAI,CAACS,KAAK,CAACC,WAAW,GAAG,CAAC,GAAG,CAAC,GAAG;MAAC,CAAC,GAAE,CAAC,CAAC,CAAE;MAAC0B,GAAG,EAAEpC,KAAK,GAAC;IAAE,gBACnH1B,KAAA,CAAA0D,aAAA,CAACvD,gBAAgB;MAAC0C,KAAK,EAAE,IAAI,CAACC,MAAM,CAACiB,WAAY;MAC/BC,OAAO,EAAE,IAAI,CAACpC,iBAAiB,CAACqC,IAAI,CAAC,IAAI,EAAEvC,KAAK,EAAE,KAAK,CAAE;MAACwC,QAAQ,EAAExC,KAAK,IAAI,IAAI,CAACS,KAAK,CAACC;IAAY,gBAClHpC,KAAA,CAAA0D,aAAA,CAACxD,IAAI;MAAC2C,KAAK,EAAE,IAAI,CAACD,YAAY,CAAClB,KAAK;IAAE,GACnCA,KAAK,IAAI,IAAI,CAACS,KAAK,CAACC,WAAW,IAAI,CAAC,IAAI,CAACD,KAAK,CAACI,MAAM,iBACpDvC,KAAA,CAAA0D,aAAA,CAACzD,IAAI;MAAC4C,KAAK,EAAES,YAAY,GAAG,IAAI,CAACR,MAAM,CAACG,UAAU,GAAG,IAAI,CAACH,MAAM,CAACqB;IAAY,GAAEzC,KAAK,GAAC,CAAQ,CAAC,EAC/F,CAACA,KAAK,GAAG,IAAI,CAACS,KAAK,CAACC,WAAW,IAAI,IAAI,CAACD,KAAK,CAACI,MAAM,kBACnDvC,KAAA,CAAA0D,aAAA,CAAC9C,MAAM;MAACkC,MAAM,EAAExC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAACwC,MAAM,CAACsB,QAAQ,EAAE;QAACC,IAAI,EAAE;UAACC,KAAK,EAAE,IAAI,CAACxB,MAAM,CAACG,UAAU,CAACqB;QAAK;MAAC,CAAC,CAAE;MACvFC,SAAS,EAAE9C,IAAI,CAACU,KAAK,CAAChB,KAAK,CAACoD,SAAS,IAAI;IAAmB,CAAS,CAC3E,CAAC,EACN,CAAEhB,kBAAkB,IAAID,YAAY,IAAK,CAACC,kBAAkB,kBAC3DvD,KAAA,CAAA0D,aAAA,CAACzD,IAAI;MAAC4C,KAAK,EAAE,IAAI,CAACC,MAAM,CAAC0B;IAAU,GAClC/C,IAAI,CAACU,KAAK,CAAChB,KAAK,CAACsD,KAAK,IAAI,YAAmB,CAAC,EAChD,IAAI,CAACrB,aAAa,GAAG,CAAC,IAAIE,YAAY,iBACrCtD,KAAA,CAAA0D,aAAA,CAACxD,IAAI;MAAC2C,KAAK,EAAE,CAAC,IAAI,CAACC,MAAM,CAAC4B,uBAAuB,EAAE;QAACC,KAAK,EAAExB,UAAU,GAAG,CAAC,GAAG;MAAE,CAAC;IAAE,CAAO,CAC5E,CAAC,EAClB,IAAI,CAACC,aAAa,GAAG,CAAC,iBAAIpD,KAAA,CAAA0D,aAAA,CAACxD,IAAI;MAAC2C,KAAK,EAAE,CAAC,IAAI,CAACC,MAAM,CAAC8B,aAAa,EAAE;QAAED,KAAK,EAAEtB,WAAW,IAAIF,UAAU,GAAG,KAAK,GAAG,MAAM;QACzE0B,IAAI,EAAEzE,QAAQ,CAAC0E,EAAE,IAAI,KAAK,GAAE,CAAC,IAAI,CAACC,KAAK,IAAI1B,WAAW,IAAM,IAAI,CAAC0B,KAAK,IAAI5B,UAAW,GAAG,KAAK,GAAE,IAAI,GAAEE,WAAW,GAAG,KAAK,GAAE;MAAI,CAAC;IAAE,CAAO,CAClL,CAAC,GACL,IAAI;EACV;EAEA2B,MAAMA,CAAC5D,KAAU,EAAE;IACjB,MAAMM,KAAK,GAAG,IAAI,CAACS,KAAK,CAACC,WAAW;IACpC,MAAMA,WAAW,GAAG,IAAI,CAAChB,KAAK,CAACM,KAAK,CAAC;IACrCU,WAAW,CAAC6C,YAAY,CAACvD,KAAK,CAAC;IAC/B,IAAI,CAACE,iBAAiB,CAACF,KAAK,GAAG,CAAC,CAAC;EACnC;EAEAwD,MAAMA,CAAC9D,KAAU,EAAE+D,SAAkB,EAAE;IACrC,MAAMzD,KAAK,GAAG,IAAI,CAACS,KAAK,CAACC,WAAW;IACpC,MAAMA,WAAW,GAAG,IAAI,CAAChB,KAAK,CAACM,KAAK,CAAC;IACrC,IAAIyD,SAAS,KAAK,MAAM,EAAE;MACxB/C,WAAW,CAACgD,YAAY,CAAC1D,KAAK,CAAC;IACjC,CAAC,MAAM;MACLU,WAAW,CAACiD,YAAY,CAAC3D,KAAK,CAAC;IACjC;IACA,IAAI,CAACE,iBAAiB,CAACF,KAAK,GAAG,CAAC,CAAC;EACnC;EAEA4D,MAAMA,CAACC,MAAW,EAAE;IAClB,IAAI,CAAC5C,WAAW,CAAC;MACfJ,MAAM,EAAE;IACV,CAAkB,CAAC;IACnB,IAAI,CAACiD,mBAAmB,CAAC,QAAQ,EAAE,CAACD,MAAM,EAAE,IAAI,CAACE,KAAK,CAAC,CAAC;EAC1D;EAEAC,QAAQA,CAAA,EAAG;IACT,IAAI,CAACF,mBAAmB,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,CAACC,KAAK,CAAC,CAAC;EAC1D;EACAE,MAAMA,CAACvE,KAAU,EAAE;IACjB,IAAI,CAAC8D,MAAM,CAAC9D,KAAK,EAAE,MAAM,CAAC;EAC5B;EAEAwE,YAAYA,CAACzE,KAAoB,EAAE;IACjC,IAAI,CAACiC,aAAa,GAAG,IAAI,CAAChC,KAAK,CAACoB,MAAM;IACtC,MAAMS,UAAU,GAAG,IAAI,CAAC7B,KAAK,CAAC,IAAI,CAACe,KAAK,CAACC,WAAW,CAAC;IACrD,MAAMyD,WAAW,GAAG,IAAI,CAACzE,KAAK,CAAC,IAAI,CAACe,KAAK,CAACC,WAAW,CAAC,IAAI,IAAI,CAAChB,KAAK,CAAC,IAAI,CAACe,KAAK,CAACC,WAAW,CAAC,CAACjB,KAAK,CAAC2E,UAAU;IAC7G,oBACE9F,KAAA,CAAA0D,aAAA,CAACxD,IAAI;MAAC2C,KAAK,EAAE,IAAI,CAACC,MAAM,CAACiD;IAAK,GAC3B,IAAI,CAACC,WAAW,eACjBhG,KAAA,CAAA0D,aAAA,CAACxD,IAAI;MAAC2C,KAAK,EAAE,IAAI,CAACC,MAAM,CAACmD;IAAa,GACnC,IAAI,CAAC7E,KAAK,GAAG,IAAI,CAACA,KAAK,CAACI,GAAG,CAAC,CAACM,IAAI,EAAEoE,CAAC,KAAK,IAAI,CAAChD,kBAAkB,CAACpB,IAAI,EAAEoE,CAAC,CAAC,CAAC,GAAG,IAC1E,CAAC,eACPlG,KAAA,CAAA0D,aAAA,CAACxD,IAAI;MAAC2C,KAAK,EAAE,IAAI,CAACC,MAAM,CAACqD;IAAW,GACjChF,KAAK,CAACE,QACH,CAAC,eACPrB,KAAA,CAAA0D,aAAA,CAACxD,IAAI;MAAC2C,KAAK,EAAE,CAAC,IAAI,CAACC,MAAM,CAACsD,YAAY,EACpC;QAACC,aAAa,EAAElF,KAAK,CAACmF,gBAAgB,KAAK,OAAO,GAAG,aAAa,GAAE;MAAK,CAAC;IAAE,GAC1E,IAAI,CAACnE,KAAK,CAACC,WAAW,GAAC,CAAC,KAAM,IAAI,CAACgB,aAAa,iBAChDpD,KAAA,CAAA0D,aAAA,CAAC/C,QAAQ;MAAC4D,SAAS,EAAE,kBAAmB;MAACzB,MAAM,EAAExC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAACwC,MAAM,CAACyD,aAAa,EAAE,IAAI,CAACC,KAAK,CAACC,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC3D,MAAM,CAAC4D,UAAU,CAAE;MAChJC,EAAE,EAAI,IAAI,CAACC,SAAS,CAAC,SAAS,CAAE;MAAEC,OAAO,EAAE1F,KAAK,CAAC2F,YAAa;MAACC,KAAK,EAAE,IAAI,CAACzB,MAAM,CAACrB,IAAI,CAAC,IAAI;IAAE,CAAW,CAAC,EAE3G,IAAI,CAAC9B,KAAK,CAACC,WAAW,GAAC,CAAC,GAAI,IAAI,CAACgB,aAAa,iBAC9CpD,KAAA,CAAA0D,aAAA,CAAC/C,QAAQ;MAAC4D,SAAS,EAAE,qBAAsB;MAACzB,MAAM,EAAExC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAACwC,MAAM,CAACyD,aAAa,EAAE,IAAI,CAACC,KAAK,CAACC,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC3D,MAAM,CAACkE,UAAU,CAAE;MACjJL,EAAE,EAAI,IAAI,CAACC,SAAS,CAAC,SAAS,CAAE;MAC1BK,YAAY,EAAE,OAAQ;MAACJ,OAAO,EAAE1F,KAAK,CAAC+F,YAAa;MAACH,KAAK,EAAE,IAAI,CAAC7B,MAAM,CAACjB,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC7C,KAAK;IAAE,CAAW,CAAC,EAErH,IAAI,CAACe,KAAK,CAACC,WAAW,GAAG,CAAC,iBACzBpC,KAAA,CAAA0D,aAAA,CAAC/C,QAAQ;MAAC4D,SAAS,EAAE,oBAAqB;MAACzB,MAAM,EAAExC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAACkG,KAAK,CAACC,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC3D,MAAM,CAACyD,aAAa,EAAE,IAAI,CAACzD,MAAM,CAACqE,UAAU,CAAE;MAACN,OAAO,EAAE1F,KAAK,CAACiG,gBAAiB;MACjLT,EAAE,EAAI,IAAI,CAACC,SAAS,CAAC,SAAS,CAAE;MAChCG,KAAK,EAAE,IAAI,CAAC/B,MAAM,CAACf,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC7C,KAAK;IAAE,CAAW,CAAC,EAE3DD,KAAK,CAACkG,UAAU,gBACbrH,KAAA,CAAA0D,aAAA,CAAC/C,QAAQ;MAACgG,EAAE,EAAI,IAAI,CAACC,SAAS,CAAC,WAAW,CAAE;MAAEC,OAAO,EAAE1F,KAAK,CAACmG,cAAe;MAACxE,MAAM,EAAExC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAACkG,KAAK,CAACC,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC3D,MAAM,CAACyD,aAAa,EAAE,IAAI,CAACzD,MAAM,CAACyE,YAAY,CAAE;MAACR,KAAK,EAAE,IAAI,CAACrB,QAAQ,CAACzB,IAAI,CAAC,IAAI;IAAE,CAAW,CAAC,GACnO,IAAI,EAET4B,WAAW,iBACR7F,KAAA,CAAA0D,aAAA,CAAC7C,QAAQ;MAAC0D,SAAS,EAAE,qBAAsB;MAAC0C,YAAY,EAAE,OAAQ;MAACJ,OAAO,EAAE,MAAO;MACjFF,EAAE,EAAI,IAAI,CAACC,SAAS,CAAC,MAAM,CAAE;MAC7B9D,MAAM,EAAExC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAACwC,MAAM,CAACyD,aAAa,EAAE,IAAI,CAACzD,MAAM,CAAC0E,QAAQ,CAAE;MAACT,KAAK,EAAE,IAAI,CAACpB,MAAM,CAAC1B,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC7C,KAAK;IAAE,CAAW,CAE3H,CACF,CAAC;EAEX;AACF"}
@@ -21,6 +21,14 @@ export default class WmWizardstep extends BaseComponent {
21
21
  wizard.addWizardStep(this);
22
22
  super.componentDidMount();
23
23
  }
24
+ onPropertyChange(name, $new, $old) {
25
+ super.onPropertyChange(name, $new, $old);
26
+ switch (name) {
27
+ case 'title':
28
+ const wizard = this.parent;
29
+ wizard === null || wizard === void 0 ? void 0 : wizard.refresh();
30
+ }
31
+ }
24
32
  setActive() {
25
33
  this.updateState({
26
34
  active: true
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","BaseComponent","BaseComponentState","WmWizardstepProps","DEFAULT_CLASS","WmWizardstepState","constructor","arguments","_defineProperty","WmWizardstep","props","componentDidMount","wizard","parent","addWizardStep","setActive","updateState","active","setInActive","isVisible","state","invokeNextCB","index","invokeEventCallback","proxy","invokePrevCB","invokeSkipCB","renderWidget","createElement","style","styles","root","_background","children"],"sources":["wizardstep.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmWizardstepProps from './wizardstep.props';\nimport { DEFAULT_CLASS, WmWizardstepStyles } from './wizardstep.styles';\nimport WmWizard from '../wizard.component';\n\nexport class WmWizardstepState extends BaseComponentState<WmWizardstepProps> {\n active = false;\n}\n\nexport default class WmWizardstep extends BaseComponent<WmWizardstepProps, WmWizardstepState, WmWizardstepStyles> {\n\n constructor(props: WmWizardstepProps) {\n super(props, DEFAULT_CLASS, new WmWizardstepProps(), new WmWizardstepState());\n }\n\n componentDidMount() {\n const wizard = (this.parent) as WmWizard;\n wizard.addWizardStep(this);\n super.componentDidMount();\n }\n\n setActive() {\n this.updateState({\n active: true\n } as WmWizardstepState);\n }\n\n setInActive() {\n this.updateState({\n active: false\n } as WmWizardstepState);\n }\n\n isVisible() {\n return super.isVisible() && this.state.active;\n }\n\n invokeNextCB(index: number) {\n this.invokeEventCallback('onNext', [this.proxy, this, index]);\n }\n\n invokePrevCB(index: number) {\n this.invokeEventCallback('onPrev', [this.proxy, this, index]);\n }\n\n invokeSkipCB(index: number) {\n this.invokeEventCallback('onSkip', [this.proxy, this, index]);\n }\n\n renderWidget(props: WmWizardstepProps) {\n return (<View style={this.styles.root}>{this._background}{props.children}</View>);\n }\n}\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AAEjG,OAAOC,iBAAiB,MAAM,oBAAoB;AAClD,SAASC,aAAa,QAA4B,qBAAqB;AAGvE,OAAO,MAAMC,iBAAiB,SAASH,kBAAkB,CAAoB;EAAAI,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,iBAClE,KAAK;EAAA;AAChB;AAEA,eAAe,MAAMC,YAAY,SAASR,aAAa,CAA2D;EAEhHK,WAAWA,CAACI,KAAwB,EAAE;IACpC,KAAK,CAACA,KAAK,EAAEN,aAAa,EAAE,IAAID,iBAAiB,CAAC,CAAC,EAAE,IAAIE,iBAAiB,CAAC,CAAC,CAAC;EAC/E;EAEAM,iBAAiBA,CAAA,EAAG;IAClB,MAAMC,MAAM,GAAI,IAAI,CAACC,MAAmB;IACxCD,MAAM,CAACE,aAAa,CAAC,IAAI,CAAC;IAC1B,KAAK,CAACH,iBAAiB,CAAC,CAAC;EAC3B;EAEAI,SAASA,CAAA,EAAG;IACV,IAAI,CAACC,WAAW,CAAC;MACfC,MAAM,EAAE;IACV,CAAsB,CAAC;EACzB;EAEAC,WAAWA,CAAA,EAAG;IACZ,IAAI,CAACF,WAAW,CAAC;MACfC,MAAM,EAAE;IACV,CAAsB,CAAC;EACzB;EAEAE,SAASA,CAAA,EAAG;IACV,OAAO,KAAK,CAACA,SAAS,CAAC,CAAC,IAAI,IAAI,CAACC,KAAK,CAACH,MAAM;EAC/C;EAEAI,YAAYA,CAACC,KAAa,EAAE;IAC1B,IAAI,CAACC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,IAAI,CAACC,KAAK,EAAE,IAAI,EAAEF,KAAK,CAAC,CAAC;EAC/D;EAEAG,YAAYA,CAACH,KAAa,EAAE;IAC1B,IAAI,CAACC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,IAAI,CAACC,KAAK,EAAE,IAAI,EAAEF,KAAK,CAAC,CAAC;EAC/D;EAEAI,YAAYA,CAACJ,KAAa,EAAE;IAC1B,IAAI,CAACC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,IAAI,CAACC,KAAK,EAAE,IAAI,EAAEF,KAAK,CAAC,CAAC;EAC/D;EAEAK,YAAYA,CAACjB,KAAwB,EAAE;IACrC,oBAAQX,KAAA,CAAA6B,aAAA,CAAC5B,IAAI;MAAC6B,KAAK,EAAE,IAAI,CAACC,MAAM,CAACC;IAAK,GAAE,IAAI,CAACC,WAAW,EAAEtB,KAAK,CAACuB,QAAe,CAAC;EAClF;AACF"}
1
+ {"version":3,"names":["React","View","BaseComponent","BaseComponentState","WmWizardstepProps","DEFAULT_CLASS","WmWizardstepState","constructor","arguments","_defineProperty","WmWizardstep","props","componentDidMount","wizard","parent","addWizardStep","onPropertyChange","name","$new","$old","refresh","setActive","updateState","active","setInActive","isVisible","state","invokeNextCB","index","invokeEventCallback","proxy","invokePrevCB","invokeSkipCB","renderWidget","createElement","style","styles","root","_background","children"],"sources":["wizardstep.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\n\nimport WmWizardstepProps from './wizardstep.props';\nimport { DEFAULT_CLASS, WmWizardstepStyles } from './wizardstep.styles';\nimport WmWizard from '../wizard.component';\n\nexport class WmWizardstepState extends BaseComponentState<WmWizardstepProps> {\n active = false;\n}\n\nexport default class WmWizardstep extends BaseComponent<WmWizardstepProps, WmWizardstepState, WmWizardstepStyles> {\n\n constructor(props: WmWizardstepProps) {\n super(props, DEFAULT_CLASS, new WmWizardstepProps(), new WmWizardstepState());\n }\n\n componentDidMount() {\n const wizard = (this.parent) as WmWizard;\n wizard.addWizardStep(this);\n super.componentDidMount();\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case 'title':\n const wizard = (this.parent) as WmWizard;\n wizard?.refresh();\n }\n }\n\n setActive() {\n this.updateState({\n active: true\n } as WmWizardstepState);\n }\n\n setInActive() {\n this.updateState({\n active: false\n } as WmWizardstepState);\n }\n\n isVisible() {\n return super.isVisible() && this.state.active;\n }\n\n invokeNextCB(index: number) {\n this.invokeEventCallback('onNext', [this.proxy, this, index]);\n }\n\n invokePrevCB(index: number) {\n this.invokeEventCallback('onPrev', [this.proxy, this, index]);\n }\n\n invokeSkipCB(index: number) {\n this.invokeEventCallback('onSkip', [this.proxy, this, index]);\n }\n\n renderWidget(props: WmWizardstepProps) {\n return (<View style={this.styles.root}>{this._background}{props.children}</View>);\n }\n}\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,+CAA+C;AAEjG,OAAOC,iBAAiB,MAAM,oBAAoB;AAClD,SAASC,aAAa,QAA4B,qBAAqB;AAGvE,OAAO,MAAMC,iBAAiB,SAASH,kBAAkB,CAAoB;EAAAI,YAAA;IAAA,SAAAC,SAAA;IAAAC,eAAA,iBAClE,KAAK;EAAA;AAChB;AAEA,eAAe,MAAMC,YAAY,SAASR,aAAa,CAA2D;EAEhHK,WAAWA,CAACI,KAAwB,EAAE;IACpC,KAAK,CAACA,KAAK,EAAEN,aAAa,EAAE,IAAID,iBAAiB,CAAC,CAAC,EAAE,IAAIE,iBAAiB,CAAC,CAAC,CAAC;EAC/E;EAEAM,iBAAiBA,CAAA,EAAG;IAClB,MAAMC,MAAM,GAAI,IAAI,CAACC,MAAmB;IACxCD,MAAM,CAACE,aAAa,CAAC,IAAI,CAAC;IAC1B,KAAK,CAACH,iBAAiB,CAAC,CAAC;EAC3B;EAEAI,gBAAgBA,CAACC,IAAY,EAAEC,IAAS,EAAEC,IAAS,EAAE;IACnD,KAAK,CAACH,gBAAgB,CAACC,IAAI,EAAEC,IAAI,EAAEC,IAAI,CAAC;IACxC,QAAOF,IAAI;MACT,KAAK,OAAO;QACV,MAAMJ,MAAM,GAAI,IAAI,CAACC,MAAmB;QACxCD,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEO,OAAO,CAAC,CAAC;IACrB;EACF;EAEAC,SAASA,CAAA,EAAG;IACV,IAAI,CAACC,WAAW,CAAC;MACfC,MAAM,EAAE;IACV,CAAsB,CAAC;EACzB;EAEAC,WAAWA,CAAA,EAAG;IACZ,IAAI,CAACF,WAAW,CAAC;MACfC,MAAM,EAAE;IACV,CAAsB,CAAC;EACzB;EAEAE,SAASA,CAAA,EAAG;IACV,OAAO,KAAK,CAACA,SAAS,CAAC,CAAC,IAAI,IAAI,CAACC,KAAK,CAACH,MAAM;EAC/C;EAEAI,YAAYA,CAACC,KAAa,EAAE;IAC1B,IAAI,CAACC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,IAAI,CAACC,KAAK,EAAE,IAAI,EAAEF,KAAK,CAAC,CAAC;EAC/D;EAEAG,YAAYA,CAACH,KAAa,EAAE;IAC1B,IAAI,CAACC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,IAAI,CAACC,KAAK,EAAE,IAAI,EAAEF,KAAK,CAAC,CAAC;EAC/D;EAEAI,YAAYA,CAACJ,KAAa,EAAE;IAC1B,IAAI,CAACC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,IAAI,CAACC,KAAK,EAAE,IAAI,EAAEF,KAAK,CAAC,CAAC;EAC/D;EAEAK,YAAYA,CAACtB,KAAwB,EAAE;IACrC,oBAAQX,KAAA,CAAAkC,aAAA,CAACjC,IAAI;MAACkC,KAAK,EAAE,IAAI,CAACC,MAAM,CAACC;IAAK,GAAE,IAAI,CAACC,WAAW,EAAE3B,KAAK,CAAC4B,QAAe,CAAC;EAClF;AACF"}
@@ -3,7 +3,8 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
3
3
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
4
4
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
5
5
  import React from 'react';
6
- import { SectionList, Text, View, FlatList } from 'react-native';
6
+ import { SectionList, Text, View } from 'react-native';
7
+ import { FlatList } from 'react-native-gesture-handler';
7
8
  import { isArray, isEmpty, isNil, round } from 'lodash-es';
8
9
  import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';
9
10
  import { getGroupedData, isDefined } from "@wavemaker/app-rn-runtime/core/utils";
@@ -250,7 +251,7 @@ export default class WmList extends BaseComponent {
250
251
  key: props.name + '_' + (isHorizontal ? 'H' : 'V') + props.itemsperrow.xs,
251
252
  keyExtractor: (item, i) => this.generateItemKey(item, i, props),
252
253
  horizontal: isHorizontal,
253
- data: v.data || [],
254
+ data: isEmpty(v.data[0]) ? [] : v.data,
254
255
  ListEmptyComponent: itemInfo => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props),
255
256
  renderItem: itemInfo => this.renderItem(itemInfo.item, itemInfo.index, props)
256
257
  }, isHorizontal ? {} : {
@@ -1 +1 @@
1
- {"version":3,"names":["React","SectionList","Text","View","FlatList","isArray","isEmpty","isNil","round","BaseComponent","BaseComponentState","getGroupedData","isDefined","Tappable","DefaultKeyExtractor","WmLabel","WmIcon","WmListProps","DEFAULT_CLASS","WmListState","constructor","arguments","_defineProperty","WmList","props","isSelected","$item","selectedItem","state","selecteditem","indexOf","onSelect","$index","triggerTapEvent","length","undefined","disableitem","multiselect","index","selectionlimit","push","invokeEventCallback","splice","selectedItemWidgets","itemWidgets","updateState","selectedindex","proxy","selectFirstItem","initialized","dataset","groupby","deselectAll","setGroupData","items","dataItems","groupedData","match","orderby","dateformat","_this$keyExtractor","keyExtractor","clear","onPropertyChange","name","$new","$old","data","direction","key","_this$keyExtractor2","selectfirstitem","pop","componentDidMount","_props$dataset","setTimeout","componentDidUpdate","prevProps","prevState","snapshot","getDefaultStyles","isHorizontal","theme","getStyle","defaultClass","getIndex","item","generateItemKey","itemkey","_showSkeleton","getKey","renderItem","cols","getNoOfColumns","createElement","_extends","getTestPropsForAction","onTap","onLongTap","onDoubleTap","styles","width","paddingRight","marginRight","margin","style","itemclass","id","getTestId","iconclass","selectedIcon","renderHeader","title","groupHeading","subheading","heading","flex","flexDirection","listIcon","caption","renderEmptyMessage","emptyMessage","nodatamessage","renderLoadingIcon","loadingIcon","loadingicon","loadingdatamsg","itemsperrow","xs","renderWithFlatList","root","map","v","i","marginBottom","horizontal","ListEmptyComponent","itemInfo","numColumns","getSectionListData","renderWithSectionList","onEndReached","_ref","distanceFromEnd","setState","currentPage","contentContainerStyle","onEndReachedThreshold","sections","renderSectionHeader","_ref2","section","renderSectionFooter","loadingdata","renderWidget","_background"],"sources":["list.component.tsx"],"sourcesContent":["import React from 'react';\nimport { SectionList, Text, View, TouchableWithoutFeedback, FlatList } from 'react-native';\nimport { isArray, isEmpty, isNil, round } from 'lodash-es';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport {getGroupedData, isDefined} from \"@wavemaker/app-rn-runtime/core/utils\";\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { DefaultKeyExtractor } from '@wavemaker/app-rn-runtime/core/key.extractor';\nimport WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\n\nimport WmListProps from './list.props';\nimport { DEFAULT_CLASS, WmListStyles } from './list.styles';\n\n\nexport class WmListState extends BaseComponentState<WmListProps> {\n public selectedindex: any;\n groupedData: Array<any> = [];\n currentPage: number = 1;\n}\n\nexport default class WmList extends BaseComponent<WmListProps, WmListState, WmListStyles> {\n\n private itemWidgets = [] as any[];\n private selectedItemWidgets = {} as any;\n private keyExtractor = new DefaultKeyExtractor();\n \n constructor(props: WmListProps) {\n super(props, DEFAULT_CLASS, new WmListProps(), new WmListState());\n }\n\n private isSelected($item: any) {\n const selectedItem = this.state.props.selecteditem;\n if (isArray(selectedItem)) {\n return selectedItem.indexOf($item) >= 0;\n }\n return selectedItem === $item;\n }\n\n private onSelect($item: any, $index: number | string, triggerTapEvent = false) {\n const props = this.state.props;\n let selectedItem = null as any;\n if (props.disableitem !== true \n && (typeof props.disableitem !== 'function' || !props.disableitem($item, $index))) {\n if (props.multiselect) {\n selectedItem = [...(props.selecteditem || [])];\n const index = selectedItem.indexOf($item);\n if (index < 0) {\n if ((!props.selectionlimit)\n || props.selectionlimit < 0\n || selectedItem.length < props.selectionlimit) {\n selectedItem.push($item);\n } else {\n this.invokeEventCallback('onSelectionlimitexceed', [null, this]);\n }\n } else {\n selectedItem.splice(index, 1);\n }\n } else {\n if (props.selecteditem === $item) {\n selectedItem = null;\n } else {\n selectedItem = $item;\n }\n }\n this.selectedItemWidgets = this.itemWidgets[$index as number];\n this.updateState({\n props: { selecteditem: selectedItem },\n selectedindex: $index\n } as WmListState, () => {\n this.invokeEventCallback('onSelect', [this.proxy, $item]);\n triggerTapEvent && this.invokeEventCallback('onTap', [null, this.proxy]);\n });\n }\n }\n\n private selectFirstItem() {\n const props = this.state.props;\n if (this.initialized\n && props.dataset\n && props.dataset.length) {\n const index = props.groupby ? '00': 0;\n this.onSelect(props.dataset[0], index);\n }\n }\n\n private deselectAll() {\n this.updateState({\n props: { selecteditem: null },\n selectedindex: -1\n } as WmListState);\n }\n\n setGroupData(items: any) {\n const dataItems = items;\n const props = this.state.props;\n if (props.groupby) {\n const groupedData = dataItems && getGroupedData(dataItems, props.groupby, props.match, props.orderby, props.dateformat, this);\n this.updateState({\n groupedData: groupedData\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n }\n\n public onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n switch(name) {\n case 'selectfirstitem':\n if ($new) {\n this.selectFirstItem();\n }\n break;\n case 'dataset':\n if (this.state.props.groupby) {\n this.setGroupData($new);\n } else {\n const data = isArray($new) ? $new : (!isEmpty($new) && isDefined($new) ? [$new] : []);\n this.updateState({\n groupedData: (data[0] || props.direction === 'horizontal' ? [{\n key: '',\n data: data\n }] : [])\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n this.itemWidgets = [];\n if (props.selectfirstitem) {\n this.selectFirstItem();\n } else {\n this.deselectAll();\n }\n break;\n case 'groupby':\n case 'match':\n this.setGroupData(this.state.props.dataset);\n break;\n case 'multiselect':\n if ($new) {\n if (!isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem ? \n [this.state.props.selecteditem] : [];\n }\n } else if (isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem.pop();\n }\n }\n }\n\n componentDidMount() {\n const props = this.state.props;\n if (this.state.props.selectfirstitem && props.dataset?.length) {\n setTimeout(() => {\n this.onSelect(props.dataset[0], 0);\n });\n }\n super.componentDidMount();\n }\n\n componentDidUpdate(prevProps: WmListProps, prevState: WmListState, snapshot?: any) {\n super.componentDidUpdate && super.componentDidUpdate(prevProps, prevState, snapshot);\n this.invokeEventCallback('onRender', [this, this.state.props.dataset]);\n }\n\n getDefaultStyles() {\n const isHorizontal = this.state.props.direction === 'horizontal';\n return this.theme.getStyle(`${this.defaultClass} ${isHorizontal ? 'app-horizontal-list' : 'app-vertical-list'}`);\n }\n\n getIndex(item: any) {\n return this.state.props.dataset.indexOf(item);\n }\n\n private generateItemKey(item: any, index: number, props: WmListProps) {\n if (props.itemkey && item && !this._showSkeleton) {\n return props.itemkey(item, index);\n }\n return 'list_item_' + this.keyExtractor.getKey(item, true);\n }\n\n private renderItem(item: any, index: number, props: WmListProps) {\n const cols = this. getNoOfColumns();\n const isHorizontal = (props.direction === 'horizontal');\n return ( \n <Tappable\n {...this.getTestPropsForAction(`item${index}`)}\n onTap={() => this.onSelect(item, index, true)}\n onLongTap={() => this.invokeEventCallback('onLongtap', [null, this.proxy])}\n onDoubleTap={() => this.invokeEventCallback('onDoubletap', [null, this.proxy])}\n styles={\n [\n cols ? {\n width: round(100/cols, 2) + '%'\n } : null,\n cols || isHorizontal? {\n paddingRight: (isNil(this.styles.item.marginRight) \n ? this.styles.item.margin : this.styles.item.marginRight) || 4\n }: null\n ]\n }>\n <View style={[\n this.styles.item,\n props.itemclass ? this.theme.getStyle(props.itemclass(item, index)) : null,\n this.isSelected(item) ? this.styles.selectedItem : {}]}>\n { props.renderItem(item, index, this)}\n { this.isSelected(item) ? (\n <WmIcon id={this.getTestId('icon' + index)}iconclass='wi wi-check-circle' styles={this.styles.selectedIcon} />\n ) : null}\n </View>\n </Tappable>\n );\n }\n\n private renderHeader(props: WmListProps, title: string) {\n return props.groupby ? (\n <Text style={this.styles.groupHeading}>{title}</Text>\n ) : (props.iconclass || props.title || props.subheading) ? (\n <View style={this.styles.heading}>\n <View style={{flex: 1, flexDirection: 'row'}}>\n <WmIcon id={this.getTestId('icon')} styles={this.styles.listIcon} iconclass={props.iconclass}></WmIcon>\n <View>\n <WmLabel id={this.getTestId('title')} styles={this.styles.title} caption={props.title}></WmLabel>\n <WmLabel id={this.getTestId('subheading')} styles={this.styles.subheading} caption={props.subheading}></WmLabel>\n </View>\n </View>\n </View>) : null;\n }\n\n private renderEmptyMessage(isHorizontal: boolean, item: any, index: any, props: WmListProps) {\n return (<WmLabel id={this.getTestId('emptymsg')} styles={this.styles.emptyMessage} caption={props.nodatamessage}></WmLabel>);\n }\n\n private renderLoadingIcon(props: WmListProps) {\n return (<WmIcon\n id={this.getTestId('loadingicon')}\n styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\n caption={props.loadingdatamsg}></WmIcon>)\n }\n\n public getNoOfColumns() {\n const props = this.state.props;\n if(props.direction === 'vertical') {\n return props.itemsperrow.xs;\n }\n return 0;\n }\n\n private renderWithFlatList(props: WmListProps, isHorizontal = false) {\n return (\n <View style={this.styles.root}>\n {!isEmpty(this.state.groupedData) ? this.state.groupedData.map((v: any, i) => ((\n <View style={{marginBottom: 16}} key={v.key || this.keyExtractor.getKey(v, true)}>\n {this.renderHeader(props, v.key)}\n <FlatList\n key={props.name + '_' + (isHorizontal ? 'H' : 'V') + props.itemsperrow.xs}\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n horizontal = {isHorizontal}\n data={v.data || []}\n ListEmptyComponent = {(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)} \n {...(isHorizontal ? {} : {numColumns : this.getNoOfColumns()})}> \n </FlatList>\n </View>\n ))) : this.renderEmptyMessage(isHorizontal, null, null,props)\n }\n </View>);\n }\n\n private getSectionListData() {\n if (this._showSkeleton) {\n return [{\n key: '',\n data: [{}, {}, {}]\n }];\n } else if (this.state.groupedData \n && this.state.groupedData[0] \n && this.state.groupedData[0]['data'].length) {\n return this.state.groupedData;\n }\n return [];\n }\n\n private renderWithSectionList(props: WmListProps, isHorizontal = false) { \n return (\n <SectionList\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n horizontal = {isHorizontal}\n onEndReached={({distanceFromEnd}) => {\n this.setState({ currentPage: this.state.currentPage + 1 } as WmListState);\n this.invokeEventCallback('onEndReached', [null, this]);\n }}\n contentContainerStyle={this.styles.root}\n onEndReachedThreshold={0.3}\n sections={this.getSectionListData()}\n renderSectionHeader={({ section: {key, data}}) => {\n return this.renderHeader(props, key);\n }}\n renderSectionFooter={() => props.loadingdata ? this.renderLoadingIcon(props) : null}\n ListEmptyComponent = {(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}>\n </SectionList>\n );\n }\n\n renderWidget(props: WmListProps) {\n this.invokeEventCallback('onBeforedatarender', [this, this.state.props.dataset]);\n const isHorizontal = (props.direction === 'horizontal');\n return (\n <View style={isHorizontal ? null : { width: '100%' }}>\n {this._background}\n {(isHorizontal || !props.groupby) ?\n this.renderWithFlatList(props, isHorizontal)\n : this.renderWithSectionList(props, isHorizontal)}\n </View>);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","SectionList","Text","View","FlatList","isArray","isEmpty","isNil","round","BaseComponent","BaseComponentState","getGroupedData","isDefined","Tappable","DefaultKeyExtractor","WmLabel","WmIcon","WmListProps","DEFAULT_CLASS","WmListState","constructor","arguments","_defineProperty","WmList","props","isSelected","$item","selectedItem","state","selecteditem","indexOf","onSelect","$index","triggerTapEvent","length","undefined","disableitem","multiselect","index","selectionlimit","push","invokeEventCallback","splice","selectedItemWidgets","itemWidgets","updateState","selectedindex","proxy","selectFirstItem","initialized","dataset","groupby","deselectAll","setGroupData","items","dataItems","groupedData","match","orderby","dateformat","_this$keyExtractor","keyExtractor","clear","onPropertyChange","name","$new","$old","data","direction","key","_this$keyExtractor2","selectfirstitem","pop","componentDidMount","_props$dataset","setTimeout","componentDidUpdate","prevProps","prevState","snapshot","getDefaultStyles","isHorizontal","theme","getStyle","defaultClass","getIndex","item","generateItemKey","itemkey","_showSkeleton","getKey","renderItem","cols","getNoOfColumns","createElement","_extends","getTestPropsForAction","onTap","onLongTap","onDoubleTap","styles","width","paddingRight","marginRight","margin","style","itemclass","id","getTestId","iconclass","selectedIcon","renderHeader","title","groupHeading","subheading","heading","flex","flexDirection","listIcon","caption","renderEmptyMessage","emptyMessage","nodatamessage","renderLoadingIcon","loadingIcon","loadingicon","loadingdatamsg","itemsperrow","xs","renderWithFlatList","root","map","v","i","marginBottom","horizontal","ListEmptyComponent","itemInfo","numColumns","getSectionListData","renderWithSectionList","onEndReached","_ref","distanceFromEnd","setState","currentPage","contentContainerStyle","onEndReachedThreshold","sections","renderSectionHeader","_ref2","section","renderSectionFooter","loadingdata","renderWidget","_background"],"sources":["list.component.tsx"],"sourcesContent":["import React from 'react';\nimport { SectionList, Text, View, TouchableWithoutFeedback } from 'react-native';\nimport { FlatList } from 'react-native-gesture-handler';\nimport { isArray, isEmpty, isNil, round } from 'lodash-es';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport {getGroupedData, isDefined} from \"@wavemaker/app-rn-runtime/core/utils\";\nimport { Tappable } from '@wavemaker/app-rn-runtime/core/tappable.component';\nimport { DefaultKeyExtractor } from '@wavemaker/app-rn-runtime/core/key.extractor';\nimport WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\n\nimport WmListProps from './list.props';\nimport { DEFAULT_CLASS, WmListStyles } from './list.styles';\n\n\nexport class WmListState extends BaseComponentState<WmListProps> {\n public selectedindex: any;\n groupedData: Array<any> = [];\n currentPage: number = 1;\n}\n\nexport default class WmList extends BaseComponent<WmListProps, WmListState, WmListStyles> {\n\n private itemWidgets = [] as any[];\n private selectedItemWidgets = {} as any;\n private keyExtractor = new DefaultKeyExtractor();\n \n constructor(props: WmListProps) {\n super(props, DEFAULT_CLASS, new WmListProps(), new WmListState());\n }\n\n private isSelected($item: any) {\n const selectedItem = this.state.props.selecteditem;\n if (isArray(selectedItem)) {\n return selectedItem.indexOf($item) >= 0;\n }\n return selectedItem === $item;\n }\n\n private onSelect($item: any, $index: number | string, triggerTapEvent = false) {\n const props = this.state.props;\n let selectedItem = null as any;\n if (props.disableitem !== true \n && (typeof props.disableitem !== 'function' || !props.disableitem($item, $index))) {\n if (props.multiselect) {\n selectedItem = [...(props.selecteditem || [])];\n const index = selectedItem.indexOf($item);\n if (index < 0) {\n if ((!props.selectionlimit)\n || props.selectionlimit < 0\n || selectedItem.length < props.selectionlimit) {\n selectedItem.push($item);\n } else {\n this.invokeEventCallback('onSelectionlimitexceed', [null, this]);\n }\n } else {\n selectedItem.splice(index, 1);\n }\n } else {\n if (props.selecteditem === $item) {\n selectedItem = null;\n } else {\n selectedItem = $item;\n }\n }\n this.selectedItemWidgets = this.itemWidgets[$index as number];\n this.updateState({\n props: { selecteditem: selectedItem },\n selectedindex: $index\n } as WmListState, () => {\n this.invokeEventCallback('onSelect', [this.proxy, $item]);\n triggerTapEvent && this.invokeEventCallback('onTap', [null, this.proxy]);\n });\n }\n }\n\n private selectFirstItem() {\n const props = this.state.props;\n if (this.initialized\n && props.dataset\n && props.dataset.length) {\n const index = props.groupby ? '00': 0;\n this.onSelect(props.dataset[0], index);\n }\n }\n\n private deselectAll() {\n this.updateState({\n props: { selecteditem: null },\n selectedindex: -1\n } as WmListState);\n }\n\n setGroupData(items: any) {\n const dataItems = items;\n const props = this.state.props;\n if (props.groupby) {\n const groupedData = dataItems && getGroupedData(dataItems, props.groupby, props.match, props.orderby, props.dateformat, this);\n this.updateState({\n groupedData: groupedData\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n }\n\n public onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n switch(name) {\n case 'selectfirstitem':\n if ($new) {\n this.selectFirstItem();\n }\n break;\n case 'dataset':\n if (this.state.props.groupby) {\n this.setGroupData($new);\n } else {\n const data = isArray($new) ? $new : (!isEmpty($new) && isDefined($new) ? [$new] : []);\n this.updateState({\n groupedData: (data[0] || props.direction === 'horizontal' ? [{\n key: '',\n data: data\n }] : [])\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n this.itemWidgets = [];\n if (props.selectfirstitem) {\n this.selectFirstItem();\n } else {\n this.deselectAll();\n }\n break;\n case 'groupby':\n case 'match':\n this.setGroupData(this.state.props.dataset);\n break;\n case 'multiselect':\n if ($new) {\n if (!isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem ? \n [this.state.props.selecteditem] : [];\n }\n } else if (isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem.pop();\n }\n }\n }\n\n componentDidMount() {\n const props = this.state.props;\n if (this.state.props.selectfirstitem && props.dataset?.length) {\n setTimeout(() => {\n this.onSelect(props.dataset[0], 0);\n });\n }\n super.componentDidMount();\n }\n\n componentDidUpdate(prevProps: WmListProps, prevState: WmListState, snapshot?: any) {\n super.componentDidUpdate && super.componentDidUpdate(prevProps, prevState, snapshot);\n this.invokeEventCallback('onRender', [this, this.state.props.dataset]);\n }\n\n getDefaultStyles() {\n const isHorizontal = this.state.props.direction === 'horizontal';\n return this.theme.getStyle(`${this.defaultClass} ${isHorizontal ? 'app-horizontal-list' : 'app-vertical-list'}`);\n }\n\n getIndex(item: any) {\n return this.state.props.dataset.indexOf(item);\n }\n\n private generateItemKey(item: any, index: number, props: WmListProps) {\n if (props.itemkey && item && !this._showSkeleton) {\n return props.itemkey(item, index);\n }\n return 'list_item_' + this.keyExtractor.getKey(item, true);\n }\n\n private renderItem(item: any, index: number, props: WmListProps) {\n const cols = this. getNoOfColumns();\n const isHorizontal = (props.direction === 'horizontal');\n return ( \n <Tappable\n {...this.getTestPropsForAction(`item${index}`)}\n onTap={() => this.onSelect(item, index, true)}\n onLongTap={() => this.invokeEventCallback('onLongtap', [null, this.proxy])}\n onDoubleTap={() => this.invokeEventCallback('onDoubletap', [null, this.proxy])}\n styles={\n [\n cols ? {\n width: round(100/cols, 2) + '%'\n } : null,\n cols || isHorizontal? {\n paddingRight: (isNil(this.styles.item.marginRight) \n ? this.styles.item.margin : this.styles.item.marginRight) || 4\n }: null\n ]\n }>\n <View style={[\n this.styles.item,\n props.itemclass ? this.theme.getStyle(props.itemclass(item, index)) : null,\n this.isSelected(item) ? this.styles.selectedItem : {}]}>\n { props.renderItem(item, index, this)}\n { this.isSelected(item) ? (\n <WmIcon id={this.getTestId('icon' + index)}iconclass='wi wi-check-circle' styles={this.styles.selectedIcon} />\n ) : null}\n </View>\n </Tappable>\n );\n }\n\n private renderHeader(props: WmListProps, title: string) {\n return props.groupby ? (\n <Text style={this.styles.groupHeading}>{title}</Text>\n ) : (props.iconclass || props.title || props.subheading) ? (\n <View style={this.styles.heading}>\n <View style={{flex: 1, flexDirection: 'row'}}>\n <WmIcon id={this.getTestId('icon')} styles={this.styles.listIcon} iconclass={props.iconclass}></WmIcon>\n <View>\n <WmLabel id={this.getTestId('title')} styles={this.styles.title} caption={props.title}></WmLabel>\n <WmLabel id={this.getTestId('subheading')} styles={this.styles.subheading} caption={props.subheading}></WmLabel>\n </View>\n </View>\n </View>) : null;\n }\n\n private renderEmptyMessage(isHorizontal: boolean, item: any, index: any, props: WmListProps) {\n return (<WmLabel id={this.getTestId('emptymsg')} styles={this.styles.emptyMessage} caption={props.nodatamessage}></WmLabel>);\n }\n\n private renderLoadingIcon(props: WmListProps) {\n return (<WmIcon\n id={this.getTestId('loadingicon')}\n styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\n caption={props.loadingdatamsg}></WmIcon>)\n }\n\n public getNoOfColumns() {\n const props = this.state.props;\n if(props.direction === 'vertical') {\n return props.itemsperrow.xs;\n }\n return 0;\n }\n\n private renderWithFlatList(props: WmListProps, isHorizontal = false) {\n return (\n <View style={this.styles.root}>\n {!isEmpty(this.state.groupedData) ? this.state.groupedData.map((v: any, i) => ((\n <View style={{marginBottom: 16}} key={v.key || this.keyExtractor.getKey(v, true)}>\n {this.renderHeader(props, v.key)}\n <FlatList\n key={props.name + '_' + (isHorizontal ? 'H' : 'V') + props.itemsperrow.xs}\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n horizontal = {isHorizontal}\n data={isEmpty(v.data[0]) ? []: v.data}\n ListEmptyComponent = {(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)} \n {...(isHorizontal ? {} : {numColumns : this.getNoOfColumns()})}> \n </FlatList>\n </View>\n ))) : this.renderEmptyMessage(isHorizontal, null, null,props)\n }\n </View>);\n }\n\n private getSectionListData() {\n if (this._showSkeleton) {\n return [{\n key: '',\n data: [{}, {}, {}]\n }];\n } else if (this.state.groupedData \n && this.state.groupedData[0] \n && this.state.groupedData[0]['data'].length) {\n return this.state.groupedData;\n }\n return [];\n }\n\n private renderWithSectionList(props: WmListProps, isHorizontal = false) { \n return (\n <SectionList\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n horizontal = {isHorizontal}\n onEndReached={({distanceFromEnd}) => {\n this.setState({ currentPage: this.state.currentPage + 1 } as WmListState);\n this.invokeEventCallback('onEndReached', [null, this]);\n }}\n contentContainerStyle={this.styles.root}\n onEndReachedThreshold={0.3}\n sections={this.getSectionListData()}\n renderSectionHeader={({ section: {key, data}}) => {\n return this.renderHeader(props, key);\n }}\n renderSectionFooter={() => props.loadingdata ? this.renderLoadingIcon(props) : null}\n ListEmptyComponent = {(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}>\n </SectionList>\n );\n }\n\n renderWidget(props: WmListProps) {\n this.invokeEventCallback('onBeforedatarender', [this, this.state.props.dataset]);\n const isHorizontal = (props.direction === 'horizontal');\n return (\n <View style={isHorizontal ? null : { width: '100%' }}>\n {this._background}\n {(isHorizontal || !props.groupby) ?\n this.renderWithFlatList(props, isHorizontal)\n : this.renderWithSectionList(props, isHorizontal)}\n </View>);\n }\n}\n"],"mappings":"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"}
@@ -201,13 +201,13 @@ export class BaseNumberComponent extends BaseComponent {
201
201
  */
202
202
  getValueInRange(value) {
203
203
  const props = this.state.props;
204
- if (!isNaN(props.minvalue) && value < props.minvalue) {
204
+ if (props.minvalue && !isNaN(props.minvalue) && value < props.minvalue) {
205
205
  this.updateState({
206
206
  errorType: 'minvalue'
207
207
  });
208
208
  return props.minvalue;
209
209
  }
210
- if (!isNaN(props.maxvalue) && value > props.maxvalue) {
210
+ if (props.maxvalue && !isNaN(props.maxvalue) && value > props.maxvalue) {
211
211
  this.updateState({
212
212
  errorType: 'maxvalue'
213
213
  });
@@ -1 +1 @@
1
- {"version":3,"names":["includes","intersection","isNaN","isFinite","toArray","BaseComponent","BaseComponentState","DEFAULT_CLASS","Platform","validateField","BaseNumberState","constructor","arguments","_defineProperty","BaseNumberComponent","props","defaultClass","length","undefined","defaultProps","defaultState","DECIMAL","GROUP","onChange","event","state","updateon","updateDatavalue","target","value","focus","_this$widgetRef","widgetRef","onChangeText","updateState","textValue","validate","invokeChange","e","OS","cursor","selectionStart","setState","validationObj","isValid","errorType","handleValidation","regexp","condition","RegExp","test","parseNumber","val","parts","split","NaN","number","Number","join","decimal","sum","parseFloat","toFixed","Object","is","source","model","toString","oldValue","datavalue","validNumber","isValidNumber","invokeEventCallback","proxy","onFieldChange","onBlur","newVal","setTimeout","triggerValidation","oldVal","onFocus","countDecimals","decimalValue","validateInputEntry","$event","ctrlKey","key","validity","inputValue","step","preventDefault","getValueInRange","minvalue","maxvalue","required","isInteger","resetValidations","onPropertyChange","name","$new","$old","isDefault","bind"],"sources":["basenumber.component.ts"],"sourcesContent":["import { includes, intersection, isNaN, isFinite, toArray } from 'lodash';\nimport BaseNumberProps from '@wavemaker/app-rn-runtime/components/input/basenumber/basenumber.props';\nimport { BaseComponent, BaseComponentState } from \"@wavemaker/app-rn-runtime/core/base.component\";\nimport { BaseNumberStyles } from '@wavemaker/app-rn-runtime/components/input/basenumber/basenumber.styles';\nimport { DEFAULT_CLASS } from \"@wavemaker/app-rn-runtime/components/navigation/basenav/basenav.styles\";\nimport { Platform, TextInput } from 'react-native';\nimport { validateField } from '@wavemaker/app-rn-runtime/core/utils';\n\nexport class BaseNumberState <T extends BaseNumberProps> extends BaseComponentState<T> {\n isValid: boolean = true;\n textValue: string = '';\n isDefault = false;\n errorType = '';\n}\n\nexport abstract class BaseNumberComponent< T extends BaseNumberProps, S extends BaseNumberState<T>, L extends BaseNumberStyles> extends BaseComponent<T, S, L> {\n private DECIMAL;\n private GROUP;\n public widgetRef: TextInput | null = null;\n private cursor: any = 0;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n this.DECIMAL = '.';\n this.GROUP = ',';\n }\n\n onChange(event: any) {\n if (this.state.props.updateon === 'default') {\n this.updateDatavalue(event.target.value, event);\n }\n }\n\n focus() {\n this?.widgetRef?.focus();\n }\n\n onChangeText(value: any) {\n this.updateState({\n textValue: value\n } as S, () => {\n if (this.state.props.updateon === 'default') {\n this.validate(value);\n this.updateDatavalue(value, null);\n }\n }\n );\n }\n\n invokeChange(e: any) {\n if (Platform.OS === 'web') {\n this.cursor = e.target.selectionStart;\n this.setState({ textValue: e.target.value });\n }\n }\n\n validate(value: any) {\n const validationObj = validateField(this.state.props, value);\n this.updateState({\n isValid: validationObj.isValid,\n errorType: validationObj.errorType\n } as S);\n\n }\n\n handleValidation(value: any) {\n const props = this.state.props;\n if (props.regexp) {\n const condition = new RegExp(props.regexp, 'g');\n return condition.test(value);\n }\n return true;\n }\n\n /**\n * Method parses the Localized number(string) to a valid number.\n * if the string dose not result to a valid number then returns NaN.\n * @param {string} val Localized number.\n * @returns {number}\n */\n private parseNumber(val: string): any {\n // splits string into two parts. decimal and number.\n const parts = val.split(this.DECIMAL);\n if (!parts.length) {\n return;\n }\n if (parts.length > 2) {\n return NaN;\n }\n // If number have decimal point and not have a decimal value then return.\n if (parts[1] === '') {\n return NaN;\n }\n // replaces all group separators form the number.\n const number = Number(parts[0].split(this.GROUP).join(''));\n const decimal = Number(`0.${parts[1] || 0}`);\n if (Number.isNaN(number) || Number.isNaN(decimal)) {\n return NaN;\n }\n const sum = parts.length > 1 ? parseFloat((number + decimal).toFixed(parts[1].length)) : number + decimal;\n // if the number is negative then calculate the number as number - decimal\n // Ex: number = -123 and decimal = 0.45 then number - decimal = -123-045 = -123.45\n // If entered number is -0.1 to -0.9 then the number is -0 and decimal is 0.1 to 0.9. Now calaculate the number as number-decimal\n // Ex: number = -0 and decimal = 0.1 then number-decimal = -0-0.1 = -0.1\n if (number === 0) {\n return Object.is(0, number) ? sum : number - decimal;\n }\n return number > 0 ? sum : number - decimal;\n }\n\n updateDatavalue(value: any, event?: any, source?: any) {\n const model = value && this.parseNumber(value.toString());\n const props = this.state.props;\n const oldValue = props.datavalue;\n if (value === oldValue) {\n return;\n }\n const validNumber = this.isValidNumber(model);\n if (!validNumber) {\n this.invokeEventCallback('onError', [ event, this.proxy, value, oldValue ]);\n return;\n }\n\n this.updateState({\n props: {\n datavalue: model\n }\n } as S, () => {\n !this.props.onFieldChange && value !== oldValue && this.invokeEventCallback('onChange', [event, this.proxy, value, oldValue]);\n if (source === 'blur') {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }\n });\n }\n\n onBlur(event: any) {\n let newVal = event.target.value || this.state.textValue;\n this.validate(newVal);\n if (newVal === '') {\n setTimeout(() => {\n this.props.triggerValidation && this.props.triggerValidation();\n })\n }\n if (this.state.props.updateon === 'blur') {\n let oldVal = this.state.props.datavalue || '';\n if (oldVal !== newVal) {\n this.updateDatavalue(newVal, event, 'blur');\n } else {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }\n }\n }\n\n onFocus(event: any) {\n this.invokeEventCallback('onFocus', [ event, this.proxy]);\n }\n\n /**\n * returns the number of decimal places a number have.\n * @param value: number\n * @returns {number}\n */\n private countDecimals(value: any) {\n if (value && ((value % 1) !== 0)) {\n const decimalValue = value.toString().split('.')[1];\n return decimalValue && decimalValue.length;\n }\n return 0;\n }\n\n public validateInputEntry($event: any) {\n const props = this.state.props;\n\n // allow actions if control key is pressed or if backspace is pressed. (for Mozilla).\n if ($event.ctrlKey || includes(['Backspace', 'ArrowRight', 'ArrowLeft', 'Tab', 'Enter', 'Delete'], $event.key)) {\n return;\n }\n\n const validity = new RegExp(`^[\\\\d\\\\s-,.e+${this.GROUP}${this.DECIMAL}]$`, 'i');\n const inputValue = $event.target.value;\n // validates entering of decimal values only when user provides decimal limit(i.e step contains decimal values).\n if (inputValue && this.countDecimals(props.step) && (this.countDecimals(inputValue) >= this.countDecimals(props.step))) {\n $event.preventDefault();\n }\n // validates if user entered an invalid character.\n if (!validity.test($event.key)) {\n $event.preventDefault();\n }\n // a decimal value can be entered only once in the input.\n if (includes(inputValue, this.DECIMAL) && $event.key === this.DECIMAL) {\n $event.preventDefault();\n }\n // 'e' can be entered only once in the input.\n if (intersection(toArray(inputValue), ['e', 'E']).length && includes('eE', $event.key)) {\n $event.preventDefault();\n }\n if ((includes(inputValue, '+') || includes(inputValue, '-')) && ($event.key === '+' || $event.key === '-')) {\n $event.preventDefault();\n }\n this.invokeEventCallback('onKeypress', [ $event, this.proxy]);\n }\n\n /**\n * returns a valid number by validating the minimum and maximum values.\n * @param {number} value\n * @returns {number}\n */\n private getValueInRange(value: number): number {\n const props = this.state.props;\n if (!isNaN(props.minvalue) && value < props.minvalue) {\n this.updateState({ errorType: 'minvalue'} as S);\n return props.minvalue;\n\n }\n if (!isNaN(props.maxvalue) && value > props.maxvalue) {\n this.updateState({ errorType: 'maxvalue'} as S);\n return props.maxvalue;\n }\n return value;\n }\n\n /**\n * Adds validations for the number before updating the widget model. like validating min and max value for the widget.\n * @param {number} val number to be validated\n * @returns {number}\n */\n private isValidNumber(val: number): boolean {\n const props = this.state.props;\n\n //empty number widget should not show validation error when required is false\n // @ts-ignore\n if (this.state.props.required === false && val === '') {\n return true;\n }\n // id number is infinite then consider it as invalid value\n if (isNaN(val) || !isFinite(val) || (!Number.isInteger(props.step) &&\n this.countDecimals(val) > this.countDecimals(props.step))) {\n this.updateState({\n isValid: false,\n } as S);\n return false;\n }\n if (val !== this.getValueInRange(val)) {\n this.updateState({\n isValid: false,\n } as S);\n return true;\n }\n this.resetValidations();\n return true;\n }\n\n // resets all the flags related to the widget's validation.\n protected resetValidations() {\n this.updateState({\n isValid: true,\n } as S);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'minvalue':\n case 'maxvalue':\n if ($new|| $old) {\n this.isValidNumber($new);\n }\n break;\n case 'datavalue':\n this.updateState({\n textValue: $new\n } as S\n );\n const isDefault = this.state.isDefault;\n if (isDefault) {\n this.updateState({ isDefault: false } as S, this.props.onFieldChange && this.props.onFieldChange.bind(this, 'datavalue', $new, $old, isDefault));\n } else {\n this.props.onFieldChange && this.props.onFieldChange('datavalue', $new, $old, isDefault);\n }\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["includes","intersection","isNaN","isFinite","toArray","BaseComponent","BaseComponentState","DEFAULT_CLASS","Platform","validateField","BaseNumberState","constructor","arguments","_defineProperty","BaseNumberComponent","props","defaultClass","length","undefined","defaultProps","defaultState","DECIMAL","GROUP","onChange","event","state","updateon","updateDatavalue","target","value","focus","_this$widgetRef","widgetRef","onChangeText","updateState","textValue","validate","invokeChange","e","OS","cursor","selectionStart","setState","validationObj","isValid","errorType","handleValidation","regexp","condition","RegExp","test","parseNumber","val","parts","split","NaN","number","Number","join","decimal","sum","parseFloat","toFixed","Object","is","source","model","toString","oldValue","datavalue","validNumber","isValidNumber","invokeEventCallback","proxy","onFieldChange","onBlur","newVal","setTimeout","triggerValidation","oldVal","onFocus","countDecimals","decimalValue","validateInputEntry","$event","ctrlKey","key","validity","inputValue","step","preventDefault","getValueInRange","minvalue","maxvalue","required","isInteger","resetValidations","onPropertyChange","name","$new","$old","isDefault","bind"],"sources":["basenumber.component.ts"],"sourcesContent":["import { includes, intersection, isNaN, isFinite, toArray } from 'lodash';\nimport BaseNumberProps from '@wavemaker/app-rn-runtime/components/input/basenumber/basenumber.props';\nimport { BaseComponent, BaseComponentState } from \"@wavemaker/app-rn-runtime/core/base.component\";\nimport { BaseNumberStyles } from '@wavemaker/app-rn-runtime/components/input/basenumber/basenumber.styles';\nimport { DEFAULT_CLASS } from \"@wavemaker/app-rn-runtime/components/navigation/basenav/basenav.styles\";\nimport { Platform, TextInput } from 'react-native';\nimport { validateField } from '@wavemaker/app-rn-runtime/core/utils';\n\nexport class BaseNumberState <T extends BaseNumberProps> extends BaseComponentState<T> {\n isValid: boolean = true;\n textValue: string = '';\n isDefault = false;\n errorType = '';\n}\n\nexport abstract class BaseNumberComponent< T extends BaseNumberProps, S extends BaseNumberState<T>, L extends BaseNumberStyles> extends BaseComponent<T, S, L> {\n private DECIMAL;\n private GROUP;\n public widgetRef: TextInput | null = null;\n private cursor: any = 0;\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n this.DECIMAL = '.';\n this.GROUP = ',';\n }\n\n onChange(event: any) {\n if (this.state.props.updateon === 'default') {\n this.updateDatavalue(event.target.value, event);\n }\n }\n\n focus() {\n this?.widgetRef?.focus();\n }\n\n onChangeText(value: any) {\n this.updateState({\n textValue: value\n } as S, () => {\n if (this.state.props.updateon === 'default') {\n this.validate(value);\n this.updateDatavalue(value, null);\n }\n }\n );\n }\n\n invokeChange(e: any) {\n if (Platform.OS === 'web') {\n this.cursor = e.target.selectionStart;\n this.setState({ textValue: e.target.value });\n }\n }\n\n validate(value: any) {\n const validationObj = validateField(this.state.props, value);\n this.updateState({\n isValid: validationObj.isValid,\n errorType: validationObj.errorType\n } as S);\n\n }\n\n handleValidation(value: any) {\n const props = this.state.props;\n if (props.regexp) {\n const condition = new RegExp(props.regexp, 'g');\n return condition.test(value);\n }\n return true;\n }\n\n /**\n * Method parses the Localized number(string) to a valid number.\n * if the string dose not result to a valid number then returns NaN.\n * @param {string} val Localized number.\n * @returns {number}\n */\n private parseNumber(val: string): any {\n // splits string into two parts. decimal and number.\n const parts = val.split(this.DECIMAL);\n if (!parts.length) {\n return;\n }\n if (parts.length > 2) {\n return NaN;\n }\n // If number have decimal point and not have a decimal value then return.\n if (parts[1] === '') {\n return NaN;\n }\n // replaces all group separators form the number.\n const number = Number(parts[0].split(this.GROUP).join(''));\n const decimal = Number(`0.${parts[1] || 0}`);\n if (Number.isNaN(number) || Number.isNaN(decimal)) {\n return NaN;\n }\n const sum = parts.length > 1 ? parseFloat((number + decimal).toFixed(parts[1].length)) : number + decimal;\n // if the number is negative then calculate the number as number - decimal\n // Ex: number = -123 and decimal = 0.45 then number - decimal = -123-045 = -123.45\n // If entered number is -0.1 to -0.9 then the number is -0 and decimal is 0.1 to 0.9. Now calaculate the number as number-decimal\n // Ex: number = -0 and decimal = 0.1 then number-decimal = -0-0.1 = -0.1\n if (number === 0) {\n return Object.is(0, number) ? sum : number - decimal;\n }\n return number > 0 ? sum : number - decimal;\n }\n\n updateDatavalue(value: any, event?: any, source?: any) {\n const model = value && this.parseNumber(value.toString());\n const props = this.state.props;\n const oldValue = props.datavalue;\n if (value === oldValue) {\n return;\n }\n const validNumber = this.isValidNumber(model);\n if (!validNumber) {\n this.invokeEventCallback('onError', [ event, this.proxy, value, oldValue ]);\n return;\n }\n\n this.updateState({\n props: {\n datavalue: model\n }\n } as S, () => {\n !this.props.onFieldChange && value !== oldValue && this.invokeEventCallback('onChange', [event, this.proxy, value, oldValue]);\n if (source === 'blur') {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }\n });\n }\n\n onBlur(event: any) {\n let newVal = event.target.value || this.state.textValue;\n this.validate(newVal);\n if (newVal === '') {\n setTimeout(() => {\n this.props.triggerValidation && this.props.triggerValidation();\n })\n }\n if (this.state.props.updateon === 'blur') {\n let oldVal = this.state.props.datavalue || '';\n if (oldVal !== newVal) {\n this.updateDatavalue(newVal, event, 'blur');\n } else {\n this.invokeEventCallback('onBlur', [event, this.proxy]);\n }\n }\n }\n\n onFocus(event: any) {\n this.invokeEventCallback('onFocus', [ event, this.proxy]);\n }\n\n /**\n * returns the number of decimal places a number have.\n * @param value: number\n * @returns {number}\n */\n private countDecimals(value: any) {\n if (value && ((value % 1) !== 0)) {\n const decimalValue = value.toString().split('.')[1];\n return decimalValue && decimalValue.length;\n }\n return 0;\n }\n\n public validateInputEntry($event: any) {\n const props = this.state.props;\n\n // allow actions if control key is pressed or if backspace is pressed. (for Mozilla).\n if ($event.ctrlKey || includes(['Backspace', 'ArrowRight', 'ArrowLeft', 'Tab', 'Enter', 'Delete'], $event.key)) {\n return;\n }\n\n const validity = new RegExp(`^[\\\\d\\\\s-,.e+${this.GROUP}${this.DECIMAL}]$`, 'i');\n const inputValue = $event.target.value;\n // validates entering of decimal values only when user provides decimal limit(i.e step contains decimal values).\n if (inputValue && this.countDecimals(props.step) && (this.countDecimals(inputValue) >= this.countDecimals(props.step))) {\n $event.preventDefault();\n }\n // validates if user entered an invalid character.\n if (!validity.test($event.key)) {\n $event.preventDefault();\n }\n // a decimal value can be entered only once in the input.\n if (includes(inputValue, this.DECIMAL) && $event.key === this.DECIMAL) {\n $event.preventDefault();\n }\n // 'e' can be entered only once in the input.\n if (intersection(toArray(inputValue), ['e', 'E']).length && includes('eE', $event.key)) {\n $event.preventDefault();\n }\n if ((includes(inputValue, '+') || includes(inputValue, '-')) && ($event.key === '+' || $event.key === '-')) {\n $event.preventDefault();\n }\n this.invokeEventCallback('onKeypress', [ $event, this.proxy]);\n }\n\n /**\n * returns a valid number by validating the minimum and maximum values.\n * @param {number} value\n * @returns {number}\n */\n private getValueInRange(value: number): number {\n const props = this.state.props;\n if (props.minvalue && !isNaN(props.minvalue) && value < props.minvalue) {\n this.updateState({ errorType: 'minvalue'} as S);\n return props.minvalue;\n }\n if (props.maxvalue && !isNaN(props.maxvalue) && value > props.maxvalue) {\n this.updateState({ errorType: 'maxvalue'} as S);\n return props.maxvalue;\n }\n return value;\n }\n\n /**\n * Adds validations for the number before updating the widget model. like validating min and max value for the widget.\n * @param {number} val number to be validated\n * @returns {number}\n */\n private isValidNumber(val: number): boolean {\n const props = this.state.props;\n\n //empty number widget should not show validation error when required is false\n // @ts-ignore\n if (this.state.props.required === false && val === '') {\n return true;\n }\n // id number is infinite then consider it as invalid value\n if (isNaN(val) || !isFinite(val) || (!Number.isInteger(props.step) &&\n this.countDecimals(val) > this.countDecimals(props.step))) {\n this.updateState({\n isValid: false,\n } as S);\n return false;\n }\n if (val !== this.getValueInRange(val)) {\n this.updateState({\n isValid: false,\n } as S);\n return true;\n }\n this.resetValidations();\n return true;\n }\n\n // resets all the flags related to the widget's validation.\n protected resetValidations() {\n this.updateState({\n isValid: true,\n } as S);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'minvalue':\n case 'maxvalue':\n if ($new|| $old) {\n this.isValidNumber($new);\n }\n break;\n case 'datavalue':\n this.updateState({\n textValue: $new\n } as S\n );\n const isDefault = this.state.isDefault;\n if (isDefault) {\n this.updateState({ isDefault: false } as S, this.props.onFieldChange && this.props.onFieldChange.bind(this, 'datavalue', $new, $old, isDefault));\n } else {\n this.props.onFieldChange && this.props.onFieldChange('datavalue', $new, $old, isDefault);\n }\n }\n }\n}\n"],"mappings":"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"}
@@ -35,8 +35,7 @@ export class BaseNavComponent extends BaseComponent {
35
35
  return {
36
36
  key: `${name}_item${i}`,
37
37
  label: s,
38
- data: s,
39
- icon: 'wi wi-' + s
38
+ data: s
40
39
  };
41
40
  });
42
41
  } else if (dataset) {
@@ -1 +1 @@
1
- {"version":3,"names":["BaseComponent","BaseComponentState","DEFAULT_CLASS","isArray","BaseNavState","constructor","arguments","_defineProperty","BaseNavComponent","props","defaultClass","length","undefined","defaultProps","defaultState","getValue","item","val","setDataItems","dataset","state","name","dataItems","split","map","s","i","key","label","data","icon","d","itemlabel","itemicon","link","itemlink","badge","itembadge","isactive","childnavigation","itemchildren","updateState","onPropertyChange","$new","$old"],"sources":["basenav.component.ts"],"sourcesContent":["import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { BaseNavProps } from './basenav.props';\nimport { DEFAULT_CLASS, BaseNavStyles } from './basenav.styles';\nimport { isArray } from 'lodash-es';\n\nexport interface NavigationDataItem {\n key: string;\n label: string;\n icon?: string;\n link?: string;\n badge?: string;\n isactive?: string;\n data: any;\n childnavigation?: any;\n}\n\nexport class BaseNavState <T extends BaseNavProps> extends BaseComponentState<T> {\n dataItems = [] as NavigationDataItem[];\n}\n\nexport abstract class BaseNavComponent< T extends BaseNavProps, S extends BaseNavState<T>, L extends BaseNavStyles> extends BaseComponent<T, S, L> {\n\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n }\n\n getValue(item: any, val?: string | ((item: any) => string)) {\n if (typeof val === 'string') {\n return item[val];\n } else if (typeof val === 'function') {\n return val(item);\n }\n return null;\n }\n\n setDataItems(dataset: any = this.state.props.dataset) {\n const name = this.props.name;\n let dataItems = [] as NavigationDataItem[];\n if (typeof dataset === 'string') {\n dataItems = dataset.split(',').map((s, i) => {\n return {\n key: `${name}_item${i}`,\n label: s,\n data: s,\n icon: 'wi wi-' + s\n } as NavigationDataItem;\n });\n } else if (dataset) {\n if (!isArray(dataset)) {\n dataset = [dataset];\n }\n dataItems = (dataset as any[]).map((d, i) => {\n return {\n key: `${name}_item${i}`,\n label: this.getValue(d, this.state.props.itemlabel),\n icon: this.getValue(d, this.state.props.itemicon),\n link: this.getValue(d, this.state.props.itemlink),\n badge: this.getValue(d, this.state.props.itembadge),\n isactive: this.getValue(d, this.state.props.isactive),\n data: d,\n childnavigation: this.state.props.itemchildren ? d[this.state.props.itemchildren] : null\n } as NavigationDataItem;\n });\n }\n this.updateState({dataItems: dataItems} as S);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'dataset':\n this.setDataItems($new);\n break;\n case 'itemlabel':\n case 'itemicon':\n case 'itemlink':\n case 'itemchildren':\n this.setDataItems();\n break;\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["BaseComponent","BaseComponentState","DEFAULT_CLASS","isArray","BaseNavState","constructor","arguments","_defineProperty","BaseNavComponent","props","defaultClass","length","undefined","defaultProps","defaultState","getValue","item","val","setDataItems","dataset","state","name","dataItems","split","map","s","i","key","label","data","d","itemlabel","icon","itemicon","link","itemlink","badge","itembadge","isactive","childnavigation","itemchildren","updateState","onPropertyChange","$new","$old"],"sources":["basenav.component.ts"],"sourcesContent":["import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { BaseNavProps } from './basenav.props';\nimport { DEFAULT_CLASS, BaseNavStyles } from './basenav.styles';\nimport { isArray } from 'lodash-es';\n\nexport interface NavigationDataItem {\n key: string;\n label: string;\n icon?: string;\n link?: string;\n badge?: string;\n isactive?: string;\n data: any;\n childnavigation?: any;\n}\n\nexport class BaseNavState <T extends BaseNavProps> extends BaseComponentState<T> {\n dataItems = [] as NavigationDataItem[];\n}\n\nexport abstract class BaseNavComponent< T extends BaseNavProps, S extends BaseNavState<T>, L extends BaseNavStyles> extends BaseComponent<T, S, L> {\n\n constructor(props: T, public defaultClass: string = DEFAULT_CLASS, defaultProps?: T, defaultState?: S) {\n super(props, defaultClass, defaultProps, defaultState);\n }\n\n getValue(item: any, val?: string | ((item: any) => string)) {\n if (typeof val === 'string') {\n return item[val];\n } else if (typeof val === 'function') {\n return val(item);\n }\n return null;\n }\n\n setDataItems(dataset: any = this.state.props.dataset) {\n const name = this.props.name;\n let dataItems = [] as NavigationDataItem[];\n if (typeof dataset === 'string') {\n dataItems = dataset.split(',').map((s, i) => {\n return {\n key: `${name}_item${i}`,\n label: s,\n data: s\n } as NavigationDataItem;\n });\n } else if (dataset) {\n if (!isArray(dataset)) {\n dataset = [dataset];\n }\n dataItems = (dataset as any[]).map((d, i) => {\n return {\n key: `${name}_item${i}`,\n label: this.getValue(d, this.state.props.itemlabel),\n icon: this.getValue(d, this.state.props.itemicon),\n link: this.getValue(d, this.state.props.itemlink),\n badge: this.getValue(d, this.state.props.itembadge),\n isactive: this.getValue(d, this.state.props.isactive),\n data: d,\n childnavigation: this.state.props.itemchildren ? d[this.state.props.itemchildren] : null\n } as NavigationDataItem;\n });\n }\n this.updateState({dataItems: dataItems} as S);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'dataset':\n this.setDataItems($new);\n break;\n case 'itemlabel':\n case 'itemicon':\n case 'itemlink':\n case 'itemchildren':\n this.setDataItems();\n break;\n }\n }\n}\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wavemaker/app-rn-runtime",
3
- "version": "11.5.0-rc.5397",
3
+ "version": "11.5.1-next.40402",
4
4
  "description": "''",
5
5
  "main": "index",
6
6
  "module": "index",
@@ -49,7 +49,7 @@
49
49
  "@react-navigation/native": "6.1.7",
50
50
  "@react-navigation/stack": "^6.3.7",
51
51
  "@types/lodash-es": "^4.17.6",
52
- "@wavemaker/variables": "11.5.0-rc.5397",
52
+ "@wavemaker/variables": "11.5.1-next.40402",
53
53
  "axios": "^1.4.0",
54
54
  "color": "4.2.3",
55
55
  "cross-env": "^5.2.0",
@@ -128,7 +128,7 @@
128
128
  "typescript": "^5.1.3",
129
129
  "victory-native": "36.6.11",
130
130
  "yargs": "^16.2.0",
131
- "@wavemaker/variables": "11.5.0-rc.5397"
131
+ "@wavemaker/variables": "11.5.1-next.40402"
132
132
  },
133
133
  "jest": {
134
134
  "preset": "react-native",
@@ -64,6 +64,7 @@ export class ServiceVariable extends _ServiceVariable {
64
64
  this.subscribe(VariableEvents.AFTER_INVOKE, () => {
65
65
  this.dataBinding = {};
66
66
  });
67
+ this.init();
67
68
  }
68
69
  invokeOnParamChange() {
69
70
  const last = this.params;