{"version":3,"file":"a3b36e8d27999a72a2b4.bundle.js","mappings":"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","sources":["webpack://spartner/./node_modules/rc-menu/es/context/IdContext.js","webpack://spartner/./node_modules/rc-menu/es/context/MenuContext.js","webpack://spartner/./node_modules/rc-menu/es/context/PathContext.js","webpack://spartner/./node_modules/rc-menu/es/context/PrivateContext.js","webpack://spartner/./node_modules/rc-menu/es/hooks/useAccessibility.js","webpack://spartner/./node_modules/rc-menu/es/hooks/useKeyRecords.js","webpack://spartner/./node_modules/rc-menu/es/hooks/useMemoCallback.js","webpack://spartner/./node_modules/rc-menu/es/hooks/useUUID.js","webpack://spartner/./node_modules/rc-menu/es/hooks/useActive.js","webpack://spartner/./node_modules/rc-menu/es/hooks/useDirectionStyle.js","webpack://spartner/./node_modules/rc-menu/es/Icon.js","webpack://spartner/./node_modules/rc-menu/es/utils/warnUtil.js","webpack://spartner/./node_modules/rc-menu/es/MenuItem.js","webpack://spartner/./node_modules/rc-menu/es/SubMenu/SubMenuList.js","webpack://spartner/./node_modules/rc-menu/es/utils/commonUtil.js","webpack://spartner/./node_modules/rc-menu/es/placements.js","webpack://spartner/./node_modules/rc-menu/es/utils/motionUtil.js","webpack://spartner/./node_modules/rc-menu/es/SubMenu/PopupTrigger.js","webpack://spartner/./node_modules/rc-menu/es/SubMenu/InlineSubMenuList.js","webpack://spartner/./node_modules/rc-menu/es/SubMenu/index.js","webpack://spartner/./node_modules/rc-menu/es/MenuItemGroup.js","webpack://spartner/./node_modules/rc-menu/es/Divider.js","webpack://spartner/./node_modules/rc-menu/es/utils/nodeUtil.js","webpack://spartner/./node_modules/rc-menu/es/Menu.js","webpack://spartner/./node_modules/rc-menu/es/index.js","webpack://spartner/./node_modules/rc-menu/es/utils/timeUtil.js","webpack://spartner/./node_modules/rc-motion/node_modules/rc-util/es/Dom/canUseDom.js","webpack://spartner/./node_modules/rc-motion/es/util/motion.js","webpack://spartner/./node_modules/rc-motion/es/interface.js","webpack://spartner/./node_modules/rc-motion/node_modules/rc-util/es/hooks/useState.js","webpack://spartner/./node_modules/rc-motion/node_modules/rc-util/es/raf.js","webpack://spartner/./node_modules/rc-motion/es/hooks/useIsomorphicLayoutEffect.js","webpack://spartner/./node_modules/rc-motion/es/hooks/useStepQueue.js","webpack://spartner/./node_modules/rc-motion/es/hooks/useStatus.js","webpack://spartner/./node_modules/rc-motion/es/hooks/useDomMotionEvents.js","webpack://spartner/./node_modules/rc-motion/es/hooks/useNextFrame.js","webpack://spartner/./node_modules/rc-motion/es/DomWrapper.js","webpack://spartner/./node_modules/rc-motion/es/CSSMotion.js","webpack://spartner/./node_modules/rc-motion/node_modules/rc-util/es/Dom/findDOMNode.js","webpack://spartner/./node_modules/rc-motion/node_modules/rc-util/es/ref.js","webpack://spartner/./node_modules/rc-motion/es/util/diff.js","webpack://spartner/./node_modules/rc-motion/es/CSSMotionList.js","webpack://spartner/./node_modules/rc-motion/es/index.js","webpack://spartner/./node_modules/rc-notification/node_modules/rc-motion/es/context.js","webpack://spartner/./node_modules/rc-notification/node_modules/rc-motion/es/DomWrapper.js","webpack://spartner/./node_modules/rc-notification/node_modules/rc-motion/es/interface.js","webpack://spartner/./node_modules/rc-notification/node_modules/rc-motion/es/util/motion.js","webpack://spartner/./node_modules/rc-notification/node_modules/rc-motion/es/hooks/useIsomorphicLayoutEffect.js","webpack://spartner/./node_modules/rc-notification/node_modules/rc-motion/es/hooks/useStepQueue.js","webpack://spartner/./node_modules/rc-notification/node_modules/rc-motion/es/hooks/useStatus.js","webpack://spartner/./node_modules/rc-notification/node_modules/rc-motion/es/hooks/useDomMotionEvents.js","webpack://spartner/./node_modules/rc-notification/node_modules/rc-motion/es/hooks/useNextFrame.js","webpack://spartner/./node_modules/rc-notification/node_modules/rc-motion/es/CSSMotion.js","webpack://spartner/./node_modules/rc-notification/node_modules/rc-motion/es/util/diff.js","webpack://spartner/./node_modules/rc-notification/node_modules/rc-motion/es/CSSMotionList.js","webpack://spartner/./node_modules/rc-notification/es/Notice.js","webpack://spartner/./node_modules/rc-notification/es/NotificationProvider.js","webpack://spartner/./node_modules/rc-notification/es/NoticeList.js","webpack://spartner/./node_modules/rc-notification/es/hooks/useStack.js","webpack://spartner/./node_modules/rc-notification/es/Notifications.js","webpack://spartner/./node_modules/rc-notification/es/hooks/useNotification.js","webpack://spartner/./node_modules/rc-overflow/es/Item.js","webpack://spartner/./node_modules/rc-overflow/es/hooks/useEffectState.js","webpack://spartner/./node_modules/rc-overflow/es/context.js","webpack://spartner/./node_modules/rc-overflow/es/RawItem.js","webpack://spartner/./node_modules/rc-overflow/es/Overflow.js","webpack://spartner/./node_modules/rc-overflow/es/hooks/channelUpdate.js","webpack://spartner/./node_modules/rc-overflow/es/index.js"],"sourcesContent":["import * as React from 'react';\nexport var IdContext = /*#__PURE__*/React.createContext(null);\nexport function getMenuId(uuid, eventKey) {\n if (uuid === undefined) {\n return null;\n }\n return \"\".concat(uuid, \"-\").concat(eventKey);\n}\n\n/**\n * Get `data-menu-id`\n */\nexport function useMenuId(eventKey) {\n var id = React.useContext(IdContext);\n return getMenuId(id, eventKey);\n}","import _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nvar _excluded = [\"children\", \"locked\"];\nimport * as React from 'react';\nimport useMemo from \"rc-util/es/hooks/useMemo\";\nimport isEqual from \"rc-util/es/isEqual\";\nexport var MenuContext = /*#__PURE__*/React.createContext(null);\nfunction mergeProps(origin, target) {\n var clone = _objectSpread({}, origin);\n Object.keys(target).forEach(function (key) {\n var value = target[key];\n if (value !== undefined) {\n clone[key] = value;\n }\n });\n return clone;\n}\nexport default function InheritableContextProvider(_ref) {\n var children = _ref.children,\n locked = _ref.locked,\n restProps = _objectWithoutProperties(_ref, _excluded);\n var context = React.useContext(MenuContext);\n var inheritableContext = useMemo(function () {\n return mergeProps(context, restProps);\n }, [context, restProps], function (prev, next) {\n return !locked && (prev[0] !== next[0] || !isEqual(prev[1], next[1], true));\n });\n return /*#__PURE__*/React.createElement(MenuContext.Provider, {\n value: inheritableContext\n }, children);\n}","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as React from 'react';\nvar EmptyList = [];\n\n// ========================= Path Register =========================\n\nexport var PathRegisterContext = /*#__PURE__*/React.createContext(null);\nexport function useMeasure() {\n return React.useContext(PathRegisterContext);\n}\n\n// ========================= Path Tracker ==========================\nexport var PathTrackerContext = /*#__PURE__*/React.createContext(EmptyList);\nexport function useFullPath(eventKey) {\n var parentKeyPath = React.useContext(PathTrackerContext);\n return React.useMemo(function () {\n return eventKey !== undefined ? [].concat(_toConsumableArray(parentKeyPath), [eventKey]) : parentKeyPath;\n }, [parentKeyPath, eventKey]);\n}\n\n// =========================== Path User ===========================\n\nexport var PathUserContext = /*#__PURE__*/React.createContext(null);","import * as React from 'react';\nvar PrivateContext = /*#__PURE__*/React.createContext({});\nexport default PrivateContext;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport { getFocusNodeList } from \"rc-util/es/Dom/focus\";\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport raf from \"rc-util/es/raf\";\nimport * as React from 'react';\nimport { getMenuId } from \"../context/IdContext\";\n// destruct to reduce minify size\nvar LEFT = KeyCode.LEFT,\n RIGHT = KeyCode.RIGHT,\n UP = KeyCode.UP,\n DOWN = KeyCode.DOWN,\n ENTER = KeyCode.ENTER,\n ESC = KeyCode.ESC,\n HOME = KeyCode.HOME,\n END = KeyCode.END;\nvar ArrowKeys = [UP, DOWN, LEFT, RIGHT];\nfunction getOffset(mode, isRootLevel, isRtl, which) {\n var _inline, _horizontal, _vertical, _offsets;\n var prev = 'prev';\n var next = 'next';\n var children = 'children';\n var parent = 'parent';\n\n // Inline enter is special that we use unique operation\n if (mode === 'inline' && which === ENTER) {\n return {\n inlineTrigger: true\n };\n }\n var inline = (_inline = {}, _defineProperty(_inline, UP, prev), _defineProperty(_inline, DOWN, next), _inline);\n var horizontal = (_horizontal = {}, _defineProperty(_horizontal, LEFT, isRtl ? next : prev), _defineProperty(_horizontal, RIGHT, isRtl ? prev : next), _defineProperty(_horizontal, DOWN, children), _defineProperty(_horizontal, ENTER, children), _horizontal);\n var vertical = (_vertical = {}, _defineProperty(_vertical, UP, prev), _defineProperty(_vertical, DOWN, next), _defineProperty(_vertical, ENTER, children), _defineProperty(_vertical, ESC, parent), _defineProperty(_vertical, LEFT, isRtl ? children : parent), _defineProperty(_vertical, RIGHT, isRtl ? parent : children), _vertical);\n var offsets = {\n inline: inline,\n horizontal: horizontal,\n vertical: vertical,\n inlineSub: inline,\n horizontalSub: vertical,\n verticalSub: vertical\n };\n var type = (_offsets = offsets[\"\".concat(mode).concat(isRootLevel ? '' : 'Sub')]) === null || _offsets === void 0 ? void 0 : _offsets[which];\n switch (type) {\n case prev:\n return {\n offset: -1,\n sibling: true\n };\n case next:\n return {\n offset: 1,\n sibling: true\n };\n case parent:\n return {\n offset: -1,\n sibling: false\n };\n case children:\n return {\n offset: 1,\n sibling: false\n };\n default:\n return null;\n }\n}\nfunction findContainerUL(element) {\n var current = element;\n while (current) {\n if (current.getAttribute('data-menu-list')) {\n return current;\n }\n current = current.parentElement;\n }\n\n // Normally should not reach this line\n /* istanbul ignore next */\n return null;\n}\n\n/**\n * Find focused element within element set provided\n */\nfunction getFocusElement(activeElement, elements) {\n var current = activeElement || document.activeElement;\n while (current) {\n if (elements.has(current)) {\n return current;\n }\n current = current.parentElement;\n }\n return null;\n}\n\n/**\n * Get focusable elements from the element set under provided container\n */\nexport function getFocusableElements(container, elements) {\n var list = getFocusNodeList(container, true);\n return list.filter(function (ele) {\n return elements.has(ele);\n });\n}\nfunction getNextFocusElement(parentQueryContainer, elements, focusMenuElement) {\n var offset = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;\n // Key on the menu item will not get validate parent container\n if (!parentQueryContainer) {\n return null;\n }\n\n // List current level menu item elements\n var sameLevelFocusableMenuElementList = getFocusableElements(parentQueryContainer, elements);\n\n // Find next focus index\n var count = sameLevelFocusableMenuElementList.length;\n var focusIndex = sameLevelFocusableMenuElementList.findIndex(function (ele) {\n return focusMenuElement === ele;\n });\n if (offset < 0) {\n if (focusIndex === -1) {\n focusIndex = count - 1;\n } else {\n focusIndex -= 1;\n }\n } else if (offset > 0) {\n focusIndex += 1;\n }\n focusIndex = (focusIndex + count) % count;\n\n // Focus menu item\n return sameLevelFocusableMenuElementList[focusIndex];\n}\nexport var refreshElements = function refreshElements(keys, id) {\n var elements = new Set();\n var key2element = new Map();\n var element2key = new Map();\n keys.forEach(function (key) {\n var element = document.querySelector(\"[data-menu-id='\".concat(getMenuId(id, key), \"']\"));\n if (element) {\n elements.add(element);\n element2key.set(element, key);\n key2element.set(key, element);\n }\n });\n return {\n elements: elements,\n key2element: key2element,\n element2key: element2key\n };\n};\nexport function useAccessibility(mode, activeKey, isRtl, id, containerRef, getKeys, getKeyPath, triggerActiveKey, triggerAccessibilityOpen, originOnKeyDown) {\n var rafRef = React.useRef();\n var activeRef = React.useRef();\n activeRef.current = activeKey;\n var cleanRaf = function cleanRaf() {\n raf.cancel(rafRef.current);\n };\n React.useEffect(function () {\n return function () {\n cleanRaf();\n };\n }, []);\n return function (e) {\n var which = e.which;\n if ([].concat(ArrowKeys, [ENTER, ESC, HOME, END]).includes(which)) {\n var keys = getKeys();\n var refreshedElements = refreshElements(keys, id);\n var _refreshedElements = refreshedElements,\n elements = _refreshedElements.elements,\n key2element = _refreshedElements.key2element,\n element2key = _refreshedElements.element2key;\n\n // First we should find current focused MenuItem/SubMenu element\n var activeElement = key2element.get(activeKey);\n var focusMenuElement = getFocusElement(activeElement, elements);\n var focusMenuKey = element2key.get(focusMenuElement);\n var offsetObj = getOffset(mode, getKeyPath(focusMenuKey, true).length === 1, isRtl, which);\n\n // Some mode do not have fully arrow operation like inline\n if (!offsetObj && which !== HOME && which !== END) {\n return;\n }\n\n // Arrow prevent default to avoid page scroll\n if (ArrowKeys.includes(which) || [HOME, END].includes(which)) {\n e.preventDefault();\n }\n var tryFocus = function tryFocus(menuElement) {\n if (menuElement) {\n var focusTargetElement = menuElement;\n\n // Focus to link instead of menu item if possible\n var link = menuElement.querySelector('a');\n if (link !== null && link !== void 0 && link.getAttribute('href')) {\n focusTargetElement = link;\n }\n var targetKey = element2key.get(menuElement);\n triggerActiveKey(targetKey);\n\n /**\n * Do not `useEffect` here since `tryFocus` may trigger async\n * which makes React sync update the `activeKey`\n * that force render before `useRef` set the next activeKey\n */\n cleanRaf();\n rafRef.current = raf(function () {\n if (activeRef.current === targetKey) {\n focusTargetElement.focus();\n }\n });\n }\n };\n if ([HOME, END].includes(which) || offsetObj.sibling || !focusMenuElement) {\n // ========================== Sibling ==========================\n // Find walkable focus menu element container\n var parentQueryContainer;\n if (!focusMenuElement || mode === 'inline') {\n parentQueryContainer = containerRef.current;\n } else {\n parentQueryContainer = findContainerUL(focusMenuElement);\n }\n\n // Get next focus element\n var targetElement;\n var focusableElements = getFocusableElements(parentQueryContainer, elements);\n if (which === HOME) {\n targetElement = focusableElements[0];\n } else if (which === END) {\n targetElement = focusableElements[focusableElements.length - 1];\n } else {\n targetElement = getNextFocusElement(parentQueryContainer, elements, focusMenuElement, offsetObj.offset);\n }\n // Focus menu item\n tryFocus(targetElement);\n\n // ======================= InlineTrigger =======================\n } else if (offsetObj.inlineTrigger) {\n // Inline trigger no need switch to sub menu item\n triggerAccessibilityOpen(focusMenuKey);\n // =========================== Level ===========================\n } else if (offsetObj.offset > 0) {\n triggerAccessibilityOpen(focusMenuKey, true);\n cleanRaf();\n rafRef.current = raf(function () {\n // Async should resync elements\n refreshedElements = refreshElements(keys, id);\n var controlId = focusMenuElement.getAttribute('aria-controls');\n var subQueryContainer = document.getElementById(controlId);\n\n // Get sub focusable menu item\n var targetElement = getNextFocusElement(subQueryContainer, refreshedElements.elements);\n\n // Focus menu item\n tryFocus(targetElement);\n }, 5);\n } else if (offsetObj.offset < 0) {\n var keyPath = getKeyPath(focusMenuKey, true);\n var parentKey = keyPath[keyPath.length - 2];\n var parentMenuElement = key2element.get(parentKey);\n\n // Focus menu item\n triggerAccessibilityOpen(parentKey, false);\n tryFocus(parentMenuElement);\n }\n }\n\n // Pass origin key down event\n originOnKeyDown === null || originOnKeyDown === void 0 || originOnKeyDown(e);\n };\n}","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useRef, useCallback } from 'react';\nimport warning from \"rc-util/es/warning\";\nimport { nextSlice } from \"../utils/timeUtil\";\nvar PATH_SPLIT = '__RC_UTIL_PATH_SPLIT__';\nvar getPathStr = function getPathStr(keyPath) {\n return keyPath.join(PATH_SPLIT);\n};\nvar getPathKeys = function getPathKeys(keyPathStr) {\n return keyPathStr.split(PATH_SPLIT);\n};\nexport var OVERFLOW_KEY = 'rc-menu-more';\nexport default function useKeyRecords() {\n var _React$useState = React.useState({}),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n internalForceUpdate = _React$useState2[1];\n var key2pathRef = useRef(new Map());\n var path2keyRef = useRef(new Map());\n var _React$useState3 = React.useState([]),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n overflowKeys = _React$useState4[0],\n setOverflowKeys = _React$useState4[1];\n var updateRef = useRef(0);\n var destroyRef = useRef(false);\n var forceUpdate = function forceUpdate() {\n if (!destroyRef.current) {\n internalForceUpdate({});\n }\n };\n var registerPath = useCallback(function (key, keyPath) {\n // Warning for invalidate or duplicated `key`\n if (process.env.NODE_ENV !== 'production') {\n warning(!key2pathRef.current.has(key), \"Duplicated key '\".concat(key, \"' used in Menu by path [\").concat(keyPath.join(' > '), \"]\"));\n }\n\n // Fill map\n var connectedPath = getPathStr(keyPath);\n path2keyRef.current.set(connectedPath, key);\n key2pathRef.current.set(key, connectedPath);\n updateRef.current += 1;\n var id = updateRef.current;\n nextSlice(function () {\n if (id === updateRef.current) {\n forceUpdate();\n }\n });\n }, []);\n var unregisterPath = useCallback(function (key, keyPath) {\n var connectedPath = getPathStr(keyPath);\n path2keyRef.current.delete(connectedPath);\n key2pathRef.current.delete(key);\n }, []);\n var refreshOverflowKeys = useCallback(function (keys) {\n setOverflowKeys(keys);\n }, []);\n var getKeyPath = useCallback(function (eventKey, includeOverflow) {\n var fullPath = key2pathRef.current.get(eventKey) || '';\n var keys = getPathKeys(fullPath);\n if (includeOverflow && overflowKeys.includes(keys[0])) {\n keys.unshift(OVERFLOW_KEY);\n }\n return keys;\n }, [overflowKeys]);\n var isSubPathKey = useCallback(function (pathKeys, eventKey) {\n return pathKeys.some(function (pathKey) {\n var pathKeyList = getKeyPath(pathKey, true);\n return pathKeyList.includes(eventKey);\n });\n }, [getKeyPath]);\n var getKeys = function getKeys() {\n var keys = _toConsumableArray(key2pathRef.current.keys());\n if (overflowKeys.length) {\n keys.push(OVERFLOW_KEY);\n }\n return keys;\n };\n\n /**\n * Find current key related child path keys\n */\n var getSubPathKeys = useCallback(function (key) {\n var connectedPath = \"\".concat(key2pathRef.current.get(key)).concat(PATH_SPLIT);\n var pathKeys = new Set();\n _toConsumableArray(path2keyRef.current.keys()).forEach(function (pathKey) {\n if (pathKey.startsWith(connectedPath)) {\n pathKeys.add(path2keyRef.current.get(pathKey));\n }\n });\n return pathKeys;\n }, []);\n React.useEffect(function () {\n return function () {\n destroyRef.current = true;\n };\n }, []);\n return {\n // Register\n registerPath: registerPath,\n unregisterPath: unregisterPath,\n refreshOverflowKeys: refreshOverflowKeys,\n // Util\n isSubPathKey: isSubPathKey,\n getKeyPath: getKeyPath,\n getKeys: getKeys,\n getSubPathKeys: getSubPathKeys\n };\n}","import * as React from 'react';\n\n/**\n * Cache callback function that always return same ref instead.\n * This is used for context optimization.\n */\nexport default function useMemoCallback(func) {\n var funRef = React.useRef(func);\n funRef.current = func;\n var callback = React.useCallback(function () {\n var _funRef$current;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return (_funRef$current = funRef.current) === null || _funRef$current === void 0 ? void 0 : _funRef$current.call.apply(_funRef$current, [funRef].concat(args));\n }, []);\n return func ? callback : undefined;\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nvar uniquePrefix = Math.random().toFixed(5).toString().slice(2);\nvar internalId = 0;\nexport default function useUUID(id) {\n var _useMergedState = useMergedState(id, {\n value: id\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n uuid = _useMergedState2[0],\n setUUID = _useMergedState2[1];\n React.useEffect(function () {\n internalId += 1;\n var newId = process.env.NODE_ENV === 'test' ? 'test' : \"\".concat(uniquePrefix, \"-\").concat(internalId);\n setUUID(\"rc-menu-uuid-\".concat(newId));\n }, []);\n return uuid;\n}","import * as React from 'react';\nimport { MenuContext } from \"../context/MenuContext\";\nexport default function useActive(eventKey, disabled, onMouseEnter, onMouseLeave) {\n var _React$useContext = React.useContext(MenuContext),\n activeKey = _React$useContext.activeKey,\n onActive = _React$useContext.onActive,\n onInactive = _React$useContext.onInactive;\n var ret = {\n active: activeKey === eventKey\n };\n\n // Skip when disabled\n if (!disabled) {\n ret.onMouseEnter = function (domEvent) {\n onMouseEnter === null || onMouseEnter === void 0 || onMouseEnter({\n key: eventKey,\n domEvent: domEvent\n });\n onActive(eventKey);\n };\n ret.onMouseLeave = function (domEvent) {\n onMouseLeave === null || onMouseLeave === void 0 || onMouseLeave({\n key: eventKey,\n domEvent: domEvent\n });\n onInactive(eventKey);\n };\n }\n return ret;\n}","import * as React from 'react';\nimport { MenuContext } from \"../context/MenuContext\";\nexport default function useDirectionStyle(level) {\n var _React$useContext = React.useContext(MenuContext),\n mode = _React$useContext.mode,\n rtl = _React$useContext.rtl,\n inlineIndent = _React$useContext.inlineIndent;\n if (mode !== 'inline') {\n return null;\n }\n var len = level;\n return rtl ? {\n paddingRight: len * inlineIndent\n } : {\n paddingLeft: len * inlineIndent\n };\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nexport default function Icon(_ref) {\n var icon = _ref.icon,\n props = _ref.props,\n children = _ref.children;\n var iconNode;\n if (icon === null || icon === false) {\n return null;\n }\n if (typeof icon === 'function') {\n iconNode = /*#__PURE__*/React.createElement(icon, _objectSpread({}, props));\n } else if (typeof icon !== \"boolean\") {\n // Compatible for origin definition\n iconNode = icon;\n }\n return iconNode || children || null;\n}","import _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"item\"];\nimport warning from \"rc-util/es/warning\";\n\n/**\n * `onClick` event return `info.item` which point to react node directly.\n * We should warning this since it will not work on FC.\n */\nexport function warnItemProp(_ref) {\n var item = _ref.item,\n restInfo = _objectWithoutProperties(_ref, _excluded);\n Object.defineProperty(restInfo, 'item', {\n get: function get() {\n warning(false, '`info.item` is deprecated since we will move to function component that not provides React Node instance in future.');\n return item;\n }\n });\n return restInfo;\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _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\";\nvar _excluded = [\"title\", \"attribute\", \"elementRef\"],\n _excluded2 = [\"style\", \"className\", \"eventKey\", \"warnKey\", \"disabled\", \"itemIcon\", \"children\", \"role\", \"onMouseEnter\", \"onMouseLeave\", \"onClick\", \"onKeyDown\", \"onFocus\"],\n _excluded3 = [\"active\"];\nimport classNames from 'classnames';\nimport Overflow from 'rc-overflow';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport omit from \"rc-util/es/omit\";\nimport { useComposeRef } from \"rc-util/es/ref\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport { useMenuId } from \"./context/IdContext\";\nimport { MenuContext } from \"./context/MenuContext\";\nimport { useFullPath, useMeasure } from \"./context/PathContext\";\nimport PrivateContext from \"./context/PrivateContext\";\nimport useActive from \"./hooks/useActive\";\nimport useDirectionStyle from \"./hooks/useDirectionStyle\";\nimport Icon from \"./Icon\";\nimport { warnItemProp } from \"./utils/warnUtil\";\n// Since Menu event provide the `info.item` which point to the MenuItem node instance.\n// We have to use class component here.\n// This should be removed from doc & api in future.\nvar LegacyMenuItem = /*#__PURE__*/function (_React$Component) {\n _inherits(LegacyMenuItem, _React$Component);\n var _super = _createSuper(LegacyMenuItem);\n function LegacyMenuItem() {\n _classCallCheck(this, LegacyMenuItem);\n return _super.apply(this, arguments);\n }\n _createClass(LegacyMenuItem, [{\n key: \"render\",\n value: function render() {\n var _this$props = this.props,\n title = _this$props.title,\n attribute = _this$props.attribute,\n elementRef = _this$props.elementRef,\n restProps = _objectWithoutProperties(_this$props, _excluded);\n\n // Here the props are eventually passed to the DOM element.\n // React does not recognize non-standard attributes.\n // Therefore, remove the props that is not used here.\n // ref: https://github.com/ant-design/ant-design/issues/41395\n var passedProps = omit(restProps, ['eventKey', 'popupClassName', 'popupOffset', 'onTitleClick']);\n warning(!attribute, '`attribute` of Menu.Item is deprecated. Please pass attribute directly.');\n return /*#__PURE__*/React.createElement(Overflow.Item, _extends({}, attribute, {\n title: typeof title === 'string' ? title : undefined\n }, passedProps, {\n ref: elementRef\n }));\n }\n }]);\n return LegacyMenuItem;\n}(React.Component);\n/**\n * Real Menu Item component\n */\nvar InternalMenuItem = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _classNames;\n var style = props.style,\n className = props.className,\n eventKey = props.eventKey,\n warnKey = props.warnKey,\n disabled = props.disabled,\n itemIcon = props.itemIcon,\n children = props.children,\n role = props.role,\n onMouseEnter = props.onMouseEnter,\n onMouseLeave = props.onMouseLeave,\n onClick = props.onClick,\n onKeyDown = props.onKeyDown,\n onFocus = props.onFocus,\n restProps = _objectWithoutProperties(props, _excluded2);\n var domDataId = useMenuId(eventKey);\n var _React$useContext = React.useContext(MenuContext),\n prefixCls = _React$useContext.prefixCls,\n onItemClick = _React$useContext.onItemClick,\n contextDisabled = _React$useContext.disabled,\n overflowDisabled = _React$useContext.overflowDisabled,\n contextItemIcon = _React$useContext.itemIcon,\n selectedKeys = _React$useContext.selectedKeys,\n onActive = _React$useContext.onActive;\n var _React$useContext2 = React.useContext(PrivateContext),\n _internalRenderMenuItem = _React$useContext2._internalRenderMenuItem;\n var itemCls = \"\".concat(prefixCls, \"-item\");\n var legacyMenuItemRef = React.useRef();\n var elementRef = React.useRef();\n var mergedDisabled = contextDisabled || disabled;\n var mergedEleRef = useComposeRef(ref, elementRef);\n var connectedKeys = useFullPath(eventKey);\n\n // ================================ Warn ================================\n if (process.env.NODE_ENV !== 'production' && warnKey) {\n warning(false, 'MenuItem should not leave undefined `key`.');\n }\n\n // ============================= Info =============================\n var getEventInfo = function getEventInfo(e) {\n return {\n key: eventKey,\n // Note: For legacy code is reversed which not like other antd component\n keyPath: _toConsumableArray(connectedKeys).reverse(),\n item: legacyMenuItemRef.current,\n domEvent: e\n };\n };\n\n // ============================= Icon =============================\n var mergedItemIcon = itemIcon || contextItemIcon;\n\n // ============================ Active ============================\n var _useActive = useActive(eventKey, mergedDisabled, onMouseEnter, onMouseLeave),\n active = _useActive.active,\n activeProps = _objectWithoutProperties(_useActive, _excluded3);\n\n // ============================ Select ============================\n var selected = selectedKeys.includes(eventKey);\n\n // ======================== DirectionStyle ========================\n var directionStyle = useDirectionStyle(connectedKeys.length);\n\n // ============================ Events ============================\n var onInternalClick = function onInternalClick(e) {\n if (mergedDisabled) {\n return;\n }\n var info = getEventInfo(e);\n onClick === null || onClick === void 0 || onClick(warnItemProp(info));\n onItemClick(info);\n };\n var onInternalKeyDown = function onInternalKeyDown(e) {\n onKeyDown === null || onKeyDown === void 0 || onKeyDown(e);\n if (e.which === KeyCode.ENTER) {\n var info = getEventInfo(e);\n\n // Legacy. Key will also trigger click event\n onClick === null || onClick === void 0 || onClick(warnItemProp(info));\n onItemClick(info);\n }\n };\n\n /**\n * Used for accessibility. Helper will focus element without key board.\n * We should manually trigger an active\n */\n var onInternalFocus = function onInternalFocus(e) {\n onActive(eventKey);\n onFocus === null || onFocus === void 0 || onFocus(e);\n };\n\n // ============================ Render ============================\n var optionRoleProps = {};\n if (props.role === 'option') {\n optionRoleProps['aria-selected'] = selected;\n }\n var renderNode = /*#__PURE__*/React.createElement(LegacyMenuItem, _extends({\n ref: legacyMenuItemRef,\n elementRef: mergedEleRef,\n role: role === null ? 'none' : role || 'menuitem',\n tabIndex: disabled ? null : -1,\n \"data-menu-id\": overflowDisabled && domDataId ? null : domDataId\n }, restProps, activeProps, optionRoleProps, {\n component: \"li\",\n \"aria-disabled\": disabled,\n style: _objectSpread(_objectSpread({}, directionStyle), style),\n className: classNames(itemCls, (_classNames = {}, _defineProperty(_classNames, \"\".concat(itemCls, \"-active\"), active), _defineProperty(_classNames, \"\".concat(itemCls, \"-selected\"), selected), _defineProperty(_classNames, \"\".concat(itemCls, \"-disabled\"), mergedDisabled), _classNames), className),\n onClick: onInternalClick,\n onKeyDown: onInternalKeyDown,\n onFocus: onInternalFocus\n }), children, /*#__PURE__*/React.createElement(Icon, {\n props: _objectSpread(_objectSpread({}, props), {}, {\n isSelected: selected\n }),\n icon: mergedItemIcon\n }));\n if (_internalRenderMenuItem) {\n renderNode = _internalRenderMenuItem(renderNode, props, {\n selected: selected\n });\n }\n return renderNode;\n});\nfunction MenuItem(props, ref) {\n var eventKey = props.eventKey;\n\n // ==================== Record KeyPath ====================\n var measure = useMeasure();\n var connectedKeyPath = useFullPath(eventKey);\n\n // eslint-disable-next-line consistent-return\n React.useEffect(function () {\n if (measure) {\n measure.registerPath(eventKey, connectedKeyPath);\n return function () {\n measure.unregisterPath(eventKey, connectedKeyPath);\n };\n }\n }, [connectedKeyPath]);\n if (measure) {\n return null;\n }\n\n // ======================== Render ========================\n return /*#__PURE__*/React.createElement(InternalMenuItem, _extends({}, props, {\n ref: ref\n }));\n}\nexport default /*#__PURE__*/React.forwardRef(MenuItem);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"className\", \"children\"];\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { MenuContext } from \"../context/MenuContext\";\nvar InternalSubMenuList = function InternalSubMenuList(_ref, ref) {\n var className = _ref.className,\n children = _ref.children,\n restProps = _objectWithoutProperties(_ref, _excluded);\n var _React$useContext = React.useContext(MenuContext),\n prefixCls = _React$useContext.prefixCls,\n mode = _React$useContext.mode,\n rtl = _React$useContext.rtl;\n return /*#__PURE__*/React.createElement(\"ul\", _extends({\n className: classNames(prefixCls, rtl && \"\".concat(prefixCls, \"-rtl\"), \"\".concat(prefixCls, \"-sub\"), \"\".concat(prefixCls, \"-\").concat(mode === 'inline' ? 'inline' : 'vertical'), className),\n role: \"menu\"\n }, restProps, {\n \"data-menu-list\": true,\n ref: ref\n }), children);\n};\nvar SubMenuList = /*#__PURE__*/React.forwardRef(InternalSubMenuList);\nSubMenuList.displayName = 'SubMenuList';\nexport default SubMenuList;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport toArray from \"rc-util/es/Children/toArray\";\nimport * as React from 'react';\nexport function parseChildren(children, keyPath) {\n return toArray(children).map(function (child, index) {\n if ( /*#__PURE__*/React.isValidElement(child)) {\n var _eventKey, _child$props;\n var key = child.key;\n var eventKey = (_eventKey = (_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.eventKey) !== null && _eventKey !== void 0 ? _eventKey : key;\n var emptyKey = eventKey === null || eventKey === undefined;\n if (emptyKey) {\n eventKey = \"tmp_key-\".concat([].concat(_toConsumableArray(keyPath), [index]).join('-'));\n }\n var cloneProps = {\n key: eventKey,\n eventKey: eventKey\n };\n if (process.env.NODE_ENV !== 'production' && emptyKey) {\n cloneProps.warnKey = true;\n }\n return /*#__PURE__*/React.cloneElement(child, cloneProps);\n }\n return child;\n });\n}","var autoAdjustOverflow = {\n adjustX: 1,\n adjustY: 1\n};\nexport var placements = {\n topLeft: {\n points: ['bl', 'tl'],\n overflow: autoAdjustOverflow\n },\n topRight: {\n points: ['br', 'tr'],\n overflow: autoAdjustOverflow\n },\n bottomLeft: {\n points: ['tl', 'bl'],\n overflow: autoAdjustOverflow\n },\n bottomRight: {\n points: ['tr', 'br'],\n overflow: autoAdjustOverflow\n },\n leftTop: {\n points: ['tr', 'tl'],\n overflow: autoAdjustOverflow\n },\n leftBottom: {\n points: ['br', 'bl'],\n overflow: autoAdjustOverflow\n },\n rightTop: {\n points: ['tl', 'tr'],\n overflow: autoAdjustOverflow\n },\n rightBottom: {\n points: ['bl', 'br'],\n overflow: autoAdjustOverflow\n }\n};\nexport var placementsRtl = {\n topLeft: {\n points: ['bl', 'tl'],\n overflow: autoAdjustOverflow\n },\n topRight: {\n points: ['br', 'tr'],\n overflow: autoAdjustOverflow\n },\n bottomLeft: {\n points: ['tl', 'bl'],\n overflow: autoAdjustOverflow\n },\n bottomRight: {\n points: ['tr', 'br'],\n overflow: autoAdjustOverflow\n },\n rightTop: {\n points: ['tr', 'tl'],\n overflow: autoAdjustOverflow\n },\n rightBottom: {\n points: ['br', 'bl'],\n overflow: autoAdjustOverflow\n },\n leftTop: {\n points: ['tl', 'tr'],\n overflow: autoAdjustOverflow\n },\n leftBottom: {\n points: ['bl', 'br'],\n overflow: autoAdjustOverflow\n }\n};\nexport default placements;","export function getMotion(mode, motion, defaultMotions) {\n if (motion) {\n return motion;\n }\n if (defaultMotions) {\n return defaultMotions[mode] || defaultMotions.other;\n }\n return undefined;\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 * as React from 'react';\nimport Trigger from '@rc-component/trigger';\nimport classNames from 'classnames';\nimport raf from \"rc-util/es/raf\";\nimport { MenuContext } from \"../context/MenuContext\";\nimport { placements, placementsRtl } from \"../placements\";\nimport { getMotion } from \"../utils/motionUtil\";\nvar popupPlacementMap = {\n horizontal: 'bottomLeft',\n vertical: 'rightTop',\n 'vertical-left': 'rightTop',\n 'vertical-right': 'leftTop'\n};\nexport default function PopupTrigger(_ref) {\n var prefixCls = _ref.prefixCls,\n visible = _ref.visible,\n children = _ref.children,\n popup = _ref.popup,\n popupStyle = _ref.popupStyle,\n popupClassName = _ref.popupClassName,\n popupOffset = _ref.popupOffset,\n disabled = _ref.disabled,\n mode = _ref.mode,\n onVisibleChange = _ref.onVisibleChange;\n var _React$useContext = React.useContext(MenuContext),\n getPopupContainer = _React$useContext.getPopupContainer,\n rtl = _React$useContext.rtl,\n subMenuOpenDelay = _React$useContext.subMenuOpenDelay,\n subMenuCloseDelay = _React$useContext.subMenuCloseDelay,\n builtinPlacements = _React$useContext.builtinPlacements,\n triggerSubMenuAction = _React$useContext.triggerSubMenuAction,\n forceSubMenuRender = _React$useContext.forceSubMenuRender,\n rootClassName = _React$useContext.rootClassName,\n motion = _React$useContext.motion,\n defaultMotions = _React$useContext.defaultMotions;\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n innerVisible = _React$useState2[0],\n setInnerVisible = _React$useState2[1];\n var placement = rtl ? _objectSpread(_objectSpread({}, placementsRtl), builtinPlacements) : _objectSpread(_objectSpread({}, placements), builtinPlacements);\n var popupPlacement = popupPlacementMap[mode];\n var targetMotion = getMotion(mode, motion, defaultMotions);\n var targetMotionRef = React.useRef(targetMotion);\n if (mode !== 'inline') {\n /**\n * PopupTrigger is only used for vertical and horizontal types.\n * When collapsed is unfolded, the inline animation will destroy the vertical animation.\n */\n targetMotionRef.current = targetMotion;\n }\n var mergedMotion = _objectSpread(_objectSpread({}, targetMotionRef.current), {}, {\n leavedClassName: \"\".concat(prefixCls, \"-hidden\"),\n removeOnLeave: false,\n motionAppear: true\n });\n\n // Delay to change visible\n var visibleRef = React.useRef();\n React.useEffect(function () {\n visibleRef.current = raf(function () {\n setInnerVisible(visible);\n });\n return function () {\n raf.cancel(visibleRef.current);\n };\n }, [visible]);\n return /*#__PURE__*/React.createElement(Trigger, {\n prefixCls: prefixCls,\n popupClassName: classNames(\"\".concat(prefixCls, \"-popup\"), _defineProperty({}, \"\".concat(prefixCls, \"-rtl\"), rtl), popupClassName, rootClassName),\n stretch: mode === 'horizontal' ? 'minWidth' : null,\n getPopupContainer: getPopupContainer,\n builtinPlacements: placement,\n popupPlacement: popupPlacement,\n popupVisible: innerVisible,\n popup: popup,\n popupStyle: popupStyle,\n popupAlign: popupOffset && {\n offset: popupOffset\n },\n action: disabled ? [] : [triggerSubMenuAction],\n mouseEnterDelay: subMenuOpenDelay,\n mouseLeaveDelay: subMenuCloseDelay,\n onPopupVisibleChange: onVisibleChange,\n forceRender: forceSubMenuRender,\n popupMotion: mergedMotion,\n fresh: true\n }, children);\n}","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 * as React from 'react';\nimport CSSMotion from 'rc-motion';\nimport { getMotion } from \"../utils/motionUtil\";\nimport MenuContextProvider, { MenuContext } from \"../context/MenuContext\";\nimport SubMenuList from \"./SubMenuList\";\nexport default function InlineSubMenuList(_ref) {\n var id = _ref.id,\n open = _ref.open,\n keyPath = _ref.keyPath,\n children = _ref.children;\n var fixedMode = 'inline';\n var _React$useContext = React.useContext(MenuContext),\n prefixCls = _React$useContext.prefixCls,\n forceSubMenuRender = _React$useContext.forceSubMenuRender,\n motion = _React$useContext.motion,\n defaultMotions = _React$useContext.defaultMotions,\n mode = _React$useContext.mode;\n\n // Always use latest mode check\n var sameModeRef = React.useRef(false);\n sameModeRef.current = mode === fixedMode;\n\n // We record `destroy` mark here since when mode change from `inline` to others.\n // The inline list should remove when motion end.\n var _React$useState = React.useState(!sameModeRef.current),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n destroy = _React$useState2[0],\n setDestroy = _React$useState2[1];\n var mergedOpen = sameModeRef.current ? open : false;\n\n // ================================= Effect =================================\n // Reset destroy state when mode change back\n React.useEffect(function () {\n if (sameModeRef.current) {\n setDestroy(false);\n }\n }, [mode]);\n\n // ================================= Render =================================\n var mergedMotion = _objectSpread({}, getMotion(fixedMode, motion, defaultMotions));\n\n // No need appear since nest inlineCollapse changed\n if (keyPath.length > 1) {\n mergedMotion.motionAppear = false;\n }\n\n // Hide inline list when mode changed and motion end\n var originOnVisibleChanged = mergedMotion.onVisibleChanged;\n mergedMotion.onVisibleChanged = function (newVisible) {\n if (!sameModeRef.current && !newVisible) {\n setDestroy(true);\n }\n return originOnVisibleChanged === null || originOnVisibleChanged === void 0 ? void 0 : originOnVisibleChanged(newVisible);\n };\n if (destroy) {\n return null;\n }\n return /*#__PURE__*/React.createElement(MenuContextProvider, {\n mode: fixedMode,\n locked: !sameModeRef.current\n }, /*#__PURE__*/React.createElement(CSSMotion, _extends({\n visible: mergedOpen\n }, mergedMotion, {\n forceRender: forceSubMenuRender,\n removeOnLeave: false,\n leavedClassName: \"\".concat(prefixCls, \"-hidden\")\n }), function (_ref2) {\n var motionClassName = _ref2.className,\n motionStyle = _ref2.style;\n return /*#__PURE__*/React.createElement(SubMenuList, {\n id: id,\n className: motionClassName,\n style: motionStyle\n }, children);\n }));\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"style\", \"className\", \"title\", \"eventKey\", \"warnKey\", \"disabled\", \"internalPopupClose\", \"children\", \"itemIcon\", \"expandIcon\", \"popupClassName\", \"popupOffset\", \"popupStyle\", \"onClick\", \"onMouseEnter\", \"onMouseLeave\", \"onTitleClick\", \"onTitleMouseEnter\", \"onTitleMouseLeave\"],\n _excluded2 = [\"active\"];\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport Overflow from 'rc-overflow';\nimport warning from \"rc-util/es/warning\";\nimport SubMenuList from \"./SubMenuList\";\nimport { parseChildren } from \"../utils/commonUtil\";\nimport MenuContextProvider, { MenuContext } from \"../context/MenuContext\";\nimport useMemoCallback from \"../hooks/useMemoCallback\";\nimport PopupTrigger from \"./PopupTrigger\";\nimport Icon from \"../Icon\";\nimport useActive from \"../hooks/useActive\";\nimport { warnItemProp } from \"../utils/warnUtil\";\nimport useDirectionStyle from \"../hooks/useDirectionStyle\";\nimport InlineSubMenuList from \"./InlineSubMenuList\";\nimport { PathTrackerContext, PathUserContext, useFullPath, useMeasure } from \"../context/PathContext\";\nimport { useMenuId } from \"../context/IdContext\";\nimport PrivateContext from \"../context/PrivateContext\";\nvar InternalSubMenu = function InternalSubMenu(props) {\n var _classNames;\n var style = props.style,\n className = props.className,\n title = props.title,\n eventKey = props.eventKey,\n warnKey = props.warnKey,\n disabled = props.disabled,\n internalPopupClose = props.internalPopupClose,\n children = props.children,\n itemIcon = props.itemIcon,\n expandIcon = props.expandIcon,\n popupClassName = props.popupClassName,\n popupOffset = props.popupOffset,\n popupStyle = props.popupStyle,\n onClick = props.onClick,\n onMouseEnter = props.onMouseEnter,\n onMouseLeave = props.onMouseLeave,\n onTitleClick = props.onTitleClick,\n onTitleMouseEnter = props.onTitleMouseEnter,\n onTitleMouseLeave = props.onTitleMouseLeave,\n restProps = _objectWithoutProperties(props, _excluded);\n var domDataId = useMenuId(eventKey);\n var _React$useContext = React.useContext(MenuContext),\n prefixCls = _React$useContext.prefixCls,\n mode = _React$useContext.mode,\n openKeys = _React$useContext.openKeys,\n contextDisabled = _React$useContext.disabled,\n overflowDisabled = _React$useContext.overflowDisabled,\n activeKey = _React$useContext.activeKey,\n selectedKeys = _React$useContext.selectedKeys,\n contextItemIcon = _React$useContext.itemIcon,\n contextExpandIcon = _React$useContext.expandIcon,\n onItemClick = _React$useContext.onItemClick,\n onOpenChange = _React$useContext.onOpenChange,\n onActive = _React$useContext.onActive;\n var _React$useContext2 = React.useContext(PrivateContext),\n _internalRenderSubMenuItem = _React$useContext2._internalRenderSubMenuItem;\n var _React$useContext3 = React.useContext(PathUserContext),\n isSubPathKey = _React$useContext3.isSubPathKey;\n var connectedPath = useFullPath();\n var subMenuPrefixCls = \"\".concat(prefixCls, \"-submenu\");\n var mergedDisabled = contextDisabled || disabled;\n var elementRef = React.useRef();\n var popupRef = React.useRef();\n\n // ================================ Warn ================================\n if (process.env.NODE_ENV !== 'production' && warnKey) {\n warning(false, 'SubMenu should not leave undefined `key`.');\n }\n\n // ================================ Icon ================================\n var mergedItemIcon = itemIcon !== null && itemIcon !== void 0 ? itemIcon : contextItemIcon;\n var mergedExpandIcon = expandIcon !== null && expandIcon !== void 0 ? expandIcon : contextExpandIcon;\n\n // ================================ Open ================================\n var originOpen = openKeys.includes(eventKey);\n var open = !overflowDisabled && originOpen;\n\n // =============================== Select ===============================\n var childrenSelected = isSubPathKey(selectedKeys, eventKey);\n\n // =============================== Active ===============================\n var _useActive = useActive(eventKey, mergedDisabled, onTitleMouseEnter, onTitleMouseLeave),\n active = _useActive.active,\n activeProps = _objectWithoutProperties(_useActive, _excluded2);\n\n // Fallback of active check to avoid hover on menu title or disabled item\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n childrenActive = _React$useState2[0],\n setChildrenActive = _React$useState2[1];\n var triggerChildrenActive = function triggerChildrenActive(newActive) {\n if (!mergedDisabled) {\n setChildrenActive(newActive);\n }\n };\n var onInternalMouseEnter = function onInternalMouseEnter(domEvent) {\n triggerChildrenActive(true);\n onMouseEnter === null || onMouseEnter === void 0 || onMouseEnter({\n key: eventKey,\n domEvent: domEvent\n });\n };\n var onInternalMouseLeave = function onInternalMouseLeave(domEvent) {\n triggerChildrenActive(false);\n onMouseLeave === null || onMouseLeave === void 0 || onMouseLeave({\n key: eventKey,\n domEvent: domEvent\n });\n };\n var mergedActive = React.useMemo(function () {\n if (active) {\n return active;\n }\n if (mode !== 'inline') {\n return childrenActive || isSubPathKey([activeKey], eventKey);\n }\n return false;\n }, [mode, active, activeKey, childrenActive, eventKey, isSubPathKey]);\n\n // ========================== DirectionStyle ==========================\n var directionStyle = useDirectionStyle(connectedPath.length);\n\n // =============================== Events ===============================\n // >>>> Title click\n var onInternalTitleClick = function onInternalTitleClick(e) {\n // Skip if disabled\n if (mergedDisabled) {\n return;\n }\n onTitleClick === null || onTitleClick === void 0 || onTitleClick({\n key: eventKey,\n domEvent: e\n });\n\n // Trigger open by click when mode is `inline`\n if (mode === 'inline') {\n onOpenChange(eventKey, !originOpen);\n }\n };\n\n // >>>> Context for children click\n var onMergedItemClick = useMemoCallback(function (info) {\n onClick === null || onClick === void 0 || onClick(warnItemProp(info));\n onItemClick(info);\n });\n\n // >>>>> Visible change\n var onPopupVisibleChange = function onPopupVisibleChange(newVisible) {\n if (mode !== 'inline') {\n onOpenChange(eventKey, newVisible);\n }\n };\n\n /**\n * Used for accessibility. Helper will focus element without key board.\n * We should manually trigger an active\n */\n var onInternalFocus = function onInternalFocus() {\n onActive(eventKey);\n };\n\n // =============================== Render ===============================\n var popupId = domDataId && \"\".concat(domDataId, \"-popup\");\n\n // >>>>> Title\n var titleNode = /*#__PURE__*/React.createElement(\"div\", _extends({\n role: \"menuitem\",\n style: directionStyle,\n className: \"\".concat(subMenuPrefixCls, \"-title\"),\n tabIndex: mergedDisabled ? null : -1,\n ref: elementRef,\n title: typeof title === 'string' ? title : null,\n \"data-menu-id\": overflowDisabled && domDataId ? null : domDataId,\n \"aria-expanded\": open,\n \"aria-haspopup\": true,\n \"aria-controls\": popupId,\n \"aria-disabled\": mergedDisabled,\n onClick: onInternalTitleClick,\n onFocus: onInternalFocus\n }, activeProps), title, /*#__PURE__*/React.createElement(Icon, {\n icon: mode !== 'horizontal' ? mergedExpandIcon : undefined,\n props: _objectSpread(_objectSpread({}, props), {}, {\n isOpen: open,\n // [Legacy] Not sure why need this mark\n isSubMenu: true\n })\n }, /*#__PURE__*/React.createElement(\"i\", {\n className: \"\".concat(subMenuPrefixCls, \"-arrow\")\n })));\n\n // Cache mode if it change to `inline` which do not have popup motion\n var triggerModeRef = React.useRef(mode);\n if (mode !== 'inline' && connectedPath.length > 1) {\n triggerModeRef.current = 'vertical';\n } else {\n triggerModeRef.current = mode;\n }\n if (!overflowDisabled) {\n var triggerMode = triggerModeRef.current;\n\n // Still wrap with Trigger here since we need avoid react re-mount dom node\n // Which makes motion failed\n titleNode = /*#__PURE__*/React.createElement(PopupTrigger, {\n mode: triggerMode,\n prefixCls: subMenuPrefixCls,\n visible: !internalPopupClose && open && mode !== 'inline',\n popupClassName: popupClassName,\n popupOffset: popupOffset,\n popupStyle: popupStyle,\n popup: /*#__PURE__*/React.createElement(MenuContextProvider\n // Special handle of horizontal mode\n , {\n mode: triggerMode === 'horizontal' ? 'vertical' : triggerMode\n }, /*#__PURE__*/React.createElement(SubMenuList, {\n id: popupId,\n ref: popupRef\n }, children)),\n disabled: mergedDisabled,\n onVisibleChange: onPopupVisibleChange\n }, titleNode);\n }\n\n // >>>>> List node\n var listNode = /*#__PURE__*/React.createElement(Overflow.Item, _extends({\n role: \"none\"\n }, restProps, {\n component: \"li\",\n style: style,\n className: classNames(subMenuPrefixCls, \"\".concat(subMenuPrefixCls, \"-\").concat(mode), className, (_classNames = {}, _defineProperty(_classNames, \"\".concat(subMenuPrefixCls, \"-open\"), open), _defineProperty(_classNames, \"\".concat(subMenuPrefixCls, \"-active\"), mergedActive), _defineProperty(_classNames, \"\".concat(subMenuPrefixCls, \"-selected\"), childrenSelected), _defineProperty(_classNames, \"\".concat(subMenuPrefixCls, \"-disabled\"), mergedDisabled), _classNames)),\n onMouseEnter: onInternalMouseEnter,\n onMouseLeave: onInternalMouseLeave\n }), titleNode, !overflowDisabled && /*#__PURE__*/React.createElement(InlineSubMenuList, {\n id: popupId,\n open: open,\n keyPath: connectedPath\n }, children));\n if (_internalRenderSubMenuItem) {\n listNode = _internalRenderSubMenuItem(listNode, props, {\n selected: childrenSelected,\n active: mergedActive,\n open: open,\n disabled: mergedDisabled\n });\n }\n\n // >>>>> Render\n return /*#__PURE__*/React.createElement(MenuContextProvider, {\n onItemClick: onMergedItemClick,\n mode: mode === 'horizontal' ? 'vertical' : mode,\n itemIcon: mergedItemIcon,\n expandIcon: mergedExpandIcon\n }, listNode);\n};\nexport default function SubMenu(props) {\n var eventKey = props.eventKey,\n children = props.children;\n var connectedKeyPath = useFullPath(eventKey);\n var childList = parseChildren(children, connectedKeyPath);\n\n // ==================== Record KeyPath ====================\n var measure = useMeasure();\n\n // eslint-disable-next-line consistent-return\n React.useEffect(function () {\n if (measure) {\n measure.registerPath(eventKey, connectedKeyPath);\n return function () {\n measure.unregisterPath(eventKey, connectedKeyPath);\n };\n }\n }, [connectedKeyPath]);\n var renderNode;\n\n // ======================== Render ========================\n if (measure) {\n renderNode = childList;\n } else {\n renderNode = /*#__PURE__*/React.createElement(InternalSubMenu, props, childList);\n }\n return /*#__PURE__*/React.createElement(PathTrackerContext.Provider, {\n value: connectedKeyPath\n }, renderNode);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"className\", \"title\", \"eventKey\", \"children\"],\n _excluded2 = [\"children\"];\nimport classNames from 'classnames';\nimport omit from \"rc-util/es/omit\";\nimport * as React from 'react';\nimport { MenuContext } from \"./context/MenuContext\";\nimport { useFullPath, useMeasure } from \"./context/PathContext\";\nimport { parseChildren } from \"./utils/commonUtil\";\nvar InternalMenuItemGroup = function InternalMenuItemGroup(_ref) {\n var className = _ref.className,\n title = _ref.title,\n eventKey = _ref.eventKey,\n children = _ref.children,\n restProps = _objectWithoutProperties(_ref, _excluded);\n var _React$useContext = React.useContext(MenuContext),\n prefixCls = _React$useContext.prefixCls;\n var groupPrefixCls = \"\".concat(prefixCls, \"-item-group\");\n return /*#__PURE__*/React.createElement(\"li\", _extends({\n role: \"presentation\"\n }, restProps, {\n onClick: function onClick(e) {\n return e.stopPropagation();\n },\n className: classNames(groupPrefixCls, className)\n }), /*#__PURE__*/React.createElement(\"div\", {\n role: \"presentation\",\n className: \"\".concat(groupPrefixCls, \"-title\"),\n title: typeof title === 'string' ? title : undefined\n }, title), /*#__PURE__*/React.createElement(\"ul\", {\n role: \"group\",\n className: \"\".concat(groupPrefixCls, \"-list\")\n }, children));\n};\nexport default function MenuItemGroup(_ref2) {\n var children = _ref2.children,\n props = _objectWithoutProperties(_ref2, _excluded2);\n var connectedKeyPath = useFullPath(props.eventKey);\n var childList = parseChildren(children, connectedKeyPath);\n var measure = useMeasure();\n if (measure) {\n return childList;\n }\n return /*#__PURE__*/React.createElement(InternalMenuItemGroup, omit(props, ['warnKey']), childList);\n}","import * as React from 'react';\nimport classNames from 'classnames';\nimport { MenuContext } from \"./context/MenuContext\";\nimport { useMeasure } from \"./context/PathContext\";\nexport default function Divider(_ref) {\n var className = _ref.className,\n style = _ref.style;\n var _React$useContext = React.useContext(MenuContext),\n prefixCls = _React$useContext.prefixCls;\n var measure = useMeasure();\n if (measure) {\n return null;\n }\n return /*#__PURE__*/React.createElement(\"li\", {\n role: \"separator\",\n className: classNames(\"\".concat(prefixCls, \"-item-divider\"), className),\n style: style\n });\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nvar _excluded = [\"label\", \"children\", \"key\", \"type\"];\nimport * as React from 'react';\nimport MenuItemGroup from \"../MenuItemGroup\";\nimport SubMenu from \"../SubMenu\";\nimport Divider from \"../Divider\";\nimport MenuItem from \"../MenuItem\";\nimport { parseChildren } from \"./commonUtil\";\nfunction convertItemsToNodes(list) {\n return (list || []).map(function (opt, index) {\n if (opt && _typeof(opt) === 'object') {\n var _ref = opt,\n label = _ref.label,\n children = _ref.children,\n key = _ref.key,\n type = _ref.type,\n restProps = _objectWithoutProperties(_ref, _excluded);\n var mergedKey = key !== null && key !== void 0 ? key : \"tmp-\".concat(index);\n\n // MenuItemGroup & SubMenuItem\n if (children || type === 'group') {\n if (type === 'group') {\n // Group\n return /*#__PURE__*/React.createElement(MenuItemGroup, _extends({\n key: mergedKey\n }, restProps, {\n title: label\n }), convertItemsToNodes(children));\n }\n\n // Sub Menu\n return /*#__PURE__*/React.createElement(SubMenu, _extends({\n key: mergedKey\n }, restProps, {\n title: label\n }), convertItemsToNodes(children));\n }\n\n // MenuItem & Divider\n if (type === 'divider') {\n return /*#__PURE__*/React.createElement(Divider, _extends({\n key: mergedKey\n }, restProps));\n }\n return /*#__PURE__*/React.createElement(MenuItem, _extends({\n key: mergedKey\n }, restProps), label);\n }\n return null;\n }).filter(function (opt) {\n return opt;\n });\n}\nexport function parseItems(children, items, keyPath) {\n var childNodes = children;\n if (items) {\n childNodes = convertItemsToNodes(items);\n }\n return parseChildren(childNodes, keyPath);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"rootClassName\", \"style\", \"className\", \"tabIndex\", \"items\", \"children\", \"direction\", \"id\", \"mode\", \"inlineCollapsed\", \"disabled\", \"disabledOverflow\", \"subMenuOpenDelay\", \"subMenuCloseDelay\", \"forceSubMenuRender\", \"defaultOpenKeys\", \"openKeys\", \"activeKey\", \"defaultActiveFirst\", \"selectable\", \"multiple\", \"defaultSelectedKeys\", \"selectedKeys\", \"onSelect\", \"onDeselect\", \"inlineIndent\", \"motion\", \"defaultMotions\", \"triggerSubMenuAction\", \"builtinPlacements\", \"itemIcon\", \"expandIcon\", \"overflowedIndicator\", \"overflowedIndicatorPopupClassName\", \"getPopupContainer\", \"onClick\", \"onOpenChange\", \"onKeyDown\", \"openAnimation\", \"openTransitionName\", \"_internalRenderMenuItem\", \"_internalRenderSubMenuItem\"];\nimport classNames from 'classnames';\nimport Overflow from 'rc-overflow';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport isEqual from \"rc-util/es/isEqual\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport { useImperativeHandle } from 'react';\nimport { flushSync } from 'react-dom';\nimport { IdContext } from \"./context/IdContext\";\nimport MenuContextProvider from \"./context/MenuContext\";\nimport { PathRegisterContext, PathUserContext } from \"./context/PathContext\";\nimport PrivateContext from \"./context/PrivateContext\";\nimport { getFocusableElements, refreshElements, useAccessibility } from \"./hooks/useAccessibility\";\nimport useKeyRecords, { OVERFLOW_KEY } from \"./hooks/useKeyRecords\";\nimport useMemoCallback from \"./hooks/useMemoCallback\";\nimport useUUID from \"./hooks/useUUID\";\nimport MenuItem from \"./MenuItem\";\nimport SubMenu from \"./SubMenu\";\nimport { parseItems } from \"./utils/nodeUtil\";\nimport { warnItemProp } from \"./utils/warnUtil\";\n\n/**\n * Menu modify after refactor:\n * ## Add\n * - disabled\n *\n * ## Remove\n * - openTransitionName\n * - openAnimation\n * - onDestroy\n * - siderCollapsed: Seems antd do not use this prop (Need test in antd)\n * - collapsedWidth: Seems this logic should be handle by antd Layout.Sider\n */\n\n// optimize for render\nvar EMPTY_LIST = [];\nvar Menu = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _childList$, _classNames;\n var _ref = props,\n _ref$prefixCls = _ref.prefixCls,\n prefixCls = _ref$prefixCls === void 0 ? 'rc-menu' : _ref$prefixCls,\n rootClassName = _ref.rootClassName,\n style = _ref.style,\n className = _ref.className,\n _ref$tabIndex = _ref.tabIndex,\n tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,\n items = _ref.items,\n children = _ref.children,\n direction = _ref.direction,\n id = _ref.id,\n _ref$mode = _ref.mode,\n mode = _ref$mode === void 0 ? 'vertical' : _ref$mode,\n inlineCollapsed = _ref.inlineCollapsed,\n disabled = _ref.disabled,\n disabledOverflow = _ref.disabledOverflow,\n _ref$subMenuOpenDelay = _ref.subMenuOpenDelay,\n subMenuOpenDelay = _ref$subMenuOpenDelay === void 0 ? 0.1 : _ref$subMenuOpenDelay,\n _ref$subMenuCloseDela = _ref.subMenuCloseDelay,\n subMenuCloseDelay = _ref$subMenuCloseDela === void 0 ? 0.1 : _ref$subMenuCloseDela,\n forceSubMenuRender = _ref.forceSubMenuRender,\n defaultOpenKeys = _ref.defaultOpenKeys,\n openKeys = _ref.openKeys,\n activeKey = _ref.activeKey,\n defaultActiveFirst = _ref.defaultActiveFirst,\n _ref$selectable = _ref.selectable,\n selectable = _ref$selectable === void 0 ? true : _ref$selectable,\n _ref$multiple = _ref.multiple,\n multiple = _ref$multiple === void 0 ? false : _ref$multiple,\n defaultSelectedKeys = _ref.defaultSelectedKeys,\n selectedKeys = _ref.selectedKeys,\n onSelect = _ref.onSelect,\n onDeselect = _ref.onDeselect,\n _ref$inlineIndent = _ref.inlineIndent,\n inlineIndent = _ref$inlineIndent === void 0 ? 24 : _ref$inlineIndent,\n motion = _ref.motion,\n defaultMotions = _ref.defaultMotions,\n _ref$triggerSubMenuAc = _ref.triggerSubMenuAction,\n triggerSubMenuAction = _ref$triggerSubMenuAc === void 0 ? 'hover' : _ref$triggerSubMenuAc,\n builtinPlacements = _ref.builtinPlacements,\n itemIcon = _ref.itemIcon,\n expandIcon = _ref.expandIcon,\n _ref$overflowedIndica = _ref.overflowedIndicator,\n overflowedIndicator = _ref$overflowedIndica === void 0 ? '...' : _ref$overflowedIndica,\n overflowedIndicatorPopupClassName = _ref.overflowedIndicatorPopupClassName,\n getPopupContainer = _ref.getPopupContainer,\n onClick = _ref.onClick,\n onOpenChange = _ref.onOpenChange,\n onKeyDown = _ref.onKeyDown,\n openAnimation = _ref.openAnimation,\n openTransitionName = _ref.openTransitionName,\n _internalRenderMenuItem = _ref._internalRenderMenuItem,\n _internalRenderSubMenuItem = _ref._internalRenderSubMenuItem,\n restProps = _objectWithoutProperties(_ref, _excluded);\n var childList = React.useMemo(function () {\n return parseItems(children, items, EMPTY_LIST);\n }, [children, items]);\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n mounted = _React$useState2[0],\n setMounted = _React$useState2[1];\n var containerRef = React.useRef();\n var uuid = useUUID(id);\n var isRtl = direction === 'rtl';\n\n // ========================= Warn =========================\n if (process.env.NODE_ENV !== 'production') {\n warning(!openAnimation && !openTransitionName, '`openAnimation` and `openTransitionName` is removed. Please use `motion` or `defaultMotion` instead.');\n }\n\n // ========================= Open =========================\n var _useMergedState = useMergedState(defaultOpenKeys, {\n value: openKeys,\n postState: function postState(keys) {\n return keys || EMPTY_LIST;\n }\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n mergedOpenKeys = _useMergedState2[0],\n setMergedOpenKeys = _useMergedState2[1];\n\n // React 18 will merge mouse event which means we open key will not sync\n // ref: https://github.com/ant-design/ant-design/issues/38818\n var triggerOpenKeys = function triggerOpenKeys(keys) {\n var forceFlush = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n function doUpdate() {\n setMergedOpenKeys(keys);\n onOpenChange === null || onOpenChange === void 0 || onOpenChange(keys);\n }\n if (forceFlush) {\n flushSync(doUpdate);\n } else {\n doUpdate();\n }\n };\n\n // >>>>> Cache & Reset open keys when inlineCollapsed changed\n var _React$useState3 = React.useState(mergedOpenKeys),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n inlineCacheOpenKeys = _React$useState4[0],\n setInlineCacheOpenKeys = _React$useState4[1];\n var mountRef = React.useRef(false);\n\n // ========================= Mode =========================\n var _React$useMemo = React.useMemo(function () {\n if ((mode === 'inline' || mode === 'vertical') && inlineCollapsed) {\n return ['vertical', inlineCollapsed];\n }\n return [mode, false];\n }, [mode, inlineCollapsed]),\n _React$useMemo2 = _slicedToArray(_React$useMemo, 2),\n mergedMode = _React$useMemo2[0],\n mergedInlineCollapsed = _React$useMemo2[1];\n var isInlineMode = mergedMode === 'inline';\n var _React$useState5 = React.useState(mergedMode),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n internalMode = _React$useState6[0],\n setInternalMode = _React$useState6[1];\n var _React$useState7 = React.useState(mergedInlineCollapsed),\n _React$useState8 = _slicedToArray(_React$useState7, 2),\n internalInlineCollapsed = _React$useState8[0],\n setInternalInlineCollapsed = _React$useState8[1];\n React.useEffect(function () {\n setInternalMode(mergedMode);\n setInternalInlineCollapsed(mergedInlineCollapsed);\n if (!mountRef.current) {\n return;\n }\n // Synchronously update MergedOpenKeys\n if (isInlineMode) {\n setMergedOpenKeys(inlineCacheOpenKeys);\n } else {\n // Trigger open event in case its in control\n triggerOpenKeys(EMPTY_LIST);\n }\n }, [mergedMode, mergedInlineCollapsed]);\n\n // ====================== Responsive ======================\n var _React$useState9 = React.useState(0),\n _React$useState10 = _slicedToArray(_React$useState9, 2),\n lastVisibleIndex = _React$useState10[0],\n setLastVisibleIndex = _React$useState10[1];\n var allVisible = lastVisibleIndex >= childList.length - 1 || internalMode !== 'horizontal' || disabledOverflow;\n\n // Cache\n React.useEffect(function () {\n if (isInlineMode) {\n setInlineCacheOpenKeys(mergedOpenKeys);\n }\n }, [mergedOpenKeys]);\n React.useEffect(function () {\n mountRef.current = true;\n return function () {\n mountRef.current = false;\n };\n }, []);\n\n // ========================= Path =========================\n var _useKeyRecords = useKeyRecords(),\n registerPath = _useKeyRecords.registerPath,\n unregisterPath = _useKeyRecords.unregisterPath,\n refreshOverflowKeys = _useKeyRecords.refreshOverflowKeys,\n isSubPathKey = _useKeyRecords.isSubPathKey,\n getKeyPath = _useKeyRecords.getKeyPath,\n getKeys = _useKeyRecords.getKeys,\n getSubPathKeys = _useKeyRecords.getSubPathKeys;\n var registerPathContext = React.useMemo(function () {\n return {\n registerPath: registerPath,\n unregisterPath: unregisterPath\n };\n }, [registerPath, unregisterPath]);\n var pathUserContext = React.useMemo(function () {\n return {\n isSubPathKey: isSubPathKey\n };\n }, [isSubPathKey]);\n React.useEffect(function () {\n refreshOverflowKeys(allVisible ? EMPTY_LIST : childList.slice(lastVisibleIndex + 1).map(function (child) {\n return child.key;\n }));\n }, [lastVisibleIndex, allVisible]);\n\n // ======================== Active ========================\n var _useMergedState3 = useMergedState(activeKey || defaultActiveFirst && ((_childList$ = childList[0]) === null || _childList$ === void 0 ? void 0 : _childList$.key), {\n value: activeKey\n }),\n _useMergedState4 = _slicedToArray(_useMergedState3, 2),\n mergedActiveKey = _useMergedState4[0],\n setMergedActiveKey = _useMergedState4[1];\n var onActive = useMemoCallback(function (key) {\n setMergedActiveKey(key);\n });\n var onInactive = useMemoCallback(function () {\n setMergedActiveKey(undefined);\n });\n useImperativeHandle(ref, function () {\n return {\n list: containerRef.current,\n focus: function focus(options) {\n var _childList$find;\n var keys = getKeys();\n var _refreshElements = refreshElements(keys, uuid),\n elements = _refreshElements.elements,\n key2element = _refreshElements.key2element,\n element2key = _refreshElements.element2key;\n var focusableElements = getFocusableElements(containerRef.current, elements);\n var shouldFocusKey = mergedActiveKey !== null && mergedActiveKey !== void 0 ? mergedActiveKey : focusableElements[0] ? element2key.get(focusableElements[0]) : (_childList$find = childList.find(function (node) {\n return !node.props.disabled;\n })) === null || _childList$find === void 0 ? void 0 : _childList$find.key;\n var elementToFocus = key2element.get(shouldFocusKey);\n if (shouldFocusKey && elementToFocus) {\n var _elementToFocus$focus;\n elementToFocus === null || elementToFocus === void 0 || (_elementToFocus$focus = elementToFocus.focus) === null || _elementToFocus$focus === void 0 || _elementToFocus$focus.call(elementToFocus, options);\n }\n }\n };\n });\n\n // ======================== Select ========================\n // >>>>> Select keys\n var _useMergedState5 = useMergedState(defaultSelectedKeys || [], {\n value: selectedKeys,\n // Legacy convert key to array\n postState: function postState(keys) {\n if (Array.isArray(keys)) {\n return keys;\n }\n if (keys === null || keys === undefined) {\n return EMPTY_LIST;\n }\n return [keys];\n }\n }),\n _useMergedState6 = _slicedToArray(_useMergedState5, 2),\n mergedSelectKeys = _useMergedState6[0],\n setMergedSelectKeys = _useMergedState6[1];\n\n // >>>>> Trigger select\n var triggerSelection = function triggerSelection(info) {\n if (selectable) {\n // Insert or Remove\n var targetKey = info.key;\n var exist = mergedSelectKeys.includes(targetKey);\n var newSelectKeys;\n if (multiple) {\n if (exist) {\n newSelectKeys = mergedSelectKeys.filter(function (key) {\n return key !== targetKey;\n });\n } else {\n newSelectKeys = [].concat(_toConsumableArray(mergedSelectKeys), [targetKey]);\n }\n } else {\n newSelectKeys = [targetKey];\n }\n setMergedSelectKeys(newSelectKeys);\n\n // Trigger event\n var selectInfo = _objectSpread(_objectSpread({}, info), {}, {\n selectedKeys: newSelectKeys\n });\n if (exist) {\n onDeselect === null || onDeselect === void 0 || onDeselect(selectInfo);\n } else {\n onSelect === null || onSelect === void 0 || onSelect(selectInfo);\n }\n }\n\n // Whatever selectable, always close it\n if (!multiple && mergedOpenKeys.length && internalMode !== 'inline') {\n triggerOpenKeys(EMPTY_LIST);\n }\n };\n\n // ========================= Open =========================\n /**\n * Click for item. SubMenu do not have selection status\n */\n var onInternalClick = useMemoCallback(function (info) {\n onClick === null || onClick === void 0 || onClick(warnItemProp(info));\n triggerSelection(info);\n });\n var onInternalOpenChange = useMemoCallback(function (key, open) {\n var newOpenKeys = mergedOpenKeys.filter(function (k) {\n return k !== key;\n });\n if (open) {\n newOpenKeys.push(key);\n } else if (internalMode !== 'inline') {\n // We need find all related popup to close\n var subPathKeys = getSubPathKeys(key);\n newOpenKeys = newOpenKeys.filter(function (k) {\n return !subPathKeys.has(k);\n });\n }\n if (!isEqual(mergedOpenKeys, newOpenKeys, true)) {\n triggerOpenKeys(newOpenKeys, true);\n }\n });\n\n // ==================== Accessibility =====================\n var triggerAccessibilityOpen = function triggerAccessibilityOpen(key, open) {\n var nextOpen = open !== null && open !== void 0 ? open : !mergedOpenKeys.includes(key);\n onInternalOpenChange(key, nextOpen);\n };\n var onInternalKeyDown = useAccessibility(internalMode, mergedActiveKey, isRtl, uuid, containerRef, getKeys, getKeyPath, setMergedActiveKey, triggerAccessibilityOpen, onKeyDown);\n\n // ======================== Effect ========================\n React.useEffect(function () {\n setMounted(true);\n }, []);\n\n // ======================= Context ========================\n var privateContext = React.useMemo(function () {\n return {\n _internalRenderMenuItem: _internalRenderMenuItem,\n _internalRenderSubMenuItem: _internalRenderSubMenuItem\n };\n }, [_internalRenderMenuItem, _internalRenderSubMenuItem]);\n\n // ======================== Render ========================\n\n // >>>>> Children\n var wrappedChildList = internalMode !== 'horizontal' || disabledOverflow ? childList :\n // Need wrap for overflow dropdown that do not response for open\n childList.map(function (child, index) {\n return (\n /*#__PURE__*/\n // Always wrap provider to avoid sub node re-mount\n React.createElement(MenuContextProvider, {\n key: child.key,\n overflowDisabled: index > lastVisibleIndex\n }, child)\n );\n });\n\n // >>>>> Container\n var container = /*#__PURE__*/React.createElement(Overflow, _extends({\n id: id,\n ref: containerRef,\n prefixCls: \"\".concat(prefixCls, \"-overflow\"),\n component: \"ul\",\n itemComponent: MenuItem,\n className: classNames(prefixCls, \"\".concat(prefixCls, \"-root\"), \"\".concat(prefixCls, \"-\").concat(internalMode), className, (_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-inline-collapsed\"), internalInlineCollapsed), _defineProperty(_classNames, \"\".concat(prefixCls, \"-rtl\"), isRtl), _classNames), rootClassName),\n dir: direction,\n style: style,\n role: \"menu\",\n tabIndex: tabIndex,\n data: wrappedChildList,\n renderRawItem: function renderRawItem(node) {\n return node;\n },\n renderRawRest: function renderRawRest(omitItems) {\n // We use origin list since wrapped list use context to prevent open\n var len = omitItems.length;\n var originOmitItems = len ? childList.slice(-len) : null;\n return /*#__PURE__*/React.createElement(SubMenu, {\n eventKey: OVERFLOW_KEY,\n title: overflowedIndicator,\n disabled: allVisible,\n internalPopupClose: len === 0,\n popupClassName: overflowedIndicatorPopupClassName\n }, originOmitItems);\n },\n maxCount: internalMode !== 'horizontal' || disabledOverflow ? Overflow.INVALIDATE : Overflow.RESPONSIVE,\n ssr: \"full\",\n \"data-menu-list\": true,\n onVisibleChange: function onVisibleChange(newLastIndex) {\n setLastVisibleIndex(newLastIndex);\n },\n onKeyDown: onInternalKeyDown\n }, restProps));\n\n // >>>>> Render\n return /*#__PURE__*/React.createElement(PrivateContext.Provider, {\n value: privateContext\n }, /*#__PURE__*/React.createElement(IdContext.Provider, {\n value: uuid\n }, /*#__PURE__*/React.createElement(MenuContextProvider, {\n prefixCls: prefixCls,\n rootClassName: rootClassName,\n mode: internalMode,\n openKeys: mergedOpenKeys,\n rtl: isRtl\n // Disabled\n ,\n disabled: disabled\n // Motion\n ,\n motion: mounted ? motion : null,\n defaultMotions: mounted ? defaultMotions : null\n // Active\n ,\n activeKey: mergedActiveKey,\n onActive: onActive,\n onInactive: onInactive\n // Selection\n ,\n selectedKeys: mergedSelectKeys\n // Level\n ,\n inlineIndent: inlineIndent\n // Popup\n ,\n subMenuOpenDelay: subMenuOpenDelay,\n subMenuCloseDelay: subMenuCloseDelay,\n forceSubMenuRender: forceSubMenuRender,\n builtinPlacements: builtinPlacements,\n triggerSubMenuAction: triggerSubMenuAction,\n getPopupContainer: getPopupContainer\n // Icon\n ,\n itemIcon: itemIcon,\n expandIcon: expandIcon\n // Events\n ,\n onItemClick: onInternalClick,\n onOpenChange: onInternalOpenChange\n }, /*#__PURE__*/React.createElement(PathUserContext.Provider, {\n value: pathUserContext\n }, container), /*#__PURE__*/React.createElement(\"div\", {\n style: {\n display: 'none'\n },\n \"aria-hidden\": true\n }, /*#__PURE__*/React.createElement(PathRegisterContext.Provider, {\n value: registerPathContext\n }, childList)))));\n});\nexport default Menu;","import Menu from \"./Menu\";\nimport MenuItem from \"./MenuItem\";\nimport SubMenu from \"./SubMenu\";\nimport MenuItemGroup from \"./MenuItemGroup\";\nimport { useFullPath } from \"./context/PathContext\";\nimport Divider from \"./Divider\";\nexport { SubMenu, MenuItem as Item, MenuItem, MenuItemGroup, MenuItemGroup as ItemGroup, Divider, /** @private Only used for antd internal. Do not use in your production. */\nuseFullPath };\nvar ExportMenu = Menu;\nExportMenu.Item = MenuItem;\nExportMenu.SubMenu = SubMenu;\nExportMenu.ItemGroup = MenuItemGroup;\nExportMenu.Divider = Divider;\nexport default ExportMenu;","export function nextSlice(callback) {\n /* istanbul ignore next */\n Promise.resolve().then(callback);\n}","export default function canUseDom() {\n return !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport canUseDOM from \"rc-util/es/Dom/canUseDom\"; // ================= Transition =================\n// Event wrapper. Copy from react source code\n\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}\n\nexport function getVendorPrefixes(domSupport, win) {\n var prefixes = {\n animationend: makePrefixMap('Animation', 'AnimationEnd'),\n transitionend: makePrefixMap('Transition', 'TransitionEnd')\n };\n\n if (domSupport) {\n if (!('AnimationEvent' in win)) {\n delete prefixes.animationend.animation;\n }\n\n if (!('TransitionEvent' in win)) {\n delete prefixes.transitionend.transition;\n }\n }\n\n return prefixes;\n}\nvar vendorPrefixes = getVendorPrefixes(canUseDOM(), typeof window !== 'undefined' ? window : {});\nvar style = {};\n\nif (canUseDOM()) {\n var _document$createEleme = document.createElement('div');\n\n style = _document$createEleme.style;\n}\n\nvar prefixedEventNames = {};\nexport function getVendorPrefixedEventName(eventName) {\n if (prefixedEventNames[eventName]) {\n return prefixedEventNames[eventName];\n }\n\n var prefixMap = vendorPrefixes[eventName];\n\n if (prefixMap) {\n var stylePropList = Object.keys(prefixMap);\n var len = stylePropList.length;\n\n for (var i = 0; i < len; i += 1) {\n var styleProp = stylePropList[i];\n\n if (Object.prototype.hasOwnProperty.call(prefixMap, styleProp) && styleProp in style) {\n prefixedEventNames[eventName] = prefixMap[styleProp];\n return prefixedEventNames[eventName];\n }\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\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\n return \"\".concat(transitionName, \"-\").concat(transitionType);\n}","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';","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\n/**\n * Same as React.useState but `setState` accept `ignoreDestroy` param to not to setState after destroyed.\n * We do not make this auto is to avoid real memory leak.\n * Developer should confirm it's safe to ignore themselves.\n */\n\nexport default function useSafeState(defaultValue) {\n var destroyRef = React.useRef(false);\n\n var _React$useState = React.useState(defaultValue),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n value = _React$useState2[0],\n setValue = _React$useState2[1];\n\n React.useEffect(function () {\n destroyRef.current = false;\n return function () {\n destroyRef.current = true;\n };\n }, []);\n\n function safeSetState(updater, ignoreDestroy) {\n if (ignoreDestroy && destroyRef.current) {\n return;\n }\n\n setValue(updater);\n }\n\n return [value, safeSetState];\n}","var raf = function raf(callback) {\n return +setTimeout(callback, 16);\n};\n\nvar caf = function caf(num) {\n return clearTimeout(num);\n};\n\nif (typeof window !== 'undefined' && 'requestAnimationFrame' in window) {\n raf = function raf(callback) {\n return window.requestAnimationFrame(callback);\n };\n\n caf = function caf(handle) {\n return window.cancelAnimationFrame(handle);\n };\n}\n\nvar rafUUID = 0;\nvar rafIds = new Map();\n\nfunction cleanup(id) {\n rafIds.delete(id);\n}\n\nexport default function wrapperRaf(callback) {\n var times = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n rafUUID += 1;\n var id = rafUUID;\n\n function callRef(leftTimes) {\n if (leftTimes === 0) {\n // Clean up\n cleanup(id); // Trigger\n\n callback();\n } else {\n // Next raf\n var realId = raf(function () {\n callRef(leftTimes - 1);\n }); // Bind real raf id\n\n rafIds.set(id, realId);\n }\n }\n\n callRef(times);\n return id;\n}\n\nwrapperRaf.cancel = function (id) {\n var realId = rafIds.get(id);\n cleanup(realId);\n return caf(realId);\n};","import { useEffect, useLayoutEffect } from 'react';\nimport canUseDom from \"rc-util/es/Dom/canUseDom\"; // It's safe to use `useLayoutEffect` but the warning is annoying\n\nvar useIsomorphicLayoutEffect = canUseDom() ? useLayoutEffect : useEffect;\nexport default useIsomorphicLayoutEffect;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport useState from \"rc-util/es/hooks/useState\";\nimport { STEP_PREPARE, STEP_ACTIVE, STEP_START, STEP_ACTIVATED, STEP_NONE } from '../interface';\nimport useNextFrame from './useNextFrame';\nimport useIsomorphicLayoutEffect from './useIsomorphicLayoutEffect';\nvar STEP_QUEUE = [STEP_PREPARE, STEP_START, STEP_ACTIVE, STEP_ACTIVATED];\n/** Skip current step */\n\nexport var SkipStep = false;\n/** Current step should be update in */\n\nexport var DoStep = true;\nexport function isActive(step) {\n return step === STEP_ACTIVE || step === STEP_ACTIVATED;\n}\nexport default (function (status, callback) {\n var _useState = useState(STEP_NONE),\n _useState2 = _slicedToArray(_useState, 2),\n step = _useState2[0],\n setStep = _useState2[1];\n\n var _useNextFrame = useNextFrame(),\n _useNextFrame2 = _slicedToArray(_useNextFrame, 2),\n nextFrame = _useNextFrame2[0],\n cancelNextFrame = _useNextFrame2[1];\n\n function startQueue() {\n setStep(STEP_PREPARE, true);\n }\n\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\n if (result === SkipStep) {\n // Skip when no needed\n setStep(nextStep, true);\n } else {\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\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 _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useRef, useEffect } from 'react';\nimport useState from \"rc-util/es/hooks/useState\";\nimport { STATUS_APPEAR, STATUS_NONE, STATUS_LEAVE, STATUS_ENTER, STEP_PREPARE, STEP_START, STEP_ACTIVE } from '../interface';\nimport useStepQueue, { DoStep, SkipStep, isActive } from './useStepQueue';\nimport useDomMotionEvents from './useDomMotionEvents';\nimport useIsomorphicLayoutEffect from './useIsomorphicLayoutEffect';\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\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\n var _useState3 = useState(STATUS_NONE),\n _useState4 = _slicedToArray(_useState3, 2),\n status = _useState4[0],\n setStatus = _useState4[1];\n\n var _useState5 = useState(null),\n _useState6 = _slicedToArray(_useState5, 2),\n style = _useState6[0],\n setStyle = _useState6[1];\n\n var mountedRef = useRef(false);\n var deadlineRef = useRef(null); // =========================== Dom Node ===========================\n\n function getDomElement() {\n return getElement();\n } // ========================== Motion End ==========================\n\n\n var activeRef = useRef(false);\n\n function onInternalMotionEnd(event) {\n var element = getDomElement();\n\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\n var currentActive = activeRef.current;\n var canEnd;\n\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 } // Only update status when `canEnd` and not destroyed\n\n\n if (status !== STATUS_NONE && currentActive && canEnd !== false) {\n setStatus(STATUS_NONE, true);\n setStyle(null, true);\n }\n }\n\n var _useDomMotionEvents = useDomMotionEvents(onInternalMotionEnd),\n _useDomMotionEvents2 = _slicedToArray(_useDomMotionEvents, 1),\n patchMotionEvents = _useDomMotionEvents2[0]; // ============================= Step =============================\n\n\n var eventHandlers = React.useMemo(function () {\n var _ref2, _ref3, _ref4;\n\n switch (status) {\n case STATUS_APPEAR:\n return _ref2 = {}, _defineProperty(_ref2, STEP_PREPARE, onAppearPrepare), _defineProperty(_ref2, STEP_START, onAppearStart), _defineProperty(_ref2, STEP_ACTIVE, onAppearActive), _ref2;\n\n case STATUS_ENTER:\n return _ref3 = {}, _defineProperty(_ref3, STEP_PREPARE, onEnterPrepare), _defineProperty(_ref3, STEP_START, onEnterStart), _defineProperty(_ref3, STEP_ACTIVE, onEnterActive), _ref3;\n\n case STATUS_LEAVE:\n return _ref4 = {}, _defineProperty(_ref4, STEP_PREPARE, onLeavePrepare), _defineProperty(_ref4, STEP_START, onLeaveStart), _defineProperty(_ref4, STEP_ACTIVE, onLeaveActive), _ref4;\n\n default:\n return {};\n }\n }, [status]);\n\n var _useStepQueue = useStepQueue(status, function (newStep) {\n // Only prepare step can be skip\n if (newStep === STEP_PREPARE) {\n var onPrepare = eventHandlers[STEP_PREPARE];\n\n if (!onPrepare) {\n return SkipStep;\n }\n\n return onPrepare(getDomElement());\n } // Rest step is sync update\n\n\n // Rest step is sync update\n if (step in eventHandlers) {\n var _eventHandlers$step;\n\n setStyle(((_eventHandlers$step = eventHandlers[step]) === null || _eventHandlers$step === void 0 ? void 0 : _eventHandlers$step.call(eventHandlers, getDomElement(), null)) || null);\n }\n\n if (step === STEP_ACTIVE) {\n // Patch events when motion needed\n patchMotionEvents(getDomElement());\n\n if (motionDeadline > 0) {\n clearTimeout(deadlineRef.current);\n deadlineRef.current = setTimeout(function () {\n onInternalMotionEnd({\n deadline: true\n });\n }, motionDeadline);\n }\n }\n\n return DoStep;\n }),\n _useStepQueue2 = _slicedToArray(_useStepQueue, 2),\n startStep = _useStepQueue2[0],\n step = _useStepQueue2[1];\n\n var active = isActive(step);\n activeRef.current = active; // ============================ Status ============================\n // Update with new status\n\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; // Appear\n\n if (!isMounted && visible && motionAppear) {\n nextStatus = STATUS_APPEAR;\n } // Enter\n\n\n if (isMounted && visible && motionEnter) {\n nextStatus = STATUS_ENTER;\n } // Leave\n\n\n if (isMounted && !visible && motionLeave || !isMounted && motionLeaveImmediately && !visible && motionLeave) {\n nextStatus = STATUS_LEAVE;\n } // Update to next status\n\n\n if (nextStatus) {\n setStatus(nextStatus);\n startStep();\n }\n }, [visible]); // ============================ Effect ============================\n // Reset when motion changed\n\n useEffect(function () {\n if ( // Cancel appear\n status === STATUS_APPEAR && !motionAppear || // Cancel enter\n status === STATUS_ENTER && !motionEnter || // 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 }, []); // Trigger `onVisibleChanged`\n\n useEffect(function () {\n if (asyncVisible !== undefined && status === STATUS_NONE) {\n onVisibleChanged === null || onVisibleChanged === void 0 ? void 0 : onVisibleChanged(asyncVisible);\n }\n }, [asyncVisible, status]); // ============================ Styles ============================\n\n var mergedStyle = style;\n\n if (eventHandlers[STEP_PREPARE] && step === STEP_START) {\n mergedStyle = _objectSpread({\n transition: 'none'\n }, mergedStyle);\n }\n\n return [status, step, mergedStyle, asyncVisible !== null && asyncVisible !== void 0 ? asyncVisible : visible];\n}","import * as React from 'react';\nimport { useRef } from 'react';\nimport { animationEndName, transitionEndName } from '../util/motion';\nexport default (function (callback) {\n var cacheElementRef = useRef(); // Cache callback\n\n var callbackRef = useRef(callback);\n callbackRef.current = callback; // Internal motion event handler\n\n var onInternalMotionEnd = React.useCallback(function (event) {\n callbackRef.current(event);\n }, []); // Remove events\n\n function removeMotionEvents(element) {\n if (element) {\n element.removeEventListener(transitionEndName, onInternalMotionEnd);\n element.removeEventListener(animationEndName, onInternalMotionEnd);\n }\n } // Patch events\n\n\n function patchMotionEvents(element) {\n if (cacheElementRef.current && cacheElementRef.current !== element) {\n removeMotionEvents(cacheElementRef.current);\n }\n\n if (element && element !== cacheElementRef.current) {\n element.addEventListener(transitionEndName, onInternalMotionEnd);\n element.addEventListener(animationEndName, onInternalMotionEnd); // Save as cache in case dom removed trigger by `motionDeadline`\n\n cacheElementRef.current = element;\n }\n } // Clean up when removed\n\n\n React.useEffect(function () {\n return function () {\n removeMotionEvents(cacheElementRef.current);\n };\n }, []);\n return [patchMotionEvents, removeMotionEvents];\n});","import * as React from 'react';\nimport raf from \"rc-util/es/raf\";\nexport default (function () {\n var nextFrameRef = React.useRef(null);\n\n function cancelNextFrame() {\n raf.cancel(nextFrameRef.current);\n }\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\n React.useEffect(function () {\n return function () {\n cancelNextFrame();\n };\n }, []);\n return [nextFrame, cancelNextFrame];\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';\n\nvar DomWrapper = /*#__PURE__*/function (_React$Component) {\n _inherits(DomWrapper, _React$Component);\n\n var _super = _createSuper(DomWrapper);\n\n function DomWrapper() {\n _classCallCheck(this, DomWrapper);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(DomWrapper, [{\n key: \"render\",\n value: function render() {\n return this.props.children;\n }\n }]);\n\n return DomWrapper;\n}(React.Component);\n\nexport default DomWrapper;","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\n/* eslint-disable react/default-props-match-prop-types, react/no-multi-comp, react/prop-types */\nimport * as React from 'react';\nimport { useRef } from 'react';\nimport findDOMNode from \"rc-util/es/Dom/findDOMNode\";\nimport { fillRef, supportRef } from \"rc-util/es/ref\";\nimport classNames from 'classnames';\nimport { getTransitionName, supportTransition } from './util/motion';\nimport { STATUS_NONE, STEP_PREPARE, STEP_START } from './interface';\nimport useStatus from './hooks/useStatus';\nimport DomWrapper from './DomWrapper';\nimport { isActive } from './hooks/useStepQueue';\n/**\n * `transitionSupport` is used for none transition test case.\n * Default we use browser transition event support check.\n */\n\nexport function genCSSMotion(config) {\n var transitionSupport = config;\n\n if (_typeof(config) === 'object') {\n transitionSupport = config.transitionSupport;\n }\n\n function isSupportTransition(props) {\n return !!(props.motionName && transitionSupport);\n }\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 supportMotion = isSupportTransition(props); // Ref to the react node, it may be a HTMLElement\n\n var nodeRef = useRef(); // Ref to the dom wrapper in case ref can not pass to HTMLElement\n\n var wrapperNodeRef = useRef();\n\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\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]; // Record whether content has rendered\n // Will return null for un-rendered even when `removeOnLeave={false}`\n\n\n var renderedRef = React.useRef(mergedVisible);\n\n if (mergedVisible) {\n renderedRef.current = true;\n } // ====================== Refs ======================\n\n\n var setNodeRef = React.useCallback(function (node) {\n nodeRef.current = node;\n fillRef(ref, node);\n }, [ref]); // ===================== Render =====================\n\n var motionChildren;\n\n var mergedProps = _objectSpread(_objectSpread({}, eventProps), {}, {\n visible: visible\n });\n\n if (!children) {\n // No children\n motionChildren = null;\n } else if (status === STATUS_NONE || !isSupportTransition(props)) {\n // Stable children\n if (mergedVisible) {\n motionChildren = children(_objectSpread({}, mergedProps), setNodeRef);\n } else if (!removeOnLeave && renderedRef.current) {\n motionChildren = children(_objectSpread(_objectSpread({}, mergedProps), {}, {\n className: leavedClassName\n }), setNodeRef);\n } else if (forceRender) {\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\n // In motion\n var statusSuffix;\n\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\n motionChildren = children(_objectSpread(_objectSpread({}, mergedProps), {}, {\n className: classNames(getTransitionName(motionName, status), (_classNames = {}, _defineProperty(_classNames, getTransitionName(motionName, \"\".concat(status, \"-\").concat(statusSuffix)), statusSuffix), _defineProperty(_classNames, motionName, typeof motionName === 'string'), _classNames)),\n style: statusStyle\n }), setNodeRef);\n } // Auto inject ref if child node not have `ref` props\n\n\n if ( /*#__PURE__*/React.isValidElement(motionChildren) && supportRef(motionChildren)) {\n var _motionChildren = motionChildren,\n originNodeRef = _motionChildren.ref;\n\n if (!originNodeRef) {\n motionChildren = /*#__PURE__*/React.cloneElement(motionChildren, {\n ref: setNodeRef\n });\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 ReactDOM from 'react-dom';\n/**\n * Return if a node is a DOM node. Else will return by `findDOMNode`\n */\n\nexport default function findDOMNode(node) {\n if (node instanceof HTMLElement) {\n return node;\n }\n\n return ReactDOM.findDOMNode(node);\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport { isMemo } from 'react-is';\nimport useMemo from './hooks/useMemo';\nexport function fillRef(ref, node) {\n if (typeof ref === 'function') {\n ref(node);\n } else if (_typeof(ref) === 'object' && ref && 'current' in ref) {\n ref.current = node;\n }\n}\n/**\n * Merge refs into one ref function to support ref passing.\n */\n\nexport function composeRef() {\n for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {\n refs[_key] = arguments[_key];\n }\n\n var refList = refs.filter(function (ref) {\n return ref;\n });\n\n if (refList.length <= 1) {\n return refList[0];\n }\n\n return function (node) {\n refs.forEach(function (ref) {\n fillRef(ref, node);\n });\n };\n}\nexport function useComposeRef() {\n for (var _len2 = arguments.length, refs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n refs[_key2] = arguments[_key2];\n }\n\n return useMemo(function () {\n return composeRef.apply(void 0, refs);\n }, refs, function (prev, next) {\n return prev.length === next.length && prev.every(function (ref, i) {\n return ref === next[i];\n });\n });\n}\nexport function supportRef(nodeOrComponent) {\n var _type$prototype, _nodeOrComponent$prot;\n\n var type = isMemo(nodeOrComponent) ? nodeOrComponent.type.type : nodeOrComponent.type; // Function component node\n\n if (typeof type === 'function' && !((_type$prototype = type.prototype) === null || _type$prototype === void 0 ? void 0 : _type$prototype.render)) {\n return false;\n } // Class component\n\n\n if (typeof nodeOrComponent === 'function' && !((_nodeOrComponent$prot = nodeOrComponent.prototype) === null || _nodeOrComponent$prot === void 0 ? void 0 : _nodeOrComponent$prot.render)) {\n return false;\n }\n\n return true;\n}\n/* eslint-enable */","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\n if (key && _typeof(key) === 'object' && 'key' in key) {\n keyObj = key;\n } else {\n keyObj = {\n key: key\n };\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); // Check prev keys to insert or keep\n\n prevKeyObjects.forEach(function (keyObj) {\n var hit = false;\n\n for (var i = currentIndex; i < currentLen; i += 1) {\n var currentKeyObj = currentKeyObjects[i];\n\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\n list.push(_objectSpread(_objectSpread({}, currentKeyObj), {}, {\n status: STATUS_KEEP\n }));\n currentIndex += 1;\n hit = true;\n break;\n }\n } // If not hit, it means key is removed\n\n\n if (!hit) {\n list.push(_objectSpread(_objectSpread({}, keyObj), {}, {\n status: STATUS_REMOVE\n }));\n }\n }); // Add rest to the list\n\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 * Merge same key when it remove and add again:\n * [1 - add, 2 - keep, 1 - remove] -> [1 - keep, 2 - keep]\n */\n\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 }); // Update `STATUS_ADD` to `STATUS_KEEP`\n\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 _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nvar _excluded = [\"component\", \"children\", \"onVisibleChanged\", \"onAllRemoved\"],\n _excluded2 = [\"status\"];\n\n/* eslint react/prop-types: 0 */\nimport * as React from 'react';\nimport OriginCSSMotion from './CSSMotion';\nimport { supportTransition } from './util/motion';\nimport { STATUS_ADD, STATUS_KEEP, STATUS_REMOVE, STATUS_REMOVED, diffKeys, parseKeys } from './util/diff';\nvar MOTION_PROP_NAMES = ['eventProps', 'visible', 'children', 'motionName', 'motionAppear', 'motionEnter', 'motionLeave', 'motionLeaveImmediately', 'motionDeadline', 'removeOnLeave', 'leavedClassName', '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 */\n\nexport function genCSSMotionList(transitionSupport) {\n var CSSMotion = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : OriginCSSMotion;\n\n var CSSMotionList = /*#__PURE__*/function (_React$Component) {\n _inherits(CSSMotionList, _React$Component);\n\n var _super = _createSuper(CSSMotionList);\n\n function CSSMotionList() {\n var _this;\n\n _classCallCheck(this, CSSMotionList);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n _this.state = {\n keyEntities: []\n };\n\n _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\n _this.setState({\n keyEntities: nextKeyEntities\n });\n\n return nextKeyEntities.filter(function (_ref) {\n var status = _ref.status;\n return status !== STATUS_REMOVED;\n }).length;\n };\n\n return _this;\n }\n\n _createClass(CSSMotionList, [{\n key: \"render\",\n value: function render() {\n var _this2 = this;\n\n var keyEntities = this.state.keyEntities;\n\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\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) {\n var status = _ref2.status,\n eventProps = _objectWithoutProperties(_ref2, _excluded2);\n\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\n if (!changedVisible) {\n var restKeysCount = _this2.removeKey(eventProps.key);\n\n if (restKeysCount === 0 && onAllRemoved) {\n onAllRemoved();\n }\n }\n }\n }), children);\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 }); // Remove if already mark as removed\n\n if (prevEntity && prevEntity.status === STATUS_REMOVED && entity.status === STATUS_REMOVE) {\n return false;\n }\n\n return true;\n })\n };\n } // ZombieJ: Return the count of rest keys. It's safe to refactor if need more info.\n\n }]);\n\n return CSSMotionList;\n }(React.Component);\n\n CSSMotionList.defaultProps = {\n component: 'div'\n };\n return CSSMotionList;\n}\nexport default genCSSMotionList(supportTransition);","import CSSMotion from './CSSMotion';\nimport CSSMotionList from './CSSMotionList';\nexport { CSSMotionList };\nexport default CSSMotion;","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 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 _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useEvent } from 'rc-util';\nimport useState from \"rc-util/es/hooks/useState\";\nimport useSyncState from \"rc-util/es/hooks/useSyncState\";\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 _useSyncState = useSyncState(STATUS_NONE),\n _useSyncState2 = _slicedToArray(_useSyncState, 2),\n getStatus = _useSyncState2[0],\n setStatus = _useSyncState2[1];\n var _useState3 = useState(null),\n _useState4 = _slicedToArray(_useState3, 2),\n style = _useState4[0],\n setStyle = _useState4[1];\n var currentStatus = getStatus();\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);\n setStyle(null, true);\n }\n var onInternalMotionEnd = useEvent(function (event) {\n var status = getStatus();\n // Do nothing since not in any transition status.\n // This may happen when `motionDeadline` trigger.\n if (status === STATUS_NONE) {\n return;\n }\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 (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 switch (targetStatus) {\n case STATUS_APPEAR:\n return _defineProperty(_defineProperty(_defineProperty({}, STEP_PREPARE, onAppearPrepare), STEP_START, onAppearStart), STEP_ACTIVE, onAppearActive);\n case STATUS_ENTER:\n return _defineProperty(_defineProperty(_defineProperty({}, STEP_PREPARE, onEnterPrepare), STEP_START, onEnterStart), STEP_ACTIVE, onEnterActive);\n case STATUS_LEAVE:\n return _defineProperty(_defineProperty(_defineProperty({}, STEP_PREPARE, onLeavePrepare), STEP_START, onLeaveStart), STEP_ACTIVE, onLeaveActive);\n default:\n return {};\n }\n };\n var eventHandlers = React.useMemo(function () {\n return getEventHandlers(currentStatus);\n }, [currentStatus]);\n var _useStepQueue = useStepQueue(currentStatus, !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 && currentStatus !== STATUS_NONE) {\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 currentStatus === STATUS_APPEAR && !motionAppear ||\n // Cancel enter\n currentStatus === STATUS_ENTER && !motionEnter ||\n // Cancel leave\n currentStatus === 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 && currentStatus === STATUS_NONE) {\n // Skip first render is invisible since it's nothing changed\n if (firstMountChangeRef.current || asyncVisible) {\n onVisibleChanged === null || onVisibleChanged === void 0 || onVisibleChanged(asyncVisible);\n }\n firstMountChangeRef.current = true;\n }\n }, [asyncVisible, currentStatus]);\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 [currentStatus, step, mergedStyle, asyncVisible !== null && asyncVisible !== void 0 ? asyncVisible : visible];\n}","import * as React from 'react';\nimport { useRef } from 'react';\nimport { animationEndName, transitionEndName } from \"../util/motion\";\nexport default (function (onInternalMotionEnd) {\n var cacheElementRef = useRef();\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 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 // 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), _defineProperty(_defineProperty({}, motionCls, motionCls && statusSuffix), motionName, typeof motionName === 'string')),\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 _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 _this.setState(function (prevState) {\n var nextKeyEntities = prevState.keyEntities.map(function (entity) {\n if (entity.key !== removeKey) return entity;\n return _objectSpread(_objectSpread({}, entity), {}, {\n status: STATUS_REMOVED\n });\n });\n return {\n keyEntities: nextKeyEntities\n };\n }, function () {\n var keyEntities = _this.state.keyEntities;\n var restKeysCount = keyEntities.filter(function (_ref) {\n var status = _ref.status;\n return status !== STATUS_REMOVED;\n }).length;\n if (restKeysCount === 0 && _this.props.onAllRemoved) {\n _this.props.onAllRemoved();\n }\n });\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 || _onVisibleChanged(changedVisible, {\n key: eventProps.key\n });\n if (!changedVisible) {\n _this2.removeKey(eventProps.key);\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 _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport classNames from 'classnames';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport * as React from 'react';\nvar Notify = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n style = props.style,\n className = props.className,\n _props$duration = props.duration,\n duration = _props$duration === void 0 ? 4.5 : _props$duration,\n eventKey = props.eventKey,\n content = props.content,\n closable = props.closable,\n _props$closeIcon = props.closeIcon,\n closeIcon = _props$closeIcon === void 0 ? 'x' : _props$closeIcon,\n divProps = props.props,\n onClick = props.onClick,\n onNoticeClose = props.onNoticeClose,\n times = props.times,\n forcedHovering = props.hovering;\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n hovering = _React$useState2[0],\n setHovering = _React$useState2[1];\n var mergedHovering = forcedHovering || hovering;\n\n // ======================== Close =========================\n var onInternalClose = function onInternalClose() {\n onNoticeClose(eventKey);\n };\n var onCloseKeyDown = function onCloseKeyDown(e) {\n if (e.key === 'Enter' || e.code === 'Enter' || e.keyCode === KeyCode.ENTER) {\n onInternalClose();\n }\n };\n\n // ======================== Effect ========================\n React.useEffect(function () {\n if (!mergedHovering && duration > 0) {\n var timeout = setTimeout(function () {\n onInternalClose();\n }, duration * 1000);\n return function () {\n clearTimeout(timeout);\n };\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [duration, mergedHovering, times]);\n\n // ======================== Render ========================\n var noticePrefixCls = \"\".concat(prefixCls, \"-notice\");\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, divProps, {\n ref: ref,\n className: classNames(noticePrefixCls, className, _defineProperty({}, \"\".concat(noticePrefixCls, \"-closable\"), closable)),\n style: style,\n onMouseEnter: function onMouseEnter(e) {\n var _divProps$onMouseEnte;\n setHovering(true);\n divProps === null || divProps === void 0 || (_divProps$onMouseEnte = divProps.onMouseEnter) === null || _divProps$onMouseEnte === void 0 || _divProps$onMouseEnte.call(divProps, e);\n },\n onMouseLeave: function onMouseLeave(e) {\n var _divProps$onMouseLeav;\n setHovering(false);\n divProps === null || divProps === void 0 || (_divProps$onMouseLeav = divProps.onMouseLeave) === null || _divProps$onMouseLeav === void 0 || _divProps$onMouseLeav.call(divProps, e);\n },\n onClick: onClick\n }), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(noticePrefixCls, \"-content\")\n }, content), closable && /*#__PURE__*/React.createElement(\"a\", {\n tabIndex: 0,\n className: \"\".concat(noticePrefixCls, \"-close\"),\n onKeyDown: onCloseKeyDown,\n onClick: function onClick(e) {\n e.preventDefault();\n e.stopPropagation();\n onInternalClose();\n }\n }, closeIcon));\n});\nexport default Notify;","import React from 'react';\nexport var NotificationContext = /*#__PURE__*/React.createContext({});\nvar NotificationProvider = function NotificationProvider(_ref) {\n var children = _ref.children,\n classNames = _ref.classNames;\n return /*#__PURE__*/React.createElement(NotificationContext.Provider, {\n value: {\n classNames: classNames\n }\n }, children);\n};\nexport default NotificationProvider;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nvar _excluded = [\"className\", \"style\", \"classNames\", \"styles\"];\nimport React, { useContext, useEffect, useRef, useState } from 'react';\nimport clsx from 'classnames';\nimport { CSSMotionList } from 'rc-motion';\nimport Notice from \"./Notice\";\nimport { NotificationContext } from \"./NotificationProvider\";\nimport useStack from \"./hooks/useStack\";\nvar NoticeList = function NoticeList(props) {\n var _clsx;\n var configList = props.configList,\n placement = props.placement,\n prefixCls = props.prefixCls,\n className = props.className,\n style = props.style,\n motion = props.motion,\n onAllNoticeRemoved = props.onAllNoticeRemoved,\n onNoticeClose = props.onNoticeClose,\n stackConfig = props.stack;\n var _useContext = useContext(NotificationContext),\n ctxCls = _useContext.classNames;\n var dictRef = useRef({});\n var _useState = useState(null),\n _useState2 = _slicedToArray(_useState, 2),\n latestNotice = _useState2[0],\n setLatestNotice = _useState2[1];\n var _useState3 = useState([]),\n _useState4 = _slicedToArray(_useState3, 2),\n hoverKeys = _useState4[0],\n setHoverKeys = _useState4[1];\n var keys = configList.map(function (config) {\n return {\n config: config,\n key: String(config.key)\n };\n });\n var _useStack = useStack(stackConfig),\n _useStack2 = _slicedToArray(_useStack, 2),\n stack = _useStack2[0],\n _useStack2$ = _useStack2[1],\n offset = _useStack2$.offset,\n threshold = _useStack2$.threshold,\n gap = _useStack2$.gap;\n var expanded = stack && (hoverKeys.length > 0 || keys.length <= threshold);\n var placementMotion = typeof motion === 'function' ? motion(placement) : motion;\n\n // Clean hover key\n useEffect(function () {\n if (stack && hoverKeys.length > 1) {\n setHoverKeys(function (prev) {\n return prev.filter(function (key) {\n return keys.some(function (_ref) {\n var dataKey = _ref.key;\n return key === dataKey;\n });\n });\n });\n }\n }, [hoverKeys, keys, stack]);\n\n // Force update latest notice\n useEffect(function () {\n var _keys;\n if (stack && dictRef.current[(_keys = keys[keys.length - 1]) === null || _keys === void 0 ? void 0 : _keys.key]) {\n var _keys2;\n setLatestNotice(dictRef.current[(_keys2 = keys[keys.length - 1]) === null || _keys2 === void 0 ? void 0 : _keys2.key]);\n }\n }, [keys, stack]);\n return /*#__PURE__*/React.createElement(CSSMotionList, _extends({\n key: placement,\n className: clsx(prefixCls, \"\".concat(prefixCls, \"-\").concat(placement), ctxCls === null || ctxCls === void 0 ? void 0 : ctxCls.list, className, (_clsx = {}, _defineProperty(_clsx, \"\".concat(prefixCls, \"-stack\"), !!stack), _defineProperty(_clsx, \"\".concat(prefixCls, \"-stack-expanded\"), expanded), _clsx)),\n style: style,\n keys: keys,\n motionAppear: true\n }, placementMotion, {\n onAllRemoved: function onAllRemoved() {\n onAllNoticeRemoved(placement);\n }\n }), function (_ref2, nodeRef) {\n var config = _ref2.config,\n motionClassName = _ref2.className,\n motionStyle = _ref2.style,\n motionIndex = _ref2.index;\n var _ref3 = config,\n key = _ref3.key,\n times = _ref3.times;\n var strKey = String(key);\n var _ref4 = config,\n configClassName = _ref4.className,\n configStyle = _ref4.style,\n configClassNames = _ref4.classNames,\n configStyles = _ref4.styles,\n restConfig = _objectWithoutProperties(_ref4, _excluded);\n var dataIndex = keys.findIndex(function (item) {\n return item.key === strKey;\n });\n\n // If dataIndex is -1, that means this notice has been removed in data, but still in dom\n // Should minus (motionIndex - 1) to get the correct index because keys.length is not the same as dom length\n var stackStyle = {};\n if (stack) {\n var index = keys.length - 1 - (dataIndex > -1 ? dataIndex : motionIndex - 1);\n var transformX = placement === 'top' || placement === 'bottom' ? '-50%' : '0';\n if (index > 0) {\n var _dictRef$current$strK, _dictRef$current$strK2, _dictRef$current$strK3;\n stackStyle.height = expanded ? (_dictRef$current$strK = dictRef.current[strKey]) === null || _dictRef$current$strK === void 0 ? void 0 : _dictRef$current$strK.offsetHeight : latestNotice === null || latestNotice === void 0 ? void 0 : latestNotice.offsetHeight;\n\n // Transform\n var verticalOffset = 0;\n for (var i = 0; i < index; i++) {\n var _dictRef$current$keys;\n verticalOffset += ((_dictRef$current$keys = dictRef.current[keys[keys.length - 1 - i].key]) === null || _dictRef$current$keys === void 0 ? void 0 : _dictRef$current$keys.offsetHeight) + gap;\n }\n var transformY = (expanded ? verticalOffset : index * offset) * (placement.startsWith('top') ? 1 : -1);\n var scaleX = !expanded && latestNotice !== null && latestNotice !== void 0 && latestNotice.offsetWidth && (_dictRef$current$strK2 = dictRef.current[strKey]) !== null && _dictRef$current$strK2 !== void 0 && _dictRef$current$strK2.offsetWidth ? ((latestNotice === null || latestNotice === void 0 ? void 0 : latestNotice.offsetWidth) - offset * 2 * (index < 3 ? index : 3)) / ((_dictRef$current$strK3 = dictRef.current[strKey]) === null || _dictRef$current$strK3 === void 0 ? void 0 : _dictRef$current$strK3.offsetWidth) : 1;\n stackStyle.transform = \"translate3d(\".concat(transformX, \", \").concat(transformY, \"px, 0) scaleX(\").concat(scaleX, \")\");\n } else {\n stackStyle.transform = \"translate3d(\".concat(transformX, \", 0, 0)\");\n }\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: nodeRef,\n className: clsx(\"\".concat(prefixCls, \"-notice-wrapper\"), motionClassName, configClassNames === null || configClassNames === void 0 ? void 0 : configClassNames.wrapper),\n style: _objectSpread(_objectSpread(_objectSpread({}, motionStyle), stackStyle), configStyles === null || configStyles === void 0 ? void 0 : configStyles.wrapper),\n onMouseEnter: function onMouseEnter() {\n return setHoverKeys(function (prev) {\n return prev.includes(strKey) ? prev : [].concat(_toConsumableArray(prev), [strKey]);\n });\n },\n onMouseLeave: function onMouseLeave() {\n return setHoverKeys(function (prev) {\n return prev.filter(function (k) {\n return k !== strKey;\n });\n });\n }\n }, /*#__PURE__*/React.createElement(Notice, _extends({}, restConfig, {\n ref: function ref(node) {\n if (dataIndex > -1) {\n dictRef.current[strKey] = node;\n } else {\n delete dictRef.current[strKey];\n }\n },\n prefixCls: prefixCls,\n classNames: configClassNames,\n styles: configStyles,\n className: clsx(configClassName, ctxCls === null || ctxCls === void 0 ? void 0 : ctxCls.notice),\n style: configStyle,\n times: times,\n key: key,\n eventKey: key,\n onNoticeClose: onNoticeClose,\n hovering: stack && hoverKeys.length > 0\n })));\n });\n};\nif (process.env.NODE_ENV !== 'production') {\n NoticeList.displayName = 'NoticeList';\n}\nexport default NoticeList;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nvar DEFAULT_OFFSET = 8;\nvar DEFAULT_THRESHOLD = 3;\nvar DEFAULT_GAP = 16;\nvar useStack = function useStack(config) {\n var result = {\n offset: DEFAULT_OFFSET,\n threshold: DEFAULT_THRESHOLD,\n gap: DEFAULT_GAP\n };\n if (config && _typeof(config) === 'object') {\n var _config$offset, _config$threshold, _config$gap;\n result.offset = (_config$offset = config.offset) !== null && _config$offset !== void 0 ? _config$offset : DEFAULT_OFFSET;\n result.threshold = (_config$threshold = config.threshold) !== null && _config$threshold !== void 0 ? _config$threshold : DEFAULT_THRESHOLD;\n result.gap = (_config$gap = config.gap) !== null && _config$gap !== void 0 ? _config$gap : DEFAULT_GAP;\n }\n return [!!config, result];\n};\nexport default useStack;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { createPortal } from 'react-dom';\nimport NoticeList from \"./NoticeList\";\n// ant-notification ant-notification-topRight\nvar Notifications = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-notification' : _props$prefixCls,\n container = props.container,\n motion = props.motion,\n maxCount = props.maxCount,\n className = props.className,\n style = props.style,\n onAllRemoved = props.onAllRemoved,\n stack = props.stack,\n renderNotifications = props.renderNotifications;\n var _React$useState = React.useState([]),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n configList = _React$useState2[0],\n setConfigList = _React$useState2[1];\n\n // ======================== Close =========================\n var onNoticeClose = function onNoticeClose(key) {\n var _config$onClose;\n // Trigger close event\n var config = configList.find(function (item) {\n return item.key === key;\n });\n config === null || config === void 0 || (_config$onClose = config.onClose) === null || _config$onClose === void 0 || _config$onClose.call(config);\n setConfigList(function (list) {\n return list.filter(function (item) {\n return item.key !== key;\n });\n });\n };\n\n // ========================= Refs =========================\n React.useImperativeHandle(ref, function () {\n return {\n open: function open(config) {\n setConfigList(function (list) {\n var clone = _toConsumableArray(list);\n\n // Replace if exist\n var index = clone.findIndex(function (item) {\n return item.key === config.key;\n });\n var innerConfig = _objectSpread({}, config);\n if (index >= 0) {\n var _list$index;\n innerConfig.times = (((_list$index = list[index]) === null || _list$index === void 0 ? void 0 : _list$index.times) || 0) + 1;\n clone[index] = innerConfig;\n } else {\n innerConfig.times = 0;\n clone.push(innerConfig);\n }\n if (maxCount > 0 && clone.length > maxCount) {\n clone = clone.slice(-maxCount);\n }\n return clone;\n });\n },\n close: function close(key) {\n onNoticeClose(key);\n },\n destroy: function destroy() {\n setConfigList([]);\n }\n };\n });\n\n // ====================== Placements ======================\n var _React$useState3 = React.useState({}),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n placements = _React$useState4[0],\n setPlacements = _React$useState4[1];\n React.useEffect(function () {\n var nextPlacements = {};\n configList.forEach(function (config) {\n var _config$placement = config.placement,\n placement = _config$placement === void 0 ? 'topRight' : _config$placement;\n if (placement) {\n nextPlacements[placement] = nextPlacements[placement] || [];\n nextPlacements[placement].push(config);\n }\n });\n\n // Fill exist placements to avoid empty list causing remove without motion\n Object.keys(placements).forEach(function (placement) {\n nextPlacements[placement] = nextPlacements[placement] || [];\n });\n setPlacements(nextPlacements);\n }, [configList]);\n\n // Clean up container if all notices fade out\n var onAllNoticeRemoved = function onAllNoticeRemoved(placement) {\n setPlacements(function (originPlacements) {\n var clone = _objectSpread({}, originPlacements);\n var list = clone[placement] || [];\n if (!list.length) {\n delete clone[placement];\n }\n return clone;\n });\n };\n\n // Effect tell that placements is empty now\n var emptyRef = React.useRef(false);\n React.useEffect(function () {\n if (Object.keys(placements).length > 0) {\n emptyRef.current = true;\n } else if (emptyRef.current) {\n // Trigger only when from exist to empty\n onAllRemoved === null || onAllRemoved === void 0 || onAllRemoved();\n emptyRef.current = false;\n }\n }, [placements]);\n // ======================== Render ========================\n if (!container) {\n return null;\n }\n var placementList = Object.keys(placements);\n return /*#__PURE__*/createPortal( /*#__PURE__*/React.createElement(React.Fragment, null, placementList.map(function (placement) {\n var placementConfigList = placements[placement];\n var list = /*#__PURE__*/React.createElement(NoticeList, {\n key: placement,\n configList: placementConfigList,\n placement: placement,\n prefixCls: prefixCls,\n className: className === null || className === void 0 ? void 0 : className(placement),\n style: style === null || style === void 0 ? void 0 : style(placement),\n motion: motion,\n onNoticeClose: onNoticeClose,\n onAllNoticeRemoved: onAllNoticeRemoved,\n stack: stack\n });\n return renderNotifications ? renderNotifications(list, {\n prefixCls: prefixCls,\n key: placement\n }) : list;\n })), container);\n});\nif (process.env.NODE_ENV !== 'production') {\n Notifications.displayName = 'Notifications';\n}\nexport default Notifications;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"getContainer\", \"motion\", \"prefixCls\", \"maxCount\", \"className\", \"style\", \"onAllRemoved\", \"stack\", \"renderNotifications\"];\nimport * as React from 'react';\nimport Notifications from \"../Notifications\";\nvar defaultGetContainer = function defaultGetContainer() {\n return document.body;\n};\nvar uniqueKey = 0;\nfunction mergeConfig() {\n var clone = {};\n for (var _len = arguments.length, objList = new Array(_len), _key = 0; _key < _len; _key++) {\n objList[_key] = arguments[_key];\n }\n objList.forEach(function (obj) {\n if (obj) {\n Object.keys(obj).forEach(function (key) {\n var val = obj[key];\n if (val !== undefined) {\n clone[key] = val;\n }\n });\n }\n });\n return clone;\n}\nexport default function useNotification() {\n var rootConfig = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _rootConfig$getContai = rootConfig.getContainer,\n getContainer = _rootConfig$getContai === void 0 ? defaultGetContainer : _rootConfig$getContai,\n motion = rootConfig.motion,\n prefixCls = rootConfig.prefixCls,\n maxCount = rootConfig.maxCount,\n className = rootConfig.className,\n style = rootConfig.style,\n onAllRemoved = rootConfig.onAllRemoved,\n stack = rootConfig.stack,\n renderNotifications = rootConfig.renderNotifications,\n shareConfig = _objectWithoutProperties(rootConfig, _excluded);\n var _React$useState = React.useState(),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n container = _React$useState2[0],\n setContainer = _React$useState2[1];\n var notificationsRef = React.useRef();\n var contextHolder = /*#__PURE__*/React.createElement(Notifications, {\n container: container,\n ref: notificationsRef,\n prefixCls: prefixCls,\n motion: motion,\n maxCount: maxCount,\n className: className,\n style: style,\n onAllRemoved: onAllRemoved,\n stack: stack,\n renderNotifications: renderNotifications\n });\n var _React$useState3 = React.useState([]),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n taskQueue = _React$useState4[0],\n setTaskQueue = _React$useState4[1];\n\n // ========================= Refs =========================\n var api = React.useMemo(function () {\n return {\n open: function open(config) {\n var mergedConfig = mergeConfig(shareConfig, config);\n if (mergedConfig.key === null || mergedConfig.key === undefined) {\n mergedConfig.key = \"rc-notification-\".concat(uniqueKey);\n uniqueKey += 1;\n }\n setTaskQueue(function (queue) {\n return [].concat(_toConsumableArray(queue), [{\n type: 'open',\n config: mergedConfig\n }]);\n });\n },\n close: function close(key) {\n setTaskQueue(function (queue) {\n return [].concat(_toConsumableArray(queue), [{\n type: 'close',\n key: key\n }]);\n });\n },\n destroy: function destroy() {\n setTaskQueue(function (queue) {\n return [].concat(_toConsumableArray(queue), [{\n type: 'destroy'\n }]);\n });\n }\n };\n }, []);\n\n // ======================= Container ======================\n // React 18 should all in effect that we will check container in each render\n // Which means getContainer should be stable.\n React.useEffect(function () {\n setContainer(getContainer());\n });\n\n // ======================== Effect ========================\n React.useEffect(function () {\n // Flush task when node ready\n if (notificationsRef.current && taskQueue.length) {\n taskQueue.forEach(function (task) {\n switch (task.type) {\n case 'open':\n notificationsRef.current.open(task.config);\n break;\n case 'close':\n notificationsRef.current.close(task.key);\n break;\n case 'destroy':\n notificationsRef.current.destroy();\n break;\n }\n });\n\n // React 17 will mix order of effect & setState in async\n // - open: setState[0]\n // - effect[0]\n // - open: setState[1]\n // - effect setState([]) * here will clean up [0, 1] in React 17\n setTaskQueue(function (oriQueue) {\n return oriQueue.filter(function (task) {\n return !taskQueue.includes(task);\n });\n });\n }\n }, [taskQueue]);\n\n // ======================== Return ========================\n return [api, contextHolder];\n}","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 = [\"prefixCls\", \"invalidate\", \"item\", \"renderItem\", \"responsive\", \"responsiveDisabled\", \"registerSize\", \"itemKey\", \"className\", \"style\", \"children\", \"display\", \"order\", \"component\"];\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\n// Use shared variable to save bundle size\nvar UNDEFINED = undefined;\nfunction InternalItem(props, ref) {\n var prefixCls = props.prefixCls,\n invalidate = props.invalidate,\n item = props.item,\n renderItem = props.renderItem,\n responsive = props.responsive,\n responsiveDisabled = props.responsiveDisabled,\n registerSize = props.registerSize,\n itemKey = props.itemKey,\n className = props.className,\n style = props.style,\n children = props.children,\n display = props.display,\n order = props.order,\n _props$component = props.component,\n Component = _props$component === void 0 ? 'div' : _props$component,\n restProps = _objectWithoutProperties(props, _excluded);\n var mergedHidden = responsive && !display;\n // ================================ Effect ================================\n function internalRegisterSize(width) {\n registerSize(itemKey, width);\n }\n React.useEffect(function () {\n return function () {\n internalRegisterSize(null);\n };\n }, []);\n // ================================ Render ================================\n var childNode = renderItem && item !== UNDEFINED ? renderItem(item) : children;\n var overflowStyle;\n if (!invalidate) {\n overflowStyle = {\n opacity: mergedHidden ? 0 : 1,\n height: mergedHidden ? 0 : UNDEFINED,\n overflowY: mergedHidden ? 'hidden' : UNDEFINED,\n order: responsive ? order : UNDEFINED,\n pointerEvents: mergedHidden ? 'none' : UNDEFINED,\n position: mergedHidden ? 'absolute' : UNDEFINED\n };\n }\n var overflowProps = {};\n if (mergedHidden) {\n overflowProps['aria-hidden'] = true;\n }\n var itemNode = /*#__PURE__*/React.createElement(Component, _extends({\n className: classNames(!invalidate && prefixCls, className),\n style: _objectSpread(_objectSpread({}, overflowStyle), style)\n }, overflowProps, restProps, {\n ref: ref\n }), childNode);\n if (responsive) {\n itemNode = /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: function onResize(_ref) {\n var offsetWidth = _ref.offsetWidth;\n internalRegisterSize(offsetWidth);\n },\n disabled: responsiveDisabled\n }, itemNode);\n }\n return itemNode;\n}\nvar Item = /*#__PURE__*/React.forwardRef(InternalItem);\nItem.displayName = 'Item';\nexport default Item;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport * as React from 'react';\nimport { unstable_batchedUpdates } from 'react-dom';\nimport channelUpdate from './channelUpdate';\n/**\n * Batcher for record any `useEffectState` need update.\n */\nexport function useBatcher() {\n // Updater Trigger\n var updateFuncRef = React.useRef(null);\n // Notify update\n var notifyEffectUpdate = function notifyEffectUpdate(callback) {\n if (!updateFuncRef.current) {\n updateFuncRef.current = [];\n channelUpdate(function () {\n unstable_batchedUpdates(function () {\n updateFuncRef.current.forEach(function (fn) {\n fn();\n });\n updateFuncRef.current = null;\n });\n });\n }\n updateFuncRef.current.push(callback);\n };\n return notifyEffectUpdate;\n}\n/**\n * Trigger state update by `useLayoutEffect` to save perf.\n */\nexport default function useEffectState(notifyEffectUpdate, defaultValue) {\n // Value\n var _React$useState = React.useState(defaultValue),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n stateValue = _React$useState2[0],\n setStateValue = _React$useState2[1];\n // Set State\n var setEffectVal = useEvent(function (nextValue) {\n notifyEffectUpdate(function () {\n setStateValue(nextValue);\n });\n });\n return [stateValue, setEffectVal];\n}","import React from 'react';\nexport var OverflowContext = /*#__PURE__*/React.createContext(null);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"component\"],\n _excluded2 = [\"className\"],\n _excluded3 = [\"className\"];\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport Item from './Item';\nimport { OverflowContext } from './context';\nvar InternalRawItem = function InternalRawItem(props, ref) {\n var context = React.useContext(OverflowContext);\n // Render directly when context not provided\n if (!context) {\n var _props$component = props.component,\n Component = _props$component === void 0 ? 'div' : _props$component,\n _restProps = _objectWithoutProperties(props, _excluded);\n return /*#__PURE__*/React.createElement(Component, _extends({}, _restProps, {\n ref: ref\n }));\n }\n var contextClassName = context.className,\n restContext = _objectWithoutProperties(context, _excluded2);\n var className = props.className,\n restProps = _objectWithoutProperties(props, _excluded3);\n // Do not pass context to sub item to avoid multiple measure\n return /*#__PURE__*/React.createElement(OverflowContext.Provider, {\n value: null\n }, /*#__PURE__*/React.createElement(Item, _extends({\n ref: ref,\n className: classNames(contextClassName, className)\n }, restContext, restProps)));\n};\nvar RawItem = /*#__PURE__*/React.forwardRef(InternalRawItem);\nRawItem.displayName = 'RawItem';\nexport default RawItem;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"data\", \"renderItem\", \"renderRawItem\", \"itemKey\", \"itemWidth\", \"ssr\", \"style\", \"className\", \"maxCount\", \"renderRest\", \"renderRawRest\", \"suffix\", \"component\", \"itemComponent\", \"onVisibleChange\"];\nimport * as React from 'react';\nimport { useState, useMemo, useCallback } from 'react';\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport Item from './Item';\nimport useEffectState, { useBatcher } from './hooks/useEffectState';\nimport RawItem from './RawItem';\nimport { OverflowContext } from './context';\nvar RESPONSIVE = 'responsive';\nvar INVALIDATE = 'invalidate';\nexport { OverflowContext } from './context';\nfunction defaultRenderRest(omittedItems) {\n return \"+ \".concat(omittedItems.length, \" ...\");\n}\nfunction Overflow(props, ref) {\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-overflow' : _props$prefixCls,\n _props$data = props.data,\n data = _props$data === void 0 ? [] : _props$data,\n renderItem = props.renderItem,\n renderRawItem = props.renderRawItem,\n itemKey = props.itemKey,\n _props$itemWidth = props.itemWidth,\n itemWidth = _props$itemWidth === void 0 ? 10 : _props$itemWidth,\n ssr = props.ssr,\n style = props.style,\n className = props.className,\n maxCount = props.maxCount,\n renderRest = props.renderRest,\n renderRawRest = props.renderRawRest,\n suffix = props.suffix,\n _props$component = props.component,\n Component = _props$component === void 0 ? 'div' : _props$component,\n itemComponent = props.itemComponent,\n onVisibleChange = props.onVisibleChange,\n restProps = _objectWithoutProperties(props, _excluded);\n var fullySSR = ssr === 'full';\n var notifyEffectUpdate = useBatcher();\n var _useEffectState = useEffectState(notifyEffectUpdate, null),\n _useEffectState2 = _slicedToArray(_useEffectState, 2),\n containerWidth = _useEffectState2[0],\n setContainerWidth = _useEffectState2[1];\n var mergedContainerWidth = containerWidth || 0;\n var _useEffectState3 = useEffectState(notifyEffectUpdate, new Map()),\n _useEffectState4 = _slicedToArray(_useEffectState3, 2),\n itemWidths = _useEffectState4[0],\n setItemWidths = _useEffectState4[1];\n var _useEffectState5 = useEffectState(notifyEffectUpdate, 0),\n _useEffectState6 = _slicedToArray(_useEffectState5, 2),\n prevRestWidth = _useEffectState6[0],\n setPrevRestWidth = _useEffectState6[1];\n var _useEffectState7 = useEffectState(notifyEffectUpdate, 0),\n _useEffectState8 = _slicedToArray(_useEffectState7, 2),\n restWidth = _useEffectState8[0],\n setRestWidth = _useEffectState8[1];\n var _useEffectState9 = useEffectState(notifyEffectUpdate, 0),\n _useEffectState10 = _slicedToArray(_useEffectState9, 2),\n suffixWidth = _useEffectState10[0],\n setSuffixWidth = _useEffectState10[1];\n var _useState = useState(null),\n _useState2 = _slicedToArray(_useState, 2),\n suffixFixedStart = _useState2[0],\n setSuffixFixedStart = _useState2[1];\n var _useState3 = useState(null),\n _useState4 = _slicedToArray(_useState3, 2),\n displayCount = _useState4[0],\n setDisplayCount = _useState4[1];\n var mergedDisplayCount = React.useMemo(function () {\n if (displayCount === null && fullySSR) {\n return Number.MAX_SAFE_INTEGER;\n }\n return displayCount || 0;\n }, [displayCount, containerWidth]);\n var _useState5 = useState(false),\n _useState6 = _slicedToArray(_useState5, 2),\n restReady = _useState6[0],\n setRestReady = _useState6[1];\n var itemPrefixCls = \"\".concat(prefixCls, \"-item\");\n // Always use the max width to avoid blink\n var mergedRestWidth = Math.max(prevRestWidth, restWidth);\n // ================================= Data =================================\n var isResponsive = maxCount === RESPONSIVE;\n var shouldResponsive = data.length && isResponsive;\n var invalidate = maxCount === INVALIDATE;\n /**\n * When is `responsive`, we will always render rest node to get the real width of it for calculation\n */\n var showRest = shouldResponsive || typeof maxCount === 'number' && data.length > maxCount;\n var mergedData = useMemo(function () {\n var items = data;\n if (shouldResponsive) {\n if (containerWidth === null && fullySSR) {\n items = data;\n } else {\n items = data.slice(0, Math.min(data.length, mergedContainerWidth / itemWidth));\n }\n } else if (typeof maxCount === 'number') {\n items = data.slice(0, maxCount);\n }\n return items;\n }, [data, itemWidth, containerWidth, maxCount, shouldResponsive]);\n var omittedItems = useMemo(function () {\n if (shouldResponsive) {\n return data.slice(mergedDisplayCount + 1);\n }\n return data.slice(mergedData.length);\n }, [data, mergedData, shouldResponsive, mergedDisplayCount]);\n // ================================= Item =================================\n var getKey = useCallback(function (item, index) {\n var _ref;\n if (typeof itemKey === 'function') {\n return itemKey(item);\n }\n return (_ref = itemKey && (item === null || item === void 0 ? void 0 : item[itemKey])) !== null && _ref !== void 0 ? _ref : index;\n }, [itemKey]);\n var mergedRenderItem = useCallback(renderItem || function (item) {\n return item;\n }, [renderItem]);\n function updateDisplayCount(count, suffixFixedStartVal, notReady) {\n // React 18 will sync render even when the value is same in some case.\n // We take `mergedData` as deps which may cause dead loop if it's dynamic generate.\n // ref: https://github.com/ant-design/ant-design/issues/36559\n if (displayCount === count && (suffixFixedStartVal === undefined || suffixFixedStartVal === suffixFixedStart)) {\n return;\n }\n setDisplayCount(count);\n if (!notReady) {\n setRestReady(count < data.length - 1);\n onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(count);\n }\n if (suffixFixedStartVal !== undefined) {\n setSuffixFixedStart(suffixFixedStartVal);\n }\n }\n // ================================= Size =================================\n function onOverflowResize(_, element) {\n setContainerWidth(element.clientWidth);\n }\n function registerSize(key, width) {\n setItemWidths(function (origin) {\n var clone = new Map(origin);\n if (width === null) {\n clone.delete(key);\n } else {\n clone.set(key, width);\n }\n return clone;\n });\n }\n function registerOverflowSize(_, width) {\n setRestWidth(width);\n setPrevRestWidth(restWidth);\n }\n function registerSuffixSize(_, width) {\n setSuffixWidth(width);\n }\n // ================================ Effect ================================\n function getItemWidth(index) {\n return itemWidths.get(getKey(mergedData[index], index));\n }\n useLayoutEffect(function () {\n if (mergedContainerWidth && typeof mergedRestWidth === 'number' && mergedData) {\n var totalWidth = suffixWidth;\n var len = mergedData.length;\n var lastIndex = len - 1;\n // When data count change to 0, reset this since not loop will reach\n if (!len) {\n updateDisplayCount(0, null);\n return;\n }\n for (var i = 0; i < len; i += 1) {\n var currentItemWidth = getItemWidth(i);\n // Fully will always render\n if (fullySSR) {\n currentItemWidth = currentItemWidth || 0;\n }\n // Break since data not ready\n if (currentItemWidth === undefined) {\n updateDisplayCount(i - 1, undefined, true);\n break;\n }\n // Find best match\n totalWidth += currentItemWidth;\n if (\n // Only one means `totalWidth` is the final width\n lastIndex === 0 && totalWidth <= mergedContainerWidth ||\n // Last two width will be the final width\n i === lastIndex - 1 && totalWidth + getItemWidth(lastIndex) <= mergedContainerWidth) {\n // Additional check if match the end\n updateDisplayCount(lastIndex, null);\n break;\n } else if (totalWidth + mergedRestWidth > mergedContainerWidth) {\n // Can not hold all the content to show rest\n updateDisplayCount(i - 1, totalWidth - currentItemWidth - suffixWidth + restWidth);\n break;\n }\n }\n if (suffix && getItemWidth(0) + suffixWidth > mergedContainerWidth) {\n setSuffixFixedStart(null);\n }\n }\n }, [mergedContainerWidth, itemWidths, restWidth, suffixWidth, getKey, mergedData]);\n // ================================ Render ================================\n var displayRest = restReady && !!omittedItems.length;\n var suffixStyle = {};\n if (suffixFixedStart !== null && shouldResponsive) {\n suffixStyle = {\n position: 'absolute',\n left: suffixFixedStart,\n top: 0\n };\n }\n var itemSharedProps = {\n prefixCls: itemPrefixCls,\n responsive: shouldResponsive,\n component: itemComponent,\n invalidate: invalidate\n };\n // >>>>> Choice render fun by `renderRawItem`\n var internalRenderItemNode = renderRawItem ? function (item, index) {\n var key = getKey(item, index);\n return /*#__PURE__*/React.createElement(OverflowContext.Provider, {\n key: key,\n value: _objectSpread(_objectSpread({}, itemSharedProps), {}, {\n order: index,\n item: item,\n itemKey: key,\n registerSize: registerSize,\n display: index <= mergedDisplayCount\n })\n }, renderRawItem(item, index));\n } : function (item, index) {\n var key = getKey(item, index);\n return /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, {\n order: index,\n key: key,\n item: item,\n renderItem: mergedRenderItem,\n itemKey: key,\n registerSize: registerSize,\n display: index <= mergedDisplayCount\n }));\n };\n // >>>>> Rest node\n var restNode;\n var restContextProps = {\n order: displayRest ? mergedDisplayCount : Number.MAX_SAFE_INTEGER,\n className: \"\".concat(itemPrefixCls, \"-rest\"),\n registerSize: registerOverflowSize,\n display: displayRest\n };\n if (!renderRawRest) {\n var mergedRenderRest = renderRest || defaultRenderRest;\n restNode = /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, restContextProps), typeof mergedRenderRest === 'function' ? mergedRenderRest(omittedItems) : mergedRenderRest);\n } else if (renderRawRest) {\n restNode = /*#__PURE__*/React.createElement(OverflowContext.Provider, {\n value: _objectSpread(_objectSpread({}, itemSharedProps), restContextProps)\n }, renderRawRest(omittedItems));\n }\n var overflowNode = /*#__PURE__*/React.createElement(Component, _extends({\n className: classNames(!invalidate && prefixCls, className),\n style: style,\n ref: ref\n }, restProps), mergedData.map(internalRenderItemNode), showRest ? restNode : null, suffix && /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, {\n responsive: isResponsive,\n responsiveDisabled: !shouldResponsive,\n order: mergedDisplayCount,\n className: \"\".concat(itemPrefixCls, \"-suffix\"),\n registerSize: registerSuffixSize,\n display: true,\n style: suffixStyle\n }), suffix));\n if (isResponsive) {\n overflowNode = /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: onOverflowResize,\n disabled: !shouldResponsive\n }, overflowNode);\n }\n return overflowNode;\n}\nvar ForwardOverflow = /*#__PURE__*/React.forwardRef(Overflow);\nForwardOverflow.displayName = 'Overflow';\nForwardOverflow.Item = RawItem;\nForwardOverflow.RESPONSIVE = RESPONSIVE;\nForwardOverflow.INVALIDATE = INVALIDATE;\n// Convert to generic type\nexport default ForwardOverflow;","import raf from \"rc-util/es/raf\";\nexport default function channelUpdate(callback) {\n if (typeof MessageChannel === 'undefined') {\n raf(callback);\n } else {\n var channel = new MessageChannel();\n channel.port1.onmessage = function () {\n return callback();\n };\n channel.port2.postMessage(undefined);\n }\n}","import Overflow from './Overflow';\nexport default Overflow;"],"names":["IdContext","getMenuId","uuid","eventKey","undefined","concat","useMenuId","_excluded","MenuContext","InheritableContextProvider","_ref","children","locked","restProps","context","inheritableContext","useMemo","origin","target","clone","Object","keys","forEach","key","value","prev","next","isEqual","Provider","EmptyList","PathRegisterContext","useMeasure","PathTrackerContext","useFullPath","parentKeyPath","PathUserContext","LEFT","KeyCode","RIGHT","UP","DOWN","ENTER","ESC","HOME","END","ArrowKeys","getFocusableElements","container","elements","filter","ele","has","getNextFocusElement","parentQueryContainer","focusMenuElement","offset","arguments","length","sameLevelFocusableMenuElementList","count","focusIndex","findIndex","refreshElements","id","Set","key2element","Map","element2key","element","document","querySelector","add","set","PATH_SPLIT","getPathStr","keyPath","join","OVERFLOW_KEY","useMemoCallback","func","funRef","current","callback","_funRef$current","_len","args","Array","_key","call","apply","uniquePrefix","Math","random","toFixed","toString","slice","internalId","useActive","disabled","onMouseEnter","onMouseLeave","_React$useContext","activeKey","onActive","onInactive","ret","active","domEvent","useDirectionStyle","level","mode","rtl","inlineIndent","paddingRight","paddingLeft","Icon","iconNode","icon","props","warnItemProp","item","restInfo","defineProperty","get","warning","_excluded2","_excluded3","LegacyMenuItem","_React$Component","_super","this","_this$props","title","attribute","elementRef","passedProps","omit","Item","ref","InternalMenuItem","_classNames","style","className","warnKey","itemIcon","role","onClick","onKeyDown","onFocus","domDataId","prefixCls","onItemClick","contextDisabled","overflowDisabled","contextItemIcon","selectedKeys","_internalRenderMenuItem","itemCls","legacyMenuItemRef","mergedDisabled","mergedEleRef","connectedKeys","getEventInfo","e","reverse","mergedItemIcon","_useActive","activeProps","selected","includes","directionStyle","optionRoleProps","renderNode","tabIndex","component","info","which","isSelected","MenuItem","measure","connectedKeyPath","registerPath","unregisterPath","InternalSubMenuList","SubMenuList","displayName","parseChildren","toArray","map","child","index","_eventKey","_child$props","cloneProps","autoAdjustOverflow","adjustX","adjustY","placements","topLeft","points","overflow","topRight","bottomLeft","bottomRight","leftTop","leftBottom","rightTop","rightBottom","placementsRtl","getMotion","motion","defaultMotions","other","popupPlacementMap","horizontal","vertical","PopupTrigger","visible","popup","popupStyle","popupClassName","popupOffset","onVisibleChange","getPopupContainer","subMenuOpenDelay","subMenuCloseDelay","builtinPlacements","triggerSubMenuAction","forceSubMenuRender","rootClassName","_React$useState","_React$useState2","innerVisible","setInnerVisible","placement","popupPlacement","targetMotion","targetMotionRef","mergedMotion","leavedClassName","removeOnLeave","motionAppear","visibleRef","raf","cancel","stretch","popupVisible","popupAlign","action","mouseEnterDelay","mouseLeaveDelay","onPopupVisibleChange","forceRender","popupMotion","fresh","InlineSubMenuList","open","fixedMode","sameModeRef","destroy","setDestroy","mergedOpen","originOnVisibleChanged","onVisibleChanged","newVisible","_ref2","motionClassName","motionStyle","InternalSubMenu","internalPopupClose","expandIcon","onTitleClick","onTitleMouseEnter","onTitleMouseLeave","openKeys","contextExpandIcon","onOpenChange","_internalRenderSubMenuItem","isSubPathKey","connectedPath","subMenuPrefixCls","popupRef","mergedExpandIcon","originOpen","childrenSelected","childrenActive","setChildrenActive","triggerChildrenActive","newActive","mergedActive","onMergedItemClick","popupId","titleNode","isOpen","isSubMenu","triggerModeRef","triggerMode","listNode","SubMenu","childList","InternalMenuItemGroup","groupPrefixCls","stopPropagation","MenuItemGroup","Divider","convertItemsToNodes","list","opt","label","type","mergedKey","parseItems","items","childNodes","EMPTY_LIST","ExportMenu","_childList$","_ref$prefixCls","_ref$tabIndex","direction","_ref$mode","inlineCollapsed","disabledOverflow","_ref$subMenuOpenDelay","_ref$subMenuCloseDela","defaultOpenKeys","defaultActiveFirst","_ref$selectable","selectable","_ref$multiple","multiple","defaultSelectedKeys","onSelect","onDeselect","_ref$inlineIndent","_ref$triggerSubMenuAc","_ref$overflowedIndica","overflowedIndicator","overflowedIndicatorPopupClassName","openAnimation","openTransitionName","mounted","setMounted","containerRef","_useMergedState","useMergedState","_useMergedState2","setUUID","newId","useUUID","isRtl","postState","mergedOpenKeys","setMergedOpenKeys","triggerOpenKeys","doUpdate","flushSync","_React$useState3","_React$useState4","inlineCacheOpenKeys","setInlineCacheOpenKeys","mountRef","_React$useMemo","_React$useMemo2","mergedMode","mergedInlineCollapsed","isInlineMode","_React$useState5","_React$useState6","internalMode","setInternalMode","_React$useState7","_React$useState8","internalInlineCollapsed","setInternalInlineCollapsed","_React$useState9","_React$useState10","lastVisibleIndex","setLastVisibleIndex","allVisible","_useKeyRecords","internalForceUpdate","key2pathRef","useRef","path2keyRef","overflowKeys","setOverflowKeys","updateRef","destroyRef","useCallback","Promise","resolve","then","delete","refreshOverflowKeys","getKeyPath","includeOverflow","split","unshift","pathKeys","some","pathKey","getSubPathKeys","startsWith","getKeys","push","useKeyRecords","registerPathContext","pathUserContext","_useMergedState3","_useMergedState4","mergedActiveKey","setMergedActiveKey","useImperativeHandle","focus","options","_childList$find","_elementToFocus$focus","_refreshElements","focusableElements","shouldFocusKey","find","node","elementToFocus","_useMergedState5","isArray","_useMergedState6","mergedSelectKeys","setMergedSelectKeys","onInternalClick","newSelectKeys","targetKey","exist","selectInfo","triggerSelection","onInternalOpenChange","newOpenKeys","k","subPathKeys","onInternalKeyDown","triggerActiveKey","triggerAccessibilityOpen","originOnKeyDown","rafRef","activeRef","cleanRaf","refreshedElements","_refreshedElements","activeElement","parentElement","getFocusElement","focusMenuKey","offsetObj","isRootLevel","_inline","_horizontal","_vertical","_offsets","parent","inlineTrigger","inline","inlineSub","horizontalSub","verticalSub","sibling","getOffset","preventDefault","tryFocus","menuElement","focusTargetElement","link","getAttribute","targetElement","findContainerUL","controlId","getElementById","parentKey","parentMenuElement","useAccessibility","nextOpen","privateContext","wrappedChildList","itemComponent","dir","data","renderRawItem","renderRawRest","omitItems","len","originOmitItems","maxCount","INVALIDATE","RESPONSIVE","ssr","newLastIndex","display","ItemGroup","canUseDom","window","createElement","makePrefixMap","styleProp","eventName","prefixes","toLowerCase","domSupport","win","vendorPrefixes","animationend","transitionend","animation","transition","_document$createEleme","prefixedEventNames","getVendorPrefixedEventName","prefixMap","stylePropList","i","prototype","hasOwnProperty","internalAnimationEndName","internalTransitionEndName","supportTransition","animationEndName","transitionEndName","getTransitionName","transitionName","transitionType","replace","match","toUpperCase","STATUS_NONE","STATUS_APPEAR","STATUS_ENTER","STATUS_LEAVE","STEP_NONE","STEP_PREPARE","STEP_START","STEP_ACTIVE","STEP_ACTIVATED","useSafeState","defaultValue","setValue","updater","ignoreDestroy","setTimeout","caf","num","clearTimeout","requestAnimationFrame","handle","cancelAnimationFrame","rafUUID","rafIds","cleanup","wrapperRaf","callRef","leftTimes","realId","useLayoutEffect","useEffect","STEP_QUEUE","SkipStep","isActive","step","useStatus","supportMotion","getElement","_ref$motionEnter","motionEnter","_ref$motionAppear","_ref$motionLeave","motionLeave","motionDeadline","motionLeaveImmediately","onAppearPrepare","onEnterPrepare","onLeavePrepare","onAppearStart","onEnterStart","onLeaveStart","onAppearActive","onEnterActive","onLeaveActive","onAppearEnd","onEnterEnd","onLeaveEnd","_useState","_useState2","asyncVisible","setAsyncVisible","_useState3","_useState4","status","setStatus","_useState5","_useState6","setStyle","mountedRef","deadlineRef","getDomElement","onInternalMotionEnd","event","deadline","canEnd","currentActive","_useDomMotionEvents","cacheElementRef","callbackRef","removeMotionEvents","removeEventListener","addEventListener","useDomMotionEvents","patchMotionEvents","eventHandlers","_ref3","_ref4","_useStepQueue","setStep","_useNextFrame","nextFrameRef","cancelNextFrame","nextFrame","delay","nextFrameId","isCanceled","useNextFrame","_useNextFrame2","indexOf","nextStep","result","doNext","useStepQueue","newStep","onPrepare","_eventHandlers$step","_useStepQueue2","startStep","nextStatus","isMounted","mergedStyle","DomWrapper","config","transitionSupport","isSupportTransition","motionName","CSSMotion","_props$visible","_props$removeOnLeave","eventProps","nodeRef","wrapperNodeRef","_useStatus","HTMLElement","_useStatus2","statusStep","statusStyle","mergedVisible","renderedRef","motionChildren","nodeOrComponent","_type$prototype","_nodeOrComponent$prot","setNodeRef","fillRef","mergedProps","statusSuffix","isMemo","render","STATUS_ADD","STATUS_KEEP","STATUS_REMOVE","STATUS_REMOVED","wrapKeyToObject","keyObj","String","parseKeys","MOTION_PROP_NAMES","CSSMotionList","_this","state","keyEntities","removeKey","nextKeyEntities","entity","setState","_this2","_onVisibleChanged","onAllRemoved","Component","motionProps","prop","changedVisible","parsedKeyObjects","mixedKeyEntities","prevKeys","currentKeys","currentIndex","currentLen","prevKeyObjects","currentKeyObjects","hit","currentKeyObj","obj","matchKey","diffKeys","prevEntity","_ref5","defaultProps","Context","STEP_PREPARED","FULL_STEP_QUEUE","SIMPLE_STEP_QUEUE","useState","_useSyncState","useSyncState","_useSyncState2","getStatus","currentStatus","updateMotionEndStatus","getEventHandlers","targetStatus","prepareOnly","nextEventHandlers","firstMountChangeRef","contextMotion","findDOMNode","motionCls","prevState","Notify","_props$duration","duration","content","closable","_props$closeIcon","closeIcon","divProps","onNoticeClose","times","forcedHovering","hovering","setHovering","mergedHovering","onInternalClose","timeout","noticePrefixCls","_divProps$onMouseEnte","_divProps$onMouseLeav","code","keyCode","NotificationContext","classNames","_clsx","_config$offset","_config$threshold","_config$gap","configList","onAllNoticeRemoved","stackConfig","stack","ctxCls","useContext","dictRef","latestNotice","setLatestNotice","hoverKeys","setHoverKeys","_useStack","threshold","gap","_useStack2","_useStack2$","expanded","placementMotion","dataKey","_keys","_keys2","motionIndex","strKey","configClassName","configStyle","configClassNames","configStyles","styles","restConfig","dataIndex","stackStyle","transformX","_dictRef$current$strK","_dictRef$current$strK2","_dictRef$current$strK3","height","offsetHeight","verticalOffset","_dictRef$current$keys","transformY","scaleX","offsetWidth","transform","wrapper","Notice","notice","Notifications","_props$prefixCls","renderNotifications","setConfigList","_config$onClose","onClose","_list$index","innerConfig","close","setPlacements","nextPlacements","_config$placement","originPlacements","emptyRef","placementList","createPortal","placementConfigList","defaultGetContainer","body","uniqueKey","useNotification","rootConfig","_rootConfig$getContai","getContainer","shareConfig","setContainer","notificationsRef","contextHolder","taskQueue","setTaskQueue","api","mergedConfig","objList","val","mergeConfig","queue","task","oriQueue","UNDEFINED","InternalItem","invalidate","renderItem","responsive","responsiveDisabled","registerSize","itemKey","order","_props$component","mergedHidden","internalRegisterSize","width","overflowStyle","childNode","opacity","overflowY","pointerEvents","position","overflowProps","itemNode","onResize","useEffectState","notifyEffectUpdate","stateValue","setStateValue","useEvent","nextValue","OverflowContext","InternalRawItem","_restProps","contextClassName","restContext","RawItem","defaultRenderRest","omittedItems","Overflow","updateFuncRef","_props$data","_props$itemWidth","itemWidth","renderRest","suffix","fullySSR","MessageChannel","channel","port1","onmessage","port2","postMessage","channelUpdate","unstable_batchedUpdates","fn","_useEffectState","_useEffectState2","containerWidth","setContainerWidth","mergedContainerWidth","_useEffectState3","_useEffectState4","itemWidths","setItemWidths","_useEffectState5","_useEffectState6","prevRestWidth","setPrevRestWidth","_useEffectState7","_useEffectState8","restWidth","setRestWidth","_useEffectState9","_useEffectState10","suffixWidth","setSuffixWidth","suffixFixedStart","setSuffixFixedStart","displayCount","setDisplayCount","mergedDisplayCount","Number","MAX_SAFE_INTEGER","restReady","setRestReady","itemPrefixCls","mergedRestWidth","max","isResponsive","shouldResponsive","showRest","mergedData","min","getKey","mergedRenderItem","updateDisplayCount","suffixFixedStartVal","notReady","getItemWidth","totalWidth","lastIndex","currentItemWidth","displayRest","suffixStyle","left","top","restNode","itemSharedProps","internalRenderItemNode","restContextProps","_","mergedRenderRest","overflowNode","clientWidth","ForwardOverflow"],"sourceRoot":""}