@wavemaker-ai/app-rn-runtime 12.0.1-rc.647755 → 12.0.2-rc.344

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 (83) hide show
  1. package/components/advanced/carousel/carousel.component.js +1 -1
  2. package/components/advanced/carousel/carousel.component.js.map +1 -1
  3. package/components/basic/bottomsheet/bottomsheet.component.js.map +1 -1
  4. package/components/basic/icon/svg-url-icon.component.js +26 -1
  5. package/components/basic/icon/svg-url-icon.component.js.map +1 -1
  6. package/components/basic/label/label.component.js +11 -1
  7. package/components/basic/label/label.component.js.map +1 -1
  8. package/components/basic/label/label.props.js +1 -0
  9. package/components/basic/label/label.props.js.map +1 -1
  10. package/components/chart/area-chart/area-chart.component.js +1 -1
  11. package/components/chart/area-chart/area-chart.component.js.map +1 -1
  12. package/components/chart/bar-chart/bar-chart.component.js +1 -1
  13. package/components/chart/bar-chart/bar-chart.component.js.map +1 -1
  14. package/components/chart/bubble-chart/bubble-chart.component.js +1 -1
  15. package/components/chart/bubble-chart/bubble-chart.component.js.map +1 -1
  16. package/components/chart/line-chart/line-chart.component.js +1 -1
  17. package/components/chart/line-chart/line-chart.component.js.map +1 -1
  18. package/components/chart/pie-chart/pie-chart.component.js +1 -1
  19. package/components/chart/pie-chart/pie-chart.component.js.map +1 -1
  20. package/components/chart/stack-chart/stack-chart.component.js +1 -1
  21. package/components/chart/stack-chart/stack-chart.component.js.map +1 -1
  22. package/components/container/accordion/accordionpane/accordionpane.component.js +2 -2
  23. package/components/container/accordion/accordionpane/accordionpane.component.js.map +1 -1
  24. package/components/container/container.component.js +1 -1
  25. package/components/container/container.component.js.map +1 -1
  26. package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js +7 -3
  27. package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js.map +1 -1
  28. package/components/container/panel/panel.component.js +1 -1
  29. package/components/container/panel/panel.component.js.map +1 -1
  30. package/components/container/tabs/tabpane/tabpane.component.js +1 -1
  31. package/components/container/tabs/tabpane/tabpane.component.js.map +1 -1
  32. package/components/container/wizard/wizardstep/wizardstep.component.js +1 -1
  33. package/components/container/wizard/wizardstep/wizardstep.component.js.map +1 -1
  34. package/components/data/form/form-field/form-field.component.js +20 -3
  35. package/components/data/form/form-field/form-field.component.js.map +1 -1
  36. package/components/data/form/form-field/form-field.props.js +1 -0
  37. package/components/data/form/form-field/form-field.props.js.map +1 -1
  38. package/components/data/form/form.component.js +7 -2
  39. package/components/data/form/form.component.js.map +1 -1
  40. package/components/data/form/form.props.js +1 -0
  41. package/components/data/form/form.props.js.map +1 -1
  42. package/components/data/list/list.component.js +2 -2
  43. package/components/data/list/list.component.js.map +1 -1
  44. package/components/input/baseinput/baseinput.component.js +2 -0
  45. package/components/input/baseinput/baseinput.component.js.map +1 -1
  46. package/components/input/basenumber/basenumber.props.js +1 -0
  47. package/components/input/basenumber/basenumber.props.js.map +1 -1
  48. package/components/input/calendar/calendar.component.js +1 -1
  49. package/components/input/calendar/calendar.component.js.map +1 -1
  50. package/components/input/checkboxset/checkboxset.component.js +1 -1
  51. package/components/input/checkboxset/checkboxset.component.js.map +1 -1
  52. package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js +6 -1
  53. package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js.map +1 -1
  54. package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js +6 -1
  55. package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js.map +1 -1
  56. package/components/input/radioset/radioset.component.js +2 -2
  57. package/components/input/radioset/radioset.component.js.map +1 -1
  58. package/components/input/text/text.component.js +1 -0
  59. package/components/input/text/text.component.js.map +1 -1
  60. package/components/page/left-panel/left-panel.component.js +1 -1
  61. package/components/page/left-panel/left-panel.component.js.map +1 -1
  62. package/components-prism/input/slider/slider.styles.js +1 -1
  63. package/components-prism/input/slider/slider.styles.js.map +1 -1
  64. package/core/AppConfig.js.map +1 -1
  65. package/core/base.component.js +23 -0
  66. package/core/base.component.js.map +1 -1
  67. package/core/components/textinput.component.js +2 -1
  68. package/core/components/textinput.component.js.map +1 -1
  69. package/core/environment.js +25 -0
  70. package/core/environment.js.map +1 -0
  71. package/npm-shrinkwrap.json +88 -89
  72. package/package-lock.json +88 -89
  73. package/package.json +2 -2
  74. package/runtime/App.js +1 -0
  75. package/runtime/App.js.map +1 -1
  76. package/runtime/base-fragment.component.js +28 -5
  77. package/runtime/base-fragment.component.js.map +1 -1
  78. package/runtime/base-page.component.js +2 -1
  79. package/runtime/base-page.component.js.map +1 -1
  80. package/runtime/navigator/stack.navigator.js +6 -0
  81. package/runtime/navigator/stack.navigator.js.map +1 -1
  82. package/styles/theme.js +21 -2
  83. package/styles/theme.js.map +1 -1
@@ -159,7 +159,7 @@ export default class WmPanel extends BaseComponent {
159
159
  style: styles,
160
160
  testID: this.getTestId(),
161
161
  onLayout: event => this.handleLayout(event)
162
- }, this.getBackground(), this.renderHeader(), this.renderPane(/*#__PURE__*/React.createElement(React.Fragment, null, this.renderContent(props), /*#__PURE__*/React.createElement(View, null, props.children))));
162
+ }, this.showSpinner(), this.getBackground(), this.renderHeader(), this.renderPane(/*#__PURE__*/React.createElement(React.Fragment, null, this.renderContent(props), /*#__PURE__*/React.createElement(View, null, props.children))));
163
163
  }
164
164
  }
