rsuite 5.4.4 → 5.5.0

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.
Files changed (37) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/CheckTreePicker/styles/index.less +48 -47
  3. package/Picker/styles/mixin.less +3 -2
  4. package/Sidenav/styles/index.less +52 -57
  5. package/TreePicker/styles/index.less +3 -3
  6. package/cjs/Dropdown/Dropdown.d.ts +5 -0
  7. package/cjs/Dropdown/test/Dropdown.test.d.ts +1 -0
  8. package/cjs/Dropdown/test/Dropdown.test.js +30 -0
  9. package/cjs/InputNumber/InputNumber.d.ts +1 -1
  10. package/cjs/InputNumber/InputNumber.js +36 -6
  11. package/cjs/InputNumber/test/InputNumber.test.d.ts +1 -0
  12. package/cjs/InputNumber/test/InputNumber.test.js +14 -0
  13. package/cjs/MultiCascader/MultiCascader.js +1 -0
  14. package/cjs/RangeSlider/RangeSlider.d.ts +12 -2
  15. package/cjs/RangeSlider/RangeSlider.js +35 -12
  16. package/cjs/utils/treeUtils.js +4 -3
  17. package/dist/rsuite-rtl.css +91 -107
  18. package/dist/rsuite-rtl.min.css +1 -1
  19. package/dist/rsuite-rtl.min.css.map +1 -1
  20. package/dist/rsuite.css +91 -107
  21. package/dist/rsuite.js +6 -6
  22. package/dist/rsuite.min.css +1 -1
  23. package/dist/rsuite.min.css.map +1 -1
  24. package/dist/rsuite.min.js +1 -1
  25. package/dist/rsuite.min.js.map +1 -1
  26. package/esm/Dropdown/Dropdown.d.ts +5 -0
  27. package/esm/Dropdown/test/Dropdown.test.d.ts +1 -0
  28. package/esm/Dropdown/test/Dropdown.test.js +22 -0
  29. package/esm/InputNumber/InputNumber.d.ts +1 -1
  30. package/esm/InputNumber/InputNumber.js +38 -7
  31. package/esm/InputNumber/test/InputNumber.test.d.ts +1 -0
  32. package/esm/InputNumber/test/InputNumber.test.js +7 -0
  33. package/esm/MultiCascader/MultiCascader.js +1 -0
  34. package/esm/RangeSlider/RangeSlider.d.ts +12 -2
  35. package/esm/RangeSlider/RangeSlider.js +35 -12
  36. package/esm/utils/treeUtils.js +6 -3
  37. package/package.json +2 -2
package/dist/rsuite.js CHANGED
@@ -2507,7 +2507,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
2507
2507
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
2508
2508
 
2509
2509
  "use strict";
2510
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\n\nvar _DropdownMenu = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenu */ \"./src/Dropdown/DropdownMenu.tsx\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Sidenav = __webpack_require__(/*! ../Sidenav/Sidenav */ \"./src/Sidenav/Sidenav.tsx\");\n\nvar _deprecatePropType = _interopRequireDefault(__webpack_require__(/*! ../utils/deprecatePropType */ \"./src/utils/deprecatePropType.ts\"));\n\nvar _DropdownItem = _interopRequireDefault(__webpack_require__(/*! ./DropdownItem */ \"./src/Dropdown/DropdownItem.tsx\"));\n\nvar _DropdownContext = _interopRequireDefault(__webpack_require__(/*! ./DropdownContext */ \"./src/Dropdown/DropdownContext.ts\"));\n\nvar _Menu = _interopRequireDefault(__webpack_require__(/*! ../Menu/Menu */ \"./src/Menu/Menu.tsx\"));\n\nvar _DropdownToggle = _interopRequireDefault(__webpack_require__(/*! ./DropdownToggle */ \"./src/Dropdown/DropdownToggle.tsx\"));\n\nvar _MenuContext = _interopRequireDefault(__webpack_require__(/*! ../Menu/MenuContext */ \"./src/Menu/MenuContext.ts\"));\n\nvar _MenuItem = _interopRequireDefault(__webpack_require__(/*! ../Menu/MenuItem */ \"./src/Menu/MenuItem.tsx\"));\n\nvar _kebabCase = _interopRequireDefault(__webpack_require__(/*! lodash/kebabCase */ \"./node_modules/lodash/kebabCase.js\"));\n\nvar _Navbar = __webpack_require__(/*! ../Navbar */ \"./src/Navbar/index.tsx\");\n\nvar _Disclosure = _interopRequireDefault(__webpack_require__(/*! ../Disclosure/Disclosure */ \"./src/Disclosure/Disclosure.tsx\"));\n\nvar _SidenavDropdown = _interopRequireDefault(__webpack_require__(/*! ../Sidenav/SidenavDropdown */ \"./src/Sidenav/SidenavDropdown.tsx\"));\n\nvar _NavContext = _interopRequireDefault(__webpack_require__(/*! ../Nav/NavContext */ \"./src/Nav/NavContext.ts\"));\n\nvar _DropdownState = __webpack_require__(/*! ./DropdownState */ \"./src/Dropdown/DropdownState.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Dropdown/Dropdown.tsx\",\n _this = void 0;\n\n/**\n * The <Dropdown> API\n * When used inside <Sidenav>, renders a <TreeviewRootItem>;\n * Otherwise renders a <MenuRoot>\n */\nvar Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var activeKey = props.activeKey,\n onSelectProp = props.onSelect,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"activeKey\", \"onSelect\"]);\n var _rest$as = rest.as,\n Component = _rest$as === void 0 ? 'div' : _rest$as,\n title = rest.title,\n onClose = rest.onClose,\n onOpen = rest.onOpen,\n onToggle = rest.onToggle,\n eventKey = rest.eventKey,\n _rest$trigger = rest.trigger,\n trigger = _rest$trigger === void 0 ? 'click' : _rest$trigger,\n _rest$placement = rest.placement,\n placement = _rest$placement === void 0 ? 'bottomStart' : _rest$placement,\n toggleAs = rest.toggleAs,\n toggleClassName = rest.toggleClassName,\n _rest$classPrefix = rest.classPrefix,\n classPrefix = _rest$classPrefix === void 0 ? 'dropdown' : _rest$classPrefix,\n className = rest.className,\n disabled = rest.disabled,\n children = rest.children,\n menuStyle = rest.menuStyle,\n style = rest.style,\n toggleProps = (0, _objectWithoutPropertiesLoose2.default)(rest, [\"as\", \"title\", \"onClose\", \"onOpen\", \"onToggle\", \"eventKey\", \"trigger\", \"placement\", \"toggleAs\", \"toggleClassName\", \"classPrefix\", \"className\", \"disabled\", \"children\", \"menuStyle\", \"style\"]);\n\n var _useContext = (0, _react.useContext)(_NavContext.default),\n onSelectFromNav = _useContext.onSelect;\n\n var emitSelect = (0, _react.useCallback)(function (eventKey, event) {\n onSelectProp === null || onSelectProp === void 0 ? void 0 : onSelectProp(eventKey, event); // If <Dropdown> is inside <Nav>, also trigger `onSelect` on <Nav>\n\n onSelectFromNav === null || onSelectFromNav === void 0 ? void 0 : onSelectFromNav(eventKey, event);\n }, [onSelectProp, onSelectFromNav]);\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix;\n\n var _useClassNames2 = (0, _utils.useClassNames)('dropdown-menu'),\n withMenuClassPrefix = _useClassNames2.withClassPrefix,\n mergeMenuClassName = _useClassNames2.merge;\n\n var _useClassNames3 = (0, _utils.useClassNames)('nav-item'),\n withNavItemClassPrefix = _useClassNames3.withClassPrefix,\n mergeNavItemClassNames = _useClassNames3.merge;\n\n var menuButtonTriggers = (0, _react.useMemo)(function () {\n if (!trigger) {\n return undefined;\n }\n\n var triggerMap = {\n hover: 'mouseover',\n click: 'click',\n contextMenu: 'contextmenu'\n };\n\n if (!Array.isArray(trigger)) {\n return [triggerMap[trigger]];\n }\n\n return trigger.map(function (t) {\n return triggerMap[t];\n });\n }, [trigger]);\n var parentMenu = (0, _react.useContext)(_MenuContext.default);\n var sidenav = (0, _react.useContext)(_Sidenav.SidenavContext);\n var navbar = (0, _react.useContext)(_Navbar.NavbarContext);\n\n var _useReducer = (0, _react.useReducer)(_DropdownState.reducer, _DropdownState.initialState),\n items = _useReducer[0].items,\n dispatch = _useReducer[1];\n\n var hasSelectedItem = (0, _react.useMemo)(function () {\n return items.some(function (item) {\n return item.props.selected;\n });\n }, [items]);\n var dropdownContextValue = (0, _react.useMemo)(function () {\n return {\n activeKey: activeKey,\n onSelect: emitSelect,\n hasSelectedItem: hasSelectedItem,\n dispatch: dispatch\n };\n }, [activeKey, emitSelect, hasSelectedItem, dispatch]); // Render a disclosure when inside expanded <Sidenav>\n\n if (sidenav !== null && sidenav !== void 0 && sidenav.expanded) {\n return /*#__PURE__*/_react.default.createElement(_DropdownContext.default.Provider, {\n value: dropdownContextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 177,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_SidenavDropdown.default, (0, _extends2.default)({\n ref: ref\n }, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 178,\n columnNumber: 9\n }\n })));\n } // Renders a disclosure when used inside <Navbar>\n\n\n if (navbar) {\n return /*#__PURE__*/_react.default.createElement(_DropdownContext.default.Provider, {\n value: dropdownContextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 186,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Disclosure.default, {\n hideOnClickOutside: true,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 187,\n columnNumber: 9\n }\n }, function (_ref, containerRef) {\n var _withClassPrefix;\n\n var open = _ref.open;\n var classes = merge(className, withClassPrefix((_withClassPrefix = {}, _withClassPrefix[\"placement-\" + (0, _kebabCase.default)((0, _utils.placementPolyfill)(placement))] = !!placement, _withClassPrefix.disabled = disabled, _withClassPrefix.open = open, _withClassPrefix)));\n return /*#__PURE__*/_react.default.createElement(Component, {\n ref: (0, _utils.mergeRefs)(ref, containerRef),\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 199,\n columnNumber: 15\n }\n }, /*#__PURE__*/_react.default.createElement(_Disclosure.default.Button, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 200,\n columnNumber: 17\n }\n }, function (buttonProps, buttonRef) {\n return /*#__PURE__*/_react.default.createElement(_DropdownToggle.default, (0, _extends2.default)({\n ref: buttonRef,\n as: toggleAs,\n className: toggleClassName,\n placement: placement,\n disabled: disabled\n }, (0, _omit.default)(buttonProps, ['open']), toggleProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 202,\n columnNumber: 21\n }\n }), title);\n }), /*#__PURE__*/_react.default.createElement(_Disclosure.default.Content, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 215,\n columnNumber: 17\n }\n }, function (_ref2, elementRef) {\n var open = _ref2.open;\n var menuClassName = mergeMenuClassName(className, withMenuClassPrefix());\n return /*#__PURE__*/_react.default.createElement(\"ul\", {\n ref: elementRef,\n className: menuClassName,\n style: menuStyle,\n hidden: !open,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 219,\n columnNumber: 23\n }\n }, children);\n }));\n }));\n }\n\n var renderMenuButton = function renderMenuButton(menuButtonProps, menuButtonRef) {\n return /*#__PURE__*/_react.default.createElement(_DropdownToggle.default, (0, _extends2.default)({\n ref: menuButtonRef,\n as: toggleAs,\n className: toggleClassName,\n placement: placement,\n disabled: disabled\n }, (0, _omit.default)(menuButtonProps, ['open']), (0, _omit.default)(toggleProps, ['data-testid']), {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 239,\n columnNumber: 5\n }\n }), title);\n };\n\n if (parentMenu) {\n renderMenuButton = function renderMenuButton(menuButtonProps, buttonRef) {\n return /*#__PURE__*/_react.default.createElement(_MenuItem.default, {\n disabled: disabled,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 254,\n columnNumber: 7\n }\n }, function (_ref3, menuitemRef) {\n var active = _ref3.active,\n menuitemProps = (0, _objectWithoutPropertiesLoose2.default)(_ref3, [\"active\"]);\n return /*#__PURE__*/_react.default.createElement(_DropdownToggle.default, (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(buttonRef, menuitemRef),\n as: toggleAs,\n className: mergeNavItemClassNames(toggleClassName, withNavItemClassPrefix({\n focus: active\n }))\n }, menuButtonProps, (0, _omit.default)(menuitemProps, ['onClick']), (0, _omit.default)(toggleProps, 'data-testid'), {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 257,\n columnNumber: 13\n }\n }), title);\n });\n };\n }\n\n return /*#__PURE__*/_react.default.createElement(_DropdownContext.default.Provider, {\n value: dropdownContextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 279,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(_Menu.default, {\n menuButtonText: title,\n renderMenuButton: renderMenuButton,\n openMenuOn: menuButtonTriggers,\n renderMenuPopup: function renderMenuPopup(_ref4, popupRef) {\n var open = _ref4.open,\n popupProps = (0, _objectWithoutPropertiesLoose2.default)(_ref4, [\"open\"]);\n var menuClassName = mergeMenuClassName(className, withMenuClassPrefix({})); // When inside a collapsed <Sidenav>, render a header in menu\n\n var showHeader = !!sidenav;\n return /*#__PURE__*/_react.default.createElement(\"ul\", (0, _extends2.default)({\n ref: popupRef,\n className: menuClassName,\n style: menuStyle,\n hidden: !open\n }, popupProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 290,\n columnNumber: 13\n }\n }), showHeader && /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('header'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 297,\n columnNumber: 30\n }\n }, title), children);\n },\n onToggleMenu: function onToggleMenu(open, event) {\n onToggle === null || onToggle === void 0 ? void 0 : onToggle(open);\n sidenav === null || sidenav === void 0 ? void 0 : sidenav.onOpenChange(eventKey, event);\n\n if (open) {\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n } else {\n onClose === null || onClose === void 0 ? void 0 : onClose();\n }\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 280,\n columnNumber: 7\n }\n }, function (_ref5, menuContainerRef) {\n var _withClassPrefix2;\n\n var open = _ref5.open,\n menuContainer = (0, _objectWithoutPropertiesLoose2.default)(_ref5, [\"open\"]);\n var classes = merge(className, withClassPrefix((_withClassPrefix2 = {}, _withClassPrefix2[\"placement-\" + (0, _kebabCase.default)((0, _utils.placementPolyfill)(placement))] = !!placement, _withClassPrefix2.disabled = disabled, _withClassPrefix2.open = open, _withClassPrefix2.submenu = !!parentMenu, _withClassPrefix2['selected-within'] = hasSelectedItem, _withClassPrefix2)));\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(ref, menuContainerRef),\n className: classes\n }, menuContainer, (0, _pick.default)(toggleProps, ['data-testid']), {\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 324,\n columnNumber: 13\n }\n }));\n }));\n});\n\nDropdown.Item = _DropdownItem.default;\nDropdown.Menu = _DropdownMenu.default;\nDropdown.displayName = 'Dropdown';\nDropdown.propTypes = {\n activeKey: _propTypes.default.any,\n classPrefix: _propTypes.default.string,\n trigger: _propTypes.default.oneOfType([_propTypes.default.array, _propTypes.default.oneOf(['click', 'hover', 'contextMenu'])]),\n placement: _propTypes.default.oneOf(_utils.PLACEMENT_8),\n title: _propTypes.default.node,\n disabled: _propTypes.default.bool,\n icon: _propTypes.default.node,\n menuStyle: _propTypes.default.object,\n className: _propTypes.default.string,\n toggleClassName: _propTypes.default.string,\n children: _propTypes.default.node,\n open: (0, _deprecatePropType.default)(_propTypes.default.bool),\n eventKey: _propTypes.default.any,\n as: _propTypes.default.elementType,\n toggleAs: _propTypes.default.elementType,\n noCaret: _propTypes.default.bool,\n style: _propTypes.default.object,\n onClose: _propTypes.default.func,\n onOpen: _propTypes.default.func,\n onToggle: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onMouseEnter: _propTypes.default.func,\n onMouseLeave: _propTypes.default.func,\n onContextMenu: _propTypes.default.func,\n onClick: _propTypes.default.func,\n renderToggle: _propTypes.default.func\n};\nvar _default = Dropdown;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Dropdown/Dropdown.tsx?");
2510
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\n\nvar _DropdownMenu = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenu */ \"./src/Dropdown/DropdownMenu.tsx\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Sidenav = __webpack_require__(/*! ../Sidenav/Sidenav */ \"./src/Sidenav/Sidenav.tsx\");\n\nvar _deprecatePropType = _interopRequireDefault(__webpack_require__(/*! ../utils/deprecatePropType */ \"./src/utils/deprecatePropType.ts\"));\n\nvar _DropdownItem = _interopRequireDefault(__webpack_require__(/*! ./DropdownItem */ \"./src/Dropdown/DropdownItem.tsx\"));\n\nvar _DropdownContext = _interopRequireDefault(__webpack_require__(/*! ./DropdownContext */ \"./src/Dropdown/DropdownContext.ts\"));\n\nvar _Menu = _interopRequireDefault(__webpack_require__(/*! ../Menu/Menu */ \"./src/Menu/Menu.tsx\"));\n\nvar _DropdownToggle = _interopRequireDefault(__webpack_require__(/*! ./DropdownToggle */ \"./src/Dropdown/DropdownToggle.tsx\"));\n\nvar _MenuContext = _interopRequireDefault(__webpack_require__(/*! ../Menu/MenuContext */ \"./src/Menu/MenuContext.ts\"));\n\nvar _MenuItem = _interopRequireDefault(__webpack_require__(/*! ../Menu/MenuItem */ \"./src/Menu/MenuItem.tsx\"));\n\nvar _kebabCase = _interopRequireDefault(__webpack_require__(/*! lodash/kebabCase */ \"./node_modules/lodash/kebabCase.js\"));\n\nvar _Navbar = __webpack_require__(/*! ../Navbar */ \"./src/Navbar/index.tsx\");\n\nvar _Disclosure = _interopRequireDefault(__webpack_require__(/*! ../Disclosure/Disclosure */ \"./src/Disclosure/Disclosure.tsx\"));\n\nvar _SidenavDropdown = _interopRequireDefault(__webpack_require__(/*! ../Sidenav/SidenavDropdown */ \"./src/Sidenav/SidenavDropdown.tsx\"));\n\nvar _NavContext = _interopRequireDefault(__webpack_require__(/*! ../Nav/NavContext */ \"./src/Nav/NavContext.ts\"));\n\nvar _DropdownState = __webpack_require__(/*! ./DropdownState */ \"./src/Dropdown/DropdownState.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Dropdown/Dropdown.tsx\",\n _this = void 0;\n\n/**\n * The <Dropdown> API\n * When used inside <Sidenav>, renders a <TreeviewRootItem>;\n * Otherwise renders a <MenuRoot>\n */\nvar Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var activeKey = props.activeKey,\n onSelectProp = props.onSelect,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"activeKey\", \"onSelect\"]);\n var _rest$as = rest.as,\n Component = _rest$as === void 0 ? 'div' : _rest$as,\n title = rest.title,\n onClose = rest.onClose,\n onOpen = rest.onOpen,\n onToggle = rest.onToggle,\n eventKey = rest.eventKey,\n _rest$trigger = rest.trigger,\n trigger = _rest$trigger === void 0 ? 'click' : _rest$trigger,\n _rest$placement = rest.placement,\n placement = _rest$placement === void 0 ? 'bottomStart' : _rest$placement,\n toggleAs = rest.toggleAs,\n toggleClassName = rest.toggleClassName,\n _rest$classPrefix = rest.classPrefix,\n classPrefix = _rest$classPrefix === void 0 ? 'dropdown' : _rest$classPrefix,\n className = rest.className,\n disabled = rest.disabled,\n children = rest.children,\n menuStyle = rest.menuStyle,\n style = rest.style,\n toggleProps = (0, _objectWithoutPropertiesLoose2.default)(rest, [\"as\", \"title\", \"onClose\", \"onOpen\", \"onToggle\", \"eventKey\", \"trigger\", \"placement\", \"toggleAs\", \"toggleClassName\", \"classPrefix\", \"className\", \"disabled\", \"children\", \"menuStyle\", \"style\"]);\n\n var _useContext = (0, _react.useContext)(_NavContext.default),\n onSelectFromNav = _useContext.onSelect;\n\n var emitSelect = (0, _react.useCallback)(function (eventKey, event) {\n onSelectProp === null || onSelectProp === void 0 ? void 0 : onSelectProp(eventKey, event); // If <Dropdown> is inside <Nav>, also trigger `onSelect` on <Nav>\n\n onSelectFromNav === null || onSelectFromNav === void 0 ? void 0 : onSelectFromNav(eventKey, event);\n }, [onSelectProp, onSelectFromNav]);\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix;\n\n var _useClassNames2 = (0, _utils.useClassNames)('dropdown-menu'),\n withMenuClassPrefix = _useClassNames2.withClassPrefix,\n mergeMenuClassName = _useClassNames2.merge;\n\n var _useClassNames3 = (0, _utils.useClassNames)('nav-item'),\n withNavItemClassPrefix = _useClassNames3.withClassPrefix,\n mergeNavItemClassNames = _useClassNames3.merge;\n\n var menuButtonTriggers = (0, _react.useMemo)(function () {\n if (!trigger) {\n return undefined;\n }\n\n var triggerMap = {\n hover: 'mouseover',\n click: 'click',\n contextMenu: 'contextmenu'\n };\n\n if (!Array.isArray(trigger)) {\n return [triggerMap[trigger]];\n }\n\n return trigger.map(function (t) {\n return triggerMap[t];\n });\n }, [trigger]);\n var parentMenu = (0, _react.useContext)(_MenuContext.default);\n var sidenav = (0, _react.useContext)(_Sidenav.SidenavContext);\n var navbar = (0, _react.useContext)(_Navbar.NavbarContext);\n\n var _useReducer = (0, _react.useReducer)(_DropdownState.reducer, _DropdownState.initialState),\n items = _useReducer[0].items,\n dispatch = _useReducer[1];\n\n var hasSelectedItem = (0, _react.useMemo)(function () {\n return items.some(function (item) {\n return item.props.selected;\n });\n }, [items]);\n var dropdownContextValue = (0, _react.useMemo)(function () {\n return {\n activeKey: activeKey,\n onSelect: emitSelect,\n hasSelectedItem: hasSelectedItem,\n dispatch: dispatch\n };\n }, [activeKey, emitSelect, hasSelectedItem, dispatch]); // Render a disclosure when inside expanded <Sidenav>\n\n if (sidenav !== null && sidenav !== void 0 && sidenav.expanded) {\n return /*#__PURE__*/_react.default.createElement(_DropdownContext.default.Provider, {\n value: dropdownContextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 187,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_SidenavDropdown.default, (0, _extends2.default)({\n ref: ref\n }, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 188,\n columnNumber: 9\n }\n })));\n } // Renders a disclosure when used inside <Navbar>\n\n\n if (navbar) {\n return /*#__PURE__*/_react.default.createElement(_DropdownContext.default.Provider, {\n value: dropdownContextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 196,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Disclosure.default, {\n hideOnClickOutside: true,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 197,\n columnNumber: 9\n }\n }, function (_ref, containerRef) {\n var _withClassPrefix;\n\n var open = _ref.open;\n var classes = merge(className, withClassPrefix((_withClassPrefix = {}, _withClassPrefix[\"placement-\" + (0, _kebabCase.default)((0, _utils.placementPolyfill)(placement))] = !!placement, _withClassPrefix.disabled = disabled, _withClassPrefix.open = open, _withClassPrefix)));\n return /*#__PURE__*/_react.default.createElement(Component, {\n ref: (0, _utils.mergeRefs)(ref, containerRef),\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 209,\n columnNumber: 15\n }\n }, /*#__PURE__*/_react.default.createElement(_Disclosure.default.Button, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 210,\n columnNumber: 17\n }\n }, function (buttonProps, buttonRef) {\n return /*#__PURE__*/_react.default.createElement(_DropdownToggle.default, (0, _extends2.default)({\n ref: buttonRef,\n as: toggleAs,\n className: toggleClassName,\n placement: placement,\n disabled: disabled\n }, (0, _omit.default)(buttonProps, ['open']), toggleProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 212,\n columnNumber: 21\n }\n }), title);\n }), /*#__PURE__*/_react.default.createElement(_Disclosure.default.Content, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 225,\n columnNumber: 17\n }\n }, function (_ref2, elementRef) {\n var open = _ref2.open;\n var menuClassName = mergeMenuClassName(className, withMenuClassPrefix());\n return /*#__PURE__*/_react.default.createElement(\"ul\", {\n ref: elementRef,\n className: menuClassName,\n style: menuStyle,\n hidden: !open,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 229,\n columnNumber: 23\n }\n }, children);\n }));\n }));\n }\n\n var renderMenuButton = function renderMenuButton(menuButtonProps, menuButtonRef) {\n return /*#__PURE__*/_react.default.createElement(_DropdownToggle.default, (0, _extends2.default)({\n ref: menuButtonRef,\n as: toggleAs,\n className: toggleClassName,\n placement: placement,\n disabled: disabled\n }, (0, _omit.default)(menuButtonProps, ['open']), (0, _omit.default)(toggleProps, ['data-testid']), {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 249,\n columnNumber: 5\n }\n }), title);\n };\n\n if (parentMenu) {\n renderMenuButton = function renderMenuButton(menuButtonProps, buttonRef) {\n return /*#__PURE__*/_react.default.createElement(_MenuItem.default, {\n disabled: disabled,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 264,\n columnNumber: 7\n }\n }, function (_ref3, menuitemRef) {\n var active = _ref3.active,\n menuitemProps = (0, _objectWithoutPropertiesLoose2.default)(_ref3, [\"active\"]);\n return /*#__PURE__*/_react.default.createElement(_DropdownToggle.default, (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(buttonRef, menuitemRef),\n as: toggleAs,\n className: mergeNavItemClassNames(toggleClassName, withNavItemClassPrefix({\n focus: active\n }))\n }, menuButtonProps, (0, _omit.default)(menuitemProps, ['onClick']), (0, _omit.default)(toggleProps, 'data-testid'), {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 267,\n columnNumber: 13\n }\n }), title);\n });\n };\n }\n\n return /*#__PURE__*/_react.default.createElement(_DropdownContext.default.Provider, {\n value: dropdownContextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 289,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(_Menu.default, {\n menuButtonText: title,\n renderMenuButton: renderMenuButton,\n openMenuOn: menuButtonTriggers,\n renderMenuPopup: function renderMenuPopup(_ref4, popupRef) {\n var open = _ref4.open,\n popupProps = (0, _objectWithoutPropertiesLoose2.default)(_ref4, [\"open\"]);\n var menuClassName = mergeMenuClassName(className, withMenuClassPrefix({})); // When inside a collapsed <Sidenav>, render a header in menu\n\n var showHeader = !!sidenav;\n return /*#__PURE__*/_react.default.createElement(\"ul\", (0, _extends2.default)({\n ref: popupRef,\n className: menuClassName,\n style: menuStyle,\n hidden: !open\n }, popupProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 300,\n columnNumber: 13\n }\n }), showHeader && /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('header'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 307,\n columnNumber: 30\n }\n }, title), children);\n },\n onToggleMenu: function onToggleMenu(open, event) {\n onToggle === null || onToggle === void 0 ? void 0 : onToggle(open);\n sidenav === null || sidenav === void 0 ? void 0 : sidenav.onOpenChange(eventKey, event);\n\n if (open) {\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n } else {\n onClose === null || onClose === void 0 ? void 0 : onClose();\n }\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 290,\n columnNumber: 7\n }\n }, function (_ref5, menuContainerRef) {\n var _withClassPrefix2;\n\n var open = _ref5.open,\n menuContainer = (0, _objectWithoutPropertiesLoose2.default)(_ref5, [\"open\"]);\n var classes = merge(className, withClassPrefix((_withClassPrefix2 = {}, _withClassPrefix2[\"placement-\" + (0, _kebabCase.default)((0, _utils.placementPolyfill)(placement))] = !!placement, _withClassPrefix2.disabled = disabled, _withClassPrefix2.open = open, _withClassPrefix2.submenu = !!parentMenu, _withClassPrefix2['selected-within'] = hasSelectedItem, _withClassPrefix2)));\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(ref, menuContainerRef),\n className: classes\n }, menuContainer, (0, _pick.default)(toggleProps, ['data-testid']), {\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 334,\n columnNumber: 13\n }\n }));\n }));\n});\n\nDropdown.Item = _DropdownItem.default;\nDropdown.Menu = _DropdownMenu.default;\nDropdown.displayName = 'Dropdown';\nDropdown.propTypes = {\n activeKey: _propTypes.default.any,\n classPrefix: _propTypes.default.string,\n trigger: _propTypes.default.oneOfType([_propTypes.default.array, _propTypes.default.oneOf(['click', 'hover', 'contextMenu'])]),\n placement: _propTypes.default.oneOf(_utils.PLACEMENT_8),\n title: _propTypes.default.node,\n disabled: _propTypes.default.bool,\n icon: _propTypes.default.node,\n menuStyle: _propTypes.default.object,\n className: _propTypes.default.string,\n toggleClassName: _propTypes.default.string,\n children: _propTypes.default.node,\n open: (0, _deprecatePropType.default)(_propTypes.default.bool),\n eventKey: _propTypes.default.any,\n as: _propTypes.default.elementType,\n toggleAs: _propTypes.default.elementType,\n noCaret: _propTypes.default.bool,\n style: _propTypes.default.object,\n onClose: _propTypes.default.func,\n onOpen: _propTypes.default.func,\n onToggle: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onMouseEnter: _propTypes.default.func,\n onMouseLeave: _propTypes.default.func,\n onContextMenu: _propTypes.default.func,\n onClick: _propTypes.default.func,\n renderToggle: _propTypes.default.func\n};\nvar _default = Dropdown;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Dropdown/Dropdown.tsx?");
2511
2511
 
