@wavemaker-ai/app-rn-runtime 12.0.1-rc.647755 → 12.0.2-rc.647771
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 +1 -1
- package/components/advanced/carousel/carousel.component.js.map +1 -1
- package/components/basic/bottomsheet/bottomsheet.component.js.map +1 -1
- package/components/basic/icon/svg-url-icon.component.js +26 -1
- package/components/basic/icon/svg-url-icon.component.js.map +1 -1
- package/components/basic/label/label.component.js +11 -1
- package/components/basic/label/label.component.js.map +1 -1
- package/components/basic/label/label.props.js +1 -0
- package/components/basic/label/label.props.js.map +1 -1
- package/components/chart/area-chart/area-chart.component.js +1 -1
- package/components/chart/area-chart/area-chart.component.js.map +1 -1
- package/components/chart/bar-chart/bar-chart.component.js +1 -1
- package/components/chart/bar-chart/bar-chart.component.js.map +1 -1
- package/components/chart/bubble-chart/bubble-chart.component.js +1 -1
- package/components/chart/bubble-chart/bubble-chart.component.js.map +1 -1
- package/components/chart/line-chart/line-chart.component.js +1 -1
- package/components/chart/line-chart/line-chart.component.js.map +1 -1
- package/components/chart/pie-chart/pie-chart.component.js +1 -1
- package/components/chart/pie-chart/pie-chart.component.js.map +1 -1
- package/components/chart/stack-chart/stack-chart.component.js +1 -1
- package/components/chart/stack-chart/stack-chart.component.js.map +1 -1
- package/components/container/accordion/accordionpane/accordionpane.component.js +2 -2
- package/components/container/accordion/accordionpane/accordionpane.component.js.map +1 -1
- package/components/container/container.component.js +1 -1
- package/components/container/container.component.js.map +1 -1
- package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js +7 -3
- package/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js.map +1 -1
- package/components/container/panel/panel.component.js +1 -1
- package/components/container/panel/panel.component.js.map +1 -1
- package/components/container/tabs/tabpane/tabpane.component.js +1 -1
- package/components/container/tabs/tabpane/tabpane.component.js.map +1 -1
- package/components/container/wizard/wizardstep/wizardstep.component.js +1 -1
- package/components/container/wizard/wizardstep/wizardstep.component.js.map +1 -1
- package/components/data/form/form-field/form-field.component.js +20 -3
- package/components/data/form/form-field/form-field.component.js.map +1 -1
- package/components/data/form/form-field/form-field.props.js +1 -0
- package/components/data/form/form-field/form-field.props.js.map +1 -1
- package/components/data/form/form.component.js +7 -2
- package/components/data/form/form.component.js.map +1 -1
- package/components/data/form/form.props.js +1 -0
- package/components/data/form/form.props.js.map +1 -1
- package/components/data/list/list.component.js +2 -2
- package/components/data/list/list.component.js.map +1 -1
- package/components/input/baseinput/baseinput.component.js +2 -0
- package/components/input/baseinput/baseinput.component.js.map +1 -1
- package/components/input/basenumber/basenumber.props.js +1 -0
- package/components/input/basenumber/basenumber.props.js.map +1 -1
- package/components/input/calendar/calendar.component.js +1 -1
- package/components/input/calendar/calendar.component.js.map +1 -1
- package/components/input/checkboxset/checkboxset.component.js +1 -1
- package/components/input/checkboxset/checkboxset.component.js.map +1 -1
- package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js +6 -1
- package/components/input/epoch/wheelpickermodal/date/date-picker-modal.component.js.map +1 -1
- package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js +6 -1
- package/components/input/epoch/wheelpickermodal/time/time-picker-modal.component.js.map +1 -1
- package/components/input/radioset/radioset.component.js +2 -2
- package/components/input/radioset/radioset.component.js.map +1 -1
- package/components/input/text/text.component.js +1 -0
- package/components/input/text/text.component.js.map +1 -1
- package/components/page/left-panel/left-panel.component.js +1 -1
- package/components/page/left-panel/left-panel.component.js.map +1 -1
- package/components-prism/input/slider/slider.styles.js +1 -1
- package/components-prism/input/slider/slider.styles.js.map +1 -1
- package/core/AppConfig.js.map +1 -1
- package/core/base.component.js +23 -0
- package/core/base.component.js.map +1 -1
- package/core/components/textinput.component.js +2 -1
- package/core/components/textinput.component.js.map +1 -1
- package/core/environment.js +25 -0
- package/core/environment.js.map +1 -0
- package/npm-shrinkwrap.json +90 -91
- package/package-lock.json +90 -91
- package/package.json +2 -2
- package/runtime/App.js +1 -0
- package/runtime/App.js.map +1 -1
- package/runtime/base-fragment.component.js +28 -5
- package/runtime/base-fragment.component.js.map +1 -1
- package/runtime/base-page.component.js +2 -1
- package/runtime/base-page.component.js.map +1 -1
- package/runtime/navigator/stack.navigator.js +6 -0
- package/runtime/navigator/stack.navigator.js.map +1 -1
- package/styles/theme.js +21 -2
- package/styles/theme.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","BaseComponent","BaseComponentState","isDefined","debounce","find","forEach","isNil","get","set","cloneDeep","isEmpty","WmLabel","WmIcon","WmMessage","ToastConsumer","_viewPort","EVENTS","viewportEvents","getNumberOfColumnsFromResponsiveConfig","WmFormProps","DEFAULT_CLASS","isDataSetWidget","DEFAULT_FIELD_LAYOUT","width","flexGrow","flexShrink","WmFormState","constructor","args","_defineProperty","WmForm","props","handleSubmit","componentDidMount","getParentFormRef","parentForm","viewportUnsubscribe","subscribe","SIZE_CHANGE","updateFieldLayout","componentWillUnmount","itemsperrow","state","cols","basePercent","Math","floor","widthPercent","fieldLayoutStyle","currentStyle","setState","pformName","current","parent","parentFormRef","setReadonlyFields","_this$formFields","formFields","field","setReadOnlyState","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","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","layoutposition","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","iconurl","title","subheading","heading","flex","flexDirection","getTestId","listIcon","caption","accessibilityrole","hideclose","onClose","children"],"sources":["form.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, DimensionValue } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport { isDefined, widgetsWithUndefinedValue } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport { debounce, find, forEach, isNil, get, set, cloneDeep, isEmpty } from 'lodash';\n\nimport WmLabel from '@wavemaker-ai/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker-ai/app-rn-runtime/components/basic/icon/icon.component';\nimport WmFormField, { WmFormFieldState } from '@wavemaker-ai/app-rn-runtime/components/data/form/form-field/form-field.component';\nimport WmMessage from '@wavemaker-ai/app-rn-runtime/components/basic/message/message.component';\nimport { ToastConsumer, ToastService } from '@wavemaker-ai/app-rn-runtime/core/toast.service';\nimport _viewPort, { EVENTS as viewportEvents } from '@wavemaker-ai/app-rn-runtime/core/viewport';\nimport { getNumberOfColumnsFromResponsiveConfig } from '@wavemaker-ai/app-rn-runtime/core/responsive.utils';\n\nimport WmFormProps from './form.props';\nimport { DEFAULT_CLASS, WmFormStyles } from './form.styles';\nimport { isDataSetWidget } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport WmFormAction, {\n WmFormActionState\n} from '@wavemaker-ai/app-rn-runtime/components/data/form/form-action/form-action.component';\n\nexport interface FormFieldLayoutStyle {\n width: DimensionValue;\n flexGrow: number;\n flexShrink: number;\n}\n\nconst DEFAULT_FIELD_LAYOUT: FormFieldLayoutStyle = {\n width: '100%',\n flexGrow: 0,\n flexShrink: 0,\n};\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 fieldLayoutStyle: FormFieldLayoutStyle = DEFAULT_FIELD_LAYOUT;\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 private viewportUnsubscribe: (() => void) | null = null;\n\n componentDidMount() {\n super.componentDidMount();\n this.getParentFormRef(this.props.parentForm);\n this.viewportUnsubscribe = _viewPort.subscribe(viewportEvents.SIZE_CHANGE, () => {\n this.updateFieldLayout();\n });\n this.updateFieldLayout();\n }\n\n componentWillUnmount() {\n super.componentWillUnmount && super.componentWillUnmount();\n if (this.viewportUnsubscribe) {\n this.viewportUnsubscribe();\n }\n }\n\n private updateFieldLayout() {\n const itemsperrow = this.state.props.itemsperrow;\n const cols = getNumberOfColumnsFromResponsiveConfig(itemsperrow);\n const basePercent = cols > 0 ? Math.floor(100 / cols) : 100;\n const widthPercent = cols > 1 ? basePercent - 2 : basePercent;\n\n const fieldLayoutStyle: FormFieldLayoutStyle = {\n width: `${widthPercent}%` as DimensionValue,\n flexGrow: cols > 1 ? 1 : 0,\n flexShrink: 0,\n };\n\n const currentStyle = this.state.fieldLayoutStyle;\n if (currentStyle.width !== fieldLayoutStyle.width ||\n currentStyle.flexGrow !== fieldLayoutStyle.flexGrow) {\n this.setState({ fieldLayoutStyle } as WmFormState);\n }\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, this.state.props.layoutposition === 'horizontal')\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 // wait until addPageScript is called\n setTimeout(() => {\n this.generateFormFields();\n }, 0);\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.iconurl || 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} iconurl={props.iconurl}></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","_viewPort","EVENTS","viewportEvents","getNumberOfColumnsFromResponsiveConfig","WmFormProps","DEFAULT_CLASS","isDataSetWidget","DEFAULT_FIELD_LAYOUT","width","flexGrow","flexShrink","WmFormState","constructor","args","_defineProperty","WmForm","props","handleSubmit","componentDidMount","getParentFormRef","parentForm","viewportUnsubscribe","subscribe","SIZE_CHANGE","updateFieldLayout","componentWillUnmount","itemsperrow","state","cols","basePercent","Math","floor","widthPercent","fieldLayoutStyle","currentStyle","setState","pformName","current","parent","parentFormRef","setReadonlyFields","_this$formFields","formFields","field","setReadOnlyState","isUpdateMode","setReadonlyState","updateMode","updateState","setTimeout","showActions","edit","new","cancel","delete","registerFormFields","formWidgets","w","form","formwidget","formKey","name","fieldRefs","length","map","createRef","f","index","fieldIndex","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","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","layoutposition","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","showSpinner","_background","iconclass","iconurl","title","subheading","heading","flex","flexDirection","getTestId","listIcon","caption","accessibilityrole","hideclose","onClose","children"],"sources":["form.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View, DimensionValue } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport { isDefined, widgetsWithUndefinedValue } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport { debounce, find, forEach, isNil, get, set, cloneDeep, isEmpty } from 'lodash';\n\nimport WmLabel from '@wavemaker-ai/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker-ai/app-rn-runtime/components/basic/icon/icon.component';\nimport WmFormField, { WmFormFieldState } from '@wavemaker-ai/app-rn-runtime/components/data/form/form-field/form-field.component';\nimport WmMessage from '@wavemaker-ai/app-rn-runtime/components/basic/message/message.component';\nimport { ToastConsumer, ToastService } from '@wavemaker-ai/app-rn-runtime/core/toast.service';\nimport _viewPort, { EVENTS as viewportEvents } from '@wavemaker-ai/app-rn-runtime/core/viewport';\nimport { getNumberOfColumnsFromResponsiveConfig } from '@wavemaker-ai/app-rn-runtime/core/responsive.utils';\n\nimport WmFormProps from './form.props';\nimport { DEFAULT_CLASS, WmFormStyles } from './form.styles';\nimport { isDataSetWidget } from '@wavemaker-ai/app-rn-runtime/core/utils';\nimport WmFormAction, {\n WmFormActionState\n} from '@wavemaker-ai/app-rn-runtime/components/data/form/form-action/form-action.component';\n\nexport interface FormFieldLayoutStyle {\n width: DimensionValue;\n flexGrow: number;\n flexShrink: number;\n}\n\nconst DEFAULT_FIELD_LAYOUT: FormFieldLayoutStyle = {\n width: '100%',\n flexGrow: 0,\n flexShrink: 0,\n};\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 fieldLayoutStyle: FormFieldLayoutStyle = DEFAULT_FIELD_LAYOUT;\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 public fieldRefs: Array<React.RefObject<any>> = [];\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 private viewportUnsubscribe: (() => void) | null = null;\n\n componentDidMount() {\n super.componentDidMount();\n this.getParentFormRef(this.props.parentForm);\n this.viewportUnsubscribe = _viewPort.subscribe(viewportEvents.SIZE_CHANGE, () => {\n this.updateFieldLayout();\n });\n this.updateFieldLayout();\n }\n\n componentWillUnmount() {\n super.componentWillUnmount && super.componentWillUnmount();\n if (this.viewportUnsubscribe) {\n this.viewportUnsubscribe();\n }\n }\n\n private updateFieldLayout() {\n const itemsperrow = this.state.props.itemsperrow;\n const cols = getNumberOfColumnsFromResponsiveConfig(itemsperrow);\n const basePercent = cols > 0 ? Math.floor(100 / cols) : 100;\n const widthPercent = cols > 1 ? basePercent - 2 : basePercent;\n\n const fieldLayoutStyle: FormFieldLayoutStyle = {\n width: `${widthPercent}%` as DimensionValue,\n flexGrow: cols > 1 ? 1 : 0,\n flexShrink: 0,\n };\n\n const currentStyle = this.state.fieldLayoutStyle;\n if (currentStyle.width !== fieldLayoutStyle.width ||\n currentStyle.flexGrow !== fieldLayoutStyle.flexGrow) {\n this.setState({ fieldLayoutStyle } as WmFormState);\n }\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 if (this.fieldRefs.length !== formFields.length) {\n this.fieldRefs = formFields.map(() => React.createRef());\n }\n formFields?.forEach((f: WmFormField, index: number) => {\n f.fieldIndex = index;\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, this.state.props.layoutposition === 'horizontal')\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 // wait until addPageScript is called\n setTimeout(() => {\n this.generateFormFields();\n }, 0);\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.showSpinner()}\n {this._background}\n {props.iconclass || props.iconurl || 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} iconurl={props.iconurl}></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":[]}
|
|
@@ -27,6 +27,7 @@ export default class WmFormProps extends BaseProps {
|
|
|
27
27
|
_defineProperty(this, "onBeforerender", () => {});
|
|
28
28
|
_defineProperty(this, "generateComponent", metadata => {});
|
|
29
29
|
_defineProperty(this, "showinfoskeleton", false);
|
|
30
|
+
_defineProperty(this, "submitondone", false);
|
|
30
31
|
_defineProperty(this, "layoutposition", 'vertical');
|
|
31
32
|
_defineProperty(this, "itemsperrow", {
|
|
32
33
|
xs: 1,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BaseProps","WmFormProps","constructor","args","_defineProperty","metadata","xs","sm","md","lg"],"sources":["form.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport { ResponsiveConfig } from '@wavemaker-ai/app-rn-runtime/core/responsive.utils';\n\nexport default class WmFormProps extends BaseProps {\n children: any;\n dataoutput: any;\n onBeforeservicecall: any;\n onBeforesubmit: any;\n formdata: any;\n parentForm: string = '';\n metadata: any;\n title: any;\n subheading: any;\n iconclass: any;\n iconurl: any;\n postmessage: string = 'Data posted successfully';\n errormessage: string = 'An error occured. Please try again!';\n messagelayout: string = 'Inline';\n formSubmit: Function = () => {};\n formSuccess: Function = () => {};\n relatedData: Function = () => {};\n onSuccess: Function = () => {};\n onError: Function = () => {};\n onBeforerender: Function = () => {};\n generateComponent: Function = (metadata:any) => {};\n showinfoskeleton: boolean = false;\n layoutposition: 'vertical' | 'horizontal' = 'vertical';\n itemsperrow: ResponsiveConfig<number> = {\n xs: 1,\n sm: 1,\n md: 1,\n lg: 1,\n };\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,kDAAkD;AAG5E,eAAe,MAAMC,WAAW,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,qBAM5B,EAAE;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,sBAMD,0BAA0B;IAAAA,eAAA,uBACzB,qCAAqC;IAAAA,eAAA,wBACpC,QAAQ;IAAAA,eAAA,qBACT,MAAM,CAAC,CAAC;IAAAA,eAAA,sBACP,MAAM,CAAC,CAAC;IAAAA,eAAA,sBACR,MAAM,CAAC,CAAC;IAAAA,eAAA,oBACV,MAAM,CAAC,CAAC;IAAAA,eAAA,kBACV,MAAM,CAAC,CAAC;IAAAA,eAAA,yBACD,MAAM,CAAC,CAAC;IAAAA,eAAA,4BACJC,QAAY,IAAK,CAAC,CAAC;IAAAD,eAAA,2BACtB,KAAK;IAAAA,eAAA,
|
|
1
|
+
{"version":3,"names":["BaseProps","WmFormProps","constructor","args","_defineProperty","metadata","xs","sm","md","lg"],"sources":["form.props.ts"],"sourcesContent":["import { BaseProps } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport { ResponsiveConfig } from '@wavemaker-ai/app-rn-runtime/core/responsive.utils';\n\nexport default class WmFormProps extends BaseProps {\n children: any;\n dataoutput: any;\n onBeforeservicecall: any;\n onBeforesubmit: any;\n formdata: any;\n parentForm: string = '';\n metadata: any;\n title: any;\n subheading: any;\n iconclass: any;\n iconurl: any;\n postmessage: string = 'Data posted successfully';\n errormessage: string = 'An error occured. Please try again!';\n messagelayout: string = 'Inline';\n formSubmit: Function = () => {};\n formSuccess: Function = () => {};\n relatedData: Function = () => {};\n onSuccess: Function = () => {};\n onError: Function = () => {};\n onBeforerender: Function = () => {};\n generateComponent: Function = (metadata:any) => {};\n showinfoskeleton: boolean = false;\n submitondone: boolean = false;\n layoutposition: 'vertical' | 'horizontal' = 'vertical';\n itemsperrow: ResponsiveConfig<number> = {\n xs: 1,\n sm: 1,\n md: 1,\n lg: 1,\n };\n}\n"],"mappings":";;;AAAA,SAASA,SAAS,QAAQ,kDAAkD;AAG5E,eAAe,MAAMC,WAAW,SAASD,SAAS,CAAC;EAAAE,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,qBAM5B,EAAE;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,sBAMD,0BAA0B;IAAAA,eAAA,uBACzB,qCAAqC;IAAAA,eAAA,wBACpC,QAAQ;IAAAA,eAAA,qBACT,MAAM,CAAC,CAAC;IAAAA,eAAA,sBACP,MAAM,CAAC,CAAC;IAAAA,eAAA,sBACR,MAAM,CAAC,CAAC;IAAAA,eAAA,oBACV,MAAM,CAAC,CAAC;IAAAA,eAAA,kBACV,MAAM,CAAC,CAAC;IAAAA,eAAA,yBACD,MAAM,CAAC,CAAC;IAAAA,eAAA,4BACJC,QAAY,IAAK,CAAC,CAAC;IAAAD,eAAA,2BACtB,KAAK;IAAAA,eAAA,uBACT,KAAK;IAAAA,eAAA,yBACe,UAAU;IAAAA,eAAA,sBACd;MACtCE,EAAE,EAAE,CAAC;MACLC,EAAE,EAAE,CAAC;MACLC,EAAE,EAAE,CAAC;MACLC,EAAE,EAAE;IACN,CAAC;EAAA;AACH","ignoreList":[]}
|
|
@@ -637,7 +637,7 @@ export default class WmList extends BaseComponent {
|
|
|
637
637
|
};
|
|
638
638
|
const userClass = (this.state.props.classname || '').trim();
|
|
639
639
|
const cascadeRoot = userClass ? this.theme.getStyle(`${this.defaultClass} ${userClass}`).root : undefined;
|
|
640
|
-
const listOuterStyle = this.theme.mergeStyle(this.styles.root,
|
|
640
|
+
const listOuterStyle = this.theme.mergeStyle(cascadeRoot, this.styles.root, !isHorizontal ? fullWidthStyle : null);
|
|
641
641
|
const groupStyle = [this.styles.group, !isHorizontal ? fullWidthStyle : null];
|
|
642
642
|
const flatListStyle = !isHorizontal ? fullWidthStyle : undefined;
|
|
643
643
|
return /*#__PURE__*/React.createElement(View, {
|
|
@@ -737,7 +737,7 @@ export default class WmList extends BaseComponent {
|
|
|
737
737
|
return /*#__PURE__*/React.createElement(View, {
|
|
738
738
|
style: outerStyle,
|
|
739
739
|
onLayout: event => this.handleLayout(event)
|
|
740
|
-
}, this._background, isHorizontal || !props.groupby ? this.renderWithFlatList(props, isHorizontal) : this.renderWithSectionList(props, isHorizontal));
|
|
740
|
+
}, this.showSpinner(), this._background, isHorizontal || !props.groupby ? this.renderWithFlatList(props, isHorizontal) : this.renderWithSectionList(props, isHorizontal));
|
|
741
741
|
}
|
|
742
742
|
}
|
|
743
743
|
//# sourceMappingURL=list.component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","ActivityIndicator","SectionList","Text","View","FlatList","Dimensions","Platform","isArray","isEmpty","isNil","isNumber","BaseComponent","BaseComponentState","getGroupedData","getNumberOfEmptyObjects","isDefined","getNumberOfColumnsFromResponsiveConfig","Tappable","DefaultKeyExtractor","WmLabel","WmIcon","Swipeable","_viewPort","EVENTS","ViewPortEvents","WmListProps","DEFAULT_CLASS","LIST_TEMPLATE_DEFAULT_CLASS","BackgroundComponent","isAutoLayout","checkAutoLayout","getContentContainerStyle","getDirectionStyle","getDimensionStyle","extractAutoLayoutProps","WmListState","constructor","args","_defineProperty","WmList","props","get","width","leftActionTemplate","createElement","Fragment","getTemplate","rightActionTemplate","updateState","groupedData","item","dataset","state","onSelect","index","indexOf","multiselect","selectedItems","selectedItem","selecteditem","selectedItemIndex","splice","invokeEventCallback","proxy","widgetname","itemWidgets","length","map","filter","widget","undefined","selectedindex","groupKey","itemIndex","refKey","flatListRefs","scrollToIndex","animated","isHorizontal","vData","nodatamessage","ondemandmessage","hasMoreData","children","style","_extends","getListTemplateWidth","maxRecordsToShow","pagesize","cleanup","push","subscribe","SIZE_CHANGE","newDim","screenWidth","forceUpdate","isSelected","$item","$index","$event","disableitemselect","eventName","disableitem","selectionlimit","selectedItemWidgets","direction","_this$state$groupedDa","forEach","group","data","includes","key","Promise","resolve","horizontalscrolltoitem","scrollToItem","loadDataOnDemand","navigation","loadData","loadingData","setTimeout","$list","loadingdata","getNextPageData","currentPage","then","last","catch","err","console","error","selectFirstItem","initialized","groupby","deselectAll","setGroupData","items","dataItems","match","orderby","dateformat","_this$keyExtractor","keyExtractor","clear","onPropertyChange","name","$new","$old","orderbyData","_this$keyExtractor2","_this$keyExtractor3","selectfirstitem","pop","selectItem","componentDidMount","_props$dataset","event","_event$nativeEvent","_event$nativeEvent2","_event$nativeEvent3","scrollPosition","nativeEvent","contentOffset","y","contentHeight","contentSize","height","viewportHeight","layoutMeasurement","threshold","isVisible","scrolledToEnd","componentDidUpdate","prevProps","prevState","snapshot","triggeronrenderwhenhidden","showView","getDefaultStyles","theme","getStyle","defaultClass","getIndex","generateItemKey","itemkey","_showSkeleton","getKey","getFlatListData","groupData","_ref","numberofskeletonitems","horizontalondemandenabled","slice","renderItem","_this$styles$columnWr","_this$styles","cols","getNoOfColumns","isWrap","wrap","styles","skeleton","root","containerStyle","columnGap","columnWrapper","gap","isNaN","totalGap","availableWidth","Math","round","flex","shouldswipe","minWidth","itemclass","backgroundImage","image","position","backgroundPosition","size","backgroundSize","repeat","backgroundRepeat","resizeMode","backgroundResizeMode","borderRadius","getTestPropsForAction","disableTouchEffect","disabletoucheffect","onTap","onLongTap","onDoubleTap","display","flexDirection","paddingRight","marginRight","margin","itemContainer","OS","id","getTestId","iconclass","selectedIcon","renderLeftActions","renderRightActions","selecteditemicon","renderHeader","title","groupHeading","accessibilityRole","iconurl","subheading","heading","listIcon","caption","accessibilityrole","renderEmptyMessage","emptyMessage","renderLoadingIcon","loadingicon","loadingiconurl","loadingIcon","loadingdatamsg","color","text","responsive","columns","itemsperrow","fallback","xs","findListTemplateInChildren","nodes","componentNode","node","instance","nested","_listTemplate$props","listTemplate","onLayoutChange","e","renderWithFlatList","hasExplicitAutoLayout","alignment","columngap","Boolean","listAutoLayoutProps","listDirectionStyle","listContentStyle","fullWidthStyle","userClass","classname","trim","cascadeRoot","listOuterStyle","mergeStyle","groupStyle","flatListStyle","onLayout","v","i","ref","CellRendererComponent","renderCustomCell","testID","scrollEnabled","horizontal","contentContainerStyle","listContainer","ListEmptyComponent","itemInfo","showsHorizontalScrollIndicator","hidehorizontalscrollbar","numColumns","columnWrapperStyle","onDemandMessage","getCaption","getSectionListData","_ref2","section","renderWithSectionList","sections","renderSectionHeader","renderSectionFooter","renderWidget","_this$parent","alProps","parent","listDir","hasAutoLayout","outerStyle","handleLayout","_background"],"sources":["list.component.tsx"],"sourcesContent":["import React from 'react';\nimport { ActivityIndicator, SectionList, Text, View, FlatList, LayoutChangeEvent, TouchableOpacity, Dimensions, ViewStyle, Platform } from 'react-native';\nimport { isArray, isEmpty, isNil, isNumber, round } from 'lodash-es';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport { getGroupedData, getNumberOfEmptyObjects, isDefined } from \"@wavemaker-ai/app-rn-runtime/core/utils\";\nimport { getNumberOfColumnsFromResponsiveConfig } from '@wavemaker-ai/app-rn-runtime/core/responsive.utils';\nimport { Tappable } from '@wavemaker-ai/app-rn-runtime/core/tappable.component';\nimport { DefaultKeyExtractor } from '@wavemaker-ai/app-rn-runtime/core/key.extractor';\nimport WmLabel from '@wavemaker-ai/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker-ai/app-rn-runtime/components/basic/icon/icon.component';\nimport { Swipeable } from 'react-native-gesture-handler';\nimport WmListActionTemplate from './list-action-template/list-action-template.component';\nimport { DEVICE_BREAK_POINTS } from '@wavemaker-ai/app-rn-runtime/styles/theme';\nimport _viewPort, { EVENTS as ViewPortEvents } from '@wavemaker-ai/app-rn-runtime/core/viewport';\n\nimport WmListProps from './list.props';\nimport { DEFAULT_CLASS, WmListStyles } from './list.styles';\nimport { DEFAULT_CLASS as LIST_TEMPLATE_DEFAULT_CLASS } from './list-template/list-template.styles';\nimport { WmComponentNode } from '@wavemaker-ai/app-rn-runtime/core/wm-component-tree';\nimport { BackgroundComponent } from '@wavemaker-ai/app-rn-runtime/styles/background.component';\nimport {\n AutoLayoutProps,\n isAutoLayout as checkAutoLayout,\n getContentContainerStyle,\n getDirectionStyle,\n getDimensionStyle,\n extractAutoLayoutProps,\n} from '@wavemaker-ai/app-rn-runtime/core/auto-layout.utils';\n\n\nexport class WmListState extends BaseComponentState<WmListProps> {\n public selectedindex: any;\n groupedData: Array<any> = [];\n currentPage = 1;\n maxRecordsToShow = 20;\n loadingData = true;\n}\n\nexport default class WmList extends BaseComponent<WmListProps, WmListState, WmListStyles> {\n\n private itemWidgets = [] as any[];\n private selectedItemWidgets = {} as any;\n private keyExtractor = new DefaultKeyExtractor();\n //private endThreshold = -1;\n // private loadingData = false;\n private hasMoreData = true;\n public leftActionTemplate?: WmListActionTemplate;\n public rightActionTemplate?: WmListActionTemplate;\n private flatListRefs: any = {};\n private selectedItems = [] as any[];\n private scrolledToEnd: boolean = false;\n private screenWidth = Dimensions.get(\"window\").width;\n\n\n\n constructor(props: WmListProps) {\n\n super(props, DEFAULT_CLASS, new WmListProps(), new WmListState());\n this.updateState({\n maxRecordsToShow: this.state.props.pagesize\n } as WmListState);\n\n // Subscribe to viewport changes to re-render when screen size changes\n this.cleanup.push(_viewPort.subscribe(ViewPortEvents.SIZE_CHANGE, (newDim: { width: number}) => {\n this.screenWidth = newDim.width;\n this.forceUpdate();\n }));\n\n\n }\n\n private isSelected($item: any) {\n const selectedItem = this.state.props.selecteditem;\n if (isArray(selectedItem)) {\n return selectedItem.indexOf($item) >= 0;\n }\n return selectedItem === $item;\n }\n\n private async onSelect($item: any, $index: number | string, $event?: any) {\n if(this.state.props.disableitemselect) {\n return;\n }\n\n const props = this.state.props;\n let selectedItem = null as any;\n let eventName = 'onSelect';\n if (props.disableitem !== true\n && (typeof props.disableitem !== 'function' || !props.disableitem($item, $index))) {\n if (props.multiselect) {\n selectedItem = [...(props.selecteditem || [])];\n const index = selectedItem.indexOf($item);\n if (index < 0) {\n if ((!props.selectionlimit)\n || props.selectionlimit < 0\n || selectedItem.length < props.selectionlimit) {\n selectedItem.push($item);\n } else {\n this.invokeEventCallback('onSelectionlimitexceed', [null, this]);\n }\n } else {\n selectedItem.splice(index, 1);\n eventName = 'onDeselect';\n }\n } else {\n this.state.props.selecteditem && this.invokeEventCallback('onDeselect', [this.proxy, this.state.props.selecteditem]);\n selectedItem = $item;\n }\n this.selectedItems = selectedItem;\n this.selectedItemWidgets = this.itemWidgets[$index as number];\n let groupKey: string | null = null;\n\n if (props.direction === 'row') {\n this.state.groupedData?.forEach((group) => {\n if (group.data.includes($item)) {\n groupKey = group.key;\n }\n });\n }\n\n return new Promise(resolve => {\n this.updateState({\n props: { selecteditem: selectedItem },\n selectedindex: $index\n } as WmListState, () => {\n if (props.direction === 'row' && props.horizontalscrolltoitem) {\n this.scrollToItem(groupKey, $index as number);\n }\n this.invokeEventCallback(eventName, [this.proxy, $item]);\n $event && this.invokeEventCallback('onTap', [$event, this.proxy]);\n resolve(null);\n });\n });\n\n } else {\n return Promise.resolve(null);\n }\n }\n\n private get loadDataOnDemand() {\n const navigation = this.state.props.navigation;\n return navigation === 'Scroll' || navigation === 'On-Demand';\n }\n\n renderLeftActions = () => {\n return this.leftActionTemplate ? (\n <>\n {this.leftActionTemplate.getTemplate()}\n </>\n ) : null;\n };\n\n renderRightActions = () => {\n return this.rightActionTemplate ? (\n <>\n {this.rightActionTemplate.getTemplate()}\n </>\n ) : null;\n };\n\n private loadData() {\n if (this.state.loadingData || !this.hasMoreData) {\n\n return;\n }\n if (isArray(this.state.props.dataset)\n && this.state.props.dataset.length > this.state.maxRecordsToShow) {\n this.updateState({\n loadingData: true,\n maxRecordsToShow: this.state.maxRecordsToShow + this.state.props.pagesize\n } as WmListState);\n setTimeout(() => {\n // Force a re-render by making a small state update\n this.updateState({\n loadingData: false,\n } as WmListState);\n }, 100);\n } else if (this.loadDataOnDemand) {\n const $list = this.proxy as any;\n $list.loadingdata = true;\n // Set loading state via updateState\n this.updateState({\n loadingData: true\n } as WmListState);\n this.props.getNextPageData && this.props.getNextPageData(null, this.proxy, this.state.currentPage + 1).then((data) => {\n if (isArray(data) && data.length > 0\n && isArray(this.state.props.dataset)) {\n $list.dataset = [...this.state.props.dataset, ...data];\n this.updateState({\n currentPage: this.state.currentPage + 1,\n maxRecordsToShow: this.state.maxRecordsToShow + this.state.props.pagesize,\n } as WmListState);\n this.hasMoreData = true;\n if((data as any)?.last === true) {\n this.hasMoreData = false;\n }\n\n } else {\n this.hasMoreData = false;\n }\n }).catch((err) => {\n console.error(err);\n }).then(() => {\n setTimeout(() => {\n $list.loadingdata = false;\n\n }, 1000);\n });\n }\n }\n\n private selectFirstItem() {\n const props = this.state.props;\n if (this.initialized\n && props.dataset\n && props.dataset.length) {\n const index = props.groupby ? '00' : 0;\n this.onSelect(props.dataset[0], index);\n }\n }\n\n clear = () => {\n this.updateState({\n groupedData: {},\n } as WmListState);\n }\n\n selectItem = (item: number | object) => {\n const dataset = this.state.props.dataset;\n if (isNumber(item)) {\n this.onSelect(dataset[item], item);\n }\n else {\n let index = dataset.indexOf(item);\n this.onSelect(dataset[index], index);\n }\n }\n\n getSelectedItems = () => {\n if (!this.props.multiselect) {\n return [this.selectedItems]\n }\n return this.selectedItems;\n }\n\n getItem = (index: number) => {\n const props = this.state.props;\n return this.props.dataset[index]\n }\n\n deselectItem = (item: number | object) => {\n const props = this.state.props;\n let selectedItem = props.selecteditem || null;\n let index = isNumber(item) ? item : props.dataset.indexOf(item);\n if (props.multiselect && index >= 0) {\n selectedItem = [...(props.selecteditem || [])];\n let selectedItemIndex = selectedItem.indexOf(props.dataset[index])\n if (selectedItemIndex >= 0) {\n selectedItem.splice(selectedItemIndex, 1);\n }\n }\n else {\n if (props.selecteditem === props.dataset[index]) {\n selectedItem = null;\n }\n }\n this.updateState({\n props: { selecteditem: selectedItem },\n\n } as WmListState, () => {\n this.invokeEventCallback('onDeselect', [this.proxy, item]);\n });\n }\n\n getWidgets = (widgetname: string, index: number) => {\n if(index >= 0 && index < this.itemWidgets.length){\n return this.itemWidgets[index][widgetname]\n }\n else {\n return this.itemWidgets.map(item => item[widgetname]).filter(widget => widget !== undefined);\n }\n }\n\n selectAll = () => {\n const props = this.state.props;\n const dataset = props.dataset;\n if (!props.multiselect || !isArray(dataset) || dataset.length === 0) {\n return;\n }\n const selectedItems = [...dataset];\n\n this.updateState({\n props: { selecteditem: selectedItems },\n selectedindex: -1\n } as WmListState);\n }\n\n private deselectAll() {\n this.updateState({\n props: { selecteditem: null },\n selectedindex: -1\n } as WmListState);\n }\n\n setGroupData(items: any) {\n const dataItems = items;\n const props = this.state.props;\n if (props.groupby) {\n const groupedData = dataItems && getGroupedData(dataItems, props.groupby, props.match, props.orderby, props.dateformat, this);\n this.updateState({\n groupedData: groupedData\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n }\n\n public onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n switch (name) {\n case 'selectfirstitem':\n if ($new) {\n this.selectFirstItem();\n }\n break;\n case 'dataset':\n if (this.state.props.groupby) {\n this.setGroupData($new);\n } else {\n if (!($old && $old.length)\n && $new && $new.length\n && this.loadDataOnDemand) {\n this.updateState({\n props: {\n dataset: [...$new]\n }\n } as WmListState);\n }\n const data = isArray($new) ? $new : (!isEmpty($new) && isDefined($new) ? [$new] : []);\n if (props.orderby) {\n const orderbyData = data && getGroupedData(data, props.groupby, props.match, props.orderby, props.dateformat, this);\n this.updateState({\n groupedData: (orderbyData[0] ? [{\n key: 'key',\n data: orderbyData[0].data\n }] : [])\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n } else {\n this.updateState({\n groupedData: (data[0] || props.direction === 'row' ? [{\n key: 'key',\n data: data\n }] : [])\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n }\n this.itemWidgets = [];\n if (props.selectfirstitem) {\n this.selectFirstItem();\n } else {\n this.deselectAll();\n }\n if (isArray($new)){\n setTimeout(() => {\n this.updateState({\n loadingData: false\n } as WmListState)\n }, 0)\n }\n break;\n case 'groupby':\n case 'match':\n this.setGroupData(this.state.props.dataset);\n break;\n case 'multiselect':\n if ($new) {\n if (!isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem ?\n [this.state.props.selecteditem] : [];\n }\n } else if (isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem.pop();\n }\n break;\n case 'loadingdata':\n if($new != $old){\n this.updateState({\n loadingData: $new\n } as WmListState);}\n break;\n case 'selecteditem':\n if ($new != $old && isNumber($new)) {\n this.selectItem(this.state.props.dataset[$new])\n }\n break;\n }\n }\n\n componentDidMount() {\n const props = this.state.props;\n if (this.state.props.selectfirstitem && props.dataset?.length) {\n setTimeout(() => {\n this.onSelect(props.dataset[0], 0);\n });\n }\n this.subscribe('scroll', (event: any) => {\n const scrollPosition = event?.nativeEvent?.contentOffset?.y;\n const contentHeight = event?.nativeEvent?.contentSize?.height;\n const viewportHeight = event?.nativeEvent?.layoutMeasurement?.height;\n\n //checking user scrolled till bottom of the list logic\n const threshold = 50; // px\n const isVisible = scrollPosition + viewportHeight >= contentHeight - threshold;\n if (isVisible && !this.scrolledToEnd) {\n this.scrolledToEnd = true;\n //console.log('user scrolled till end');\n this.loadData();\n } else if (!isVisible && this.scrolledToEnd) {\n this.scrolledToEnd = false;\n }\n });\n\n super.componentDidMount();\n }\n\n componentDidUpdate(prevProps: WmListProps, prevState: WmListState, snapshot?: any) {\n super.componentDidUpdate && super.componentDidUpdate(prevProps, prevState, snapshot);\n if (prevProps.triggeronrenderwhenhidden === true || this.showView()) {\n this.invokeEventCallback('onRender', [this, this.state.props.dataset]);\n }\n }\n\n\n\n getDefaultStyles() {\n const isHorizontal = this.state.props.direction === 'row';\n return this.theme.getStyle(`${this.defaultClass} ${isHorizontal ? 'app-horizontal-list' : 'app-vertical-list'}`);\n }\n\n getIndex(item: any) {\n return this.state.props.dataset.indexOf(item);\n }\n\n private generateItemKey(item: any, index: number, props: WmListProps) {\n if (props.itemkey && item && !this._showSkeleton) {\n return props.itemkey(item, index);\n }\n return 'list_item_' + this.keyExtractor.getKey(item, true);\n }\n\n private getFlatListData(groupData: any[], isHorizontal: boolean, props: WmListProps) {\n if (this._showSkeleton) {\n return [...getNumberOfEmptyObjects(this.props.numberofskeletonitems as number ?? 3)];\n }\n if (!groupData || isEmpty(groupData[0])) {\n return [];\n }\n if (isHorizontal && props.horizontalondemandenabled === false) {\n return groupData;\n }\n return groupData.slice(0, this.state.maxRecordsToShow);\n }\n\n private renderItem(item: any, index: number, props: WmListProps) {\n const cols = this.getNoOfColumns();\n const isHorizontal = props.direction === 'row';\n const isWrap = isHorizontal && props.wrap;\n\n const styles = this._showSkeleton ? {\n ...this.styles.item,\n ...this.styles.skeleton.root\n } : this.styles.item as any\n\n let containerStyle={};\n const columnGap: any = this.styles?.columnWrapper?.gap ?? 0;\n\n if(!cols || isNaN(cols) || cols <= 0){\n containerStyle = {};\n }\n else if (columnGap > 0) {\n const totalGap = columnGap * (cols - 1);\n const availableWidth = this.screenWidth - totalGap;\n if (availableWidth <= 0) {\n containerStyle = { width: \"100%\" };\n } else {\n containerStyle = {\n width: `${Math.round((availableWidth / (cols * this.screenWidth)) * 100)}%`\n };\n }\n }\n else {\n containerStyle = cols? { width: Math.round(100 / cols) + \"%\", flex: null }: {};\n }\n\n return (index < this.state.maxRecordsToShow || (isHorizontal && this.state.props.horizontalondemandenabled === false)) ?\n !props.shouldswipe ? (\n <View style={containerStyle as any}>\n <View style={[\n styles,\n isWrap ? { minWidth: 0 } : null,\n props.itemclass ? this.theme.getStyle(props.itemclass(item, index)) : null,\n this.isSelected(item) ? this.styles.selectedItem : {}]}>\n {styles.backgroundImage ? (\n <BackgroundComponent\n image={styles.backgroundImage}\n position={styles.backgroundPosition || 'center'}\n size={styles.backgroundSize || 'cover'}\n repeat={styles.backgroundRepeat || 'no-repeat'}\n resizeMode={styles.backgroundResizeMode || 'cover'}\n style={{ borderRadius: this.styles.item.borderRadius }}\n />\n ) : null}\n <Tappable\n {...this.getTestPropsForAction(`item${index}`)}\n disableTouchEffect={this.state.props.disabletoucheffect}\n onTap={($event) => this.onSelect(item, index, $event)}\n onLongTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onLongtap', [null, this.proxy])}\n onDoubleTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onDoubletap', [null, this.proxy])}\n styles={\n [{ display: 'flex', flexDirection: 'row' },\n cols ? {\n width: '100%'\n } : null,\n (cols && cols > 1) || isHorizontal ? {\n paddingRight: (isNil(this.styles.item.marginRight)\n ? this.styles.item.margin : this.styles.item.marginRight) || 4\n } : null,\n this.styles.itemContainer,\n Platform.OS == 'web' && this.getListTemplateWidth() == \"fill\" ? {width: \"100%\"} : {}\n ]\n }>\n {props.renderItem(item, index, this)}\n {this.isSelected(item) ? (\n <WmIcon id={this.getTestId('icon' + index)} iconclass='wi wi-check-circle' styles={this.styles.selectedIcon} />\n ) : null}\n </Tappable>\n </View>\n </View>\n ) :\n (\n <Swipeable\n renderLeftActions={() => this.renderLeftActions()}\n renderRightActions={() => this.renderRightActions()} containerStyle={containerStyle as any}>\n <View style={[\n styles,\n isWrap ? { minWidth: 0 } : null,\n props.itemclass ? this.theme.getStyle(props.itemclass(item, index)) : null,\n this.isSelected(item) ? this.styles.selectedItem : {}]}>\n {styles.backgroundImage ? (\n <BackgroundComponent\n image={styles.backgroundImage}\n position={styles.backgroundPosition || 'center'}\n size={styles.backgroundSize || 'cover'}\n repeat={styles.backgroundRepeat || 'no-repeat'}\n resizeMode={styles.backgroundResizeMode || 'cover'}\n style={{ borderRadius: this.styles.item.borderRadius }}\n />\n ) : null}\n <Tappable\n {...this.getTestPropsForAction(`item${index}`)}\n disableTouchEffect={this.state.props.disabletoucheffect}\n onTap={($event) => this.onSelect(item, index, $event)}\n onLongTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onLongtap', [null, this.proxy])}\n onDoubleTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onDoubletap', [null, this.proxy])}\n styles={\n [{ display: 'flex', flexDirection: 'row' },\n cols ? {\n width: '100%'\n } : null,\n (cols && cols > 1) || isHorizontal ? {\n paddingRight: (isNil(this.styles.item.marginRight)\n ? this.styles.item.margin : this.styles.item.marginRight) || 4\n } : null,\n this.styles.itemContainer\n ]\n }>\n {props.renderItem(item, index, this)}\n {this.isSelected(item) ? (\n <WmIcon id={this.getTestId('icon' + index)} iconclass={props.selecteditemicon ? props.selecteditemicon : 'wi wi-check-circle'} styles={this.styles.selectedIcon} />\n ) : null}\n </Tappable>\n </View>\n </Swipeable>\n ) : null\n }\n\n private renderHeader(props: WmListProps, title: string) {\n return props.groupby ? (\n <Text style={this.styles.groupHeading} accessibilityRole='header'>{title}</Text>\n ) : (props.iconclass || props.iconurl || 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} iconurl={props.iconurl}></WmIcon>\n <View>\n <WmLabel id={this.getTestId('title')} styles={this.styles.title} caption={props.title} accessibilityrole='header'></WmLabel>\n <WmLabel id={this.getTestId('subheading')} styles={this.styles.subheading} caption={props.subheading}></WmLabel>\n </View>\n </View>\n </View>) : null;\n }\n\n private renderEmptyMessage(isHorizontal: boolean, item: any, index: any, props: WmListProps) {\n return (<WmLabel id={this.getTestId('emptymsg')} styles={this.styles.emptyMessage} caption={props.nodatamessage}></WmLabel>);\n }\n\n private renderLoadingIcon(props: WmListProps) {\n return (props.loadingicon || props.loadingiconurl) ? (<WmIcon\n id={this.getTestId('loadingicon')}\n styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\n iconurl={props.loadingiconurl}\n caption={props.loadingdatamsg}></WmIcon>)\n : (\n <ActivityIndicator color={this.styles.loadingIcon.text.color}></ActivityIndicator>\n );\n }\n\n public getNoOfColumns() {\n const props = this.state.props;\n if (props.direction === 'column' && props.responsive) {\n const columns = getNumberOfColumnsFromResponsiveConfig(props.itemsperrow, undefined, props.fallback);\n return columns && columns > 0 ? columns : 1;\n } else if (props.direction === 'column' && !props.responsive) {\n if(props.itemsperrow.xs){\n return props.itemsperrow.xs;\n }\n }\n return 0;\n }\n\n private findListTemplateInChildren(nodes: WmComponentNode[] = this.componentNode.children): BaseComponent<any, any, any> | undefined {\n for (const node of nodes) {\n const instance = node.instance;\n if (instance?.defaultClass === LIST_TEMPLATE_DEFAULT_CLASS) {\n return instance;\n }\n const nested = this.findListTemplateInChildren(node.children);\n if (nested) {\n return nested;\n }\n }\n return undefined;\n }\n\n getListTemplateWidth(): any {\n const listTemplate = this.findListTemplateInChildren();\n return listTemplate?.props?.styles?.root?.width;\n }\n\n private scrollToItem = (groupKey: string | null, itemIndex: number) => {\n const refKey = groupKey || 'main';\n if (this.flatListRefs[refKey]) {\n this.flatListRefs[refKey].scrollToIndex({\n index: itemIndex,\n animated: true,\n });\n }\n };\n\n getCaption = (isHorizontal: boolean, vData: any[]): string => {\n const { nodatamessage, ondemandmessage } = this.state.props\n if (!isHorizontal) {\n return this.hasMoreData ? ondemandmessage : nodatamessage\n }\n return this.hasMoreData ? ondemandmessage : nodatamessage\n }\n\n private onLayoutChange(e: LayoutChangeEvent) {\n // const l = e.nativeEvent.layout;\n // this.endThreshold = l.height + l.y - 100;\n // if (!this.endThreshold) {\n // this.endThreshold = -1;\n\n // }\n }\n\n renderCustomCell = ({ children, style, ...props }: any) => {\n return (\n <View\n {...props}\n style={[\n style,\n {\n width: this.getListTemplateWidth() == \"fill\" ? \"100%\" : {},\n },\n ]}>\n {children}\n </View>\n );\n };\n\n private renderWithFlatList(props: WmListProps, isHorizontal = false) {\n const isWrap = isHorizontal && props.wrap;\n const hasExplicitAutoLayout =\n props.alignment !== undefined ||\n props.gap !== undefined ||\n props.columngap !== undefined ||\n Boolean(props.wrap);\n const listAutoLayoutProps = extractAutoLayoutProps(props) as AutoLayoutProps;\n listAutoLayoutProps.direction = isHorizontal ? 'row' : 'column';\n const listDirectionStyle = hasExplicitAutoLayout ? getDirectionStyle(listAutoLayoutProps) : null;\n const listContentStyle = hasExplicitAutoLayout ? getContentContainerStyle(listAutoLayoutProps) : null;\n const fullWidthStyle: ViewStyle = { width: '100%' };\n const userClass = (this.state.props.classname || '').trim();\n const cascadeRoot = userClass\n ? this.theme.getStyle(`${this.defaultClass} ${userClass}`).root\n : undefined;\n const listOuterStyle = this.theme.mergeStyle(\n this.styles.root,\n cascadeRoot,\n !isHorizontal ? fullWidthStyle : null\n );\n const groupStyle = [this.styles.group, !isHorizontal ? fullWidthStyle : null];\n const flatListStyle: ViewStyle | undefined = !isHorizontal ? fullWidthStyle : undefined;\n\n return (\n <View style={listOuterStyle}\n onLayout={e => this.onLayoutChange(e)}\n >\n {!isEmpty(this.state.groupedData) ? this.state.groupedData.map((v: any, i) => ((\n <View style={groupStyle} key={v.key || this.keyExtractor.getKey(v, true)}>\n {this.renderHeader(props, v.key)}\n <FlatList\n ref={(ref) => { this.flatListRefs[v.key || 'main'] = ref; }}\n CellRendererComponent={Platform.OS === 'web' ? this.renderCustomCell : undefined}\n testID={this.getTestId('flat_list')}\n style={flatListStyle}\n key={props.name + '_' + (isHorizontal ? 'H' : 'V') + props.itemsperrow.xs + (isWrap ? '_W' : '')}\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n scrollEnabled={isHorizontal && !isWrap}\n horizontal={isHorizontal && !isWrap}\n contentContainerStyle={[\n this.styles.listContainer,\n listDirectionStyle,\n listContentStyle,\n ]}\n data={this.getFlatListData(v.data, isHorizontal, props)}\n ListEmptyComponent={(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}\n {...(isHorizontal && !isWrap\n ? { showsHorizontalScrollIndicator: !props.hidehorizontalscrollbar }\n : !isWrap\n ? { numColumns: this.getNoOfColumns() }\n : {})}\n {...(!isWrap && this.getNoOfColumns() > 1 ? {columnWrapperStyle: this.styles.columnWrapper} : {})}>\n </FlatList>\n {this.loadDataOnDemand || (v.data.length > this.state.maxRecordsToShow && props.navigation !== 'None') ?\n (this.state.loadingData ? this.renderLoadingIcon(props) :\n (<WmLabel id={this.getTestId('ondemandmessage')}\n styles={this.styles.onDemandMessage}\n caption={this.getCaption(isHorizontal, v.data)}\n onTap={() => this.loadData()}></WmLabel>)) : null}\n </View>\n ))) : this.state.loadingData ? this.renderLoadingIcon(props) : this.renderEmptyMessage(isHorizontal, null, null, props)\n }\n </View>);\n }\n\n private getSectionListData(props: WmListProps) {\n if (this._showSkeleton) {\n return [{\n key: '',\n data: [...getNumberOfEmptyObjects(this.props.numberofskeletonitems as number ?? 3)]\n }];\n } else if (this.state.groupedData\n && this.state.groupedData[0]\n && this.state.groupedData[0]['data'].length) {\n return this.state.groupedData.map((section: any) => ({\n ...section,\n data: isArray(section?.data)\n ? section.data.slice(0, this.state.maxRecordsToShow)\n : section?.data,\n }));\n }\n return [];\n }\n\n private renderWithSectionList(props: WmListProps, isHorizontal = false) {\n const hasExplicitAutoLayout =\n props.alignment !== undefined ||\n props.gap !== undefined ||\n props.columngap !== undefined ||\n Boolean(props.wrap);\n const listAutoLayoutProps = extractAutoLayoutProps(props) as AutoLayoutProps;\n listAutoLayoutProps.direction = isHorizontal ? 'row' : 'column';\n const listDirectionStyle = hasExplicitAutoLayout ? getDirectionStyle(listAutoLayoutProps) : null;\n const listContentStyle = hasExplicitAutoLayout ? getContentContainerStyle(listAutoLayoutProps) : null;\n\n return (\n this.state.loadingData ?\n this.renderLoadingIcon(props) :\n (\n <SectionList\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n horizontal={isHorizontal}\n contentContainerStyle={[\n this.styles.root,\n listDirectionStyle,\n listContentStyle,\n ]}\n sections={this.getSectionListData(props)}\n renderSectionHeader={({ section: { key, data } }) => {\n return this.renderHeader(props, key);\n }}\n renderSectionFooter={() => props.loadingdata ? this.renderLoadingIcon(props) : null}\n ListEmptyComponent={(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}>\n </SectionList>\n )\n );\n }\n\n renderWidget(props: WmListProps) {\n this.invokeEventCallback('onBeforedatarender', [this, this.state.props.dataset]);\n const isHorizontal = props.direction == 'row';\n\n const alProps = extractAutoLayoutProps(props, this.parent?.state?.props);\n const listDir = props.direction;\n if (listDir === 'row') {\n alProps.direction = 'row';\n } else {\n alProps.direction = 'column';\n }\n\n const hasAutoLayout = checkAutoLayout({ ...alProps, direction: undefined });\n\n const outerStyle: any[] = [isHorizontal ? null : { width: '100%' }];\n if (hasAutoLayout) {\n outerStyle.push(\n getDirectionStyle(alProps),\n getContentContainerStyle(alProps),\n getDimensionStyle(alProps, this.styles.root)\n );\n }\n\n return (\n <View\n style={outerStyle}\n onLayout={(event) => this.handleLayout(event)}\n >\n {this._background}\n {(isHorizontal || !props.groupby) ?\n this.renderWithFlatList(props, isHorizontal)\n : this.renderWithSectionList(props, isHorizontal)}\n </View>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","ActivityIndicator","SectionList","Text","View","FlatList","Dimensions","Platform","isArray","isEmpty","isNil","isNumber","BaseComponent","BaseComponentState","getGroupedData","getNumberOfEmptyObjects","isDefined","getNumberOfColumnsFromResponsiveConfig","Tappable","DefaultKeyExtractor","WmLabel","WmIcon","Swipeable","_viewPort","EVENTS","ViewPortEvents","WmListProps","DEFAULT_CLASS","LIST_TEMPLATE_DEFAULT_CLASS","BackgroundComponent","isAutoLayout","checkAutoLayout","getContentContainerStyle","getDirectionStyle","getDimensionStyle","extractAutoLayoutProps","WmListState","constructor","args","_defineProperty","WmList","props","get","width","leftActionTemplate","createElement","Fragment","getTemplate","rightActionTemplate","updateState","groupedData","item","dataset","state","onSelect","index","indexOf","multiselect","selectedItems","selectedItem","selecteditem","selectedItemIndex","splice","invokeEventCallback","proxy","widgetname","itemWidgets","length","map","filter","widget","undefined","selectedindex","groupKey","itemIndex","refKey","flatListRefs","scrollToIndex","animated","isHorizontal","vData","nodatamessage","ondemandmessage","hasMoreData","children","style","_extends","getListTemplateWidth","maxRecordsToShow","pagesize","cleanup","push","subscribe","SIZE_CHANGE","newDim","screenWidth","forceUpdate","isSelected","$item","$index","$event","disableitemselect","eventName","disableitem","selectionlimit","selectedItemWidgets","direction","_this$state$groupedDa","forEach","group","data","includes","key","Promise","resolve","horizontalscrolltoitem","scrollToItem","loadDataOnDemand","navigation","loadData","loadingData","setTimeout","$list","loadingdata","getNextPageData","currentPage","then","last","catch","err","console","error","selectFirstItem","initialized","groupby","deselectAll","setGroupData","items","dataItems","match","orderby","dateformat","_this$keyExtractor","keyExtractor","clear","onPropertyChange","name","$new","$old","orderbyData","_this$keyExtractor2","_this$keyExtractor3","selectfirstitem","pop","selectItem","componentDidMount","_props$dataset","event","_event$nativeEvent","_event$nativeEvent2","_event$nativeEvent3","scrollPosition","nativeEvent","contentOffset","y","contentHeight","contentSize","height","viewportHeight","layoutMeasurement","threshold","isVisible","scrolledToEnd","componentDidUpdate","prevProps","prevState","snapshot","triggeronrenderwhenhidden","showView","getDefaultStyles","theme","getStyle","defaultClass","getIndex","generateItemKey","itemkey","_showSkeleton","getKey","getFlatListData","groupData","_ref","numberofskeletonitems","horizontalondemandenabled","slice","renderItem","_this$styles$columnWr","_this$styles","cols","getNoOfColumns","isWrap","wrap","styles","skeleton","root","containerStyle","columnGap","columnWrapper","gap","isNaN","totalGap","availableWidth","Math","round","flex","shouldswipe","minWidth","itemclass","backgroundImage","image","position","backgroundPosition","size","backgroundSize","repeat","backgroundRepeat","resizeMode","backgroundResizeMode","borderRadius","getTestPropsForAction","disableTouchEffect","disabletoucheffect","onTap","onLongTap","onDoubleTap","display","flexDirection","paddingRight","marginRight","margin","itemContainer","OS","id","getTestId","iconclass","selectedIcon","renderLeftActions","renderRightActions","selecteditemicon","renderHeader","title","groupHeading","accessibilityRole","iconurl","subheading","heading","listIcon","caption","accessibilityrole","renderEmptyMessage","emptyMessage","renderLoadingIcon","loadingicon","loadingiconurl","loadingIcon","loadingdatamsg","color","text","responsive","columns","itemsperrow","fallback","xs","findListTemplateInChildren","nodes","componentNode","node","instance","nested","_listTemplate$props","listTemplate","onLayoutChange","e","renderWithFlatList","hasExplicitAutoLayout","alignment","columngap","Boolean","listAutoLayoutProps","listDirectionStyle","listContentStyle","fullWidthStyle","userClass","classname","trim","cascadeRoot","listOuterStyle","mergeStyle","groupStyle","flatListStyle","onLayout","v","i","ref","CellRendererComponent","renderCustomCell","testID","scrollEnabled","horizontal","contentContainerStyle","listContainer","ListEmptyComponent","itemInfo","showsHorizontalScrollIndicator","hidehorizontalscrollbar","numColumns","columnWrapperStyle","onDemandMessage","getCaption","getSectionListData","_ref2","section","renderWithSectionList","sections","renderSectionHeader","renderSectionFooter","renderWidget","_this$parent","alProps","parent","listDir","hasAutoLayout","outerStyle","handleLayout","showSpinner","_background"],"sources":["list.component.tsx"],"sourcesContent":["import React from 'react';\nimport { ActivityIndicator, SectionList, Text, View, FlatList, LayoutChangeEvent, TouchableOpacity, Dimensions, ViewStyle, Platform } from 'react-native';\nimport { isArray, isEmpty, isNil, isNumber, round } from 'lodash-es';\nimport { BaseComponent, BaseComponentState } from '@wavemaker-ai/app-rn-runtime/core/base.component';\nimport { getGroupedData, getNumberOfEmptyObjects, isDefined } from \"@wavemaker-ai/app-rn-runtime/core/utils\";\nimport { getNumberOfColumnsFromResponsiveConfig } from '@wavemaker-ai/app-rn-runtime/core/responsive.utils';\nimport { Tappable } from '@wavemaker-ai/app-rn-runtime/core/tappable.component';\nimport { DefaultKeyExtractor } from '@wavemaker-ai/app-rn-runtime/core/key.extractor';\nimport WmLabel from '@wavemaker-ai/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker-ai/app-rn-runtime/components/basic/icon/icon.component';\nimport { Swipeable } from 'react-native-gesture-handler';\nimport WmListActionTemplate from './list-action-template/list-action-template.component';\nimport { DEVICE_BREAK_POINTS } from '@wavemaker-ai/app-rn-runtime/styles/theme';\nimport _viewPort, { EVENTS as ViewPortEvents } from '@wavemaker-ai/app-rn-runtime/core/viewport';\n\nimport WmListProps from './list.props';\nimport { DEFAULT_CLASS, WmListStyles } from './list.styles';\nimport { DEFAULT_CLASS as LIST_TEMPLATE_DEFAULT_CLASS } from './list-template/list-template.styles';\nimport { WmComponentNode } from '@wavemaker-ai/app-rn-runtime/core/wm-component-tree';\nimport { BackgroundComponent } from '@wavemaker-ai/app-rn-runtime/styles/background.component';\nimport {\n AutoLayoutProps,\n isAutoLayout as checkAutoLayout,\n getContentContainerStyle,\n getDirectionStyle,\n getDimensionStyle,\n extractAutoLayoutProps,\n} from '@wavemaker-ai/app-rn-runtime/core/auto-layout.utils';\n\n\nexport class WmListState extends BaseComponentState<WmListProps> {\n public selectedindex: any;\n groupedData: Array<any> = [];\n currentPage = 1;\n maxRecordsToShow = 20;\n loadingData = true;\n}\n\nexport default class WmList extends BaseComponent<WmListProps, WmListState, WmListStyles> {\n\n private itemWidgets = [] as any[];\n private selectedItemWidgets = {} as any;\n private keyExtractor = new DefaultKeyExtractor();\n //private endThreshold = -1;\n // private loadingData = false;\n private hasMoreData = true;\n public leftActionTemplate?: WmListActionTemplate;\n public rightActionTemplate?: WmListActionTemplate;\n private flatListRefs: any = {};\n private selectedItems = [] as any[];\n private scrolledToEnd: boolean = false;\n private screenWidth = Dimensions.get(\"window\").width;\n\n\n\n constructor(props: WmListProps) {\n\n super(props, DEFAULT_CLASS, new WmListProps(), new WmListState());\n this.updateState({\n maxRecordsToShow: this.state.props.pagesize\n } as WmListState);\n\n // Subscribe to viewport changes to re-render when screen size changes\n this.cleanup.push(_viewPort.subscribe(ViewPortEvents.SIZE_CHANGE, (newDim: { width: number}) => {\n this.screenWidth = newDim.width;\n this.forceUpdate();\n }));\n\n\n }\n\n private isSelected($item: any) {\n const selectedItem = this.state.props.selecteditem;\n if (isArray(selectedItem)) {\n return selectedItem.indexOf($item) >= 0;\n }\n return selectedItem === $item;\n }\n\n private async onSelect($item: any, $index: number | string, $event?: any) {\n if(this.state.props.disableitemselect) {\n return;\n }\n\n const props = this.state.props;\n let selectedItem = null as any;\n let eventName = 'onSelect';\n if (props.disableitem !== true\n && (typeof props.disableitem !== 'function' || !props.disableitem($item, $index))) {\n if (props.multiselect) {\n selectedItem = [...(props.selecteditem || [])];\n const index = selectedItem.indexOf($item);\n if (index < 0) {\n if ((!props.selectionlimit)\n || props.selectionlimit < 0\n || selectedItem.length < props.selectionlimit) {\n selectedItem.push($item);\n } else {\n this.invokeEventCallback('onSelectionlimitexceed', [null, this]);\n }\n } else {\n selectedItem.splice(index, 1);\n eventName = 'onDeselect';\n }\n } else {\n this.state.props.selecteditem && this.invokeEventCallback('onDeselect', [this.proxy, this.state.props.selecteditem]);\n selectedItem = $item;\n }\n this.selectedItems = selectedItem;\n this.selectedItemWidgets = this.itemWidgets[$index as number];\n let groupKey: string | null = null;\n\n if (props.direction === 'row') {\n this.state.groupedData?.forEach((group) => {\n if (group.data.includes($item)) {\n groupKey = group.key;\n }\n });\n }\n\n return new Promise(resolve => {\n this.updateState({\n props: { selecteditem: selectedItem },\n selectedindex: $index\n } as WmListState, () => {\n if (props.direction === 'row' && props.horizontalscrolltoitem) {\n this.scrollToItem(groupKey, $index as number);\n }\n this.invokeEventCallback(eventName, [this.proxy, $item]);\n $event && this.invokeEventCallback('onTap', [$event, this.proxy]);\n resolve(null);\n });\n });\n\n } else {\n return Promise.resolve(null);\n }\n }\n\n private get loadDataOnDemand() {\n const navigation = this.state.props.navigation;\n return navigation === 'Scroll' || navigation === 'On-Demand';\n }\n\n renderLeftActions = () => {\n return this.leftActionTemplate ? (\n <>\n {this.leftActionTemplate.getTemplate()}\n </>\n ) : null;\n };\n\n renderRightActions = () => {\n return this.rightActionTemplate ? (\n <>\n {this.rightActionTemplate.getTemplate()}\n </>\n ) : null;\n };\n\n private loadData() {\n if (this.state.loadingData || !this.hasMoreData) {\n\n return;\n }\n if (isArray(this.state.props.dataset)\n && this.state.props.dataset.length > this.state.maxRecordsToShow) {\n this.updateState({\n loadingData: true,\n maxRecordsToShow: this.state.maxRecordsToShow + this.state.props.pagesize\n } as WmListState);\n setTimeout(() => {\n // Force a re-render by making a small state update\n this.updateState({\n loadingData: false,\n } as WmListState);\n }, 100);\n } else if (this.loadDataOnDemand) {\n const $list = this.proxy as any;\n $list.loadingdata = true;\n // Set loading state via updateState\n this.updateState({\n loadingData: true\n } as WmListState);\n this.props.getNextPageData && this.props.getNextPageData(null, this.proxy, this.state.currentPage + 1).then((data) => {\n if (isArray(data) && data.length > 0\n && isArray(this.state.props.dataset)) {\n $list.dataset = [...this.state.props.dataset, ...data];\n this.updateState({\n currentPage: this.state.currentPage + 1,\n maxRecordsToShow: this.state.maxRecordsToShow + this.state.props.pagesize,\n } as WmListState);\n this.hasMoreData = true;\n if((data as any)?.last === true) {\n this.hasMoreData = false;\n }\n\n } else {\n this.hasMoreData = false;\n }\n }).catch((err) => {\n console.error(err);\n }).then(() => {\n setTimeout(() => {\n $list.loadingdata = false;\n\n }, 1000);\n });\n }\n }\n\n private selectFirstItem() {\n const props = this.state.props;\n if (this.initialized\n && props.dataset\n && props.dataset.length) {\n const index = props.groupby ? '00' : 0;\n this.onSelect(props.dataset[0], index);\n }\n }\n\n clear = () => {\n this.updateState({\n groupedData: {},\n } as WmListState);\n }\n\n selectItem = (item: number | object) => {\n const dataset = this.state.props.dataset;\n if (isNumber(item)) {\n this.onSelect(dataset[item], item);\n }\n else {\n let index = dataset.indexOf(item);\n this.onSelect(dataset[index], index);\n }\n }\n\n getSelectedItems = () => {\n if (!this.props.multiselect) {\n return [this.selectedItems]\n }\n return this.selectedItems;\n }\n\n getItem = (index: number) => {\n const props = this.state.props;\n return this.props.dataset[index]\n }\n\n deselectItem = (item: number | object) => {\n const props = this.state.props;\n let selectedItem = props.selecteditem || null;\n let index = isNumber(item) ? item : props.dataset.indexOf(item);\n if (props.multiselect && index >= 0) {\n selectedItem = [...(props.selecteditem || [])];\n let selectedItemIndex = selectedItem.indexOf(props.dataset[index])\n if (selectedItemIndex >= 0) {\n selectedItem.splice(selectedItemIndex, 1);\n }\n }\n else {\n if (props.selecteditem === props.dataset[index]) {\n selectedItem = null;\n }\n }\n this.updateState({\n props: { selecteditem: selectedItem },\n\n } as WmListState, () => {\n this.invokeEventCallback('onDeselect', [this.proxy, item]);\n });\n }\n\n getWidgets = (widgetname: string, index: number) => {\n if(index >= 0 && index < this.itemWidgets.length){\n return this.itemWidgets[index][widgetname]\n }\n else {\n return this.itemWidgets.map(item => item[widgetname]).filter(widget => widget !== undefined);\n }\n }\n\n selectAll = () => {\n const props = this.state.props;\n const dataset = props.dataset;\n if (!props.multiselect || !isArray(dataset) || dataset.length === 0) {\n return;\n }\n const selectedItems = [...dataset];\n\n this.updateState({\n props: { selecteditem: selectedItems },\n selectedindex: -1\n } as WmListState);\n }\n\n private deselectAll() {\n this.updateState({\n props: { selecteditem: null },\n selectedindex: -1\n } as WmListState);\n }\n\n setGroupData(items: any) {\n const dataItems = items;\n const props = this.state.props;\n if (props.groupby) {\n const groupedData = dataItems && getGroupedData(dataItems, props.groupby, props.match, props.orderby, props.dateformat, this);\n this.updateState({\n groupedData: groupedData\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n }\n\n public onPropertyChange(name: string, $new: any, $old: any) {\n super.onPropertyChange(name, $new, $old);\n const props = this.state.props;\n switch (name) {\n case 'selectfirstitem':\n if ($new) {\n this.selectFirstItem();\n }\n break;\n case 'dataset':\n if (this.state.props.groupby) {\n this.setGroupData($new);\n } else {\n if (!($old && $old.length)\n && $new && $new.length\n && this.loadDataOnDemand) {\n this.updateState({\n props: {\n dataset: [...$new]\n }\n } as WmListState);\n }\n const data = isArray($new) ? $new : (!isEmpty($new) && isDefined($new) ? [$new] : []);\n if (props.orderby) {\n const orderbyData = data && getGroupedData(data, props.groupby, props.match, props.orderby, props.dateformat, this);\n this.updateState({\n groupedData: (orderbyData[0] ? [{\n key: 'key',\n data: orderbyData[0].data\n }] : [])\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n } else {\n this.updateState({\n groupedData: (data[0] || props.direction === 'row' ? [{\n key: 'key',\n data: data\n }] : [])\n } as WmListState, () => {\n this.keyExtractor?.clear();\n });\n }\n }\n this.itemWidgets = [];\n if (props.selectfirstitem) {\n this.selectFirstItem();\n } else {\n this.deselectAll();\n }\n if (isArray($new)){\n setTimeout(() => {\n this.updateState({\n loadingData: false\n } as WmListState)\n }, 0)\n }\n break;\n case 'groupby':\n case 'match':\n this.setGroupData(this.state.props.dataset);\n break;\n case 'multiselect':\n if ($new) {\n if (!isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem ?\n [this.state.props.selecteditem] : [];\n }\n } else if (isArray(this.state.props.selecteditem)) {\n this.state.props.selecteditem = this.state.props.selecteditem.pop();\n }\n break;\n case 'loadingdata':\n if($new != $old){\n this.updateState({\n loadingData: $new\n } as WmListState);}\n break;\n case 'selecteditem':\n if ($new != $old && isNumber($new)) {\n this.selectItem(this.state.props.dataset[$new])\n }\n break;\n }\n }\n\n componentDidMount() {\n const props = this.state.props;\n if (this.state.props.selectfirstitem && props.dataset?.length) {\n setTimeout(() => {\n this.onSelect(props.dataset[0], 0);\n });\n }\n this.subscribe('scroll', (event: any) => {\n const scrollPosition = event?.nativeEvent?.contentOffset?.y;\n const contentHeight = event?.nativeEvent?.contentSize?.height;\n const viewportHeight = event?.nativeEvent?.layoutMeasurement?.height;\n\n //checking user scrolled till bottom of the list logic\n const threshold = 50; // px\n const isVisible = scrollPosition + viewportHeight >= contentHeight - threshold;\n if (isVisible && !this.scrolledToEnd) {\n this.scrolledToEnd = true;\n //console.log('user scrolled till end');\n this.loadData();\n } else if (!isVisible && this.scrolledToEnd) {\n this.scrolledToEnd = false;\n }\n });\n\n super.componentDidMount();\n }\n\n componentDidUpdate(prevProps: WmListProps, prevState: WmListState, snapshot?: any) {\n super.componentDidUpdate && super.componentDidUpdate(prevProps, prevState, snapshot);\n if (prevProps.triggeronrenderwhenhidden === true || this.showView()) {\n this.invokeEventCallback('onRender', [this, this.state.props.dataset]);\n }\n }\n\n\n\n getDefaultStyles() {\n const isHorizontal = this.state.props.direction === 'row';\n return this.theme.getStyle(`${this.defaultClass} ${isHorizontal ? 'app-horizontal-list' : 'app-vertical-list'}`);\n }\n\n getIndex(item: any) {\n return this.state.props.dataset.indexOf(item);\n }\n\n private generateItemKey(item: any, index: number, props: WmListProps) {\n if (props.itemkey && item && !this._showSkeleton) {\n return props.itemkey(item, index);\n }\n return 'list_item_' + this.keyExtractor.getKey(item, true);\n }\n\n private getFlatListData(groupData: any[], isHorizontal: boolean, props: WmListProps) {\n if (this._showSkeleton) {\n return [...getNumberOfEmptyObjects(this.props.numberofskeletonitems as number ?? 3)];\n }\n if (!groupData || isEmpty(groupData[0])) {\n return [];\n }\n if (isHorizontal && props.horizontalondemandenabled === false) {\n return groupData;\n }\n return groupData.slice(0, this.state.maxRecordsToShow);\n }\n\n private renderItem(item: any, index: number, props: WmListProps) {\n const cols = this.getNoOfColumns();\n const isHorizontal = props.direction === 'row';\n const isWrap = isHorizontal && props.wrap;\n\n const styles = this._showSkeleton ? {\n ...this.styles.item,\n ...this.styles.skeleton.root\n } : this.styles.item as any\n\n let containerStyle={};\n const columnGap: any = this.styles?.columnWrapper?.gap ?? 0;\n\n if(!cols || isNaN(cols) || cols <= 0){\n containerStyle = {};\n }\n else if (columnGap > 0) {\n const totalGap = columnGap * (cols - 1);\n const availableWidth = this.screenWidth - totalGap;\n if (availableWidth <= 0) {\n containerStyle = { width: \"100%\" };\n } else {\n containerStyle = {\n width: `${Math.round((availableWidth / (cols * this.screenWidth)) * 100)}%`\n };\n }\n }\n else {\n containerStyle = cols? { width: Math.round(100 / cols) + \"%\", flex: null }: {};\n }\n\n return (index < this.state.maxRecordsToShow || (isHorizontal && this.state.props.horizontalondemandenabled === false)) ?\n !props.shouldswipe ? (\n <View style={containerStyle as any}>\n <View style={[\n styles,\n isWrap ? { minWidth: 0 } : null,\n props.itemclass ? this.theme.getStyle(props.itemclass(item, index)) : null,\n this.isSelected(item) ? this.styles.selectedItem : {}]}>\n {styles.backgroundImage ? (\n <BackgroundComponent\n image={styles.backgroundImage}\n position={styles.backgroundPosition || 'center'}\n size={styles.backgroundSize || 'cover'}\n repeat={styles.backgroundRepeat || 'no-repeat'}\n resizeMode={styles.backgroundResizeMode || 'cover'}\n style={{ borderRadius: this.styles.item.borderRadius }}\n />\n ) : null}\n <Tappable\n {...this.getTestPropsForAction(`item${index}`)}\n disableTouchEffect={this.state.props.disabletoucheffect}\n onTap={($event) => this.onSelect(item, index, $event)}\n onLongTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onLongtap', [null, this.proxy])}\n onDoubleTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onDoubletap', [null, this.proxy])}\n styles={\n [{ display: 'flex', flexDirection: 'row' },\n cols ? {\n width: '100%'\n } : null,\n (cols && cols > 1) || isHorizontal ? {\n paddingRight: (isNil(this.styles.item.marginRight)\n ? this.styles.item.margin : this.styles.item.marginRight) || 4\n } : null,\n this.styles.itemContainer,\n Platform.OS == 'web' && this.getListTemplateWidth() == \"fill\" ? {width: \"100%\"} : {}\n ]\n }>\n {props.renderItem(item, index, this)}\n {this.isSelected(item) ? (\n <WmIcon id={this.getTestId('icon' + index)} iconclass='wi wi-check-circle' styles={this.styles.selectedIcon} />\n ) : null}\n </Tappable>\n </View>\n </View>\n ) :\n (\n <Swipeable\n renderLeftActions={() => this.renderLeftActions()}\n renderRightActions={() => this.renderRightActions()} containerStyle={containerStyle as any}>\n <View style={[\n styles,\n isWrap ? { minWidth: 0 } : null,\n props.itemclass ? this.theme.getStyle(props.itemclass(item, index)) : null,\n this.isSelected(item) ? this.styles.selectedItem : {}]}>\n {styles.backgroundImage ? (\n <BackgroundComponent\n image={styles.backgroundImage}\n position={styles.backgroundPosition || 'center'}\n size={styles.backgroundSize || 'cover'}\n repeat={styles.backgroundRepeat || 'no-repeat'}\n resizeMode={styles.backgroundResizeMode || 'cover'}\n style={{ borderRadius: this.styles.item.borderRadius }}\n />\n ) : null}\n <Tappable\n {...this.getTestPropsForAction(`item${index}`)}\n disableTouchEffect={this.state.props.disabletoucheffect}\n onTap={($event) => this.onSelect(item, index, $event)}\n onLongTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onLongtap', [null, this.proxy])}\n onDoubleTap={() => !this.state.props.disableitemselect && this.invokeEventCallback('onDoubletap', [null, this.proxy])}\n styles={\n [{ display: 'flex', flexDirection: 'row' },\n cols ? {\n width: '100%'\n } : null,\n (cols && cols > 1) || isHorizontal ? {\n paddingRight: (isNil(this.styles.item.marginRight)\n ? this.styles.item.margin : this.styles.item.marginRight) || 4\n } : null,\n this.styles.itemContainer\n ]\n }>\n {props.renderItem(item, index, this)}\n {this.isSelected(item) ? (\n <WmIcon id={this.getTestId('icon' + index)} iconclass={props.selecteditemicon ? props.selecteditemicon : 'wi wi-check-circle'} styles={this.styles.selectedIcon} />\n ) : null}\n </Tappable>\n </View>\n </Swipeable>\n ) : null\n }\n\n private renderHeader(props: WmListProps, title: string) {\n return props.groupby ? (\n <Text style={this.styles.groupHeading} accessibilityRole='header'>{title}</Text>\n ) : (props.iconclass || props.iconurl || 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} iconurl={props.iconurl}></WmIcon>\n <View>\n <WmLabel id={this.getTestId('title')} styles={this.styles.title} caption={props.title} accessibilityrole='header'></WmLabel>\n <WmLabel id={this.getTestId('subheading')} styles={this.styles.subheading} caption={props.subheading}></WmLabel>\n </View>\n </View>\n </View>) : null;\n }\n\n private renderEmptyMessage(isHorizontal: boolean, item: any, index: any, props: WmListProps) {\n return (<WmLabel id={this.getTestId('emptymsg')} styles={this.styles.emptyMessage} caption={props.nodatamessage}></WmLabel>);\n }\n\n private renderLoadingIcon(props: WmListProps) {\n return (props.loadingicon || props.loadingiconurl) ? (<WmIcon\n id={this.getTestId('loadingicon')}\n styles={this.styles.loadingIcon}\n iconclass={props.loadingicon}\n iconurl={props.loadingiconurl}\n caption={props.loadingdatamsg}></WmIcon>)\n : (\n <ActivityIndicator color={this.styles.loadingIcon.text.color}></ActivityIndicator>\n );\n }\n\n public getNoOfColumns() {\n const props = this.state.props;\n if (props.direction === 'column' && props.responsive) {\n const columns = getNumberOfColumnsFromResponsiveConfig(props.itemsperrow, undefined, props.fallback);\n return columns && columns > 0 ? columns : 1;\n } else if (props.direction === 'column' && !props.responsive) {\n if(props.itemsperrow.xs){\n return props.itemsperrow.xs;\n }\n }\n return 0;\n }\n\n private findListTemplateInChildren(nodes: WmComponentNode[] = this.componentNode.children): BaseComponent<any, any, any> | undefined {\n for (const node of nodes) {\n const instance = node.instance;\n if (instance?.defaultClass === LIST_TEMPLATE_DEFAULT_CLASS) {\n return instance;\n }\n const nested = this.findListTemplateInChildren(node.children);\n if (nested) {\n return nested;\n }\n }\n return undefined;\n }\n\n getListTemplateWidth(): any {\n const listTemplate = this.findListTemplateInChildren();\n return listTemplate?.props?.styles?.root?.width;\n }\n\n private scrollToItem = (groupKey: string | null, itemIndex: number) => {\n const refKey = groupKey || 'main';\n if (this.flatListRefs[refKey]) {\n this.flatListRefs[refKey].scrollToIndex({\n index: itemIndex,\n animated: true,\n });\n }\n };\n\n getCaption = (isHorizontal: boolean, vData: any[]): string => {\n const { nodatamessage, ondemandmessage } = this.state.props\n if (!isHorizontal) {\n return this.hasMoreData ? ondemandmessage : nodatamessage\n }\n return this.hasMoreData ? ondemandmessage : nodatamessage\n }\n\n private onLayoutChange(e: LayoutChangeEvent) {\n // const l = e.nativeEvent.layout;\n // this.endThreshold = l.height + l.y - 100;\n // if (!this.endThreshold) {\n // this.endThreshold = -1;\n\n // }\n }\n\n renderCustomCell = ({ children, style, ...props }: any) => {\n return (\n <View\n {...props}\n style={[\n style,\n {\n width: this.getListTemplateWidth() == \"fill\" ? \"100%\" : {},\n },\n ]}>\n {children}\n </View>\n );\n };\n\n private renderWithFlatList(props: WmListProps, isHorizontal = false) {\n const isWrap = isHorizontal && props.wrap;\n const hasExplicitAutoLayout =\n props.alignment !== undefined ||\n props.gap !== undefined ||\n props.columngap !== undefined ||\n Boolean(props.wrap);\n const listAutoLayoutProps = extractAutoLayoutProps(props) as AutoLayoutProps;\n listAutoLayoutProps.direction = isHorizontal ? 'row' : 'column';\n const listDirectionStyle = hasExplicitAutoLayout ? getDirectionStyle(listAutoLayoutProps) : null;\n const listContentStyle = hasExplicitAutoLayout ? getContentContainerStyle(listAutoLayoutProps) : null;\n const fullWidthStyle: ViewStyle = { width: '100%' };\n const userClass = (this.state.props.classname || '').trim();\n const cascadeRoot = userClass\n ? this.theme.getStyle(`${this.defaultClass} ${userClass}`).root\n : undefined;\n const listOuterStyle = this.theme.mergeStyle(\n cascadeRoot,\n this.styles.root,\n !isHorizontal ? fullWidthStyle : null\n );\n const groupStyle = [this.styles.group, !isHorizontal ? fullWidthStyle : null];\n const flatListStyle: ViewStyle | undefined = !isHorizontal ? fullWidthStyle : undefined;\n\n return (\n <View style={listOuterStyle}\n onLayout={e => this.onLayoutChange(e)}\n >\n {!isEmpty(this.state.groupedData) ? this.state.groupedData.map((v: any, i) => ((\n <View style={groupStyle} key={v.key || this.keyExtractor.getKey(v, true)}>\n {this.renderHeader(props, v.key)}\n <FlatList\n ref={(ref) => { this.flatListRefs[v.key || 'main'] = ref; }}\n CellRendererComponent={Platform.OS === 'web' ? this.renderCustomCell : undefined}\n testID={this.getTestId('flat_list')}\n style={flatListStyle}\n key={props.name + '_' + (isHorizontal ? 'H' : 'V') + props.itemsperrow.xs + (isWrap ? '_W' : '')}\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n scrollEnabled={isHorizontal && !isWrap}\n horizontal={isHorizontal && !isWrap}\n contentContainerStyle={[\n this.styles.listContainer,\n listDirectionStyle,\n listContentStyle,\n ]}\n data={this.getFlatListData(v.data, isHorizontal, props)}\n ListEmptyComponent={(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}\n {...(isHorizontal && !isWrap\n ? { showsHorizontalScrollIndicator: !props.hidehorizontalscrollbar }\n : !isWrap\n ? { numColumns: this.getNoOfColumns() }\n : {})}\n {...(!isWrap && this.getNoOfColumns() > 1 ? {columnWrapperStyle: this.styles.columnWrapper} : {})}>\n </FlatList>\n {this.loadDataOnDemand || (v.data.length > this.state.maxRecordsToShow && props.navigation !== 'None') ?\n (this.state.loadingData ? this.renderLoadingIcon(props) :\n (<WmLabel id={this.getTestId('ondemandmessage')}\n styles={this.styles.onDemandMessage}\n caption={this.getCaption(isHorizontal, v.data)}\n onTap={() => this.loadData()}></WmLabel>)) : null}\n </View>\n ))) : this.state.loadingData ? this.renderLoadingIcon(props) : this.renderEmptyMessage(isHorizontal, null, null, props)\n }\n </View>);\n }\n\n private getSectionListData(props: WmListProps) {\n if (this._showSkeleton) {\n return [{\n key: '',\n data: [...getNumberOfEmptyObjects(this.props.numberofskeletonitems as number ?? 3)]\n }];\n } else if (this.state.groupedData\n && this.state.groupedData[0]\n && this.state.groupedData[0]['data'].length) {\n return this.state.groupedData.map((section: any) => ({\n ...section,\n data: isArray(section?.data)\n ? section.data.slice(0, this.state.maxRecordsToShow)\n : section?.data,\n }));\n }\n return [];\n }\n\n private renderWithSectionList(props: WmListProps, isHorizontal = false) {\n const hasExplicitAutoLayout =\n props.alignment !== undefined ||\n props.gap !== undefined ||\n props.columngap !== undefined ||\n Boolean(props.wrap);\n const listAutoLayoutProps = extractAutoLayoutProps(props) as AutoLayoutProps;\n listAutoLayoutProps.direction = isHorizontal ? 'row' : 'column';\n const listDirectionStyle = hasExplicitAutoLayout ? getDirectionStyle(listAutoLayoutProps) : null;\n const listContentStyle = hasExplicitAutoLayout ? getContentContainerStyle(listAutoLayoutProps) : null;\n\n return (\n this.state.loadingData ?\n this.renderLoadingIcon(props) :\n (\n <SectionList\n keyExtractor={(item, i) => this.generateItemKey(item, i, props)}\n horizontal={isHorizontal}\n contentContainerStyle={[\n this.styles.root,\n listDirectionStyle,\n listContentStyle,\n ]}\n sections={this.getSectionListData(props)}\n renderSectionHeader={({ section: { key, data } }) => {\n return this.renderHeader(props, key);\n }}\n renderSectionFooter={() => props.loadingdata ? this.renderLoadingIcon(props) : null}\n ListEmptyComponent={(itemInfo) => this.renderEmptyMessage(isHorizontal, itemInfo.item, itemInfo.index, props)}\n renderItem={(itemInfo) => this.renderItem(itemInfo.item, itemInfo.index, props)}>\n </SectionList>\n )\n );\n }\n\n renderWidget(props: WmListProps) {\n this.invokeEventCallback('onBeforedatarender', [this, this.state.props.dataset]);\n const isHorizontal = props.direction == 'row';\n\n const alProps = extractAutoLayoutProps(props, this.parent?.state?.props);\n const listDir = props.direction;\n if (listDir === 'row') {\n alProps.direction = 'row';\n } else {\n alProps.direction = 'column';\n }\n\n const hasAutoLayout = checkAutoLayout({ ...alProps, direction: undefined });\n\n const outerStyle: any[] = [isHorizontal ? null : { width: '100%' }];\n if (hasAutoLayout) {\n outerStyle.push(\n getDirectionStyle(alProps),\n getContentContainerStyle(alProps),\n getDimensionStyle(alProps, this.styles.root)\n );\n }\n\n return (\n <View\n style={outerStyle}\n onLayout={(event) => this.handleLayout(event)}\n >\n {this.showSpinner()}\n {this._background}\n {(isHorizontal || !props.groupby) ?\n this.renderWithFlatList(props, isHorizontal)\n : this.renderWithSectionList(props, isHorizontal)}\n </View>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -221,7 +221,9 @@ export class BaseInputComponent extends BaseComponent {
|
|
|
221
221
|
this._submitEditingTriggered = true;
|
|
222
222
|
this.updateDatavalue(this.state.textValue, null);
|
|
223
223
|
setTimeout(() => {
|
|
224
|
+
var _this$state$props$onS, _this$state$props;
|
|
224
225
|
this.invokeEventCallback('onSubmitediting', [event, this.proxy]);
|
|
226
|
+
(_this$state$props$onS = (_this$state$props = this.state.props).onSubmitEditing) === null || _this$state$props$onS === void 0 || _this$state$props$onS.call(_this$state$props, event);
|
|
225
227
|
}, 100);
|
|
226
228
|
}
|
|
227
229
|
}
|