165
165
  //# sourceMappingURL=panel.component.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","Text","View","TouchableOpacity","isUndefined","Badge","BaseComponent","BaseComponentState","WmIcon","WmPanelProps","DEFAULT_CLASS","isWebPreviewMode","CollapsiblePane","createSkeleton","WmLabel","WmPanelState","constructor","args","_defineProperty","WmPanel","props","onPartialLoad","invokeEventCallback","renderContent","renderPartial","state","isPartialLoaded","setTimeout","updateState","bind","onPanelPress","collapsible","eventName","expanded","proxy","getExpandCollapseIconClass","isExpanded","expandedIconClass","collapsedIconClass","expandedIcon","collapsedIcon","expandCollapseIcon","widgetProps","badge","badgevalue","undefined","createElement","_extends","style","styles","badgetype","getTestProps","expandedIconOverride","expandediconclass","collapsedIconOverride","collapsediconclass","iconclass","iconurl","expandediconurl","collapsediconurl","id","getTestId","name","toggleIcon","flexDirection","alignItems","renderHeader","getTestPropsForAction","header","onPress","accessibilityRole","icon","iconheight","iconwidth","iconmargin","flex","justifyContent","title","_showSkeleton","showskeleton","root","text","heading","caption","subheading","renderPane","content","display","maxHeight","overflow","close","getBackground","_background","renderSkeleton","showskeletonchildren","_this$props","skeletonStyles","skeleton","theme","opacity","Fragment","children","renderWidget","testID","onLayout","event","handleLayout"],"sources":["panel.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View, TouchableOpacity } from 'react-native';\nimport { isUndefined } from 'lodash';\nimport { Badge } from 'react-native-paper';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport WmIcon from '@wavemaker-ai/app-rn-runtime/components/basic/icon/icon.component';\n\nimport WmPanelProps from './panel.props';\nimport { DEFAULT_CLASS, WmPanelStyles } from './panel.styles';\nimport { isWebPreviewMode } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport { CollapsiblePane } from './collapsible-pane.component';\nimport { WmSkeletonStyles } from '@wavemaker-ai/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport { createSkeleton } from '@wavemaker-ai/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport WmLabel from '@wavemaker-ai/app-rn-runtime/components/basic/label/label.component';\n\nexport class WmPanelState extends BaseComponentState<WmPanelProps> {\n isPartialLoaded = false;\n}\n\nexport default class WmPanel extends BaseComponent<WmPanelProps, WmPanelState, WmPanelStyles> {\n constructor(props: WmPanelProps) {\n super(props, DEFAULT_CLASS, new WmPanelProps());\n }\n\n onPartialLoad() {\n this.invokeEventCallback('onLoad', [this]);\n }\n\n renderContent(props: WmPanelProps) {\n if (props.renderPartial) {\n if (!this.state.isPartialLoaded) {\n setTimeout(() => {\n this.updateState({\n isPartialLoaded: true\n } as WmPanelState);\n });\n }\n return props.renderPartial(props, this.onPartialLoad.bind(this));\n }\n }\n\n onPanelPress() {\n if (!this.state.props.collapsible) {\n return;\n }\n const eventName = this.state.props.expanded ? 'onCollapse' : 'onExpand';\n this.updateState({\n props: {\n expanded: !this.state.props.expanded\n }\n } as WmPanelState);\n\n this.invokeEventCallback(eventName, [null, this.proxy]);\n }\n\n private getExpandCollapseIconClass(isExpanded: boolean, expandedIconClass?: string, collapsedIconClass?: string): string {\n const expandedIcon = expandedIconClass || 'wi wi-chevron-up';\n const collapsedIcon = collapsedIconClass || 'wi wi-chevron-down';\n return isExpanded ? expandedIcon : collapsedIcon;\n }\n\n expandCollapseIcon(isExpanded: boolean) {\n const widgetProps = this.state.props;\n //@ts-ignore\n const badge = widgetProps.badgevalue != undefined ? (<Badge style={[this.styles.badge, this.styles[widgetProps.badgetype || 'default']]} {...this.getTestProps('badge')}>{widgetProps.badgevalue}</Badge>): null;\n\n const expandedIconOverride = widgetProps.expandediconclass;\n const collapsedIconOverride = widgetProps.collapsediconclass;\n const iconclass = this.getExpandCollapseIconClass(isExpanded, expandedIconOverride, collapsedIconOverride);\n const iconurl = isExpanded ? widgetProps.expandediconurl : widgetProps.collapsediconurl;\n\n const expandCollapseIcon = widgetProps.collapsible ? (<WmIcon id={this.getTestId('collapseicon')} name={'expand_collapse_icon'} styles={this.styles.toggleIcon} iconclass={iconclass} iconurl={iconurl}></WmIcon>) : null;\n return (<View style={{flexDirection: 'row', alignItems: 'center'}}>{badge}{expandCollapseIcon}</View>);\n }\n\n renderHeader() {\n const props = this.state.props;\n return (\n <TouchableOpacity\n {...this.getTestPropsForAction(`header`)}\n style={[this.styles.header]}\n onPress={this.onPanelPress.bind(this)}\n accessibilityRole='header'>\n {props.iconclass || props.iconurl ?\n <WmIcon styles={this.styles.icon}\n id={this.getTestId('icon')}\n name={props.name + '_icon'}\n iconclass={props.iconclass}\n iconheight={props.iconheight}\n iconwidth={props.iconwidth}\n iconmargin={props.iconmargin}\n iconurl={props.iconurl}\n /> : null}\n <View style={{flexDirection: 'column', flex: 1, justifyContent: 'center'}}>\n {props.title?\n (this._showSkeleton ?\n <WmLabel\n showskeleton={true}\n styles={{root: [\n this.styles.text,\n this.styles.heading]}} caption={isUndefined(props.title) ? 'Title' : props.title}/> :\n <Text style={[\n this.styles.text,\n this.styles.heading]}\n {...this.getTestPropsForAction(`header_title`)}>\n {isUndefined(props.title) ? 'Title' : props.title}\n </Text> ) : null }\n {props.subheading ?\n (this._showSkeleton ?\n <WmLabel\n showskeleton={true}\n styles={{root: this.styles.subheading}}\n caption={props.subheading} /> :\n <Text\n style={this.styles.subheading}\n {...this.getTestPropsForAction(`subheader`)}>\n {props.subheading}\n </Text> ) : null }\n </View>\n {this.expandCollapseIcon(props.expanded)}\n </TouchableOpacity>\n );\n }\n\n renderPane(content: React.ReactNode) {\n const expanded = this.state.props.expanded;\n return isWebPreviewMode() || this.styles.header.display == \"none\" ?\n (<View style={expanded ? {} : {maxHeight: 0, overflow: 'hidden'}}>\n {content}\n </View>) :\n (<CollapsiblePane close={!expanded}>\n {content}\n </CollapsiblePane>);\n }\n\n protected getBackground(): React.JSX.Element | null {\n return this._showSkeleton ? null : this._background\n }\n\n public renderSkeleton(props: WmPanelProps): React.ReactNode {\n if(!props.showskeletonchildren) {\n const skeletonStyles: WmSkeletonStyles = this.props?.styles?.skeleton || { root: {}, text: {} } as WmSkeletonStyles\n return createSkeleton(this.theme, skeletonStyles, {\n ...this.styles.root\n }, (<View style={[this.styles.root, { opacity: 0 }]}>\n {this.renderHeader()}\n {this.renderPane((\n <>\n {this.renderContent(props)}\n <View>{props.children}</View>\n </>\n ))}\n </View>))\n }\n return null;\n }\n\n renderWidget(props: WmPanelProps) {\n const styles = this._showSkeleton ? {\n ...this.styles.root,\n ...this.styles.skeleton.root\n } : this.styles.root\n return (\n <View\n style={styles}\n testID={this.getTestId()}\n onLayout={(event) => this.handleLayout(event)}\n >\n {this.getBackground()}\n {this.renderHeader()}\n {this.renderPane((\n <>\n {this.renderContent(props)}\n <View>{props.children}</View>\n </>\n ))}\n </View>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Text","View","TouchableOpacity","isUndefined","Badge","BaseComponent","BaseComponentState","WmIcon","WmPanelProps","DEFAULT_CLASS","isWebPreviewMode","CollapsiblePane","createSkeleton","WmLabel","WmPanelState","constructor","args","_defineProperty","WmPanel","props","onPartialLoad","invokeEventCallback","renderContent","renderPartial","state","isPartialLoaded","setTimeout","updateState","bind","onPanelPress","collapsible","eventName","expanded","proxy","getExpandCollapseIconClass","isExpanded","expandedIconClass","collapsedIconClass","expandedIcon","collapsedIcon","expandCollapseIcon","widgetProps","badge","badgevalue","undefined","createElement","_extends","style","styles","badgetype","getTestProps","expandedIconOverride","expandediconclass","collapsedIconOverride","collapsediconclass","iconclass","iconurl","expandediconurl","collapsediconurl","id","getTestId","name","toggleIcon","flexDirection","alignItems","renderHeader","getTestPropsForAction","header","onPress","accessibilityRole","icon","iconheight","iconwidth","iconmargin","flex","justifyContent","title","_showSkeleton","showskeleton","root","text","heading","caption","subheading","renderPane","content","display","maxHeight","overflow","close","getBackground","_background","renderSkeleton","showskeletonchildren","_this$props","skeletonStyles","skeleton","theme","opacity","Fragment","children","renderWidget","testID","onLayout","event","handleLayout","showSpinner"],"sources":["panel.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View, TouchableOpacity } from 'react-native';\nimport { isUndefined } from 'lodash';\nimport { Badge } from 'react-native-paper';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport WmIcon from '@wavemaker-ai/app-rn-runtime/components/basic/icon/icon.component';\n\nimport WmPanelProps from './panel.props';\nimport { DEFAULT_CLASS, WmPanelStyles } from './panel.styles';\nimport { isWebPreviewMode } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport { CollapsiblePane } from './collapsible-pane.component';\nimport { WmSkeletonStyles } from '@wavemaker-ai/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport { createSkeleton } from '@wavemaker-ai/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport WmLabel from '@wavemaker-ai/app-rn-runtime/components/basic/label/label.component';\n\nexport class WmPanelState extends BaseComponentState<WmPanelProps> {\n isPartialLoaded = false;\n}\n\nexport default class WmPanel extends BaseComponent<WmPanelProps, WmPanelState, WmPanelStyles> {\n constructor(props: WmPanelProps) {\n super(props, DEFAULT_CLASS, new WmPanelProps());\n }\n\n onPartialLoad() {\n this.invokeEventCallback('onLoad', [this]);\n }\n\n renderContent(props: WmPanelProps) {\n if (props.renderPartial) {\n if (!this.state.isPartialLoaded) {\n setTimeout(() => {\n this.updateState({\n isPartialLoaded: true\n } as WmPanelState);\n });\n }\n return props.renderPartial(props, this.onPartialLoad.bind(this));\n }\n }\n\n onPanelPress() {\n if (!this.state.props.collapsible) {\n return;\n }\n const eventName = this.state.props.expanded ? 'onCollapse' : 'onExpand';\n this.updateState({\n props: {\n expanded: !this.state.props.expanded\n }\n } as WmPanelState);\n\n this.invokeEventCallback(eventName, [null, this.proxy]);\n }\n\n private getExpandCollapseIconClass(isExpanded: boolean, expandedIconClass?: string, collapsedIconClass?: string): string {\n const expandedIcon = expandedIconClass || 'wi wi-chevron-up';\n const collapsedIcon = collapsedIconClass || 'wi wi-chevron-down';\n return isExpanded ? expandedIcon : collapsedIcon;\n }\n\n expandCollapseIcon(isExpanded: boolean) {\n const widgetProps = this.state.props;\n //@ts-ignore\n const badge = widgetProps.badgevalue != undefined ? (<Badge style={[this.styles.badge, this.styles[widgetProps.badgetype || 'default']]} {...this.getTestProps('badge')}>{widgetProps.badgevalue}</Badge>): null;\n\n const expandedIconOverride = widgetProps.expandediconclass;\n const collapsedIconOverride = widgetProps.collapsediconclass;\n const iconclass = this.getExpandCollapseIconClass(isExpanded, expandedIconOverride, collapsedIconOverride);\n const iconurl = isExpanded ? widgetProps.expandediconurl : widgetProps.collapsediconurl;\n\n const expandCollapseIcon = widgetProps.collapsible ? (<WmIcon id={this.getTestId('collapseicon')} name={'expand_collapse_icon'} styles={this.styles.toggleIcon} iconclass={iconclass} iconurl={iconurl}></WmIcon>) : null;\n return (<View style={{flexDirection: 'row', alignItems: 'center'}}>{badge}{expandCollapseIcon}</View>);\n }\n\n renderHeader() {\n const props = this.state.props;\n return (\n <TouchableOpacity\n {...this.getTestPropsForAction(`header`)}\n style={[this.styles.header]}\n onPress={this.onPanelPress.bind(this)}\n accessibilityRole='header'>\n {props.iconclass || props.iconurl ?\n <WmIcon styles={this.styles.icon}\n id={this.getTestId('icon')}\n name={props.name + '_icon'}\n iconclass={props.iconclass}\n iconheight={props.iconheight}\n iconwidth={props.iconwidth}\n iconmargin={props.iconmargin}\n iconurl={props.iconurl}\n /> : null}\n <View style={{flexDirection: 'column', flex: 1, justifyContent: 'center'}}>\n {props.title?\n (this._showSkeleton ?\n <WmLabel\n showskeleton={true}\n styles={{root: [\n this.styles.text,\n this.styles.heading]}} caption={isUndefined(props.title) ? 'Title' : props.title}/> :\n <Text style={[\n this.styles.text,\n this.styles.heading]}\n {...this.getTestPropsForAction(`header_title`)}>\n {isUndefined(props.title) ? 'Title' : props.title}\n </Text> ) : null }\n {props.subheading ?\n (this._showSkeleton ?\n <WmLabel\n showskeleton={true}\n styles={{root: this.styles.subheading}}\n caption={props.subheading} /> :\n <Text\n style={this.styles.subheading}\n {...this.getTestPropsForAction(`subheader`)}>\n {props.subheading}\n </Text> ) : null }\n </View>\n {this.expandCollapseIcon(props.expanded)}\n </TouchableOpacity>\n );\n }\n\n renderPane(content: React.ReactNode) {\n const expanded = this.state.props.expanded;\n return isWebPreviewMode() || this.styles.header.display == \"none\" ?\n (<View style={expanded ? {} : {maxHeight: 0, overflow: 'hidden'}}>\n {content}\n </View>) :\n (<CollapsiblePane close={!expanded}>\n {content}\n </CollapsiblePane>);\n }\n\n protected getBackground(): React.JSX.Element | null {\n return this._showSkeleton ? null : this._background\n }\n\n public renderSkeleton(props: WmPanelProps): React.ReactNode {\n if(!props.showskeletonchildren) {\n const skeletonStyles: WmSkeletonStyles = this.props?.styles?.skeleton || { root: {}, text: {} } as WmSkeletonStyles\n return createSkeleton(this.theme, skeletonStyles, {\n ...this.styles.root\n }, (<View style={[this.styles.root, { opacity: 0 }]}>\n {this.renderHeader()}\n {this.renderPane((\n <>\n {this.renderContent(props)}\n <View>{props.children}</View>\n </>\n ))}\n </View>))\n }\n return null;\n }\n\n renderWidget(props: WmPanelProps) {\n const styles = this._showSkeleton ? {\n ...this.styles.root,\n ...this.styles.skeleton.root\n } : this.styles.root\n return (\n <View\n style={styles}\n testID={this.getTestId()}\n onLayout={(event) => this.handleLayout(event)}\n >\n {this.showSpinner()}\n {this.getBackground()}\n {this.renderHeader()}\n {this.renderPane((\n <>\n {this.renderContent(props)}\n <View>{props.children}</View>\n </>\n ))}\n </View>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -100,7 +100,7 @@ export default class WmTabpane extends BaseComponent {
100
100
  this.notify('scroll', [event]);
101
101
  },
102
102
  onLayout: event => this.handleLayout(event)
103
- }, this._background, this.renderContent(props));
103
+ }, this.showSpinner(), this._background, this.renderContent(props));
104
104
  }
105
105
  }
