@topwrite/reader 1.0.85 → 1.0.86-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +0,0 @@
1
- {"version":3,"file":"154-07a8f6.js","mappings":"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","sources":["webpack://@topwrite/reader/../node_modules/.pnpm/classnames@2.3.2/node_modules/classnames/index.js","webpack://@topwrite/reader/../node_modules/.pnpm/core-js@3.31.0/node_modules/core-js/internals/engine-is-bun.js","webpack://@topwrite/reader/../node_modules/.pnpm/core-js@3.31.0/node_modules/core-js/internals/schedulers-fix.js","webpack://@topwrite/reader/../node_modules/.pnpm/core-js@3.31.0/node_modules/core-js/modules/web.set-interval.js","webpack://@topwrite/reader/../node_modules/.pnpm/core-js@3.31.0/node_modules/core-js/modules/web.set-timeout.js","webpack://@topwrite/reader/../node_modules/.pnpm/core-js@3.31.0/node_modules/core-js/modules/web.timers.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/inherits.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/createSuper.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-util@5.44.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-util/es/raf.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-util@5.44.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-util/es/Dom/contains.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-util@5.44.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-util/es/Dom/findDOMNode.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-util@5.44.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-util/es/React/isFragment.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-util@5.44.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-util/es/ref.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-util@5.44.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-util/es/Dom/addEventListener.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-util@5.44.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-util/es/Dom/canUseDom.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-util@5.44.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-util/es/Portal.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-trigger@5.3.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-trigger/es/utils/alignUtil.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-motion@2.6.3_react-dom@18.3.1_react@18.3.1/node_modules/rc-motion/es/util/motion.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-motion@2.6.3_react-dom@18.3.1_react@18.3.1/node_modules/rc-motion/es/interface.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-util@5.44.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-util/es/hooks/useState.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-motion@2.6.3_react-dom@18.3.1_react@18.3.1/node_modules/rc-motion/es/hooks/useIsomorphicLayoutEffect.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-motion@2.6.3_react-dom@18.3.1_react@18.3.1/node_modules/rc-motion/es/hooks/useStepQueue.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-motion@2.6.3_react-dom@18.3.1_react@18.3.1/node_modules/rc-motion/es/hooks/useNextFrame.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-motion@2.6.3_react-dom@18.3.1_react@18.3.1/node_modules/rc-motion/es/hooks/useDomMotionEvents.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-motion@2.6.3_react-dom@18.3.1_react@18.3.1/node_modules/rc-motion/es/DomWrapper.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-motion@2.6.3_react-dom@18.3.1_react@18.3.1/node_modules/rc-motion/es/CSSMotion.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-motion@2.6.3_react-dom@18.3.1_react@18.3.1/node_modules/rc-motion/es/hooks/useStatus.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-motion@2.6.3_react-dom@18.3.1_react@18.3.1/node_modules/rc-motion/es/util/diff.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-motion@2.6.3_react-dom@18.3.1_react@18.3.1/node_modules/rc-motion/es/CSSMotionList.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-motion@2.6.3_react-dom@18.3.1_react@18.3.1/node_modules/rc-motion/es/index.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-trigger@5.3.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-trigger/es/utils/legacyUtil.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-trigger@5.3.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-trigger/es/Popup/Mask.js","webpack://@topwrite/reader/../node_modules/.pnpm/dom-align@1.12.4/node_modules/dom-align/dist-web/index.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-util@5.44.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-util/es/warning.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-util@5.44.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-util/es/isEqual.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-util@5.44.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-util/es/hooks/useLayoutEffect.js","webpack://@topwrite/reader/../node_modules/.pnpm/resize-observer-polyfill@1.5.1/node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-align@4.0.15_react-dom@18.3.1_react@18.3.1/node_modules/rc-align/es/util.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-align@4.0.15_react-dom@18.3.1_react@18.3.1/node_modules/rc-align/es/Align.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-align@4.0.15_react-dom@18.3.1_react@18.3.1/node_modules/rc-align/es/hooks/useBuffer.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-util@5.44.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-util/es/Dom/isVisible.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-align@4.0.15_react-dom@18.3.1_react@18.3.1/node_modules/rc-align/es/index.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js","webpack://@topwrite/reader/../node_modules/.pnpm/@babel+runtime@7.21.0/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-trigger@5.3.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-trigger/es/Popup/useVisibleStatus.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-trigger@5.3.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-trigger/es/Popup/PopupInner.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-trigger@5.3.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-trigger/es/Popup/useStretchStyle.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-trigger@5.3.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-trigger/es/Popup/MobilePopupInner.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-trigger@5.3.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-trigger/es/Popup/index.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-util@5.44.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-util/es/isMobile.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-trigger@5.3.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-trigger/es/context.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-trigger@5.3.4_react-dom@18.3.1_react@18.3.1/node_modules/rc-trigger/es/index.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-tooltip@5.3.1_react-dom@18.3.1_react@18.3.1/node_modules/rc-tooltip/es/placements.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-tooltip@5.3.1_react-dom@18.3.1_react@18.3.1/node_modules/rc-tooltip/es/Popup.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-tooltip@5.3.1_react-dom@18.3.1_react@18.3.1/node_modules/rc-tooltip/es/Tooltip.js","webpack://@topwrite/reader/../node_modules/.pnpm/rc-tooltip@5.3.1_react-dom@18.3.1_react@18.3.1/node_modules/rc-tooltip/es/index.js","webpack://@topwrite/reader/../node_modules/.pnpm/react-is@18.3.1/node_modules/react-is/cjs/react-is.production.min.js","webpack://@topwrite/reader/../node_modules/.pnpm/react-is@18.3.1/node_modules/react-is/index.js"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","/* global Bun -- Deno case */\nmodule.exports = typeof Bun == 'function' && Bun && typeof Bun.version == 'string';\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar isCallable = require('../internals/is-callable');\nvar ENGINE_IS_BUN = require('../internals/engine-is-bun');\nvar USER_AGENT = require('../internals/engine-user-agent');\nvar arraySlice = require('../internals/array-slice');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\n\nvar Function = global.Function;\n// dirty IE9- and Bun 0.3.0- checks\nvar WRAP = /MSIE .\\./.test(USER_AGENT) || ENGINE_IS_BUN && (function () {\n var version = global.Bun.version.split('.');\n return version.length < 3 || version[0] == 0 && (version[1] < 3 || version[1] == 3 && version[2] == 0);\n})();\n\n// IE9- / Bun 0.3.0- setTimeout / setInterval / setImmediate additional parameters fix\n// https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#timers\n// https://github.com/oven-sh/bun/issues/1633\nmodule.exports = function (scheduler, hasTimeArg) {\n var firstParamIndex = hasTimeArg ? 2 : 1;\n return WRAP ? function (handler, timeout /* , ...arguments */) {\n var boundArgs = validateArgumentsLength(arguments.length, 1) > firstParamIndex;\n var fn = isCallable(handler) ? handler : Function(handler);\n var params = boundArgs ? arraySlice(arguments, firstParamIndex) : [];\n var callback = boundArgs ? function () {\n apply(fn, this, params);\n } : fn;\n return hasTimeArg ? scheduler(callback, timeout) : scheduler(callback);\n } : scheduler;\n};\n","var $ = require('../internals/export');\nvar global = require('../internals/global');\nvar schedulersFix = require('../internals/schedulers-fix');\n\nvar setInterval = schedulersFix(global.setInterval, true);\n\n// Bun / IE9- setInterval additional parameters fix\n// https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#dom-setinterval\n$({ global: true, bind: true, forced: global.setInterval !== setInterval }, {\n setInterval: setInterval\n});\n","var $ = require('../internals/export');\nvar global = require('../internals/global');\nvar schedulersFix = require('../internals/schedulers-fix');\n\nvar setTimeout = schedulersFix(global.setTimeout, true);\n\n// Bun / IE9- setTimeout additional parameters fix\n// https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#dom-settimeout\n$({ global: true, bind: true, forced: global.setTimeout !== setTimeout }, {\n setTimeout: setTimeout\n});\n","// TODO: Remove this module from `core-js@4` since it's split to modules listed below\nrequire('../modules/web.set-interval');\nrequire('../modules/web.set-timeout');\n","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nimport possibleConstructorReturn from \"./possibleConstructorReturn.js\";\nexport default function _createSuper(Derived) {\n var hasNativeReflectConstruct = isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return possibleConstructorReturn(this, result);\n };\n}","export default function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","var raf = function raf(callback) {\n return +setTimeout(callback, 16);\n};\nvar caf = function caf(num) {\n return clearTimeout(num);\n};\nif (typeof window !== 'undefined' && 'requestAnimationFrame' in window) {\n raf = function raf(callback) {\n return window.requestAnimationFrame(callback);\n };\n caf = function caf(handle) {\n return window.cancelAnimationFrame(handle);\n };\n}\nvar rafUUID = 0;\nvar rafIds = new Map();\nfunction cleanup(id) {\n rafIds.delete(id);\n}\nvar wrapperRaf = function wrapperRaf(callback) {\n var times = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n rafUUID += 1;\n var id = rafUUID;\n function callRef(leftTimes) {\n if (leftTimes === 0) {\n // Clean up\n cleanup(id);\n\n // Trigger\n callback();\n } else {\n // Next raf\n var realId = raf(function () {\n callRef(leftTimes - 1);\n });\n\n // Bind real raf id\n rafIds.set(id, realId);\n }\n }\n callRef(times);\n return id;\n};\nwrapperRaf.cancel = function (id) {\n var realId = rafIds.get(id);\n cleanup(id);\n return caf(realId);\n};\nif (process.env.NODE_ENV !== 'production') {\n wrapperRaf.ids = function () {\n return rafIds;\n };\n}\nexport default wrapperRaf;","export default function contains(root, n) {\n if (!root) {\n return false;\n }\n\n // Use native if support\n if (root.contains) {\n return root.contains(n);\n }\n\n // `document.contains` not support with IE11\n var node = n;\n while (node) {\n if (node === root) {\n return true;\n }\n node = node.parentNode;\n }\n return false;\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nexport function isDOM(node) {\n // https://developer.mozilla.org/en-US/docs/Web/API/Element\n // Since XULElement is also subclass of Element, we only need HTMLElement and SVGElement\n return node instanceof HTMLElement || node instanceof SVGElement;\n}\n\n/**\n * Retrieves a DOM node via a ref, and does not invoke `findDOMNode`.\n */\nexport function getDOM(node) {\n if (node && _typeof(node) === 'object' && isDOM(node.nativeElement)) {\n return node.nativeElement;\n }\n if (isDOM(node)) {\n return node;\n }\n return null;\n}\n\n/**\n * Return if a node is a DOM node. Else will return by `findDOMNode`\n */\nexport default function findDOMNode(node) {\n var domNode = getDOM(node);\n if (domNode) {\n return domNode;\n }\n if (node instanceof React.Component) {\n var _ReactDOM$findDOMNode;\n return (_ReactDOM$findDOMNode = ReactDOM.findDOMNode) === null || _ReactDOM$findDOMNode === void 0 ? void 0 : _ReactDOM$findDOMNode.call(ReactDOM, node);\n }\n return null;\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nvar REACT_ELEMENT_TYPE_18 = Symbol.for('react.element');\nvar REACT_ELEMENT_TYPE_19 = Symbol.for('react.transitional.element');\nvar REACT_FRAGMENT_TYPE = Symbol.for('react.fragment');\n\n/**\n * Compatible with React 18 or 19 to check if node is a Fragment.\n */\nexport default function isFragment(object) {\n return (\n // Base object type\n object && _typeof(object) === 'object' && (\n // React Element type\n object.$$typeof === REACT_ELEMENT_TYPE_18 || object.$$typeof === REACT_ELEMENT_TYPE_19) &&\n // React Fragment type\n object.type === REACT_FRAGMENT_TYPE\n );\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport { isValidElement, version } from 'react';\nimport { ForwardRef, isMemo } from 'react-is';\nimport useMemo from \"./hooks/useMemo\";\nimport isFragment from \"./React/isFragment\";\nvar ReactMajorVersion = Number(version.split('.')[0]);\nexport var fillRef = 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/**\n * Merge refs into one ref function to support ref passing.\n */\nexport var composeRef = function composeRef() {\n for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {\n refs[_key] = arguments[_key];\n }\n var refList = refs.filter(Boolean);\n if (refList.length <= 1) {\n return refList[0];\n }\n return function (node) {\n refs.forEach(function (ref) {\n fillRef(ref, node);\n });\n };\n};\nexport var useComposeRef = function useComposeRef() {\n for (var _len2 = arguments.length, refs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n refs[_key2] = arguments[_key2];\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 var supportRef = function supportRef(nodeOrComponent) {\n var _type$prototype, _nodeOrComponent$prot;\n if (!nodeOrComponent) {\n return false;\n }\n\n // React 19 no need `forwardRef` anymore. So just pass if is a React element.\n if (isReactElement(nodeOrComponent) && ReactMajorVersion >= 19) {\n return true;\n }\n var type = isMemo(nodeOrComponent) ? nodeOrComponent.type.type : nodeOrComponent.type;\n\n // Function component node\n if (typeof type === 'function' && !((_type$prototype = type.prototype) !== null && _type$prototype !== void 0 && _type$prototype.render) && type.$$typeof !== ForwardRef) {\n return false;\n }\n\n // Class component\n if (typeof nodeOrComponent === 'function' && !((_nodeOrComponent$prot = nodeOrComponent.prototype) !== null && _nodeOrComponent$prot !== void 0 && _nodeOrComponent$prot.render) && nodeOrComponent.$$typeof !== ForwardRef) {\n return false;\n }\n return true;\n};\nfunction isReactElement(node) {\n return /*#__PURE__*/isValidElement(node) && !isFragment(node);\n}\nexport var supportNodeRef = function supportNodeRef(node) {\n return isReactElement(node) && supportRef(node);\n};\n\n/**\n * In React 19. `ref` is not a property from node.\n * But a property from `props.ref`.\n * To check if `props.ref` exist or fallback to `ref`.\n */\nexport var getNodeRef = function getNodeRef(node) {\n if (node && isReactElement(node)) {\n var ele = node;\n\n // Source from:\n // https://github.com/mui/material-ui/blob/master/packages/mui-utils/src/getReactNodeRef/getReactNodeRef.ts\n return ele.props.propertyIsEnumerable('ref') ? ele.props.ref : ele.ref;\n }\n return null;\n};","import ReactDOM from 'react-dom';\nexport default function addEventListenerWrap(target, eventType, cb, option) {\n /* eslint camelcase: 2 */\n var callback = ReactDOM.unstable_batchedUpdates ? function run(e) {\n ReactDOM.unstable_batchedUpdates(cb, e);\n } : cb;\n if (target !== null && target !== void 0 && target.addEventListener) {\n target.addEventListener(eventType, callback, option);\n }\n return {\n remove: function remove() {\n if (target !== null && target !== void 0 && target.removeEventListener) {\n target.removeEventListener(eventType, callback, option);\n }\n }\n };\n}","export default function canUseDom() {\n return !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n}","import { useRef, useEffect, forwardRef, useImperativeHandle } from 'react';\nimport ReactDOM from 'react-dom';\nimport canUseDom from \"./Dom/canUseDom\";\nvar Portal = /*#__PURE__*/forwardRef(function (props, ref) {\n var didUpdate = props.didUpdate,\n getContainer = props.getContainer,\n children = props.children;\n var parentRef = useRef();\n var containerRef = useRef();\n\n // Ref return nothing, only for wrapper check exist\n useImperativeHandle(ref, function () {\n return {};\n });\n\n // Create container in client side with sync to avoid useEffect not get ref\n var initRef = useRef(false);\n if (!initRef.current && canUseDom()) {\n containerRef.current = getContainer();\n parentRef.current = containerRef.current.parentNode;\n initRef.current = true;\n }\n\n // [Legacy] Used by `rc-trigger`\n useEffect(function () {\n didUpdate === null || didUpdate === void 0 || didUpdate(props);\n });\n useEffect(function () {\n // Restore container to original place\n // React 18 StrictMode will unmount first and mount back for effect test:\n // https://reactjs.org/blog/2022/03/29/react-v18.html#new-strict-mode-behaviors\n if (containerRef.current.parentNode === null && parentRef.current !== null) {\n parentRef.current.appendChild(containerRef.current);\n }\n return function () {\n var _containerRef$current;\n // [Legacy] This should not be handle by Portal but parent PortalWrapper instead.\n // Since some component use `Portal` directly, we have to keep the logic here.\n (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 || (_containerRef$current = _containerRef$current.parentNode) === null || _containerRef$current === void 0 || _containerRef$current.removeChild(containerRef.current);\n };\n }, []);\n return containerRef.current ? /*#__PURE__*/ReactDOM.createPortal(children, containerRef.current) : null;\n});\nexport default Portal;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n\nfunction isPointsEq(a1, a2, isAlignPoint) {\n if (isAlignPoint) {\n return a1[0] === a2[0];\n }\n\n return a1[0] === a2[0] && a1[1] === a2[1];\n}\n\nexport function getAlignFromPlacement(builtinPlacements, placementStr, align) {\n var baseAlign = builtinPlacements[placementStr] || {};\n return _objectSpread(_objectSpread({}, baseAlign), align);\n}\nexport function getAlignPopupClassName(builtinPlacements, prefixCls, align, isAlignPoint) {\n var points = align.points;\n var placements = Object.keys(builtinPlacements);\n\n for (var i = 0; i < placements.length; i += 1) {\n var placement = placements[i];\n\n if (isPointsEq(builtinPlacements[placement].points, points, isAlignPoint)) {\n return \"\".concat(prefixCls, \"-placement-\").concat(placement);\n }\n }\n\n return '';\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport canUseDOM from \"rc-util/es/Dom/canUseDom\";\n\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}\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 */\nexport default function useSafeState(defaultValue) {\n var destroyRef = React.useRef(false);\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 React.useEffect(function () {\n destroyRef.current = false;\n return function () {\n destroyRef.current = true;\n };\n }, []);\n function safeSetState(updater, ignoreDestroy) {\n if (ignoreDestroy && destroyRef.current) {\n return;\n }\n setValue(updater);\n }\n return [value, safeSetState];\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 * 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 * 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 _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/**\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\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 && leavedClassName) {\n motionChildren = children(_objectSpread(_objectSpread({}, mergedProps), {}, {\n className: leavedClassName\n }), setNodeRef);\n } else if (forceRender || !removeOnLeave && !leavedClassName) {\n motionChildren = children(_objectSpread(_objectSpread({}, mergedProps), {}, {\n style: {\n display: 'none'\n }\n }), setNodeRef);\n } else {\n motionChildren = null;\n }\n } else {\n var _classNames;\n\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 _ref = motionChildren,\n originNodeRef = _ref.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 _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 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 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\n if (asyncVisible !== undefined && status === STATUS_NONE) {\n // Skip first render is invisible since it's nothing changed\n if (firstMountChangeRef.current || asyncVisible) {\n onVisibleChanged === null || onVisibleChanged === void 0 ? void 0 : onVisibleChanged(asyncVisible);\n }\n\n firstMountChangeRef.current = true;\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 _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 _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\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/**\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\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\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n keyEntities: []\n });\n\n _defineProperty(_assertThisInitialized(_this), \"removeKey\", function (removeKey) {\n var keyEntities = _this.state.keyEntities;\n var nextKeyEntities = keyEntities.map(function (entity) {\n if (entity.key !== removeKey) return entity;\n return _objectSpread(_objectSpread({}, entity), {}, {\n status: STATUS_REMOVED\n });\n });\n\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 _defineProperty(CSSMotionList, \"defaultProps\", {\n component: 'div'\n });\n\n return CSSMotionList;\n}\nexport default genCSSMotionList(supportTransition);","import CSSMotion from \"./CSSMotion\";\nimport CSSMotionList from \"./CSSMotionList\";\nexport { CSSMotionList };\nexport default CSSMotion;","export function getMotion(_ref) {\n var prefixCls = _ref.prefixCls,\n motion = _ref.motion,\n animation = _ref.animation,\n transitionName = _ref.transitionName;\n\n if (motion) {\n return motion;\n }\n\n if (animation) {\n return {\n motionName: \"\".concat(prefixCls, \"-\").concat(animation)\n };\n }\n\n if (transitionName) {\n return {\n motionName: transitionName\n };\n }\n\n return null;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nimport { getMotion } from \"../utils/legacyUtil\";\nexport default function Mask(props) {\n var prefixCls = props.prefixCls,\n visible = props.visible,\n zIndex = props.zIndex,\n mask = props.mask,\n maskMotion = props.maskMotion,\n maskAnimation = props.maskAnimation,\n maskTransitionName = props.maskTransitionName;\n\n if (!mask) {\n return null;\n }\n\n var motion = {};\n\n if (maskMotion || maskTransitionName || maskAnimation) {\n motion = _objectSpread({\n motionAppear: true\n }, getMotion({\n motion: maskMotion,\n prefixCls: prefixCls,\n transitionName: maskTransitionName,\n animation: maskAnimation\n }));\n }\n\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({}, motion, {\n visible: visible,\n removeOnLeave: true\n }), function (_ref) {\n var className = _ref.className;\n return /*#__PURE__*/React.createElement(\"div\", {\n style: {\n zIndex: zIndex\n },\n className: classNames(\"\".concat(prefixCls, \"-mask\"), className)\n });\n });\n}","function ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\n\nvar vendorPrefix;\nvar jsCssMap = {\n Webkit: '-webkit-',\n Moz: '-moz-',\n // IE did it wrong again ...\n ms: '-ms-',\n O: '-o-'\n};\nfunction getVendorPrefix() {\n if (vendorPrefix !== undefined) {\n return vendorPrefix;\n }\n vendorPrefix = '';\n var style = document.createElement('p').style;\n var testProp = 'Transform';\n for (var key in jsCssMap) {\n if (key + testProp in style) {\n vendorPrefix = key;\n }\n }\n return vendorPrefix;\n}\nfunction getTransitionName() {\n return getVendorPrefix() ? \"\".concat(getVendorPrefix(), \"TransitionProperty\") : 'transitionProperty';\n}\nfunction getTransformName() {\n return getVendorPrefix() ? \"\".concat(getVendorPrefix(), \"Transform\") : 'transform';\n}\nfunction setTransitionProperty(node, value) {\n var name = getTransitionName();\n if (name) {\n node.style[name] = value;\n if (name !== 'transitionProperty') {\n node.style.transitionProperty = value;\n }\n }\n}\nfunction setTransform(node, value) {\n var name = getTransformName();\n if (name) {\n node.style[name] = value;\n if (name !== 'transform') {\n node.style.transform = value;\n }\n }\n}\nfunction getTransitionProperty(node) {\n return node.style.transitionProperty || node.style[getTransitionName()];\n}\nfunction getTransformXY(node) {\n var style = window.getComputedStyle(node, null);\n var transform = style.getPropertyValue('transform') || style.getPropertyValue(getTransformName());\n if (transform && transform !== 'none') {\n var matrix = transform.replace(/[^0-9\\-.,]/g, '').split(',');\n return {\n x: parseFloat(matrix[12] || matrix[4], 0),\n y: parseFloat(matrix[13] || matrix[5], 0)\n };\n }\n return {\n x: 0,\n y: 0\n };\n}\nvar matrix2d = /matrix\\((.*)\\)/;\nvar matrix3d = /matrix3d\\((.*)\\)/;\nfunction setTransformXY(node, xy) {\n var style = window.getComputedStyle(node, null);\n var transform = style.getPropertyValue('transform') || style.getPropertyValue(getTransformName());\n if (transform && transform !== 'none') {\n var arr;\n var match2d = transform.match(matrix2d);\n if (match2d) {\n match2d = match2d[1];\n arr = match2d.split(',').map(function (item) {\n return parseFloat(item, 10);\n });\n arr[4] = xy.x;\n arr[5] = xy.y;\n setTransform(node, \"matrix(\".concat(arr.join(','), \")\"));\n } else {\n var match3d = transform.match(matrix3d)[1];\n arr = match3d.split(',').map(function (item) {\n return parseFloat(item, 10);\n });\n arr[12] = xy.x;\n arr[13] = xy.y;\n setTransform(node, \"matrix3d(\".concat(arr.join(','), \")\"));\n }\n } else {\n setTransform(node, \"translateX(\".concat(xy.x, \"px) translateY(\").concat(xy.y, \"px) translateZ(0)\"));\n }\n}\n\nvar RE_NUM = /[\\-+]?(?:\\d*\\.|)\\d+(?:[eE][\\-+]?\\d+|)/.source;\nvar getComputedStyleX;\n\n// https://stackoverflow.com/a/3485654/3040605\nfunction forceRelayout(elem) {\n var originalStyle = elem.style.display;\n elem.style.display = 'none';\n elem.offsetHeight; // eslint-disable-line\n elem.style.display = originalStyle;\n}\nfunction css(el, name, v) {\n var value = v;\n if (_typeof(name) === 'object') {\n for (var i in name) {\n if (name.hasOwnProperty(i)) {\n css(el, i, name[i]);\n }\n }\n return undefined;\n }\n if (typeof value !== 'undefined') {\n if (typeof value === 'number') {\n value = \"\".concat(value, \"px\");\n }\n el.style[name] = value;\n return undefined;\n }\n return getComputedStyleX(el, name);\n}\nfunction getClientPosition(elem) {\n var box;\n var x;\n var y;\n var doc = elem.ownerDocument;\n var body = doc.body;\n var docElem = doc && doc.documentElement;\n // 根据 GBS 最新数据,A-Grade Browsers 都已支持 getBoundingClientRect 方法,不用再考虑传统的实现方式\n box = elem.getBoundingClientRect();\n\n // 注:jQuery 还考虑减去 docElem.clientLeft/clientTop\n // 但测试发现,这样反而会导致当 html 和 body 有边距/边框样式时,获取的值不正确\n // 此外,ie6 会忽略 html 的 margin 值,幸运地是没有谁会去设置 html 的 margin\n\n x = Math.floor(box.left);\n y = Math.floor(box.top);\n\n // In IE, most of the time, 2 extra pixels are added to the top and left\n // due to the implicit 2-pixel inset border. In IE6/7 quirks mode and\n // IE6 standards mode, this border can be overridden by setting the\n // document element's border to zero -- thus, we cannot rely on the\n // offset always being 2 pixels.\n\n // In quirks mode, the offset can be determined by querying the body's\n // clientLeft/clientTop, but in standards mode, it is found by querying\n // the document element's clientLeft/clientTop. Since we already called\n // getClientBoundingRect we have already forced a reflow, so it is not\n // too expensive just to query them all.\n\n // ie 下应该减去窗口的边框吧,毕竟默认 absolute 都是相对窗口定位的\n // 窗口边框标准是设 documentElement ,quirks 时设置 body\n // 最好禁止在 body 和 html 上边框 ,但 ie < 9 html 默认有 2px ,减去\n // 但是非 ie 不可能设置窗口边框,body html 也不是窗口 ,ie 可以通过 html,body 设置\n // 标准 ie 下 docElem.clientTop 就是 border-top\n // ie7 html 即窗口边框改变不了。永远为 2\n // 但标准 firefox/chrome/ie9 下 docElem.clientTop 是窗口边框,即使设了 border-top 也为 0\n\n x -= docElem.clientLeft || body.clientLeft || 0;\n y -= docElem.clientTop || body.clientTop || 0;\n return {\n left: x,\n top: y\n };\n}\nfunction getScroll(w, top) {\n var ret = w[\"page\".concat(top ? 'Y' : 'X', \"Offset\")];\n var method = \"scroll\".concat(top ? 'Top' : 'Left');\n if (typeof ret !== 'number') {\n var d = w.document;\n // ie6,7,8 standard mode\n ret = d.documentElement[method];\n if (typeof ret !== 'number') {\n // quirks mode\n ret = d.body[method];\n }\n }\n return ret;\n}\nfunction getScrollLeft(w) {\n return getScroll(w);\n}\nfunction getScrollTop(w) {\n return getScroll(w, true);\n}\nfunction getOffset(el) {\n var pos = getClientPosition(el);\n var doc = el.ownerDocument;\n var w = doc.defaultView || doc.parentWindow;\n pos.left += getScrollLeft(w);\n pos.top += getScrollTop(w);\n return pos;\n}\n\n/**\n * A crude way of determining if an object is a window\n * @member util\n */\nfunction isWindow(obj) {\n // must use == for ie8\n /* eslint eqeqeq:0 */\n return obj !== null && obj !== undefined && obj == obj.window;\n}\nfunction getDocument(node) {\n if (isWindow(node)) {\n return node.document;\n }\n if (node.nodeType === 9) {\n return node;\n }\n return node.ownerDocument;\n}\nfunction _getComputedStyle(elem, name, cs) {\n var computedStyle = cs;\n var val = '';\n var d = getDocument(elem);\n computedStyle = computedStyle || d.defaultView.getComputedStyle(elem, null);\n\n // https://github.com/kissyteam/kissy/issues/61\n if (computedStyle) {\n val = computedStyle.getPropertyValue(name) || computedStyle[name];\n }\n return val;\n}\nvar _RE_NUM_NO_PX = new RegExp(\"^(\".concat(RE_NUM, \")(?!px)[a-z%]+$\"), 'i');\nvar RE_POS = /^(top|right|bottom|left)$/;\nvar CURRENT_STYLE = 'currentStyle';\nvar RUNTIME_STYLE = 'runtimeStyle';\nvar LEFT = 'left';\nvar PX = 'px';\nfunction _getComputedStyleIE(elem, name) {\n // currentStyle maybe null\n // http://msdn.microsoft.com/en-us/library/ms535231.aspx\n var ret = elem[CURRENT_STYLE] && elem[CURRENT_STYLE][name];\n\n // 当 width/height 设置为百分比时,通过 pixelLeft 方式转换的 width/height 值\n // 一开始就处理了! CUSTOM_STYLE.height,CUSTOM_STYLE.width ,cssHook 解决@2011-08-19\n // 在 ie 下不对,需要直接用 offset 方式\n // borderWidth 等值也有问题,但考虑到 borderWidth 设为百分比的概率很小,这里就不考虑了\n\n // From the awesome hack by Dean Edwards\n // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291\n // If we're not dealing with a regular pixel number\n // but a number that has a weird ending, we need to convert it to pixels\n // exclude left right for relativity\n if (_RE_NUM_NO_PX.test(ret) && !RE_POS.test(name)) {\n // Remember the original values\n var style = elem.style;\n var left = style[LEFT];\n var rsLeft = elem[RUNTIME_STYLE][LEFT];\n\n // prevent flashing of content\n elem[RUNTIME_STYLE][LEFT] = elem[CURRENT_STYLE][LEFT];\n\n // Put in the new values to get a computed value out\n style[LEFT] = name === 'fontSize' ? '1em' : ret || 0;\n ret = style.pixelLeft + PX;\n\n // Revert the changed values\n style[LEFT] = left;\n elem[RUNTIME_STYLE][LEFT] = rsLeft;\n }\n return ret === '' ? 'auto' : ret;\n}\nif (typeof window !== 'undefined') {\n getComputedStyleX = window.getComputedStyle ? _getComputedStyle : _getComputedStyleIE;\n}\nfunction getOffsetDirection(dir, option) {\n if (dir === 'left') {\n return option.useCssRight ? 'right' : dir;\n }\n return option.useCssBottom ? 'bottom' : dir;\n}\nfunction oppositeOffsetDirection(dir) {\n if (dir === 'left') {\n return 'right';\n } else if (dir === 'right') {\n return 'left';\n } else if (dir === 'top') {\n return 'bottom';\n } else if (dir === 'bottom') {\n return 'top';\n }\n}\n\n// 设置 elem 相对 elem.ownerDocument 的坐标\nfunction setLeftTop(elem, offset, option) {\n // set position first, in-case top/left are set even on static elem\n if (css(elem, 'position') === 'static') {\n elem.style.position = 'relative';\n }\n var presetH = -999;\n var presetV = -999;\n var horizontalProperty = getOffsetDirection('left', option);\n var verticalProperty = getOffsetDirection('top', option);\n var oppositeHorizontalProperty = oppositeOffsetDirection(horizontalProperty);\n var oppositeVerticalProperty = oppositeOffsetDirection(verticalProperty);\n if (horizontalProperty !== 'left') {\n presetH = 999;\n }\n if (verticalProperty !== 'top') {\n presetV = 999;\n }\n var originalTransition = '';\n var originalOffset = getOffset(elem);\n if ('left' in offset || 'top' in offset) {\n originalTransition = getTransitionProperty(elem) || '';\n setTransitionProperty(elem, 'none');\n }\n if ('left' in offset) {\n elem.style[oppositeHorizontalProperty] = '';\n elem.style[horizontalProperty] = \"\".concat(presetH, \"px\");\n }\n if ('top' in offset) {\n elem.style[oppositeVerticalProperty] = '';\n elem.style[verticalProperty] = \"\".concat(presetV, \"px\");\n }\n // force relayout\n forceRelayout(elem);\n var old = getOffset(elem);\n var originalStyle = {};\n for (var key in offset) {\n if (offset.hasOwnProperty(key)) {\n var dir = getOffsetDirection(key, option);\n var preset = key === 'left' ? presetH : presetV;\n var off = originalOffset[key] - old[key];\n if (dir === key) {\n originalStyle[dir] = preset + off;\n } else {\n originalStyle[dir] = preset - off;\n }\n }\n }\n css(elem, originalStyle);\n // force relayout\n forceRelayout(elem);\n if ('left' in offset || 'top' in offset) {\n setTransitionProperty(elem, originalTransition);\n }\n var ret = {};\n for (var _key in offset) {\n if (offset.hasOwnProperty(_key)) {\n var _dir = getOffsetDirection(_key, option);\n var _off = offset[_key] - originalOffset[_key];\n if (_key === _dir) {\n ret[_dir] = originalStyle[_dir] + _off;\n } else {\n ret[_dir] = originalStyle[_dir] - _off;\n }\n }\n }\n css(elem, ret);\n}\nfunction setTransform$1(elem, offset) {\n var originalOffset = getOffset(elem);\n var originalXY = getTransformXY(elem);\n var resultXY = {\n x: originalXY.x,\n y: originalXY.y\n };\n if ('left' in offset) {\n resultXY.x = originalXY.x + offset.left - originalOffset.left;\n }\n if ('top' in offset) {\n resultXY.y = originalXY.y + offset.top - originalOffset.top;\n }\n setTransformXY(elem, resultXY);\n}\nfunction setOffset(elem, offset, option) {\n if (option.ignoreShake) {\n var oriOffset = getOffset(elem);\n var oLeft = oriOffset.left.toFixed(0);\n var oTop = oriOffset.top.toFixed(0);\n var tLeft = offset.left.toFixed(0);\n var tTop = offset.top.toFixed(0);\n if (oLeft === tLeft && oTop === tTop) {\n return;\n }\n }\n if (option.useCssRight || option.useCssBottom) {\n setLeftTop(elem, offset, option);\n } else if (option.useCssTransform && getTransformName() in document.body.style) {\n setTransform$1(elem, offset);\n } else {\n setLeftTop(elem, offset, option);\n }\n}\nfunction each(arr, fn) {\n for (var i = 0; i < arr.length; i++) {\n fn(arr[i]);\n }\n}\nfunction isBorderBoxFn(elem) {\n return getComputedStyleX(elem, 'boxSizing') === 'border-box';\n}\nvar BOX_MODELS = ['margin', 'border', 'padding'];\nvar CONTENT_INDEX = -1;\nvar PADDING_INDEX = 2;\nvar BORDER_INDEX = 1;\nvar MARGIN_INDEX = 0;\nfunction swap(elem, options, callback) {\n var old = {};\n var style = elem.style;\n var name;\n\n // Remember the old values, and insert the new ones\n for (name in options) {\n if (options.hasOwnProperty(name)) {\n old[name] = style[name];\n style[name] = options[name];\n }\n }\n callback.call(elem);\n\n // Revert the old values\n for (name in options) {\n if (options.hasOwnProperty(name)) {\n style[name] = old[name];\n }\n }\n}\nfunction getPBMWidth(elem, props, which) {\n var value = 0;\n var prop;\n var j;\n var i;\n for (j = 0; j < props.length; j++) {\n prop = props[j];\n if (prop) {\n for (i = 0; i < which.length; i++) {\n var cssProp = void 0;\n if (prop === 'border') {\n cssProp = \"\".concat(prop).concat(which[i], \"Width\");\n } else {\n cssProp = prop + which[i];\n }\n value += parseFloat(getComputedStyleX(elem, cssProp)) || 0;\n }\n }\n }\n return value;\n}\nvar domUtils = {\n getParent: function getParent(element) {\n var parent = element;\n do {\n if (parent.nodeType === 11 && parent.host) {\n parent = parent.host;\n } else {\n parent = parent.parentNode;\n }\n } while (parent && parent.nodeType !== 1 && parent.nodeType !== 9);\n return parent;\n }\n};\neach(['Width', 'Height'], function (name) {\n domUtils[\"doc\".concat(name)] = function (refWin) {\n var d = refWin.document;\n return Math.max(\n // firefox chrome documentElement.scrollHeight< body.scrollHeight\n // ie standard mode : documentElement.scrollHeight> body.scrollHeight\n d.documentElement[\"scroll\".concat(name)],\n // quirks : documentElement.scrollHeight 最大等于可视窗口多一点?\n d.body[\"scroll\".concat(name)], domUtils[\"viewport\".concat(name)](d));\n };\n domUtils[\"viewport\".concat(name)] = function (win) {\n // pc browser includes scrollbar in window.innerWidth\n var prop = \"client\".concat(name);\n var doc = win.document;\n var body = doc.body;\n var documentElement = doc.documentElement;\n var documentElementProp = documentElement[prop];\n // 标准模式取 documentElement\n // backcompat 取 body\n return doc.compatMode === 'CSS1Compat' && documentElementProp || body && body[prop] || documentElementProp;\n };\n});\n\n/*\n 得到元素的大小信息\n @param elem\n @param name\n @param {String} [extra] 'padding' : (css width) + padding\n 'border' : (css width) + padding + border\n 'margin' : (css width) + padding + border + margin\n */\nfunction getWH(elem, name, ex) {\n var extra = ex;\n if (isWindow(elem)) {\n return name === 'width' ? domUtils.viewportWidth(elem) : domUtils.viewportHeight(elem);\n } else if (elem.nodeType === 9) {\n return name === 'width' ? domUtils.docWidth(elem) : domUtils.docHeight(elem);\n }\n var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];\n var borderBoxValue = name === 'width' ? Math.floor(elem.getBoundingClientRect().width) : Math.floor(elem.getBoundingClientRect().height);\n var isBorderBox = isBorderBoxFn(elem);\n var cssBoxValue = 0;\n if (borderBoxValue === null || borderBoxValue === undefined || borderBoxValue <= 0) {\n borderBoxValue = undefined;\n // Fall back to computed then un computed css if necessary\n cssBoxValue = getComputedStyleX(elem, name);\n if (cssBoxValue === null || cssBoxValue === undefined || Number(cssBoxValue) < 0) {\n cssBoxValue = elem.style[name] || 0;\n }\n // Normalize '', auto, and prepare for extra\n cssBoxValue = Math.floor(parseFloat(cssBoxValue)) || 0;\n }\n if (extra === undefined) {\n extra = isBorderBox ? BORDER_INDEX : CONTENT_INDEX;\n }\n var borderBoxValueOrIsBorderBox = borderBoxValue !== undefined || isBorderBox;\n var val = borderBoxValue || cssBoxValue;\n if (extra === CONTENT_INDEX) {\n if (borderBoxValueOrIsBorderBox) {\n return val - getPBMWidth(elem, ['border', 'padding'], which);\n }\n return cssBoxValue;\n } else if (borderBoxValueOrIsBorderBox) {\n if (extra === BORDER_INDEX) {\n return val;\n }\n return val + (extra === PADDING_INDEX ? -getPBMWidth(elem, ['border'], which) : getPBMWidth(elem, ['margin'], which));\n }\n return cssBoxValue + getPBMWidth(elem, BOX_MODELS.slice(extra), which);\n}\nvar cssShow = {\n position: 'absolute',\n visibility: 'hidden',\n display: 'block'\n};\n\n// fix #119 : https://github.com/kissyteam/kissy/issues/119\nfunction getWHIgnoreDisplay() {\n for (var _len = arguments.length, args = new Array(_len), _key2 = 0; _key2 < _len; _key2++) {\n args[_key2] = arguments[_key2];\n }\n var val;\n var elem = args[0];\n // in case elem is window\n // elem.offsetWidth === undefined\n if (elem.offsetWidth !== 0) {\n val = getWH.apply(undefined, args);\n } else {\n swap(elem, cssShow, function () {\n val = getWH.apply(undefined, args);\n });\n }\n return val;\n}\neach(['width', 'height'], function (name) {\n var first = name.charAt(0).toUpperCase() + name.slice(1);\n domUtils[\"outer\".concat(first)] = function (el, includeMargin) {\n return el && getWHIgnoreDisplay(el, name, includeMargin ? MARGIN_INDEX : BORDER_INDEX);\n };\n var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];\n domUtils[name] = function (elem, v) {\n var val = v;\n if (val !== undefined) {\n if (elem) {\n var isBorderBox = isBorderBoxFn(elem);\n if (isBorderBox) {\n val += getPBMWidth(elem, ['padding', 'border'], which);\n }\n return css(elem, name, val);\n }\n return undefined;\n }\n return elem && getWHIgnoreDisplay(elem, name, CONTENT_INDEX);\n };\n});\nfunction mix(to, from) {\n for (var i in from) {\n if (from.hasOwnProperty(i)) {\n to[i] = from[i];\n }\n }\n return to;\n}\nvar utils = {\n getWindow: function getWindow(node) {\n if (node && node.document && node.setTimeout) {\n return node;\n }\n var doc = node.ownerDocument || node;\n return doc.defaultView || doc.parentWindow;\n },\n getDocument: getDocument,\n offset: function offset(el, value, option) {\n if (typeof value !== 'undefined') {\n setOffset(el, value, option || {});\n } else {\n return getOffset(el);\n }\n },\n isWindow: isWindow,\n each: each,\n css: css,\n clone: function clone(obj) {\n var i;\n var ret = {};\n for (i in obj) {\n if (obj.hasOwnProperty(i)) {\n ret[i] = obj[i];\n }\n }\n var overflow = obj.overflow;\n if (overflow) {\n for (i in obj) {\n if (obj.hasOwnProperty(i)) {\n ret.overflow[i] = obj.overflow[i];\n }\n }\n }\n return ret;\n },\n mix: mix,\n getWindowScrollLeft: function getWindowScrollLeft(w) {\n return getScrollLeft(w);\n },\n getWindowScrollTop: function getWindowScrollTop(w) {\n return getScrollTop(w);\n },\n merge: function merge() {\n var ret = {};\n for (var i = 0; i < arguments.length; i++) {\n utils.mix(ret, i < 0 || arguments.length <= i ? undefined : arguments[i]);\n }\n return ret;\n },\n viewportWidth: 0,\n viewportHeight: 0\n};\nmix(utils, domUtils);\n\n/**\n * 得到会导致元素显示不全的祖先元素\n */\nvar getParent = utils.getParent;\nfunction getOffsetParent(element) {\n if (utils.isWindow(element) || element.nodeType === 9) {\n return null;\n }\n // ie 这个也不是完全可行\n /*\n <div style=\"width: 50px;height: 100px;overflow: hidden\">\n <div style=\"width: 50px;height: 100px;position: relative;\" id=\"d6\">\n 元素 6 高 100px 宽 50px<br/>\n </div>\n </div>\n */\n // element.offsetParent does the right thing in ie7 and below. Return parent with layout!\n // In other browsers it only includes elements with position absolute, relative or\n // fixed, not elements with overflow set to auto or scroll.\n // if (UA.ie && ieMode < 8) {\n // return element.offsetParent;\n // }\n // 统一的 offsetParent 方法\n var doc = utils.getDocument(element);\n var body = doc.body;\n var parent;\n var positionStyle = utils.css(element, 'position');\n var skipStatic = positionStyle === 'fixed' || positionStyle === 'absolute';\n if (!skipStatic) {\n return element.nodeName.toLowerCase() === 'html' ? null : getParent(element);\n }\n for (parent = getParent(element); parent && parent !== body && parent.nodeType !== 9; parent = getParent(parent)) {\n positionStyle = utils.css(parent, 'position');\n if (positionStyle !== 'static') {\n return parent;\n }\n }\n return null;\n}\n\nvar getParent$1 = utils.getParent;\nfunction isAncestorFixed(element) {\n if (utils.isWindow(element) || element.nodeType === 9) {\n return false;\n }\n var doc = utils.getDocument(element);\n var body = doc.body;\n var parent = null;\n for (parent = getParent$1(element);\n // 修复元素位于 document.documentElement 下导致崩溃问题\n parent && parent !== body && parent !== doc; parent = getParent$1(parent)) {\n var positionStyle = utils.css(parent, 'position');\n if (positionStyle === 'fixed') {\n return true;\n }\n }\n return false;\n}\n\n/**\n * 获得元素的显示部分的区域\n */\nfunction getVisibleRectForElement(element, alwaysByViewport) {\n var visibleRect = {\n left: 0,\n right: Infinity,\n top: 0,\n bottom: Infinity\n };\n var el = getOffsetParent(element);\n var doc = utils.getDocument(element);\n var win = doc.defaultView || doc.parentWindow;\n var body = doc.body;\n var documentElement = doc.documentElement;\n\n // Determine the size of the visible rect by climbing the dom accounting for\n // all scrollable containers.\n while (el) {\n // clientWidth is zero for inline block elements in ie.\n if ((navigator.userAgent.indexOf('MSIE') === -1 || el.clientWidth !== 0) &&\n // body may have overflow set on it, yet we still get the entire\n // viewport. In some browsers, el.offsetParent may be\n // document.documentElement, so check for that too.\n el !== body && el !== documentElement && utils.css(el, 'overflow') !== 'visible') {\n var pos = utils.offset(el);\n // add border\n pos.left += el.clientLeft;\n pos.top += el.clientTop;\n visibleRect.top = Math.max(visibleRect.top, pos.top);\n visibleRect.right = Math.min(visibleRect.right,\n // consider area without scrollBar\n pos.left + el.clientWidth);\n visibleRect.bottom = Math.min(visibleRect.bottom, pos.top + el.clientHeight);\n visibleRect.left = Math.max(visibleRect.left, pos.left);\n } else if (el === body || el === documentElement) {\n break;\n }\n el = getOffsetParent(el);\n }\n\n // Set element position to fixed\n // make sure absolute element itself don't affect it's visible area\n // https://github.com/ant-design/ant-design/issues/7601\n var originalPosition = null;\n if (!utils.isWindow(element) && element.nodeType !== 9) {\n originalPosition = element.style.position;\n var position = utils.css(element, 'position');\n if (position === 'absolute') {\n element.style.position = 'fixed';\n }\n }\n var scrollX = utils.getWindowScrollLeft(win);\n var scrollY = utils.getWindowScrollTop(win);\n var viewportWidth = utils.viewportWidth(win);\n var viewportHeight = utils.viewportHeight(win);\n var documentWidth = documentElement.scrollWidth;\n var documentHeight = documentElement.scrollHeight;\n\n // scrollXXX on html is sync with body which means overflow: hidden on body gets wrong scrollXXX.\n // We should cut this ourself.\n var bodyStyle = window.getComputedStyle(body);\n if (bodyStyle.overflowX === 'hidden') {\n documentWidth = win.innerWidth;\n }\n if (bodyStyle.overflowY === 'hidden') {\n documentHeight = win.innerHeight;\n }\n\n // Reset element position after calculate the visible area\n if (element.style) {\n element.style.position = originalPosition;\n }\n if (alwaysByViewport || isAncestorFixed(element)) {\n // Clip by viewport's size.\n visibleRect.left = Math.max(visibleRect.left, scrollX);\n visibleRect.top = Math.max(visibleRect.top, scrollY);\n visibleRect.right = Math.min(visibleRect.right, scrollX + viewportWidth);\n visibleRect.bottom = Math.min(visibleRect.bottom, scrollY + viewportHeight);\n } else {\n // Clip by document's size.\n var maxVisibleWidth = Math.max(documentWidth, scrollX + viewportWidth);\n visibleRect.right = Math.min(visibleRect.right, maxVisibleWidth);\n var maxVisibleHeight = Math.max(documentHeight, scrollY + viewportHeight);\n visibleRect.bottom = Math.min(visibleRect.bottom, maxVisibleHeight);\n }\n return visibleRect.top >= 0 && visibleRect.left >= 0 && visibleRect.bottom > visibleRect.top && visibleRect.right > visibleRect.left ? visibleRect : null;\n}\n\nfunction adjustForViewport(elFuturePos, elRegion, visibleRect, overflow) {\n var pos = utils.clone(elFuturePos);\n var size = {\n width: elRegion.width,\n height: elRegion.height\n };\n if (overflow.adjustX && pos.left < visibleRect.left) {\n pos.left = visibleRect.left;\n }\n\n // Left edge inside and right edge outside viewport, try to resize it.\n if (overflow.resizeWidth && pos.left >= visibleRect.left && pos.left + size.width > visibleRect.right) {\n size.width -= pos.left + size.width - visibleRect.right;\n }\n\n // Right edge outside viewport, try to move it.\n if (overflow.adjustX && pos.left + size.width > visibleRect.right) {\n // 保证左边界和可视区域左边界对齐\n pos.left = Math.max(visibleRect.right - size.width, visibleRect.left);\n }\n\n // Top edge outside viewport, try to move it.\n if (overflow.adjustY && pos.top < visibleRect.top) {\n pos.top = visibleRect.top;\n }\n\n // Top edge inside and bottom edge outside viewport, try to resize it.\n if (overflow.resizeHeight && pos.top >= visibleRect.top && pos.top + size.height > visibleRect.bottom) {\n size.height -= pos.top + size.height - visibleRect.bottom;\n }\n\n // Bottom edge outside viewport, try to move it.\n if (overflow.adjustY && pos.top + size.height > visibleRect.bottom) {\n // 保证上边界和可视区域上边界对齐\n pos.top = Math.max(visibleRect.bottom - size.height, visibleRect.top);\n }\n return utils.mix(pos, size);\n}\n\nfunction getRegion(node) {\n var offset;\n var w;\n var h;\n if (!utils.isWindow(node) && node.nodeType !== 9) {\n offset = utils.offset(node);\n w = utils.outerWidth(node);\n h = utils.outerHeight(node);\n } else {\n var win = utils.getWindow(node);\n offset = {\n left: utils.getWindowScrollLeft(win),\n top: utils.getWindowScrollTop(win)\n };\n w = utils.viewportWidth(win);\n h = utils.viewportHeight(win);\n }\n offset.width = w;\n offset.height = h;\n return offset;\n}\n\n/**\n * 获取 node 上的 align 对齐点 相对于页面的坐标\n */\n\nfunction getAlignOffset(region, align) {\n var V = align.charAt(0);\n var H = align.charAt(1);\n var w = region.width;\n var h = region.height;\n var x = region.left;\n var y = region.top;\n if (V === 'c') {\n y += h / 2;\n } else if (V === 'b') {\n y += h;\n }\n if (H === 'c') {\n x += w / 2;\n } else if (H === 'r') {\n x += w;\n }\n return {\n left: x,\n top: y\n };\n}\n\nfunction getElFuturePos(elRegion, refNodeRegion, points, offset, targetOffset) {\n var p1 = getAlignOffset(refNodeRegion, points[1]);\n var p2 = getAlignOffset(elRegion, points[0]);\n var diff = [p2.left - p1.left, p2.top - p1.top];\n return {\n left: Math.round(elRegion.left - diff[0] + offset[0] - targetOffset[0]),\n top: Math.round(elRegion.top - diff[1] + offset[1] - targetOffset[1])\n };\n}\n\n/**\n * align dom node flexibly\n * @author yiminghe@gmail.com\n */\n\n// http://yiminghe.iteye.com/blog/1124720\n\nfunction isFailX(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.left < visibleRect.left || elFuturePos.left + elRegion.width > visibleRect.right;\n}\nfunction isFailY(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.top < visibleRect.top || elFuturePos.top + elRegion.height > visibleRect.bottom;\n}\nfunction isCompleteFailX(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.left > visibleRect.right || elFuturePos.left + elRegion.width < visibleRect.left;\n}\nfunction isCompleteFailY(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.top > visibleRect.bottom || elFuturePos.top + elRegion.height < visibleRect.top;\n}\nfunction flip(points, reg, map) {\n var ret = [];\n utils.each(points, function (p) {\n ret.push(p.replace(reg, function (m) {\n return map[m];\n }));\n });\n return ret;\n}\nfunction flipOffset(offset, index) {\n offset[index] = -offset[index];\n return offset;\n}\nfunction convertOffset(str, offsetLen) {\n var n;\n if (/%$/.test(str)) {\n n = parseInt(str.substring(0, str.length - 1), 10) / 100 * offsetLen;\n } else {\n n = parseInt(str, 10);\n }\n return n || 0;\n}\nfunction normalizeOffset(offset, el) {\n offset[0] = convertOffset(offset[0], el.width);\n offset[1] = convertOffset(offset[1], el.height);\n}\n\n/**\n * @param el\n * @param tgtRegion 参照节点所占的区域: { left, top, width, height }\n * @param align\n */\nfunction doAlign(el, tgtRegion, align, isTgtRegionVisible) {\n var points = align.points;\n var offset = align.offset || [0, 0];\n var targetOffset = align.targetOffset || [0, 0];\n var overflow = align.overflow;\n var source = align.source || el;\n offset = [].concat(offset);\n targetOffset = [].concat(targetOffset);\n overflow = overflow || {};\n var newOverflowCfg = {};\n var fail = 0;\n var alwaysByViewport = !!(overflow && overflow.alwaysByViewport);\n // 当前节点可以被放置的显示区域\n var visibleRect = getVisibleRectForElement(source, alwaysByViewport);\n // 当前节点所占的区域, left/top/width/height\n var elRegion = getRegion(source);\n // 将 offset 转换成数值,支持百分比\n normalizeOffset(offset, elRegion);\n normalizeOffset(targetOffset, tgtRegion);\n // 当前节点将要被放置的位置\n var elFuturePos = getElFuturePos(elRegion, tgtRegion, points, offset, targetOffset);\n // 当前节点将要所处的区域\n var newElRegion = utils.merge(elRegion, elFuturePos);\n\n // 如果可视区域不能完全放置当前节点时允许调整\n if (visibleRect && (overflow.adjustX || overflow.adjustY) && isTgtRegionVisible) {\n if (overflow.adjustX) {\n // 如果横向不能放下\n if (isFailX(elFuturePos, elRegion, visibleRect)) {\n // 对齐位置反下\n var newPoints = flip(points, /[lr]/gi, {\n l: 'r',\n r: 'l'\n });\n // 偏移量也反下\n var newOffset = flipOffset(offset, 0);\n var newTargetOffset = flipOffset(targetOffset, 0);\n var newElFuturePos = getElFuturePos(elRegion, tgtRegion, newPoints, newOffset, newTargetOffset);\n if (!isCompleteFailX(newElFuturePos, elRegion, visibleRect)) {\n fail = 1;\n points = newPoints;\n offset = newOffset;\n targetOffset = newTargetOffset;\n }\n }\n }\n if (overflow.adjustY) {\n // 如果纵向不能放下\n if (isFailY(elFuturePos, elRegion, visibleRect)) {\n // 对齐位置反下\n var _newPoints = flip(points, /[tb]/gi, {\n t: 'b',\n b: 't'\n });\n // 偏移量也反下\n var _newOffset = flipOffset(offset, 1);\n var _newTargetOffset = flipOffset(targetOffset, 1);\n var _newElFuturePos = getElFuturePos(elRegion, tgtRegion, _newPoints, _newOffset, _newTargetOffset);\n if (!isCompleteFailY(_newElFuturePos, elRegion, visibleRect)) {\n fail = 1;\n points = _newPoints;\n offset = _newOffset;\n targetOffset = _newTargetOffset;\n }\n }\n }\n\n // 如果失败,重新计算当前节点将要被放置的位置\n if (fail) {\n elFuturePos = getElFuturePos(elRegion, tgtRegion, points, offset, targetOffset);\n utils.mix(newElRegion, elFuturePos);\n }\n var isStillFailX = isFailX(elFuturePos, elRegion, visibleRect);\n var isStillFailY = isFailY(elFuturePos, elRegion, visibleRect);\n // 检查反下后的位置是否可以放下了,如果仍然放不下:\n // 1. 复原修改过的定位参数\n if (isStillFailX || isStillFailY) {\n var _newPoints2 = points;\n\n // 重置对应部分的翻转逻辑\n if (isStillFailX) {\n _newPoints2 = flip(points, /[lr]/gi, {\n l: 'r',\n r: 'l'\n });\n }\n if (isStillFailY) {\n _newPoints2 = flip(points, /[tb]/gi, {\n t: 'b',\n b: 't'\n });\n }\n points = _newPoints2;\n offset = align.offset || [0, 0];\n targetOffset = align.targetOffset || [0, 0];\n }\n // 2. 只有指定了可以调整当前方向才调整\n newOverflowCfg.adjustX = overflow.adjustX && isStillFailX;\n newOverflowCfg.adjustY = overflow.adjustY && isStillFailY;\n\n // 确实要调整,甚至可能会调整高度宽度\n if (newOverflowCfg.adjustX || newOverflowCfg.adjustY) {\n newElRegion = adjustForViewport(elFuturePos, elRegion, visibleRect, newOverflowCfg);\n }\n }\n\n // need judge to in case set fixed with in css on height auto element\n if (newElRegion.width !== elRegion.width) {\n utils.css(source, 'width', utils.width(source) + newElRegion.width - elRegion.width);\n }\n if (newElRegion.height !== elRegion.height) {\n utils.css(source, 'height', utils.height(source) + newElRegion.height - elRegion.height);\n }\n\n // https://github.com/kissyteam/kissy/issues/190\n // 相对于屏幕位置没变,而 left/top 变了\n // 例如 <div 'relative'><el absolute></div>\n utils.offset(source, {\n left: newElRegion.left,\n top: newElRegion.top\n }, {\n useCssRight: align.useCssRight,\n useCssBottom: align.useCssBottom,\n useCssTransform: align.useCssTransform,\n ignoreShake: align.ignoreShake\n });\n return {\n points: points,\n offset: offset,\n targetOffset: targetOffset,\n overflow: newOverflowCfg\n };\n}\n/**\n * 2012-04-26 yiminghe@gmail.com\n * - 优化智能对齐算法\n * - 慎用 resizeXX\n *\n * 2011-07-13 yiminghe@gmail.com note:\n * - 增加智能对齐,以及大小调整选项\n **/\n\nfunction isOutOfVisibleRect(target, alwaysByViewport) {\n var visibleRect = getVisibleRectForElement(target, alwaysByViewport);\n var targetRegion = getRegion(target);\n return !visibleRect || targetRegion.left + targetRegion.width <= visibleRect.left || targetRegion.top + targetRegion.height <= visibleRect.top || targetRegion.left >= visibleRect.right || targetRegion.top >= visibleRect.bottom;\n}\nfunction alignElement(el, refNode, align) {\n var target = align.target || refNode;\n var refNodeRegion = getRegion(target);\n var isTargetNotOutOfVisible = !isOutOfVisibleRect(target, align.overflow && align.overflow.alwaysByViewport);\n return doAlign(el, refNodeRegion, align, isTargetNotOutOfVisible);\n}\nalignElement.__getOffsetParent = getOffsetParent;\nalignElement.__getVisibleRectForElement = getVisibleRectForElement;\n\n/**\n * `tgtPoint`: { pageX, pageY } or { clientX, clientY }.\n * If client position provided, will internal convert to page position.\n */\n\nfunction alignPoint(el, tgtPoint, align) {\n var pageX;\n var pageY;\n var doc = utils.getDocument(el);\n var win = doc.defaultView || doc.parentWindow;\n var scrollX = utils.getWindowScrollLeft(win);\n var scrollY = utils.getWindowScrollTop(win);\n var viewportWidth = utils.viewportWidth(win);\n var viewportHeight = utils.viewportHeight(win);\n if ('pageX' in tgtPoint) {\n pageX = tgtPoint.pageX;\n } else {\n pageX = scrollX + tgtPoint.clientX;\n }\n if ('pageY' in tgtPoint) {\n pageY = tgtPoint.pageY;\n } else {\n pageY = scrollY + tgtPoint.clientY;\n }\n var tgtRegion = {\n left: pageX,\n top: pageY,\n width: 0,\n height: 0\n };\n var pointInView = pageX >= 0 && pageX <= scrollX + viewportWidth && pageY >= 0 && pageY <= scrollY + viewportHeight;\n\n // Provide default target point\n var points = [align.points[0], 'cc'];\n return doAlign(el, tgtRegion, _objectSpread2(_objectSpread2({}, align), {}, {\n points: points\n }), pointInView);\n}\n\nexport default alignElement;\nexport { alignElement, alignPoint };\n//# sourceMappingURL=index.js.map\n","/* eslint-disable no-console */\nvar warned = {};\nvar preWarningFns = [];\n\n/**\n * Pre warning enable you to parse content before console.error.\n * Modify to null will prevent warning.\n */\nexport var preMessage = function preMessage(fn) {\n preWarningFns.push(fn);\n};\n\n/**\n * Warning if condition not match.\n * @param valid Condition\n * @param message Warning message\n * @example\n * ```js\n * warning(false, 'some error'); // print some error\n * warning(true, 'some error'); // print nothing\n * warning(1 === 2, 'some error'); // print some error\n * ```\n */\nexport function warning(valid, message) {\n if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {\n var finalMessage = preWarningFns.reduce(function (msg, preMessageFn) {\n return preMessageFn(msg !== null && msg !== void 0 ? msg : '', 'warning');\n }, message);\n if (finalMessage) {\n console.error(\"Warning: \".concat(finalMessage));\n }\n }\n}\n\n/** @see Similar to {@link warning} */\nexport function note(valid, message) {\n if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {\n var finalMessage = preWarningFns.reduce(function (msg, preMessageFn) {\n return preMessageFn(msg !== null && msg !== void 0 ? msg : '', 'note');\n }, message);\n if (finalMessage) {\n console.warn(\"Note: \".concat(finalMessage));\n }\n }\n}\nexport function resetWarned() {\n warned = {};\n}\nexport function call(method, valid, message) {\n if (!valid && !warned[message]) {\n method(false, message);\n warned[message] = true;\n }\n}\n\n/** @see Same as {@link warning}, but only warn once for the same message */\nexport function warningOnce(valid, message) {\n call(warning, valid, message);\n}\n\n/** @see Same as {@link warning}, but only warn once for the same message */\nexport function noteOnce(valid, message) {\n call(note, valid, message);\n}\nwarningOnce.preMessage = preMessage;\nwarningOnce.resetWarned = resetWarned;\nwarningOnce.noteOnce = noteOnce;\nexport default warningOnce;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport warning from \"./warning\";\n\n/**\n * Deeply compares two object literals.\n * @param obj1 object 1\n * @param obj2 object 2\n * @param shallow shallow compare\n * @returns\n */\nfunction isEqual(obj1, obj2) {\n var shallow = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n // https://github.com/mapbox/mapbox-gl-js/pull/5979/files#diff-fde7145050c47cc3a306856efd5f9c3016e86e859de9afbd02c879be5067e58f\n var refSet = new Set();\n function deepEqual(a, b) {\n var level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;\n var circular = refSet.has(a);\n warning(!circular, 'Warning: There may be circular references');\n if (circular) {\n return false;\n }\n if (a === b) {\n return true;\n }\n if (shallow && level > 1) {\n return false;\n }\n refSet.add(a);\n var newLevel = level + 1;\n if (Array.isArray(a)) {\n if (!Array.isArray(b) || a.length !== b.length) {\n return false;\n }\n for (var i = 0; i < a.length; i++) {\n if (!deepEqual(a[i], b[i], newLevel)) {\n return false;\n }\n }\n return true;\n }\n if (a && b && _typeof(a) === 'object' && _typeof(b) === 'object') {\n var keys = Object.keys(a);\n if (keys.length !== Object.keys(b).length) {\n return false;\n }\n return keys.every(function (key) {\n return deepEqual(a[key], b[key], newLevel);\n });\n }\n // other\n return false;\n }\n return deepEqual(obj1, obj2);\n}\nexport default isEqual;","import * as React from 'react';\nimport canUseDom from \"../Dom/canUseDom\";\n\n/**\n * Wrap `React.useLayoutEffect` which will not throw warning message in test env\n */\nvar useInternalLayoutEffect = process.env.NODE_ENV !== 'test' && canUseDom() ? React.useLayoutEffect : React.useEffect;\nvar useLayoutEffect = function useLayoutEffect(callback, deps) {\n var firstMountRef = React.useRef(true);\n useInternalLayoutEffect(function () {\n return callback(firstMountRef.current);\n }, deps);\n\n // We tell react that first mount has passed\n useInternalLayoutEffect(function () {\n firstMountRef.current = false;\n return function () {\n firstMountRef.current = true;\n };\n }, []);\n};\nexport var useLayoutUpdateEffect = function useLayoutUpdateEffect(callback, deps) {\n useLayoutEffect(function (firstMount) {\n if (!firstMount) {\n return callback();\n }\n }, deps);\n};\nexport default useLayoutEffect;","/**\r\n * A collection of shims that provide minimal functionality of the ES6 collections.\r\n *\r\n * These implementations are not meant to be used outside of the ResizeObserver\r\n * modules as they cover only a limited range of use cases.\r\n */\r\n/* eslint-disable require-jsdoc, valid-jsdoc */\r\nvar MapShim = (function () {\r\n if (typeof Map !== 'undefined') {\r\n return Map;\r\n }\r\n /**\r\n * Returns index in provided array that matches the specified key.\r\n *\r\n * @param {Array<Array>} arr\r\n * @param {*} key\r\n * @returns {number}\r\n */\r\n function getIndex(arr, key) {\r\n var result = -1;\r\n arr.some(function (entry, index) {\r\n if (entry[0] === key) {\r\n result = index;\r\n return true;\r\n }\r\n return false;\r\n });\r\n return result;\r\n }\r\n return /** @class */ (function () {\r\n function class_1() {\r\n this.__entries__ = [];\r\n }\r\n Object.defineProperty(class_1.prototype, \"size\", {\r\n /**\r\n * @returns {boolean}\r\n */\r\n get: function () {\r\n return this.__entries__.length;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n /**\r\n * @param {*} key\r\n * @returns {*}\r\n */\r\n class_1.prototype.get = function (key) {\r\n var index = getIndex(this.__entries__, key);\r\n var entry = this.__entries__[index];\r\n return entry && entry[1];\r\n };\r\n /**\r\n * @param {*} key\r\n * @param {*} value\r\n * @returns {void}\r\n */\r\n class_1.prototype.set = function (key, value) {\r\n var index = getIndex(this.__entries__, key);\r\n if (~index) {\r\n this.__entries__[index][1] = value;\r\n }\r\n else {\r\n this.__entries__.push([key, value]);\r\n }\r\n };\r\n /**\r\n * @param {*} key\r\n * @returns {void}\r\n */\r\n class_1.prototype.delete = function (key) {\r\n var entries = this.__entries__;\r\n var index = getIndex(entries, key);\r\n if (~index) {\r\n entries.splice(index, 1);\r\n }\r\n };\r\n /**\r\n * @param {*} key\r\n * @returns {void}\r\n */\r\n class_1.prototype.has = function (key) {\r\n return !!~getIndex(this.__entries__, key);\r\n };\r\n /**\r\n * @returns {void}\r\n */\r\n class_1.prototype.clear = function () {\r\n this.__entries__.splice(0);\r\n };\r\n /**\r\n * @param {Function} callback\r\n * @param {*} [ctx=null]\r\n * @returns {void}\r\n */\r\n class_1.prototype.forEach = function (callback, ctx) {\r\n if (ctx === void 0) { ctx = null; }\r\n for (var _i = 0, _a = this.__entries__; _i < _a.length; _i++) {\r\n var entry = _a[_i];\r\n callback.call(ctx, entry[1], entry[0]);\r\n }\r\n };\r\n return class_1;\r\n }());\r\n})();\n\n/**\r\n * Detects whether window and document objects are available in current environment.\r\n */\r\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && window.document === document;\n\n// Returns global object of a current environment.\r\nvar global$1 = (function () {\r\n if (typeof global !== 'undefined' && global.Math === Math) {\r\n return global;\r\n }\r\n if (typeof self !== 'undefined' && self.Math === Math) {\r\n return self;\r\n }\r\n if (typeof window !== 'undefined' && window.Math === Math) {\r\n return window;\r\n }\r\n // eslint-disable-next-line no-new-func\r\n return Function('return this')();\r\n})();\n\n/**\r\n * A shim for the requestAnimationFrame which falls back to the setTimeout if\r\n * first one is not supported.\r\n *\r\n * @returns {number} Requests' identifier.\r\n */\r\nvar requestAnimationFrame$1 = (function () {\r\n if (typeof requestAnimationFrame === 'function') {\r\n // It's required to use a bounded function because IE sometimes throws\r\n // an \"Invalid calling object\" error if rAF is invoked without the global\r\n // object on the left hand side.\r\n return requestAnimationFrame.bind(global$1);\r\n }\r\n return function (callback) { return setTimeout(function () { return callback(Date.now()); }, 1000 / 60); };\r\n})();\n\n// Defines minimum timeout before adding a trailing call.\r\nvar trailingTimeout = 2;\r\n/**\r\n * Creates a wrapper function which ensures that provided callback will be\r\n * invoked only once during the specified delay period.\r\n *\r\n * @param {Function} callback - Function to be invoked after the delay period.\r\n * @param {number} delay - Delay after which to invoke callback.\r\n * @returns {Function}\r\n */\r\nfunction throttle (callback, delay) {\r\n var leadingCall = false, trailingCall = false, lastCallTime = 0;\r\n /**\r\n * Invokes the original callback function and schedules new invocation if\r\n * the \"proxy\" was called during current request.\r\n *\r\n * @returns {void}\r\n */\r\n function resolvePending() {\r\n if (leadingCall) {\r\n leadingCall = false;\r\n callback();\r\n }\r\n if (trailingCall) {\r\n proxy();\r\n }\r\n }\r\n /**\r\n * Callback invoked after the specified delay. It will further postpone\r\n * invocation of the original function delegating it to the\r\n * requestAnimationFrame.\r\n *\r\n * @returns {void}\r\n */\r\n function timeoutCallback() {\r\n requestAnimationFrame$1(resolvePending);\r\n }\r\n /**\r\n * Schedules invocation of the original function.\r\n *\r\n * @returns {void}\r\n */\r\n function proxy() {\r\n var timeStamp = Date.now();\r\n if (leadingCall) {\r\n // Reject immediately following calls.\r\n if (timeStamp - lastCallTime < trailingTimeout) {\r\n return;\r\n }\r\n // Schedule new call to be in invoked when the pending one is resolved.\r\n // This is important for \"transitions\" which never actually start\r\n // immediately so there is a chance that we might miss one if change\r\n // happens amids the pending invocation.\r\n trailingCall = true;\r\n }\r\n else {\r\n leadingCall = true;\r\n trailingCall = false;\r\n setTimeout(timeoutCallback, delay);\r\n }\r\n lastCallTime = timeStamp;\r\n }\r\n return proxy;\r\n}\n\n// Minimum delay before invoking the update of observers.\r\nvar REFRESH_DELAY = 20;\r\n// A list of substrings of CSS properties used to find transition events that\r\n// might affect dimensions of observed elements.\r\nvar transitionKeys = ['top', 'right', 'bottom', 'left', 'width', 'height', 'size', 'weight'];\r\n// Check if MutationObserver is available.\r\nvar mutationObserverSupported = typeof MutationObserver !== 'undefined';\r\n/**\r\n * Singleton controller class which handles updates of ResizeObserver instances.\r\n */\r\nvar ResizeObserverController = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserverController.\r\n *\r\n * @private\r\n */\r\n function ResizeObserverController() {\r\n /**\r\n * Indicates whether DOM listeners have been added.\r\n *\r\n * @private {boolean}\r\n */\r\n this.connected_ = false;\r\n /**\r\n * Tells that controller has subscribed for Mutation Events.\r\n *\r\n * @private {boolean}\r\n */\r\n this.mutationEventsAdded_ = false;\r\n /**\r\n * Keeps reference to the instance of MutationObserver.\r\n *\r\n * @private {MutationObserver}\r\n */\r\n this.mutationsObserver_ = null;\r\n /**\r\n * A list of connected observers.\r\n *\r\n * @private {Array<ResizeObserverSPI>}\r\n */\r\n this.observers_ = [];\r\n this.onTransitionEnd_ = this.onTransitionEnd_.bind(this);\r\n this.refresh = throttle(this.refresh.bind(this), REFRESH_DELAY);\r\n }\r\n /**\r\n * Adds observer to observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be added.\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.addObserver = function (observer) {\r\n if (!~this.observers_.indexOf(observer)) {\r\n this.observers_.push(observer);\r\n }\r\n // Add listeners if they haven't been added yet.\r\n if (!this.connected_) {\r\n this.connect_();\r\n }\r\n };\r\n /**\r\n * Removes observer from observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be removed.\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.removeObserver = function (observer) {\r\n var observers = this.observers_;\r\n var index = observers.indexOf(observer);\r\n // Remove observer if it's present in registry.\r\n if (~index) {\r\n observers.splice(index, 1);\r\n }\r\n // Remove listeners if controller has no connected observers.\r\n if (!observers.length && this.connected_) {\r\n this.disconnect_();\r\n }\r\n };\r\n /**\r\n * Invokes the update of observers. It will continue running updates insofar\r\n * it detects changes.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.refresh = function () {\r\n var changesDetected = this.updateObservers_();\r\n // Continue running updates if changes have been detected as there might\r\n // be future ones caused by CSS transitions.\r\n if (changesDetected) {\r\n this.refresh();\r\n }\r\n };\r\n /**\r\n * Updates every observer from observers list and notifies them of queued\r\n * entries.\r\n *\r\n * @private\r\n * @returns {boolean} Returns \"true\" if any observer has detected changes in\r\n * dimensions of it's elements.\r\n */\r\n ResizeObserverController.prototype.updateObservers_ = function () {\r\n // Collect observers that have active observations.\r\n var activeObservers = this.observers_.filter(function (observer) {\r\n return observer.gatherActive(), observer.hasActive();\r\n });\r\n // Deliver notifications in a separate cycle in order to avoid any\r\n // collisions between observers, e.g. when multiple instances of\r\n // ResizeObserver are tracking the same element and the callback of one\r\n // of them changes content dimensions of the observed target. Sometimes\r\n // this may result in notifications being blocked for the rest of observers.\r\n activeObservers.forEach(function (observer) { return observer.broadcastActive(); });\r\n return activeObservers.length > 0;\r\n };\r\n /**\r\n * Initializes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.connect_ = function () {\r\n // Do nothing if running in a non-browser environment or if listeners\r\n // have been already added.\r\n if (!isBrowser || this.connected_) {\r\n return;\r\n }\r\n // Subscription to the \"Transitionend\" event is used as a workaround for\r\n // delayed transitions. This way it's possible to capture at least the\r\n // final state of an element.\r\n document.addEventListener('transitionend', this.onTransitionEnd_);\r\n window.addEventListener('resize', this.refresh);\r\n if (mutationObserverSupported) {\r\n this.mutationsObserver_ = new MutationObserver(this.refresh);\r\n this.mutationsObserver_.observe(document, {\r\n attributes: true,\r\n childList: true,\r\n characterData: true,\r\n subtree: true\r\n });\r\n }\r\n else {\r\n document.addEventListener('DOMSubtreeModified', this.refresh);\r\n this.mutationEventsAdded_ = true;\r\n }\r\n this.connected_ = true;\r\n };\r\n /**\r\n * Removes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.disconnect_ = function () {\r\n // Do nothing if running in a non-browser environment or if listeners\r\n // have been already removed.\r\n if (!isBrowser || !this.connected_) {\r\n return;\r\n }\r\n document.removeEventListener('transitionend', this.onTransitionEnd_);\r\n window.removeEventListener('resize', this.refresh);\r\n if (this.mutationsObserver_) {\r\n this.mutationsObserver_.disconnect();\r\n }\r\n if (this.mutationEventsAdded_) {\r\n document.removeEventListener('DOMSubtreeModified', this.refresh);\r\n }\r\n this.mutationsObserver_ = null;\r\n this.mutationEventsAdded_ = false;\r\n this.connected_ = false;\r\n };\r\n /**\r\n * \"Transitionend\" event handler.\r\n *\r\n * @private\r\n * @param {TransitionEvent} event\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.onTransitionEnd_ = function (_a) {\r\n var _b = _a.propertyName, propertyName = _b === void 0 ? '' : _b;\r\n // Detect whether transition may affect dimensions of an element.\r\n var isReflowProperty = transitionKeys.some(function (key) {\r\n return !!~propertyName.indexOf(key);\r\n });\r\n if (isReflowProperty) {\r\n this.refresh();\r\n }\r\n };\r\n /**\r\n * Returns instance of the ResizeObserverController.\r\n *\r\n * @returns {ResizeObserverController}\r\n */\r\n ResizeObserverController.getInstance = function () {\r\n if (!this.instance_) {\r\n this.instance_ = new ResizeObserverController();\r\n }\r\n return this.instance_;\r\n };\r\n /**\r\n * Holds reference to the controller's instance.\r\n *\r\n * @private {ResizeObserverController}\r\n */\r\n ResizeObserverController.instance_ = null;\r\n return ResizeObserverController;\r\n}());\n\n/**\r\n * Defines non-writable/enumerable properties of the provided target object.\r\n *\r\n * @param {Object} target - Object for which to define properties.\r\n * @param {Object} props - Properties to be defined.\r\n * @returns {Object} Target object.\r\n */\r\nvar defineConfigurable = (function (target, props) {\r\n for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {\r\n var key = _a[_i];\r\n Object.defineProperty(target, key, {\r\n value: props[key],\r\n enumerable: false,\r\n writable: false,\r\n configurable: true\r\n });\r\n }\r\n return target;\r\n});\n\n/**\r\n * Returns the global object associated with provided element.\r\n *\r\n * @param {Object} target\r\n * @returns {Object}\r\n */\r\nvar getWindowOf = (function (target) {\r\n // Assume that the element is an instance of Node, which means that it\r\n // has the \"ownerDocument\" property from which we can retrieve a\r\n // corresponding global object.\r\n var ownerGlobal = target && target.ownerDocument && target.ownerDocument.defaultView;\r\n // Return the local global object if it's not possible extract one from\r\n // provided element.\r\n return ownerGlobal || global$1;\r\n});\n\n// Placeholder of an empty content rectangle.\r\nvar emptyRect = createRectInit(0, 0, 0, 0);\r\n/**\r\n * Converts provided string to a number.\r\n *\r\n * @param {number|string} value\r\n * @returns {number}\r\n */\r\nfunction toFloat(value) {\r\n return parseFloat(value) || 0;\r\n}\r\n/**\r\n * Extracts borders size from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @param {...string} positions - Borders positions (top, right, ...)\r\n * @returns {number}\r\n */\r\nfunction getBordersSize(styles) {\r\n var positions = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n positions[_i - 1] = arguments[_i];\r\n }\r\n return positions.reduce(function (size, position) {\r\n var value = styles['border-' + position + '-width'];\r\n return size + toFloat(value);\r\n }, 0);\r\n}\r\n/**\r\n * Extracts paddings sizes from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @returns {Object} Paddings box.\r\n */\r\nfunction getPaddings(styles) {\r\n var positions = ['top', 'right', 'bottom', 'left'];\r\n var paddings = {};\r\n for (var _i = 0, positions_1 = positions; _i < positions_1.length; _i++) {\r\n var position = positions_1[_i];\r\n var value = styles['padding-' + position];\r\n paddings[position] = toFloat(value);\r\n }\r\n return paddings;\r\n}\r\n/**\r\n * Calculates content rectangle of provided SVG element.\r\n *\r\n * @param {SVGGraphicsElement} target - Element content rectangle of which needs\r\n * to be calculated.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getSVGContentRect(target) {\r\n var bbox = target.getBBox();\r\n return createRectInit(0, 0, bbox.width, bbox.height);\r\n}\r\n/**\r\n * Calculates content rectangle of provided HTMLElement.\r\n *\r\n * @param {HTMLElement} target - Element for which to calculate the content rectangle.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getHTMLElementContentRect(target) {\r\n // Client width & height properties can't be\r\n // used exclusively as they provide rounded values.\r\n var clientWidth = target.clientWidth, clientHeight = target.clientHeight;\r\n // By this condition we can catch all non-replaced inline, hidden and\r\n // detached elements. Though elements with width & height properties less\r\n // than 0.5 will be discarded as well.\r\n //\r\n // Without it we would need to implement separate methods for each of\r\n // those cases and it's not possible to perform a precise and performance\r\n // effective test for hidden elements. E.g. even jQuery's ':visible' filter\r\n // gives wrong results for elements with width & height less than 0.5.\r\n if (!clientWidth && !clientHeight) {\r\n return emptyRect;\r\n }\r\n var styles = getWindowOf(target).getComputedStyle(target);\r\n var paddings = getPaddings(styles);\r\n var horizPad = paddings.left + paddings.right;\r\n var vertPad = paddings.top + paddings.bottom;\r\n // Computed styles of width & height are being used because they are the\r\n // only dimensions available to JS that contain non-rounded values. It could\r\n // be possible to utilize the getBoundingClientRect if only it's data wasn't\r\n // affected by CSS transformations let alone paddings, borders and scroll bars.\r\n var width = toFloat(styles.width), height = toFloat(styles.height);\r\n // Width & height include paddings and borders when the 'border-box' box\r\n // model is applied (except for IE).\r\n if (styles.boxSizing === 'border-box') {\r\n // Following conditions are required to handle Internet Explorer which\r\n // doesn't include paddings and borders to computed CSS dimensions.\r\n //\r\n // We can say that if CSS dimensions + paddings are equal to the \"client\"\r\n // properties then it's either IE, and thus we don't need to subtract\r\n // anything, or an element merely doesn't have paddings/borders styles.\r\n if (Math.round(width + horizPad) !== clientWidth) {\r\n width -= getBordersSize(styles, 'left', 'right') + horizPad;\r\n }\r\n if (Math.round(height + vertPad) !== clientHeight) {\r\n height -= getBordersSize(styles, 'top', 'bottom') + vertPad;\r\n }\r\n }\r\n // Following steps can't be applied to the document's root element as its\r\n // client[Width/Height] properties represent viewport area of the window.\r\n // Besides, it's as well not necessary as the <html> itself neither has\r\n // rendered scroll bars nor it can be clipped.\r\n if (!isDocumentElement(target)) {\r\n // In some browsers (only in Firefox, actually) CSS width & height\r\n // include scroll bars size which can be removed at this step as scroll\r\n // bars are the only difference between rounded dimensions + paddings\r\n // and \"client\" properties, though that is not always true in Chrome.\r\n var vertScrollbar = Math.round(width + horizPad) - clientWidth;\r\n var horizScrollbar = Math.round(height + vertPad) - clientHeight;\r\n // Chrome has a rather weird rounding of \"client\" properties.\r\n // E.g. for an element with content width of 314.2px it sometimes gives\r\n // the client width of 315px and for the width of 314.7px it may give\r\n // 314px. And it doesn't happen all the time. So just ignore this delta\r\n // as a non-relevant.\r\n if (Math.abs(vertScrollbar) !== 1) {\r\n width -= vertScrollbar;\r\n }\r\n if (Math.abs(horizScrollbar) !== 1) {\r\n height -= horizScrollbar;\r\n }\r\n }\r\n return createRectInit(paddings.left, paddings.top, width, height);\r\n}\r\n/**\r\n * Checks whether provided element is an instance of the SVGGraphicsElement.\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\r\nvar isSVGGraphicsElement = (function () {\r\n // Some browsers, namely IE and Edge, don't have the SVGGraphicsElement\r\n // interface.\r\n if (typeof SVGGraphicsElement !== 'undefined') {\r\n return function (target) { return target instanceof getWindowOf(target).SVGGraphicsElement; };\r\n }\r\n // If it's so, then check that element is at least an instance of the\r\n // SVGElement and that it has the \"getBBox\" method.\r\n // eslint-disable-next-line no-extra-parens\r\n return function (target) { return (target instanceof getWindowOf(target).SVGElement &&\r\n typeof target.getBBox === 'function'); };\r\n})();\r\n/**\r\n * Checks whether provided element is a document element (<html>).\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\r\nfunction isDocumentElement(target) {\r\n return target === getWindowOf(target).document.documentElement;\r\n}\r\n/**\r\n * Calculates an appropriate content rectangle for provided html or svg element.\r\n *\r\n * @param {Element} target - Element content rectangle of which needs to be calculated.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getContentRect(target) {\r\n if (!isBrowser) {\r\n return emptyRect;\r\n }\r\n if (isSVGGraphicsElement(target)) {\r\n return getSVGContentRect(target);\r\n }\r\n return getHTMLElementContentRect(target);\r\n}\r\n/**\r\n * Creates rectangle with an interface of the DOMRectReadOnly.\r\n * Spec: https://drafts.fxtf.org/geometry/#domrectreadonly\r\n *\r\n * @param {DOMRectInit} rectInit - Object with rectangle's x/y coordinates and dimensions.\r\n * @returns {DOMRectReadOnly}\r\n */\r\nfunction createReadOnlyRect(_a) {\r\n var x = _a.x, y = _a.y, width = _a.width, height = _a.height;\r\n // If DOMRectReadOnly is available use it as a prototype for the rectangle.\r\n var Constr = typeof DOMRectReadOnly !== 'undefined' ? DOMRectReadOnly : Object;\r\n var rect = Object.create(Constr.prototype);\r\n // Rectangle's properties are not writable and non-enumerable.\r\n defineConfigurable(rect, {\r\n x: x, y: y, width: width, height: height,\r\n top: y,\r\n right: x + width,\r\n bottom: height + y,\r\n left: x\r\n });\r\n return rect;\r\n}\r\n/**\r\n * Creates DOMRectInit object based on the provided dimensions and the x/y coordinates.\r\n * Spec: https://drafts.fxtf.org/geometry/#dictdef-domrectinit\r\n *\r\n * @param {number} x - X coordinate.\r\n * @param {number} y - Y coordinate.\r\n * @param {number} width - Rectangle's width.\r\n * @param {number} height - Rectangle's height.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction createRectInit(x, y, width, height) {\r\n return { x: x, y: y, width: width, height: height };\r\n}\n\n/**\r\n * Class that is responsible for computations of the content rectangle of\r\n * provided DOM element and for keeping track of it's changes.\r\n */\r\nvar ResizeObservation = /** @class */ (function () {\r\n /**\r\n * Creates an instance of ResizeObservation.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n */\r\n function ResizeObservation(target) {\r\n /**\r\n * Broadcasted width of content rectangle.\r\n *\r\n * @type {number}\r\n */\r\n this.broadcastWidth = 0;\r\n /**\r\n * Broadcasted height of content rectangle.\r\n *\r\n * @type {number}\r\n */\r\n this.broadcastHeight = 0;\r\n /**\r\n * Reference to the last observed content rectangle.\r\n *\r\n * @private {DOMRectInit}\r\n */\r\n this.contentRect_ = createRectInit(0, 0, 0, 0);\r\n this.target = target;\r\n }\r\n /**\r\n * Updates content rectangle and tells whether it's width or height properties\r\n * have changed since the last broadcast.\r\n *\r\n * @returns {boolean}\r\n */\r\n ResizeObservation.prototype.isActive = function () {\r\n var rect = getContentRect(this.target);\r\n this.contentRect_ = rect;\r\n return (rect.width !== this.broadcastWidth ||\r\n rect.height !== this.broadcastHeight);\r\n };\r\n /**\r\n * Updates 'broadcastWidth' and 'broadcastHeight' properties with a data\r\n * from the corresponding properties of the last observed content rectangle.\r\n *\r\n * @returns {DOMRectInit} Last observed content rectangle.\r\n */\r\n ResizeObservation.prototype.broadcastRect = function () {\r\n var rect = this.contentRect_;\r\n this.broadcastWidth = rect.width;\r\n this.broadcastHeight = rect.height;\r\n return rect;\r\n };\r\n return ResizeObservation;\r\n}());\n\nvar ResizeObserverEntry = /** @class */ (function () {\r\n /**\r\n * Creates an instance of ResizeObserverEntry.\r\n *\r\n * @param {Element} target - Element that is being observed.\r\n * @param {DOMRectInit} rectInit - Data of the element's content rectangle.\r\n */\r\n function ResizeObserverEntry(target, rectInit) {\r\n var contentRect = createReadOnlyRect(rectInit);\r\n // According to the specification following properties are not writable\r\n // and are also not enumerable in the native implementation.\r\n //\r\n // Property accessors are not being used as they'd require to define a\r\n // private WeakMap storage which may cause memory leaks in browsers that\r\n // don't support this type of collections.\r\n defineConfigurable(this, { target: target, contentRect: contentRect });\r\n }\r\n return ResizeObserverEntry;\r\n}());\n\nvar ResizeObserverSPI = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserver.\r\n *\r\n * @param {ResizeObserverCallback} callback - Callback function that is invoked\r\n * when one of the observed elements changes it's content dimensions.\r\n * @param {ResizeObserverController} controller - Controller instance which\r\n * is responsible for the updates of observer.\r\n * @param {ResizeObserver} callbackCtx - Reference to the public\r\n * ResizeObserver instance which will be passed to callback function.\r\n */\r\n function ResizeObserverSPI(callback, controller, callbackCtx) {\r\n /**\r\n * Collection of resize observations that have detected changes in dimensions\r\n * of elements.\r\n *\r\n * @private {Array<ResizeObservation>}\r\n */\r\n this.activeObservations_ = [];\r\n /**\r\n * Registry of the ResizeObservation instances.\r\n *\r\n * @private {Map<Element, ResizeObservation>}\r\n */\r\n this.observations_ = new MapShim();\r\n if (typeof callback !== 'function') {\r\n throw new TypeError('The callback provided as parameter 1 is not a function.');\r\n }\r\n this.callback_ = callback;\r\n this.controller_ = controller;\r\n this.callbackCtx_ = callbackCtx;\r\n }\r\n /**\r\n * Starts observing provided element.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.observe = function (target) {\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n // Do nothing if current environment doesn't have the Element interface.\r\n if (typeof Element === 'undefined' || !(Element instanceof Object)) {\r\n return;\r\n }\r\n if (!(target instanceof getWindowOf(target).Element)) {\r\n throw new TypeError('parameter 1 is not of type \"Element\".');\r\n }\r\n var observations = this.observations_;\r\n // Do nothing if element is already being observed.\r\n if (observations.has(target)) {\r\n return;\r\n }\r\n observations.set(target, new ResizeObservation(target));\r\n this.controller_.addObserver(this);\r\n // Force the update of observations.\r\n this.controller_.refresh();\r\n };\r\n /**\r\n * Stops observing provided element.\r\n *\r\n * @param {Element} target - Element to stop observing.\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.unobserve = function (target) {\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n // Do nothing if current environment doesn't have the Element interface.\r\n if (typeof Element === 'undefined' || !(Element instanceof Object)) {\r\n return;\r\n }\r\n if (!(target instanceof getWindowOf(target).Element)) {\r\n throw new TypeError('parameter 1 is not of type \"Element\".');\r\n }\r\n var observations = this.observations_;\r\n // Do nothing if element is not being observed.\r\n if (!observations.has(target)) {\r\n return;\r\n }\r\n observations.delete(target);\r\n if (!observations.size) {\r\n this.controller_.removeObserver(this);\r\n }\r\n };\r\n /**\r\n * Stops observing all elements.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.disconnect = function () {\r\n this.clearActive();\r\n this.observations_.clear();\r\n this.controller_.removeObserver(this);\r\n };\r\n /**\r\n * Collects observation instances the associated element of which has changed\r\n * it's content rectangle.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.gatherActive = function () {\r\n var _this = this;\r\n this.clearActive();\r\n this.observations_.forEach(function (observation) {\r\n if (observation.isActive()) {\r\n _this.activeObservations_.push(observation);\r\n }\r\n });\r\n };\r\n /**\r\n * Invokes initial callback function with a list of ResizeObserverEntry\r\n * instances collected from active resize observations.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.broadcastActive = function () {\r\n // Do nothing if observer doesn't have active observations.\r\n if (!this.hasActive()) {\r\n return;\r\n }\r\n var ctx = this.callbackCtx_;\r\n // Create ResizeObserverEntry instance for every active observation.\r\n var entries = this.activeObservations_.map(function (observation) {\r\n return new ResizeObserverEntry(observation.target, observation.broadcastRect());\r\n });\r\n this.callback_.call(ctx, entries, ctx);\r\n this.clearActive();\r\n };\r\n /**\r\n * Clears the collection of active observations.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.clearActive = function () {\r\n this.activeObservations_.splice(0);\r\n };\r\n /**\r\n * Tells whether observer has active observations.\r\n *\r\n * @returns {boolean}\r\n */\r\n ResizeObserverSPI.prototype.hasActive = function () {\r\n return this.activeObservations_.length > 0;\r\n };\r\n return ResizeObserverSPI;\r\n}());\n\n// Registry of internal observers. If WeakMap is not available use current shim\r\n// for the Map collection as it has all required methods and because WeakMap\r\n// can't be fully polyfilled anyway.\r\nvar observers = typeof WeakMap !== 'undefined' ? new WeakMap() : new MapShim();\r\n/**\r\n * ResizeObserver API. Encapsulates the ResizeObserver SPI implementation\r\n * exposing only those methods and properties that are defined in the spec.\r\n */\r\nvar ResizeObserver = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserver.\r\n *\r\n * @param {ResizeObserverCallback} callback - Callback that is invoked when\r\n * dimensions of the observed elements change.\r\n */\r\n function ResizeObserver(callback) {\r\n if (!(this instanceof ResizeObserver)) {\r\n throw new TypeError('Cannot call a class as a function.');\r\n }\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n var controller = ResizeObserverController.getInstance();\r\n var observer = new ResizeObserverSPI(callback, controller, this);\r\n observers.set(this, observer);\r\n }\r\n return ResizeObserver;\r\n}());\r\n// Expose public methods of ResizeObserver.\r\n[\r\n 'observe',\r\n 'unobserve',\r\n 'disconnect'\r\n].forEach(function (method) {\r\n ResizeObserver.prototype[method] = function () {\r\n var _a;\r\n return (_a = observers.get(this))[method].apply(_a, arguments);\r\n };\r\n});\n\nvar index = (function () {\r\n // Export existing implementation if available.\r\n if (typeof global$1.ResizeObserver !== 'undefined') {\r\n return global$1.ResizeObserver;\r\n }\r\n return ResizeObserver;\r\n})();\n\nexport default index;\n","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport ResizeObserver from 'resize-observer-polyfill';\nimport contains from \"rc-util/es/Dom/contains\";\nexport function isSamePoint(prev, next) {\n if (prev === next) return true;\n if (!prev || !next) return false;\n\n if ('pageX' in next && 'pageY' in next) {\n return prev.pageX === next.pageX && prev.pageY === next.pageY;\n }\n\n if ('clientX' in next && 'clientY' in next) {\n return prev.clientX === next.clientX && prev.clientY === next.clientY;\n }\n\n return false;\n}\nexport function restoreFocus(activeElement, container) {\n // Focus back if is in the container\n if (activeElement !== document.activeElement && contains(container, activeElement) && typeof activeElement.focus === 'function') {\n activeElement.focus();\n }\n}\nexport function monitorResize(element, callback) {\n var prevWidth = null;\n var prevHeight = null;\n\n function onResize(_ref) {\n var _ref2 = _slicedToArray(_ref, 1),\n target = _ref2[0].target;\n\n if (!document.documentElement.contains(target)) return;\n\n var _target$getBoundingCl = target.getBoundingClientRect(),\n width = _target$getBoundingCl.width,\n height = _target$getBoundingCl.height;\n\n var fixedWidth = Math.floor(width);\n var fixedHeight = Math.floor(height);\n\n if (prevWidth !== fixedWidth || prevHeight !== fixedHeight) {\n // https://webkit.org/blog/9997/resizeobserver-in-webkit/\n Promise.resolve().then(function () {\n callback({\n width: fixedWidth,\n height: fixedHeight\n });\n });\n }\n\n prevWidth = fixedWidth;\n prevHeight = fixedHeight;\n }\n\n var resizeObserver = new ResizeObserver(onResize);\n\n if (element) {\n resizeObserver.observe(element);\n }\n\n return function () {\n resizeObserver.disconnect();\n };\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\n\n/**\n * Removed props:\n * - childrenProps\n */\nimport { alignElement, alignPoint } from 'dom-align';\nimport isEqual from \"rc-util/es/isEqual\";\nimport addEventListener from \"rc-util/es/Dom/addEventListener\";\nimport isVisible from \"rc-util/es/Dom/isVisible\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { composeRef } from \"rc-util/es/ref\";\nimport React from 'react';\nimport useBuffer from \"./hooks/useBuffer\";\nimport { isSamePoint, monitorResize, restoreFocus } from \"./util\";\n\nfunction getElement(func) {\n if (typeof func !== 'function') return null;\n return func();\n}\n\nfunction getPoint(point) {\n if (_typeof(point) !== 'object' || !point) return null;\n return point;\n}\n\nvar Align = function Align(_ref, ref) {\n var children = _ref.children,\n disabled = _ref.disabled,\n target = _ref.target,\n align = _ref.align,\n onAlign = _ref.onAlign,\n monitorWindowResize = _ref.monitorWindowResize,\n _ref$monitorBufferTim = _ref.monitorBufferTime,\n monitorBufferTime = _ref$monitorBufferTim === void 0 ? 0 : _ref$monitorBufferTim;\n var cacheRef = React.useRef({});\n /** Popup node ref */\n\n var nodeRef = React.useRef();\n var childNode = React.Children.only(children); // ===================== Align ======================\n // We save the props here to avoid closure makes props ood\n\n var forceAlignPropsRef = React.useRef({});\n forceAlignPropsRef.current.disabled = disabled;\n forceAlignPropsRef.current.target = target;\n forceAlignPropsRef.current.align = align;\n forceAlignPropsRef.current.onAlign = onAlign;\n\n var _useBuffer = useBuffer(function () {\n var _forceAlignPropsRef$c = forceAlignPropsRef.current,\n latestDisabled = _forceAlignPropsRef$c.disabled,\n latestTarget = _forceAlignPropsRef$c.target,\n latestAlign = _forceAlignPropsRef$c.align,\n latestOnAlign = _forceAlignPropsRef$c.onAlign;\n var source = nodeRef.current;\n\n if (!latestDisabled && latestTarget && source) {\n var _result;\n\n var _element = getElement(latestTarget);\n\n var _point = getPoint(latestTarget);\n\n cacheRef.current.element = _element;\n cacheRef.current.point = _point;\n cacheRef.current.align = latestAlign; // IE lose focus after element realign\n // We should record activeElement and restore later\n\n var _document = document,\n activeElement = _document.activeElement; // We only align when element is visible\n\n if (_element && isVisible(_element)) {\n _result = alignElement(source, _element, latestAlign);\n } else if (_point) {\n _result = alignPoint(source, _point, latestAlign);\n }\n\n restoreFocus(activeElement, source);\n\n if (latestOnAlign && _result) {\n latestOnAlign(source, _result);\n }\n\n return true;\n }\n\n return false;\n }, monitorBufferTime),\n _useBuffer2 = _slicedToArray(_useBuffer, 2),\n _forceAlign = _useBuffer2[0],\n cancelForceAlign = _useBuffer2[1]; // ===================== Effect =====================\n // Handle props change\n\n\n var _React$useState = React.useState(),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n element = _React$useState2[0],\n setElement = _React$useState2[1];\n\n var _React$useState3 = React.useState(),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n point = _React$useState4[0],\n setPoint = _React$useState4[1];\n\n useLayoutEffect(function () {\n setElement(getElement(target));\n setPoint(getPoint(target));\n });\n React.useEffect(function () {\n if (cacheRef.current.element !== element || !isSamePoint(cacheRef.current.point, point) || !isEqual(cacheRef.current.align, align)) {\n _forceAlign();\n }\n }); // Watch popup element resize\n\n React.useEffect(function () {\n var cancelFn = monitorResize(nodeRef.current, _forceAlign);\n return cancelFn;\n }, [nodeRef.current]); // Watch target element resize\n\n React.useEffect(function () {\n var cancelFn = monitorResize(element, _forceAlign);\n return cancelFn;\n }, [element]); // Listen for disabled change\n\n React.useEffect(function () {\n if (!disabled) {\n _forceAlign();\n } else {\n cancelForceAlign();\n }\n }, [disabled]); // Listen for window resize\n\n React.useEffect(function () {\n if (monitorWindowResize) {\n var cancelFn = addEventListener(window, 'resize', _forceAlign);\n return cancelFn.remove;\n }\n }, [monitorWindowResize]); // Clear all if unmount\n\n React.useEffect(function () {\n return function () {\n cancelForceAlign();\n };\n }, []); // ====================== Ref =======================\n\n React.useImperativeHandle(ref, function () {\n return {\n forceAlign: function forceAlign() {\n return _forceAlign(true);\n }\n };\n }); // ===================== Render =====================\n\n if ( /*#__PURE__*/React.isValidElement(childNode)) {\n childNode = /*#__PURE__*/React.cloneElement(childNode, {\n ref: composeRef(childNode.ref, nodeRef)\n });\n }\n\n return childNode;\n};\n\nvar RcAlign = /*#__PURE__*/React.forwardRef(Align);\nRcAlign.displayName = 'Align';\nexport default RcAlign;","import React from 'react';\nexport default (function (callback, buffer) {\n var calledRef = React.useRef(false);\n var timeoutRef = React.useRef(null);\n\n function cancelTrigger() {\n window.clearTimeout(timeoutRef.current);\n }\n\n function trigger(force) {\n cancelTrigger();\n\n if (!calledRef.current || force === true) {\n if (callback(force) === false) {\n // Not delay since callback cancelled self\n return;\n }\n\n calledRef.current = true;\n timeoutRef.current = window.setTimeout(function () {\n calledRef.current = false;\n }, buffer);\n } else {\n timeoutRef.current = window.setTimeout(function () {\n calledRef.current = false;\n trigger();\n }, buffer);\n }\n }\n\n return [trigger, function () {\n calledRef.current = false;\n cancelTrigger();\n }];\n});","export default (function (element) {\n if (!element) {\n return false;\n }\n if (element instanceof Element) {\n if (element.offsetParent) {\n return true;\n }\n if (element.getBBox) {\n var _getBBox = element.getBBox(),\n width = _getBBox.width,\n height = _getBBox.height;\n if (width || height) {\n return true;\n }\n }\n if (element.getBoundingClientRect) {\n var _element$getBoundingC = element.getBoundingClientRect(),\n _width = _element$getBoundingC.width,\n _height = _element$getBoundingC.height;\n if (_width || _height) {\n return true;\n }\n }\n }\n return false;\n});","// export this package's api\nimport Align from \"./Align\";\nexport default Align;","import _typeof from \"./typeof.js\";\nexport default function _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n _regeneratorRuntime = function _regeneratorRuntime() {\n return exports;\n };\n var exports = {},\n Op = Object.prototype,\n hasOwn = Op.hasOwnProperty,\n defineProperty = Object.defineProperty || function (obj, key, desc) {\n obj[key] = desc.value;\n },\n $Symbol = \"function\" == typeof Symbol ? Symbol : {},\n iteratorSymbol = $Symbol.iterator || \"@@iterator\",\n asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\",\n toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n function define(obj, key, value) {\n return Object.defineProperty(obj, key, {\n value: value,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), obj[key];\n }\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,\n generator = Object.create(protoGenerator.prototype),\n context = new Context(tryLocsList || []);\n return defineProperty(generator, \"_invoke\", {\n value: makeInvokeMethod(innerFn, self, context)\n }), generator;\n }\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n exports.wrap = wrap;\n var ContinueSentinel = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf,\n NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (\"throw\" !== record.type) {\n var result = record.arg,\n value = result.value;\n return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n }) : PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped, resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n reject(record.arg);\n }\n var previousPromise;\n defineProperty(this, \"_invoke\", {\n value: function value(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(innerFn, self, context) {\n var state = \"suspendedStart\";\n return function (method, arg) {\n if (\"executing\" === state) throw new Error(\"Generator is already running\");\n if (\"completed\" === state) {\n if (\"throw\" === method) throw arg;\n return doneResult();\n }\n for (context.method = method, context.arg = arg;;) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) {\n if (\"suspendedStart\" === state) throw state = \"completed\", context.arg;\n context.dispatchException(context.arg);\n } else \"return\" === context.method && context.abrupt(\"return\", context.arg);\n state = \"executing\";\n var record = tryCatch(innerFn, self, context);\n if (\"normal\" === record.type) {\n if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue;\n return {\n value: record.arg,\n done: context.done\n };\n }\n \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg);\n }\n };\n }\n function maybeInvokeDelegate(delegate, context) {\n var methodName = context.method,\n method = delegate.iterator[methodName];\n if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel;\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel;\n var info = record.arg;\n return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel);\n }\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);\n }\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\", delete record.arg, entry.completion = record;\n }\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) return iteratorMethod.call(iterable);\n if (\"function\" == typeof iterable.next) return iterable;\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;\n return next.value = undefined, next.done = !0, next;\n };\n return next.next = next;\n }\n }\n return {\n next: doneResult\n };\n }\n function doneResult() {\n return {\n value: undefined,\n done: !0\n };\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), defineProperty(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) {\n var ctor = \"function\" == typeof genFun && genFun.constructor;\n return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name));\n }, exports.mark = function (genFun) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun;\n }, exports.awrap = function (arg) {\n return {\n __await: arg\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n void 0 === PromiseImpl && (PromiseImpl = Promise);\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () {\n return this;\n }), define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n }), exports.keys = function (val) {\n var object = Object(val),\n keys = [];\n for (var key in object) keys.push(key);\n return keys.reverse(), function next() {\n for (; keys.length;) {\n var key = keys.pop();\n if (key in object) return next.value = key, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, exports.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);\n },\n stop: function stop() {\n this.done = !0;\n var rootRecord = this.tryEntries[0].completion;\n if (\"throw\" === rootRecord.type) throw rootRecord.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) throw exception;\n var context = this;\n function handle(loc, caught) {\n return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught;\n }\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i],\n record = entry.completion;\n if (\"root\" === entry.tryLoc) return handle(\"end\");\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\"),\n hasFinally = hasOwn.call(entry, \"finallyLoc\");\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n } else {\n if (!hasFinally) throw new Error(\"try statement without catch or finally\");\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);\n var record = finallyEntry ? finallyEntry.completion : {};\n return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (\"throw\" === record.type) throw record.arg;\n return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (\"throw\" === record.type) {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n return this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel;\n }\n }, exports;\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","import _regeneratorRuntime from \"@babel/runtime/helpers/esm/regeneratorRuntime\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/esm/asyncToGenerator\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useEffect, useRef } from 'react';\nimport raf from \"rc-util/es/raf\";\nimport useState from \"rc-util/es/hooks/useState\";\n/**\n * Popup should follow the steps for each component work correctly:\n * measure - check for the current stretch size\n * align - let component align the position\n * aligned - re-align again in case additional className changed the size\n * afterAlign - choice next step is trigger motion or finished\n * beforeMotion - should reset motion to invisible so that CSSMotion can do normal motion\n * motion - play the motion\n * stable - everything is done\n */\n\nvar StatusQueue = ['measure', 'alignPre', 'align', null, 'motion'];\nexport default (function (visible, doMeasure) {\n var _useState = useState(null),\n _useState2 = _slicedToArray(_useState, 2),\n status = _useState2[0],\n setInternalStatus = _useState2[1];\n\n var rafRef = useRef();\n\n function setStatus(nextStatus) {\n setInternalStatus(nextStatus, true);\n }\n\n function cancelRaf() {\n raf.cancel(rafRef.current);\n }\n\n function goNextStatus(callback) {\n cancelRaf();\n rafRef.current = raf(function () {\n // Only align should be manually trigger\n setStatus(function (prev) {\n switch (status) {\n case 'align':\n return 'motion';\n\n case 'motion':\n return 'stable';\n\n default:\n }\n\n return prev;\n });\n callback === null || callback === void 0 ? void 0 : callback();\n });\n } // Init status\n\n\n useEffect(function () {\n setStatus('measure');\n }, [visible]); // Go next status\n\n useEffect(function () {\n switch (status) {\n case 'measure':\n doMeasure();\n break;\n\n default:\n }\n\n if (status) {\n rafRef.current = raf( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n var index, nextStatus;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n index = StatusQueue.indexOf(status);\n nextStatus = StatusQueue[index + 1];\n\n if (nextStatus && index !== -1) {\n setStatus(nextStatus);\n }\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n })));\n }\n }, [status]);\n useEffect(function () {\n return function () {\n cancelRaf();\n };\n }, []);\n return [status, goNextStatus];\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 { useRef, useState } from 'react';\nimport Align from 'rc-align';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport CSSMotion from 'rc-motion';\nimport classNames from 'classnames';\nimport useVisibleStatus from \"./useVisibleStatus\";\nimport { getMotion } from \"../utils/legacyUtil\";\nimport useStretchStyle from \"./useStretchStyle\";\nvar PopupInner = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var visible = props.visible,\n prefixCls = props.prefixCls,\n className = props.className,\n style = props.style,\n children = props.children,\n zIndex = props.zIndex,\n stretch = props.stretch,\n destroyPopupOnHide = props.destroyPopupOnHide,\n forceRender = props.forceRender,\n align = props.align,\n point = props.point,\n getRootDomNode = props.getRootDomNode,\n getClassNameFromAlign = props.getClassNameFromAlign,\n onAlign = props.onAlign,\n onMouseEnter = props.onMouseEnter,\n onMouseLeave = props.onMouseLeave,\n onMouseDown = props.onMouseDown,\n onTouchStart = props.onTouchStart,\n onClick = props.onClick;\n var alignRef = useRef();\n var elementRef = useRef();\n\n var _useState = useState(),\n _useState2 = _slicedToArray(_useState, 2),\n alignedClassName = _useState2[0],\n setAlignedClassName = _useState2[1]; // ======================= Measure ========================\n\n\n var _useStretchStyle = useStretchStyle(stretch),\n _useStretchStyle2 = _slicedToArray(_useStretchStyle, 2),\n stretchStyle = _useStretchStyle2[0],\n measureStretchStyle = _useStretchStyle2[1];\n\n function doMeasure() {\n if (stretch) {\n measureStretchStyle(getRootDomNode());\n }\n } // ======================== Status ========================\n\n\n var _useVisibleStatus = useVisibleStatus(visible, doMeasure),\n _useVisibleStatus2 = _slicedToArray(_useVisibleStatus, 2),\n status = _useVisibleStatus2[0],\n goNextStatus = _useVisibleStatus2[1]; // ======================== Aligns ========================\n\n /**\n * `alignedClassName` may modify `source` size,\n * which means one time align may not move to the correct position at once.\n *\n * We will reset `alignTimes` for each status switch to `alignPre`\n * and let `rc-align` to align for multiple times to ensure get final stable place.\n * Currently we mark `alignTimes < 2` repeat align, it will increase if user report for align issue.\n * \n * Update:\n * In React 18. `rc-align` effect of align may faster than ref called trigger `forceAlign`.\n * We adjust this to `alignTimes < 2`.\n * We need refactor `rc-align` to support mark of `forceAlign` call if this still happen.\n */\n\n\n var _useState3 = useState(0),\n _useState4 = _slicedToArray(_useState3, 2),\n alignTimes = _useState4[0],\n setAlignTimes = _useState4[1];\n\n var prepareResolveRef = useRef();\n useLayoutEffect(function () {\n if (status === 'alignPre') {\n setAlignTimes(0);\n }\n }, [status]); // `target` on `rc-align` can accept as a function to get the bind element or a point.\n // ref: https://www.npmjs.com/package/rc-align\n\n function getAlignTarget() {\n if (point) {\n return point;\n }\n\n return getRootDomNode;\n }\n\n function forceAlign() {\n var _alignRef$current;\n\n (_alignRef$current = alignRef.current) === null || _alignRef$current === void 0 ? void 0 : _alignRef$current.forceAlign();\n }\n\n function onInternalAlign(popupDomNode, matchAlign) {\n var nextAlignedClassName = getClassNameFromAlign(matchAlign);\n\n if (alignedClassName !== nextAlignedClassName) {\n setAlignedClassName(nextAlignedClassName);\n } // We will retry multi times to make sure that the element has been align in the right position.\n\n\n setAlignTimes(function (val) {\n return val + 1;\n });\n\n if (status === 'align') {\n onAlign === null || onAlign === void 0 ? void 0 : onAlign(popupDomNode, matchAlign);\n }\n } // Delay to go to next status\n\n\n useLayoutEffect(function () {\n if (status === 'align') {\n // Repeat until not more align needed\n if (alignTimes < 3) {\n forceAlign();\n } else {\n goNextStatus(function () {\n var _prepareResolveRef$cu;\n\n (_prepareResolveRef$cu = prepareResolveRef.current) === null || _prepareResolveRef$cu === void 0 ? void 0 : _prepareResolveRef$cu.call(prepareResolveRef);\n });\n }\n }\n }, [alignTimes]); // ======================== Motion ========================\n\n var motion = _objectSpread({}, getMotion(props));\n\n ['onAppearEnd', 'onEnterEnd', 'onLeaveEnd'].forEach(function (eventName) {\n var originHandler = motion[eventName];\n\n motion[eventName] = function (element, event) {\n goNextStatus();\n return originHandler === null || originHandler === void 0 ? void 0 : originHandler(element, event);\n };\n });\n\n function onShowPrepare() {\n return new Promise(function (resolve) {\n prepareResolveRef.current = resolve;\n });\n } // Go to stable directly when motion not provided\n\n\n React.useEffect(function () {\n if (!motion.motionName && status === 'motion') {\n goNextStatus();\n }\n }, [motion.motionName, status]); // ========================= Refs =========================\n\n React.useImperativeHandle(ref, function () {\n return {\n forceAlign: forceAlign,\n getElement: function getElement() {\n return elementRef.current;\n }\n };\n }); // ======================== Render ========================\n\n var mergedStyle = _objectSpread(_objectSpread({}, stretchStyle), {}, {\n zIndex: zIndex,\n opacity: status === 'motion' || status === 'stable' || !visible ? undefined : 0,\n // Cannot interact with disappearing elements\n // https://github.com/ant-design/ant-design/issues/35051#issuecomment-1101340714\n pointerEvents: !visible && status !== 'stable' ? 'none' : undefined\n }, style); // Align status\n\n\n var alignDisabled = true;\n\n if (align !== null && align !== void 0 && align.points && (status === 'align' || status === 'stable')) {\n alignDisabled = false;\n }\n\n var childNode = children; // Wrapper when multiple children\n\n if (React.Children.count(children) > 1) {\n childNode = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-content\")\n }, children);\n }\n\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({\n visible: visible,\n ref: elementRef,\n leavedClassName: \"\".concat(prefixCls, \"-hidden\")\n }, motion, {\n onAppearPrepare: onShowPrepare,\n onEnterPrepare: onShowPrepare,\n removeOnLeave: destroyPopupOnHide,\n forceRender: forceRender\n }), function (_ref, motionRef) {\n var motionClassName = _ref.className,\n motionStyle = _ref.style;\n var mergedClassName = classNames(prefixCls, className, alignedClassName, motionClassName);\n return /*#__PURE__*/React.createElement(Align, {\n target: getAlignTarget(),\n key: \"popup\",\n ref: alignRef,\n monitorWindowResize: true,\n disabled: alignDisabled,\n align: align,\n onAlign: onInternalAlign\n }, /*#__PURE__*/React.createElement(\"div\", {\n ref: motionRef,\n className: mergedClassName,\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n onMouseDownCapture: onMouseDown,\n onTouchStartCapture: onTouchStart,\n onClick: onClick,\n style: _objectSpread(_objectSpread({}, motionStyle), mergedStyle)\n }, childNode));\n });\n});\nPopupInner.displayName = 'PopupInner';\nexport default PopupInner;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nexport default (function (stretch) {\n var _React$useState = React.useState({\n width: 0,\n height: 0\n }),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n targetSize = _React$useState2[0],\n setTargetSize = _React$useState2[1];\n\n function measureStretch(element) {\n var tgtWidth = element.offsetWidth,\n tgtHeight = element.offsetHeight;\n\n var _element$getBoundingC = element.getBoundingClientRect(),\n width = _element$getBoundingC.width,\n height = _element$getBoundingC.height; // Rect is more accurate than offset, use if near\n\n\n if (Math.abs(tgtWidth - width) < 1 && Math.abs(tgtHeight - height) < 1) {\n tgtWidth = width;\n tgtHeight = height;\n }\n\n setTargetSize({\n width: tgtWidth,\n height: tgtHeight\n });\n } // Merge stretch style\n\n\n var style = React.useMemo(function () {\n var sizeStyle = {};\n\n if (stretch) {\n var width = targetSize.width,\n height = targetSize.height; // Stretch with target\n\n if (stretch.indexOf('height') !== -1 && height) {\n sizeStyle.height = height;\n } else if (stretch.indexOf('minHeight') !== -1 && height) {\n sizeStyle.minHeight = height;\n }\n\n if (stretch.indexOf('width') !== -1 && width) {\n sizeStyle.width = width;\n } else if (stretch.indexOf('minWidth') !== -1 && width) {\n sizeStyle.minWidth = width;\n }\n }\n\n return sizeStyle;\n }, [stretch, targetSize]);\n return [style, measureStretch];\n});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport CSSMotion from 'rc-motion';\nimport classNames from 'classnames';\nvar MobilePopupInner = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n visible = props.visible,\n zIndex = props.zIndex,\n children = props.children,\n _props$mobile = props.mobile;\n _props$mobile = _props$mobile === void 0 ? {} : _props$mobile;\n var popupClassName = _props$mobile.popupClassName,\n popupStyle = _props$mobile.popupStyle,\n _props$mobile$popupMo = _props$mobile.popupMotion,\n popupMotion = _props$mobile$popupMo === void 0 ? {} : _props$mobile$popupMo,\n popupRender = _props$mobile.popupRender,\n onClick = props.onClick;\n var elementRef = React.useRef(); // ========================= Refs =========================\n\n React.useImperativeHandle(ref, function () {\n return {\n forceAlign: function forceAlign() {},\n getElement: function getElement() {\n return elementRef.current;\n }\n };\n }); // ======================== Render ========================\n\n var mergedStyle = _objectSpread({\n zIndex: zIndex\n }, popupStyle);\n\n var childNode = children; // Wrapper when multiple children\n\n if (React.Children.count(children) > 1) {\n childNode = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-content\")\n }, children);\n } // Mobile support additional render\n\n\n if (popupRender) {\n childNode = popupRender(childNode);\n }\n\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({\n visible: visible,\n ref: elementRef,\n removeOnLeave: true\n }, popupMotion), function (_ref, motionRef) {\n var motionClassName = _ref.className,\n motionStyle = _ref.style;\n var mergedClassName = classNames(prefixCls, popupClassName, motionClassName);\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: motionRef,\n className: mergedClassName,\n onClick: onClick,\n style: _objectSpread(_objectSpread({}, motionStyle), mergedStyle)\n }, childNode);\n });\n});\nMobilePopupInner.displayName = 'MobilePopupInner';\nexport default MobilePopupInner;","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 = [\"visible\", \"mobile\"];\nimport * as React from 'react';\nimport { useState, useEffect } from 'react';\nimport isMobile from \"rc-util/es/isMobile\";\nimport Mask from \"./Mask\";\nimport PopupInner from \"./PopupInner\";\nimport MobilePopupInner from \"./MobilePopupInner\";\nvar Popup = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var visible = _ref.visible,\n mobile = _ref.mobile,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var _useState = useState(visible),\n _useState2 = _slicedToArray(_useState, 2),\n innerVisible = _useState2[0],\n serInnerVisible = _useState2[1];\n\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n inMobile = _useState4[0],\n setInMobile = _useState4[1];\n\n var cloneProps = _objectSpread(_objectSpread({}, props), {}, {\n visible: innerVisible\n }); // We check mobile in visible changed here.\n // And this also delay set `innerVisible` to avoid popup component render flash\n\n\n useEffect(function () {\n serInnerVisible(visible);\n\n if (visible && mobile) {\n setInMobile(isMobile());\n }\n }, [visible, mobile]);\n var popupNode = inMobile ? /*#__PURE__*/React.createElement(MobilePopupInner, _extends({}, cloneProps, {\n mobile: mobile,\n ref: ref\n })) : /*#__PURE__*/React.createElement(PopupInner, _extends({}, cloneProps, {\n ref: ref\n })); // We can use fragment directly but this may failed some selector usage. Keep as origin logic\n\n return /*#__PURE__*/React.createElement(\"div\", null, /*#__PURE__*/React.createElement(Mask, cloneProps), popupNode);\n});\nPopup.displayName = 'Popup';\nexport default Popup;","export default (function () {\n if (typeof navigator === 'undefined' || typeof window === 'undefined') {\n return false;\n }\n var agent = navigator.userAgent || navigator.vendor || window.opera;\n return /(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(agent) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(agent === null || agent === void 0 ? void 0 : agent.substr(0, 4));\n});","import * as React from 'react';\nvar TriggerContext = /*#__PURE__*/React.createContext(null);\nexport default TriggerContext;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\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\";\nimport * as React from 'react';\nimport ReactDOM from 'react-dom';\nimport raf from \"rc-util/es/raf\";\nimport contains from \"rc-util/es/Dom/contains\";\nimport findDOMNode from \"rc-util/es/Dom/findDOMNode\";\nimport { composeRef, supportRef } from \"rc-util/es/ref\";\nimport addEventListener from \"rc-util/es/Dom/addEventListener\";\nimport Portal from \"rc-util/es/Portal\";\nimport classNames from 'classnames';\nimport { getAlignFromPlacement, getAlignPopupClassName } from \"./utils/alignUtil\";\nimport Popup from \"./Popup\";\nimport TriggerContext from \"./context\";\n\nfunction noop() {}\n\nfunction returnEmptyString() {\n return '';\n}\n\nfunction returnDocument(element) {\n if (element) {\n return element.ownerDocument;\n }\n\n return window.document;\n}\n\nvar ALL_HANDLERS = ['onClick', 'onMouseDown', 'onTouchStart', 'onMouseEnter', 'onMouseLeave', 'onFocus', 'onBlur', 'onContextMenu'];\n\n/**\n * Internal usage. Do not use in your code since this will be removed.\n */\nexport function generateTrigger(PortalComponent) {\n var Trigger = /*#__PURE__*/function (_React$Component) {\n _inherits(Trigger, _React$Component);\n\n var _super = _createSuper(Trigger);\n\n // ensure `getContainer` will be called only once\n function Trigger(props) {\n var _this;\n\n _classCallCheck(this, Trigger);\n\n _this = _super.call(this, props);\n\n _defineProperty(_assertThisInitialized(_this), \"popupRef\", /*#__PURE__*/React.createRef());\n\n _defineProperty(_assertThisInitialized(_this), \"triggerRef\", /*#__PURE__*/React.createRef());\n\n _defineProperty(_assertThisInitialized(_this), \"portalContainer\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"attachId\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"clickOutsideHandler\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"touchOutsideHandler\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"contextMenuOutsideHandler1\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"contextMenuOutsideHandler2\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"mouseDownTimeout\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"focusTime\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"preClickTime\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"preTouchTime\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"delayTimer\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"hasPopupMouseDown\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"onMouseEnter\", function (e) {\n var mouseEnterDelay = _this.props.mouseEnterDelay;\n\n _this.fireEvents('onMouseEnter', e);\n\n _this.delaySetPopupVisible(true, mouseEnterDelay, mouseEnterDelay ? null : e);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onMouseMove\", function (e) {\n _this.fireEvents('onMouseMove', e);\n\n _this.setPoint(e);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onMouseLeave\", function (e) {\n _this.fireEvents('onMouseLeave', e);\n\n _this.delaySetPopupVisible(false, _this.props.mouseLeaveDelay);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPopupMouseEnter\", function () {\n _this.clearDelayTimer();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPopupMouseLeave\", function (e) {\n var _this$popupRef$curren;\n\n // https://github.com/react-component/trigger/pull/13\n // react bug?\n if (e.relatedTarget && !e.relatedTarget.setTimeout && contains((_this$popupRef$curren = _this.popupRef.current) === null || _this$popupRef$curren === void 0 ? void 0 : _this$popupRef$curren.getElement(), e.relatedTarget)) {\n return;\n }\n\n _this.delaySetPopupVisible(false, _this.props.mouseLeaveDelay);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onFocus\", function (e) {\n _this.fireEvents('onFocus', e); // incase focusin and focusout\n\n\n _this.clearDelayTimer();\n\n if (_this.isFocusToShow()) {\n _this.focusTime = Date.now();\n\n _this.delaySetPopupVisible(true, _this.props.focusDelay);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onMouseDown\", function (e) {\n _this.fireEvents('onMouseDown', e);\n\n _this.preClickTime = Date.now();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onTouchStart\", function (e) {\n _this.fireEvents('onTouchStart', e);\n\n _this.preTouchTime = Date.now();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onBlur\", function (e) {\n _this.fireEvents('onBlur', e);\n\n _this.clearDelayTimer();\n\n if (_this.isBlurToHide()) {\n _this.delaySetPopupVisible(false, _this.props.blurDelay);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onContextMenu\", function (e) {\n e.preventDefault();\n\n _this.fireEvents('onContextMenu', e);\n\n _this.setPopupVisible(true, e);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onContextMenuClose\", function () {\n if (_this.isContextMenuToShow()) {\n _this.close();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n _this.fireEvents('onClick', event); // focus will trigger click\n\n\n if (_this.focusTime) {\n var preTime;\n\n if (_this.preClickTime && _this.preTouchTime) {\n preTime = Math.min(_this.preClickTime, _this.preTouchTime);\n } else if (_this.preClickTime) {\n preTime = _this.preClickTime;\n } else if (_this.preTouchTime) {\n preTime = _this.preTouchTime;\n }\n\n if (Math.abs(preTime - _this.focusTime) < 20) {\n return;\n }\n\n _this.focusTime = 0;\n }\n\n _this.preClickTime = 0;\n _this.preTouchTime = 0; // Only prevent default when all the action is click.\n // https://github.com/ant-design/ant-design/issues/17043\n // https://github.com/ant-design/ant-design/issues/17291\n\n if (_this.isClickToShow() && (_this.isClickToHide() || _this.isBlurToHide()) && event && event.preventDefault) {\n event.preventDefault();\n }\n\n var nextVisible = !_this.state.popupVisible;\n\n if (_this.isClickToHide() && !nextVisible || nextVisible && _this.isClickToShow()) {\n _this.setPopupVisible(!_this.state.popupVisible, event);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPopupMouseDown\", function () {\n _this.hasPopupMouseDown = true;\n clearTimeout(_this.mouseDownTimeout);\n _this.mouseDownTimeout = window.setTimeout(function () {\n _this.hasPopupMouseDown = false;\n }, 0);\n\n if (_this.context) {\n var _this$context;\n\n (_this$context = _this.context).onPopupMouseDown.apply(_this$context, arguments);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onDocumentClick\", function (event) {\n if (_this.props.mask && !_this.props.maskClosable) {\n return;\n }\n\n var target = event.target;\n\n var root = _this.getRootDomNode();\n\n var popupNode = _this.getPopupDomNode();\n\n if ( // mousedown on the target should also close popup when action is contextMenu.\n // https://github.com/ant-design/ant-design/issues/29853\n (!contains(root, target) || _this.isContextMenuOnly()) && !contains(popupNode, target) && !_this.hasPopupMouseDown) {\n _this.close();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getRootDomNode\", function () {\n var getTriggerDOMNode = _this.props.getTriggerDOMNode;\n\n if (getTriggerDOMNode) {\n return getTriggerDOMNode(_this.triggerRef.current);\n }\n\n try {\n var domNode = findDOMNode(_this.triggerRef.current);\n\n if (domNode) {\n return domNode;\n }\n } catch (err) {// Do nothing\n }\n\n return ReactDOM.findDOMNode(_assertThisInitialized(_this));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getPopupClassNameFromAlign\", function (align) {\n var className = [];\n var _this$props = _this.props,\n popupPlacement = _this$props.popupPlacement,\n builtinPlacements = _this$props.builtinPlacements,\n prefixCls = _this$props.prefixCls,\n alignPoint = _this$props.alignPoint,\n getPopupClassNameFromAlign = _this$props.getPopupClassNameFromAlign;\n\n if (popupPlacement && builtinPlacements) {\n className.push(getAlignPopupClassName(builtinPlacements, prefixCls, align, alignPoint));\n }\n\n if (getPopupClassNameFromAlign) {\n className.push(getPopupClassNameFromAlign(align));\n }\n\n return className.join(' ');\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getComponent\", function () {\n var _this$props2 = _this.props,\n prefixCls = _this$props2.prefixCls,\n destroyPopupOnHide = _this$props2.destroyPopupOnHide,\n popupClassName = _this$props2.popupClassName,\n onPopupAlign = _this$props2.onPopupAlign,\n popupMotion = _this$props2.popupMotion,\n popupAnimation = _this$props2.popupAnimation,\n popupTransitionName = _this$props2.popupTransitionName,\n popupStyle = _this$props2.popupStyle,\n mask = _this$props2.mask,\n maskAnimation = _this$props2.maskAnimation,\n maskTransitionName = _this$props2.maskTransitionName,\n maskMotion = _this$props2.maskMotion,\n zIndex = _this$props2.zIndex,\n popup = _this$props2.popup,\n stretch = _this$props2.stretch,\n alignPoint = _this$props2.alignPoint,\n mobile = _this$props2.mobile,\n forceRender = _this$props2.forceRender,\n onPopupClick = _this$props2.onPopupClick;\n var _this$state = _this.state,\n popupVisible = _this$state.popupVisible,\n point = _this$state.point;\n\n var align = _this.getPopupAlign();\n\n var mouseProps = {};\n\n if (_this.isMouseEnterToShow()) {\n mouseProps.onMouseEnter = _this.onPopupMouseEnter;\n }\n\n if (_this.isMouseLeaveToHide()) {\n mouseProps.onMouseLeave = _this.onPopupMouseLeave;\n }\n\n mouseProps.onMouseDown = _this.onPopupMouseDown;\n mouseProps.onTouchStart = _this.onPopupMouseDown;\n return /*#__PURE__*/React.createElement(Popup, _extends({\n prefixCls: prefixCls,\n destroyPopupOnHide: destroyPopupOnHide,\n visible: popupVisible,\n point: alignPoint && point,\n className: popupClassName,\n align: align,\n onAlign: onPopupAlign,\n animation: popupAnimation,\n getClassNameFromAlign: _this.getPopupClassNameFromAlign\n }, mouseProps, {\n stretch: stretch,\n getRootDomNode: _this.getRootDomNode,\n style: popupStyle,\n mask: mask,\n zIndex: zIndex,\n transitionName: popupTransitionName,\n maskAnimation: maskAnimation,\n maskTransitionName: maskTransitionName,\n maskMotion: maskMotion,\n ref: _this.popupRef,\n motion: popupMotion,\n mobile: mobile,\n forceRender: forceRender,\n onClick: onPopupClick\n }), typeof popup === 'function' ? popup() : popup);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"attachParent\", function (popupContainer) {\n raf.cancel(_this.attachId);\n var _this$props3 = _this.props,\n getPopupContainer = _this$props3.getPopupContainer,\n getDocument = _this$props3.getDocument;\n\n var domNode = _this.getRootDomNode();\n\n var mountNode;\n\n if (!getPopupContainer) {\n mountNode = getDocument(_this.getRootDomNode()).body;\n } else if (domNode || getPopupContainer.length === 0) {\n // Compatible for legacy getPopupContainer with domNode argument.\n // If no need `domNode` argument, will call directly.\n // https://codesandbox.io/s/eloquent-mclean-ss93m?file=/src/App.js\n mountNode = getPopupContainer(domNode);\n }\n\n if (mountNode) {\n mountNode.appendChild(popupContainer);\n } else {\n // Retry after frame render in case parent not ready\n _this.attachId = raf(function () {\n _this.attachParent(popupContainer);\n });\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getContainer\", function () {\n if (!_this.portalContainer) {\n // In React.StrictMode component will call render multiple time in first mount.\n // When you want to refactor with FC, useRef will also init multiple time and\n // point to different useRef instance which will create multiple element\n // (This multiple render will not trigger effect so you can not clean up this\n // in effect). But this is safe with class component since it always point to same class instance.\n var getDocument = _this.props.getDocument;\n var popupContainer = getDocument(_this.getRootDomNode()).createElement('div'); // Make sure default popup container will never cause scrollbar appearing\n // https://github.com/react-component/trigger/issues/41\n\n popupContainer.style.position = 'absolute';\n popupContainer.style.top = '0';\n popupContainer.style.left = '0';\n popupContainer.style.width = '100%';\n _this.portalContainer = popupContainer;\n }\n\n _this.attachParent(_this.portalContainer);\n\n return _this.portalContainer;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"setPoint\", function (point) {\n var alignPoint = _this.props.alignPoint;\n if (!alignPoint || !point) return;\n\n _this.setState({\n point: {\n pageX: point.pageX,\n pageY: point.pageY\n }\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handlePortalUpdate\", function () {\n if (_this.state.prevPopupVisible !== _this.state.popupVisible) {\n _this.props.afterPopupVisibleChange(_this.state.popupVisible);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"triggerContextValue\", {\n onPopupMouseDown: _this.onPopupMouseDown\n });\n\n var _popupVisible;\n\n if ('popupVisible' in props) {\n _popupVisible = !!props.popupVisible;\n } else {\n _popupVisible = !!props.defaultPopupVisible;\n }\n\n _this.state = {\n prevPopupVisible: _popupVisible,\n popupVisible: _popupVisible\n };\n ALL_HANDLERS.forEach(function (h) {\n _this[\"fire\".concat(h)] = function (e) {\n _this.fireEvents(h, e);\n };\n });\n return _this;\n }\n\n _createClass(Trigger, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.componentDidUpdate();\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate() {\n var props = this.props;\n var state = this.state; // We must listen to `mousedown` or `touchstart`, edge case:\n // https://github.com/ant-design/ant-design/issues/5804\n // https://github.com/react-component/calendar/issues/250\n // https://github.com/react-component/trigger/issues/50\n\n if (state.popupVisible) {\n var currentDocument;\n\n if (!this.clickOutsideHandler && (this.isClickToHide() || this.isContextMenuToShow())) {\n currentDocument = props.getDocument(this.getRootDomNode());\n this.clickOutsideHandler = addEventListener(currentDocument, 'mousedown', this.onDocumentClick);\n } // always hide on mobile\n\n\n if (!this.touchOutsideHandler) {\n currentDocument = currentDocument || props.getDocument(this.getRootDomNode());\n this.touchOutsideHandler = addEventListener(currentDocument, 'touchstart', this.onDocumentClick);\n } // close popup when trigger type contains 'onContextMenu' and document is scrolling.\n\n\n if (!this.contextMenuOutsideHandler1 && this.isContextMenuToShow()) {\n currentDocument = currentDocument || props.getDocument(this.getRootDomNode());\n this.contextMenuOutsideHandler1 = addEventListener(currentDocument, 'scroll', this.onContextMenuClose);\n } // close popup when trigger type contains 'onContextMenu' and window is blur.\n\n\n if (!this.contextMenuOutsideHandler2 && this.isContextMenuToShow()) {\n this.contextMenuOutsideHandler2 = addEventListener(window, 'blur', this.onContextMenuClose);\n }\n\n return;\n }\n\n this.clearOutsideHandler();\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.clearDelayTimer();\n this.clearOutsideHandler();\n clearTimeout(this.mouseDownTimeout);\n raf.cancel(this.attachId);\n }\n }, {\n key: \"getPopupDomNode\",\n value: function getPopupDomNode() {\n var _this$popupRef$curren2;\n\n // for test\n return ((_this$popupRef$curren2 = this.popupRef.current) === null || _this$popupRef$curren2 === void 0 ? void 0 : _this$popupRef$curren2.getElement()) || null;\n }\n }, {\n key: \"getPopupAlign\",\n value: function getPopupAlign() {\n var props = this.props;\n var popupPlacement = props.popupPlacement,\n popupAlign = props.popupAlign,\n builtinPlacements = props.builtinPlacements;\n\n if (popupPlacement && builtinPlacements) {\n return getAlignFromPlacement(builtinPlacements, popupPlacement, popupAlign);\n }\n\n return popupAlign;\n }\n }, {\n key: \"setPopupVisible\",\n value:\n /**\n * @param popupVisible Show or not the popup element\n * @param event SyntheticEvent, used for `pointAlign`\n */\n function setPopupVisible(popupVisible, event) {\n var alignPoint = this.props.alignPoint;\n var prevPopupVisible = this.state.popupVisible;\n this.clearDelayTimer();\n\n if (prevPopupVisible !== popupVisible) {\n if (!('popupVisible' in this.props)) {\n this.setState({\n popupVisible: popupVisible,\n prevPopupVisible: prevPopupVisible\n });\n }\n\n this.props.onPopupVisibleChange(popupVisible);\n } // Always record the point position since mouseEnterDelay will delay the show\n\n\n if (alignPoint && event && popupVisible) {\n this.setPoint(event);\n }\n }\n }, {\n key: \"delaySetPopupVisible\",\n value: function delaySetPopupVisible(visible, delayS, event) {\n var _this2 = this;\n\n var delay = delayS * 1000;\n this.clearDelayTimer();\n\n if (delay) {\n var point = event ? {\n pageX: event.pageX,\n pageY: event.pageY\n } : null;\n this.delayTimer = window.setTimeout(function () {\n _this2.setPopupVisible(visible, point);\n\n _this2.clearDelayTimer();\n }, delay);\n } else {\n this.setPopupVisible(visible, event);\n }\n }\n }, {\n key: \"clearDelayTimer\",\n value: function clearDelayTimer() {\n if (this.delayTimer) {\n clearTimeout(this.delayTimer);\n this.delayTimer = null;\n }\n }\n }, {\n key: \"clearOutsideHandler\",\n value: function clearOutsideHandler() {\n if (this.clickOutsideHandler) {\n this.clickOutsideHandler.remove();\n this.clickOutsideHandler = null;\n }\n\n if (this.contextMenuOutsideHandler1) {\n this.contextMenuOutsideHandler1.remove();\n this.contextMenuOutsideHandler1 = null;\n }\n\n if (this.contextMenuOutsideHandler2) {\n this.contextMenuOutsideHandler2.remove();\n this.contextMenuOutsideHandler2 = null;\n }\n\n if (this.touchOutsideHandler) {\n this.touchOutsideHandler.remove();\n this.touchOutsideHandler = null;\n }\n }\n }, {\n key: \"createTwoChains\",\n value: function createTwoChains(event) {\n var childPros = this.props.children.props;\n var props = this.props;\n\n if (childPros[event] && props[event]) {\n return this[\"fire\".concat(event)];\n }\n\n return childPros[event] || props[event];\n }\n }, {\n key: \"isClickToShow\",\n value: function isClickToShow() {\n var _this$props4 = this.props,\n action = _this$props4.action,\n showAction = _this$props4.showAction;\n return action.indexOf('click') !== -1 || showAction.indexOf('click') !== -1;\n }\n }, {\n key: \"isContextMenuOnly\",\n value: function isContextMenuOnly() {\n var action = this.props.action;\n return action === 'contextMenu' || action.length === 1 && action[0] === 'contextMenu';\n }\n }, {\n key: \"isContextMenuToShow\",\n value: function isContextMenuToShow() {\n var _this$props5 = this.props,\n action = _this$props5.action,\n showAction = _this$props5.showAction;\n return action.indexOf('contextMenu') !== -1 || showAction.indexOf('contextMenu') !== -1;\n }\n }, {\n key: \"isClickToHide\",\n value: function isClickToHide() {\n var _this$props6 = this.props,\n action = _this$props6.action,\n hideAction = _this$props6.hideAction;\n return action.indexOf('click') !== -1 || hideAction.indexOf('click') !== -1;\n }\n }, {\n key: \"isMouseEnterToShow\",\n value: function isMouseEnterToShow() {\n var _this$props7 = this.props,\n action = _this$props7.action,\n showAction = _this$props7.showAction;\n return action.indexOf('hover') !== -1 || showAction.indexOf('mouseEnter') !== -1;\n }\n }, {\n key: \"isMouseLeaveToHide\",\n value: function isMouseLeaveToHide() {\n var _this$props8 = this.props,\n action = _this$props8.action,\n hideAction = _this$props8.hideAction;\n return action.indexOf('hover') !== -1 || hideAction.indexOf('mouseLeave') !== -1;\n }\n }, {\n key: \"isFocusToShow\",\n value: function isFocusToShow() {\n var _this$props9 = this.props,\n action = _this$props9.action,\n showAction = _this$props9.showAction;\n return action.indexOf('focus') !== -1 || showAction.indexOf('focus') !== -1;\n }\n }, {\n key: \"isBlurToHide\",\n value: function isBlurToHide() {\n var _this$props10 = this.props,\n action = _this$props10.action,\n hideAction = _this$props10.hideAction;\n return action.indexOf('focus') !== -1 || hideAction.indexOf('blur') !== -1;\n }\n }, {\n key: \"forcePopupAlign\",\n value: function forcePopupAlign() {\n if (this.state.popupVisible) {\n var _this$popupRef$curren3;\n\n (_this$popupRef$curren3 = this.popupRef.current) === null || _this$popupRef$curren3 === void 0 ? void 0 : _this$popupRef$curren3.forceAlign();\n }\n }\n }, {\n key: \"fireEvents\",\n value: function fireEvents(type, e) {\n var childCallback = this.props.children.props[type];\n\n if (childCallback) {\n childCallback(e);\n }\n\n var callback = this.props[type];\n\n if (callback) {\n callback(e);\n }\n }\n }, {\n key: \"close\",\n value: function close() {\n this.setPopupVisible(false);\n }\n }, {\n key: \"render\",\n value: function render() {\n var popupVisible = this.state.popupVisible;\n var _this$props11 = this.props,\n children = _this$props11.children,\n forceRender = _this$props11.forceRender,\n alignPoint = _this$props11.alignPoint,\n className = _this$props11.className,\n autoDestroy = _this$props11.autoDestroy;\n var child = React.Children.only(children);\n var newChildProps = {\n key: 'trigger'\n }; // ============================== Visible Handlers ==============================\n // >>> ContextMenu\n\n if (this.isContextMenuToShow()) {\n newChildProps.onContextMenu = this.onContextMenu;\n } else {\n newChildProps.onContextMenu = this.createTwoChains('onContextMenu');\n } // >>> Click\n\n\n if (this.isClickToHide() || this.isClickToShow()) {\n newChildProps.onClick = this.onClick;\n newChildProps.onMouseDown = this.onMouseDown;\n newChildProps.onTouchStart = this.onTouchStart;\n } else {\n newChildProps.onClick = this.createTwoChains('onClick');\n newChildProps.onMouseDown = this.createTwoChains('onMouseDown');\n newChildProps.onTouchStart = this.createTwoChains('onTouchStart');\n } // >>> Hover(enter)\n\n\n if (this.isMouseEnterToShow()) {\n newChildProps.onMouseEnter = this.onMouseEnter; // Point align\n\n if (alignPoint) {\n newChildProps.onMouseMove = this.onMouseMove;\n }\n } else {\n newChildProps.onMouseEnter = this.createTwoChains('onMouseEnter');\n } // >>> Hover(leave)\n\n\n if (this.isMouseLeaveToHide()) {\n newChildProps.onMouseLeave = this.onMouseLeave;\n } else {\n newChildProps.onMouseLeave = this.createTwoChains('onMouseLeave');\n } // >>> Focus\n\n\n if (this.isFocusToShow() || this.isBlurToHide()) {\n newChildProps.onFocus = this.onFocus;\n newChildProps.onBlur = this.onBlur;\n } else {\n newChildProps.onFocus = this.createTwoChains('onFocus');\n newChildProps.onBlur = this.createTwoChains('onBlur');\n } // =================================== Render ===================================\n\n\n var childrenClassName = classNames(child && child.props && child.props.className, className);\n\n if (childrenClassName) {\n newChildProps.className = childrenClassName;\n }\n\n var cloneProps = _objectSpread({}, newChildProps);\n\n if (supportRef(child)) {\n cloneProps.ref = composeRef(this.triggerRef, child.ref);\n }\n\n var trigger = /*#__PURE__*/React.cloneElement(child, cloneProps);\n var portal; // prevent unmounting after it's rendered\n\n if (popupVisible || this.popupRef.current || forceRender) {\n portal = /*#__PURE__*/React.createElement(PortalComponent, {\n key: \"portal\",\n getContainer: this.getContainer,\n didUpdate: this.handlePortalUpdate\n }, this.getComponent());\n }\n\n if (!popupVisible && autoDestroy) {\n portal = null;\n }\n\n return /*#__PURE__*/React.createElement(TriggerContext.Provider, {\n value: this.triggerContextValue\n }, trigger, portal);\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(_ref, prevState) {\n var popupVisible = _ref.popupVisible;\n var newState = {};\n\n if (popupVisible !== undefined && prevState.popupVisible !== popupVisible) {\n newState.popupVisible = popupVisible;\n newState.prevPopupVisible = prevState.popupVisible;\n }\n\n return newState;\n }\n }]);\n\n return Trigger;\n }(React.Component);\n\n _defineProperty(Trigger, \"contextType\", TriggerContext);\n\n _defineProperty(Trigger, \"defaultProps\", {\n prefixCls: 'rc-trigger-popup',\n getPopupClassNameFromAlign: returnEmptyString,\n getDocument: returnDocument,\n onPopupVisibleChange: noop,\n afterPopupVisibleChange: noop,\n onPopupAlign: noop,\n popupClassName: '',\n mouseEnterDelay: 0,\n mouseLeaveDelay: 0.1,\n focusDelay: 0,\n blurDelay: 0.15,\n popupStyle: {},\n destroyPopupOnHide: false,\n popupAlign: {},\n defaultPopupVisible: false,\n mask: false,\n maskClosable: true,\n action: [],\n showAction: [],\n hideAction: [],\n autoDestroy: false\n });\n\n return Trigger;\n}\nexport default generateTrigger(Portal);","var autoAdjustOverflow = {\n adjustX: 1,\n adjustY: 1\n};\nvar targetOffset = [0, 0];\nexport var placements = {\n left: {\n points: ['cr', 'cl'],\n overflow: autoAdjustOverflow,\n offset: [-4, 0],\n targetOffset: targetOffset\n },\n right: {\n points: ['cl', 'cr'],\n overflow: autoAdjustOverflow,\n offset: [4, 0],\n targetOffset: targetOffset\n },\n top: {\n points: ['bc', 'tc'],\n overflow: autoAdjustOverflow,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n bottom: {\n points: ['tc', 'bc'],\n overflow: autoAdjustOverflow,\n offset: [0, 4],\n targetOffset: targetOffset\n },\n topLeft: {\n points: ['bl', 'tl'],\n overflow: autoAdjustOverflow,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n leftTop: {\n points: ['tr', 'tl'],\n overflow: autoAdjustOverflow,\n offset: [-4, 0],\n targetOffset: targetOffset\n },\n topRight: {\n points: ['br', 'tr'],\n overflow: autoAdjustOverflow,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n rightTop: {\n points: ['tl', 'tr'],\n overflow: autoAdjustOverflow,\n offset: [4, 0],\n targetOffset: targetOffset\n },\n bottomRight: {\n points: ['tr', 'br'],\n overflow: autoAdjustOverflow,\n offset: [0, 4],\n targetOffset: targetOffset\n },\n rightBottom: {\n points: ['bl', 'br'],\n overflow: autoAdjustOverflow,\n offset: [4, 0],\n targetOffset: targetOffset\n },\n bottomLeft: {\n points: ['tl', 'bl'],\n overflow: autoAdjustOverflow,\n offset: [0, 4],\n targetOffset: targetOffset\n },\n leftBottom: {\n points: ['br', 'bl'],\n overflow: autoAdjustOverflow,\n offset: [-4, 0],\n targetOffset: targetOffset\n }\n};\nexport default placements;","import * as React from 'react';\nimport classNames from 'classnames';\nexport default function Popup(props) {\n var showArrow = props.showArrow,\n arrowContent = props.arrowContent,\n children = props.children,\n prefixCls = props.prefixCls,\n id = props.id,\n overlayInnerStyle = props.overlayInnerStyle,\n className = props.className,\n style = props.style;\n return /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(\"\".concat(prefixCls, \"-content\"), className),\n style: style\n }, showArrow !== false && /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-arrow\"),\n key: \"arrow\"\n }, arrowContent), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-inner\"),\n id: id,\n role: \"tooltip\",\n style: overlayInnerStyle\n }, typeof children === 'function' ? children() : children));\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"overlayClassName\", \"trigger\", \"mouseEnterDelay\", \"mouseLeaveDelay\", \"overlayStyle\", \"prefixCls\", \"children\", \"onVisibleChange\", \"afterVisibleChange\", \"transitionName\", \"animation\", \"motion\", \"placement\", \"align\", \"destroyTooltipOnHide\", \"defaultVisible\", \"getTooltipContainer\", \"overlayInnerStyle\", \"arrowContent\", \"overlay\", \"id\", \"showArrow\"];\nimport * as React from 'react';\nimport { useRef, useImperativeHandle, forwardRef } from 'react';\nimport Trigger from 'rc-trigger';\nimport { placements } from './placements';\nimport Popup from './Popup';\nvar Tooltip = function Tooltip(props, ref) {\n var overlayClassName = props.overlayClassName,\n _props$trigger = props.trigger,\n trigger = _props$trigger === void 0 ? ['hover'] : _props$trigger,\n _props$mouseEnterDela = props.mouseEnterDelay,\n mouseEnterDelay = _props$mouseEnterDela === void 0 ? 0 : _props$mouseEnterDela,\n _props$mouseLeaveDela = props.mouseLeaveDelay,\n mouseLeaveDelay = _props$mouseLeaveDela === void 0 ? 0.1 : _props$mouseLeaveDela,\n overlayStyle = props.overlayStyle,\n _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-tooltip' : _props$prefixCls,\n children = props.children,\n onVisibleChange = props.onVisibleChange,\n afterVisibleChange = props.afterVisibleChange,\n transitionName = props.transitionName,\n animation = props.animation,\n motion = props.motion,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'right' : _props$placement,\n _props$align = props.align,\n align = _props$align === void 0 ? {} : _props$align,\n _props$destroyTooltip = props.destroyTooltipOnHide,\n destroyTooltipOnHide = _props$destroyTooltip === void 0 ? false : _props$destroyTooltip,\n defaultVisible = props.defaultVisible,\n getTooltipContainer = props.getTooltipContainer,\n overlayInnerStyle = props.overlayInnerStyle,\n arrowContent = props.arrowContent,\n overlay = props.overlay,\n id = props.id,\n _props$showArrow = props.showArrow,\n showArrow = _props$showArrow === void 0 ? true : _props$showArrow,\n restProps = _objectWithoutProperties(props, _excluded);\n var domRef = useRef(null);\n useImperativeHandle(ref, function () {\n return domRef.current;\n });\n var extraProps = _objectSpread({}, restProps);\n if ('visible' in props) {\n extraProps.popupVisible = props.visible;\n }\n var getPopupElement = function getPopupElement() {\n return /*#__PURE__*/React.createElement(Popup, {\n showArrow: showArrow,\n arrowContent: arrowContent,\n key: \"content\",\n prefixCls: prefixCls,\n id: id,\n overlayInnerStyle: overlayInnerStyle\n }, overlay);\n };\n var destroyTooltip = false;\n var autoDestroy = false;\n if (typeof destroyTooltipOnHide === 'boolean') {\n destroyTooltip = destroyTooltipOnHide;\n } else if (destroyTooltipOnHide && _typeof(destroyTooltipOnHide) === 'object') {\n var keepParent = destroyTooltipOnHide.keepParent;\n destroyTooltip = keepParent === true;\n autoDestroy = keepParent === false;\n }\n return /*#__PURE__*/React.createElement(Trigger, _extends({\n popupClassName: overlayClassName,\n prefixCls: prefixCls,\n popup: getPopupElement,\n action: trigger,\n builtinPlacements: placements,\n popupPlacement: placement,\n ref: domRef,\n popupAlign: align,\n getPopupContainer: getTooltipContainer,\n onPopupVisibleChange: onVisibleChange,\n afterPopupVisibleChange: afterVisibleChange,\n popupTransitionName: transitionName,\n popupAnimation: animation,\n popupMotion: motion,\n defaultPopupVisible: defaultVisible,\n destroyPopupOnHide: destroyTooltip,\n autoDestroy: autoDestroy,\n mouseLeaveDelay: mouseLeaveDelay,\n popupStyle: overlayStyle,\n mouseEnterDelay: mouseEnterDelay\n }, extraProps), children);\n};\nexport default /*#__PURE__*/forwardRef(Tooltip);","import Tooltip from './Tooltip';\nimport Popup from './Popup';\nexport { Popup };\nexport default Tooltip;","/**\n * @license React\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var b=Symbol.for(\"react.element\"),c=Symbol.for(\"react.portal\"),d=Symbol.for(\"react.fragment\"),e=Symbol.for(\"react.strict_mode\"),f=Symbol.for(\"react.profiler\"),g=Symbol.for(\"react.provider\"),h=Symbol.for(\"react.context\"),k=Symbol.for(\"react.server_context\"),l=Symbol.for(\"react.forward_ref\"),m=Symbol.for(\"react.suspense\"),n=Symbol.for(\"react.suspense_list\"),p=Symbol.for(\"react.memo\"),q=Symbol.for(\"react.lazy\"),t=Symbol.for(\"react.offscreen\"),u;u=Symbol.for(\"react.module.reference\");\nfunction v(a){if(\"object\"===typeof a&&null!==a){var r=a.$$typeof;switch(r){case b:switch(a=a.type,a){case d:case f:case e:case m:case n:return a;default:switch(a=a&&a.$$typeof,a){case k:case h:case l:case q:case p:case g:return a;default:return r}}case c:return r}}}exports.ContextConsumer=h;exports.ContextProvider=g;exports.Element=b;exports.ForwardRef=l;exports.Fragment=d;exports.Lazy=q;exports.Memo=p;exports.Portal=c;exports.Profiler=f;exports.StrictMode=e;exports.Suspense=m;\nexports.SuspenseList=n;exports.isAsyncMode=function(){return!1};exports.isConcurrentMode=function(){return!1};exports.isContextConsumer=function(a){return v(a)===h};exports.isContextProvider=function(a){return v(a)===g};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===b};exports.isForwardRef=function(a){return v(a)===l};exports.isFragment=function(a){return v(a)===d};exports.isLazy=function(a){return v(a)===q};exports.isMemo=function(a){return v(a)===p};\nexports.isPortal=function(a){return v(a)===c};exports.isProfiler=function(a){return v(a)===f};exports.isStrictMode=function(a){return v(a)===e};exports.isSuspense=function(a){return v(a)===m};exports.isSuspenseList=function(a){return v(a)===n};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===d||a===f||a===e||a===m||a===n||a===t||\"object\"===typeof a&&null!==a&&(a.$$typeof===q||a.$$typeof===p||a.$$typeof===g||a.$$typeof===h||a.$$typeof===l||a.$$typeof===u||void 0!==a.getModuleId)?!0:!1};exports.typeOf=v;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n"],"names":["hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","argType","push","Array","isArray","inner","apply","toString","Object","prototype","includes","key","call","join","module","exports","default","Bun","version","global","isCallable","ENGINE_IS_BUN","USER_AGENT","arraySlice","validateArgumentsLength","Function","WRAP","test","split","scheduler","hasTimeArg","firstParamIndex","handler","timeout","boundArgs","fn","params","callback","this","$","setInterval","schedulersFix","bind","forced","setTimeout","_objectWithoutProperties","source","excluded","target","sourceKeys","keys","indexOf","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","_classCallCheck","instance","Constructor","TypeError","_defineProperties","props","descriptor","enumerable","configurable","writable","defineProperty","toPropertyKey","_createClass","protoProps","staticProps","_assertThisInitialized","self","ReferenceError","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_inherits","subClass","superClass","create","constructor","value","_getPrototypeOf","getPrototypeOf","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","e","result","Super","NewTarget","raf","caf","num","clearTimeout","window","requestAnimationFrame","handle","cancelAnimationFrame","rafUUID","rafIds","Map","cleanup","id","delete","wrapperRaf","callRef","leftTimes","realId","set","undefined","cancel","get","contains","root","n","node","parentNode","isDOM","HTMLElement","SVGElement","findDOMNode","_ReactDOM$findDOMNode","domNode","nativeElement","getDOM","REACT_ELEMENT_TYPE_18","Symbol","for","REACT_ELEMENT_TYPE_19","REACT_FRAGMENT_TYPE","ReactMajorVersion","Number","fillRef","ref","current","composeRef","_len","refs","_key","refList","filter","forEach","supportRef","nodeOrComponent","_type$prototype","_nodeOrComponent$prot","isReactElement","type","isMemo","render","$$typeof","ForwardRef","isValidElement","object","addEventListenerWrap","eventType","cb","option","addEventListener","remove","removeEventListener","canUseDom","document","createElement","forwardRef","didUpdate","getContainer","children","parentRef","useRef","containerRef","useImperativeHandle","initRef","useEffect","appendChild","_containerRef$current","removeChild","isPointsEq","a1","a2","isAlignPoint","_arrayLikeToArray","arr","len","arr2","_slicedToArray","_i","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","err","minLen","slice","name","from","makePrefixMap","styleProp","eventName","prefixes","toLowerCase","concat","domSupport","win","vendorPrefixes","animationend","transitionend","animation","transition","style","_document$createEleme","prefixedEventNames","getVendorPrefixedEventName","prefixMap","stylePropList","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","destroyRef","_React$useState2","setValue","updater","ignoreDestroy","useLayoutEffect","STEP_QUEUE","SkipStep","DoStep","isActive","step","status","_useState2","setStep","_useNextFrame","nextFrameRef","cancelNextFrame","nextFrame","delay","nextFrameId","isCanceled","useNextFrame","_useNextFrame2","index","nextStep","info","doNext","Promise","resolve","then","cacheElementRef","callbackRef","onInternalMotionEnd","event","removeMotionEvents","element","_React$Component","DomWrapper","_super","config","transitionSupport","isSupportTransition","motionName","CSSMotion","_props$visible","visible","_props$removeOnLeave","removeOnLeave","forceRender","leavedClassName","eventProps","supportMotion","nodeRef","wrapperNodeRef","_useStatus","getElement","_ref","_ref$motionEnter","motionEnter","_ref$motionAppear","motionAppear","_ref$motionLeave","motionLeave","motionDeadline","motionLeaveImmediately","onAppearPrepare","onEnterPrepare","onLeavePrepare","onAppearStart","onEnterStart","onLeaveStart","onAppearActive","onEnterActive","onLeaveActive","onAppearEnd","onEnterEnd","onLeaveEnd","onVisibleChanged","asyncVisible","setAsyncVisible","_useState4","setStatus","_useState6","setStyle","mountedRef","deadlineRef","getDomElement","activeRef","deadline","canEnd","currentActive","patchMotionEvents","useDomMotionEvents","eventHandlers","_ref2","_ref3","_ref4","_useStepQueue2","useStepQueue","newStep","onPrepare","_eventHandlers$step","startStep","active","nextStatus","isMounted","firstMountChangeRef","mergedStyle","useStatus","_useStatus2","statusStep","statusStyle","mergedVisible","renderedRef","motionChildren","setNodeRef","mergedProps","_classNames","statusSuffix","className","display","displayName","STATUS_ADD","STATUS_KEEP","STATUS_REMOVE","STATUS_REMOVED","wrapKeyToObject","keyObj","String","parseKeys","map","_excluded","_excluded2","MOTION_PROP_NAMES","CSSMotionList","_this","args","keyEntities","removeKey","nextKeyEntities","state","entity","setState","_this2","_this$props","component","_onVisibleChanged","onAllRemoved","restProps","Component","motionProps","prop","changedVisible","parsedKeyObjects","mixedKeyEntities","prevKeys","currentKeys","list","currentIndex","currentLen","prevKeyObjects","currentKeyObjects","hit","currentKeyObj","obj","matchKey","diffKeys","prevEntity","find","_ref5","getMotion","prefixCls","motion","Mask","zIndex","mask","maskMotion","maskAnimation","maskTransitionName","ownKeys","enumerableOnly","symbols","sym","getOwnPropertyDescriptor","_objectSpread2","_defineProperty","getOwnPropertyDescriptors","defineProperties","_typeof","vendorPrefix","jsCssMap","Webkit","Moz","ms","O","getVendorPrefix","getTransformName","setTransitionProperty","transitionProperty","setTransform","transform","getComputedStyleX","matrix2d","matrix3d","forceRelayout","elem","originalStyle","offsetHeight","css","el","v","getScroll","w","top","ret","method","d","documentElement","body","getScrollLeft","getScrollTop","getOffset","pos","box","x","y","doc","ownerDocument","docElem","getBoundingClientRect","Math","floor","left","clientLeft","clientTop","getClientPosition","defaultView","parentWindow","isWindow","getDocument","nodeType","_RE_NUM_NO_PX","RegExp","RE_POS","CURRENT_STYLE","RUNTIME_STYLE","LEFT","PX","getOffsetDirection","dir","useCssRight","useCssBottom","oppositeOffsetDirection","setLeftTop","offset","position","presetH","presetV","horizontalProperty","verticalProperty","oppositeHorizontalProperty","oppositeVerticalProperty","originalTransition","originalOffset","old","preset","off","_dir","_off","setTransform$1","originalXY","getComputedStyle","getPropertyValue","matrix","parseFloat","getTransformXY","resultXY","xy","match2d","item","setTransformXY","each","isBorderBoxFn","cs","computedStyle","val","rsLeft","pixelLeft","BOX_MODELS","CONTENT_INDEX","PADDING_INDEX","BORDER_INDEX","getPBMWidth","which","j","cssProp","domUtils","getParent","parent","host","getWH","ex","extra","viewportWidth","viewportHeight","docWidth","docHeight","borderBoxValue","width","height","isBorderBox","cssBoxValue","borderBoxValueOrIsBorderBox","refWin","max","documentElementProp","compatMode","cssShow","visibility","getWHIgnoreDisplay","_key2","offsetWidth","options","swap","mix","to","first","charAt","includeMargin","utils","getWindow","ignoreShake","oriOffset","oLeft","toFixed","oTop","tLeft","tTop","useCssTransform","setOffset","clone","overflow","getWindowScrollLeft","getWindowScrollTop","merge","getOffsetParent","positionStyle","nodeName","getParent$1","getVisibleRectForElement","alwaysByViewport","visibleRect","right","Infinity","bottom","navigator","userAgent","clientWidth","min","clientHeight","originalPosition","scrollX","scrollY","documentWidth","scrollWidth","documentHeight","scrollHeight","bodyStyle","overflowX","innerWidth","overflowY","innerHeight","isAncestorFixed","maxVisibleWidth","maxVisibleHeight","getRegion","h","outerWidth","outerHeight","getAlignOffset","region","align","V","H","getElFuturePos","elRegion","refNodeRegion","points","targetOffset","p1","p2","diff","round","isFailX","elFuturePos","isFailY","flip","reg","m","flipOffset","convertOffset","str","offsetLen","parseInt","substring","normalizeOffset","doAlign","tgtRegion","isTgtRegionVisible","newOverflowCfg","fail","newElRegion","adjustX","adjustY","newPoints","l","r","newOffset","newTargetOffset","isCompleteFailX","_newPoints","t","b","_newOffset","_newTargetOffset","isCompleteFailY","isStillFailX","isStillFailY","_newPoints2","size","resizeWidth","resizeHeight","adjustForViewport","alignElement","refNode","isTargetNotOutOfVisible","targetRegion","isOutOfVisibleRect","__getOffsetParent","__getVisibleRectForElement","warned","preWarningFns","warning","valid","message","note","warningOnce","preMessage","resetWarned","noteOnce","obj1","obj2","shallow","refSet","Set","deepEqual","a","level","circular","has","add","newLevel","every","useInternalLayoutEffect","deps","firstMountRef","MapShim","getIndex","some","entry","class_1","__entries__","entries","splice","clear","ctx","_a","isBrowser","global$1","g","requestAnimationFrame$1","Date","now","trailingTimeout","REFRESH_DELAY","transitionKeys","mutationObserverSupported","MutationObserver","ResizeObserverController","connected_","mutationEventsAdded_","mutationsObserver_","observers_","onTransitionEnd_","refresh","leadingCall","trailingCall","lastCallTime","resolvePending","proxy","timeoutCallback","timeStamp","throttle","addObserver","observer","connect_","removeObserver","observers","disconnect_","updateObservers_","activeObservers","gatherActive","hasActive","broadcastActive","observe","attributes","childList","characterData","subtree","disconnect","_b","propertyName","getInstance","instance_","defineConfigurable","getWindowOf","emptyRect","createRectInit","toFloat","getBordersSize","styles","positions","reduce","getHTMLElementContentRect","paddings","positions_1","getPaddings","horizPad","vertPad","boxSizing","isDocumentElement","vertScrollbar","horizScrollbar","abs","isSVGGraphicsElement","SVGGraphicsElement","getBBox","getContentRect","bbox","getSVGContentRect","ResizeObservation","broadcastWidth","broadcastHeight","contentRect_","rect","broadcastRect","ResizeObserverEntry","rectInit","Constr","contentRect","DOMRectReadOnly","ResizeObserverSPI","controller","callbackCtx","activeObservations_","observations_","callback_","controller_","callbackCtx_","Element","observations","unobserve","clearActive","observation","WeakMap","ResizeObserver","monitorResize","prevWidth","prevHeight","resizeObserver","_target$getBoundingCl","fixedWidth","fixedHeight","func","getPoint","point","Align","disabled","onAlign","monitorWindowResize","_ref$monitorBufferTim","monitorBufferTime","cacheRef","childNode","forceAlignPropsRef","_useBuffer","buffer","calledRef","timeoutRef","cancelTrigger","trigger","force","useBuffer","_forceAlignPropsRef$c","latestDisabled","latestTarget","latestAlign","latestOnAlign","_result","_element","_point","activeElement","offsetParent","_getBBox","_element$getBoundingC","_width","_height","isVisible","tgtPoint","pageX","pageY","clientX","clientY","pointInView","alignPoint","container","focus","restoreFocus","_useBuffer2","_forceAlign","cancelForceAlign","setElement","_React$useState4","setPoint","prev","forceAlign","RcAlign","_regeneratorRuntime","Op","desc","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","wrap","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","context","Context","makeInvokeMethod","tryCatch","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","NativeIteratorPrototype","values","Gp","defineIteratorMethods","_invoke","AsyncIterator","PromiseImpl","invoke","reject","record","__await","unwrapped","error","previousPromise","callInvokeWithMethodAndArg","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","resultName","nextLoc","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","isGeneratorFunction","genFun","ctor","mark","awrap","async","iter","reverse","pop","skipTempReset","stop","rootRecord","rval","exception","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","StatusQueue","PopupInner","stretch","destroyPopupOnHide","getRootDomNode","getClassNameFromAlign","onMouseEnter","onMouseLeave","onMouseDown","onTouchStart","onClick","alignRef","elementRef","useState","alignedClassName","setAlignedClassName","_useStretchStyle","targetSize","setTargetSize","sizeStyle","minHeight","minWidth","tgtWidth","tgtHeight","useStretchStyle","_useStretchStyle2","stretchStyle","measureStretchStyle","_useVisibleStatus","doMeasure","setInternalStatus","rafRef","cancelRaf","_callee","_context","useVisibleStatus","_useVisibleStatus2","goNextStatus","alignTimes","setAlignTimes","prepareResolveRef","_alignRef$current","onInternalAlign","popupDomNode","matchAlign","nextAlignedClassName","_prepareResolveRef$cu","onShowPrepare","originHandler","opacity","pointerEvents","alignDisabled","motionRef","motionClassName","motionStyle","mergedClassName","onMouseDownCapture","onTouchStartCapture","MobilePopupInner","_props$mobile","mobile","popupClassName","popupStyle","_props$mobile$popupMo","popupMotion","popupRender","Popup","innerVisible","serInnerVisible","inMobile","setInMobile","cloneProps","agent","vendor","opera","substr","isMobile","popupNode","noop","returnEmptyString","returnDocument","ALL_HANDLERS","PortalComponent","Trigger","_popupVisible","mouseEnterDelay","fireEvents","delaySetPopupVisible","mouseLeaveDelay","clearDelayTimer","_this$popupRef$curren","relatedTarget","popupRef","isFocusToShow","focusTime","focusDelay","preClickTime","preTouchTime","isBlurToHide","blurDelay","preventDefault","setPopupVisible","isContextMenuToShow","close","preTime","isClickToShow","isClickToHide","nextVisible","popupVisible","_this$context","hasPopupMouseDown","mouseDownTimeout","onPopupMouseDown","maskClosable","getPopupDomNode","isContextMenuOnly","getTriggerDOMNode","triggerRef","popupPlacement","builtinPlacements","getPopupClassNameFromAlign","placements","placement","getAlignPopupClassName","_this$props2","onPopupAlign","popupAnimation","popupTransitionName","popup","onPopupClick","_this$state","getPopupAlign","mouseProps","isMouseEnterToShow","onPopupMouseEnter","isMouseLeaveToHide","onPopupMouseLeave","popupContainer","attachId","mountNode","_this$props3","getPopupContainer","attachParent","portalContainer","prevPopupVisible","afterPopupVisibleChange","defaultPopupVisible","componentDidUpdate","currentDocument","clickOutsideHandler","onDocumentClick","touchOutsideHandler","contextMenuOutsideHandler1","onContextMenuClose","contextMenuOutsideHandler2","clearOutsideHandler","_this$popupRef$curren2","popupAlign","placementStr","baseAlign","getAlignFromPlacement","onPopupVisibleChange","delayS","delayTimer","childPros","_this$props4","action","showAction","_this$props5","_this$props6","hideAction","_this$props7","_this$props8","_this$props9","_this$props10","_this$popupRef$curren3","childCallback","_this$props11","autoDestroy","child","newChildProps","onContextMenu","createTwoChains","onMouseMove","onFocus","onBlur","childrenClassName","portal","handlePortalUpdate","getComponent","triggerContextValue","prevState","newState","autoAdjustOverflow","topLeft","leftTop","topRight","rightTop","bottomRight","rightBottom","bottomLeft","leftBottom","showArrow","arrowContent","overlayInnerStyle","role","Tooltip","overlayClassName","_props$trigger","_props$mouseEnterDela","_props$mouseLeaveDela","overlayStyle","_props$prefixCls","onVisibleChange","afterVisibleChange","_props$placement","_props$align","_props$destroyTooltip","destroyTooltipOnHide","defaultVisible","getTooltipContainer","overlay","_props$showArrow","domRef","extraProps","destroyTooltip","keepParent","u","c","f","k","q"],"sourceRoot":""}