@next-bricks/advanced 0.48.2 → 0.48.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bricks.json +16 -16
- package/dist/chunks/2977.8802438a.js +3 -0
- package/dist/chunks/2977.8802438a.js.map +1 -0
- package/dist/chunks/{4670.e99278b5.js → 4670.bba60176.js} +3 -3
- package/dist/chunks/{4670.e99278b5.js.map → 4670.bba60176.js.map} +1 -1
- package/dist/chunks/{5612.4f32db4f.js → 5612.74b22a54.js} +2 -2
- package/dist/chunks/{5612.4f32db4f.js.map → 5612.74b22a54.js.map} +1 -1
- package/dist/chunks/{9978.ff6624df.js → 9978.f9d039e7.js} +3 -3
- package/dist/chunks/{9978.ff6624df.js.map → 9978.f9d039e7.js.map} +1 -1
- package/dist/chunks/{main.5197e1f1.js → main.2d7a1ae8.js} +2 -2
- package/dist/chunks/{main.5197e1f1.js.map → main.2d7a1ae8.js.map} +1 -1
- package/dist/examples.json +5 -5
- package/dist/{index.f42595d6.js → index.2940d20a.js} +2 -2
- package/dist/{index.f42595d6.js.map → index.2940d20a.js.map} +1 -1
- package/dist/manifest.json +254 -254
- package/dist/types.json +521 -521
- package/package.json +2 -2
- package/dist/chunks/9914.e1a117d8.js +0 -3
- package/dist/chunks/9914.e1a117d8.js.map +0 -1
- /package/dist/chunks/{9914.e1a117d8.js.LICENSE.txt → 2977.8802438a.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{4670.e99278b5.js.LICENSE.txt → 4670.bba60176.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{9978.ff6624df.js.LICENSE.txt → 9978.f9d039e7.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunks/2977.8802438a.js","mappings":"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","sources":["webpack:///../../node_modules/rc-util/es/Dom/isVisible.js","webpack:///../../node_modules/antd/es/_util/hooks/useZIndex.js","webpack:///../../node_modules/antd/es/space/Compact.js","webpack:///../../node_modules/rc-util/es/getScrollBarSize.js","webpack:///../../node_modules/antd/es/style/motion/motion.js","webpack:///../../node_modules/antd/es/config-provider/hooks/useSize.js","webpack:///../../node_modules/rc-util/es/isMobile.js","webpack:///../../node_modules/antd/es/space/style/compact.js","webpack:///../../node_modules/antd/es/space/style/index.js","webpack:///../../node_modules/@rc-component/portal/es/Context.js","webpack:///../../node_modules/@rc-component/portal/es/useDom.js","webpack:///../../node_modules/@rc-component/portal/es/useScrollLocker.js","webpack:///../../node_modules/@rc-component/portal/es/mock.js","webpack:///../../node_modules/@rc-component/portal/es/Portal.js","webpack:///../../node_modules/@rc-component/portal/es/index.js","webpack:///../../node_modules/@rc-component/portal/es/util.js","webpack:///../../node_modules/@easyops-cn/rc-trigger/es/Popup/Arrow.js","webpack:///../../node_modules/@easyops-cn/rc-trigger/es/Popup/Mask.js","webpack:///../../node_modules/@easyops-cn/rc-trigger/es/Popup/PopupContent.js","webpack:///../../node_modules/@easyops-cn/rc-trigger/es/Popup/index.js","webpack:///../../node_modules/@easyops-cn/rc-trigger/es/TriggerWrapper.js","webpack:///../../node_modules/@easyops-cn/rc-trigger/es/context.js","webpack:///../../node_modules/@easyops-cn/rc-trigger/es/hooks/useAction.js","webpack:///../../node_modules/@easyops-cn/rc-trigger/es/util.js","webpack:///../../node_modules/@easyops-cn/rc-trigger/es/hooks/useAlign.js","webpack:///../../node_modules/@easyops-cn/rc-trigger/es/index.js","webpack:///../../node_modules/@easyops-cn/rc-trigger/es/hooks/useWatch.js","webpack:///../../node_modules/@easyops-cn/rc-trigger/es/hooks/useWinClick.js","webpack:///../../node_modules/rc-field-form/es/FieldContext.js","webpack:///../../node_modules/rc-field-form/es/ListContext.js","webpack:///../../node_modules/rc-field-form/es/utils/typeUtil.js","webpack:///../../node_modules/@rc-component/async-validator/es/messages.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/isNativeFunction.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/construct.js","webpack:///../../node_modules/@rc-component/async-validator/es/util.js","webpack:///../../node_modules/@rc-component/async-validator/es/rule/enum.js","webpack:///../../node_modules/@rc-component/async-validator/es/rule/required.js","webpack:///../../node_modules/@rc-component/async-validator/es/rule/url.js","webpack:///../../node_modules/@rc-component/async-validator/es/rule/type.js","webpack:///../../node_modules/@rc-component/async-validator/es/rule/index.js","webpack:///../../node_modules/@rc-component/async-validator/es/rule/whitespace.js","webpack:///../../node_modules/@rc-component/async-validator/es/rule/range.js","webpack:///../../node_modules/@rc-component/async-validator/es/rule/pattern.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/type.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/index.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/string.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/method.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/number.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/boolean.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/regexp.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/integer.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/float.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/array.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/object.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/enum.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/pattern.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/date.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/required.js","webpack:///../../node_modules/@rc-component/async-validator/es/validator/any.js","webpack:///../../node_modules/@rc-component/async-validator/es/index.js","webpack:///../../node_modules/rc-field-form/es/utils/messages.js","webpack:///../../node_modules/rc-field-form/es/utils/validateUtil.js","webpack:///../../node_modules/rc-field-form/es/utils/valueUtil.js","webpack:///../../node_modules/rc-field-form/es/Field.js","webpack:///../../node_modules/rc-field-form/es/utils/NameMap.js","webpack:///../../node_modules/rc-field-form/es/useForm.js","webpack:///../../node_modules/rc-field-form/es/utils/asyncUtil.js","webpack:///../../node_modules/rc-field-form/es/FormContext.js","webpack:///../../node_modules/rc-field-form/es/Form.js","webpack:///../../node_modules/rc-field-form/es/useWatch.js","webpack:///../../node_modules/rc-field-form/es/index.js","webpack:///../../node_modules/rc-field-form/es/List.js","webpack:///../../node_modules/antd/es/form/context.js","webpack:///../../node_modules/rc-util/es/hooks/useId.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack:///../../node_modules/antd/es/_util/zindexContext.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js"],"sourcesContent":["export default (function (element) {\n if (!element) {\n return false;\n }\n if (element instanceof Element) {\n if (element.offsetParent) {\n return true;\n }\n if (element.getBBox) {\n var _getBBox = element.getBBox(),\n width = _getBBox.width,\n height = _getBBox.height;\n if (width || height) {\n return true;\n }\n }\n if (element.getBoundingClientRect) {\n var _element$getBoundingC = element.getBoundingClientRect(),\n _width = _element$getBoundingC.width,\n _height = _element$getBoundingC.height;\n if (_width || _height) {\n return true;\n }\n }\n }\n return false;\n});","import React from 'react';\nimport useToken from '../../theme/useToken';\nimport { devUseWarning } from '../warning';\nimport zIndexContext from '../zindexContext';\n// Z-Index control range\n// Container: 1000 + offset 100 (max base + 10 * offset = 2000)\n// Popover: offset 50\n// Notification: Container Max zIndex + componentOffset\nconst CONTAINER_OFFSET = 100;\nconst CONTAINER_OFFSET_MAX_COUNT = 10;\nexport const CONTAINER_MAX_OFFSET = CONTAINER_OFFSET * CONTAINER_OFFSET_MAX_COUNT;\n/**\n * Static function will default be the `CONTAINER_MAX_OFFSET`.\n * But it still may have children component like Select, Dropdown.\n * So the warning zIndex should exceed the `CONTAINER_MAX_OFFSET`.\n */\nconst CONTAINER_MAX_OFFSET_WITH_CHILDREN = CONTAINER_MAX_OFFSET + CONTAINER_OFFSET;\nexport const containerBaseZIndexOffset = {\n Modal: CONTAINER_OFFSET,\n Drawer: CONTAINER_OFFSET,\n Popover: CONTAINER_OFFSET,\n Popconfirm: CONTAINER_OFFSET,\n Tooltip: CONTAINER_OFFSET,\n Tour: CONTAINER_OFFSET,\n FloatButton: CONTAINER_OFFSET\n};\nexport const consumerBaseZIndexOffset = {\n SelectLike: 50,\n Dropdown: 50,\n DatePicker: 50,\n Menu: 50,\n ImagePreview: 1\n};\nfunction isContainerType(type) {\n return type in containerBaseZIndexOffset;\n}\nexport const useZIndex = (componentType, customZIndex) => {\n const [, token] = useToken();\n const parentZIndex = React.useContext(zIndexContext);\n const isContainer = isContainerType(componentType);\n let result;\n if (customZIndex !== undefined) {\n result = [customZIndex, customZIndex];\n } else {\n let zIndex = parentZIndex !== null && parentZIndex !== void 0 ? parentZIndex : 0;\n if (isContainer) {\n zIndex +=\n // Use preset token zIndex by default but not stack when has parent container\n (parentZIndex ? 0 : token.zIndexPopupBase) +\n // Container offset\n containerBaseZIndexOffset[componentType];\n } else {\n zIndex += consumerBaseZIndexOffset[componentType];\n }\n result = [parentZIndex === undefined ? customZIndex : zIndex, zIndex];\n }\n if (process.env.NODE_ENV !== 'production') {\n const warning = devUseWarning(componentType);\n const maxZIndex = token.zIndexPopupBase + CONTAINER_MAX_OFFSET_WITH_CHILDREN;\n const currentZIndex = result[0] || 0;\n process.env.NODE_ENV !== \"production\" ? warning(customZIndex !== undefined || currentZIndex <= maxZIndex, 'usage', '`zIndex` is over design token `zIndexPopupBase` too much. It may cause unexpected override.') : void 0;\n }\n return result;\n};","\"use client\";\n\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\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};\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport toArray from \"rc-util/es/Children/toArray\";\nimport { ConfigContext } from '../config-provider';\nimport useSize from '../config-provider/hooks/useSize';\nimport useStyle from './style';\nexport const SpaceCompactItemContext = /*#__PURE__*/React.createContext(null);\nexport const useCompactItemContext = (prefixCls, direction) => {\n const compactItemContext = React.useContext(SpaceCompactItemContext);\n const compactItemClassnames = React.useMemo(() => {\n if (!compactItemContext) {\n return '';\n }\n const {\n compactDirection,\n isFirstItem,\n isLastItem\n } = compactItemContext;\n const separator = compactDirection === 'vertical' ? '-vertical-' : '-';\n return classNames(`${prefixCls}-compact${separator}item`, {\n [`${prefixCls}-compact${separator}first-item`]: isFirstItem,\n [`${prefixCls}-compact${separator}last-item`]: isLastItem,\n [`${prefixCls}-compact${separator}item-rtl`]: direction === 'rtl'\n });\n }, [prefixCls, direction, compactItemContext]);\n return {\n compactSize: compactItemContext === null || compactItemContext === void 0 ? void 0 : compactItemContext.compactSize,\n compactDirection: compactItemContext === null || compactItemContext === void 0 ? void 0 : compactItemContext.compactDirection,\n compactItemClassnames\n };\n};\nexport const NoCompactStyle = _ref => {\n let {\n children\n } = _ref;\n return /*#__PURE__*/React.createElement(SpaceCompactItemContext.Provider, {\n value: null\n }, children);\n};\nconst CompactItem = _a => {\n var {\n children\n } = _a,\n otherProps = __rest(_a, [\"children\"]);\n return /*#__PURE__*/React.createElement(SpaceCompactItemContext.Provider, {\n value: otherProps\n }, children);\n};\nconst Compact = props => {\n const {\n getPrefixCls,\n direction: directionConfig\n } = React.useContext(ConfigContext);\n const {\n size,\n direction,\n block,\n prefixCls: customizePrefixCls,\n className,\n rootClassName,\n children\n } = props,\n restProps = __rest(props, [\"size\", \"direction\", \"block\", \"prefixCls\", \"className\", \"rootClassName\", \"children\"]);\n const mergedSize = useSize(ctx => size !== null && size !== void 0 ? size : ctx);\n const prefixCls = getPrefixCls('space-compact', customizePrefixCls);\n const [wrapCSSVar, hashId] = useStyle(prefixCls);\n const clx = classNames(prefixCls, hashId, {\n [`${prefixCls}-rtl`]: directionConfig === 'rtl',\n [`${prefixCls}-block`]: block,\n [`${prefixCls}-vertical`]: direction === 'vertical'\n }, className, rootClassName);\n const compactItemContext = React.useContext(SpaceCompactItemContext);\n const childNodes = toArray(children);\n const nodes = React.useMemo(() => childNodes.map((child, i) => {\n const key = (child === null || child === void 0 ? void 0 : child.key) || `${prefixCls}-item-${i}`;\n return /*#__PURE__*/React.createElement(CompactItem, {\n key: key,\n compactSize: mergedSize,\n compactDirection: direction,\n isFirstItem: i === 0 && (!compactItemContext || (compactItemContext === null || compactItemContext === void 0 ? void 0 : compactItemContext.isFirstItem)),\n isLastItem: i === childNodes.length - 1 && (!compactItemContext || (compactItemContext === null || compactItemContext === void 0 ? void 0 : compactItemContext.isLastItem))\n }, child);\n }), [size, childNodes, compactItemContext]);\n // =========================== Render ===========================\n if (childNodes.length === 0) {\n return null;\n }\n return wrapCSSVar(/*#__PURE__*/React.createElement(\"div\", Object.assign({\n className: clx\n }, restProps), nodes));\n};\nexport default Compact;","/* eslint-disable no-param-reassign */\nimport { removeCSS, updateCSS } from \"./Dom/dynamicCSS\";\nvar cached;\nfunction measureScrollbarSize(ele) {\n var randomId = \"rc-scrollbar-measure-\".concat(Math.random().toString(36).substring(7));\n var measureEle = document.createElement('div');\n measureEle.id = randomId;\n\n // Create Style\n var measureStyle = measureEle.style;\n measureStyle.position = 'absolute';\n measureStyle.left = '0';\n measureStyle.top = '0';\n measureStyle.width = '100px';\n measureStyle.height = '100px';\n measureStyle.overflow = 'scroll';\n\n // Clone Style if needed\n var fallbackWidth;\n var fallbackHeight;\n if (ele) {\n var targetStyle = getComputedStyle(ele);\n measureStyle.scrollbarColor = targetStyle.scrollbarColor;\n measureStyle.scrollbarWidth = targetStyle.scrollbarWidth;\n\n // Set Webkit style\n var webkitScrollbarStyle = getComputedStyle(ele, '::-webkit-scrollbar');\n var width = parseInt(webkitScrollbarStyle.width, 10);\n var height = parseInt(webkitScrollbarStyle.height, 10);\n\n // Try wrap to handle CSP case\n try {\n var widthStyle = width ? \"width: \".concat(webkitScrollbarStyle.width, \";\") : '';\n var heightStyle = height ? \"height: \".concat(webkitScrollbarStyle.height, \";\") : '';\n updateCSS(\"\\n#\".concat(randomId, \"::-webkit-scrollbar {\\n\").concat(widthStyle, \"\\n\").concat(heightStyle, \"\\n}\"), randomId);\n } catch (e) {\n // Can't wrap, just log error\n console.error(e);\n\n // Get from style directly\n fallbackWidth = width;\n fallbackHeight = height;\n }\n }\n document.body.appendChild(measureEle);\n\n // Measure. Get fallback style if provided\n var scrollWidth = ele && fallbackWidth && !isNaN(fallbackWidth) ? fallbackWidth : measureEle.offsetWidth - measureEle.clientWidth;\n var scrollHeight = ele && fallbackHeight && !isNaN(fallbackHeight) ? fallbackHeight : measureEle.offsetHeight - measureEle.clientHeight;\n\n // Clean up\n document.body.removeChild(measureEle);\n removeCSS(randomId);\n return {\n width: scrollWidth,\n height: scrollHeight\n };\n}\nexport default function getScrollBarSize(fresh) {\n if (typeof document === 'undefined') {\n return 0;\n }\n if (fresh || cached === undefined) {\n cached = measureScrollbarSize();\n }\n return cached.width;\n}\nexport function getTargetScrollBarSize(target) {\n if (typeof document === 'undefined' || !target || !(target instanceof Element)) {\n return {\n width: 0,\n height: 0\n };\n }\n return measureScrollbarSize(target);\n}","const initMotionCommon = duration => ({\n animationDuration: duration,\n animationFillMode: 'both'\n});\n// FIXME: origin less code seems same as initMotionCommon. Maybe we can safe remove\nconst initMotionCommonLeave = duration => ({\n animationDuration: duration,\n animationFillMode: 'both'\n});\nexport const initMotion = function (motionCls, inKeyframes, outKeyframes, duration) {\n let sameLevel = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n const sameLevelPrefix = sameLevel ? '&' : '';\n return {\n [`\n ${sameLevelPrefix}${motionCls}-enter,\n ${sameLevelPrefix}${motionCls}-appear\n `]: Object.assign(Object.assign({}, initMotionCommon(duration)), {\n animationPlayState: 'paused'\n }),\n [`${sameLevelPrefix}${motionCls}-leave`]: Object.assign(Object.assign({}, initMotionCommonLeave(duration)), {\n animationPlayState: 'paused'\n }),\n [`\n ${sameLevelPrefix}${motionCls}-enter${motionCls}-enter-active,\n ${sameLevelPrefix}${motionCls}-appear${motionCls}-appear-active\n `]: {\n animationName: inKeyframes,\n animationPlayState: 'running'\n },\n [`${sameLevelPrefix}${motionCls}-leave${motionCls}-leave-active`]: {\n animationName: outKeyframes,\n animationPlayState: 'running',\n pointerEvents: 'none'\n }\n };\n};","import React from 'react';\nimport SizeContext from '../SizeContext';\nconst useSize = customSize => {\n const size = React.useContext(SizeContext);\n const mergedSize = React.useMemo(() => {\n if (!customSize) {\n return size;\n }\n if (typeof customSize === 'string') {\n return customSize !== null && customSize !== void 0 ? customSize : size;\n }\n if (customSize instanceof Function) {\n return customSize(size);\n }\n return size;\n }, [customSize, size]);\n return mergedSize;\n};\nexport default useSize;","export default (function () {\n if (typeof navigator === 'undefined' || typeof window === 'undefined') {\n return false;\n }\n var agent = navigator.userAgent || navigator.vendor || window.opera;\n return /(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(agent) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(agent === null || agent === void 0 ? void 0 : agent.substr(0, 4));\n});","const genSpaceCompactStyle = token => {\n const {\n componentCls\n } = token;\n return {\n [componentCls]: {\n '&-block': {\n display: 'flex',\n width: '100%'\n },\n '&-vertical': {\n flexDirection: 'column'\n }\n }\n };\n};\n// ============================== Export ==============================\nexport default genSpaceCompactStyle;","import { genStyleHooks, mergeToken } from '../../theme/internal';\nimport genSpaceCompactStyle from './compact';\nconst genSpaceStyle = token => {\n const {\n componentCls,\n antCls\n } = token;\n return {\n [componentCls]: {\n display: 'inline-flex',\n '&-rtl': {\n direction: 'rtl'\n },\n '&-vertical': {\n flexDirection: 'column'\n },\n '&-align': {\n flexDirection: 'column',\n '&-center': {\n alignItems: 'center'\n },\n '&-start': {\n alignItems: 'flex-start'\n },\n '&-end': {\n alignItems: 'flex-end'\n },\n '&-baseline': {\n alignItems: 'baseline'\n }\n },\n [`${componentCls}-item:empty`]: {\n display: 'none'\n },\n // https://github.com/ant-design/ant-design/issues/47875\n [`${componentCls}-item > ${antCls}-badge-not-a-wrapper:only-child`]: {\n display: 'block'\n }\n }\n };\n};\nconst genSpaceGapStyle = token => {\n const {\n componentCls\n } = token;\n return {\n [componentCls]: {\n '&-gap-row-small': {\n rowGap: token.spaceGapSmallSize\n },\n '&-gap-row-middle': {\n rowGap: token.spaceGapMiddleSize\n },\n '&-gap-row-large': {\n rowGap: token.spaceGapLargeSize\n },\n '&-gap-col-small': {\n columnGap: token.spaceGapSmallSize\n },\n '&-gap-col-middle': {\n columnGap: token.spaceGapMiddleSize\n },\n '&-gap-col-large': {\n columnGap: token.spaceGapLargeSize\n }\n }\n };\n};\n// ============================== Export ==============================\nexport const prepareComponentToken = () => ({});\nexport default genStyleHooks('Space', token => {\n const spaceToken = mergeToken(token, {\n spaceGapSmallSize: token.paddingXS,\n spaceGapMiddleSize: token.padding,\n spaceGapLargeSize: token.paddingLG\n });\n return [genSpaceStyle(spaceToken), genSpaceGapStyle(spaceToken), genSpaceCompactStyle(spaceToken)];\n}, () => ({}), {\n // Space component don't apply extra font style\n // https://github.com/ant-design/ant-design/issues/40315\n resetStyle: false\n});","import * as React from 'react';\nvar OrderContext = /*#__PURE__*/React.createContext(null);\nexport default OrderContext;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport canUseDom from \"rc-util/es/Dom/canUseDom\";\nimport OrderContext from \"./Context\";\nvar EMPTY_LIST = [];\n\n/**\n * Will add `div` to document. Nest call will keep order\n * @param render Render DOM in document\n */\nexport default function useDom(render, debug) {\n var _React$useState = React.useState(function () {\n if (!canUseDom()) {\n return null;\n }\n var defaultEle = document.createElement('div');\n if (process.env.NODE_ENV !== 'production' && debug) {\n defaultEle.setAttribute('data-debug', debug);\n }\n return defaultEle;\n }),\n _React$useState2 = _slicedToArray(_React$useState, 1),\n ele = _React$useState2[0];\n\n // ========================== Order ==========================\n var appendedRef = React.useRef(false);\n var queueCreate = React.useContext(OrderContext);\n var _React$useState3 = React.useState(EMPTY_LIST),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n queue = _React$useState4[0],\n setQueue = _React$useState4[1];\n var mergedQueueCreate = queueCreate || (appendedRef.current ? undefined : function (appendFn) {\n setQueue(function (origin) {\n var newQueue = [appendFn].concat(_toConsumableArray(origin));\n return newQueue;\n });\n });\n\n // =========================== DOM ===========================\n function append() {\n if (!ele.parentElement) {\n document.body.appendChild(ele);\n }\n appendedRef.current = true;\n }\n function cleanup() {\n var _ele$parentElement;\n (_ele$parentElement = ele.parentElement) === null || _ele$parentElement === void 0 ? void 0 : _ele$parentElement.removeChild(ele);\n appendedRef.current = false;\n }\n useLayoutEffect(function () {\n if (render) {\n if (queueCreate) {\n queueCreate(append);\n } else {\n append();\n }\n } else {\n cleanup();\n }\n return cleanup;\n }, [render]);\n useLayoutEffect(function () {\n if (queue.length) {\n queue.forEach(function (appendFn) {\n return appendFn();\n });\n setQueue(EMPTY_LIST);\n }\n }, [queue]);\n return [ele, mergedQueueCreate];\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { updateCSS, removeCSS } from \"rc-util/es/Dom/dynamicCSS\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { getTargetScrollBarSize } from \"rc-util/es/getScrollBarSize\";\nimport { isBodyOverflowing } from \"./util\";\nvar UNIQUE_ID = \"rc-util-locker-\".concat(Date.now());\nvar uuid = 0;\nexport default function useScrollLocker(lock) {\n var mergedLock = !!lock;\n var _React$useState = React.useState(function () {\n uuid += 1;\n return \"\".concat(UNIQUE_ID, \"_\").concat(uuid);\n }),\n _React$useState2 = _slicedToArray(_React$useState, 1),\n id = _React$useState2[0];\n useLayoutEffect(function () {\n if (mergedLock) {\n var scrollbarSize = getTargetScrollBarSize(document.body).width;\n var isOverflow = isBodyOverflowing();\n updateCSS(\"\\nhtml body {\\n overflow-y: hidden;\\n \".concat(isOverflow ? \"width: calc(100% - \".concat(scrollbarSize, \"px);\") : '', \"\\n}\"), id);\n } else {\n removeCSS(id);\n }\n return function () {\n removeCSS(id);\n };\n }, [mergedLock, id]);\n}","export var inline = false;\nexport function inlineMock(nextInline) {\n if (typeof nextInline === 'boolean') {\n inline = nextInline;\n }\n return inline;\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { createPortal } from 'react-dom';\nimport canUseDom from \"rc-util/es/Dom/canUseDom\";\nimport warning from \"rc-util/es/warning\";\nimport { supportRef, useComposeRef } from \"rc-util/es/ref\";\nimport OrderContext from \"./Context\";\nimport useDom from \"./useDom\";\nimport useScrollLocker from \"./useScrollLocker\";\nimport { inlineMock } from \"./mock\";\nvar getPortalContainer = function getPortalContainer(getContainer) {\n if (getContainer === false) {\n return false;\n }\n if (!canUseDom() || !getContainer) {\n return null;\n }\n if (typeof getContainer === 'string') {\n return document.querySelector(getContainer);\n }\n if (typeof getContainer === 'function') {\n return getContainer();\n }\n return getContainer;\n};\nvar Portal = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var open = props.open,\n autoLock = props.autoLock,\n getContainer = props.getContainer,\n debug = props.debug,\n _props$autoDestroy = props.autoDestroy,\n autoDestroy = _props$autoDestroy === void 0 ? true : _props$autoDestroy,\n children = props.children;\n var _React$useState = React.useState(open),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n shouldRender = _React$useState2[0],\n setShouldRender = _React$useState2[1];\n var mergedRender = shouldRender || open;\n\n // ========================= Warning =========================\n if (process.env.NODE_ENV !== 'production') {\n warning(canUseDom() || !open, \"Portal only work in client side. Please call 'useEffect' to show Portal instead default render in SSR.\");\n }\n\n // ====================== Should Render ======================\n React.useEffect(function () {\n if (autoDestroy || open) {\n setShouldRender(open);\n }\n }, [open, autoDestroy]);\n\n // ======================== Container ========================\n var _React$useState3 = React.useState(function () {\n return getPortalContainer(getContainer);\n }),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n innerContainer = _React$useState4[0],\n setInnerContainer = _React$useState4[1];\n React.useEffect(function () {\n var customizeContainer = getPortalContainer(getContainer);\n\n // Tell component that we check this in effect which is safe to be `null`\n setInnerContainer(customizeContainer !== null && customizeContainer !== void 0 ? customizeContainer : null);\n });\n var _useDom = useDom(mergedRender && !innerContainer, debug),\n _useDom2 = _slicedToArray(_useDom, 2),\n defaultContainer = _useDom2[0],\n queueCreate = _useDom2[1];\n var mergedContainer = innerContainer !== null && innerContainer !== void 0 ? innerContainer : defaultContainer;\n\n // ========================= Locker ==========================\n useScrollLocker(autoLock && open && canUseDom() && (mergedContainer === defaultContainer || mergedContainer === document.body));\n\n // =========================== Ref ===========================\n var childRef = null;\n if (children && supportRef(children) && ref) {\n var _ref = children;\n childRef = _ref.ref;\n }\n var mergedRef = useComposeRef(childRef, ref);\n\n // ========================= Render ==========================\n // Do not render when nothing need render\n // When innerContainer is `undefined`, it may not ready since user use ref in the same render\n if (!mergedRender || !canUseDom() || innerContainer === undefined) {\n return null;\n }\n\n // Render inline\n var renderInline = mergedContainer === false || inlineMock();\n var reffedChildren = children;\n if (ref) {\n reffedChildren = /*#__PURE__*/React.cloneElement(children, {\n ref: mergedRef\n });\n }\n return /*#__PURE__*/React.createElement(OrderContext.Provider, {\n value: queueCreate\n }, renderInline ? reffedChildren : /*#__PURE__*/createPortal(reffedChildren, mergedContainer));\n});\nif (process.env.NODE_ENV !== 'production') {\n Portal.displayName = 'Portal';\n}\nexport default Portal;","import Portal from \"./Portal\";\nimport { inlineMock } from \"./mock\";\nexport { inlineMock };\nexport default Portal;","/**\n * Test usage export. Do not use in your production\n */\nexport function isBodyOverflowing() {\n return document.body.scrollHeight > (window.innerHeight || document.documentElement.clientHeight) && window.innerWidth > document.body.offsetWidth;\n}","import classNames from 'classnames';\nimport * as React from 'react';\nexport default function Arrow(props) {\n var prefixCls = props.prefixCls,\n align = props.align,\n arrow = props.arrow,\n arrowPos = props.arrowPos;\n var _ref = arrow || {},\n className = _ref.className,\n content = _ref.content;\n var _arrowPos$x = arrowPos.x,\n x = _arrowPos$x === void 0 ? 0 : _arrowPos$x,\n _arrowPos$y = arrowPos.y,\n y = _arrowPos$y === void 0 ? 0 : _arrowPos$y;\n var arrowRef = React.useRef();\n\n // Skip if no align\n if (!align || !align.points) {\n return null;\n }\n var alignStyle = {\n position: 'absolute'\n };\n\n // Skip if no need to align\n if (align.autoArrow !== false) {\n var popupPoints = align.points[0];\n var targetPoints = align.points[1];\n var popupTB = popupPoints[0];\n var popupLR = popupPoints[1];\n var targetTB = targetPoints[0];\n var targetLR = targetPoints[1];\n\n // Top & Bottom\n if (popupTB === targetTB || !['t', 'b'].includes(popupTB)) {\n alignStyle.top = y;\n } else if (popupTB === 't') {\n alignStyle.top = 0;\n } else {\n alignStyle.bottom = 0;\n }\n\n // Left & Right\n if (popupLR === targetLR || !['l', 'r'].includes(popupLR)) {\n alignStyle.left = x;\n } else if (popupLR === 'l') {\n alignStyle.left = 0;\n } else {\n alignStyle.right = 0;\n }\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: arrowRef,\n className: classNames(\"\".concat(prefixCls, \"-arrow\"), className),\n style: alignStyle\n }, content);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nimport * as React from 'react';\nexport default function Mask(props) {\n var prefixCls = props.prefixCls,\n open = props.open,\n zIndex = props.zIndex,\n mask = props.mask,\n motion = props.motion;\n if (!mask) {\n return null;\n }\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({}, motion, {\n motionAppear: true,\n visible: open,\n removeOnLeave: true\n }), function (_ref) {\n var className = _ref.className;\n return /*#__PURE__*/React.createElement(\"div\", {\n style: {\n zIndex: zIndex\n },\n className: classNames(\"\".concat(prefixCls, \"-mask\"), className)\n });\n });\n}","import * as React from 'react';\nvar PopupContent = /*#__PURE__*/React.memo(function (_ref) {\n var children = _ref.children;\n return children;\n}, function (_, next) {\n return next.cache;\n});\nif (process.env.NODE_ENV !== 'production') {\n PopupContent.displayName = 'PopupContent';\n}\nexport default PopupContent;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nimport ResizeObserver from 'rc-resize-observer';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { composeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport Arrow from \"./Arrow\";\nimport Mask from \"./Mask\";\nimport PopupContent from \"./PopupContent\";\nvar Popup = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var popup = props.popup,\n className = props.className,\n prefixCls = props.prefixCls,\n style = props.style,\n target = props.target,\n _onVisibleChanged = props.onVisibleChanged,\n open = props.open,\n keepDom = props.keepDom,\n fresh = props.fresh,\n onClick = props.onClick,\n mask = props.mask,\n arrow = props.arrow,\n arrowPos = props.arrowPos,\n align = props.align,\n motion = props.motion,\n maskMotion = props.maskMotion,\n forceRender = props.forceRender,\n getPopupContainer = props.getPopupContainer,\n autoDestroy = props.autoDestroy,\n Portal = props.portal,\n zIndex = props.zIndex,\n onMouseEnter = props.onMouseEnter,\n onMouseLeave = props.onMouseLeave,\n onPointerEnter = props.onPointerEnter,\n onPointerDownCapture = props.onPointerDownCapture,\n ready = props.ready,\n offsetX = props.offsetX,\n offsetY = props.offsetY,\n offsetR = props.offsetR,\n offsetB = props.offsetB,\n onAlign = props.onAlign,\n onPrepare = props.onPrepare,\n stretch = props.stretch,\n targetWidth = props.targetWidth,\n targetHeight = props.targetHeight;\n var childNode = typeof popup === 'function' ? popup() : popup;\n\n // We can not remove holder only when motion finished.\n var isNodeVisible = open || keepDom;\n\n // ======================= Container ========================\n var getPopupContainerNeedParams = (getPopupContainer === null || getPopupContainer === void 0 ? void 0 : getPopupContainer.length) > 0;\n var _React$useState = React.useState(!getPopupContainer || !getPopupContainerNeedParams),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n show = _React$useState2[0],\n setShow = _React$useState2[1];\n\n // Delay to show since `getPopupContainer` need target element\n useLayoutEffect(function () {\n if (!show && getPopupContainerNeedParams && target) {\n setShow(true);\n }\n }, [show, getPopupContainerNeedParams, target]);\n\n // ========================= Render =========================\n if (!show) {\n return null;\n }\n\n // >>>>> Offset\n var AUTO = 'auto';\n var offsetStyle = {\n left: '-1000vw',\n top: '-1000vh',\n right: AUTO,\n bottom: AUTO\n };\n\n // Set align style\n if (ready || !open) {\n var _experimental;\n var points = align.points;\n var dynamicInset = align.dynamicInset || ((_experimental = align._experimental) === null || _experimental === void 0 ? void 0 : _experimental.dynamicInset);\n var alignRight = dynamicInset && points[0][1] === 'r';\n var alignBottom = dynamicInset && points[0][0] === 'b';\n if (alignRight) {\n offsetStyle.right = offsetR;\n offsetStyle.left = AUTO;\n } else {\n offsetStyle.left = offsetX;\n offsetStyle.right = AUTO;\n }\n if (alignBottom) {\n offsetStyle.bottom = offsetB;\n offsetStyle.top = AUTO;\n } else {\n offsetStyle.top = offsetY;\n offsetStyle.bottom = AUTO;\n }\n }\n\n // >>>>> Misc\n var miscStyle = {};\n if (stretch) {\n if (stretch.includes('height') && targetHeight) {\n miscStyle.height = targetHeight;\n } else if (stretch.includes('minHeight') && targetHeight) {\n miscStyle.minHeight = targetHeight;\n }\n if (stretch.includes('width') && targetWidth) {\n miscStyle.width = targetWidth;\n } else if (stretch.includes('minWidth') && targetWidth) {\n miscStyle.minWidth = targetWidth;\n }\n }\n if (!open) {\n miscStyle.pointerEvents = 'none';\n }\n return /*#__PURE__*/React.createElement(Portal, {\n open: forceRender || isNodeVisible,\n getContainer: getPopupContainer && function () {\n return getPopupContainer(target);\n },\n autoDestroy: autoDestroy\n }, /*#__PURE__*/React.createElement(Mask, {\n prefixCls: prefixCls,\n open: open,\n zIndex: zIndex,\n mask: mask,\n motion: maskMotion\n }), /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: onAlign,\n disabled: !open\n }, function (resizeObserverRef) {\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({\n motionAppear: true,\n motionEnter: true,\n motionLeave: true,\n removeOnLeave: false,\n forceRender: forceRender,\n leavedClassName: \"\".concat(prefixCls, \"-hidden\")\n }, motion, {\n onAppearPrepare: onPrepare,\n onEnterPrepare: onPrepare,\n visible: open,\n onVisibleChanged: function onVisibleChanged(nextVisible) {\n var _motion$onVisibleChan;\n motion === null || motion === void 0 || (_motion$onVisibleChan = motion.onVisibleChanged) === null || _motion$onVisibleChan === void 0 || _motion$onVisibleChan.call(motion, nextVisible);\n _onVisibleChanged(nextVisible);\n }\n }), function (_ref, motionRef) {\n var motionClassName = _ref.className,\n motionStyle = _ref.style;\n var cls = classNames(prefixCls, motionClassName, className);\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: composeRef(resizeObserverRef, ref, motionRef),\n className: cls,\n style: _objectSpread(_objectSpread(_objectSpread(_objectSpread({\n '--arrow-x': \"\".concat(arrowPos.x || 0, \"px\"),\n '--arrow-y': \"\".concat(arrowPos.y || 0, \"px\")\n }, offsetStyle), miscStyle), motionStyle), {}, {\n boxSizing: 'border-box',\n zIndex: zIndex\n }, style),\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n onPointerEnter: onPointerEnter,\n onClick: onClick,\n onPointerDownCapture: onPointerDownCapture\n }, arrow && /*#__PURE__*/React.createElement(Arrow, {\n prefixCls: prefixCls,\n arrow: arrow,\n arrowPos: arrowPos,\n align: align\n }), /*#__PURE__*/React.createElement(PopupContent, {\n cache: !open && !fresh\n }, childNode));\n });\n }));\n});\nif (process.env.NODE_ENV !== 'production') {\n Popup.displayName = 'Popup';\n}\nexport default Popup;","import { fillRef, getNodeRef, supportRef, useComposeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nvar TriggerWrapper = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var children = props.children,\n getTriggerDOMNode = props.getTriggerDOMNode;\n var canUseRef = supportRef(children);\n\n // When use `getTriggerDOMNode`, we should do additional work to get the real dom\n var setRef = React.useCallback(function (node) {\n fillRef(ref, getTriggerDOMNode ? getTriggerDOMNode(node) : node);\n }, [getTriggerDOMNode]);\n var mergedRef = useComposeRef(setRef, getNodeRef(children));\n return canUseRef ? /*#__PURE__*/React.cloneElement(children, {\n ref: mergedRef\n }) : children;\n});\nif (process.env.NODE_ENV !== 'production') {\n TriggerWrapper.displayName = 'TriggerWrapper';\n}\nexport default TriggerWrapper;","import * as React from 'react';\nvar TriggerContext = /*#__PURE__*/React.createContext(null);\nexport default TriggerContext;","import * as React from 'react';\nfunction toArray(val) {\n return val ? Array.isArray(val) ? val : [val] : [];\n}\nexport default function useAction(mobile, action, showAction, hideAction) {\n return React.useMemo(function () {\n var mergedShowAction = toArray(showAction !== null && showAction !== void 0 ? showAction : action);\n var mergedHideAction = toArray(hideAction !== null && hideAction !== void 0 ? hideAction : action);\n var showActionSet = new Set(mergedShowAction);\n var hideActionSet = new Set(mergedHideAction);\n if (mobile) {\n if (showActionSet.has('hover')) {\n showActionSet.delete('hover');\n showActionSet.add('click');\n }\n if (hideActionSet.has('hover')) {\n hideActionSet.delete('hover');\n hideActionSet.add('click');\n }\n }\n return [showActionSet, hideActionSet];\n }, [mobile, action, showAction, hideAction]);\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nfunction isPointsEq() {\n var a1 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var a2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n var isAlignPoint = arguments.length > 2 ? arguments[2] : undefined;\n if (isAlignPoint) {\n return a1[0] === a2[0];\n }\n return a1[0] === a2[0] && a1[1] === a2[1];\n}\nexport function getAlignPopupClassName(builtinPlacements, prefixCls, align, isAlignPoint) {\n var points = align.points;\n var placements = Object.keys(builtinPlacements);\n for (var i = 0; i < placements.length; i += 1) {\n var _builtinPlacements$pl;\n var placement = placements[i];\n if (isPointsEq((_builtinPlacements$pl = builtinPlacements[placement]) === null || _builtinPlacements$pl === void 0 ? void 0 : _builtinPlacements$pl.points, points, isAlignPoint)) {\n return \"\".concat(prefixCls, \"-placement-\").concat(placement);\n }\n }\n return '';\n}\n\n/** @deprecated We should not use this if we can refactor all deps */\nexport function getMotion(prefixCls, motion, animation, transitionName) {\n if (motion) {\n return motion;\n }\n if (animation) {\n return {\n motionName: \"\".concat(prefixCls, \"-\").concat(animation)\n };\n }\n if (transitionName) {\n return {\n motionName: transitionName\n };\n }\n return null;\n}\nexport function getWin(ele) {\n return ele.ownerDocument.defaultView;\n}\n\n/**\n * Get all the scrollable parent elements of the element\n * @param ele The element to be detected\n * @param areaOnly Only return the parent which will cut visible area\n */\nexport function collectScroller(ele) {\n var scrollerList = [];\n var current = ele === null || ele === void 0 ? void 0 : ele.parentNode;\n var scrollStyle = ['hidden', 'scroll', 'clip', 'auto'];\n while (current) {\n if (current instanceof HTMLElement) {\n var _getWin$getComputedSt = getWin(current).getComputedStyle(current),\n overflowX = _getWin$getComputedSt.overflowX,\n overflowY = _getWin$getComputedSt.overflowY,\n overflow = _getWin$getComputedSt.overflow;\n if ([overflowX, overflowY, overflow].some(function (o) {\n return scrollStyle.includes(o);\n })) {\n scrollerList.push(current);\n }\n } else if (current instanceof ShadowRoot) {\n current = current.host;\n continue;\n }\n current = current.parentNode;\n }\n return scrollerList;\n}\nexport function toNum(num) {\n var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n return Number.isNaN(num) ? defaultValue : num;\n}\nfunction getPxValue(val) {\n return toNum(parseFloat(val), 0);\n}\n/**\n *\n *\n * **************************************\n * * Border *\n * * ************************** *\n * * * * * *\n * * B * * S * B *\n * * o * * c * o *\n * * r * Content * r * r *\n * * d * * o * d *\n * * e * * l * e *\n * * r ******************** l * r *\n * * * Scroll * *\n * * ************************** *\n * * Border *\n * **************************************\n *\n */\n/**\n * Get visible area of element\n */\nexport function getVisibleArea(initArea, scrollerList) {\n var visibleArea = _objectSpread({}, initArea);\n (scrollerList || []).forEach(function (ele) {\n if (ele instanceof HTMLBodyElement || ele instanceof HTMLHtmlElement) {\n return;\n }\n\n // Skip if static position which will not affect visible area\n var _getWin$getComputedSt2 = getWin(ele).getComputedStyle(ele),\n overflow = _getWin$getComputedSt2.overflow,\n overflowClipMargin = _getWin$getComputedSt2.overflowClipMargin,\n borderTopWidth = _getWin$getComputedSt2.borderTopWidth,\n borderBottomWidth = _getWin$getComputedSt2.borderBottomWidth,\n borderLeftWidth = _getWin$getComputedSt2.borderLeftWidth,\n borderRightWidth = _getWin$getComputedSt2.borderRightWidth;\n var eleRect = ele.getBoundingClientRect();\n var eleOutHeight = ele.offsetHeight,\n eleInnerHeight = ele.clientHeight,\n eleOutWidth = ele.offsetWidth,\n eleInnerWidth = ele.clientWidth;\n var borderTopNum = getPxValue(borderTopWidth);\n var borderBottomNum = getPxValue(borderBottomWidth);\n var borderLeftNum = getPxValue(borderLeftWidth);\n var borderRightNum = getPxValue(borderRightWidth);\n var scaleX = toNum(Math.round(eleRect.width / eleOutWidth * 1000) / 1000);\n var scaleY = toNum(Math.round(eleRect.height / eleOutHeight * 1000) / 1000);\n\n // Original visible area\n var eleScrollWidth = (eleOutWidth - eleInnerWidth - borderLeftNum - borderRightNum) * scaleX;\n var eleScrollHeight = (eleOutHeight - eleInnerHeight - borderTopNum - borderBottomNum) * scaleY;\n\n // Cut border size\n var scaledBorderTopWidth = borderTopNum * scaleY;\n var scaledBorderBottomWidth = borderBottomNum * scaleY;\n var scaledBorderLeftWidth = borderLeftNum * scaleX;\n var scaledBorderRightWidth = borderRightNum * scaleX;\n\n // Clip margin\n var clipMarginWidth = 0;\n var clipMarginHeight = 0;\n if (overflow === 'clip') {\n var clipNum = getPxValue(overflowClipMargin);\n clipMarginWidth = clipNum * scaleX;\n clipMarginHeight = clipNum * scaleY;\n }\n\n // Region\n var eleLeft = eleRect.x + scaledBorderLeftWidth - clipMarginWidth;\n var eleTop = eleRect.y + scaledBorderTopWidth - clipMarginHeight;\n var eleRight = eleLeft + eleRect.width + 2 * clipMarginWidth - scaledBorderLeftWidth - scaledBorderRightWidth - eleScrollWidth;\n var eleBottom = eleTop + eleRect.height + 2 * clipMarginHeight - scaledBorderTopWidth - scaledBorderBottomWidth - eleScrollHeight;\n visibleArea.left = Math.max(visibleArea.left, eleLeft);\n visibleArea.top = Math.max(visibleArea.top, eleTop);\n visibleArea.right = Math.min(visibleArea.right, eleRight);\n visibleArea.bottom = Math.min(visibleArea.bottom, eleBottom);\n });\n return visibleArea;\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { isDOM } from \"rc-util/es/Dom/findDOMNode\";\nimport isVisible from \"rc-util/es/Dom/isVisible\";\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport * as React from 'react';\nimport { collectScroller, getVisibleArea, getWin, toNum } from \"../util\";\nfunction getUnitOffset(size) {\n var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var offsetStr = \"\".concat(offset);\n var cells = offsetStr.match(/^(.*)\\%$/);\n if (cells) {\n return size * (parseFloat(cells[1]) / 100);\n }\n return parseFloat(offsetStr);\n}\nfunction getNumberOffset(rect, offset) {\n var _ref = offset || [],\n _ref2 = _slicedToArray(_ref, 2),\n offsetX = _ref2[0],\n offsetY = _ref2[1];\n return [getUnitOffset(rect.width, offsetX), getUnitOffset(rect.height, offsetY)];\n}\nfunction splitPoints() {\n var points = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n return [points[0], points[1]];\n}\nfunction getAlignPoint(rect, points) {\n var topBottom = points[0];\n var leftRight = points[1];\n var x;\n var y;\n\n // Top & Bottom\n if (topBottom === 't') {\n y = rect.y;\n } else if (topBottom === 'b') {\n y = rect.y + rect.height;\n } else {\n y = rect.y + rect.height / 2;\n }\n\n // Left & Right\n if (leftRight === 'l') {\n x = rect.x;\n } else if (leftRight === 'r') {\n x = rect.x + rect.width;\n } else {\n x = rect.x + rect.width / 2;\n }\n return {\n x: x,\n y: y\n };\n}\nfunction reversePoints(points, index) {\n var reverseMap = {\n t: 'b',\n b: 't',\n l: 'r',\n r: 'l'\n };\n return points.map(function (point, i) {\n if (i === index) {\n return reverseMap[point] || 'c';\n }\n return point;\n }).join('');\n}\nexport default function useAlign(open, popupEle, target, placement, builtinPlacements, popupAlign, onPopupAlign) {\n var _React$useState = React.useState({\n ready: false,\n offsetX: 0,\n offsetY: 0,\n offsetR: 0,\n offsetB: 0,\n arrowX: 0,\n arrowY: 0,\n scaleX: 1,\n scaleY: 1,\n align: builtinPlacements[placement] || {}\n }),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n offsetInfo = _React$useState2[0],\n setOffsetInfo = _React$useState2[1];\n var alignCountRef = React.useRef(0);\n var scrollerList = React.useMemo(function () {\n if (!popupEle) {\n return [];\n }\n return collectScroller(popupEle);\n }, [popupEle]);\n\n // ========================= Flip ==========================\n // We will memo flip info.\n // If size change to make flip, it will memo the flip info and use it in next align.\n var prevFlipRef = React.useRef({});\n var resetFlipCache = function resetFlipCache() {\n prevFlipRef.current = {};\n };\n if (!open) {\n resetFlipCache();\n }\n\n // ========================= Align =========================\n var onAlign = useEvent(function () {\n if (popupEle && target && open) {\n var _popupElement$parentE, _popupRect$x, _popupRect$y, _popupElement$parentE2;\n var popupElement = popupEle;\n var doc = popupElement.ownerDocument;\n var win = getWin(popupElement);\n var _win$getComputedStyle = win.getComputedStyle(popupElement),\n popupPosition = _win$getComputedStyle.position;\n var originLeft = popupElement.style.left;\n var originTop = popupElement.style.top;\n var originRight = popupElement.style.right;\n var originBottom = popupElement.style.bottom;\n var originOverflow = popupElement.style.overflow;\n\n // Placement\n var placementInfo = _objectSpread(_objectSpread({}, builtinPlacements[placement]), popupAlign);\n\n // placeholder element\n var placeholderElement = doc.createElement('div');\n (_popupElement$parentE = popupElement.parentElement) === null || _popupElement$parentE === void 0 || _popupElement$parentE.appendChild(placeholderElement);\n placeholderElement.style.left = \"\".concat(popupElement.offsetLeft, \"px\");\n placeholderElement.style.top = \"\".concat(popupElement.offsetTop, \"px\");\n placeholderElement.style.position = popupPosition;\n placeholderElement.style.height = \"\".concat(popupElement.offsetHeight, \"px\");\n placeholderElement.style.width = \"\".concat(popupElement.offsetWidth, \"px\");\n\n // Reset first\n popupElement.style.left = '0';\n popupElement.style.top = '0';\n popupElement.style.right = 'auto';\n popupElement.style.bottom = 'auto';\n popupElement.style.overflow = 'hidden';\n\n // Calculate align style, we should consider `transform` case\n var targetRect;\n if (Array.isArray(target)) {\n targetRect = {\n x: target[0],\n y: target[1],\n width: 0,\n height: 0\n };\n } else {\n var _rect$x, _rect$y;\n var rect = target.getBoundingClientRect();\n rect.x = (_rect$x = rect.x) !== null && _rect$x !== void 0 ? _rect$x : rect.left;\n rect.y = (_rect$y = rect.y) !== null && _rect$y !== void 0 ? _rect$y : rect.top;\n targetRect = {\n x: rect.x,\n y: rect.y,\n width: rect.width,\n height: rect.height\n };\n }\n var popupRect = popupElement.getBoundingClientRect();\n var _win$getComputedStyle2 = win.getComputedStyle(popupElement),\n height = _win$getComputedStyle2.height,\n width = _win$getComputedStyle2.width;\n popupRect.x = (_popupRect$x = popupRect.x) !== null && _popupRect$x !== void 0 ? _popupRect$x : popupRect.left;\n popupRect.y = (_popupRect$y = popupRect.y) !== null && _popupRect$y !== void 0 ? _popupRect$y : popupRect.top;\n var _doc$documentElement = doc.documentElement,\n clientWidth = _doc$documentElement.clientWidth,\n clientHeight = _doc$documentElement.clientHeight,\n scrollWidth = _doc$documentElement.scrollWidth,\n scrollHeight = _doc$documentElement.scrollHeight,\n scrollTop = _doc$documentElement.scrollTop,\n scrollLeft = _doc$documentElement.scrollLeft;\n var popupHeight = popupRect.height;\n var popupWidth = popupRect.width;\n var targetHeight = targetRect.height;\n var targetWidth = targetRect.width;\n\n // Get bounding of visible area\n var visibleRegion = {\n left: 0,\n top: 0,\n right: clientWidth,\n bottom: clientHeight\n };\n var scrollRegion = {\n left: -scrollLeft,\n top: -scrollTop,\n right: scrollWidth - scrollLeft,\n bottom: scrollHeight - scrollTop\n };\n var htmlRegion = placementInfo.htmlRegion;\n var VISIBLE = 'visible';\n var VISIBLE_FIRST = 'visibleFirst';\n if (htmlRegion !== 'scroll' && htmlRegion !== VISIBLE_FIRST) {\n htmlRegion = VISIBLE;\n }\n var isVisibleFirst = htmlRegion === VISIBLE_FIRST;\n var scrollRegionArea = getVisibleArea(scrollRegion, scrollerList);\n var visibleRegionArea = getVisibleArea(visibleRegion, scrollerList);\n var visibleArea = htmlRegion === VISIBLE ? visibleRegionArea : scrollRegionArea;\n\n // When set to `visibleFirst`,\n // the check `adjust` logic will use `visibleRegion` for check first.\n var adjustCheckVisibleArea = isVisibleFirst ? visibleRegionArea : visibleArea;\n\n // Record right & bottom align data\n popupElement.style.left = 'auto';\n popupElement.style.top = 'auto';\n popupElement.style.right = '0';\n popupElement.style.bottom = '0';\n var popupMirrorRect = popupElement.getBoundingClientRect();\n\n // Reset back\n popupElement.style.left = originLeft;\n popupElement.style.top = originTop;\n popupElement.style.right = originRight;\n popupElement.style.bottom = originBottom;\n popupElement.style.overflow = originOverflow;\n (_popupElement$parentE2 = popupElement.parentElement) === null || _popupElement$parentE2 === void 0 || _popupElement$parentE2.removeChild(placeholderElement);\n\n // Calculate scale\n var _scaleX = toNum(Math.round(popupWidth / parseFloat(width) * 1000) / 1000);\n var _scaleY = toNum(Math.round(popupHeight / parseFloat(height) * 1000) / 1000);\n\n // No need to align since it's not visible in view\n if (_scaleX === 0 || _scaleY === 0 || isDOM(target) && !isVisible(target)) {\n return;\n }\n\n // Offset\n var offset = placementInfo.offset,\n targetOffset = placementInfo.targetOffset;\n var _getNumberOffset = getNumberOffset(popupRect, offset),\n _getNumberOffset2 = _slicedToArray(_getNumberOffset, 2),\n popupOffsetX = _getNumberOffset2[0],\n popupOffsetY = _getNumberOffset2[1];\n var _getNumberOffset3 = getNumberOffset(targetRect, targetOffset),\n _getNumberOffset4 = _slicedToArray(_getNumberOffset3, 2),\n targetOffsetX = _getNumberOffset4[0],\n targetOffsetY = _getNumberOffset4[1];\n targetRect.x -= targetOffsetX;\n targetRect.y -= targetOffsetY;\n\n // Points\n var _ref3 = placementInfo.points || [],\n _ref4 = _slicedToArray(_ref3, 2),\n popupPoint = _ref4[0],\n targetPoint = _ref4[1];\n var targetPoints = splitPoints(targetPoint);\n var popupPoints = splitPoints(popupPoint);\n var targetAlignPoint = getAlignPoint(targetRect, targetPoints);\n var popupAlignPoint = getAlignPoint(popupRect, popupPoints);\n\n // Real align info may not same as origin one\n var nextAlignInfo = _objectSpread({}, placementInfo);\n\n // Next Offset\n var nextOffsetX = targetAlignPoint.x - popupAlignPoint.x + popupOffsetX;\n var nextOffsetY = targetAlignPoint.y - popupAlignPoint.y + popupOffsetY;\n\n // ============== Intersection ===============\n // Get area by position. Used for check if flip area is better\n function getIntersectionVisibleArea(offsetX, offsetY) {\n var area = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : visibleArea;\n var l = popupRect.x + offsetX;\n var t = popupRect.y + offsetY;\n var r = l + popupWidth;\n var b = t + popupHeight;\n var visibleL = Math.max(l, area.left);\n var visibleT = Math.max(t, area.top);\n var visibleR = Math.min(r, area.right);\n var visibleB = Math.min(b, area.bottom);\n return Math.max(0, (visibleR - visibleL) * (visibleB - visibleT));\n }\n var originIntersectionVisibleArea = getIntersectionVisibleArea(nextOffsetX, nextOffsetY);\n\n // As `visibleFirst`, we prepare this for check\n var originIntersectionRecommendArea = getIntersectionVisibleArea(nextOffsetX, nextOffsetY, visibleRegionArea);\n\n // ========================== Overflow ===========================\n var targetAlignPointTL = getAlignPoint(targetRect, ['t', 'l']);\n var popupAlignPointTL = getAlignPoint(popupRect, ['t', 'l']);\n var targetAlignPointBR = getAlignPoint(targetRect, ['b', 'r']);\n var popupAlignPointBR = getAlignPoint(popupRect, ['b', 'r']);\n var overflow = placementInfo.overflow || {};\n var adjustX = overflow.adjustX,\n adjustY = overflow.adjustY,\n shiftX = overflow.shiftX,\n shiftY = overflow.shiftY;\n var supportAdjust = function supportAdjust(val) {\n if (typeof val === 'boolean') {\n return val;\n }\n return val >= 0;\n };\n\n // Prepare position\n var nextPopupY;\n var nextPopupBottom;\n var nextPopupX;\n var nextPopupRight;\n function syncNextPopupPosition() {\n nextPopupY = popupRect.y + nextOffsetY;\n nextPopupBottom = nextPopupY + popupHeight;\n nextPopupX = popupRect.x + nextOffsetX;\n nextPopupRight = nextPopupX + popupWidth;\n }\n syncNextPopupPosition();\n\n // >>>>>>>>>> Top & Bottom\n var needAdjustY = supportAdjust(adjustY);\n var sameTB = popupPoints[0] === targetPoints[0];\n\n // Bottom to Top\n if (needAdjustY && popupPoints[0] === 't' && (nextPopupBottom > adjustCheckVisibleArea.bottom || prevFlipRef.current.bt)) {\n var tmpNextOffsetY = nextOffsetY;\n if (sameTB) {\n tmpNextOffsetY -= popupHeight - targetHeight;\n } else {\n tmpNextOffsetY = targetAlignPointTL.y - popupAlignPointBR.y - popupOffsetY;\n }\n var newVisibleArea = getIntersectionVisibleArea(nextOffsetX, tmpNextOffsetY);\n var newVisibleRecommendArea = getIntersectionVisibleArea(nextOffsetX, tmpNextOffsetY, visibleRegionArea);\n if (\n // Of course use larger one\n newVisibleArea > originIntersectionVisibleArea || newVisibleArea === originIntersectionVisibleArea && (!isVisibleFirst ||\n // Choose recommend one\n newVisibleRecommendArea >= originIntersectionRecommendArea)) {\n prevFlipRef.current.bt = true;\n nextOffsetY = tmpNextOffsetY;\n popupOffsetY = -popupOffsetY;\n nextAlignInfo.points = [reversePoints(popupPoints, 0), reversePoints(targetPoints, 0)];\n } else {\n prevFlipRef.current.bt = false;\n }\n }\n\n // Top to Bottom\n if (needAdjustY && popupPoints[0] === 'b' && (nextPopupY < adjustCheckVisibleArea.top || prevFlipRef.current.tb)) {\n var _tmpNextOffsetY = nextOffsetY;\n if (sameTB) {\n _tmpNextOffsetY += popupHeight - targetHeight;\n } else {\n _tmpNextOffsetY = targetAlignPointBR.y - popupAlignPointTL.y - popupOffsetY;\n }\n var _newVisibleArea = getIntersectionVisibleArea(nextOffsetX, _tmpNextOffsetY);\n var _newVisibleRecommendArea = getIntersectionVisibleArea(nextOffsetX, _tmpNextOffsetY, visibleRegionArea);\n if (\n // Of course use larger one\n _newVisibleArea > originIntersectionVisibleArea || _newVisibleArea === originIntersectionVisibleArea && (!isVisibleFirst ||\n // Choose recommend one\n _newVisibleRecommendArea >= originIntersectionRecommendArea)) {\n prevFlipRef.current.tb = true;\n nextOffsetY = _tmpNextOffsetY;\n popupOffsetY = -popupOffsetY;\n nextAlignInfo.points = [reversePoints(popupPoints, 0), reversePoints(targetPoints, 0)];\n } else {\n prevFlipRef.current.tb = false;\n }\n }\n\n // >>>>>>>>>> Left & Right\n var needAdjustX = supportAdjust(adjustX);\n\n // >>>>> Flip\n var sameLR = popupPoints[1] === targetPoints[1];\n\n // Right to Left\n if (needAdjustX && popupPoints[1] === 'l' && (nextPopupRight > adjustCheckVisibleArea.right || prevFlipRef.current.rl)) {\n var tmpNextOffsetX = nextOffsetX;\n if (sameLR) {\n tmpNextOffsetX -= popupWidth - targetWidth;\n } else {\n tmpNextOffsetX = targetAlignPointTL.x - popupAlignPointBR.x - popupOffsetX;\n }\n var _newVisibleArea2 = getIntersectionVisibleArea(tmpNextOffsetX, nextOffsetY);\n var _newVisibleRecommendArea2 = getIntersectionVisibleArea(tmpNextOffsetX, nextOffsetY, visibleRegionArea);\n if (\n // Of course use larger one\n _newVisibleArea2 > originIntersectionVisibleArea || _newVisibleArea2 === originIntersectionVisibleArea && (!isVisibleFirst ||\n // Choose recommend one\n _newVisibleRecommendArea2 >= originIntersectionRecommendArea)) {\n prevFlipRef.current.rl = true;\n nextOffsetX = tmpNextOffsetX;\n popupOffsetX = -popupOffsetX;\n nextAlignInfo.points = [reversePoints(popupPoints, 1), reversePoints(targetPoints, 1)];\n } else {\n prevFlipRef.current.rl = false;\n }\n }\n\n // Left to Right\n if (needAdjustX && popupPoints[1] === 'r' && (nextPopupX < adjustCheckVisibleArea.left || prevFlipRef.current.lr)) {\n var _tmpNextOffsetX = nextOffsetX;\n if (sameLR) {\n _tmpNextOffsetX += popupWidth - targetWidth;\n } else {\n _tmpNextOffsetX = targetAlignPointBR.x - popupAlignPointTL.x - popupOffsetX;\n }\n var _newVisibleArea3 = getIntersectionVisibleArea(_tmpNextOffsetX, nextOffsetY);\n var _newVisibleRecommendArea3 = getIntersectionVisibleArea(_tmpNextOffsetX, nextOffsetY, visibleRegionArea);\n if (\n // Of course use larger one\n _newVisibleArea3 > originIntersectionVisibleArea || _newVisibleArea3 === originIntersectionVisibleArea && (!isVisibleFirst ||\n // Choose recommend one\n _newVisibleRecommendArea3 >= originIntersectionRecommendArea)) {\n prevFlipRef.current.lr = true;\n nextOffsetX = _tmpNextOffsetX;\n popupOffsetX = -popupOffsetX;\n nextAlignInfo.points = [reversePoints(popupPoints, 1), reversePoints(targetPoints, 1)];\n } else {\n prevFlipRef.current.lr = false;\n }\n }\n\n // ============================ Shift ============================\n syncNextPopupPosition();\n var numShiftX = shiftX === true ? 0 : shiftX;\n if (typeof numShiftX === 'number') {\n // Left\n if (nextPopupX < visibleRegionArea.left) {\n nextOffsetX -= nextPopupX - visibleRegionArea.left - popupOffsetX;\n if (targetRect.x + targetWidth < visibleRegionArea.left + numShiftX) {\n nextOffsetX += targetRect.x - visibleRegionArea.left + targetWidth - numShiftX;\n }\n }\n\n // Right\n if (nextPopupRight > visibleRegionArea.right) {\n nextOffsetX -= nextPopupRight - visibleRegionArea.right - popupOffsetX;\n if (targetRect.x > visibleRegionArea.right - numShiftX) {\n nextOffsetX += targetRect.x - visibleRegionArea.right + numShiftX;\n }\n }\n }\n var numShiftY = shiftY === true ? 0 : shiftY;\n if (typeof numShiftY === 'number') {\n // Top\n if (nextPopupY < visibleRegionArea.top) {\n nextOffsetY -= nextPopupY - visibleRegionArea.top - popupOffsetY;\n\n // When target if far away from visible area\n // Stop shift\n if (targetRect.y + targetHeight < visibleRegionArea.top + numShiftY) {\n nextOffsetY += targetRect.y - visibleRegionArea.top + targetHeight - numShiftY;\n }\n }\n\n // Bottom\n if (nextPopupBottom > visibleRegionArea.bottom) {\n nextOffsetY -= nextPopupBottom - visibleRegionArea.bottom - popupOffsetY;\n if (targetRect.y > visibleRegionArea.bottom - numShiftY) {\n nextOffsetY += targetRect.y - visibleRegionArea.bottom + numShiftY;\n }\n }\n }\n\n // ============================ Arrow ============================\n // Arrow center align\n var popupLeft = popupRect.x + nextOffsetX;\n var popupRight = popupLeft + popupWidth;\n var popupTop = popupRect.y + nextOffsetY;\n var popupBottom = popupTop + popupHeight;\n var targetLeft = targetRect.x;\n var targetRight = targetLeft + targetWidth;\n var targetTop = targetRect.y;\n var targetBottom = targetTop + targetHeight;\n var maxLeft = Math.max(popupLeft, targetLeft);\n var minRight = Math.min(popupRight, targetRight);\n var xCenter = (maxLeft + minRight) / 2;\n var nextArrowX = xCenter - popupLeft;\n var maxTop = Math.max(popupTop, targetTop);\n var minBottom = Math.min(popupBottom, targetBottom);\n var yCenter = (maxTop + minBottom) / 2;\n var nextArrowY = yCenter - popupTop;\n onPopupAlign === null || onPopupAlign === void 0 || onPopupAlign(popupEle, nextAlignInfo);\n\n // Additional calculate right & bottom position\n var offsetX4Right = popupMirrorRect.right - popupRect.x - (nextOffsetX + popupRect.width);\n var offsetY4Bottom = popupMirrorRect.bottom - popupRect.y - (nextOffsetY + popupRect.height);\n if (_scaleX === 1) {\n nextOffsetX = Math.round(nextOffsetX);\n offsetX4Right = Math.round(offsetX4Right);\n }\n if (_scaleY === 1) {\n nextOffsetY = Math.round(nextOffsetY);\n offsetY4Bottom = Math.round(offsetY4Bottom);\n }\n var nextOffsetInfo = {\n ready: true,\n offsetX: nextOffsetX / _scaleX,\n offsetY: nextOffsetY / _scaleY,\n offsetR: offsetX4Right / _scaleX,\n offsetB: offsetY4Bottom / _scaleY,\n arrowX: nextArrowX / _scaleX,\n arrowY: nextArrowY / _scaleY,\n scaleX: _scaleX,\n scaleY: _scaleY,\n align: nextAlignInfo\n };\n setOffsetInfo(nextOffsetInfo);\n }\n });\n var triggerAlign = function triggerAlign() {\n alignCountRef.current += 1;\n var id = alignCountRef.current;\n\n // Merge all align requirement into one frame\n Promise.resolve().then(function () {\n if (alignCountRef.current === id) {\n onAlign();\n }\n });\n };\n\n // Reset ready status when placement & open changed\n var resetReady = function resetReady() {\n setOffsetInfo(function (ori) {\n return _objectSpread(_objectSpread({}, ori), {}, {\n ready: false\n });\n });\n };\n useLayoutEffect(resetReady, [placement]);\n useLayoutEffect(function () {\n if (!open) {\n resetReady();\n }\n }, [open]);\n return [offsetInfo.ready, offsetInfo.offsetX, offsetInfo.offsetY, offsetInfo.offsetR, offsetInfo.offsetB, offsetInfo.arrowX, offsetInfo.arrowY, offsetInfo.scaleX, offsetInfo.scaleY, offsetInfo.align, triggerAlign];\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"children\", \"action\", \"showAction\", \"hideAction\", \"popupVisible\", \"defaultPopupVisible\", \"onPopupVisibleChange\", \"afterPopupVisibleChange\", \"mouseEnterDelay\", \"mouseLeaveDelay\", \"focusDelay\", \"blurDelay\", \"mask\", \"maskClosable\", \"getPopupContainer\", \"forceRender\", \"autoDestroy\", \"destroyPopupOnHide\", \"popup\", \"popupClassName\", \"popupStyle\", \"popupPlacement\", \"builtinPlacements\", \"popupAlign\", \"zIndex\", \"stretch\", \"getPopupClassNameFromAlign\", \"fresh\", \"alignPoint\", \"onPopupClick\", \"onPopupAlign\", \"arrow\", \"popupMotion\", \"maskMotion\", \"popupTransitionName\", \"popupAnimation\", \"maskTransitionName\", \"maskAnimation\", \"className\", \"getTriggerDOMNode\"];\nimport Portal from '@rc-component/portal';\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport { isDOM } from \"rc-util/es/Dom/findDOMNode\";\nimport { getShadowRoot } from \"rc-util/es/Dom/shadow\";\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport useId from \"rc-util/es/hooks/useId\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport isMobile from \"rc-util/es/isMobile\";\nimport * as React from 'react';\nimport Popup from \"./Popup\";\nimport TriggerWrapper from \"./TriggerWrapper\";\nimport TriggerContext from \"./context\";\nimport useAction from \"./hooks/useAction\";\nimport useAlign from \"./hooks/useAlign\";\nimport useWatch from \"./hooks/useWatch\";\nimport useWinClick from \"./hooks/useWinClick\";\nimport { getAlignPopupClassName, getMotion } from \"./util\";\n\n// Removed Props List\n// Seems this can be auto\n// getDocument?: (element?: HTMLElement) => Document;\n\n// New version will not wrap popup with `rc-trigger-popup-content` when multiple children\n\nexport function generateTrigger() {\n var PortalComponent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Portal;\n var Trigger = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-trigger-popup' : _props$prefixCls,\n children = props.children,\n _props$action = props.action,\n action = _props$action === void 0 ? 'hover' : _props$action,\n showAction = props.showAction,\n hideAction = props.hideAction,\n popupVisible = props.popupVisible,\n defaultPopupVisible = props.defaultPopupVisible,\n onPopupVisibleChange = props.onPopupVisibleChange,\n afterPopupVisibleChange = props.afterPopupVisibleChange,\n mouseEnterDelay = props.mouseEnterDelay,\n _props$mouseLeaveDela = props.mouseLeaveDelay,\n mouseLeaveDelay = _props$mouseLeaveDela === void 0 ? 0.1 : _props$mouseLeaveDela,\n focusDelay = props.focusDelay,\n blurDelay = props.blurDelay,\n mask = props.mask,\n _props$maskClosable = props.maskClosable,\n maskClosable = _props$maskClosable === void 0 ? true : _props$maskClosable,\n getPopupContainer = props.getPopupContainer,\n forceRender = props.forceRender,\n autoDestroy = props.autoDestroy,\n destroyPopupOnHide = props.destroyPopupOnHide,\n popup = props.popup,\n popupClassName = props.popupClassName,\n popupStyle = props.popupStyle,\n popupPlacement = props.popupPlacement,\n _props$builtinPlaceme = props.builtinPlacements,\n builtinPlacements = _props$builtinPlaceme === void 0 ? {} : _props$builtinPlaceme,\n popupAlign = props.popupAlign,\n zIndex = props.zIndex,\n stretch = props.stretch,\n getPopupClassNameFromAlign = props.getPopupClassNameFromAlign,\n fresh = props.fresh,\n alignPoint = props.alignPoint,\n onPopupClick = props.onPopupClick,\n onPopupAlign = props.onPopupAlign,\n arrow = props.arrow,\n popupMotion = props.popupMotion,\n maskMotion = props.maskMotion,\n popupTransitionName = props.popupTransitionName,\n popupAnimation = props.popupAnimation,\n maskTransitionName = props.maskTransitionName,\n maskAnimation = props.maskAnimation,\n className = props.className,\n getTriggerDOMNode = props.getTriggerDOMNode,\n restProps = _objectWithoutProperties(props, _excluded);\n var mergedAutoDestroy = autoDestroy || destroyPopupOnHide || false;\n\n // =========================== Mobile ===========================\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n mobile = _React$useState2[0],\n setMobile = _React$useState2[1];\n useLayoutEffect(function () {\n setMobile(isMobile());\n }, []);\n\n // ========================== Context ===========================\n var subPopupElements = React.useRef({});\n var parentContext = React.useContext(TriggerContext);\n var context = React.useMemo(function () {\n return {\n registerSubPopup: function registerSubPopup(id, subPopupEle) {\n subPopupElements.current[id] = subPopupEle;\n parentContext === null || parentContext === void 0 || parentContext.registerSubPopup(id, subPopupEle);\n }\n };\n }, [parentContext]);\n\n // =========================== Popup ============================\n var id = useId();\n var _React$useState3 = React.useState(null),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n popupEle = _React$useState4[0],\n setPopupEle = _React$useState4[1];\n\n // Used for forwardRef popup. Not use internal\n var externalPopupRef = React.useRef(null);\n var setPopupRef = useEvent(function (node) {\n externalPopupRef.current = node;\n if (isDOM(node) && popupEle !== node) {\n setPopupEle(node);\n }\n parentContext === null || parentContext === void 0 || parentContext.registerSubPopup(id, node);\n });\n\n // =========================== Target ===========================\n // Use state to control here since `useRef` update not trigger render\n var _React$useState5 = React.useState(null),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n targetEle = _React$useState6[0],\n setTargetEle = _React$useState6[1];\n\n // Used for forwardRef target. Not use internal\n var externalForwardRef = React.useRef(null);\n var setTargetRef = useEvent(function (node) {\n if (isDOM(node) && targetEle !== node) {\n setTargetEle(node);\n externalForwardRef.current = node;\n }\n });\n\n // ========================== Children ==========================\n var child = React.Children.only(children);\n var originChildProps = (child === null || child === void 0 ? void 0 : child.props) || {};\n var cloneProps = {};\n var inPopupOrChild = useEvent(function (ele) {\n var _getShadowRoot, _getShadowRoot2;\n var childDOM = targetEle;\n return (childDOM === null || childDOM === void 0 ? void 0 : childDOM.contains(ele)) || ((_getShadowRoot = getShadowRoot(childDOM)) === null || _getShadowRoot === void 0 ? void 0 : _getShadowRoot.host) === ele || ele === childDOM || (popupEle === null || popupEle === void 0 ? void 0 : popupEle.contains(ele)) || ((_getShadowRoot2 = getShadowRoot(popupEle)) === null || _getShadowRoot2 === void 0 ? void 0 : _getShadowRoot2.host) === ele || ele === popupEle || Object.values(subPopupElements.current).some(function (subPopupEle) {\n return (subPopupEle === null || subPopupEle === void 0 ? void 0 : subPopupEle.contains(ele)) || ele === subPopupEle;\n });\n });\n\n // =========================== Motion ===========================\n var mergePopupMotion = getMotion(prefixCls, popupMotion, popupAnimation, popupTransitionName);\n var mergeMaskMotion = getMotion(prefixCls, maskMotion, maskAnimation, maskTransitionName);\n\n // ============================ Open ============================\n var _React$useState7 = React.useState(defaultPopupVisible || false),\n _React$useState8 = _slicedToArray(_React$useState7, 2),\n internalOpen = _React$useState8[0],\n setInternalOpen = _React$useState8[1];\n\n // Render still use props as first priority\n var mergedOpen = popupVisible !== null && popupVisible !== void 0 ? popupVisible : internalOpen;\n\n // We use effect sync here in case `popupVisible` back to `undefined`\n var setMergedOpen = useEvent(function (nextOpen) {\n if (popupVisible === undefined) {\n setInternalOpen(nextOpen);\n }\n });\n useLayoutEffect(function () {\n setInternalOpen(popupVisible || false);\n }, [popupVisible]);\n var openRef = React.useRef(mergedOpen);\n openRef.current = mergedOpen;\n var lastTriggerRef = React.useRef([]);\n lastTriggerRef.current = [];\n var internalTriggerOpen = useEvent(function (nextOpen) {\n var _lastTriggerRef$curre;\n setMergedOpen(nextOpen);\n\n // Enter or Pointer will both trigger open state change\n // We only need take one to avoid duplicated change event trigger\n // Use `lastTriggerRef` to record last open type\n if (((_lastTriggerRef$curre = lastTriggerRef.current[lastTriggerRef.current.length - 1]) !== null && _lastTriggerRef$curre !== void 0 ? _lastTriggerRef$curre : mergedOpen) !== nextOpen) {\n lastTriggerRef.current.push(nextOpen);\n onPopupVisibleChange === null || onPopupVisibleChange === void 0 || onPopupVisibleChange(nextOpen);\n }\n });\n\n // Trigger for delay\n var delayRef = React.useRef();\n var clearDelay = function clearDelay() {\n clearTimeout(delayRef.current);\n };\n var triggerOpen = function triggerOpen(nextOpen) {\n var delay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n clearDelay();\n if (delay === 0) {\n internalTriggerOpen(nextOpen);\n } else {\n delayRef.current = setTimeout(function () {\n internalTriggerOpen(nextOpen);\n }, delay * 1000);\n }\n };\n React.useEffect(function () {\n return clearDelay;\n }, []);\n\n // ========================== Motion ============================\n var _React$useState9 = React.useState(false),\n _React$useState10 = _slicedToArray(_React$useState9, 2),\n inMotion = _React$useState10[0],\n setInMotion = _React$useState10[1];\n useLayoutEffect(function (firstMount) {\n if (!firstMount || mergedOpen) {\n setInMotion(true);\n }\n }, [mergedOpen]);\n var _React$useState11 = React.useState(null),\n _React$useState12 = _slicedToArray(_React$useState11, 2),\n motionPrepareResolve = _React$useState12[0],\n setMotionPrepareResolve = _React$useState12[1];\n\n // =========================== Align ============================\n var _React$useState13 = React.useState(null),\n _React$useState14 = _slicedToArray(_React$useState13, 2),\n mousePos = _React$useState14[0],\n setMousePos = _React$useState14[1];\n var setMousePosByEvent = function setMousePosByEvent(event) {\n setMousePos([event.clientX, event.clientY]);\n };\n var _useAlign = useAlign(mergedOpen, popupEle, alignPoint && mousePos !== null ? mousePos : targetEle, popupPlacement, builtinPlacements, popupAlign, onPopupAlign),\n _useAlign2 = _slicedToArray(_useAlign, 11),\n ready = _useAlign2[0],\n offsetX = _useAlign2[1],\n offsetY = _useAlign2[2],\n offsetR = _useAlign2[3],\n offsetB = _useAlign2[4],\n arrowX = _useAlign2[5],\n arrowY = _useAlign2[6],\n scaleX = _useAlign2[7],\n scaleY = _useAlign2[8],\n alignInfo = _useAlign2[9],\n onAlign = _useAlign2[10];\n var _useAction = useAction(mobile, action, showAction, hideAction),\n _useAction2 = _slicedToArray(_useAction, 2),\n showActions = _useAction2[0],\n hideActions = _useAction2[1];\n var clickToShow = showActions.has('click');\n var clickToHide = hideActions.has('click') || hideActions.has('contextMenu');\n var triggerAlign = useEvent(function () {\n if (!inMotion) {\n onAlign();\n }\n });\n var onScroll = function onScroll() {\n if (openRef.current && alignPoint && clickToHide) {\n triggerOpen(false);\n }\n };\n useWatch(mergedOpen, targetEle, popupEle, triggerAlign, onScroll);\n useLayoutEffect(function () {\n triggerAlign();\n }, [mousePos, popupPlacement]);\n\n // When no builtinPlacements and popupAlign changed\n useLayoutEffect(function () {\n if (mergedOpen && !(builtinPlacements !== null && builtinPlacements !== void 0 && builtinPlacements[popupPlacement])) {\n triggerAlign();\n }\n }, [JSON.stringify(popupAlign)]);\n var alignedClassName = React.useMemo(function () {\n var baseClassName = getAlignPopupClassName(builtinPlacements, prefixCls, alignInfo, alignPoint);\n return classNames(baseClassName, getPopupClassNameFromAlign === null || getPopupClassNameFromAlign === void 0 ? void 0 : getPopupClassNameFromAlign(alignInfo));\n }, [alignInfo, getPopupClassNameFromAlign, builtinPlacements, prefixCls, alignPoint]);\n\n // ============================ Refs ============================\n React.useImperativeHandle(ref, function () {\n return {\n nativeElement: externalForwardRef.current,\n popupElement: externalPopupRef.current,\n forceAlign: triggerAlign\n };\n });\n\n // ========================== Stretch ===========================\n var _React$useState15 = React.useState(0),\n _React$useState16 = _slicedToArray(_React$useState15, 2),\n targetWidth = _React$useState16[0],\n setTargetWidth = _React$useState16[1];\n var _React$useState17 = React.useState(0),\n _React$useState18 = _slicedToArray(_React$useState17, 2),\n targetHeight = _React$useState18[0],\n setTargetHeight = _React$useState18[1];\n var syncTargetSize = function syncTargetSize() {\n if (stretch && targetEle) {\n var rect = targetEle.getBoundingClientRect();\n setTargetWidth(rect.width);\n setTargetHeight(rect.height);\n }\n };\n var onTargetResize = function onTargetResize() {\n syncTargetSize();\n triggerAlign();\n };\n\n // ========================== Motion ============================\n var onVisibleChanged = function onVisibleChanged(visible) {\n setInMotion(false);\n onAlign();\n afterPopupVisibleChange === null || afterPopupVisibleChange === void 0 || afterPopupVisibleChange(visible);\n };\n\n // We will trigger align when motion is in prepare\n var onPrepare = function onPrepare() {\n return new Promise(function (resolve) {\n syncTargetSize();\n setMotionPrepareResolve(function () {\n return resolve;\n });\n });\n };\n useLayoutEffect(function () {\n if (motionPrepareResolve) {\n onAlign();\n motionPrepareResolve();\n setMotionPrepareResolve(null);\n }\n }, [motionPrepareResolve]);\n\n // =========================== Action ===========================\n /**\n * Util wrapper for trigger action\n */\n function wrapperAction(eventName, nextOpen, delay, preEvent) {\n cloneProps[eventName] = function (event) {\n var _originChildProps$eve;\n preEvent === null || preEvent === void 0 || preEvent(event);\n triggerOpen(nextOpen, delay);\n\n // Pass to origin\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n (_originChildProps$eve = originChildProps[eventName]) === null || _originChildProps$eve === void 0 || _originChildProps$eve.call.apply(_originChildProps$eve, [originChildProps, event].concat(args));\n };\n }\n\n // ======================= Action: Click ========================\n if (clickToShow || clickToHide) {\n cloneProps.onClick = function (event) {\n var _originChildProps$onC;\n if (openRef.current && clickToHide) {\n triggerOpen(false);\n } else if (!openRef.current && clickToShow) {\n setMousePosByEvent(event);\n triggerOpen(true);\n }\n\n // Pass to origin\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n (_originChildProps$onC = originChildProps.onClick) === null || _originChildProps$onC === void 0 || _originChildProps$onC.call.apply(_originChildProps$onC, [originChildProps, event].concat(args));\n };\n }\n\n // Click to hide is special action since click popup element should not hide\n var onPopupPointerDown = useWinClick(mergedOpen, clickToHide, targetEle, popupEle, mask, maskClosable, inPopupOrChild, triggerOpen);\n\n // ======================= Action: Hover ========================\n var hoverToShow = showActions.has('hover');\n var hoverToHide = hideActions.has('hover');\n var onPopupMouseEnter;\n var onPopupMouseLeave;\n if (hoverToShow) {\n // Compatible with old browser which not support pointer event\n wrapperAction('onMouseEnter', true, mouseEnterDelay, function (event) {\n setMousePosByEvent(event);\n });\n wrapperAction('onPointerEnter', true, mouseEnterDelay, function (event) {\n setMousePosByEvent(event);\n });\n onPopupMouseEnter = function onPopupMouseEnter(event) {\n // Only trigger re-open when popup is visible\n if ((mergedOpen || inMotion) && popupEle !== null && popupEle !== void 0 && popupEle.contains(event.target)) {\n triggerOpen(true, mouseEnterDelay);\n }\n };\n\n // Align Point\n if (alignPoint) {\n cloneProps.onMouseMove = function (event) {\n var _originChildProps$onM;\n // setMousePosByEvent(event);\n (_originChildProps$onM = originChildProps.onMouseMove) === null || _originChildProps$onM === void 0 || _originChildProps$onM.call(originChildProps, event);\n };\n }\n }\n if (hoverToHide) {\n wrapperAction('onMouseLeave', false, mouseLeaveDelay);\n wrapperAction('onPointerLeave', false, mouseLeaveDelay);\n onPopupMouseLeave = function onPopupMouseLeave() {\n triggerOpen(false, mouseLeaveDelay);\n };\n }\n\n // ======================= Action: Focus ========================\n if (showActions.has('focus')) {\n wrapperAction('onFocus', true, focusDelay);\n }\n if (hideActions.has('focus')) {\n wrapperAction('onBlur', false, blurDelay);\n }\n\n // ==================== Action: ContextMenu =====================\n if (showActions.has('contextMenu')) {\n cloneProps.onContextMenu = function (event) {\n var _originChildProps$onC2;\n if (openRef.current && hideActions.has('contextMenu')) {\n triggerOpen(false);\n } else {\n setMousePosByEvent(event);\n triggerOpen(true);\n }\n event.preventDefault();\n\n // Pass to origin\n for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n args[_key3 - 1] = arguments[_key3];\n }\n (_originChildProps$onC2 = originChildProps.onContextMenu) === null || _originChildProps$onC2 === void 0 || _originChildProps$onC2.call.apply(_originChildProps$onC2, [originChildProps, event].concat(args));\n };\n }\n\n // ========================= ClassName ==========================\n if (className) {\n cloneProps.className = classNames(originChildProps.className, className);\n }\n\n // =========================== Render ===========================\n var mergedChildrenProps = _objectSpread(_objectSpread({}, originChildProps), cloneProps);\n\n // Pass props into cloneProps for nest usage\n var passedProps = {};\n var passedEventList = ['onContextMenu', 'onClick', 'onMouseDown', 'onTouchStart', 'onMouseEnter', 'onMouseLeave', 'onFocus', 'onBlur'];\n passedEventList.forEach(function (eventName) {\n if (restProps[eventName]) {\n passedProps[eventName] = function () {\n var _mergedChildrenProps$;\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n (_mergedChildrenProps$ = mergedChildrenProps[eventName]) === null || _mergedChildrenProps$ === void 0 || _mergedChildrenProps$.call.apply(_mergedChildrenProps$, [mergedChildrenProps].concat(args));\n restProps[eventName].apply(restProps, args);\n };\n }\n });\n\n // Child Node\n var triggerNode = /*#__PURE__*/React.cloneElement(child, _objectSpread(_objectSpread({}, mergedChildrenProps), passedProps));\n var arrowPos = {\n x: arrowX,\n y: arrowY\n };\n var innerArrow = arrow ? _objectSpread({}, arrow !== true ? arrow : {}) : null;\n\n // Render\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ResizeObserver, {\n disabled: !mergedOpen,\n ref: setTargetRef,\n onResize: onTargetResize\n }, /*#__PURE__*/React.createElement(TriggerWrapper, {\n getTriggerDOMNode: getTriggerDOMNode\n }, triggerNode)), /*#__PURE__*/React.createElement(TriggerContext.Provider, {\n value: context\n }, /*#__PURE__*/React.createElement(Popup, {\n portal: PortalComponent,\n ref: setPopupRef,\n prefixCls: prefixCls,\n popup: popup,\n className: classNames(popupClassName, alignedClassName),\n style: popupStyle,\n target: targetEle,\n onMouseEnter: onPopupMouseEnter,\n onMouseLeave: onPopupMouseLeave\n // https://github.com/ant-design/ant-design/issues/43924\n ,\n onPointerEnter: onPopupMouseEnter,\n zIndex: zIndex\n // Open\n ,\n open: mergedOpen,\n keepDom: inMotion,\n fresh: fresh\n // Click\n ,\n onClick: onPopupClick,\n onPointerDownCapture: onPopupPointerDown\n // Mask\n ,\n mask: mask\n // Motion\n ,\n motion: mergePopupMotion,\n maskMotion: mergeMaskMotion,\n onVisibleChanged: onVisibleChanged,\n onPrepare: onPrepare\n // Portal\n ,\n forceRender: forceRender,\n autoDestroy: mergedAutoDestroy,\n getPopupContainer: getPopupContainer\n // Arrow\n ,\n align: alignInfo,\n arrow: innerArrow,\n arrowPos: arrowPos\n // Align\n ,\n ready: ready,\n offsetX: offsetX,\n offsetY: offsetY,\n offsetR: offsetR,\n offsetB: offsetB,\n onAlign: triggerAlign\n // Stretch\n ,\n stretch: stretch,\n targetWidth: targetWidth / scaleX,\n targetHeight: targetHeight / scaleY\n })));\n });\n if (process.env.NODE_ENV !== 'production') {\n Trigger.displayName = 'Trigger';\n }\n return Trigger;\n}\nexport default generateTrigger(Portal);","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { collectScroller, getWin } from \"../util\";\nexport default function useWatch(open, target, popup, onAlign, onScroll) {\n useLayoutEffect(function () {\n if (open && target && popup) {\n var targetElement = target;\n var popupElement = popup;\n var targetScrollList = collectScroller(targetElement);\n var popupScrollList = collectScroller(popupElement);\n var win = getWin(popupElement);\n var mergedList = new Set([win].concat(_toConsumableArray(targetScrollList), _toConsumableArray(popupScrollList)));\n function notifyScroll() {\n onAlign();\n onScroll();\n }\n mergedList.forEach(function (scroller) {\n scroller.addEventListener('scroll', notifyScroll, {\n passive: true\n });\n });\n win.addEventListener('resize', notifyScroll, {\n passive: true\n });\n\n // First time always do align\n onAlign();\n return function () {\n mergedList.forEach(function (scroller) {\n scroller.removeEventListener('scroll', notifyScroll);\n win.removeEventListener('resize', notifyScroll);\n });\n };\n }\n }, [open, target, popup]);\n}","import { getShadowRoot } from \"rc-util/es/Dom/shadow\";\nimport { warning } from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport { getWin } from \"../util\";\nexport default function useWinClick(open, clickToHide, targetEle, popupEle, mask, maskClosable, inPopupOrChild, triggerOpen) {\n var openRef = React.useRef(open);\n openRef.current = open;\n var popupPointerDownRef = React.useRef(false);\n\n // Click to hide is special action since click popup element should not hide\n React.useEffect(function () {\n if (clickToHide && popupEle && (!mask || maskClosable)) {\n var onPointerDown = function onPointerDown() {\n popupPointerDownRef.current = false;\n };\n var onTriggerClose = function onTriggerClose(e) {\n var _e$composedPath;\n if (openRef.current && !inPopupOrChild(((_e$composedPath = e.composedPath) === null || _e$composedPath === void 0 || (_e$composedPath = _e$composedPath.call(e)) === null || _e$composedPath === void 0 ? void 0 : _e$composedPath[0]) || e.target) && !popupPointerDownRef.current) {\n triggerOpen(false);\n }\n };\n var win = getWin(popupEle);\n win.addEventListener('pointerdown', onPointerDown, true);\n win.addEventListener('mousedown', onTriggerClose, true);\n win.addEventListener('contextmenu', onTriggerClose, true);\n\n // shadow root\n var targetShadowRoot = getShadowRoot(targetEle);\n if (targetShadowRoot) {\n targetShadowRoot.addEventListener('mousedown', onTriggerClose, true);\n targetShadowRoot.addEventListener('contextmenu', onTriggerClose, true);\n }\n\n // Warning if target and popup not in same root\n if (process.env.NODE_ENV !== 'production') {\n var _targetEle$getRootNod, _popupEle$getRootNode;\n var targetRoot = targetEle === null || targetEle === void 0 || (_targetEle$getRootNod = targetEle.getRootNode) === null || _targetEle$getRootNod === void 0 ? void 0 : _targetEle$getRootNod.call(targetEle);\n var popupRoot = (_popupEle$getRootNode = popupEle.getRootNode) === null || _popupEle$getRootNode === void 0 ? void 0 : _popupEle$getRootNode.call(popupEle);\n warning(targetRoot === popupRoot, \"trigger element and popup element should in same shadow root.\");\n }\n return function () {\n win.removeEventListener('pointerdown', onPointerDown, true);\n win.removeEventListener('mousedown', onTriggerClose, true);\n win.removeEventListener('contextmenu', onTriggerClose, true);\n if (targetShadowRoot) {\n targetShadowRoot.removeEventListener('mousedown', onTriggerClose, true);\n targetShadowRoot.removeEventListener('contextmenu', onTriggerClose, true);\n }\n };\n }\n }, [clickToHide, targetEle, popupEle, mask, maskClosable]);\n function onPopupPointerDown() {\n popupPointerDownRef.current = true;\n }\n return onPopupPointerDown;\n}","import warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nexport var HOOK_MARK = 'RC_FORM_INTERNAL_HOOKS';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nvar warningFunc = function warningFunc() {\n warning(false, 'Can not find FormContext. Please make sure you wrap Field under Form.');\n};\nvar Context = /*#__PURE__*/React.createContext({\n getFieldValue: warningFunc,\n getFieldsValue: warningFunc,\n getFieldError: warningFunc,\n getFieldWarning: warningFunc,\n getFieldsError: warningFunc,\n isFieldsTouched: warningFunc,\n isFieldTouched: warningFunc,\n isFieldValidating: warningFunc,\n isFieldsValidating: warningFunc,\n resetFields: warningFunc,\n setFields: warningFunc,\n setFieldValue: warningFunc,\n setFieldsValue: warningFunc,\n validateFields: warningFunc,\n submit: warningFunc,\n getInternalHooks: function getInternalHooks() {\n warningFunc();\n return {\n dispatch: warningFunc,\n initEntityValue: warningFunc,\n registerField: warningFunc,\n useSubscribe: warningFunc,\n setInitialValues: warningFunc,\n destroyForm: warningFunc,\n setCallbacks: warningFunc,\n registerWatch: warningFunc,\n getFields: warningFunc,\n setValidateMessages: warningFunc,\n setPreserve: warningFunc,\n getInitialValue: warningFunc\n };\n }\n});\nexport default Context;","import * as React from 'react';\nvar ListContext = /*#__PURE__*/React.createContext(null);\nexport default ListContext;","export function toArray(value) {\n if (value === undefined || value === null) {\n return [];\n }\n return Array.isArray(value) ? value : [value];\n}\nexport function isFormInstance(form) {\n return form && !!form._init;\n}","export function newMessages() {\n return {\n default: 'Validation error on field %s',\n required: '%s is required',\n enum: '%s must be one of %s',\n whitespace: '%s cannot be empty',\n date: {\n format: '%s date %s is invalid for format %s',\n parse: '%s date could not be parsed, %s is invalid ',\n invalid: '%s date %s is invalid'\n },\n types: {\n string: '%s is not a %s',\n method: '%s is not a %s (function)',\n array: '%s is not an %s',\n object: '%s is not an %s',\n number: '%s is not a %s',\n date: '%s is not a %s',\n boolean: '%s is not a %s',\n integer: '%s is not an %s',\n float: '%s is not a %s',\n regexp: '%s is not a valid %s',\n email: '%s is not a valid %s',\n url: '%s is not a valid %s',\n hex: '%s is not a valid %s'\n },\n string: {\n len: '%s must be exactly %s characters',\n min: '%s must be at least %s characters',\n max: '%s cannot be longer than %s characters',\n range: '%s must be between %s and %s characters'\n },\n number: {\n len: '%s must equal %s',\n min: '%s cannot be less than %s',\n max: '%s cannot be greater than %s',\n range: '%s must be between %s and %s'\n },\n array: {\n len: '%s must be exactly %s in length',\n min: '%s cannot be less than %s in length',\n max: '%s cannot be greater than %s in length',\n range: '%s must be between %s and %s in length'\n },\n pattern: {\n mismatch: '%s value %s does not match pattern %s'\n },\n clone: function clone() {\n var cloned = JSON.parse(JSON.stringify(this));\n cloned.clone = this.clone;\n return cloned;\n }\n };\n}\nexport var messages = newMessages();","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeFunction from \"./isNativeFunction.js\";\nimport construct from \"./construct.js\";\nexport default function _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !isNativeFunction(Class)) return Class;\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n _cache.set(Class, Wrapper);\n }\n function Wrapper() {\n return construct(Class, arguments, getPrototypeOf(this).constructor);\n }\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return setPrototypeOf(Wrapper, Class);\n };\n return _wrapNativeSuper(Class);\n}","export default function _isNativeFunction(fn) {\n try {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n } catch (e) {\n return typeof fn === \"function\";\n }\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nexport default function _construct(t, e, r) {\n if (isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments);\n var o = [null];\n o.push.apply(o, e);\n var p = new (t.bind.apply(t, o))();\n return r && setPrototypeOf(p, r.prototype), p;\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport _wrapNativeSuper from \"@babel/runtime/helpers/esm/wrapNativeSuper\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\n/* eslint no-console:0 */\n\nvar formatRegExp = /%[sdj%]/g;\nexport var warning = function warning() {};\n\n// don't print warning message when in production env or node runtime\nif (typeof process !== 'undefined' && process.env && process.env.NODE_ENV !== 'production' && typeof window !== 'undefined' && typeof document !== 'undefined') {\n warning = function warning(type, errors) {\n if (typeof console !== 'undefined' && console.warn && typeof ASYNC_VALIDATOR_NO_WARNING === 'undefined') {\n if (errors.every(function (e) {\n return typeof e === 'string';\n })) {\n console.warn(type, errors);\n }\n }\n };\n}\nexport function convertFieldsError(errors) {\n if (!errors || !errors.length) return null;\n var fields = {};\n errors.forEach(function (error) {\n var field = error.field;\n fields[field] = fields[field] || [];\n fields[field].push(error);\n });\n return fields;\n}\nexport function format(template) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n var i = 0;\n var len = args.length;\n if (typeof template === 'function') {\n // eslint-disable-next-line prefer-spread\n return template.apply(null, args);\n }\n if (typeof template === 'string') {\n var str = template.replace(formatRegExp, function (x) {\n if (x === '%%') {\n return '%';\n }\n if (i >= len) {\n return x;\n }\n switch (x) {\n case '%s':\n return String(args[i++]);\n case '%d':\n return Number(args[i++]);\n case '%j':\n try {\n return JSON.stringify(args[i++]);\n } catch (_) {\n return '[Circular]';\n }\n break;\n default:\n return x;\n }\n });\n return str;\n }\n return template;\n}\nfunction isNativeStringType(type) {\n return type === 'string' || type === 'url' || type === 'hex' || type === 'email' || type === 'date' || type === 'pattern';\n}\nexport function isEmptyValue(value, type) {\n if (value === undefined || value === null) {\n return true;\n }\n if (type === 'array' && Array.isArray(value) && !value.length) {\n return true;\n }\n if (isNativeStringType(type) && typeof value === 'string' && !value) {\n return true;\n }\n return false;\n}\nexport function isEmptyObject(obj) {\n return Object.keys(obj).length === 0;\n}\nfunction asyncParallelArray(arr, func, callback) {\n var results = [];\n var total = 0;\n var arrLength = arr.length;\n function count(errors) {\n results.push.apply(results, _toConsumableArray(errors || []));\n total++;\n if (total === arrLength) {\n callback(results);\n }\n }\n arr.forEach(function (a) {\n func(a, count);\n });\n}\nfunction asyncSerialArray(arr, func, callback) {\n var index = 0;\n var arrLength = arr.length;\n function next(errors) {\n if (errors && errors.length) {\n callback(errors);\n return;\n }\n var original = index;\n index = index + 1;\n if (original < arrLength) {\n func(arr[original], next);\n } else {\n callback([]);\n }\n }\n next([]);\n}\nfunction flattenObjArr(objArr) {\n var ret = [];\n Object.keys(objArr).forEach(function (k) {\n ret.push.apply(ret, _toConsumableArray(objArr[k] || []));\n });\n return ret;\n}\nexport var AsyncValidationError = /*#__PURE__*/function (_Error) {\n _inherits(AsyncValidationError, _Error);\n var _super = _createSuper(AsyncValidationError);\n function AsyncValidationError(errors, fields) {\n var _this;\n _classCallCheck(this, AsyncValidationError);\n _this = _super.call(this, 'Async Validation Error');\n _defineProperty(_assertThisInitialized(_this), \"errors\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"fields\", void 0);\n _this.errors = errors;\n _this.fields = fields;\n return _this;\n }\n return _createClass(AsyncValidationError);\n}( /*#__PURE__*/_wrapNativeSuper(Error));\nexport function asyncMap(objArr, option, func, callback, source) {\n if (option.first) {\n var _pending = new Promise(function (resolve, reject) {\n var next = function next(errors) {\n callback(errors);\n return errors.length ? reject(new AsyncValidationError(errors, convertFieldsError(errors))) : resolve(source);\n };\n var flattenArr = flattenObjArr(objArr);\n asyncSerialArray(flattenArr, func, next);\n });\n _pending.catch(function (e) {\n return e;\n });\n return _pending;\n }\n var firstFields = option.firstFields === true ? Object.keys(objArr) : option.firstFields || [];\n var objArrKeys = Object.keys(objArr);\n var objArrLength = objArrKeys.length;\n var total = 0;\n var results = [];\n var pending = new Promise(function (resolve, reject) {\n var next = function next(errors) {\n // eslint-disable-next-line prefer-spread\n results.push.apply(results, errors);\n total++;\n if (total === objArrLength) {\n callback(results);\n return results.length ? reject(new AsyncValidationError(results, convertFieldsError(results))) : resolve(source);\n }\n };\n if (!objArrKeys.length) {\n callback(results);\n resolve(source);\n }\n objArrKeys.forEach(function (key) {\n var arr = objArr[key];\n if (firstFields.indexOf(key) !== -1) {\n asyncSerialArray(arr, func, next);\n } else {\n asyncParallelArray(arr, func, next);\n }\n });\n });\n pending.catch(function (e) {\n return e;\n });\n return pending;\n}\nfunction isErrorObj(obj) {\n return !!(obj && obj.message !== undefined);\n}\nfunction getValue(value, path) {\n var v = value;\n for (var i = 0; i < path.length; i++) {\n if (v == undefined) {\n return v;\n }\n v = v[path[i]];\n }\n return v;\n}\nexport function complementError(rule, source) {\n return function (oe) {\n var fieldValue;\n if (rule.fullFields) {\n fieldValue = getValue(source, rule.fullFields);\n } else {\n fieldValue = source[oe.field || rule.fullField];\n }\n if (isErrorObj(oe)) {\n oe.field = oe.field || rule.fullField;\n oe.fieldValue = fieldValue;\n return oe;\n }\n return {\n message: typeof oe === 'function' ? oe() : oe,\n fieldValue: fieldValue,\n field: oe.field || rule.fullField\n };\n };\n}\nexport function deepMerge(target, source) {\n if (source) {\n for (var s in source) {\n if (source.hasOwnProperty(s)) {\n var value = source[s];\n if (_typeof(value) === 'object' && _typeof(target[s]) === 'object') {\n target[s] = _objectSpread(_objectSpread({}, target[s]), value);\n } else {\n target[s] = value;\n }\n }\n }\n }\n return target;\n}","import { format } from \"../util\";\nvar ENUM = 'enum';\nvar enumerable = function enumerable(rule, value, source, errors, options) {\n rule[ENUM] = Array.isArray(rule[ENUM]) ? rule[ENUM] : [];\n if (rule[ENUM].indexOf(value) === -1) {\n errors.push(format(options.messages[ENUM], rule.fullField, rule[ENUM].join(', ')));\n }\n};\nexport default enumerable;","import { format, isEmptyValue } from \"../util\";\nvar required = function required(rule, value, source, errors, options, type) {\n if (rule.required && (!source.hasOwnProperty(rule.field) || isEmptyValue(value, type || rule.type))) {\n errors.push(format(options.messages.required, rule.fullField));\n }\n};\nexport default required;","// https://github.com/kevva/url-regex/blob/master/index.js\nvar urlReg;\nexport default (function () {\n if (urlReg) {\n return urlReg;\n }\n var word = '[a-fA-F\\\\d:]';\n var b = function b(options) {\n return options && options.includeBoundaries ? \"(?:(?<=\\\\s|^)(?=\".concat(word, \")|(?<=\").concat(word, \")(?=\\\\s|$))\") : '';\n };\n var v4 = '(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}';\n var v6seg = '[a-fA-F\\\\d]{1,4}';\n var v6List = [\"(?:\".concat(v6seg, \":){7}(?:\").concat(v6seg, \"|:)\"), // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\n \"(?:\".concat(v6seg, \":){6}(?:\").concat(v4, \"|:\").concat(v6seg, \"|:)\"), // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::\n \"(?:\".concat(v6seg, \":){5}(?::\").concat(v4, \"|(?::\").concat(v6seg, \"){1,2}|:)\"), // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::\n \"(?:\".concat(v6seg, \":){4}(?:(?::\").concat(v6seg, \"){0,1}:\").concat(v4, \"|(?::\").concat(v6seg, \"){1,3}|:)\"), // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::\n \"(?:\".concat(v6seg, \":){3}(?:(?::\").concat(v6seg, \"){0,2}:\").concat(v4, \"|(?::\").concat(v6seg, \"){1,4}|:)\"), // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::\n \"(?:\".concat(v6seg, \":){2}(?:(?::\").concat(v6seg, \"){0,3}:\").concat(v4, \"|(?::\").concat(v6seg, \"){1,5}|:)\"), // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::\n \"(?:\".concat(v6seg, \":){1}(?:(?::\").concat(v6seg, \"){0,4}:\").concat(v4, \"|(?::\").concat(v6seg, \"){1,6}|:)\"), // 1:: 1::3:4:5:6:7:8 1::8 1::\n \"(?::(?:(?::\".concat(v6seg, \"){0,5}:\").concat(v4, \"|(?::\").concat(v6seg, \"){1,7}|:))\") // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::\n ];\n var v6Eth0 = \"(?:%[0-9a-zA-Z]{1,})?\"; // %eth0 %1\n\n var v6 = \"(?:\".concat(v6List.join('|'), \")\").concat(v6Eth0);\n\n // Pre-compile only the exact regexes because adding a global flag make regexes stateful\n var v46Exact = new RegExp(\"(?:^\".concat(v4, \"$)|(?:^\").concat(v6, \"$)\"));\n var v4exact = new RegExp(\"^\".concat(v4, \"$\"));\n var v6exact = new RegExp(\"^\".concat(v6, \"$\"));\n var ip = function ip(options) {\n return options && options.exact ? v46Exact : new RegExp(\"(?:\".concat(b(options)).concat(v4).concat(b(options), \")|(?:\").concat(b(options)).concat(v6).concat(b(options), \")\"), 'g');\n };\n ip.v4 = function (options) {\n return options && options.exact ? v4exact : new RegExp(\"\".concat(b(options)).concat(v4).concat(b(options)), 'g');\n };\n ip.v6 = function (options) {\n return options && options.exact ? v6exact : new RegExp(\"\".concat(b(options)).concat(v6).concat(b(options)), 'g');\n };\n var protocol = \"(?:(?:[a-z]+:)?//)\";\n var auth = '(?:\\\\S+(?::\\\\S*)?@)?';\n var ipv4 = ip.v4().source;\n var ipv6 = ip.v6().source;\n var host = \"(?:(?:[a-z\\\\u00a1-\\\\uffff0-9][-_]*)*[a-z\\\\u00a1-\\\\uffff0-9]+)\";\n var domain = \"(?:\\\\.(?:[a-z\\\\u00a1-\\\\uffff0-9]-*)*[a-z\\\\u00a1-\\\\uffff0-9]+)*\";\n var tld = \"(?:\\\\.(?:[a-z\\\\u00a1-\\\\uffff]{2,}))\";\n var port = '(?::\\\\d{2,5})?';\n var path = '(?:[/?#][^\\\\s\"]*)?';\n var regex = \"(?:\".concat(protocol, \"|www\\\\.)\").concat(auth, \"(?:localhost|\").concat(ipv4, \"|\").concat(ipv6, \"|\").concat(host).concat(domain).concat(tld, \")\").concat(port).concat(path);\n urlReg = new RegExp(\"(?:^\".concat(regex, \"$)\"), 'i');\n return urlReg;\n});","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport { format } from \"../util\";\nimport required from \"./required\";\nimport getUrlRegex from \"./url\";\n/* eslint max-len:0 */\n\nvar pattern = {\n // http://emailregex.com/\n email: /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]+\\.)+[a-zA-Z\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]{2,}))$/,\n // url: new RegExp(\n // '^(?!mailto:)(?:(?:http|https|ftp)://|//)(?:\\\\S+(?::\\\\S*)?@)?(?:(?:(?:[1-9]\\\\d?|1\\\\d\\\\d|2[01]\\\\d|22[0-3])(?:\\\\.(?:1?\\\\d{1,2}|2[0-4]\\\\d|25[0-5])){2}(?:\\\\.(?:[0-9]\\\\d?|1\\\\d\\\\d|2[0-4]\\\\d|25[0-4]))|(?:(?:[a-z\\\\u00a1-\\\\uffff0-9]+-*)*[a-z\\\\u00a1-\\\\uffff0-9]+)(?:\\\\.(?:[a-z\\\\u00a1-\\\\uffff0-9]+-*)*[a-z\\\\u00a1-\\\\uffff0-9]+)*(?:\\\\.(?:[a-z\\\\u00a1-\\\\uffff]{2,})))|localhost)(?::\\\\d{2,5})?(?:(/|\\\\?|#)[^\\\\s]*)?$',\n // 'i',\n // ),\n hex: /^#?([a-f0-9]{6}|[a-f0-9]{3})$/i\n};\nvar types = {\n integer: function integer(value) {\n return types.number(value) && parseInt(value, 10) === value;\n },\n float: function float(value) {\n return types.number(value) && !types.integer(value);\n },\n array: function array(value) {\n return Array.isArray(value);\n },\n regexp: function regexp(value) {\n if (value instanceof RegExp) {\n return true;\n }\n try {\n return !!new RegExp(value);\n } catch (e) {\n return false;\n }\n },\n date: function date(value) {\n return typeof value.getTime === 'function' && typeof value.getMonth === 'function' && typeof value.getYear === 'function' && !isNaN(value.getTime());\n },\n number: function number(value) {\n if (isNaN(value)) {\n return false;\n }\n return typeof value === 'number';\n },\n object: function object(value) {\n return _typeof(value) === 'object' && !types.array(value);\n },\n method: function method(value) {\n return typeof value === 'function';\n },\n email: function email(value) {\n return typeof value === 'string' && value.length <= 320 && !!value.match(pattern.email);\n },\n url: function url(value) {\n return typeof value === 'string' && value.length <= 2048 && !!value.match(getUrlRegex());\n },\n hex: function hex(value) {\n return typeof value === 'string' && !!value.match(pattern.hex);\n }\n};\nvar type = function type(rule, value, source, errors, options) {\n if (rule.required && value === undefined) {\n required(rule, value, source, errors, options);\n return;\n }\n var custom = ['integer', 'float', 'array', 'regexp', 'object', 'method', 'email', 'number', 'date', 'url', 'hex'];\n var ruleType = rule.type;\n if (custom.indexOf(ruleType) > -1) {\n if (!types[ruleType](value)) {\n errors.push(format(options.messages.types[ruleType], rule.fullField, rule.type));\n }\n // straight typeof check\n } else if (ruleType && _typeof(value) !== rule.type) {\n errors.push(format(options.messages.types[ruleType], rule.fullField, rule.type));\n }\n};\nexport default type;","import enumRule from \"./enum\";\nimport pattern from \"./pattern\";\nimport range from \"./range\";\nimport required from \"./required\";\nimport type from \"./type\";\nimport whitespace from \"./whitespace\";\nexport default {\n required: required,\n whitespace: whitespace,\n type: type,\n range: range,\n enum: enumRule,\n pattern: pattern\n};","import { format } from \"../util\";\n\n/**\n * Rule for validating whitespace.\n *\n * @param rule The validation rule.\n * @param value The value of the field on the source object.\n * @param source The source object being validated.\n * @param errors An array of errors that this rule may add\n * validation errors to.\n * @param options The validation options.\n * @param options.messages The validation messages.\n */\nvar whitespace = function whitespace(rule, value, source, errors, options) {\n if (/^\\s+$/.test(value) || value === '') {\n errors.push(format(options.messages.whitespace, rule.fullField));\n }\n};\nexport default whitespace;","import { format } from \"../util\";\nvar range = function range(rule, value, source, errors, options) {\n var len = typeof rule.len === 'number';\n var min = typeof rule.min === 'number';\n var max = typeof rule.max === 'number';\n // 正则匹配码点范围从U+010000一直到U+10FFFF的文字(补充平面Supplementary Plane)\n var spRegexp = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g;\n var val = value;\n var key = null;\n var num = typeof value === 'number';\n var str = typeof value === 'string';\n var arr = Array.isArray(value);\n if (num) {\n key = 'number';\n } else if (str) {\n key = 'string';\n } else if (arr) {\n key = 'array';\n }\n // if the value is not of a supported type for range validation\n // the validation rule rule should use the\n // type property to also test for a particular type\n if (!key) {\n return false;\n }\n if (arr) {\n val = value.length;\n }\n if (str) {\n // 处理码点大于U+010000的文字length属性不准确的bug,如\"𠮷𠮷𠮷\".length !== 3\n val = value.replace(spRegexp, '_').length;\n }\n if (len) {\n if (val !== rule.len) {\n errors.push(format(options.messages[key].len, rule.fullField, rule.len));\n }\n } else if (min && !max && val < rule.min) {\n errors.push(format(options.messages[key].min, rule.fullField, rule.min));\n } else if (max && !min && val > rule.max) {\n errors.push(format(options.messages[key].max, rule.fullField, rule.max));\n } else if (min && max && (val < rule.min || val > rule.max)) {\n errors.push(format(options.messages[key].range, rule.fullField, rule.min, rule.max));\n }\n};\nexport default range;","import { format } from \"../util\";\nvar pattern = function pattern(rule, value, source, errors, options) {\n if (rule.pattern) {\n if (rule.pattern instanceof RegExp) {\n // if a RegExp instance is passed, reset `lastIndex` in case its `global`\n // flag is accidentally set to `true`, which in a validation scenario\n // is not necessary and the result might be misleading\n rule.pattern.lastIndex = 0;\n if (!rule.pattern.test(value)) {\n errors.push(format(options.messages.pattern.mismatch, rule.fullField, value, rule.pattern));\n }\n } else if (typeof rule.pattern === 'string') {\n var _pattern = new RegExp(rule.pattern);\n if (!_pattern.test(value)) {\n errors.push(format(options.messages.pattern.mismatch, rule.fullField, value, rule.pattern));\n }\n }\n }\n};\nexport default pattern;","import rules from \"../rule\";\nimport { isEmptyValue } from \"../util\";\nvar type = function type(rule, value, callback, source, options) {\n var ruleType = rule.type;\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n if (validate) {\n if (isEmptyValue(value, ruleType) && !rule.required) {\n return callback();\n }\n rules.required(rule, value, source, errors, options, ruleType);\n if (!isEmptyValue(value, ruleType)) {\n rules.type(rule, value, source, errors, options);\n }\n }\n callback(errors);\n};\nexport default type;","import any from \"./any\";\nimport array from \"./array\";\nimport boolean from \"./boolean\";\nimport date from \"./date\";\nimport enumValidator from \"./enum\";\nimport float from \"./float\";\nimport integer from \"./integer\";\nimport method from \"./method\";\nimport number from \"./number\";\nimport object from \"./object\";\nimport pattern from \"./pattern\";\nimport regexp from \"./regexp\";\nimport required from \"./required\";\nimport string from \"./string\";\nimport type from \"./type\";\nexport default {\n string: string,\n method: method,\n number: number,\n boolean: boolean,\n regexp: regexp,\n integer: integer,\n float: float,\n array: array,\n object: object,\n enum: enumValidator,\n pattern: pattern,\n date: date,\n url: type,\n hex: type,\n email: type,\n required: required,\n any: any\n};","import rules from \"../rule\";\nimport { isEmptyValue } from \"../util\";\nvar string = function string(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n if (validate) {\n if (isEmptyValue(value, 'string') && !rule.required) {\n return callback();\n }\n rules.required(rule, value, source, errors, options, 'string');\n if (!isEmptyValue(value, 'string')) {\n rules.type(rule, value, source, errors, options);\n rules.range(rule, value, source, errors, options);\n rules.pattern(rule, value, source, errors, options);\n if (rule.whitespace === true) {\n rules.whitespace(rule, value, source, errors, options);\n }\n }\n }\n callback(errors);\n};\nexport default string;","import rules from \"../rule\";\nimport { isEmptyValue } from \"../util\";\nvar method = function method(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n rules.required(rule, value, source, errors, options);\n if (value !== undefined) {\n rules.type(rule, value, source, errors, options);\n }\n }\n callback(errors);\n};\nexport default method;","import rules from \"../rule\";\nimport { isEmptyValue } from \"../util\";\nvar number = function number(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n if (validate) {\n if (value === '') {\n // eslint-disable-next-line no-param-reassign\n value = undefined;\n }\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n rules.required(rule, value, source, errors, options);\n if (value !== undefined) {\n rules.type(rule, value, source, errors, options);\n rules.range(rule, value, source, errors, options);\n }\n }\n callback(errors);\n};\nexport default number;","import rules from \"../rule\";\nimport { isEmptyValue } from \"../util\";\nvar boolean = function boolean(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n rules.required(rule, value, source, errors, options);\n if (value !== undefined) {\n rules.type(rule, value, source, errors, options);\n }\n }\n callback(errors);\n};\nexport default boolean;","import rules from \"../rule\";\nimport { isEmptyValue } from \"../util\";\nvar regexp = function regexp(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n rules.required(rule, value, source, errors, options);\n if (!isEmptyValue(value)) {\n rules.type(rule, value, source, errors, options);\n }\n }\n callback(errors);\n};\nexport default regexp;","import rules from \"../rule\";\nimport { isEmptyValue } from \"../util\";\nvar integer = function integer(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n rules.required(rule, value, source, errors, options);\n if (value !== undefined) {\n rules.type(rule, value, source, errors, options);\n rules.range(rule, value, source, errors, options);\n }\n }\n callback(errors);\n};\nexport default integer;","import rules from \"../rule\";\nimport { isEmptyValue } from \"../util\";\nvar floatFn = function floatFn(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n rules.required(rule, value, source, errors, options);\n if (value !== undefined) {\n rules.type(rule, value, source, errors, options);\n rules.range(rule, value, source, errors, options);\n }\n }\n callback(errors);\n};\nexport default floatFn;","import rules from \"../rule/index\";\nvar array = function array(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n if (validate) {\n if ((value === undefined || value === null) && !rule.required) {\n return callback();\n }\n rules.required(rule, value, source, errors, options, 'array');\n if (value !== undefined && value !== null) {\n rules.type(rule, value, source, errors, options);\n rules.range(rule, value, source, errors, options);\n }\n }\n callback(errors);\n};\nexport default array;","import rules from \"../rule\";\nimport { isEmptyValue } from \"../util\";\nvar object = function object(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n rules.required(rule, value, source, errors, options);\n if (value !== undefined) {\n rules.type(rule, value, source, errors, options);\n }\n }\n callback(errors);\n};\nexport default object;","import rules from \"../rule\";\nimport { isEmptyValue } from \"../util\";\nvar ENUM = 'enum';\nvar enumerable = function enumerable(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n rules.required(rule, value, source, errors, options);\n if (value !== undefined) {\n rules[ENUM](rule, value, source, errors, options);\n }\n }\n callback(errors);\n};\nexport default enumerable;","import rules from \"../rule\";\nimport { isEmptyValue } from \"../util\";\nvar pattern = function pattern(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n if (validate) {\n if (isEmptyValue(value, 'string') && !rule.required) {\n return callback();\n }\n rules.required(rule, value, source, errors, options);\n if (!isEmptyValue(value, 'string')) {\n rules.pattern(rule, value, source, errors, options);\n }\n }\n callback(errors);\n};\nexport default pattern;","import rules from \"../rule\";\nimport { isEmptyValue } from \"../util\";\nvar date = function date(rule, value, callback, source, options) {\n // console.log('integer rule called %j', rule);\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n // console.log('validate on %s value', value);\n if (validate) {\n if (isEmptyValue(value, 'date') && !rule.required) {\n return callback();\n }\n rules.required(rule, value, source, errors, options);\n if (!isEmptyValue(value, 'date')) {\n var dateObject;\n if (value instanceof Date) {\n dateObject = value;\n } else {\n dateObject = new Date(value);\n }\n rules.type(rule, dateObject, source, errors, options);\n if (dateObject) {\n rules.range(rule, dateObject.getTime(), source, errors, options);\n }\n }\n }\n callback(errors);\n};\nexport default date;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport rules from \"../rule\";\nvar required = function required(rule, value, callback, source, options) {\n var errors = [];\n var type = Array.isArray(value) ? 'array' : _typeof(value);\n rules.required(rule, value, source, errors, options, type);\n callback(errors);\n};\nexport default required;","import rules from \"../rule\";\nimport { isEmptyValue } from \"../util\";\nvar any = function any(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n rules.required(rule, value, source, errors, options);\n }\n callback(errors);\n};\nexport default any;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport { messages as defaultMessages, newMessages } from \"./messages\";\nimport { asyncMap, complementError, convertFieldsError, deepMerge, format, warning } from \"./util\";\nimport validators from \"./validator/index\";\nexport * from \"./interface\";\n\n/**\n * Encapsulates a validation schema.\n *\n * @param descriptor An object declaring validation rules\n * for this schema.\n */\nvar Schema = /*#__PURE__*/function () {\n function Schema(descriptor) {\n _classCallCheck(this, Schema);\n // ======================== Instance ========================\n _defineProperty(this, \"rules\", null);\n _defineProperty(this, \"_messages\", defaultMessages);\n this.define(descriptor);\n }\n _createClass(Schema, [{\n key: \"define\",\n value: function define(rules) {\n var _this = this;\n if (!rules) {\n throw new Error('Cannot configure a schema with no rules');\n }\n if (_typeof(rules) !== 'object' || Array.isArray(rules)) {\n throw new Error('Rules must be an object');\n }\n this.rules = {};\n Object.keys(rules).forEach(function (name) {\n var item = rules[name];\n _this.rules[name] = Array.isArray(item) ? item : [item];\n });\n }\n }, {\n key: \"messages\",\n value: function messages(_messages) {\n if (_messages) {\n this._messages = deepMerge(newMessages(), _messages);\n }\n return this._messages;\n }\n }, {\n key: \"validate\",\n value: function validate(source_) {\n var _this2 = this;\n var o = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var oc = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function () {};\n var source = source_;\n var options = o;\n var callback = oc;\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n if (!this.rules || Object.keys(this.rules).length === 0) {\n if (callback) {\n callback(null, source);\n }\n return Promise.resolve(source);\n }\n function complete(results) {\n var errors = [];\n var fields = {};\n function add(e) {\n if (Array.isArray(e)) {\n var _errors;\n errors = (_errors = errors).concat.apply(_errors, _toConsumableArray(e));\n } else {\n errors.push(e);\n }\n }\n for (var i = 0; i < results.length; i++) {\n add(results[i]);\n }\n if (!errors.length) {\n callback(null, source);\n } else {\n fields = convertFieldsError(errors);\n callback(errors, fields);\n }\n }\n if (options.messages) {\n var messages = this.messages();\n if (messages === defaultMessages) {\n messages = newMessages();\n }\n deepMerge(messages, options.messages);\n options.messages = messages;\n } else {\n options.messages = this.messages();\n }\n var series = {};\n var keys = options.keys || Object.keys(this.rules);\n keys.forEach(function (z) {\n var arr = _this2.rules[z];\n var value = source[z];\n arr.forEach(function (r) {\n var rule = r;\n if (typeof rule.transform === 'function') {\n if (source === source_) {\n source = _objectSpread({}, source);\n }\n value = source[z] = rule.transform(value);\n if (value !== undefined && value !== null) {\n rule.type = rule.type || (Array.isArray(value) ? 'array' : _typeof(value));\n }\n }\n if (typeof rule === 'function') {\n rule = {\n validator: rule\n };\n } else {\n rule = _objectSpread({}, rule);\n }\n\n // Fill validator. Skip if nothing need to validate\n rule.validator = _this2.getValidationMethod(rule);\n if (!rule.validator) {\n return;\n }\n rule.field = z;\n rule.fullField = rule.fullField || z;\n rule.type = _this2.getType(rule);\n series[z] = series[z] || [];\n series[z].push({\n rule: rule,\n value: value,\n source: source,\n field: z\n });\n });\n });\n var errorFields = {};\n return asyncMap(series, options, function (data, doIt) {\n var rule = data.rule;\n var deep = (rule.type === 'object' || rule.type === 'array') && (_typeof(rule.fields) === 'object' || _typeof(rule.defaultField) === 'object');\n deep = deep && (rule.required || !rule.required && data.value);\n rule.field = data.field;\n function addFullField(key, schema) {\n return _objectSpread(_objectSpread({}, schema), {}, {\n fullField: \"\".concat(rule.fullField, \".\").concat(key),\n fullFields: rule.fullFields ? [].concat(_toConsumableArray(rule.fullFields), [key]) : [key]\n });\n }\n function cb() {\n var e = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var errorList = Array.isArray(e) ? e : [e];\n if (!options.suppressWarning && errorList.length) {\n Schema.warning('async-validator:', errorList);\n }\n if (errorList.length && rule.message !== undefined) {\n errorList = [].concat(rule.message);\n }\n\n // Fill error info\n var filledErrors = errorList.map(complementError(rule, source));\n if (options.first && filledErrors.length) {\n errorFields[rule.field] = 1;\n return doIt(filledErrors);\n }\n if (!deep) {\n doIt(filledErrors);\n } else {\n // if rule is required but the target object\n // does not exist fail at the rule level and don't\n // go deeper\n if (rule.required && !data.value) {\n if (rule.message !== undefined) {\n filledErrors = [].concat(rule.message).map(complementError(rule, source));\n } else if (options.error) {\n filledErrors = [options.error(rule, format(options.messages.required, rule.field))];\n }\n return doIt(filledErrors);\n }\n var fieldsSchema = {};\n if (rule.defaultField) {\n Object.keys(data.value).map(function (key) {\n fieldsSchema[key] = rule.defaultField;\n });\n }\n fieldsSchema = _objectSpread(_objectSpread({}, fieldsSchema), data.rule.fields);\n var paredFieldsSchema = {};\n Object.keys(fieldsSchema).forEach(function (field) {\n var fieldSchema = fieldsSchema[field];\n var fieldSchemaList = Array.isArray(fieldSchema) ? fieldSchema : [fieldSchema];\n paredFieldsSchema[field] = fieldSchemaList.map(addFullField.bind(null, field));\n });\n var schema = new Schema(paredFieldsSchema);\n schema.messages(options.messages);\n if (data.rule.options) {\n data.rule.options.messages = options.messages;\n data.rule.options.error = options.error;\n }\n schema.validate(data.value, data.rule.options || options, function (errs) {\n var finalErrors = [];\n if (filledErrors && filledErrors.length) {\n finalErrors.push.apply(finalErrors, _toConsumableArray(filledErrors));\n }\n if (errs && errs.length) {\n finalErrors.push.apply(finalErrors, _toConsumableArray(errs));\n }\n doIt(finalErrors.length ? finalErrors : null);\n });\n }\n }\n var res;\n if (rule.asyncValidator) {\n res = rule.asyncValidator(rule, data.value, cb, data.source, options);\n } else if (rule.validator) {\n try {\n res = rule.validator(rule, data.value, cb, data.source, options);\n } catch (error) {\n var _console$error, _console;\n (_console$error = (_console = console).error) === null || _console$error === void 0 || _console$error.call(_console, error);\n // rethrow to report error\n if (!options.suppressValidatorError) {\n setTimeout(function () {\n throw error;\n }, 0);\n }\n cb(error.message);\n }\n if (res === true) {\n cb();\n } else if (res === false) {\n cb(typeof rule.message === 'function' ? rule.message(rule.fullField || rule.field) : rule.message || \"\".concat(rule.fullField || rule.field, \" fails\"));\n } else if (res instanceof Array) {\n cb(res);\n } else if (res instanceof Error) {\n cb(res.message);\n }\n }\n if (res && res.then) {\n res.then(function () {\n return cb();\n }, function (e) {\n return cb(e);\n });\n }\n }, function (results) {\n complete(results);\n }, source);\n }\n }, {\n key: \"getType\",\n value: function getType(rule) {\n if (rule.type === undefined && rule.pattern instanceof RegExp) {\n rule.type = 'pattern';\n }\n if (typeof rule.validator !== 'function' && rule.type && !validators.hasOwnProperty(rule.type)) {\n throw new Error(format('Unknown rule type %s', rule.type));\n }\n return rule.type || 'string';\n }\n }, {\n key: \"getValidationMethod\",\n value: function getValidationMethod(rule) {\n if (typeof rule.validator === 'function') {\n return rule.validator;\n }\n var keys = Object.keys(rule);\n var messageIndex = keys.indexOf('message');\n if (messageIndex !== -1) {\n keys.splice(messageIndex, 1);\n }\n if (keys.length === 1 && keys[0] === 'required') {\n return validators.required;\n }\n return validators[this.getType(rule)] || undefined;\n }\n }]);\n return Schema;\n}();\n// ========================= Static =========================\n_defineProperty(Schema, \"register\", function register(type, validator) {\n if (typeof validator !== 'function') {\n throw new Error('Cannot register a validator by type, validator is not a function');\n }\n validators[type] = validator;\n});\n_defineProperty(Schema, \"warning\", warning);\n_defineProperty(Schema, \"messages\", defaultMessages);\n_defineProperty(Schema, \"validators\", validators);\nexport default Schema;","var typeTemplate = \"'${name}' is not a valid ${type}\";\nexport var defaultValidateMessages = {\n default: \"Validation error on field '${name}'\",\n required: \"'${name}' is required\",\n enum: \"'${name}' must be one of [${enum}]\",\n whitespace: \"'${name}' cannot be empty\",\n date: {\n format: \"'${name}' is invalid for format date\",\n parse: \"'${name}' could not be parsed as date\",\n invalid: \"'${name}' is invalid date\"\n },\n types: {\n string: typeTemplate,\n method: typeTemplate,\n array: typeTemplate,\n object: typeTemplate,\n number: typeTemplate,\n date: typeTemplate,\n boolean: typeTemplate,\n integer: typeTemplate,\n float: typeTemplate,\n regexp: typeTemplate,\n email: typeTemplate,\n url: typeTemplate,\n hex: typeTemplate\n },\n string: {\n len: \"'${name}' must be exactly ${len} characters\",\n min: \"'${name}' must be at least ${min} characters\",\n max: \"'${name}' cannot be longer than ${max} characters\",\n range: \"'${name}' must be between ${min} and ${max} characters\"\n },\n number: {\n len: \"'${name}' must equal ${len}\",\n min: \"'${name}' cannot be less than ${min}\",\n max: \"'${name}' cannot be greater than ${max}\",\n range: \"'${name}' must be between ${min} and ${max}\"\n },\n array: {\n len: \"'${name}' must be exactly ${len} in length\",\n min: \"'${name}' cannot be less than ${min} in length\",\n max: \"'${name}' cannot be greater than ${max} in length\",\n range: \"'${name}' must be between ${min} and ${max} in length\"\n },\n pattern: {\n mismatch: \"'${name}' does not match pattern ${pattern}\"\n }\n};","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _regeneratorRuntime from \"@babel/runtime/helpers/esm/regeneratorRuntime\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/esm/asyncToGenerator\";\nimport RawAsyncValidator from '@rc-component/async-validator';\nimport * as React from 'react';\nimport warning from \"rc-util/es/warning\";\nimport { defaultValidateMessages } from \"./messages\";\nimport { merge } from \"rc-util/es/utils/set\";\n\n// Remove incorrect original ts define\nvar AsyncValidator = RawAsyncValidator;\n\n/**\n * Replace with template.\n * `I'm ${name}` + { name: 'bamboo' } = I'm bamboo\n */\nfunction replaceMessage(template, kv) {\n return template.replace(/\\\\?\\$\\{\\w+\\}/g, function (str) {\n if (str.startsWith('\\\\')) {\n return str.slice(1);\n }\n var key = str.slice(2, -1);\n return kv[key];\n });\n}\nvar CODE_LOGIC_ERROR = 'CODE_LOGIC_ERROR';\nfunction validateRule(_x, _x2, _x3, _x4, _x5) {\n return _validateRule.apply(this, arguments);\n}\n/**\n * We use `async-validator` to validate the value.\n * But only check one value in a time to avoid namePath validate issue.\n */\nfunction _validateRule() {\n _validateRule = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(name, value, rule, options, messageVariables) {\n var cloneRule, originValidator, subRuleField, validator, messages, result, subResults, kv, fillVariableResult;\n return _regeneratorRuntime().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n cloneRule = _objectSpread({}, rule); // Bug of `async-validator`\n // https://github.com/react-component/field-form/issues/316\n // https://github.com/react-component/field-form/issues/313\n delete cloneRule.ruleIndex;\n\n // https://github.com/ant-design/ant-design/issues/40497#issuecomment-1422282378\n AsyncValidator.warning = function () {\n return void 0;\n };\n if (cloneRule.validator) {\n originValidator = cloneRule.validator;\n cloneRule.validator = function () {\n try {\n return originValidator.apply(void 0, arguments);\n } catch (error) {\n console.error(error);\n return Promise.reject(CODE_LOGIC_ERROR);\n }\n };\n }\n\n // We should special handle array validate\n subRuleField = null;\n if (cloneRule && cloneRule.type === 'array' && cloneRule.defaultField) {\n subRuleField = cloneRule.defaultField;\n delete cloneRule.defaultField;\n }\n validator = new AsyncValidator(_defineProperty({}, name, [cloneRule]));\n messages = merge(defaultValidateMessages, options.validateMessages);\n validator.messages(messages);\n result = [];\n _context2.prev = 10;\n _context2.next = 13;\n return Promise.resolve(validator.validate(_defineProperty({}, name, value), _objectSpread({}, options)));\n case 13:\n _context2.next = 18;\n break;\n case 15:\n _context2.prev = 15;\n _context2.t0 = _context2[\"catch\"](10);\n if (_context2.t0.errors) {\n result = _context2.t0.errors.map(function (_ref4, index) {\n var message = _ref4.message;\n var mergedMessage = message === CODE_LOGIC_ERROR ? messages.default : message;\n return /*#__PURE__*/React.isValidElement(mergedMessage) ?\n /*#__PURE__*/\n // Wrap ReactNode with `key`\n React.cloneElement(mergedMessage, {\n key: \"error_\".concat(index)\n }) : mergedMessage;\n });\n }\n case 18:\n if (!(!result.length && subRuleField)) {\n _context2.next = 23;\n break;\n }\n _context2.next = 21;\n return Promise.all(value.map(function (subValue, i) {\n return validateRule(\"\".concat(name, \".\").concat(i), subValue, subRuleField, options, messageVariables);\n }));\n case 21:\n subResults = _context2.sent;\n return _context2.abrupt(\"return\", subResults.reduce(function (prev, errors) {\n return [].concat(_toConsumableArray(prev), _toConsumableArray(errors));\n }, []));\n case 23:\n // Replace message with variables\n kv = _objectSpread(_objectSpread({}, rule), {}, {\n name: name,\n enum: (rule.enum || []).join(', ')\n }, messageVariables);\n fillVariableResult = result.map(function (error) {\n if (typeof error === 'string') {\n return replaceMessage(error, kv);\n }\n return error;\n });\n return _context2.abrupt(\"return\", fillVariableResult);\n case 26:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2, null, [[10, 15]]);\n }));\n return _validateRule.apply(this, arguments);\n}\nexport function validateRules(namePath, value, rules, options, validateFirst, messageVariables) {\n var name = namePath.join('.');\n\n // Fill rule with context\n var filledRules = rules.map(function (currentRule, ruleIndex) {\n var originValidatorFunc = currentRule.validator;\n var cloneRule = _objectSpread(_objectSpread({}, currentRule), {}, {\n ruleIndex: ruleIndex\n });\n\n // Replace validator if needed\n if (originValidatorFunc) {\n cloneRule.validator = function (rule, val, callback) {\n var hasPromise = false;\n\n // Wrap callback only accept when promise not provided\n var wrappedCallback = function wrappedCallback() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n // Wait a tick to make sure return type is a promise\n Promise.resolve().then(function () {\n warning(!hasPromise, 'Your validator function has already return a promise. `callback` will be ignored.');\n if (!hasPromise) {\n callback.apply(void 0, args);\n }\n });\n };\n\n // Get promise\n var promise = originValidatorFunc(rule, val, wrappedCallback);\n hasPromise = promise && typeof promise.then === 'function' && typeof promise.catch === 'function';\n\n /**\n * 1. Use promise as the first priority.\n * 2. If promise not exist, use callback with warning instead\n */\n warning(hasPromise, '`callback` is deprecated. Please return a promise instead.');\n if (hasPromise) {\n promise.then(function () {\n callback();\n }).catch(function (err) {\n callback(err || ' ');\n });\n }\n };\n }\n return cloneRule;\n }).sort(function (_ref, _ref2) {\n var w1 = _ref.warningOnly,\n i1 = _ref.ruleIndex;\n var w2 = _ref2.warningOnly,\n i2 = _ref2.ruleIndex;\n if (!!w1 === !!w2) {\n // Let keep origin order\n return i1 - i2;\n }\n if (w1) {\n return 1;\n }\n return -1;\n });\n\n // Do validate rules\n var summaryPromise;\n if (validateFirst === true) {\n // >>>>> Validate by serialization\n summaryPromise = new Promise( /*#__PURE__*/function () {\n var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(resolve, reject) {\n var i, rule, errors;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n i = 0;\n case 1:\n if (!(i < filledRules.length)) {\n _context.next = 12;\n break;\n }\n rule = filledRules[i];\n _context.next = 5;\n return validateRule(name, value, rule, options, messageVariables);\n case 5:\n errors = _context.sent;\n if (!errors.length) {\n _context.next = 9;\n break;\n }\n reject([{\n errors: errors,\n rule: rule\n }]);\n return _context.abrupt(\"return\");\n case 9:\n i += 1;\n _context.next = 1;\n break;\n case 12:\n /* eslint-enable */\n\n resolve([]);\n case 13:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }));\n return function (_x6, _x7) {\n return _ref3.apply(this, arguments);\n };\n }());\n } else {\n // >>>>> Validate by parallel\n var rulePromises = filledRules.map(function (rule) {\n return validateRule(name, value, rule, options, messageVariables).then(function (errors) {\n return {\n errors: errors,\n rule: rule\n };\n });\n });\n summaryPromise = (validateFirst ? finishOnFirstFailed(rulePromises) : finishOnAllFailed(rulePromises)).then(function (errors) {\n // Always change to rejection for Field to catch\n return Promise.reject(errors);\n });\n }\n\n // Internal catch error to avoid console error log.\n summaryPromise.catch(function (e) {\n return e;\n });\n return summaryPromise;\n}\nfunction finishOnAllFailed(_x8) {\n return _finishOnAllFailed.apply(this, arguments);\n}\nfunction _finishOnAllFailed() {\n _finishOnAllFailed = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(rulePromises) {\n return _regeneratorRuntime().wrap(function _callee3$(_context3) {\n while (1) switch (_context3.prev = _context3.next) {\n case 0:\n return _context3.abrupt(\"return\", Promise.all(rulePromises).then(function (errorsList) {\n var _ref5;\n var errors = (_ref5 = []).concat.apply(_ref5, _toConsumableArray(errorsList));\n return errors;\n }));\n case 1:\n case \"end\":\n return _context3.stop();\n }\n }, _callee3);\n }));\n return _finishOnAllFailed.apply(this, arguments);\n}\nfunction finishOnFirstFailed(_x9) {\n return _finishOnFirstFailed.apply(this, arguments);\n}\nfunction _finishOnFirstFailed() {\n _finishOnFirstFailed = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(rulePromises) {\n var count;\n return _regeneratorRuntime().wrap(function _callee4$(_context4) {\n while (1) switch (_context4.prev = _context4.next) {\n case 0:\n count = 0;\n return _context4.abrupt(\"return\", new Promise(function (resolve) {\n rulePromises.forEach(function (promise) {\n promise.then(function (ruleError) {\n if (ruleError.errors.length) {\n resolve([ruleError]);\n }\n count += 1;\n if (count === rulePromises.length) {\n resolve([]);\n }\n });\n });\n }));\n case 2:\n case \"end\":\n return _context4.stop();\n }\n }, _callee4);\n }));\n return _finishOnFirstFailed.apply(this, arguments);\n}","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport getValue from \"rc-util/es/utils/get\";\nimport setValue from \"rc-util/es/utils/set\";\nimport { toArray } from \"./typeUtil\";\nexport { getValue, setValue };\n\n/**\n * Convert name to internal supported format.\n * This function should keep since we still thinking if need support like `a.b.c` format.\n * 'a' => ['a']\n * 123 => [123]\n * ['a', 123] => ['a', 123]\n */\nexport function getNamePath(path) {\n return toArray(path);\n}\nexport function cloneByNamePathList(store, namePathList) {\n var newStore = {};\n namePathList.forEach(function (namePath) {\n var value = getValue(store, namePath);\n newStore = setValue(newStore, namePath, value);\n });\n return newStore;\n}\n\n/**\n * Check if `namePathList` includes `namePath`.\n * @param namePathList A list of `InternalNamePath[]`\n * @param namePath Compare `InternalNamePath`\n * @param partialMatch True will make `[a, b]` match `[a, b, c]`\n */\nexport function containsNamePath(namePathList, namePath) {\n var partialMatch = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return namePathList && namePathList.some(function (path) {\n return matchNamePath(namePath, path, partialMatch);\n });\n}\n\n/**\n * Check if `namePath` is super set or equal of `subNamePath`.\n * @param namePath A list of `InternalNamePath[]`\n * @param subNamePath Compare `InternalNamePath`\n * @param partialMatch True will make `[a, b]` match `[a, b, c]`\n */\nexport function matchNamePath(namePath, subNamePath) {\n var partialMatch = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n if (!namePath || !subNamePath) {\n return false;\n }\n if (!partialMatch && namePath.length !== subNamePath.length) {\n return false;\n }\n return subNamePath.every(function (nameUnit, i) {\n return namePath[i] === nameUnit;\n });\n}\n\n// Like `shallowEqual`, but we not check the data which may cause re-render\n\nexport function isSimilar(source, target) {\n if (source === target) {\n return true;\n }\n if (!source && target || source && !target) {\n return false;\n }\n if (!source || !target || _typeof(source) !== 'object' || _typeof(target) !== 'object') {\n return false;\n }\n var sourceKeys = Object.keys(source);\n var targetKeys = Object.keys(target);\n var keys = new Set([].concat(sourceKeys, targetKeys));\n return _toConsumableArray(keys).every(function (key) {\n var sourceValue = source[key];\n var targetValue = target[key];\n if (typeof sourceValue === 'function' && typeof targetValue === 'function') {\n return true;\n }\n return sourceValue === targetValue;\n });\n}\nexport function defaultGetValueFromEvent(valuePropName) {\n var event = arguments.length <= 1 ? undefined : arguments[1];\n if (event && event.target && _typeof(event.target) === 'object' && valuePropName in event.target) {\n return event.target[valuePropName];\n }\n return event;\n}\n\n/**\n * Moves an array item from one position in an array to another.\n *\n * Note: This is a pure function so a new array will be returned, instead\n * of altering the array argument.\n *\n * @param array Array in which to move an item. (required)\n * @param moveIndex The index of the item to move. (required)\n * @param toIndex The index to move item at moveIndex to. (required)\n */\nexport function move(array, moveIndex, toIndex) {\n var length = array.length;\n if (moveIndex < 0 || moveIndex >= length || toIndex < 0 || toIndex >= length) {\n return array;\n }\n var item = array[moveIndex];\n var diff = moveIndex - toIndex;\n if (diff > 0) {\n // move left\n return [].concat(_toConsumableArray(array.slice(0, toIndex)), [item], _toConsumableArray(array.slice(toIndex, moveIndex)), _toConsumableArray(array.slice(moveIndex + 1, length)));\n }\n if (diff < 0) {\n // move right\n return [].concat(_toConsumableArray(array.slice(0, moveIndex)), _toConsumableArray(array.slice(moveIndex + 1, toIndex + 1)), [item], _toConsumableArray(array.slice(toIndex + 1, length)));\n }\n return array;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _regeneratorRuntime from \"@babel/runtime/helpers/esm/regeneratorRuntime\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/esm/asyncToGenerator\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nvar _excluded = [\"name\"];\nimport toChildrenArray from \"rc-util/es/Children/toArray\";\nimport isEqual from \"rc-util/es/isEqual\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport FieldContext, { HOOK_MARK } from \"./FieldContext\";\nimport ListContext from \"./ListContext\";\nimport { toArray } from \"./utils/typeUtil\";\nimport { validateRules } from \"./utils/validateUtil\";\nimport { containsNamePath, defaultGetValueFromEvent, getNamePath, getValue } from \"./utils/valueUtil\";\nvar EMPTY_ERRORS = [];\nfunction requireUpdate(shouldUpdate, prev, next, prevValue, nextValue, info) {\n if (typeof shouldUpdate === 'function') {\n return shouldUpdate(prev, next, 'source' in info ? {\n source: info.source\n } : {});\n }\n return prevValue !== nextValue;\n}\n\n// eslint-disable-next-line @typescript-eslint/consistent-indexed-object-style\n// We use Class instead of Hooks here since it will cost much code by using Hooks.\nvar Field = /*#__PURE__*/function (_React$Component) {\n _inherits(Field, _React$Component);\n var _super = _createSuper(Field);\n // ============================== Subscriptions ==============================\n function Field(props) {\n var _this;\n _classCallCheck(this, Field);\n _this = _super.call(this, props);\n\n // Register on init\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n resetCount: 0\n });\n _defineProperty(_assertThisInitialized(_this), \"cancelRegisterFunc\", null);\n _defineProperty(_assertThisInitialized(_this), \"mounted\", false);\n /**\n * Follow state should not management in State since it will async update by React.\n * This makes first render of form can not get correct state value.\n */\n _defineProperty(_assertThisInitialized(_this), \"touched\", false);\n /**\n * Mark when touched & validated. Currently only used for `dependencies`.\n * Note that we do not think field with `initialValue` is dirty\n * but this will be by `isFieldDirty` func.\n */\n _defineProperty(_assertThisInitialized(_this), \"dirty\", false);\n _defineProperty(_assertThisInitialized(_this), \"validatePromise\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"prevValidating\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"errors\", EMPTY_ERRORS);\n _defineProperty(_assertThisInitialized(_this), \"warnings\", EMPTY_ERRORS);\n _defineProperty(_assertThisInitialized(_this), \"cancelRegister\", function () {\n var _this$props = _this.props,\n preserve = _this$props.preserve,\n isListField = _this$props.isListField,\n name = _this$props.name;\n if (_this.cancelRegisterFunc) {\n _this.cancelRegisterFunc(isListField, preserve, getNamePath(name));\n }\n _this.cancelRegisterFunc = null;\n });\n // ================================== Utils ==================================\n _defineProperty(_assertThisInitialized(_this), \"getNamePath\", function () {\n var _this$props2 = _this.props,\n name = _this$props2.name,\n fieldContext = _this$props2.fieldContext;\n var _fieldContext$prefixN = fieldContext.prefixName,\n prefixName = _fieldContext$prefixN === void 0 ? [] : _fieldContext$prefixN;\n return name !== undefined ? [].concat(_toConsumableArray(prefixName), _toConsumableArray(name)) : [];\n });\n _defineProperty(_assertThisInitialized(_this), \"getRules\", function () {\n var _this$props3 = _this.props,\n _this$props3$rules = _this$props3.rules,\n rules = _this$props3$rules === void 0 ? [] : _this$props3$rules,\n fieldContext = _this$props3.fieldContext;\n return rules.map(function (rule) {\n if (typeof rule === 'function') {\n return rule(fieldContext);\n }\n return rule;\n });\n });\n _defineProperty(_assertThisInitialized(_this), \"refresh\", function () {\n if (!_this.mounted) return;\n\n /**\n * Clean up current node.\n */\n _this.setState(function (_ref) {\n var resetCount = _ref.resetCount;\n return {\n resetCount: resetCount + 1\n };\n });\n });\n // Event should only trigger when meta changed\n _defineProperty(_assertThisInitialized(_this), \"metaCache\", null);\n _defineProperty(_assertThisInitialized(_this), \"triggerMetaEvent\", function (destroy) {\n var onMetaChange = _this.props.onMetaChange;\n if (onMetaChange) {\n var _meta = _objectSpread(_objectSpread({}, _this.getMeta()), {}, {\n destroy: destroy\n });\n if (!isEqual(_this.metaCache, _meta)) {\n onMetaChange(_meta);\n }\n _this.metaCache = _meta;\n } else {\n _this.metaCache = null;\n }\n });\n // ========================= Field Entity Interfaces =========================\n // Trigger by store update. Check if need update the component\n _defineProperty(_assertThisInitialized(_this), \"onStoreChange\", function (prevStore, namePathList, info) {\n var _this$props4 = _this.props,\n shouldUpdate = _this$props4.shouldUpdate,\n _this$props4$dependen = _this$props4.dependencies,\n dependencies = _this$props4$dependen === void 0 ? [] : _this$props4$dependen,\n onReset = _this$props4.onReset;\n var store = info.store;\n var namePath = _this.getNamePath();\n var prevValue = _this.getValue(prevStore);\n var curValue = _this.getValue(store);\n var namePathMatch = namePathList && containsNamePath(namePathList, namePath);\n\n // `setFieldsValue` is a quick access to update related status\n if (info.type === 'valueUpdate' && info.source === 'external' && !isEqual(prevValue, curValue)) {\n _this.touched = true;\n _this.dirty = true;\n _this.validatePromise = null;\n _this.errors = EMPTY_ERRORS;\n _this.warnings = EMPTY_ERRORS;\n _this.triggerMetaEvent();\n }\n switch (info.type) {\n case 'reset':\n if (!namePathList || namePathMatch) {\n // Clean up state\n _this.touched = false;\n _this.dirty = false;\n _this.validatePromise = undefined;\n _this.errors = EMPTY_ERRORS;\n _this.warnings = EMPTY_ERRORS;\n _this.triggerMetaEvent();\n onReset === null || onReset === void 0 || onReset();\n _this.refresh();\n return;\n }\n break;\n\n /**\n * In case field with `preserve = false` nest deps like:\n * - A = 1 => show B\n * - B = 1 => show C\n * - Reset A, need clean B, C\n */\n case 'remove':\n {\n if (shouldUpdate && requireUpdate(shouldUpdate, prevStore, store, prevValue, curValue, info)) {\n _this.reRender();\n return;\n }\n break;\n }\n case 'setField':\n {\n var data = info.data;\n if (namePathMatch) {\n if ('touched' in data) {\n _this.touched = data.touched;\n }\n if ('validating' in data && !('originRCField' in data)) {\n _this.validatePromise = data.validating ? Promise.resolve([]) : null;\n }\n if ('errors' in data) {\n _this.errors = data.errors || EMPTY_ERRORS;\n }\n if ('warnings' in data) {\n _this.warnings = data.warnings || EMPTY_ERRORS;\n }\n _this.dirty = true;\n _this.triggerMetaEvent();\n _this.reRender();\n return;\n } else if ('value' in data && containsNamePath(namePathList, namePath, true)) {\n // Contains path with value should also check\n _this.reRender();\n return;\n }\n\n // Handle update by `setField` with `shouldUpdate`\n if (shouldUpdate && !namePath.length && requireUpdate(shouldUpdate, prevStore, store, prevValue, curValue, info)) {\n _this.reRender();\n return;\n }\n break;\n }\n case 'dependenciesUpdate':\n {\n /**\n * Trigger when marked `dependencies` updated. Related fields will all update\n */\n var dependencyList = dependencies.map(getNamePath);\n // No need for `namePathMath` check and `shouldUpdate` check, since `valueUpdate` will be\n // emitted earlier and they will work there\n // If set it may cause unnecessary twice rerendering\n if (dependencyList.some(function (dependency) {\n return containsNamePath(info.relatedFields, dependency);\n })) {\n _this.reRender();\n return;\n }\n break;\n }\n default:\n // 1. If `namePath` exists in `namePathList`, means it's related value and should update\n // For example <List name=\"list\"><Field name={['list', 0]}></List>\n // If `namePathList` is [['list']] (List value update), Field should be updated\n // If `namePathList` is [['list', 0]] (Field value update), List shouldn't be updated\n // 2.\n // 2.1 If `dependencies` is set, `name` is not set and `shouldUpdate` is not set,\n // don't use `shouldUpdate`. `dependencies` is view as a shortcut if `shouldUpdate`\n // is not provided\n // 2.2 If `shouldUpdate` provided, use customize logic to update the field\n // else to check if value changed\n if (namePathMatch || (!dependencies.length || namePath.length || shouldUpdate) && requireUpdate(shouldUpdate, prevStore, store, prevValue, curValue, info)) {\n _this.reRender();\n return;\n }\n break;\n }\n if (shouldUpdate === true) {\n _this.reRender();\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"validateRules\", function (options) {\n // We should fixed namePath & value to avoid developer change then by form function\n var namePath = _this.getNamePath();\n var currentValue = _this.getValue();\n var _ref2 = options || {},\n triggerName = _ref2.triggerName,\n _ref2$validateOnly = _ref2.validateOnly,\n validateOnly = _ref2$validateOnly === void 0 ? false : _ref2$validateOnly;\n\n // Force change to async to avoid rule OOD under renderProps field\n var rootPromise = Promise.resolve().then( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n var _this$props5, _this$props5$validate, validateFirst, messageVariables, validateDebounce, filteredRules, promise;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n if (_this.mounted) {\n _context.next = 2;\n break;\n }\n return _context.abrupt(\"return\", []);\n case 2:\n _this$props5 = _this.props, _this$props5$validate = _this$props5.validateFirst, validateFirst = _this$props5$validate === void 0 ? false : _this$props5$validate, messageVariables = _this$props5.messageVariables, validateDebounce = _this$props5.validateDebounce; // Start validate\n filteredRules = _this.getRules();\n if (triggerName) {\n filteredRules = filteredRules.filter(function (rule) {\n return rule;\n }).filter(function (rule) {\n var validateTrigger = rule.validateTrigger;\n if (!validateTrigger) {\n return true;\n }\n var triggerList = toArray(validateTrigger);\n return triggerList.includes(triggerName);\n });\n }\n\n // Wait for debounce. Skip if no `triggerName` since its from `validateFields / submit`\n if (!(validateDebounce && triggerName)) {\n _context.next = 10;\n break;\n }\n _context.next = 8;\n return new Promise(function (resolve) {\n setTimeout(resolve, validateDebounce);\n });\n case 8:\n if (!(_this.validatePromise !== rootPromise)) {\n _context.next = 10;\n break;\n }\n return _context.abrupt(\"return\", []);\n case 10:\n promise = validateRules(namePath, currentValue, filteredRules, options, validateFirst, messageVariables);\n promise.catch(function (e) {\n return e;\n }).then(function () {\n var ruleErrors = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : EMPTY_ERRORS;\n if (_this.validatePromise === rootPromise) {\n var _ruleErrors$forEach;\n _this.validatePromise = null;\n\n // Get errors & warnings\n var nextErrors = [];\n var nextWarnings = [];\n (_ruleErrors$forEach = ruleErrors.forEach) === null || _ruleErrors$forEach === void 0 || _ruleErrors$forEach.call(ruleErrors, function (_ref4) {\n var warningOnly = _ref4.rule.warningOnly,\n _ref4$errors = _ref4.errors,\n errors = _ref4$errors === void 0 ? EMPTY_ERRORS : _ref4$errors;\n if (warningOnly) {\n nextWarnings.push.apply(nextWarnings, _toConsumableArray(errors));\n } else {\n nextErrors.push.apply(nextErrors, _toConsumableArray(errors));\n }\n });\n _this.errors = nextErrors;\n _this.warnings = nextWarnings;\n _this.triggerMetaEvent();\n _this.reRender();\n }\n });\n return _context.abrupt(\"return\", promise);\n case 13:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n })));\n if (validateOnly) {\n return rootPromise;\n }\n _this.validatePromise = rootPromise;\n _this.dirty = true;\n _this.errors = EMPTY_ERRORS;\n _this.warnings = EMPTY_ERRORS;\n _this.triggerMetaEvent();\n\n // Force trigger re-render since we need sync renderProps with new meta\n _this.reRender();\n return rootPromise;\n });\n _defineProperty(_assertThisInitialized(_this), \"isFieldValidating\", function () {\n return !!_this.validatePromise;\n });\n _defineProperty(_assertThisInitialized(_this), \"isFieldTouched\", function () {\n return _this.touched;\n });\n _defineProperty(_assertThisInitialized(_this), \"isFieldDirty\", function () {\n // Touched or validate or has initialValue\n if (_this.dirty || _this.props.initialValue !== undefined) {\n return true;\n }\n\n // Form set initialValue\n var fieldContext = _this.props.fieldContext;\n var _fieldContext$getInte = fieldContext.getInternalHooks(HOOK_MARK),\n getInitialValue = _fieldContext$getInte.getInitialValue;\n if (getInitialValue(_this.getNamePath()) !== undefined) {\n return true;\n }\n return false;\n });\n _defineProperty(_assertThisInitialized(_this), \"getErrors\", function () {\n return _this.errors;\n });\n _defineProperty(_assertThisInitialized(_this), \"getWarnings\", function () {\n return _this.warnings;\n });\n _defineProperty(_assertThisInitialized(_this), \"isListField\", function () {\n return _this.props.isListField;\n });\n _defineProperty(_assertThisInitialized(_this), \"isList\", function () {\n return _this.props.isList;\n });\n _defineProperty(_assertThisInitialized(_this), \"isPreserve\", function () {\n return _this.props.preserve;\n });\n // ============================= Child Component =============================\n _defineProperty(_assertThisInitialized(_this), \"getMeta\", function () {\n // Make error & validating in cache to save perf\n _this.prevValidating = _this.isFieldValidating();\n var meta = {\n touched: _this.isFieldTouched(),\n validating: _this.prevValidating,\n errors: _this.errors,\n warnings: _this.warnings,\n name: _this.getNamePath(),\n validated: _this.validatePromise === null\n };\n return meta;\n });\n // Only return validate child node. If invalidate, will do nothing about field.\n _defineProperty(_assertThisInitialized(_this), \"getOnlyChild\", function (children) {\n // Support render props\n if (typeof children === 'function') {\n var _meta2 = _this.getMeta();\n return _objectSpread(_objectSpread({}, _this.getOnlyChild(children(_this.getControlled(), _meta2, _this.props.fieldContext))), {}, {\n isFunction: true\n });\n }\n\n // Filed element only\n var childList = toChildrenArray(children);\n if (childList.length !== 1 || ! /*#__PURE__*/React.isValidElement(childList[0])) {\n return {\n child: childList,\n isFunction: false\n };\n }\n return {\n child: childList[0],\n isFunction: false\n };\n });\n // ============================== Field Control ==============================\n _defineProperty(_assertThisInitialized(_this), \"getValue\", function (store) {\n var getFieldsValue = _this.props.fieldContext.getFieldsValue;\n var namePath = _this.getNamePath();\n return getValue(store || getFieldsValue(true), namePath);\n });\n _defineProperty(_assertThisInitialized(_this), \"getControlled\", function () {\n var childProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _this$props6 = _this.props,\n name = _this$props6.name,\n trigger = _this$props6.trigger,\n validateTrigger = _this$props6.validateTrigger,\n getValueFromEvent = _this$props6.getValueFromEvent,\n normalize = _this$props6.normalize,\n valuePropName = _this$props6.valuePropName,\n getValueProps = _this$props6.getValueProps,\n fieldContext = _this$props6.fieldContext;\n var mergedValidateTrigger = validateTrigger !== undefined ? validateTrigger : fieldContext.validateTrigger;\n var namePath = _this.getNamePath();\n var getInternalHooks = fieldContext.getInternalHooks,\n getFieldsValue = fieldContext.getFieldsValue;\n var _getInternalHooks = getInternalHooks(HOOK_MARK),\n dispatch = _getInternalHooks.dispatch;\n var value = _this.getValue();\n var mergedGetValueProps = getValueProps || function (val) {\n return _defineProperty({}, valuePropName, val);\n };\n var originTriggerFunc = childProps[trigger];\n var valueProps = name !== undefined ? mergedGetValueProps(value) : {};\n\n // warning when prop value is function\n if (process.env.NODE_ENV !== 'production' && valueProps) {\n Object.keys(valueProps).forEach(function (key) {\n warning(typeof valueProps[key] !== 'function', \"It's not recommended to generate dynamic function prop by `getValueProps`. Please pass it to child component directly (prop: \".concat(key, \")\"));\n });\n }\n var control = _objectSpread(_objectSpread({}, childProps), valueProps);\n\n // Add trigger\n control[trigger] = function () {\n // Mark as touched\n _this.touched = true;\n _this.dirty = true;\n _this.triggerMetaEvent();\n var newValue;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (getValueFromEvent) {\n newValue = getValueFromEvent.apply(void 0, args);\n } else {\n newValue = defaultGetValueFromEvent.apply(void 0, [valuePropName].concat(args));\n }\n if (normalize) {\n newValue = normalize(newValue, value, getFieldsValue(true));\n }\n if (newValue !== value) {\n dispatch({\n type: 'updateValue',\n namePath: namePath,\n value: newValue\n });\n }\n if (originTriggerFunc) {\n originTriggerFunc.apply(void 0, args);\n }\n };\n\n // Add validateTrigger\n var validateTriggerList = toArray(mergedValidateTrigger || []);\n validateTriggerList.forEach(function (triggerName) {\n // Wrap additional function of component, so that we can get latest value from store\n var originTrigger = control[triggerName];\n control[triggerName] = function () {\n if (originTrigger) {\n originTrigger.apply(void 0, arguments);\n }\n\n // Always use latest rules\n var rules = _this.props.rules;\n if (rules && rules.length) {\n // We dispatch validate to root,\n // since it will update related data with other field with same name\n dispatch({\n type: 'validateField',\n namePath: namePath,\n triggerName: triggerName\n });\n }\n };\n });\n return control;\n });\n if (props.fieldContext) {\n var getInternalHooks = props.fieldContext.getInternalHooks;\n var _getInternalHooks2 = getInternalHooks(HOOK_MARK),\n initEntityValue = _getInternalHooks2.initEntityValue;\n initEntityValue(_assertThisInitialized(_this));\n }\n return _this;\n }\n _createClass(Field, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n var _this$props7 = this.props,\n shouldUpdate = _this$props7.shouldUpdate,\n fieldContext = _this$props7.fieldContext;\n this.mounted = true;\n\n // Register on init\n if (fieldContext) {\n var getInternalHooks = fieldContext.getInternalHooks;\n var _getInternalHooks3 = getInternalHooks(HOOK_MARK),\n registerField = _getInternalHooks3.registerField;\n this.cancelRegisterFunc = registerField(this);\n }\n\n // One more render for component in case fields not ready\n if (shouldUpdate === true) {\n this.reRender();\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.cancelRegister();\n this.triggerMetaEvent(true);\n this.mounted = false;\n }\n }, {\n key: \"reRender\",\n value: function reRender() {\n if (!this.mounted) return;\n this.forceUpdate();\n }\n }, {\n key: \"render\",\n value: function render() {\n var resetCount = this.state.resetCount;\n var children = this.props.children;\n var _this$getOnlyChild = this.getOnlyChild(children),\n child = _this$getOnlyChild.child,\n isFunction = _this$getOnlyChild.isFunction;\n\n // Not need to `cloneElement` since user can handle this in render function self\n var returnChildNode;\n if (isFunction) {\n returnChildNode = child;\n } else if ( /*#__PURE__*/React.isValidElement(child)) {\n returnChildNode = /*#__PURE__*/React.cloneElement(child, this.getControlled(child.props));\n } else {\n warning(!child, '`children` of Field is not validate ReactElement.');\n returnChildNode = child;\n }\n return /*#__PURE__*/React.createElement(React.Fragment, {\n key: resetCount\n }, returnChildNode);\n }\n }]);\n return Field;\n}(React.Component);\n_defineProperty(Field, \"contextType\", FieldContext);\n_defineProperty(Field, \"defaultProps\", {\n trigger: 'onChange',\n valuePropName: 'value'\n});\nfunction WrapperField(_ref6) {\n var _restProps$isListFiel;\n var name = _ref6.name,\n restProps = _objectWithoutProperties(_ref6, _excluded);\n var fieldContext = React.useContext(FieldContext);\n var listContext = React.useContext(ListContext);\n var namePath = name !== undefined ? getNamePath(name) : undefined;\n var isMergedListField = (_restProps$isListFiel = restProps.isListField) !== null && _restProps$isListFiel !== void 0 ? _restProps$isListFiel : !!listContext;\n var key = 'keep';\n if (!isMergedListField) {\n key = \"_\".concat((namePath || []).join('_'));\n }\n\n // Warning if it's a directly list field.\n // We can still support multiple level field preserve.\n if (process.env.NODE_ENV !== 'production' && restProps.preserve === false && isMergedListField && namePath.length <= 1) {\n warning(false, '`preserve` should not apply on Form.List fields.');\n }\n return /*#__PURE__*/React.createElement(Field, _extends({\n key: key,\n name: namePath,\n isListField: isMergedListField\n }, restProps, {\n fieldContext: fieldContext\n }));\n}\nexport default WrapperField;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nvar SPLIT = '__@field_split__';\n\n/**\n * Convert name path into string to fast the fetch speed of Map.\n */\nfunction normalize(namePath) {\n return namePath.map(function (cell) {\n return \"\".concat(_typeof(cell), \":\").concat(cell);\n })\n // Magic split\n .join(SPLIT);\n}\n\n/**\n * NameMap like a `Map` but accepts `string[]` as key.\n */\nvar NameMap = /*#__PURE__*/function () {\n function NameMap() {\n _classCallCheck(this, NameMap);\n _defineProperty(this, \"kvs\", new Map());\n }\n _createClass(NameMap, [{\n key: \"set\",\n value: function set(key, value) {\n this.kvs.set(normalize(key), value);\n }\n }, {\n key: \"get\",\n value: function get(key) {\n return this.kvs.get(normalize(key));\n }\n }, {\n key: \"update\",\n value: function update(key, updater) {\n var origin = this.get(key);\n var next = updater(origin);\n if (!next) {\n this.delete(key);\n } else {\n this.set(key, next);\n }\n }\n }, {\n key: \"delete\",\n value: function _delete(key) {\n this.kvs.delete(normalize(key));\n }\n\n // Since we only use this in test, let simply realize this\n }, {\n key: \"map\",\n value: function map(callback) {\n return _toConsumableArray(this.kvs.entries()).map(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n key = _ref2[0],\n value = _ref2[1];\n var cells = key.split(SPLIT);\n return callback({\n key: cells.map(function (cell) {\n var _cell$match = cell.match(/^([^:]*):(.*)$/),\n _cell$match2 = _slicedToArray(_cell$match, 3),\n type = _cell$match2[1],\n unit = _cell$match2[2];\n return type === 'number' ? Number(unit) : unit;\n }),\n value: value\n });\n });\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n var json = {};\n this.map(function (_ref3) {\n var key = _ref3.key,\n value = _ref3.value;\n json[key.join('.')] = value;\n return null;\n });\n return json;\n }\n }]);\n return NameMap;\n}();\nexport default NameMap;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nvar _excluded = [\"name\"];\nimport { merge } from \"rc-util/es/utils/set\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport { HOOK_MARK } from \"./FieldContext\";\nimport { allPromiseFinish } from \"./utils/asyncUtil\";\nimport { defaultValidateMessages } from \"./utils/messages\";\nimport NameMap from \"./utils/NameMap\";\nimport { cloneByNamePathList, containsNamePath, getNamePath, getValue, matchNamePath, setValue } from \"./utils/valueUtil\";\nexport var FormStore = /*#__PURE__*/_createClass(function FormStore(forceRootUpdate) {\n var _this = this;\n _classCallCheck(this, FormStore);\n _defineProperty(this, \"formHooked\", false);\n _defineProperty(this, \"forceRootUpdate\", void 0);\n _defineProperty(this, \"subscribable\", true);\n _defineProperty(this, \"store\", {});\n _defineProperty(this, \"fieldEntities\", []);\n _defineProperty(this, \"initialValues\", {});\n _defineProperty(this, \"callbacks\", {});\n _defineProperty(this, \"validateMessages\", null);\n _defineProperty(this, \"preserve\", null);\n _defineProperty(this, \"lastValidatePromise\", null);\n _defineProperty(this, \"getForm\", function () {\n return {\n getFieldValue: _this.getFieldValue,\n getFieldsValue: _this.getFieldsValue,\n getFieldError: _this.getFieldError,\n getFieldWarning: _this.getFieldWarning,\n getFieldsError: _this.getFieldsError,\n isFieldsTouched: _this.isFieldsTouched,\n isFieldTouched: _this.isFieldTouched,\n isFieldValidating: _this.isFieldValidating,\n isFieldsValidating: _this.isFieldsValidating,\n resetFields: _this.resetFields,\n setFields: _this.setFields,\n setFieldValue: _this.setFieldValue,\n setFieldsValue: _this.setFieldsValue,\n validateFields: _this.validateFields,\n submit: _this.submit,\n _init: true,\n getInternalHooks: _this.getInternalHooks\n };\n });\n // ======================== Internal Hooks ========================\n _defineProperty(this, \"getInternalHooks\", function (key) {\n if (key === HOOK_MARK) {\n _this.formHooked = true;\n return {\n dispatch: _this.dispatch,\n initEntityValue: _this.initEntityValue,\n registerField: _this.registerField,\n useSubscribe: _this.useSubscribe,\n setInitialValues: _this.setInitialValues,\n destroyForm: _this.destroyForm,\n setCallbacks: _this.setCallbacks,\n setValidateMessages: _this.setValidateMessages,\n getFields: _this.getFields,\n setPreserve: _this.setPreserve,\n getInitialValue: _this.getInitialValue,\n registerWatch: _this.registerWatch\n };\n }\n warning(false, '`getInternalHooks` is internal usage. Should not call directly.');\n return null;\n });\n _defineProperty(this, \"useSubscribe\", function (subscribable) {\n _this.subscribable = subscribable;\n });\n /**\n * Record prev Form unmount fieldEntities which config preserve false.\n * This need to be refill with initialValues instead of store value.\n */\n _defineProperty(this, \"prevWithoutPreserves\", null);\n /**\n * First time `setInitialValues` should update store with initial value\n */\n _defineProperty(this, \"setInitialValues\", function (initialValues, init) {\n _this.initialValues = initialValues || {};\n if (init) {\n var _this$prevWithoutPres;\n var nextStore = merge(initialValues, _this.store);\n\n // We will take consider prev form unmount fields.\n // When the field is not `preserve`, we need fill this with initialValues instead of store.\n // eslint-disable-next-line array-callback-return\n (_this$prevWithoutPres = _this.prevWithoutPreserves) === null || _this$prevWithoutPres === void 0 || _this$prevWithoutPres.map(function (_ref) {\n var namePath = _ref.key;\n nextStore = setValue(nextStore, namePath, getValue(initialValues, namePath));\n });\n _this.prevWithoutPreserves = null;\n _this.updateStore(nextStore);\n }\n });\n _defineProperty(this, \"destroyForm\", function (clearOnDestroy) {\n if (clearOnDestroy) {\n // destroy form reset store\n _this.updateStore({});\n } else {\n // Fill preserve fields\n var prevWithoutPreserves = new NameMap();\n _this.getFieldEntities(true).forEach(function (entity) {\n if (!_this.isMergedPreserve(entity.isPreserve())) {\n prevWithoutPreserves.set(entity.getNamePath(), true);\n }\n });\n _this.prevWithoutPreserves = prevWithoutPreserves;\n }\n });\n _defineProperty(this, \"getInitialValue\", function (namePath) {\n var initValue = getValue(_this.initialValues, namePath);\n\n // Not cloneDeep when without `namePath`\n return namePath.length ? merge(initValue) : initValue;\n });\n _defineProperty(this, \"setCallbacks\", function (callbacks) {\n _this.callbacks = callbacks;\n });\n _defineProperty(this, \"setValidateMessages\", function (validateMessages) {\n _this.validateMessages = validateMessages;\n });\n _defineProperty(this, \"setPreserve\", function (preserve) {\n _this.preserve = preserve;\n });\n // ============================= Watch ============================\n _defineProperty(this, \"watchList\", []);\n _defineProperty(this, \"registerWatch\", function (callback) {\n _this.watchList.push(callback);\n return function () {\n _this.watchList = _this.watchList.filter(function (fn) {\n return fn !== callback;\n });\n };\n });\n _defineProperty(this, \"notifyWatch\", function () {\n var namePath = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n // No need to cost perf when nothing need to watch\n if (_this.watchList.length) {\n var values = _this.getFieldsValue();\n var allValues = _this.getFieldsValue(true);\n _this.watchList.forEach(function (callback) {\n callback(values, allValues, namePath);\n });\n }\n });\n // ========================== Dev Warning =========================\n _defineProperty(this, \"timeoutId\", null);\n _defineProperty(this, \"warningUnhooked\", function () {\n if (process.env.NODE_ENV !== 'production' && !_this.timeoutId && typeof window !== 'undefined') {\n _this.timeoutId = setTimeout(function () {\n _this.timeoutId = null;\n if (!_this.formHooked) {\n warning(false, 'Instance created by `useForm` is not connected to any Form element. Forget to pass `form` prop?');\n }\n });\n }\n });\n // ============================ Store =============================\n _defineProperty(this, \"updateStore\", function (nextStore) {\n _this.store = nextStore;\n });\n // ============================ Fields ============================\n /**\n * Get registered field entities.\n * @param pure Only return field which has a `name`. Default: false\n */\n _defineProperty(this, \"getFieldEntities\", function () {\n var pure = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n if (!pure) {\n return _this.fieldEntities;\n }\n return _this.fieldEntities.filter(function (field) {\n return field.getNamePath().length;\n });\n });\n _defineProperty(this, \"getFieldsMap\", function () {\n var pure = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var cache = new NameMap();\n _this.getFieldEntities(pure).forEach(function (field) {\n var namePath = field.getNamePath();\n cache.set(namePath, field);\n });\n return cache;\n });\n _defineProperty(this, \"getFieldEntitiesForNamePathList\", function (nameList) {\n if (!nameList) {\n return _this.getFieldEntities(true);\n }\n var cache = _this.getFieldsMap(true);\n return nameList.map(function (name) {\n var namePath = getNamePath(name);\n return cache.get(namePath) || {\n INVALIDATE_NAME_PATH: getNamePath(name)\n };\n });\n });\n _defineProperty(this, \"getFieldsValue\", function (nameList, filterFunc) {\n _this.warningUnhooked();\n\n // Fill args\n var mergedNameList;\n var mergedFilterFunc;\n var mergedStrict;\n if (nameList === true || Array.isArray(nameList)) {\n mergedNameList = nameList;\n mergedFilterFunc = filterFunc;\n } else if (nameList && _typeof(nameList) === 'object') {\n mergedStrict = nameList.strict;\n mergedFilterFunc = nameList.filter;\n }\n if (mergedNameList === true && !mergedFilterFunc) {\n return _this.store;\n }\n var fieldEntities = _this.getFieldEntitiesForNamePathList(Array.isArray(mergedNameList) ? mergedNameList : null);\n var filteredNameList = [];\n fieldEntities.forEach(function (entity) {\n var _isListField, _ref3;\n var namePath = 'INVALIDATE_NAME_PATH' in entity ? entity.INVALIDATE_NAME_PATH : entity.getNamePath();\n\n // Ignore when it's a list item and not specific the namePath,\n // since parent field is already take in count\n if (mergedStrict) {\n var _isList, _ref2;\n if ((_isList = (_ref2 = entity).isList) !== null && _isList !== void 0 && _isList.call(_ref2)) {\n return;\n }\n } else if (!mergedNameList && (_isListField = (_ref3 = entity).isListField) !== null && _isListField !== void 0 && _isListField.call(_ref3)) {\n return;\n }\n if (!mergedFilterFunc) {\n filteredNameList.push(namePath);\n } else {\n var meta = 'getMeta' in entity ? entity.getMeta() : null;\n if (mergedFilterFunc(meta)) {\n filteredNameList.push(namePath);\n }\n }\n });\n return cloneByNamePathList(_this.store, filteredNameList.map(getNamePath));\n });\n _defineProperty(this, \"getFieldValue\", function (name) {\n _this.warningUnhooked();\n var namePath = getNamePath(name);\n return getValue(_this.store, namePath);\n });\n _defineProperty(this, \"getFieldsError\", function (nameList) {\n _this.warningUnhooked();\n var fieldEntities = _this.getFieldEntitiesForNamePathList(nameList);\n return fieldEntities.map(function (entity, index) {\n if (entity && !('INVALIDATE_NAME_PATH' in entity)) {\n return {\n name: entity.getNamePath(),\n errors: entity.getErrors(),\n warnings: entity.getWarnings()\n };\n }\n return {\n name: getNamePath(nameList[index]),\n errors: [],\n warnings: []\n };\n });\n });\n _defineProperty(this, \"getFieldError\", function (name) {\n _this.warningUnhooked();\n var namePath = getNamePath(name);\n var fieldError = _this.getFieldsError([namePath])[0];\n return fieldError.errors;\n });\n _defineProperty(this, \"getFieldWarning\", function (name) {\n _this.warningUnhooked();\n var namePath = getNamePath(name);\n var fieldError = _this.getFieldsError([namePath])[0];\n return fieldError.warnings;\n });\n _defineProperty(this, \"isFieldsTouched\", function () {\n _this.warningUnhooked();\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n var arg0 = args[0],\n arg1 = args[1];\n var namePathList;\n var isAllFieldsTouched = false;\n if (args.length === 0) {\n namePathList = null;\n } else if (args.length === 1) {\n if (Array.isArray(arg0)) {\n namePathList = arg0.map(getNamePath);\n isAllFieldsTouched = false;\n } else {\n namePathList = null;\n isAllFieldsTouched = arg0;\n }\n } else {\n namePathList = arg0.map(getNamePath);\n isAllFieldsTouched = arg1;\n }\n var fieldEntities = _this.getFieldEntities(true);\n var isFieldTouched = function isFieldTouched(field) {\n return field.isFieldTouched();\n };\n\n // ===== Will get fully compare when not config namePathList =====\n if (!namePathList) {\n return isAllFieldsTouched ? fieldEntities.every(function (entity) {\n return isFieldTouched(entity) || entity.isList();\n }) : fieldEntities.some(isFieldTouched);\n }\n\n // Generate a nest tree for validate\n var map = new NameMap();\n namePathList.forEach(function (shortNamePath) {\n map.set(shortNamePath, []);\n });\n fieldEntities.forEach(function (field) {\n var fieldNamePath = field.getNamePath();\n\n // Find matched entity and put into list\n namePathList.forEach(function (shortNamePath) {\n if (shortNamePath.every(function (nameUnit, i) {\n return fieldNamePath[i] === nameUnit;\n })) {\n map.update(shortNamePath, function (list) {\n return [].concat(_toConsumableArray(list), [field]);\n });\n }\n });\n });\n\n // Check if NameMap value is touched\n var isNamePathListTouched = function isNamePathListTouched(entities) {\n return entities.some(isFieldTouched);\n };\n var namePathListEntities = map.map(function (_ref4) {\n var value = _ref4.value;\n return value;\n });\n return isAllFieldsTouched ? namePathListEntities.every(isNamePathListTouched) : namePathListEntities.some(isNamePathListTouched);\n });\n _defineProperty(this, \"isFieldTouched\", function (name) {\n _this.warningUnhooked();\n return _this.isFieldsTouched([name]);\n });\n _defineProperty(this, \"isFieldsValidating\", function (nameList) {\n _this.warningUnhooked();\n var fieldEntities = _this.getFieldEntities();\n if (!nameList) {\n return fieldEntities.some(function (testField) {\n return testField.isFieldValidating();\n });\n }\n var namePathList = nameList.map(getNamePath);\n return fieldEntities.some(function (testField) {\n var fieldNamePath = testField.getNamePath();\n return containsNamePath(namePathList, fieldNamePath) && testField.isFieldValidating();\n });\n });\n _defineProperty(this, \"isFieldValidating\", function (name) {\n _this.warningUnhooked();\n return _this.isFieldsValidating([name]);\n });\n /**\n * Reset Field with field `initialValue` prop.\n * Can pass `entities` or `namePathList` or just nothing.\n */\n _defineProperty(this, \"resetWithFieldInitialValue\", function () {\n var info = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Create cache\n var cache = new NameMap();\n var fieldEntities = _this.getFieldEntities(true);\n fieldEntities.forEach(function (field) {\n var initialValue = field.props.initialValue;\n var namePath = field.getNamePath();\n\n // Record only if has `initialValue`\n if (initialValue !== undefined) {\n var records = cache.get(namePath) || new Set();\n records.add({\n entity: field,\n value: initialValue\n });\n cache.set(namePath, records);\n }\n });\n\n // Reset\n var resetWithFields = function resetWithFields(entities) {\n entities.forEach(function (field) {\n var initialValue = field.props.initialValue;\n if (initialValue !== undefined) {\n var namePath = field.getNamePath();\n var formInitialValue = _this.getInitialValue(namePath);\n if (formInitialValue !== undefined) {\n // Warning if conflict with form initialValues and do not modify value\n warning(false, \"Form already set 'initialValues' with path '\".concat(namePath.join('.'), \"'. Field can not overwrite it.\"));\n } else {\n var records = cache.get(namePath);\n if (records && records.size > 1) {\n // Warning if multiple field set `initialValue`and do not modify value\n warning(false, \"Multiple Field with path '\".concat(namePath.join('.'), \"' set 'initialValue'. Can not decide which one to pick.\"));\n } else if (records) {\n var originValue = _this.getFieldValue(namePath);\n var isListField = field.isListField();\n\n // Set `initialValue`\n if (!isListField && (!info.skipExist || originValue === undefined)) {\n _this.updateStore(setValue(_this.store, namePath, _toConsumableArray(records)[0].value));\n }\n }\n }\n }\n });\n };\n var requiredFieldEntities;\n if (info.entities) {\n requiredFieldEntities = info.entities;\n } else if (info.namePathList) {\n requiredFieldEntities = [];\n info.namePathList.forEach(function (namePath) {\n var records = cache.get(namePath);\n if (records) {\n var _requiredFieldEntitie;\n (_requiredFieldEntitie = requiredFieldEntities).push.apply(_requiredFieldEntitie, _toConsumableArray(_toConsumableArray(records).map(function (r) {\n return r.entity;\n })));\n }\n });\n } else {\n requiredFieldEntities = fieldEntities;\n }\n resetWithFields(requiredFieldEntities);\n });\n _defineProperty(this, \"resetFields\", function (nameList) {\n _this.warningUnhooked();\n var prevStore = _this.store;\n if (!nameList) {\n _this.updateStore(merge(_this.initialValues));\n _this.resetWithFieldInitialValue();\n _this.notifyObservers(prevStore, null, {\n type: 'reset'\n });\n _this.notifyWatch();\n return;\n }\n\n // Reset by `nameList`\n var namePathList = nameList.map(getNamePath);\n namePathList.forEach(function (namePath) {\n var initialValue = _this.getInitialValue(namePath);\n _this.updateStore(setValue(_this.store, namePath, initialValue));\n });\n _this.resetWithFieldInitialValue({\n namePathList: namePathList\n });\n _this.notifyObservers(prevStore, namePathList, {\n type: 'reset'\n });\n _this.notifyWatch(namePathList);\n });\n _defineProperty(this, \"setFields\", function (fields) {\n _this.warningUnhooked();\n var prevStore = _this.store;\n var namePathList = [];\n fields.forEach(function (fieldData) {\n var name = fieldData.name,\n data = _objectWithoutProperties(fieldData, _excluded);\n var namePath = getNamePath(name);\n namePathList.push(namePath);\n\n // Value\n if ('value' in data) {\n _this.updateStore(setValue(_this.store, namePath, data.value));\n }\n _this.notifyObservers(prevStore, [namePath], {\n type: 'setField',\n data: fieldData\n });\n });\n _this.notifyWatch(namePathList);\n });\n _defineProperty(this, \"getFields\", function () {\n var entities = _this.getFieldEntities(true);\n var fields = entities.map(function (field) {\n var namePath = field.getNamePath();\n var meta = field.getMeta();\n var fieldData = _objectSpread(_objectSpread({}, meta), {}, {\n name: namePath,\n value: _this.getFieldValue(namePath)\n });\n Object.defineProperty(fieldData, 'originRCField', {\n value: true\n });\n return fieldData;\n });\n return fields;\n });\n // =========================== Observer ===========================\n /**\n * This only trigger when a field is on constructor to avoid we get initialValue too late\n */\n _defineProperty(this, \"initEntityValue\", function (entity) {\n var initialValue = entity.props.initialValue;\n if (initialValue !== undefined) {\n var namePath = entity.getNamePath();\n var prevValue = getValue(_this.store, namePath);\n if (prevValue === undefined) {\n _this.updateStore(setValue(_this.store, namePath, initialValue));\n }\n }\n });\n _defineProperty(this, \"isMergedPreserve\", function (fieldPreserve) {\n var mergedPreserve = fieldPreserve !== undefined ? fieldPreserve : _this.preserve;\n return mergedPreserve !== null && mergedPreserve !== void 0 ? mergedPreserve : true;\n });\n _defineProperty(this, \"registerField\", function (entity) {\n _this.fieldEntities.push(entity);\n var namePath = entity.getNamePath();\n _this.notifyWatch([namePath]);\n\n // Set initial values\n if (entity.props.initialValue !== undefined) {\n var prevStore = _this.store;\n _this.resetWithFieldInitialValue({\n entities: [entity],\n skipExist: true\n });\n _this.notifyObservers(prevStore, [entity.getNamePath()], {\n type: 'valueUpdate',\n source: 'internal'\n });\n }\n\n // un-register field callback\n return function (isListField, preserve) {\n var subNamePath = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n _this.fieldEntities = _this.fieldEntities.filter(function (item) {\n return item !== entity;\n });\n\n // Clean up store value if not preserve\n if (!_this.isMergedPreserve(preserve) && (!isListField || subNamePath.length > 1)) {\n var defaultValue = isListField ? undefined : _this.getInitialValue(namePath);\n if (namePath.length && _this.getFieldValue(namePath) !== defaultValue && _this.fieldEntities.every(function (field) {\n return (\n // Only reset when no namePath exist\n !matchNamePath(field.getNamePath(), namePath)\n );\n })) {\n var _prevStore = _this.store;\n _this.updateStore(setValue(_prevStore, namePath, defaultValue, true));\n\n // Notify that field is unmount\n _this.notifyObservers(_prevStore, [namePath], {\n type: 'remove'\n });\n\n // Dependencies update\n _this.triggerDependenciesUpdate(_prevStore, namePath);\n }\n }\n _this.notifyWatch([namePath]);\n };\n });\n _defineProperty(this, \"dispatch\", function (action) {\n switch (action.type) {\n case 'updateValue':\n {\n var namePath = action.namePath,\n value = action.value;\n _this.updateValue(namePath, value);\n break;\n }\n case 'validateField':\n {\n var _namePath = action.namePath,\n triggerName = action.triggerName;\n _this.validateFields([_namePath], {\n triggerName: triggerName\n });\n break;\n }\n default:\n // Currently we don't have other action. Do nothing.\n }\n });\n _defineProperty(this, \"notifyObservers\", function (prevStore, namePathList, info) {\n if (_this.subscribable) {\n var mergedInfo = _objectSpread(_objectSpread({}, info), {}, {\n store: _this.getFieldsValue(true)\n });\n _this.getFieldEntities().forEach(function (_ref5) {\n var onStoreChange = _ref5.onStoreChange;\n onStoreChange(prevStore, namePathList, mergedInfo);\n });\n } else {\n _this.forceRootUpdate();\n }\n });\n /**\n * Notify dependencies children with parent update\n * We need delay to trigger validate in case Field is under render props\n */\n _defineProperty(this, \"triggerDependenciesUpdate\", function (prevStore, namePath) {\n var childrenFields = _this.getDependencyChildrenFields(namePath);\n if (childrenFields.length) {\n _this.validateFields(childrenFields);\n }\n _this.notifyObservers(prevStore, childrenFields, {\n type: 'dependenciesUpdate',\n relatedFields: [namePath].concat(_toConsumableArray(childrenFields))\n });\n return childrenFields;\n });\n _defineProperty(this, \"updateValue\", function (name, value) {\n var namePath = getNamePath(name);\n var prevStore = _this.store;\n _this.updateStore(setValue(_this.store, namePath, value));\n _this.notifyObservers(prevStore, [namePath], {\n type: 'valueUpdate',\n source: 'internal'\n });\n _this.notifyWatch([namePath]);\n\n // Dependencies update\n var childrenFields = _this.triggerDependenciesUpdate(prevStore, namePath);\n\n // trigger callback function\n var onValuesChange = _this.callbacks.onValuesChange;\n if (onValuesChange) {\n var changedValues = cloneByNamePathList(_this.store, [namePath]);\n onValuesChange(changedValues, _this.getFieldsValue());\n }\n _this.triggerOnFieldsChange([namePath].concat(_toConsumableArray(childrenFields)));\n });\n // Let all child Field get update.\n _defineProperty(this, \"setFieldsValue\", function (store) {\n _this.warningUnhooked();\n var prevStore = _this.store;\n if (store) {\n var nextStore = merge(_this.store, store);\n _this.updateStore(nextStore);\n }\n _this.notifyObservers(prevStore, null, {\n type: 'valueUpdate',\n source: 'external'\n });\n _this.notifyWatch();\n });\n _defineProperty(this, \"setFieldValue\", function (name, value) {\n _this.setFields([{\n name: name,\n value: value,\n errors: [],\n warnings: []\n }]);\n });\n _defineProperty(this, \"getDependencyChildrenFields\", function (rootNamePath) {\n var children = new Set();\n var childrenFields = [];\n var dependencies2fields = new NameMap();\n\n /**\n * Generate maps\n * Can use cache to save perf if user report performance issue with this\n */\n _this.getFieldEntities().forEach(function (field) {\n var dependencies = field.props.dependencies;\n (dependencies || []).forEach(function (dependency) {\n var dependencyNamePath = getNamePath(dependency);\n dependencies2fields.update(dependencyNamePath, function () {\n var fields = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : new Set();\n fields.add(field);\n return fields;\n });\n });\n });\n var fillChildren = function fillChildren(namePath) {\n var fields = dependencies2fields.get(namePath) || new Set();\n fields.forEach(function (field) {\n if (!children.has(field)) {\n children.add(field);\n var fieldNamePath = field.getNamePath();\n if (field.isFieldDirty() && fieldNamePath.length) {\n childrenFields.push(fieldNamePath);\n fillChildren(fieldNamePath);\n }\n }\n });\n };\n fillChildren(rootNamePath);\n return childrenFields;\n });\n _defineProperty(this, \"triggerOnFieldsChange\", function (namePathList, filedErrors) {\n var onFieldsChange = _this.callbacks.onFieldsChange;\n if (onFieldsChange) {\n var fields = _this.getFields();\n\n /**\n * Fill errors since `fields` may be replaced by controlled fields\n */\n if (filedErrors) {\n var cache = new NameMap();\n filedErrors.forEach(function (_ref6) {\n var name = _ref6.name,\n errors = _ref6.errors;\n cache.set(name, errors);\n });\n fields.forEach(function (field) {\n // eslint-disable-next-line no-param-reassign\n field.errors = cache.get(field.name) || field.errors;\n });\n }\n var changedFields = fields.filter(function (_ref7) {\n var fieldName = _ref7.name;\n return containsNamePath(namePathList, fieldName);\n });\n if (changedFields.length) {\n onFieldsChange(changedFields, fields);\n }\n }\n });\n // =========================== Validate ===========================\n _defineProperty(this, \"validateFields\", function (arg1, arg2) {\n _this.warningUnhooked();\n var nameList;\n var options;\n if (Array.isArray(arg1) || typeof arg1 === 'string' || typeof arg2 === 'string') {\n nameList = arg1;\n options = arg2;\n } else {\n options = arg1;\n }\n var provideNameList = !!nameList;\n var namePathList = provideNameList ? nameList.map(getNamePath) : [];\n\n // Collect result in promise list\n var promiseList = [];\n\n // We temp save the path which need trigger for `onFieldsChange`\n var TMP_SPLIT = String(Date.now());\n var validateNamePathList = new Set();\n var _ref8 = options || {},\n recursive = _ref8.recursive,\n dirty = _ref8.dirty;\n _this.getFieldEntities(true).forEach(function (field) {\n // Add field if not provide `nameList`\n if (!provideNameList) {\n namePathList.push(field.getNamePath());\n }\n\n // Skip if without rule\n if (!field.props.rules || !field.props.rules.length) {\n return;\n }\n\n // Skip if only validate dirty field\n if (dirty && !field.isFieldDirty()) {\n return;\n }\n var fieldNamePath = field.getNamePath();\n validateNamePathList.add(fieldNamePath.join(TMP_SPLIT));\n\n // Add field validate rule in to promise list\n if (!provideNameList || containsNamePath(namePathList, fieldNamePath, recursive)) {\n var promise = field.validateRules(_objectSpread({\n validateMessages: _objectSpread(_objectSpread({}, defaultValidateMessages), _this.validateMessages)\n }, options));\n\n // Wrap promise with field\n promiseList.push(promise.then(function () {\n return {\n name: fieldNamePath,\n errors: [],\n warnings: []\n };\n }).catch(function (ruleErrors) {\n var _ruleErrors$forEach;\n var mergedErrors = [];\n var mergedWarnings = [];\n (_ruleErrors$forEach = ruleErrors.forEach) === null || _ruleErrors$forEach === void 0 || _ruleErrors$forEach.call(ruleErrors, function (_ref9) {\n var warningOnly = _ref9.rule.warningOnly,\n errors = _ref9.errors;\n if (warningOnly) {\n mergedWarnings.push.apply(mergedWarnings, _toConsumableArray(errors));\n } else {\n mergedErrors.push.apply(mergedErrors, _toConsumableArray(errors));\n }\n });\n if (mergedErrors.length) {\n return Promise.reject({\n name: fieldNamePath,\n errors: mergedErrors,\n warnings: mergedWarnings\n });\n }\n return {\n name: fieldNamePath,\n errors: mergedErrors,\n warnings: mergedWarnings\n };\n }));\n }\n });\n var summaryPromise = allPromiseFinish(promiseList);\n _this.lastValidatePromise = summaryPromise;\n\n // Notify fields with rule that validate has finished and need update\n summaryPromise.catch(function (results) {\n return results;\n }).then(function (results) {\n var resultNamePathList = results.map(function (_ref10) {\n var name = _ref10.name;\n return name;\n });\n _this.notifyObservers(_this.store, resultNamePathList, {\n type: 'validateFinish'\n });\n _this.triggerOnFieldsChange(resultNamePathList, results);\n });\n var returnPromise = summaryPromise.then(function () {\n if (_this.lastValidatePromise === summaryPromise) {\n return Promise.resolve(_this.getFieldsValue(namePathList));\n }\n return Promise.reject([]);\n }).catch(function (results) {\n var errorList = results.filter(function (result) {\n return result && result.errors.length;\n });\n return Promise.reject({\n values: _this.getFieldsValue(namePathList),\n errorFields: errorList,\n outOfDate: _this.lastValidatePromise !== summaryPromise\n });\n });\n\n // Do not throw in console\n returnPromise.catch(function (e) {\n return e;\n });\n\n // `validating` changed. Trigger `onFieldsChange`\n var triggerNamePathList = namePathList.filter(function (namePath) {\n return validateNamePathList.has(namePath.join(TMP_SPLIT));\n });\n _this.triggerOnFieldsChange(triggerNamePathList);\n return returnPromise;\n });\n // ============================ Submit ============================\n _defineProperty(this, \"submit\", function () {\n _this.warningUnhooked();\n _this.validateFields().then(function (values) {\n var onFinish = _this.callbacks.onFinish;\n if (onFinish) {\n try {\n onFinish(values);\n } catch (err) {\n // Should print error if user `onFinish` callback failed\n console.error(err);\n }\n }\n }).catch(function (e) {\n var onFinishFailed = _this.callbacks.onFinishFailed;\n if (onFinishFailed) {\n onFinishFailed(e);\n }\n });\n });\n this.forceRootUpdate = forceRootUpdate;\n});\nfunction useForm(form) {\n var formRef = React.useRef();\n var _React$useState = React.useState({}),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n forceUpdate = _React$useState2[1];\n if (!formRef.current) {\n if (form) {\n formRef.current = form;\n } else {\n // Create a new FormStore if not provided\n var forceReRender = function forceReRender() {\n forceUpdate({});\n };\n var formStore = new FormStore(forceReRender);\n formRef.current = formStore.getForm();\n }\n }\n return [formRef.current];\n}\nexport default useForm;","export function allPromiseFinish(promiseList) {\n var hasError = false;\n var count = promiseList.length;\n var results = [];\n if (!promiseList.length) {\n return Promise.resolve([]);\n }\n return new Promise(function (resolve, reject) {\n promiseList.forEach(function (promise, index) {\n promise.catch(function (e) {\n hasError = true;\n return e;\n }).then(function (result) {\n count -= 1;\n results[index] = result;\n if (count > 0) {\n return;\n }\n if (hasError) {\n reject(results);\n }\n resolve(results);\n });\n });\n });\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nvar FormContext = /*#__PURE__*/React.createContext({\n triggerFormChange: function triggerFormChange() {},\n triggerFormFinish: function triggerFormFinish() {},\n registerForm: function registerForm() {},\n unregisterForm: function unregisterForm() {}\n});\nvar FormProvider = function FormProvider(_ref) {\n var validateMessages = _ref.validateMessages,\n onFormChange = _ref.onFormChange,\n onFormFinish = _ref.onFormFinish,\n children = _ref.children;\n var formContext = React.useContext(FormContext);\n var formsRef = React.useRef({});\n return /*#__PURE__*/React.createElement(FormContext.Provider, {\n value: _objectSpread(_objectSpread({}, formContext), {}, {\n validateMessages: _objectSpread(_objectSpread({}, formContext.validateMessages), validateMessages),\n // =========================================================\n // = Global Form Control =\n // =========================================================\n triggerFormChange: function triggerFormChange(name, changedFields) {\n if (onFormChange) {\n onFormChange(name, {\n changedFields: changedFields,\n forms: formsRef.current\n });\n }\n formContext.triggerFormChange(name, changedFields);\n },\n triggerFormFinish: function triggerFormFinish(name, values) {\n if (onFormFinish) {\n onFormFinish(name, {\n values: values,\n forms: formsRef.current\n });\n }\n formContext.triggerFormFinish(name, values);\n },\n registerForm: function registerForm(name, form) {\n if (name) {\n formsRef.current = _objectSpread(_objectSpread({}, formsRef.current), {}, _defineProperty({}, name, form));\n }\n formContext.registerForm(name, form);\n },\n unregisterForm: function unregisterForm(name) {\n var newForms = _objectSpread({}, formsRef.current);\n delete newForms[name];\n formsRef.current = newForms;\n formContext.unregisterForm(name);\n }\n })\n }, children);\n};\nexport { FormProvider };\nexport default FormContext;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"name\", \"initialValues\", \"fields\", \"form\", \"preserve\", \"children\", \"component\", \"validateMessages\", \"validateTrigger\", \"onValuesChange\", \"onFieldsChange\", \"onFinish\", \"onFinishFailed\", \"clearOnDestroy\"];\nimport * as React from 'react';\nimport useForm from \"./useForm\";\nimport FieldContext, { HOOK_MARK } from \"./FieldContext\";\nimport FormContext from \"./FormContext\";\nimport { isSimilar } from \"./utils/valueUtil\";\nimport ListContext from \"./ListContext\";\nvar Form = function Form(_ref, ref) {\n var name = _ref.name,\n initialValues = _ref.initialValues,\n fields = _ref.fields,\n form = _ref.form,\n preserve = _ref.preserve,\n children = _ref.children,\n _ref$component = _ref.component,\n Component = _ref$component === void 0 ? 'form' : _ref$component,\n validateMessages = _ref.validateMessages,\n _ref$validateTrigger = _ref.validateTrigger,\n validateTrigger = _ref$validateTrigger === void 0 ? 'onChange' : _ref$validateTrigger,\n onValuesChange = _ref.onValuesChange,\n _onFieldsChange = _ref.onFieldsChange,\n _onFinish = _ref.onFinish,\n onFinishFailed = _ref.onFinishFailed,\n clearOnDestroy = _ref.clearOnDestroy,\n restProps = _objectWithoutProperties(_ref, _excluded);\n var nativeElementRef = React.useRef(null);\n var formContext = React.useContext(FormContext);\n\n // We customize handle event since Context will makes all the consumer re-render:\n // https://reactjs.org/docs/context.html#contextprovider\n var _useForm = useForm(form),\n _useForm2 = _slicedToArray(_useForm, 1),\n formInstance = _useForm2[0];\n var _getInternalHooks = formInstance.getInternalHooks(HOOK_MARK),\n useSubscribe = _getInternalHooks.useSubscribe,\n setInitialValues = _getInternalHooks.setInitialValues,\n setCallbacks = _getInternalHooks.setCallbacks,\n setValidateMessages = _getInternalHooks.setValidateMessages,\n setPreserve = _getInternalHooks.setPreserve,\n destroyForm = _getInternalHooks.destroyForm;\n\n // Pass ref with form instance\n React.useImperativeHandle(ref, function () {\n return _objectSpread(_objectSpread({}, formInstance), {}, {\n nativeElement: nativeElementRef.current\n });\n });\n\n // Register form into Context\n React.useEffect(function () {\n formContext.registerForm(name, formInstance);\n return function () {\n formContext.unregisterForm(name);\n };\n }, [formContext, formInstance, name]);\n\n // Pass props to store\n setValidateMessages(_objectSpread(_objectSpread({}, formContext.validateMessages), validateMessages));\n setCallbacks({\n onValuesChange: onValuesChange,\n onFieldsChange: function onFieldsChange(changedFields) {\n formContext.triggerFormChange(name, changedFields);\n if (_onFieldsChange) {\n for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n rest[_key - 1] = arguments[_key];\n }\n _onFieldsChange.apply(void 0, [changedFields].concat(rest));\n }\n },\n onFinish: function onFinish(values) {\n formContext.triggerFormFinish(name, values);\n if (_onFinish) {\n _onFinish(values);\n }\n },\n onFinishFailed: onFinishFailed\n });\n setPreserve(preserve);\n\n // Set initial value, init store value when first mount\n var mountRef = React.useRef(null);\n setInitialValues(initialValues, !mountRef.current);\n if (!mountRef.current) {\n mountRef.current = true;\n }\n React.useEffect(function () {\n return function () {\n return destroyForm(clearOnDestroy);\n };\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n []);\n\n // Prepare children by `children` type\n var childrenNode;\n var childrenRenderProps = typeof children === 'function';\n if (childrenRenderProps) {\n var _values = formInstance.getFieldsValue(true);\n childrenNode = children(_values, formInstance);\n } else {\n childrenNode = children;\n }\n\n // Not use subscribe when using render props\n useSubscribe(!childrenRenderProps);\n\n // Listen if fields provided. We use ref to save prev data here to avoid additional render\n var prevFieldsRef = React.useRef();\n React.useEffect(function () {\n if (!isSimilar(prevFieldsRef.current || [], fields || [])) {\n formInstance.setFields(fields || []);\n }\n prevFieldsRef.current = fields;\n }, [fields, formInstance]);\n var formContextValue = React.useMemo(function () {\n return _objectSpread(_objectSpread({}, formInstance), {}, {\n validateTrigger: validateTrigger\n });\n }, [formInstance, validateTrigger]);\n var wrapperNode = /*#__PURE__*/React.createElement(ListContext.Provider, {\n value: null\n }, /*#__PURE__*/React.createElement(FieldContext.Provider, {\n value: formContextValue\n }, childrenNode));\n if (Component === false) {\n return wrapperNode;\n }\n return /*#__PURE__*/React.createElement(Component, _extends({}, restProps, {\n ref: nativeElementRef,\n onSubmit: function onSubmit(event) {\n event.preventDefault();\n event.stopPropagation();\n formInstance.submit();\n },\n onReset: function onReset(event) {\n var _restProps$onReset;\n event.preventDefault();\n formInstance.resetFields();\n (_restProps$onReset = restProps.onReset) === null || _restProps$onReset === void 0 || _restProps$onReset.call(restProps, event);\n }\n }), wrapperNode);\n};\nexport default Form;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport warning from \"rc-util/es/warning\";\nimport { useContext, useEffect, useMemo, useRef, useState } from 'react';\nimport FieldContext, { HOOK_MARK } from \"./FieldContext\";\nimport { isFormInstance } from \"./utils/typeUtil\";\nimport { getNamePath, getValue } from \"./utils/valueUtil\";\nexport function stringify(value) {\n try {\n return JSON.stringify(value);\n } catch (err) {\n return Math.random();\n }\n}\nvar useWatchWarning = process.env.NODE_ENV !== 'production' ? function (namePath) {\n var fullyStr = namePath.join('__RC_FIELD_FORM_SPLIT__');\n var nameStrRef = useRef(fullyStr);\n warning(nameStrRef.current === fullyStr, '`useWatch` is not support dynamic `namePath`. Please provide static instead.');\n} : function () {};\n\n// ------- selector type -------\n\n// ------- selector type end -------\n\nfunction useWatch() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n var dependencies = args[0],\n _args$ = args[1],\n _form = _args$ === void 0 ? {} : _args$;\n var options = isFormInstance(_form) ? {\n form: _form\n } : _form;\n var form = options.form;\n var _useState = useState(),\n _useState2 = _slicedToArray(_useState, 2),\n value = _useState2[0],\n setValue = _useState2[1];\n var valueStr = useMemo(function () {\n return stringify(value);\n }, [value]);\n var valueStrRef = useRef(valueStr);\n valueStrRef.current = valueStr;\n var fieldContext = useContext(FieldContext);\n var formInstance = form || fieldContext;\n var isValidForm = formInstance && formInstance._init;\n\n // Warning if not exist form instance\n if (process.env.NODE_ENV !== 'production') {\n warning(args.length === 2 ? form ? isValidForm : true : isValidForm, 'useWatch requires a form instance since it can not auto detect from context.');\n }\n var namePath = getNamePath(dependencies);\n var namePathRef = useRef(namePath);\n namePathRef.current = namePath;\n useWatchWarning(namePath);\n useEffect(function () {\n // Skip if not exist form instance\n if (!isValidForm) {\n return;\n }\n var getFieldsValue = formInstance.getFieldsValue,\n getInternalHooks = formInstance.getInternalHooks;\n var _getInternalHooks = getInternalHooks(HOOK_MARK),\n registerWatch = _getInternalHooks.registerWatch;\n var getWatchValue = function getWatchValue(values, allValues) {\n var watchValue = options.preserve ? allValues : values;\n return typeof dependencies === 'function' ? dependencies(watchValue) : getValue(watchValue, namePathRef.current);\n };\n var cancelRegister = registerWatch(function (values, allValues) {\n var newValue = getWatchValue(values, allValues);\n var nextValueStr = stringify(newValue);\n\n // Compare stringify in case it's nest object\n if (valueStrRef.current !== nextValueStr) {\n valueStrRef.current = nextValueStr;\n setValue(newValue);\n }\n });\n\n // TODO: We can improve this perf in future\n var initialValue = getWatchValue(getFieldsValue(), getFieldsValue(true));\n\n // React 18 has the bug that will queue update twice even the value is not changed\n // ref: https://github.com/facebook/react/issues/27213\n if (value !== initialValue) {\n setValue(initialValue);\n }\n return cancelRegister;\n },\n // We do not need re-register since namePath content is the same\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [isValidForm]);\n return value;\n}\nexport default useWatch;","import * as React from 'react';\nimport Field from \"./Field\";\nimport List from \"./List\";\nimport useForm from \"./useForm\";\nimport FieldForm from \"./Form\";\nimport { FormProvider } from \"./FormContext\";\nimport FieldContext from \"./FieldContext\";\nimport ListContext from \"./ListContext\";\nimport useWatch from \"./useWatch\";\nvar InternalForm = /*#__PURE__*/React.forwardRef(FieldForm);\nvar RefForm = InternalForm;\nRefForm.FormProvider = FormProvider;\nRefForm.Field = Field;\nRefForm.List = List;\nRefForm.useForm = useForm;\nRefForm.useWatch = useWatch;\nexport { Field, List, useForm, FormProvider, FieldContext, ListContext, useWatch };\nexport default RefForm;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as React from 'react';\nimport warning from \"rc-util/es/warning\";\nimport FieldContext from \"./FieldContext\";\nimport Field from \"./Field\";\nimport { move as _move, getNamePath } from \"./utils/valueUtil\";\nimport ListContext from \"./ListContext\";\nfunction List(_ref) {\n var name = _ref.name,\n initialValue = _ref.initialValue,\n children = _ref.children,\n rules = _ref.rules,\n validateTrigger = _ref.validateTrigger,\n isListField = _ref.isListField;\n var context = React.useContext(FieldContext);\n var wrapperListContext = React.useContext(ListContext);\n var keyRef = React.useRef({\n keys: [],\n id: 0\n });\n var keyManager = keyRef.current;\n var prefixName = React.useMemo(function () {\n var parentPrefixName = getNamePath(context.prefixName) || [];\n return [].concat(_toConsumableArray(parentPrefixName), _toConsumableArray(getNamePath(name)));\n }, [context.prefixName, name]);\n var fieldContext = React.useMemo(function () {\n return _objectSpread(_objectSpread({}, context), {}, {\n prefixName: prefixName\n });\n }, [context, prefixName]);\n\n // List context\n var listContext = React.useMemo(function () {\n return {\n getKey: function getKey(namePath) {\n var len = prefixName.length;\n var pathName = namePath[len];\n return [keyManager.keys[pathName], namePath.slice(len + 1)];\n }\n };\n }, [prefixName]);\n\n // User should not pass `children` as other type.\n if (typeof children !== 'function') {\n warning(false, 'Form.List only accepts function as children.');\n return null;\n }\n var shouldUpdate = function shouldUpdate(prevValue, nextValue, _ref2) {\n var source = _ref2.source;\n if (source === 'internal') {\n return false;\n }\n return prevValue !== nextValue;\n };\n return /*#__PURE__*/React.createElement(ListContext.Provider, {\n value: listContext\n }, /*#__PURE__*/React.createElement(FieldContext.Provider, {\n value: fieldContext\n }, /*#__PURE__*/React.createElement(Field, {\n name: [],\n shouldUpdate: shouldUpdate,\n rules: rules,\n validateTrigger: validateTrigger,\n initialValue: initialValue,\n isList: true,\n isListField: isListField !== null && isListField !== void 0 ? isListField : !!wrapperListContext\n }, function (_ref3, meta) {\n var _ref3$value = _ref3.value,\n value = _ref3$value === void 0 ? [] : _ref3$value,\n onChange = _ref3.onChange;\n var getFieldValue = context.getFieldValue;\n var getNewValue = function getNewValue() {\n var values = getFieldValue(prefixName || []);\n return values || [];\n };\n /**\n * Always get latest value in case user update fields by `form` api.\n */\n var operations = {\n add: function add(defaultValue, index) {\n // Mapping keys\n var newValue = getNewValue();\n if (index >= 0 && index <= newValue.length) {\n keyManager.keys = [].concat(_toConsumableArray(keyManager.keys.slice(0, index)), [keyManager.id], _toConsumableArray(keyManager.keys.slice(index)));\n onChange([].concat(_toConsumableArray(newValue.slice(0, index)), [defaultValue], _toConsumableArray(newValue.slice(index))));\n } else {\n if (process.env.NODE_ENV !== 'production' && (index < 0 || index > newValue.length)) {\n warning(false, 'The second parameter of the add function should be a valid positive number.');\n }\n keyManager.keys = [].concat(_toConsumableArray(keyManager.keys), [keyManager.id]);\n onChange([].concat(_toConsumableArray(newValue), [defaultValue]));\n }\n keyManager.id += 1;\n },\n remove: function remove(index) {\n var newValue = getNewValue();\n var indexSet = new Set(Array.isArray(index) ? index : [index]);\n if (indexSet.size <= 0) {\n return;\n }\n keyManager.keys = keyManager.keys.filter(function (_, keysIndex) {\n return !indexSet.has(keysIndex);\n });\n\n // Trigger store change\n onChange(newValue.filter(function (_, valueIndex) {\n return !indexSet.has(valueIndex);\n }));\n },\n move: function move(from, to) {\n if (from === to) {\n return;\n }\n var newValue = getNewValue();\n\n // Do not handle out of range\n if (from < 0 || from >= newValue.length || to < 0 || to >= newValue.length) {\n return;\n }\n keyManager.keys = _move(keyManager.keys, from, to);\n\n // Trigger store change\n onChange(_move(newValue, from, to));\n }\n };\n var listValue = value || [];\n if (!Array.isArray(listValue)) {\n listValue = [];\n if (process.env.NODE_ENV !== 'production') {\n warning(false, \"Current value of '\".concat(prefixName.join(' > '), \"' is not an array type.\"));\n }\n }\n return children(listValue.map(function (__, index) {\n var key = keyManager.keys[index];\n if (key === undefined) {\n keyManager.keys[index] = keyManager.id;\n key = keyManager.keys[index];\n keyManager.id += 1;\n }\n return {\n name: index,\n key: key,\n isListField: true\n };\n }), operations, meta);\n })));\n}\nexport default List;","\"use client\";\n\nimport * as React from 'react';\nimport { FormProvider as RcFormProvider } from 'rc-field-form';\nimport omit from \"rc-util/es/omit\";\nexport const FormContext = /*#__PURE__*/React.createContext({\n labelAlign: 'right',\n vertical: false,\n itemRef: () => {}\n});\nexport const NoStyleItemContext = /*#__PURE__*/React.createContext(null);\nexport const FormProvider = props => {\n const providerProps = omit(props, ['prefixCls']);\n return /*#__PURE__*/React.createElement(RcFormProvider, Object.assign({}, providerProps));\n};\nexport const FormItemPrefixContext = /*#__PURE__*/React.createContext({\n prefixCls: ''\n});\nexport const FormItemInputContext = /*#__PURE__*/React.createContext({});\nif (process.env.NODE_ENV !== 'production') {\n FormItemInputContext.displayName = 'FormItemInputContext';\n}\nexport const NoFormStyle = _ref => {\n let {\n children,\n status,\n override\n } = _ref;\n const formItemInputContext = React.useContext(FormItemInputContext);\n const newFormItemInputContext = React.useMemo(() => {\n const newContext = Object.assign({}, formItemInputContext);\n if (override) {\n delete newContext.isFormItemInput;\n }\n if (status) {\n delete newContext.status;\n delete newContext.hasFeedback;\n delete newContext.feedbackIcon;\n }\n return newContext;\n }, [status, override, formItemInputContext]);\n return /*#__PURE__*/React.createElement(FormItemInputContext.Provider, {\n value: newFormItemInputContext\n }, children);\n};\nexport const VariantContext = /*#__PURE__*/React.createContext(undefined);","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nfunction getUseId() {\n // We need fully clone React function here to avoid webpack warning React 17 do not export `useId`\n var fullClone = _objectSpread({}, React);\n return fullClone.useId;\n}\nvar uuid = 0;\n\n/** @private Note only worked in develop env. Not work in production. */\nexport function resetUuid() {\n if (process.env.NODE_ENV !== 'production') {\n uuid = 0;\n }\n}\nvar useOriginId = getUseId();\nexport default useOriginId ?\n// Use React `useId`\nfunction useId(id) {\n var reactId = useOriginId();\n\n // Developer passed id is single source of truth\n if (id) {\n return id;\n }\n\n // Test env always return mock id\n if (process.env.NODE_ENV === 'test') {\n return 'test-id';\n }\n return reactId;\n} :\n// Use compatible of `useId`\nfunction useCompatId(id) {\n // Inner id for accessibility usage. Only work in client side\n var _React$useState = React.useState('ssr-id'),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n innerId = _React$useState2[0],\n setInnerId = _React$useState2[1];\n React.useEffect(function () {\n var nextId = uuid;\n uuid += 1;\n setInnerId(\"rc_unique_\".concat(nextId));\n }, []);\n\n // Developer passed id is single source of truth\n if (id) {\n return id;\n }\n\n // Test env always return mock id\n if (process.env.NODE_ENV === 'test') {\n return 'test-id';\n }\n\n // Return react native id or inner id\n return innerId;\n};","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","import React from 'react';\nconst zIndexContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== 'production') {\n zIndexContext.displayName = 'zIndexContext';\n}\nexport default zIndexContext;","import _typeof from \"./typeof.js\";\nexport default function _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n _regeneratorRuntime = function _regeneratorRuntime() {\n return e;\n };\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function define(t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function value(t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(_typeof(e) + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function stop() {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function complete(t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function finish(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n \"catch\": function _catch(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}"],"names":["element","Element","offsetParent","getBBox","_getBBox","width","height","getBoundingClientRect","_element$getBoundingC","_width","_height","CONTAINER_OFFSET","containerBaseZIndexOffset","Modal","Drawer","Popover","Popconfirm","Tooltip","Tour","FloatButton","consumerBaseZIndexOffset","SelectLike","Dropdown","DatePicker","Menu","ImagePreview","useZIndex","componentType","customZIndex","token","parentZIndex","result","undefined","zIndex","zIndexPopupBase","__rest","s","e","t","p","Object","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","i","length","propertyIsEnumerable","SpaceCompactItemContext","useCompactItemContext","prefixCls","direction","compactItemContext","compactItemClassnames","compactDirection","isFirstItem","isLastItem","separator","compactSize","NoCompactStyle","_ref","children","Provider","value","CompactItem","_a","otherProps","props","getPrefixCls","directionConfig","size","block","customizePrefixCls","className","rootClassName","restProps","mergedSize","ctx","wrapCSSVar","hashId","clx","childNodes","nodes","map","child","key","assign","cached","measureScrollbarSize","ele","randomId","concat","Math","random","toString","substring","measureEle","document","createElement","id","fallbackWidth","fallbackHeight","measureStyle","style","position","left","top","overflow","targetStyle","getComputedStyle","scrollbarColor","scrollbarWidth","webkitScrollbarStyle","parseInt","widthStyle","heightStyle","console","error","body","appendChild","scrollWidth","isNaN","offsetWidth","clientWidth","scrollHeight","offsetHeight","clientHeight","removeChild","getScrollBarSize","fresh","getTargetScrollBarSize","target","initMotionCommon","duration","animationDuration","animationFillMode","initMotionCommonLeave","initMotion","motionCls","inKeyframes","outKeyframes","sameLevelPrefix","arguments","animationPlayState","animationName","pointerEvents","customSize","Function","navigator","window","agent","userAgent","vendor","opera","test","substr","componentCls","display","flexDirection","genSpaceStyle","antCls","alignItems","genSpaceGapStyle","rowGap","spaceGapSmallSize","spaceGapMiddleSize","spaceGapLargeSize","columnGap","spaceToken","paddingXS","padding","paddingLG","resetStyle","EMPTY_LIST","UNIQUE_ID","Date","now","uuid","inline","getPortalContainer","getContainer","canUseDom","querySelector","ref","open","autoLock","_props$autoDestroy","debug","autoDestroy","_React$useState","_React$useState2","shouldRender","setShouldRender","mergedRender","_React$useState3","_React$useState4","innerContainer","setInnerContainer","customizeContainer","_useDom","render","appendedRef","queueCreate","queue","setQueue","mergedQueueCreate","current","appendFn","origin","append","parentElement","cleanup","_ele$parentElement","useLayoutEffect","forEach","useDom","_useDom2","defaultContainer","mergedContainer","lock","mergedLock","scrollbarSize","isOverflow","innerHeight","documentElement","innerWidth","useScrollLocker","childRef","mergedRef","renderInline","reffedChildren","createPortal","Arrow","align","arrow","arrowPos","content","_arrowPos$x","x","_arrowPos$y","y","arrowRef","points","alignStyle","autoArrow","popupPoints","targetPoints","popupTB","popupLR","targetTB","targetLR","includes","bottom","right","Mask","mask","motion","motionAppear","visible","removeOnLeave","_","next","cache","popup","_onVisibleChanged","onVisibleChanged","keepDom","onClick","maskMotion","forceRender","getPopupContainer","Portal","portal","onMouseEnter","onMouseLeave","onPointerEnter","onPointerDownCapture","ready","offsetX","offsetY","offsetR","offsetB","onAlign","onPrepare","stretch","targetWidth","targetHeight","childNode","isNodeVisible","getPopupContainerNeedParams","show","setShow","AUTO","offsetStyle","_experimental","dynamicInset","alignRight","alignBottom","miscStyle","minHeight","minWidth","onResize","disabled","resizeObserverRef","motionEnter","motionLeave","leavedClassName","onAppearPrepare","onEnterPrepare","nextVisible","_motion$onVisibleChan","motionRef","motionClassName","motionStyle","cls","boxSizing","getTriggerDOMNode","canUseRef","setRef","node","toArray","val","Array","isArray","isPointsEq","a1","a2","getMotion","animation","transitionName","motionName","getWin","ownerDocument","defaultView","collectScroller","scrollerList","parentNode","scrollStyle","HTMLElement","_getWin$getComputedSt","overflowX","overflowY","some","o","push","ShadowRoot","host","toNum","num","defaultValue","Number","getPxValue","parseFloat","getVisibleArea","initArea","visibleArea","HTMLBodyElement","HTMLHtmlElement","_getWin$getComputedSt2","overflowClipMargin","borderTopWidth","borderBottomWidth","borderLeftWidth","borderRightWidth","eleRect","eleOutHeight","eleInnerHeight","eleOutWidth","eleInnerWidth","borderTopNum","borderBottomNum","borderLeftNum","borderRightNum","scaleX","round","scaleY","eleScrollWidth","eleScrollHeight","scaledBorderTopWidth","scaledBorderBottomWidth","scaledBorderLeftWidth","scaledBorderRightWidth","clipMarginWidth","clipMarginHeight","clipNum","eleLeft","eleTop","eleRight","eleBottom","max","min","getUnitOffset","offsetStr","cells","match","getNumberOffset","rect","offset","_ref2","splitPoints","getAlignPoint","topBottom","leftRight","reversePoints","index","reverseMap","b","l","r","point","join","_excluded","PortalComponent","_props$prefixCls","_props$action","action","showAction","hideAction","popupVisible","defaultPopupVisible","onPopupVisibleChange","afterPopupVisibleChange","mouseEnterDelay","_props$mouseLeaveDela","mouseLeaveDelay","focusDelay","blurDelay","_props$maskClosable","maskClosable","destroyPopupOnHide","popupClassName","popupStyle","popupPlacement","_props$builtinPlaceme","builtinPlacements","popupAlign","getPopupClassNameFromAlign","alignPoint","onPopupClick","onPopupAlign","popupMotion","popupTransitionName","popupAnimation","maskTransitionName","maskAnimation","mergedAutoDestroy","mobile","setMobile","isMobile","subPopupElements","parentContext","context","registerSubPopup","subPopupEle","useId","popupEle","setPopupEle","externalPopupRef","setPopupRef","useEvent","_React$useState5","_React$useState6","targetEle","setTargetEle","externalForwardRef","setTargetRef","only","originChildProps","cloneProps","inPopupOrChild","_getShadowRoot","_getShadowRoot2","childDOM","contains","values","mergePopupMotion","mergeMaskMotion","_React$useState7","_React$useState8","internalOpen","setInternalOpen","mergedOpen","setMergedOpen","nextOpen","openRef","lastTriggerRef","internalTriggerOpen","_lastTriggerRef$curre","delayRef","clearDelay","clearTimeout","triggerOpen","delay","setTimeout","_React$useState9","_React$useState10","inMotion","setInMotion","firstMount","_React$useState11","_React$useState12","motionPrepareResolve","setMotionPrepareResolve","_React$useState13","_React$useState14","mousePos","setMousePos","setMousePosByEvent","event","clientX","clientY","_useAlign","placement","arrowX","arrowY","offsetInfo","setOffsetInfo","alignCountRef","prevFlipRef","_popupElement$parentE","_popupRect$x","_popupRect$y","_popupElement$parentE2","targetRect","popupElement","doc","win","popupPosition","originLeft","originTop","originRight","originBottom","originOverflow","placementInfo","placeholderElement","offsetLeft","offsetTop","_rect$x","_rect$y","popupRect","_win$getComputedStyle2","_doc$documentElement","scrollTop","scrollLeft","popupHeight","popupWidth","visibleRegion","scrollRegion","htmlRegion","VISIBLE","VISIBLE_FIRST","isVisibleFirst","scrollRegionArea","visibleRegionArea","adjustCheckVisibleArea","popupMirrorRect","_scaleX","_scaleY","isVisible","targetOffset","_getNumberOffset","_getNumberOffset2","popupOffsetX","popupOffsetY","_getNumberOffset3","_getNumberOffset4","targetOffsetX","targetOffsetY","_ref3","_ref4","popupPoint","targetAlignPoint","popupAlignPoint","nextAlignInfo","nextOffsetX","nextOffsetY","getIntersectionVisibleArea","area","visibleL","visibleT","visibleR","visibleB","nextPopupY","nextPopupBottom","nextPopupX","nextPopupRight","originIntersectionVisibleArea","originIntersectionRecommendArea","targetAlignPointTL","popupAlignPointTL","targetAlignPointBR","popupAlignPointBR","adjustX","adjustY","shiftX","shiftY","supportAdjust","syncNextPopupPosition","needAdjustY","sameTB","bt","tmpNextOffsetY","newVisibleArea","newVisibleRecommendArea","tb","_tmpNextOffsetY","_newVisibleArea","_newVisibleRecommendArea","needAdjustX","sameLR","rl","tmpNextOffsetX","_newVisibleArea2","_newVisibleRecommendArea2","lr","_tmpNextOffsetX","_newVisibleArea3","_newVisibleRecommendArea3","numShiftX","numShiftY","popupLeft","popupRight","popupTop","popupBottom","targetLeft","targetRight","targetTop","targetBottom","nextArrowX","nextArrowY","offsetX4Right","offsetY4Bottom","resetReady","ori","Promise","resolve","then","useAlign","_useAlign2","alignInfo","_useAction","mergedShowAction","mergedHideAction","showActionSet","Set","hideActionSet","has","delete","add","useAction","_useAction2","showActions","hideActions","clickToShow","clickToHide","triggerAlign","targetScrollList","popupScrollList","mergedList","notifyScroll","scroller","addEventListener","passive","removeEventListener","useWatch","JSON","stringify","alignedClassName","baseClassName","isAlignPoint","placements","keys","_builtinPlacements$pl","getAlignPopupClassName","nativeElement","forceAlign","_React$useState15","_React$useState16","setTargetWidth","_React$useState17","_React$useState18","setTargetHeight","syncTargetSize","wrapperAction","eventName","preEvent","_originChildProps$eve","_len","args","_key","apply","_originChildProps$onC","_len2","_key2","onPopupMouseEnter","onPopupMouseLeave","onPopupPointerDown","popupPointerDownRef","onPointerDown","onTriggerClose","_e$composedPath","composedPath","targetShadowRoot","useWinClick","hoverToShow","hoverToHide","onMouseMove","_originChildProps$onM","onContextMenu","_originChildProps$onC2","preventDefault","_len3","_key3","mergedChildrenProps","passedProps","_mergedChildrenProps$","_len4","_key4","triggerNode","innerArrow","HOOK_MARK","warningFunc","warning","getFieldValue","getFieldsValue","getFieldError","getFieldWarning","getFieldsError","isFieldsTouched","isFieldTouched","isFieldValidating","isFieldsValidating","resetFields","setFields","setFieldValue","setFieldsValue","validateFields","submit","getInternalHooks","dispatch","initEntityValue","registerField","useSubscribe","setInitialValues","destroyForm","setCallbacks","registerWatch","getFields","setValidateMessages","setPreserve","getInitialValue","newMessages","default","required","enum","whitespace","date","format","parse","invalid","types","string","method","array","object","number","boolean","integer","float","regexp","email","url","hex","len","range","pattern","mismatch","clone","cloned","this","_wrapNativeSuper","Class","_cache","Map","fn","TypeError","get","set","Wrapper","isNativeReflectConstruct","Reflect","construct","bind","setPrototypeOf","getPrototypeOf","constructor","create","enumerable","writable","configurable","formatRegExp","convertFieldsError","errors","fields","field","template","replace","String","isEmptyValue","type","isNativeStringType","asyncSerialArray","arr","func","callback","arrLength","original","process","env","AsyncValidationError","_Error","_super","_this","Error","complementError","rule","source","oe","fieldValue","obj","fullFields","path","v","getValue","fullField","message","deepMerge","ENUM","options","messages","urlReg","RegExp","getTime","getMonth","getYear","word","includeBoundaries","v4","v6seg","v6List","v6","v46Exact","v4exact","v6exact","ip","exact","ipv4","ipv6","regex","ruleType","str","lastIndex","dateObject","any","Schema","descriptor","define","rules","name","item","_messages","source_","_this2","series","z","transform","validator","getValidationMethod","getType","errorFields","objArr","option","first","_pending","reject","flattenArr","ret","k","flattenObjArr","catch","firstFields","objArrKeys","objArrLength","total","results","pending","count","a","asyncParallelArray","asyncMap","data","doIt","res","deep","defaultField","addFullField","schema","cb","errorList","suppressWarning","filledErrors","fieldsSchema","paredFieldsSchema","fieldSchema","fieldSchemaList","validate","errs","finalErrors","asyncValidator","_console$error","_console","suppressValidatorError","_errors","complete","messageIndex","splice","typeTemplate","defaultValidateMessages","AsyncValidator","replaceMessage","kv","startsWith","slice","CODE_LOGIC_ERROR","validateRule","_x","_x2","_x3","_x4","_x5","_validateRule","mark","_callee2","messageVariables","cloneRule","originValidator","subRuleField","subResults","fillVariableResult","wrap","_context2","prev","ruleIndex","validateMessages","t0","mergedMessage","all","subValue","sent","abrupt","reduce","stop","validateRules","namePath","validateFirst","summaryPromise","filledRules","currentRule","originValidatorFunc","hasPromise","promise","err","sort","w1","warningOnly","i1","w2","i2","_callee","_context","_x6","_x7","rulePromises","_x9","_finishOnFirstFailed","finishOnFirstFailed","_x8","_finishOnAllFailed","finishOnAllFailed","_callee3","_context3","errorsList","_ref5","_callee4","_context4","ruleError","getNamePath","cloneByNamePathList","store","namePathList","newStore","containsNamePath","partialMatch","matchNamePath","subNamePath","every","nameUnit","defaultGetValueFromEvent","valuePropName","moveIndex","toIndex","diff","EMPTY_ERRORS","requireUpdate","shouldUpdate","prevValue","nextValue","info","Field","_React$Component","resetCount","_this$props","preserve","isListField","cancelRegisterFunc","_this$props2","_fieldContext$prefixN","fieldContext","prefixName","_this$props3","_this$props3$rules","mounted","setState","destroy","onMetaChange","_meta","getMeta","isEqual","metaCache","prevStore","_this$props4","_this$props4$dependen","dependencies","onReset","curValue","namePathMatch","touched","dirty","validatePromise","warnings","triggerMetaEvent","refresh","reRender","validating","dependency","relatedFields","currentValue","triggerName","_ref2$validateOnly","validateOnly","rootPromise","_this$props5","_this$props5$validate","validateDebounce","filteredRules","getRules","filter","validateTrigger","ruleErrors","_ruleErrors$forEach","nextErrors","nextWarnings","_ref4$errors","initialValue","isList","prevValidating","validated","_meta2","getOnlyChild","getControlled","isFunction","childList","childProps","_this$props6","trigger","getValueFromEvent","normalize","getValueProps","mergedValidateTrigger","mergedGetValueProps","originTriggerFunc","valueProps","control","newValue","originTrigger","_this$props7","cancelRegister","forceUpdate","returnChildNode","state","_this$getOnlyChild","FieldContext","_ref6","_restProps$isListFiel","listContext","isMergedListField","SPLIT","cell","NameMap","kvs","updater","entries","split","_cell$match","_cell$match2","unit","json","FormStore","forceRootUpdate","_init","formHooked","subscribable","initialValues","init","_this$prevWithoutPres","nextStore","prevWithoutPreserves","updateStore","clearOnDestroy","getFieldEntities","entity","isMergedPreserve","isPreserve","initValue","callbacks","watchList","allValues","fieldEntities","pure","nameList","getFieldsMap","INVALIDATE_NAME_PATH","filterFunc","mergedNameList","mergedFilterFunc","mergedStrict","warningUnhooked","strict","getFieldEntitiesForNamePathList","filteredNameList","_isListField","_isList","meta","getErrors","getWarnings","arg0","arg1","isAllFieldsTouched","shortNamePath","fieldNamePath","update","list","isNamePathListTouched","entities","namePathListEntities","testField","requiredFieldEntities","records","_requiredFieldEntitie","originValue","skipExist","resetWithFieldInitialValue","notifyObservers","notifyWatch","fieldData","defineProperty","fieldPreserve","mergedPreserve","_prevStore","triggerDependenciesUpdate","updateValue","_namePath","mergedInfo","onStoreChange","childrenFields","getDependencyChildrenFields","onValuesChange","triggerOnFieldsChange","rootNamePath","dependencies2fields","dependencyNamePath","fillChildren","isFieldDirty","filedErrors","onFieldsChange","changedFields","_ref7","fieldName","arg2","provideNameList","promiseList","TMP_SPLIT","validateNamePathList","_ref8","recursive","mergedErrors","mergedWarnings","_ref9","hasError","allPromiseFinish","lastValidatePromise","resultNamePathList","_ref10","returnPromise","outOfDate","triggerNamePathList","onFinish","onFinishFailed","form","formRef","formStore","getForm","FormContext","triggerFormChange","triggerFormFinish","registerForm","unregisterForm","_ref$component","component","Component","_ref$validateTrigger","_onFieldsChange","_onFinish","nativeElementRef","formContext","_useForm","formInstance","_getInternalHooks","rest","childrenNode","mountRef","childrenRenderProps","prevFieldsRef","sourceKeys","targetKeys","sourceValue","targetValue","isSimilar","formContextValue","wrapperNode","onSubmit","stopPropagation","_restProps$onReset","RefForm","FormProvider","onFormChange","onFormFinish","formsRef","forms","newForms","List","wrapperListContext","keyManager","parentPrefixName","getKey","pathName","_ref3$value","onChange","getNewValue","operations","remove","indexSet","keysIndex","valueIndex","move","from","to","listValue","__","useForm","_args$","_form","isFormInstance","_useState","useState","_useState2","setValue","valueStr","useMemo","valueStrRef","useRef","useContext","isValidForm","namePathRef","useEffect","getWatchValue","watchValue","nextValueStr","FormItemInputContext","NoFormStyle","status","override","formItemInputContext","newFormItemInputContext","newContext","isFormItemInput","hasFeedback","feedbackIcon","VariantContext","useOriginId","reactId","innerId","setInnerId","nextId","asyncGeneratorStep","gen","_next","_throw","arg","done","_asyncToGenerator","self","_regeneratorRuntime","n","Symbol","iterator","c","asyncIterator","u","toStringTag","Generator","Context","makeInvokeMethod","tryCatch","h","f","GeneratorFunction","GeneratorFunctionPrototype","d","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","__await","callInvokeWithMethodAndArg","delegate","maybeInvokeDelegate","_sent","dispatchException","resultName","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","displayName","isGeneratorFunction","__proto__","awrap","async","reverse","pop","charAt","rval","handle","finish","delegateYield"],"sourceRoot":""}
|