@wavemaker/app-rn-runtime 11.5.3-next.51001 → 11.5.3-next.51551

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 (89) hide show
  1. app-rn-runtime/actions/notification-action.js.map +1 -1
  2. app-rn-runtime/components/advanced/carousel/carousel.component.js +2 -2
  3. app-rn-runtime/components/advanced/carousel/carousel.component.js.map +1 -1
  4. app-rn-runtime/components/advanced/carousel/carousel.props.js.map +1 -1
  5. app-rn-runtime/components/basic/label/label.component.js +14 -9
  6. app-rn-runtime/components/basic/label/label.component.js.map +1 -1
  7. app-rn-runtime/components/basic/label/label.props.js +1 -0
  8. app-rn-runtime/components/basic/label/label.props.js.map +1 -1
  9. app-rn-runtime/components/basic/label/label.styles.js +8 -1
  10. app-rn-runtime/components/basic/label/label.styles.js.map +1 -1
  11. app-rn-runtime/components/chart/area-chart/area-chart.component.js +26 -3
  12. app-rn-runtime/components/chart/area-chart/area-chart.component.js.map +1 -1
  13. app-rn-runtime/components/chart/area-chart/area-chart.props.js +1 -0
  14. app-rn-runtime/components/chart/area-chart/area-chart.props.js.map +1 -1
  15. app-rn-runtime/components/chart/bar-chart/bar-chart.component.js +35 -3
  16. app-rn-runtime/components/chart/bar-chart/bar-chart.component.js.map +1 -1
  17. app-rn-runtime/components/chart/bar-chart/bar-chart.props.js +1 -0
  18. app-rn-runtime/components/chart/bar-chart/bar-chart.props.js.map +1 -1
  19. app-rn-runtime/components/chart/basechart.component.js +46 -1
  20. app-rn-runtime/components/chart/basechart.component.js.map +1 -1
  21. app-rn-runtime/components/chart/basechart.props.js +7 -0
  22. app-rn-runtime/components/chart/basechart.props.js.map +1 -1
  23. app-rn-runtime/components/chart/basechart.styles.js +13 -1
  24. app-rn-runtime/components/chart/basechart.styles.js.map +1 -1
  25. app-rn-runtime/components/chart/bubble-chart/bubble-chart.component.js +25 -3
  26. app-rn-runtime/components/chart/bubble-chart/bubble-chart.component.js.map +1 -1
  27. app-rn-runtime/components/chart/bubble-chart/bubble-chart.props.js +9 -1
  28. app-rn-runtime/components/chart/bubble-chart/bubble-chart.props.js.map +1 -1
  29. app-rn-runtime/components/chart/line-chart/line-chart.component.js +26 -4
  30. app-rn-runtime/components/chart/line-chart/line-chart.component.js.map +1 -1
  31. app-rn-runtime/components/chart/line-chart/line-chart.props.js +1 -0
  32. app-rn-runtime/components/chart/line-chart/line-chart.props.js.map +1 -1
  33. app-rn-runtime/components/chart/pie-chart/pie-chart.component.js +1 -0
  34. app-rn-runtime/components/chart/pie-chart/pie-chart.component.js.map +1 -1
  35. app-rn-runtime/components/chart/stack-chart/stack-chart.component.js +52 -11
  36. app-rn-runtime/components/chart/stack-chart/stack-chart.component.js.map +1 -1
  37. app-rn-runtime/components/chart/stack-chart/stack-chart.props.js +1 -0
  38. app-rn-runtime/components/chart/stack-chart/stack-chart.props.js.map +1 -1
  39. app-rn-runtime/components/container/tabs/tabheader/tabheader.component.js +2 -1
  40. app-rn-runtime/components/container/tabs/tabheader/tabheader.component.js.map +1 -1
  41. app-rn-runtime/components/container/tabs/tabs.component.js +3 -2
  42. app-rn-runtime/components/container/tabs/tabs.component.js.map +1 -1
  43. app-rn-runtime/components/container/wizard/wizard.component.js +31 -14
  44. app-rn-runtime/components/container/wizard/wizard.component.js.map +1 -1
  45. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.component.js +1 -1
  46. app-rn-runtime/components/container/wizard/wizardstep/wizardstep.component.js.map +1 -1
  47. app-rn-runtime/components/data/form/form-field/form-field.component.js +6 -5
  48. app-rn-runtime/components/data/form/form-field/form-field.component.js.map +1 -1
  49. app-rn-runtime/components/data/form/form.component.js +9 -6
  50. app-rn-runtime/components/data/form/form.component.js.map +1 -1
  51. app-rn-runtime/components/data/list/list.props.js +1 -0
  52. app-rn-runtime/components/data/list/list.props.js.map +1 -1
  53. app-rn-runtime/components/input/baseinput/baseinput.component.js +6 -2
  54. app-rn-runtime/components/input/baseinput/baseinput.component.js.map +1 -1
  55. app-rn-runtime/components/input/basenumber/basenumber.component.js +3 -4
  56. app-rn-runtime/components/input/basenumber/basenumber.component.js.map +1 -1
  57. app-rn-runtime/components/input/checkboxset/checkboxset.component.js +8 -1
  58. app-rn-runtime/components/input/checkboxset/checkboxset.component.js.map +1 -1
  59. app-rn-runtime/components/input/checkboxset/checkboxset.styles.js +2 -1
  60. app-rn-runtime/components/input/checkboxset/checkboxset.styles.js.map +1 -1
  61. app-rn-runtime/components/input/chips/chips.component.js +7 -0
  62. app-rn-runtime/components/input/chips/chips.component.js.map +1 -1
  63. app-rn-runtime/components/input/epoch/base-datetime.component.js +17 -4
  64. app-rn-runtime/components/input/epoch/base-datetime.component.js.map +1 -1
  65. app-rn-runtime/components/input/radioset/radioset.component.js +4 -2
  66. app-rn-runtime/components/input/radioset/radioset.component.js.map +1 -1
  67. app-rn-runtime/components/input/radioset/radioset.styles.js +2 -1
  68. app-rn-runtime/components/input/radioset/radioset.styles.js.map +1 -1
  69. app-rn-runtime/components/input/switch/switch.component.js +2 -1
  70. app-rn-runtime/components/input/switch/switch.component.js.map +1 -1
  71. app-rn-runtime/components/page/page-content/page-content.component.js +11 -3
  72. app-rn-runtime/components/page/page-content/page-content.component.js.map +1 -1
  73. app-rn-runtime/components/page/tabbar/tabbar.props.js +1 -0
  74. app-rn-runtime/components/page/tabbar/tabbar.props.js.map +1 -1
  75. app-rn-runtime/gestures/swipe.animation.js +5 -2
  76. app-rn-runtime/gestures/swipe.animation.js.map +1 -1
  77. app-rn-runtime/package.json +3 -3
  78. app-rn-runtime/runtime/App.js +27 -19
  79. app-rn-runtime/runtime/App.js.map +1 -1
  80. app-rn-runtime/runtime/base-fragment.component.js +14 -3
  81. app-rn-runtime/runtime/base-fragment.component.js.map +1 -1
  82. app-rn-runtime/runtime/base-page.component.js +8 -2
  83. app-rn-runtime/runtime/base-page.component.js.map +1 -1
  84. app-rn-runtime/runtime/services/app-i18n.service.js +7 -0
  85. app-rn-runtime/runtime/services/app-i18n.service.js.map +1 -1
  86. app-rn-runtime/runtime/services/app-modal.service.js +1 -1
  87. app-rn-runtime/runtime/services/app-modal.service.js.map +1 -1
  88. app-rn-runtime/styles/theme.variables.js +3 -0
  89. app-rn-runtime/styles/theme.variables.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","BaseComponent","BaseComponentState","SwipeAnimation","isWebPreviewMode","WmTabsProps","DEFAULT_CLASS","WmTabheader","WmTabsState","constructor","arguments","_defineProperty","WmTabs","props","bounds","e","_this$tabLayout","activeTabIndex","state","selectedTabIndex","w","tabLayout","width","noOfTabs","tabPanes","length","lower","center","upper","onLower","onChange","onUpper","setTabLayout","event","nativeEvent","layout","forceUpdate","goToTab","setTabPaneHeights","index","_nativeEvent$nativeEv","tabPaneHeights","height","setTabShown","tabIndex","callback","tabsShown","setTimeout","updateState","addTabPane","tabPane","i","findIndex","t","name","newIndex","selectTabPane","indexOf","_this$tabLayout2","_this$animationView","undefined","position","animationView","setPosition","then","prev","_this$animationView2","goToLower","next","_this$animationView3","oldIndex","deselectedTab","_onDeselect","selectedTab","_onSelect","invokeEventCallback","proxy","renderSkeleton","Children","toArray","children","filter","item","show","headerData","map","p","title","icon","key","createElement","style","styles","root","borderBottomWidth","onLayout","bind","tabHeader","data","showskeleton","overflow","flexDirection","flexWrap","alignSelf","onPropertyChange","$new","$old","selectedIndex","renderWidget","_background","id","getTestId","onIndexChange","flex","maxHeight","tabContent","enableGestures","enablegestures","direction","ref","r","handlers","animationHandlers"],"sources":["tabs.component.tsx"],"sourcesContent":["import React from 'react';\nimport { LayoutChangeEvent, LayoutRectangle, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport * as SwipeAnimation from '@wavemaker/app-rn-runtime/gestures/swipe.animation';\nimport { isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\n\nimport WmTabsProps from './tabs.props';\nimport { DEFAULT_CLASS, WmTabsStyles } from './tabs.styles';\nimport WmTabpane from './tabpane/tabpane.component';\nimport WmTabheader from './tabheader/tabheader.component';\n\nexport class WmTabsState extends BaseComponentState<WmTabsProps> {\n tabsShown: boolean[] = [];\n selectedTabIndex: number = 0;\n}\n\nexport default class WmTabs extends BaseComponent<WmTabsProps, WmTabsState, WmTabsStyles> {\n public tabPanes = [] as WmTabpane[];\n private newIndex = 0;\n private tabLayout: LayoutRectangle = null as any;\n private tabPaneHeights: number[] = [];\n private animationView: SwipeAnimation.View | null = null as any;\n private animationHandlers = {\n bounds: (e) => {\n const activeTabIndex = this.state.selectedTabIndex,\n w = this.tabLayout?.width || 0,\n noOfTabs = this.tabPanes.length;\n return {\n lower: -1 * (activeTabIndex - (activeTabIndex === 0 ? 0 : 1)) * w,\n center: -1 * activeTabIndex * w,\n upper: -1 * (activeTabIndex + (activeTabIndex === noOfTabs - 1 ? 0 : 1)) * w\n };\n },\n onLower: (e) => {\n this.onChange(this.state.selectedTabIndex - 1);\n },\n onUpper: (e) => {\n this.onChange(this.state.selectedTabIndex + 1);\n }\n } as SwipeAnimation.Handlers;\n\n constructor(props: WmTabsProps) {\n super(props, DEFAULT_CLASS, new WmTabsProps(), new WmTabsState());\n }\n \n setTabLayout(event: LayoutChangeEvent) {\n this.tabLayout = event.nativeEvent.layout;\n this.forceUpdate(() => {\n this.goToTab();\n });\n }\n\n setTabPaneHeights(index: number, nativeEvent: LayoutChangeEvent) {\n this.tabPaneHeights[index] = nativeEvent.nativeEvent.layout?.height;\n if (index === this.state.selectedTabIndex) {\n this.forceUpdate();\n }\n }\n\n setTabShown(tabIndex: number, callback: () => any) {\n if (!this.state.tabsShown[tabIndex]) {\n const tabsShown = [...this.state.tabsShown];\n tabsShown[tabIndex] = true;\n setTimeout(() => {\n this.updateState({\n tabsShown: tabsShown\n } as WmTabsState, callback);\n }, 300);\n } else {\n callback && callback();\n }\n }\n\n addTabPane(tabPane: WmTabpane) {\n const i = this.tabPanes.findIndex(t => t.props.name === tabPane.props.name);\n if (i >= 0) {\n this.tabPanes[i] = tabPane;\n } else {\n this.tabPanes[this.newIndex++] = tabPane;\n }\n }\n\n selectTabPane(tabPane: WmTabpane) {\n this.goToTab(this.tabPanes.indexOf(tabPane));\n }\n\n goToTab(index = this.state.selectedTabIndex) {\n const position = -1 * index * (this.tabLayout?.width || 0);\n this.animationView?.setPosition(position)\n .then(() => this.onChange(index));\n }\n\n prev() {\n this.animationView?.goToLower();\n }\n\n next() {\n this.animationView?.goToLower();\n }\n\n onChange(newIndex: number) {\n if (newIndex < 0 || newIndex >= this.tabPanes.length) {\n return;\n }\n const oldIndex = this.state.selectedTabIndex;\n const deselectedTab = this.tabPanes[this.state.selectedTabIndex];\n this.newIndex = newIndex;\n deselectedTab?._onDeselect();\n this.updateState({\n selectedTabIndex: newIndex\n } as WmTabsState, () => {\n this.setTabShown(newIndex, () => {\n const selectedTab = this.tabPanes[newIndex];\n selectedTab?._onSelect();\n this.invokeEventCallback('onChange', [{}, this.proxy, newIndex, oldIndex]);\n });\n });\n }\n\n public renderSkeleton(props: WmTabsProps){\n const tabPanes = React.Children.toArray(this.props.children)\n .filter((item: any, index: number) => item.props.show != false);\n const headerData = tabPanes.map((p: any, i: number) => \n ({title: p.props.title || 'Tab Title', icon: '', key: `tab-${p.props.title}-${i}`}));\n return(\n <View style={[this.styles.root, { borderBottomWidth: 0}]}>\n <View onLayout={this.setTabLayout.bind(this)} style={{width: '100%'}}></View>\n <WmTabheader\n styles={this.styles.tabHeader}\n data={headerData}\n showskeleton={this.props.showskeleton}\n selectedTabIndex={this.state.selectedTabIndex}\n ></WmTabheader>\n <View \n //{...this.panResponder.panHandlers}\n style={{\n width: '100%',\n //height: this.tabPaneHeights[this.state.selectedTabIndex],\n overflow: 'hidden'\n }} >\n <View style={{\n flexDirection: 'row',\n flexWrap: 'nowrap'\n }}>\n {tabPanes.map((p: any, i) => {\n return (\n <View\n key={`tab-${p.props.title}-${i}`}\n style={{width: '100%', alignSelf: 'flex-start'}}\n onLayout={this.setTabPaneHeights.bind(this, i)}>\n {/* {this.state.tabsShown[i] ? p : null} */}\n {p}\n </View>);\n })}\n </View>\n </View>\n </View>\n\n )\n }\n\n public onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case \"defaultpaneindex\":\n const selectedIndex = $new || 0;\n const tabsShown: boolean[] = [];\n tabsShown[selectedIndex] = true;\n this.updateState({\n selectedTabIndex: selectedIndex,\n tabsShown: tabsShown\n } as WmTabsState);\n }\n }\n \n renderWidget(props: WmTabsProps) {\n const tabPanes = React.Children.toArray(props.children)\n .filter((item: any, index: number) => item.props.show != false);\n const headerData = tabPanes.map((p: any, i: number) => \n ({title: p.props.title || 'Tab Title', icon: '', key: `tab-${p.props.title}-${i}`}));\n return (\n <View style={this.styles.root}>\n {this._background}\n <View onLayout={this.setTabLayout.bind(this)} style={{width: '100%'}}></View>\n <WmTabheader\n id={this.getTestId('headers')}\n styles={this.styles.tabHeader}\n data={headerData}\n selectedTabIndex={this.state.selectedTabIndex}\n onIndexChange={this.goToTab.bind(this)}\n ></WmTabheader>\n <View\n style={[{\n width: '100%',\n flex: 1\n }, this.styles.root.height ? \n (isWebPreviewMode() ? {'overflow-x': 'hidden','overflow-y': 'auto'} as any : {overflow: 'scroll'}) \n : {\n overflow: 'hidden',\n maxHeight: this.tabPaneHeights[this.state.selectedTabIndex],\n }, this.styles.tabContent]} >\n <SwipeAnimation.View \n enableGestures={props.enablegestures}\n style={{\n flexDirection: 'row',\n flexWrap: 'nowrap'\n }}\n direction='horizontal'\n ref={(r) => {this.animationView = r}}\n handlers = {this.animationHandlers}\n >\n {tabPanes.map((p: any, i) => {\n return (\n <View \n style={{\n width: '100%',\n height: this.styles.root.height ? undefined : 1000000,\n alignSelf: 'flex-start'}}>\n <View\n key={`tab-${p.props.title}-${i}`}\n style={{width: '100%', alignSelf: 'flex-start'}}\n onLayout={this.setTabPaneHeights.bind(this, i)}>\n {/* {this.state.tabsShown[i] ? p : null} */}\n {p}\n </View>\n </View>);\n })}\n </SwipeAnimation.View>\n </View>\n </View>\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","View","BaseComponent","BaseComponentState","SwipeAnimation","isWebPreviewMode","WmTabsProps","DEFAULT_CLASS","WmTabheader","WmTabsState","constructor","arguments","_defineProperty","WmTabs","props","bounds","e","_this$tabLayout","activeTabIndex","state","selectedTabIndex","w","tabLayout","width","noOfTabs","tabPanes","length","lower","center","upper","onLower","onChange","onUpper","setTabLayout","event","nativeEvent","layout","forceUpdate","goToTab","setTabPaneHeights","index","_nativeEvent$nativeEv","tabPaneHeights","height","setTabShown","tabIndex","callback","tabsShown","setTimeout","updateState","addTabPane","tabPane","i","findIndex","t","name","newIndex","selectTabPane","indexOf","_this$tabLayout2","_this$animationView","undefined","position","animationView","setPosition","then","prev","_this$animationView2","goToLower","next","_this$animationView3","oldIndex","deselectedTab","_onDeselect","selectedTab","_onSelect","invokeEventCallback","proxy","renderSkeleton","Children","toArray","children","filter","item","show","headerData","map","p","title","icon","key","createElement","style","styles","root","borderBottomWidth","onLayout","bind","tabHeader","data","showskeleton","overflow","flexDirection","flexWrap","alignSelf","onPropertyChange","$new","$old","selectedIndex","renderWidget","_background","id","getTestId","onIndexChange","flex","maxHeight","tabContent","enableGestures","enablegestures","alignItems","direction","ref","r","handlers","animationHandlers"],"sources":["tabs.component.tsx"],"sourcesContent":["import React from 'react';\nimport { LayoutChangeEvent, LayoutRectangle, View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport * as SwipeAnimation from '@wavemaker/app-rn-runtime/gestures/swipe.animation';\nimport { isWebPreviewMode } from '@wavemaker/app-rn-runtime/core/utils';\n\nimport WmTabsProps from './tabs.props';\nimport { DEFAULT_CLASS, WmTabsStyles } from './tabs.styles';\nimport WmTabpane from './tabpane/tabpane.component';\nimport WmTabheader from './tabheader/tabheader.component';\n\nexport class WmTabsState extends BaseComponentState<WmTabsProps> {\n tabsShown: boolean[] = [];\n selectedTabIndex: number = 0;\n}\n\nexport default class WmTabs extends BaseComponent<WmTabsProps, WmTabsState, WmTabsStyles> {\n public tabPanes = [] as WmTabpane[];\n private newIndex = 0;\n private tabLayout: LayoutRectangle = null as any;\n private tabPaneHeights: number[] = [];\n private animationView: SwipeAnimation.View | null = null as any;\n private animationHandlers = {\n bounds: (e) => {\n const activeTabIndex = this.state.selectedTabIndex,\n w = this.tabLayout?.width || 0,\n noOfTabs = this.tabPanes.length;\n return {\n lower: -1 * (activeTabIndex - (activeTabIndex === 0 ? 0 : 1)) * w,\n center: -1 * activeTabIndex * w,\n upper: -1 * (activeTabIndex + (activeTabIndex === noOfTabs - 1 ? 0 : 1)) * w\n };\n },\n onLower: (e) => {\n this.onChange(this.state.selectedTabIndex - 1);\n },\n onUpper: (e) => {\n this.onChange(this.state.selectedTabIndex + 1);\n }\n } as SwipeAnimation.Handlers;\n\n constructor(props: WmTabsProps) {\n super(props, DEFAULT_CLASS, new WmTabsProps(), new WmTabsState());\n }\n \n setTabLayout(event: LayoutChangeEvent) {\n this.tabLayout = event.nativeEvent.layout;\n this.forceUpdate(() => {\n this.goToTab();\n });\n }\n\n setTabPaneHeights(index: number, nativeEvent: LayoutChangeEvent) {\n this.tabPaneHeights[index] = nativeEvent.nativeEvent.layout?.height;\n if (index === this.state.selectedTabIndex) {\n this.forceUpdate();\n }\n }\n\n setTabShown(tabIndex: number, callback: () => any) {\n if (!this.state.tabsShown[tabIndex]) {\n const tabsShown = [...this.state.tabsShown];\n tabsShown[tabIndex] = true;\n setTimeout(() => {\n this.updateState({\n tabsShown: tabsShown\n } as WmTabsState, callback);\n }, 300);\n } else {\n callback && callback();\n }\n }\n\n addTabPane(tabPane: WmTabpane) {\n const i = this.tabPanes.findIndex(t => t.props.name === tabPane.props.name);\n if (i >= 0) {\n this.tabPanes[i] = tabPane;\n } else {\n this.tabPanes[this.newIndex++] = tabPane;\n }\n }\n\n selectTabPane(tabPane: WmTabpane) {\n this.goToTab(this.tabPanes.indexOf(tabPane));\n }\n\n goToTab(index = this.state.selectedTabIndex) {\n const position = -1 * index * (this.tabLayout?.width || 0);\n this.animationView?.setPosition(position)\n .then(() => this.onChange(index));\n }\n\n prev() {\n this.animationView?.goToLower();\n }\n\n next() {\n this.animationView?.goToLower();\n }\n\n onChange(newIndex: number) {\n if (newIndex < 0 || newIndex >= this.tabPanes.length) {\n return;\n }\n const oldIndex = this.state.selectedTabIndex;\n const deselectedTab = this.tabPanes[this.state.selectedTabIndex];\n this.newIndex = newIndex;\n deselectedTab?._onDeselect();\n this.updateState({\n selectedTabIndex: newIndex\n } as WmTabsState, () => {\n this.setTabShown(newIndex, () => {\n const selectedTab = this.tabPanes[newIndex];\n selectedTab?._onSelect();\n this.invokeEventCallback('onChange', [{}, this.proxy, newIndex, oldIndex]);\n });\n });\n }\n\n public renderSkeleton(props: WmTabsProps){\n const tabPanes = React.Children.toArray(this.props.children)\n .filter((item: any, index: number) => item.props.show != false);\n const headerData = tabPanes.map((p: any, i: number) => \n ({title: p.props.title || 'Tab Title', icon: '', key: `tab-${p.props.title}-${i}`}));\n return(\n <View style={[this.styles.root, { borderBottomWidth: 0}]}>\n <View onLayout={this.setTabLayout.bind(this)} style={{width: '100%'}}></View>\n <WmTabheader\n styles={this.styles.tabHeader}\n data={headerData}\n showskeleton={this.props.showskeleton}\n selectedTabIndex={this.state.selectedTabIndex}\n ></WmTabheader>\n <View \n //{...this.panResponder.panHandlers}\n style={{\n width: '100%',\n //height: this.tabPaneHeights[this.state.selectedTabIndex],\n overflow: 'hidden'\n }} >\n <View style={{\n flexDirection: 'row',\n flexWrap: 'nowrap'\n }}>\n {tabPanes.map((p: any, i) => {\n return (\n <View\n key={`tab-${p.props.title}-${i}`}\n style={{width: '100%', alignSelf: 'flex-start'}}\n onLayout={this.setTabPaneHeights.bind(this, i)}>\n {/* {this.state.tabsShown[i] ? p : null} */}\n {p}\n </View>);\n })}\n </View>\n </View>\n </View>\n\n )\n }\n\n public onPropertyChange(name: string, $new: any, $old: any): void {\n super.onPropertyChange(name, $new, $old);\n switch(name) {\n case \"defaultpaneindex\":\n const selectedIndex = $new || 0;\n const tabsShown: boolean[] = [];\n tabsShown[selectedIndex] = true;\n this.updateState({\n selectedTabIndex: selectedIndex,\n tabsShown: tabsShown\n } as WmTabsState);\n }\n }\n \n renderWidget(props: WmTabsProps) {\n const tabPanes = React.Children.toArray(props.children)\n .filter((item: any, index: number) => item.props.show != false);\n const headerData = tabPanes.map((p: any, i: number) => \n ({title: p.props.title || 'Tab Title', icon: '', key: `tab-${p.props.title}-${i}`}));\n return (\n <View style={this.styles.root}>\n {this._background}\n <View onLayout={this.setTabLayout.bind(this)} style={{width: '100%'}}></View>\n <WmTabheader\n id={this.getTestId('headers')}\n styles={this.styles.tabHeader}\n data={headerData}\n selectedTabIndex={this.state.selectedTabIndex}\n onIndexChange={this.goToTab.bind(this)}\n ></WmTabheader>\n <View\n style={[{\n width: '100%',\n flex: 1\n }, this.styles.root.height ? \n (isWebPreviewMode() ? {'overflow-x': 'hidden','overflow-y': 'auto'} as any : {overflow: 'scroll'}) \n : {\n overflow: 'hidden',\n maxHeight: this.tabPaneHeights[this.state.selectedTabIndex],\n }, this.styles.tabContent]} >\n <SwipeAnimation.View \n enableGestures={props.enablegestures}\n style={{\n flexDirection: 'row',\n flexWrap: 'nowrap',\n alignItems: 'flex-start'\n }}\n direction='horizontal'\n ref={(r) => {this.animationView = r}}\n handlers = {this.animationHandlers}\n >\n {tabPanes.map((p: any, i) => {\n return (\n <View \n key={`tab-${p.props.title}-${i}`}\n style={{\n width: '100%',\n height: this.styles.root.height ? undefined : 1000000,\n alignSelf: 'flex-start'}}>\n <View\n style={{width: '100%', alignSelf: 'flex-start'}}\n onLayout={this.setTabPaneHeights.bind(this, i)}>\n {/* {this.state.tabsShown[i] ? p : null} */}\n {p}\n </View>\n </View>);\n })}\n </SwipeAnimation.View>\n </View>\n </View>\n );\n }\n}\n"],"mappings":"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"}
@@ -59,11 +59,17 @@ export default class WmWizard extends BaseComponent {
59
59
  updateCurrentStep(index) {
60
60
  var _this$steps$this$stat2;
61
61
  let isDone = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
62
+ const lastStep = this.state.currentStep;
62
63
  (_this$steps$this$stat2 = this.steps[this.state.currentStep]) === null || _this$steps$this$stat2 === void 0 ? void 0 : _this$steps$this$stat2.setInActive();
63
64
  this.updateState({
64
65
  currentStep: index,
65
66
  isDone: isDone
66
- }, () => this.showActiveStep());
67
+ }, () => {
68
+ this.showActiveStep();
69
+ if (lastStep !== index) {
70
+ this.invokeEventCallback('onChange', [null, this.proxy, index + 1, lastStep + 1]);
71
+ }
72
+ });
67
73
  }
68
74
  getStepStyle(index) {
69
75
  const style = [this.styles.step];
@@ -192,33 +198,44 @@ export default class WmWizard extends BaseComponent {
192
198
  }]
193
199
  })) : null;
194
200
  }
