@wavemaker/app-rn-runtime 11.10.4-next.27842 → 11.10.4-rc.206

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.
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","BaseComponent","BaseComponentState","isDefined","debounce","find","forEach","isNil","get","set","cloneDeep","isEmpty","WmLabel","WmIcon","WmMessage","ToastConsumer","WmFormProps","DEFAULT_CLASS","isDataSetWidget","WmFormState","constructor","args","_defineProperty","WmForm","props","handleSubmit","componentDidMount","getParentFormRef","parentForm","pformName","current","parent","parentFormRef","setReadonlyFields","_this$formFields","formFields","field","setReadOnlyState","state","isUpdateMode","setReadonlyState","updateMode","updateState","setTimeout","showActions","edit","new","cancel","delete","registerFormFields","formWidgets","w","form","formwidget","formKey","name","f","formfields","applyFormData","applyDefaultValue","formdataoutput","datavalue","dataoutput","_this$buttonArray","buttonArray","action","show","registerFormActions","formActions","_updateFieldOnDataSourceChange","isDataSetBound","widget","isRelated","relatedData","_this$parentFormRef","formData","formdata","formField","_formField$props","fw","key","setState","isDefault","updateFormFieldDefaultValue","dv","defaultvalue","_formField$props2","invokeEventCallback","bind","undefined","formreset","ff","defaultValue","id","_widget","isValid","reset","submit","_debouncedSubmitForm","generateFormFields","userFields","fields","metadata","data","onBeforerender","proxy","dynamicForm","generateComponent","onPropertyChange","$new","$old","_this$formFields2","setPrimaryKey","fieldName","primaryKey","indexOf","push","validateFieldsOnSubmit","val","onValidate","required","generator","msg","defaultValidatorMessages","validationmessage","validate","event","preventDefault","onBeforesubmit","formSubmit","onResultCb","error","response","status","onSuccess","postmessage","toggleMessage","onError","errormessage","updateDataOutput","Object","assign","type","message","messagelayout","showInlineMsg","toaster","showToast","placement","styles","bottom","text","hideOnClick","duration","onMsgClose","renderWidget","createElement","toastService","style","root","onLayout","handleLayout","_background","iconclass","title","subheading","heading","flex","flexDirection","getTestId","listIcon","caption","accessibilityrole","hideclose","onClose","children"],"sources":["form.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { isDefined, widgetsWithUndefinedValue } from '@wavemaker/app-rn-runtime/core/utils';\nimport { debounce, find, forEach, isNil, get, set, cloneDeep, isEmpty } from 'lodash';\n\nimport WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport WmFormField, { WmFormFieldState } from '@wavemaker/app-rn-runtime/components/data/form/form-field/form-field.component';\nimport WmMessage from '@wavemaker/app-rn-runtime/components/basic/message/message.component';\nimport { ToastConsumer, ToastService } from '@wavemaker/app-rn-runtime/core/toast.service';\n\nimport WmFormProps from './form.props';\nimport { DEFAULT_CLASS, WmFormStyles } from './form.styles';\nimport { isDataSetWidget } from '@wavemaker/app-rn-runtime/core/utils';\nimport WmFormAction, {\n WmFormActionState\n} from '@wavemaker/app-rn-runtime/components/data/form/form-action/form-action.component';\n\nexport class WmFormState extends BaseComponentState<WmFormProps> {\n isValid = false;\n type: 'success' | 'warning' | 'error' | 'info' | 'loading' | undefined = 'success';\n message: string = '';\n showInlineMsg: boolean = false;\n isUpdateMode: boolean = true;\n dynamicForm: any;\n}\nexport default class WmForm extends BaseComponent<WmFormProps, WmFormState, WmFormStyles> {\n public formFields: Array<WmFormField> = []; // contains array of direct widget elements [WmText, WmNumber, WmCurrent]\n public parentFormRef: any;\n public formfields: {[key: string]: WmFormField} = {};\n public formdataoutput: any;\n private toaster: any;\n public formActions: Array<WmFormAction> = [];\n primaryKey = [];\n buttonArray: Array<WmFormAction> = [];\n formWidgets: { [key: string]: BaseComponent<any, any, any> } = {}; // object containing key as name of formField and value as WmFormField proxy.\n constructor(props: WmFormProps) {\n super(props, DEFAULT_CLASS, new WmFormProps(), new WmFormState());\n }\n\n private _debouncedSubmitForm = debounce(this.handleSubmit, 250);\n\n componentDidMount() {\n super.componentDidMount();\n this.getParentFormRef(this.props.parentForm);\n }\n\n getParentFormRef(pformName: string) {\n let current = this.parent;\n while (current) {\n if (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 formField.updateState({\n props: {\n datavalue: get(formData, key)\n }\n } as WmFormFieldState);\n });\n }\n\n updateFormFieldDefaultValue(formField: WmFormField) {\n if (formField) {\n const dv = formField.state.props.defaultvalue;\n if (isDefined(dv) && dv !== null && this.formFields) {\n let field = formField.props?.name && this.formWidgets[formField.props.name];\n if (!field) {\n field = find(this.formWidgets, (fw: BaseComponent<any, any, any>) => {\n return get(fw, 'formfieldname') === formField.props.name\n });\n }\n if (field) {\n field.setState({ isDefault: true });\n field.updateState({\n props: {\n datavalue: dv\n }\n }, this.invokeEventCallback.bind(formField, 'onFieldChange', [undefined, formField, dv]));\n }\n }\n }\n }\n\n get dataoutput() {\n return this.formdataoutput;\n }\n\n applyDefaultValue(formField?: WmFormField) {\n if (formField) {\n this.updateFormFieldDefaultValue(formField);\n return;\n }\n forEach(this.formFields, (w: WmFormField) => {\n this.updateFormFieldDefaultValue(w);\n });\n }\n\n formreset() {\n this.formdataoutput = {};\n forEach(this.formFields, (ff: WmFormField) => {\n const defaultValue = isNil(ff.state.props.defaultvalue) ? '' : ff.state.props.defaultvalue;\n ff.updateState({\n props : {\n datavalue: defaultValue\n }\n } as WmFormFieldState, () => {\n const id = ff.props.formKey || ff.props.name;\n if (id) {\n let widget: BaseComponent<any, any, any> | undefined | any = this.formWidgets[id];\n if (!widget) {\n widget = find(this.formWidgets, (fw: BaseComponent<any, any, any>) => {\n return get(fw, 'formfieldname') === ff.props.name\n });\n }\n widget.updateState({\n isValid: true,\n props : {\n datavalue: defaultValue\n }\n }, () => ff.updateState({\n isValid: true\n } as WmFormFieldState));\n widget?.reset();\n }\n }\n );\n });\n }\n\n submit() {\n this._debouncedSubmitForm();\n }\n\n // Function to generate and compile the form fields from the metadata\n generateFormFields() {\n let userFields;\n let fields = this.state.props.metadata ? this.state.props.metadata.data || this.state.props.metadata : [];\n\n if (isEmpty(fields)) {\n return;\n }\n\n if (this.props.onBeforerender) {\n userFields = this.invokeEventCallback('onBeforerender', [fields, this.proxy]);\n if (userFields) {\n fields = userFields;\n }\n }\n\n this.updateState({\n dynamicForm: this.props.generateComponent(fields, this.props.name)\n } as WmFormState);\n\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'formdata':\n if ($new) {\n this.applyFormData();\n }\n break;\n case 'defaultmode':\n this.updateState({\n isUpdateMode: $new && $new === 'Edit' ? true : false,\n } as WmFormState);\n break;\n case 'dataset':\n this.formFields?.forEach((w: WmFormField) => {\n this._updateFieldOnDataSourceChange(w, this.formFields);\n });\n break;\n case 'metadata':\n this.generateFormFields();\n break;\n }\n }\n setPrimaryKey(fieldName: string) {\n /*Store the primary key of data*/\n this.primaryKey = this.primaryKey || [];\n // @ts-ignore\n if (this.primaryKey.indexOf(fieldName) === -1) {\n // @ts-ignore\n this.primaryKey.push(fieldName);\n }\n }\n // Disable the form submit if form is in invalid state. Highlight all the invalid fields if validation type is default\n validateFieldsOnSubmit() {\n let isValid = true;\n forEach(this.formFields, (field) => {\n const val = field?.state.props.datavalue;\n\n const onValidate = get(field, 'props.onValidate');\n onValidate && onValidate(field);\n if (!val && field?.state.props.required && ((field?.props.primaryKey && field?.props.generator === 'assigned') || !field?.props.primaryKey)) {\n isValid = false;\n const msg = get(field.defaultValidatorMessages, 'required') || field.state.props.validationmessage;\n field.updateState({ isValid: isValid, props: {\n validationmessage: msg\n }} as WmFormFieldState);\n field.formwidget.validate && field.formwidget.validate(val);\n }\n // check for isvalid state of formwidget\n if (field.formwidget.state.isValid === false) {\n isValid = false;\n }\n });\n return isValid;\n }\n\n // @ts-ignore\n handleSubmit(event?: any) {\n event?.preventDefault();\n const formData = cloneDeep(this.state.props.dataoutput || this.formdataoutput);\n\n if (!this.validateFieldsOnSubmit()) {\n return false;\n }\n if (this.props.onBeforesubmit) {\n this.invokeEventCallback('onBeforesubmit', [ null, this.proxy, formData ]);\n }\n if (this.props.formSubmit) {\n this.props.formSubmit(formData, ((data: any) => {\n this.invokeEventCallback('onSubmit', [ null, this.proxy, formData ]);\n this.onResultCb(get(data, 'params'), 'success');\n }), ((error: any) => {\n this.invokeEventCallback('onSubmit', [ null, this.proxy, formData ]);\n this.onResultCb(error, '');\n }));\n } else {\n this.invokeEventCallback('onSubmit', [ null, this.proxy, formData ]);\n }\n }\n\n onResultCb(response: any, status: string, event?: any) {\n this.invokeEventCallback('onResult', [ null, this.proxy, response ]);\n if (status) {\n this.invokeEventCallback('onSuccess', [ null, this.proxy, response ]);\n !this.props.onSuccess && this.state.props.postmessage && this.toggleMessage('success', this.state.props.postmessage);\n } else {\n this.invokeEventCallback('onError', [ null, this.proxy, response ]);\n !this.props.onError && this.toggleMessage('error', this.state.props.errormessage || get(response, 'message'));\n }\n }\n\n updateDataOutput(key: string, val: any) {\n const current = this.formdataoutput || {};\n if (key) {\n set(current, key, val);\n } else {\n Object.assign(current, val)\n }\n this.formdataoutput = current;\n this.updateState({ props: { dataoutput: current }} as WmFormState);\n this.parentFormRef && this.parentFormRef.updateDataOutput && this.parentFormRef.updateDataOutput(undefined, this.formdataoutput);\n this.updateState({\n props: {\n dataoutput: this.formdataoutput\n }\n } as WmFormState);\n }\n\n toggleMessage(\n type: 'success' | 'warning' | 'error' | 'info' | 'loading' | undefined,\n message: string\n ) {\n if (this.state.props.messagelayout === 'Inline') {\n this.setState({\n type: type,\n message: message,\n showInlineMsg: true\n } as WmFormState)\n return;\n }\n this.toaster.showToast({\n name: this, placement: \"\", styles: {bottom: 0},\n text: message,\n type: type,\n hideOnClick: true,\n duration: 5000\n });\n }\n\n onMsgClose() {\n this.setState({\n showInlineMsg: false\n } as WmFormState)\n }\n\n renderWidget(props: WmFormProps) {\n return (\n <ToastConsumer>\n {(toastService: ToastService) => {\n this.toaster = toastService;\n return <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n {this._background}\n {props.iconclass || props.title || props.subheading ? (\n <View style={this.styles.heading}>\n <View style={{flex: 1, flexDirection: 'row'}}>\n <WmIcon id={this.getTestId('icon')} styles={this.styles.listIcon} iconclass={props.iconclass}></WmIcon>\n <View>\n <WmLabel id={this.getTestId('title')} styles={this.styles.title} caption={props.title} accessibilityrole='header'></WmLabel>\n <WmLabel id={this.getTestId('description')} styles={this.styles.subheading} caption={props.subheading}></WmLabel>\n </View>\n </View>\n </View>\n ) : null}\n {this.state.showInlineMsg ? <WmMessage type={this.state.type} caption={this.state.message} hideclose={false} onClose={this.onMsgClose.bind(this)}></WmMessage> : null\n }\n { props.metadata && this.state.dynamicForm }\n { props.children}\n </View>\n }\n }\n </ToastConsumer>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","View","BaseComponent","BaseComponentState","isDefined","debounce","find","forEach","isNil","get","set","cloneDeep","isEmpty","WmLabel","WmIcon","WmMessage","ToastConsumer","WmFormProps","DEFAULT_CLASS","isDataSetWidget","WmFormState","constructor","args","_defineProperty","WmForm","props","handleSubmit","componentDidMount","getParentFormRef","parentForm","pformName","current","parent","parentFormRef","setReadonlyFields","_this$formFields","formFields","field","setReadOnlyState","state","isUpdateMode","setReadonlyState","updateMode","updateState","setTimeout","showActions","edit","new","cancel","delete","registerFormFields","formWidgets","w","form","formwidget","formKey","name","f","formfields","applyFormData","applyDefaultValue","formdataoutput","datavalue","dataoutput","_this$buttonArray","buttonArray","action","show","registerFormActions","formActions","_updateFieldOnDataSourceChange","isDataSetBound","widget","isRelated","relatedData","_this$parentFormRef","formData","formdata","formField","_formField$props","fw","key","setState","isDefault","Array","isArray","updateFormFieldDefaultValue","dv","defaultvalue","_formField$props2","invokeEventCallback","bind","undefined","formreset","ff","defaultValue","id","_widget","isValid","reset","submit","_debouncedSubmitForm","generateFormFields","userFields","fields","metadata","data","onBeforerender","proxy","dynamicForm","generateComponent","onPropertyChange","$new","$old","_this$formFields2","setPrimaryKey","fieldName","primaryKey","indexOf","push","validateFieldsOnSubmit","val","onValidate","required","generator","msg","defaultValidatorMessages","validationmessage","validate","event","preventDefault","onBeforesubmit","formSubmit","onResultCb","error","response","status","onSuccess","postmessage","toggleMessage","onError","errormessage","updateDataOutput","Object","assign","type","message","messagelayout","showInlineMsg","toaster","showToast","placement","styles","bottom","text","hideOnClick","duration","onMsgClose","renderWidget","createElement","toastService","style","root","onLayout","handleLayout","_background","iconclass","title","subheading","heading","flex","flexDirection","getTestId","listIcon","caption","accessibilityrole","hideclose","onClose","children"],"sources":["form.component.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport { BaseComponent, BaseComponentState } from '@wavemaker/app-rn-runtime/core/base.component';\nimport { isDefined, widgetsWithUndefinedValue } from '@wavemaker/app-rn-runtime/core/utils';\nimport { debounce, find, forEach, isNil, get, set, cloneDeep, isEmpty } from 'lodash';\n\nimport WmLabel from '@wavemaker/app-rn-runtime/components/basic/label/label.component';\nimport WmIcon from '@wavemaker/app-rn-runtime/components/basic/icon/icon.component';\nimport WmFormField, { WmFormFieldState } from '@wavemaker/app-rn-runtime/components/data/form/form-field/form-field.component';\nimport WmMessage from '@wavemaker/app-rn-runtime/components/basic/message/message.component';\nimport { ToastConsumer, ToastService } from '@wavemaker/app-rn-runtime/core/toast.service';\n\nimport WmFormProps from './form.props';\nimport { DEFAULT_CLASS, WmFormStyles } from './form.styles';\nimport { isDataSetWidget } from '@wavemaker/app-rn-runtime/core/utils';\nimport WmFormAction, {\n WmFormActionState\n} from '@wavemaker/app-rn-runtime/components/data/form/form-action/form-action.component';\n\nexport class WmFormState extends BaseComponentState<WmFormProps> {\n isValid = false;\n type: 'success' | 'warning' | 'error' | 'info' | 'loading' | undefined = 'success';\n message: string = '';\n showInlineMsg: boolean = false;\n isUpdateMode: boolean = true;\n dynamicForm: any;\n}\nexport default class WmForm extends BaseComponent<WmFormProps, WmFormState, WmFormStyles> {\n public formFields: Array<WmFormField> = []; // contains array of direct widget elements [WmText, WmNumber, WmCurrent]\n public parentFormRef: any;\n public formfields: {[key: string]: WmFormField} = {};\n public formdataoutput: any;\n private toaster: any;\n public formActions: Array<WmFormAction> = [];\n primaryKey = [];\n buttonArray: Array<WmFormAction> = [];\n formWidgets: { [key: string]: BaseComponent<any, any, any> } = {}; // object containing key as name of formField and value as WmFormField proxy.\n constructor(props: WmFormProps) {\n super(props, DEFAULT_CLASS, new WmFormProps(), new WmFormState());\n }\n\n private _debouncedSubmitForm = debounce(this.handleSubmit, 250);\n\n componentDidMount() {\n super.componentDidMount();\n this.getParentFormRef(this.props.parentForm);\n }\n\n getParentFormRef(pformName: string) {\n let current = this.parent;\n while (current) {\n if (pformName && (get(current, 'props.name') === pformName)) {\n this.parentFormRef = current;\n break;\n }\n current = current.parent;\n }\n }\n\n setReadonlyFields() {\n this.formFields?.forEach((field: any) => {\n field.setReadOnlyState(this.state.isUpdateMode);\n });\n }\n\n setReadonlyState(updateMode: any) {\n this.updateState({\n isUpdateMode: updateMode,\n } as WmFormState);\n setTimeout(() => {\n this.showActions();\n this.setReadonlyFields();\n }, 100);\n }\n\n edit() {\n this.setReadonlyState(true);\n }\n\n new() {\n this.setReadonlyState(true);\n }\n\n cancel() {\n this.setReadonlyState(false);\n }\n\n delete() { }\n\n registerFormFields(\n formFields: Array<WmFormField>,\n formWidgets: { [key: string]: BaseComponent<any, any, any> }\n ) {\n forEach(formFields, (w: WmFormField) => {\n if (!w.form) {\n w.form = this;\n w.formwidget = (w.props.formKey && formWidgets[w.props.formKey])\n || (w.props.name && formWidgets[w.props.name]);\n }\n });\n\n this.formFields = formFields;\n this.formWidgets = formWidgets;\n\n formFields?.forEach((f: WmFormField) => {\n if (f.props.name) {\n set(this.formfields, f.props.name, f);\n }\n })\n\n this.setReadonlyFields();\n\n this.applyFormData();\n this.applyDefaultValue();\n\n // setting default form dataoutput.\n if (!this.formdataoutput) {\n this.formdataoutput = {};\n formFields?.forEach((w: WmFormField) => {\n const name = get(w.props, 'formKey') || w.props.name;\n if (name) {\n set(this.formdataoutput, name, w.props.datavalue);\n }\n });\n this.updateState({\n props: {\n dataoutput: this.formdataoutput\n }\n } as WmFormState);\n }\n }\n\n showActions () {\n this.buttonArray?.forEach((action: any) => {\n action.updateState({\n props: {\n show: action.updateMode === this.state.isUpdateMode\n }} as WmFormActionState);\n });\n }\n\n registerFormActions(formActions: Array<WmFormAction>) {\n this.buttonArray = formActions;\n this.showActions();\n }\n\n private _updateFieldOnDataSourceChange(field: WmFormField, formFields: Array<WmFormField>) {\n if (!field.state.props.isDataSetBound && isDataSetWidget(field.props.widget)) {\n if (field.state.props.isRelated) {\n field.updateState({\n props: {\n isDataSetBound: true\n }} as WmFormFieldState);\n this.props.relatedData && this.props.relatedData(field);\n }\n }\n }\n\n applyFormData() {\n let formData = this.state.props.formdata || this.parentFormRef?.state.props.formdata;\n if (!formData || (this.parentFormRef && this.state.props.formdata)) {\n return;\n }\n forEach(this.formFields, (formField: WmFormField) => {\n let fw = formField.props?.name && this.formWidgets[formField.props.name];\n if (!fw) {\n fw = find(this.formWidgets, (fw: BaseComponent<any, any, any>) => {\n return get(fw, 'formfieldname') === formField.props.name\n });\n }\n let key = get(formField, 'formKey') || get(fw, 'props.name');\n fw && fw.setState({ isDefault: true });\n if(Array.isArray(formData)){\n formData = formData[0];\n }\n formField.updateState({\n props: {\n datavalue: get(formData, key)\n }\n } as WmFormFieldState);\n });\n }\n\n updateFormFieldDefaultValue(formField: WmFormField) {\n if (formField) {\n const dv = formField.state.props.defaultvalue;\n if (isDefined(dv) && dv !== null && this.formFields) {\n let field = formField.props?.name && this.formWidgets[formField.props.name];\n if (!field) {\n field = find(this.formWidgets, (fw: BaseComponent<any, any, any>) => {\n return get(fw, 'formfieldname') === formField.props.name\n });\n }\n if (field) {\n field.setState({ isDefault: true });\n field.updateState({\n props: {\n datavalue: dv\n }\n }, this.invokeEventCallback.bind(formField, 'onFieldChange', [undefined, formField, dv]));\n }\n }\n }\n }\n\n get dataoutput() {\n return this.formdataoutput;\n }\n\n applyDefaultValue(formField?: WmFormField) {\n if (formField) {\n this.updateFormFieldDefaultValue(formField);\n return;\n }\n forEach(this.formFields, (w: WmFormField) => {\n this.updateFormFieldDefaultValue(w);\n });\n }\n\n formreset() {\n this.formdataoutput = {};\n forEach(this.formFields, (ff: WmFormField) => {\n const defaultValue = isNil(ff.state.props.defaultvalue) ? '' : ff.state.props.defaultvalue;\n ff.updateState({\n props : {\n datavalue: defaultValue\n }\n } as WmFormFieldState, () => {\n const id = ff.props.formKey || ff.props.name;\n if (id) {\n let widget: BaseComponent<any, any, any> | undefined | any = this.formWidgets[id];\n if (!widget) {\n widget = find(this.formWidgets, (fw: BaseComponent<any, any, any>) => {\n return get(fw, 'formfieldname') === ff.props.name\n });\n }\n widget.updateState({\n isValid: true,\n props : {\n datavalue: defaultValue\n }\n }, () => ff.updateState({\n isValid: true\n } as WmFormFieldState));\n widget?.reset();\n }\n }\n );\n });\n }\n\n submit() {\n this._debouncedSubmitForm();\n }\n\n // Function to generate and compile the form fields from the metadata\n generateFormFields() {\n let userFields;\n let fields = this.state.props.metadata ? this.state.props.metadata.data || this.state.props.metadata : [];\n\n if (isEmpty(fields)) {\n return;\n }\n\n if (this.props.onBeforerender) {\n userFields = this.invokeEventCallback('onBeforerender', [fields, this.proxy]);\n if (userFields) {\n fields = userFields;\n }\n }\n\n this.updateState({\n dynamicForm: this.props.generateComponent(fields, this.props.name)\n } as WmFormState);\n\n }\n\n onPropertyChange(name: string, $new: any, $old: any) {\n switch (name) {\n case 'formdata':\n if ($new) {\n this.applyFormData();\n }\n break;\n case 'defaultmode':\n this.updateState({\n isUpdateMode: $new && $new === 'Edit' ? true : false,\n } as WmFormState);\n break;\n case 'dataset':\n this.formFields?.forEach((w: WmFormField) => {\n this._updateFieldOnDataSourceChange(w, this.formFields);\n });\n break;\n case 'metadata':\n this.generateFormFields();\n break;\n }\n }\n setPrimaryKey(fieldName: string) {\n /*Store the primary key of data*/\n this.primaryKey = this.primaryKey || [];\n // @ts-ignore\n if (this.primaryKey.indexOf(fieldName) === -1) {\n // @ts-ignore\n this.primaryKey.push(fieldName);\n }\n }\n // Disable the form submit if form is in invalid state. Highlight all the invalid fields if validation type is default\n validateFieldsOnSubmit() {\n let isValid = true;\n forEach(this.formFields, (field) => {\n const val = field?.state.props.datavalue;\n\n const onValidate = get(field, 'props.onValidate');\n onValidate && onValidate(field);\n if (!val && field?.state.props.required && ((field?.props.primaryKey && field?.props.generator === 'assigned') || !field?.props.primaryKey)) {\n isValid = false;\n const msg = get(field.defaultValidatorMessages, 'required') || field.state.props.validationmessage;\n field.updateState({ isValid: isValid, props: {\n validationmessage: msg\n }} as WmFormFieldState);\n field.formwidget.validate && field.formwidget.validate(val);\n }\n // check for isvalid state of formwidget\n if (field.formwidget.state.isValid === false) {\n isValid = false;\n }\n });\n return isValid;\n }\n\n // @ts-ignore\n handleSubmit(event?: any) {\n event?.preventDefault();\n const formData = cloneDeep(this.state.props.dataoutput || this.formdataoutput);\n\n if (!this.validateFieldsOnSubmit()) {\n return false;\n }\n if (this.props.onBeforesubmit) {\n this.invokeEventCallback('onBeforesubmit', [ null, this.proxy, formData ]);\n }\n if (this.props.formSubmit) {\n this.props.formSubmit(formData, ((data: any) => {\n this.invokeEventCallback('onSubmit', [ null, this.proxy, formData ]);\n this.onResultCb(get(data, 'params'), 'success');\n }), ((error: any) => {\n this.invokeEventCallback('onSubmit', [ null, this.proxy, formData ]);\n this.onResultCb(error, '');\n }));\n } else {\n this.invokeEventCallback('onSubmit', [ null, this.proxy, formData ]);\n }\n }\n\n onResultCb(response: any, status: string, event?: any) {\n this.invokeEventCallback('onResult', [ null, this.proxy, response ]);\n if (status) {\n this.invokeEventCallback('onSuccess', [ null, this.proxy, response ]);\n !this.props.onSuccess && this.state.props.postmessage && this.toggleMessage('success', this.state.props.postmessage);\n } else {\n this.invokeEventCallback('onError', [ null, this.proxy, response ]);\n !this.props.onError && this.toggleMessage('error', this.state.props.errormessage || get(response, 'message'));\n }\n }\n\n updateDataOutput(key: string, val: any) {\n const current = this.formdataoutput || {};\n if (key) {\n set(current, key, val);\n } else {\n Object.assign(current, val)\n }\n this.formdataoutput = current;\n this.updateState({ props: { dataoutput: current }} as WmFormState);\n this.parentFormRef && this.parentFormRef.updateDataOutput && this.parentFormRef.updateDataOutput(undefined, this.formdataoutput);\n this.updateState({\n props: {\n dataoutput: this.formdataoutput\n }\n } as WmFormState);\n }\n\n toggleMessage(\n type: 'success' | 'warning' | 'error' | 'info' | 'loading' | undefined,\n message: string\n ) {\n if (this.state.props.messagelayout === 'Inline') {\n this.setState({\n type: type,\n message: message,\n showInlineMsg: true\n } as WmFormState)\n return;\n }\n this.toaster.showToast({\n name: this, placement: \"\", styles: {bottom: 0},\n text: message,\n type: type,\n hideOnClick: true,\n duration: 5000\n });\n }\n\n onMsgClose() {\n this.setState({\n showInlineMsg: false\n } as WmFormState)\n }\n\n renderWidget(props: WmFormProps) {\n return (\n <ToastConsumer>\n {(toastService: ToastService) => {\n this.toaster = toastService;\n return <View style={this.styles.root} onLayout={(event) => this.handleLayout(event)}>\n {this._background}\n {props.iconclass || props.title || props.subheading ? (\n <View style={this.styles.heading}>\n <View style={{flex: 1, flexDirection: 'row'}}>\n <WmIcon id={this.getTestId('icon')} styles={this.styles.listIcon} iconclass={props.iconclass}></WmIcon>\n <View>\n <WmLabel id={this.getTestId('title')} styles={this.styles.title} caption={props.title} accessibilityrole='header'></WmLabel>\n <WmLabel id={this.getTestId('description')} styles={this.styles.subheading} caption={props.subheading}></WmLabel>\n </View>\n </View>\n </View>\n ) : null}\n {this.state.showInlineMsg ? <WmMessage type={this.state.type} caption={this.state.message} hideclose={false} onClose={this.onMsgClose.bind(this)}></WmMessage> : null\n }\n { props.metadata && this.state.dynamicForm }\n { props.children}\n </View>\n }\n }\n </ToastConsumer>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -114,6 +114,7 @@ export class WmWheelDatePicker extends Component {
114
114
  const selectedMonth = this.selectedMonthIndex;
115
115
  if (selectedYear === minYear && this.monthValue === minMonth) minDate = this.getMinValue('date');
116
116
  if (selectedYear === maxYear && selectedMonth === maxMonth) maxDate = this.getMaxValue('date');
117
+ if (maxYear === minYear && this.monthValue === maxMonth) maxDate = this.getMaxValue('date');
117
118
 
118
119
  // Update date data dynamically
119
120
  this.dateData = getDates(minDate, maxDate);
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","PixelRatio","StyleSheet","View","WmWheelScrollPicker","getDateObject","getDates","getMonthIndex","getMonths","getYearRange","getDaysInMonth","WmWheelDatePickerProps","constructor","_defineProperty","Date","roundToNearestPixel","START_DATE","END_DATE","WmWheelDatePickerState","WmWheelDatePicker","props","_selectedDate$getFull","type","minDate","getDate","getMonth","getFullYear","maxDate","valueType","value","index","_this$props","_this$props$onDateCha","indexValue","Object","is","selectedDateIndex","monthValue","toString","selectedMonthIndex","selectedYearIndex","minYear","getMinValue","maxYear","getMaxValue","selectedYear","minMonth","maxMonth","monthData","selectedMonth","dateData","selectedDate","indexOf","dateObj","localSelectedDate","onDateChange","call","year","month","date","itemHeight","wrapperHeight","defaultSelectedDate","yearValue","selectedDay","yearData","minDay","maxDay","render","createElement","style","styles","root","data","selectedIndex","onValueChange","handleValueChange","middle","create","flexDirection","marginHorizontal"],"sources":["wheel-date-picker.component.tsx"],"sourcesContent":["import React, { Component } from 'react';\nimport { PixelRatio, StyleSheet, View } from 'react-native';\nimport WmWheelScrollPicker from './wheelpicker/wheelpicker.component'\nimport { getDateObject, getDates, getMonthIndex, getMonths, getYearRange ,getDaysInMonth} from '@wavemaker/app-rn-runtime/core/utils';\nimport moment from 'moment';\n\nexport class WmWheelDatePickerProps {\n minDate?: Date | string;\n maxDate?: Date | string;\n selectedDate?: Date = new Date();\n onDateChange?: (date: Date) => void;\n itemHeight?: number = PixelRatio.roundToNearestPixel(50);\n wrapperHeight?: number = PixelRatio.roundToNearestPixel(150);\n}\n\nexport const START_DATE = {\n 'date': 1,\n 'month': 0,\n 'year': 1950,\n};\n\nexport const END_DATE = {\n 'date': 31,\n 'month': 11,\n 'year': 2060,\n};\n\nexport class WmWheelDatePickerState {}\n\nexport class WmWheelDatePicker extends Component<\n WmWheelDatePickerProps,\n WmWheelDatePickerState,\n any\n> {\n itemHeight: number;\n wrapperHeight: number;\n selectedDateIndex: number = 0;\n selectedMonthIndex: number = 0;\n selectedYearIndex: number = 0;\n dateData: number[] = [];\n monthData: string[] = [];\n yearData: number[] = [];\n defaultSelectedDate: Date;\n localSelectedDate: Date | string = '';\n monthValue: number = 0;\n yearValue: string = '';\n\n constructor(props: WmWheelDatePickerProps) {\n super(props);\n const minDate = this.props.minDate ? new Date(this.props.minDate) : new Date(START_DATE.year, START_DATE.month, START_DATE.date);\n const maxDate = this.props.maxDate ? new Date(this.props.maxDate) : new Date(END_DATE.year, END_DATE.month, END_DATE.date);\n let selectedDate = this.props.selectedDate ? new Date(this.props.selectedDate) : new Date();\n\n if (selectedDate < minDate) selectedDate = minDate;\n if (selectedDate > maxDate) selectedDate = maxDate;\n\n this.itemHeight =\n PixelRatio.roundToNearestPixel(this.props.itemHeight || 50) || PixelRatio.roundToNearestPixel(50);\n this.wrapperHeight =\n PixelRatio.roundToNearestPixel(this.props.wrapperHeight || 150) || PixelRatio.roundToNearestPixel(150);\n\n // * Initial values\n this.defaultSelectedDate = selectedDate;\n this.localSelectedDate = selectedDate;\n this.monthValue = selectedDate.getMonth();\n this.yearValue = selectedDate.getFullYear()?.toString();\n\n const selectedYear = selectedDate.getFullYear();\n const selectedMonth = selectedDate.getMonth();\n const selectedDay = selectedDate.getDate();\n\n // Generate valid year range\n const minYear = minDate.getFullYear();\n const maxYear = maxDate.getFullYear();\n this.yearData = getYearRange(minYear, maxYear);\n this.selectedYearIndex = this.yearData.indexOf(selectedYear);\n\n // Generate valid months based on selected year\n let minMonth = 0;\n let maxMonth = 11;\n if (selectedYear === minYear) minMonth = minDate.getMonth();\n if (selectedYear === maxYear) maxMonth = maxDate.getMonth();\n this.monthData = getMonths(minMonth, maxMonth);\n this.selectedMonthIndex = this.monthData.indexOf(getMonths(0, 11)[selectedMonth]);\n\n // Generate valid days based on selected year & month\n let minDay = 1;\n let maxDay = getDaysInMonth(selectedMonth + 1, selectedYear);\n if (selectedYear === minYear && selectedMonth === minMonth) minDay = minDate.getDate();\n if (selectedYear === maxYear && selectedMonth === maxMonth) maxDay = maxDate.getDate();\n this.dateData = getDates(minDay, maxDay);\n this.selectedDateIndex = this.dateData.indexOf(selectedDay);\n }\n\ngetMinValue = (type: 'date' | 'month' | 'year') => {\n if (!this.props.minDate) return START_DATE[type];\n\n const minDate = new Date(this.props.minDate);\n switch (type) {\n case 'date':\n return minDate.getDate();\n case 'month':\n return minDate.getMonth();\n case 'year':\n return minDate.getFullYear();\n default:\n return 0;\n }\n};\n\ngetMaxValue = (type: 'date' | 'month' | 'year') => {\n if (!this.props.maxDate) return END_DATE[type];\n\n const maxDate = new Date(this.props.maxDate);\n switch (type) {\n case 'date':\n return maxDate.getDate();\n case 'month':\n return maxDate.getMonth();\n case 'year':\n return maxDate.getFullYear();\n default:\n return 0;\n }\n};\n\n\n handleValueChange = (valueType: 'date' | 'month' | 'year', value: string | number, index: number) => {\n let indexValue = Object.is(index,-0)? 0 : index;\n switch (valueType) {\n case 'date':\n this.selectedDateIndex = indexValue;\n break;\n case 'month':\n this.monthValue = getMonthIndex(value?.toString());\n this.selectedMonthIndex = indexValue;\n break;\n case 'year':\n this.selectedYearIndex = indexValue;\n break;\n }\n \n const minYear = this.getMinValue('year');\n const maxYear = this.getMaxValue('year');\n const selectedYear = getYearRange(minYear, maxYear)[this.selectedYearIndex];\n \n // Restrict months dynamically\n let minMonth = 0;\n let maxMonth = 11;\n if (selectedYear === minYear) minMonth = this.getMinValue('month');\n if (selectedYear === maxYear) maxMonth = this.getMaxValue('month');\n \n // Update month data dynamically\n this.monthData = getMonths(minMonth, maxMonth);\n\n // Ensure selected month is within range\n let minDate = 1;\n let maxDate: number = 31;\n \n if (this.monthValue > maxMonth) {\n this.selectedMonthIndex = maxMonth;\n }\n\n maxDate = getDaysInMonth(\n getMonthIndex(this.monthData[this.selectedMonthIndex]) + 1,\n selectedYear\n );\n\n if (this.monthValue < minMonth) {\n this.monthValue = minMonth;\n maxDate = getDaysInMonth(this.monthValue + 1, selectedYear);\n \n }\n \n // Restrict days dynamically\n const selectedMonth = this.selectedMonthIndex;\n if (selectedYear === minYear && this.monthValue === minMonth) minDate = this.getMinValue('date');\n \n if (selectedYear === maxYear && selectedMonth === maxMonth) maxDate = this.getMaxValue('date');\n \n \n // Update date data dynamically\n this.dateData = getDates(minDate, maxDate);\n \n // Ensure selected date is within range\n if (this.selectedDateIndex > maxDate - 1) this.selectedDateIndex = maxDate - 1;\n \n const selectedDate = this.dateData[this.selectedDateIndex] || this.dateData[this.dateData.indexOf(this.selectedDateIndex+1)];;\n \n \n // Create new selected date\n const dateObj = getDateObject(selectedDate, getMonthIndex(this.monthData[this.selectedMonthIndex]), selectedYear);\n this.localSelectedDate = dateObj;\n \n this.props?.onDateChange?.(this.localSelectedDate);\n };\n \n render() {\n return (\n <View style={styles.root}>\n <WmWheelScrollPicker\n data={this.dateData}\n wrapperHeight={this.wrapperHeight}\n itemHeight={this.itemHeight}\n selectedIndex={this.selectedDateIndex}\n onValueChange={(value, index) =>\n this.handleValueChange('date', value, index)\n }\n />\n <View style={styles.middle}>\n <WmWheelScrollPicker\n data={this.monthData}\n wrapperHeight={this.wrapperHeight}\n itemHeight={this.itemHeight}\n selectedIndex={this.selectedMonthIndex}\n onValueChange={(value, index) => \n this.handleValueChange('month', value, index)\n }\n />\n </View>\n <WmWheelScrollPicker\n data={getYearRange(this.getMinValue('year'), this.getMaxValue('year'))}\n wrapperHeight={this.wrapperHeight}\n itemHeight={this.itemHeight}\n selectedIndex={this.selectedYearIndex}\n onValueChange={(value, index) => \n this.handleValueChange('year', value, index)\n }\n />\n </View>\n );\n }\n}\n\nexport default WmWheelDatePicker;\n\nconst styles = StyleSheet.create({\n root: {\n flexDirection: 'row',\n },\n middle: {\n marginHorizontal: 15,\n },\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Component","PixelRatio","StyleSheet","View","WmWheelScrollPicker","getDateObject","getDates","getMonthIndex","getMonths","getYearRange","getDaysInMonth","WmWheelDatePickerProps","constructor","_defineProperty","Date","roundToNearestPixel","START_DATE","END_DATE","WmWheelDatePickerState","WmWheelDatePicker","props","_selectedDate$getFull","type","minDate","getDate","getMonth","getFullYear","maxDate","valueType","value","index","_this$props","_this$props$onDateCha","indexValue","Object","is","selectedDateIndex","monthValue","toString","selectedMonthIndex","selectedYearIndex","minYear","getMinValue","maxYear","getMaxValue","selectedYear","minMonth","maxMonth","monthData","selectedMonth","dateData","selectedDate","indexOf","dateObj","localSelectedDate","onDateChange","call","year","month","date","itemHeight","wrapperHeight","defaultSelectedDate","yearValue","selectedDay","yearData","minDay","maxDay","render","createElement","style","styles","root","data","selectedIndex","onValueChange","handleValueChange","middle","create","flexDirection","marginHorizontal"],"sources":["wheel-date-picker.component.tsx"],"sourcesContent":["import React, { Component } from 'react';\nimport { PixelRatio, StyleSheet, View } from 'react-native';\nimport WmWheelScrollPicker from './wheelpicker/wheelpicker.component'\nimport { getDateObject, getDates, getMonthIndex, getMonths, getYearRange ,getDaysInMonth} from '@wavemaker/app-rn-runtime/core/utils';\nimport moment from 'moment';\n\nexport class WmWheelDatePickerProps {\n minDate?: Date | string;\n maxDate?: Date | string;\n selectedDate?: Date = new Date();\n onDateChange?: (date: Date) => void;\n itemHeight?: number = PixelRatio.roundToNearestPixel(50);\n wrapperHeight?: number = PixelRatio.roundToNearestPixel(150);\n}\n\nexport const START_DATE = {\n 'date': 1,\n 'month': 0,\n 'year': 1950,\n};\n\nexport const END_DATE = {\n 'date': 31,\n 'month': 11,\n 'year': 2060,\n};\n\nexport class WmWheelDatePickerState {}\n\nexport class WmWheelDatePicker extends Component<\n WmWheelDatePickerProps,\n WmWheelDatePickerState,\n any\n> {\n itemHeight: number;\n wrapperHeight: number;\n selectedDateIndex: number = 0;\n selectedMonthIndex: number = 0;\n selectedYearIndex: number = 0;\n dateData: number[] = [];\n monthData: string[] = [];\n yearData: number[] = [];\n defaultSelectedDate: Date;\n localSelectedDate: Date | string = '';\n monthValue: number = 0;\n yearValue: string = '';\n\n constructor(props: WmWheelDatePickerProps) {\n super(props);\n const minDate = this.props.minDate ? new Date(this.props.minDate) : new Date(START_DATE.year, START_DATE.month, START_DATE.date);\n const maxDate = this.props.maxDate ? new Date(this.props.maxDate) : new Date(END_DATE.year, END_DATE.month, END_DATE.date);\n let selectedDate = this.props.selectedDate ? new Date(this.props.selectedDate) : new Date();\n\n if (selectedDate < minDate) selectedDate = minDate;\n if (selectedDate > maxDate) selectedDate = maxDate;\n\n this.itemHeight =\n PixelRatio.roundToNearestPixel(this.props.itemHeight || 50) || PixelRatio.roundToNearestPixel(50);\n this.wrapperHeight =\n PixelRatio.roundToNearestPixel(this.props.wrapperHeight || 150) || PixelRatio.roundToNearestPixel(150);\n\n // * Initial values\n this.defaultSelectedDate = selectedDate;\n this.localSelectedDate = selectedDate;\n this.monthValue = selectedDate.getMonth();\n this.yearValue = selectedDate.getFullYear()?.toString();\n\n const selectedYear = selectedDate.getFullYear();\n const selectedMonth = selectedDate.getMonth();\n const selectedDay = selectedDate.getDate();\n\n // Generate valid year range\n const minYear = minDate.getFullYear();\n const maxYear = maxDate.getFullYear();\n this.yearData = getYearRange(minYear, maxYear);\n this.selectedYearIndex = this.yearData.indexOf(selectedYear);\n\n // Generate valid months based on selected year\n let minMonth = 0;\n let maxMonth = 11;\n if (selectedYear === minYear) minMonth = minDate.getMonth();\n if (selectedYear === maxYear) maxMonth = maxDate.getMonth();\n this.monthData = getMonths(minMonth, maxMonth);\n this.selectedMonthIndex = this.monthData.indexOf(getMonths(0, 11)[selectedMonth]);\n\n // Generate valid days based on selected year & month\n let minDay = 1;\n let maxDay = getDaysInMonth(selectedMonth + 1, selectedYear);\n if (selectedYear === minYear && selectedMonth === minMonth) minDay = minDate.getDate();\n if (selectedYear === maxYear && selectedMonth === maxMonth) maxDay = maxDate.getDate();\n this.dateData = getDates(minDay, maxDay);\n this.selectedDateIndex = this.dateData.indexOf(selectedDay);\n }\n\ngetMinValue = (type: 'date' | 'month' | 'year') => {\n if (!this.props.minDate) return START_DATE[type];\n\n const minDate = new Date(this.props.minDate);\n switch (type) {\n case 'date':\n return minDate.getDate();\n case 'month':\n return minDate.getMonth();\n case 'year':\n return minDate.getFullYear();\n default:\n return 0;\n }\n};\n\ngetMaxValue = (type: 'date' | 'month' | 'year') => {\n if (!this.props.maxDate) return END_DATE[type];\n\n const maxDate = new Date(this.props.maxDate);\n switch (type) {\n case 'date':\n return maxDate.getDate();\n case 'month':\n return maxDate.getMonth();\n case 'year':\n return maxDate.getFullYear();\n default:\n return 0;\n }\n};\n\n\n handleValueChange = (valueType: 'date' | 'month' | 'year', value: string | number, index: number) => {\n let indexValue = Object.is(index,-0)? 0 : index;\n switch (valueType) {\n case 'date':\n this.selectedDateIndex = indexValue;\n break;\n case 'month':\n this.monthValue = getMonthIndex(value?.toString());\n this.selectedMonthIndex = indexValue;\n break;\n case 'year':\n this.selectedYearIndex = indexValue;\n break;\n }\n \n const minYear = this.getMinValue('year');\n const maxYear = this.getMaxValue('year');\n const selectedYear = getYearRange(minYear, maxYear)[this.selectedYearIndex];\n \n // Restrict months dynamically\n let minMonth = 0;\n let maxMonth = 11;\n if (selectedYear === minYear) minMonth = this.getMinValue('month');\n if (selectedYear === maxYear) maxMonth = this.getMaxValue('month');\n \n // Update month data dynamically\n this.monthData = getMonths(minMonth, maxMonth);\n\n // Ensure selected month is within range\n let minDate = 1;\n let maxDate: number = 31;\n \n if (this.monthValue > maxMonth) {\n this.selectedMonthIndex = maxMonth;\n }\n\n maxDate = getDaysInMonth(\n getMonthIndex(this.monthData[this.selectedMonthIndex]) + 1,\n selectedYear\n );\n\n if (this.monthValue < minMonth) {\n this.monthValue = minMonth;\n maxDate = getDaysInMonth(this.monthValue + 1, selectedYear);\n \n }\n \n // Restrict days dynamically\n const selectedMonth = this.selectedMonthIndex;\n if (selectedYear === minYear && this.monthValue === minMonth) minDate = this.getMinValue('date');\n \n if (selectedYear === maxYear && selectedMonth === maxMonth) maxDate = this.getMaxValue('date');\n \n if(maxYear === minYear && this.monthValue === maxMonth) maxDate = this.getMaxValue('date');\n \n // Update date data dynamically\n this.dateData = getDates(minDate, maxDate);\n \n // Ensure selected date is within range\n if (this.selectedDateIndex > maxDate - 1) this.selectedDateIndex = maxDate - 1;\n \n const selectedDate = this.dateData[this.selectedDateIndex] || this.dateData[this.dateData.indexOf(this.selectedDateIndex+1)];;\n \n \n // Create new selected date\n const dateObj = getDateObject(selectedDate, getMonthIndex(this.monthData[this.selectedMonthIndex]), selectedYear);\n this.localSelectedDate = dateObj;\n \n this.props?.onDateChange?.(this.localSelectedDate);\n };\n \n render() {\n return (\n <View style={styles.root}>\n <WmWheelScrollPicker\n data={this.dateData}\n wrapperHeight={this.wrapperHeight}\n itemHeight={this.itemHeight}\n selectedIndex={this.selectedDateIndex}\n onValueChange={(value, index) =>\n this.handleValueChange('date', value, index)\n }\n />\n <View style={styles.middle}>\n <WmWheelScrollPicker\n data={this.monthData}\n wrapperHeight={this.wrapperHeight}\n itemHeight={this.itemHeight}\n selectedIndex={this.selectedMonthIndex}\n onValueChange={(value, index) => \n this.handleValueChange('month', value, index)\n }\n />\n </View>\n <WmWheelScrollPicker\n data={getYearRange(this.getMinValue('year'), this.getMaxValue('year'))}\n wrapperHeight={this.wrapperHeight}\n itemHeight={this.itemHeight}\n selectedIndex={this.selectedYearIndex}\n onValueChange={(value, index) => \n this.handleValueChange('year', value, index)\n }\n />\n </View>\n );\n }\n}\n\nexport default WmWheelDatePicker;\n\nconst styles = StyleSheet.create({\n root: {\n flexDirection: 'row',\n },\n middle: {\n marginHorizontal: 15,\n },\n});\n"],"mappings":"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","ignoreList":[]}
@@ -87,6 +87,16 @@ export class BaseComponent extends React.Component {
87
87
  _defineProperty(this, "_showView", true);
88
88
  _defineProperty(this, "closestTappable", void 0);
89
89
  _defineProperty(this, "componentNode", void 0);
90
+ _defineProperty(this, "hideSkeletonInPageContentWhenDisabledInPage", () => {
91
+ var _this$parent$state;
92
+ const isPageContentWidget = this.defaultClass && this.defaultClass === 'app-page-content';
93
+ const isCurrentParentIsContent = this.parent && this.parent.defaultClass && this.parent.defaultClass === 'app-content';
94
+ const showSkeletonInPageContent = ((_this$parent$state = this.parent.state) === null || _this$parent$state === void 0 || (_this$parent$state = _this$parent$state.props) === null || _this$parent$state === void 0 ? void 0 : _this$parent$state.showskeleton) === false;
95
+ if (isPageContentWidget && isCurrentParentIsContent && showSkeletonInPageContent) {
96
+ return false;
97
+ }
98
+ return undefined;
99
+ });
90
100
  this.state = defaultState || {};
91
101
  this.notifier.name = this.props.name || '';
92
102
  this.componentNode = new WmComponentNode({
@@ -467,7 +477,7 @@ export class BaseComponent extends React.Component {
467
477
  return /*#__PURE__*/React.createElement(ParentContext.Consumer, null, parent => {
468
478
  var _this$parent2;
469
479
  this.setParent(parent);
470
- this._showSkeleton = this.state.props.showskeleton !== false && (((_this$parent2 = this.parent) === null || _this$parent2 === void 0 ? void 0 : _this$parent2._showSkeleton) || this.state.props.showskeleton === true);
480
+ this._showSkeleton = this.state.props.showskeleton !== false && (((_this$parent2 = this.parent) === null || _this$parent2 === void 0 ? void 0 : _this$parent2._showSkeleton) || this.state.props.showskeleton === true) && this.hideSkeletonInPageContentWhenDisabledInPage() === undefined;
471
481
  return /*#__PURE__*/React.createElement(ParentContext.Provider, {
472
482
  value: this
473
483
  }, /*#__PURE__*/React.createElement(ThemeConsumer, null, theme => {
@@ -481,7 +491,6 @@ export class BaseComponent extends React.Component {
481
491
  }
482
492
  render() {
483
493
  const props = this.state.props;
484
- this.isFixed = false;
485
494
  const selectedLocale = this.i18nService.getSelectedLocale();
486
495
  return this.getDependenciesFromContext(() => {
487
496
  WIDGET_LOGGER.info(() => `${this.props.name || this.constructor.name} is rendering.`);
@@ -489,6 +498,7 @@ export class BaseComponent extends React.Component {
489
498
  if (this.state.hide || !this.isVisible() && this.hideMode === HideMode.DONOT_ADD_TO_DOM || !this._showView) {
490
499
  return null;
491
500
  }
501
+ this.isFixed = false;
492
502
  const classname = this.getStyleClassName();
493
503
  this.styles = this.theme.mergeStyle(this.getDefaultStyles(), {
494
504
  text: this.theme.getStyle('app-' + selectedLocale)
@@ -1 +1 @@
1
- {"version":3,"names":["assign","isUndefined","isNil","React","AccessibilityInfo","Platform","StyleSheet","View","Animatable","ThemeVariables","StyleProps","getStyleName","BackgroundComponent","injector","ROOT_LOGGER","deepCopy","getPosition","setPosition","BASE_THEME","ThemeConsumer","ThemeEvent","EventNotifier","PropsProvider","assignIn","HideMode","AssetConsumer","FixedView","TextIdPrefixConsumer","isScreenReaderEnabled","TappableContext","WmComponentNode","WIDGET_LOGGER","extend","ParentContext","createContext","BaseComponentState","constructor","_defineProperty","undefined","defineStyles","styles","text","fontFamily","INSTANCE","baseFont","userSelect","BaseProps","args","BaseComponent","Component","markupProps","defaultClass","defaultProps","defaultState","ADD_TO_DOM","createElement","Fragment","I18nService","get","state","notifier","name","props","componentNode","instance","propertyProvider","show","$new","$old","debug","initialized","styleName","styleOverrides","setTimeout","cleanRefresh","onPropertyChange","_INSTANCE","_showView","deferload","check","proxy","Proxy","target","prop","receiver","propName","toString","has","Reflect","set","value","overrideProp","updateState","cleanup","push","updateStateTimeouts","forEach","v","clearTimeout","theme","subscribe","CHANGE","forceUpdate","addEventListener","remove","destroyParentListeners","event","fn","notify","emitToParent","isRTL","i18nService","isRTLLocale","animate","setState","animationId","Date","now","animatableProps","setProp","setPropDefault","setDefault","getDefaultStyles","getStyle","reset","newPartialState","callback","destroyed","stateFn","oldState","oldProps","newState","Object","keys","k","onUpdateState","_this$props$listener","_this$props$listener2","listener","onComponentChange","timeoutId","splice","indexOf","shouldComponentUpdate","nextProps","nextState","nextContext","key","componentDidMount","onComponentInit","componentWillAttach","isFixed","hide","componentWillDetach","componentWillUnmount","_this$parent","onComponentDestroy","f","parent","destroy","componentDidUpdate","prevProps","prevState","snapshot","invokeEventCallback","eventName","callBack","map","a","apply","e","console","error","showView","isVisible","refresh","renderSkeleton","parentListenerDestroyers","setParent","add","getName","handleLayout","newLayoutPosition","y","nativeEvent","layout","x","copyStyles","property","from","to","renderFixedContainer","style","rootStyle","left","top","bottom","right","width","height","root","mergeStyle","addAnimation","renderWidget","n","_extends","setBackground","bgStyle","_background","image","backgroundImage","position","backgroundPosition","size","backgroundSize","repeat","backgroundRepeat","resizeMode","backgroundResizeMode","borderRadius","highlight","onTouchStart","borderWidth","overflow","backgroundColor","borderColor","borderStyle","zIndex","absoluteFill","getTestId","suffix","id","testIdPrefix","getTestProps","OS","accessibilityLabel","testID","accessible","getStyleClassName","classname","getTestPropsForInput","getTestPropsForAction","getTestPropsForLabel","getLayoutOfWidget","scrollToTop","scrollToEnd","scrollToPosition","widgetName","_this$getLayoutOfWidg","positionY","getDependenciesFromContext","Consumer","tappable","closestTappable","loadAsset","_this$parent2","_showSkeleton","showskeleton","Provider","render","selectedLocale","getSelectedLocale","info","hideMode","DONOT_ADD_TO_DOM","disabled","showindevice","d","join","cleanseStyleProperties","hasOwnProperty","eleToRender"],"sources":["base.component.tsx"],"sourcesContent":["import { assign, isUndefined, isNil } from 'lodash';\nimport React, { ReactNode } from 'react';\nimport { AccessibilityInfo, LayoutChangeEvent, Platform, StyleSheet, TextStyle, View, ViewStyle } from 'react-native';\nimport { AnimatableProps } from 'react-native-animatable';\nimport * as Animatable from 'react-native-animatable';\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\nimport { StyleProps, getStyleName } from '@wavemaker/app-rn-runtime/styles/style-props';\nimport { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport { ROOT_LOGGER } from '@wavemaker/app-rn-runtime/core/logger';\nimport { deepCopy, getPosition, setPosition } from '@wavemaker/app-rn-runtime/core/utils';\nimport BASE_THEME, { NamedStyles, AllStyle, ThemeConsumer, ThemeEvent, Theme } from '../styles/theme';\nimport EventNotifier from './event-notifier';\nimport { PropsProvider } from './props.provider';\nimport { assignIn } from 'lodash-es';\nimport { HideMode } from './if.component';\nimport { AssetConsumer } from './asset.provider';\nimport { FixedView } from './fixed-view.component';\nimport { TextIdPrefixConsumer } from './testid.provider';\nimport { isScreenReaderEnabled } from './accessibility';\nimport { Tappable, TappableContext } from './tappable.component';\nimport { WmComponentNode } from './wm-component-tree';\n\nexport const WIDGET_LOGGER = ROOT_LOGGER.extend('widget');\n\nexport const ParentContext = React.createContext(null as any);\n\nexport class BaseComponentState<T extends BaseProps> {\n public animationId?: number = 0;\n public animatableProps?: AnimatableProps<ViewStyle> = undefined;\n public props = {} as T;\n public hide? = false;\n public highlight? = false;\n}\n\nexport type BaseStyles = NamedStyles<any> & {\n root: AllStyle,\n text: TextStyle & {userSelect?: 'none'| 'text'}\n}\n\nexport function defineStyles<T>(styles: T): T {\n return deepCopy({\n text: {\n fontFamily: ThemeVariables.INSTANCE.baseFont,\n userSelect: 'text'\n }\n }, styles);\n}\n\nexport interface LifecycleListener {\n onComponentChange?: (c: BaseComponent<any, any, any>) => void;\n onComponentInit?: (c: BaseComponent<any, any, any>) => void;\n onComponentDestroy?: (c: BaseComponent<any, any, any>) => void;\n}\n\nexport class BaseProps extends StyleProps {\n id?: string = null as any;\n name?: string = null as any;\n key?: any = null as any;\n disabled? = false;\n show? = true as Boolean | String | Number;\n styles?: any = null;\n classname?: string = null as any;\n listener?: LifecycleListener = null as any;\n showindevice?: ('xs'|'sm'|'md'|'lg'|'xl'|'xxl')[] = null as any;\n showskeleton?: boolean = undefined;\n deferload?: boolean = false;\n showskeletonchildren?: boolean = true;\n disabletoucheffect?:boolean = false;\n}\n\nexport abstract class BaseComponent<T extends BaseProps, S extends BaseComponentState<T>, L extends BaseStyles> extends React.Component<T, S> {\n public styles: L = null as any;\n public hideMode = HideMode.ADD_TO_DOM;\n private propertyProvider: PropsProvider<T>;\n public proxy: BaseComponent<T, S, L>;\n public _INSTANCE: BaseComponent<T, S, L>;\n public initialized = false;\n public cleanup = [] as Function[];\n public theme = BASE_THEME;\n public updateStateTimeouts= [] as NodeJS.Timeout[];\n public parent: BaseComponent<any, any, any> = null as any;\n public destroyed = false;\n public _showSkeleton = false;\n public isFixed = false;\n private notifier = new EventNotifier();\n private parentListenerDestroyers = [] as Function[];\n public _background = <></>;\n private styleOverrides = {} as any;\n public loadAsset: (path: string) => number | string = null as any;\n private i18nService = injector.I18nService.get();\n public testIdPrefix = '';\n private _showView = true;\n public closestTappable?: Tappable; \n public componentNode: WmComponentNode;\n\n\n constructor(markupProps: T, public defaultClass: string, defaultProps?: T, defaultState?: S) {\n super(markupProps);\n this.state = (defaultState || {} as S);\n this.notifier.name = this.props.name || '';\n this.componentNode = new WmComponentNode({\n instance: this\n });\n this.propertyProvider = new PropsProvider<T>(\n assign({show: true}, defaultProps),\n assign({}, markupProps),\n (name: string, $new: any, $old: any) => {\n WIDGET_LOGGER.debug(() => `${this.props.name || this.constructor.name}: ${name} changed from ${$old} to ${$new}`);\n if (this.initialized) {\n const styleName = getStyleName(name);\n if (styleName) {\n if ($new === undefined) {\n delete this.styleOverrides[styleName];\n } else {\n this.styleOverrides[styleName] = $new;\n }\n }\n }\n if (name === 'showskeleton' && this.initialized) {\n setTimeout(() => this.cleanRefresh(), 100);\n }\n this.onPropertyChange(name, $new, $old);\n });\n //@ts-ignore\n this.state.props =this.propertyProvider.get();\n this._INSTANCE = this;\n //@ts-ignore\n this._showView = !this.props.deferload;\n this.propertyProvider.check();\n //@ts-ignore\n this.proxy = (new Proxy(this, {\n get: (target, prop, receiver): any => {\n const propName = prop.toString();\n if (this.propertyProvider.has(propName)) {\n //@ts-ignore\n return this.state.props[propName];\n }\n return Reflect.get(target, prop, receiver);\n },\n set: (target: any, prop, value: any): any => {\n const propName = prop.toString();\n if (this.propertyProvider.has(propName)) {\n // @ts-ignore\n const props = {} as any;\n this.propertyProvider.overrideProp(propName, value);\n props[propName] = value;\n this.updateState({\n props: props\n } as S);\n return true;\n } else {\n return Reflect.set(target, prop, value);\n }\n }\n }));\n this.cleanup.push(() => {\n this.updateStateTimeouts.forEach(v => clearTimeout(v));\n });\n this.cleanup.push(this.theme.subscribe(ThemeEvent.CHANGE, () => {\n this.forceUpdate();\n }));\n this.cleanup.push(AccessibilityInfo.addEventListener('screenReaderChanged',\n () => {\n setTimeout(() => {\n this.forceUpdate();\n }, 100);\n },\n ).remove);\n this.cleanup.push(() => {\n this.destroyParentListeners();\n });\n }\n\n public subscribe(event: string, fn: Function) {\n return this.notifier.subscribe(event, fn);\n }\n\n public notify(event: string, args: any[], emitToParent = false) {\n return this.notifier.notify(event, args, emitToParent);\n }\n\n public get isRTL(){\n return this.i18nService.isRTLLocale();\n }\n\n public animate(props: AnimatableProps<ViewStyle>) {\n this.setState({\n animationId: Date.now(),\n animatableProps: props\n });\n }\n\n setProp(propName: string, value: any) {\n this.propertyProvider.set(propName, value);\n this.updateState({props: {}} as S);\n }\n\n setPropDefault(propName: string, value: any) {\n this.propertyProvider.setDefault(propName, value);\n }\n \n onPropertyChange(name: string, $new: any, $old: any) { \n }\n \n getDefaultStyles() {\n return this.theme.getStyle(this.defaultClass);\n }\n\n reset() {\n\n }\n\n updateState(newPartialState: S, callback?: ()=>void) {\n if (this.destroyed) {\n return;\n }\n const stateFn = (oldState: S) => {\n const oldProps = oldState.props;\n const newState = this.initialized ? assignIn({}, oldState, newPartialState) : assignIn(oldState, newPartialState);\n if (newPartialState.props) {\n Object.keys(newPartialState.props).forEach((k) => {\n //@ts-ignore\n oldProps[k] = newState.props[k];\n });\n newState.props = oldProps;\n }\n return newState;\n };\n const onUpdateState = () => {\n callback && callback();\n this.props.listener?.onComponentChange\n && this.props.listener?.onComponentChange(this);\n }\n if (!this.initialized) {\n this.state = stateFn(this.state);\n onUpdateState();\n } else {\n const timeoutId = setTimeout(() => {\n this.setState(stateFn, onUpdateState);\n this.updateStateTimeouts.splice(this.updateStateTimeouts.indexOf(timeoutId), 1);\n });\n this.updateStateTimeouts.push(timeoutId);\n }\n }\n\n shouldComponentUpdate(nextProps: T, nextState: S, nextContext: any) {\n if (this.propertyProvider.check(nextProps)) {\n return true;\n }\n for(let key in nextState) {\n if(key !== 'props' && (!(key in this.state) || nextState[key] !== this.state[key])) {\n return true;\n }\n }\n\n for(let key in this.state) {\n if(key !== 'props' && (!(key in nextState) || this.state[key] !== nextState[key])) {\n return true;\n }\n }\n return false;\n }\n\n componentDidMount() {\n if (this.props.listener && this.props.listener.onComponentInit) {\n this.props.listener.onComponentInit(this.proxy);\n }\n this.initialized = true;\n }\n\n componentWillAttach() {\n if (this.isFixed) {\n this.setState({hide: false});\n }\n }\n\n componentWillDetach() {\n if (this.isFixed) {\n this.setState({hide: true});\n }\n }\n\n componentWillUnmount() {\n this.destroyed = true;\n if (this.props.listener && this.props.listener.onComponentDestroy) {\n this.props.listener.onComponentDestroy(this.proxy);\n }\n this.cleanup.forEach(f => f && f());\n this.parent?.componentNode?.remove(this.componentNode);\n this.notifier.destroy();\n this.notifier.notify('destroy', []);\n }\n \n componentDidUpdate(prevProps: Readonly<T>, prevState: Readonly<S>, snapshot?: any): void {\n if (this.propertyProvider.check(this.props)) {\n this.forceUpdate();\n }\n }\n\n invokeEventCallback(eventName: string, args: any[]) {\n //@ts-ignore\n const callBack: Function = this.props[eventName];\n args = args && args.map(a => (a === this) ? this.proxy : a)\n if (callBack) {\n try {\n return callBack.apply(this.proxy, args);\n } catch(e) {\n console.error(e);\n }\n }\n }\n\n showView() {\n return this.isVisible();\n }\n\n isVisible() {\n const show = this.state.props.show;\n return show !== false && show !== 'false' && show !== '0' && !isNil(show) && show !== \"\";\n }\n\n protected abstract renderWidget(props: T): ReactNode;\n\n public refresh() {\n this.forceUpdate();\n }\n\n public cleanRefresh() {\n this.forceUpdate(() => this.notifier.notify('forceUpdate', []));\n }\n \n public renderSkeleton (props: T): ReactNode {\n return null;\n }\n\n public destroyParentListeners() {\n this.parentListenerDestroyers.map(fn => fn());\n }\n\n protected setParent(parent: BaseComponent<any, any, any>) {\n if (parent && this.parent !== parent) {\n this.parent = parent;\n this.parent.componentNode.add(this.componentNode);\n this.notifier.setParent(parent.notifier);\n this.parentListenerDestroyers = [\n this.parent.subscribe('forceUpdate', () => {\n this.cleanRefresh();\n }),\n this.parent.subscribe('destroy', () => {\n this.destroyParentListeners();\n })\n ];\n }\n }\n\n protected getName() {\n return this.props.name;\n }\n\n public handleLayout(event: LayoutChangeEvent ) {\n const key = this.getName && this.getName();\n if(key){\n const newLayoutPosition = {\n [key as string]: {\n y: event.nativeEvent.layout.y,\n x: event.nativeEvent.layout.x\n }\n }\n setPosition(newLayoutPosition);\n }\n }\n \n copyStyles(property: string, from: any, to: any) {\n if (!isUndefined(from[property])) {\n to[property] = from[property];\n }\n }\n\n renderFixedContainer(props: T) {\n const style = {} as ViewStyle;\n const rootStyle = {\n left: 0,\n top: 0,\n bottom: 0,\n right: 0,\n width: \"100%\",\n height: \"100%\"\n } as ViewStyle;\n this.copyStyles('left', this.styles.root, style);\n this.copyStyles('top', this.styles.root, style);\n this.copyStyles('right', this.styles.root, style);\n this.copyStyles('bottom', this.styles.root, style);\n this.copyStyles('width', this.styles.root, style);\n this.copyStyles('height', this.styles.root, style);\n this.styles = this.theme.mergeStyle(this.styles, {root: rootStyle});\n return (<FixedView style={style} theme={this.theme}>{this.addAnimation(this.renderWidget(props))}</FixedView>);\n }\n\n private addAnimation(n: ReactNode) {\n if (!this.state.animatableProps) {\n return (\n <>\n {n}\n </>\n )\n }\n return (\n <Animatable.View \n key={this.state.animationId} \n {...this.state.animatableProps}\n >\n {n}\n </Animatable.View>);\n }\n \n private setBackground() {\n const bgStyle = this.styles.root as any;\n this._background = (\n <>\n <BackgroundComponent \n image={bgStyle.backgroundImage}\n position={bgStyle.backgroundPosition}\n size={bgStyle.backgroundSize}\n repeat={bgStyle.backgroundRepeat}\n resizeMode={bgStyle.backgroundResizeMode}\n style={{borderRadius: this.styles.root.borderRadius}}>\n </BackgroundComponent>\n {this.state.highlight ? (<View onTouchStart={() => {\n this.setState({\n highlight: false\n })\n }} style={[{\n borderWidth: 2,\n overflow: 'hidden',\n backgroundColor: '#FFFF0033', \n borderColor: 'orange',\n borderStyle: 'dashed',\n zIndex: 1000,\n borderRadius: 0,\n }, StyleSheet.absoluteFill]}></View>) : null}\n </>\n );\n delete (this.styles.root as any)['backgroundImage'];\n delete (this.styles.root as any)['backgroundPosition'];\n delete (this.styles.root as any)['backgroundResizeMode'];\n delete (this.styles.root as any)['backgroundSize'];\n delete (this.styles.root as any)['backgroundRepeat'];\n }\n\n public getTestId(suffix?: string) {\n let id = this.props.id || this.props.name;\n if (this.testIdPrefix) {\n id = this.testIdPrefix + '_' + id;\n }\n if (suffix) {\n id = id + '_' + suffix;\n }\n return id;\n }\n\n public getTestProps(suffix?: string) {\n let id = this.getTestId(suffix);\n if (isScreenReaderEnabled()) {\n return {};\n }\n if (Platform.OS === 'android' || Platform.OS === 'web') {\n return {\n accessibilityLabel: id,\n testID: id\n };\n }\n return {\n accessible: false,\n testID: id\n };\n }\n\n public getStyleClassName() {\n return this.state.props.classname;\n }\n\n public getTestPropsForInput(suffix?: string) {\n return this.getTestProps(suffix || 'i');\n }\n\n public getTestPropsForAction(suffix?: string) {\n return this.getTestProps(suffix || 'a');\n }\n\n public getTestPropsForLabel(suffix?: string) {\n return this.getTestProps(suffix || 'l');\n }\n\n public getLayoutOfWidget(name: string): {x: number, y: number} | undefined {\n return getPosition(name)\n }\n\n public scrollToTop(){\n this.notify('scrollToPosition', [{\n x: 0,\n y: 0\n }]);\n }\n\n public scrollToEnd() {\n this.notify('scrollToEnd', []);\n }\n\n scrollToPosition(widgetName: string) {\n const positionY = this.getLayoutOfWidget(widgetName)?.y; // Safe access\n this.notify('scrollToPosition', [{\n x: 0,\n y: positionY,\n }]);\n }\n private getDependenciesFromContext(fn: () => ReactNode) {\n return (\n <TappableContext.Consumer>{(tappable) => {\n this.closestTappable = tappable;\n return (\n <TextIdPrefixConsumer>\n {(testIdPrefix) => {\n this.testIdPrefix = testIdPrefix || '';\n return (<AssetConsumer>\n {(loadAsset) => {\n this.loadAsset = loadAsset;\n return (<ParentContext.Consumer>\n {(parent) => {\n this.setParent(parent);\n this._showSkeleton = this.state.props.showskeleton !== false \n && (this.parent?._showSkeleton || this.state.props.showskeleton === true);\n return (\n <ParentContext.Provider value={this}>\n <ThemeConsumer>\n {(theme) => { \n this.theme = theme || BASE_THEME;\n return fn();\n }}\n </ThemeConsumer>\n </ParentContext.Provider>);\n }} \n </ParentContext.Consumer>);\n }}\n </AssetConsumer>);\n }}\n </TextIdPrefixConsumer>)}}\n </TappableContext.Consumer>); \n }\n \n public render(): ReactNode {\n const props = this.state.props;\n this.isFixed = false;\n const selectedLocale = this.i18nService.getSelectedLocale();\n return this.getDependenciesFromContext(() => {\n WIDGET_LOGGER.info(() => `${this.props.name || this.constructor.name} is rendering.`);\n this._showView = this._showView || this.showView();\n if (this.state.hide \n || (!this.isVisible() && this.hideMode === HideMode.DONOT_ADD_TO_DOM)\n || !this._showView) {\n return null;\n }\n const classname = this.getStyleClassName();\n this.styles = this.theme.mergeStyle(\n this.getDefaultStyles(),\n {text: this.theme.getStyle('app-' + selectedLocale)},\n {text: this.theme.getStyle(this.defaultClass + '-' + selectedLocale)},\n props.disabled ? this.theme.getStyle(this.defaultClass + '-disabled') : null,\n this.isRTL ? this.theme.getStyle(this.defaultClass + '-rtl') : null,\n classname && this.theme.getStyle(classname),\n props.showindevice && this.theme.getStyle('d-all-none ' + props.showindevice.map(d => `d-${d}-flex`).join(' ')),\n this.theme.cleanseStyleProperties(this.props.styles),\n this.theme.cleanseStyleProperties({\n root: this.styleOverrides,\n text: this.styleOverrides\n }));\n if (this.styles.root.hasOwnProperty('_background')) {\n delete this.styles.root.backgroundColor;\n }\n if (!this.isVisible()) {\n assign(this.styles, this.theme.getStyle('hidden'))\n }\n let eleToRender = (this._showSkeleton && this.renderSkeleton(props));\n if (eleToRender) {\n return eleToRender;\n }\n this.setBackground();\n this.isFixed = (this.styles.root.position as any) === 'fixed';\n if (this.isFixed) {\n this.styles.root.position = undefined;\n return this.renderFixedContainer(props);\n }\n return this.addAnimation(this.renderWidget(this.state.props)); \n });\n }\n}\n"],"mappings":";;;;AAAA,SAASA,MAAM,EAAEC,WAAW,EAAEC,KAAK,QAAQ,QAAQ;AACnD,OAAOC,KAAK,MAAqB,OAAO;AACxC,SAASC,iBAAiB,EAAqBC,QAAQ,EAAEC,UAAU,EAAaC,IAAI,QAAmB,cAAc;AAErH,OAAO,KAAKC,UAAU,MAAM,yBAAyB;AACrD,OAAOC,cAAc,MAAM,kDAAkD;AAC7E,SAASC,UAAU,EAAEC,YAAY,QAAQ,8CAA8C;AACvF,SAASC,mBAAmB,QAAQ,uDAAuD;AAC3F,OAAOC,QAAQ,MAAM,yCAAyC;AAC9D,SAASC,WAAW,QAAQ,uCAAuC;AACnE,SAASC,QAAQ,EAAEC,WAAW,EAAEC,WAAW,QAAQ,sCAAsC;AACzF,OAAOC,UAAU,IAA2BC,aAAa,EAAEC,UAAU,QAAe,iBAAiB;AACrG,OAAOC,aAAa,MAAM,kBAAkB;AAC5C,SAASC,aAAa,QAAQ,kBAAkB;AAChD,SAASC,QAAQ,QAAQ,WAAW;AACpC,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,SAASC,aAAa,QAAQ,kBAAkB;AAChD,SAASC,SAAS,QAAQ,wBAAwB;AAClD,SAASC,oBAAoB,QAAQ,mBAAmB;AACxD,SAASC,qBAAqB,QAAQ,iBAAiB;AACvD,SAAmBC,eAAe,QAAQ,sBAAsB;AAChE,SAASC,eAAe,QAAQ,qBAAqB;AAErD,OAAO,MAAMC,aAAa,GAAGjB,WAAW,CAACkB,MAAM,CAAC,QAAQ,CAAC;AAEzD,OAAO,MAAMC,aAAa,gBAAG9B,KAAK,CAAC+B,aAAa,CAAC,IAAW,CAAC;AAE7D,OAAO,MAAMC,kBAAkB,CAAsB;EAAAC,YAAA;IAAAC,eAAA,sBACnB,CAAC;IAAAA,eAAA,0BACuBC,SAAS;IAAAD,eAAA,gBAChD,CAAC,CAAC;IAAAA,eAAA,eACF,KAAK;IAAAA,eAAA,oBACA,KAAK;EAAA;AAC7B;AAOA,OAAO,SAASE,YAAYA,CAAIC,MAAS,EAAK;EAC1C,OAAOzB,QAAQ,CAAC;IACZ0B,IAAI,EAAE;MACFC,UAAU,EAAEjC,cAAc,CAACkC,QAAQ,CAACC,QAAQ;MAC5CC,UAAU,EAAE;IAChB;EACJ,CAAC,EAAEL,MAAM,CAAC;AACd;AAQA,OAAO,MAAMM,SAAS,SAASpC,UAAU,CAAC;EAAA0B,YAAA,GAAAW,IAAA;IAAA,SAAAA,IAAA;IAAAV,eAAA,aACxB,IAAI;IAAAA,eAAA,eACF,IAAI;IAAAA,eAAA,cACR,IAAI;IAAAA,eAAA,mBACJ,KAAK;IAAAA,eAAA,eACT,IAAI;IAAAA,eAAA,iBACG,IAAI;IAAAA,eAAA,oBACE,IAAI;IAAAA,eAAA,mBACM,IAAI;IAAAA,eAAA,uBACiB,IAAI;IAAAA,eAAA,uBAC/BC,SAAS;IAAAD,eAAA,oBACZ,KAAK;IAAAA,eAAA,+BACM,IAAI;IAAAA,eAAA,6BACP,KAAK;EAAA;AACvC;AAEA,OAAO,MAAeW,aAAa,SAAqF7C,KAAK,CAAC8C,SAAS,CAAO;EA0B1Ib,WAAWA,CAACc,WAAc,EAASC,YAAoB,EAAEC,YAAgB,EAAEC,YAAgB,EAAE;IACzF,KAAK,CAACH,WAAW,CAAC;IAAC,KADYC,YAAoB,GAApBA,YAAoB;IAAAd,eAAA,iBAzBpC,IAAI;IAAAA,eAAA,mBACLb,QAAQ,CAAC8B,UAAU;IAAAjB,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,sBAIhB,KAAK;IAAAA,eAAA,kBACT,EAAE;IAAAA,eAAA,gBACJnB,UAAU;IAAAmB,eAAA,8BACG,EAAE;IAAAA,eAAA,iBACgB,IAAI;IAAAA,eAAA,oBAC/B,KAAK;IAAAA,eAAA,wBACD,KAAK;IAAAA,eAAA,kBACX,KAAK;IAAAA,eAAA,mBACH,IAAIhB,aAAa,CAAC,CAAC;IAAAgB,eAAA,mCACH,EAAE;IAAAA,eAAA,mCAChBlC,KAAA,CAAAoD,aAAA,CAAApD,KAAA,CAAAqD,QAAA,MAAI,CAAC;IAAAnB,eAAA,yBACD,CAAC,CAAC;IAAAA,eAAA,oBAC2B,IAAI;IAAAA,eAAA,sBACpCxB,QAAQ,CAAC4C,WAAW,CAACC,GAAG,CAAC,CAAC;IAAArB,eAAA,uBAC1B,EAAE;IAAAA,eAAA,oBACJ,IAAI;IAAAA,eAAA;IAAAA,eAAA;IAOpB,IAAI,CAACsB,KAAK,GAAIN,YAAY,IAAI,CAAC,CAAO;IACtC,IAAI,CAACO,QAAQ,CAACC,IAAI,GAAG,IAAI,CAACC,KAAK,CAACD,IAAI,IAAI,EAAE;IAC1C,IAAI,CAACE,aAAa,GAAG,IAAIjC,eAAe,CAAC;MACrCkC,QAAQ,EAAE;IACd,CAAC,CAAC;IACF,IAAI,CAACC,gBAAgB,GAAG,IAAI3C,aAAa,CACrCtB,MAAM,CAAC;MAACkE,IAAI,EAAE;IAAI,CAAC,EAAEd,YAAY,CAAC,EAClCpD,MAAM,CAAC,CAAC,CAAC,EAAEkD,WAAW,CAAC,EACvB,CAACW,IAAY,EAAEM,IAAS,EAAEC,IAAS,KAAK;MACpCrC,aAAa,CAACsC,KAAK,CAAC,MAAM,GAAG,IAAI,CAACP,KAAK,CAACD,IAAI,IAAI,IAAI,CAACzB,WAAW,CAACyB,IAAI,KAAKA,IAAI,iBAAiBO,IAAI,OAAOD,IAAI,EAAE,CAAC;MACjH,IAAI,IAAI,CAACG,WAAW,EAAE;QAClB,MAAMC,SAAS,GAAG5D,YAAY,CAACkD,IAAI,CAAC;QACpC,IAAIU,SAAS,EAAE;UACX,IAAIJ,IAAI,KAAK7B,SAAS,EAAE;YACpB,OAAO,IAAI,CAACkC,cAAc,CAACD,SAAS,CAAC;UACzC,CAAC,MAAM;YACH,IAAI,CAACC,cAAc,CAACD,SAAS,CAAC,GAAGJ,IAAI;UACzC;QACJ;MACJ;MACA,IAAIN,IAAI,KAAK,cAAc,IAAI,IAAI,CAACS,WAAW,EAAE;QAC7CG,UAAU,CAAC,MAAM,IAAI,CAACC,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC;MAC9C;MACA,IAAI,CAACC,gBAAgB,CAACd,IAAI,EAAEM,IAAI,EAAEC,IAAI,CAAC;IAC3C,CAAC,CAAC;IACN;IACA,IAAI,CAACT,KAAK,CAACG,KAAK,GAAE,IAAI,CAACG,gBAAgB,CAACP,GAAG,CAAC,CAAC;IAC7C,IAAI,CAACkB,SAAS,GAAG,IAAI;IACrB;IACA,IAAI,CAACC,SAAS,GAAG,CAAC,IAAI,CAACf,KAAK,CAACgB,SAAS;IACtC,IAAI,CAACb,gBAAgB,CAACc,KAAK,CAAC,CAAC;IAC7B;IACA,IAAI,CAACC,KAAK,GAAI,IAAIC,KAAK,CAAC,IAAI,EAAE;MAC1BvB,GAAG,EAAEA,CAACwB,MAAM,EAAEC,IAAI,EAAEC,QAAQ,KAAU;QAClC,MAAMC,QAAQ,GAAGF,IAAI,CAACG,QAAQ,CAAC,CAAC;QAChC,IAAI,IAAI,CAACrB,gBAAgB,CAACsB,GAAG,CAACF,QAAQ,CAAC,EAAE;UACrC;UACA,OAAO,IAAI,CAAC1B,KAAK,CAACG,KAAK,CAACuB,QAAQ,CAAC;QACrC;QACA,OAAOG,OAAO,CAAC9B,GAAG,CAACwB,MAAM,EAAEC,IAAI,EAAEC,QAAQ,CAAC;MAC9C,CAAC;MACDK,GAAG,EAAEA,CAACP,MAAW,EAAEC,IAAI,EAAEO,KAAU,KAAU;QACzC,MAAML,QAAQ,GAAGF,IAAI,CAACG,QAAQ,CAAC,CAAC;QAChC,IAAI,IAAI,CAACrB,gBAAgB,CAACsB,GAAG,CAACF,QAAQ,CAAC,EAAE;UACrC;UACA,MAAMvB,KAAK,GAAG,CAAC,CAAQ;UACvB,IAAI,CAACG,gBAAgB,CAAC0B,YAAY,CAACN,QAAQ,EAAEK,KAAK,CAAC;UACnD5B,KAAK,CAACuB,QAAQ,CAAC,GAAGK,KAAK;UACvB,IAAI,CAACE,WAAW,CAAC;YACb9B,KAAK,EAAEA;UACX,CAAM,CAAC;UACP,OAAO,IAAI;QACf,CAAC,MAAM;UACH,OAAO0B,OAAO,CAACC,GAAG,CAACP,MAAM,EAAEC,IAAI,EAAEO,KAAK,CAAC;QAC3C;MACJ;IACJ,CAAC,CAAE;IACH,IAAI,CAACG,OAAO,CAACC,IAAI,CAAC,MAAM;MACpB,IAAI,CAACC,mBAAmB,CAACC,OAAO,CAACC,CAAC,IAAIC,YAAY,CAACD,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC;IACF,IAAI,CAACJ,OAAO,CAACC,IAAI,CAAC,IAAI,CAACK,KAAK,CAACC,SAAS,CAAChF,UAAU,CAACiF,MAAM,EAAE,MAAM;MAC5D,IAAI,CAACC,WAAW,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;IACH,IAAI,CAACT,OAAO,CAACC,IAAI,CAAC1F,iBAAiB,CAACmG,gBAAgB,CAAC,qBAAqB,EACtE,MAAM;MACJ9B,UAAU,CAAC,MAAM;QACf,IAAI,CAAC6B,WAAW,CAAC,CAAC;MACpB,CAAC,EAAE,GAAG,CAAC;IACT,CACJ,CAAC,CAACE,MAAM,CAAC;IACT,IAAI,CAACX,OAAO,CAACC,IAAI,CAAC,MAAM;MACpB,IAAI,CAACW,sBAAsB,CAAC,CAAC;IACjC,CAAC,CAAC;EACN;EAEOL,SAASA,CAACM,KAAa,EAAEC,EAAY,EAAE;IAC1C,OAAO,IAAI,CAAC/C,QAAQ,CAACwC,SAAS,CAACM,KAAK,EAAEC,EAAE,CAAC;EAC7C;EAEOC,MAAMA,CAACF,KAAa,EAAE3D,IAAW,EAAE8D,YAAY,GAAG,KAAK,EAAE;IAC5D,OAAO,IAAI,CAACjD,QAAQ,CAACgD,MAAM,CAACF,KAAK,EAAE3D,IAAI,EAAE8D,YAAY,CAAC;EAC1D;EAEA,IAAWC,KAAKA,CAAA,EAAE;IACd,OAAO,IAAI,CAACC,WAAW,CAACC,WAAW,CAAC,CAAC;EACzC;EAEOC,OAAOA,CAACnD,KAAiC,EAAE;IAC9C,IAAI,CAACoD,QAAQ,CAAC;MACVC,WAAW,EAAEC,IAAI,CAACC,GAAG,CAAC,CAAC;MACvBC,eAAe,EAAExD;IACrB,CAAC,CAAC;EACN;EAEAyD,OAAOA,CAAClC,QAAgB,EAAEK,KAAU,EAAE;IAClC,IAAI,CAACzB,gBAAgB,CAACwB,GAAG,CAACJ,QAAQ,EAAEK,KAAK,CAAC;IAC1C,IAAI,CAACE,WAAW,CAAC;MAAC9B,KAAK,EAAE,CAAC;IAAC,CAAM,CAAC;EACtC;EAEA0D,cAAcA,CAACnC,QAAgB,EAAEK,KAAU,EAAE;IACzC,IAAI,CAACzB,gBAAgB,CAACwD,UAAU,CAACpC,QAAQ,EAAEK,KAAK,CAAC;EACrD;EAEAf,gBAAgBA,CAACd,IAAY,EAAEM,IAAS,EAAEC,IAAS,EAAE,CACrD;EAEAsD,gBAAgBA,CAAA,EAAG;IACf,OAAO,IAAI,CAACvB,KAAK,CAACwB,QAAQ,CAAC,IAAI,CAACxE,YAAY,CAAC;EACjD;EAEAyE,KAAKA,CAAA,EAAG,CAER;EAEAhC,WAAWA,CAACiC,eAAkB,EAAEC,QAAmB,EAAE;IACjD,IAAI,IAAI,CAACC,SAAS,EAAE;MAChB;IACJ;IACA,MAAMC,OAAO,GAAIC,QAAW,IAAK;MAC7B,MAAMC,QAAQ,GAAGD,QAAQ,CAACnE,KAAK;MAC/B,MAAMqE,QAAQ,GAAG,IAAI,CAAC7D,WAAW,GAAG/C,QAAQ,CAAC,CAAC,CAAC,EAAE0G,QAAQ,EAAEJ,eAAe,CAAC,GAAGtG,QAAQ,CAAC0G,QAAQ,EAAEJ,eAAe,CAAC;MACjH,IAAIA,eAAe,CAAC/D,KAAK,EAAE;QACvBsE,MAAM,CAACC,IAAI,CAACR,eAAe,CAAC/D,KAAK,CAAC,CAACkC,OAAO,CAAEsC,CAAC,IAAK;UAC9C;UACAJ,QAAQ,CAACI,CAAC,CAAC,GAAGH,QAAQ,CAACrE,KAAK,CAACwE,CAAC,CAAC;QACnC,CAAC,CAAC;QACNH,QAAQ,CAACrE,KAAK,GAAGoE,QAAQ;MACzB;MACA,OAAOC,QAAQ;IACnB,CAAC;IACD,MAAMI,aAAa,GAAGA,CAAA,KAAM;MAAA,IAAAC,oBAAA,EAAAC,qBAAA;MACxBX,QAAQ,IAAIA,QAAQ,CAAC,CAAC;MACtB,EAAAU,oBAAA,OAAI,CAAC1E,KAAK,CAAC4E,QAAQ,cAAAF,oBAAA,uBAAnBA,oBAAA,CAAqBG,iBAAiB,OAAAF,qBAAA,GAC/B,IAAI,CAAC3E,KAAK,CAAC4E,QAAQ,cAAAD,qBAAA,uBAAnBA,qBAAA,CAAqBE,iBAAiB,CAAC,IAAI,CAAC;IACvD,CAAC;IACD,IAAI,CAAC,IAAI,CAACrE,WAAW,EAAE;MACnB,IAAI,CAACX,KAAK,GAAGqE,OAAO,CAAC,IAAI,CAACrE,KAAK,CAAC;MAChC4E,aAAa,CAAC,CAAC;IACnB,CAAC,MAAM;MACH,MAAMK,SAAS,GAAGnE,UAAU,CAAC,MAAM;QAC/B,IAAI,CAACyC,QAAQ,CAACc,OAAO,EAAEO,aAAa,CAAC;QACrC,IAAI,CAACxC,mBAAmB,CAAC8C,MAAM,CAAC,IAAI,CAAC9C,mBAAmB,CAAC+C,OAAO,CAACF,SAAS,CAAC,EAAE,CAAC,CAAC;MACnF,CAAC,CAAC;MACF,IAAI,CAAC7C,mBAAmB,CAACD,IAAI,CAAC8C,SAAS,CAAC;IAC5C;EACJ;EAEAG,qBAAqBA,CAACC,SAAY,EAAEC,SAAY,EAAEC,WAAgB,EAAE;IAChE,IAAI,IAAI,CAACjF,gBAAgB,CAACc,KAAK,CAACiE,SAAS,CAAC,EAAE;MACxC,OAAO,IAAI;IACf;IACA,KAAI,IAAIG,GAAG,IAAIF,SAAS,EAAE;MACtB,IAAGE,GAAG,KAAK,OAAO,KAAK,EAAEA,GAAG,IAAI,IAAI,CAACxF,KAAK,CAAC,IAAIsF,SAAS,CAACE,GAAG,CAAC,KAAK,IAAI,CAACxF,KAAK,CAACwF,GAAG,CAAC,CAAC,EAAE;QAChF,OAAO,IAAI;MACf;IACJ;IAEA,KAAI,IAAIA,GAAG,IAAI,IAAI,CAACxF,KAAK,EAAE;MACvB,IAAGwF,GAAG,KAAK,OAAO,KAAK,EAAEA,GAAG,IAAIF,SAAS,CAAC,IAAI,IAAI,CAACtF,KAAK,CAACwF,GAAG,CAAC,KAAKF,SAAS,CAACE,GAAG,CAAC,CAAC,EAAE;QAC/E,OAAO,IAAI;MACf;IACJ;IACA,OAAO,KAAK;EAChB;EAEAC,iBAAiBA,CAAA,EAAG;IAChB,IAAI,IAAI,CAACtF,KAAK,CAAC4E,QAAQ,IAAI,IAAI,CAAC5E,KAAK,CAAC4E,QAAQ,CAACW,eAAe,EAAE;MAC5D,IAAI,CAACvF,KAAK,CAAC4E,QAAQ,CAACW,eAAe,CAAC,IAAI,CAACrE,KAAK,CAAC;IACnD;IACA,IAAI,CAACV,WAAW,GAAG,IAAI;EAC3B;EAEAgF,mBAAmBA,CAAA,EAAG;IAClB,IAAI,IAAI,CAACC,OAAO,EAAE;MACd,IAAI,CAACrC,QAAQ,CAAC;QAACsC,IAAI,EAAE;MAAK,CAAC,CAAC;IAChC;EACJ;EAEAC,mBAAmBA,CAAA,EAAG;IAClB,IAAI,IAAI,CAACF,OAAO,EAAE;MACd,IAAI,CAACrC,QAAQ,CAAC;QAACsC,IAAI,EAAE;MAAI,CAAC,CAAC;IAC/B;EACJ;EAEAE,oBAAoBA,CAAA,EAAG;IAAA,IAAAC,YAAA;IACnB,IAAI,CAAC5B,SAAS,GAAG,IAAI;IACrB,IAAI,IAAI,CAACjE,KAAK,CAAC4E,QAAQ,IAAI,IAAI,CAAC5E,KAAK,CAAC4E,QAAQ,CAACkB,kBAAkB,EAAE;MAC/D,IAAI,CAAC9F,KAAK,CAAC4E,QAAQ,CAACkB,kBAAkB,CAAC,IAAI,CAAC5E,KAAK,CAAC;IACtD;IACA,IAAI,CAACa,OAAO,CAACG,OAAO,CAAC6D,CAAC,IAAIA,CAAC,IAAIA,CAAC,CAAC,CAAC,CAAC;IACnC,CAAAF,YAAA,OAAI,CAACG,MAAM,cAAAH,YAAA,gBAAAA,YAAA,GAAXA,YAAA,CAAa5F,aAAa,cAAA4F,YAAA,eAA1BA,YAAA,CAA4BnD,MAAM,CAAC,IAAI,CAACzC,aAAa,CAAC;IACtD,IAAI,CAACH,QAAQ,CAACmG,OAAO,CAAC,CAAC;IACvB,IAAI,CAACnG,QAAQ,CAACgD,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC;EACvC;EAEAoD,kBAAkBA,CAACC,SAAsB,EAAEC,SAAsB,EAAEC,QAAc,EAAQ;IACrF,IAAI,IAAI,CAAClG,gBAAgB,CAACc,KAAK,CAAC,IAAI,CAACjB,KAAK,CAAC,EAAE;MACzC,IAAI,CAACwC,WAAW,CAAC,CAAC;IACtB;EACJ;EAEA8D,mBAAmBA,CAACC,SAAiB,EAAEtH,IAAW,EAAE;IAChD;IACA,MAAMuH,QAAkB,GAAG,IAAI,CAACxG,KAAK,CAACuG,SAAS,CAAC;IAChDtH,IAAI,GAAGA,IAAI,IAAIA,IAAI,CAACwH,GAAG,CAACC,CAAC,IAAKA,CAAC,KAAK,IAAI,GAAI,IAAI,CAACxF,KAAK,GAAGwF,CAAC,CAAC;IAC3D,IAAIF,QAAQ,EAAE;MACV,IAAI;QACF,OAAOA,QAAQ,CAACG,KAAK,CAAC,IAAI,CAACzF,KAAK,EAAEjC,IAAI,CAAC;MACzC,CAAC,CAAC,OAAM2H,CAAC,EAAE;QACPC,OAAO,CAACC,KAAK,CAACF,CAAC,CAAC;MACpB;IACJ;EACJ;EAEAG,QAAQA,CAAA,EAAG;IACP,OAAO,IAAI,CAACC,SAAS,CAAC,CAAC;EAC3B;EAEAA,SAASA,CAAA,EAAG;IACR,MAAM5G,IAAI,GAAG,IAAI,CAACP,KAAK,CAACG,KAAK,CAACI,IAAI;IAClC,OAAOA,IAAI,KAAK,KAAK,IAAIA,IAAI,KAAK,OAAO,IAAIA,IAAI,KAAK,GAAG,IAAI,CAAChE,KAAK,CAACgE,IAAI,CAAC,IAAIA,IAAI,KAAK,EAAE;EAC5F;EAIO6G,OAAOA,CAAA,EAAG;IACb,IAAI,CAACzE,WAAW,CAAC,CAAC;EACtB;EAEO5B,YAAYA,CAAA,EAAG;IAClB,IAAI,CAAC4B,WAAW,CAAC,MAAM,IAAI,CAAC1C,QAAQ,CAACgD,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;EACnE;EAEOoE,cAAcA,CAAElH,KAAQ,EAAa;IACxC,OAAO,IAAI;EACf;EAEO2C,sBAAsBA,CAAA,EAAG;IAC5B,IAAI,CAACwE,wBAAwB,CAACV,GAAG,CAAC5D,EAAE,IAAIA,EAAE,CAAC,CAAC,CAAC;EACjD;EAEUuE,SAASA,CAACpB,MAAoC,EAAE;IACtD,IAAIA,MAAM,IAAI,IAAI,CAACA,MAAM,KAAKA,MAAM,EAAG;MACnC,IAAI,CAACA,MAAM,GAAGA,MAAM;MACpB,IAAI,CAACA,MAAM,CAAC/F,aAAa,CAACoH,GAAG,CAAC,IAAI,CAACpH,aAAa,CAAC;MACjD,IAAI,CAACH,QAAQ,CAACsH,SAAS,CAACpB,MAAM,CAAClG,QAAQ,CAAC;MACxC,IAAI,CAACqH,wBAAwB,GAAG,CAC5B,IAAI,CAACnB,MAAM,CAAC1D,SAAS,CAAC,aAAa,EAAE,MAAM;QACvC,IAAI,CAAC1B,YAAY,CAAC,CAAC;MACvB,CAAC,CAAC,EACF,IAAI,CAACoF,MAAM,CAAC1D,SAAS,CAAC,SAAS,EAAE,MAAM;QACnC,IAAI,CAACK,sBAAsB,CAAC,CAAC;MACjC,CAAC,CAAC,CACL;IACL;EACJ;EAEU2E,OAAOA,CAAA,EAAG;IAChB,OAAO,IAAI,CAACtH,KAAK,CAACD,IAAI;EAC1B;EAEOwH,YAAYA,CAAC3E,KAAwB,EAAG;IAC3C,MAAMyC,GAAG,GAAG,IAAI,CAACiC,OAAO,IAAI,IAAI,CAACA,OAAO,CAAC,CAAC;IAC1C,IAAGjC,GAAG,EAAC;MACH,MAAMmC,iBAAiB,GAAG;QACtB,CAACnC,GAAG,GAAa;UACboC,CAAC,EAAE7E,KAAK,CAAC8E,WAAW,CAACC,MAAM,CAACF,CAAC;UAC7BG,CAAC,EAAEhF,KAAK,CAAC8E,WAAW,CAACC,MAAM,CAACC;QAChC;MACJ,CAAC;MACDzK,WAAW,CAACqK,iBAAiB,CAAC;IAClC;EACJ;EAEAK,UAAUA,CAACC,QAAgB,EAAEC,IAAS,EAAEC,EAAO,EAAE;IAC7C,IAAI,CAAC7L,WAAW,CAAC4L,IAAI,CAACD,QAAQ,CAAC,CAAC,EAAE;MAClCE,EAAE,CAACF,QAAQ,CAAC,GAAGC,IAAI,CAACD,QAAQ,CAAC;IAC7B;EACJ;EAEAG,oBAAoBA,CAACjI,KAAQ,EAAE;IAC3B,MAAMkI,KAAK,GAAG,CAAC,CAAc;IAC7B,MAAMC,SAAS,GAAG;MACdC,IAAI,EAAE,CAAC;MACPC,GAAG,EAAE,CAAC;MACNC,MAAM,EAAE,CAAC;MACTC,KAAK,EAAE,CAAC;MACRC,KAAK,EAAE,MAAM;MACbC,MAAM,EAAE;IACZ,CAAc;IACd,IAAI,CAACZ,UAAU,CAAC,MAAM,EAAE,IAAI,CAACnJ,MAAM,CAACgK,IAAI,EAAER,KAAK,CAAC;IAChD,IAAI,CAACL,UAAU,CAAC,KAAK,EAAE,IAAI,CAACnJ,MAAM,CAACgK,IAAI,EAAER,KAAK,CAAC;IAC/C,IAAI,CAACL,UAAU,CAAC,OAAO,EAAE,IAAI,CAACnJ,MAAM,CAACgK,IAAI,EAAER,KAAK,CAAC;IACjD,IAAI,CAACL,UAAU,CAAC,QAAQ,EAAE,IAAI,CAACnJ,MAAM,CAACgK,IAAI,EAAER,KAAK,CAAC;IAClD,IAAI,CAACL,UAAU,CAAC,OAAO,EAAE,IAAI,CAACnJ,MAAM,CAACgK,IAAI,EAAER,KAAK,CAAC;IACjD,IAAI,CAACL,UAAU,CAAC,QAAQ,EAAE,IAAI,CAACnJ,MAAM,CAACgK,IAAI,EAAER,KAAK,CAAC;IAClD,IAAI,CAACxJ,MAAM,GAAG,IAAI,CAAC2D,KAAK,CAACsG,UAAU,CAAC,IAAI,CAACjK,MAAM,EAAE;MAACgK,IAAI,EAAEP;IAAS,CAAC,CAAC;IACnE,oBAAQ9L,KAAA,CAAAoD,aAAA,CAAC7B,SAAS;MAACsK,KAAK,EAAEA,KAAM;MAAC7F,KAAK,EAAE,IAAI,CAACA;IAAM,GAAE,IAAI,CAACuG,YAAY,CAAC,IAAI,CAACC,YAAY,CAAC7I,KAAK,CAAC,CAAa,CAAC;EACjH;EAEQ4I,YAAYA,CAACE,CAAY,EAAE;IAC/B,IAAI,CAAC,IAAI,CAACjJ,KAAK,CAAC2D,eAAe,EAAE;MAC7B,oBACInH,KAAA,CAAAoD,aAAA,CAAApD,KAAA,CAAAqD,QAAA,QACKoJ,CACH,CAAC;IAEX;IACA,oBACIzM,KAAA,CAAAoD,aAAA,CAAC/C,UAAU,CAACD,IAAI,EAAAsM,QAAA;MACZ1D,GAAG,EAAE,IAAI,CAACxF,KAAK,CAACwD;IAAY,GACxB,IAAI,CAACxD,KAAK,CAAC2D,eAAe,GAE7BsF,CACY,CAAC;EAC1B;EAEQE,aAAaA,CAAA,EAAG;IACpB,MAAMC,OAAO,GAAG,IAAI,CAACvK,MAAM,CAACgK,IAAW;IACvC,IAAI,CAACQ,WAAW,gBACZ7M,KAAA,CAAAoD,aAAA,CAAApD,KAAA,CAAAqD,QAAA,qBACArD,KAAA,CAAAoD,aAAA,CAAC3C,mBAAmB;MAChBqM,KAAK,EAAEF,OAAO,CAACG,eAAgB;MAC/BC,QAAQ,EAAEJ,OAAO,CAACK,kBAAmB;MACrCC,IAAI,EAAEN,OAAO,CAACO,cAAe;MAC7BC,MAAM,EAAER,OAAO,CAACS,gBAAiB;MACjCC,UAAU,EAAEV,OAAO,CAACW,oBAAqB;MACzC1B,KAAK,EAAE;QAAC2B,YAAY,EAAE,IAAI,CAACnL,MAAM,CAACgK,IAAI,CAACmB;MAAY;IAAE,CACpC,CAAC,EACrB,IAAI,CAAChK,KAAK,CAACiK,SAAS,gBAAIzN,KAAA,CAAAoD,aAAA,CAAChD,IAAI;MAACsN,YAAY,EAAEA,CAAA,KAAM;QAC/C,IAAI,CAAC3G,QAAQ,CAAC;UACV0G,SAAS,EAAE;QACf,CAAC,CAAC;MACN,CAAE;MAAC5B,KAAK,EAAE,CAAC;QACP8B,WAAW,EAAE,CAAC;QACdC,QAAQ,EAAE,QAAQ;QAClBC,eAAe,EAAE,WAAW;QAC5BC,WAAW,EAAE,QAAQ;QACrBC,WAAW,EAAE,QAAQ;QACrBC,MAAM,EAAE,IAAI;QACZR,YAAY,EAAE;MAClB,CAAC,EAAErN,UAAU,CAAC8N,YAAY;IAAE,CAAO,CAAC,GAAI,IACtC,CACL;IACD,OAAQ,IAAI,CAAC5L,MAAM,CAACgK,IAAI,CAAS,iBAAiB,CAAC;IACnD,OAAQ,IAAI,CAAChK,MAAM,CAACgK,IAAI,CAAS,oBAAoB,CAAC;IACtD,OAAQ,IAAI,CAAChK,MAAM,CAACgK,IAAI,CAAS,sBAAsB,CAAC;IACxD,OAAQ,IAAI,CAAChK,MAAM,CAACgK,IAAI,CAAS,gBAAgB,CAAC;IAClD,OAAQ,IAAI,CAAChK,MAAM,CAACgK,IAAI,CAAS,kBAAkB,CAAC;EACxD;EAEO6B,SAASA,CAACC,MAAe,EAAE;IAC9B,IAAIC,EAAE,GAAG,IAAI,CAACzK,KAAK,CAACyK,EAAE,IAAI,IAAI,CAACzK,KAAK,CAACD,IAAI;IACzC,IAAI,IAAI,CAAC2K,YAAY,EAAE;MACnBD,EAAE,GAAG,IAAI,CAACC,YAAY,GAAG,GAAG,GAAGD,EAAE;IACrC;IACA,IAAID,MAAM,EAAE;MACRC,EAAE,GAAGA,EAAE,GAAG,GAAG,GAAGD,MAAM;IAC1B;IACA,OAAOC,EAAE;EACb;EAEOE,YAAYA,CAACH,MAAe,EAAE;IACjC,IAAIC,EAAE,GAAG,IAAI,CAACF,SAAS,CAACC,MAAM,CAAC;IAC/B,IAAI1M,qBAAqB,CAAC,CAAC,EAAE;MACzB,OAAO,CAAC,CAAC;IACb;IACA,IAAIvB,QAAQ,CAACqO,EAAE,KAAK,SAAS,IAAIrO,QAAQ,CAACqO,EAAE,KAAK,KAAK,EAAE;MACpD,OAAO;QACHC,kBAAkB,EAAEJ,EAAE;QACtBK,MAAM,EAAEL;MACZ,CAAC;IACL;IACA,OAAO;MACHM,UAAU,EAAE,KAAK;MACjBD,MAAM,EAAEL;IACZ,CAAC;EACL;EAEOO,iBAAiBA,CAAA,EAAG;IACvB,OAAO,IAAI,CAACnL,KAAK,CAACG,KAAK,CAACiL,SAAS;EACrC;EAEOC,oBAAoBA,CAACV,MAAe,EAAE;IACzC,OAAO,IAAI,CAACG,YAAY,CAACH,MAAM,IAAI,GAAG,CAAC;EAC3C;EAEOW,qBAAqBA,CAACX,MAAe,EAAE;IAC1C,OAAO,IAAI,CAACG,YAAY,CAACH,MAAM,IAAI,GAAG,CAAC;EAC3C;EAEOY,oBAAoBA,CAACZ,MAAe,EAAE;IACzC,OAAO,IAAI,CAACG,YAAY,CAACH,MAAM,IAAI,GAAG,CAAC;EAC3C;EAEOa,iBAAiBA,CAACtL,IAAY,EAAsC;IACvE,OAAO7C,WAAW,CAAC6C,IAAI,CAAC;EAC5B;EAEOuL,WAAWA,CAAA,EAAE;IAChB,IAAI,CAACxI,MAAM,CAAC,kBAAkB,EAAE,CAAC;MAC7B8E,CAAC,EAAE,CAAC;MACJH,CAAC,EAAE;IACP,CAAC,CAAC,CAAC;EACP;EAEO8D,WAAWA,CAAA,EAAG;IACjB,IAAI,CAACzI,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC;EAClC;EAEA0I,gBAAgBA,CAACC,UAAkB,EAAE;IAAA,IAAAC,qBAAA;IACjC,MAAMC,SAAS,IAAAD,qBAAA,GAAG,IAAI,CAACL,iBAAiB,CAACI,UAAU,CAAC,cAAAC,qBAAA,uBAAlCA,qBAAA,CAAoCjE,CAAC,CAAC,CAAC;IACzD,IAAI,CAAC3E,MAAM,CAAC,kBAAkB,EAAE,CAAC;MAC7B8E,CAAC,EAAE,CAAC;MACJH,CAAC,EAAEkE;IACP,CAAC,CAAC,CAAC;EACP;EACQC,0BAA0BA,CAAC/I,EAAmB,EAAE;IACpD,oBACAxG,KAAA,CAAAoD,aAAA,CAAC1B,eAAe,CAAC8N,QAAQ,QAAGC,QAAQ,IAAK;MACrC,IAAI,CAACC,eAAe,GAAGD,QAAQ;MAC/B,oBACIzP,KAAA,CAAAoD,aAAA,CAAC5B,oBAAoB,QACf6M,YAAY,IAAK;QACf,IAAI,CAACA,YAAY,GAAGA,YAAY,IAAI,EAAE;QACtC,oBAAQrO,KAAA,CAAAoD,aAAA,CAAC9B,aAAa,QAChBqO,SAAS,IAAK;UAChB,IAAI,CAACA,SAAS,GAAGA,SAAS;UAC1B,oBAAQ3P,KAAA,CAAAoD,aAAA,CAACtB,aAAa,CAAC0N,QAAQ,QACzB7F,MAAM,IAAK;YAAA,IAAAiG,aAAA;YACT,IAAI,CAAC7E,SAAS,CAACpB,MAAM,CAAC;YACtB,IAAI,CAACkG,aAAa,GAAG,IAAI,CAACrM,KAAK,CAACG,KAAK,CAACmM,YAAY,KAAK,KAAK,KACpD,EAAAF,aAAA,OAAI,CAACjG,MAAM,cAAAiG,aAAA,uBAAXA,aAAA,CAAaC,aAAa,KAAI,IAAI,CAACrM,KAAK,CAACG,KAAK,CAACmM,YAAY,KAAK,IAAI,CAAC;YAC7E,oBACI9P,KAAA,CAAAoD,aAAA,CAACtB,aAAa,CAACiO,QAAQ;cAACxK,KAAK,EAAE;YAAK,gBAChCvF,KAAA,CAAAoD,aAAA,CAACpC,aAAa,QACRgF,KAAK,IAAK;cACR,IAAI,CAACA,KAAK,GAAGA,KAAK,IAAIjF,UAAU;cAChC,OAAOyF,EAAE,CAAC,CAAC;YACf,CACW,CACK,CAAC;UACjC,CACwB,CAAC;QAC7B,CACW,CAAC;MACpB,CACkB,CAAC;IAAC,CACN,CAAC;EAC/B;EAEOwJ,MAAMA,CAAA,EAAc;IACvB,MAAMrM,KAAK,GAAG,IAAI,CAACH,KAAK,CAACG,KAAK;IAC9B,IAAI,CAACyF,OAAO,GAAG,KAAK;IACpB,MAAM6G,cAAc,GAAG,IAAI,CAACrJ,WAAW,CAACsJ,iBAAiB,CAAC,CAAC;IAC3D,OAAO,IAAI,CAACX,0BAA0B,CAAC,MAAM;MACzC3N,aAAa,CAACuO,IAAI,CAAC,MAAM,GAAG,IAAI,CAACxM,KAAK,CAACD,IAAI,IAAI,IAAI,CAACzB,WAAW,CAACyB,IAAI,gBAAgB,CAAC;MACrF,IAAI,CAACgB,SAAS,GAAG,IAAI,CAACA,SAAS,IAAI,IAAI,CAACgG,QAAQ,CAAC,CAAC;MAClD,IAAI,IAAI,CAAClH,KAAK,CAAC6F,IAAI,IACX,CAAC,IAAI,CAACsB,SAAS,CAAC,CAAC,IAAI,IAAI,CAACyF,QAAQ,KAAK/O,QAAQ,CAACgP,gBAAiB,IAClE,CAAC,IAAI,CAAC3L,SAAS,EAAE;QACpB,OAAO,IAAI;MACf;MACA,MAAMkK,SAAS,GAAG,IAAI,CAACD,iBAAiB,CAAC,CAAC;MAC1C,IAAI,CAACtM,MAAM,GAAI,IAAI,CAAC2D,KAAK,CAACsG,UAAU,CAChC,IAAI,CAAC/E,gBAAgB,CAAC,CAAC,EACvB;QAACjF,IAAI,EAAE,IAAI,CAAC0D,KAAK,CAACwB,QAAQ,CAAC,MAAM,GAAGyI,cAAc;MAAC,CAAC,EACpD;QAAC3N,IAAI,EAAE,IAAI,CAAC0D,KAAK,CAACwB,QAAQ,CAAC,IAAI,CAACxE,YAAY,GAAG,GAAG,GAAGiN,cAAc;MAAC,CAAC,EACrEtM,KAAK,CAAC2M,QAAQ,GAAG,IAAI,CAACtK,KAAK,CAACwB,QAAQ,CAAC,IAAI,CAACxE,YAAY,GAAG,WAAW,CAAC,GAAG,IAAI,EAC5E,IAAI,CAAC2D,KAAK,GAAG,IAAI,CAACX,KAAK,CAACwB,QAAQ,CAAC,IAAI,CAACxE,YAAY,GAAG,MAAM,CAAC,GAAG,IAAI,EACnE4L,SAAS,IAAI,IAAI,CAAC5I,KAAK,CAACwB,QAAQ,CAACoH,SAAS,CAAC,EAC3CjL,KAAK,CAAC4M,YAAY,IAAI,IAAI,CAACvK,KAAK,CAACwB,QAAQ,CAAC,aAAa,GAAG7D,KAAK,CAAC4M,YAAY,CAACnG,GAAG,CAACoG,CAAC,IAAI,KAAKA,CAAC,OAAO,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CAAC,EAC/G,IAAI,CAACzK,KAAK,CAAC0K,sBAAsB,CAAC,IAAI,CAAC/M,KAAK,CAACtB,MAAM,CAAC,EACpD,IAAI,CAAC2D,KAAK,CAAC0K,sBAAsB,CAAC;QAC9BrE,IAAI,EAAE,IAAI,CAAChI,cAAc;QACzB/B,IAAI,EAAE,IAAI,CAAC+B;MACf,CAAC,CAAC,CAAC;MACP,IAAI,IAAI,CAAChC,MAAM,CAACgK,IAAI,CAACsE,cAAc,CAAC,aAAa,CAAC,EAAE;QAChD,OAAO,IAAI,CAACtO,MAAM,CAACgK,IAAI,CAACwB,eAAe;MAC3C;MACA,IAAI,CAAC,IAAI,CAAClD,SAAS,CAAC,CAAC,EAAE;QACnB9K,MAAM,CAAC,IAAI,CAACwC,MAAM,EAAE,IAAI,CAAC2D,KAAK,CAACwB,QAAQ,CAAC,QAAQ,CAAC,CAAC;MACtD;MACA,IAAIoJ,WAAW,GAAI,IAAI,CAACf,aAAa,IAAI,IAAI,CAAChF,cAAc,CAAClH,KAAK,CAAE;MACpE,IAAIiN,WAAW,EAAE;QACb,OAAOA,WAAW;MACtB;MACA,IAAI,CAACjE,aAAa,CAAC,CAAC;MACpB,IAAI,CAACvD,OAAO,GAAI,IAAI,CAAC/G,MAAM,CAACgK,IAAI,CAACW,QAAQ,KAAa,OAAO;MAC7D,IAAI,IAAI,CAAC5D,OAAO,EAAE;QACd,IAAI,CAAC/G,MAAM,CAACgK,IAAI,CAACW,QAAQ,GAAI7K,SAAS;QACtC,OAAO,IAAI,CAACyJ,oBAAoB,CAACjI,KAAK,CAAC;MAC3C;MACA,OAAO,IAAI,CAAC4I,YAAY,CAAC,IAAI,CAACC,YAAY,CAAC,IAAI,CAAChJ,KAAK,CAACG,KAAK,CAAC,CAAC;IACjE,CAAC,CAAC;EACN;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["assign","isUndefined","isNil","React","AccessibilityInfo","Platform","StyleSheet","View","Animatable","ThemeVariables","StyleProps","getStyleName","BackgroundComponent","injector","ROOT_LOGGER","deepCopy","getPosition","setPosition","BASE_THEME","ThemeConsumer","ThemeEvent","EventNotifier","PropsProvider","assignIn","HideMode","AssetConsumer","FixedView","TextIdPrefixConsumer","isScreenReaderEnabled","TappableContext","WmComponentNode","WIDGET_LOGGER","extend","ParentContext","createContext","BaseComponentState","constructor","_defineProperty","undefined","defineStyles","styles","text","fontFamily","INSTANCE","baseFont","userSelect","BaseProps","args","BaseComponent","Component","markupProps","defaultClass","defaultProps","defaultState","ADD_TO_DOM","createElement","Fragment","I18nService","get","_this$parent$state","isPageContentWidget","isCurrentParentIsContent","parent","showSkeletonInPageContent","state","props","showskeleton","notifier","name","componentNode","instance","propertyProvider","show","$new","$old","debug","initialized","styleName","styleOverrides","setTimeout","cleanRefresh","onPropertyChange","_INSTANCE","_showView","deferload","check","proxy","Proxy","target","prop","receiver","propName","toString","has","Reflect","set","value","overrideProp","updateState","cleanup","push","updateStateTimeouts","forEach","v","clearTimeout","theme","subscribe","CHANGE","forceUpdate","addEventListener","remove","destroyParentListeners","event","fn","notify","emitToParent","isRTL","i18nService","isRTLLocale","animate","setState","animationId","Date","now","animatableProps","setProp","setPropDefault","setDefault","getDefaultStyles","getStyle","reset","newPartialState","callback","destroyed","stateFn","oldState","oldProps","newState","Object","keys","k","onUpdateState","_this$props$listener","_this$props$listener2","listener","onComponentChange","timeoutId","splice","indexOf","shouldComponentUpdate","nextProps","nextState","nextContext","key","componentDidMount","onComponentInit","componentWillAttach","isFixed","hide","componentWillDetach","componentWillUnmount","_this$parent","onComponentDestroy","f","destroy","componentDidUpdate","prevProps","prevState","snapshot","invokeEventCallback","eventName","callBack","map","a","apply","e","console","error","showView","isVisible","refresh","renderSkeleton","parentListenerDestroyers","setParent","add","getName","handleLayout","newLayoutPosition","y","nativeEvent","layout","x","copyStyles","property","from","to","renderFixedContainer","style","rootStyle","left","top","bottom","right","width","height","root","mergeStyle","addAnimation","renderWidget","n","_extends","setBackground","bgStyle","_background","image","backgroundImage","position","backgroundPosition","size","backgroundSize","repeat","backgroundRepeat","resizeMode","backgroundResizeMode","borderRadius","highlight","onTouchStart","borderWidth","overflow","backgroundColor","borderColor","borderStyle","zIndex","absoluteFill","getTestId","suffix","id","testIdPrefix","getTestProps","OS","accessibilityLabel","testID","accessible","getStyleClassName","classname","getTestPropsForInput","getTestPropsForAction","getTestPropsForLabel","getLayoutOfWidget","scrollToTop","scrollToEnd","scrollToPosition","widgetName","_this$getLayoutOfWidg","positionY","getDependenciesFromContext","Consumer","tappable","closestTappable","loadAsset","_this$parent2","_showSkeleton","hideSkeletonInPageContentWhenDisabledInPage","Provider","render","selectedLocale","getSelectedLocale","info","hideMode","DONOT_ADD_TO_DOM","disabled","showindevice","d","join","cleanseStyleProperties","hasOwnProperty","eleToRender"],"sources":["base.component.tsx"],"sourcesContent":["import { assign, isUndefined, isNil } from 'lodash';\nimport React, { ReactNode } from 'react';\nimport { AccessibilityInfo, LayoutChangeEvent, Platform, StyleSheet, TextStyle, View, ViewStyle } from 'react-native';\nimport { AnimatableProps } from 'react-native-animatable';\nimport * as Animatable from 'react-native-animatable';\nimport ThemeVariables from '@wavemaker/app-rn-runtime/styles/theme.variables';\nimport { StyleProps, getStyleName } from '@wavemaker/app-rn-runtime/styles/style-props';\nimport { BackgroundComponent } from '@wavemaker/app-rn-runtime/styles/background.component';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport { ROOT_LOGGER } from '@wavemaker/app-rn-runtime/core/logger';\nimport { deepCopy, getPosition, setPosition } from '@wavemaker/app-rn-runtime/core/utils';\nimport BASE_THEME, { NamedStyles, AllStyle, ThemeConsumer, ThemeEvent, Theme } from '../styles/theme';\nimport EventNotifier from './event-notifier';\nimport { PropsProvider } from './props.provider';\nimport { assignIn } from 'lodash-es';\nimport { HideMode } from './if.component';\nimport { AssetConsumer } from './asset.provider';\nimport { FixedView } from './fixed-view.component';\nimport { TextIdPrefixConsumer } from './testid.provider';\nimport { isScreenReaderEnabled } from './accessibility';\nimport { Tappable, TappableContext } from './tappable.component';\nimport { WmComponentNode } from './wm-component-tree';\n\nexport const WIDGET_LOGGER = ROOT_LOGGER.extend('widget');\n\nexport const ParentContext = React.createContext(null as any);\n\nexport class BaseComponentState<T extends BaseProps> {\n public animationId?: number = 0;\n public animatableProps?: AnimatableProps<ViewStyle> = undefined;\n public props = {} as T;\n public hide? = false;\n public highlight? = false;\n}\n\nexport type BaseStyles = NamedStyles<any> & {\n root: AllStyle,\n text: TextStyle & {userSelect?: 'none'| 'text'}\n}\n\nexport function defineStyles<T>(styles: T): T {\n return deepCopy({\n text: {\n fontFamily: ThemeVariables.INSTANCE.baseFont,\n userSelect: 'text'\n }\n }, styles);\n}\n\nexport interface LifecycleListener {\n onComponentChange?: (c: BaseComponent<any, any, any>) => void;\n onComponentInit?: (c: BaseComponent<any, any, any>) => void;\n onComponentDestroy?: (c: BaseComponent<any, any, any>) => void;\n}\n\nexport class BaseProps extends StyleProps {\n id?: string = null as any;\n name?: string = null as any;\n key?: any = null as any;\n disabled? = false;\n show? = true as Boolean | String | Number;\n styles?: any = null;\n classname?: string = null as any;\n listener?: LifecycleListener = null as any;\n showindevice?: ('xs'|'sm'|'md'|'lg'|'xl'|'xxl')[] = null as any;\n showskeleton?: boolean = undefined;\n deferload?: boolean = false;\n showskeletonchildren?: boolean = true;\n disabletoucheffect?:boolean = false;\n}\n\nexport abstract class BaseComponent<T extends BaseProps, S extends BaseComponentState<T>, L extends BaseStyles> extends React.Component<T, S> {\n public styles: L = null as any;\n public hideMode = HideMode.ADD_TO_DOM;\n private propertyProvider: PropsProvider<T>;\n public proxy: BaseComponent<T, S, L>;\n public _INSTANCE: BaseComponent<T, S, L>;\n public initialized = false;\n public cleanup = [] as Function[];\n public theme = BASE_THEME;\n public updateStateTimeouts= [] as NodeJS.Timeout[];\n public parent: BaseComponent<any, any, any> = null as any;\n public destroyed = false;\n public _showSkeleton = false;\n public isFixed = false;\n private notifier = new EventNotifier();\n private parentListenerDestroyers = [] as Function[];\n public _background = <></>;\n private styleOverrides = {} as any;\n public loadAsset: (path: string) => number | string = null as any;\n private i18nService = injector.I18nService.get();\n public testIdPrefix = '';\n private _showView = true;\n public closestTappable?: Tappable; \n public componentNode: WmComponentNode;\n\n\n constructor(markupProps: T, public defaultClass: string, defaultProps?: T, defaultState?: S) {\n super(markupProps);\n this.state = (defaultState || {} as S);\n this.notifier.name = this.props.name || '';\n this.componentNode = new WmComponentNode({\n instance: this\n });\n this.propertyProvider = new PropsProvider<T>(\n assign({show: true}, defaultProps),\n assign({}, markupProps),\n (name: string, $new: any, $old: any) => {\n WIDGET_LOGGER.debug(() => `${this.props.name || this.constructor.name}: ${name} changed from ${$old} to ${$new}`);\n if (this.initialized) {\n const styleName = getStyleName(name);\n if (styleName) {\n if ($new === undefined) {\n delete this.styleOverrides[styleName];\n } else {\n this.styleOverrides[styleName] = $new;\n }\n }\n }\n if (name === 'showskeleton' && this.initialized) {\n setTimeout(() => this.cleanRefresh(), 100);\n }\n this.onPropertyChange(name, $new, $old);\n });\n //@ts-ignore\n this.state.props =this.propertyProvider.get();\n this._INSTANCE = this;\n //@ts-ignore\n this._showView = !this.props.deferload;\n this.propertyProvider.check();\n //@ts-ignore\n this.proxy = (new Proxy(this, {\n get: (target, prop, receiver): any => {\n const propName = prop.toString();\n if (this.propertyProvider.has(propName)) {\n //@ts-ignore\n return this.state.props[propName];\n }\n return Reflect.get(target, prop, receiver);\n },\n set: (target: any, prop, value: any): any => {\n const propName = prop.toString();\n if (this.propertyProvider.has(propName)) {\n // @ts-ignore\n const props = {} as any;\n this.propertyProvider.overrideProp(propName, value);\n props[propName] = value;\n this.updateState({\n props: props\n } as S);\n return true;\n } else {\n return Reflect.set(target, prop, value);\n }\n }\n }));\n this.cleanup.push(() => {\n this.updateStateTimeouts.forEach(v => clearTimeout(v));\n });\n this.cleanup.push(this.theme.subscribe(ThemeEvent.CHANGE, () => {\n this.forceUpdate();\n }));\n this.cleanup.push(AccessibilityInfo.addEventListener('screenReaderChanged',\n () => {\n setTimeout(() => {\n this.forceUpdate();\n }, 100);\n },\n ).remove);\n this.cleanup.push(() => {\n this.destroyParentListeners();\n });\n }\n\n public subscribe(event: string, fn: Function) {\n return this.notifier.subscribe(event, fn);\n }\n\n public notify(event: string, args: any[], emitToParent = false) {\n return this.notifier.notify(event, args, emitToParent);\n }\n\n public get isRTL(){\n return this.i18nService.isRTLLocale();\n }\n\n public animate(props: AnimatableProps<ViewStyle>) {\n this.setState({\n animationId: Date.now(),\n animatableProps: props\n });\n }\n\n setProp(propName: string, value: any) {\n this.propertyProvider.set(propName, value);\n this.updateState({props: {}} as S);\n }\n\n setPropDefault(propName: string, value: any) {\n this.propertyProvider.setDefault(propName, value);\n }\n \n onPropertyChange(name: string, $new: any, $old: any) { \n }\n \n getDefaultStyles() {\n return this.theme.getStyle(this.defaultClass);\n }\n\n reset() {\n\n }\n\n updateState(newPartialState: S, callback?: ()=>void) {\n if (this.destroyed) {\n return;\n }\n const stateFn = (oldState: S) => {\n const oldProps = oldState.props;\n const newState = this.initialized ? assignIn({}, oldState, newPartialState) : assignIn(oldState, newPartialState);\n if (newPartialState.props) {\n Object.keys(newPartialState.props).forEach((k) => {\n //@ts-ignore\n oldProps[k] = newState.props[k];\n });\n newState.props = oldProps;\n }\n return newState;\n };\n const onUpdateState = () => {\n callback && callback();\n this.props.listener?.onComponentChange\n && this.props.listener?.onComponentChange(this);\n }\n if (!this.initialized) {\n this.state = stateFn(this.state);\n onUpdateState();\n } else {\n const timeoutId = setTimeout(() => {\n this.setState(stateFn, onUpdateState);\n this.updateStateTimeouts.splice(this.updateStateTimeouts.indexOf(timeoutId), 1);\n });\n this.updateStateTimeouts.push(timeoutId);\n }\n }\n\n shouldComponentUpdate(nextProps: T, nextState: S, nextContext: any) {\n if (this.propertyProvider.check(nextProps)) {\n return true;\n }\n for(let key in nextState) {\n if(key !== 'props' && (!(key in this.state) || nextState[key] !== this.state[key])) {\n return true;\n }\n }\n\n for(let key in this.state) {\n if(key !== 'props' && (!(key in nextState) || this.state[key] !== nextState[key])) {\n return true;\n }\n }\n return false;\n }\n\n componentDidMount() {\n if (this.props.listener && this.props.listener.onComponentInit) {\n this.props.listener.onComponentInit(this.proxy);\n }\n this.initialized = true;\n }\n\n componentWillAttach() {\n if (this.isFixed) {\n this.setState({hide: false});\n }\n }\n\n componentWillDetach() {\n if (this.isFixed) {\n this.setState({hide: true});\n }\n }\n\n componentWillUnmount() {\n this.destroyed = true;\n if (this.props.listener && this.props.listener.onComponentDestroy) {\n this.props.listener.onComponentDestroy(this.proxy);\n }\n this.cleanup.forEach(f => f && f());\n this.parent?.componentNode?.remove(this.componentNode);\n this.notifier.destroy();\n this.notifier.notify('destroy', []);\n }\n \n componentDidUpdate(prevProps: Readonly<T>, prevState: Readonly<S>, snapshot?: any): void {\n if (this.propertyProvider.check(this.props)) {\n this.forceUpdate();\n }\n }\n\n invokeEventCallback(eventName: string, args: any[]) {\n //@ts-ignore\n const callBack: Function = this.props[eventName];\n args = args && args.map(a => (a === this) ? this.proxy : a)\n if (callBack) {\n try {\n return callBack.apply(this.proxy, args);\n } catch(e) {\n console.error(e);\n }\n }\n }\n\n showView() {\n return this.isVisible();\n }\n\n isVisible() {\n const show = this.state.props.show;\n return show !== false && show !== 'false' && show !== '0' && !isNil(show) && show !== \"\";\n }\n\n protected abstract renderWidget(props: T): ReactNode;\n\n public refresh() {\n this.forceUpdate();\n }\n\n public cleanRefresh() {\n this.forceUpdate(() => this.notifier.notify('forceUpdate', []));\n }\n \n public renderSkeleton (props: T): ReactNode {\n return null;\n }\n\n public destroyParentListeners() {\n this.parentListenerDestroyers.map(fn => fn());\n }\n\n protected setParent(parent: BaseComponent<any, any, any>) {\n if (parent && this.parent !== parent) {\n this.parent = parent;\n this.parent.componentNode.add(this.componentNode);\n this.notifier.setParent(parent.notifier);\n this.parentListenerDestroyers = [\n this.parent.subscribe('forceUpdate', () => {\n this.cleanRefresh();\n }),\n this.parent.subscribe('destroy', () => {\n this.destroyParentListeners();\n })\n ];\n }\n }\n\n protected getName() {\n return this.props.name;\n }\n\n public handleLayout(event: LayoutChangeEvent ) {\n const key = this.getName && this.getName();\n if(key){\n const newLayoutPosition = {\n [key as string]: {\n y: event.nativeEvent.layout.y,\n x: event.nativeEvent.layout.x\n }\n }\n setPosition(newLayoutPosition);\n }\n }\n \n copyStyles(property: string, from: any, to: any) {\n if (!isUndefined(from[property])) {\n to[property] = from[property];\n }\n }\n\n renderFixedContainer(props: T) {\n const style = {} as ViewStyle;\n const rootStyle = {\n left: 0,\n top: 0,\n bottom: 0,\n right: 0,\n width: \"100%\",\n height: \"100%\"\n } as ViewStyle;\n this.copyStyles('left', this.styles.root, style);\n this.copyStyles('top', this.styles.root, style);\n this.copyStyles('right', this.styles.root, style);\n this.copyStyles('bottom', this.styles.root, style);\n this.copyStyles('width', this.styles.root, style);\n this.copyStyles('height', this.styles.root, style);\n this.styles = this.theme.mergeStyle(this.styles, {root: rootStyle});\n return (<FixedView style={style} theme={this.theme}>{this.addAnimation(this.renderWidget(props))}</FixedView>);\n }\n\n private addAnimation(n: ReactNode) {\n if (!this.state.animatableProps) {\n return (\n <>\n {n}\n </>\n )\n }\n return (\n <Animatable.View \n key={this.state.animationId} \n {...this.state.animatableProps}\n >\n {n}\n </Animatable.View>);\n }\n \n private setBackground() {\n const bgStyle = this.styles.root as any;\n this._background = (\n <>\n <BackgroundComponent \n image={bgStyle.backgroundImage}\n position={bgStyle.backgroundPosition}\n size={bgStyle.backgroundSize}\n repeat={bgStyle.backgroundRepeat}\n resizeMode={bgStyle.backgroundResizeMode}\n style={{borderRadius: this.styles.root.borderRadius}}>\n </BackgroundComponent>\n {this.state.highlight ? (<View onTouchStart={() => {\n this.setState({\n highlight: false\n })\n }} style={[{\n borderWidth: 2,\n overflow: 'hidden',\n backgroundColor: '#FFFF0033', \n borderColor: 'orange',\n borderStyle: 'dashed',\n zIndex: 1000,\n borderRadius: 0,\n }, StyleSheet.absoluteFill]}></View>) : null}\n </>\n );\n delete (this.styles.root as any)['backgroundImage'];\n delete (this.styles.root as any)['backgroundPosition'];\n delete (this.styles.root as any)['backgroundResizeMode'];\n delete (this.styles.root as any)['backgroundSize'];\n delete (this.styles.root as any)['backgroundRepeat'];\n }\n\n public getTestId(suffix?: string) {\n let id = this.props.id || this.props.name;\n if (this.testIdPrefix) {\n id = this.testIdPrefix + '_' + id;\n }\n if (suffix) {\n id = id + '_' + suffix;\n }\n return id;\n }\n\n public getTestProps(suffix?: string) {\n let id = this.getTestId(suffix);\n if (isScreenReaderEnabled()) {\n return {};\n }\n if (Platform.OS === 'android' || Platform.OS === 'web') {\n return {\n accessibilityLabel: id,\n testID: id\n };\n }\n return {\n accessible: false,\n testID: id\n };\n }\n\n public getStyleClassName() {\n return this.state.props.classname;\n }\n\n public getTestPropsForInput(suffix?: string) {\n return this.getTestProps(suffix || 'i');\n }\n\n public getTestPropsForAction(suffix?: string) {\n return this.getTestProps(suffix || 'a');\n }\n\n public getTestPropsForLabel(suffix?: string) {\n return this.getTestProps(suffix || 'l');\n }\n\n public getLayoutOfWidget(name: string): {x: number, y: number} | undefined {\n return getPosition(name)\n }\n\n public scrollToTop(){\n this.notify('scrollToPosition', [{\n x: 0,\n y: 0\n }]);\n }\n\n public scrollToEnd() {\n this.notify('scrollToEnd', []);\n }\n\n scrollToPosition(widgetName: string) {\n const positionY = this.getLayoutOfWidget(widgetName)?.y; // Safe access\n this.notify('scrollToPosition', [{\n x: 0,\n y: positionY,\n }]);\n }\n\n public hideSkeletonInPageContentWhenDisabledInPage = () => {\n const isPageContentWidget = this.defaultClass && this.defaultClass === 'app-page-content'\n const isCurrentParentIsContent = this.parent && this.parent.defaultClass && this.parent.defaultClass === 'app-content'\n const showSkeletonInPageContent = this.parent.state?.props?.showskeleton === false\n \n if(isPageContentWidget && isCurrentParentIsContent && showSkeletonInPageContent) {\n return false;\n }\n return undefined;\n }\n \n private getDependenciesFromContext(fn: () => ReactNode) {\n return (\n <TappableContext.Consumer>{(tappable) => {\n this.closestTappable = tappable;\n return (\n <TextIdPrefixConsumer>\n {(testIdPrefix) => {\n this.testIdPrefix = testIdPrefix || '';\n return (<AssetConsumer>\n {(loadAsset) => {\n this.loadAsset = loadAsset;\n return (<ParentContext.Consumer>\n {(parent) => {\n this.setParent(parent);\n this._showSkeleton = this.state.props.showskeleton !== false \n && (this.parent?._showSkeleton || this.state.props.showskeleton === true) && this.hideSkeletonInPageContentWhenDisabledInPage() === undefined\n return (\n <ParentContext.Provider value={this}>\n <ThemeConsumer>\n {(theme) => { \n this.theme = theme || BASE_THEME;\n return fn();\n }}\n </ThemeConsumer>\n </ParentContext.Provider>);\n }} \n </ParentContext.Consumer>);\n }}\n </AssetConsumer>);\n }}\n </TextIdPrefixConsumer>)}}\n </TappableContext.Consumer>); \n }\n \n public render(): ReactNode {\n const props = this.state.props;\n const selectedLocale = this.i18nService.getSelectedLocale();\n return this.getDependenciesFromContext(() => {\n WIDGET_LOGGER.info(() => `${this.props.name || this.constructor.name} is rendering.`);\n this._showView = this._showView || this.showView();\n if (this.state.hide \n || (!this.isVisible() && this.hideMode === HideMode.DONOT_ADD_TO_DOM)\n || !this._showView) {\n return null;\n }\n this.isFixed = false;\n const classname = this.getStyleClassName();\n this.styles = this.theme.mergeStyle(\n this.getDefaultStyles(),\n {text: this.theme.getStyle('app-' + selectedLocale)},\n {text: this.theme.getStyle(this.defaultClass + '-' + selectedLocale)},\n props.disabled ? this.theme.getStyle(this.defaultClass + '-disabled') : null,\n this.isRTL ? this.theme.getStyle(this.defaultClass + '-rtl') : null,\n classname && this.theme.getStyle(classname),\n props.showindevice && this.theme.getStyle('d-all-none ' + props.showindevice.map(d => `d-${d}-flex`).join(' ')),\n this.theme.cleanseStyleProperties(this.props.styles),\n this.theme.cleanseStyleProperties({\n root: this.styleOverrides,\n text: this.styleOverrides\n }));\n if (this.styles.root.hasOwnProperty('_background')) {\n delete this.styles.root.backgroundColor;\n }\n if (!this.isVisible()) {\n assign(this.styles, this.theme.getStyle('hidden'))\n }\n let eleToRender = (this._showSkeleton && this.renderSkeleton(props));\n if (eleToRender) {\n return eleToRender;\n }\n this.setBackground();\n this.isFixed = (this.styles.root.position as any) === 'fixed';\n if (this.isFixed) {\n this.styles.root.position = undefined;\n return this.renderFixedContainer(props);\n }\n return this.addAnimation(this.renderWidget(this.state.props)); \n });\n }\n}\n"],"mappings":"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","ignoreList":[]}