b62f7b25280bbc764d5d6875974e1f97.json 42 KB
{"ast":null,"code":"import _typeof from \"@babel/runtime/helpers/typeof\";\nimport _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\n\nvar __rest = this && this.__rest || function (s, e) {\n  var t = {};\n\n  for (var p in s) {\n    if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n  }\n\n  if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n    if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n  }\n  return t;\n};\n\nimport * as React from 'react';\nimport { useContext, useRef } from 'react';\nimport isEqual from 'lodash/isEqual';\nimport classNames from 'classnames';\nimport { Field } from 'rc-field-form';\nimport FieldContext from \"rc-field-form/es/FieldContext\";\nimport { supportRef } from \"rc-util/es/ref\";\nimport omit from 'omit.js';\nimport Row from '../grid/row';\nimport { ConfigContext } from '../config-provider';\nimport { tuple } from '../_util/type';\nimport devWarning from '../_util/devWarning';\nimport FormItemLabel from './FormItemLabel';\nimport FormItemInput from './FormItemInput';\nimport { FormContext, FormItemContext } from './context';\nimport { toArray, getFieldId } from './util';\nimport { cloneElement, isValidElement } from '../_util/reactNode';\nimport useFrameState from './hooks/useFrameState';\nimport useItemRef from './hooks/useItemRef';\nvar ValidateStatuses = tuple('success', 'warning', 'error', 'validating', '');\nvar MemoInput = /*#__PURE__*/React.memo(function (_ref) {\n  var children = _ref.children;\n  return children;\n}, function (prev, next) {\n  return prev.value === next.value && prev.update === next.update;\n});\n\nfunction hasValidName(name) {\n  if (name === null) {\n    devWarning(false, 'Form.Item', '`null` is passed as `name` property');\n  }\n\n  return !(name === undefined || name === null);\n}\n\nfunction FormItem(props) {\n  var name = props.name,\n      fieldKey = props.fieldKey,\n      noStyle = props.noStyle,\n      dependencies = props.dependencies,\n      customizePrefixCls = props.prefixCls,\n      style = props.style,\n      className = props.className,\n      shouldUpdate = props.shouldUpdate,\n      hasFeedback = props.hasFeedback,\n      help = props.help,\n      rules = props.rules,\n      validateStatus = props.validateStatus,\n      children = props.children,\n      required = props.required,\n      label = props.label,\n      messageVariables = props.messageVariables,\n      _props$trigger = props.trigger,\n      trigger = _props$trigger === void 0 ? 'onChange' : _props$trigger,\n      validateTrigger = props.validateTrigger,\n      hidden = props.hidden,\n      restProps = __rest(props, [\"name\", \"fieldKey\", \"noStyle\", \"dependencies\", \"prefixCls\", \"style\", \"className\", \"shouldUpdate\", \"hasFeedback\", \"help\", \"rules\", \"validateStatus\", \"children\", \"required\", \"label\", \"messageVariables\", \"trigger\", \"validateTrigger\", \"hidden\"]);\n\n  var destroyRef = useRef(false);\n\n  var _useContext = useContext(ConfigContext),\n      getPrefixCls = _useContext.getPrefixCls;\n\n  var _useContext2 = useContext(FormContext),\n      formName = _useContext2.name,\n      requiredMark = _useContext2.requiredMark;\n\n  var _useContext3 = useContext(FormItemContext),\n      updateItemErrors = _useContext3.updateItemErrors;\n\n  var _React$useState = React.useState(!!help),\n      _React$useState2 = _slicedToArray(_React$useState, 2),\n      domErrorVisible = _React$useState2[0],\n      innerSetDomErrorVisible = _React$useState2[1];\n\n  var _useFrameState = useFrameState({}),\n      _useFrameState2 = _slicedToArray(_useFrameState, 2),\n      inlineErrors = _useFrameState2[0],\n      setInlineErrors = _useFrameState2[1];\n\n  var _useContext4 = useContext(FieldContext),\n      contextValidateTrigger = _useContext4.validateTrigger;\n\n  var mergedValidateTrigger = validateTrigger !== undefined ? validateTrigger : contextValidateTrigger;\n\n  function setDomErrorVisible(visible) {\n    if (!destroyRef.current) {\n      innerSetDomErrorVisible(visible);\n    }\n  }\n\n  var hasName = hasValidName(name); // Cache Field NamePath\n\n  var nameRef = useRef([]); // Should clean up if Field removed\n\n  React.useEffect(function () {\n    return function () {\n      destroyRef.current = true;\n      updateItemErrors(nameRef.current.join('__SPLIT__'), []);\n    };\n  }, []);\n  var prefixCls = getPrefixCls('form', customizePrefixCls); // ======================== Errors ========================\n  // Collect noStyle Field error to the top FormItem\n\n  var updateChildItemErrors = noStyle ? updateItemErrors : function (subName, subErrors) {\n    setInlineErrors(function () {\n      var prevInlineErrors = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n      if (!isEqual(prevInlineErrors[subName], subErrors)) {\n        return _extends(_extends({}, prevInlineErrors), _defineProperty({}, subName, subErrors));\n      }\n\n      return prevInlineErrors;\n    });\n  }; // ===================== Children Ref =====================\n\n  var getItemRef = useItemRef();\n\n  function renderLayout(baseChildren, fieldId, meta, isRequired) {\n    var _itemClassName;\n\n    var _a;\n\n    if (noStyle && !hidden) {\n      return baseChildren;\n    } // ======================== Errors ========================\n    // >>> collect sub errors\n\n\n    var subErrorList = [];\n    Object.keys(inlineErrors).forEach(function (subName) {\n      subErrorList = [].concat(_toConsumableArray(subErrorList), _toConsumableArray(inlineErrors[subName] || []));\n    }); // >>> merged errors\n\n    var mergedErrors;\n\n    if (help !== undefined && help !== null) {\n      mergedErrors = toArray(help);\n    } else {\n      mergedErrors = meta ? meta.errors : [];\n      mergedErrors = [].concat(_toConsumableArray(mergedErrors), _toConsumableArray(subErrorList));\n    } // ======================== Status ========================\n\n\n    var mergedValidateStatus = '';\n\n    if (validateStatus !== undefined) {\n      mergedValidateStatus = validateStatus;\n    } else if (meta === null || meta === void 0 ? void 0 : meta.validating) {\n      mergedValidateStatus = 'validating';\n    } else if (((_a = meta === null || meta === void 0 ? void 0 : meta.errors) === null || _a === void 0 ? void 0 : _a.length) || subErrorList.length) {\n      mergedValidateStatus = 'error';\n    } else if (meta === null || meta === void 0 ? void 0 : meta.touched) {\n      mergedValidateStatus = 'success';\n    }\n\n    var itemClassName = (_itemClassName = {}, _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item\"), true), _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item-with-help\"), domErrorVisible || help), _defineProperty(_itemClassName, \"\".concat(className), !!className), _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item-has-feedback\"), mergedValidateStatus && hasFeedback), _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item-has-success\"), mergedValidateStatus === 'success'), _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item-has-warning\"), mergedValidateStatus === 'warning'), _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item-has-error\"), mergedValidateStatus === 'error'), _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item-is-validating\"), mergedValidateStatus === 'validating'), _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item-hidden\"), hidden), _itemClassName); // ======================= Children =======================\n\n    return /*#__PURE__*/React.createElement(Row, _extends({\n      className: classNames(itemClassName),\n      style: style,\n      key: \"row\"\n    }, omit(restProps, ['colon', 'extra', 'getValueFromEvent', 'getValueProps', 'hasFeedback', 'help', 'htmlFor', 'id', 'initialValue', 'isListField', 'label', 'labelAlign', 'labelCol', 'normalize', 'preserve', 'required', 'tooltip', 'validateFirst', 'validateStatus', 'valuePropName', 'wrapperCol', '_internalItemRender'])), /*#__PURE__*/React.createElement(FormItemLabel, _extends({\n      htmlFor: fieldId,\n      required: isRequired,\n      requiredMark: requiredMark\n    }, props, {\n      prefixCls: prefixCls\n    })), /*#__PURE__*/React.createElement(FormItemInput, _extends({}, props, meta, {\n      errors: mergedErrors,\n      prefixCls: prefixCls,\n      status: mergedValidateStatus,\n      onDomErrorVisibleChange: setDomErrorVisible,\n      validateStatus: mergedValidateStatus\n    }), /*#__PURE__*/React.createElement(FormItemContext.Provider, {\n      value: {\n        updateItemErrors: updateChildItemErrors\n      }\n    }, baseChildren)));\n  }\n\n  var isRenderProps = typeof children === 'function'; // Record for real component render\n\n  var updateRef = useRef(0);\n  updateRef.current += 1;\n\n  if (!hasName && !isRenderProps && !dependencies) {\n    return renderLayout(children);\n  }\n\n  var variables = {};\n\n  if (typeof label === 'string') {\n    variables.label = label;\n  }\n\n  if (messageVariables) {\n    variables = _extends(_extends({}, variables), messageVariables);\n  }\n\n  return /*#__PURE__*/React.createElement(Field, _extends({}, props, {\n    messageVariables: variables,\n    trigger: trigger,\n    validateTrigger: mergedValidateTrigger,\n    onReset: function onReset() {\n      setDomErrorVisible(false);\n    }\n  }), function (control, meta, context) {\n    var errors = meta.errors;\n    var mergedName = toArray(name).length && meta ? meta.name : [];\n    var fieldId = getFieldId(mergedName, formName);\n\n    if (noStyle) {\n      nameRef.current = _toConsumableArray(mergedName);\n\n      if (fieldKey) {\n        var fieldKeys = Array.isArray(fieldKey) ? fieldKey : [fieldKey];\n        nameRef.current = [].concat(_toConsumableArray(mergedName.slice(0, -1)), _toConsumableArray(fieldKeys));\n      }\n\n      updateItemErrors(nameRef.current.join('__SPLIT__'), errors);\n    }\n\n    var isRequired = required !== undefined ? required : !!(rules && rules.some(function (rule) {\n      if (rule && _typeof(rule) === 'object' && rule.required) {\n        return true;\n      }\n\n      if (typeof rule === 'function') {\n        var ruleEntity = rule(context);\n        return ruleEntity && ruleEntity.required;\n      }\n\n      return false;\n    })); // ======================= Children =======================\n\n    var mergedControl = _extends({}, control);\n\n    var childNode = null;\n    devWarning(!(shouldUpdate && dependencies), 'Form.Item', \"`shouldUpdate` and `dependencies` shouldn't be used together. See https://ant.design/components/form/#dependencies.\");\n\n    if (Array.isArray(children) && hasName) {\n      devWarning(false, 'Form.Item', '`children` is array of render props cannot have `name`.');\n      childNode = children;\n    } else if (isRenderProps && (!(shouldUpdate || dependencies) || hasName)) {\n      devWarning(!!(shouldUpdate || dependencies), 'Form.Item', '`children` of render props only work with `shouldUpdate` or `dependencies`.');\n      devWarning(!hasName, 'Form.Item', \"Do not use `name` with `children` of render props since it's not a field.\");\n    } else if (dependencies && !isRenderProps && !hasName) {\n      devWarning(false, 'Form.Item', 'Must set `name` or use render props when `dependencies` is set.');\n    } else if (isValidElement(children)) {\n      devWarning(children.props.defaultValue === undefined, 'Form.Item', '`defaultValue` will not work on controlled Field. You should use `initialValues` of Form instead.');\n\n      var childProps = _extends(_extends({}, children.props), mergedControl);\n\n      if (!childProps.id) {\n        childProps.id = fieldId;\n      }\n\n      if (supportRef(children)) {\n        childProps.ref = getItemRef(mergedName, children);\n      } // We should keep user origin event handler\n\n\n      var triggers = new Set([].concat(_toConsumableArray(toArray(trigger)), _toConsumableArray(toArray(mergedValidateTrigger))));\n      triggers.forEach(function (eventName) {\n        childProps[eventName] = function () {\n          var _a2, _c2;\n\n          var _a, _b, _c;\n\n          for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n            args[_key] = arguments[_key];\n          }\n\n          (_a = mergedControl[eventName]) === null || _a === void 0 ? void 0 : (_a2 = _a).call.apply(_a2, [mergedControl].concat(args));\n          (_c = (_b = children.props)[eventName]) === null || _c === void 0 ? void 0 : (_c2 = _c).call.apply(_c2, [_b].concat(args));\n        };\n      });\n      childNode = /*#__PURE__*/React.createElement(MemoInput, {\n        value: mergedControl[props.valuePropName || 'value'],\n        update: updateRef.current\n      }, cloneElement(children, childProps));\n    } else if (isRenderProps && (shouldUpdate || dependencies) && !hasName) {\n      childNode = children(context);\n    } else {\n      devWarning(!mergedName.length, 'Form.Item', '`name` is only used for validate React element. If you are using Form.Item as layout display, please remove `name` instead.');\n      childNode = children;\n    }\n\n    return renderLayout(childNode, fieldId, meta, isRequired);\n  });\n}\n\nexport default FormItem;","map":{"version":3,"sources":["C:/Users/kkwan_000/Desktop/git/2017110269/minsung/node_modules/antd/es/form/FormItem.js"],"names":["_typeof","_toConsumableArray","_defineProperty","_extends","_slicedToArray","__rest","s","e","t","p","Object","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","i","length","propertyIsEnumerable","React","useContext","useRef","isEqual","classNames","Field","FieldContext","supportRef","omit","Row","ConfigContext","tuple","devWarning","FormItemLabel","FormItemInput","FormContext","FormItemContext","toArray","getFieldId","cloneElement","isValidElement","useFrameState","useItemRef","ValidateStatuses","MemoInput","memo","_ref","children","prev","next","value","update","hasValidName","name","undefined","FormItem","props","fieldKey","noStyle","dependencies","customizePrefixCls","prefixCls","style","className","shouldUpdate","hasFeedback","help","rules","validateStatus","required","label","messageVariables","_props$trigger","trigger","validateTrigger","hidden","restProps","destroyRef","_useContext","getPrefixCls","_useContext2","formName","requiredMark","_useContext3","updateItemErrors","_React$useState","useState","_React$useState2","domErrorVisible","innerSetDomErrorVisible","_useFrameState","_useFrameState2","inlineErrors","setInlineErrors","_useContext4","contextValidateTrigger","mergedValidateTrigger","setDomErrorVisible","visible","current","hasName","nameRef","useEffect","join","updateChildItemErrors","subName","subErrors","prevInlineErrors","arguments","getItemRef","renderLayout","baseChildren","fieldId","meta","isRequired","_itemClassName","_a","subErrorList","keys","forEach","concat","mergedErrors","errors","mergedValidateStatus","validating","touched","itemClassName","createElement","key","htmlFor","status","onDomErrorVisibleChange","Provider","isRenderProps","updateRef","variables","onReset","control","context","mergedName","fieldKeys","Array","isArray","slice","some","rule","ruleEntity","mergedControl","childNode","defaultValue","childProps","id","ref","triggers","Set","eventName","_a2","_c2","_b","_c","_len","args","_key","apply","valuePropName"],"mappings":"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","sourcesContent":["import _typeof from \"@babel/runtime/helpers/typeof\";\nimport _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\n\nvar __rest = this && this.__rest || function (s, e) {\n  var t = {};\n\n  for (var p in s) {\n    if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n  }\n\n  if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n    if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n  }\n  return t;\n};\n\nimport * as React from 'react';\nimport { useContext, useRef } from 'react';\nimport isEqual from 'lodash/isEqual';\nimport classNames from 'classnames';\nimport { Field } from 'rc-field-form';\nimport FieldContext from \"rc-field-form/es/FieldContext\";\nimport { supportRef } from \"rc-util/es/ref\";\nimport omit from 'omit.js';\nimport Row from '../grid/row';\nimport { ConfigContext } from '../config-provider';\nimport { tuple } from '../_util/type';\nimport devWarning from '../_util/devWarning';\nimport FormItemLabel from './FormItemLabel';\nimport FormItemInput from './FormItemInput';\nimport { FormContext, FormItemContext } from './context';\nimport { toArray, getFieldId } from './util';\nimport { cloneElement, isValidElement } from '../_util/reactNode';\nimport useFrameState from './hooks/useFrameState';\nimport useItemRef from './hooks/useItemRef';\nvar ValidateStatuses = tuple('success', 'warning', 'error', 'validating', '');\nvar MemoInput = /*#__PURE__*/React.memo(function (_ref) {\n  var children = _ref.children;\n  return children;\n}, function (prev, next) {\n  return prev.value === next.value && prev.update === next.update;\n});\n\nfunction hasValidName(name) {\n  if (name === null) {\n    devWarning(false, 'Form.Item', '`null` is passed as `name` property');\n  }\n\n  return !(name === undefined || name === null);\n}\n\nfunction FormItem(props) {\n  var name = props.name,\n      fieldKey = props.fieldKey,\n      noStyle = props.noStyle,\n      dependencies = props.dependencies,\n      customizePrefixCls = props.prefixCls,\n      style = props.style,\n      className = props.className,\n      shouldUpdate = props.shouldUpdate,\n      hasFeedback = props.hasFeedback,\n      help = props.help,\n      rules = props.rules,\n      validateStatus = props.validateStatus,\n      children = props.children,\n      required = props.required,\n      label = props.label,\n      messageVariables = props.messageVariables,\n      _props$trigger = props.trigger,\n      trigger = _props$trigger === void 0 ? 'onChange' : _props$trigger,\n      validateTrigger = props.validateTrigger,\n      hidden = props.hidden,\n      restProps = __rest(props, [\"name\", \"fieldKey\", \"noStyle\", \"dependencies\", \"prefixCls\", \"style\", \"className\", \"shouldUpdate\", \"hasFeedback\", \"help\", \"rules\", \"validateStatus\", \"children\", \"required\", \"label\", \"messageVariables\", \"trigger\", \"validateTrigger\", \"hidden\"]);\n\n  var destroyRef = useRef(false);\n\n  var _useContext = useContext(ConfigContext),\n      getPrefixCls = _useContext.getPrefixCls;\n\n  var _useContext2 = useContext(FormContext),\n      formName = _useContext2.name,\n      requiredMark = _useContext2.requiredMark;\n\n  var _useContext3 = useContext(FormItemContext),\n      updateItemErrors = _useContext3.updateItemErrors;\n\n  var _React$useState = React.useState(!!help),\n      _React$useState2 = _slicedToArray(_React$useState, 2),\n      domErrorVisible = _React$useState2[0],\n      innerSetDomErrorVisible = _React$useState2[1];\n\n  var _useFrameState = useFrameState({}),\n      _useFrameState2 = _slicedToArray(_useFrameState, 2),\n      inlineErrors = _useFrameState2[0],\n      setInlineErrors = _useFrameState2[1];\n\n  var _useContext4 = useContext(FieldContext),\n      contextValidateTrigger = _useContext4.validateTrigger;\n\n  var mergedValidateTrigger = validateTrigger !== undefined ? validateTrigger : contextValidateTrigger;\n\n  function setDomErrorVisible(visible) {\n    if (!destroyRef.current) {\n      innerSetDomErrorVisible(visible);\n    }\n  }\n\n  var hasName = hasValidName(name); // Cache Field NamePath\n\n  var nameRef = useRef([]); // Should clean up if Field removed\n\n  React.useEffect(function () {\n    return function () {\n      destroyRef.current = true;\n      updateItemErrors(nameRef.current.join('__SPLIT__'), []);\n    };\n  }, []);\n  var prefixCls = getPrefixCls('form', customizePrefixCls); // ======================== Errors ========================\n  // Collect noStyle Field error to the top FormItem\n\n  var updateChildItemErrors = noStyle ? updateItemErrors : function (subName, subErrors) {\n    setInlineErrors(function () {\n      var prevInlineErrors = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n      if (!isEqual(prevInlineErrors[subName], subErrors)) {\n        return _extends(_extends({}, prevInlineErrors), _defineProperty({}, subName, subErrors));\n      }\n\n      return prevInlineErrors;\n    });\n  }; // ===================== Children Ref =====================\n\n  var getItemRef = useItemRef();\n\n  function renderLayout(baseChildren, fieldId, meta, isRequired) {\n    var _itemClassName;\n\n    var _a;\n\n    if (noStyle && !hidden) {\n      return baseChildren;\n    } // ======================== Errors ========================\n    // >>> collect sub errors\n\n\n    var subErrorList = [];\n    Object.keys(inlineErrors).forEach(function (subName) {\n      subErrorList = [].concat(_toConsumableArray(subErrorList), _toConsumableArray(inlineErrors[subName] || []));\n    }); // >>> merged errors\n\n    var mergedErrors;\n\n    if (help !== undefined && help !== null) {\n      mergedErrors = toArray(help);\n    } else {\n      mergedErrors = meta ? meta.errors : [];\n      mergedErrors = [].concat(_toConsumableArray(mergedErrors), _toConsumableArray(subErrorList));\n    } // ======================== Status ========================\n\n\n    var mergedValidateStatus = '';\n\n    if (validateStatus !== undefined) {\n      mergedValidateStatus = validateStatus;\n    } else if (meta === null || meta === void 0 ? void 0 : meta.validating) {\n      mergedValidateStatus = 'validating';\n    } else if (((_a = meta === null || meta === void 0 ? void 0 : meta.errors) === null || _a === void 0 ? void 0 : _a.length) || subErrorList.length) {\n      mergedValidateStatus = 'error';\n    } else if (meta === null || meta === void 0 ? void 0 : meta.touched) {\n      mergedValidateStatus = 'success';\n    }\n\n    var itemClassName = (_itemClassName = {}, _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item\"), true), _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item-with-help\"), domErrorVisible || help), _defineProperty(_itemClassName, \"\".concat(className), !!className), _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item-has-feedback\"), mergedValidateStatus && hasFeedback), _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item-has-success\"), mergedValidateStatus === 'success'), _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item-has-warning\"), mergedValidateStatus === 'warning'), _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item-has-error\"), mergedValidateStatus === 'error'), _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item-is-validating\"), mergedValidateStatus === 'validating'), _defineProperty(_itemClassName, \"\".concat(prefixCls, \"-item-hidden\"), hidden), _itemClassName); // ======================= Children =======================\n\n    return /*#__PURE__*/React.createElement(Row, _extends({\n      className: classNames(itemClassName),\n      style: style,\n      key: \"row\"\n    }, omit(restProps, ['colon', 'extra', 'getValueFromEvent', 'getValueProps', 'hasFeedback', 'help', 'htmlFor', 'id', 'initialValue', 'isListField', 'label', 'labelAlign', 'labelCol', 'normalize', 'preserve', 'required', 'tooltip', 'validateFirst', 'validateStatus', 'valuePropName', 'wrapperCol', '_internalItemRender'])), /*#__PURE__*/React.createElement(FormItemLabel, _extends({\n      htmlFor: fieldId,\n      required: isRequired,\n      requiredMark: requiredMark\n    }, props, {\n      prefixCls: prefixCls\n    })), /*#__PURE__*/React.createElement(FormItemInput, _extends({}, props, meta, {\n      errors: mergedErrors,\n      prefixCls: prefixCls,\n      status: mergedValidateStatus,\n      onDomErrorVisibleChange: setDomErrorVisible,\n      validateStatus: mergedValidateStatus\n    }), /*#__PURE__*/React.createElement(FormItemContext.Provider, {\n      value: {\n        updateItemErrors: updateChildItemErrors\n      }\n    }, baseChildren)));\n  }\n\n  var isRenderProps = typeof children === 'function'; // Record for real component render\n\n  var updateRef = useRef(0);\n  updateRef.current += 1;\n\n  if (!hasName && !isRenderProps && !dependencies) {\n    return renderLayout(children);\n  }\n\n  var variables = {};\n\n  if (typeof label === 'string') {\n    variables.label = label;\n  }\n\n  if (messageVariables) {\n    variables = _extends(_extends({}, variables), messageVariables);\n  }\n\n  return /*#__PURE__*/React.createElement(Field, _extends({}, props, {\n    messageVariables: variables,\n    trigger: trigger,\n    validateTrigger: mergedValidateTrigger,\n    onReset: function onReset() {\n      setDomErrorVisible(false);\n    }\n  }), function (control, meta, context) {\n    var errors = meta.errors;\n    var mergedName = toArray(name).length && meta ? meta.name : [];\n    var fieldId = getFieldId(mergedName, formName);\n\n    if (noStyle) {\n      nameRef.current = _toConsumableArray(mergedName);\n\n      if (fieldKey) {\n        var fieldKeys = Array.isArray(fieldKey) ? fieldKey : [fieldKey];\n        nameRef.current = [].concat(_toConsumableArray(mergedName.slice(0, -1)), _toConsumableArray(fieldKeys));\n      }\n\n      updateItemErrors(nameRef.current.join('__SPLIT__'), errors);\n    }\n\n    var isRequired = required !== undefined ? required : !!(rules && rules.some(function (rule) {\n      if (rule && _typeof(rule) === 'object' && rule.required) {\n        return true;\n      }\n\n      if (typeof rule === 'function') {\n        var ruleEntity = rule(context);\n        return ruleEntity && ruleEntity.required;\n      }\n\n      return false;\n    })); // ======================= Children =======================\n\n    var mergedControl = _extends({}, control);\n\n    var childNode = null;\n    devWarning(!(shouldUpdate && dependencies), 'Form.Item', \"`shouldUpdate` and `dependencies` shouldn't be used together. See https://ant.design/components/form/#dependencies.\");\n\n    if (Array.isArray(children) && hasName) {\n      devWarning(false, 'Form.Item', '`children` is array of render props cannot have `name`.');\n      childNode = children;\n    } else if (isRenderProps && (!(shouldUpdate || dependencies) || hasName)) {\n      devWarning(!!(shouldUpdate || dependencies), 'Form.Item', '`children` of render props only work with `shouldUpdate` or `dependencies`.');\n      devWarning(!hasName, 'Form.Item', \"Do not use `name` with `children` of render props since it's not a field.\");\n    } else if (dependencies && !isRenderProps && !hasName) {\n      devWarning(false, 'Form.Item', 'Must set `name` or use render props when `dependencies` is set.');\n    } else if (isValidElement(children)) {\n      devWarning(children.props.defaultValue === undefined, 'Form.Item', '`defaultValue` will not work on controlled Field. You should use `initialValues` of Form instead.');\n\n      var childProps = _extends(_extends({}, children.props), mergedControl);\n\n      if (!childProps.id) {\n        childProps.id = fieldId;\n      }\n\n      if (supportRef(children)) {\n        childProps.ref = getItemRef(mergedName, children);\n      } // We should keep user origin event handler\n\n\n      var triggers = new Set([].concat(_toConsumableArray(toArray(trigger)), _toConsumableArray(toArray(mergedValidateTrigger))));\n      triggers.forEach(function (eventName) {\n        childProps[eventName] = function () {\n          var _a2, _c2;\n\n          var _a, _b, _c;\n\n          for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n            args[_key] = arguments[_key];\n          }\n\n          (_a = mergedControl[eventName]) === null || _a === void 0 ? void 0 : (_a2 = _a).call.apply(_a2, [mergedControl].concat(args));\n          (_c = (_b = children.props)[eventName]) === null || _c === void 0 ? void 0 : (_c2 = _c).call.apply(_c2, [_b].concat(args));\n        };\n      });\n      childNode = /*#__PURE__*/React.createElement(MemoInput, {\n        value: mergedControl[props.valuePropName || 'value'],\n        update: updateRef.current\n      }, cloneElement(children, childProps));\n    } else if (isRenderProps && (shouldUpdate || dependencies) && !hasName) {\n      childNode = children(context);\n    } else {\n      devWarning(!mergedName.length, 'Form.Item', '`name` is only used for validate React element. If you are using Form.Item as layout display, please remove `name` instead.');\n      childNode = children;\n    }\n\n    return renderLayout(childNode, fieldId, meta, isRequired);\n  });\n}\n\nexport default FormItem;"]},"metadata":{},"sourceType":"module"}