@wavemaker/app-rn-runtime 11.11.4-rc.6172 → 11.11.5-rc.214
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.
- package/components/advanced/carousel/carousel.component.js +32 -17
- package/components/advanced/carousel/carousel.component.js.map +1 -1
- package/components/advanced/carousel/carousel.props.js +1 -0
- package/components/advanced/carousel/carousel.props.js.map +1 -1
- package/components/advanced/network-info-toaster/network-info-toaster.component.js +4 -0
- package/components/advanced/network-info-toaster/network-info-toaster.component.js.map +1 -1
- package/components/basic/bottomsheet/bottomsheet.component.js +119 -71
- package/components/basic/bottomsheet/bottomsheet.component.js.map +1 -1
- package/components/basic/bottomsheet/bottomsheet.props.js +6 -4
- package/components/basic/bottomsheet/bottomsheet.props.js.map +1 -1
- package/components/basic/lottie/lottie.component.js +1 -1
- package/components/basic/lottie/lottie.component.js.map +1 -1
- package/components/basic/picture/picture.component.js +1 -1
- package/components/basic/picture/picture.component.js.map +1 -1
- package/components/basic/spinner/spinner.component.js +18 -10
- package/components/basic/spinner/spinner.component.js.map +1 -1
- package/components/chart/area-chart/area-chart.component.js +5 -4
- package/components/chart/area-chart/area-chart.component.js.map +1 -1
- package/components/chart/bar-chart/bar-chart.component.js +5 -4
- package/components/chart/bar-chart/bar-chart.component.js.map +1 -1
- package/components/chart/pie-chart/pie-chart.component.js +5 -4
- package/components/chart/pie-chart/pie-chart.component.js.map +1 -1
- package/components/container/panel/panel.component.js +2 -2
- package/components/container/panel/panel.component.js.map +1 -1
- package/components/data/form/form-field/form-field.component.js +1 -1
- package/components/data/form/form-field/form-field.component.js.map +1 -1
- package/components/data/form/form.component.js +1 -1
- package/components/data/form/form.component.js.map +1 -1
- package/components/data/list/list.component.js +57 -45
- package/components/data/list/list.component.js.map +1 -1
- package/components/data/list/list.props.js +1 -0
- package/components/data/list/list.props.js.map +1 -1
- package/components/input/basedataset/basedataset.component.js +5 -2
- package/components/input/basedataset/basedataset.component.js.map +1 -1
- package/components/input/basenumber/basenumber.component.js +4 -2
- package/components/input/basenumber/basenumber.component.js.map +1 -1
- package/components/input/epoch/base-datetime.component.js +8 -4
- package/components/input/epoch/base-datetime.component.js.map +1 -1
- package/components/input/rating/rating.component.js +4 -2
- package/components/input/rating/rating.component.js.map +1 -1
- package/components/input/slider/slider.component.js +28 -9
- package/components/input/slider/slider.component.js.map +1 -1
- package/components/input/text/text.props.js +2 -0
- package/components/input/text/text.props.js.map +1 -1
- package/components/navigation/appnavbar/appnavbar.component.js +2 -3
- package/components/navigation/appnavbar/appnavbar.component.js.map +1 -1
- package/components/page/left-panel/left-panel.component.js +2 -3
- package/components/page/left-panel/left-panel.component.js.map +1 -1
- package/components/page/page-content/page-content.component.js +8 -0
- package/components/page/page-content/page-content.component.js.map +1 -1
- package/components/page/page.component.js +7 -6
- package/components/page/page.component.js.map +1 -1
- package/components/page/page.props.js +1 -0
- package/components/page/page.props.js.map +1 -1
- package/components/page/tabbar/tabbar.component.js +5 -5
- package/components/page/tabbar/tabbar.component.js.map +1 -1
- package/core/AppConfig.js.map +1 -1
- package/core/base.component.js +1 -1
- package/core/base.component.js.map +1 -1
- package/core/ui-preferences.context.js +4 -1
- package/core/ui-preferences.context.js.map +1 -1
- package/core/utils.js +26 -0
- package/core/utils.js.map +1 -1
- package/npm-shrinkwrap.json +137 -152
- package/package-lock.json +137 -152
- package/package.json +2 -2
- package/runtime/App.js +44 -18
- package/runtime/App.js.map +1 -1
- package/runtime/services/app-i18n.service.js +7 -0
- package/runtime/services/app-i18n.service.js.map +1 -1
@@ -92,7 +92,7 @@ export default class WmPanel extends BaseComponent {
|
|
92
92
|
flex: 1,
|
93
93
|
justifyContent: 'center'
|
94
94
|
}
|
95
|
-
}, this._showSkeleton ? /*#__PURE__*/React.createElement(WmLabel, {
|
95
|
+
}, props.title ? this._showSkeleton ? /*#__PURE__*/React.createElement(WmLabel, {
|
96
96
|
showskeleton: true,
|
97
97
|
styles: {
|
98
98
|
root: [this.styles.text, this.styles.heading]
|
@@ -100,7 +100,7 @@ export default class WmPanel extends BaseComponent {
|
|
100
100
|
caption: isUndefined(props.title) ? 'Title' : props.title
|
101
101
|
}) : /*#__PURE__*/React.createElement(Text, _extends({
|
102
102
|
style: [this.styles.text, this.styles.heading]
|
103
|
-
}, this.getTestPropsForAction(`header_title`)), isUndefined(props.title) ? 'Title' : props.title), props.subheading ? this._showSkeleton ? /*#__PURE__*/React.createElement(WmLabel, {
|
103
|
+
}, this.getTestPropsForAction(`header_title`)), isUndefined(props.title) ? 'Title' : props.title) : null, props.subheading ? this._showSkeleton ? /*#__PURE__*/React.createElement(WmLabel, {
|
104
104
|
showskeleton: true,
|
105
105
|
styles: {
|
106
106
|
root: this.styles.subheading
|
@@ -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","expandCollapseIcon","isExpanded","widgetProps","badge","badgevalue","undefined","createElement","_extends","style","styles","badgetype","getTestProps","iconclass","id","getTestId","name","toggleIcon","flexDirection","alignItems","renderHeader","getTestPropsForAction","header","onPress","accessibilityRole","iconurl","icon","iconheight","iconwidth","iconmargin","flex","justifyContent","_showSkeleton","showskeleton","root","text","heading","caption","title","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/app-rn-runtime/core/base.component';\nimport WmIcon from '@wavemaker/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/app-rn-runtime/core/utils';\nimport { CollapsiblePane } from './collapsible-pane.component';\nimport { WmSkeletonStyles } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport WmLabel from '@wavemaker/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 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 const iconclass = isExpanded ? 'wi wi-chevron-up' : 'wi wi-chevron-down';\n const expandCollapseIcon = widgetProps.collapsible ? (<WmIcon id={this.getTestId('collapseicon')} name={'expand_collapse_icon'} styles={this.styles.toggleIcon} iconclass={iconclass}></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 {\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>\n }\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","expandCollapseIcon","isExpanded","widgetProps","badge","badgevalue","undefined","createElement","_extends","style","styles","badgetype","getTestProps","iconclass","id","getTestId","name","toggleIcon","flexDirection","alignItems","renderHeader","getTestPropsForAction","header","onPress","accessibilityRole","iconurl","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/app-rn-runtime/core/base.component';\nimport WmIcon from '@wavemaker/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/app-rn-runtime/core/utils';\nimport { CollapsiblePane } from './collapsible-pane.component';\nimport { WmSkeletonStyles } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.styles';\nimport { createSkeleton } from '@wavemaker/app-rn-runtime/components/basic/skeleton/skeleton.component';\nimport WmLabel from '@wavemaker/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 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 const iconclass = isExpanded ? 'wi wi-chevron-up' : 'wi wi-chevron-down';\n const expandCollapseIcon = widgetProps.collapsible ? (<WmIcon id={this.getTestId('collapseicon')} name={'expand_collapse_icon'} styles={this.styles.toggleIcon} iconclass={iconclass}></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":[]}
|
@@ -232,7 +232,7 @@ export default class WmFormField extends BaseComponent {
|
|
232
232
|
triggerValidation: this.validateFormField.bind(this),
|
233
233
|
onFieldChange: this.onFieldChangeEvt.bind(this),
|
234
234
|
formRef: props.formRef,
|
235
|
-
isdefault: props.defaultvalue
|
235
|
+
isdefault: props.defaultvalue !== undefined ? true : false,
|
236
236
|
...(!isNil(props === null || props === void 0 ? void 0 : props.placeholder) ? {
|
237
237
|
placeholder: props.placeholder
|
238
238
|
} : {})
|
@@ -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","childrenWithProps","Children","map","renderFormFields","children","child","_child$props","cloneElement","maskchar","displayformat","autocomplete","invokeEvent","triggerValidation","onFieldChange","formRef","isdefault","defaultvalue","length","placeholder","createElement","style","styles","root","onLayout","event","handleLayout","_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, 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/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 var childrenWithProps = React.Children.map(props.renderFormFields(this.proxy).props.children, (child) => {\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 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 && props.defaultvalue.length > 0 ? true : false, \n ...(!isNil(props?.placeholder) ? { placeholder: props.placeholder } : {})\n });\n });\n return (\n <View \n style={this.styles.root}\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":"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","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","childrenWithProps","Children","map","renderFormFields","children","child","_child$props","cloneElement","maskchar","displayformat","autocomplete","invokeEvent","triggerValidation","onFieldChange","formRef","isdefault","defaultvalue","placeholder","createElement","style","styles","root","onLayout","event","handleLayout","_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, 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/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 var childrenWithProps = React.Children.map(props.renderFormFields(this.proxy).props.children, (child) => {\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 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 });\n });\n return (\n <View \n style={this.styles.root}\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":"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","ignoreList":[]}
|
@@ -252,7 +252,7 @@ export default class WmForm extends BaseComponent {
|
|
252
252
|
}
|
253
253
|
}
|
254
254
|
this.updateState({
|
255
|
-
dynamicForm: this.props.generateComponent(fields, this.props.name)
|
255
|
+
dynamicForm: this.props.generateComponent(fields, this.props.name, this.proxy)
|
256
256
|
});
|
257
257
|
}
|
258
258
|
onPropertyChange(name, $new, $old) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","View","BaseComponent","BaseComponentState","isDefined","debounce","find","forEach","isNil","get","set","cloneDeep","isEmpty","WmLabel","WmIcon","WmMessage","ToastConsumer","WmFormProps","DEFAULT_CLASS","isDataSetWidget","WmFormState","constructor","args","_defineProperty","WmForm","props","handleSubmit","componentDidMount","getParentFormRef","parentForm","pformName","current","parent","parentFormRef","setReadonlyFields","_this$formFields","formFields","field","setReadOnlyState","state","isUpdateMode","setReadonlyState","updateMode","updateState","setTimeout","showActions","edit","new","cancel","delete","registerFormFields","formWidgets","w","form","formwidget","formKey","name","f","formfields","applyFormData","applyDefaultValue","formdataoutput","datavalue","dataoutput","_this$buttonArray","buttonArray","action","show","registerFormActions","formActions","_updateFieldOnDataSourceChange","isDataSetBound","widget","isRelated","relatedData","_this$parentFormRef","formData","formdata","formField","_formField$props","fw","key","setState","isDefault","Array","isArray","updateFormFieldDefaultValue","dv","defaultvalue","_formField$props2","invokeEventCallback","bind","undefined","formreset","ff","defaultValue","id","_widget","isValid","reset","submit","_debouncedSubmitForm","generateFormFields","userFields","fields","metadata","data","onBeforerender","proxy","dynamicForm","generateComponent","onPropertyChange","$new","$old","_this$formFields2","setPrimaryKey","fieldName","primaryKey","indexOf","push","validateFieldsOnSubmit","val","onValidate","required","generator","msg","defaultValidatorMessages","validationmessage","validate","event","preventDefault","onBeforesubmit","formSubmit","onResultCb","error","response","status","onSuccess","postmessage","toggleMessage","onError","errormessage","updateDataOutput","Object","assign","type","message","messagelayout","showInlineMsg","toaster","showToast","placement","styles","bottom","text","hideOnClick","duration","onMsgClose","renderWidget","createElement","toastService","style","root","onLayout","handleLayout","_background","iconclass","title","subheading","heading","flex","flexDirection","getTestId","listIcon","caption","accessibilityrole","hideclose","onClose","children"],"sources":["form.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { isDefined, widgetsWithUndefinedValue } from '@wavemaker/app-rn-runtime/core/utils';\nimport { debounce, find, forEach, isNil, get, set, cloneDeep, isEmpty } from 'lodash';\n\nimport WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport WmFormField, { WmFormFieldState } from '@wavemaker/app-rn-runtime/components/data/form/form-field/form-field.component';\nimport WmMessage from '@wavemaker/app-rn-runtime/components/basic/message/message.component';\nimport { ToastConsumer, ToastService } from '@wavemaker/app-rn-runtime/core/toast.service';\n\nimport WmFormProps from './form.props';\nimport { DEFAULT_CLASS, WmFormStyles } from './form.styles';\nimport { isDataSetWidget } from '@wavemaker/app-rn-runtime/core/utils';\nimport WmFormAction, {\n WmFormActionState\n} from '@wavemaker/app-rn-runtime/components/data/form/form-action/form-action.component';\n\nexport class WmFormState extends BaseComponentState<WmFormProps> {\n isValid = false;\n type: 'success' | 'warning' | 'error' | 'info' | 'loading' | undefined = 'success';\n message: string = '';\n showInlineMsg: boolean = false;\n isUpdateMode: boolean = true;\n dynamicForm: any;\n}\nexport default class WmForm extends BaseComponent<WmFormProps, WmFormState, WmFormStyles> {\n public formFields: Array<WmFormField> = []; // contains array of direct widget elements [WmText, WmNumber, WmCurrent]\n public parentFormRef: any;\n public formfields: {[key: string]: WmFormField} = {};\n public formdataoutput: any;\n private toaster: any;\n public formActions: Array<WmFormAction> = [];\n primaryKey = [];\n buttonArray: Array<WmFormAction> = [];\n formWidgets: { [key: string]: BaseComponent<any, any, any> } = {}; // object containing key as name of formField and value as WmFormField proxy.\n constructor(props: WmFormProps) {\n super(props, DEFAULT_CLASS, new WmFormProps(), new WmFormState());\n }\n\n private _debouncedSubmitForm = debounce(this.handleSubmit, 250);\n\n componentDidMount() {\n super.componentDidMount();\n this.getParentFormRef(this.props.parentForm);\n }\n\n getParentFormRef(pformName: string) {\n let current = this.parent;\n while (current) {\n if (pformName && (get(current, 'props.name') === pformName)) {\n this.parentFormRef = current;\n break;\n }\n current = current.parent;\n }\n }\n\n setReadonlyFields() {\n this.formFields?.forEach((field: any) => {\n field.setReadOnlyState(this.state.isUpdateMode);\n });\n }\n\n setReadonlyState(updateMode: any) {\n this.updateState({\n isUpdateMode: updateMode,\n } as WmFormState);\n setTimeout(() => {\n this.showActions();\n this.setReadonlyFields();\n }, 100);\n }\n\n edit() {\n this.setReadonlyState(true);\n }\n\n new() {\n this.setReadonlyState(true);\n }\n\n cancel() {\n this.setReadonlyState(false);\n }\n\n delete() { }\n\n registerFormFields(\n formFields: Array<WmFormField>,\n formWidgets: { [key: string]: BaseComponent<any, any, any> }\n ) {\n forEach(formFields, (w: WmFormField) => {\n if (!w.form) {\n w.form = this;\n w.formwidget = (w.props.formKey && formWidgets[w.props.formKey])\n || (w.props.name && formWidgets[w.props.name]);\n }\n });\n\n this.formFields = formFields;\n this.formWidgets = formWidgets;\n\n formFields?.forEach((f: WmFormField) => {\n if (f.props.name) {\n set(this.formfields, f.props.name, f);\n }\n })\n\n this.setReadonlyFields();\n\n this.applyFormData();\n this.applyDefaultValue();\n\n // setting default form dataoutput.\n if (!this.formdataoutput) {\n this.formdataoutput = {};\n formFields?.forEach((w: WmFormField) => {\n const name = get(w.props, 'formKey') || w.props.name;\n if (name) {\n set(this.formdataoutput, name, w.props.datavalue);\n }\n });\n this.updateState({\n props: {\n dataoutput: this.formdataoutput\n }\n } as WmFormState);\n }\n }\n\n showActions () {\n this.buttonArray?.forEach((action: any) => {\n action.updateState({\n props: {\n show: action.updateMode === this.state.isUpdateMode\n }} as WmFormActionState);\n });\n }\n\n registerFormActions(formActions: Array<WmFormAction>) {\n this.buttonArray = formActions;\n this.showActions();\n }\n\n private _updateFieldOnDataSourceChange(field: WmFormField, formFields: Array<WmFormField>) {\n if (!field.state.props.isDataSetBound && isDataSetWidget(field.props.widget)) {\n if (field.state.props.isRelated) {\n field.updateState({\n props: {\n isDataSetBound: true\n }} as WmFormFieldState);\n this.props.relatedData && this.props.relatedData(field);\n }\n }\n }\n\n applyFormData() {\n let formData = this.state.props.formdata || this.parentFormRef?.state.props.formdata;\n if (!formData || (this.parentFormRef && this.state.props.formdata)) {\n return;\n }\n forEach(this.formFields, (formField: WmFormField) => {\n let fw = formField.props?.name && this.formWidgets[formField.props.name];\n if (!fw) {\n fw = find(this.formWidgets, (fw: BaseComponent<any, any, any>) => {\n return get(fw, 'formfieldname') === formField.props.name\n });\n }\n let key = get(formField, 'formKey') || get(fw, 'props.name');\n fw && fw.setState({ isDefault: true });\n if(Array.isArray(formData)){\n formData = formData[0];\n }\n formField.updateState({\n props: {\n datavalue: get(formData, key)\n }\n } as WmFormFieldState);\n });\n }\n\n updateFormFieldDefaultValue(formField: WmFormField) {\n if (formField) {\n const dv = formField.state.props.defaultvalue;\n if (isDefined(dv) && dv !== null && this.formFields) {\n let field = formField.props?.name && this.formWidgets[formField.props.name];\n if (!field) {\n field = find(this.formWidgets, (fw: BaseComponent<any, any, any>) => {\n return get(fw, 'formfieldname') === formField.props.name\n });\n }\n if (field) {\n field.setState({ isDefault: true });\n field.updateState({\n props: {\n datavalue: dv\n }\n }, this.invokeEventCallback.bind(formField, 'onFieldChange', [undefined, formField, dv]));\n }\n }\n }\n }\n\n get dataoutput() {\n return this.formdataoutput;\n }\n\n applyDefaultValue(formField?: WmFormField) {\n if (formField) {\n this.updateFormFieldDefaultValue(formField);\n return;\n }\n forEach(this.formFields, (w: WmFormField) => {\n this.updateFormFieldDefaultValue(w);\n });\n }\n\n formreset() {\n this.formdataoutput = {};\n forEach(this.formFields, (ff: WmFormField) => {\n const defaultValue = isNil(ff.state.props.defaultvalue) ? '' : ff.state.props.defaultvalue;\n ff.updateState({\n props : {\n datavalue: defaultValue\n }\n } as WmFormFieldState, () => {\n const id = ff.props.formKey || ff.props.name;\n if (id) {\n let widget: BaseComponent<any, any, any> | undefined | any = this.formWidgets[id];\n if (!widget) {\n widget = find(this.formWidgets, (fw: BaseComponent<any, any, any>) => {\n return get(fw, 'formfieldname') === ff.props.name\n });\n }\n widget.updateState({\n isValid: true,\n props : {\n datavalue: defaultValue\n }\n }, () => ff.updateState({\n isValid: true\n } as WmFormFieldState));\n widget?.reset();\n }\n }\n );\n });\n }\n\n submit() {\n this._debouncedSubmitForm();\n }\n\n // Function to generate and compile the form fields from the metadata\n generateFormFields() {\n let userFields;\n let fields = this.state.props.metadata ? this.state.props.metadata.data || this.state.props.metadata : [];\n\n if (isEmpty(fields)) {\n return;\n }\n\n if (this.props.onBeforerender) {\n userFields = this.invokeEventCallback('onBeforerender', [fields, this.proxy]);\n if (userFields) {\n fields = userFields;\n }\n }\n\n this.updateState({\n dynamicForm: this.props.generateComponent(fields, this.props.name)\n } as WmFormState);\n\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'formdata':\n if ($new) {\n this.applyFormData();\n }\n break;\n case 'defaultmode':\n this.updateState({\n isUpdateMode: $new && $new === 'Edit' ? true : false,\n } as WmFormState);\n break;\n case 'dataset':\n this.formFields?.forEach((w: WmFormField) => {\n this._updateFieldOnDataSourceChange(w, this.formFields);\n });\n break;\n case 'metadata':\n this.generateFormFields();\n break;\n }\n }\n setPrimaryKey(fieldName: string) {\n /*Store the primary key of data*/\n this.primaryKey = this.primaryKey || [];\n // @ts-ignore\n if (this.primaryKey.indexOf(fieldName) === -1) {\n // @ts-ignore\n this.primaryKey.push(fieldName);\n }\n }\n // Disable the form submit if form is in invalid state. Highlight all the invalid fields if validation type is default\n validateFieldsOnSubmit() {\n let isValid = true;\n forEach(this.formFields, (field) => {\n const val = field?.state.props.datavalue;\n\n const onValidate = get(field, 'props.onValidate');\n onValidate && onValidate(field);\n if (!val && field?.state.props.required && ((field?.props.primaryKey && field?.props.generator === 'assigned') || !field?.props.primaryKey)) {\n isValid = false;\n const msg = get(field.defaultValidatorMessages, 'required') || field.state.props.validationmessage;\n field.updateState({ isValid: isValid, props: {\n validationmessage: msg\n }} as WmFormFieldState);\n field.formwidget.validate && field.formwidget.validate(val);\n }\n // check for isvalid state of formwidget\n if (field.formwidget.state.isValid === false) {\n isValid = false;\n }\n });\n return isValid;\n }\n\n // @ts-ignore\n handleSubmit(event?: any) {\n event?.preventDefault();\n const formData = cloneDeep(this.state.props.dataoutput || this.formdataoutput);\n\n if (!this.validateFieldsOnSubmit()) {\n return false;\n }\n if (this.props.onBeforesubmit) {\n this.invokeEventCallback('onBeforesubmit', [ null, this.proxy, formData ]);\n }\n if (this.props.formSubmit) {\n this.props.formSubmit(formData, ((data: any) => {\n this.invokeEventCallback('onSubmit', [ null, this.proxy, formData ]);\n this.onResultCb(get(data, 'params'), 'success');\n }), ((error: any) => {\n this.invokeEventCallback('onSubmit', [ null, this.proxy, formData ]);\n this.onResultCb(error, '');\n }));\n } else {\n this.invokeEventCallback('onSubmit', [ null, this.proxy, formData ]);\n }\n }\n\n onResultCb(response: any, status: string, event?: any) {\n this.invokeEventCallback('onResult', [ null, this.proxy, response ]);\n if (status) {\n this.invokeEventCallback('onSuccess', [ null, this.proxy, response ]);\n !this.props.onSuccess && this.state.props.postmessage && this.toggleMessage('success', this.state.props.postmessage);\n } else {\n this.invokeEventCallback('onError', [ null, this.proxy, response ]);\n !this.props.onError && this.toggleMessage('error', this.state.props.errormessage || get(response, 'message'));\n }\n }\n\n updateDataOutput(key: string, val: any) {\n const current = this.formdataoutput || {};\n if (key) {\n set(current, key, val);\n } else {\n Object.assign(current, val)\n }\n this.formdataoutput = current;\n this.updateState({ props: { dataoutput: current }} as WmFormState);\n this.parentFormRef && this.parentFormRef.updateDataOutput && this.parentFormRef.updateDataOutput(undefined, this.formdataoutput);\n this.updateState({\n props: {\n dataoutput: this.formdataoutput\n }\n } as WmFormState);\n }\n\n toggleMessage(\n type: 'success' | 'warning' | 'error' | 'info' | 'loading' | undefined,\n message: string\n ) {\n if (this.state.props.messagelayout === 'Inline') {\n this.setState({\n type: type,\n message: message,\n showInlineMsg: true\n } as WmFormState)\n return;\n }\n this.toaster.showToast({\n name: this, placement: \"\", styles: {bottom: 0},\n text: message,\n type: type,\n hideOnClick: true,\n duration: 5000\n });\n }\n\n onMsgClose() {\n this.setState({\n showInlineMsg: false\n } as WmFormState)\n }\n\n renderWidget(props: WmFormProps) {\n return (\n <ToastConsumer>\n {(toastService: ToastService) => {\n this.toaster = toastService;\n return <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n {this._background}\n {props.iconclass || props.title || props.subheading ? (\n <View style={this.styles.heading}>\n <View style={{flex: 1, flexDirection: 'row'}}>\n <WmIcon id={this.getTestId('icon')} styles={this.styles.listIcon} iconclass={props.iconclass}></WmIcon>\n <View>\n <WmLabel id={this.getTestId('title')} styles={this.styles.title} caption={props.title} accessibilityrole='header'></WmLabel>\n <WmLabel id={this.getTestId('description')} styles={this.styles.subheading} caption={props.subheading}></WmLabel>\n </View>\n </View>\n </View>\n ) : null}\n {this.state.showInlineMsg ? <WmMessage type={this.state.type} caption={this.state.message} hideclose={false} onClose={this.onMsgClose.bind(this)}></WmMessage> : null\n }\n { props.metadata && this.state.dynamicForm }\n { props.children}\n </View>\n }\n }\n </ToastConsumer>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["React","View","BaseComponent","BaseComponentState","isDefined","debounce","find","forEach","isNil","get","set","cloneDeep","isEmpty","WmLabel","WmIcon","WmMessage","ToastConsumer","WmFormProps","DEFAULT_CLASS","isDataSetWidget","WmFormState","constructor","args","_defineProperty","WmForm","props","handleSubmit","componentDidMount","getParentFormRef","parentForm","pformName","current","parent","parentFormRef","setReadonlyFields","_this$formFields","formFields","field","setReadOnlyState","state","isUpdateMode","setReadonlyState","updateMode","updateState","setTimeout","showActions","edit","new","cancel","delete","registerFormFields","formWidgets","w","form","formwidget","formKey","name","f","formfields","applyFormData","applyDefaultValue","formdataoutput","datavalue","dataoutput","_this$buttonArray","buttonArray","action","show","registerFormActions","formActions","_updateFieldOnDataSourceChange","isDataSetBound","widget","isRelated","relatedData","_this$parentFormRef","formData","formdata","formField","_formField$props","fw","key","setState","isDefault","Array","isArray","updateFormFieldDefaultValue","dv","defaultvalue","_formField$props2","invokeEventCallback","bind","undefined","formreset","ff","defaultValue","id","_widget","isValid","reset","submit","_debouncedSubmitForm","generateFormFields","userFields","fields","metadata","data","onBeforerender","proxy","dynamicForm","generateComponent","onPropertyChange","$new","$old","_this$formFields2","setPrimaryKey","fieldName","primaryKey","indexOf","push","validateFieldsOnSubmit","val","onValidate","required","generator","msg","defaultValidatorMessages","validationmessage","validate","event","preventDefault","onBeforesubmit","formSubmit","onResultCb","error","response","status","onSuccess","postmessage","toggleMessage","onError","errormessage","updateDataOutput","Object","assign","type","message","messagelayout","showInlineMsg","toaster","showToast","placement","styles","bottom","text","hideOnClick","duration","onMsgClose","renderWidget","createElement","toastService","style","root","onLayout","handleLayout","_background","iconclass","title","subheading","heading","flex","flexDirection","getTestId","listIcon","caption","accessibilityrole","hideclose","onClose","children"],"sources":["form.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { isDefined, widgetsWithUndefinedValue } from '@wavemaker/app-rn-runtime/core/utils';\nimport { debounce, find, forEach, isNil, get, set, cloneDeep, isEmpty } from 'lodash';\n\nimport WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport WmFormField, { WmFormFieldState } from '@wavemaker/app-rn-runtime/components/data/form/form-field/form-field.component';\nimport WmMessage from '@wavemaker/app-rn-runtime/components/basic/message/message.component';\nimport { ToastConsumer, ToastService } from '@wavemaker/app-rn-runtime/core/toast.service';\n\nimport WmFormProps from './form.props';\nimport { DEFAULT_CLASS, WmFormStyles } from './form.styles';\nimport { isDataSetWidget } from '@wavemaker/app-rn-runtime/core/utils';\nimport WmFormAction, {\n WmFormActionState\n} from '@wavemaker/app-rn-runtime/components/data/form/form-action/form-action.component';\n\nexport class WmFormState extends BaseComponentState<WmFormProps> {\n isValid = false;\n type: 'success' | 'warning' | 'error' | 'info' | 'loading' | undefined = 'success';\n message: string = '';\n showInlineMsg: boolean = false;\n isUpdateMode: boolean = true;\n dynamicForm: any;\n}\nexport default class WmForm extends BaseComponent<WmFormProps, WmFormState, WmFormStyles> {\n public formFields: Array<WmFormField> = []; // contains array of direct widget elements [WmText, WmNumber, WmCurrent]\n public parentFormRef: any;\n public formfields: {[key: string]: WmFormField} = {};\n public formdataoutput: any;\n private toaster: any;\n public formActions: Array<WmFormAction> = [];\n primaryKey = [];\n buttonArray: Array<WmFormAction> = [];\n formWidgets: { [key: string]: BaseComponent<any, any, any> } = {}; // object containing key as name of formField and value as WmFormField proxy.\n constructor(props: WmFormProps) {\n super(props, DEFAULT_CLASS, new WmFormProps(), new WmFormState());\n }\n\n private _debouncedSubmitForm = debounce(this.handleSubmit, 250);\n\n componentDidMount() {\n super.componentDidMount();\n this.getParentFormRef(this.props.parentForm);\n }\n\n getParentFormRef(pformName: string) {\n let current = this.parent;\n while (current) {\n if (pformName && (get(current, 'props.name') === pformName)) {\n this.parentFormRef = current;\n break;\n }\n current = current.parent;\n }\n }\n\n setReadonlyFields() {\n this.formFields?.forEach((field: any) => {\n field.setReadOnlyState(this.state.isUpdateMode);\n });\n }\n\n setReadonlyState(updateMode: any) {\n this.updateState({\n isUpdateMode: updateMode,\n } as WmFormState);\n setTimeout(() => {\n this.showActions();\n this.setReadonlyFields();\n }, 100);\n }\n\n edit() {\n this.setReadonlyState(true);\n }\n\n new() {\n this.setReadonlyState(true);\n }\n\n cancel() {\n this.setReadonlyState(false);\n }\n\n delete() { }\n\n registerFormFields(\n formFields: Array<WmFormField>,\n formWidgets: { [key: string]: BaseComponent<any, any, any> }\n ) {\n forEach(formFields, (w: WmFormField) => {\n if (!w.form) {\n w.form = this;\n w.formwidget = (w.props.formKey && formWidgets[w.props.formKey])\n || (w.props.name && formWidgets[w.props.name]);\n }\n });\n\n this.formFields = formFields;\n this.formWidgets = formWidgets;\n\n formFields?.forEach((f: WmFormField) => {\n if (f.props.name) {\n set(this.formfields, f.props.name, f);\n }\n })\n\n this.setReadonlyFields();\n\n this.applyFormData();\n this.applyDefaultValue();\n\n // setting default form dataoutput.\n if (!this.formdataoutput) {\n this.formdataoutput = {};\n formFields?.forEach((w: WmFormField) => {\n const name = get(w.props, 'formKey') || w.props.name;\n if (name) {\n set(this.formdataoutput, name, w.props.datavalue);\n }\n });\n this.updateState({\n props: {\n dataoutput: this.formdataoutput\n }\n } as WmFormState);\n }\n }\n\n showActions () {\n this.buttonArray?.forEach((action: any) => {\n action.updateState({\n props: {\n show: action.updateMode === this.state.isUpdateMode\n }} as WmFormActionState);\n });\n }\n\n registerFormActions(formActions: Array<WmFormAction>) {\n this.buttonArray = formActions;\n this.showActions();\n }\n\n private _updateFieldOnDataSourceChange(field: WmFormField, formFields: Array<WmFormField>) {\n if (!field.state.props.isDataSetBound && isDataSetWidget(field.props.widget)) {\n if (field.state.props.isRelated) {\n field.updateState({\n props: {\n isDataSetBound: true\n }} as WmFormFieldState);\n this.props.relatedData && this.props.relatedData(field);\n }\n }\n }\n\n applyFormData() {\n let formData = this.state.props.formdata || this.parentFormRef?.state.props.formdata;\n if (!formData || (this.parentFormRef && this.state.props.formdata)) {\n return;\n }\n forEach(this.formFields, (formField: WmFormField) => {\n let fw = formField.props?.name && this.formWidgets[formField.props.name];\n if (!fw) {\n fw = find(this.formWidgets, (fw: BaseComponent<any, any, any>) => {\n return get(fw, 'formfieldname') === formField.props.name\n });\n }\n let key = get(formField, 'formKey') || get(fw, 'props.name');\n fw && fw.setState({ isDefault: true });\n if(Array.isArray(formData)){\n formData = formData[0];\n }\n formField.updateState({\n props: {\n datavalue: get(formData, key)\n }\n } as WmFormFieldState);\n });\n }\n\n updateFormFieldDefaultValue(formField: WmFormField) {\n if (formField) {\n const dv = formField.state.props.defaultvalue;\n if (isDefined(dv) && dv !== null && this.formFields) {\n let field = formField.props?.name && this.formWidgets[formField.props.name];\n if (!field) {\n field = find(this.formWidgets, (fw: BaseComponent<any, any, any>) => {\n return get(fw, 'formfieldname') === formField.props.name\n });\n }\n if (field) {\n field.setState({ isDefault: true });\n field.updateState({\n props: {\n datavalue: dv\n }\n }, this.invokeEventCallback.bind(formField, 'onFieldChange', [undefined, formField, dv]));\n }\n }\n }\n }\n\n get dataoutput() {\n return this.formdataoutput;\n }\n\n applyDefaultValue(formField?: WmFormField) {\n if (formField) {\n this.updateFormFieldDefaultValue(formField);\n return;\n }\n forEach(this.formFields, (w: WmFormField) => {\n this.updateFormFieldDefaultValue(w);\n });\n }\n\n formreset() {\n this.formdataoutput = {};\n forEach(this.formFields, (ff: WmFormField) => {\n const defaultValue = isNil(ff.state.props.defaultvalue) ? '' : ff.state.props.defaultvalue;\n ff.updateState({\n props : {\n datavalue: defaultValue\n }\n } as WmFormFieldState, () => {\n const id = ff.props.formKey || ff.props.name;\n if (id) {\n let widget: BaseComponent<any, any, any> | undefined | any = this.formWidgets[id];\n if (!widget) {\n widget = find(this.formWidgets, (fw: BaseComponent<any, any, any>) => {\n return get(fw, 'formfieldname') === ff.props.name\n });\n }\n widget.updateState({\n isValid: true,\n props : {\n datavalue: defaultValue\n }\n }, () => ff.updateState({\n isValid: true\n } as WmFormFieldState));\n widget?.reset();\n }\n }\n );\n });\n }\n\n submit() {\n this._debouncedSubmitForm();\n }\n\n // Function to generate and compile the form fields from the metadata\n generateFormFields() {\n let userFields;\n let fields = this.state.props.metadata ? this.state.props.metadata.data || this.state.props.metadata : [];\n\n if (isEmpty(fields)) {\n return;\n }\n\n if (this.props.onBeforerender) {\n userFields = this.invokeEventCallback('onBeforerender', [fields, this.proxy]);\n if (userFields) {\n fields = userFields;\n }\n }\n\n this.updateState({\n dynamicForm: this.props.generateComponent(fields, this.props.name, this.proxy)\n } as WmFormState);\n\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'formdata':\n if ($new) {\n this.applyFormData();\n }\n break;\n case 'defaultmode':\n this.updateState({\n isUpdateMode: $new && $new === 'Edit' ? true : false,\n } as WmFormState);\n break;\n case 'dataset':\n this.formFields?.forEach((w: WmFormField) => {\n this._updateFieldOnDataSourceChange(w, this.formFields);\n });\n break;\n case 'metadata':\n this.generateFormFields();\n break;\n }\n }\n setPrimaryKey(fieldName: string) {\n /*Store the primary key of data*/\n this.primaryKey = this.primaryKey || [];\n // @ts-ignore\n if (this.primaryKey.indexOf(fieldName) === -1) {\n // @ts-ignore\n this.primaryKey.push(fieldName);\n }\n }\n // Disable the form submit if form is in invalid state. Highlight all the invalid fields if validation type is default\n validateFieldsOnSubmit() {\n let isValid = true;\n forEach(this.formFields, (field) => {\n const val = field?.state.props.datavalue;\n\n const onValidate = get(field, 'props.onValidate');\n onValidate && onValidate(field);\n if (!val && field?.state.props.required && ((field?.props.primaryKey && field?.props.generator === 'assigned') || !field?.props.primaryKey)) {\n isValid = false;\n const msg = get(field.defaultValidatorMessages, 'required') || field.state.props.validationmessage;\n field.updateState({ isValid: isValid, props: {\n validationmessage: msg\n }} as WmFormFieldState);\n field.formwidget.validate && field.formwidget.validate(val);\n }\n // check for isvalid state of formwidget\n if (field.formwidget.state.isValid === false) {\n isValid = false;\n }\n });\n return isValid;\n }\n\n // @ts-ignore\n handleSubmit(event?: any) {\n event?.preventDefault();\n const formData = cloneDeep(this.state.props.dataoutput || this.formdataoutput);\n\n if (!this.validateFieldsOnSubmit()) {\n return false;\n }\n if (this.props.onBeforesubmit) {\n this.invokeEventCallback('onBeforesubmit', [ null, this.proxy, formData ]);\n }\n if (this.props.formSubmit) {\n this.props.formSubmit(formData, ((data: any) => {\n this.invokeEventCallback('onSubmit', [ null, this.proxy, formData ]);\n this.onResultCb(get(data, 'params'), 'success');\n }), ((error: any) => {\n this.invokeEventCallback('onSubmit', [ null, this.proxy, formData ]);\n this.onResultCb(error, '');\n }));\n } else {\n this.invokeEventCallback('onSubmit', [ null, this.proxy, formData ]);\n }\n }\n\n onResultCb(response: any, status: string, event?: any) {\n this.invokeEventCallback('onResult', [ null, this.proxy, response ]);\n if (status) {\n this.invokeEventCallback('onSuccess', [ null, this.proxy, response ]);\n !this.props.onSuccess && this.state.props.postmessage && this.toggleMessage('success', this.state.props.postmessage);\n } else {\n this.invokeEventCallback('onError', [ null, this.proxy, response ]);\n !this.props.onError && this.toggleMessage('error', this.state.props.errormessage || get(response, 'message'));\n }\n }\n\n updateDataOutput(key: string, val: any) {\n const current = this.formdataoutput || {};\n if (key) {\n set(current, key, val);\n } else {\n Object.assign(current, val)\n }\n this.formdataoutput = current;\n this.updateState({ props: { dataoutput: current }} as WmFormState);\n this.parentFormRef && this.parentFormRef.updateDataOutput && this.parentFormRef.updateDataOutput(undefined, this.formdataoutput);\n this.updateState({\n props: {\n dataoutput: this.formdataoutput\n }\n } as WmFormState);\n }\n\n toggleMessage(\n type: 'success' | 'warning' | 'error' | 'info' | 'loading' | undefined,\n message: string\n ) {\n if (this.state.props.messagelayout === 'Inline') {\n this.setState({\n type: type,\n message: message,\n showInlineMsg: true\n } as WmFormState)\n return;\n }\n this.toaster.showToast({\n name: this, placement: \"\", styles: {bottom: 0},\n text: message,\n type: type,\n hideOnClick: true,\n duration: 5000\n });\n }\n\n onMsgClose() {\n this.setState({\n showInlineMsg: false\n } as WmFormState)\n }\n\n renderWidget(props: WmFormProps) {\n return (\n <ToastConsumer>\n {(toastService: ToastService) => {\n this.toaster = toastService;\n return <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n {this._background}\n {props.iconclass || props.title || props.subheading ? (\n <View style={this.styles.heading}>\n <View style={{flex: 1, flexDirection: 'row'}}>\n <WmIcon id={this.getTestId('icon')} styles={this.styles.listIcon} iconclass={props.iconclass}></WmIcon>\n <View>\n <WmLabel id={this.getTestId('title')} styles={this.styles.title} caption={props.title} accessibilityrole='header'></WmLabel>\n <WmLabel id={this.getTestId('description')} styles={this.styles.subheading} caption={props.subheading}></WmLabel>\n </View>\n </View>\n </View>\n ) : null}\n {this.state.showInlineMsg ? <WmMessage type={this.state.type} caption={this.state.message} hideclose={false} onClose={this.onMsgClose.bind(this)}></WmMessage> : null\n }\n { props.metadata && this.state.dynamicForm }\n { props.children}\n </View>\n }\n }\n </ToastConsumer>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -22,7 +22,7 @@ export class WmListState extends BaseComponentState {
|
|
22
22
|
_defineProperty(this, "groupedData", []);
|
23
23
|
_defineProperty(this, "currentPage", 1);
|
24
24
|
_defineProperty(this, "maxRecordsToShow", 20);
|
25
|
-
_defineProperty(this, "loadingData",
|
25
|
+
_defineProperty(this, "loadingData", true);
|
26
26
|
}
|
27
27
|
}
|
28
28
|
export default class WmList extends BaseComponent {
|
@@ -45,6 +45,11 @@ export default class WmList extends BaseComponent {
|
|
45
45
|
_defineProperty(this, "renderRightActions", () => {
|
46
46
|
return this.rightActionTemplate ? /*#__PURE__*/React.createElement(React.Fragment, null, this.rightActionTemplate.getTemplate()) : null;
|
47
47
|
});
|
48
|
+
_defineProperty(this, "clear", () => {
|
49
|
+
this.updateState({
|
50
|
+
groupedData: {}
|
51
|
+
});
|
52
|
+
});
|
48
53
|
_defineProperty(this, "selectItem", item => {
|
49
54
|
const dataset = this.state.props.dataset;
|
50
55
|
if (isNumber(item)) {
|
@@ -64,6 +69,36 @@ export default class WmList extends BaseComponent {
|
|
64
69
|
const props = this.state.props;
|
65
70
|
return this.props.dataset[index];
|
66
71
|
});
|
72
|
+
_defineProperty(this, "deselectItem", item => {
|
73
|
+
const props = this.state.props;
|
74
|
+
let selectedItem = props.selecteditem || null;
|
75
|
+
let index = isNumber(item) ? item : props.dataset.indexOf(item);
|
76
|
+
if (props.multiselect && index >= 0) {
|
77
|
+
selectedItem = [...(props.selecteditem || [])];
|
78
|
+
let selectedItemIndex = selectedItem.indexOf(props.dataset[index]);
|
79
|
+
if (selectedItemIndex >= 0) {
|
80
|
+
selectedItem.splice(selectedItemIndex, 1);
|
81
|
+
}
|
82
|
+
} else {
|
83
|
+
if (props.selecteditem === props.dataset[index]) {
|
84
|
+
selectedItem = null;
|
85
|
+
}
|
86
|
+
}
|
87
|
+
this.updateState({
|
88
|
+
props: {
|
89
|
+
selecteditem: selectedItem
|
90
|
+
}
|
91
|
+
}, () => {
|
92
|
+
this.invokeEventCallback('onDeselect', [this.proxy, item]);
|
93
|
+
});
|
94
|
+
});
|
95
|
+
_defineProperty(this, "getWidgets", (widgetname, index) => {
|
96
|
+
if (index >= 0 && index < this.itemWidgets.length) {
|
97
|
+
return this.itemWidgets[index][widgetname];
|
98
|
+
} else {
|
99
|
+
return this.itemWidgets.map(item => item[widgetname]).filter(widget => widget !== undefined);
|
100
|
+
}
|
101
|
+
});
|
67
102
|
_defineProperty(this, "selectAll", () => {
|
68
103
|
const props = this.state.props;
|
69
104
|
const dataset = props.dataset;
|
@@ -110,6 +145,9 @@ export default class WmList extends BaseComponent {
|
|
110
145
|
return selectedItem === $item;
|
111
146
|
}
|
112
147
|
async onSelect($item, $index, $event) {
|
148
|
+
if (this.state.props.disableitemselect) {
|
149
|
+
return;
|
150
|
+
}
|
113
151
|
const props = this.state.props;
|
114
152
|
let selectedItem = null;
|
115
153
|
let eventName = 'onSelect';
|
@@ -218,41 +256,6 @@ export default class WmList extends BaseComponent {
|
|
218
256
|
this.onSelect(props.dataset[0], index);
|
219
257
|
}
|
220
258
|
}
|
221
|
-
clear() {
|
222
|
-
this.updateState({
|
223
|
-
groupedData: {}
|
224
|
-
});
|
225
|
-
}
|
226
|
-
deselect(item) {
|
227
|
-
const props = this.state.props;
|
228
|
-
let selectedItem = props.selecteditem || null;
|
229
|
-
let index = isNumber(item) ? item : props.dataset.indexOf(item);
|
230
|
-
if (props.multiselect && index >= 0) {
|
231
|
-
selectedItem = [...(props.selecteditem || [])];
|
232
|
-
let selectedItemIndex = selectedItem.indexOf(props.dataset[index]);
|
233
|
-
if (selectedItemIndex >= 0) {
|
234
|
-
selectedItem.splice(selectedItemIndex, 1);
|
235
|
-
}
|
236
|
-
} else {
|
237
|
-
if (props.selecteditem === props.dataset[index]) {
|
238
|
-
selectedItem = null;
|
239
|
-
}
|
240
|
-
}
|
241
|
-
this.updateState({
|
242
|
-
props: {
|
243
|
-
selecteditem: selectedItem
|
244
|
-
}
|
245
|
-
}, () => {
|
246
|
-
this.invokeEventCallback('onDeselect', [this.proxy, item]);
|
247
|
-
});
|
248
|
-
}
|
249
|
-
getWidgets(widgetname, index) {
|
250
|
-
if (index >= 0 && index < this.itemWidgets.length) {
|
251
|
-
return this.itemWidgets[index][widgetname];
|
252
|
-
} else {
|
253
|
-
return this.itemWidgets.map(item => item[widgetname]).filter(widget => widget !== undefined);
|
254
|
-
}
|
255
|
-
}
|
256
259
|
deselectAll() {
|
257
260
|
this.updateState({
|
258
261
|
props: {
|
@@ -324,6 +327,13 @@ export default class WmList extends BaseComponent {
|
|
324
327
|
} else {
|
325
328
|
this.deselectAll();
|
326
329
|
}
|
330
|
+
if (isArray($new)) {
|
331
|
+
setTimeout(() => {
|
332
|
+
this.updateState({
|
333
|
+
loadingData: false
|
334
|
+
});
|
335
|
+
}, 0);
|
336
|
+
}
|
327
337
|
break;
|
328
338
|
case 'groupby':
|
329
339
|
case 'match':
|
@@ -339,9 +349,11 @@ export default class WmList extends BaseComponent {
|
|
339
349
|
}
|
340
350
|
break;
|
341
351
|
case 'loadingdata':
|
342
|
-
|
343
|
-
|
344
|
-
|
352
|
+
if ($new != $old) {
|
353
|
+
this.updateState({
|
354
|
+
loadingData: $new
|
355
|
+
});
|
356
|
+
}
|
345
357
|
break;
|
346
358
|
case 'selecteditem':
|
347
359
|
if ($new != $old && isNumber($new)) {
|
@@ -420,8 +432,8 @@ export default class WmList extends BaseComponent {
|
|
420
432
|
}) : null, /*#__PURE__*/React.createElement(Tappable, _extends({}, this.getTestPropsForAction(`item${index}`), {
|
421
433
|
disableTouchEffect: this.state.props.disabletoucheffect,
|
422
434
|
onTap: $event => this.onSelect(item, index, $event),
|
423
|
-
onLongTap: () => this.invokeEventCallback('onLongtap', [null, this.proxy]),
|
424
|
-
onDoubleTap: () => this.invokeEventCallback('onDoubletap', [null, this.proxy]),
|
435
|
+
onLongTap: () => !this.state.props.disableitemselect && this.invokeEventCallback('onLongtap', [null, this.proxy]),
|
436
|
+
onDoubleTap: () => !this.state.props.disableitemselect && this.invokeEventCallback('onDoubletap', [null, this.proxy]),
|
425
437
|
styles: [{
|
426
438
|
display: 'flex',
|
427
439
|
flexDirection: 'row'
|
@@ -452,8 +464,8 @@ export default class WmList extends BaseComponent {
|
|
452
464
|
}) : null, /*#__PURE__*/React.createElement(Tappable, _extends({}, this.getTestPropsForAction(`item${index}`), {
|
453
465
|
disableTouchEffect: this.state.props.disabletoucheffect,
|
454
466
|
onTap: $event => this.onSelect(item, index, $event),
|
455
|
-
onLongTap: () => this.invokeEventCallback('onLongtap', [null, this.proxy]),
|
456
|
-
onDoubleTap: () => this.invokeEventCallback('onDoubletap', [null, this.proxy]),
|
467
|
+
onLongTap: () => !this.state.props.disableitemselect && this.invokeEventCallback('onLongtap', [null, this.proxy]),
|
468
|
+
onDoubleTap: () => !this.state.props.disableitemselect && this.invokeEventCallback('onDoubletap', [null, this.proxy]),
|
457
469
|
styles: [{
|
458
470
|
display: 'flex',
|
459
471
|
flexDirection: 'row'
|
@@ -549,7 +561,7 @@ export default class WmList extends BaseComponent {
|
|
549
561
|
caption: this.getCaption(isHorizontal, v.data),
|
550
562
|
onTap: () => this.loadData()
|
551
563
|
}) : null);
|
552
|
-
}) : this.renderEmptyMessage(isHorizontal, null, null, props));
|
564
|
+
}) : this.state.loadingData ? this.renderLoadingIcon(props) : this.renderEmptyMessage(isHorizontal, null, null, props));
|
553
565
|
}
|
554
566
|
getSectionListData(props) {
|
555
567
|
if (this._showSkeleton) {
|
@@ -564,7 +576,7 @@ export default class WmList extends BaseComponent {
|
|
564
576
|
return [];
|
565
577
|
}
|
566
578
|
renderWithSectionList(props, isHorizontal = false) {
|
567
|
-
return /*#__PURE__*/React.createElement(SectionList, {
|
579
|
+
return this.state.loadingData ? this.renderLoadingIcon(props) : /*#__PURE__*/React.createElement(SectionList, {
|
568
580
|
keyExtractor: (item, i) => this.generateItemKey(item, i, props),
|
569
581
|
horizontal: isHorizontal,
|
570
582
|
contentContainerStyle: this.styles.root,
|