{"version":3,"sources":["components/CustomMappings/FormView.jsx","containers/CustomMappings/FormView.js"],"names":["FormView","React","constructor","props","_this","super","this","state","getItemId","_this$state$item","_this$props$linkTarge","item","id","linkTargetRecord","customMappingId","find","Boolean","fetchItem","async","itemId","arguments","length","undefined","responses","Promise","all","getItem","catch","error","_this$props$onCancel","_this$props","onCancel","call","resourceNotFound","newItem","costCenterTagMapping","getSettings","type","settingsType","setState","value","data","fieldSettings","showError","handleSubmit","createHandleSubmit","componentDidMount","render","_jsx","_Spin","createLabel","createLabelFactory","createFieldDecorator","createFieldFactory","form","readOnly","isReadOnly","_jsxs","_Form","layout","colon","onSubmit","stopEvent","children","className","ValidationError","errors","validationErrors","Item","label","_Input","autoFocus","Select","placeholder","t","Option","Object","entries","tagTypes","map","_ref","key","HARD_SPACE","valuePropName","Checkbox","FormButtons","saveButtonLoading","saveAndCloseButtonLoading","create","createFormViewContainer","actions","Component"],"mappings":"8SAYA,MAAMA,UAAiBC,YAGrBC,YAAYC,GAAQ,IAADC,EACjBC,MAAMF,GAAMC,EAAAE,KAAA,KAHdC,MAAQ,CAAC,EAAC,KAYVC,UAAY,SAAAC,EAAAC,EAAA,MAAM,CAAgB,QAAhBD,EAACH,KAAKC,MAAMI,YAAI,IAAAF,OAAA,EAAfA,EAAiBG,GAA+B,QAA7BF,EAAEJ,KAAKH,MAAMU,wBAAgB,IAAAH,OAAA,EAA3BA,EAA6BI,iBAAiBC,KAAKC,QAAQ,OAEnGC,UAAYC,iBAA+C,IAAxC,OAAEC,EAASf,EAAKI,aAAaY,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,CAAC,EAClD,IACE,MAAMG,QAAkBC,QAAQC,IAAI,CAClCN,EACIf,EAAKD,MAAMuB,QAAQP,GAAQQ,OAAOC,IAAW,IAADC,EAAAC,EAE1C,MADmB,QAAnBD,GAAAC,EAAA1B,EAAKD,OAAM4B,gBAAQ,IAAAF,GAAnBA,EAAAG,KAAAF,GACMF,CAAK,IAEZxB,EAAKD,MAAMU,iBAEVoB,YAAiB7B,GADjBA,EAAKD,MAAM+B,QAAQ,CAAEC,sBAAuB,IAElD/B,EAAKD,MAAMiC,YAAY,CAAEC,KAAMjC,EAAKD,MAAMmC,iBAG5ClC,EAAKmC,SAAS,CACZ5B,KAAMY,EAAU,GAAGiB,MAAMC,KACzBC,cAAenB,EAAU,GAAGiB,MAAMC,KAAKC,eAE3C,CAAE,MAAOd,GACPe,YAAU,CAAEf,SACd,CACF,EA9BEtB,KAAKsC,aAAeC,YAAmBvC,KACzC,CAEAwC,oBACExC,KAAKW,WACP,CA2BA8B,SACE,MAAM,KAAEpC,EAAI,cAAE+B,GAAkBpC,KAAKC,MAErC,IAAKI,IAAS+B,EACZ,OAAOM,cAAAC,IAAA,IAGT,MAAMC,EAAcC,YAAmBT,GACjCU,EAAuBC,YAAmB/C,KAAKH,MAAMmD,KAAM3C,EAAM+B,GACjEa,EAAWC,YAAWlD,MAE5B,OACEmD,eAAAC,IAAA,CAAMC,OAAO,WAAWC,OAAO,EAAOC,SAAUN,EAAWO,IAAYxD,KAAKsC,aAAamB,SAAA,CACvFN,eAAA,OAAKO,UAAU,uBAAsBD,SAAA,CACnCf,cAACiB,IAAe,CAACC,OAAQ5D,KAAKC,MAAM4D,mBACpCnB,cAAAU,IAAMU,KAAI,CAACC,MAAOnB,EAAY,UAAUa,SACrCX,EAAqB,SAArBA,CAA+BJ,cAAAsB,IAAA,CAAOC,WAAS,OAElDvB,cAAAU,IAAMU,KAAI,CAACC,MAAOnB,EAAY,wBAAwBa,SACnDX,EAAqB,uBAArBA,CACCK,eAACe,IAAM,CAACC,YAAaC,YAAE,QAAQX,SAAA,CAC7Bf,cAAC2B,IAAM,CAACnC,OAAQ,EAAEuB,SAAEW,YAAE,UACrBE,OAAOC,QAAQC,KAAUC,KAAIC,IAAA,IAAEC,EAAKzC,GAAMwC,EAAA,OACzChC,cAAC2B,IAAM,CAAWnC,MAAOyC,EAAIlB,SAC1BW,YAAElC,IADQyC,EAEJ,UAKjBjC,cAAAU,IAAMU,KAAI,CAACC,MAAOa,IAAWnB,SAC1BX,EAAqB,0BAA2B,CAAE+B,cAAe,WAAjE/B,CACCJ,cAACoC,IAAQ,CAAArB,SAAEb,EAAY,mCAI7BF,cAAA,OAAKgB,UAAU,yBAAwBD,SACrCf,cAACqC,IAAW,CACV9B,SAAUA,EACVxB,SAAUzB,KAAKH,MAAM4B,SACrB8B,SAAUvD,KAAKsC,aACf0C,kBAAmBhF,KAAKC,MAAM+E,kBAC9BC,0BAA2BjF,KAAKC,MAAMgF,gCAKhD,EAGa7B,UAAK8B,QAAL9B,CAAc1D,GChGdyF,sBAAwB,CAAEC,aAA1BD,CAAqCE,E","file":"static/js/23.6b6cd5de.chunk.js","sourcesContent":["import * as React from 'react'\r\nimport { Form, Input, Spin } from 'antd'\r\nimport { showError, resourceNotFound, ValidationError } from 'helpers/errors'\r\nimport { createLabelFactory, createFieldFactory, createHandleSubmit, isReadOnly } from 'helpers/formViews'\r\nimport { HARD_SPACE } from 'helpers/utils'\r\nimport tagTypes from 'options/tagTypes'\r\nimport { t } from 'helpers/i18n'\r\nimport { stopEvent } from 'helpers/events'\r\nimport Select, { Option } from 'elements/Select'\r\nimport Checkbox from 'elements/Checkbox'\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?.customMappingId].find(Boolean)\r\n\r\n  fetchItem = async ({ itemId = this.getItemId() } = {}) => {\r\n    try {\r\n      const responses = await Promise.all([\r\n        itemId\r\n          ? this.props.getItem(itemId).catch((error) => {\r\n              this.props.onCancel?.()\r\n              throw error\r\n            })\r\n          : !this.props.linkTargetRecord\r\n            ? this.props.newItem({ costCenterTagMapping: -2 })\r\n            : resourceNotFound(this),\r\n        this.props.getSettings({ type: this.props.settingsType }),\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      })\r\n    } catch (error) {\r\n      showError({ error })\r\n    }\r\n  }\r\n\r\n  render() {\r\n    const { item, fieldSettings } = this.state\r\n\r\n    if (!item || !fieldSettings) {\r\n      return <Spin />\r\n    }\r\n\r\n    const createLabel = createLabelFactory(fieldSettings)\r\n    const createFieldDecorator = createFieldFactory(this.props.form, item, fieldSettings)\r\n    const readOnly = isReadOnly(this)\r\n\r\n    return (\r\n      <Form layout=\"vertical\" colon={false} onSubmit={readOnly ? stopEvent : this.handleSubmit}>\r\n        <div className=\"form-items-container\">\r\n          <ValidationError errors={this.state.validationErrors} />\r\n          <Form.Item label={createLabel('userId')}>\r\n            {createFieldDecorator('userId')(<Input autoFocus />)}\r\n          </Form.Item>\r\n          <Form.Item label={createLabel('costCenterTagMapping')}>\r\n            {createFieldDecorator('costCenterTagMapping')(\r\n              <Select placeholder={t('none')}>\r\n                <Option value={-2}>{t('none')}</Option>\r\n                {Object.entries(tagTypes).map(([key, value]) => (\r\n                  <Option key={key} value={key}>\r\n                    {t(value)}\r\n                  </Option>\r\n                ))}\r\n              </Select>\r\n            )}\r\n          </Form.Item>\r\n          <Form.Item label={HARD_SPACE}>\r\n            {createFieldDecorator('updateOnHandFromVending', { valuePropName: 'checked' })(\r\n              <Checkbox>{createLabel('updateOnHandFromVending')}</Checkbox>\r\n            )}\r\n          </Form.Item>\r\n        </div>\r\n        <div className=\"form-buttons-container\">\r\n          <FormButtons\r\n            readOnly={readOnly}\r\n            onCancel={this.props.onCancel}\r\n            onSubmit={this.handleSubmit}\r\n            saveButtonLoading={this.state.saveButtonLoading}\r\n            saveAndCloseButtonLoading={this.state.saveAndCloseButtonLoading}\r\n          />\r\n        </div>\r\n      </Form>\r\n    )\r\n  }\r\n}\r\n\r\nexport default Form.create()(FormView)\r\n","import actions from 'actions/customMappings'\r\nimport { createFormViewContainer } from 'factories/FormView'\r\nimport Component from 'components/CustomMappings/FormView'\r\n\r\nexport default createFormViewContainer({ actions })(Component)\r\n"],"sourceRoot":""}