2512
2512
  /***/ }),
2513
2513
 
@@ -2925,7 +2925,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
2925
2925
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
2926
2926
 
2927
2927
  "use strict";
2928
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _AngleUp = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleUp */ \"./node_modules/@rsuite/icons/legacy/AngleUp.js\"));\n\nvar _AngleDown = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleDown */ \"./node_modules/@rsuite/icons/legacy/AngleDown.js\"));\n\nvar _on = _interopRequireDefault(__webpack_require__(/*! dom-lib/on */ \"./node_modules/dom-lib/esm/on.js\"));\n\nvar _InputGroup = _interopRequireDefault(__webpack_require__(/*! ../InputGroup/InputGroup */ \"./src/InputGroup/InputGroup.tsx\"));\n\nvar _InputGroupAddon = _interopRequireDefault(__webpack_require__(/*! ../InputGroup/InputGroupAddon */ \"./src/InputGroup/InputGroupAddon.tsx\"));\n\nvar _Input = _interopRequireDefault(__webpack_require__(/*! ../Input */ \"./src/Input/index.tsx\"));\n\nvar _Button = _interopRequireDefault(__webpack_require__(/*! ../Button */ \"./src/Button/index.tsx\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/InputNumber/InputNumber.tsx\",\n _this = void 0;\n\n/**\n * Check if the value is a number.\n * @param value\n */\nvar isNumber = function isNumber(value) {\n return /(^-?|^\\+?|^\\d?)\\d*\\.\\d+$/.test(value + '');\n};\n/**\n * Get the length of the decimal.\n * @param value\n */\n\n\nfunction getDecimalLength(value) {\n if (isNumber(value)) {\n return value.toString().split('.')[1].length;\n }\n\n return 0;\n}\n/**\n * Get the value after the decimal point.\n * @param values\n */\n\n\nfunction decimals() {\n for (var _len = arguments.length, values = new Array(_len), _key = 0; _key < _len; _key++) {\n values[_key] = arguments[_key];\n }\n\n var lengths = values.map(getDecimalLength);\n return Math.max.apply(Math, lengths);\n}\n/**\n * Disable the upper limit of the number.\n * @param value\n * @param max\n */\n\n\nfunction disableMaxValue(value, max) {\n if (!(0, _isNil.default)(value)) {\n return +value >= max;\n }\n\n return false;\n}\n/**\n * Disable the lower limit of the number.\n * @param value\n * @param min\n */\n\n\nfunction disableMinValue(value, min) {\n if (!(0, _isNil.default)(value)) {\n return +value <= min;\n }\n\n return false;\n}\n\nvar InputNumber = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? _InputGroup.default : _props$as,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'input-number' : _props$classPrefix,\n disabled = props.disabled,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n valueProp = props.value,\n defaultValue = props.defaultValue,\n size = props.size,\n prefixElement = props.prefix,\n postfix = props.postfix,\n _props$step = props.step,\n step = _props$step === void 0 ? 1 : _props$step,\n _props$buttonAppearan = props.buttonAppearance,\n buttonAppearance = _props$buttonAppearan === void 0 ? 'subtle' : _props$buttonAppearan,\n _props$min = props.min,\n min = _props$min === void 0 ? -Infinity : _props$min,\n _props$max = props.max,\n max = _props$max === void 0 ? Infinity : _props$max,\n _props$scrollable = props.scrollable,\n scrollable = _props$scrollable === void 0 ? true : _props$scrollable,\n onChange = props.onChange,\n onWheel = props.onWheel,\n restProps = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"className\", \"classPrefix\", \"disabled\", \"readOnly\", \"plaintext\", \"value\", \"defaultValue\", \"size\", \"prefix\", \"postfix\", \"step\", \"buttonAppearance\", \"min\", \"max\", \"scrollable\", \"onChange\", \"onWheel\"]);\n\n var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1];\n\n var _useState = (0, _react.useState)(function () {\n return disableMaxValue(value, max);\n }),\n disabledUpButton = _useState[0],\n setDisabledUpButton = _useState[1];\n\n var _useState2 = (0, _react.useState)(function () {\n return disableMinValue(value, min);\n }),\n disabledDownButton = _useState2[0],\n setDisabledDownButton = _useState2[1];\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n\n var classes = merge(className, withClassPrefix());\n\n var _partitionHTMLProps = (0, _utils.partitionHTMLProps)(restProps),\n htmlInputProps = _partitionHTMLProps[0],\n rest = _partitionHTMLProps[1];\n\n var inputRef = (0, _react.useRef)();\n var handleChangeValue = (0, _react.useCallback)(function (currentValue, event) {\n if (currentValue !== value) {\n // Disable the up button when the value is greater than the maximum value.\n setDisabledUpButton(disableMaxValue(currentValue, max)); // Disable the down button when the value is greater than the minimum value.\n\n setDisabledDownButton(disableMinValue(currentValue, min));\n setValue(currentValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(currentValue, event);\n }\n }, [max, min, onChange, setValue, value]);\n var getSafeValue = (0, _react.useCallback)(function (value) {\n if (!Number.isNaN(value)) {\n if (+value > max) {\n value = max;\n }\n\n if (+value < min) {\n value = min;\n }\n } else {\n value = '';\n }\n\n return value.toString();\n }, [max, min]);\n var handlePlus = (0, _react.useCallback)(function (event) {\n var val = +(value || 0);\n var bit = decimals(val, step);\n handleChangeValue(getSafeValue((val + step).toFixed(bit)), event);\n }, [getSafeValue, handleChangeValue, step, value]);\n var handleMinus = (0, _react.useCallback)(function (event) {\n var val = +(value || 0);\n var bit = decimals(val, step);\n handleChangeValue(getSafeValue((val - step).toFixed(bit)), event);\n }, [getSafeValue, handleChangeValue, step, value]);\n var handleWheel = (0, _react.useCallback)(function (event) {\n if (!disabled && !readOnly && event.target === document.activeElement) {\n event.preventDefault();\n var delta = event['wheelDelta'] || -event.deltaY || -(event === null || event === void 0 ? void 0 : event.detail);\n\n if (delta > 0) {\n handleMinus(event);\n }\n\n if (delta < 0) {\n handlePlus(event);\n }\n }\n\n onWheel === null || onWheel === void 0 ? void 0 : onWheel(event);\n }, [disabled, handleMinus, handlePlus, onWheel, readOnly]);\n var handleChange = (0, _react.useCallback)(function (value, event) {\n if (!/^-?(?:\\d+)?(\\.)?\\d*$/.test(value) && value !== '') {\n return;\n }\n\n handleChangeValue(value, event);\n }, [handleChangeValue]);\n var handleBlur = (0, _react.useCallback)(function (event) {\n var _event$target;\n\n var targetValue = Number.parseFloat((_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.value);\n handleChangeValue(getSafeValue(targetValue), event);\n }, [getSafeValue, handleChangeValue]);\n (0, _react.useEffect)(function () {\n var wheelListener;\n\n if (inputRef.current && scrollable) {\n wheelListener = (0, _on.default)(inputRef.current, 'wheel', handleWheel, {\n passive: false\n });\n }\n\n return function () {\n var _wheelListener;\n\n (_wheelListener = wheelListener) === null || _wheelListener === void 0 ? void 0 : _wheelListener.off();\n };\n }, [handleWheel, scrollable]);\n\n var input = /*#__PURE__*/_react.default.createElement(_Input.default, (0, _extends2.default)({}, htmlInputProps, {\n type: \"text\",\n autoComplete: \"off\",\n step: step,\n inputRef: inputRef,\n onChange: handleChange,\n onBlur: (0, _utils.createChainedFunction)(handleBlur, htmlInputProps === null || htmlInputProps === void 0 ? void 0 : htmlInputProps.onBlur),\n value: (0, _isNil.default)(value) ? '' : \"\" + value,\n disabled: disabled,\n readOnly: readOnly,\n plaintext: plaintext,\n ref: plaintext ? ref : undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 230,\n columnNumber: 5\n }\n }));\n\n if (plaintext) {\n return input;\n }\n\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n ref: ref,\n className: classes,\n disabled: disabled,\n size: size,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 251,\n columnNumber: 5\n }\n }), prefixElement && /*#__PURE__*/_react.default.createElement(_InputGroupAddon.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 252,\n columnNumber: 25\n }\n }, prefixElement), input, /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix('btn-group-vertical'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 254,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Button.default, {\n appearance: buttonAppearance,\n className: prefix('touchspin-up'),\n onClick: handlePlus,\n disabled: disabledUpButton || disabled || readOnly,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 255,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_AngleUp.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 261,\n columnNumber: 11\n }\n })), /*#__PURE__*/_react.default.createElement(_Button.default, {\n appearance: buttonAppearance,\n className: prefix('touchspin-down'),\n onClick: handleMinus,\n disabled: disabledDownButton || disabled || readOnly,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 263,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_AngleDown.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 269,\n columnNumber: 11\n }\n }))), postfix && /*#__PURE__*/_react.default.createElement(_InputGroupAddon.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 272,\n columnNumber: 19\n }\n }, postfix));\n});\n\nInputNumber.displayName = 'InputNumber';\nInputNumber.propTypes = {\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n min: _propTypes.default.number,\n max: _propTypes.default.number,\n step: _propTypes.default.number,\n value: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n defaultValue: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n prefix: _propTypes.default.node,\n postfix: _propTypes.default.node,\n disabled: _propTypes.default.bool,\n readOnly: _propTypes.default.bool,\n plaintext: _propTypes.default.bool,\n scrollable: _propTypes.default.bool,\n size: _propTypes.default.oneOf(['lg', 'md', 'sm', 'xs']),\n buttonAppearance: _propTypes.default.oneOf(['default', 'primary', 'link', 'subtle', 'ghost']),\n onWheel: _propTypes.default.func,\n onChange: _propTypes.default.func\n};\nvar _default = InputNumber;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/InputNumber/InputNumber.tsx?");
2928
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _AngleUp = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleUp */ \"./node_modules/@rsuite/icons/legacy/AngleUp.js\"));\n\nvar _AngleDown = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleDown */ \"./node_modules/@rsuite/icons/legacy/AngleDown.js\"));\n\nvar _on = _interopRequireDefault(__webpack_require__(/*! dom-lib/on */ \"./node_modules/dom-lib/esm/on.js\"));\n\nvar _InputGroup = _interopRequireDefault(__webpack_require__(/*! ../InputGroup/InputGroup */ \"./src/InputGroup/InputGroup.tsx\"));\n\nvar _InputGroupAddon = _interopRequireDefault(__webpack_require__(/*! ../InputGroup/InputGroupAddon */ \"./src/InputGroup/InputGroupAddon.tsx\"));\n\nvar _Input = _interopRequireDefault(__webpack_require__(/*! ../Input */ \"./src/Input/index.tsx\"));\n\nvar _Button = _interopRequireDefault(__webpack_require__(/*! ../Button */ \"./src/Button/index.tsx\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/InputNumber/InputNumber.tsx\",\n _this = void 0;\n\n/**\n * Check if the value is a number.\n * @param value\n */\nvar isNumber = function isNumber(value) {\n return /(^-?|^\\+?|^\\d?)\\d*\\.\\d+$/.test(value + '');\n};\n/**\n * Get the length of the decimal.\n * @param value\n */\n\n\nfunction getDecimalLength(value) {\n if (isNumber(value)) {\n return value.toString().split('.')[1].length;\n }\n\n return 0;\n}\n/**\n * Get the value after the decimal point.\n * @param values\n */\n\n\nfunction decimals() {\n for (var _len = arguments.length, values = new Array(_len), _key = 0; _key < _len; _key++) {\n values[_key] = arguments[_key];\n }\n\n var lengths = values.map(getDecimalLength);\n return Math.max.apply(Math, lengths);\n}\n/**\n * Disable the upper limit of the number.\n * @param value\n * @param max\n */\n\n\nfunction disableMaxValue(value, max) {\n if (!(0, _isNil.default)(value)) {\n return +value >= max;\n }\n\n return false;\n}\n/**\n * Disable the lower limit of the number.\n * @param value\n * @param min\n */\n\n\nfunction disableMinValue(value, min) {\n if (!(0, _isNil.default)(value)) {\n return +value <= min;\n }\n\n return false;\n}\n\nvar InputNumber = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? _InputGroup.default : _props$as,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'input-number' : _props$classPrefix,\n disabled = props.disabled,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n valueProp = props.value,\n defaultValue = props.defaultValue,\n size = props.size,\n prefixElement = props.prefix,\n postfix = props.postfix,\n _props$step = props.step,\n step = _props$step === void 0 ? 1 : _props$step,\n _props$buttonAppearan = props.buttonAppearance,\n buttonAppearance = _props$buttonAppearan === void 0 ? 'subtle' : _props$buttonAppearan,\n minProp = props.min,\n maxProp = props.max,\n _props$scrollable = props.scrollable,\n scrollable = _props$scrollable === void 0 ? true : _props$scrollable,\n onChange = props.onChange,\n onWheel = props.onWheel,\n restProps = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"className\", \"classPrefix\", \"disabled\", \"readOnly\", \"plaintext\", \"value\", \"defaultValue\", \"size\", \"prefix\", \"postfix\", \"step\", \"buttonAppearance\", \"min\", \"max\", \"scrollable\", \"onChange\", \"onWheel\"]);\n var min = minProp !== null && minProp !== void 0 ? minProp : -Infinity;\n var max = maxProp !== null && maxProp !== void 0 ? maxProp : Infinity;\n\n var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1];\n\n var _useState = (0, _react.useState)(function () {\n return disableMaxValue(value, max);\n }),\n disabledUpButton = _useState[0],\n setDisabledUpButton = _useState[1];\n\n var _useState2 = (0, _react.useState)(function () {\n return disableMinValue(value, min);\n }),\n disabledDownButton = _useState2[0],\n setDisabledDownButton = _useState2[1];\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n\n var classes = merge(className, withClassPrefix());\n\n var _partitionHTMLProps = (0, _utils.partitionHTMLProps)(restProps),\n htmlInputProps = _partitionHTMLProps[0],\n rest = _partitionHTMLProps[1];\n\n var inputRef = (0, _react.useRef)();\n var handleChangeValue = (0, _react.useCallback)(function (currentValue, event) {\n if (currentValue !== value) {\n // Disable the up button when the value is greater than the maximum value.\n setDisabledUpButton(disableMaxValue(currentValue, max)); // Disable the down button when the value is greater than the minimum value.\n\n setDisabledDownButton(disableMinValue(currentValue, min));\n setValue(currentValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(currentValue, event);\n }\n }, [max, min, onChange, setValue, value]);\n var getSafeValue = (0, _react.useCallback)(function (value) {\n if (!Number.isNaN(value)) {\n if (+value > max) {\n value = max;\n }\n\n if (+value < min) {\n value = min;\n }\n } else {\n value = '';\n }\n\n return value.toString();\n }, [max, min]);\n var handlePlus = (0, _react.useCallback)(function (event) {\n var val = +(value || 0);\n var bit = decimals(val, step);\n handleChangeValue(getSafeValue((val + step).toFixed(bit)), event);\n }, [getSafeValue, handleChangeValue, step, value]);\n var handleMinus = (0, _react.useCallback)(function (event) {\n var val = +(value || 0);\n var bit = decimals(val, step);\n handleChangeValue(getSafeValue((val - step).toFixed(bit)), event);\n }, [getSafeValue, handleChangeValue, step, value]);\n var handleKeyDown = (0, _react.useCallback)(function (event) {\n switch (event.key) {\n case _utils.KEY_VALUES.UP:\n event.preventDefault();\n handlePlus(event);\n break;\n\n case _utils.KEY_VALUES.DOWN:\n event.preventDefault();\n handleMinus(event);\n break;\n\n case _utils.KEY_VALUES.HOME:\n if (typeof minProp !== 'undefined') {\n event.preventDefault();\n handleChangeValue(getSafeValue(minProp), event);\n }\n\n break;\n\n case _utils.KEY_VALUES.END:\n if (typeof maxProp !== 'undefined') {\n event.preventDefault();\n handleChangeValue(getSafeValue(maxProp), event);\n }\n\n break;\n }\n }, [handlePlus, handleMinus, minProp, maxProp, handleChangeValue, getSafeValue]);\n var handleWheel = (0, _react.useCallback)(function (event) {\n if (!disabled && !readOnly && event.target === document.activeElement) {\n event.preventDefault();\n var delta = event['wheelDelta'] || -event.deltaY || -(event === null || event === void 0 ? void 0 : event.detail);\n\n if (delta > 0) {\n handleMinus(event);\n }\n\n if (delta < 0) {\n handlePlus(event);\n }\n }\n\n onWheel === null || onWheel === void 0 ? void 0 : onWheel(event);\n }, [disabled, handleMinus, handlePlus, onWheel, readOnly]);\n var handleChange = (0, _react.useCallback)(function (value, event) {\n if (!/^-?(?:\\d+)?(\\.)?\\d*$/.test(value) && value !== '') {\n return;\n }\n\n handleChangeValue(value, event);\n }, [handleChangeValue]);\n var handleBlur = (0, _react.useCallback)(function (event) {\n var _event$target;\n\n var targetValue = Number.parseFloat((_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.value);\n handleChangeValue(getSafeValue(targetValue), event);\n }, [getSafeValue, handleChangeValue]);\n (0, _react.useEffect)(function () {\n var wheelListener;\n\n if (inputRef.current && scrollable) {\n wheelListener = (0, _on.default)(inputRef.current, 'wheel', handleWheel, {\n passive: false\n });\n }\n\n return function () {\n var _wheelListener;\n\n (_wheelListener = wheelListener) === null || _wheelListener === void 0 ? void 0 : _wheelListener.off();\n };\n }, [handleWheel, scrollable]);\n\n var input = /*#__PURE__*/_react.default.createElement(_Input.default, (0, _extends2.default)({}, htmlInputProps, {\n type: \"number\",\n autoComplete: \"off\",\n step: step,\n inputRef: inputRef,\n onChange: handleChange,\n onBlur: (0, _utils.createChainedFunction)(handleBlur, htmlInputProps === null || htmlInputProps === void 0 ? void 0 : htmlInputProps.onBlur),\n value: (0, _isNil.default)(value) ? '' : \"\" + value,\n disabled: disabled,\n readOnly: readOnly,\n plaintext: plaintext,\n ref: plaintext ? ref : undefined,\n onKeyDown: handleKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 276,\n columnNumber: 5\n }\n }));\n\n if (plaintext) {\n return input;\n }\n\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n ref: ref,\n className: classes,\n disabled: disabled,\n size: size,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 298,\n columnNumber: 5\n }\n }), prefixElement && /*#__PURE__*/_react.default.createElement(_InputGroupAddon.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 299,\n columnNumber: 25\n }\n }, prefixElement), input, /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix('btn-group-vertical'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 301,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Button.default, {\n appearance: buttonAppearance,\n className: prefix('touchspin-up'),\n onClick: handlePlus,\n disabled: disabledUpButton || disabled || readOnly,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 302,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_AngleUp.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 308,\n columnNumber: 11\n }\n })), /*#__PURE__*/_react.default.createElement(_Button.default, {\n appearance: buttonAppearance,\n className: prefix('touchspin-down'),\n onClick: handleMinus,\n disabled: disabledDownButton || disabled || readOnly,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 310,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_AngleDown.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 316,\n columnNumber: 11\n }\n }))), postfix && /*#__PURE__*/_react.default.createElement(_InputGroupAddon.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 319,\n columnNumber: 19\n }\n }, postfix));\n});\n\nInputNumber.displayName = 'InputNumber';\nInputNumber.propTypes = {\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n min: _propTypes.default.number,\n max: _propTypes.default.number,\n step: _propTypes.default.number,\n value: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n defaultValue: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n prefix: _propTypes.default.node,\n postfix: _propTypes.default.node,\n disabled: _propTypes.default.bool,\n readOnly: _propTypes.default.bool,\n plaintext: _propTypes.default.bool,\n scrollable: _propTypes.default.bool,\n size: _propTypes.default.oneOf(['lg', 'md', 'sm', 'xs']),\n buttonAppearance: _propTypes.default.oneOf(['default', 'primary', 'link', 'subtle', 'ghost']),\n onWheel: _propTypes.default.func,\n onChange: _propTypes.default.func\n};\nvar _default = InputNumber;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/InputNumber/InputNumber.tsx?");
2929
2929
 