106
106
  //# sourceMappingURL=tabpane.component.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","BaseComponent","BaseComponentState","extractAutoLayoutProps","getContentContainerStyle","getDirectionStyle","getDimensionStyle","isAutoLayout","AutoLayoutHost","WmTabpaneProps","DEFAULT_CLASS","WmTabpaneState","constructor","args","_defineProperty","WmTabpane","props","subscribe","event","state","isActive","onPartialLoad","invokeEventCallback","hasOwnFillHugResolution","_this$parent","parent","renderContent","renderPartial","isPartialLoaded","setTimeout","updateState","bind","children","showView","isVisible","componentDidMount","tabs","addTabPane","proxy","componentWillUnmount","removeTabPane","_onSelect","_onDeselect","select","selectTabPane","renderWidget","_this$parent2","autoLayoutProps","hasAutoLayout","shouldScroll","overflow","autoLayoutDirectionStyle","autoLayoutContentStyle","autoLayoutOuterDimensionStyle","styles","root","autoLayoutInnerDimensionStyle","createElement","containerStyle","contentStyle","minWidth","undefined","onScroll","notify","onLayout","handleLayout","_background"],"sources":["tabpane.component.tsx"],"sourcesContent":["import React from 'react';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport {extractAutoLayoutProps, getContentContainerStyle, getDirectionStyle, getDimensionStyle, isAutoLayout} from '@wavemaker-ai/app-rn-runtime/core/auto-layout.utils';\nimport { AutoLayoutHost } from '@wavemaker-ai/app-rn-runtime/core/auto-layout-host.component';\n\nimport WmTabpaneProps from './tabpane.props';\nimport { DEFAULT_CLASS, WmTabpaneStyles } from './tabpane.styles';\nimport WmTabs from '../tabs.component';\n\nexport class WmTabpaneState extends BaseComponentState<WmTabpaneProps> {\n isPartialLoaded = false;\n isActive = false;\n}\n\nexport default class WmTabpane extends BaseComponent<WmTabpaneProps, WmTabpaneState, WmTabpaneStyles> {\n public paneId: string = \"\";\n constructor(props: WmTabpaneProps) {\n super(props, DEFAULT_CLASS, new WmTabpaneProps(), new WmTabpaneState());\n this.subscribe('scroll', (event: any) => {\n return this.state.isActive;\n });\n }\n\n onPartialLoad() {\n this.invokeEventCallback('onLoad', [null, this]);\n }\n\n protected hasOwnFillHugResolution(): boolean {\n return isAutoLayout(extractAutoLayoutProps(this.state.props, this.parent?.state?.props));\n }\n\n renderContent(props: WmTabpaneProps) {\n if (props.renderPartial) {\n if (!this.state.isPartialLoaded) {\n setTimeout(() => {\n this.updateState({\n isPartialLoaded: true\n } as WmTabpaneState);\n });\n }\n return props.renderPartial(props, this.onPartialLoad.bind(this));\n }\n return props.children;\n }\n\n showView(): boolean {\n return this.isVisible() && this.state.isActive;\n }\n\n componentDidMount() {\n const tabs = (this.parent) as WmTabs;\n // When skeleton is enabled in the tabs component, the parent would be WMSkeleton which doesnot have addTabPane function\n if(tabs.addTabPane) {\n tabs.addTabPane(this.proxy as WmTabpane);\n }\n super.componentDidMount();\n }\n\n componentWillUnmount() {\n const tabs = (this.parent) as WmTabs;\n if(tabs.removeTabPane) {\n tabs.removeTabPane(this)\n }\n }\n\n _onSelect() {\n this.updateState({\n isActive: true\n } as WmTabpaneState);\n this.invokeEventCallback('onSelect', [null, this.proxy]);\n }\n _onDeselect() {\n this.updateState({\n isActive: false\n } as WmTabpaneState);\n this.invokeEventCallback('onDeselect', [null, this.proxy]);\n }\n\n select() {\n (this.parent as WmTabs).selectTabPane(this);\n }\n\n renderWidget(props: WmTabpaneProps) {\n const autoLayoutProps = extractAutoLayoutProps(\n props,\n this.parent?.state?.props\n );\n const hasAutoLayout = isAutoLayout(autoLayoutProps);\n const shouldScroll = !hasAutoLayout || autoLayoutProps.overflow === 'scroll';\n const autoLayoutDirectionStyle = hasAutoLayout ? getDirectionStyle(autoLayoutProps) : {};\n const autoLayoutContentStyle = hasAutoLayout ? getContentContainerStyle(autoLayoutProps) : {};\n const autoLayoutOuterDimensionStyle = hasAutoLayout ? getDimensionStyle(autoLayoutProps, this.styles.root) : {};\n const autoLayoutInnerDimensionStyle = hasAutoLayout ? getDimensionStyle(autoLayoutProps, this.styles.root, true) : {};\n\n return (\n <AutoLayoutHost\n autoLayoutProps={autoLayoutProps}\n shouldScroll={shouldScroll}\n containerStyle={[\n this.styles.root,\n hasAutoLayout ? { ...autoLayoutDirectionStyle, ...autoLayoutOuterDimensionStyle } : {},\n ]}\n contentStyle={hasAutoLayout ? {\n ...autoLayoutDirectionStyle,\n ...autoLayoutContentStyle,\n ...autoLayoutInnerDimensionStyle,\n minWidth: 0,\n } : undefined}\n onScroll={(event) => {this.notify('scroll', [event])}}\n onLayout={(event) => this.handleLayout(event)}\n >\n {this._background}\n {this.renderContent(props)}\n </AutoLayoutHost>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","BaseComponent","BaseComponentState","extractAutoLayoutProps","getContentContainerStyle","getDirectionStyle","getDimensionStyle","isAutoLayout","AutoLayoutHost","WmTabpaneProps","DEFAULT_CLASS","WmTabpaneState","constructor","args","_defineProperty","WmTabpane","props","subscribe","event","state","isActive","onPartialLoad","invokeEventCallback","hasOwnFillHugResolution","_this$parent","parent","renderContent","renderPartial","isPartialLoaded","setTimeout","updateState","bind","children","showView","isVisible","componentDidMount","tabs","addTabPane","proxy","componentWillUnmount","removeTabPane","_onSelect","_onDeselect","select","selectTabPane","renderWidget","_this$parent2","autoLayoutProps","hasAutoLayout","shouldScroll","overflow","autoLayoutDirectionStyle","autoLayoutContentStyle","autoLayoutOuterDimensionStyle","styles","root","autoLayoutInnerDimensionStyle","createElement","containerStyle","contentStyle","minWidth","undefined","onScroll","notify","onLayout","handleLayout","showSpinner","_background"],"sources":["tabpane.component.tsx"],"sourcesContent":["import React from 'react';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport {extractAutoLayoutProps, getContentContainerStyle, getDirectionStyle, getDimensionStyle, isAutoLayout} from '@wavemaker-ai/app-rn-runtime/core/auto-layout.utils';\nimport { AutoLayoutHost } from '@wavemaker-ai/app-rn-runtime/core/auto-layout-host.component';\n\nimport WmTabpaneProps from './tabpane.props';\nimport { DEFAULT_CLASS, WmTabpaneStyles } from './tabpane.styles';\nimport WmTabs from '../tabs.component';\n\nexport class WmTabpaneState extends BaseComponentState<WmTabpaneProps> {\n isPartialLoaded = false;\n isActive = false;\n}\n\nexport default class WmTabpane extends BaseComponent<WmTabpaneProps, WmTabpaneState, WmTabpaneStyles> {\n public paneId: string = \"\";\n constructor(props: WmTabpaneProps) {\n super(props, DEFAULT_CLASS, new WmTabpaneProps(), new WmTabpaneState());\n this.subscribe('scroll', (event: any) => {\n return this.state.isActive;\n });\n }\n\n onPartialLoad() {\n this.invokeEventCallback('onLoad', [null, this]);\n }\n\n protected hasOwnFillHugResolution(): boolean {\n return isAutoLayout(extractAutoLayoutProps(this.state.props, this.parent?.state?.props));\n }\n\n renderContent(props: WmTabpaneProps) {\n if (props.renderPartial) {\n if (!this.state.isPartialLoaded) {\n setTimeout(() => {\n this.updateState({\n isPartialLoaded: true\n } as WmTabpaneState);\n });\n }\n return props.renderPartial(props, this.onPartialLoad.bind(this));\n }\n return props.children;\n }\n\n showView(): boolean {\n return this.isVisible() && this.state.isActive;\n }\n\n componentDidMount() {\n const tabs = (this.parent) as WmTabs;\n // When skeleton is enabled in the tabs component, the parent would be WMSkeleton which doesnot have addTabPane function\n if(tabs.addTabPane) {\n tabs.addTabPane(this.proxy as WmTabpane);\n }\n super.componentDidMount();\n }\n\n componentWillUnmount() {\n const tabs = (this.parent) as WmTabs;\n if(tabs.removeTabPane) {\n tabs.removeTabPane(this)\n }\n }\n\n _onSelect() {\n this.updateState({\n isActive: true\n } as WmTabpaneState);\n this.invokeEventCallback('onSelect', [null, this.proxy]);\n }\n _onDeselect() {\n this.updateState({\n isActive: false\n } as WmTabpaneState);\n this.invokeEventCallback('onDeselect', [null, this.proxy]);\n }\n\n select() {\n (this.parent as WmTabs).selectTabPane(this);\n }\n\n renderWidget(props: WmTabpaneProps) {\n const autoLayoutProps = extractAutoLayoutProps(\n props,\n this.parent?.state?.props\n );\n const hasAutoLayout = isAutoLayout(autoLayoutProps);\n const shouldScroll = !hasAutoLayout || autoLayoutProps.overflow === 'scroll';\n const autoLayoutDirectionStyle = hasAutoLayout ? getDirectionStyle(autoLayoutProps) : {};\n const autoLayoutContentStyle = hasAutoLayout ? getContentContainerStyle(autoLayoutProps) : {};\n const autoLayoutOuterDimensionStyle = hasAutoLayout ? getDimensionStyle(autoLayoutProps, this.styles.root) : {};\n const autoLayoutInnerDimensionStyle = hasAutoLayout ? getDimensionStyle(autoLayoutProps, this.styles.root, true) : {};\n\n return (\n <AutoLayoutHost\n autoLayoutProps={autoLayoutProps}\n shouldScroll={shouldScroll}\n containerStyle={[\n this.styles.root,\n hasAutoLayout ? { ...autoLayoutDirectionStyle, ...autoLayoutOuterDimensionStyle } : {},\n ]}\n contentStyle={hasAutoLayout ? {\n ...autoLayoutDirectionStyle,\n ...autoLayoutContentStyle,\n ...autoLayoutInnerDimensionStyle,\n minWidth: 0,\n } : undefined}\n onScroll={(event) => {this.notify('scroll', [event])}}\n onLayout={(event) => this.handleLayout(event)}\n >\n {this.showSpinner()}\n {this._background}\n {this.renderContent(props)}\n </AutoLayoutHost>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -129,7 +129,7 @@ export default class WmWizardstep extends BaseComponent {
129
129
  minWidth: 0
130
130
  } : undefined,
131
131
  onLayout: event => this.handleLayout(event)
132
- }, this._background, this.renderContent(props));
132
+ }, this.showSpinner(), this._background, this.renderContent(props));
133
133
  }
134
134
  }
