"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports["default"] = void 0;

var _react = _interopRequireDefault(require("react"));

var _classnames = _interopRequireDefault(require("classnames"));

var _FormDish = _interopRequireDefault(require("../FormDish"));

var _ErrorBar = _interopRequireDefault(require("../ErrorBar"));

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }

/*
 * @Description: file content
 * @Author: RongWei
 * @Date: 2019-12-25 19:14:20
 * @LastEditors  : RongWei
 * @LastEditTime : 2020-01-16 10:58:58
 */
var barFieldList = ['InvoiceInput', 'ExpenseListInput', 'AttachInput', 'ReceiptCrossInput', 'ApplicationDetailListInput', 'SupplierInput', 'DeductionInput', 'TableInput', 'AllocationInput', 'AccountInput', 'TravelRouteListInput', 'ProcurementDetailInput', 'PaymentPlanInput', 'ReimburseReceiptCrossInput', 'FormAssociated', 'CollectionScheduleInput', 'ApplicationExpenseListInput'];

function setFieldMaps(maps) {
  _FormDish["default"].setFieldMaps(maps);
}

function FormItem(props) {
  var field = props.field,
      form = props.form,
      children = props.children;
  var property = field.property,
      identifier = field.identifier;
  var required = property.required;
  var fieldErrors = form.getFieldError(identifier); //TODO msg逻辑没有写
  // let msg = fieldErrors && fieldErrors.length > 0 ? fieldErrors[0] : '';

  var fieldClass = Object.assign({
    'mk-form-field-split': field.type === 'SplitSpace',
    'mk-form-field': field.type !== 'SplitSpace' && !barFieldList.includes(field.type),
    'mk-form-field-bar': barFieldList.includes(field.type),
    'required': required,
    // 'field-error': msg ? true : false,
    'field-without-border': field.type === 'DescText'
  });
  fieldClass = (0, _classnames["default"])(fieldClass);
  return _react["default"].createElement("div", {
    className: fieldClass
  }, _react["default"].createElement("div", null, children), field.extra && _react["default"].createElement("div", {
    className: "mk-field-extra ft-line",
    style: {
      display: 'flex'
    }
  }, _react["default"].createElement("span", {
    className: "flex-1"
  }, field.extra)), fieldErrors ? _react["default"].createElement("div", {
    className: 'mk-form-control-line'
  }, _react["default"].createElement("div", {
    className: 'mk-msg-wrapper'
  }, _react["default"].createElement(_ErrorBar["default"], {
    msg: fieldErrors
  }))) : null);
}

var FormFood = (0, _FormDish["default"])(FormItem);
FormFood.setFieldMaps = setFieldMaps;
var _default = FormFood;
exports["default"] = _default;