2930
2930
  /***/ }),
2931
2931
 
@@ -3365,7 +3365,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
3365
3365
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
3366
3366
 
3367
3367
  "use strict";
3368
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\n\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\n\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _DropdownMenu = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenu */ \"./src/MultiCascader/DropdownMenu.tsx\"));\n\nvar _Checkbox = _interopRequireDefault(__webpack_require__(/*! ../Checkbox */ \"./src/Checkbox/index.tsx\"));\n\nvar _utils = __webpack_require__(/*! ./utils */ \"./src/MultiCascader/utils.ts\");\n\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\n\nvar _utils2 = __webpack_require__(/*! ../Cascader/utils */ \"./src/Cascader/utils.ts\");\n\nvar _utils3 = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/MultiCascader/MultiCascader.tsx\",\n _this = void 0;\n\nvar emptyArray = [];\n\nvar MultiCascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _selectedPaths;\n\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$data = props.data,\n data = _props$data === void 0 ? emptyArray : _props$data,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n defaultValue = props.defaultValue,\n valueProp = props.value,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n disabled = props.disabled,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n overrideLocale = props.locale,\n toggleAs = props.toggleAs,\n style = props.style,\n _props$countable = props.countable,\n countable = _props$countable === void 0 ? true : _props$countable,\n _props$cascade = props.cascade,\n cascade = _props$cascade === void 0 ? true : _props$cascade,\n inline = props.inline,\n placeholder = props.placeholder,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n menuWidth = props.menuWidth,\n menuHeight = props.menuHeight,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n _props$uncheckableIte = props.uncheckableItemValues,\n uncheckableItemValues = _props$uncheckableIte === void 0 ? emptyArray : _props$uncheckableIte,\n id = props.id,\n getChildren = props.getChildren,\n renderValue = props.renderValue,\n renderMenu = props.renderMenu,\n renderMenuItem = props.renderMenuItem,\n renderExtraFooter = props.renderExtraFooter,\n onEnter = props.onEnter,\n onExit = props.onExit,\n onExited = props.onExited,\n onClean = props.onClean,\n onSearch = props.onSearch,\n onSelect = props.onSelect,\n onChange = props.onChange,\n onOpen = props.onOpen,\n onClose = props.onClose,\n onCheck = props.onCheck,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"data\", \"classPrefix\", \"defaultValue\", \"value\", \"valueKey\", \"labelKey\", \"childrenKey\", \"disabled\", \"disabledItemValues\", \"cleanable\", \"locale\", \"toggleAs\", \"style\", \"countable\", \"cascade\", \"inline\", \"placeholder\", \"placement\", \"appearance\", \"menuWidth\", \"menuHeight\", \"menuClassName\", \"menuStyle\", \"searchable\", \"uncheckableItemValues\", \"id\", \"getChildren\", \"renderValue\", \"renderMenu\", \"renderMenuItem\", \"renderExtraFooter\", \"onEnter\", \"onExit\", \"onExited\", \"onClean\", \"onSearch\", \"onSelect\", \"onChange\", \"onOpen\", \"onClose\", \"onCheck\"]);\n var itemKeys = {\n childrenKey: childrenKey,\n labelKey: labelKey,\n valueKey: valueKey\n };\n\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n\n var _useFlattenData = (0, _utils.useFlattenData)(data, itemKeys),\n flattenData = _useFlattenData.flattenData,\n addFlattenData = _useFlattenData.addFlattenData;\n\n var _useCascadeValue = (0, _utils.useCascadeValue)((0, _extends3.default)({}, itemKeys, {\n uncheckableItemValues: uncheckableItemValues,\n cascade: cascade,\n value: valueProp || defaultValue\n }), flattenData),\n value = _useCascadeValue.value,\n setValue = _useCascadeValue.setValue,\n splitValue = _useCascadeValue.splitValue; // The columns displayed in the cascading panel.\n\n\n var _useColumnData = (0, _utils.useColumnData)(flattenData),\n columnData = _useColumnData.columnData,\n setColumnData = _useColumnData.setColumnData,\n addColumn = _useColumnData.addColumn,\n enforceUpdateColumnData = _useColumnData.enforceUpdateColumnData;\n\n (0, _utils3.useUpdateEffect)(function () {\n enforceUpdateColumnData(data);\n }, [data]); // The path after cascading data selection.\n\n var _useState2 = (0, _react.useState)(),\n selectedPaths = _useState2[0],\n setSelectedPaths = _useState2[1];\n\n var triggerRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var searchInputRef = (0, _react.useRef)(null);\n (0, _Picker.usePublicMethods)(ref, {\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef\n });\n\n var _useCustom = (0, _utils3.useCustom)('Picker', overrideLocale),\n locale = _useCustom.locale,\n rtl = _useCustom.rtl;\n\n var selectedItems = flattenData.filter(function (item) {\n return value.some(function (v) {\n return v === item[valueKey];\n });\n }) || []; // Used to hover the focuse item when trigger `onKeydown`\n\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(selectedPaths === null || selectedPaths === void 0 ? void 0 : (_selectedPaths = selectedPaths[selectedPaths.length - 1]) === null || _selectedPaths === void 0 ? void 0 : _selectedPaths[valueKey], {\n rtl: rtl,\n data: flattenData,\n valueKey: valueKey,\n defaultLayer: selectedPaths !== null && selectedPaths !== void 0 && selectedPaths.length ? selectedPaths.length - 1 : 0,\n target: function target() {\n return overlayRef.current;\n },\n callback: (0, _react.useCallback)(function (value) {\n var _getColumnsAndPaths = (0, _utils2.getColumnsAndPaths)(data, value, {\n valueKey: valueKey,\n childrenKey: childrenKey,\n isAttachChildren: true\n }),\n columns = _getColumnsAndPaths.columns,\n paths = _getColumnsAndPaths.paths;\n\n setColumnData(columns);\n setSelectedPaths(paths);\n }, [childrenKey, data, setColumnData, valueKey])\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setLayer = _useFocusItemValue.setLayer,\n setKeys = _useFocusItemValue.setKeys,\n onFocusItem = _useFocusItemValue.onKeyDown;\n /**\n * 1.Have a value and the value is valid.\n * 2.Regardless of whether the value is valid, as long as renderValue is set, it is judged to have a value.\n */\n\n\n var hasValue = selectedItems.length > 0 || Number(valueProp === null || valueProp === void 0 ? void 0 : valueProp.length) > 0 && (0, _isFunction.default)(renderValue);\n\n var _useClassNames = (0, _utils3.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n\n var _useState3 = (0, _react.useState)(''),\n searchKeyword = _useState3[0],\n setSearchKeyword = _useState3[1];\n\n var handleEntered = (0, _react.useCallback)(function () {\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n }, [onOpen]);\n var handleExited = (0, _react.useCallback)(function () {\n setActive(false);\n setSearchKeyword('');\n }, []);\n var handleSelect = (0, _react.useCallback)(function (node, cascadePaths, event) {\n var _node$childrenKey, _node$childrenKey2, _triggerRef$current, _triggerRef$current$u;\n\n setSelectedPaths(cascadePaths);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event); // Lazy load node's children\n\n if (typeof getChildren === 'function' && ((_node$childrenKey = node[childrenKey]) === null || _node$childrenKey === void 0 ? void 0 : _node$childrenKey.length) === 0) {\n node.loading = true;\n var children = getChildren(node);\n\n if (children instanceof Promise) {\n children.then(function (data) {\n node.loading = false;\n node[childrenKey] = data;\n\n if (targetRef.current) {\n addFlattenData(data, node);\n addColumn(data, cascadePaths.length);\n }\n });\n } else {\n node.loading = false;\n node[childrenKey] = children;\n addFlattenData(children, node);\n addColumn(children, cascadePaths.length);\n }\n } else if ((_node$childrenKey2 = node[childrenKey]) !== null && _node$childrenKey2 !== void 0 && _node$childrenKey2.length) {\n addColumn(node[childrenKey], cascadePaths.length);\n }\n\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$u = _triggerRef$current.updatePosition) === null || _triggerRef$current$u === void 0 ? void 0 : _triggerRef$current$u.call(_triggerRef$current);\n }, [onSelect, getChildren, childrenKey, addColumn, addFlattenData]);\n var handleCheck = (0, _react.useCallback)(function (node, event, checked) {\n var nodeValue = node[valueKey];\n var nextValue = [];\n\n if (cascade) {\n nextValue = splitValue(node, checked, value).value;\n } else {\n nextValue = [].concat(value);\n\n if (checked) {\n nextValue.push(nodeValue);\n } else {\n nextValue = nextValue.filter(function (n) {\n return n !== nodeValue;\n });\n }\n }\n\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(nextValue, node, checked, event);\n }, [cascade, onChange, onCheck, setValue, splitValue, value, valueKey]);\n var handleClean = (0, _react.useCallback)(function (event) {\n if (disabled || !targetRef.current) {\n return;\n }\n\n setSelectedPaths([]);\n setValue([]);\n setColumnData([data]);\n onChange === null || onChange === void 0 ? void 0 : onChange([], event);\n }, [data, disabled, onChange, setColumnData, setValue]);\n var handleMenuPressEnter = (0, _react.useCallback)(function (event) {\n var _overlayRef$current;\n\n var focusItem = (0, _treeUtils.findNodeOfTree)(data, function (item) {\n return item[valueKey] === focusItemValue;\n });\n var checkbox = (_overlayRef$current = overlayRef.current) === null || _overlayRef$current === void 0 ? void 0 : _overlayRef$current.querySelector(\"[data-key=\\\"\" + focusItemValue + \"\\\"] [type=\\\"checkbox\\\"]\");\n\n if (checkbox) {\n handleCheck(focusItem, event, (checkbox === null || checkbox === void 0 ? void 0 : checkbox.getAttribute('aria-checked')) !== 'true');\n }\n }, [data, focusItemValue, handleCheck, valueKey]);\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends3.default)({\n toggle: !focusItemValue || !active,\n triggerRef: triggerRef,\n targetRef: targetRef,\n overlayRef: overlayRef,\n searchInputRef: searchInputRef,\n active: active,\n onExit: handleClean,\n onMenuKeyDown: onFocusItem,\n onMenuPressEnter: handleMenuPressEnter\n }, rest));\n var handleSearch = (0, _react.useCallback)(function (value, event) {\n setSearchKeyword(value);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(value, event);\n\n if (value) {\n setLayer(0);\n } else if (selectedPaths !== null && selectedPaths !== void 0 && selectedPaths.length) {\n setLayer(selectedPaths.length - 1);\n }\n\n setKeys([]);\n }, [onSearch, selectedPaths, setKeys, setLayer]);\n var getSearchResult = (0, _react.useCallback)(function () {\n var items = [];\n var result = flattenData.filter(function (item) {\n if (uncheckableItemValues.some(function (value) {\n return item[valueKey] === value;\n })) {\n return false;\n }\n\n if (item[labelKey].match(new RegExp((0, _utils3.getSafeRegExpString)(searchKeyword), 'i'))) {\n return true;\n }\n\n return false;\n });\n\n for (var i = 0; i < result.length; i++) {\n items.push(result[i]); // A maximum of 100 search results are returned.\n\n if (i === 99) {\n return items;\n }\n }\n\n return items;\n }, [flattenData, labelKey, searchKeyword, uncheckableItemValues, valueKey]);\n\n var renderSearchRow = function renderSearchRow(item, key) {\n var _extends2;\n\n var nodes = (0, _treeUtils.getNodeParents)(item);\n var regx = new RegExp((0, _utils3.getSafeRegExpString)(searchKeyword), 'ig');\n var labelElements = [];\n var a = item[labelKey].split(regx);\n var b = item[labelKey].match(regx);\n\n for (var i = 0; i < a.length; i++) {\n labelElements.push(a[i]);\n\n if (b[i]) {\n labelElements.push( /*#__PURE__*/_react.default.createElement(\"span\", {\n key: i,\n className: prefix('cascader-search-match'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 389,\n columnNumber: 13\n }\n }, b[i]));\n }\n }\n\n nodes.push((0, _extends3.default)({}, item, (_extends2 = {}, _extends2[labelKey] = labelElements, _extends2)));\n var active = value.some(function (value) {\n if (cascade) {\n return nodes.some(function (node) {\n return node[valueKey] === value;\n });\n }\n\n return item[valueKey] === value;\n });\n var disabled = disabledItemValues.some(function (value) {\n return nodes.some(function (node) {\n return node[valueKey] === value;\n });\n });\n var itemClasses = prefix('cascader-row', {\n 'cascader-row-disabled': disabled,\n 'cascader-row-focus': item[valueKey] === focusItemValue\n });\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n key: key,\n className: itemClasses,\n \"aria-disabled\": disabled,\n \"data-key\": item[valueKey],\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 414,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Checkbox.default, {\n disabled: disabled,\n checked: active,\n value: item[valueKey],\n indeterminate: cascade && !active && (0, _utils.isSomeChildChecked)(item, value, {\n valueKey: valueKey,\n childrenKey: childrenKey\n }),\n onChange: function onChange(_value, checked, event) {\n handleCheck(item, event, checked);\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 415,\n columnNumber: 11\n }\n }, /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix('cascader-cols'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 426,\n columnNumber: 13\n }\n }, nodes.map(function (node, index) {\n return /*#__PURE__*/_react.default.createElement(\"span\", {\n key: \"col-\" + index,\n className: prefix('cascader-col'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 428,\n columnNumber: 17\n }\n }, node[labelKey]);\n }))));\n };\n\n var renderSearchResultPanel = function renderSearchResultPanel() {\n if (searchKeyword === '') {\n return null;\n }\n\n var items = getSearchResult();\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('cascader-search-panel'),\n \"data-layer\": 0,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 445,\n columnNumber: 9\n }\n }, items.length ? items.map(renderSearchRow) : /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('none'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 449,\n columnNumber: 13\n }\n }, locale.noResultsText));\n };\n\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var _ref = positionProps || {},\n left = _ref.left,\n top = _ref.top,\n className = _ref.className;\n\n var styles = (0, _extends3.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var classes = merge(className, menuClassName, prefix('cascader-menu', 'multi-cascader-menu', {\n inline: inline\n }));\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n ref: (0, _utils3.mergeRefs)(overlayRef, speakerRef),\n className: classes,\n style: styles,\n target: triggerRef,\n onKeyDown: onPickerKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 466,\n columnNumber: 9\n }\n }, searchable && /*#__PURE__*/_react.default.createElement(_Picker.SearchBar, {\n placeholder: locale === null || locale === void 0 ? void 0 : locale.searchPlaceholder,\n onChange: handleSearch,\n value: searchKeyword,\n inputRef: searchInputRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 474,\n columnNumber: 13\n }\n }), renderSearchResultPanel(), searchKeyword === '' && /*#__PURE__*/_react.default.createElement(_DropdownMenu.default, {\n id: id ? id + \"-listbox\" : undefined,\n cascade: cascade,\n menuWidth: menuWidth,\n menuHeight: menuHeight,\n uncheckableItemValues: uncheckableItemValues,\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n labelKey: labelKey,\n childrenKey: childrenKey,\n classPrefix: 'picker-cascader-menu',\n cascadeData: columnData,\n cascadePaths: selectedPaths,\n value: value,\n onSelect: handleSelect,\n onCheck: handleCheck,\n renderMenu: renderMenu,\n renderMenuItem: renderMenuItem,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 485,\n columnNumber: 13\n }\n }), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n\n var selectedElement = placeholder;\n\n if (selectedItems.length > 0) {\n selectedElement = /*#__PURE__*/_react.default.createElement(_Picker.SelectedElement, {\n selectedItems: selectedItems,\n countable: countable,\n valueKey: valueKey,\n labelKey: labelKey,\n childrenKey: childrenKey,\n prefix: prefix,\n cascade: cascade,\n locale: locale,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 515,\n columnNumber: 9\n }\n });\n }\n\n if (hasValue && (0, _isFunction.default)(renderValue)) {\n selectedElement = renderValue(value.length ? value : valueProp !== null && valueProp !== void 0 ? valueProp : [], selectedItems, selectedElement); // If renderValue returns null or undefined, hasValue is false.\n\n if ((0, _isNil.default)(selectedElement)) {\n hasValue = false;\n }\n }\n\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends3.default)({}, props, {\n classPrefix: classPrefix,\n hasValue: hasValue,\n name: 'cascader',\n appearance: appearance,\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n\n if (inline) {\n return renderDropdownMenu();\n }\n\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n placement: placement,\n onEnter: (0, _utils3.createChainedFunction)(handleEntered, onEnter),\n onExited: (0, _utils3.createChainedFunction)(handleExited, onExited),\n onExit: (0, _utils3.createChainedFunction)(onClose, onExit),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 554,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 563,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends3.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n id: id,\n as: toggleAs,\n appearance: appearance,\n disabled: disabled,\n ref: targetRef,\n onClean: (0, _utils3.createChainedFunction)(handleClean, onClean),\n onKeyDown: onPickerKeyDown,\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n active: active,\n placement: placement,\n inputValue: value,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 564,\n columnNumber: 11\n }\n }), selectedElement || locale.placeholder)));\n});\n\nMultiCascader.displayName = 'MultiCascader';\nMultiCascader.propTypes = (0, _extends3.default)({}, _Picker.listPickerPropTypes, {\n value: _propTypes.default.array,\n disabledItemValues: _propTypes.default.array,\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n cascade: _propTypes.default.bool,\n inline: _propTypes.default.bool,\n countable: _propTypes.default.bool,\n menuWidth: _propTypes.default.number,\n menuHeight: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n uncheckableItemValues: _propTypes.default.array,\n searchable: _propTypes.default.bool,\n renderMenuItem: _propTypes.default.func,\n renderMenu: _propTypes.default.func,\n onSearch: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onCheck: _propTypes.default.func\n});\nvar _default = MultiCascader;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/MultiCascader/MultiCascader.tsx?");
3368
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\n\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\n\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _DropdownMenu = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenu */ \"./src/MultiCascader/DropdownMenu.tsx\"));\n\nvar _Checkbox = _interopRequireDefault(__webpack_require__(/*! ../Checkbox */ \"./src/Checkbox/index.tsx\"));\n\nvar _utils = __webpack_require__(/*! ./utils */ \"./src/MultiCascader/utils.ts\");\n\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\n\nvar _utils2 = __webpack_require__(/*! ../Cascader/utils */ \"./src/Cascader/utils.ts\");\n\nvar _utils3 = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/MultiCascader/MultiCascader.tsx\",\n _this = void 0;\n\nvar emptyArray = [];\n\nvar MultiCascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _selectedPaths;\n\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$data = props.data,\n data = _props$data === void 0 ? emptyArray : _props$data,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n defaultValue = props.defaultValue,\n valueProp = props.value,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n disabled = props.disabled,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n overrideLocale = props.locale,\n toggleAs = props.toggleAs,\n style = props.style,\n _props$countable = props.countable,\n countable = _props$countable === void 0 ? true : _props$countable,\n _props$cascade = props.cascade,\n cascade = _props$cascade === void 0 ? true : _props$cascade,\n inline = props.inline,\n placeholder = props.placeholder,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n menuWidth = props.menuWidth,\n menuHeight = props.menuHeight,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n _props$uncheckableIte = props.uncheckableItemValues,\n uncheckableItemValues = _props$uncheckableIte === void 0 ? emptyArray : _props$uncheckableIte,\n id = props.id,\n getChildren = props.getChildren,\n renderValue = props.renderValue,\n renderMenu = props.renderMenu,\n renderMenuItem = props.renderMenuItem,\n renderExtraFooter = props.renderExtraFooter,\n onEnter = props.onEnter,\n onExit = props.onExit,\n onExited = props.onExited,\n onClean = props.onClean,\n onSearch = props.onSearch,\n onSelect = props.onSelect,\n onChange = props.onChange,\n onOpen = props.onOpen,\n onClose = props.onClose,\n onCheck = props.onCheck,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"data\", \"classPrefix\", \"defaultValue\", \"value\", \"valueKey\", \"labelKey\", \"childrenKey\", \"disabled\", \"disabledItemValues\", \"cleanable\", \"locale\", \"toggleAs\", \"style\", \"countable\", \"cascade\", \"inline\", \"placeholder\", \"placement\", \"appearance\", \"menuWidth\", \"menuHeight\", \"menuClassName\", \"menuStyle\", \"searchable\", \"uncheckableItemValues\", \"id\", \"getChildren\", \"renderValue\", \"renderMenu\", \"renderMenuItem\", \"renderExtraFooter\", \"onEnter\", \"onExit\", \"onExited\", \"onClean\", \"onSearch\", \"onSelect\", \"onChange\", \"onOpen\", \"onClose\", \"onCheck\"]);\n var itemKeys = {\n childrenKey: childrenKey,\n labelKey: labelKey,\n valueKey: valueKey\n };\n\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n\n var _useFlattenData = (0, _utils.useFlattenData)(data, itemKeys),\n flattenData = _useFlattenData.flattenData,\n addFlattenData = _useFlattenData.addFlattenData;\n\n var _useCascadeValue = (0, _utils.useCascadeValue)((0, _extends3.default)({}, itemKeys, {\n uncheckableItemValues: uncheckableItemValues,\n cascade: cascade,\n value: valueProp || defaultValue\n }), flattenData),\n value = _useCascadeValue.value,\n setValue = _useCascadeValue.setValue,\n splitValue = _useCascadeValue.splitValue; // The columns displayed in the cascading panel.\n\n\n var _useColumnData = (0, _utils.useColumnData)(flattenData),\n columnData = _useColumnData.columnData,\n setColumnData = _useColumnData.setColumnData,\n addColumn = _useColumnData.addColumn,\n enforceUpdateColumnData = _useColumnData.enforceUpdateColumnData;\n\n (0, _utils3.useUpdateEffect)(function () {\n enforceUpdateColumnData(data);\n }, [data]); // The path after cascading data selection.\n\n var _useState2 = (0, _react.useState)(),\n selectedPaths = _useState2[0],\n setSelectedPaths = _useState2[1];\n\n var triggerRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var searchInputRef = (0, _react.useRef)(null);\n (0, _Picker.usePublicMethods)(ref, {\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef\n });\n\n var _useCustom = (0, _utils3.useCustom)('Picker', overrideLocale),\n locale = _useCustom.locale,\n rtl = _useCustom.rtl;\n\n var selectedItems = flattenData.filter(function (item) {\n return value.some(function (v) {\n return v === item[valueKey];\n });\n }) || []; // Used to hover the focuse item when trigger `onKeydown`\n\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(selectedPaths === null || selectedPaths === void 0 ? void 0 : (_selectedPaths = selectedPaths[selectedPaths.length - 1]) === null || _selectedPaths === void 0 ? void 0 : _selectedPaths[valueKey], {\n rtl: rtl,\n data: flattenData,\n valueKey: valueKey,\n defaultLayer: selectedPaths !== null && selectedPaths !== void 0 && selectedPaths.length ? selectedPaths.length - 1 : 0,\n target: function target() {\n return overlayRef.current;\n },\n callback: (0, _react.useCallback)(function (value) {\n var _getColumnsAndPaths = (0, _utils2.getColumnsAndPaths)(data, value, {\n valueKey: valueKey,\n childrenKey: childrenKey,\n isAttachChildren: true\n }),\n columns = _getColumnsAndPaths.columns,\n paths = _getColumnsAndPaths.paths;\n\n setColumnData(columns);\n setSelectedPaths(paths);\n }, [childrenKey, data, setColumnData, valueKey])\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setLayer = _useFocusItemValue.setLayer,\n setKeys = _useFocusItemValue.setKeys,\n onFocusItem = _useFocusItemValue.onKeyDown;\n /**\n * 1.Have a value and the value is valid.\n * 2.Regardless of whether the value is valid, as long as renderValue is set, it is judged to have a value.\n */\n\n\n var hasValue = selectedItems.length > 0 || Number(valueProp === null || valueProp === void 0 ? void 0 : valueProp.length) > 0 && (0, _isFunction.default)(renderValue);\n\n var _useClassNames = (0, _utils3.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n\n var _useState3 = (0, _react.useState)(''),\n searchKeyword = _useState3[0],\n setSearchKeyword = _useState3[1];\n\n var handleEntered = (0, _react.useCallback)(function () {\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n }, [onOpen]);\n var handleExited = (0, _react.useCallback)(function () {\n setActive(false);\n setSearchKeyword('');\n }, []);\n var handleSelect = (0, _react.useCallback)(function (node, cascadePaths, event) {\n var _node$childrenKey, _node$childrenKey2, _triggerRef$current, _triggerRef$current$u;\n\n setSelectedPaths(cascadePaths);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event); // Lazy load node's children\n\n if (typeof getChildren === 'function' && ((_node$childrenKey = node[childrenKey]) === null || _node$childrenKey === void 0 ? void 0 : _node$childrenKey.length) === 0) {\n node.loading = true;\n var children = getChildren(node);\n\n if (children instanceof Promise) {\n children.then(function (data) {\n node.loading = false;\n node[childrenKey] = data;\n\n if (targetRef.current) {\n addFlattenData(data, node);\n addColumn(data, cascadePaths.length);\n }\n });\n } else {\n node.loading = false;\n node[childrenKey] = children;\n addFlattenData(children, node);\n addColumn(children, cascadePaths.length);\n }\n } else if ((_node$childrenKey2 = node[childrenKey]) !== null && _node$childrenKey2 !== void 0 && _node$childrenKey2.length) {\n addColumn(node[childrenKey], cascadePaths.length);\n }\n\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$u = _triggerRef$current.updatePosition) === null || _triggerRef$current$u === void 0 ? void 0 : _triggerRef$current$u.call(_triggerRef$current);\n }, [onSelect, getChildren, childrenKey, addColumn, addFlattenData]);\n var handleCheck = (0, _react.useCallback)(function (node, event, checked) {\n var nodeValue = node[valueKey];\n var nextValue = [];\n\n if (cascade) {\n nextValue = splitValue(node, checked, value).value;\n } else {\n nextValue = [].concat(value);\n\n if (checked) {\n nextValue.push(nodeValue);\n } else {\n nextValue = nextValue.filter(function (n) {\n return n !== nodeValue;\n });\n }\n }\n\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(nextValue, node, checked, event);\n }, [cascade, onChange, onCheck, setValue, splitValue, value, valueKey]);\n var handleClean = (0, _react.useCallback)(function (event) {\n if (disabled || !targetRef.current) {\n return;\n }\n\n setSelectedPaths([]);\n setValue([]);\n setColumnData([data]);\n onChange === null || onChange === void 0 ? void 0 : onChange([], event);\n }, [data, disabled, onChange, setColumnData, setValue]);\n var handleMenuPressEnter = (0, _react.useCallback)(function (event) {\n var _overlayRef$current;\n\n var focusItem = (0, _treeUtils.findNodeOfTree)(data, function (item) {\n return item[valueKey] === focusItemValue;\n });\n var checkbox = (_overlayRef$current = overlayRef.current) === null || _overlayRef$current === void 0 ? void 0 : _overlayRef$current.querySelector(\"[data-key=\\\"\" + focusItemValue + \"\\\"] [type=\\\"checkbox\\\"]\");\n\n if (checkbox) {\n handleCheck(focusItem, event, (checkbox === null || checkbox === void 0 ? void 0 : checkbox.getAttribute('aria-checked')) !== 'true');\n }\n }, [data, focusItemValue, handleCheck, valueKey]);\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends3.default)({\n toggle: !focusItemValue || !active,\n triggerRef: triggerRef,\n targetRef: targetRef,\n overlayRef: overlayRef,\n searchInputRef: searchInputRef,\n active: active,\n onExit: handleClean,\n onMenuKeyDown: onFocusItem,\n onMenuPressEnter: handleMenuPressEnter\n }, rest));\n var handleSearch = (0, _react.useCallback)(function (value, event) {\n setSearchKeyword(value);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(value, event);\n\n if (value) {\n setLayer(0);\n } else if (selectedPaths !== null && selectedPaths !== void 0 && selectedPaths.length) {\n setLayer(selectedPaths.length - 1);\n }\n\n setKeys([]);\n }, [onSearch, selectedPaths, setKeys, setLayer]);\n var getSearchResult = (0, _react.useCallback)(function () {\n var items = [];\n var result = flattenData.filter(function (item) {\n if (uncheckableItemValues.some(function (value) {\n return item[valueKey] === value;\n })) {\n return false;\n }\n\n if (item[labelKey].match(new RegExp((0, _utils3.getSafeRegExpString)(searchKeyword), 'i'))) {\n return true;\n }\n\n return false;\n });\n\n for (var i = 0; i < result.length; i++) {\n items.push(result[i]); // A maximum of 100 search results are returned.\n\n if (i === 99) {\n return items;\n }\n }\n\n return items;\n }, [flattenData, labelKey, searchKeyword, uncheckableItemValues, valueKey]);\n\n var renderSearchRow = function renderSearchRow(item, key) {\n var _extends2;\n\n var nodes = (0, _treeUtils.getNodeParents)(item);\n var regx = new RegExp((0, _utils3.getSafeRegExpString)(searchKeyword), 'ig');\n var labelElements = [];\n var a = item[labelKey].split(regx);\n var b = item[labelKey].match(regx);\n\n for (var i = 0; i < a.length; i++) {\n labelElements.push(a[i]);\n\n if (b[i]) {\n labelElements.push( /*#__PURE__*/_react.default.createElement(\"span\", {\n key: i,\n className: prefix('cascader-search-match'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 389,\n columnNumber: 13\n }\n }, b[i]));\n }\n }\n\n nodes.push((0, _extends3.default)({}, item, (_extends2 = {}, _extends2[labelKey] = labelElements, _extends2)));\n var active = value.some(function (value) {\n if (cascade) {\n return nodes.some(function (node) {\n return node[valueKey] === value;\n });\n }\n\n return item[valueKey] === value;\n });\n var disabled = disabledItemValues.some(function (value) {\n return nodes.some(function (node) {\n return node[valueKey] === value;\n });\n });\n var itemClasses = prefix('cascader-row', {\n 'cascader-row-disabled': disabled,\n 'cascader-row-focus': item[valueKey] === focusItemValue\n });\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n key: key,\n className: itemClasses,\n \"aria-disabled\": disabled,\n \"data-key\": item[valueKey],\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 414,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Checkbox.default, {\n disabled: disabled,\n checked: active,\n value: item[valueKey],\n indeterminate: cascade && !active && (0, _utils.isSomeChildChecked)(item, value, {\n valueKey: valueKey,\n childrenKey: childrenKey\n }),\n onChange: function onChange(_value, checked, event) {\n handleCheck(item, event, checked);\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 415,\n columnNumber: 11\n }\n }, /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix('cascader-cols'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 426,\n columnNumber: 13\n }\n }, nodes.map(function (node, index) {\n return /*#__PURE__*/_react.default.createElement(\"span\", {\n key: \"col-\" + index,\n className: prefix('cascader-col'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 428,\n columnNumber: 17\n }\n }, node[labelKey]);\n }))));\n };\n\n var renderSearchResultPanel = function renderSearchResultPanel() {\n if (searchKeyword === '') {\n return null;\n }\n\n var items = getSearchResult();\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('cascader-search-panel'),\n \"data-layer\": 0,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 445,\n columnNumber: 9\n }\n }, items.length ? items.map(renderSearchRow) : /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('none'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 449,\n columnNumber: 13\n }\n }, locale.noResultsText));\n };\n\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var _ref = positionProps || {},\n left = _ref.left,\n top = _ref.top,\n className = _ref.className;\n\n var styles = (0, _extends3.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var classes = merge(className, menuClassName, prefix('cascader-menu', 'multi-cascader-menu', {\n inline: inline\n }));\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n ref: (0, _utils3.mergeRefs)(overlayRef, speakerRef),\n className: classes,\n style: styles,\n target: triggerRef,\n onKeyDown: onPickerKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 466,\n columnNumber: 9\n }\n }, searchable && /*#__PURE__*/_react.default.createElement(_Picker.SearchBar, {\n placeholder: locale === null || locale === void 0 ? void 0 : locale.searchPlaceholder,\n onChange: handleSearch,\n value: searchKeyword,\n inputRef: searchInputRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 474,\n columnNumber: 13\n }\n }), renderSearchResultPanel(), searchKeyword === '' && /*#__PURE__*/_react.default.createElement(_DropdownMenu.default, {\n id: id ? id + \"-listbox\" : undefined,\n cascade: cascade,\n menuWidth: menuWidth,\n menuHeight: menuHeight,\n uncheckableItemValues: uncheckableItemValues,\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n labelKey: labelKey,\n childrenKey: childrenKey,\n classPrefix: 'picker-cascader-menu',\n cascadeData: columnData,\n cascadePaths: selectedPaths,\n value: value,\n onSelect: handleSelect,\n onCheck: handleCheck,\n renderMenu: renderMenu,\n renderMenuItem: renderMenuItem,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 485,\n columnNumber: 13\n }\n }), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n\n var selectedElement = placeholder;\n\n if (selectedItems.length > 0) {\n selectedElement = /*#__PURE__*/_react.default.createElement(_Picker.SelectedElement, {\n selectedItems: selectedItems,\n countable: countable,\n valueKey: valueKey,\n labelKey: labelKey,\n childrenKey: childrenKey,\n prefix: prefix,\n cascade: cascade,\n locale: locale,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 515,\n columnNumber: 9\n }\n });\n }\n\n if (hasValue && (0, _isFunction.default)(renderValue)) {\n selectedElement = renderValue(value.length ? value : valueProp !== null && valueProp !== void 0 ? valueProp : [], selectedItems, selectedElement); // If renderValue returns null or undefined, hasValue is false.\n\n if ((0, _isNil.default)(selectedElement)) {\n hasValue = false;\n }\n }\n\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends3.default)({}, props, {\n classPrefix: classPrefix,\n hasValue: hasValue,\n countable: countable,\n name: 'cascader',\n appearance: appearance,\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n\n if (inline) {\n return renderDropdownMenu();\n }\n\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n placement: placement,\n onEnter: (0, _utils3.createChainedFunction)(handleEntered, onEnter),\n onExited: (0, _utils3.createChainedFunction)(handleExited, onExited),\n onExit: (0, _utils3.createChainedFunction)(onClose, onExit),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 555,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 564,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends3.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n id: id,\n as: toggleAs,\n appearance: appearance,\n disabled: disabled,\n ref: targetRef,\n onClean: (0, _utils3.createChainedFunction)(handleClean, onClean),\n onKeyDown: onPickerKeyDown,\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n active: active,\n placement: placement,\n inputValue: value,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 565,\n columnNumber: 11\n }\n }), selectedElement || locale.placeholder)));\n});\n\nMultiCascader.displayName = 'MultiCascader';\nMultiCascader.propTypes = (0, _extends3.default)({}, _Picker.listPickerPropTypes, {\n value: _propTypes.default.array,\n disabledItemValues: _propTypes.default.array,\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n cascade: _propTypes.default.bool,\n inline: _propTypes.default.bool,\n countable: _propTypes.default.bool,\n menuWidth: _propTypes.default.number,\n menuHeight: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n uncheckableItemValues: _propTypes.default.array,\n searchable: _propTypes.default.bool,\n renderMenuItem: _propTypes.default.func,\n renderMenu: _propTypes.default.func,\n onSearch: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onCheck: _propTypes.default.func\n});\nvar _default = MultiCascader;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/MultiCascader/MultiCascader.tsx?");
3369
3369
 