135
135
  //# sourceMappingURL=wizardstep.component.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","BaseComponent","BaseComponentState","extractAutoLayoutProps","getContentContainerStyle","getDirectionStyle","getDimensionStyle","isAutoLayout","AutoLayoutHost","WmWizardstepProps","DEFAULT_CLASS","WmWizardstepState","constructor","args","_defineProperty","WmWizardstep","props","hasOwnFillHugResolution","_this$parent","state","parent","componentDidMount","wizard","addWizardStep","onPropertyChange","name","$new","$old","refresh","setTimeout","forceUpdate","setActive","updateState","active","showContent","renderPartial","invokeEventCallback","index","setInActive","isVisible","invokeNextCB","proxy","invokePrevCB","invokeSkipCB","onWizardPartialLoad","renderContent","isPartialLoaded","bind","children","renderWidget","_this$parent2","autoLayoutProps","hasAutoLayout","shouldScroll","overflow","autoLayoutDirectionStyle","autoLayoutContentStyle","autoLayoutOuterDimensionStyle","styles","root","autoLayoutInnerDimensionStyle","createElement","containerStyle","contentStyle","minWidth","undefined","onLayout","event","handleLayout","_background"],"sources":["wizardstep.component.tsx"],"sourcesContent":["import React from 'react';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport {extractAutoLayoutProps, getContentContainerStyle, getDirectionStyle, getDimensionStyle, isAutoLayout} from '@wavemaker-ai/app-rn-runtime/core/auto-layout.utils';\nimport { AutoLayoutHost } from '@wavemaker-ai/app-rn-runtime/core/auto-layout-host.component';\n\nimport WmWizardstepProps from './wizardstep.props';\nimport { DEFAULT_CLASS, WmWizardstepStyles } from './wizardstep.styles';\nimport WmWizard from '../wizard.component';\nimport { isBoolean } from 'lodash-es';\n\nexport class WmWizardstepState extends BaseComponentState<WmWizardstepProps> {\n active = false;\n showContent: boolean = false;\n isPartialLoaded = 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 protected hasOwnFillHugResolution(): boolean {\n return isAutoLayout(extractAutoLayoutProps(this.state.props, this.parent?.state?.props));\n }\n\n componentDidMount() {\n const wizard = (this.parent) as WmWizard;\n // When skeleton is enabled in the wizard component, the parent would be WMSkeleton which doesnot have addWizardStep function\n if(wizard.addWizardStep) {\n wizard.addWizardStep(this);\n }\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 break;\n case 'disableprev':\n case 'disablenext':\n case 'disabledone':\n case 'enableskip':\n setTimeout(() => {\n this.parent.forceUpdate();\n }, 10);\n break;\n case 'show':\n if($new !== $old){\n setTimeout(() => {\n this.parent.forceUpdate();\n }, 10);\n }\n break;\n }\n }\n\n setActive() {\n this.updateState({\n active: true\n } as WmWizardstepState, () => {\n if(this.state.showContent && !this.state.props.renderPartial) {\n this.invokeEventCallback('onLoad', [this, this.state.props.index]);\n }\n });\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) : boolean {\n return this.invokeEventCallback('onPrev', [this.proxy, this, index]);\n }\n\n invokeSkipCB(index: number) {\n this.invokeEventCallback('onSkip', [this.proxy, this, index]);\n }\n\n onWizardPartialLoad() {\n this.invokeEventCallback('onLoad', [this, this.state.props.index]);\n }\n\n renderContent(props: WmWizardstepProps) {\n if (props.renderPartial) {\n if (!this.state.isPartialLoaded) {\n setTimeout(() => {\n this.updateState({\n isPartialLoaded: true\n } as WmWizardstepState);\n });\n }\n return props.renderPartial(props, this.onWizardPartialLoad.bind(this));\n }\n return props.children;\n }\n\n renderWidget(props: WmWizardstepProps) {\n if(!this.state.showContent && this.isVisible()){\n this.updateState({showContent: true} as WmWizardstepState, ()=>{\n if (!props.renderPartial) {\n this.invokeEventCallback('onLoad', [this, props.index]);\n }\n });\n }\n\n const autoLayoutProps = extractAutoLayoutProps(\n props,\n this.parent?.state?.props\n );\n const hasAutoLayout = isAutoLayout(autoLayoutProps);\n const shouldScroll = !hasAutoLayout || autoLayoutProps.overflow === 'scroll';\n const autoLayoutDirectionStyle = hasAutoLayout ? getDirectionStyle(autoLayoutProps) : {};\n const autoLayoutContentStyle = hasAutoLayout ? getContentContainerStyle(autoLayoutProps) : {};\n const autoLayoutOuterDimensionStyle = hasAutoLayout ? getDimensionStyle(autoLayoutProps, this.styles.root) : {};\n const autoLayoutInnerDimensionStyle = hasAutoLayout ? getDimensionStyle(autoLayoutProps, this.styles.root, true) : {};\n\n return this.state.showContent && (\n <AutoLayoutHost\n autoLayoutProps={autoLayoutProps}\n shouldScroll={shouldScroll}\n containerStyle={[\n this.styles.root,\n hasAutoLayout ? { ...autoLayoutDirectionStyle, ...autoLayoutOuterDimensionStyle } : {},\n ]}\n contentStyle={hasAutoLayout ? {\n ...autoLayoutDirectionStyle,\n ...autoLayoutContentStyle,\n ...autoLayoutInnerDimensionStyle,\n minWidth: 0,\n } : undefined}\n onLayout={(event) => this.handleLayout(event)}\n >\n {this._background}\n {this.renderContent(props)}\n </AutoLayoutHost>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","BaseComponent","BaseComponentState","extractAutoLayoutProps","getContentContainerStyle","getDirectionStyle","getDimensionStyle","isAutoLayout","AutoLayoutHost","WmWizardstepProps","DEFAULT_CLASS","WmWizardstepState","constructor","args","_defineProperty","WmWizardstep","props","hasOwnFillHugResolution","_this$parent","state","parent","componentDidMount","wizard","addWizardStep","onPropertyChange","name","$new","$old","refresh","setTimeout","forceUpdate","setActive","updateState","active","showContent","renderPartial","invokeEventCallback","index","setInActive","isVisible","invokeNextCB","proxy","invokePrevCB","invokeSkipCB","onWizardPartialLoad","renderContent","isPartialLoaded","bind","children","renderWidget","_this$parent2","autoLayoutProps","hasAutoLayout","shouldScroll","overflow","autoLayoutDirectionStyle","autoLayoutContentStyle","autoLayoutOuterDimensionStyle","styles","root","autoLayoutInnerDimensionStyle","createElement","containerStyle","contentStyle","minWidth","undefined","onLayout","event","handleLayout","showSpinner","_background"],"sources":["wizardstep.component.tsx"],"sourcesContent":["import React from 'react';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport {extractAutoLayoutProps, getContentContainerStyle, getDirectionStyle, getDimensionStyle, isAutoLayout} from '@wavemaker-ai/app-rn-runtime/core/auto-layout.utils';\nimport { AutoLayoutHost } from '@wavemaker-ai/app-rn-runtime/core/auto-layout-host.component';\n\nimport WmWizardstepProps from './wizardstep.props';\nimport { DEFAULT_CLASS, WmWizardstepStyles } from './wizardstep.styles';\nimport WmWizard from '../wizard.component';\nimport { isBoolean } from 'lodash-es';\n\nexport class WmWizardstepState extends BaseComponentState<WmWizardstepProps> {\n active = false;\n showContent: boolean = false;\n isPartialLoaded = 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 protected hasOwnFillHugResolution(): boolean {\n return isAutoLayout(extractAutoLayoutProps(this.state.props, this.parent?.state?.props));\n }\n\n componentDidMount() {\n const wizard = (this.parent) as WmWizard;\n // When skeleton is enabled in the wizard component, the parent would be WMSkeleton which doesnot have addWizardStep function\n if(wizard.addWizardStep) {\n wizard.addWizardStep(this);\n }\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 break;\n case 'disableprev':\n case 'disablenext':\n case 'disabledone':\n case 'enableskip':\n setTimeout(() => {\n this.parent.forceUpdate();\n }, 10);\n break;\n case 'show':\n if($new !== $old){\n setTimeout(() => {\n this.parent.forceUpdate();\n }, 10);\n }\n break;\n }\n }\n\n setActive() {\n this.updateState({\n active: true\n } as WmWizardstepState, () => {\n if(this.state.showContent && !this.state.props.renderPartial) {\n this.invokeEventCallback('onLoad', [this, this.state.props.index]);\n }\n });\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) : boolean {\n return this.invokeEventCallback('onPrev', [this.proxy, this, index]);\n }\n\n invokeSkipCB(index: number) {\n this.invokeEventCallback('onSkip', [this.proxy, this, index]);\n }\n\n onWizardPartialLoad() {\n this.invokeEventCallback('onLoad', [this, this.state.props.index]);\n }\n\n renderContent(props: WmWizardstepProps) {\n if (props.renderPartial) {\n if (!this.state.isPartialLoaded) {\n setTimeout(() => {\n this.updateState({\n isPartialLoaded: true\n } as WmWizardstepState);\n });\n }\n return props.renderPartial(props, this.onWizardPartialLoad.bind(this));\n }\n return props.children;\n }\n\n renderWidget(props: WmWizardstepProps) {\n if(!this.state.showContent && this.isVisible()){\n this.updateState({showContent: true} as WmWizardstepState, ()=>{\n if (!props.renderPartial) {\n this.invokeEventCallback('onLoad', [this, props.index]);\n }\n });\n }\n\n const autoLayoutProps = extractAutoLayoutProps(\n props,\n this.parent?.state?.props\n );\n const hasAutoLayout = isAutoLayout(autoLayoutProps);\n const shouldScroll = !hasAutoLayout || autoLayoutProps.overflow === 'scroll';\n const autoLayoutDirectionStyle = hasAutoLayout ? getDirectionStyle(autoLayoutProps) : {};\n const autoLayoutContentStyle = hasAutoLayout ? getContentContainerStyle(autoLayoutProps) : {};\n const autoLayoutOuterDimensionStyle = hasAutoLayout ? getDimensionStyle(autoLayoutProps, this.styles.root) : {};\n const autoLayoutInnerDimensionStyle = hasAutoLayout ? getDimensionStyle(autoLayoutProps, this.styles.root, true) : {};\n\n return this.state.showContent && (\n <AutoLayoutHost\n autoLayoutProps={autoLayoutProps}\n shouldScroll={shouldScroll}\n containerStyle={[\n this.styles.root,\n hasAutoLayout ? { ...autoLayoutDirectionStyle, ...autoLayoutOuterDimensionStyle } : {},\n ]}\n contentStyle={hasAutoLayout ? {\n ...autoLayoutDirectionStyle,\n ...autoLayoutContentStyle,\n ...autoLayoutInnerDimensionStyle,\n minWidth: 0,\n } : undefined}\n onLayout={(event) => this.handleLayout(event)}\n >\n {this.showSpinner()}\n {this._background}\n {this.renderContent(props)}\n </AutoLayoutHost>);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -20,6 +20,7 @@ export default class WmFormField extends BaseComponent {
20
20
  super(props, DEFAULT_CLASS, new WmFormFieldProps(), new WmFormFieldState());
21
21
  _defineProperty(this, "form", void 0);
22
22
  _defineProperty(this, "formwidget", void 0);
23
+ _defineProperty(this, "fieldIndex", -1);
23
24
  _defineProperty(this, "_syncValidators", void 0);
24
25
  _defineProperty(this, "defaultValidatorMessages", []);
25
26
  _defineProperty(this, "notifyForFields", []);
@@ -219,7 +220,9 @@ export default class WmFormField extends BaseComponent {
219
220
  return this.state.props.datavalue;
220
221
  }
221
222
  renderWidget(props) {
222
- var _this$props$styles, _this$props$styles2, _this$form4, _layoutStyle$flexGrow, _layoutStyle$flexShri;
223
+ var _this$form4, _this$form5, _this$props$styles, _this$props$styles2, _this$form7, _layoutStyle$flexGrow, _layoutStyle$flexShri;
224
+ const nextRef = (_this$form4 = this.form) === null || _this$form4 === void 0 ? void 0 : _this$form4.fieldRefs[this.fieldIndex + 1];
225
+ const currentRef = (_this$form5 = this.form) === null || _this$form5 === void 0 ? void 0 : _this$form5.fieldRefs[this.fieldIndex];
223
226
  // this.styles.root.height gets resolved (and cleared to undefined) by the height
224
227
  // fill|hug handling in base.component.tsx, so it can no longer be used to detect
225
228
  // whether the user explicitly declared a height — read the original, unresolved
@@ -268,6 +271,7 @@ export default class WmFormField extends BaseComponent {
268
271
  }
269
272
  } : existingStyles;
