{"version":3,"sources":["components/CustomerDetails/FormView.jsx","containers/CustomerDetails/FormView.js"],"names":["FormView","React","constructor","props","_this","super","this","state","getItemId","_this$state$item","_this$props$linkTarge","item","id","linkTargetRecord","customerDetailId","find","Boolean","fetchItem","async","itemId","arguments","length","undefined","isNil","setState","selectProductVisible","_this$props$settingsT","responses","Promise","all","getItem","catch","error","_this$props$onCancel","_this$props","onCancel","call","getSettings","type","settingsType","getCustomers","value","data","fieldSettings","customers","items","showError","handleSelectProductOk","selectedProduct","productId","description","itemDescription","barcode","_this$props$settingsT2","newItem","price","saveItem","Error","updateItems","createItem","handleSubmit","createHandleSubmit","componentDidMount","render","_this$state$customers","_jsxs","_Fragment","children","_jsx","_Spin","Modal","title","t","visible","okText","onOk","okButtonProps","disabled","width","SelectProducts","onSelect","values","filterProps","privateDatabaseOnly","createLabel","createLabelFactory","createFieldDecorator","createFieldFactory","form","readOnly","isReadOnly","_Form","layout","colon","onSubmit","stopEvent","className","ValidationError","errors","validationErrors","Item","label","_Input","TextArea","rows","Select","map","each","Option","getOptionProps","displayName","InputNumber","min","currency","FormButtons","saveButtonLoading","saveAndCloseButtonLoading","create","createFormViewContainer","actions","extraDispatchToProps","dispatch","params","customerActions","getOptions","active","pageIndex","Component"],"mappings":"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","file":"static/js/24.590f5e78.chunk.js","sourcesContent":["import * as React from 'react'\r\nimport { isNil } from 'lodash'\r\nimport { Form, Input, Spin } from 'antd'\r\nimport { showError, ValidationError } from 'helpers/errors'\r\nimport { createLabelFactory, createFieldFactory, createHandleSubmit, isReadOnly } from 'helpers/formViews'\r\nimport { stopEvent } from 'helpers/events'\r\nimport { t } from 'helpers/i18n'\r\nimport Modal from 'elements/Modal'\r\nimport Select, { Option, getOptionProps } from 'elements/Select'\r\nimport SelectProducts from 'containers/Products/Select'\r\nimport InputNumber from 'elements/InputNumber'\r\nimport FormButtons from 'elements/FormButtons'\r\n\r\nclass FormView extends React.Component {\r\n state = {}\r\n\r\n constructor(props) {\r\n super(props)\r\n\r\n this.handleSubmit = createHandleSubmit(this)\r\n }\r\n\r\n componentDidMount() {\r\n this.fetchItem()\r\n }\r\n\r\n getItemId = () => [this.state.item?.id, this.props.linkTargetRecord?.customerDetailId].find(Boolean)\r\n\r\n fetchItem = async ({ itemId = this.getItemId() } = {}) => {\r\n if (isNil(itemId) && !this.props.linkTargetRecord) {\r\n this.setState({ selectProductVisible: true })\r\n } else {\r\n try {\r\n const responses = await Promise.all([\r\n this.props.getItem(itemId).catch((error) => {\r\n this.props.onCancel?.()\r\n throw error\r\n }),\r\n this.props.getSettings({ type: this.props.settingsType ?? 'customerDetails' }),\r\n this.props.getCustomers(),\r\n ])\r\n\r\n this.setState({\r\n item: responses[0].value.data,\r\n fieldSettings: responses[1].value.data.fieldSettings,\r\n customers: responses[2].value.data.items,\r\n })\r\n } catch (error) {\r\n showError({ error })\r\n }\r\n }\r\n }\r\n\r\n handleSelectProductOk = async () => {\r\n const { selectedProduct } = this.state\r\n\r\n if (selectedProduct) {\r\n const { productId, description: itemDescription, barcode } = selectedProduct\r\n\r\n this.setState({ selectProductVisible: false })\r\n\r\n try {\r\n const responses = await Promise.all([\r\n this.props.newItem({\r\n productId,\r\n itemDescription,\r\n barcode,\r\n price: 0,\r\n description: '',\r\n }),\r\n this.props.getSettings({ type: this.props.settingsType ?? 'customerDetails' }),\r\n this.props.getCustomers(),\r\n ])\r\n\r\n this.setState({\r\n item: responses[0].value.data,\r\n fieldSettings: responses[1].value.data.fieldSettings,\r\n customers: responses[2].value.data.items,\r\n })\r\n } catch (error) {\r\n showError({ error })\r\n }\r\n }\r\n }\r\n\r\n saveItem = async (item) => {\r\n if (!item) {\r\n throw new Error('item is undefined')\r\n }\r\n\r\n const saved = item.id ? await this.props.updateItems([item]) : await this.props.createItem([item])\r\n\r\n return saved\r\n }\r\n\r\n render() {\r\n const { item, fieldSettings, selectedProduct } = this.state\r\n\r\n if (!item || !fieldSettings) {\r\n return (\r\n <>\r\n