3370
3370
  /***/ }),
3371
3371
 
@@ -4036,7 +4036,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
4036
4036
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
4037
4037
 
4038
4038
  "use strict";
4039
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _getWidth = _interopRequireDefault(__webpack_require__(/*! dom-lib/getWidth */ \"./node_modules/dom-lib/esm/getWidth.js\"));\n\nvar _getHeight = _interopRequireDefault(__webpack_require__(/*! dom-lib/getHeight */ \"./node_modules/dom-lib/esm/getHeight.js\"));\n\nvar _getOffset = _interopRequireDefault(__webpack_require__(/*! dom-lib/getOffset */ \"./node_modules/dom-lib/esm/getOffset.js\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Slider = __webpack_require__(/*! ../Slider/Slider */ \"./src/Slider/Slider.tsx\");\n\nvar _ProgressBar = _interopRequireDefault(__webpack_require__(/*! ../Slider/ProgressBar */ \"./src/Slider/ProgressBar.tsx\"));\n\nvar _Handle = _interopRequireDefault(__webpack_require__(/*! ../Slider/Handle */ \"./src/Slider/Handle.tsx\"));\n\nvar _Graduated = _interopRequireDefault(__webpack_require__(/*! ../Slider/Graduated */ \"./src/Slider/Graduated.tsx\"));\n\nvar _utils2 = __webpack_require__(/*! ../Slider/utils */ \"./src/Slider/utils.ts\");\n\nvar _propTypeChecker = __webpack_require__(/*! ../utils/propTypeChecker */ \"./src/utils/propTypeChecker.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/RangeSlider/RangeSlider.tsx\",\n _this = void 0;\n\nvar defaultDefaultValue = [0, 0];\n\nvar RangeSlider = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var ariaLabel = props['aria-label'],\n ariaLabelledby = props['aria-labelledby'],\n ariaValuetext = props['aria-valuetext'],\n _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n barClassName = props.barClassName,\n className = props.className,\n _props$defaultValue = props.defaultValue,\n defaultValue = _props$defaultValue === void 0 ? defaultDefaultValue : _props$defaultValue,\n graduated = props.graduated,\n _props$progress = props.progress,\n progress = _props$progress === void 0 ? true : _props$progress,\n vertical = props.vertical,\n disabled = props.disabled,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'slider' : _props$classPrefix,\n _props$min = props.min,\n min = _props$min === void 0 ? 0 : _props$min,\n _props$max = props.max,\n maxProp = _props$max === void 0 ? 100 : _props$max,\n _props$step = props.step,\n step = _props$step === void 0 ? 1 : _props$step,\n valueProp = props.value,\n handleClassName = props.handleClassName,\n handleStyle = props.handleStyle,\n handleTitle = props.handleTitle,\n _props$tooltip = props.tooltip,\n tooltip = _props$tooltip === void 0 ? true : _props$tooltip,\n getAriaValueText = props.getAriaValueText,\n renderTooltip = props.renderTooltip,\n renderMark = props.renderMark,\n onChange = props.onChange,\n onChangeCommitted = props.onChangeCommitted,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"aria-label\", \"aria-labelledby\", \"aria-valuetext\", \"as\", \"barClassName\", \"className\", \"defaultValue\", \"graduated\", \"progress\", \"vertical\", \"disabled\", \"classPrefix\", \"min\", \"max\", \"step\", \"value\", \"handleClassName\", \"handleStyle\", \"handleTitle\", \"tooltip\", \"getAriaValueText\", \"renderTooltip\", \"renderMark\", \"onChange\", \"onChangeCommitted\"]);\n var barRef = (0, _react.useRef)(null); // Define the parameter position of the handle\n\n var handleIndexs = (0, _react.useRef)([0, 1]);\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix;\n\n var _useCustom = (0, _utils.useCustom)('RangeSlider'),\n rtl = _useCustom.rtl;\n\n var classes = merge(className, withClassPrefix({\n vertical: vertical,\n disabled: disabled,\n graduated: graduated,\n 'with-mark': renderMark\n }));\n var max = (0, _react.useMemo)(function () {\n return (0, _utils2.precisionMath)(Math.floor((maxProp - min) / step) * step + min);\n }, [maxProp, min, step]);\n /**\n * Returns a valid value that does not exceed the specified range of values.\n */\n\n var getValidValue = (0, _react.useCallback)(function (value) {\n if (typeof value === 'undefined') {\n return;\n }\n\n return [(0, _utils2.checkValue)(value[0], min, max), (0, _utils2.checkValue)(value[1], min, max)];\n }, [max, min]);\n\n var _useControlled = (0, _utils.useControlled)(getValidValue(valueProp), getValidValue(defaultValue)),\n value = _useControlled[0],\n setValue = _useControlled[1]; // The count of values ​​that can be entered.\n\n\n var count = (0, _react.useMemo)(function () {\n return (0, _utils2.precisionMath)((max - min) / step);\n }, [max, min, step]); // Get the height of the progress bar\n\n var getBarHeight = (0, _react.useCallback)(function () {\n return barRef.current ? (0, _getHeight.default)(barRef.current) : 0;\n }, []); // Get the width of the progress bar\n\n var getBarWidth = (0, _react.useCallback)(function () {\n return barRef.current ? (0, _getWidth.default)(barRef.current) : 0;\n }, []);\n var getValueByOffset = (0, _react.useCallback)(function (offset) {\n var val = 0;\n\n if (isNaN(offset)) {\n return val;\n }\n\n if (vertical) {\n var barHeight = getBarHeight();\n val = Math.round(offset / (barHeight / count)) * step;\n } else {\n var barWidth = getBarWidth();\n val = Math.round(offset / (barWidth / count)) * step;\n }\n\n return (0, _utils2.precisionMath)(val);\n }, [count, getBarHeight, getBarWidth, step, vertical]);\n var getValueByPosition = (0, _react.useCallback)(function (event) {\n var barOffset = (0, _getOffset.default)(barRef.current);\n var offset = vertical ? barOffset.top + barOffset.height - event.pageY : event.pageX - barOffset.left;\n var val = rtl && !vertical ? barOffset.width - offset : offset;\n return getValueByOffset(val) + min;\n }, [getValueByOffset, min, rtl, vertical]);\n var getRangeValue = (0, _react.useCallback)(function (value, key, event) {\n // Get the corresponding value according to the cursor position\n var v = getValueByPosition(event); // Judge the handle key and put the corresponding value at the start or end.\n\n if (key === 'start') {\n return [v, value[1]];\n } else if (key === 'end') {\n return [value[0], v];\n }\n\n return value;\n }, [getValueByPosition]);\n var getNextValue = (0, _react.useCallback)(function (event, dataset) {\n var eventKey = dataset.key,\n range = dataset.range;\n var value = range.split(',').map(function (i) {\n return +i;\n });\n var nextValue = getValidValue(getRangeValue(value, eventKey, event));\n\n if (nextValue[0] >= nextValue[1]) {\n /**\n * When the value of `start` is greater than the value of` end`,\n * the position of the handle is reversed.\n */\n handleIndexs.current.reverse();\n\n if (eventKey === 'start') {\n nextValue[0] = value[1];\n } else {\n nextValue[1] = value[0];\n }\n }\n\n return nextValue;\n }, [getRangeValue, getValidValue]);\n /**\n * Callback function that is fired when the mousemove is triggered\n */\n\n var handleDragMove = (0, _utils.useEventCallback)(function (event, dataset) {\n var nextValue = getNextValue(event, dataset);\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n });\n /**\n * Callback function that is fired when the mouseup is triggered\n */\n\n var handleChangeCommitted = (0, _react.useCallback)(function (event, dataset) {\n var nextValue = getNextValue(event, dataset);\n setValue(nextValue);\n onChangeCommitted === null || onChangeCommitted === void 0 ? void 0 : onChangeCommitted(nextValue, event);\n }, [getNextValue, onChangeCommitted, setValue]);\n var handleKeyDown = (0, _react.useCallback)(function (event) {\n var _event$target;\n\n var _event$target$dataset = (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target['dataset'],\n key = _event$target$dataset.key;\n\n var nextValue = [].concat(value);\n var increaseKey = rtl ? 'ArrowLeft' : 'ArrowRight';\n var decreaseKey = rtl ? 'ArrowRight' : 'ArrowLeft';\n var valueIndex = key === 'start' ? 0 : 1;\n\n switch (event.key) {\n case 'Home':\n nextValue[valueIndex] = min;\n break;\n\n case 'End':\n nextValue[valueIndex] = max;\n break;\n\n case increaseKey:\n case 'ArrowUp':\n nextValue[valueIndex] = Math.min(max, value[valueIndex] + step);\n break;\n\n case decreaseKey:\n case 'ArrowDown':\n nextValue[valueIndex] = Math.max(min, value[valueIndex] - step);\n break;\n\n default:\n return;\n } // When the start value is greater than the end value, let the handle and value switch positions.\n\n\n if (nextValue[0] >= nextValue[1]) {\n nextValue.reverse();\n handleIndexs.current.reverse();\n } // Prevent scroll of the page\n\n\n event.preventDefault();\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }, [max, min, onChange, rtl, setValue, step, value]);\n var handleClick = (0, _react.useCallback)(function (event) {\n if (disabled) {\n return;\n }\n\n var start = value[0],\n end = value[1];\n var v = getValueByPosition(event); // Judging that the current click value is closer to the values ​​of `start` and` end`.\n\n if (Math.abs(start - v) < Math.abs(end - v)) {\n start = v;\n } else {\n end = v;\n }\n\n var nextValue = getValidValue([start, end].sort());\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }, [disabled, getValidValue, getValueByPosition, onChange, setValue, value]);\n var handleProps = (0, _react.useMemo)(function () {\n return [{\n value: value[0],\n 'data-key': 'start',\n 'aria-valuenow': value[0],\n 'aria-valuetext': getAriaValueText ? getAriaValueText(value[0], 'start') : ariaValuetext,\n position: (value[0] - min) / (max - min) * 100\n }, {\n value: value[1],\n 'data-key': 'end',\n 'aria-valuenow': value[1],\n 'aria-valuetext': getAriaValueText ? getAriaValueText(value[1], 'end') : ariaValuetext,\n position: (value[1] - min) / (max - min) * 100\n }];\n }, [ariaValuetext, getAriaValueText, max, min, value]);\n var handleCommonProps = {\n rtl: rtl,\n disabled: disabled,\n vertical: vertical,\n tooltip: tooltip,\n className: handleClassName,\n style: handleStyle,\n renderTooltip: renderTooltip,\n onDragMove: handleDragMove,\n onDragEnd: handleChangeCommitted,\n onKeyDown: handleKeyDown,\n tabIndex: disabled ? undefined : 0,\n 'aria-orientation': vertical ? 'vertical' : 'horizontal',\n 'aria-disabled': disabled,\n 'aria-valuemax': max,\n 'aria-valuemin': min,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby\n };\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n ref: ref,\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 303,\n columnNumber: 5\n }\n }), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: merge(barClassName, prefix('bar')),\n ref: barRef,\n onClick: handleClick,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 304,\n columnNumber: 7\n }\n }, progress && /*#__PURE__*/_react.default.createElement(_ProgressBar.default, {\n rtl: rtl,\n vertical: vertical,\n start: (value[0] - min) / (max - min) * 100,\n end: (value[1] - min) / (max - min) * 100,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 306,\n columnNumber: 11\n }\n }), graduated && /*#__PURE__*/_react.default.createElement(_Graduated.default, {\n step: step,\n min: min,\n max: max,\n count: count,\n value: value,\n renderMark: renderMark,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 314,\n columnNumber: 11\n }\n })), /*#__PURE__*/_react.default.createElement(_Handle.default, (0, _extends2.default)({\n \"data-range\": value\n }, handleCommonProps, handleProps[handleIndexs.current[0]], {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 324,\n columnNumber: 7\n }\n }), handleTitle), /*#__PURE__*/_react.default.createElement(_Handle.default, (0, _extends2.default)({\n \"data-range\": value\n }, handleCommonProps, handleProps[handleIndexs.current[1]], {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 328,\n columnNumber: 7\n }\n }), handleTitle));\n});\n\nRangeSlider.displayName = 'RangeSlider';\nRangeSlider.propTypes = (0, _extends2.default)({}, _Slider.sliderPropTypes, {\n value: (0, _propTypeChecker.tupleType)(_propTypes.default.number.isRequired, _propTypes.default.number.isRequired),\n defaultValue: (0, _propTypeChecker.tupleType)(_propTypes.default.number.isRequired, _propTypes.default.number.isRequired)\n});\nvar _default = RangeSlider;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/RangeSlider/RangeSlider.tsx?");
4039
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _getWidth = _interopRequireDefault(__webpack_require__(/*! dom-lib/getWidth */ \"./node_modules/dom-lib/esm/getWidth.js\"));\n\nvar _getHeight = _interopRequireDefault(__webpack_require__(/*! dom-lib/getHeight */ \"./node_modules/dom-lib/esm/getHeight.js\"));\n\nvar _getOffset = _interopRequireDefault(__webpack_require__(/*! dom-lib/getOffset */ \"./node_modules/dom-lib/esm/getOffset.js\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Slider = __webpack_require__(/*! ../Slider/Slider */ \"./src/Slider/Slider.tsx\");\n\nvar _ProgressBar = _interopRequireDefault(__webpack_require__(/*! ../Slider/ProgressBar */ \"./src/Slider/ProgressBar.tsx\"));\n\nvar _Handle = _interopRequireDefault(__webpack_require__(/*! ../Slider/Handle */ \"./src/Slider/Handle.tsx\"));\n\nvar _Graduated = _interopRequireDefault(__webpack_require__(/*! ../Slider/Graduated */ \"./src/Slider/Graduated.tsx\"));\n\nvar _utils2 = __webpack_require__(/*! ../Slider/utils */ \"./src/Slider/utils.ts\");\n\nvar _propTypeChecker = __webpack_require__(/*! ../utils/propTypeChecker */ \"./src/utils/propTypeChecker.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/RangeSlider/RangeSlider.tsx\",\n _this = void 0;\n\nvar defaultDefaultValue = [0, 0];\n\nvar RangeSlider = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var ariaLabel = props['aria-label'],\n ariaLabelledby = props['aria-labelledby'],\n ariaValuetext = props['aria-valuetext'],\n _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n barClassName = props.barClassName,\n className = props.className,\n constraint = props.constraint,\n _props$defaultValue = props.defaultValue,\n defaultValue = _props$defaultValue === void 0 ? defaultDefaultValue : _props$defaultValue,\n graduated = props.graduated,\n _props$progress = props.progress,\n progress = _props$progress === void 0 ? true : _props$progress,\n vertical = props.vertical,\n disabled = props.disabled,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'slider' : _props$classPrefix,\n _props$min = props.min,\n min = _props$min === void 0 ? 0 : _props$min,\n _props$max = props.max,\n maxProp = _props$max === void 0 ? 100 : _props$max,\n _props$step = props.step,\n step = _props$step === void 0 ? 1 : _props$step,\n valueProp = props.value,\n handleClassName = props.handleClassName,\n handleStyle = props.handleStyle,\n handleTitle = props.handleTitle,\n _props$tooltip = props.tooltip,\n tooltip = _props$tooltip === void 0 ? true : _props$tooltip,\n getAriaValueText = props.getAriaValueText,\n renderTooltip = props.renderTooltip,\n renderMark = props.renderMark,\n onChange = props.onChange,\n onChangeCommitted = props.onChangeCommitted,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"aria-label\", \"aria-labelledby\", \"aria-valuetext\", \"as\", \"barClassName\", \"className\", \"constraint\", \"defaultValue\", \"graduated\", \"progress\", \"vertical\", \"disabled\", \"classPrefix\", \"min\", \"max\", \"step\", \"value\", \"handleClassName\", \"handleStyle\", \"handleTitle\", \"tooltip\", \"getAriaValueText\", \"renderTooltip\", \"renderMark\", \"onChange\", \"onChangeCommitted\"]);\n var barRef = (0, _react.useRef)(null); // Define the parameter position of the handle\n\n var handleIndexs = (0, _react.useRef)([0, 1]);\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix;\n\n var _useCustom = (0, _utils.useCustom)('RangeSlider'),\n rtl = _useCustom.rtl;\n\n var classes = merge(className, withClassPrefix({\n vertical: vertical,\n disabled: disabled,\n graduated: graduated,\n 'with-mark': renderMark\n }));\n var max = (0, _react.useMemo)(function () {\n return (0, _utils2.precisionMath)(Math.floor((maxProp - min) / step) * step + min);\n }, [maxProp, min, step]);\n /**\n * Returns a valid value that does not exceed the specified range of values.\n */\n\n var getValidValue = (0, _react.useCallback)(function (value) {\n if (typeof value === 'undefined') {\n return;\n }\n\n return [(0, _utils2.checkValue)(value[0], min, max), (0, _utils2.checkValue)(value[1], min, max)];\n }, [max, min]);\n\n var _useControlled = (0, _utils.useControlled)(getValidValue(valueProp), getValidValue(defaultValue)),\n value = _useControlled[0],\n setValue = _useControlled[1]; // The count of values ​​that can be entered.\n\n\n var count = (0, _react.useMemo)(function () {\n return (0, _utils2.precisionMath)((max - min) / step);\n }, [max, min, step]); // Get the height of the progress bar\n\n var getBarHeight = (0, _react.useCallback)(function () {\n return barRef.current ? (0, _getHeight.default)(barRef.current) : 0;\n }, []); // Get the width of the progress bar\n\n var getBarWidth = (0, _react.useCallback)(function () {\n return barRef.current ? (0, _getWidth.default)(barRef.current) : 0;\n }, []);\n var getValueByOffset = (0, _react.useCallback)(function (offset) {\n var val = 0;\n\n if (isNaN(offset)) {\n return val;\n }\n\n if (vertical) {\n var barHeight = getBarHeight();\n val = Math.round(offset / (barHeight / count)) * step;\n } else {\n var barWidth = getBarWidth();\n val = Math.round(offset / (barWidth / count)) * step;\n }\n\n return (0, _utils2.precisionMath)(val);\n }, [count, getBarHeight, getBarWidth, step, vertical]);\n var getValueByPosition = (0, _react.useCallback)(function (event) {\n var barOffset = (0, _getOffset.default)(barRef.current);\n var offset = vertical ? barOffset.top + barOffset.height - event.pageY : event.pageX - barOffset.left;\n var val = rtl && !vertical ? barOffset.width - offset : offset;\n return getValueByOffset(val) + min;\n }, [getValueByOffset, min, rtl, vertical]);\n var getRangeValue = (0, _react.useCallback)(function (value, key, event) {\n // Get the corresponding value according to the cursor position\n var v = getValueByPosition(event); // Judge the handle key and put the corresponding value at the start or end.\n\n if (key === 'start') {\n return [v, value[1]];\n } else if (key === 'end') {\n return [value[0], v];\n }\n\n return value;\n }, [getValueByPosition]);\n var getNextValue = (0, _react.useCallback)(function (event, dataset) {\n var eventKey = dataset.key,\n range = dataset.range;\n var value = range.split(',').map(function (i) {\n return +i;\n });\n var nextValue = getValidValue(getRangeValue(value, eventKey, event));\n\n if (nextValue[0] >= nextValue[1]) {\n /**\n * When the value of `start` is greater than the value of` end`,\n * the position of the handle is reversed.\n */\n handleIndexs.current.reverse();\n\n if (eventKey === 'start') {\n nextValue[0] = value[1];\n } else {\n nextValue[1] = value[0];\n }\n }\n\n return nextValue;\n }, [getRangeValue, getValidValue]);\n /**\n * Whether a range is valid against given constraint (if any)\n * Should check before every `setValue` calls\n */\n\n var isRangeMatchingConstraint = (0, _react.useCallback)(function (range) {\n // If no constraint is defined, any range is valid\n if (!constraint) return true;\n return constraint(range);\n }, [constraint]);\n /**\n * Callback function that is fired when the mousemove is triggered\n */\n\n var handleDragMove = (0, _utils.useEventCallback)(function (event, dataset) {\n var nextValue = getNextValue(event, dataset);\n\n if (isRangeMatchingConstraint(nextValue)) {\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }\n });\n /**\n * Callback function that is fired when the mouseup is triggered\n */\n\n var handleChangeCommitted = (0, _react.useCallback)(function (event, dataset) {\n var nextValue = getNextValue(event, dataset);\n\n if (isRangeMatchingConstraint(nextValue)) {\n setValue(nextValue);\n onChangeCommitted === null || onChangeCommitted === void 0 ? void 0 : onChangeCommitted(nextValue, event);\n }\n }, [getNextValue, onChangeCommitted, isRangeMatchingConstraint, setValue]);\n var handleKeyDown = (0, _react.useCallback)(function (event) {\n var _event$target;\n\n var _event$target$dataset = (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target['dataset'],\n key = _event$target$dataset.key;\n\n var nextValue = [].concat(value);\n var increaseKey = rtl ? 'ArrowLeft' : 'ArrowRight';\n var decreaseKey = rtl ? 'ArrowRight' : 'ArrowLeft';\n var valueIndex = key === 'start' ? 0 : 1;\n\n switch (event.key) {\n case 'Home':\n nextValue[valueIndex] = min;\n break;\n\n case 'End':\n nextValue[valueIndex] = max;\n break;\n\n case increaseKey:\n case 'ArrowUp':\n nextValue[valueIndex] = Math.min(max, value[valueIndex] + step);\n break;\n\n case decreaseKey:\n case 'ArrowDown':\n nextValue[valueIndex] = Math.max(min, value[valueIndex] - step);\n break;\n\n default:\n return;\n } // When the start value is greater than the end value, let the handle and value switch positions.\n\n\n if (nextValue[0] >= nextValue[1]) {\n nextValue.reverse();\n handleIndexs.current.reverse();\n } // Prevent scroll of the page\n\n\n event.preventDefault();\n\n if (isRangeMatchingConstraint(nextValue)) {\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }\n }, [max, min, onChange, rtl, isRangeMatchingConstraint, setValue, step, value]);\n var handleClick = (0, _react.useCallback)(function (event) {\n if (disabled) {\n return;\n }\n\n var start = value[0],\n end = value[1];\n var v = getValueByPosition(event); // Judging that the current click value is closer to the values ​​of `start` and` end`.\n\n if (Math.abs(start - v) < Math.abs(end - v)) {\n start = v;\n } else {\n end = v;\n }\n\n var nextValue = getValidValue([start, end].sort());\n\n if (isRangeMatchingConstraint(nextValue)) {\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }\n }, [disabled, getValidValue, getValueByPosition, isRangeMatchingConstraint, onChange, setValue, value]);\n var handleProps = (0, _react.useMemo)(function () {\n return [{\n value: value[0],\n 'data-key': 'start',\n 'aria-valuenow': value[0],\n 'aria-valuetext': getAriaValueText ? getAriaValueText(value[0], 'start') : ariaValuetext,\n position: (value[0] - min) / (max - min) * 100\n }, {\n value: value[1],\n 'data-key': 'end',\n 'aria-valuenow': value[1],\n 'aria-valuetext': getAriaValueText ? getAriaValueText(value[1], 'end') : ariaValuetext,\n position: (value[1] - min) / (max - min) * 100\n }];\n }, [ariaValuetext, getAriaValueText, max, min, value]);\n var handleCommonProps = {\n rtl: rtl,\n disabled: disabled,\n vertical: vertical,\n tooltip: tooltip,\n className: handleClassName,\n style: handleStyle,\n renderTooltip: renderTooltip,\n onDragMove: handleDragMove,\n onDragEnd: handleChangeCommitted,\n onKeyDown: handleKeyDown,\n tabIndex: disabled ? undefined : 0,\n 'aria-orientation': vertical ? 'vertical' : 'horizontal',\n 'aria-disabled': disabled,\n 'aria-valuemax': max,\n 'aria-valuemin': min,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby\n };\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n ref: ref,\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 341,\n columnNumber: 5\n }\n }), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: merge(barClassName, prefix('bar')),\n ref: barRef,\n onClick: handleClick,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 342,\n columnNumber: 7\n }\n }, progress && /*#__PURE__*/_react.default.createElement(_ProgressBar.default, {\n rtl: rtl,\n vertical: vertical,\n start: (value[0] - min) / (max - min) * 100,\n end: (value[1] - min) / (max - min) * 100,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 344,\n columnNumber: 11\n }\n }), graduated && /*#__PURE__*/_react.default.createElement(_Graduated.default, {\n step: step,\n min: min,\n max: max,\n count: count,\n value: value,\n renderMark: renderMark,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 352,\n columnNumber: 11\n }\n })), /*#__PURE__*/_react.default.createElement(_Handle.default, (0, _extends2.default)({\n \"data-range\": value\n }, handleCommonProps, handleProps[handleIndexs.current[0]], {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 362,\n columnNumber: 7\n }\n }), handleTitle), /*#__PURE__*/_react.default.createElement(_Handle.default, (0, _extends2.default)({\n \"data-range\": value\n }, handleCommonProps, handleProps[handleIndexs.current[1]], {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 366,\n columnNumber: 7\n }\n }), handleTitle));\n});\n\nRangeSlider.displayName = 'RangeSlider';\nRangeSlider.propTypes = (0, _extends2.default)({}, _Slider.sliderPropTypes, {\n value: (0, _propTypeChecker.tupleType)(_propTypes.default.number.isRequired, _propTypes.default.number.isRequired),\n defaultValue: (0, _propTypeChecker.tupleType)(_propTypes.default.number.isRequired, _propTypes.default.number.isRequired)\n});\nvar _default = RangeSlider;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/RangeSlider/RangeSlider.tsx?");
4040
4040
 
4041
4041
  /***/ }),
