{"version":3,"file":"js/883-a24d81cc4ff6eefc6edd.js","mappings":"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","sources":["webpack://lionwheel/./node_modules/@rc-component/portal/es/Context.js","webpack://lionwheel/./node_modules/@rc-component/portal/es/useDom.js","webpack://lionwheel/./node_modules/@rc-component/portal/es/useScrollLocker.js","webpack://lionwheel/./node_modules/@rc-component/portal/es/util.js","webpack://lionwheel/./node_modules/@rc-component/portal/es/mock.js","webpack://lionwheel/./node_modules/@rc-component/portal/es/Portal.js","webpack://lionwheel/./node_modules/@rc-component/portal/es/index.js","webpack://lionwheel/./node_modules/rc-util/es/Dom/shadow.js","webpack://lionwheel/./node_modules/@rc-component/trigger/es/Popup/Arrow.js","webpack://lionwheel/./node_modules/@rc-component/trigger/es/Popup/Mask.js","webpack://lionwheel/./node_modules/@rc-component/trigger/es/Popup/PopupContent.js","webpack://lionwheel/./node_modules/@rc-component/trigger/es/Popup/index.js","webpack://lionwheel/./node_modules/@rc-component/trigger/es/TriggerWrapper.js","webpack://lionwheel/./node_modules/@rc-component/trigger/es/context.js","webpack://lionwheel/./node_modules/@rc-component/trigger/es/hooks/useAction.js","webpack://lionwheel/./node_modules/@rc-component/trigger/es/util.js","webpack://lionwheel/./node_modules/@rc-component/trigger/es/hooks/useAlign.js","webpack://lionwheel/./node_modules/@rc-component/trigger/es/index.js","webpack://lionwheel/./node_modules/@rc-component/trigger/es/hooks/useWatch.js","webpack://lionwheel/./node_modules/@rc-component/trigger/es/hooks/useWinClick.js","webpack://lionwheel/./node_modules/antd/es/_util/PurePanel.js","webpack://lionwheel/./node_modules/antd/es/_util/colors.js","webpack://lionwheel/./node_modules/antd/es/_util/hooks/useZIndex.js","webpack://lionwheel/./node_modules/antd/es/_util/motion.js","webpack://lionwheel/./node_modules/antd/es/_util/placements.js","webpack://lionwheel/./node_modules/antd/es/_util/responsiveObserver.js","webpack://lionwheel/./node_modules/antd/es/_util/zindexContext.js","webpack://lionwheel/./node_modules/antd/es/locale/useLocale.js","webpack://lionwheel/./node_modules/antd/es/style/motion/collapse.js","webpack://lionwheel/./node_modules/antd/es/style/motion/motion.js","webpack://lionwheel/./node_modules/antd/es/style/motion/zoom.js","webpack://lionwheel/./node_modules/antd/es/style/placementArrow.js","webpack://lionwheel/./node_modules/antd/es/style/roundedArrow.js","webpack://lionwheel/./node_modules/antd/es/theme/interface/presetColors.js","webpack://lionwheel/./node_modules/antd/es/theme/util/genPresetColor.js","webpack://lionwheel/./node_modules/antd/es/tooltip/style/index.js","webpack://lionwheel/./node_modules/antd/es/tooltip/util.js","webpack://lionwheel/./node_modules/antd/es/tooltip/PurePanel.js","webpack://lionwheel/./node_modules/antd/es/tooltip/index.js","webpack://lionwheel/./node_modules/@ant-design/icons-svg/es/asn/CloseOutlined.js","webpack://lionwheel/./node_modules/antd/node_modules/@ant-design/icons/es/icons/CloseOutlined.js","webpack://lionwheel/./node_modules/rc-motion/es/context.js","webpack://lionwheel/./node_modules/rc-motion/es/DomWrapper.js","webpack://lionwheel/./node_modules/rc-motion/es/interface.js","webpack://lionwheel/./node_modules/rc-motion/es/util/motion.js","webpack://lionwheel/./node_modules/rc-motion/es/hooks/useDomMotionEvents.js","webpack://lionwheel/./node_modules/rc-motion/es/hooks/useIsomorphicLayoutEffect.js","webpack://lionwheel/./node_modules/rc-motion/es/hooks/useStepQueue.js","webpack://lionwheel/./node_modules/rc-motion/es/hooks/useNextFrame.js","webpack://lionwheel/./node_modules/rc-motion/es/CSSMotion.js","webpack://lionwheel/./node_modules/rc-motion/es/hooks/useStatus.js","webpack://lionwheel/./node_modules/rc-motion/es/util/diff.js","webpack://lionwheel/./node_modules/rc-motion/es/CSSMotionList.js","webpack://lionwheel/./node_modules/rc-motion/es/index.js","webpack://lionwheel/./node_modules/rc-tooltip/es/Popup.js","webpack://lionwheel/./node_modules/rc-tooltip/es/placements.js","webpack://lionwheel/./node_modules/rc-tooltip/es/Tooltip.js","webpack://lionwheel/./node_modules/rc-tooltip/es/index.js","webpack://lionwheel/./node_modules/rc-util/es/Dom/isVisible.js","webpack://lionwheel/./node_modules/rc-util/es/KeyCode.js","webpack://lionwheel/./node_modules/rc-util/es/getScrollBarSize.js","webpack://lionwheel/./node_modules/rc-util/es/hooks/useId.js","webpack://lionwheel/./node_modules/rc-util/es/isMobile.js","webpack://lionwheel/./node_modules/rc-util/es/pickAttrs.js"],"sourcesContent":["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}","/**\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}","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;","function getRoot(ele) {\n var _ele$getRootNode;\n return ele === null || ele === void 0 || (_ele$getRootNode = ele.getRootNode) === null || _ele$getRootNode === void 0 ? void 0 : _ele$getRootNode.call(ele);\n}\n\n/**\n * Check if is in shadowRoot\n */\nexport function inShadow(ele) {\n return getRoot(ele) instanceof ShadowRoot;\n}\n\n/**\n * Return shadowRoot if possible\n */\nexport function getShadowRoot(ele) {\n return inShadow(ele) ? getRoot(ele) : null;\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 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 }, 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, 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, children.ref);\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.parentElement;\n var scrollStyle = ['hidden', 'scroll', 'clip', 'auto'];\n while (current) {\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 current = current.parentElement;\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, _popupElement$parentE2;\n var popupElement = popupEle;\n var doc = popupElement.ownerDocument;\n var win = getWin(popupElement);\n var _win$getComputedStyle = win.getComputedStyle(popupElement),\n width = _win$getComputedStyle.width,\n height = _win$getComputedStyle.height,\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 = target.getBoundingClientRect();\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 _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 setOffsetInfo({\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 }\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([0, 0]),\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 : 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 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 // 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\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 onTriggerClose = function onTriggerClose(_ref) {\n var target = _ref.target;\n if (openRef.current && !inPopupOrChild(target)) {\n triggerOpen(false);\n }\n };\n var win = getWin(popupEle);\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('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}","\"use client\";\n\nimport * as React from 'react';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport ConfigProvider, { ConfigContext } from '../config-provider';\nexport function withPureRenderTheme(Component) {\n return props => ( /*#__PURE__*/React.createElement(ConfigProvider, {\n theme: {\n token: {\n motion: false,\n zIndexPopupBase: 0\n }\n }\n }, /*#__PURE__*/React.createElement(Component, Object.assign({}, props))));\n}\n/* istanbul ignore next */\nconst genPurePanel = (Component, defaultPrefixCls, getDropdownCls, postProps) => {\n const PurePanel = props => {\n const {\n prefixCls: customizePrefixCls,\n style\n } = props;\n const holderRef = React.useRef(null);\n const [popupHeight, setPopupHeight] = React.useState(0);\n const [popupWidth, setPopupWidth] = React.useState(0);\n const [open, setOpen] = useMergedState(false, {\n value: props.open\n });\n const {\n getPrefixCls\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls(defaultPrefixCls || 'select', customizePrefixCls);\n React.useEffect(() => {\n // We do not care about ssr\n setOpen(true);\n if (typeof ResizeObserver !== 'undefined') {\n const resizeObserver = new ResizeObserver(entries => {\n const element = entries[0].target;\n setPopupHeight(element.offsetHeight + 8);\n setPopupWidth(element.offsetWidth);\n });\n const interval = setInterval(() => {\n var _a;\n const dropdownCls = getDropdownCls ? `.${getDropdownCls(prefixCls)}` : `.${prefixCls}-dropdown`;\n const popup = (_a = holderRef.current) === null || _a === void 0 ? void 0 : _a.querySelector(dropdownCls);\n if (popup) {\n clearInterval(interval);\n resizeObserver.observe(popup);\n }\n }, 10);\n return () => {\n clearInterval(interval);\n resizeObserver.disconnect();\n };\n }\n }, []);\n let mergedProps = Object.assign(Object.assign({}, props), {\n style: Object.assign(Object.assign({}, style), {\n margin: 0\n }),\n open,\n visible: open,\n getPopupContainer: () => holderRef.current\n });\n if (postProps) {\n mergedProps = postProps(mergedProps);\n }\n const mergedStyle = {\n paddingBottom: popupHeight,\n position: 'relative',\n minWidth: popupWidth\n };\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: holderRef,\n style: mergedStyle\n }, /*#__PURE__*/React.createElement(Component, Object.assign({}, mergedProps)));\n };\n return withPureRenderTheme(PurePanel);\n};\nexport default genPurePanel;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport { PresetColors } from '../theme/interface';\nconst inverseColors = PresetColors.map(color => `${color}-inverse`);\nexport const PresetStatusColorTypes = ['success', 'processing', 'error', 'default', 'warning'];\n/**\n * determine if the color keyword belongs to the `Ant Design` {@link PresetColors}.\n * @param color color to be judged\n * @param includeInverse whether to include reversed colors\n */\nexport function isPresetColor(color) {\n let includeInverse = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n if (includeInverse) {\n return [].concat(_toConsumableArray(inverseColors), _toConsumableArray(PresetColors)).includes(color);\n }\n return PresetColors.includes(color);\n}\nexport function isPresetStatusColor(color) {\n return PresetStatusColorTypes.includes(color);\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;\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};\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 function 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;\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}","import { defaultPrefixCls } from '../config-provider';\n// ================== Collapse Motion ==================\nconst getCollapsedHeight = () => ({\n height: 0,\n opacity: 0\n});\nconst getRealHeight = node => {\n const {\n scrollHeight\n } = node;\n return {\n height: scrollHeight,\n opacity: 1\n };\n};\nconst getCurrentHeight = node => ({\n height: node ? node.offsetHeight : 0\n});\nconst skipOpacityTransition = (_, event) => (event === null || event === void 0 ? void 0 : event.deadline) === true || event.propertyName === 'height';\nconst initCollapseMotion = function () {\n let rootCls = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultPrefixCls;\n return {\n motionName: `${rootCls}-motion-collapse`,\n onAppearStart: getCollapsedHeight,\n onEnterStart: getCollapsedHeight,\n onAppearActive: getRealHeight,\n onEnterActive: getRealHeight,\n onLeaveStart: getCurrentHeight,\n onLeaveActive: getCollapsedHeight,\n onAppearEnd: skipOpacityTransition,\n onEnterEnd: skipOpacityTransition,\n onLeaveEnd: skipOpacityTransition,\n motionDeadline: 500\n };\n};\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst SelectPlacements = ['bottomLeft', 'bottomRight', 'topLeft', 'topRight'];\nconst getTransitionName = (rootPrefixCls, motion, transitionName) => {\n if (transitionName !== undefined) {\n return transitionName;\n }\n return `${rootPrefixCls}-${motion}`;\n};\nexport { getTransitionName };\nexport default initCollapseMotion;","import { getArrowOffsetToken } from '../style/placementArrow';\nexport function getOverflowOptions(placement, arrowOffset, arrowWidth, autoAdjustOverflow) {\n if (autoAdjustOverflow === false) {\n return {\n adjustX: false,\n adjustY: false\n };\n }\n const overflow = autoAdjustOverflow && typeof autoAdjustOverflow === 'object' ? autoAdjustOverflow : {};\n const baseOverflow = {};\n switch (placement) {\n case 'top':\n case 'bottom':\n baseOverflow.shiftX = arrowOffset.arrowOffsetHorizontal * 2 + arrowWidth;\n baseOverflow.shiftY = true;\n baseOverflow.adjustY = true;\n break;\n case 'left':\n case 'right':\n baseOverflow.shiftY = arrowOffset.arrowOffsetVertical * 2 + arrowWidth;\n baseOverflow.shiftX = true;\n baseOverflow.adjustX = true;\n break;\n }\n const mergedOverflow = Object.assign(Object.assign({}, baseOverflow), overflow);\n // Support auto shift\n if (!mergedOverflow.shiftX) {\n mergedOverflow.adjustX = true;\n }\n if (!mergedOverflow.shiftY) {\n mergedOverflow.adjustY = true;\n }\n return mergedOverflow;\n}\nconst PlacementAlignMap = {\n left: {\n points: ['cr', 'cl']\n },\n right: {\n points: ['cl', 'cr']\n },\n top: {\n points: ['bc', 'tc']\n },\n bottom: {\n points: ['tc', 'bc']\n },\n topLeft: {\n points: ['bl', 'tl']\n },\n leftTop: {\n points: ['tr', 'tl']\n },\n topRight: {\n points: ['br', 'tr']\n },\n rightTop: {\n points: ['tl', 'tr']\n },\n bottomRight: {\n points: ['tr', 'br']\n },\n rightBottom: {\n points: ['bl', 'br']\n },\n bottomLeft: {\n points: ['tl', 'bl']\n },\n leftBottom: {\n points: ['br', 'bl']\n }\n};\nconst ArrowCenterPlacementAlignMap = {\n topLeft: {\n points: ['bl', 'tc']\n },\n leftTop: {\n points: ['tr', 'cl']\n },\n topRight: {\n points: ['br', 'tc']\n },\n rightTop: {\n points: ['tl', 'cr']\n },\n bottomRight: {\n points: ['tr', 'bc']\n },\n rightBottom: {\n points: ['bl', 'cr']\n },\n bottomLeft: {\n points: ['tl', 'bc']\n },\n leftBottom: {\n points: ['br', 'cl']\n }\n};\nconst DisableAutoArrowList = new Set(['topLeft', 'topRight', 'bottomLeft', 'bottomRight', 'leftTop', 'leftBottom', 'rightTop', 'rightBottom']);\nexport default function getPlacements(config) {\n const {\n arrowWidth,\n autoAdjustOverflow,\n arrowPointAtCenter,\n offset,\n borderRadius,\n visibleFirst\n } = config;\n const halfArrowWidth = arrowWidth / 2;\n const placementMap = {};\n Object.keys(PlacementAlignMap).forEach(key => {\n const template = arrowPointAtCenter && ArrowCenterPlacementAlignMap[key] || PlacementAlignMap[key];\n const placementInfo = Object.assign(Object.assign({}, template), {\n offset: [0, 0],\n dynamicInset: true\n });\n placementMap[key] = placementInfo;\n // Disable autoArrow since design is fixed position\n if (DisableAutoArrowList.has(key)) {\n placementInfo.autoArrow = false;\n }\n // Static offset\n switch (key) {\n case 'top':\n case 'topLeft':\n case 'topRight':\n placementInfo.offset[1] = -halfArrowWidth - offset;\n break;\n case 'bottom':\n case 'bottomLeft':\n case 'bottomRight':\n placementInfo.offset[1] = halfArrowWidth + offset;\n break;\n case 'left':\n case 'leftTop':\n case 'leftBottom':\n placementInfo.offset[0] = -halfArrowWidth - offset;\n break;\n case 'right':\n case 'rightTop':\n case 'rightBottom':\n placementInfo.offset[0] = halfArrowWidth + offset;\n break;\n }\n // Dynamic offset\n const arrowOffset = getArrowOffsetToken({\n contentRadius: borderRadius,\n limitVerticalRadius: true\n });\n if (arrowPointAtCenter) {\n switch (key) {\n case 'topLeft':\n case 'bottomLeft':\n placementInfo.offset[0] = -arrowOffset.arrowOffsetHorizontal - halfArrowWidth;\n break;\n case 'topRight':\n case 'bottomRight':\n placementInfo.offset[0] = arrowOffset.arrowOffsetHorizontal + halfArrowWidth;\n break;\n case 'leftTop':\n case 'rightTop':\n placementInfo.offset[1] = -arrowOffset.arrowOffsetHorizontal * 2 + halfArrowWidth;\n break;\n case 'leftBottom':\n case 'rightBottom':\n placementInfo.offset[1] = arrowOffset.arrowOffsetHorizontal * 2 - halfArrowWidth;\n break;\n }\n }\n // Overflow\n placementInfo.overflow = getOverflowOptions(key, arrowOffset, arrowWidth, autoAdjustOverflow);\n // VisibleFirst\n if (visibleFirst) {\n placementInfo.htmlRegion = 'visibleFirst';\n }\n });\n return placementMap;\n}","import React from 'react';\nimport { useToken } from '../theme/internal';\nexport const responsiveArray = ['xxl', 'xl', 'lg', 'md', 'sm', 'xs'];\nconst getResponsiveMap = token => ({\n xs: `(max-width: ${token.screenXSMax}px)`,\n sm: `(min-width: ${token.screenSM}px)`,\n md: `(min-width: ${token.screenMD}px)`,\n lg: `(min-width: ${token.screenLG}px)`,\n xl: `(min-width: ${token.screenXL}px)`,\n xxl: `(min-width: ${token.screenXXL}px)`\n});\n/**\n * Ensures that the breakpoints token are valid, in good order\n * For each breakpoint : screenMin <= screen <= screenMax and screenMax <= nextScreenMin\n */\nconst validateBreakpoints = token => {\n const indexableToken = token;\n const revBreakpoints = [].concat(responsiveArray).reverse();\n revBreakpoints.forEach((breakpoint, i) => {\n const breakpointUpper = breakpoint.toUpperCase();\n const screenMin = `screen${breakpointUpper}Min`;\n const screen = `screen${breakpointUpper}`;\n if (!(indexableToken[screenMin] <= indexableToken[screen])) {\n throw new Error(`${screenMin}<=${screen} fails : !(${indexableToken[screenMin]}<=${indexableToken[screen]})`);\n }\n if (i < revBreakpoints.length - 1) {\n const screenMax = `screen${breakpointUpper}Max`;\n if (!(indexableToken[screen] <= indexableToken[screenMax])) {\n throw new Error(`${screen}<=${screenMax} fails : !(${indexableToken[screen]}<=${indexableToken[screenMax]})`);\n }\n const nextBreakpointUpperMin = revBreakpoints[i + 1].toUpperCase();\n const nextScreenMin = `screen${nextBreakpointUpperMin}Min`;\n if (!(indexableToken[screenMax] <= indexableToken[nextScreenMin])) {\n throw new Error(`${screenMax}<=${nextScreenMin} fails : !(${indexableToken[screenMax]}<=${indexableToken[nextScreenMin]})`);\n }\n }\n });\n return token;\n};\nexport default function useResponsiveObserver() {\n const [, token] = useToken();\n const responsiveMap = getResponsiveMap(validateBreakpoints(token));\n // To avoid repeat create instance, we add `useMemo` here.\n return React.useMemo(() => {\n const subscribers = new Map();\n let subUid = -1;\n let screens = {};\n return {\n matchHandlers: {},\n dispatch(pointMap) {\n screens = pointMap;\n subscribers.forEach(func => func(screens));\n return subscribers.size >= 1;\n },\n subscribe(func) {\n if (!subscribers.size) this.register();\n subUid += 1;\n subscribers.set(subUid, func);\n func(screens);\n return subUid;\n },\n unsubscribe(paramToken) {\n subscribers.delete(paramToken);\n if (!subscribers.size) this.unregister();\n },\n unregister() {\n Object.keys(responsiveMap).forEach(screen => {\n const matchMediaQuery = responsiveMap[screen];\n const handler = this.matchHandlers[matchMediaQuery];\n handler === null || handler === void 0 ? void 0 : handler.mql.removeListener(handler === null || handler === void 0 ? void 0 : handler.listener);\n });\n subscribers.clear();\n },\n register() {\n Object.keys(responsiveMap).forEach(screen => {\n const matchMediaQuery = responsiveMap[screen];\n const listener = _ref => {\n let {\n matches\n } = _ref;\n this.dispatch(Object.assign(Object.assign({}, screens), {\n [screen]: matches\n }));\n };\n const mql = window.matchMedia(matchMediaQuery);\n mql.addListener(listener);\n this.matchHandlers[matchMediaQuery] = {\n mql,\n listener\n };\n listener(mql);\n });\n },\n responsiveMap\n };\n }, [token]);\n}\nexport const matchScreen = (screens, screenSizes) => {\n if (screenSizes && typeof screenSizes === 'object') {\n for (let i = 0; i < responsiveArray.length; i++) {\n const breakpoint = responsiveArray[i];\n if (screens[breakpoint] && screenSizes[breakpoint] !== undefined) {\n return screenSizes[breakpoint];\n }\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 * as React from 'react';\nimport LocaleContext from './context';\nimport defaultLocaleData from './en_US';\nconst useLocale = (componentName, defaultLocale) => {\n const fullLocale = React.useContext(LocaleContext);\n const getLocale = React.useMemo(() => {\n var _a;\n const locale = defaultLocale || defaultLocaleData[componentName];\n const localeFromContext = (_a = fullLocale === null || fullLocale === void 0 ? void 0 : fullLocale[componentName]) !== null && _a !== void 0 ? _a : {};\n return Object.assign(Object.assign({}, typeof locale === 'function' ? locale() : locale), localeFromContext || {});\n }, [componentName, defaultLocale, fullLocale]);\n const getLocaleCode = React.useMemo(() => {\n const localeCode = fullLocale === null || fullLocale === void 0 ? void 0 : fullLocale.locale;\n // Had use LocaleProvide but didn't set locale\n if ((fullLocale === null || fullLocale === void 0 ? void 0 : fullLocale.exist) && !localeCode) {\n return defaultLocaleData.locale;\n }\n return localeCode;\n }, [fullLocale]);\n return [getLocale, getLocaleCode];\n};\nexport default useLocale;","const genCollapseMotion = token => ({\n [token.componentCls]: {\n // For common/openAnimation\n [`${token.antCls}-motion-collapse-legacy`]: {\n overflow: 'hidden',\n '&-active': {\n transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},\n opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`\n }\n },\n [`${token.antCls}-motion-collapse`]: {\n overflow: 'hidden',\n transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},\n opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`\n }\n }\n});\nexport default genCollapseMotion;","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 { Keyframes } from '@ant-design/cssinjs';\nimport { initMotion } from './motion';\nexport const zoomIn = new Keyframes('antZoomIn', {\n '0%': {\n transform: 'scale(0.2)',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n opacity: 1\n }\n});\nexport const zoomOut = new Keyframes('antZoomOut', {\n '0%': {\n transform: 'scale(1)'\n },\n '100%': {\n transform: 'scale(0.2)',\n opacity: 0\n }\n});\nexport const zoomBigIn = new Keyframes('antZoomBigIn', {\n '0%': {\n transform: 'scale(0.8)',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n opacity: 1\n }\n});\nexport const zoomBigOut = new Keyframes('antZoomBigOut', {\n '0%': {\n transform: 'scale(1)'\n },\n '100%': {\n transform: 'scale(0.8)',\n opacity: 0\n }\n});\nexport const zoomUpIn = new Keyframes('antZoomUpIn', {\n '0%': {\n transform: 'scale(0.8)',\n transformOrigin: '50% 0%',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n transformOrigin: '50% 0%'\n }\n});\nexport const zoomUpOut = new Keyframes('antZoomUpOut', {\n '0%': {\n transform: 'scale(1)',\n transformOrigin: '50% 0%'\n },\n '100%': {\n transform: 'scale(0.8)',\n transformOrigin: '50% 0%',\n opacity: 0\n }\n});\nexport const zoomLeftIn = new Keyframes('antZoomLeftIn', {\n '0%': {\n transform: 'scale(0.8)',\n transformOrigin: '0% 50%',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n transformOrigin: '0% 50%'\n }\n});\nexport const zoomLeftOut = new Keyframes('antZoomLeftOut', {\n '0%': {\n transform: 'scale(1)',\n transformOrigin: '0% 50%'\n },\n '100%': {\n transform: 'scale(0.8)',\n transformOrigin: '0% 50%',\n opacity: 0\n }\n});\nexport const zoomRightIn = new Keyframes('antZoomRightIn', {\n '0%': {\n transform: 'scale(0.8)',\n transformOrigin: '100% 50%',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n transformOrigin: '100% 50%'\n }\n});\nexport const zoomRightOut = new Keyframes('antZoomRightOut', {\n '0%': {\n transform: 'scale(1)',\n transformOrigin: '100% 50%'\n },\n '100%': {\n transform: 'scale(0.8)',\n transformOrigin: '100% 50%',\n opacity: 0\n }\n});\nexport const zoomDownIn = new Keyframes('antZoomDownIn', {\n '0%': {\n transform: 'scale(0.8)',\n transformOrigin: '50% 100%',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n transformOrigin: '50% 100%'\n }\n});\nexport const zoomDownOut = new Keyframes('antZoomDownOut', {\n '0%': {\n transform: 'scale(1)',\n transformOrigin: '50% 100%'\n },\n '100%': {\n transform: 'scale(0.8)',\n transformOrigin: '50% 100%',\n opacity: 0\n }\n});\nconst zoomMotion = {\n zoom: {\n inKeyframes: zoomIn,\n outKeyframes: zoomOut\n },\n 'zoom-big': {\n inKeyframes: zoomBigIn,\n outKeyframes: zoomBigOut\n },\n 'zoom-big-fast': {\n inKeyframes: zoomBigIn,\n outKeyframes: zoomBigOut\n },\n 'zoom-left': {\n inKeyframes: zoomLeftIn,\n outKeyframes: zoomLeftOut\n },\n 'zoom-right': {\n inKeyframes: zoomRightIn,\n outKeyframes: zoomRightOut\n },\n 'zoom-up': {\n inKeyframes: zoomUpIn,\n outKeyframes: zoomUpOut\n },\n 'zoom-down': {\n inKeyframes: zoomDownIn,\n outKeyframes: zoomDownOut\n }\n};\nexport const initZoomMotion = (token, motionName) => {\n const {\n antCls\n } = token;\n const motionCls = `${antCls}-${motionName}`;\n const {\n inKeyframes,\n outKeyframes\n } = zoomMotion[motionName];\n return [initMotion(motionCls, inKeyframes, outKeyframes, motionName === 'zoom-big-fast' ? token.motionDurationFast : token.motionDurationMid), {\n [`\n ${motionCls}-enter,\n ${motionCls}-appear\n `]: {\n transform: 'scale(0)',\n opacity: 0,\n animationTimingFunction: token.motionEaseOutCirc,\n '&-prepare': {\n transform: 'none'\n }\n },\n [`${motionCls}-leave`]: {\n animationTimingFunction: token.motionEaseInOutCirc\n }\n }];\n};","import { unit } from '@ant-design/cssinjs';\nimport { genRoundedArrow } from './roundedArrow';\nexport const MAX_VERTICAL_CONTENT_RADIUS = 8;\nexport function getArrowOffsetToken(options) {\n const {\n contentRadius,\n limitVerticalRadius\n } = options;\n const arrowOffset = contentRadius > 12 ? contentRadius + 2 : 12;\n const arrowOffsetVertical = limitVerticalRadius ? MAX_VERTICAL_CONTENT_RADIUS : arrowOffset;\n return {\n arrowOffsetHorizontal: arrowOffset,\n arrowOffsetVertical\n };\n}\nfunction isInject(valid, code) {\n if (!valid) {\n return {};\n }\n return code;\n}\nexport default function getArrowStyle(token, colorBg, options) {\n const {\n componentCls,\n boxShadowPopoverArrow,\n arrowOffsetVertical,\n arrowOffsetHorizontal\n } = token;\n const {\n arrowDistance = 0,\n arrowPlacement = {\n left: true,\n right: true,\n top: true,\n bottom: true\n }\n } = options || {};\n return {\n [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign({\n // ============================ Basic ============================\n [`${componentCls}-arrow`]: [Object.assign(Object.assign({\n position: 'absolute',\n zIndex: 1,\n display: 'block'\n }, genRoundedArrow(token, colorBg, boxShadowPopoverArrow)), {\n '&:before': {\n background: colorBg\n }\n })]\n }, isInject(!!arrowPlacement.top, {\n [[`&-placement-top > ${componentCls}-arrow`, `&-placement-topLeft > ${componentCls}-arrow`, `&-placement-topRight > ${componentCls}-arrow`].join(',')]: {\n bottom: arrowDistance,\n transform: 'translateY(100%) rotate(180deg)'\n },\n [`&-placement-top > ${componentCls}-arrow`]: {\n left: {\n _skip_check_: true,\n value: '50%'\n },\n transform: 'translateX(-50%) translateY(100%) rotate(180deg)'\n },\n '&-placement-topLeft': {\n '--arrow-offset-horizontal': arrowOffsetHorizontal,\n [`> ${componentCls}-arrow`]: {\n left: {\n _skip_check_: true,\n value: arrowOffsetHorizontal\n }\n }\n },\n '&-placement-topRight': {\n '--arrow-offset-horizontal': `calc(100% - ${unit(arrowOffsetHorizontal)})`,\n [`> ${componentCls}-arrow`]: {\n right: {\n _skip_check_: true,\n value: arrowOffsetHorizontal\n }\n }\n }\n })), isInject(!!arrowPlacement.bottom, {\n [[`&-placement-bottom > ${componentCls}-arrow`, `&-placement-bottomLeft > ${componentCls}-arrow`, `&-placement-bottomRight > ${componentCls}-arrow`].join(',')]: {\n top: arrowDistance,\n transform: `translateY(-100%)`\n },\n [`&-placement-bottom > ${componentCls}-arrow`]: {\n left: {\n _skip_check_: true,\n value: '50%'\n },\n transform: `translateX(-50%) translateY(-100%)`\n },\n '&-placement-bottomLeft': {\n '--arrow-offset-horizontal': arrowOffsetHorizontal,\n [`> ${componentCls}-arrow`]: {\n left: {\n _skip_check_: true,\n value: arrowOffsetHorizontal\n }\n }\n },\n '&-placement-bottomRight': {\n '--arrow-offset-horizontal': `calc(100% - ${unit(arrowOffsetHorizontal)})`,\n [`> ${componentCls}-arrow`]: {\n right: {\n _skip_check_: true,\n value: arrowOffsetHorizontal\n }\n }\n }\n })), isInject(!!arrowPlacement.left, {\n [[`&-placement-left > ${componentCls}-arrow`, `&-placement-leftTop > ${componentCls}-arrow`, `&-placement-leftBottom > ${componentCls}-arrow`].join(',')]: {\n right: {\n _skip_check_: true,\n value: arrowDistance\n },\n transform: 'translateX(100%) rotate(90deg)'\n },\n [`&-placement-left > ${componentCls}-arrow`]: {\n top: {\n _skip_check_: true,\n value: '50%'\n },\n transform: 'translateY(-50%) translateX(100%) rotate(90deg)'\n },\n [`&-placement-leftTop > ${componentCls}-arrow`]: {\n top: arrowOffsetVertical\n },\n [`&-placement-leftBottom > ${componentCls}-arrow`]: {\n bottom: arrowOffsetVertical\n }\n })), isInject(!!arrowPlacement.right, {\n [[`&-placement-right > ${componentCls}-arrow`, `&-placement-rightTop > ${componentCls}-arrow`, `&-placement-rightBottom > ${componentCls}-arrow`].join(',')]: {\n left: {\n _skip_check_: true,\n value: arrowDistance\n },\n transform: 'translateX(-100%) rotate(-90deg)'\n },\n [`&-placement-right > ${componentCls}-arrow`]: {\n top: {\n _skip_check_: true,\n value: '50%'\n },\n transform: 'translateY(-50%) translateX(-100%) rotate(-90deg)'\n },\n [`&-placement-rightTop > ${componentCls}-arrow`]: {\n top: arrowOffsetVertical\n },\n [`&-placement-rightBottom > ${componentCls}-arrow`]: {\n bottom: arrowOffsetVertical\n }\n }))\n };\n}","import { unit } from '@ant-design/cssinjs';\nexport function getArrowToken(token) {\n const {\n sizePopupArrow,\n borderRadiusXS,\n borderRadiusOuter\n } = token;\n const unitWidth = sizePopupArrow / 2;\n const ax = 0;\n const ay = unitWidth;\n const bx = borderRadiusOuter * 1 / Math.sqrt(2);\n const by = unitWidth - borderRadiusOuter * (1 - 1 / Math.sqrt(2));\n const cx = unitWidth - borderRadiusXS * (1 / Math.sqrt(2));\n const cy = borderRadiusOuter * (Math.sqrt(2) - 1) + borderRadiusXS * (1 / Math.sqrt(2));\n const dx = 2 * unitWidth - cx;\n const dy = cy;\n const ex = 2 * unitWidth - bx;\n const ey = by;\n const fx = 2 * unitWidth - ax;\n const fy = ay;\n const shadowWidth = unitWidth * Math.sqrt(2) + borderRadiusOuter * (Math.sqrt(2) - 2);\n const polygonOffset = borderRadiusOuter * (Math.sqrt(2) - 1);\n const arrowPolygon = `polygon(${polygonOffset}px 100%, 50% ${polygonOffset}px, ${2 * unitWidth - polygonOffset}px 100%, ${polygonOffset}px 100%)`;\n const arrowPath = `path('M ${ax} ${ay} A ${borderRadiusOuter} ${borderRadiusOuter} 0 0 0 ${bx} ${by} L ${cx} ${cy} A ${borderRadiusXS} ${borderRadiusXS} 0 0 1 ${dx} ${dy} L ${ex} ${ey} A ${borderRadiusOuter} ${borderRadiusOuter} 0 0 0 ${fx} ${fy} Z')`;\n return {\n arrowShadowWidth: shadowWidth,\n arrowPath,\n arrowPolygon\n };\n}\nexport const genRoundedArrow = (token, bgColor, boxShadow) => {\n const {\n sizePopupArrow,\n arrowPolygon,\n arrowPath,\n arrowShadowWidth,\n borderRadiusXS,\n calc\n } = token;\n return {\n pointerEvents: 'none',\n width: sizePopupArrow,\n height: sizePopupArrow,\n overflow: 'hidden',\n '&::before': {\n position: 'absolute',\n bottom: 0,\n insetInlineStart: 0,\n width: sizePopupArrow,\n height: calc(sizePopupArrow).div(2).equal(),\n background: bgColor,\n clipPath: {\n _multi_value_: true,\n value: [arrowPolygon, arrowPath]\n },\n content: '\"\"'\n },\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n width: arrowShadowWidth,\n height: arrowShadowWidth,\n bottom: 0,\n insetInline: 0,\n margin: 'auto',\n borderRadius: {\n _skip_check_: true,\n value: `0 0 ${unit(borderRadiusXS)} 0`\n },\n transform: 'translateY(50%) rotate(-135deg)',\n boxShadow,\n zIndex: 0,\n background: 'transparent'\n }\n };\n};","export const PresetColors = ['blue', 'purple', 'cyan', 'green', 'magenta', 'pink', 'red', 'orange', 'yellow', 'volcano', 'geekblue', 'lime', 'gold'];","import { PresetColors } from '../interface';\nexport default function genPresetColor(token, genCss) {\n return PresetColors.reduce((prev, colorKey) => {\n const lightColor = token[`${colorKey}1`];\n const lightBorderColor = token[`${colorKey}3`];\n const darkColor = token[`${colorKey}6`];\n const textColor = token[`${colorKey}7`];\n return Object.assign(Object.assign({}, prev), genCss(colorKey, {\n lightColor,\n lightBorderColor,\n darkColor,\n textColor\n }));\n }, {});\n}","import { unit } from '@ant-design/cssinjs';\nimport { resetComponent } from '../../style';\nimport { initZoomMotion } from '../../style/motion';\nimport getArrowStyle, { getArrowOffsetToken, MAX_VERTICAL_CONTENT_RADIUS } from '../../style/placementArrow';\nimport { getArrowToken } from '../../style/roundedArrow';\nimport { genPresetColor, genStyleHooks, mergeToken } from '../../theme/internal';\nconst genTooltipStyle = token => {\n const {\n componentCls,\n // ant-tooltip\n tooltipMaxWidth,\n tooltipColor,\n tooltipBg,\n tooltipBorderRadius,\n zIndexPopup,\n controlHeight,\n boxShadowSecondary,\n paddingSM,\n paddingXS\n } = token;\n return [{\n [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign({}, resetComponent(token)), {\n position: 'absolute',\n zIndex: zIndexPopup,\n display: 'block',\n width: 'max-content',\n maxWidth: tooltipMaxWidth,\n visibility: 'visible',\n // When use `autoArrow`, origin will follow the arrow position\n '--valid-offset-x': 'var(--arrow-offset-horizontal, var(--arrow-x))',\n transformOrigin: [`var(--valid-offset-x, 50%)`, `var(--arrow-y, 50%)`].join(' '),\n '&-hidden': {\n display: 'none'\n },\n '--antd-arrow-background-color': tooltipBg,\n // Wrapper for the tooltip content\n [`${componentCls}-inner`]: {\n minWidth: '1em',\n minHeight: controlHeight,\n padding: `${unit(token.calc(paddingSM).div(2).equal())} ${unit(paddingXS)}`,\n color: tooltipColor,\n textAlign: 'start',\n textDecoration: 'none',\n wordWrap: 'break-word',\n backgroundColor: tooltipBg,\n borderRadius: tooltipBorderRadius,\n boxShadow: boxShadowSecondary,\n boxSizing: 'border-box'\n },\n // Limit left and right placement radius\n [[`&-placement-left`, `&-placement-leftTop`, `&-placement-leftBottom`, `&-placement-right`, `&-placement-rightTop`, `&-placement-rightBottom`].join(',')]: {\n [`${componentCls}-inner`]: {\n borderRadius: token.min(tooltipBorderRadius, MAX_VERTICAL_CONTENT_RADIUS)\n }\n },\n [`${componentCls}-content`]: {\n position: 'relative'\n }\n }), genPresetColor(token, (colorKey, _ref) => {\n let {\n darkColor\n } = _ref;\n return {\n [`&${componentCls}-${colorKey}`]: {\n [`${componentCls}-inner`]: {\n backgroundColor: darkColor\n },\n [`${componentCls}-arrow`]: {\n '--antd-arrow-background-color': darkColor\n }\n }\n };\n })), {\n // RTL\n '&-rtl': {\n direction: 'rtl'\n }\n })\n },\n // Arrow Style\n getArrowStyle(token, 'var(--antd-arrow-background-color)'),\n // Pure Render\n {\n [`${componentCls}-pure`]: {\n position: 'relative',\n maxWidth: 'none',\n margin: token.sizePopupArrow\n }\n }];\n};\n// ============================== Export ==============================\nexport const prepareComponentToken = token => Object.assign(Object.assign({\n zIndexPopup: token.zIndexPopupBase + 70\n}, getArrowOffsetToken({\n contentRadius: token.borderRadius,\n limitVerticalRadius: true\n})), getArrowToken(mergeToken(token, {\n borderRadiusOuter: Math.min(token.borderRadiusOuter, 4)\n})));\nexport default (function (prefixCls) {\n let injectStyle = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n const useStyle = genStyleHooks('Tooltip', token => {\n const {\n borderRadius,\n colorTextLightSolid,\n colorBgSpotlight\n } = token;\n const TooltipToken = mergeToken(token, {\n // default variables\n tooltipMaxWidth: 250,\n tooltipColor: colorTextLightSolid,\n tooltipBorderRadius: borderRadius,\n tooltipBg: colorBgSpotlight\n });\n return [genTooltipStyle(TooltipToken), initZoomMotion(token, 'zoom-big-fast')];\n }, prepareComponentToken, {\n resetStyle: false,\n // Popover use Tooltip as internal component. We do not need to handle this.\n injectStyle\n });\n return useStyle(prefixCls);\n});","/* eslint-disable import/prefer-default-export */\nimport classNames from 'classnames';\nimport { isPresetColor } from '../_util/colors';\nexport function parseColor(prefixCls, color) {\n const isInternalColor = isPresetColor(color);\n const className = classNames({\n [`${prefixCls}-${color}`]: color && isInternalColor\n });\n const overlayStyle = {};\n const arrowStyle = {};\n if (color && !isInternalColor) {\n overlayStyle.background = color;\n // @ts-ignore\n arrowStyle['--antd-arrow-background-color'] = color;\n }\n return {\n className,\n overlayStyle,\n arrowStyle\n };\n}","\"use client\";\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { Popup } from 'rc-tooltip';\nimport { ConfigContext } from '../config-provider';\nimport useStyle from './style';\nimport { parseColor } from './util';\n/** @private Internal Component. Do not use in your production. */\nconst PurePanel = props => {\n const {\n prefixCls: customizePrefixCls,\n className,\n placement = 'top',\n title,\n color,\n overlayInnerStyle\n } = props;\n const {\n getPrefixCls\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('tooltip', customizePrefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls);\n // Color\n const colorInfo = parseColor(prefixCls, color);\n const arrowContentStyle = colorInfo.arrowStyle;\n const formattedOverlayInnerStyle = Object.assign(Object.assign({}, overlayInnerStyle), colorInfo.overlayStyle);\n const cls = classNames(hashId, cssVarCls, prefixCls, `${prefixCls}-pure`, `${prefixCls}-placement-${placement}`, className, colorInfo.className);\n return wrapCSSVar( /*#__PURE__*/React.createElement(\"div\", {\n className: cls,\n style: arrowContentStyle\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-arrow`\n }), /*#__PURE__*/React.createElement(Popup, Object.assign({}, props, {\n className: hashId,\n prefixCls: prefixCls,\n overlayInnerStyle: formattedOverlayInnerStyle\n }), title)));\n};\nexport default PurePanel;","\"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 RcTooltip from 'rc-tooltip';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport ContextIsolator from '../_util/ContextIsolator';\nimport { useZIndex } from '../_util/hooks/useZIndex';\nimport { getTransitionName } from '../_util/motion';\nimport getPlacements from '../_util/placements';\nimport { cloneElement, isFragment } from '../_util/reactNode';\nimport { devUseWarning } from '../_util/warning';\nimport zIndexContext from '../_util/zindexContext';\nimport { ConfigContext } from '../config-provider';\nimport { useToken } from '../theme/internal';\nimport PurePanel from './PurePanel';\nimport useStyle from './style';\nimport { parseColor } from './util';\nconst InternalTooltip = /*#__PURE__*/React.forwardRef((props, ref) => {\n var _a, _b;\n const {\n prefixCls: customizePrefixCls,\n openClassName,\n getTooltipContainer,\n overlayClassName,\n color,\n overlayInnerStyle,\n children,\n afterOpenChange,\n afterVisibleChange,\n destroyTooltipOnHide,\n arrow = true,\n title,\n overlay,\n builtinPlacements,\n arrowPointAtCenter = false,\n autoAdjustOverflow = true\n } = props;\n const mergedShowArrow = !!arrow;\n const [, token] = useToken();\n const {\n getPopupContainer: getContextPopupContainer,\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n // ============================== Ref ===============================\n const warning = devUseWarning('Tooltip');\n const tooltipRef = React.useRef(null);\n const forceAlign = () => {\n var _a;\n (_a = tooltipRef.current) === null || _a === void 0 ? void 0 : _a.forceAlign();\n };\n React.useImperativeHandle(ref, () => {\n var _a;\n return {\n forceAlign,\n forcePopupAlign: () => {\n warning.deprecated(false, 'forcePopupAlign', 'forceAlign');\n forceAlign();\n },\n nativeElement: (_a = tooltipRef.current) === null || _a === void 0 ? void 0 : _a.nativeElement\n };\n });\n // ============================== Warn ==============================\n if (process.env.NODE_ENV !== 'production') {\n [['visible', 'open'], ['defaultVisible', 'defaultOpen'], ['onVisibleChange', 'onOpenChange'], ['afterVisibleChange', 'afterOpenChange'], ['arrowPointAtCenter', 'arrow={{ pointAtCenter: true }}']].forEach(_ref => {\n let [deprecatedName, newName] = _ref;\n warning.deprecated(!(deprecatedName in props), deprecatedName, newName);\n });\n process.env.NODE_ENV !== \"production\" ? warning(!destroyTooltipOnHide || typeof destroyTooltipOnHide === 'boolean', 'usage', '`destroyTooltipOnHide` no need config `keepParent` anymore. Please use `boolean` value directly.') : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(!arrow || typeof arrow === 'boolean' || !('arrowPointAtCenter' in arrow), 'deprecated', '`arrowPointAtCenter` in `arrow` is deprecated. Please use `pointAtCenter` instead.') : void 0;\n }\n // ============================== Open ==============================\n const [open, setOpen] = useMergedState(false, {\n value: (_a = props.open) !== null && _a !== void 0 ? _a : props.visible,\n defaultValue: (_b = props.defaultOpen) !== null && _b !== void 0 ? _b : props.defaultVisible\n });\n const noTitle = !title && !overlay && title !== 0; // overlay for old version compatibility\n const onOpenChange = vis => {\n var _a, _b;\n setOpen(noTitle ? false : vis);\n if (!noTitle) {\n (_a = props.onOpenChange) === null || _a === void 0 ? void 0 : _a.call(props, vis);\n (_b = props.onVisibleChange) === null || _b === void 0 ? void 0 : _b.call(props, vis);\n }\n };\n const tooltipPlacements = React.useMemo(() => {\n var _a, _b;\n let mergedArrowPointAtCenter = arrowPointAtCenter;\n if (typeof arrow === 'object') {\n mergedArrowPointAtCenter = (_b = (_a = arrow.pointAtCenter) !== null && _a !== void 0 ? _a : arrow.arrowPointAtCenter) !== null && _b !== void 0 ? _b : arrowPointAtCenter;\n }\n return builtinPlacements || getPlacements({\n arrowPointAtCenter: mergedArrowPointAtCenter,\n autoAdjustOverflow,\n arrowWidth: mergedShowArrow ? token.sizePopupArrow : 0,\n borderRadius: token.borderRadius,\n offset: token.marginXXS,\n visibleFirst: true\n });\n }, [arrowPointAtCenter, arrow, builtinPlacements, token]);\n const memoOverlay = React.useMemo(() => {\n if (title === 0) {\n return title;\n }\n return overlay || title || '';\n }, [overlay, title]);\n const memoOverlayWrapper = /*#__PURE__*/React.createElement(ContextIsolator, {\n space: true\n }, typeof memoOverlay === 'function' ? memoOverlay() : memoOverlay);\n const {\n getPopupContainer,\n placement = 'top',\n mouseEnterDelay = 0.1,\n mouseLeaveDelay = 0.1,\n overlayStyle,\n rootClassName\n } = props,\n otherProps = __rest(props, [\"getPopupContainer\", \"placement\", \"mouseEnterDelay\", \"mouseLeaveDelay\", \"overlayStyle\", \"rootClassName\"]);\n const prefixCls = getPrefixCls('tooltip', customizePrefixCls);\n const rootPrefixCls = getPrefixCls();\n const injectFromPopover = props['data-popover-inject'];\n let tempOpen = open;\n // Hide tooltip when there is no title\n if (!('open' in props) && !('visible' in props) && noTitle) {\n tempOpen = false;\n }\n // ============================= Render =============================\n const child = /*#__PURE__*/React.isValidElement(children) && !isFragment(children) ? children : /*#__PURE__*/React.createElement(\"span\", null, children);\n const childProps = child.props;\n const childCls = !childProps.className || typeof childProps.className === 'string' ? classNames(childProps.className, openClassName || `${prefixCls}-open`) : childProps.className;\n // Style\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls, !injectFromPopover);\n // Color\n const colorInfo = parseColor(prefixCls, color);\n const arrowContentStyle = colorInfo.arrowStyle;\n const formattedOverlayInnerStyle = Object.assign(Object.assign({}, overlayInnerStyle), colorInfo.overlayStyle);\n const customOverlayClassName = classNames(overlayClassName, {\n [`${prefixCls}-rtl`]: direction === 'rtl'\n }, colorInfo.className, rootClassName, hashId, cssVarCls);\n // ============================ zIndex ============================\n const [zIndex, contextZIndex] = useZIndex('Tooltip', otherProps.zIndex);\n const content = /*#__PURE__*/React.createElement(RcTooltip, Object.assign({}, otherProps, {\n zIndex: zIndex,\n showArrow: mergedShowArrow,\n placement: placement,\n mouseEnterDelay: mouseEnterDelay,\n mouseLeaveDelay: mouseLeaveDelay,\n prefixCls: prefixCls,\n overlayClassName: customOverlayClassName,\n overlayStyle: Object.assign(Object.assign({}, arrowContentStyle), overlayStyle),\n getTooltipContainer: getPopupContainer || getTooltipContainer || getContextPopupContainer,\n ref: tooltipRef,\n builtinPlacements: tooltipPlacements,\n overlay: memoOverlayWrapper,\n visible: tempOpen,\n onVisibleChange: onOpenChange,\n afterVisibleChange: afterOpenChange !== null && afterOpenChange !== void 0 ? afterOpenChange : afterVisibleChange,\n overlayInnerStyle: formattedOverlayInnerStyle,\n arrowContent: /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-arrow-content`\n }),\n motion: {\n motionName: getTransitionName(rootPrefixCls, 'zoom-big-fast', props.transitionName),\n motionDeadline: 1000\n },\n destroyTooltipOnHide: !!destroyTooltipOnHide\n }), tempOpen ? cloneElement(child, {\n className: childCls\n }) : child);\n return wrapCSSVar( /*#__PURE__*/React.createElement(zIndexContext.Provider, {\n value: contextZIndex\n }, content));\n});\nconst Tooltip = InternalTooltip;\nif (process.env.NODE_ENV !== 'production') {\n Tooltip.displayName = 'Tooltip';\n}\nTooltip._InternalPanelDoNotUseOrYouWillBeFired = PurePanel;\nexport default Tooltip;","// This icon file is generated automatically.\nvar CloseOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"fill-rule\": \"evenodd\", \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M799.86 166.31c.02 0 .04.02.08.06l57.69 57.7c.04.03.05.05.06.08a.12.12 0 010 .06c0 .03-.02.05-.06.09L569.93 512l287.7 287.7c.04.04.05.06.06.09a.12.12 0 010 .07c0 .02-.02.04-.06.08l-57.7 57.69c-.03.04-.05.05-.07.06a.12.12 0 01-.07 0c-.03 0-.05-.02-.09-.06L512 569.93l-287.7 287.7c-.04.04-.06.05-.09.06a.12.12 0 01-.07 0c-.02 0-.04-.02-.08-.06l-57.69-57.7c-.04-.03-.05-.05-.06-.07a.12.12 0 010-.07c0-.03.02-.05.06-.09L454.07 512l-287.7-287.7c-.04-.04-.05-.06-.06-.09a.12.12 0 010-.07c0-.02.02-.04.06-.08l57.7-57.69c.03-.04.05-.05.07-.06a.12.12 0 01.07 0c.03 0 .05.02.09.06L512 454.07l287.7-287.7c.04-.04.06-.05.09-.06a.12.12 0 01.07 0z\" } }] }, \"name\": \"close\", \"theme\": \"outlined\" };\nexport default CloseOutlined;\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\n\nimport * as React from 'react';\nimport CloseOutlinedSvg from \"@ant-design/icons-svg/es/asn/CloseOutlined\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar CloseOutlined = function CloseOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: CloseOutlinedSvg\n }));\n};\n\n/**![close](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIGZpbGwtcnVsZT0iZXZlbm9kZCIgdmlld0JveD0iNjQgNjQgODk2IDg5NiIgZm9jdXNhYmxlPSJmYWxzZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNzk5Ljg2IDE2Ni4zMWMuMDIgMCAuMDQuMDIuMDguMDZsNTcuNjkgNTcuN2MuMDQuMDMuMDUuMDUuMDYuMDhhLjEyLjEyIDAgMDEwIC4wNmMwIC4wMy0uMDIuMDUtLjA2LjA5TDU2OS45MyA1MTJsMjg3LjcgMjg3LjdjLjA0LjA0LjA1LjA2LjA2LjA5YS4xMi4xMiAwIDAxMCAuMDdjMCAuMDItLjAyLjA0LS4wNi4wOGwtNTcuNyA1Ny42OWMtLjAzLjA0LS4wNS4wNS0uMDcuMDZhLjEyLjEyIDAgMDEtLjA3IDBjLS4wMyAwLS4wNS0uMDItLjA5LS4wNkw1MTIgNTY5LjkzbC0yODcuNyAyODcuN2MtLjA0LjA0LS4wNi4wNS0uMDkuMDZhLjEyLjEyIDAgMDEtLjA3IDBjLS4wMiAwLS4wNC0uMDItLjA4LS4wNmwtNTcuNjktNTcuN2MtLjA0LS4wMy0uMDUtLjA1LS4wNi0uMDdhLjEyLjEyIDAgMDEwLS4wN2MwLS4wMy4wMi0uMDUuMDYtLjA5TDQ1NC4wNyA1MTJsLTI4Ny43LTI4Ny43Yy0uMDQtLjA0LS4wNS0uMDYtLjA2LS4wOWEuMTIuMTIgMCAwMTAtLjA3YzAtLjAyLjAyLS4wNC4wNi0uMDhsNTcuNy01Ny42OWMuMDMtLjA0LjA1LS4wNS4wNy0uMDZhLjEyLjEyIDAgMDEuMDcgMGMuMDMgMCAuMDUuMDIuMDkuMDZMNTEyIDQ1NC4wN2wyODcuNy0yODcuN2MuMDQtLjA0LjA2LS4wNS4wOS0uMDZhLjEyLjEyIDAgMDEuMDcgMHoiIC8+PC9zdmc+) */\nvar RefIcon = /*#__PURE__*/React.forwardRef(CloseOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'CloseOutlined';\n}\nexport default RefIcon;","import _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"children\"];\nimport * as React from 'react';\nexport var Context = /*#__PURE__*/React.createContext({});\nexport default function MotionProvider(_ref) {\n var children = _ref.children,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(Context.Provider, {\n value: props\n }, children);\n}","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport * as React from 'react';\nvar DomWrapper = /*#__PURE__*/function (_React$Component) {\n _inherits(DomWrapper, _React$Component);\n var _super = _createSuper(DomWrapper);\n function DomWrapper() {\n _classCallCheck(this, DomWrapper);\n return _super.apply(this, arguments);\n }\n _createClass(DomWrapper, [{\n key: \"render\",\n value: function render() {\n return this.props.children;\n }\n }]);\n return DomWrapper;\n}(React.Component);\nexport default DomWrapper;","export var STATUS_NONE = 'none';\nexport var STATUS_APPEAR = 'appear';\nexport var STATUS_ENTER = 'enter';\nexport var STATUS_LEAVE = 'leave';\nexport var STEP_NONE = 'none';\nexport var STEP_PREPARE = 'prepare';\nexport var STEP_START = 'start';\nexport var STEP_ACTIVE = 'active';\nexport var STEP_ACTIVATED = 'end';\n/**\n * Used for disabled motion case.\n * Prepare stage will still work but start & active will be skipped.\n */\nexport var STEP_PREPARED = 'prepared';","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport canUseDOM from \"rc-util/es/Dom/canUseDom\";\n// ================= Transition =================\n// Event wrapper. Copy from react source code\nfunction makePrefixMap(styleProp, eventName) {\n var prefixes = {};\n prefixes[styleProp.toLowerCase()] = eventName.toLowerCase();\n prefixes[\"Webkit\".concat(styleProp)] = \"webkit\".concat(eventName);\n prefixes[\"Moz\".concat(styleProp)] = \"moz\".concat(eventName);\n prefixes[\"ms\".concat(styleProp)] = \"MS\".concat(eventName);\n prefixes[\"O\".concat(styleProp)] = \"o\".concat(eventName.toLowerCase());\n return prefixes;\n}\nexport function getVendorPrefixes(domSupport, win) {\n var prefixes = {\n animationend: makePrefixMap('Animation', 'AnimationEnd'),\n transitionend: makePrefixMap('Transition', 'TransitionEnd')\n };\n if (domSupport) {\n if (!('AnimationEvent' in win)) {\n delete prefixes.animationend.animation;\n }\n if (!('TransitionEvent' in win)) {\n delete prefixes.transitionend.transition;\n }\n }\n return prefixes;\n}\nvar vendorPrefixes = getVendorPrefixes(canUseDOM(), typeof window !== 'undefined' ? window : {});\nvar style = {};\nif (canUseDOM()) {\n var _document$createEleme = document.createElement('div');\n style = _document$createEleme.style;\n}\nvar prefixedEventNames = {};\nexport function getVendorPrefixedEventName(eventName) {\n if (prefixedEventNames[eventName]) {\n return prefixedEventNames[eventName];\n }\n var prefixMap = vendorPrefixes[eventName];\n if (prefixMap) {\n var stylePropList = Object.keys(prefixMap);\n var len = stylePropList.length;\n for (var i = 0; i < len; i += 1) {\n var styleProp = stylePropList[i];\n if (Object.prototype.hasOwnProperty.call(prefixMap, styleProp) && styleProp in style) {\n prefixedEventNames[eventName] = prefixMap[styleProp];\n return prefixedEventNames[eventName];\n }\n }\n }\n return '';\n}\nvar internalAnimationEndName = getVendorPrefixedEventName('animationend');\nvar internalTransitionEndName = getVendorPrefixedEventName('transitionend');\nexport var supportTransition = !!(internalAnimationEndName && internalTransitionEndName);\nexport var animationEndName = internalAnimationEndName || 'animationend';\nexport var transitionEndName = internalTransitionEndName || 'transitionend';\nexport function getTransitionName(transitionName, transitionType) {\n if (!transitionName) return null;\n if (_typeof(transitionName) === 'object') {\n var type = transitionType.replace(/-\\w/g, function (match) {\n return match[1].toUpperCase();\n });\n return transitionName[type];\n }\n return \"\".concat(transitionName, \"-\").concat(transitionType);\n}","import * as React from 'react';\nimport { useRef } from 'react';\nimport { animationEndName, transitionEndName } from \"../util/motion\";\nexport default (function (callback) {\n var cacheElementRef = useRef();\n\n // Cache callback\n var callbackRef = useRef(callback);\n callbackRef.current = callback;\n\n // Internal motion event handler\n var onInternalMotionEnd = React.useCallback(function (event) {\n callbackRef.current(event);\n }, []);\n\n // Remove events\n function removeMotionEvents(element) {\n if (element) {\n element.removeEventListener(transitionEndName, onInternalMotionEnd);\n element.removeEventListener(animationEndName, onInternalMotionEnd);\n }\n }\n\n // Patch events\n function patchMotionEvents(element) {\n if (cacheElementRef.current && cacheElementRef.current !== element) {\n removeMotionEvents(cacheElementRef.current);\n }\n if (element && element !== cacheElementRef.current) {\n element.addEventListener(transitionEndName, onInternalMotionEnd);\n element.addEventListener(animationEndName, onInternalMotionEnd);\n\n // Save as cache in case dom removed trigger by `motionDeadline`\n cacheElementRef.current = element;\n }\n }\n\n // Clean up when removed\n React.useEffect(function () {\n return function () {\n removeMotionEvents(cacheElementRef.current);\n };\n }, []);\n return [patchMotionEvents, removeMotionEvents];\n});","import canUseDom from \"rc-util/es/Dom/canUseDom\";\nimport { useEffect, useLayoutEffect } from 'react';\n\n// It's safe to use `useLayoutEffect` but the warning is annoying\nvar useIsomorphicLayoutEffect = canUseDom() ? useLayoutEffect : useEffect;\nexport default useIsomorphicLayoutEffect;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport useState from \"rc-util/es/hooks/useState\";\nimport * as React from 'react';\nimport { STEP_ACTIVATED, STEP_ACTIVE, STEP_NONE, STEP_PREPARE, STEP_PREPARED, STEP_START } from \"../interface\";\nimport useIsomorphicLayoutEffect from \"./useIsomorphicLayoutEffect\";\nimport useNextFrame from \"./useNextFrame\";\nvar FULL_STEP_QUEUE = [STEP_PREPARE, STEP_START, STEP_ACTIVE, STEP_ACTIVATED];\nvar SIMPLE_STEP_QUEUE = [STEP_PREPARE, STEP_PREPARED];\n\n/** Skip current step */\nexport var SkipStep = false;\n/** Current step should be update in */\nexport var DoStep = true;\nexport function isActive(step) {\n return step === STEP_ACTIVE || step === STEP_ACTIVATED;\n}\nexport default (function (status, prepareOnly, callback) {\n var _useState = useState(STEP_NONE),\n _useState2 = _slicedToArray(_useState, 2),\n step = _useState2[0],\n setStep = _useState2[1];\n var _useNextFrame = useNextFrame(),\n _useNextFrame2 = _slicedToArray(_useNextFrame, 2),\n nextFrame = _useNextFrame2[0],\n cancelNextFrame = _useNextFrame2[1];\n function startQueue() {\n setStep(STEP_PREPARE, true);\n }\n var STEP_QUEUE = prepareOnly ? SIMPLE_STEP_QUEUE : FULL_STEP_QUEUE;\n useIsomorphicLayoutEffect(function () {\n if (step !== STEP_NONE && step !== STEP_ACTIVATED) {\n var index = STEP_QUEUE.indexOf(step);\n var nextStep = STEP_QUEUE[index + 1];\n var result = callback(step);\n if (result === SkipStep) {\n // Skip when no needed\n setStep(nextStep, true);\n } else if (nextStep) {\n // Do as frame for step update\n nextFrame(function (info) {\n function doNext() {\n // Skip since current queue is ood\n if (info.isCanceled()) return;\n setStep(nextStep, true);\n }\n if (result === true) {\n doNext();\n } else {\n // Only promise should be async\n Promise.resolve(result).then(doNext);\n }\n });\n }\n }\n }, [status, step]);\n React.useEffect(function () {\n return function () {\n cancelNextFrame();\n };\n }, []);\n return [startQueue, step];\n});","import raf from \"rc-util/es/raf\";\nimport * as React from 'react';\nexport default (function () {\n var nextFrameRef = React.useRef(null);\n function cancelNextFrame() {\n raf.cancel(nextFrameRef.current);\n }\n function nextFrame(callback) {\n var delay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;\n cancelNextFrame();\n var nextFrameId = raf(function () {\n if (delay <= 1) {\n callback({\n isCanceled: function isCanceled() {\n return nextFrameId !== nextFrameRef.current;\n }\n });\n } else {\n nextFrame(callback, delay - 1);\n }\n });\n nextFrameRef.current = nextFrameId;\n }\n React.useEffect(function () {\n return function () {\n cancelNextFrame();\n };\n }, []);\n return [nextFrame, cancelNextFrame];\n});","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\n/* eslint-disable react/default-props-match-prop-types, react/no-multi-comp, react/prop-types */\nimport classNames from 'classnames';\nimport findDOMNode from \"rc-util/es/Dom/findDOMNode\";\nimport { fillRef, supportRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport { useRef } from 'react';\nimport { Context } from \"./context\";\nimport DomWrapper from \"./DomWrapper\";\nimport useStatus from \"./hooks/useStatus\";\nimport { isActive } from \"./hooks/useStepQueue\";\nimport { STATUS_NONE, STEP_PREPARE, STEP_START } from \"./interface\";\nimport { getTransitionName, supportTransition } from \"./util/motion\";\n/**\n * `transitionSupport` is used for none transition test case.\n * Default we use browser transition event support check.\n */\nexport function genCSSMotion(config) {\n var transitionSupport = config;\n if (_typeof(config) === 'object') {\n transitionSupport = config.transitionSupport;\n }\n function isSupportTransition(props, contextMotion) {\n return !!(props.motionName && transitionSupport && contextMotion !== false);\n }\n var CSSMotion = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _props$visible = props.visible,\n visible = _props$visible === void 0 ? true : _props$visible,\n _props$removeOnLeave = props.removeOnLeave,\n removeOnLeave = _props$removeOnLeave === void 0 ? true : _props$removeOnLeave,\n forceRender = props.forceRender,\n children = props.children,\n motionName = props.motionName,\n leavedClassName = props.leavedClassName,\n eventProps = props.eventProps;\n var _React$useContext = React.useContext(Context),\n contextMotion = _React$useContext.motion;\n var supportMotion = isSupportTransition(props, contextMotion);\n\n // Ref to the react node, it may be a HTMLElement\n var nodeRef = useRef();\n // Ref to the dom wrapper in case ref can not pass to HTMLElement\n var wrapperNodeRef = useRef();\n function getDomElement() {\n try {\n // Here we're avoiding call for findDOMNode since it's deprecated\n // in strict mode. We're calling it only when node ref is not\n // an instance of DOM HTMLElement. Otherwise use\n // findDOMNode as a final resort\n return nodeRef.current instanceof HTMLElement ? nodeRef.current : findDOMNode(wrapperNodeRef.current);\n } catch (e) {\n // Only happen when `motionDeadline` trigger but element removed.\n return null;\n }\n }\n var _useStatus = useStatus(supportMotion, visible, getDomElement, props),\n _useStatus2 = _slicedToArray(_useStatus, 4),\n status = _useStatus2[0],\n statusStep = _useStatus2[1],\n statusStyle = _useStatus2[2],\n mergedVisible = _useStatus2[3];\n\n // Record whether content has rendered\n // Will return null for un-rendered even when `removeOnLeave={false}`\n var renderedRef = React.useRef(mergedVisible);\n if (mergedVisible) {\n renderedRef.current = true;\n }\n\n // ====================== Refs ======================\n var setNodeRef = React.useCallback(function (node) {\n nodeRef.current = node;\n fillRef(ref, node);\n }, [ref]);\n\n // ===================== Render =====================\n var motionChildren;\n var mergedProps = _objectSpread(_objectSpread({}, eventProps), {}, {\n visible: visible\n });\n if (!children) {\n // No children\n motionChildren = null;\n } else if (status === STATUS_NONE) {\n // Stable children\n if (mergedVisible) {\n motionChildren = children(_objectSpread({}, mergedProps), setNodeRef);\n } else if (!removeOnLeave && renderedRef.current && leavedClassName) {\n motionChildren = children(_objectSpread(_objectSpread({}, mergedProps), {}, {\n className: leavedClassName\n }), setNodeRef);\n } else if (forceRender || !removeOnLeave && !leavedClassName) {\n motionChildren = children(_objectSpread(_objectSpread({}, mergedProps), {}, {\n style: {\n display: 'none'\n }\n }), setNodeRef);\n } else {\n motionChildren = null;\n }\n } else {\n var _classNames;\n // In motion\n var statusSuffix;\n if (statusStep === STEP_PREPARE) {\n statusSuffix = 'prepare';\n } else if (isActive(statusStep)) {\n statusSuffix = 'active';\n } else if (statusStep === STEP_START) {\n statusSuffix = 'start';\n }\n var motionCls = getTransitionName(motionName, \"\".concat(status, \"-\").concat(statusSuffix));\n motionChildren = children(_objectSpread(_objectSpread({}, mergedProps), {}, {\n className: classNames(getTransitionName(motionName, status), (_classNames = {}, _defineProperty(_classNames, motionCls, motionCls && statusSuffix), _defineProperty(_classNames, motionName, typeof motionName === 'string'), _classNames)),\n style: statusStyle\n }), setNodeRef);\n }\n\n // Auto inject ref if child node not have `ref` props\n if ( /*#__PURE__*/React.isValidElement(motionChildren) && supportRef(motionChildren)) {\n var _ref = motionChildren,\n originNodeRef = _ref.ref;\n if (!originNodeRef) {\n motionChildren = /*#__PURE__*/React.cloneElement(motionChildren, {\n ref: setNodeRef\n });\n }\n }\n return /*#__PURE__*/React.createElement(DomWrapper, {\n ref: wrapperNodeRef\n }, motionChildren);\n });\n CSSMotion.displayName = 'CSSMotion';\n return CSSMotion;\n}\nexport default genCSSMotion(supportTransition);","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport useState from \"rc-util/es/hooks/useState\";\nimport * as React from 'react';\nimport { useEffect, useRef } from 'react';\nimport { STATUS_APPEAR, STATUS_ENTER, STATUS_LEAVE, STATUS_NONE, STEP_ACTIVE, STEP_PREPARE, STEP_PREPARED, STEP_START } from \"../interface\";\nimport useDomMotionEvents from \"./useDomMotionEvents\";\nimport useIsomorphicLayoutEffect from \"./useIsomorphicLayoutEffect\";\nimport useStepQueue, { DoStep, isActive, SkipStep } from \"./useStepQueue\";\nexport default function useStatus(supportMotion, visible, getElement, _ref) {\n var _ref$motionEnter = _ref.motionEnter,\n motionEnter = _ref$motionEnter === void 0 ? true : _ref$motionEnter,\n _ref$motionAppear = _ref.motionAppear,\n motionAppear = _ref$motionAppear === void 0 ? true : _ref$motionAppear,\n _ref$motionLeave = _ref.motionLeave,\n motionLeave = _ref$motionLeave === void 0 ? true : _ref$motionLeave,\n motionDeadline = _ref.motionDeadline,\n motionLeaveImmediately = _ref.motionLeaveImmediately,\n onAppearPrepare = _ref.onAppearPrepare,\n onEnterPrepare = _ref.onEnterPrepare,\n onLeavePrepare = _ref.onLeavePrepare,\n onAppearStart = _ref.onAppearStart,\n onEnterStart = _ref.onEnterStart,\n onLeaveStart = _ref.onLeaveStart,\n onAppearActive = _ref.onAppearActive,\n onEnterActive = _ref.onEnterActive,\n onLeaveActive = _ref.onLeaveActive,\n onAppearEnd = _ref.onAppearEnd,\n onEnterEnd = _ref.onEnterEnd,\n onLeaveEnd = _ref.onLeaveEnd,\n onVisibleChanged = _ref.onVisibleChanged;\n // Used for outer render usage to avoid `visible: false & status: none` to render nothing\n var _useState = useState(),\n _useState2 = _slicedToArray(_useState, 2),\n asyncVisible = _useState2[0],\n setAsyncVisible = _useState2[1];\n var _useState3 = useState(STATUS_NONE),\n _useState4 = _slicedToArray(_useState3, 2),\n status = _useState4[0],\n setStatus = _useState4[1];\n var _useState5 = useState(null),\n _useState6 = _slicedToArray(_useState5, 2),\n style = _useState6[0],\n setStyle = _useState6[1];\n var mountedRef = useRef(false);\n var deadlineRef = useRef(null);\n\n // =========================== Dom Node ===========================\n function getDomElement() {\n return getElement();\n }\n\n // ========================== Motion End ==========================\n var activeRef = useRef(false);\n\n /**\n * Clean up status & style\n */\n function updateMotionEndStatus() {\n setStatus(STATUS_NONE, true);\n setStyle(null, true);\n }\n function onInternalMotionEnd(event) {\n var element = getDomElement();\n if (event && !event.deadline && event.target !== element) {\n // event exists\n // not initiated by deadline\n // transitionEnd not fired by inner elements\n return;\n }\n var currentActive = activeRef.current;\n var canEnd;\n if (status === STATUS_APPEAR && currentActive) {\n canEnd = onAppearEnd === null || onAppearEnd === void 0 ? void 0 : onAppearEnd(element, event);\n } else if (status === STATUS_ENTER && currentActive) {\n canEnd = onEnterEnd === null || onEnterEnd === void 0 ? void 0 : onEnterEnd(element, event);\n } else if (status === STATUS_LEAVE && currentActive) {\n canEnd = onLeaveEnd === null || onLeaveEnd === void 0 ? void 0 : onLeaveEnd(element, event);\n }\n\n // Only update status when `canEnd` and not destroyed\n if (status !== STATUS_NONE && currentActive && canEnd !== false) {\n updateMotionEndStatus();\n }\n }\n var _useDomMotionEvents = useDomMotionEvents(onInternalMotionEnd),\n _useDomMotionEvents2 = _slicedToArray(_useDomMotionEvents, 1),\n patchMotionEvents = _useDomMotionEvents2[0];\n\n // ============================= Step =============================\n var getEventHandlers = function getEventHandlers(targetStatus) {\n var _ref2, _ref3, _ref4;\n switch (targetStatus) {\n case STATUS_APPEAR:\n return _ref2 = {}, _defineProperty(_ref2, STEP_PREPARE, onAppearPrepare), _defineProperty(_ref2, STEP_START, onAppearStart), _defineProperty(_ref2, STEP_ACTIVE, onAppearActive), _ref2;\n case STATUS_ENTER:\n return _ref3 = {}, _defineProperty(_ref3, STEP_PREPARE, onEnterPrepare), _defineProperty(_ref3, STEP_START, onEnterStart), _defineProperty(_ref3, STEP_ACTIVE, onEnterActive), _ref3;\n case STATUS_LEAVE:\n return _ref4 = {}, _defineProperty(_ref4, STEP_PREPARE, onLeavePrepare), _defineProperty(_ref4, STEP_START, onLeaveStart), _defineProperty(_ref4, STEP_ACTIVE, onLeaveActive), _ref4;\n default:\n return {};\n }\n };\n var eventHandlers = React.useMemo(function () {\n return getEventHandlers(status);\n }, [status]);\n var _useStepQueue = useStepQueue(status, !supportMotion, function (newStep) {\n // Only prepare step can be skip\n if (newStep === STEP_PREPARE) {\n var onPrepare = eventHandlers[STEP_PREPARE];\n if (!onPrepare) {\n return SkipStep;\n }\n return onPrepare(getDomElement());\n }\n\n // Rest step is sync update\n if (step in eventHandlers) {\n var _eventHandlers$step;\n setStyle(((_eventHandlers$step = eventHandlers[step]) === null || _eventHandlers$step === void 0 ? void 0 : _eventHandlers$step.call(eventHandlers, getDomElement(), null)) || null);\n }\n if (step === STEP_ACTIVE) {\n // Patch events when motion needed\n patchMotionEvents(getDomElement());\n if (motionDeadline > 0) {\n clearTimeout(deadlineRef.current);\n deadlineRef.current = setTimeout(function () {\n onInternalMotionEnd({\n deadline: true\n });\n }, motionDeadline);\n }\n }\n if (step === STEP_PREPARED) {\n updateMotionEndStatus();\n }\n return DoStep;\n }),\n _useStepQueue2 = _slicedToArray(_useStepQueue, 2),\n startStep = _useStepQueue2[0],\n step = _useStepQueue2[1];\n var active = isActive(step);\n activeRef.current = active;\n\n // ============================ Status ============================\n // Update with new status\n useIsomorphicLayoutEffect(function () {\n setAsyncVisible(visible);\n var isMounted = mountedRef.current;\n mountedRef.current = true;\n\n // if (!supportMotion) {\n // return;\n // }\n\n var nextStatus;\n\n // Appear\n if (!isMounted && visible && motionAppear) {\n nextStatus = STATUS_APPEAR;\n }\n\n // Enter\n if (isMounted && visible && motionEnter) {\n nextStatus = STATUS_ENTER;\n }\n\n // Leave\n if (isMounted && !visible && motionLeave || !isMounted && motionLeaveImmediately && !visible && motionLeave) {\n nextStatus = STATUS_LEAVE;\n }\n var nextEventHandlers = getEventHandlers(nextStatus);\n\n // Update to next status\n if (nextStatus && (supportMotion || nextEventHandlers[STEP_PREPARE])) {\n setStatus(nextStatus);\n startStep();\n } else {\n // Set back in case no motion but prev status has prepare step\n setStatus(STATUS_NONE);\n }\n }, [visible]);\n\n // ============================ Effect ============================\n // Reset when motion changed\n useEffect(function () {\n if (\n // Cancel appear\n status === STATUS_APPEAR && !motionAppear ||\n // Cancel enter\n status === STATUS_ENTER && !motionEnter ||\n // Cancel leave\n status === STATUS_LEAVE && !motionLeave) {\n setStatus(STATUS_NONE);\n }\n }, [motionAppear, motionEnter, motionLeave]);\n useEffect(function () {\n return function () {\n mountedRef.current = false;\n clearTimeout(deadlineRef.current);\n };\n }, []);\n\n // Trigger `onVisibleChanged`\n var firstMountChangeRef = React.useRef(false);\n useEffect(function () {\n // [visible & motion not end] => [!visible & motion end] still need trigger onVisibleChanged\n if (asyncVisible) {\n firstMountChangeRef.current = true;\n }\n if (asyncVisible !== undefined && status === STATUS_NONE) {\n // Skip first render is invisible since it's nothing changed\n if (firstMountChangeRef.current || asyncVisible) {\n onVisibleChanged === null || onVisibleChanged === void 0 ? void 0 : onVisibleChanged(asyncVisible);\n }\n firstMountChangeRef.current = true;\n }\n }, [asyncVisible, status]);\n\n // ============================ Styles ============================\n var mergedStyle = style;\n if (eventHandlers[STEP_PREPARE] && step === STEP_START) {\n mergedStyle = _objectSpread({\n transition: 'none'\n }, mergedStyle);\n }\n return [status, step, mergedStyle, asyncVisible !== null && asyncVisible !== void 0 ? asyncVisible : visible];\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nexport var STATUS_ADD = 'add';\nexport var STATUS_KEEP = 'keep';\nexport var STATUS_REMOVE = 'remove';\nexport var STATUS_REMOVED = 'removed';\nexport function wrapKeyToObject(key) {\n var keyObj;\n if (key && _typeof(key) === 'object' && 'key' in key) {\n keyObj = key;\n } else {\n keyObj = {\n key: key\n };\n }\n return _objectSpread(_objectSpread({}, keyObj), {}, {\n key: String(keyObj.key)\n });\n}\nexport function parseKeys() {\n var keys = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n return keys.map(wrapKeyToObject);\n}\nexport function diffKeys() {\n var prevKeys = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var currentKeys = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n var list = [];\n var currentIndex = 0;\n var currentLen = currentKeys.length;\n var prevKeyObjects = parseKeys(prevKeys);\n var currentKeyObjects = parseKeys(currentKeys);\n\n // Check prev keys to insert or keep\n prevKeyObjects.forEach(function (keyObj) {\n var hit = false;\n for (var i = currentIndex; i < currentLen; i += 1) {\n var currentKeyObj = currentKeyObjects[i];\n if (currentKeyObj.key === keyObj.key) {\n // New added keys should add before current key\n if (currentIndex < i) {\n list = list.concat(currentKeyObjects.slice(currentIndex, i).map(function (obj) {\n return _objectSpread(_objectSpread({}, obj), {}, {\n status: STATUS_ADD\n });\n }));\n currentIndex = i;\n }\n list.push(_objectSpread(_objectSpread({}, currentKeyObj), {}, {\n status: STATUS_KEEP\n }));\n currentIndex += 1;\n hit = true;\n break;\n }\n }\n\n // If not hit, it means key is removed\n if (!hit) {\n list.push(_objectSpread(_objectSpread({}, keyObj), {}, {\n status: STATUS_REMOVE\n }));\n }\n });\n\n // Add rest to the list\n if (currentIndex < currentLen) {\n list = list.concat(currentKeyObjects.slice(currentIndex).map(function (obj) {\n return _objectSpread(_objectSpread({}, obj), {}, {\n status: STATUS_ADD\n });\n }));\n }\n\n /**\n * Merge same key when it remove and add again:\n * [1 - add, 2 - keep, 1 - remove] -> [1 - keep, 2 - keep]\n */\n var keys = {};\n list.forEach(function (_ref) {\n var key = _ref.key;\n keys[key] = (keys[key] || 0) + 1;\n });\n var duplicatedKeys = Object.keys(keys).filter(function (key) {\n return keys[key] > 1;\n });\n duplicatedKeys.forEach(function (matchKey) {\n // Remove `STATUS_REMOVE` node.\n list = list.filter(function (_ref2) {\n var key = _ref2.key,\n status = _ref2.status;\n return key !== matchKey || status !== STATUS_REMOVE;\n });\n\n // Update `STATUS_ADD` to `STATUS_KEEP`\n list.forEach(function (node) {\n if (node.key === matchKey) {\n // eslint-disable-next-line no-param-reassign\n node.status = STATUS_KEEP;\n }\n });\n });\n return list;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\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 = [\"component\", \"children\", \"onVisibleChanged\", \"onAllRemoved\"],\n _excluded2 = [\"status\"];\n/* eslint react/prop-types: 0 */\nimport * as React from 'react';\nimport OriginCSSMotion from \"./CSSMotion\";\nimport { diffKeys, parseKeys, STATUS_ADD, STATUS_KEEP, STATUS_REMOVE, STATUS_REMOVED } from \"./util/diff\";\nimport { supportTransition } from \"./util/motion\";\nvar MOTION_PROP_NAMES = ['eventProps', 'visible', 'children', 'motionName', 'motionAppear', 'motionEnter', 'motionLeave', 'motionLeaveImmediately', 'motionDeadline', 'removeOnLeave', 'leavedClassName', 'onAppearPrepare', 'onAppearStart', 'onAppearActive', 'onAppearEnd', 'onEnterStart', 'onEnterActive', 'onEnterEnd', 'onLeaveStart', 'onLeaveActive', 'onLeaveEnd'];\n/**\n * Generate a CSSMotionList component with config\n * @param transitionSupport No need since CSSMotionList no longer depends on transition support\n * @param CSSMotion CSSMotion component\n */\nexport function genCSSMotionList(transitionSupport) {\n var CSSMotion = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : OriginCSSMotion;\n var CSSMotionList = /*#__PURE__*/function (_React$Component) {\n _inherits(CSSMotionList, _React$Component);\n var _super = _createSuper(CSSMotionList);\n function CSSMotionList() {\n var _this;\n _classCallCheck(this, CSSMotionList);\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _super.call.apply(_super, [this].concat(args));\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n keyEntities: []\n });\n // ZombieJ: Return the count of rest keys. It's safe to refactor if need more info.\n _defineProperty(_assertThisInitialized(_this), \"removeKey\", function (removeKey) {\n var keyEntities = _this.state.keyEntities;\n var nextKeyEntities = keyEntities.map(function (entity) {\n if (entity.key !== removeKey) return entity;\n return _objectSpread(_objectSpread({}, entity), {}, {\n status: STATUS_REMOVED\n });\n });\n _this.setState({\n keyEntities: nextKeyEntities\n });\n return nextKeyEntities.filter(function (_ref) {\n var status = _ref.status;\n return status !== STATUS_REMOVED;\n }).length;\n });\n return _this;\n }\n _createClass(CSSMotionList, [{\n key: \"render\",\n value: function render() {\n var _this2 = this;\n var keyEntities = this.state.keyEntities;\n var _this$props = this.props,\n component = _this$props.component,\n children = _this$props.children,\n _onVisibleChanged = _this$props.onVisibleChanged,\n onAllRemoved = _this$props.onAllRemoved,\n restProps = _objectWithoutProperties(_this$props, _excluded);\n var Component = component || React.Fragment;\n var motionProps = {};\n MOTION_PROP_NAMES.forEach(function (prop) {\n motionProps[prop] = restProps[prop];\n delete restProps[prop];\n });\n delete restProps.keys;\n return /*#__PURE__*/React.createElement(Component, restProps, keyEntities.map(function (_ref2, index) {\n var status = _ref2.status,\n eventProps = _objectWithoutProperties(_ref2, _excluded2);\n var visible = status === STATUS_ADD || status === STATUS_KEEP;\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({}, motionProps, {\n key: eventProps.key,\n visible: visible,\n eventProps: eventProps,\n onVisibleChanged: function onVisibleChanged(changedVisible) {\n _onVisibleChanged === null || _onVisibleChanged === void 0 ? void 0 : _onVisibleChanged(changedVisible, {\n key: eventProps.key\n });\n if (!changedVisible) {\n var restKeysCount = _this2.removeKey(eventProps.key);\n if (restKeysCount === 0 && onAllRemoved) {\n onAllRemoved();\n }\n }\n }\n }), function (props, ref) {\n return children(_objectSpread(_objectSpread({}, props), {}, {\n index: index\n }), ref);\n });\n }));\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(_ref3, _ref4) {\n var keys = _ref3.keys;\n var keyEntities = _ref4.keyEntities;\n var parsedKeyObjects = parseKeys(keys);\n var mixedKeyEntities = diffKeys(keyEntities, parsedKeyObjects);\n return {\n keyEntities: mixedKeyEntities.filter(function (entity) {\n var prevEntity = keyEntities.find(function (_ref5) {\n var key = _ref5.key;\n return entity.key === key;\n });\n\n // Remove if already mark as removed\n if (prevEntity && prevEntity.status === STATUS_REMOVED && entity.status === STATUS_REMOVE) {\n return false;\n }\n return true;\n })\n };\n }\n }]);\n return CSSMotionList;\n }(React.Component);\n _defineProperty(CSSMotionList, \"defaultProps\", {\n component: 'div'\n });\n return CSSMotionList;\n}\nexport default genCSSMotionList(supportTransition);","import CSSMotion from \"./CSSMotion\";\nimport CSSMotionList from \"./CSSMotionList\";\nexport { default as Provider } from \"./context\";\nexport { CSSMotionList };\nexport default CSSMotion;","import classNames from 'classnames';\nimport * as React from 'react';\nexport default function Popup(props) {\n var children = props.children,\n prefixCls = props.prefixCls,\n id = props.id,\n overlayInnerStyle = props.overlayInnerStyle,\n className = props.className,\n style = props.style;\n return /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(\"\".concat(prefixCls, \"-content\"), className),\n style: style\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-inner\"),\n id: id,\n role: \"tooltip\",\n style: overlayInnerStyle\n }, typeof children === 'function' ? children() : children));\n}","var autoAdjustOverflowTopBottom = {\n shiftX: 64,\n adjustY: 1\n};\nvar autoAdjustOverflowLeftRight = {\n adjustX: 1,\n shiftY: true\n};\nvar targetOffset = [0, 0];\nexport var placements = {\n left: {\n points: ['cr', 'cl'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [-4, 0],\n targetOffset: targetOffset\n },\n right: {\n points: ['cl', 'cr'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [4, 0],\n targetOffset: targetOffset\n },\n top: {\n points: ['bc', 'tc'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n bottom: {\n points: ['tc', 'bc'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, 4],\n targetOffset: targetOffset\n },\n topLeft: {\n points: ['bl', 'tl'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n leftTop: {\n points: ['tr', 'tl'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [-4, 0],\n targetOffset: targetOffset\n },\n topRight: {\n points: ['br', 'tr'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n rightTop: {\n points: ['tl', 'tr'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [4, 0],\n targetOffset: targetOffset\n },\n bottomRight: {\n points: ['tr', 'br'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, 4],\n targetOffset: targetOffset\n },\n rightBottom: {\n points: ['bl', 'br'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [4, 0],\n targetOffset: targetOffset\n },\n bottomLeft: {\n points: ['tl', 'bl'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, 4],\n targetOffset: targetOffset\n },\n leftBottom: {\n points: ['br', 'bl'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [-4, 0],\n targetOffset: targetOffset\n }\n};\nexport default placements;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"overlayClassName\", \"trigger\", \"mouseEnterDelay\", \"mouseLeaveDelay\", \"overlayStyle\", \"prefixCls\", \"children\", \"onVisibleChange\", \"afterVisibleChange\", \"transitionName\", \"animation\", \"motion\", \"placement\", \"align\", \"destroyTooltipOnHide\", \"defaultVisible\", \"getTooltipContainer\", \"overlayInnerStyle\", \"arrowContent\", \"overlay\", \"id\", \"showArrow\"];\nimport Trigger from '@rc-component/trigger';\nimport * as React from 'react';\nimport { forwardRef, useImperativeHandle, useRef } from 'react';\nimport { placements } from \"./placements\";\nimport Popup from \"./Popup\";\nvar Tooltip = function Tooltip(props, ref) {\n var overlayClassName = props.overlayClassName,\n _props$trigger = props.trigger,\n trigger = _props$trigger === void 0 ? ['hover'] : _props$trigger,\n _props$mouseEnterDela = props.mouseEnterDelay,\n mouseEnterDelay = _props$mouseEnterDela === void 0 ? 0 : _props$mouseEnterDela,\n _props$mouseLeaveDela = props.mouseLeaveDelay,\n mouseLeaveDelay = _props$mouseLeaveDela === void 0 ? 0.1 : _props$mouseLeaveDela,\n overlayStyle = props.overlayStyle,\n _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-tooltip' : _props$prefixCls,\n children = props.children,\n onVisibleChange = props.onVisibleChange,\n afterVisibleChange = props.afterVisibleChange,\n transitionName = props.transitionName,\n animation = props.animation,\n motion = props.motion,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'right' : _props$placement,\n _props$align = props.align,\n align = _props$align === void 0 ? {} : _props$align,\n _props$destroyTooltip = props.destroyTooltipOnHide,\n destroyTooltipOnHide = _props$destroyTooltip === void 0 ? false : _props$destroyTooltip,\n defaultVisible = props.defaultVisible,\n getTooltipContainer = props.getTooltipContainer,\n overlayInnerStyle = props.overlayInnerStyle,\n arrowContent = props.arrowContent,\n overlay = props.overlay,\n id = props.id,\n _props$showArrow = props.showArrow,\n showArrow = _props$showArrow === void 0 ? true : _props$showArrow,\n restProps = _objectWithoutProperties(props, _excluded);\n var triggerRef = useRef(null);\n useImperativeHandle(ref, function () {\n return triggerRef.current;\n });\n var extraProps = _objectSpread({}, restProps);\n if ('visible' in props) {\n extraProps.popupVisible = props.visible;\n }\n var getPopupElement = function getPopupElement() {\n return /*#__PURE__*/React.createElement(Popup, {\n key: \"content\",\n prefixCls: prefixCls,\n id: id,\n overlayInnerStyle: overlayInnerStyle\n }, overlay);\n };\n return /*#__PURE__*/React.createElement(Trigger, _extends({\n popupClassName: overlayClassName,\n prefixCls: prefixCls,\n popup: getPopupElement,\n action: trigger,\n builtinPlacements: placements,\n popupPlacement: placement,\n ref: triggerRef,\n popupAlign: align,\n getPopupContainer: getTooltipContainer,\n onPopupVisibleChange: onVisibleChange,\n afterPopupVisibleChange: afterVisibleChange,\n popupTransitionName: transitionName,\n popupAnimation: animation,\n popupMotion: motion,\n defaultPopupVisible: defaultVisible,\n autoDestroy: destroyTooltipOnHide,\n mouseLeaveDelay: mouseLeaveDelay,\n popupStyle: overlayStyle,\n mouseEnterDelay: mouseEnterDelay,\n arrow: showArrow\n }, extraProps), children);\n};\nexport default /*#__PURE__*/forwardRef(Tooltip);","import Popup from \"./Popup\";\nimport Tooltip from \"./Tooltip\";\nexport { Popup };\nexport default Tooltip;","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});","/**\n * @ignore\n * some key-codes definition and utils from closure-library\n * @author yiminghe@gmail.com\n */\n\nvar KeyCode = {\n /**\n * MAC_ENTER\n */\n MAC_ENTER: 3,\n /**\n * BACKSPACE\n */\n BACKSPACE: 8,\n /**\n * TAB\n */\n TAB: 9,\n /**\n * NUMLOCK on FF/Safari Mac\n */\n NUM_CENTER: 12,\n // NUMLOCK on FF/Safari Mac\n /**\n * ENTER\n */\n ENTER: 13,\n /**\n * SHIFT\n */\n SHIFT: 16,\n /**\n * CTRL\n */\n CTRL: 17,\n /**\n * ALT\n */\n ALT: 18,\n /**\n * PAUSE\n */\n PAUSE: 19,\n /**\n * CAPS_LOCK\n */\n CAPS_LOCK: 20,\n /**\n * ESC\n */\n ESC: 27,\n /**\n * SPACE\n */\n SPACE: 32,\n /**\n * PAGE_UP\n */\n PAGE_UP: 33,\n // also NUM_NORTH_EAST\n /**\n * PAGE_DOWN\n */\n PAGE_DOWN: 34,\n // also NUM_SOUTH_EAST\n /**\n * END\n */\n END: 35,\n // also NUM_SOUTH_WEST\n /**\n * HOME\n */\n HOME: 36,\n // also NUM_NORTH_WEST\n /**\n * LEFT\n */\n LEFT: 37,\n // also NUM_WEST\n /**\n * UP\n */\n UP: 38,\n // also NUM_NORTH\n /**\n * RIGHT\n */\n RIGHT: 39,\n // also NUM_EAST\n /**\n * DOWN\n */\n DOWN: 40,\n // also NUM_SOUTH\n /**\n * PRINT_SCREEN\n */\n PRINT_SCREEN: 44,\n /**\n * INSERT\n */\n INSERT: 45,\n // also NUM_INSERT\n /**\n * DELETE\n */\n DELETE: 46,\n // also NUM_DELETE\n /**\n * ZERO\n */\n ZERO: 48,\n /**\n * ONE\n */\n ONE: 49,\n /**\n * TWO\n */\n TWO: 50,\n /**\n * THREE\n */\n THREE: 51,\n /**\n * FOUR\n */\n FOUR: 52,\n /**\n * FIVE\n */\n FIVE: 53,\n /**\n * SIX\n */\n SIX: 54,\n /**\n * SEVEN\n */\n SEVEN: 55,\n /**\n * EIGHT\n */\n EIGHT: 56,\n /**\n * NINE\n */\n NINE: 57,\n /**\n * QUESTION_MARK\n */\n QUESTION_MARK: 63,\n // needs localization\n /**\n * A\n */\n A: 65,\n /**\n * B\n */\n B: 66,\n /**\n * C\n */\n C: 67,\n /**\n * D\n */\n D: 68,\n /**\n * E\n */\n E: 69,\n /**\n * F\n */\n F: 70,\n /**\n * G\n */\n G: 71,\n /**\n * H\n */\n H: 72,\n /**\n * I\n */\n I: 73,\n /**\n * J\n */\n J: 74,\n /**\n * K\n */\n K: 75,\n /**\n * L\n */\n L: 76,\n /**\n * M\n */\n M: 77,\n /**\n * N\n */\n N: 78,\n /**\n * O\n */\n O: 79,\n /**\n * P\n */\n P: 80,\n /**\n * Q\n */\n Q: 81,\n /**\n * R\n */\n R: 82,\n /**\n * S\n */\n S: 83,\n /**\n * T\n */\n T: 84,\n /**\n * U\n */\n U: 85,\n /**\n * V\n */\n V: 86,\n /**\n * W\n */\n W: 87,\n /**\n * X\n */\n X: 88,\n /**\n * Y\n */\n Y: 89,\n /**\n * Z\n */\n Z: 90,\n /**\n * META\n */\n META: 91,\n // WIN_KEY_LEFT\n /**\n * WIN_KEY_RIGHT\n */\n WIN_KEY_RIGHT: 92,\n /**\n * CONTEXT_MENU\n */\n CONTEXT_MENU: 93,\n /**\n * NUM_ZERO\n */\n NUM_ZERO: 96,\n /**\n * NUM_ONE\n */\n NUM_ONE: 97,\n /**\n * NUM_TWO\n */\n NUM_TWO: 98,\n /**\n * NUM_THREE\n */\n NUM_THREE: 99,\n /**\n * NUM_FOUR\n */\n NUM_FOUR: 100,\n /**\n * NUM_FIVE\n */\n NUM_FIVE: 101,\n /**\n * NUM_SIX\n */\n NUM_SIX: 102,\n /**\n * NUM_SEVEN\n */\n NUM_SEVEN: 103,\n /**\n * NUM_EIGHT\n */\n NUM_EIGHT: 104,\n /**\n * NUM_NINE\n */\n NUM_NINE: 105,\n /**\n * NUM_MULTIPLY\n */\n NUM_MULTIPLY: 106,\n /**\n * NUM_PLUS\n */\n NUM_PLUS: 107,\n /**\n * NUM_MINUS\n */\n NUM_MINUS: 109,\n /**\n * NUM_PERIOD\n */\n NUM_PERIOD: 110,\n /**\n * NUM_DIVISION\n */\n NUM_DIVISION: 111,\n /**\n * F1\n */\n F1: 112,\n /**\n * F2\n */\n F2: 113,\n /**\n * F3\n */\n F3: 114,\n /**\n * F4\n */\n F4: 115,\n /**\n * F5\n */\n F5: 116,\n /**\n * F6\n */\n F6: 117,\n /**\n * F7\n */\n F7: 118,\n /**\n * F8\n */\n F8: 119,\n /**\n * F9\n */\n F9: 120,\n /**\n * F10\n */\n F10: 121,\n /**\n * F11\n */\n F11: 122,\n /**\n * F12\n */\n F12: 123,\n /**\n * NUMLOCK\n */\n NUMLOCK: 144,\n /**\n * SEMICOLON\n */\n SEMICOLON: 186,\n // needs localization\n /**\n * DASH\n */\n DASH: 189,\n // needs localization\n /**\n * EQUALS\n */\n EQUALS: 187,\n // needs localization\n /**\n * COMMA\n */\n COMMA: 188,\n // needs localization\n /**\n * PERIOD\n */\n PERIOD: 190,\n // needs localization\n /**\n * SLASH\n */\n SLASH: 191,\n // needs localization\n /**\n * APOSTROPHE\n */\n APOSTROPHE: 192,\n // needs localization\n /**\n * SINGLE_QUOTE\n */\n SINGLE_QUOTE: 222,\n // needs localization\n /**\n * OPEN_SQUARE_BRACKET\n */\n OPEN_SQUARE_BRACKET: 219,\n // needs localization\n /**\n * BACKSLASH\n */\n BACKSLASH: 220,\n // needs localization\n /**\n * CLOSE_SQUARE_BRACKET\n */\n CLOSE_SQUARE_BRACKET: 221,\n // needs localization\n /**\n * WIN_KEY\n */\n WIN_KEY: 224,\n /**\n * MAC_FF_META\n */\n MAC_FF_META: 224,\n // Firefox (Gecko) fires this for the meta key instead of 91\n /**\n * WIN_IME\n */\n WIN_IME: 229,\n // ======================== Function ========================\n /**\n * whether text and modified key is entered at the same time.\n */\n isTextModifyingKeyEvent: function isTextModifyingKeyEvent(e) {\n var keyCode = e.keyCode;\n if (e.altKey && !e.ctrlKey || e.metaKey ||\n // Function keys don't generate text\n keyCode >= KeyCode.F1 && keyCode <= KeyCode.F12) {\n return false;\n }\n\n // The following keys are quite harmless, even in combination with\n // CTRL, ALT or SHIFT.\n switch (keyCode) {\n case KeyCode.ALT:\n case KeyCode.CAPS_LOCK:\n case KeyCode.CONTEXT_MENU:\n case KeyCode.CTRL:\n case KeyCode.DOWN:\n case KeyCode.END:\n case KeyCode.ESC:\n case KeyCode.HOME:\n case KeyCode.INSERT:\n case KeyCode.LEFT:\n case KeyCode.MAC_FF_META:\n case KeyCode.META:\n case KeyCode.NUMLOCK:\n case KeyCode.NUM_CENTER:\n case KeyCode.PAGE_DOWN:\n case KeyCode.PAGE_UP:\n case KeyCode.PAUSE:\n case KeyCode.PRINT_SCREEN:\n case KeyCode.RIGHT:\n case KeyCode.SHIFT:\n case KeyCode.UP:\n case KeyCode.WIN_KEY:\n case KeyCode.WIN_KEY_RIGHT:\n return false;\n default:\n return true;\n }\n },\n /**\n * whether character is entered.\n */\n isCharacterKey: function isCharacterKey(keyCode) {\n if (keyCode >= KeyCode.ZERO && keyCode <= KeyCode.NINE) {\n return true;\n }\n if (keyCode >= KeyCode.NUM_ZERO && keyCode <= KeyCode.NUM_MULTIPLY) {\n return true;\n }\n if (keyCode >= KeyCode.A && keyCode <= KeyCode.Z) {\n return true;\n }\n\n // Safari sends zero key code for non-latin characters.\n if (window.navigator.userAgent.indexOf('WebKit') !== -1 && keyCode === 0) {\n return true;\n }\n switch (keyCode) {\n case KeyCode.SPACE:\n case KeyCode.QUESTION_MARK:\n case KeyCode.NUM_PLUS:\n case KeyCode.NUM_MINUS:\n case KeyCode.NUM_PERIOD:\n case KeyCode.NUM_DIVISION:\n case KeyCode.SEMICOLON:\n case KeyCode.DASH:\n case KeyCode.EQUALS:\n case KeyCode.COMMA:\n case KeyCode.PERIOD:\n case KeyCode.SLASH:\n case KeyCode.APOSTROPHE:\n case KeyCode.SINGLE_QUOTE:\n case KeyCode.OPEN_SQUARE_BRACKET:\n case KeyCode.BACKSLASH:\n case KeyCode.CLOSE_SQUARE_BRACKET:\n return true;\n default:\n return false;\n }\n }\n};\nexport default KeyCode;","/* eslint-disable no-param-reassign */\n\nvar cached;\nexport default function getScrollBarSize(fresh) {\n if (typeof document === 'undefined') {\n return 0;\n }\n if (fresh || cached === undefined) {\n var inner = document.createElement('div');\n inner.style.width = '100%';\n inner.style.height = '200px';\n var outer = document.createElement('div');\n var outerStyle = outer.style;\n outerStyle.position = 'absolute';\n outerStyle.top = '0';\n outerStyle.left = '0';\n outerStyle.pointerEvents = 'none';\n outerStyle.visibility = 'hidden';\n outerStyle.width = '200px';\n outerStyle.height = '150px';\n outerStyle.overflow = 'hidden';\n outer.appendChild(inner);\n document.body.appendChild(outer);\n var widthContained = inner.offsetWidth;\n outer.style.overflow = 'scroll';\n var widthScroll = inner.offsetWidth;\n if (widthContained === widthScroll) {\n widthScroll = outer.clientWidth;\n }\n document.body.removeChild(outer);\n cached = widthContained - widthScroll;\n }\n return cached;\n}\nfunction ensureSize(str) {\n var match = str.match(/^(.*)px$/);\n var value = Number(match === null || match === void 0 ? void 0 : match[1]);\n return Number.isNaN(value) ? getScrollBarSize() : value;\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 var _getComputedStyle = getComputedStyle(target, '::-webkit-scrollbar'),\n width = _getComputedStyle.width,\n height = _getComputedStyle.height;\n return {\n width: ensureSize(width),\n height: ensureSize(height)\n };\n}","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};","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});","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nvar attributes = \"accept acceptCharset accessKey action allowFullScreen allowTransparency\\n alt async autoComplete autoFocus autoPlay capture cellPadding cellSpacing challenge\\n charSet checked classID className colSpan cols content contentEditable contextMenu\\n controls coords crossOrigin data dateTime default defer dir disabled download draggable\\n encType form formAction formEncType formMethod formNoValidate formTarget frameBorder\\n headers height hidden high href hrefLang htmlFor httpEquiv icon id inputMode integrity\\n is keyParams keyType kind label lang list loop low manifest marginHeight marginWidth max maxLength media\\n mediaGroup method min minLength multiple muted name noValidate nonce open\\n optimum pattern placeholder poster preload radioGroup readOnly rel required\\n reversed role rowSpan rows sandbox scope scoped scrolling seamless selected\\n shape size sizes span spellCheck src srcDoc srcLang srcSet start step style\\n summary tabIndex target title type useMap value width wmode wrap\";\nvar eventsName = \"onCopy onCut onPaste onCompositionEnd onCompositionStart onCompositionUpdate onKeyDown\\n onKeyPress onKeyUp onFocus onBlur onChange onInput onSubmit onClick onContextMenu onDoubleClick\\n onDrag onDragEnd onDragEnter onDragExit onDragLeave onDragOver onDragStart onDrop onMouseDown\\n onMouseEnter onMouseLeave onMouseMove onMouseOut onMouseOver onMouseUp onSelect onTouchCancel\\n onTouchEnd onTouchMove onTouchStart onScroll onWheel onAbort onCanPlay onCanPlayThrough\\n onDurationChange onEmptied onEncrypted onEnded onError onLoadedData onLoadedMetadata\\n onLoadStart onPause onPlay onPlaying onProgress onRateChange onSeeked onSeeking onStalled onSuspend onTimeUpdate onVolumeChange onWaiting onLoad onError\";\nvar propList = \"\".concat(attributes, \" \").concat(eventsName).split(/[\\s\\n]+/);\n\n/* eslint-enable max-len */\nvar ariaPrefix = 'aria-';\nvar dataPrefix = 'data-';\nfunction match(key, prefix) {\n return key.indexOf(prefix) === 0;\n}\n/**\n * Picker props from exist props with filter\n * @param props Passed props\n * @param ariaOnly boolean | { aria?: boolean; data?: boolean; attr?: boolean; } filter config\n */\nexport default function pickAttrs(props) {\n var ariaOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var mergedConfig;\n if (ariaOnly === false) {\n mergedConfig = {\n aria: true,\n data: true,\n attr: true\n };\n } else if (ariaOnly === true) {\n mergedConfig = {\n aria: true\n };\n } else {\n mergedConfig = _objectSpread({}, ariaOnly);\n }\n var attrs = {};\n Object.keys(props).forEach(function (key) {\n if (\n // Aria\n mergedConfig.aria && (key === 'role' || match(key, ariaPrefix)) ||\n // Data\n mergedConfig.data && match(key, dataPrefix) ||\n // Attr\n mergedConfig.attr && propList.includes(key)) {\n attrs[key] = props[key];\n }\n });\n return attrs;\n}"],"names":["EMPTY_LIST","UNIQUE_ID","concat","Date","now","uuid","useScrollLocker","lock","mergedLock","_React$useState","id","useLayoutEffect","scrollbarSize","document","body","width","isOverflow","scrollHeight","window","innerHeight","documentElement","clientHeight","innerWidth","offsetWidth","inline","getPortalContainer","getContainer","canUseDom","querySelector","props","ref","open","autoLock","_props$autoDestroy","debug","autoDestroy","children","_React$useState2","shouldRender","setShouldRender","mergedRender","_React$useState3","_React$useState4","innerContainer","setInnerContainer","customizeContainer","_useDom","render","createElement","ele","appendedRef","queueCreate","queue","setQueue","mergedQueueCreate","current","undefined","appendFn","origin","append","parentElement","appendChild","cleanup","_ele$parentElement","removeChild","length","forEach","useDom","_useDom2","defaultContainer","mergedContainer","childRef","mergedRef","nextInline","renderInline","reffedChildren","Provider","value","createPortal","getRoot","_ele$getRootNode","getRootNode","call","getShadowRoot","ShadowRoot","inShadow","Arrow","prefixCls","align","arrow","arrowPos","_ref","className","content","_arrowPos$x","x","_arrowPos$y","y","arrowRef","points","alignStyle","position","autoArrow","popupPoints","targetPoints","popupTB","popupLR","targetTB","targetLR","includes","top","bottom","left","right","style","Mask","zIndex","mask","motion","motionAppear","visible","removeOnLeave","_","next","cache","popup","target","_onVisibleChanged","onVisibleChanged","keepDom","fresh","onClick","maskMotion","forceRender","getPopupContainer","Portal","portal","onMouseEnter","onMouseLeave","onPointerEnter","ready","offsetX","offsetY","offsetR","offsetB","onAlign","onPrepare","stretch","targetWidth","targetHeight","childNode","isNodeVisible","getPopupContainerNeedParams","show","setShow","AUTO","offsetStyle","_experimental","dynamicInset","alignRight","alignBottom","miscStyle","height","minHeight","minWidth","pointerEvents","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","arguments","a2","getMotion","animation","transitionName","motionName","getWin","ownerDocument","defaultView","collectScroller","scrollerList","scrollStyle","_getWin$getComputedSt","getComputedStyle","overflowX","overflowY","overflow","some","o","push","toNum","num","defaultValue","Number","isNaN","getPxValue","parseFloat","getVisibleArea","initArea","visibleArea","HTMLBodyElement","HTMLHtmlElement","_getWin$getComputedSt2","overflowClipMargin","borderTopWidth","borderBottomWidth","borderLeftWidth","borderRightWidth","eleRect","getBoundingClientRect","eleOutHeight","offsetHeight","eleInnerHeight","eleOutWidth","eleInnerWidth","clientWidth","borderTopNum","borderBottomNum","borderLeftNum","borderRightNum","scaleX","Math","round","scaleY","eleScrollWidth","eleScrollHeight","scaledBorderTopWidth","scaledBorderBottomWidth","scaledBorderLeftWidth","scaledBorderRightWidth","clipMarginWidth","clipMarginHeight","clipNum","eleLeft","eleTop","eleRight","eleBottom","max","min","getUnitOffset","size","offsetStr","cells","match","getNumberOffset","rect","offset","_ref2","splitPoints","getAlignPoint","topBottom","leftRight","reversePoints","index","reverseMap","t","b","l","r","map","point","i","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","restProps","mergedAutoDestroy","mobile","setMobile","isMobile","subPopupElements","parentContext","context","registerSubPopup","subPopupEle","useId","popupEle","setPopupEle","externalPopupRef","setPopupRef","useEvent","_React$useState5","_React$useState6","targetEle","setTargetEle","externalForwardRef","setTargetRef","child","only","originChildProps","cloneProps","inPopupOrChild","_getShadowRoot","_getShadowRoot2","childDOM","contains","host","Object","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","_popupElement$parentE2","targetRect","popupElement","doc","_win$getComputedStyle","popupPosition","originLeft","originTop","originRight","originBottom","originOverflow","placementInfo","placeholderElement","offsetLeft","offsetTop","popupRect","_doc$documentElement","scrollWidth","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","onScroll","targetScrollList","popupScrollList","win","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","onTriggerClose","targetShadowRoot","useWinClick","onPopupMouseEnter","onPopupMouseLeave","hoverToShow","hoverToHide","onMouseMove","_originChildProps$onM","onContextMenu","_originChildProps$onC2","preventDefault","_len3","_key3","mergedChildrenProps","passedProps","_mergedChildrenProps$","_len4","_key4","triggerNode","innerArrow","withPureRenderTheme","Component","theme","token","zIndexPopupBase","assign","defaultPrefixCls","getDropdownCls","postProps","customizePrefixCls","holderRef","setPopupHeight","setPopupWidth","setOpen","getPrefixCls","ResizeObserver","resizeObserver","entries","element","interval","setInterval","_a","dropdownCls","clearInterval","observe","disconnect","mergedProps","margin","mergedStyle","paddingBottom","inverseColors","color","PresetStatusColorTypes","isPresetColor","isPresetStatusColor","CONTAINER_OFFSET","CONTAINER_MAX_OFFSET","containerBaseZIndexOffset","Modal","Drawer","Popover","Popconfirm","Tooltip","Tour","consumerBaseZIndexOffset","SelectLike","Dropdown","DatePicker","Menu","ImagePreview","useZIndex","componentType","customZIndex","parentZIndex","isContainer","result","getCollapsedHeight","opacity","getRealHeight","getCurrentHeight","skipOpacityTransition","deadline","propertyName","getTransitionName","rootPrefixCls","onAppearStart","onEnterStart","onAppearActive","onEnterActive","onLeaveStart","onLeaveActive","onAppearEnd","onEnterEnd","onLeaveEnd","motionDeadline","PlacementAlignMap","topLeft","leftTop","topRight","rightTop","bottomRight","rightBottom","bottomLeft","leftBottom","ArrowCenterPlacementAlignMap","DisableAutoArrowList","getPlacements","config","arrowWidth","autoAdjustOverflow","arrowPointAtCenter","borderRadius","visibleFirst","halfArrowWidth","placementMap","key","template","arrowOffset","contentRadius","limitVerticalRadius","arrowOffsetHorizontal","baseOverflow","arrowOffsetVertical","mergedOverflow","getOverflowOptions","responsiveArray","getResponsiveMap","xs","screenXSMax","sm","screenSM","md","screenMD","lg","screenLG","xl","screenXL","xxl","screenXXL","validateBreakpoints","indexableToken","revBreakpoints","reverse","breakpoint","breakpointUpper","toUpperCase","screenMin","screen","Error","screenMax","nextScreenMin","useResponsiveObserver","responsiveMap","subscribers","Map","subUid","screens","matchHandlers","dispatch","pointMap","func","subscribe","this","register","set","unsubscribe","paramToken","unregister","matchMediaQuery","handler","mql","removeListener","listener","clear","matches","matchMedia","addListener","componentName","defaultLocale","fullLocale","locale","localeFromContext","localeCode","exist","componentCls","antCls","transition","motionDurationMid","motionEaseInOut","initMotionCommon","duration","animationDuration","animationFillMode","initMotionCommonLeave","initMotion","motionCls","inKeyframes","outKeyframes","sameLevelPrefix","animationPlayState","animationName","zoomIn","transform","zoomOut","zoomBigIn","zoomBigOut","zoomUpIn","transformOrigin","zoomUpOut","zoomLeftIn","zoomLeftOut","zoomRightIn","zoomRightOut","zoomDownIn","zoomDownOut","zoomMotion","zoom","initZoomMotion","motionDurationFast","animationTimingFunction","motionEaseOutCirc","motionEaseInOutCirc","MAX_VERTICAL_CONTENT_RADIUS","getArrowOffsetToken","options","isInject","valid","code","getArrowStyle","colorBg","boxShadowPopoverArrow","arrowDistance","arrowPlacement","display","background","_skip_check_","getArrowToken","sizePopupArrow","borderRadiusXS","borderRadiusOuter","unitWidth","ay","bx","sqrt","by","cx","cy","dx","dy","ex","ey","fx","fy","shadowWidth","polygonOffset","arrowShadowWidth","arrowPath","arrowPolygon","genRoundedArrow","bgColor","boxShadow","calc","insetInlineStart","div","equal","clipPath","_multi_value_","insetInline","PresetColors","genPresetColor","genCss","reduce","prev","colorKey","lightColor","lightBorderColor","darkColor","textColor","genTooltipStyle","tooltipMaxWidth","tooltipColor","tooltipBg","tooltipBorderRadius","zIndexPopup","controlHeight","boxShadowSecondary","paddingSM","paddingXS","maxWidth","visibility","padding","textAlign","textDecoration","wordWrap","backgroundColor","direction","prepareComponentToken","injectStyle","colorTextLightSolid","colorBgSpotlight","TooltipToken","resetStyle","useStyle","parseColor","isInternalColor","overlayStyle","arrowStyle","title","overlayInnerStyle","wrapCSSVar","hashId","cssVarCls","colorInfo","arrowContentStyle","formattedOverlayInnerStyle","__rest","s","e","p","prototype","hasOwnProperty","indexOf","getOwnPropertySymbols","propertyIsEnumerable","_b","openClassName","getTooltipContainer","overlayClassName","afterOpenChange","afterVisibleChange","destroyTooltipOnHide","overlay","mergedShowArrow","useToken","getContextPopupContainer","warning","tooltipRef","forcePopupAlign","deprecated","useMergedState","defaultOpen","defaultVisible","noTitle","tooltipPlacements","mergedArrowPointAtCenter","pointAtCenter","marginXXS","memoOverlay","memoOverlayWrapper","ContextIsolator","space","rootClassName","otherProps","injectFromPopover","tempOpen","childProps","childCls","customOverlayClassName","contextZIndex","showArrow","onVisibleChange","vis","onOpenChange","arrowContent","_InternalPanelDoNotUseOrYouWillBeFired","AntdIcon","A","icon","Context","_React$Component","DomWrapper","_super","STATUS_NONE","STATUS_APPEAR","STATUS_ENTER","STATUS_LEAVE","STEP_NONE","STEP_PREPARE","STEP_START","STEP_ACTIVE","STEP_ACTIVATED","STEP_PREPARED","makePrefixMap","styleProp","prefixes","toLowerCase","domSupport","vendorPrefixes","animationend","transitionend","_document$createEleme","prefixedEventNames","getVendorPrefixedEventName","prefixMap","stylePropList","len","internalAnimationEndName","internalTransitionEndName","supportTransition","animationEndName","transitionEndName","transitionType","replace","callback","cacheElementRef","useRef","callbackRef","onInternalMotionEnd","removeMotionEvents","useEffect","FULL_STEP_QUEUE","SIMPLE_STEP_QUEUE","SkipStep","DoStep","isActive","step","status","prepareOnly","_useState","useState","_useState2","setStep","_useNextFrame","nextFrameRef","cancelNextFrame","raf","cancel","nextFrame","nextFrameId","isCanceled","useNextFrame","_useNextFrame2","STEP_QUEUE","nextStep","info","doNext","transitionSupport","CSSMotion","_props$visible","_props$removeOnLeave","eventProps","supportMotion","contextMotion","isSupportTransition","nodeRef","wrapperNodeRef","_useStatus","getElement","_ref$motionEnter","_ref$motionAppear","_ref$motionLeave","motionLeaveImmediately","onLeavePrepare","asyncVisible","setAsyncVisible","_useState3","_useState4","setStatus","_useState5","_useState6","setStyle","mountedRef","deadlineRef","getDomElement","activeRef","updateMotionEndStatus","canEnd","currentActive","_useDomMotionEvents","useDomMotionEvents","patchMotionEvents","getEventHandlers","targetStatus","eventHandlers","_useStepQueue","useStepQueue","newStep","_eventHandlers$step","_useStepQueue2","startStep","active","nextStatus","isMounted","nextEventHandlers","firstMountChangeRef","useStatus","HTMLElement","findDOMNode","_useStatus2","statusStep","statusStyle","mergedVisible","renderedRef","motionChildren","setNodeRef","_classNames","statusSuffix","displayName","STATUS_ADD","STATUS_KEEP","STATUS_REMOVE","STATUS_REMOVED","wrapKeyToObject","keyObj","String","parseKeys","_excluded2","MOTION_PROP_NAMES","CSSMotionList","_this","keyEntities","removeKey","nextKeyEntities","state","entity","setState","filter","_this2","_this$props","component","onAllRemoved","motionProps","prop","changedVisible","parsedKeyObjects","mixedKeyEntities","prevKeys","currentKeys","list","currentIndex","currentLen","prevKeyObjects","currentKeyObjects","hit","currentKeyObj","slice","obj","matchKey","diffKeys","prevEntity","find","_ref5","Popup","role","autoAdjustOverflowTopBottom","autoAdjustOverflowLeftRight","_props$trigger","trigger","_props$mouseEnterDela","_props$placement","_props$align","_props$destroyTooltip","_props$showArrow","triggerRef","useImperativeHandle","extraProps","forwardRef","Element","offsetParent","getBBox","_getBBox","_element$getBoundingC","_width","_height","KeyCode","MAC_ENTER","BACKSPACE","TAB","NUM_CENTER","ENTER","SHIFT","CTRL","ALT","PAUSE","CAPS_LOCK","ESC","SPACE","PAGE_UP","PAGE_DOWN","END","HOME","LEFT","UP","RIGHT","DOWN","PRINT_SCREEN","INSERT","DELETE","ZERO","ONE","TWO","THREE","FOUR","FIVE","SIX","SEVEN","EIGHT","NINE","QUESTION_MARK","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","META","WIN_KEY_RIGHT","CONTEXT_MENU","NUM_ZERO","NUM_ONE","NUM_TWO","NUM_THREE","NUM_FOUR","NUM_FIVE","NUM_SIX","NUM_SEVEN","NUM_EIGHT","NUM_NINE","NUM_MULTIPLY","NUM_PLUS","NUM_MINUS","NUM_PERIOD","NUM_DIVISION","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","NUMLOCK","SEMICOLON","DASH","EQUALS","COMMA","PERIOD","SLASH","APOSTROPHE","SINGLE_QUOTE","OPEN_SQUARE_BRACKET","BACKSLASH","CLOSE_SQUARE_BRACKET","WIN_KEY","MAC_FF_META","WIN_IME","isTextModifyingKeyEvent","keyCode","altKey","ctrlKey","metaKey","isCharacterKey","navigator","userAgent","cached","getScrollBarSize","inner","outer","outerStyle","widthContained","widthScroll","ensureSize","str","getTargetScrollBarSize","_getComputedStyle","useOriginId","reactId","innerId","setInnerId","nextId","agent","vendor","opera","test","substr","propList","split","ariaPrefix","dataPrefix","prefix","pickAttrs","mergedConfig","ariaOnly","aria","data","attr","attrs"],"sourceRoot":""}