195
- onPrev(steps) {
201
+ prev() {
196
202
  const index = this.state.currentStep;
203
+ if (index <= 0) {
204
+ return;
205
+ }
197
206
  const currentStep = this.steps[index];
198
207
  currentStep.invokePrevCB(index);
199
208
  this.updateCurrentStep(index - 1);
200
209
  }
201
- onNext(steps, eventName) {
210
+ next(eventName) {
202
211
  const index = this.state.currentStep;
212
+ if (index >= this.steps.length - 1) {
213
+ return;
214
+ }
203
215
  const currentStep = this.steps[index];
204
216
  if (eventName === 'skip') {
205
217
  currentStep.invokeSkipCB(index);
206
- } else {
207
- currentStep.invokeNextCB(index);
218
+ } else if (currentStep.invokeNextCB(index) == false) {
219
+ return;
208
220
  }
209
221
  this.updateCurrentStep(index + 1);
210
222
  }
211
- onDone($event) {
223
+ done($event) {
224
+ if (this.state.currentStep !== this.steps.length - 1) {
225
+ return;
226
+ }
212
227
  this.updateState({
213
228
  isDone: true
214
229
  });
215
230
  this.invokeEventCallback('onDone', [$event, this.proxy]);
216
231
  }
217
- onCancel() {
232
+ cancel() {
218
233
  this.invokeEventCallback('onCancel', [null, this.proxy]);
219
234
  }
220
- onSkip(steps) {
221
- this.onNext(steps, 'skip');
235
+ skip() {
236
+ if (this.steps[this.state.currentStep] && this.steps[this.state.currentStep].props.enableskip) {
237
+ this.next('skip');
238
+ }
222
239
  }
223
240
  renderWidget(props) {
224
241
  var _this$state$props$cla;
@@ -241,32 +258,32 @@ export default class WmWizard extends BaseComponent {
241
258
  styles: merge({}, this.styles.wizardActions, this.theme.getStyle('btn-default'), this.styles.doneButton),
242
259
  id: this.getTestId('donebtn'),
243
260
  caption: props.donebtnlabel,
244
- onTap: this.onDone.bind(this)
261
+ onTap: this.done.bind(this)
245
262
  }), this.state.currentStep + 1 < this.numberOfSteps && /*#__PURE__*/React.createElement(WmButton, {
246
263
  iconclass: 'wi wi-chevron-right',
247
264
  styles: merge({}, this.styles.wizardActions, this.theme.getStyle('btn-default'), this.styles.nextButton),
248
265
  id: this.getTestId('nextbtn'),
249
266
  iconposition: 'right',
250
267
  caption: props.nextbtnlabel,
251
- onTap: this.onNext.bind(this, this.steps)
268
+ onTap: this.next.bind(this)
252
269
  }), this.state.currentStep > 0 && /*#__PURE__*/React.createElement(WmButton, {
253
270
  iconclass: 'wi wi-chevron-left',
254
271
  styles: merge({}, this.theme.getStyle('btn-default'), this.styles.wizardActions, this.styles.prevButton),
255
272
  caption: props.previousbtnlabel,
256
273
  id: this.getTestId('prevbtn'),
257
- onTap: this.onPrev.bind(this, this.steps)
274
+ onTap: this.prev.bind(this)
258
275
  }), props.cancelable ? /*#__PURE__*/React.createElement(WmButton, {
259
276
  id: this.getTestId('cancelbtn'),
260
277
  caption: props.cancelbtnlabel,
261
278
  styles: merge({}, this.theme.getStyle('btn-default'), this.styles.wizardActions, this.styles.cancelButton),
262
- onTap: this.onCancel.bind(this)
279
+ onTap: this.cancel.bind(this)
263
280
  }) : null, isSkippable && /*#__PURE__*/React.createElement(WmAnchor, {
264
281
  iconclass: 'wi wi-chevron-right',
265
282
  iconposition: 'right',
266
283
  caption: 'Skip',
267
284
  id: this.getTestId('skip'),
268
285
  styles: merge({}, this.styles.wizardActions, this.styles.skipLink),
269
- onTap: this.onSkip.bind(this, this.steps)
286
+ onTap: this.skip.bind(this)
270
287
  })));
271
288
  }
272
289
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","Text","View","TouchableOpacity","Platform","TouchableWithoutFeedback","isArray","merge","BaseComponent","BaseComponentState","WmWizardProps","DEFAULT_CLASS","WmButton","WmIcon","WmAnchor","WmProgressCircle","WmPopover","WmLabel","WmWizardState","constructor","arguments","_defineProperty","WmWizard","props","onComponentInit","c","popOverRef","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","renderMenuPopover","menuDataset","getmenudataexpression","Labels","title","createElement","id","getTestId","popover","contentanimation","caption","popoverheight","height","popoverwidth","width","listener","iconclass","popovericonclass","iconposition","type","currentMenuItem","key","onPress","hide","stepMenu","activeStepMenu","stepMenuActiveIcon","stepMenuIcon","stepMenuActiveLabel","stepMenuLabel","renderProgressCircleHeader","progressTitle","progresstitle","headerWrapper","stepWrapper","flex","alignItems","justifyContent","flexDirection","minvalue","maxvalue","datavalue","captionplacement","progresstype","subtitle","progressCircle","stepTitle","stepSubTitle","renderWizardHeader","isLastStep","numberOfSteps","isFirstStep","isActiveStep","isNumberTextLayout","classname","show","paddingRight","paddingLeft","bind","disabled","stepCounter","stepIcon","icon","color","numberTextStepConnector","stepConnector","left","OS","isRTL","onPrev","invokePrevCB","onNext","eventName","invokeSkipCB","invokeNextCB","onDone","$event","invokeEventCallback","proxy","onCancel","onSkip","renderWidget","_this$state$props$cla","isSkippable","enableskip","isProgressCircleHeader","includes","root","_background","wizardHeader","i","wizardBody","wizardFooter","actionsalignment","wizardActions","theme","getStyle","doneButton","donebtnlabel","onTap","nextButton","nextbtnlabel","prevButton","previousbtnlabel","cancelable","cancelbtnlabel","cancelButton","skipLink"],"sources":["wizard.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View, TouchableOpacity, Platform, TouchableWithoutFeedback } from 'react-native';\nimport { isArray, merge } from 'lodash';\nimport { BaseComponent, BaseComponentState, LifecycleListener } 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';\nimport WmProgressCircle from '@wavemaker/app-rn-runtime/components/basic/progress-circle/progress-circle.component';\nimport WmPopover from '@wavemaker/app-rn-runtime/components/navigation/popover/popover.component';\nimport WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.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 private popOverRef: WmPopover = null as any;\n\n private listener: LifecycleListener = {\n onComponentInit: (c) => {\n if (c instanceof WmPopover) {\n this.popOverRef = c;\n }\n }\n };\n\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 renderMenuPopover(){\n const menuDataset = this.props.getmenudataexpression || ((item: any, index: number) => '') ;\n const Labels = this.steps.map((step: WmWizardstep) => step.state.props.title);\n return (\n <WmPopover\n id={this.getTestId('menu')}\n styles={this.styles.popover}\n contentanimation={'slideInDown'}\n caption={''}\n popoverheight={this.styles.popover.popover.height as string | number | undefined || null}\n popoverwidth={this.styles.popover.popover.width as string | number | undefined || null}\n listener={this.listener}\n iconclass={this.props.popovericonclass || 'fa fa-caret-down'}\n iconposition=\"right\"\n type='dropdown'>\n <View style={this.styles.popover.popover}>\n {Labels.map((item: any, index: number) => {\n const currentMenuItem = index==this.state.currentStep;\n const caption = menuDataset({\"count\":this.steps.length}, index); \n return (\n <TouchableWithoutFeedback key={'wizard_menu_item_'+index} onPress={()=>{this.popOverRef.hide();}}>\n <View style={[this.styles.stepMenu, currentMenuItem?this.styles.activeStepMenu:{}]}>\n <WmIcon caption={caption} iconclass={currentMenuItem? \"wi wi-radio-button-checked\" : 'wi wi-radio-button-unchecked'} styles={currentMenuItem?this.styles.stepMenuActiveIcon:this.styles.stepMenuIcon}/>\n <WmLabel caption={item} styles={currentMenuItem?this.styles.stepMenuActiveLabel:this.styles.stepMenuLabel}/>\n </View>\n </TouchableWithoutFeedback>\n )})}\n </View>\n </WmPopover>\n );\n }\n\n renderProgressCircleHeader(item: any, index: number) {\n const progressTitle = this.props.progresstitle || (index + 1 + '/' + this.steps.length);\n return (\n <View style={[this.styles.headerWrapper]} key={index + 1}>\n <View style={this.styles.stepWrapper}>\n <View style={{ flex: 1, alignItems: 'flex-start', justifyContent: 'center', flexDirection:'row' }}>\n <WmProgressCircle minvalue={0} maxvalue={this.steps.length} datavalue={index + 1} captionplacement={'inside'} type={this.props.progresstype} title={progressTitle} subtitle={''} styles={this.styles.progressCircle} />\n </View>\n <View style={{ flex: 2, justifyContent: 'center', flexDirection: 'column' }}>\n <Text style={this.styles.stepTitle}>\n {item.props.title || 'Step Title'}</Text>\n <Text style={this.styles.stepSubTitle}>\n {item.props.subtitle || 'Step Sub Title'}</Text>\n </View>\n <View style={{ flexDirection: 'row', alignItems: 'flex-end', justifyContent: 'flex-end' }}>\n {this.renderMenuPopover()}\n </View>\n </View>\n </View>\n );\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 const isProgressCircleHeader = this.state.props.classname?.includes('progress-circle-header');\n return (\n <View style={this.styles.root}>\n {this._background}\n <View style={this.styles.wizardHeader}>\n {activeStep && isProgressCircleHeader ? (this.renderProgressCircleHeader(activeStep, this.state.currentStep)) : (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","TouchableWithoutFeedback","isArray","merge","BaseComponent","BaseComponentState","WmWizardProps","DEFAULT_CLASS","WmButton","WmIcon","WmAnchor","WmProgressCircle","WmPopover","WmLabel","WmWizardState","constructor","arguments","_defineProperty","WmWizard","props","onComponentInit","c","popOverRef","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","lastStep","setInActive","updateState","invokeEventCallback","proxy","getStepStyle","style","styles","push","doneStep","activeStep","renderMenuPopover","menuDataset","getmenudataexpression","Labels","title","createElement","id","getTestId","popover","contentanimation","caption","popoverheight","height","popoverwidth","width","listener","iconclass","popovericonclass","iconposition","type","currentMenuItem","key","onPress","hide","stepMenu","activeStepMenu","stepMenuActiveIcon","stepMenuIcon","stepMenuActiveLabel","stepMenuLabel","renderProgressCircleHeader","progressTitle","progresstitle","headerWrapper","stepWrapper","flex","alignItems","justifyContent","flexDirection","minvalue","maxvalue","datavalue","captionplacement","progresstype","subtitle","progressCircle","stepTitle","stepSubTitle","renderWizardHeader","isLastStep","numberOfSteps","isFirstStep","isActiveStep","isNumberTextLayout","classname","show","paddingRight","paddingLeft","bind","disabled","stepCounter","stepIcon","icon","color","numberTextStepConnector","stepConnector","left","OS","isRTL","prev","invokePrevCB","next","eventName","invokeSkipCB","invokeNextCB","done","$event","cancel","skip","enableskip","renderWidget","_this$state$props$cla","isSkippable","isProgressCircleHeader","includes","root","_background","wizardHeader","i","wizardBody","wizardFooter","actionsalignment","wizardActions","theme","getStyle","doneButton","donebtnlabel","onTap","nextButton","nextbtnlabel","prevButton","previousbtnlabel","cancelable","cancelbtnlabel","cancelButton","skipLink"],"sources":["wizard.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View, TouchableOpacity, Platform, TouchableWithoutFeedback } from 'react-native';\nimport { isArray, merge } from 'lodash';\nimport { BaseComponent, BaseComponentState, LifecycleListener } 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';\nimport WmProgressCircle from '@wavemaker/app-rn-runtime/components/basic/progress-circle/progress-circle.component';\nimport WmPopover from '@wavemaker/app-rn-runtime/components/navigation/popover/popover.component';\nimport WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.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 private popOverRef: WmPopover = null as any;\n\n private listener: LifecycleListener = {\n onComponentInit: (c) => {\n if (c instanceof WmPopover) {\n this.popOverRef = c;\n }\n }\n };\n\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 const lastStep = this.state.currentStep;\n this.steps[this.state.currentStep]?.setInActive();\n this.updateState({\n currentStep: index,\n isDone: isDone\n } as WmWizardState, () => {\n this.showActiveStep();\n if (lastStep !== index) {\n this.invokeEventCallback('onChange', [null, this.proxy, index + 1, lastStep + 1]);\n }\n });\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 renderMenuPopover(){\n const menuDataset = this.props.getmenudataexpression || ((item: any, index: number) => '') ;\n const Labels = this.steps.map((step: WmWizardstep) => step.state.props.title);\n return (\n <WmPopover\n id={this.getTestId('menu')}\n styles={this.styles.popover}\n contentanimation={'slideInDown'}\n caption={''}\n popoverheight={this.styles.popover.popover.height as string | number | undefined || null}\n popoverwidth={this.styles.popover.popover.width as string | number | undefined || null}\n listener={this.listener}\n iconclass={this.props.popovericonclass || 'fa fa-caret-down'}\n iconposition=\"right\"\n type='dropdown'>\n <View style={this.styles.popover.popover}>\n {Labels.map((item: any, index: number) => {\n const currentMenuItem = index==this.state.currentStep;\n const caption = menuDataset({\"count\":this.steps.length}, index); \n return (\n <TouchableWithoutFeedback key={'wizard_menu_item_'+index} onPress={()=>{this.popOverRef.hide();}}>\n <View style={[this.styles.stepMenu, currentMenuItem?this.styles.activeStepMenu:{}]}>\n <WmIcon caption={caption} iconclass={currentMenuItem? \"wi wi-radio-button-checked\" : 'wi wi-radio-button-unchecked'} styles={currentMenuItem?this.styles.stepMenuActiveIcon:this.styles.stepMenuIcon}/>\n <WmLabel caption={item} styles={currentMenuItem?this.styles.stepMenuActiveLabel:this.styles.stepMenuLabel}/>\n </View>\n </TouchableWithoutFeedback>\n )})}\n </View>\n </WmPopover>\n );\n }\n\n renderProgressCircleHeader(item: any, index: number) {\n const progressTitle = this.props.progresstitle || (index + 1 + '/' + this.steps.length);\n return (\n <View style={[this.styles.headerWrapper]} key={index + 1}>\n <View style={this.styles.stepWrapper}>\n <View style={{ flex: 1, alignItems: 'flex-start', justifyContent: 'center', flexDirection:'row' }}>\n <WmProgressCircle minvalue={0} maxvalue={this.steps.length} datavalue={index + 1} captionplacement={'inside'} type={this.props.progresstype} title={progressTitle} subtitle={''} styles={this.styles.progressCircle} />\n </View>\n <View style={{ flex: 2, justifyContent: 'center', flexDirection: 'column' }}>\n <Text style={this.styles.stepTitle}>\n {item.props.title || 'Step Title'}</Text>\n <Text style={this.styles.stepSubTitle}>\n {item.props.subtitle || 'Step Sub Title'}</Text>\n </View>\n <View style={{ flexDirection: 'row', alignItems: 'flex-end', justifyContent: 'flex-end' }}>\n {this.renderMenuPopover()}\n </View>\n </View>\n </View>\n );\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 prev() {\n const index = this.state.currentStep;\n if (index <= 0) {\n return;\n }\n const currentStep = this.steps[index];\n currentStep.invokePrevCB(index);\n this.updateCurrentStep(index - 1);\n }\n\n next(eventName?: string) {\n const index = this.state.currentStep;\n if (index >= this.steps.length - 1) {\n return;\n }\n const currentStep = this.steps[index];\n if (eventName === 'skip') {\n currentStep.invokeSkipCB(index);\n } else if (currentStep.invokeNextCB(index) == false) {\n return;\n }\n this.updateCurrentStep(index + 1);\n }\n\n done($event: any) {\n if (this.state.currentStep !== this.steps.length - 1) {\n return;\n }\n this.updateState({\n isDone: true\n } as WmWizardState);\n this.invokeEventCallback('onDone', [$event, this.proxy]);\n }\n\n cancel() {\n this.invokeEventCallback('onCancel', [null, this.proxy]);\n }\n \n skip() {\n if ( this.steps[this.state.currentStep] \n && this.steps[this.state.currentStep].props.enableskip) {\n this.next('skip');\n }\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 const isProgressCircleHeader = this.state.props.classname?.includes('progress-circle-header');\n return (\n <View style={this.styles.root}>\n {this._background}\n <View style={this.styles.wizardHeader}>\n {activeStep && isProgressCircleHeader ? (this.renderProgressCircleHeader(activeStep, this.state.currentStep)) : (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.done.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.next.bind(this)}></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.prev.bind(this)}></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.cancel.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.skip.bind(this)}></WmAnchor>\n }\n </View>\n </View>\n );\n }\n}\n"],"mappings":"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"}
@@ -35,7 +35,7 @@ export default class WmWizardstep extends BaseComponent {
35
35
  return super.isVisible() && this.state.active;
36
36
  }
37
37
  invokeNextCB(index) {
38
- this.invokeEventCallback('onNext', [this.proxy, this, index]);
38
+ return this.invokeEventCallback('onNext', [this.proxy, this, index]);
39
39
  }
40
40
  invokePrevCB(index) {
41
41
  this.invokeEventCallback('onPrev', [this.proxy, this, index]);
@@ -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","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) : boolean {\n return 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,EAAY;IACpC,OAAO,IAAI,CAACC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,IAAI,CAACC,KAAK,EAAE,IAAI,EAAEF,KAAK,CAAC,CAAC;EACtE;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"}
@@ -161,17 +161,18 @@ export default class WmFormField extends BaseComponent {
161
161
  }
162
162
  }
163
163
  setReadOnlyState(updateMode) {
164
- this.formwidget.updateState({
164
+ var _this$formwidget;
165
+ (_this$formwidget = this.formwidget) === null || _this$formwidget === void 0 ? void 0 : _this$formwidget.updateState({
165
166
  props: {
166
167
  readonly: !updateMode
167
168
  }
168
169
  });
169
170
  }
170
171
  validateFormField() {
171
- var _this$formwidget, _this$_syncValidators;
172
- if (((_this$formwidget = this.formwidget) === null || _this$formwidget === void 0 ? void 0 : _this$formwidget.state.isValid) === false) {
173
- var _this$formwidget2;
174
- const errorType = (_this$formwidget2 = this.formwidget) === null || _this$formwidget2 === void 0 || (_this$formwidget2 = _this$formwidget2.state) === null || _this$formwidget2 === void 0 ? void 0 : _this$formwidget2.errorType;
172
+ var _this$formwidget2, _this$_syncValidators;
173
+ if (((_this$formwidget2 = this.formwidget) === null || _this$formwidget2 === void 0 ? void 0 : _this$formwidget2.state.isValid) === false) {
174
+ var _this$formwidget3;
175
+ const errorType = (_this$formwidget3 = this.formwidget) === null || _this$formwidget3 === void 0 || (_this$formwidget3 = _this$formwidget3.state) === null || _this$formwidget3 === void 0 ? void 0 : _this$formwidget3.errorType;
175
176
  let validationMsg = get(this.defaultValidatorMessages, errorType);
176
177
  if (validationMsg) {
177
178
  if (validationMsg instanceof Function) {
@@ -1 +1 @@
1
- {"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","isEqual","get","find","cloneDeep","forEach","keys","WmFormFieldProps","DEFAULT_CLASS","PERFORMANCE_LOGGER","WmFormFieldState","constructor","arguments","_defineProperty","WmFormField","props","onFieldChangeEvt","name","$new","$old","isDefault","notifyChanges","validateFormField","updateState","datavalue","invokeEventCallback","undefined","form","updateDataOutput","call","observeOn","fields","field","formfield","formFields","f","proxy","notifyForFields","push","formwidget","validate","setTimeout","getPromiseList","validators","arr","fn","promise","Function","bind","Promise","setAsyncValidators","_asyncValidatorFn","all","then","err","validationMsg","hasOwnProperty","messageKeys","toString","setInvalidState","setValidators","_cloneValidators","_syncValidators","obj","index","key","defaultValidatorMessages","value","propsObj","updateFormWidgetDataset","res","displayField","dataset","data","datafield","displayfield","state","msg","isValid","validationmessage","onPropertyChange","debug","applyDefaultValue","setPrimaryKey","setReadOnlyState","updateMode","readonly","_this$formwidget","_this$_syncValidators","_this$formwidget2","errorType","errormsg","errorMessage","renderWidget","childrenWithProps","Children","map","renderFormFields","children","child","cloneElement","invokeEvent","triggerValidation","onFieldChange","formRef","createElement","style","styles","root","_background","_extends","getTestPropsForLabel","errorMsg"],"sources":["form-field.component.tsx"],"sourcesContent":["import React from 'react';\nimport {Text, View} from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { widgetsWithUndefinedValue } from '@wavemaker/app-rn-runtime/core/utils';\nimport { isEqual, get, find, cloneDeep, forEach, keys } from 'lodash';\n\nimport WmFormFieldProps from './form-field.props';\nimport { DEFAULT_CLASS, WmFormFieldStyles } from './form-field.styles';\nimport {PERFORMANCE_LOGGER} from \"@wavemaker/app-rn-runtime/core/logger\";\n\nexport class WmFormFieldState extends BaseComponentState<WmFormFieldProps> {\n isValid = true;\n}\n\nexport default class WmFormField extends BaseComponent<WmFormFieldProps, WmFormFieldState, WmFormFieldStyles> {\n public form: any;\n public formwidget: any;\n public _syncValidators: any;\n public defaultValidatorMessages: any = [];\n private notifyForFields: any = [];\n private _asyncValidatorFn: any;\n constructor(props: WmFormFieldProps) {\n super(props, DEFAULT_CLASS, new WmFormFieldProps(), new WmFormFieldState());\n }\n\n onFieldChangeEvt(name: string, $new: any, $old: any, isDefault: boolean) {\n this.notifyChanges();\n this.validateFormField();\n if (!isEqual($old, $new)) {\n this.updateState({ props: { datavalue: $new }} as WmFormFieldState, () => {\n !isDefault && this.invokeEventCallback('onChange', [undefined, this, $new, $old]);\n });\n if (this.form) {\n this.form.updateDataOutput.call(this.form, get(this.props, 'formKey', this.props.name), $new);\n }\n }\n }\n\n // Registers observer of validation fields\n observeOn(fields: any) {\n forEach(fields, (field) => {\n const formfield = find(this.form.formFields, (f) => f.proxy.name === field);\n if (formfield) {\n formfield.notifyForFields.push(this);\n }\n });\n }\n\n // Notifies changes to observing validation fields\n notifyChanges() {\n forEach(this.notifyForFields, (field) => {\n field.formwidget.validate(field.formwidget.datavalue);\n setTimeout(() => field.validateFormField());\n });\n }\n\n getPromiseList(validators: any) {\n const arr: any = [];\n forEach(validators, (fn) => {\n let promise = fn;\n if (fn instanceof Function && fn.bind) {\n promise = fn(this.formwidget.proxy, this.form);\n }\n if (promise instanceof Promise) {\n arr.push(promise);\n }\n });\n return arr;\n }\n\n // this method sets the asyncValidation on the form field. Assigns validationmessages from the returned response\n setAsyncValidators(validators: any) {\n this._asyncValidatorFn = () => {\n return Promise.all(this.getPromiseList(validators)).then(() => {\n return null;\n }, err => {\n let validationMsg: string;\n // if err obj has validationMessage key, then set validationMessage using this value\n // else return the value of the first key in the err object as validation message.\n if (err.hasOwnProperty('errorMessage')) {\n validationMsg = get(err, 'errorMessage');\n } else {\n const messageKeys = keys(err);\n validationMsg = (err[messageKeys[0]]).toString();\n }\n this.setInvalidState(validationMsg);\n return err;\n })\n };\n }\n\n // sets the default validation on the form field\n setValidators(validators: any) {\n let _cloneValidators = cloneDeep(validators);\n this._syncValidators = [];\n forEach(_cloneValidators, (obj, index) => {\n // custom validation is bound to function.\n if (obj && obj instanceof Function) {\n // passing formwidget and form as arguments to the obj (i.e. validator function)\n _cloneValidators[index] = obj.bind(undefined, this.formwidget.proxy, this.form);\n this._syncValidators.push(_cloneValidators[index]);\n } else {\n // checks for default validator like required, maxchars etc.\n const key = get(obj, 'type');\n this.defaultValidatorMessages[key] = get(obj, 'errorMessage');\n const value = get(obj, 'validator');\n let propsObj: any = {\n props: {}\n };\n propsObj.props[key] = value;\n key === 'required' && this.updateState(propsObj as WmFormFieldState);\n this.formwidget.updateState(propsObj as WmFormFieldState);\n }\n });\n }\n\n updateFormWidgetDataset(res: any, displayField: string) {\n this.formwidget.updateState({\n props: {\n dataset: res.data,\n datafield: 'All Fields',\n displayfield: this.formwidget.state.props.displayfield || displayField,\n }\n } as WmFormFieldState);\n }\n\n setInvalidState(msg: string) {\n this.updateState({\n isValid: false,\n props: {\n validationmessage: msg\n }\n } as WmFormFieldState)\n this.formwidget.updateState({\n isValid: false,\n props: {\n validationmessage: msg\n }\n } as WmFormFieldState);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'datavalue':\n if (!isEqual($old, $new)) {\n PERFORMANCE_LOGGER.debug(`form field ${this.props.name} changed from ${$old} to ${$new}`);\n }\n break;\n case 'defaultvalue':\n if (!isEqual($old, $new)) {\n get(this, 'form') && this.form.applyDefaultValue(this);\n }\n break;\n case 'primary-key':\n if ($new) {\n this.form.setPrimaryKey(this.props.name);\n }\n break;\n }\n }\n\n setReadOnlyState(updateMode: any) {\n this.formwidget.updateState({\n props: {\n readonly: !updateMode,\n }\n } as WmFormFieldState);\n }\n\n validateFormField() {\n if (this.formwidget?.state.isValid === false) {\n const errorType = this.formwidget?.state?.errorType;\n let validationMsg = get(this.defaultValidatorMessages, errorType);\n if (validationMsg) {\n if (validationMsg instanceof Function) {\n // passing formwidget and form as arguments to the errorMessage function.\n validationMsg = validationMsg(this.formwidget.proxy, this.form);\n }\n this.updateState({ props: {\n validationmessage: validationMsg\n }} as WmFormFieldState);\n }\n this.updateState({ isValid: false} as WmFormFieldState);\n } else {\n this.updateState({ isValid: true } as WmFormFieldState);\n }\n\n this._syncValidators?.forEach((fn: any) => {\n const errormsg = fn();\n let validationMsg = errormsg?.errorMessage;\n if (validationMsg) {\n if (validationMsg instanceof Function) {\n // passing formwidget and form as arguments to the errorMessage function.\n validationMsg = validationMsg(this.formwidget.proxy, this.form);\n }\n this.setInvalidState(validationMsg);\n }\n })\n\n this._asyncValidatorFn && this._asyncValidatorFn();\n\n }\n\n renderWidget(props: WmFormFieldProps) {\n var childrenWithProps = React.Children.map(props.renderFormFields(this.proxy).props.children, (child) => {\n return React.cloneElement(child, {\n datavalue: props.datavalue,\n isValid: this.state.isValid,\n invokeEvent: this.invokeEventCallback.bind(this),\n triggerValidation: this.validateFormField.bind(this),\n onFieldChange: this.onFieldChangeEvt.bind(this),\n formRef: props.formRef });\n });\n return (\n <View style={this.styles.root}>{this._background}{childrenWithProps}\n {this.state.isValid === false && <Text {...this.getTestPropsForLabel('error_msg')} style={this.styles.errorMsg}>{props.validationmessage}</Text>}\n </View>\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","isEqual","get","find","cloneDeep","forEach","keys","WmFormFieldProps","DEFAULT_CLASS","PERFORMANCE_LOGGER","WmFormFieldState","constructor","arguments","_defineProperty","WmFormField","props","onFieldChangeEvt","name","$new","$old","isDefault","notifyChanges","validateFormField","updateState","datavalue","invokeEventCallback","undefined","form","updateDataOutput","call","observeOn","fields","field","formfield","formFields","f","proxy","notifyForFields","push","formwidget","validate","setTimeout","getPromiseList","validators","arr","fn","promise","Function","bind","Promise","setAsyncValidators","_asyncValidatorFn","all","then","err","validationMsg","hasOwnProperty","messageKeys","toString","setInvalidState","setValidators","_cloneValidators","_syncValidators","obj","index","key","defaultValidatorMessages","value","propsObj","updateFormWidgetDataset","res","displayField","dataset","data","datafield","displayfield","state","msg","isValid","validationmessage","onPropertyChange","debug","applyDefaultValue","setPrimaryKey","setReadOnlyState","updateMode","_this$formwidget","readonly","_this$formwidget2","_this$_syncValidators","_this$formwidget3","errorType","errormsg","errorMessage","renderWidget","childrenWithProps","Children","map","renderFormFields","children","child","cloneElement","invokeEvent","triggerValidation","onFieldChange","formRef","createElement","style","styles","root","_background","_extends","getTestPropsForLabel","errorMsg"],"sources":["form-field.component.tsx"],"sourcesContent":["import React from 'react';\nimport {Text, View} from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { widgetsWithUndefinedValue } from '@wavemaker/app-rn-runtime/core/utils';\nimport { isEqual, get, find, cloneDeep, forEach, keys } from 'lodash';\n\nimport WmFormFieldProps from './form-field.props';\nimport { DEFAULT_CLASS, WmFormFieldStyles } from './form-field.styles';\nimport {PERFORMANCE_LOGGER} from \"@wavemaker/app-rn-runtime/core/logger\";\n\nexport class WmFormFieldState extends BaseComponentState<WmFormFieldProps> {\n isValid = true;\n}\n\nexport default class WmFormField extends BaseComponent<WmFormFieldProps, WmFormFieldState, WmFormFieldStyles> {\n public form: any;\n public formwidget: any;\n public _syncValidators: any;\n public defaultValidatorMessages: any = [];\n private notifyForFields: any = [];\n private _asyncValidatorFn: any;\n constructor(props: WmFormFieldProps) {\n super(props, DEFAULT_CLASS, new WmFormFieldProps(), new WmFormFieldState());\n }\n\n onFieldChangeEvt(name: string, $new: any, $old: any, isDefault: boolean) {\n this.notifyChanges();\n this.validateFormField();\n if (!isEqual($old, $new)) {\n this.updateState({ props: { datavalue: $new }} as WmFormFieldState, () => {\n !isDefault && this.invokeEventCallback('onChange', [undefined, this, $new, $old]);\n });\n if (this.form) {\n this.form.updateDataOutput.call(this.form, get(this.props, 'formKey', this.props.name), $new);\n }\n }\n }\n\n // Registers observer of validation fields\n observeOn(fields: any) {\n forEach(fields, (field) => {\n const formfield = find(this.form.formFields, (f) => f.proxy.name === field);\n if (formfield) {\n formfield.notifyForFields.push(this);\n }\n });\n }\n\n // Notifies changes to observing validation fields\n notifyChanges() {\n forEach(this.notifyForFields, (field) => {\n field.formwidget.validate(field.formwidget.datavalue);\n setTimeout(() => field.validateFormField());\n });\n }\n\n getPromiseList(validators: any) {\n const arr: any = [];\n forEach(validators, (fn) => {\n let promise = fn;\n if (fn instanceof Function && fn.bind) {\n promise = fn(this.formwidget.proxy, this.form);\n }\n if (promise instanceof Promise) {\n arr.push(promise);\n }\n });\n return arr;\n }\n\n // this method sets the asyncValidation on the form field. Assigns validationmessages from the returned response\n setAsyncValidators(validators: any) {\n this._asyncValidatorFn = () => {\n return Promise.all(this.getPromiseList(validators)).then(() => {\n return null;\n }, err => {\n let validationMsg: string;\n // if err obj has validationMessage key, then set validationMessage using this value\n // else return the value of the first key in the err object as validation message.\n if (err.hasOwnProperty('errorMessage')) {\n validationMsg = get(err, 'errorMessage');\n } else {\n const messageKeys = keys(err);\n validationMsg = (err[messageKeys[0]]).toString();\n }\n this.setInvalidState(validationMsg);\n return err;\n })\n };\n }\n\n // sets the default validation on the form field\n setValidators(validators: any) {\n let _cloneValidators = cloneDeep(validators);\n this._syncValidators = [];\n forEach(_cloneValidators, (obj, index) => {\n // custom validation is bound to function.\n if (obj && obj instanceof Function) {\n // passing formwidget and form as arguments to the obj (i.e. validator function)\n _cloneValidators[index] = obj.bind(undefined, this.formwidget.proxy, this.form);\n this._syncValidators.push(_cloneValidators[index]);\n } else {\n // checks for default validator like required, maxchars etc.\n const key = get(obj, 'type');\n this.defaultValidatorMessages[key] = get(obj, 'errorMessage');\n const value = get(obj, 'validator');\n let propsObj: any = {\n props: {}\n };\n propsObj.props[key] = value;\n key === 'required' && this.updateState(propsObj as WmFormFieldState);\n this.formwidget.updateState(propsObj as WmFormFieldState);\n }\n });\n }\n\n updateFormWidgetDataset(res: any, displayField: string) {\n this.formwidget.updateState({\n props: {\n dataset: res.data,\n datafield: 'All Fields',\n displayfield: this.formwidget.state.props.displayfield || displayField,\n }\n } as WmFormFieldState);\n }\n\n setInvalidState(msg: string) {\n this.updateState({\n isValid: false,\n props: {\n validationmessage: msg\n }\n } as WmFormFieldState)\n this.formwidget.updateState({\n isValid: false,\n props: {\n validationmessage: msg\n }\n } as WmFormFieldState);\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'datavalue':\n if (!isEqual($old, $new)) {\n PERFORMANCE_LOGGER.debug(`form field ${this.props.name} changed from ${$old} to ${$new}`);\n }\n break;\n case 'defaultvalue':\n if (!isEqual($old, $new)) {\n get(this, 'form') && this.form.applyDefaultValue(this);\n }\n break;\n case 'primary-key':\n if ($new) {\n this.form.setPrimaryKey(this.props.name);\n }\n break;\n }\n }\n\n setReadOnlyState(updateMode: any) {\n this.formwidget?.updateState({\n props: {\n readonly: !updateMode,\n }\n } as WmFormFieldState);\n }\n\n validateFormField() {\n if (this.formwidget?.state.isValid === false) {\n const errorType = this.formwidget?.state?.errorType;\n let validationMsg = get(this.defaultValidatorMessages, errorType);\n if (validationMsg) {\n if (validationMsg instanceof Function) {\n // passing formwidget and form as arguments to the errorMessage function.\n validationMsg = validationMsg(this.formwidget.proxy, this.form);\n }\n this.updateState({ props: {\n validationmessage: validationMsg\n }} as WmFormFieldState);\n }\n this.updateState({ isValid: false} as WmFormFieldState);\n } else {\n this.updateState({ isValid: true } as WmFormFieldState);\n }\n\n this._syncValidators?.forEach((fn: any) => {\n const errormsg = fn();\n let validationMsg = errormsg?.errorMessage;\n if (validationMsg) {\n if (validationMsg instanceof Function) {\n // passing formwidget and form as arguments to the errorMessage function.\n validationMsg = validationMsg(this.formwidget.proxy, this.form);\n }\n this.setInvalidState(validationMsg);\n }\n })\n\n this._asyncValidatorFn && this._asyncValidatorFn();\n\n }\n\n renderWidget(props: WmFormFieldProps) {\n var childrenWithProps = React.Children.map(props.renderFormFields(this.proxy).props.children, (child) => {\n return React.cloneElement(child, {\n datavalue: props.datavalue,\n isValid: this.state.isValid,\n invokeEvent: this.invokeEventCallback.bind(this),\n triggerValidation: this.validateFormField.bind(this),\n onFieldChange: this.onFieldChangeEvt.bind(this),\n formRef: props.formRef });\n });\n return (\n <View style={this.styles.root}>{this._background}{childrenWithProps}\n {this.state.isValid === false && <Text {...this.getTestPropsForLabel('error_msg')} style={this.styles.errorMsg}>{props.validationmessage}</Text>}\n </View>\n );\n }\n}\n"],"mappings":"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"}
@@ -5,7 +5,7 @@ import React from 'react';
5
5
  import { View } from 'react-native';
6
6
  import { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';
7
7
  import { isDefined } from '@wavemaker/app-rn-runtime/core/utils';
8
- import { debounce, find, forEach, get, set } from 'lodash';
8
+ import { debounce, find, forEach, isNil, get, set, cloneDeep } from 'lodash';
9
9
  import WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.component';
10
10
  import WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';
11
11
  import WmMessage from '@wavemaker/app-rn-runtime/components/basic/message/message.component';
@@ -200,10 +200,12 @@ export default class WmForm extends BaseComponent {
200
200
  });
201
201
  }
202
202
  formreset() {
203
+ this.formdataoutput = {};
203
204
  forEach(this.formFields, ff => {
205
+ const defaultValue = isNil(ff.state.props.defaultvalue) ? '' : ff.state.props.defaultvalue;
204
206
  ff.updateState({
205
207
  props: {
206
- datavalue: ''
208
+ datavalue: defaultValue
207
209
  }
208
210
  }, () => {
209
211
  const id = ff.props.formKey || ff.props.name;
@@ -218,7 +220,7 @@ export default class WmForm extends BaseComponent {
218
220
  widget.updateState({
219
221
  isValid: true,
220
222
  props: {
221
- datavalue: ''
223
+ datavalue: defaultValue
222
224
  }
223
225
  }, () => ff.updateState({
224
226
  isValid: true
@@ -267,7 +269,7 @@ export default class WmForm extends BaseComponent {
267
269
  const val = field === null || field === void 0 ? void 0 : field.state.props.datavalue;
268
270
  const onValidate = get(field, 'props.onValidate');
269
271
  onValidate && onValidate(field);
270
- if (!val && field !== null && field !== void 0 && field.state.props.required && field.state.props.generator === 'assigned') {
272
+ if (!val && field !== null && field !== void 0 && field.state.props.required) {
271
273
  isValid = false;
272
274
  const msg = get(field.defaultValidatorMessages, 'required') || field.state.props.validationmessage;
273
275
  field.updateState({
@@ -289,7 +291,7 @@ export default class WmForm extends BaseComponent {
289
291
  // @ts-ignore
290
292
  handleSubmit(event) {
291
293
  event === null || event === void 0 ? void 0 : event.preventDefault();
292
- const formData = this.state.props.dataoutput || this.formdataoutput;
294
+ const formData = cloneDeep(this.state.props.dataoutput || this.formdataoutput);
293
295
  if (!this.validateFieldsOnSubmit()) {
294
296
  return false;
295
297
  }
@@ -355,7 +357,8 @@ export default class WmForm extends BaseComponent {
355
357
  },
356
358
  text: message,
357
359
  type: type,
358
- hideOnClick: true
360
+ hideOnClick: true,
361
+ duration: 5000
359
362
  });
360
363
  }
361
364
  onMsgClose() {