270
273
  return /*#__PURE__*/React.cloneElement(child, {
274
+ ref: currentRef,
271
275
  datavalue: props.datavalue || (child === null || child === void 0 || (_child$props3 = child.props) === null || _child$props3 === void 0 ? void 0 : _child$props3.datavalue),
272
276
  value: this.value,
273
277
  isValid: this.state.isValid,
@@ -281,6 +285,19 @@ export default class WmFormField extends BaseComponent {
281
285
  onFieldChange: this.onFieldChangeEvt.bind(this),
282
286
  formRef: props.formRef,
283
287
  isdefault: props.defaultvalue !== undefined ? true : false,
288
+ ...(props.returnkeytype !== 'auto' ? {
289
+ returnkeytype: props.returnkeytype,
290
+ onSubmitEditing: () => {
291
+ var _this$form6;
292
+ const isDone = props.returnkeytype === 'done';
293
+ if ((_this$form6 = this.form) !== null && _this$form6 !== void 0 && (_this$form6 = _this$form6.props) !== null && _this$form6 !== void 0 && _this$form6.submitondone && isDone) {
294
+ this.form.submit();
295
+ } else if (props.returnkeytype === 'next' && nextRef !== null && nextRef !== void 0 && nextRef.current) {
296
+ var _nextRef$current$focu, _nextRef$current;
297
+ (_nextRef$current$focu = (_nextRef$current = nextRef.current).focus) === null || _nextRef$current$focu === void 0 || _nextRef$current$focu.call(_nextRef$current);
298
+ }
299
+ }
300
+ } : {}),
284
301
  ...(!isNil(props === null || props === void 0 ? void 0 : props.placeholder) ? {
285
302
  placeholder: props.placeholder
286
303
  } : {}),
@@ -290,7 +307,7 @@ export default class WmFormField extends BaseComponent {
290
307
  });
291
308
  });
292
309
  const hasUserDefinedWidth = ((_this$props$styles2 = this.props.styles) === null || _this$props$styles2 === void 0 || (_this$props$styles2 = _this$props$styles2.root) === null || _this$props$styles2 === void 0 ? void 0 : _this$props$styles2.width) !== undefined;
