{"version":3,"file":"form-item.mjs","sources":["../../node_modules/lodash/assignInWith.js","../../node_modules/lodash/isError.js","../../node_modules/lodash/attempt.js","../../node_modules/lodash/_baseValues.js","../../node_modules/lodash/_customDefaultsAssignIn.js","../../node_modules/lodash/_escapeStringChar.js","../../node_modules/lodash/_reInterpolate.js","../../node_modules/lodash/_escapeHtmlChar.js","../../node_modules/lodash/escape.js","../../node_modules/lodash/_reEscape.js","../../node_modules/lodash/_reEvaluate.js","../../node_modules/lodash/templateSettings.js","../../node_modules/lodash/template.js","../../src/form/form-item.tsx"],"sourcesContent":["var copyObject = require('./_copyObject'),\n    createAssigner = require('./_createAssigner'),\n    keysIn = require('./keysIn');\n\n/**\n * This method is like `_.assignIn` except that it accepts `customizer`\n * which is invoked to produce the assigned values. If `customizer` returns\n * `undefined`, assignment is handled by the method instead. The `customizer`\n * is invoked with five arguments: (objValue, srcValue, key, object, source).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias extendWith\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @see _.assignWith\n * @example\n *\n * function customizer(objValue, srcValue) {\n *   return _.isUndefined(objValue) ? srcValue : objValue;\n * }\n *\n * var defaults = _.partialRight(_.assignInWith, customizer);\n *\n * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\nvar assignInWith = createAssigner(function(object, source, srcIndex, customizer) {\n  copyObject(source, keysIn(source), object, customizer);\n});\n\nmodule.exports = assignInWith;\n","var baseGetTag = require('./_baseGetTag'),\n    isObjectLike = require('./isObjectLike'),\n    isPlainObject = require('./isPlainObject');\n\n/** `Object#toString` result references. */\nvar domExcTag = '[object DOMException]',\n    errorTag = '[object Error]';\n\n/**\n * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`,\n * `SyntaxError`, `TypeError`, or `URIError` object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an error object, else `false`.\n * @example\n *\n * _.isError(new Error);\n * // => true\n *\n * _.isError(Error);\n * // => false\n */\nfunction isError(value) {\n  if (!isObjectLike(value)) {\n    return false;\n  }\n  var tag = baseGetTag(value);\n  return tag == errorTag || tag == domExcTag ||\n    (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value));\n}\n\nmodule.exports = isError;\n","var apply = require('./_apply'),\n    baseRest = require('./_baseRest'),\n    isError = require('./isError');\n\n/**\n * Attempts to invoke `func`, returning either the result or the caught error\n * object. Any additional arguments are provided to `func` when it's invoked.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Util\n * @param {Function} func The function to attempt.\n * @param {...*} [args] The arguments to invoke `func` with.\n * @returns {*} Returns the `func` result or error object.\n * @example\n *\n * // Avoid throwing errors for invalid selectors.\n * var elements = _.attempt(function(selector) {\n *   return document.querySelectorAll(selector);\n * }, '>_>');\n *\n * if (_.isError(elements)) {\n *   elements = [];\n * }\n */\nvar attempt = baseRest(function(func, args) {\n  try {\n    return apply(func, undefined, args);\n  } catch (e) {\n    return isError(e) ? e : new Error(e);\n  }\n});\n\nmodule.exports = attempt;\n","var arrayMap = require('./_arrayMap');\n\n/**\n * The base implementation of `_.values` and `_.valuesIn` which creates an\n * array of `object` property values corresponding to the property names\n * of `props`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} props The property names to get values for.\n * @returns {Object} Returns the array of property values.\n */\nfunction baseValues(object, props) {\n  return arrayMap(props, function(key) {\n    return object[key];\n  });\n}\n\nmodule.exports = baseValues;\n","var eq = require('./eq');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used by `_.defaults` to customize its `_.assignIn` use to assign properties\n * of source objects to the destination object for all destination properties\n * that resolve to `undefined`.\n *\n * @private\n * @param {*} objValue The destination value.\n * @param {*} srcValue The source value.\n * @param {string} key The key of the property to assign.\n * @param {Object} object The parent object of `objValue`.\n * @returns {*} Returns the value to assign.\n */\nfunction customDefaultsAssignIn(objValue, srcValue, key, object) {\n  if (objValue === undefined ||\n      (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n    return srcValue;\n  }\n  return objValue;\n}\n\nmodule.exports = customDefaultsAssignIn;\n","/** Used to escape characters for inclusion in compiled string literals. */\nvar stringEscapes = {\n  '\\\\': '\\\\',\n  \"'\": \"'\",\n  '\\n': 'n',\n  '\\r': 'r',\n  '\\u2028': 'u2028',\n  '\\u2029': 'u2029'\n};\n\n/**\n * Used by `_.template` to escape characters for inclusion in compiled string literals.\n *\n * @private\n * @param {string} chr The matched character to escape.\n * @returns {string} Returns the escaped character.\n */\nfunction escapeStringChar(chr) {\n  return '\\\\' + stringEscapes[chr];\n}\n\nmodule.exports = escapeStringChar;\n","/** Used to match template delimiters. */\nvar reInterpolate = /<%=([\\s\\S]+?)%>/g;\n\nmodule.exports = reInterpolate;\n","var basePropertyOf = require('./_basePropertyOf');\n\n/** Used to map characters to HTML entities. */\nvar htmlEscapes = {\n  '&': '&amp;',\n  '<': '&lt;',\n  '>': '&gt;',\n  '\"': '&quot;',\n  \"'\": '&#39;'\n};\n\n/**\n * Used by `_.escape` to convert characters to HTML entities.\n *\n * @private\n * @param {string} chr The matched character to escape.\n * @returns {string} Returns the escaped character.\n */\nvar escapeHtmlChar = basePropertyOf(htmlEscapes);\n\nmodule.exports = escapeHtmlChar;\n","var escapeHtmlChar = require('./_escapeHtmlChar'),\n    toString = require('./toString');\n\n/** Used to match HTML entities and HTML characters. */\nvar reUnescapedHtml = /[&<>\"']/g,\n    reHasUnescapedHtml = RegExp(reUnescapedHtml.source);\n\n/**\n * Converts the characters \"&\", \"<\", \">\", '\"', and \"'\" in `string` to their\n * corresponding HTML entities.\n *\n * **Note:** No other characters are escaped. To escape additional\n * characters use a third-party library like [_he_](https://mths.be/he).\n *\n * Though the \">\" character is escaped for symmetry, characters like\n * \">\" and \"/\" don't need escaping in HTML and have no special meaning\n * unless they're part of a tag or unquoted attribute value. See\n * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands)\n * (under \"semi-related fun fact\") for more details.\n *\n * When working with HTML you should always\n * [quote attribute values](http://wonko.com/post/html-escaping) to reduce\n * XSS vectors.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category String\n * @param {string} [string=''] The string to escape.\n * @returns {string} Returns the escaped string.\n * @example\n *\n * _.escape('fred, barney, & pebbles');\n * // => 'fred, barney, &amp; pebbles'\n */\nfunction escape(string) {\n  string = toString(string);\n  return (string && reHasUnescapedHtml.test(string))\n    ? string.replace(reUnescapedHtml, escapeHtmlChar)\n    : string;\n}\n\nmodule.exports = escape;\n","/** Used to match template delimiters. */\nvar reEscape = /<%-([\\s\\S]+?)%>/g;\n\nmodule.exports = reEscape;\n","/** Used to match template delimiters. */\nvar reEvaluate = /<%([\\s\\S]+?)%>/g;\n\nmodule.exports = reEvaluate;\n","var escape = require('./escape'),\n    reEscape = require('./_reEscape'),\n    reEvaluate = require('./_reEvaluate'),\n    reInterpolate = require('./_reInterpolate');\n\n/**\n * By default, the template delimiters used by lodash are like those in\n * embedded Ruby (ERB) as well as ES2015 template strings. Change the\n * following template settings to use alternative delimiters.\n *\n * @static\n * @memberOf _\n * @type {Object}\n */\nvar templateSettings = {\n\n  /**\n   * Used to detect `data` property values to be HTML-escaped.\n   *\n   * @memberOf _.templateSettings\n   * @type {RegExp}\n   */\n  'escape': reEscape,\n\n  /**\n   * Used to detect code to be evaluated.\n   *\n   * @memberOf _.templateSettings\n   * @type {RegExp}\n   */\n  'evaluate': reEvaluate,\n\n  /**\n   * Used to detect `data` property values to inject.\n   *\n   * @memberOf _.templateSettings\n   * @type {RegExp}\n   */\n  'interpolate': reInterpolate,\n\n  /**\n   * Used to reference the data object in the template text.\n   *\n   * @memberOf _.templateSettings\n   * @type {string}\n   */\n  'variable': '',\n\n  /**\n   * Used to import variables into the compiled template.\n   *\n   * @memberOf _.templateSettings\n   * @type {Object}\n   */\n  'imports': {\n\n    /**\n     * A reference to the `lodash` function.\n     *\n     * @memberOf _.templateSettings.imports\n     * @type {Function}\n     */\n    '_': { 'escape': escape }\n  }\n};\n\nmodule.exports = templateSettings;\n","var assignInWith = require('./assignInWith'),\n    attempt = require('./attempt'),\n    baseValues = require('./_baseValues'),\n    customDefaultsAssignIn = require('./_customDefaultsAssignIn'),\n    escapeStringChar = require('./_escapeStringChar'),\n    isError = require('./isError'),\n    isIterateeCall = require('./_isIterateeCall'),\n    keys = require('./keys'),\n    reInterpolate = require('./_reInterpolate'),\n    templateSettings = require('./templateSettings'),\n    toString = require('./toString');\n\n/** Error message constants. */\nvar INVALID_TEMPL_VAR_ERROR_TEXT = 'Invalid `variable` option passed into `_.template`';\n\n/** Used to match empty string literals in compiled template source. */\nvar reEmptyStringLeading = /\\b__p \\+= '';/g,\n    reEmptyStringMiddle = /\\b(__p \\+=) '' \\+/g,\n    reEmptyStringTrailing = /(__e\\(.*?\\)|\\b__t\\)) \\+\\n'';/g;\n\n/**\n * Used to validate the `validate` option in `_.template` variable.\n *\n * Forbids characters which could potentially change the meaning of the function argument definition:\n * - \"(),\" (modification of function parameters)\n * - \"=\" (default value)\n * - \"[]{}\" (destructuring of function parameters)\n * - \"/\" (beginning of a comment)\n * - whitespace\n */\nvar reForbiddenIdentifierChars = /[()=,{}\\[\\]\\/\\s]/;\n\n/**\n * Used to match\n * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components).\n */\nvar reEsTemplate = /\\$\\{([^\\\\}]*(?:\\\\.[^\\\\}]*)*)\\}/g;\n\n/** Used to ensure capturing order of template delimiters. */\nvar reNoMatch = /($^)/;\n\n/** Used to match unescaped characters in compiled string literals. */\nvar reUnescapedString = /['\\n\\r\\u2028\\u2029\\\\]/g;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates a compiled template function that can interpolate data properties\n * in \"interpolate\" delimiters, HTML-escape interpolated data properties in\n * \"escape\" delimiters, and execute JavaScript in \"evaluate\" delimiters. Data\n * properties may be accessed as free variables in the template. If a setting\n * object is given, it takes precedence over `_.templateSettings` values.\n *\n * **Note:** In the development build `_.template` utilizes\n * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)\n * for easier debugging.\n *\n * For more information on precompiling templates see\n * [lodash's custom builds documentation](https://lodash.com/custom-builds).\n *\n * For more information on Chrome extension sandboxes see\n * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval).\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category String\n * @param {string} [string=''] The template string.\n * @param {Object} [options={}] The options object.\n * @param {RegExp} [options.escape=_.templateSettings.escape]\n *  The HTML \"escape\" delimiter.\n * @param {RegExp} [options.evaluate=_.templateSettings.evaluate]\n *  The \"evaluate\" delimiter.\n * @param {Object} [options.imports=_.templateSettings.imports]\n *  An object to import into the template as free variables.\n * @param {RegExp} [options.interpolate=_.templateSettings.interpolate]\n *  The \"interpolate\" delimiter.\n * @param {string} [options.sourceURL='templateSources[n]']\n *  The sourceURL of the compiled template.\n * @param {string} [options.variable='obj']\n *  The data object variable name.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the compiled template function.\n * @example\n *\n * // Use the \"interpolate\" delimiter to create a compiled template.\n * var compiled = _.template('hello <%= user %>!');\n * compiled({ 'user': 'fred' });\n * // => 'hello fred!'\n *\n * // Use the HTML \"escape\" delimiter to escape data property values.\n * var compiled = _.template('<b><%- value %></b>');\n * compiled({ 'value': '<script>' });\n * // => '<b>&lt;script&gt;</b>'\n *\n * // Use the \"evaluate\" delimiter to execute JavaScript and generate HTML.\n * var compiled = _.template('<% _.forEach(users, function(user) { %><li><%- user %></li><% }); %>');\n * compiled({ 'users': ['fred', 'barney'] });\n * // => '<li>fred</li><li>barney</li>'\n *\n * // Use the internal `print` function in \"evaluate\" delimiters.\n * var compiled = _.template('<% print(\"hello \" + user); %>!');\n * compiled({ 'user': 'barney' });\n * // => 'hello barney!'\n *\n * // Use the ES template literal delimiter as an \"interpolate\" delimiter.\n * // Disable support by replacing the \"interpolate\" delimiter.\n * var compiled = _.template('hello ${ user }!');\n * compiled({ 'user': 'pebbles' });\n * // => 'hello pebbles!'\n *\n * // Use backslashes to treat delimiters as plain text.\n * var compiled = _.template('<%= \"\\\\<%- value %\\\\>\" %>');\n * compiled({ 'value': 'ignored' });\n * // => '<%- value %>'\n *\n * // Use the `imports` option to import `jQuery` as `jq`.\n * var text = '<% jq.each(users, function(user) { %><li><%- user %></li><% }); %>';\n * var compiled = _.template(text, { 'imports': { 'jq': jQuery } });\n * compiled({ 'users': ['fred', 'barney'] });\n * // => '<li>fred</li><li>barney</li>'\n *\n * // Use the `sourceURL` option to specify a custom sourceURL for the template.\n * var compiled = _.template('hello <%= user %>!', { 'sourceURL': '/basic/greeting.jst' });\n * compiled(data);\n * // => Find the source of \"greeting.jst\" under the Sources tab or Resources panel of the web inspector.\n *\n * // Use the `variable` option to ensure a with-statement isn't used in the compiled template.\n * var compiled = _.template('hi <%= data.user %>!', { 'variable': 'data' });\n * compiled.source;\n * // => function(data) {\n * //   var __t, __p = '';\n * //   __p += 'hi ' + ((__t = ( data.user )) == null ? '' : __t) + '!';\n * //   return __p;\n * // }\n *\n * // Use custom template delimiters.\n * _.templateSettings.interpolate = /{{([\\s\\S]+?)}}/g;\n * var compiled = _.template('hello {{ user }}!');\n * compiled({ 'user': 'mustache' });\n * // => 'hello mustache!'\n *\n * // Use the `source` property to inline compiled templates for meaningful\n * // line numbers in error messages and stack traces.\n * fs.writeFileSync(path.join(process.cwd(), 'jst.js'), '\\\n *   var JST = {\\\n *     \"main\": ' + _.template(mainText).source + '\\\n *   };\\\n * ');\n */\nfunction template(string, options, guard) {\n  // Based on John Resig's `tmpl` implementation\n  // (http://ejohn.org/blog/javascript-micro-templating/)\n  // and Laura Doktorova's doT.js (https://github.com/olado/doT).\n  var settings = templateSettings.imports._.templateSettings || templateSettings;\n\n  if (guard && isIterateeCall(string, options, guard)) {\n    options = undefined;\n  }\n  string = toString(string);\n  options = assignInWith({}, options, settings, customDefaultsAssignIn);\n\n  var imports = assignInWith({}, options.imports, settings.imports, customDefaultsAssignIn),\n      importsKeys = keys(imports),\n      importsValues = baseValues(imports, importsKeys);\n\n  var isEscaping,\n      isEvaluating,\n      index = 0,\n      interpolate = options.interpolate || reNoMatch,\n      source = \"__p += '\";\n\n  // Compile the regexp to match each delimiter.\n  var reDelimiters = RegExp(\n    (options.escape || reNoMatch).source + '|' +\n    interpolate.source + '|' +\n    (interpolate === reInterpolate ? reEsTemplate : reNoMatch).source + '|' +\n    (options.evaluate || reNoMatch).source + '|$'\n  , 'g');\n\n  // Use a sourceURL for easier debugging.\n  // The sourceURL gets injected into the source that's eval-ed, so be careful\n  // to normalize all kinds of whitespace, so e.g. newlines (and unicode versions of it) can't sneak in\n  // and escape the comment, thus injecting code that gets evaled.\n  var sourceURL = hasOwnProperty.call(options, 'sourceURL')\n    ? ('//# sourceURL=' +\n       (options.sourceURL + '').replace(/\\s/g, ' ') +\n       '\\n')\n    : '';\n\n  string.replace(reDelimiters, function(match, escapeValue, interpolateValue, esTemplateValue, evaluateValue, offset) {\n    interpolateValue || (interpolateValue = esTemplateValue);\n\n    // Escape characters that can't be included in string literals.\n    source += string.slice(index, offset).replace(reUnescapedString, escapeStringChar);\n\n    // Replace delimiters with snippets.\n    if (escapeValue) {\n      isEscaping = true;\n      source += \"' +\\n__e(\" + escapeValue + \") +\\n'\";\n    }\n    if (evaluateValue) {\n      isEvaluating = true;\n      source += \"';\\n\" + evaluateValue + \";\\n__p += '\";\n    }\n    if (interpolateValue) {\n      source += \"' +\\n((__t = (\" + interpolateValue + \")) == null ? '' : __t) +\\n'\";\n    }\n    index = offset + match.length;\n\n    // The JS engine embedded in Adobe products needs `match` returned in\n    // order to produce the correct `offset` value.\n    return match;\n  });\n\n  source += \"';\\n\";\n\n  // If `variable` is not specified wrap a with-statement around the generated\n  // code to add the data object to the top of the scope chain.\n  var variable = hasOwnProperty.call(options, 'variable') && options.variable;\n  if (!variable) {\n    source = 'with (obj) {\\n' + source + '\\n}\\n';\n  }\n  // Throw an error if a forbidden character was found in `variable`, to prevent\n  // potential command injection attacks.\n  else if (reForbiddenIdentifierChars.test(variable)) {\n    throw new Error(INVALID_TEMPL_VAR_ERROR_TEXT);\n  }\n\n  // Cleanup code by stripping empty strings.\n  source = (isEvaluating ? source.replace(reEmptyStringLeading, '') : source)\n    .replace(reEmptyStringMiddle, '$1')\n    .replace(reEmptyStringTrailing, '$1;');\n\n  // Frame code as the function body.\n  source = 'function(' + (variable || 'obj') + ') {\\n' +\n    (variable\n      ? ''\n      : 'obj || (obj = {});\\n'\n    ) +\n    \"var __t, __p = ''\" +\n    (isEscaping\n       ? ', __e = _.escape'\n       : ''\n    ) +\n    (isEvaluating\n      ? ', __j = Array.prototype.join;\\n' +\n        \"function print() { __p += __j.call(arguments, '') }\\n\"\n      : ';\\n'\n    ) +\n    source +\n    'return __p\\n}';\n\n  var result = attempt(function() {\n    return Function(importsKeys, sourceURL + 'return ' + source)\n      .apply(undefined, importsValues);\n  });\n\n  // Provide the compiled function's source by its `toString` method or\n  // the `source` property as a convenience for inlining compiled templates.\n  result.source = source;\n  if (isError(result)) {\n    throw result;\n  }\n  return result;\n}\n\nmodule.exports = template;\n","import {\n  computed,\n  defineComponent,\n  inject,\n  nextTick,\n  onBeforeUnmount,\n  onMounted,\n  provide,\n  reactive,\n  ref,\n  toRefs,\n  watch,\n} from 'vue';\nimport isArray from 'lodash/isArray';\nimport isNumber from 'lodash/isNumber';\nimport isString from 'lodash/isString';\nimport isBoolean from 'lodash/isBoolean';\nimport cloneDeep from 'lodash/cloneDeep';\nimport lodashGet from 'lodash/get';\nimport lodashSet from 'lodash/set';\nimport isNil from 'lodash/isNil';\nimport lodashTemplate from 'lodash/template';\nimport { ChevronRightIcon } from 'tdesign-icons-vue-next';\nimport { validate } from './form-model';\n\nimport {\n  AllValidateResult,\n  Data,\n  FormErrorMessage,\n  FormItemValidateMessage,\n  FormRule,\n  ValidateTriggerType,\n  ValueType,\n} from './type';\nimport props from './form-item-props';\nimport {\n  AnalysisValidateResult,\n  ErrorListType,\n  FormInjectionKey,\n  FormItemContext,\n  FormItemInjectionKey,\n  SuccessListType,\n  ValidateStatus,\n} from './const';\nimport config from '../config';\nimport { useTNodeJSX } from '../hooks/tnode';\nimport { usePrefixClass } from '../hooks/useClass';\n\nconst { prefix } = config;\n\nexport type FormItemValidateResult<T extends Data = Data> = { [key in keyof T]: boolean | AllValidateResult[] };\n\nexport default defineComponent({\n  name: `${prefix}-form-item`,\n  props,\n  setup(props, { slots }) {\n    const renderTNodeJSX = useTNodeJSX();\n    const formClass = usePrefixClass('form');\n    const formItemClass = usePrefixClass('form__item');\n    const { name } = toRefs(props);\n\n    const form = inject(FormInjectionKey, undefined);\n\n    const extraNode = computed(() => {\n      const list = errorList.value;\n      if (showErrorMessage.value && list[0]?.message) {\n        return list[0]?.message;\n      }\n      if (successList.value.length) {\n        return successList.value[0].message;\n      }\n      return null;\n    });\n\n    const formItemClasses = computed(() => [\n      formItemClass.value,\n      `${formItemClass.value}--bordered`,\n      `${formClass.value}--${labelAlign.value}`,\n      `${formClass.value}-item__${props.name}`,\n    ]);\n\n    const needRequiredMark = computed(() => {\n      const requiredMark = props.requiredMark ?? form?.requiredMark;\n      const isRequired = innerRules.value.filter((rule) => rule.required).length > 0;\n      return requiredMark ?? isRequired;\n    });\n\n    const hasLabel = computed(() => slots.label || props.label);\n    const hasColon = computed(() => !!(form?.colon && hasLabel.value));\n    const labelClass = `${formClass.value}__label`;\n    const labelAlign = computed(() => (isNil(props.labelAlign) ? form?.labelAlign : props.labelAlign));\n    const labelWidth = computed(() => (isNil(props.labelWidth) ? form?.labelWidth : props.labelWidth));\n    const contentAlign = computed(() => (isNil(props.contentAlign) ? form?.contentAlign : props.contentAlign));\n\n    const labelClasses = computed(() => [\n      labelClass,\n      {\n        [`${labelClass}--required`]: needRequiredMark.value,\n        [`${labelClass}--colon`]: hasColon.value,\n        [`${labelClass}--top`]: hasLabel.value && (labelAlign.value === 'top' || !labelWidth.value),\n        [`${labelClass}--left`]: labelAlign.value === 'left' && labelWidth.value,\n        [`${labelClass}--right`]: labelAlign.value === 'right' && labelWidth.value,\n      },\n    ]);\n\n    const labelStyle = computed(() => {\n      if (labelWidth.value && labelAlign.value !== 'top') {\n        return isNumber(labelWidth.value) ? { width: `${labelWidth.value}px` } : { width: labelWidth.value };\n      }\n      return {};\n    });\n\n    const freeShowErrorMessage = ref<boolean | undefined>(false);\n    const showErrorMessage = computed(() => {\n      if (isBoolean(freeShowErrorMessage.value)) return freeShowErrorMessage.value;\n      if (isBoolean(props.showErrorMessage)) return props.showErrorMessage;\n      return form?.showErrorMessage;\n    });\n\n    const errorClasses = computed(() => {\n      if (!showErrorMessage.value) return '';\n      if (!errorList.value.length) return '';\n      const type = errorList.value[0].type || 'error';\n      return type === 'error' ? `${formItemClass.value}--error` : `${formItemClass.value}--warning`;\n    });\n\n    const contentClasses = computed(() => [`${formClass.value}__controls`, errorClasses.value]);\n    const contentSlotClasses = computed(() => [\n      `${formClass.value}__controls-content`,\n      `${formClass.value}__controls--${contentAlign.value}`,\n    ]);\n\n    const contentStyle = computed(() => {\n      let contentStyle = {};\n      if (labelWidth.value && labelAlign.value !== 'top') {\n        if (isNumber(labelWidth.value)) {\n          contentStyle = { marginLeft: `${labelWidth.value}px` };\n        } else {\n          contentStyle = { marginLeft: labelWidth.value };\n        }\n      }\n\n      return contentStyle;\n    });\n\n    const errorList = ref<ErrorListType[]>([]);\n    const successList = ref<SuccessListType[]>([]);\n    const verifyStatus = ref(ValidateStatus.TO_BE_VALIDATED);\n    const resetValidating = ref(false);\n    const needResetField = ref(false);\n\n    const resetHandler = () => {\n      needResetField.value = false;\n      errorList.value = [];\n      successList.value = [];\n      verifyStatus.value = ValidateStatus.TO_BE_VALIDATED;\n    };\n    const getEmptyValue = (): ValueType => {\n      const type = Object.prototype.toString.call(lodashGet(form?.data, `${props.name}`));\n      let emptyValue: ValueType;\n      if (type === '[object String]') {\n        emptyValue = '';\n      }\n      if (type === '[object Array]') {\n        emptyValue = [];\n      }\n      if (type === '[object Object]') {\n        emptyValue = {};\n      }\n      return emptyValue;\n    };\n    const resetField = async (resetType: 'initial' | 'empty' | undefined = form?.resetType): Promise<any> => {\n      if (!props.name) return null;\n\n      if (resetType === 'empty') {\n        // @ts-ignore\n        lodashSet(form?.data, props.name, getEmptyValue());\n      } else if (resetType === 'initial') {\n        // @ts-ignore\n        lodashSet(form?.data, props.name, initialValue.value);\n      }\n\n      await nextTick();\n      if (resetValidating.value) {\n        needResetField.value = true;\n      } else {\n        resetHandler();\n      }\n    };\n\n    const errorMessages = computed<FormErrorMessage>(() => form?.errorMessage || {});\n    const innerRules = computed<FormRule[]>(() => {\n      if (props.rules?.length) return props.rules;\n      if (!props.name) return [];\n      const index = `${props.name}`.lastIndexOf('.') || -1;\n      const pRuleName = `${props.name}`.slice(index + 1);\n      return lodashGet(form?.rules, props.name) || lodashGet(form?.rules, pRuleName) || [];\n    });\n\n    const analysisValidateResult = async (trigger: ValidateTriggerType): Promise<AnalysisValidateResult> => {\n      const result: AnalysisValidateResult = {\n        successList: [],\n        errorList: [],\n        rules: [],\n        resultList: [],\n        allowSetValue: false,\n      };\n      result.rules =\n        trigger === 'all'\n          ? innerRules.value\n          : innerRules.value.filter((item) => (item.trigger || 'change') === trigger);\n      if (innerRules.value.length && !result.rules?.length) {\n        return result;\n      }\n      result.allowSetValue = true;\n      result.resultList = await validate(value.value, result.rules);\n      result.errorList = result.resultList\n        .filter((item) => item.result !== true)\n        .map((item) => {\n          Object.keys(item).forEach((key) => {\n            if (!item.message && errorMessages.value[key]) {\n              const compiled = lodashTemplate(errorMessages.value[key]);\n              const name = isString(props.label) ? props.label : props.name;\n              item.message = compiled({\n                name,\n                validate: item[key],\n              });\n            }\n          });\n          return item as ErrorListType;\n        });\n      // 仅有自定义校验方法才会存在 successList\n      result.successList = result.resultList.filter(\n        (item) => item.result === true && item.message && item.type === 'success',\n      ) as SuccessListType[];\n      return result;\n    };\n    const validateHandler = async <T extends Data = Data>(\n      trigger: ValidateTriggerType,\n      showErrorMessage?: boolean,\n    ): Promise<FormItemValidateResult<T>> => {\n      resetValidating.value = true;\n      // undefined | boolean\n      freeShowErrorMessage.value = showErrorMessage;\n      const {\n        successList: innerSuccessList,\n        errorList: innerErrorList,\n        rules,\n        resultList,\n        allowSetValue,\n      } = await analysisValidateResult(trigger);\n\n      if (allowSetValue) {\n        successList.value = innerSuccessList || [];\n        errorList.value = innerErrorList || [];\n      }\n      // 根据校验结果设置校验状态\n      if (rules.length) {\n        verifyStatus.value = innerErrorList?.length ? ValidateStatus.FAIL : ValidateStatus.SUCCESS;\n      }\n      // 重置处理\n      if (needResetField.value) {\n        resetHandler();\n      }\n      resetValidating.value = false;\n\n      return {\n        [`${name.value}`]: innerErrorList?.length === 0 ? true : resultList,\n      } as FormItemValidateResult<T>;\n    };\n\n    const validateOnly = async <T extends Data>(trigger: ValidateTriggerType): Promise<FormItemValidateResult<T>> => {\n      const { errorList: innerErrorList, resultList } = await analysisValidateResult(trigger);\n\n      return {\n        [props.name]: innerErrorList.length === 0 ? true : resultList,\n      } as FormItemValidateResult<T>;\n    };\n\n    const setValidateMessage = (validateMessage: FormItemValidateMessage[]) => {\n      if (!validateMessage && !isArray(validateMessage)) return;\n      if (validateMessage.length === 0) {\n        errorList.value = [];\n        verifyStatus.value = ValidateStatus.SUCCESS;\n      }\n      errorList.value = validateMessage.map((item) => ({ ...item, result: false }));\n      verifyStatus.value = ValidateStatus.FAIL;\n    };\n\n    const value = computed<ValueType>(() => form?.data && lodashGet(form?.data, `${name.value}`));\n    const initialValue = ref<ValueType>(undefined);\n\n    const context: FormItemContext = reactive({\n      name,\n      resetHandler,\n      resetField,\n      validate: validateHandler,\n      validateOnly,\n      setValidateMessage,\n    });\n\n    onMounted(() => {\n      initialValue.value = cloneDeep(value.value);\n      form?.children.push(context);\n    });\n\n    onBeforeUnmount(() => {\n      if (form) form.children = form?.children.filter((ctx) => ctx !== context);\n    });\n\n    watch(\n      value,\n      async () => {\n        await validateHandler('change');\n      },\n      { deep: true },\n    );\n\n    watch(\n      () => [props.name, JSON.stringify(props.rules)].join(','),\n      () => {\n        validateHandler('change');\n      },\n    );\n\n    const handleBlur = async () => {\n      await validateHandler('blur');\n    };\n\n    provide(FormItemInjectionKey, {\n      handleBlur,\n    });\n\n    return () => {\n      const renderRightIconContent = () => {\n        if (!props.arrow) {\n          return null;\n        }\n        return <ChevronRightIcon size=\"24px\" style={{ color: 'rgba(0, 0, 0, .4)' }} />;\n      };\n      const renderLabelContent = () => {\n        if (Number(labelWidth.value) === 0) {\n          return null;\n        }\n        return renderTNodeJSX('label');\n      };\n      const renderHelpNode = () => {\n        const helpNode = renderTNodeJSX('help');\n        if (!helpNode) {\n          return null;\n        }\n        return (\n          <div class={[`${formItemClass.value}-help`, `${formClass.value}__controls--${contentAlign.value}`]}>\n            {helpNode}\n          </div>\n        );\n      };\n      const renderExtraNode = () => {\n        if (!extraNode.value) {\n          return null;\n        }\n        return (\n          <div class={[`${formItemClass.value}-extra`, `${formClass.value}__controls--${contentAlign.value}`]}>\n            {extraNode.value}\n          </div>\n        );\n      };\n\n      return (\n        <div class={[...formItemClasses.value, renderHelpNode() ? `${formClass.value}__item-with-help` : '']}>\n          <div class={[`${formItemClass.value}-wrap`, `${formItemClass.value}--${labelAlign.value}`]}>\n            <div class={labelClasses.value} style={labelStyle.value}>\n              <label for={props.for}>{renderLabelContent()}</label>\n            </div>\n            <div class={contentClasses.value} style={contentStyle.value}>\n              <div class={contentSlotClasses.value}>{renderTNodeJSX('default')}</div>\n              {renderHelpNode()}\n              {renderExtraNode()}\n            </div>\n          </div>\n          {renderRightIconContent()}\n        </div>\n      );\n    };\n  },\n});\n"],"names":["copyObject","require$$0","createAssigner","require$$1","keysIn","require$$2","assignInWith","object","source","srcIndex","customizer","assignInWith_1","baseGetTag","isObjectLike","isPlainObject","domExcTag","errorTag","isError","value","tag","message","name","isError_1","apply","baseRest","attempt","func","args","undefined","e","Error","attempt_1","arrayMap","baseValues","props","key","_baseValues","eq","objectProto","Object","prototype","hasOwnProperty","customDefaultsAssignIn","objValue","srcValue","call","_customDefaultsAssignIn","stringEscapes","escapeStringChar","chr","_escapeStringChar","reInterpolate","_reInterpolate","basePropertyOf","htmlEscapes","escapeHtmlChar","_escapeHtmlChar","toString","reUnescapedHtml","reHasUnescapedHtml","RegExp","escape","string","test","replace","_escape","reEscape","_reEscape","reEvaluate","_reEvaluate","require$$3","templateSettings","templateSettings_1","require$$4","require$$5","isIterateeCall","require$$6","keys","require$$7","require$$8","require$$9","require$$10","INVALID_TEMPL_VAR_ERROR_TEXT","reEmptyStringLeading","reEmptyStringMiddle","reEmptyStringTrailing","reForbiddenIdentifierChars","reEsTemplate","reNoMatch","reUnescapedString","template","options","guard","settings","imports","_","importsKeys","importsValues","isEscaping","isEvaluating","index","interpolate","reDelimiters","evaluate","sourceURL","match","escapeValue","interpolateValue","esTemplateValue","evaluateValue","offset","slice","length","variable","result","Function","template_1","prefix","config","defineComponent","setup","slots","_ref","renderTNodeJSX","useTNodeJSX","formClass","usePrefixClass","formItemClass","_toRefs","toRefs","form","inject","FormInjectionKey","extraNode","computed","_list$","list","errorList","showErrorMessage","_list$2","successList","formItemClasses","concat","labelAlign","needRequiredMark","_props2$requiredMark","requiredMark","isRequired","innerRules","filter","rule","required","hasLabel","label","hasColon","colon","labelClass","isNil","labelWidth","contentAlign","labelClasses","_defineProperty","labelStyle","isNumber","width","freeShowErrorMessage","ref","isBoolean","errorClasses","type","contentClasses","contentSlotClasses","contentStyle","marginLeft","verifyStatus","ValidateStatus","TO_BE_VALIDATED","resetValidating","needResetField","resetHandler","getEmptyValue","lodashGet","data","emptyValue","resetField","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","resetType","_args","arguments","wrap","_callee$","_context","prev","next","abrupt","lodashSet","initialValue","nextTick","stop","errorMessages","errorMessage","_props2$rules","rules","lastIndexOf","pRuleName","analysisValidateResult","_ref4","_callee2","trigger","_result$rules","_callee2$","_context2","resultList","allowSetValue","item","validate","map","forEach","compiled","lodashTemplate","isString","_x","validateHandler","_ref5","_callee3","_yield$analysisValida","innerSuccessList","innerErrorList","_callee3$","_context3","sent","FAIL","SUCCESS","_x2","_x3","validateOnly","_ref7","_callee4","_yield$analysisValida2","_callee4$","_context4","_x4","setValidateMessage","validateMessage","isArray","_objectSpread","context","reactive","onMounted","cloneDeep","children","push","onBeforeUnmount","ctx","watch","_callee5","_callee5$","_context5","deep","JSON","stringify","join","handleBlur","_callee6","_callee6$","_context6","provide","FormItemInjectionKey","renderRightIconContent","arrow","_createVNode","ChevronRightIcon","color","renderLabelContent","Number","renderHelpNode","helpNode","renderExtraNode","_toConsumableArray","for"],"mappings":"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G4B,cAA2B;AAC3CR,EAAAA,gBAAgB,GAAGS,kBAA6B;AAChDvB,EAAAA,QAAQ,GAAGwB,UAAqB,CAAA;;AAEpC;AACA,IAAIC,4BAA4B,GAAG,oDAAoD,CAAA;;AAEvF;AACA,IAAIC,oBAAoB,GAAG,gBAAgB;AACvCC,EAAAA,mBAAmB,GAAG,oBAAoB;AAC1CC,EAAAA,qBAAqB,GAAG,+BAA+B,CAAA;;AAE3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAIC,0BAA0B,GAAG,kBAAkB,CAAA;;AAEnD;AACA;AACA;AACA;AACA,IAAIC,YAAY,GAAG,iCAAiC,CAAA;;AAEpD;AACA,IAAIC,SAAS,GAAG,MAAM,CAAA;;AAEtB;AACA,IAAIC,iBAAiB,GAAG,wBAAwB,CAAA;;AAEhD;AACA,IAAInD,WAAW,GAAGC,MAAM,CAACC,SAAS,CAAA;;AAElC;AACA,IAAIC,cAAc,GAAGH,WAAW,CAACG,cAAc,CAAA;;AAE/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASiD,QAAQA,CAAC5B,MAAM,EAAE6B,OAAO,EAAEC,KAAK,EAAE;AAC1C;AACA;AACA;EACE,IAAIC,QAAQ,GAAGtB,gBAAgB,CAACuB,OAAO,CAACC,CAAC,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"}