4042
4042
 
@@ -5202,7 +5202,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
5202
5202
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
5203
5203
 
5204
5204
  "use strict";
5205
- eval("\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nexports.__esModule = true;\nexports.shouldShowNodeByParentExpanded = shouldShowNodeByParentExpanded;\nexports.flattenTree = flattenTree;\nexports.getNodeParents = getNodeParents;\nexports.getNodeParentKeys = getNodeParentKeys;\nexports.hasVisibleChildren = hasVisibleChildren;\nexports.compareArray = compareArray;\nexports.getDefaultExpandItemValues = getDefaultExpandItemValues;\nexports.getExpandItemValues = getExpandItemValues;\nexports.getDragNodeKeys = getDragNodeKeys;\nexports.calDropNodePosition = calDropNodePosition;\nexports.removeDragNode = removeDragNode;\nexports.createUpdateTreeDataFunction = createUpdateTreeDataFunction;\nexports.findNodeOfTree = findNodeOfTree;\nexports.filterNodesOfTree = filterNodesOfTree;\nexports.leftArrowHandler = leftArrowHandler;\nexports.rightArrowHandler = rightArrowHandler;\nexports.getExpandWhenSearching = getExpandWhenSearching;\nexports.getTreeActiveNode = getTreeActiveNode;\nexports.toggleExpand = toggleExpand;\nexports.getTreeNodeTitle = getTreeNodeTitle;\nexports.getChildrenByFlattenNodes = getChildrenByFlattenNodes;\nexports.useTreeDrag = useTreeDrag;\nexports.useFlattenTreeData = useFlattenTreeData;\nexports.useTreeNodeRefs = useTreeNodeRefs;\nexports.useTreeSearch = useTreeSearch;\nexports.useGetTreeNodeChildren = useGetTreeNodeChildren;\nexports.focusToActiveTreeNode = focusToActiveTreeNode;\nexports.isSearching = isSearching;\nexports.getTreeNodeIndent = getTreeNodeIndent;\nexports.getScrollToIndex = exports.focusPreviousItem = exports.focusNextItem = exports.focusTreeNode = exports.getElementByDataKey = exports.getActiveItem = exports.getActiveIndex = exports.getFocusableItems = void 0;\n\nvar _extends3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _isEmpty2 = _interopRequireDefault(__webpack_require__(/*! lodash/isEmpty */ \"./node_modules/lodash/isEmpty.js\"));\n\nvar _clone2 = _interopRequireDefault(__webpack_require__(/*! lodash/clone */ \"./node_modules/lodash/clone.js\"));\n\nvar _isNil2 = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _isArray2 = _interopRequireDefault(__webpack_require__(/*! lodash/isArray */ \"./node_modules/lodash/isArray.js\"));\n\nvar _omit2 = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _isUndefined2 = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\n\nvar _intersection2 = _interopRequireDefault(__webpack_require__(/*! lodash/intersection */ \"./node_modules/lodash/intersection.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _shallowEqualArray = _interopRequireDefault(__webpack_require__(/*! ../utils/shallowEqualArray */ \"./src/utils/shallowEqualArray.ts\"));\n\nvar _utils = __webpack_require__(/*! ../CheckTreePicker/utils */ \"./src/CheckTreePicker/utils.ts\");\n\nvar _utils2 = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\n\nvar _reactToString = _interopRequireDefault(__webpack_require__(/*! ./reactToString */ \"./src/utils/reactToString.ts\"));\n\nvar _constants = __webpack_require__(/*! ./constants */ \"./src/utils/constants.ts\");\n\n// gap of tree node\nvar TREE_NODE_GAP = 4;\n/**\n * according node parentNode expand state decide node whether to show\n * @param {*} expandItemValues\n * @param {*} parentKeys\n */\n\nfunction shouldShowNodeByParentExpanded(expandItemValues, parentKeys) {\n if (expandItemValues === void 0) {\n expandItemValues = [];\n }\n\n if (parentKeys === void 0) {\n parentKeys = [];\n }\n\n var intersectionKeys = (0, _intersection2.default)(expandItemValues, parentKeys);\n\n if (intersectionKeys.length === parentKeys.length) {\n return true;\n }\n\n return false;\n}\n/**\n * flatten tree structure to array\n * @param {*} tree\n * @param {*} childrenKey\n * @param {*} executor\n */\n\n\nfunction flattenTree(tree, childrenKey, executor) {\n if (childrenKey === void 0) {\n childrenKey = 'children';\n }\n\n var flattenData = [];\n\n var traverse = function traverse(data, parent) {\n if (!(0, _isArray2.default)(data)) {\n return;\n }\n\n data.forEach(function (item, index) {\n var node = typeof executor === 'function' ? executor(item, index) : item;\n node.parent = parent;\n flattenData.push((0, _extends3.default)({}, node));\n\n if (item[childrenKey]) {\n traverse(item[childrenKey], item);\n }\n });\n };\n\n traverse(tree, null);\n return flattenData;\n}\n/**\n * get all ancestor nodes of given node\n * @param {*} node\n */\n\n\nfunction getNodeParents(node, parentKey, valueKey) {\n if (parentKey === void 0) {\n parentKey = 'parent';\n }\n\n var parents = [];\n\n var traverse = function traverse(node) {\n if (node !== null && node !== void 0 && node[parentKey]) {\n traverse(node[parentKey]);\n\n if (valueKey) {\n parents.push(node[parentKey][valueKey]);\n } else {\n parents.push(node[parentKey]);\n }\n }\n };\n\n traverse(node);\n return parents;\n}\n/**\n * get all parentKeys of given node\n * @param nodes\n * @param node\n * @param valueKey\n */\n\n\nfunction getNodeParentKeys(nodes, node, valueKey) {\n var parentKeys = [];\n\n var traverse = function traverse(node) {\n if (node !== null && node !== void 0 && node.parent) {\n var _node$parent;\n\n traverse(nodes[node.parent.refKey]);\n parentKeys.push(node === null || node === void 0 ? void 0 : (_node$parent = node.parent) === null || _node$parent === void 0 ? void 0 : _node$parent[valueKey]);\n }\n };\n\n traverse(node);\n return parentKeys;\n}\n\nfunction hasVisibleChildren(node, childrenKey) {\n if (!Array.isArray(node[childrenKey])) {\n return false;\n }\n\n return node[childrenKey].some(function (child) {\n return child.visible;\n });\n}\n/**\n * shallow equal array\n * @param a\n * @param b\n */\n\n\nfunction compareArray(a, b) {\n return (0, _isArray2.default)(a) && (0, _isArray2.default)(b) && !(0, _shallowEqualArray.default)(a, b);\n}\n\nfunction getDefaultExpandItemValues(data, props) {\n var valueKey = props.valueKey,\n defaultExpandAll = props.defaultExpandAll,\n childrenKey = props.childrenKey,\n _props$defaultExpandI = props.defaultExpandItemValues,\n defaultExpandItemValues = _props$defaultExpandI === void 0 ? [] : _props$defaultExpandI;\n\n if (defaultExpandAll) {\n return flattenTree(data, childrenKey).filter(function (item) {\n return Array.isArray(item[childrenKey]) && item[childrenKey].length > 0;\n }).map(function (item) {\n return item[valueKey];\n });\n }\n\n return defaultExpandItemValues;\n}\n/**\n * 获取 expandItemValues 的 value\n * @param props\n */\n\n\nfunction getExpandItemValues(props) {\n var expandItemValues = props.expandItemValues,\n defaultExpandItemValues = props.defaultExpandItemValues;\n\n if (!(0, _isUndefined2.default)(expandItemValues) && Array.isArray(expandItemValues)) {\n return expandItemValues;\n }\n\n if (!(0, _isUndefined2.default)(defaultExpandItemValues) && Array.isArray(defaultExpandItemValues)) {\n return defaultExpandItemValues;\n }\n\n return [];\n}\n/**\n * get dragNode and it's children node keys\n * @param node\n * @param childrenKey\n * @param valueKey\n */\n\n\nfunction getDragNodeKeys(dragNode, childrenKey, valueKey) {\n var dragNodeKeys = [dragNode[valueKey]];\n\n var traverse = function traverse(data) {\n if ((data === null || data === void 0 ? void 0 : data.length) > 0) {\n data.forEach(function (node) {\n dragNodeKeys = dragNodeKeys.concat([node[valueKey]]);\n\n if (node[childrenKey]) {\n traverse(node[childrenKey]);\n }\n });\n }\n };\n\n traverse(dragNode[childrenKey]);\n return dragNodeKeys;\n}\n\nfunction calDropNodePosition(event, treeNodeElement) {\n var clientY = event.clientY;\n\n var _treeNodeElement$getB = treeNodeElement.getBoundingClientRect(),\n top = _treeNodeElement$getB.top,\n bottom = _treeNodeElement$getB.bottom;\n\n var gap = TREE_NODE_GAP; // bottom of node\n\n if (clientY >= bottom - gap && clientY <= bottom) {\n return _utils2.TREE_NODE_DROP_POSITION.DRAG_OVER_BOTTOM;\n } // top of node\n\n\n if (clientY <= top + gap && clientY >= top) {\n return _utils2.TREE_NODE_DROP_POSITION.DRAG_OVER_TOP;\n }\n\n if (clientY >= top + gap && clientY <= bottom - gap) {\n return _utils2.TREE_NODE_DROP_POSITION.DRAG_OVER;\n }\n\n return -1;\n}\n\nfunction removeDragNode(data, params, _ref) {\n var valueKey = _ref.valueKey,\n childrenKey = _ref.childrenKey;\n var dragNode = params.dragNode;\n\n var traverse = function traverse(items, parent) {\n for (var _index = 0; _index < items.length; _index += 1) {\n var _item = items[_index];\n\n if ((0, _utils2.shallowEqual)(_item[valueKey], dragNode[valueKey])) {\n items.splice(_index, 1); // when children is empty, delete children prop for hidden anchor\n\n if (items.length === 0 && parent) {\n delete parent.children;\n }\n\n break;\n }\n\n if (Array.isArray(_item[childrenKey])) {\n traverse(_item[childrenKey], _item);\n }\n }\n };\n\n traverse(data);\n}\n\nfunction createUpdateTreeDataFunction(params, _ref2) {\n var valueKey = _ref2.valueKey,\n childrenKey = _ref2.childrenKey;\n return function (tree) {\n var data = [].concat(tree);\n var dragNode = params.dragNode,\n dropNode = params.dropNode,\n dropNodePosition = params.dropNodePosition;\n removeDragNode(data, params, {\n valueKey: valueKey,\n childrenKey: childrenKey\n });\n\n var updateTree = function updateTree(items) {\n for (var _index2 = 0; _index2 < items.length; _index2 += 1) {\n var _item2 = items[_index2];\n\n if ((0, _utils2.shallowEqual)(_item2[valueKey], dropNode[valueKey])) {\n // drag to node inside\n if (dropNodePosition === _utils2.TREE_NODE_DROP_POSITION.DRAG_OVER) {\n _item2[childrenKey] = (0, _isNil2.default)(_item2[childrenKey]) ? [] : _item2[childrenKey];\n\n _item2[childrenKey].push(dragNode);\n\n break;\n } else if (dropNodePosition === _utils2.TREE_NODE_DROP_POSITION.DRAG_OVER_TOP) {\n // drag to top of node\n items.splice(_index2, 0, dragNode);\n break;\n } else if (dropNodePosition === _utils2.TREE_NODE_DROP_POSITION.DRAG_OVER_BOTTOM) {\n // drag to bottom of node\n items.splice(_index2 + 1, 0, dragNode);\n break;\n }\n }\n\n if (Array.isArray(_item2[childrenKey]) && _item2[childrenKey].length > 0) {\n updateTree(_item2[childrenKey]);\n }\n }\n };\n\n updateTree(data);\n return [].concat(data);\n };\n}\n\nfunction findNodeOfTree(data, check) {\n var findNode = function findNode(nodes) {\n if (nodes === void 0) {\n nodes = [];\n }\n\n for (var i = 0; i < nodes.length; i += 1) {\n var _item3 = nodes[i];\n\n if ((0, _isArray2.default)(_item3.children)) {\n var _node = findNode(_item3.children);\n\n if (_node) {\n return _node;\n }\n }\n\n if (check(_item3)) {\n return _item3;\n }\n }\n\n return undefined;\n };\n\n return findNode(data);\n}\n\nfunction filterNodesOfTree(data, check) {\n var findNodes = function findNodes(nodes) {\n if (nodes === void 0) {\n nodes = [];\n }\n\n var nextNodes = [];\n\n for (var i = 0; i < nodes.length; i += 1) {\n if ((0, _isArray2.default)(nodes[i].children)) {\n var nextChildren = findNodes(nodes[i].children);\n\n if (nextChildren.length) {\n var _item4 = (0, _clone2.default)(nodes[i]);\n\n _item4.children = nextChildren;\n nextNodes.push(_item4);\n continue;\n }\n }\n\n if (check(nodes[i])) {\n nextNodes.push(nodes[i]);\n }\n }\n\n return nextNodes;\n };\n\n return findNodes(data);\n}\n/**\n * get all focusable items\n * exclude not visible and disabled node\n * @param filteredData - filtered tree data\n * @param props - TreeProps\n * @param isSearching - component is in Searching\n * @returns\n */\n\n\nvar getFocusableItems = function getFocusableItems(filteredData, props, isSearching) {\n var disabledItemValues = props.disabledItemValues,\n valueKey = props.valueKey,\n childrenKey = props.childrenKey,\n expandItemValues = props.expandItemValues;\n var items = [];\n\n var loop = function loop(nodes) {\n nodes.forEach(function (node) {\n var disabled = disabledItemValues.some(function (disabledItem) {\n return (0, _utils2.shallowEqual)(disabledItem, node[valueKey]);\n });\n\n if (!disabled && node.visible) {\n items.push(node);\n } // always expand when searching\n\n\n var expand = isSearching ? true : expandItemValues.includes(node[valueKey]);\n\n if (node[childrenKey] && expand) {\n loop(node[childrenKey]);\n }\n });\n };\n\n loop(filteredData);\n return items;\n};\n/**\n * return all focusable Item and active Element index\n * @param focusItemValue\n * @param focusableItems items\n */\n\n\nexports.getFocusableItems = getFocusableItems;\n\nvar getActiveIndex = function getActiveIndex(focusItemValue, focusItems, valueKey) {\n var activeIndex = -1;\n focusItems.forEach(function (item, index) {\n if ((0, _utils2.shallowEqual)(item[valueKey], focusItemValue)) {\n activeIndex = index;\n }\n });\n return activeIndex;\n};\n/**\n * get current active element and node data\n * @param flattenNodes - flattenData\n */\n\n\nexports.getActiveIndex = getActiveIndex;\n\nvar getActiveItem = function getActiveItem(focusItemValue, flattenNodes, valueKey) {\n var nodeData = null;\n var activeNode = Object.values(flattenNodes).find(function (node) {\n return (0, _utils2.shallowEqual)(node[valueKey], focusItemValue);\n });\n\n if (activeNode) {\n nodeData = activeNode;\n }\n\n return nodeData;\n};\n\nexports.getActiveItem = getActiveItem;\n\nvar getElementByDataKey = function getElementByDataKey(dataKey, treeNodesRefs, selector) {\n var ele = treeNodesRefs[dataKey];\n\n if (ele instanceof Element) {\n return ele.querySelector(selector);\n }\n\n return null;\n};\n/**\n * focus to specify tree node\n * @param refKey - target node refKey\n * @param treeNodeRefs - all tree node refs object\n * @param selector - node css selector\n */\n\n\nexports.getElementByDataKey = getElementByDataKey;\n\nvar focusTreeNode = function focusTreeNode(refKey, treeNodeRefs, selector) {\n var _node$focus;\n\n var node = getElementByDataKey(refKey, treeNodeRefs, selector);\n node === null || node === void 0 ? void 0 : (_node$focus = node.focus) === null || _node$focus === void 0 ? void 0 : _node$focus.call(node);\n};\n\nexports.focusTreeNode = focusTreeNode;\n\n/**\n * focus next item with keyboard\n * @param param\n */\nvar focusNextItem = function focusNextItem(_ref3) {\n var focusItemValue = _ref3.focusItemValue,\n focusableItems = _ref3.focusableItems,\n treeNodesRefs = _ref3.treeNodesRefs,\n selector = _ref3.selector,\n valueKey = _ref3.valueKey,\n callback = _ref3.callback;\n var activeIndex = getActiveIndex(focusItemValue, focusableItems, valueKey);\n\n if (focusableItems.length === 0) {\n return;\n }\n\n var nextIndex = activeIndex === focusableItems.length - 1 ? 0 : activeIndex + 1;\n var nextFocusItemValue = focusableItems[nextIndex][valueKey];\n callback === null || callback === void 0 ? void 0 : callback(nextFocusItemValue);\n focusTreeNode(focusableItems[nextIndex].refKey, treeNodesRefs, selector);\n};\n/**\n * focus prev item with keyboard\n * @param param\n */\n\n\nexports.focusNextItem = focusNextItem;\n\nvar focusPreviousItem = function focusPreviousItem(_ref4) {\n var focusItemValue = _ref4.focusItemValue,\n focusableItems = _ref4.focusableItems,\n treeNodesRefs = _ref4.treeNodesRefs,\n selector = _ref4.selector,\n valueKey = _ref4.valueKey,\n callback = _ref4.callback;\n var activeIndex = getActiveIndex(focusItemValue, focusableItems, valueKey);\n\n if (focusableItems.length === 0) {\n return;\n }\n\n var prevIndex = activeIndex === 0 ? focusableItems.length - 1 : activeIndex - 1;\n prevIndex = prevIndex >= 0 ? prevIndex : 0;\n var prevFocusItemValue = focusableItems[prevIndex][valueKey];\n callback === null || callback === void 0 ? void 0 : callback(prevFocusItemValue);\n focusTreeNode(focusableItems[prevIndex].refKey, treeNodesRefs, selector);\n};\n\nexports.focusPreviousItem = focusPreviousItem;\n\n/**\n * Left arrow keyboard event handler\n * When focus is on an open node, closes the node.\n * When focus is on a child node that is also either an end node or a closed node, moves focus to its parent node.\n * When focus is on a root node that is also either an end node or a closed node, does nothing.\n * @see https://www.w3.org/TR/wai-aria-practices/#TreeView\n */\nfunction leftArrowHandler(_ref5) {\n var focusItem = _ref5.focusItem,\n expand = _ref5.expand,\n onExpand = _ref5.onExpand,\n onFocusItem = _ref5.onFocusItem;\n\n if ((0, _isEmpty2.default)(focusItem)) {\n return;\n }\n\n if (expand) {\n onExpand((0, _extends3.default)({}, focusItem, {\n expand: expand\n }));\n } else if (focusItem !== null && focusItem !== void 0 && focusItem.parent) {\n onFocusItem();\n }\n}\n/**\n * Right arrow keyboard event handler\n * When focus is on a closed node, opens the node; focus does not move.\n * When focus is on a open node, moves focus to the first child node.\n * When focus is on an end node, does nothing.\n * @see https://www.w3.org/TR/wai-aria-practices/#TreeView\n */\n\n\nfunction rightArrowHandler(_ref6) {\n var focusItem = _ref6.focusItem,\n expand = _ref6.expand,\n childrenKey = _ref6.childrenKey,\n onExpand = _ref6.onExpand,\n onFocusItem = _ref6.onFocusItem;\n\n if ((0, _isEmpty2.default)(focusItem) || !Array.isArray(focusItem[childrenKey])) {\n return;\n }\n\n if (!expand) {\n onExpand((0, _extends3.default)({}, focusItem, {\n expand: expand\n }));\n } else {\n onFocusItem();\n }\n}\n/**\n * get scrollIndex in virtualized list\n * @param nodes - data\n * @param value - activeItem value\n * @param valueKey\n */\n\n\nvar getScrollToIndex = function getScrollToIndex(nodes, value, valueKey) {\n return nodes.filter(function (n) {\n return n.visible;\n }).findIndex(function (item) {\n return item[valueKey] === value;\n });\n};\n/**\n * when searching, expand state always return true\n * @param searchKeyword\n * @param expand\n */\n\n\nexports.getScrollToIndex = getScrollToIndex;\n\nfunction getExpandWhenSearching(searchKeyword, expand) {\n return isSearching(searchKeyword) ? true : expand;\n}\n\nfunction getTreeActiveNode(nodes, value, valueKey) {\n if ((0, _isUndefined2.default)(value)) {\n return undefined;\n }\n\n for (var refKey in nodes) {\n if ((0, _utils2.shallowEqual)(nodes[refKey][valueKey], value)) {\n return nodes[refKey];\n }\n }\n}\n\n/**\n * toggle tree node\n * @param param0\n */\nfunction toggleExpand(_ref7) {\n var node = _ref7.node,\n isExpand = _ref7.isExpand,\n expandItemValues = _ref7.expandItemValues,\n valueKey = _ref7.valueKey;\n var newExpandItemValues = new Set(expandItemValues);\n\n if (isExpand) {\n newExpandItemValues.add(node[valueKey]);\n } else {\n newExpandItemValues.delete(node[valueKey]);\n }\n\n return Array.from(newExpandItemValues);\n}\n\nfunction getTreeNodeTitle(label) {\n if (typeof label === 'string') {\n return label;\n } else if ( /*#__PURE__*/_react.default.isValidElement(label)) {\n var _nodes = (0, _reactToString.default)(label);\n\n return _nodes.join('');\n }\n}\n/**\n * get all children from flattenNodes object by given parent node\n * @param nodes\n * @param parent\n */\n\n\nfunction getChildrenByFlattenNodes(nodes, parent) {\n if (!(0, _isNil2.default)(parent.refKey) && (0, _isNil2.default)(nodes[parent.refKey])) {\n return [];\n }\n\n return Object.values(nodes).filter(function (item) {\n var _item$parent;\n\n return (item === null || item === void 0 ? void 0 : (_item$parent = item.parent) === null || _item$parent === void 0 ? void 0 : _item$parent.refKey) === parent.refKey && !nodes[item.refKey].uncheckable;\n });\n}\n\nfunction useTreeDrag() {\n // current dragging node\n var dragNode = (0, _react.useRef)(null);\n\n var _useState = (0, _react.useState)(null),\n dragOverNodeKey = _useState[0],\n setDragOverNodeKey = _useState[1]; // drag node and it's children nodes key\n\n\n var _useState2 = (0, _react.useState)([]),\n dragNodeKeys = _useState2[0],\n setDragNodeKeys = _useState2[1];\n\n var _useState3 = (0, _react.useState)(null),\n dropNodePosition = _useState3[0],\n setDropNodePosition = _useState3[1];\n\n var setDragNode = function setDragNode(node) {\n dragNode.current = node;\n };\n\n return {\n dragNode: dragNode === null || dragNode === void 0 ? void 0 : dragNode.current,\n dragOverNodeKey: dragOverNodeKey,\n dragNodeKeys: dragNodeKeys,\n dropNodePosition: dropNodePosition,\n setDragNode: setDragNode,\n setDragOverNodeKey: setDragOverNodeKey,\n setDragNodeKeys: setDragNodeKeys,\n setDropNodePosition: setDropNodePosition\n };\n}\n\n/**\n * hooks for flatten tree structure\n * @param param0\n */\nfunction useFlattenTreeData(_ref8) {\n var data = _ref8.data,\n labelKey = _ref8.labelKey,\n valueKey = _ref8.valueKey,\n childrenKey = _ref8.childrenKey,\n _ref8$uncheckableItem = _ref8.uncheckableItemValues,\n uncheckableItemValues = _ref8$uncheckableItem === void 0 ? [] : _ref8$uncheckableItem,\n callback = _ref8.callback;\n\n var _useState4 = (0, _react.useState)(Object.create(null)),\n dispatch = _useState4[1];\n\n var forceUpdate = (0, _react.useCallback)(function () {\n dispatch(Object.create(null));\n }, [dispatch]);\n\n var _useRef = (0, _react.useRef)({}),\n _useRef$current = _useRef.current,\n flattenNodes = _useRef$current === void 0 ? {} : _useRef$current;\n\n var flattenTreeData = (0, _react.useCallback)(function (treeData, ref, parent, layer) {\n if (layer === void 0) {\n layer = 1;\n }\n\n if (!Array.isArray(treeData) || treeData.length === 0) {\n return [];\n }\n\n treeData.map(function (node, index) {\n var _extends2;\n\n var refKey = ref + \"-\" + index;\n node.refKey = refKey;\n flattenNodes[refKey] = (0, _extends3.default)((_extends2 = {\n layer: layer\n }, _extends2[labelKey] = node[labelKey], _extends2[valueKey] = node[valueKey], _extends2.uncheckable = uncheckableItemValues.some(function (value) {\n return (0, _utils2.shallowEqual)(node[valueKey], value);\n }), _extends2), node);\n\n if (parent) {\n flattenNodes[refKey].parent = (0, _omit2.default)(parent, 'parent', 'children');\n }\n\n flattenTreeData(node[childrenKey], refKey, node, layer + 1);\n });\n callback === null || callback === void 0 ? void 0 : callback(flattenNodes);\n }, [childrenKey, valueKey, labelKey, callback, uncheckableItemValues, flattenNodes]);\n var serializeListOnlyParent = (0, _react.useCallback)(function (nodes, key) {\n var list = [];\n Object.keys(nodes).forEach(function (refKey) {\n var currentNode = nodes[refKey];\n\n if (!(0, _isNil2.default)(currentNode.parent) && !(0, _isNil2.default)(currentNode.parent.refKey)) {\n var parentNode = nodes[currentNode.parent.refKey];\n\n if (currentNode[key]) {\n if (!(parentNode !== null && parentNode !== void 0 && parentNode.checkAll)) {\n list.push(nodes[refKey][valueKey]);\n } else if (parentNode !== null && parentNode !== void 0 && parentNode.uncheckable) {\n list.push(nodes[refKey][valueKey]);\n }\n }\n } else {\n if (currentNode[key]) {\n list.push(nodes[refKey][valueKey]);\n }\n }\n });\n return list;\n }, [valueKey]);\n /**\n * using in CheckTreePicker, to unSerializeList check property\n */\n\n var unSerializeList = (0, _react.useCallback)(function (_ref9) {\n var nodes = _ref9.nodes,\n key = _ref9.key,\n _ref9$value = _ref9.value,\n value = _ref9$value === void 0 ? [] : _ref9$value,\n cascade = _ref9.cascade,\n uncheckableItemValues = _ref9.uncheckableItemValues;\n // Reset values to false\n Object.keys(nodes).forEach(function (refKey) {\n var node = nodes[refKey];\n\n if (cascade && !(0, _isNil2.default)(node.parent) && !(0, _isNil2.default)(node.parent.refKey)) {\n node[key] = nodes[node.parent.refKey][key];\n } else {\n node[key] = false;\n }\n\n value.forEach(function (value) {\n if ((0, _utils2.shallowEqual)(nodes[refKey][valueKey], value) && !uncheckableItemValues.some(function (uncheckableValue) {\n return (0, _utils2.shallowEqual)(value, uncheckableValue);\n })) {\n nodes[refKey][key] = true;\n }\n });\n });\n }, [valueKey]);\n\n var formatVirtualizedTreeData = function formatVirtualizedTreeData(nodes, data, expandItemValues, options) {\n var cascade = options.cascade,\n searchKeyword = options.searchKeyword;\n return flattenTree(data, childrenKey, function (node) {\n var formatted = {};\n var curNode = nodes === null || nodes === void 0 ? void 0 : nodes[node.refKey];\n var parentKeys = getNodeParentKeys(nodes, curNode, valueKey);\n /**\n * When using virtualized,\n * if the parent node is collapsed, the child nodes should be hidden\n * avoid component height calculation errors\n */\n\n var visible = curNode !== null && curNode !== void 0 && curNode.parent ? shouldShowNodeByParentExpanded(expandItemValues, parentKeys) : true;\n /**\n * when searching, every node default expand\n * the node's visible should follow the original state\n */\n\n if (isSearching(searchKeyword)) {\n visible = node.visible;\n }\n\n if (curNode) {\n var checkState = !(0, _isUndefined2.default)(cascade) ? (0, _utils.getNodeCheckState)({\n node: curNode,\n cascade: cascade,\n nodes: nodes,\n childrenKey: childrenKey\n }) : undefined;\n formatted = (0, _extends3.default)({}, node, {\n check: curNode.check,\n uncheckable: curNode.uncheckable,\n hasChildren: !!node[childrenKey],\n layer: curNode.layer,\n parent: curNode.parent,\n checkState: checkState,\n visible: visible\n });\n }\n\n return formatted;\n });\n };\n\n (0, _react.useEffect)(function () {\n flattenTreeData(data, '0');\n }, [data]); // eslint-disable-line react-hooks/exhaustive-deps\n\n return {\n forceUpdate: forceUpdate,\n flattenNodes: flattenNodes,\n flattenTreeData: flattenTreeData,\n serializeListOnlyParent: serializeListOnlyParent,\n unSerializeList: unSerializeList,\n formatVirtualizedTreeData: formatVirtualizedTreeData\n };\n}\n/**\n * A hook that saving every tree node ref\n */\n\n\nfunction useTreeNodeRefs() {\n var treeNodeRefs = (0, _react.useRef)({});\n\n var saveTreeNodeRef = function saveTreeNodeRef(ref, refKey) {\n if (!(0, _isNil2.default)(refKey)) {\n treeNodeRefs.current[refKey] = ref;\n }\n };\n\n return {\n treeNodesRefs: treeNodeRefs.current,\n saveTreeNodeRef: saveTreeNodeRef\n };\n}\n\n/**\n * A hook that handles tree search filter options\n * @param props\n */\nfunction useTreeSearch(props) {\n var labelKey = props.labelKey,\n childrenKey = props.childrenKey,\n searchKeyword = props.searchKeyword,\n data = props.data,\n searchBy = props.searchBy,\n callback = props.callback;\n var filterVisibleData = (0, _react.useCallback)(function (data, searchKeyword) {\n var setVisible = function setVisible(nodes) {\n return nodes.forEach(function (item) {\n item.visible = searchBy ? searchBy(searchKeyword, item[labelKey], item) : (0, _Picker.shouldDisplay)(item[labelKey], searchKeyword);\n\n if ((0, _isArray2.default)(item[childrenKey])) {\n filterVisibleData(item[childrenKey], searchKeyword);\n item[childrenKey].forEach(function (child) {\n if (child.visible) {\n item.visible = child.visible;\n }\n });\n }\n });\n };\n\n setVisible(data);\n return data;\n }, [childrenKey, labelKey, searchBy]); // Use search keywords to filter options.\n\n var _useState5 = (0, _react.useState)(function () {\n return searchKeyword !== null && searchKeyword !== void 0 ? searchKeyword : '';\n }),\n searchKeywordState = _useState5[0],\n setSearchKeyword = _useState5[1];\n\n var _useState6 = (0, _react.useState)(function () {\n return filterVisibleData(data, searchKeywordState);\n }),\n filteredData = _useState6[0],\n setFilteredData = _useState6[1];\n\n var handleSetFilteredData = (0, _react.useCallback)(function (data, searchKeyword) {\n setFilteredData(filterVisibleData(data, searchKeyword));\n }, [filterVisibleData]);\n\n var handleSearch = function handleSearch(searchKeyword, event) {\n var filteredData = filterVisibleData(data, searchKeyword);\n setFilteredData(filteredData);\n setSearchKeyword(searchKeyword);\n callback === null || callback === void 0 ? void 0 : callback(searchKeyword, filteredData, event);\n };\n\n return {\n searchKeywordState: searchKeywordState,\n filteredData: filteredData,\n setFilteredData: handleSetFilteredData,\n setSearchKeyword: setSearchKeyword,\n handleSearch: handleSearch\n };\n}\n\nfunction useGetTreeNodeChildren(treeData, valueKey, childrenKey) {\n var _useState7 = (0, _react.useState)([]),\n loadingNodeValues = _useState7[0],\n setLoadingNodeValues = _useState7[1];\n\n var _useState8 = (0, _react.useState)(treeData),\n data = _useState8[0],\n setData = _useState8[1];\n\n var concatChildren = (0, _react.useCallback)(function (treeNode, children) {\n var value = treeNode[valueKey];\n treeNode = findNodeOfTree(data, function (item) {\n return value === item[valueKey];\n });\n treeNode[childrenKey] = children;\n var newData = data.concat([]);\n setData(newData);\n return newData;\n }, [data, valueKey, childrenKey]);\n var loadChildren = (0, _react.useCallback)(function (node, getChildren) {\n setLoadingNodeValues(function (prev) {\n return prev.concat(node[valueKey]);\n });\n var children = getChildren(node);\n\n if (children instanceof Promise) {\n children.then(function (res) {\n var newData = concatChildren(node, res);\n setData(newData);\n setLoadingNodeValues(function (prev) {\n return prev.filter(function (item) {\n return !(0, _utils2.shallowEqual)(item, node[valueKey]);\n });\n });\n });\n } else {\n setData(concatChildren(node, children));\n setLoadingNodeValues(function (prev) {\n return prev.filter(function (item) {\n return !(0, _utils2.shallowEqual)(item, node[valueKey]);\n });\n });\n }\n }, [concatChildren, valueKey]);\n return {\n data: data,\n setData: setData,\n loadingNodeValues: loadingNodeValues,\n loadChildren: loadChildren\n };\n}\n\n/**\n * Focus to active tree node.\n * @param param0\n */\nfunction focusToActiveTreeNode(_ref10) {\n var _activeItem$focus;\n\n var list = _ref10.list,\n valueKey = _ref10.valueKey,\n activeNode = _ref10.activeNode,\n virtualized = _ref10.virtualized,\n container = _ref10.container,\n selector = _ref10.selector,\n formattedNodes = _ref10.formattedNodes;\n if (!container) return;\n\n if (virtualized && activeNode) {\n var _list$scrollToRow;\n\n var scrollIndex = getScrollToIndex(formattedNodes, activeNode === null || activeNode === void 0 ? void 0 : activeNode[valueKey], valueKey);\n (_list$scrollToRow = list.scrollToRow) === null || _list$scrollToRow === void 0 ? void 0 : _list$scrollToRow.call(list, scrollIndex);\n return;\n }\n\n var activeItem = container.querySelector(selector);\n\n if (!activeItem) {\n return;\n }\n\n activeItem === null || activeItem === void 0 ? void 0 : (_activeItem$focus = activeItem.focus) === null || _activeItem$focus === void 0 ? void 0 : _activeItem$focus.call(activeItem);\n}\n\nfunction isSearching(searchKeyword) {\n return !(0, _isEmpty2.default)(searchKeyword);\n}\n\nfunction getTreeNodeIndent(rtl, layer, absolute) {\n var _ref12;\n\n if (absolute === void 0) {\n absolute = false;\n }\n\n // layer start from 1\n var offset = layer * _constants.TREE_NODE_PADDING + _constants.TREE_NODE_ROOT_PADDING;\n\n if (absolute) {\n var _ref11;\n\n return _ref11 = {}, _ref11[rtl ? 'right' : 'left'] = offset, _ref11;\n }\n\n return _ref12 = {}, _ref12[rtl ? 'paddingRight' : 'paddingLeft'] = offset, _ref12;\n}\n\n//# sourceURL=webpack://rsuite/./src/utils/treeUtils.ts?");
5205
+ eval("\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nexports.__esModule = true;\nexports.shouldShowNodeByParentExpanded = shouldShowNodeByParentExpanded;\nexports.flattenTree = flattenTree;\nexports.getNodeParents = getNodeParents;\nexports.getNodeParentKeys = getNodeParentKeys;\nexports.hasVisibleChildren = hasVisibleChildren;\nexports.compareArray = compareArray;\nexports.getDefaultExpandItemValues = getDefaultExpandItemValues;\nexports.getExpandItemValues = getExpandItemValues;\nexports.getDragNodeKeys = getDragNodeKeys;\nexports.calDropNodePosition = calDropNodePosition;\nexports.removeDragNode = removeDragNode;\nexports.createUpdateTreeDataFunction = createUpdateTreeDataFunction;\nexports.findNodeOfTree = findNodeOfTree;\nexports.filterNodesOfTree = filterNodesOfTree;\nexports.leftArrowHandler = leftArrowHandler;\nexports.rightArrowHandler = rightArrowHandler;\nexports.getExpandWhenSearching = getExpandWhenSearching;\nexports.getTreeActiveNode = getTreeActiveNode;\nexports.toggleExpand = toggleExpand;\nexports.getTreeNodeTitle = getTreeNodeTitle;\nexports.getChildrenByFlattenNodes = getChildrenByFlattenNodes;\nexports.useTreeDrag = useTreeDrag;\nexports.useFlattenTreeData = useFlattenTreeData;\nexports.useTreeNodeRefs = useTreeNodeRefs;\nexports.useTreeSearch = useTreeSearch;\nexports.useGetTreeNodeChildren = useGetTreeNodeChildren;\nexports.focusToActiveTreeNode = focusToActiveTreeNode;\nexports.isSearching = isSearching;\nexports.getTreeNodeIndent = getTreeNodeIndent;\nexports.getScrollToIndex = exports.focusPreviousItem = exports.focusNextItem = exports.focusTreeNode = exports.getElementByDataKey = exports.getActiveItem = exports.getActiveIndex = exports.getFocusableItems = void 0;\n\nvar _extends3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _isEmpty2 = _interopRequireDefault(__webpack_require__(/*! lodash/isEmpty */ \"./node_modules/lodash/isEmpty.js\"));\n\nvar _clone2 = _interopRequireDefault(__webpack_require__(/*! lodash/clone */ \"./node_modules/lodash/clone.js\"));\n\nvar _isNil2 = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _isArray2 = _interopRequireDefault(__webpack_require__(/*! lodash/isArray */ \"./node_modules/lodash/isArray.js\"));\n\nvar _omit2 = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _isUndefined2 = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\n\nvar _intersection2 = _interopRequireDefault(__webpack_require__(/*! lodash/intersection */ \"./node_modules/lodash/intersection.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _shallowEqualArray = _interopRequireDefault(__webpack_require__(/*! ../utils/shallowEqualArray */ \"./src/utils/shallowEqualArray.ts\"));\n\nvar _utils = __webpack_require__(/*! ../CheckTreePicker/utils */ \"./src/CheckTreePicker/utils.ts\");\n\nvar _utils2 = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\n\nvar _reactToString = _interopRequireDefault(__webpack_require__(/*! ./reactToString */ \"./src/utils/reactToString.ts\"));\n\nvar _constants = __webpack_require__(/*! ./constants */ \"./src/utils/constants.ts\");\n\n// gap of tree node\nvar TREE_NODE_GAP = 4;\n/**\n * according node parentNode expand state decide node whether to show\n * @param {*} expandItemValues\n * @param {*} parentKeys\n */\n\nfunction shouldShowNodeByParentExpanded(expandItemValues, parentKeys) {\n if (expandItemValues === void 0) {\n expandItemValues = [];\n }\n\n if (parentKeys === void 0) {\n parentKeys = [];\n }\n\n var intersectionKeys = (0, _intersection2.default)(expandItemValues, parentKeys);\n\n if (intersectionKeys.length === parentKeys.length) {\n return true;\n }\n\n return false;\n}\n/**\n * flatten tree structure to array\n * @param {*} tree\n * @param {*} childrenKey\n * @param {*} executor\n */\n\n\nfunction flattenTree(tree, childrenKey, executor) {\n if (childrenKey === void 0) {\n childrenKey = 'children';\n }\n\n var flattenData = [];\n\n var traverse = function traverse(data, parent) {\n if (!(0, _isArray2.default)(data)) {\n return;\n }\n\n data.forEach(function (item, index) {\n var node = typeof executor === 'function' ? executor(item, index) : item;\n node.parent = parent;\n flattenData.push((0, _extends3.default)({}, node));\n\n if (item[childrenKey]) {\n traverse(item[childrenKey], item);\n }\n });\n };\n\n traverse(tree, null);\n return flattenData;\n}\n/**\n * get all ancestor nodes of given node\n * @param {*} node\n */\n\n\nfunction getNodeParents(node, parentKey, valueKey) {\n if (parentKey === void 0) {\n parentKey = 'parent';\n }\n\n var parents = [];\n\n var traverse = function traverse(node) {\n if (node !== null && node !== void 0 && node[parentKey]) {\n traverse(node[parentKey]);\n\n if (valueKey) {\n parents.push(node[parentKey][valueKey]);\n } else {\n parents.push(node[parentKey]);\n }\n }\n };\n\n traverse(node);\n return parents;\n}\n/**\n * get all parentKeys of given node\n * @param nodes\n * @param node\n * @param valueKey\n */\n\n\nfunction getNodeParentKeys(nodes, node, valueKey) {\n var parentKeys = [];\n\n var traverse = function traverse(node) {\n if (node !== null && node !== void 0 && node.parent) {\n var _node$parent;\n\n traverse(nodes[node.parent.refKey]);\n parentKeys.push(node === null || node === void 0 ? void 0 : (_node$parent = node.parent) === null || _node$parent === void 0 ? void 0 : _node$parent[valueKey]);\n }\n };\n\n traverse(node);\n return parentKeys;\n}\n\nfunction hasVisibleChildren(node, childrenKey) {\n if (!Array.isArray(node[childrenKey])) {\n return false;\n }\n\n return node[childrenKey].some(function (child) {\n return child.visible;\n });\n}\n/**\n * shallow equal array\n * @param a\n * @param b\n */\n\n\nfunction compareArray(a, b) {\n return (0, _isArray2.default)(a) && (0, _isArray2.default)(b) && !(0, _shallowEqualArray.default)(a, b);\n}\n\nfunction getDefaultExpandItemValues(data, props) {\n var valueKey = props.valueKey,\n defaultExpandAll = props.defaultExpandAll,\n childrenKey = props.childrenKey,\n _props$defaultExpandI = props.defaultExpandItemValues,\n defaultExpandItemValues = _props$defaultExpandI === void 0 ? [] : _props$defaultExpandI;\n\n if (defaultExpandAll) {\n return flattenTree(data, childrenKey).filter(function (item) {\n return Array.isArray(item[childrenKey]) && item[childrenKey].length > 0;\n }).map(function (item) {\n return item[valueKey];\n });\n }\n\n return defaultExpandItemValues;\n}\n/**\n * 获取 expandItemValues 的 value\n * @param props\n */\n\n\nfunction getExpandItemValues(props) {\n var expandItemValues = props.expandItemValues,\n defaultExpandItemValues = props.defaultExpandItemValues;\n\n if (!(0, _isUndefined2.default)(expandItemValues) && Array.isArray(expandItemValues)) {\n return expandItemValues;\n }\n\n if (!(0, _isUndefined2.default)(defaultExpandItemValues) && Array.isArray(defaultExpandItemValues)) {\n return defaultExpandItemValues;\n }\n\n return [];\n}\n/**\n * get dragNode and it's children node keys\n * @param node\n * @param childrenKey\n * @param valueKey\n */\n\n\nfunction getDragNodeKeys(dragNode, childrenKey, valueKey) {\n var dragNodeKeys = [dragNode[valueKey]];\n\n var traverse = function traverse(data) {\n if ((data === null || data === void 0 ? void 0 : data.length) > 0) {\n data.forEach(function (node) {\n dragNodeKeys = dragNodeKeys.concat([node[valueKey]]);\n\n if (node[childrenKey]) {\n traverse(node[childrenKey]);\n }\n });\n }\n };\n\n traverse(dragNode[childrenKey]);\n return dragNodeKeys;\n}\n\nfunction calDropNodePosition(event, treeNodeElement) {\n var clientY = event.clientY;\n\n var _treeNodeElement$getB = treeNodeElement.getBoundingClientRect(),\n top = _treeNodeElement$getB.top,\n bottom = _treeNodeElement$getB.bottom;\n\n var gap = TREE_NODE_GAP; // bottom of node\n\n if (clientY >= bottom - gap && clientY <= bottom) {\n return _utils2.TREE_NODE_DROP_POSITION.DRAG_OVER_BOTTOM;\n } // top of node\n\n\n if (clientY <= top + gap && clientY >= top) {\n return _utils2.TREE_NODE_DROP_POSITION.DRAG_OVER_TOP;\n }\n\n if (clientY >= top + gap && clientY <= bottom - gap) {\n return _utils2.TREE_NODE_DROP_POSITION.DRAG_OVER;\n }\n\n return -1;\n}\n\nfunction removeDragNode(data, params, _ref) {\n var valueKey = _ref.valueKey,\n childrenKey = _ref.childrenKey;\n var dragNode = params.dragNode;\n\n var traverse = function traverse(items, parent) {\n for (var _index = 0; _index < items.length; _index += 1) {\n var _item = items[_index];\n\n if ((0, _utils2.shallowEqual)(_item[valueKey], dragNode[valueKey])) {\n items.splice(_index, 1); // when children is empty, delete children prop for hidden anchor\n\n if (items.length === 0 && parent) {\n delete parent.children;\n }\n\n break;\n }\n\n if (Array.isArray(_item[childrenKey])) {\n traverse(_item[childrenKey], _item);\n }\n }\n };\n\n traverse(data);\n}\n\nfunction createUpdateTreeDataFunction(params, _ref2) {\n var valueKey = _ref2.valueKey,\n childrenKey = _ref2.childrenKey;\n return function (tree) {\n var data = [].concat(tree);\n var dragNode = params.dragNode,\n dropNode = params.dropNode,\n dropNodePosition = params.dropNodePosition;\n var cloneDragNode = (0, _extends3.default)({}, dragNode);\n removeDragNode(data, params, {\n valueKey: valueKey,\n childrenKey: childrenKey\n });\n\n var updateTree = function updateTree(items) {\n for (var _index2 = 0; _index2 < items.length; _index2 += 1) {\n var _item2 = items[_index2];\n\n if ((0, _utils2.shallowEqual)(_item2[valueKey], dropNode[valueKey])) {\n // drag to node inside\n if (dropNodePosition === _utils2.TREE_NODE_DROP_POSITION.DRAG_OVER) {\n _item2[childrenKey] = (0, _isNil2.default)(_item2[childrenKey]) ? [] : _item2[childrenKey];\n\n _item2[childrenKey].push(cloneDragNode);\n\n break;\n } else if (dropNodePosition === _utils2.TREE_NODE_DROP_POSITION.DRAG_OVER_TOP) {\n // drag to top of node\n items.splice(_index2, 0, cloneDragNode);\n break;\n } else if (dropNodePosition === _utils2.TREE_NODE_DROP_POSITION.DRAG_OVER_BOTTOM) {\n // drag to bottom of node\n items.splice(_index2 + 1, 0, cloneDragNode);\n break;\n }\n }\n\n if (Array.isArray(_item2[childrenKey]) && _item2[childrenKey].length > 0) {\n updateTree(_item2[childrenKey]);\n }\n }\n };\n\n updateTree(data);\n return [].concat(data);\n };\n}\n\nfunction findNodeOfTree(data, check) {\n var findNode = function findNode(nodes) {\n if (nodes === void 0) {\n nodes = [];\n }\n\n for (var i = 0; i < nodes.length; i += 1) {\n var _item3 = nodes[i];\n\n if ((0, _isArray2.default)(_item3.children)) {\n var _node = findNode(_item3.children);\n\n if (_node) {\n return _node;\n }\n }\n\n if (check(_item3)) {\n return _item3;\n }\n }\n\n return undefined;\n };\n\n return findNode(data);\n}\n\nfunction filterNodesOfTree(data, check) {\n var findNodes = function findNodes(nodes) {\n if (nodes === void 0) {\n nodes = [];\n }\n\n var nextNodes = [];\n\n for (var i = 0; i < nodes.length; i += 1) {\n if ((0, _isArray2.default)(nodes[i].children)) {\n var nextChildren = findNodes(nodes[i].children);\n\n if (nextChildren.length) {\n var _item4 = (0, _clone2.default)(nodes[i]);\n\n _item4.children = nextChildren;\n nextNodes.push(_item4);\n continue;\n }\n }\n\n if (check(nodes[i])) {\n nextNodes.push(nodes[i]);\n }\n }\n\n return nextNodes;\n };\n\n return findNodes(data);\n}\n/**\n * get all focusable items\n * exclude not visible and disabled node\n * @param filteredData - filtered tree data\n * @param props - TreeProps\n * @param isSearching - component is in Searching\n * @returns\n */\n\n\nvar getFocusableItems = function getFocusableItems(filteredData, props, isSearching) {\n var disabledItemValues = props.disabledItemValues,\n valueKey = props.valueKey,\n childrenKey = props.childrenKey,\n expandItemValues = props.expandItemValues;\n var items = [];\n\n var loop = function loop(nodes) {\n nodes.forEach(function (node) {\n var disabled = disabledItemValues.some(function (disabledItem) {\n return (0, _utils2.shallowEqual)(disabledItem, node[valueKey]);\n });\n\n if (!disabled && node.visible) {\n items.push(node);\n } // always expand when searching\n\n\n var expand = isSearching ? true : expandItemValues.includes(node[valueKey]);\n\n if (node[childrenKey] && expand) {\n loop(node[childrenKey]);\n }\n });\n };\n\n loop(filteredData);\n return items;\n};\n/**\n * return all focusable Item and active Element index\n * @param focusItemValue\n * @param focusableItems items\n */\n\n\nexports.getFocusableItems = getFocusableItems;\n\nvar getActiveIndex = function getActiveIndex(focusItemValue, focusItems, valueKey) {\n var activeIndex = -1;\n focusItems.forEach(function (item, index) {\n if ((0, _utils2.shallowEqual)(item[valueKey], focusItemValue)) {\n activeIndex = index;\n }\n });\n return activeIndex;\n};\n/**\n * get current active element and node data\n * @param flattenNodes - flattenData\n */\n\n\nexports.getActiveIndex = getActiveIndex;\n\nvar getActiveItem = function getActiveItem(focusItemValue, flattenNodes, valueKey) {\n var nodeData = null;\n var activeNode = Object.values(flattenNodes).find(function (node) {\n return (0, _utils2.shallowEqual)(node[valueKey], focusItemValue);\n });\n\n if (activeNode) {\n nodeData = activeNode;\n }\n\n return nodeData;\n};\n\nexports.getActiveItem = getActiveItem;\n\nvar getElementByDataKey = function getElementByDataKey(dataKey, treeNodesRefs, selector) {\n var ele = treeNodesRefs[dataKey];\n\n if (ele instanceof Element) {\n return ele.querySelector(selector);\n }\n\n return null;\n};\n/**\n * focus to specify tree node\n * @param refKey - target node refKey\n * @param treeNodeRefs - all tree node refs object\n * @param selector - node css selector\n */\n\n\nexports.getElementByDataKey = getElementByDataKey;\n\nvar focusTreeNode = function focusTreeNode(refKey, treeNodeRefs, selector) {\n var _node$focus;\n\n var node = getElementByDataKey(refKey, treeNodeRefs, selector);\n node === null || node === void 0 ? void 0 : (_node$focus = node.focus) === null || _node$focus === void 0 ? void 0 : _node$focus.call(node);\n};\n\nexports.focusTreeNode = focusTreeNode;\n\n/**\n * focus next item with keyboard\n * @param param\n */\nvar focusNextItem = function focusNextItem(_ref3) {\n var focusItemValue = _ref3.focusItemValue,\n focusableItems = _ref3.focusableItems,\n treeNodesRefs = _ref3.treeNodesRefs,\n selector = _ref3.selector,\n valueKey = _ref3.valueKey,\n callback = _ref3.callback;\n var activeIndex = getActiveIndex(focusItemValue, focusableItems, valueKey);\n\n if (focusableItems.length === 0) {\n return;\n }\n\n var nextIndex = activeIndex === focusableItems.length - 1 ? 0 : activeIndex + 1;\n var nextFocusItemValue = focusableItems[nextIndex][valueKey];\n callback === null || callback === void 0 ? void 0 : callback(nextFocusItemValue);\n focusTreeNode(focusableItems[nextIndex].refKey, treeNodesRefs, selector);\n};\n/**\n * focus prev item with keyboard\n * @param param\n */\n\n\nexports.focusNextItem = focusNextItem;\n\nvar focusPreviousItem = function focusPreviousItem(_ref4) {\n var focusItemValue = _ref4.focusItemValue,\n focusableItems = _ref4.focusableItems,\n treeNodesRefs = _ref4.treeNodesRefs,\n selector = _ref4.selector,\n valueKey = _ref4.valueKey,\n callback = _ref4.callback;\n var activeIndex = getActiveIndex(focusItemValue, focusableItems, valueKey);\n\n if (focusableItems.length === 0) {\n return;\n }\n\n var prevIndex = activeIndex === 0 ? focusableItems.length - 1 : activeIndex - 1;\n prevIndex = prevIndex >= 0 ? prevIndex : 0;\n var prevFocusItemValue = focusableItems[prevIndex][valueKey];\n callback === null || callback === void 0 ? void 0 : callback(prevFocusItemValue);\n focusTreeNode(focusableItems[prevIndex].refKey, treeNodesRefs, selector);\n};\n\nexports.focusPreviousItem = focusPreviousItem;\n\n/**\n * Left arrow keyboard event handler\n * When focus is on an open node, closes the node.\n * When focus is on a child node that is also either an end node or a closed node, moves focus to its parent node.\n * When focus is on a root node that is also either an end node or a closed node, does nothing.\n * @see https://www.w3.org/TR/wai-aria-practices/#TreeView\n */\nfunction leftArrowHandler(_ref5) {\n var focusItem = _ref5.focusItem,\n expand = _ref5.expand,\n onExpand = _ref5.onExpand,\n onFocusItem = _ref5.onFocusItem;\n\n if ((0, _isEmpty2.default)(focusItem)) {\n return;\n }\n\n if (expand) {\n onExpand((0, _extends3.default)({}, focusItem, {\n expand: expand\n }));\n } else if (focusItem !== null && focusItem !== void 0 && focusItem.parent) {\n onFocusItem();\n }\n}\n/**\n * Right arrow keyboard event handler\n * When focus is on a closed node, opens the node; focus does not move.\n * When focus is on a open node, moves focus to the first child node.\n * When focus is on an end node, does nothing.\n * @see https://www.w3.org/TR/wai-aria-practices/#TreeView\n */\n\n\nfunction rightArrowHandler(_ref6) {\n var focusItem = _ref6.focusItem,\n expand = _ref6.expand,\n childrenKey = _ref6.childrenKey,\n onExpand = _ref6.onExpand,\n onFocusItem = _ref6.onFocusItem;\n\n if ((0, _isEmpty2.default)(focusItem) || !Array.isArray(focusItem[childrenKey])) {\n return;\n }\n\n if (!expand) {\n onExpand((0, _extends3.default)({}, focusItem, {\n expand: expand\n }));\n } else {\n onFocusItem();\n }\n}\n/**\n * get scrollIndex in virtualized list\n * @param nodes - data\n * @param value - activeItem value\n * @param valueKey\n */\n\n\nvar getScrollToIndex = function getScrollToIndex(nodes, value, valueKey) {\n return nodes.filter(function (n) {\n return n.visible;\n }).findIndex(function (item) {\n return item[valueKey] === value;\n });\n};\n/**\n * when searching, expand state always return true\n * @param searchKeyword\n * @param expand\n */\n\n\nexports.getScrollToIndex = getScrollToIndex;\n\nfunction getExpandWhenSearching(searchKeyword, expand) {\n return isSearching(searchKeyword) ? true : expand;\n}\n\nfunction getTreeActiveNode(nodes, value, valueKey) {\n if ((0, _isUndefined2.default)(value)) {\n return undefined;\n }\n\n for (var refKey in nodes) {\n if ((0, _utils2.shallowEqual)(nodes[refKey][valueKey], value)) {\n return nodes[refKey];\n }\n }\n}\n\n/**\n * toggle tree node\n * @param param0\n */\nfunction toggleExpand(_ref7) {\n var node = _ref7.node,\n isExpand = _ref7.isExpand,\n expandItemValues = _ref7.expandItemValues,\n valueKey = _ref7.valueKey;\n var newExpandItemValues = new Set(expandItemValues);\n\n if (isExpand) {\n newExpandItemValues.add(node[valueKey]);\n } else {\n newExpandItemValues.delete(node[valueKey]);\n }\n\n return Array.from(newExpandItemValues);\n}\n\nfunction getTreeNodeTitle(label) {\n if (typeof label === 'string') {\n return label;\n } else if ( /*#__PURE__*/_react.default.isValidElement(label)) {\n var _nodes = (0, _reactToString.default)(label);\n\n return _nodes.join('');\n }\n}\n/**\n * get all children from flattenNodes object by given parent node\n * @param nodes\n * @param parent\n */\n\n\nfunction getChildrenByFlattenNodes(nodes, parent) {\n if (!(0, _isNil2.default)(parent.refKey) && (0, _isNil2.default)(nodes[parent.refKey])) {\n return [];\n }\n\n return Object.values(nodes).filter(function (item) {\n var _item$parent;\n\n return (item === null || item === void 0 ? void 0 : (_item$parent = item.parent) === null || _item$parent === void 0 ? void 0 : _item$parent.refKey) === parent.refKey && !nodes[item.refKey].uncheckable;\n });\n}\n\nfunction useTreeDrag() {\n // current dragging node\n var dragNode = (0, _react.useRef)(null);\n\n var _useState = (0, _react.useState)(null),\n dragOverNodeKey = _useState[0],\n setDragOverNodeKey = _useState[1]; // drag node and it's children nodes key\n\n\n var _useState2 = (0, _react.useState)([]),\n dragNodeKeys = _useState2[0],\n setDragNodeKeys = _useState2[1];\n\n var _useState3 = (0, _react.useState)(null),\n dropNodePosition = _useState3[0],\n setDropNodePosition = _useState3[1];\n\n var setDragNode = function setDragNode(node) {\n dragNode.current = node;\n };\n\n return {\n dragNode: dragNode === null || dragNode === void 0 ? void 0 : dragNode.current,\n dragOverNodeKey: dragOverNodeKey,\n dragNodeKeys: dragNodeKeys,\n dropNodePosition: dropNodePosition,\n setDragNode: setDragNode,\n setDragOverNodeKey: setDragOverNodeKey,\n setDragNodeKeys: setDragNodeKeys,\n setDropNodePosition: setDropNodePosition\n };\n}\n\n/**\n * hooks for flatten tree structure\n * @param param0\n */\nfunction useFlattenTreeData(_ref8) {\n var data = _ref8.data,\n labelKey = _ref8.labelKey,\n valueKey = _ref8.valueKey,\n childrenKey = _ref8.childrenKey,\n _ref8$uncheckableItem = _ref8.uncheckableItemValues,\n uncheckableItemValues = _ref8$uncheckableItem === void 0 ? [] : _ref8$uncheckableItem,\n callback = _ref8.callback;\n\n var _useState4 = (0, _react.useState)(Object.create(null)),\n dispatch = _useState4[1];\n\n var forceUpdate = (0, _react.useCallback)(function () {\n dispatch(Object.create(null));\n }, [dispatch]);\n\n var _useRef = (0, _react.useRef)({}),\n _useRef$current = _useRef.current,\n flattenNodes = _useRef$current === void 0 ? {} : _useRef$current;\n\n var flattenTreeData = (0, _react.useCallback)(function (treeData, ref, parent, layer) {\n if (layer === void 0) {\n layer = 1;\n }\n\n if (!Array.isArray(treeData) || treeData.length === 0) {\n return [];\n }\n\n treeData.map(function (node, index) {\n var _extends2;\n\n var refKey = ref + \"-\" + index;\n node.refKey = refKey;\n flattenNodes[refKey] = (0, _extends3.default)((_extends2 = {\n layer: layer\n }, _extends2[labelKey] = node[labelKey], _extends2[valueKey] = node[valueKey], _extends2.uncheckable = uncheckableItemValues.some(function (value) {\n return (0, _utils2.shallowEqual)(node[valueKey], value);\n }), _extends2), node);\n\n if (parent) {\n flattenNodes[refKey].parent = (0, _omit2.default)(parent, 'parent', 'children');\n }\n\n flattenTreeData(node[childrenKey], refKey, node, layer + 1);\n });\n callback === null || callback === void 0 ? void 0 : callback(flattenNodes);\n }, [childrenKey, valueKey, labelKey, callback, uncheckableItemValues, flattenNodes]);\n var serializeListOnlyParent = (0, _react.useCallback)(function (nodes, key) {\n var list = [];\n Object.keys(nodes).forEach(function (refKey) {\n var currentNode = nodes[refKey];\n\n if (!(0, _isNil2.default)(currentNode.parent) && !(0, _isNil2.default)(currentNode.parent.refKey)) {\n var parentNode = nodes[currentNode.parent.refKey];\n\n if (currentNode[key]) {\n if (!(parentNode !== null && parentNode !== void 0 && parentNode.checkAll)) {\n list.push(nodes[refKey][valueKey]);\n } else if (parentNode !== null && parentNode !== void 0 && parentNode.uncheckable) {\n list.push(nodes[refKey][valueKey]);\n }\n }\n } else {\n if (currentNode[key]) {\n list.push(nodes[refKey][valueKey]);\n }\n }\n });\n return list;\n }, [valueKey]);\n /**\n * using in CheckTreePicker, to unSerializeList check property\n */\n\n var unSerializeList = (0, _react.useCallback)(function (_ref9) {\n var nodes = _ref9.nodes,\n key = _ref9.key,\n _ref9$value = _ref9.value,\n value = _ref9$value === void 0 ? [] : _ref9$value,\n cascade = _ref9.cascade,\n uncheckableItemValues = _ref9.uncheckableItemValues;\n // Reset values to false\n Object.keys(nodes).forEach(function (refKey) {\n var node = nodes[refKey];\n\n if (cascade && !(0, _isNil2.default)(node.parent) && !(0, _isNil2.default)(node.parent.refKey)) {\n node[key] = nodes[node.parent.refKey][key];\n } else {\n node[key] = false;\n }\n\n value.forEach(function (value) {\n if ((0, _utils2.shallowEqual)(nodes[refKey][valueKey], value) && !uncheckableItemValues.some(function (uncheckableValue) {\n return (0, _utils2.shallowEqual)(value, uncheckableValue);\n })) {\n nodes[refKey][key] = true;\n }\n });\n });\n }, [valueKey]);\n\n var formatVirtualizedTreeData = function formatVirtualizedTreeData(nodes, data, expandItemValues, options) {\n var cascade = options.cascade,\n searchKeyword = options.searchKeyword;\n return flattenTree(data, childrenKey, function (node) {\n var formatted = {};\n var curNode = nodes === null || nodes === void 0 ? void 0 : nodes[node.refKey];\n var parentKeys = getNodeParentKeys(nodes, curNode, valueKey);\n /**\n * When using virtualized,\n * if the parent node is collapsed, the child nodes should be hidden\n * avoid component height calculation errors\n */\n\n var visible = curNode !== null && curNode !== void 0 && curNode.parent ? shouldShowNodeByParentExpanded(expandItemValues, parentKeys) : true;\n /**\n * when searching, every node default expand\n * the node's visible should follow the original state\n */\n\n if (isSearching(searchKeyword)) {\n visible = node.visible;\n }\n\n if (curNode) {\n var checkState = !(0, _isUndefined2.default)(cascade) ? (0, _utils.getNodeCheckState)({\n node: curNode,\n cascade: cascade,\n nodes: nodes,\n childrenKey: childrenKey\n }) : undefined;\n formatted = (0, _extends3.default)({}, node, {\n check: curNode.check,\n uncheckable: curNode.uncheckable,\n hasChildren: !!node[childrenKey],\n layer: curNode.layer,\n parent: curNode.parent,\n checkState: checkState,\n visible: visible\n });\n }\n\n return formatted;\n });\n };\n\n (0, _react.useEffect)(function () {\n flattenTreeData(data, '0');\n }, [data]); // eslint-disable-line react-hooks/exhaustive-deps\n\n return {\n forceUpdate: forceUpdate,\n flattenNodes: flattenNodes,\n flattenTreeData: flattenTreeData,\n serializeListOnlyParent: serializeListOnlyParent,\n unSerializeList: unSerializeList,\n formatVirtualizedTreeData: formatVirtualizedTreeData\n };\n}\n/**\n * A hook that saving every tree node ref\n */\n\n\nfunction useTreeNodeRefs() {\n var treeNodeRefs = (0, _react.useRef)({});\n\n var saveTreeNodeRef = function saveTreeNodeRef(ref, refKey) {\n if (!(0, _isNil2.default)(refKey)) {\n treeNodeRefs.current[refKey] = ref;\n }\n };\n\n return {\n treeNodesRefs: treeNodeRefs.current,\n saveTreeNodeRef: saveTreeNodeRef\n };\n}\n\n/**\n * A hook that handles tree search filter options\n * @param props\n */\nfunction useTreeSearch(props) {\n var labelKey = props.labelKey,\n childrenKey = props.childrenKey,\n searchKeyword = props.searchKeyword,\n data = props.data,\n searchBy = props.searchBy,\n callback = props.callback;\n var filterVisibleData = (0, _react.useCallback)(function (data, searchKeyword) {\n var setVisible = function setVisible(nodes) {\n return nodes.forEach(function (item) {\n item.visible = searchBy ? searchBy(searchKeyword, item[labelKey], item) : (0, _Picker.shouldDisplay)(item[labelKey], searchKeyword);\n\n if ((0, _isArray2.default)(item[childrenKey])) {\n filterVisibleData(item[childrenKey], searchKeyword);\n item[childrenKey].forEach(function (child) {\n if (child.visible) {\n item.visible = child.visible;\n }\n });\n }\n });\n };\n\n setVisible(data);\n return data;\n }, [childrenKey, labelKey, searchBy]); // Use search keywords to filter options.\n\n var _useState5 = (0, _react.useState)(function () {\n return searchKeyword !== null && searchKeyword !== void 0 ? searchKeyword : '';\n }),\n searchKeywordState = _useState5[0],\n setSearchKeyword = _useState5[1];\n\n var _useState6 = (0, _react.useState)(function () {\n return filterVisibleData(data, searchKeywordState);\n }),\n filteredData = _useState6[0],\n setFilteredData = _useState6[1];\n\n var handleSetFilteredData = (0, _react.useCallback)(function (data, searchKeyword) {\n setFilteredData(filterVisibleData(data, searchKeyword));\n }, [filterVisibleData]);\n\n var handleSearch = function handleSearch(searchKeyword, event) {\n var filteredData = filterVisibleData(data, searchKeyword);\n setFilteredData(filteredData);\n setSearchKeyword(searchKeyword);\n callback === null || callback === void 0 ? void 0 : callback(searchKeyword, filteredData, event);\n };\n\n return {\n searchKeywordState: searchKeywordState,\n filteredData: filteredData,\n setFilteredData: handleSetFilteredData,\n setSearchKeyword: setSearchKeyword,\n handleSearch: handleSearch\n };\n}\n\nfunction useGetTreeNodeChildren(treeData, valueKey, childrenKey) {\n var _useState7 = (0, _react.useState)([]),\n loadingNodeValues = _useState7[0],\n setLoadingNodeValues = _useState7[1];\n\n var _useState8 = (0, _react.useState)(treeData),\n data = _useState8[0],\n setData = _useState8[1];\n\n var concatChildren = (0, _react.useCallback)(function (treeNode, children) {\n var value = treeNode[valueKey];\n treeNode = findNodeOfTree(data, function (item) {\n return value === item[valueKey];\n });\n treeNode[childrenKey] = children;\n var newData = data.concat([]);\n setData(newData);\n return newData;\n }, [data, valueKey, childrenKey]);\n var loadChildren = (0, _react.useCallback)(function (node, getChildren) {\n setLoadingNodeValues(function (prev) {\n return prev.concat(node[valueKey]);\n });\n var children = getChildren(node);\n\n if (children instanceof Promise) {\n children.then(function (res) {\n var newData = concatChildren(node, res);\n setData(newData);\n setLoadingNodeValues(function (prev) {\n return prev.filter(function (item) {\n return !(0, _utils2.shallowEqual)(item, node[valueKey]);\n });\n });\n });\n } else {\n setData(concatChildren(node, children));\n setLoadingNodeValues(function (prev) {\n return prev.filter(function (item) {\n return !(0, _utils2.shallowEqual)(item, node[valueKey]);\n });\n });\n }\n }, [concatChildren, valueKey]);\n return {\n data: data,\n setData: setData,\n loadingNodeValues: loadingNodeValues,\n loadChildren: loadChildren\n };\n}\n\n/**\n * Focus to active tree node.\n * @param param0\n */\nfunction focusToActiveTreeNode(_ref10) {\n var _activeItem$focus;\n\n var list = _ref10.list,\n valueKey = _ref10.valueKey,\n activeNode = _ref10.activeNode,\n virtualized = _ref10.virtualized,\n container = _ref10.container,\n selector = _ref10.selector,\n formattedNodes = _ref10.formattedNodes;\n if (!container) return;\n\n if (virtualized && activeNode) {\n var _list$scrollToRow;\n\n var scrollIndex = getScrollToIndex(formattedNodes, activeNode === null || activeNode === void 0 ? void 0 : activeNode[valueKey], valueKey);\n (_list$scrollToRow = list.scrollToRow) === null || _list$scrollToRow === void 0 ? void 0 : _list$scrollToRow.call(list, scrollIndex);\n return;\n }\n\n var activeItem = container.querySelector(selector);\n\n if (!activeItem) {\n return;\n }\n\n activeItem === null || activeItem === void 0 ? void 0 : (_activeItem$focus = activeItem.focus) === null || _activeItem$focus === void 0 ? void 0 : _activeItem$focus.call(activeItem);\n}\n\nfunction isSearching(searchKeyword) {\n return !(0, _isEmpty2.default)(searchKeyword);\n}\n\nfunction getTreeNodeIndent(rtl, layer, absolute) {\n var _ref12;\n\n if (absolute === void 0) {\n absolute = false;\n }\n\n // layer start from 1\n var offset = layer * _constants.TREE_NODE_PADDING + _constants.TREE_NODE_ROOT_PADDING;\n\n if (absolute) {\n var _ref11;\n\n return _ref11 = {}, _ref11[rtl ? 'right' : 'left'] = offset, _ref11;\n }\n\n return _ref12 = {}, _ref12[rtl ? 'paddingRight' : 'paddingLeft'] = offset, _ref12;\n}\n\n//# sourceURL=webpack://rsuite/./src/utils/treeUtils.ts?");
5206
5206
 
5207
5207
  /***/ }),
5208
5208
 
@@ -9189,7 +9189,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
9189
9189
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
9190
9190
 
9191
9191
  "use strict";
9192
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ isSupportTouchEvent; }\n/* harmony export */ });\nfunction isSupportTouchEvent() {\n return 'ontouchstart' in window;\n}\n\n//# sourceURL=webpack://rsuite/./node_modules/rsuite-table/es/utils/isSupportTouchEvent.js?");
9192
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ isSupportTouchEvent; }\n/* harmony export */ });\n/* harmony import */ var dom_lib_canUseDOM__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! dom-lib/canUseDOM */ \"./node_modules/dom-lib/esm/canUseDOM.js\");\n\nfunction isSupportTouchEvent() {\n return dom_lib_canUseDOM__WEBPACK_IMPORTED_MODULE_0__.default && 'ontouchstart' in window;\n}\n\n//# sourceURL=webpack://rsuite/./node_modules/rsuite-table/es/utils/isSupportTouchEvent.js?");
9193
9193
 
9194
9194
  /***/ }),
9195
9195