293
- const layoutStyle = (_this$form4 = this.form) === null || _this$form4 === void 0 || (_this$form4 = _this$form4.state) === null || _this$form4 === void 0 ? void 0 : _this$form4.fieldLayoutStyle;
310
+ const layoutStyle = (_this$form7 = this.form) === null || _this$form7 === void 0 || (_this$form7 = _this$form7.state) === null || _this$form7 === void 0 ? void 0 : _this$form7.fieldLayoutStyle;
294
311
  const flexStyle = hasUserDefinedWidth ? {} : {
295
312
  width: (layoutStyle === null || layoutStyle === void 0 ? void 0 : layoutStyle.width) || '100%',
296
313
  flexGrow: (_layoutStyle$flexGrow = layoutStyle === null || layoutStyle === void 0 ? void 0 : layoutStyle.flexGrow) !== null && _layoutStyle$flexGrow !== void 0 ? _layoutStyle$flexGrow : 0,
@@ -299,7 +316,7 @@ export default class WmFormField extends BaseComponent {
299
316
  return /*#__PURE__*/React.createElement(View, {
300
317
  style: [this.styles.root, flexStyle],
301
318
  onLayout: event => this.handleLayout(event)
302
- }, this._background, childrenWithProps, this.state.isValid === false && /*#__PURE__*/React.createElement(Text, _extends({}, this.getTestPropsForLabel('error_msg'), {
319
+ }, this._background, childrenWithProps, this.state.isValid === false && !!props.validationmessage && /*#__PURE__*/React.createElement(Text, _extends({}, this.getTestPropsForLabel('error_msg'), {
303
320
  style: this.styles.errorMsg
304
321
  }), props.validationmessage));
305
322
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","isEqual","isNil","get","find","cloneDeep","forEach","keys","WmFormFieldProps","DEFAULT_CLASS","PERFORMANCE_LOGGER","WmFormFieldState","constructor","args","_defineProperty","WmFormField","props","form","formScope","componentDidMount","_this$form","_this$form2","_this$form3","formwidget","formKey","formWidgets","name","registerFormFields","formFields","onFieldChangeEvt","$new","$old","isDefault","notifyChanges","updateState","datavalue","invokeEventCallback","undefined","validateFormField","updateDataOutput","call","observeOn","fields","field","formfield","f","proxy","notifyForFields","push","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","_this$props$styles","_this$props$styles2","_this$form4","_layoutStyle$flexGrow","_layoutStyle$flexShri","declaredHeight","styles","root","height","width","hasDimensions","formFieldChildren","renderFormFields","children","hasLabelSibling","Children","count","childrenWithProps","map","child","_child$props","_child$props2","_child$props3","isFieldWidget","applyDimensions","dimensionStyles","flexGrow","flexShrink","minHeight","existingStyles","mergedStyles","cloneElement","maskchar","displayformat","autocomplete","autocapitalize","uppercase","invokeEvent","triggerValidation","onFieldChange","formRef","isdefault","defaultvalue","placeholder","hasUserDefinedWidth","layoutStyle","fieldLayoutStyle","flexStyle","createElement","style","onLayout","event","handleLayout","_background","_extends","getTestPropsForLabel","errorMsg"],"sources":["form-field.component.tsx"],"sourcesContent":["import React from 'react';\nimport {DimensionValue, Text, View} from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport { widgetsWithUndefinedValue } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport { isEqual, isNil, 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-ai/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 if (!this.form) {\n this.form = props.formScope && props.formScope();\n }\n }\n\n componentDidMount() {\n super.componentDidMount();\n this.formwidget = (this.props.formKey && this.form?.formWidgets[this.props.formKey])\n || (this.props.name && this.form?.formWidgets[this.props.name]);\n this.form?.registerFormFields(this.form.formFields, this.form.formWidgets);\n }\n\n onFieldChangeEvt(name: string, $new: any, $old: any, isDefault: boolean) {\n this.notifyChanges();\n if (!isEqual($old, $new)) {\n this.updateState({ props: { datavalue: $new }} as WmFormFieldState, () => {\n !isDefault && this.invokeEventCallback('onChange', [undefined, this, $new, $old]);\n this.validateFormField();\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 get value(){\n return this.state.props.datavalue;\n }\n\n renderWidget(props: WmFormFieldProps) {\n // this.styles.root.height gets resolved (and cleared to undefined) by the height\n // fill|hug handling in base.component.tsx, so it can no longer be used to detect\n // whether the user explicitly declared a height — read the original, unresolved\n // value from props.styles for that check instead. width doesn't need this: its\n // resolved value is only ever used to forward a literal width verbatim, so an\n // already-resolved 'fill' (now undefined) correctly contributes nothing either way.\n const declaredHeight = this.props.styles?.root?.height;\n const { height, width } = this.styles.root || {};\n const hasDimensions = declaredHeight !== undefined || width !== undefined;\n\n const formFieldChildren = props.renderFormFields(this.proxy).props.children;\n const hasLabelSibling = React.Children.count(formFieldChildren) > 1;\n\n // Only the actual data-bound widget (formfield=\"true\") is sized by the form-field's\n // height/width — the label keeps its own intrinsic size. When a label is stacked\n // alongside it (e.g. captionposition=\"top\"), or the height was resolved into flex\n // properties (fill/hug) rather than a literal value, the widget gets flexGrow/minHeight\n // instead of the raw height, so it fills the available space instead of adding on top\n // of it and overflowing the fixed-height root.\n var childrenWithProps = React.Children.map(formFieldChildren, (child) => {\n const isFieldWidget = child?.props?.formfield === 'true';\n const applyDimensions = hasDimensions && isFieldWidget;\n\n const dimensionStyles = applyDimensions\n ? {\n ...(width !== undefined ? { width } : {}),\n ...(declaredHeight !== undefined\n ? ((hasLabelSibling || height === undefined) ? { flexGrow: 1, flexShrink: 1, minHeight: 0 } : { height })\n : {})\n }\n : undefined;\n\n // Merge dimension styles with any existing styles on the child\n const existingStyles = child?.props?.styles || {};\n const mergedStyles = dimensionStyles\n ? {\n ...existingStyles,\n root: { ...existingStyles.root, ...dimensionStyles }\n }\n : existingStyles;\n\n return React.cloneElement(child, {\n datavalue: props.datavalue || child?.props?.datavalue,\n value: this.value,\n isValid: this.state.isValid,\n maskchar: props.maskchar,\n displayformat: props.displayformat,\n autocomplete: props.autocomplete,\n autocapitalize: props.autocapitalize,\n uppercase: props.uppercase,\n invokeEvent: this.invokeEventCallback.bind(this),\n triggerValidation: this.validateFormField.bind(this),\n onFieldChange: this.onFieldChangeEvt.bind(this),\n formRef: props.formRef,\n isdefault: props.defaultvalue !== undefined ? true : false,\n ...(!isNil(props?.placeholder) ? { placeholder: props.placeholder } : {}),\n ...(applyDimensions ? { styles: mergedStyles } : {})\n });\n });\n\n const hasUserDefinedWidth = this.props.styles?.root?.width !== undefined;\n const layoutStyle = this.form?.state?.fieldLayoutStyle;\n\n const flexStyle = hasUserDefinedWidth ? {} : {\n width: layoutStyle?.width || '100%',\n flexGrow: layoutStyle?.flexGrow ?? 0,\n flexShrink: layoutStyle?.flexShrink ?? 0,\n };\n\n return (\n <View\n style={[this.styles.root, flexStyle]}\n onLayout={(event) => this.handleLayout(event)}\n >\n {this._background}\n {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":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAAwBC,IAAI,EAAEC,IAAI,QAAO,cAAc;AACvD,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,kDAAkD;AAEpG,SAASC,OAAO,EAAEC,KAAK,EAAEC,GAAG,EAAEC,IAAI,EAAEC,SAAS,EAAEC,OAAO,EAAEC,IAAI,QAAQ,QAAQ;AAE5E,OAAOC,gBAAgB,MAAM,oBAAoB;AACjD,SAASC,aAAa,QAA2B,qBAAqB;AACtE,SAAQC,kBAAkB,QAAO,0CAA0C;AAE3E,OAAO,MAAMC,gBAAgB,SAASX,kBAAkB,CAAmB;EAAAY,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA,kBAC/D,IAAI;EAAA;AAChB;AAEA,eAAe,MAAMC,WAAW,SAAShB,aAAa,CAAwD;EAO5Ga,WAAWA,CAACI,KAAuB,EAAE;IACnC,KAAK,CAACA,KAAK,EAAEP,aAAa,EAAE,IAAID,gBAAgB,CAAC,CAAC,EAAE,IAAIG,gBAAgB,CAAC,CAAC,CAAC;IAACG,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,mCAJvC,EAAE;IAAAA,eAAA,0BACV,EAAE;IAAAA,eAAA;IAI/B,IAAI,CAAC,IAAI,CAACG,IAAI,EAAE;MACd,IAAI,CAACA,IAAI,GAAGD,KAAK,CAACE,SAAS,IAAIF,KAAK,CAACE,SAAS,CAAC,CAAC;IAClD;EACF;EAEAC,iBAAiBA,CAAA,EAAG;IAAA,IAAAC,UAAA,EAAAC,WAAA,EAAAC,WAAA;IAClB,KAAK,CAACH,iBAAiB,CAAC,CAAC;IACzB,IAAI,CAACI,UAAU,GAAI,IAAI,CAACP,KAAK,CAACQ,OAAO,MAAAJ,UAAA,GAAI,IAAI,CAACH,IAAI,cAAAG,UAAA,uBAATA,UAAA,CAAWK,WAAW,CAAC,IAAI,CAACT,KAAK,CAACQ,OAAO,CAAC,KAC7E,IAAI,CAACR,KAAK,CAACU,IAAI,MAAAL,WAAA,GAAI,IAAI,CAACJ,IAAI,cAAAI,WAAA,uBAATA,WAAA,CAAWI,WAAW,CAAC,IAAI,CAACT,KAAK,CAACU,IAAI,CAAC,CAAC;IACjE,CAAAJ,WAAA,OAAI,CAACL,IAAI,cAAAK,WAAA,eAATA,WAAA,CAAWK,kBAAkB,CAAC,IAAI,CAACV,IAAI,CAACW,UAAU,EAAE,IAAI,CAACX,IAAI,CAACQ,WAAW,CAAC;EAC5E;EAEAI,gBAAgBA,CAACH,IAAY,EAAEI,IAAS,EAAEC,IAAS,EAAEC,SAAkB,EAAE;IACvE,IAAI,CAACC,aAAa,CAAC,CAAC;IACpB,IAAI,CAAChC,OAAO,CAAC8B,IAAI,EAAED,IAAI,CAAC,EAAE;MACxB,IAAI,CAACI,WAAW,CAAC;QAAElB,KAAK,EAAE;UAAEmB,SAAS,EAAEL;QAAK;MAAC,CAAC,EAAsB,MAAM;QACxE,CAACE,SAAS,IAAI,IAAI,CAACI,mBAAmB,CAAC,UAAU,EAAE,CAACC,SAAS,EAAE,IAAI,EAAEP,IAAI,EAAEC,IAAI,CAAC,CAAC;QACjF,IAAI,CAACO,iBAAiB,CAAC,CAAC;MAC1B,CAAC,CAAC;MACF,IAAI,IAAI,CAACrB,IAAI,EAAE;QACb,IAAI,CAACA,IAAI,CAACsB,gBAAgB,CAACC,IAAI,CAAC,IAAI,CAACvB,IAAI,EAAEd,GAAG,CAAC,IAAI,CAACa,KAAK,EAAE,SAAS,EAAE,IAAI,CAACA,KAAK,CAACU,IAAI,CAAC,EAAEI,IAAI,CAAC;MAC/F;IACF;EACF;;EAEA;EACAW,SAASA,CAACC,MAAW,EAAE;IACrBpC,OAAO,CAACoC,MAAM,EAAGC,KAAK,IAAK;MACzB,MAAMC,SAAS,GAAGxC,IAAI,CAAC,IAAI,CAACa,IAAI,CAACW,UAAU,EAAGiB,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACpB,IAAI,KAAKiB,KAAK,CAAC;MAC3E,IAAIC,SAAS,EAAE;QACbA,SAAS,CAACG,eAAe,CAACC,IAAI,CAAC,IAAI,CAAC;MACtC;IACF,CAAC,CAAC;EACJ;;EAEA;EACAf,aAAaA,CAAA,EAAG;IACd3B,OAAO,CAAC,IAAI,CAACyC,eAAe,EAAGJ,KAAK,IAAK;MACvCA,KAAK,CAACpB,UAAU,CAAC0B,QAAQ,CAACN,KAAK,CAACpB,UAAU,CAACY,SAAS,CAAC;MACrDe,UAAU,CAAC,MAAMP,KAAK,CAACL,iBAAiB,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC;EACJ;EAEAa,cAAcA,CAACC,UAAe,EAAE;IAC9B,MAAMC,GAAQ,GAAG,EAAE;IACnB/C,OAAO,CAAC8C,UAAU,EAAGE,EAAE,IAAK;MAC1B,IAAIC,OAAO,GAAGD,EAAE;MAChB,IAAIA,EAAE,YAAYE,QAAQ,IAAIF,EAAE,CAACG,IAAI,EAAE;QACrCF,OAAO,GAAGD,EAAE,CAAC,IAAI,CAAC/B,UAAU,CAACuB,KAAK,EAAE,IAAI,CAAC7B,IAAI,CAAC;MAChD;MACA,IAAIsC,OAAO,YAAYG,OAAO,EAAE;QAC9BL,GAAG,CAACL,IAAI,CAACO,OAAO,CAAC;MACnB;IACF,CAAC,CAAC;IACF,OAAOF,GAAG;EACZ;;EAEA;EACAM,kBAAkBA,CAACP,UAAe,EAAE;IAClC,IAAI,CAACQ,iBAAiB,GAAG,MAAM;MAC3B,OAAOF,OAAO,CAACG,GAAG,CAAC,IAAI,CAACV,cAAc,CAACC,UAAU,CAAC,CAAC,CAACU,IAAI,CAAC,MAAM;QAC7D,OAAO,IAAI;MACb,CAAC,EAAEC,GAAG,IAAI;QACR,IAAIC,aAAqB;QACzB;QACA;QACA,IAAID,GAAG,CAACE,cAAc,CAAC,cAAc,CAAC,EAAE;UACtCD,aAAa,GAAG7D,GAAG,CAAC4D,GAAG,EAAE,cAAc,CAAC;QAC1C,CAAC,MAAM;UACL,MAAMG,WAAW,GAAG3D,IAAI,CAACwD,GAAG,CAAC;UAC7BC,aAAa,GAAID,GAAG,CAACG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAEC,QAAQ,CAAC,CAAC;QAClD;QACA,IAAI,CAACC,eAAe,CAACJ,aAAa,CAAC;QACnC,OAAOD,GAAG;MACZ,CAAC,CAAC;IACJ,CAAC;EACL;;EAEA;EACAM,aAAaA,CAACjB,UAAe,EAAE;IAC7B,IAAIkB,gBAAgB,GAAGjE,SAAS,CAAC+C,UAAU,CAAC;IAC5C,IAAI,CAACmB,eAAe,GAAG,EAAE;IACzBjE,OAAO,CAACgE,gBAAgB,EAAE,CAACE,GAAG,EAAEC,KAAK,KAAK;MACxC;MACA,IAAID,GAAG,IAAIA,GAAG,YAAYhB,QAAQ,EAAE;QAClC;QACAc,gBAAgB,CAACG,KAAK,CAAC,GAAGD,GAAG,CAACf,IAAI,CAACpB,SAAS,EAAE,IAAI,CAACd,UAAU,CAACuB,KAAK,EAAE,IAAI,CAAC7B,IAAI,CAAC;QAC/E,IAAI,CAACsD,eAAe,CAACvB,IAAI,CAACsB,gBAAgB,CAACG,KAAK,CAAC,CAAC;MACpD,CAAC,MAAM;QACL;QACA,MAAMC,GAAG,GAAGvE,GAAG,CAACqE,GAAG,EAAE,MAAM,CAAC;QAC5B,IAAI,CAACG,wBAAwB,CAACD,GAAG,CAAC,GAAGvE,GAAG,CAACqE,GAAG,EAAE,cAAc,CAAC;QAC7D,MAAMI,KAAK,GAAGzE,GAAG,CAACqE,GAAG,EAAE,WAAW,CAAC;QACnC,IAAIK,QAAa,GAAG;UAClB7D,KAAK,EAAE,CAAC;QACV,CAAC;QACD6D,QAAQ,CAAC7D,KAAK,CAAC0D,GAAG,CAAC,GAAGE,KAAK;QAC3BF,GAAG,KAAK,UAAU,IAAI,IAAI,CAACxC,WAAW,CAAC2C,QAA4B,CAAC;QACpE,IAAI,CAACtD,UAAU,CAACW,WAAW,CAAC2C,QAA4B,CAAC;MAC3D;IACF,CAAC,CAAC;EACJ;EAEAC,uBAAuBA,CAACC,GAAQ,EAAEC,YAAoB,EAAE;IACtD,IAAI,CAACzD,UAAU,CAACW,WAAW,CAAC;MAC1BlB,KAAK,EAAE;QACLiE,OAAO,EAAEF,GAAG,CAACG,IAAI;QACjBC,SAAS,EAAE,YAAY;QACvBC,YAAY,EAAE,IAAI,CAAC7D,UAAU,CAAC8D,KAAK,CAACrE,KAAK,CAACoE,YAAY,IAAIJ;MAC5D;IACF,CAAqB,CAAC;EACxB;EAEAZ,eAAeA,CAACkB,GAAW,EAAE;IAC3B,IAAI,CAACpD,WAAW,CAAC;MACfqD,OAAO,EAAE,KAAK;MACdvE,KAAK,EAAE;QACLwE,iBAAiB,EAAEF;MACrB;IACF,CAAqB,CAAC;IACtB,IAAI,CAAC/D,UAAU,CAACW,WAAW,CAAC;MAC1BqD,OAAO,EAAE,KAAK;MACdvE,KAAK,EAAE;QACLwE,iBAAiB,EAAEF;MACrB;IACF,CAAqB,CAAC;EACxB;EAEAG,gBAAgBA,CAAC/D,IAAY,EAAEI,IAAS,EAAEC,IAAS,EAAE;IACnD,QAAQL,IAAI;MACV,KAAK,WAAW;QACd,IAAI,CAACzB,OAAO,CAAC8B,IAAI,EAAED,IAAI,CAAC,EAAE;UACxBpB,kBAAkB,CAACgF,KAAK,CAAC,cAAc,IAAI,CAAC1E,KAAK,CAACU,IAAI,iBAAiBK,IAAI,OAAOD,IAAI,EAAE,CAAC;QAC3F;QACA;MACF,KAAK,cAAc;QACjB,IAAI,CAAC7B,OAAO,CAAC8B,IAAI,EAAED,IAAI,CAAC,EAAE;UACxB3B,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,CAACc,IAAI,CAAC0E,iBAAiB,CAAC,IAAI,CAAC;QACxD;QACA;MACF,KAAK,aAAa;QAChB,IAAI7D,IAAI,EAAE;UACR,IAAI,CAACb,IAAI,CAAC2E,aAAa,CAAC,IAAI,CAAC5E,KAAK,CAACU,IAAI,CAAC;QAC1C;QACA;IACJ;EACF;EAEAmE,gBAAgBA,CAACC,UAAe,EAAE;IAAA,IAAAC,gBAAA;IAChC,CAAAA,gBAAA,OAAI,CAACxE,UAAU,cAAAwE,gBAAA,eAAfA,gBAAA,CAAiB7D,WAAW,CAAC;MAC3BlB,KAAK,EAAE;QACLgF,QAAQ,EAAE,CAACF;MACb;IACF,CAAqB,CAAC;EACxB;EAEAxD,iBAAiBA,CAAA,EAAG;IAAA,IAAA2D,iBAAA,EAAAC,qBAAA;IAClB,IAAI,EAAAD,iBAAA,OAAI,CAAC1E,UAAU,cAAA0E,iBAAA,uBAAfA,iBAAA,CAAiBZ,KAAK,CAACE,OAAO,MAAK,KAAK,EAAE;MAAA,IAAAY,iBAAA;MAC5C,MAAMC,SAAS,IAAAD,iBAAA,GAAG,IAAI,CAAC5E,UAAU,cAAA4E,iBAAA,gBAAAA,iBAAA,GAAfA,iBAAA,CAAiBd,KAAK,cAAAc,iBAAA,uBAAtBA,iBAAA,CAAwBC,SAAS;MACnD,IAAIpC,aAAa,GAAG7D,GAAG,CAAC,IAAI,CAACwE,wBAAwB,EAAEyB,SAAS,CAAC;MACjE,IAAIpC,aAAa,EAAE;QACjB,IAAIA,aAAa,YAAYR,QAAQ,EAAE;UACrC;UACAQ,aAAa,GAAGA,aAAa,CAAC,IAAI,CAACzC,UAAU,CAACuB,KAAK,EAAE,IAAI,CAAC7B,IAAI,CAAC;QACjE;QACA,IAAI,CAACiB,WAAW,CAAC;UAAElB,KAAK,EAAE;YACtBwE,iBAAiB,EAAExB;UACrB;QAAC,CAAqB,CAAC;MAC3B;MACA,IAAI,CAAC9B,WAAW,CAAC;QAAEqD,OAAO,EAAE;MAAK,CAAqB,CAAC;IACzD,CAAC,MAAM;MACL,IAAI,CAACrD,WAAW,CAAC;QAAEqD,OAAO,EAAE;MAAK,CAAqB,CAAC;IACzD;IAEA,CAAAW,qBAAA,OAAI,CAAC3B,eAAe,cAAA2B,qBAAA,eAApBA,qBAAA,CAAsB5F,OAAO,CAAEgD,EAAO,IAAK;MACzC,MAAM+C,QAAQ,GAAG/C,EAAE,CAAC,CAAC;MACrB,IAAIU,aAAa,GAAGqC,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEC,YAAY;MAC1C,IAAItC,aAAa,EAAE;QACjB,IAAIA,aAAa,YAAYR,QAAQ,EAAE;UACrC;UACAQ,aAAa,GAAGA,aAAa,CAAC,IAAI,CAACzC,UAAU,CAACuB,KAAK,EAAE,IAAI,CAAC7B,IAAI,CAAC;QACjE;QACA,IAAI,CAACmD,eAAe,CAACJ,aAAa,CAAC;MACrC;IACF,CAAC,CAAC;IAEF,IAAI,CAACJ,iBAAiB,IAAI,IAAI,CAACA,iBAAiB,CAAC,CAAC;EAEpD;EAEA,IAAIgB,KAAKA,CAAA,EAAE;IACT,OAAO,IAAI,CAACS,KAAK,CAACrE,KAAK,CAACmB,SAAS;EACnC;EAEAoE,YAAYA,CAACvF,KAAuB,EAAE;IAAA,IAAAwF,kBAAA,EAAAC,mBAAA,EAAAC,WAAA,EAAAC,qBAAA,EAAAC,qBAAA;IACpC;IACA;IACA;IACA;IACA;IACA;IACA,MAAMC,cAAc,IAAAL,kBAAA,GAAG,IAAI,CAACxF,KAAK,CAAC8F,MAAM,cAAAN,kBAAA,gBAAAA,kBAAA,GAAjBA,kBAAA,CAAmBO,IAAI,cAAAP,kBAAA,uBAAvBA,kBAAA,CAAyBQ,MAAM;IACtD,MAAM;MAAEA,MAAM;MAAEC;IAAM,CAAC,GAAG,IAAI,CAACH,MAAM,CAACC,IAAI,IAAI,CAAC,CAAC;IAChD,MAAMG,aAAa,GAAGL,cAAc,KAAKxE,SAAS,IAAI4E,KAAK,KAAK5E,SAAS;IAEzE,MAAM8E,iBAAiB,GAAGnG,KAAK,CAACoG,gBAAgB,CAAC,IAAI,CAACtE,KAAK,CAAC,CAAC9B,KAAK,CAACqG,QAAQ;IAC3E,MAAMC,eAAe,GAAG1H,KAAK,CAAC2H,QAAQ,CAACC,KAAK,CAACL,iBAAiB,CAAC,GAAG,CAAC;;IAEnE;IACA;IACA;IACA;IACA;IACA;IACA,IAAIM,iBAAiB,GAAG7H,KAAK,CAAC2H,QAAQ,CAACG,GAAG,CAACP,iBAAiB,EAAGQ,KAAK,IAAK;MAAA,IAAAC,YAAA,EAAAC,aAAA,EAAAC,aAAA;MACvE,MAAMC,aAAa,GAAG,CAAAJ,KAAK,aAALA,KAAK,gBAAAC,YAAA,GAALD,KAAK,CAAE3G,KAAK,cAAA4G,YAAA,uBAAZA,YAAA,CAAchF,SAAS,MAAK,MAAM;MACxD,MAAMoF,eAAe,GAAGd,aAAa,IAAIa,aAAa;MAEtD,MAAME,eAAe,GAAGD,eAAe,GACnC;QACE,IAAIf,KAAK,KAAK5E,SAAS,GAAG;UAAE4E;QAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACzC,IAAIJ,cAAc,KAAKxE,SAAS,GAC1BiF,eAAe,IAAIN,MAAM,KAAK3E,SAAS,GAAI;UAAE6F,QAAQ,EAAE,CAAC;UAAEC,UAAU,EAAE,CAAC;UAAEC,SAAS,EAAE;QAAE,CAAC,GAAG;UAAEpB;QAAO,CAAC,GACtG,CAAC,CAAC;MACR,CAAC,GACD3E,SAAS;;MAEb;MACA,MAAMgG,cAAc,GAAG,CAAAV,KAAK,aAALA,KAAK,gBAAAE,aAAA,GAALF,KAAK,CAAE3G,KAAK,cAAA6G,aAAA,uBAAZA,aAAA,CAAcf,MAAM,KAAI,CAAC,CAAC;MACjD,MAAMwB,YAAY,GAAGL,eAAe,GAChC;QACE,GAAGI,cAAc;QACjBtB,IAAI,EAAE;UAAE,GAAGsB,cAAc,CAACtB,IAAI;UAAE,GAAGkB;QAAgB;MACrD,CAAC,GACDI,cAAc;MAElB,oBAAOzI,KAAK,CAAC2I,YAAY,CAACZ,KAAK,EAAE;QAC7BxF,SAAS,EAAEnB,KAAK,CAACmB,SAAS,KAAIwF,KAAK,aAALA,KAAK,gBAAAG,aAAA,GAALH,KAAK,CAAE3G,KAAK,cAAA8G,aAAA,uBAAZA,aAAA,CAAc3F,SAAS;QACrDyC,KAAK,EAAE,IAAI,CAACA,KAAK;QACjBW,OAAO,EAAE,IAAI,CAACF,KAAK,CAACE,OAAO;QAC3BiD,QAAQ,EAAExH,KAAK,CAACwH,QAAQ;QACxBC,aAAa,EAAEzH,KAAK,CAACyH,aAAa;QAClCC,YAAY,EAAE1H,KAAK,CAAC0H,YAAY;QAChCC,cAAc,EAAE3H,KAAK,CAAC2H,cAAc;QACpCC,SAAS,EAAE5H,KAAK,CAAC4H,SAAS;QAC1BC,WAAW,EAAE,IAAI,CAACzG,mBAAmB,CAACqB,IAAI,CAAC,IAAI,CAAC;QAChDqF,iBAAiB,EAAE,IAAI,CAACxG,iBAAiB,CAACmB,IAAI,CAAC,IAAI,CAAC;QACpDsF,aAAa,EAAE,IAAI,CAAClH,gBAAgB,CAAC4B,IAAI,CAAC,IAAI,CAAC;QAC/CuF,OAAO,EAAEhI,KAAK,CAACgI,OAAO;QACtBC,SAAS,EAAEjI,KAAK,CAACkI,YAAY,KAAK7G,SAAS,GAAG,IAAI,GAAG,KAAK;QAC1D,IAAI,CAACnC,KAAK,CAACc,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEmI,WAAW,CAAC,GAAG;UAAEA,WAAW,EAAEnI,KAAK,CAACmI;QAAY,CAAC,GAAG,CAAC,CAAC,CAAC;QACzE,IAAInB,eAAe,GAAG;UAAElB,MAAM,EAAEwB;QAAa,CAAC,GAAG,CAAC,CAAC;MACpD,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,MAAMc,mBAAmB,GAAG,EAAA3C,mBAAA,OAAI,CAACzF,KAAK,CAAC8F,MAAM,cAAAL,mBAAA,gBAAAA,mBAAA,GAAjBA,mBAAA,CAAmBM,IAAI,cAAAN,mBAAA,uBAAvBA,mBAAA,CAAyBQ,KAAK,MAAK5E,SAAS;IACxE,MAAMgH,WAAW,IAAA3C,WAAA,GAAG,IAAI,CAACzF,IAAI,cAAAyF,WAAA,gBAAAA,WAAA,GAATA,WAAA,CAAWrB,KAAK,cAAAqB,WAAA,uBAAhBA,WAAA,CAAkB4C,gBAAgB;IAEtD,MAAMC,SAAS,GAAGH,mBAAmB,GAAG,CAAC,CAAC,GAAG;MAC3CnC,KAAK,EAAE,CAAAoC,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEpC,KAAK,KAAI,MAAM;MACnCiB,QAAQ,GAAAvB,qBAAA,GAAE0C,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEnB,QAAQ,cAAAvB,qBAAA,cAAAA,qBAAA,GAAI,CAAC;MACpCwB,UAAU,GAAAvB,qBAAA,GAAEyC,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAElB,UAAU,cAAAvB,qBAAA,cAAAA,qBAAA,GAAI;IACzC,CAAC;IAED,oBACEhH,KAAA,CAAA4J,aAAA,CAAC1J,IAAI;MACH2J,KAAK,EAAE,CAAC,IAAI,CAAC3C,MAAM,CAACC,IAAI,EAAEwC,SAAS,CAAE;MACrCG,QAAQ,EAAGC,KAAK,IAAK,IAAI,CAACC,YAAY,CAACD,KAAK;IAAE,GAE7C,IAAI,CAACE,WAAW,EAChBpC,iBAAiB,EACjB,IAAI,CAACpC,KAAK,CAACE,OAAO,KAAK,KAAK,iBAAI3F,KAAA,CAAA4J,aAAA,CAAC3J,IAAI,EAAAiK,QAAA,KAAK,IAAI,CAACC,oBAAoB,CAAC,WAAW,CAAC;MAAEN,KAAK,EAAE,IAAI,CAAC3C,MAAM,CAACkD;IAAS,IAAEhJ,KAAK,CAACwE,iBAAwB,CAC3I,CAAC;EAEX;AACF","ignoreList":[]}
1
+ {"version":3,"names":["React","Text","View","BaseComponent","BaseComponentState","isEqual","isNil","get","find","cloneDeep","forEach","keys","WmFormFieldProps","DEFAULT_CLASS","PERFORMANCE_LOGGER","WmFormFieldState","constructor","args","_defineProperty","WmFormField","props","form","formScope","componentDidMount","_this$form","_this$form2","_this$form3","formwidget","formKey","formWidgets","name","registerFormFields","formFields","onFieldChangeEvt","$new","$old","isDefault","notifyChanges","updateState","datavalue","invokeEventCallback","undefined","validateFormField","updateDataOutput","call","observeOn","fields","field","formfield","f","proxy","notifyForFields","push","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","_this$form4","_this$form5","_this$props$styles","_this$props$styles2","_this$form7","_layoutStyle$flexGrow","_layoutStyle$flexShri","nextRef","fieldRefs","fieldIndex","currentRef","declaredHeight","styles","root","height","width","hasDimensions","formFieldChildren","renderFormFields","children","hasLabelSibling","Children","count","childrenWithProps","map","child","_child$props","_child$props2","_child$props3","isFieldWidget","applyDimensions","dimensionStyles","flexGrow","flexShrink","minHeight","existingStyles","mergedStyles","cloneElement","ref","maskchar","displayformat","autocomplete","autocapitalize","uppercase","invokeEvent","triggerValidation","onFieldChange","formRef","isdefault","defaultvalue","returnkeytype","onSubmitEditing","_this$form6","isDone","submitondone","submit","current","_nextRef$current$focu","_nextRef$current","focus","placeholder","hasUserDefinedWidth","layoutStyle","fieldLayoutStyle","flexStyle","createElement","style","onLayout","event","handleLayout","_background","_extends","getTestPropsForLabel","errorMsg"],"sources":["form-field.component.tsx"],"sourcesContent":["import React from 'react';\nimport {DimensionValue, Text, View} from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport { widgetsWithUndefinedValue } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport { isEqual, isNil, 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-ai/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 fieldIndex: number = -1;\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 if (!this.form) {\n this.form = props.formScope && props.formScope();\n }\n }\n\n componentDidMount() {\n super.componentDidMount();\n this.formwidget = (this.props.formKey && this.form?.formWidgets[this.props.formKey])\n || (this.props.name && this.form?.formWidgets[this.props.name]);\n this.form?.registerFormFields(this.form.formFields, this.form.formWidgets);\n }\n\n onFieldChangeEvt(name: string, $new: any, $old: any, isDefault: boolean) {\n this.notifyChanges();\n if (!isEqual($old, $new)) {\n this.updateState({ props: { datavalue: $new }} as WmFormFieldState, () => {\n !isDefault && this.invokeEventCallback('onChange', [undefined, this, $new, $old]);\n this.validateFormField();\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 get value(){\n return this.state.props.datavalue;\n }\n\n renderWidget(props: WmFormFieldProps) {\n const nextRef = this.form?.fieldRefs[this.fieldIndex + 1];\n const currentRef = this.form?.fieldRefs[this.fieldIndex];\n // this.styles.root.height gets resolved (and cleared to undefined) by the height\n // fill|hug handling in base.component.tsx, so it can no longer be used to detect\n // whether the user explicitly declared a height — read the original, unresolved\n // value from props.styles for that check instead. width doesn't need this: its\n // resolved value is only ever used to forward a literal width verbatim, so an\n // already-resolved 'fill' (now undefined) correctly contributes nothing either way.\n const declaredHeight = this.props.styles?.root?.height;\n const { height, width } = this.styles.root || {};\n const hasDimensions = declaredHeight !== undefined || width !== undefined;\n\n const formFieldChildren = props.renderFormFields(this.proxy).props.children;\n const hasLabelSibling = React.Children.count(formFieldChildren) > 1;\n\n // Only the actual data-bound widget (formfield=\"true\") is sized by the form-field's\n // height/width — the label keeps its own intrinsic size. When a label is stacked\n // alongside it (e.g. captionposition=\"top\"), or the height was resolved into flex\n // properties (fill/hug) rather than a literal value, the widget gets flexGrow/minHeight\n // instead of the raw height, so it fills the available space instead of adding on top\n // of it and overflowing the fixed-height root.\n var childrenWithProps = React.Children.map(formFieldChildren, (child) => {\n const isFieldWidget = child?.props?.formfield === 'true';\n const applyDimensions = hasDimensions && isFieldWidget;\n\n const dimensionStyles = applyDimensions\n ? {\n ...(width !== undefined ? { width } : {}),\n ...(declaredHeight !== undefined\n ? ((hasLabelSibling || height === undefined) ? { flexGrow: 1, flexShrink: 1, minHeight: 0 } : { height })\n : {})\n }\n : undefined;\n\n // Merge dimension styles with any existing styles on the child\n const existingStyles = child?.props?.styles || {};\n const mergedStyles = dimensionStyles\n ? {\n ...existingStyles,\n root: { ...existingStyles.root, ...dimensionStyles }\n }\n : existingStyles;\n\n return React.cloneElement(child, {\n ref: currentRef,\n datavalue: props.datavalue || child?.props?.datavalue,\n value: this.value,\n isValid: this.state.isValid,\n maskchar: props.maskchar,\n displayformat: props.displayformat,\n autocomplete: props.autocomplete,\n autocapitalize: props.autocapitalize,\n uppercase: props.uppercase,\n invokeEvent: this.invokeEventCallback.bind(this),\n triggerValidation: this.validateFormField.bind(this),\n onFieldChange: this.onFieldChangeEvt.bind(this),\n formRef: props.formRef,\n isdefault: props.defaultvalue !== undefined ? true : false,\n ...(props.returnkeytype !== 'auto' ? {\n returnkeytype: props.returnkeytype,\n onSubmitEditing: () => {\n const isDone = props.returnkeytype === 'done';\n if (this.form?.props?.submitondone && isDone) {\n this.form.submit();\n } else if (props.returnkeytype === 'next' && nextRef?.current) {\n nextRef.current.focus?.();\n }\n }\n } : {}),\n ...(!isNil(props?.placeholder) ? { placeholder: props.placeholder } : {}),\n ...(applyDimensions ? { styles: mergedStyles } : {})\n });\n });\n\n const hasUserDefinedWidth = this.props.styles?.root?.width !== undefined;\n const layoutStyle = this.form?.state?.fieldLayoutStyle;\n\n const flexStyle = hasUserDefinedWidth ? {} : {\n width: layoutStyle?.width || '100%',\n flexGrow: layoutStyle?.flexGrow ?? 0,\n flexShrink: layoutStyle?.flexShrink ?? 0,\n };\n\n return (\n <View\n style={[this.styles.root, flexStyle]}\n onLayout={(event) => this.handleLayout(event)}\n >\n {this._background}\n {childrenWithProps}\n {this.state.isValid === false && !!props.validationmessage && <Text {...this.getTestPropsForLabel('error_msg')} style={this.styles.errorMsg}>{props.validationmessage}</Text>}\n </View>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -30,6 +30,7 @@ export default class WmFormFieldProps extends BaseProps {
30
30
  _defineProperty(this, "maskchar", null);
31
31
  _defineProperty(this, "displayformat", null);
32
32
  _defineProperty(this, "autocomplete", "off");
33
+ _defineProperty(this, "returnkeytype", 'auto');
33
34
  _defineProperty(this, "autocapitalize", 'none');
34
35
  _defineProperty(this, "uppercase", false);
35
36
  }
@@ -1 +1 @@
1
- {"version":3,"names":["BaseProps","WmFormFieldProps","constructor","args","_defineProperty"],"sources":["form-field.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker-ai/app-rn-runtime/core/base.component';\n\nexport default class WmFormFieldProps extends BaseProps {\n children: any;\n formRef: any;\n placeholder?: string;\n defaultvalue: any;\n generator: string = '';\n datavalue: any;\n onChange: any;\n renderFormFields: any;\n validationmessage: any;\n required: Boolean = false;\n primaryKey: Boolean = false;\n isRelated: any;\n widget: any;\n onFieldChange: any;\n formKey: string = '';\n dataset: any;\n displayfield: any;\n datafield: string = '';\n isDataSetBound: boolean = false;\n readonly: boolean = false;\n onValidate?: Function;\n formScope?: Function = () => {};\n maskchar: string = null as any;\n displayformat: string = null as any;\n autocomplete: string = \"off\";\n autocapitalize?: string = 'none';\n uppercase?: boolean = false;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,kDAAkD;AAE5E,eAAe,MAAMC,gBAAgB,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,oBAKlC,EAAE;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,mBAKF,KAAK;IAAAA,eAAA,qBACH,KAAK;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,kBAIT,EAAE;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,oBAGA,EAAE;IAAAA,eAAA,yBACI,KAAK;IAAAA,eAAA,mBACX,KAAK;IAAAA,eAAA;IAAAA,eAAA,oBAEF,MAAM,CAAC,CAAC;IAAAA,eAAA,mBACZ,IAAI;IAAAA,eAAA,wBACC,IAAI;IAAAA,eAAA,uBACL,KAAK;IAAAA,eAAA,yBACF,MAAM;IAAAA,eAAA,oBACV,KAAK;EAAA;AAC7B","ignoreList":[]}
1
+ {"version":3,"names":["BaseProps","WmFormFieldProps","constructor","args","_defineProperty"],"sources":["form-field.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker-ai/app-rn-runtime/core/base.component';\n\nexport default class WmFormFieldProps extends BaseProps {\n children: any;\n formRef: any;\n placeholder?: string;\n defaultvalue: any;\n generator: string = '';\n datavalue: any;\n onChange: any;\n renderFormFields: any;\n validationmessage: any;\n required: Boolean = false;\n primaryKey: Boolean = false;\n isRelated: any;\n widget: any;\n onFieldChange: any;\n formKey: string = '';\n dataset: any;\n displayfield: any;\n datafield: string = '';\n isDataSetBound: boolean = false;\n readonly: boolean = false;\n onValidate?: Function;\n formScope?: Function = () => {};\n maskchar: string = null as any;\n displayformat: string = null as any;\n autocomplete: string = \"off\";\n returnkeytype: 'auto' | 'next' | 'done' = 'auto';\n autocapitalize?: string = 'none';\n uppercase?: boolean = false;\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,kDAAkD;AAE5E,eAAe,MAAMC,gBAAgB,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,oBAKlC,EAAE;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,mBAKF,KAAK;IAAAA,eAAA,qBACH,KAAK;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,kBAIT,EAAE;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,oBAGA,EAAE;IAAAA,eAAA,yBACI,KAAK;IAAAA,eAAA,mBACX,KAAK;IAAAA,eAAA;IAAAA,eAAA,oBAEF,MAAM,CAAC,CAAC;IAAAA,eAAA,mBACZ,IAAI;IAAAA,eAAA,wBACC,IAAI;IAAAA,eAAA,uBACL,KAAK;IAAAA,eAAA,wBACc,MAAM;IAAAA,eAAA,yBACtB,MAAM;IAAAA,eAAA,oBACV,KAAK;EAAA;AAC7B","ignoreList":[]}
@@ -43,6 +43,7 @@ export default class WmForm extends BaseComponent {
43
43
  _defineProperty(this, "formdataoutput", void 0);
44
44
  _defineProperty(this, "toaster", void 0);
45
45
  _defineProperty(this, "formActions", []);
46
+ _defineProperty(this, "fieldRefs", []);
46
47
  _defineProperty(this, "primaryKey", []);
47
48
  _defineProperty(this, "buttonArray", []);
48
49
  _defineProperty(this, "formWidgets", {});
@@ -124,7 +125,11 @@ export default class WmForm extends BaseComponent {
124
125
  });
125
126
  this.formFields = formFields;
126
127
  this.formWidgets = formWidgets;
127
- formFields === null || formFields === void 0 || formFields.forEach(f => {
128
+ if (this.fieldRefs.length !== formFields.length) {
129
+ this.fieldRefs = formFields.map(() => /*#__PURE__*/React.createRef());
130
+ }
131
+ formFields === null || formFields === void 0 || formFields.forEach((f, index) => {
132
+ f.fieldIndex = index;
128
133
  if (f.props.name) {
129
134
  set(this.formfields, f.props.name, f);
130
135
  }
@@ -436,7 +441,7 @@ export default class WmForm extends BaseComponent {
436
441
  return /*#__PURE__*/React.createElement(View, {
437
442
  style: this.styles.root,
438
443
  onLayout: event => this.handleLayout(event)
439
- }, this._background, props.iconclass || props.iconurl || props.title || props.subheading ? /*#__PURE__*/React.createElement(View, {
444
+ }, this.showSpinner(), this._background, props.iconclass || props.iconurl || props.title || props.subheading ? /*#__PURE__*/React.createElement(View, {
440
445
  style: this.styles.heading
441
446
  }, /*#__PURE__*/React.createElement(View, {
442
447
  style: {