rsuite 5.49.0 → 5.51.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 (233) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/Cascader/styles/index.less +4 -4
  3. package/CheckTreePicker/styles/index.less +3 -3
  4. package/DatePicker/styles/index.less +1 -1
  5. package/DateRangePicker/styles/index.less +15 -5
  6. package/Dropdown/styles/index.less +5 -4
  7. package/Dropdown/styles/mixin.less +0 -11
  8. package/Form/styles/mixin.less +1 -2
  9. package/InputGroup/styles/index.less +0 -14
  10. package/InputPicker/styles/index.less +1 -1
  11. package/Picker/styles/index.less +33 -26
  12. package/Picker/styles/mixin.less +20 -16
  13. package/README.md +4 -4
  14. package/TagInput/styles/index.less +2 -2
  15. package/TagPicker/styles/index.less +5 -1
  16. package/TreePicker/styles/index.less +2 -2
  17. package/cjs/@types/common.d.ts +8 -0
  18. package/cjs/AutoComplete/AutoComplete.js +39 -37
  19. package/cjs/AutoComplete/Combobox.d.ts +8 -0
  20. package/cjs/AutoComplete/Combobox.js +31 -0
  21. package/cjs/Calendar/Calendar.d.ts +5 -1
  22. package/cjs/Calendar/CalendarContainer.d.ts +5 -1
  23. package/cjs/Calendar/CalendarContainer.js +35 -37
  24. package/cjs/Cascader/Cascader.js +58 -59
  25. package/cjs/Cascader/DropdownMenu.d.ts +3 -20
  26. package/cjs/Cascader/DropdownMenu.js +48 -48
  27. package/cjs/Cascader/TreeView.d.ts +24 -0
  28. package/cjs/Cascader/TreeView.js +174 -0
  29. package/cjs/CheckPicker/CheckPicker.d.ts +2 -2
  30. package/cjs/CheckPicker/CheckPicker.js +42 -44
  31. package/cjs/CheckTreePicker/CheckTreeNode.d.ts +2 -2
  32. package/cjs/CheckTreePicker/CheckTreeNode.js +31 -59
  33. package/cjs/CheckTreePicker/CheckTreePicker.js +81 -84
  34. package/cjs/DatePicker/DatePicker.d.ts +5 -1
  35. package/cjs/DatePicker/DatePicker.js +7 -10
  36. package/cjs/DatePicker/Toolbar.js +2 -1
  37. package/cjs/DateRangeInput/DateRangeInput.js +2 -2
  38. package/cjs/DateRangePicker/Calendar.js +24 -23
  39. package/cjs/DateRangePicker/DateRangePicker.d.ts +18 -4
  40. package/cjs/DateRangePicker/DateRangePicker.js +239 -202
  41. package/cjs/DateRangePicker/types.d.ts +11 -3
  42. package/cjs/DateRangePicker/utils.d.ts +2 -1
  43. package/cjs/DateRangePicker/utils.js +7 -5
  44. package/cjs/Form/Form.d.ts +14 -0
  45. package/cjs/Form/Form.js +39 -30
  46. package/cjs/Form/FormContext.d.ts +1 -0
  47. package/cjs/FormControl/FormControl.d.ts +11 -1
  48. package/cjs/FormControl/FormControl.js +40 -17
  49. package/cjs/FormGroup/FormGroup.js +2 -1
  50. package/cjs/InputPicker/InputPicker.js +108 -92
  51. package/cjs/InputPicker/InputSearch.js +3 -15
  52. package/cjs/InputPicker/TagList.d.ts +3 -0
  53. package/cjs/InputPicker/TagList.js +29 -0
  54. package/cjs/InputPicker/TextBox.d.ts +18 -0
  55. package/cjs/InputPicker/TextBox.js +48 -0
  56. package/cjs/MultiCascader/MultiCascader.js +53 -52
  57. package/cjs/MultiCascader/{DropdownMenu.d.ts → TreeView.d.ts} +3 -3
  58. package/cjs/MultiCascader/{DropdownMenu.js → TreeView.js} +77 -74
  59. package/{esm/Picker/DropdownMenuCheckItem.d.ts → cjs/Picker/ListCheckItem.d.ts} +3 -3
  60. package/cjs/Picker/{DropdownMenuCheckItem.js → ListCheckItem.js} +14 -30
  61. package/cjs/Picker/{DropdownMenuItem.d.ts → ListItem.d.ts} +4 -4
  62. package/cjs/Picker/{DropdownMenuItem.js → ListItem.js} +15 -24
  63. package/cjs/Picker/ListItemGroup.d.ts +6 -0
  64. package/cjs/Picker/{DropdownMenuGroup.js → ListItemGroup.js} +3 -9
  65. package/cjs/Picker/Listbox.d.ts +35 -0
  66. package/cjs/Picker/{DropdownMenu.js → Listbox.js} +49 -64
  67. package/cjs/{DatePicker → Picker}/PickerIndicator.d.ts +1 -1
  68. package/cjs/{DatePicker → Picker}/PickerIndicator.js +2 -1
  69. package/cjs/{DatePicker → Picker}/PickerLabel.d.ts +1 -1
  70. package/cjs/Picker/{PickerOverlay.d.ts → PickerPopup.d.ts} +3 -3
  71. package/cjs/Picker/{PickerOverlay.js → PickerPopup.js} +9 -7
  72. package/cjs/Picker/PickerToggle.d.ts +17 -22
  73. package/cjs/Picker/PickerToggle.js +63 -181
  74. package/cjs/Picker/PickerToggleTrigger.d.ts +15 -0
  75. package/cjs/Picker/PickerToggleTrigger.js +21 -5
  76. package/cjs/Picker/SearchBar.js +7 -9
  77. package/cjs/Picker/TreeView.d.ts +7 -0
  78. package/cjs/Picker/TreeView.js +31 -0
  79. package/cjs/Picker/hooks/index.d.ts +6 -0
  80. package/cjs/Picker/hooks/index.js +18 -0
  81. package/cjs/Picker/hooks/useCombobox.d.ts +7 -0
  82. package/cjs/Picker/hooks/useCombobox.js +22 -0
  83. package/cjs/Picker/hooks/useFocusItemValue.d.ts +30 -0
  84. package/cjs/Picker/hooks/useFocusItemValue.js +246 -0
  85. package/cjs/Picker/hooks/usePickerClassName.d.ts +21 -0
  86. package/cjs/Picker/hooks/usePickerClassName.js +39 -0
  87. package/cjs/Picker/{usePickerRef.d.ts → hooks/usePickerRef.d.ts} +5 -3
  88. package/cjs/Picker/{usePickerRef.js → hooks/usePickerRef.js} +13 -7
  89. package/cjs/Picker/hooks/useSearch.d.ts +18 -0
  90. package/cjs/Picker/hooks/useSearch.js +57 -0
  91. package/cjs/Picker/hooks/useToggleKeyDownEvent.d.ts +25 -0
  92. package/cjs/Picker/hooks/useToggleKeyDownEvent.js +101 -0
  93. package/cjs/Picker/index.d.ts +9 -5
  94. package/cjs/Picker/index.js +32 -16
  95. package/cjs/Picker/propTypes.d.ts +0 -6
  96. package/cjs/Picker/propTypes.js +0 -5
  97. package/cjs/Picker/utils.d.ts +2 -100
  98. package/cjs/Picker/utils.js +1 -473
  99. package/cjs/SelectPicker/SelectPicker.d.ts +2 -2
  100. package/cjs/SelectPicker/SelectPicker.js +47 -50
  101. package/cjs/TagInput/index.js +4 -0
  102. package/cjs/TreePicker/TreeNode.d.ts +2 -2
  103. package/cjs/TreePicker/TreeNode.js +22 -56
  104. package/cjs/TreePicker/TreePicker.js +91 -95
  105. package/cjs/utils/constants.d.ts +2 -1
  106. package/cjs/utils/constants.js +1 -0
  107. package/cjs/utils/dateUtils.d.ts +0 -1
  108. package/cjs/utils/dateUtils.js +0 -6
  109. package/cjs/utils/getStringLength.d.ts +2 -0
  110. package/cjs/utils/getStringLength.js +18 -0
  111. package/cjs/utils/index.d.ts +1 -0
  112. package/cjs/utils/index.js +4 -1
  113. package/dist/rsuite-no-reset-rtl.css +201 -186
  114. package/dist/rsuite-no-reset-rtl.min.css +1 -1
  115. package/dist/rsuite-no-reset-rtl.min.css.map +1 -1
  116. package/dist/rsuite-no-reset.css +201 -186
  117. package/dist/rsuite-no-reset.min.css +1 -1
  118. package/dist/rsuite-no-reset.min.css.map +1 -1
  119. package/dist/rsuite-rtl.css +201 -186
  120. package/dist/rsuite-rtl.min.css +1 -1
  121. package/dist/rsuite-rtl.min.css.map +1 -1
  122. package/dist/rsuite.css +201 -186
  123. package/dist/rsuite.js +235 -104
  124. package/dist/rsuite.js.map +1 -1
  125. package/dist/rsuite.min.css +1 -1
  126. package/dist/rsuite.min.css.map +1 -1
  127. package/dist/rsuite.min.js +1 -1
  128. package/dist/rsuite.min.js.map +1 -1
  129. package/esm/@types/common.d.ts +8 -0
  130. package/esm/AutoComplete/AutoComplete.js +42 -40
  131. package/esm/AutoComplete/Combobox.d.ts +8 -0
  132. package/esm/AutoComplete/Combobox.js +25 -0
  133. package/esm/Calendar/Calendar.d.ts +5 -1
  134. package/esm/Calendar/CalendarContainer.d.ts +5 -1
  135. package/esm/Calendar/CalendarContainer.js +37 -39
  136. package/esm/Cascader/Cascader.js +61 -62
  137. package/esm/Cascader/DropdownMenu.d.ts +3 -20
  138. package/esm/Cascader/DropdownMenu.js +50 -49
  139. package/esm/Cascader/TreeView.d.ts +24 -0
  140. package/esm/Cascader/TreeView.js +167 -0
  141. package/esm/CheckPicker/CheckPicker.d.ts +2 -2
  142. package/esm/CheckPicker/CheckPicker.js +45 -47
  143. package/esm/CheckTreePicker/CheckTreeNode.d.ts +2 -2
  144. package/esm/CheckTreePicker/CheckTreeNode.js +33 -61
  145. package/esm/CheckTreePicker/CheckTreePicker.js +84 -87
  146. package/esm/DatePicker/DatePicker.d.ts +5 -1
  147. package/esm/DatePicker/DatePicker.js +5 -8
  148. package/esm/DatePicker/Toolbar.js +2 -1
  149. package/esm/DateRangeInput/DateRangeInput.js +2 -2
  150. package/esm/DateRangePicker/Calendar.js +25 -23
  151. package/esm/DateRangePicker/DateRangePicker.d.ts +18 -4
  152. package/esm/DateRangePicker/DateRangePicker.js +241 -204
  153. package/esm/DateRangePicker/types.d.ts +11 -3
  154. package/esm/DateRangePicker/utils.d.ts +2 -1
  155. package/esm/DateRangePicker/utils.js +7 -5
  156. package/esm/Form/Form.d.ts +14 -0
  157. package/esm/Form/Form.js +41 -32
  158. package/esm/Form/FormContext.d.ts +1 -0
  159. package/esm/FormControl/FormControl.d.ts +11 -1
  160. package/esm/FormControl/FormControl.js +41 -18
  161. package/esm/FormGroup/FormGroup.js +3 -2
  162. package/esm/InputPicker/InputPicker.js +110 -94
  163. package/esm/InputPicker/InputSearch.js +4 -15
  164. package/esm/InputPicker/TagList.d.ts +3 -0
  165. package/esm/InputPicker/TagList.js +23 -0
  166. package/esm/InputPicker/TextBox.d.ts +18 -0
  167. package/esm/InputPicker/TextBox.js +42 -0
  168. package/esm/MultiCascader/MultiCascader.js +56 -55
  169. package/esm/MultiCascader/{DropdownMenu.d.ts → TreeView.d.ts} +3 -3
  170. package/esm/MultiCascader/{DropdownMenu.js → TreeView.js} +79 -75
  171. package/{cjs/Picker/DropdownMenuCheckItem.d.ts → esm/Picker/ListCheckItem.d.ts} +3 -3
  172. package/esm/Picker/{DropdownMenuCheckItem.js → ListCheckItem.js} +15 -30
  173. package/esm/Picker/{DropdownMenuItem.d.ts → ListItem.d.ts} +4 -4
  174. package/esm/Picker/{DropdownMenuItem.js → ListItem.js} +16 -24
  175. package/esm/Picker/ListItemGroup.d.ts +6 -0
  176. package/esm/Picker/{DropdownMenuGroup.js → ListItemGroup.js} +3 -9
  177. package/esm/Picker/Listbox.d.ts +35 -0
  178. package/esm/Picker/{DropdownMenu.js → Listbox.js} +50 -64
  179. package/esm/{DatePicker → Picker}/PickerIndicator.d.ts +1 -1
  180. package/esm/{DatePicker → Picker}/PickerIndicator.js +2 -1
  181. package/esm/{DatePicker → Picker}/PickerLabel.d.ts +1 -1
  182. package/esm/Picker/{PickerOverlay.d.ts → PickerPopup.d.ts} +3 -3
  183. package/esm/Picker/{PickerOverlay.js → PickerPopup.js} +10 -8
  184. package/esm/Picker/PickerToggle.d.ts +17 -22
  185. package/esm/Picker/PickerToggle.js +65 -183
  186. package/esm/Picker/PickerToggleTrigger.d.ts +15 -0
  187. package/esm/Picker/PickerToggleTrigger.js +20 -5
  188. package/esm/Picker/SearchBar.js +8 -9
  189. package/esm/Picker/TreeView.d.ts +7 -0
  190. package/esm/Picker/TreeView.js +25 -0
  191. package/esm/Picker/hooks/index.d.ts +6 -0
  192. package/esm/Picker/hooks/index.js +7 -0
  193. package/esm/Picker/hooks/useCombobox.d.ts +7 -0
  194. package/esm/Picker/hooks/useCombobox.js +17 -0
  195. package/esm/Picker/hooks/useFocusItemValue.d.ts +30 -0
  196. package/esm/Picker/hooks/useFocusItemValue.js +240 -0
  197. package/esm/Picker/hooks/usePickerClassName.d.ts +21 -0
  198. package/esm/Picker/hooks/usePickerClassName.js +33 -0
  199. package/esm/Picker/{usePickerRef.d.ts → hooks/usePickerRef.d.ts} +5 -3
  200. package/esm/Picker/{usePickerRef.js → hooks/usePickerRef.js} +13 -8
  201. package/esm/Picker/hooks/useSearch.d.ts +18 -0
  202. package/esm/Picker/hooks/useSearch.js +51 -0
  203. package/esm/Picker/hooks/useToggleKeyDownEvent.d.ts +25 -0
  204. package/esm/Picker/hooks/useToggleKeyDownEvent.js +96 -0
  205. package/esm/Picker/index.d.ts +9 -5
  206. package/esm/Picker/index.js +9 -5
  207. package/esm/Picker/propTypes.d.ts +0 -6
  208. package/esm/Picker/propTypes.js +0 -5
  209. package/esm/Picker/utils.d.ts +2 -100
  210. package/esm/Picker/utils.js +2 -467
  211. package/esm/SelectPicker/SelectPicker.d.ts +2 -2
  212. package/esm/SelectPicker/SelectPicker.js +50 -53
  213. package/esm/TagInput/index.js +4 -0
  214. package/esm/TreePicker/TreeNode.d.ts +2 -2
  215. package/esm/TreePicker/TreeNode.js +24 -58
  216. package/esm/TreePicker/TreePicker.js +94 -98
  217. package/esm/utils/constants.d.ts +2 -1
  218. package/esm/utils/constants.js +1 -0
  219. package/esm/utils/dateUtils.d.ts +0 -1
  220. package/esm/utils/dateUtils.js +0 -5
  221. package/esm/utils/getStringLength.d.ts +2 -0
  222. package/esm/utils/getStringLength.js +13 -0
  223. package/esm/utils/index.d.ts +1 -0
  224. package/esm/utils/index.js +1 -0
  225. package/package.json +1 -1
  226. package/styles/mixins/combobox.less +10 -0
  227. package/styles/variables.less +1 -3
  228. package/cjs/Picker/DropdownMenu.d.ts +0 -59
  229. package/cjs/Picker/DropdownMenuGroup.d.ts +0 -6
  230. package/esm/Picker/DropdownMenu.d.ts +0 -59
  231. package/esm/Picker/DropdownMenuGroup.d.ts +0 -6
  232. /package/cjs/{DatePicker → Picker}/PickerLabel.js +0 -0
  233. /package/esm/{DatePicker → Picker}/PickerLabel.js +0 -0
package/dist/rsuite.js CHANGED
@@ -5977,7 +5977,18 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
5977
5977
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
5978
5978
 
5979
5979
  "use strict";
5980
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _Input = _interopRequireDefault(__webpack_require__(/*! ../Input */ \"./src/Input/index.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _utils2 = __webpack_require__(/*! ../Animation/utils */ \"./src/Animation/utils.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _utils3 = __webpack_require__(/*! ./utils */ \"./src/AutoComplete/utils.ts\");\nvar _Plaintext = _interopRequireDefault(__webpack_require__(/*! ../Plaintext */ \"./src/Plaintext/index.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/AutoComplete/AutoComplete.tsx\",\n _this = void 0;\n/**\n * Autocomplete function of input field.\n * @see https://rsuitejs.com/components/auto-complete\n *\n * TODO: Remove unnecessary .rs-auto-complete element\n * TODO: role=combobox and aria-autocomplete on input element\n */\nvar AutoComplete = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n disabled = props.disabled,\n className = props.className,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n _props$selectOnEnter = props.selectOnEnter,\n selectOnEnter = _props$selectOnEnter === void 0 ? true : _props$selectOnEnter,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'auto-complete' : _props$classPrefix,\n _props$defaultValue = props.defaultValue,\n defaultValue = _props$defaultValue === void 0 ? '' : _props$defaultValue,\n _props$menuAutoWidth = props.menuAutoWidth,\n menuAutoWidth = _props$menuAutoWidth === void 0 ? true : _props$menuAutoWidth,\n data = props.data,\n valueProp = props.value,\n open = props.open,\n style = props.style,\n size = props.size,\n menuClassName = props.menuClassName,\n id = props.id,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n renderMenu = props.renderMenu,\n renderMenuItem = props.renderMenuItem,\n onSelect = props.onSelect,\n filterBy = props.filterBy,\n onKeyDown = props.onKeyDown,\n onChange = props.onChange,\n onClose = props.onClose,\n onOpen = props.onOpen,\n onFocus = props.onFocus,\n onBlur = props.onBlur,\n onMenuFocus = props.onMenuFocus,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"disabled\", \"className\", \"placement\", \"selectOnEnter\", \"classPrefix\", \"defaultValue\", \"menuAutoWidth\", \"data\", \"value\", \"open\", \"style\", \"size\", \"menuClassName\", \"id\", \"readOnly\", \"plaintext\", \"renderMenu\", \"renderMenuItem\", \"onSelect\", \"filterBy\", \"onKeyDown\", \"onChange\", \"onClose\", \"onOpen\", \"onFocus\", \"onBlur\", \"onMenuFocus\"]);\n var datalist = (0, _utils3.transformData)(data);\n var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1];\n var _useState = (0, _react.useState)(false),\n focus = _useState[0],\n setFocus = _useState[1];\n var items = (datalist === null || datalist === void 0 ? void 0 : datalist.filter((0, _utils3.shouldDisplay)(filterBy, value))) || [];\n var hasItems = items.length > 0;\n var overlayRef = (0, _react.useRef)(null);\n var isMounted = (0, _utils.useIsMounted)();\n\n // Used to hover the focuse item when trigger `onKeydown`\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(value, {\n data: datalist,\n callback: onMenuFocus,\n target: function target() {\n return overlayRef.current;\n }\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setFocusItemValue = _useFocusItemValue.setFocusItemValue,\n handleKeyDown = _useFocusItemValue.onKeyDown;\n var handleKeyDownEvent = function handleKeyDownEvent(event) {\n if (!overlayRef.current) {\n return;\n }\n (0, _Picker.onMenuKeyDown)(event, {\n enter: selectOnEnter ? selectFocusMenuItem : undefined,\n esc: handleClose\n });\n handleKeyDown(event);\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);\n };\n var selectFocusMenuItem = function selectFocusMenuItem(event) {\n if (!focusItemValue) {\n return;\n }\n var focusItem = datalist.find(function (item) {\n return (item === null || item === void 0 ? void 0 : item.value) === focusItemValue;\n });\n setValue(focusItemValue);\n setFocusItemValue(focusItemValue);\n handleSelect(focusItem, event);\n if (value !== focusItemValue) {\n handleChangeValue(focusItemValue, event);\n }\n handleClose();\n };\n var handleSelect = (0, _react.useCallback)(function (item, event) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(item.value, item, event);\n }, [onSelect]);\n var handleChangeValue = (0, _react.useCallback)(function (value, event) {\n onChange === null || onChange === void 0 ? void 0 : onChange(value, event);\n }, [onChange]);\n var handleChange = function handleChange(value, event) {\n setFocusItemValue('');\n setValue(value);\n setFocus(true);\n handleChangeValue(value, event);\n };\n var handleClose = (0, _react.useCallback)(function () {\n if (isMounted()) {\n setFocus(false);\n onClose === null || onClose === void 0 ? void 0 : onClose();\n }\n }, [isMounted, onClose]);\n var handleOpen = (0, _react.useCallback)(function () {\n setFocus(true);\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n }, [onOpen]);\n var handleItemSelect = (0, _react.useCallback)(function (nextItemValue, item, event) {\n setValue(nextItemValue);\n setFocusItemValue(nextItemValue);\n handleSelect(item, event);\n if (value !== nextItemValue) {\n handleChangeValue(nextItemValue, event);\n }\n handleClose();\n }, [value, setValue, handleSelect, handleChangeValue, handleClose, setFocusItemValue]);\n var handleInputFocus = (0, _react.useCallback)(function (event) {\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(event);\n handleOpen();\n }, [onFocus, handleOpen]);\n var handleInputBlur = (0, _react.useCallback)(function (event) {\n setTimeout(handleClose, 300);\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(event);\n }, [onBlur, handleClose]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge;\n var classes = merge(className, withClassPrefix({\n disabled: disabled\n }));\n var triggerRef = (0, _react.useRef)(null);\n var _partitionHTMLProps = (0, _utils.partitionHTMLProps)((0, _omit.default)(rest, _Picker.pickTriggerPropKeys)),\n htmlInputProps = _partitionHTMLProps[0],\n restProps = _partitionHTMLProps[1];\n (0, _Picker.usePublicMethods)(ref, {\n triggerRef: triggerRef,\n overlayRef: overlayRef\n });\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var styles = {\n left: left,\n top: top\n };\n var menu = /*#__PURE__*/_react.default.createElement(_Picker.DropdownMenu, {\n id: id ? id + \"-listbox\" : undefined,\n classPrefix: \"auto-complete-menu\",\n dropdownMenuItemClassPrefix: \"auto-complete-item\",\n dropdownMenuItemAs: _Picker.DropdownMenuItem,\n focusItemValue: focusItemValue,\n onSelect: handleItemSelect,\n renderMenuItem: renderMenuItem,\n data: items,\n className: menuClassName,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 263,\n columnNumber: 9\n }\n });\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n ref: (0, _utils.mergeRefs)(overlayRef, speakerRef),\n style: styles,\n className: className,\n onKeyDown: handleKeyDownEvent,\n target: triggerRef,\n autoWidth: menuAutoWidth,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 277,\n columnNumber: 9\n }\n }, renderMenu ? renderMenu(menu) : menu);\n };\n if (plaintext) {\n return /*#__PURE__*/_react.default.createElement(_Plaintext.default, {\n ref: ref,\n localeKey: \"unfilled\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 292,\n columnNumber: 9\n }\n }, typeof value === 'undefined' ? defaultValue : value);\n }\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n ref: triggerRef,\n placement: placement,\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n trigger: ['click', 'focus'],\n open: open || focus && hasItems,\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 299,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n className: classes,\n style: style\n }, restProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 307,\n columnNumber: 9\n }\n }), /*#__PURE__*/_react.default.createElement(_Input.default, (0, _extends2.default)({}, htmlInputProps, {\n id: id,\n disabled: disabled,\n value: value,\n size: size,\n readOnly: readOnly,\n onBlur: handleInputBlur,\n onFocus: handleInputFocus,\n onChange: handleChange,\n onKeyDown: handleKeyDownEvent,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 308,\n columnNumber: 11\n }\n }))));\n});\nAutoComplete.displayName = 'AutoComplete';\nAutoComplete.propTypes = (0, _extends2.default)({}, _utils2.animationPropTypes, {\n data: _propTypes.default.array,\n disabled: _propTypes.default.bool,\n onSelect: _propTypes.default.func,\n onChange: _propTypes.default.func,\n classPrefix: _propTypes.default.string,\n value: _propTypes.default.string,\n defaultValue: _propTypes.default.string,\n className: _propTypes.default.string,\n menuClassName: _propTypes.default.string,\n menuAutoWidth: _propTypes.default.bool,\n placement: _propTypes.default.oneOf(_utils.PLACEMENT),\n onFocus: _propTypes.default.func,\n onMenuFocus: _propTypes.default.func,\n onBlur: _propTypes.default.func,\n onKeyDown: _propTypes.default.func,\n onOpen: _propTypes.default.func,\n onClose: _propTypes.default.func,\n readOnly: _propTypes.default.bool,\n renderMenu: _propTypes.default.func,\n renderMenuItem: _propTypes.default.func,\n style: _propTypes.default.object,\n size: _propTypes.default.oneOf(['lg', 'md', 'sm', 'xs']),\n open: _propTypes.default.bool,\n selectOnEnter: _propTypes.default.bool,\n filterBy: _propTypes.default.func\n});\nvar _default = AutoComplete;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/AutoComplete/AutoComplete.tsx?");
5980
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _utils2 = __webpack_require__(/*! ../Animation/utils */ \"./src/Animation/utils.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _utils3 = __webpack_require__(/*! ./utils */ \"./src/AutoComplete/utils.ts\");\nvar _Plaintext = _interopRequireDefault(__webpack_require__(/*! ../Plaintext */ \"./src/Plaintext/index.tsx\"));\nvar _Combobox = _interopRequireDefault(__webpack_require__(/*! ./Combobox */ \"./src/AutoComplete/Combobox.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/AutoComplete/AutoComplete.tsx\",\n _this = void 0;\n/**\n * Autocomplete function of input field.\n * @see https://rsuitejs.com/components/auto-complete\n *\n * TODO: Remove unnecessary .rs-auto-complete element\n * TODO: role=combobox and aria-autocomplete on input element\n */\nvar AutoComplete = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n disabled = props.disabled,\n className = props.className,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n _props$selectOnEnter = props.selectOnEnter,\n selectOnEnter = _props$selectOnEnter === void 0 ? true : _props$selectOnEnter,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'auto-complete' : _props$classPrefix,\n _props$defaultValue = props.defaultValue,\n defaultValue = _props$defaultValue === void 0 ? '' : _props$defaultValue,\n _props$menuAutoWidth = props.menuAutoWidth,\n menuAutoWidth = _props$menuAutoWidth === void 0 ? true : _props$menuAutoWidth,\n data = props.data,\n valueProp = props.value,\n open = props.open,\n style = props.style,\n size = props.size,\n menuClassName = props.menuClassName,\n id = props.id,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n renderMenu = props.renderMenu,\n renderMenuItem = props.renderMenuItem,\n onSelect = props.onSelect,\n filterBy = props.filterBy,\n onKeyDown = props.onKeyDown,\n onChange = props.onChange,\n onClose = props.onClose,\n onOpen = props.onOpen,\n onFocus = props.onFocus,\n onBlur = props.onBlur,\n onMenuFocus = props.onMenuFocus,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"disabled\", \"className\", \"placement\", \"selectOnEnter\", \"classPrefix\", \"defaultValue\", \"menuAutoWidth\", \"data\", \"value\", \"open\", \"style\", \"size\", \"menuClassName\", \"id\", \"readOnly\", \"plaintext\", \"renderMenu\", \"renderMenuItem\", \"onSelect\", \"filterBy\", \"onKeyDown\", \"onChange\", \"onClose\", \"onOpen\", \"onFocus\", \"onBlur\", \"onMenuFocus\"]);\n var datalist = (0, _utils3.transformData)(data);\n var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1];\n var _useState = (0, _react.useState)(false),\n focus = _useState[0],\n setFocus = _useState[1];\n var items = (datalist === null || datalist === void 0 ? void 0 : datalist.filter((0, _utils3.shouldDisplay)(filterBy, value))) || [];\n var hasItems = items.length > 0;\n var _usePickerRef = (0, _Picker.usePickerRef)(ref),\n trigger = _usePickerRef.trigger,\n overlay = _usePickerRef.overlay,\n root = _usePickerRef.root;\n var isMounted = (0, _utils.useIsMounted)();\n\n // Used to hover the focuse item when trigger `onKeydown`\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(value, {\n data: datalist,\n focusToOption: false,\n callback: onMenuFocus,\n target: function target() {\n return overlay.current;\n }\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setFocusItemValue = _useFocusItemValue.setFocusItemValue,\n handleKeyDown = _useFocusItemValue.onKeyDown;\n var handleKeyDownEvent = function handleKeyDownEvent(event) {\n if (!overlay.current) {\n return;\n }\n (0, _Picker.onMenuKeyDown)(event, {\n enter: selectOnEnter ? selectFocusMenuItem : undefined,\n esc: handleClose\n });\n handleKeyDown(event);\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);\n };\n var selectFocusMenuItem = function selectFocusMenuItem(event) {\n if (!focusItemValue) {\n return;\n }\n var focusItem = datalist.find(function (item) {\n return (item === null || item === void 0 ? void 0 : item.value) === focusItemValue;\n });\n setValue(focusItemValue);\n setFocusItemValue(focusItemValue);\n handleSelect(focusItem, event);\n if (value !== focusItemValue) {\n handleChangeValue(focusItemValue, event);\n }\n handleClose();\n };\n var handleSelect = (0, _utils.useEventCallback)(function (item, event) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(item.value, item, event);\n });\n var handleChangeValue = (0, _utils.useEventCallback)(function (value, event) {\n onChange === null || onChange === void 0 ? void 0 : onChange(value, event);\n });\n var handleChange = function handleChange(value, event) {\n setFocusItemValue('');\n setValue(value);\n setFocus(true);\n handleChangeValue(value, event);\n };\n var handleClose = (0, _utils.useEventCallback)(function () {\n if (isMounted()) {\n setFocus(false);\n onClose === null || onClose === void 0 ? void 0 : onClose();\n }\n });\n var handleOpen = (0, _utils.useEventCallback)(function () {\n setFocus(true);\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n });\n var handleItemSelect = (0, _utils.useEventCallback)(function (nextItemValue, item, event) {\n setValue(nextItemValue);\n setFocusItemValue(nextItemValue);\n handleSelect(item, event);\n if (value !== nextItemValue) {\n handleChangeValue(nextItemValue, event);\n }\n handleClose();\n });\n var handleInputFocus = (0, _utils.useEventCallback)(function (event) {\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(event);\n handleOpen();\n });\n var handleInputBlur = (0, _utils.useEventCallback)(function (event) {\n setTimeout(handleClose, 300);\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(event);\n });\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge;\n var classes = merge(className, withClassPrefix({\n disabled: disabled\n }));\n var _partitionHTMLProps = (0, _utils.partitionHTMLProps)((0, _omit.default)(rest, _Picker.pickTriggerPropKeys)),\n htmlInputProps = _partitionHTMLProps[0],\n restProps = _partitionHTMLProps[1];\n var renderPopup = function renderPopup(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var styles = {\n left: left,\n top: top\n };\n var menu = /*#__PURE__*/_react.default.createElement(_Picker.Listbox, {\n classPrefix: \"auto-complete-menu\",\n listItemClassPrefix: \"auto-complete-item\",\n listItemAs: _Picker.ListItem,\n focusItemValue: focusItemValue,\n onSelect: handleItemSelect,\n renderMenuItem: renderMenuItem,\n data: items,\n className: menuClassName,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 248,\n columnNumber: 9\n }\n });\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerPopup, {\n ref: (0, _utils.mergeRefs)(overlay, speakerRef),\n style: styles,\n className: className,\n onKeyDown: handleKeyDownEvent,\n target: trigger,\n autoWidth: menuAutoWidth,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 261,\n columnNumber: 9\n }\n }, renderMenu ? renderMenu(menu) : menu);\n };\n if (plaintext) {\n return /*#__PURE__*/_react.default.createElement(_Plaintext.default, {\n ref: ref,\n localeKey: \"unfilled\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 276,\n columnNumber: 9\n }\n }, typeof value === 'undefined' ? defaultValue : value);\n }\n var expanded = open || focus && hasItems;\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n id: id,\n ref: trigger,\n placement: placement,\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n trigger: ['click', 'focus'],\n open: expanded,\n speaker: renderPopup,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 285,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n className: classes,\n style: style,\n ref: root\n }, restProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 294,\n columnNumber: 9\n }\n }), /*#__PURE__*/_react.default.createElement(_Combobox.default, (0, _extends2.default)({}, htmlInputProps, {\n disabled: disabled,\n value: value,\n size: size,\n readOnly: readOnly,\n expanded: expanded,\n focusItemValue: focusItemValue,\n onBlur: handleInputBlur,\n onFocus: handleInputFocus,\n onChange: handleChange,\n onKeyDown: handleKeyDownEvent,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 295,\n columnNumber: 11\n }\n }))));\n});\nAutoComplete.displayName = 'AutoComplete';\nAutoComplete.propTypes = (0, _extends2.default)({}, _utils2.animationPropTypes, {\n data: _propTypes.default.array,\n disabled: _propTypes.default.bool,\n onSelect: _propTypes.default.func,\n onChange: _propTypes.default.func,\n classPrefix: _propTypes.default.string,\n value: _propTypes.default.string,\n defaultValue: _propTypes.default.string,\n className: _propTypes.default.string,\n menuClassName: _propTypes.default.string,\n menuAutoWidth: _propTypes.default.bool,\n placement: _propTypes.default.oneOf(_utils.PLACEMENT),\n onFocus: _propTypes.default.func,\n onMenuFocus: _propTypes.default.func,\n onBlur: _propTypes.default.func,\n onKeyDown: _propTypes.default.func,\n onOpen: _propTypes.default.func,\n onClose: _propTypes.default.func,\n readOnly: _propTypes.default.bool,\n renderMenu: _propTypes.default.func,\n renderMenuItem: _propTypes.default.func,\n style: _propTypes.default.object,\n size: _propTypes.default.oneOf(['lg', 'md', 'sm', 'xs']),\n open: _propTypes.default.bool,\n selectOnEnter: _propTypes.default.bool,\n filterBy: _propTypes.default.func\n});\nvar _default = AutoComplete;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/AutoComplete/AutoComplete.tsx?");
5981
+
5982
+ /***/ }),
5983
+
5984
+ /***/ "./src/AutoComplete/Combobox.tsx":
5985
+ /*!***************************************!*\
5986
+ !*** ./src/AutoComplete/Combobox.tsx ***!
5987
+ \***************************************/
5988
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
5989
+
5990
+ "use strict";
5991
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _Input = _interopRequireDefault(__webpack_require__(/*! ../Input */ \"./src/Input/index.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/AutoComplete/Combobox.tsx\",\n _this = void 0;\nvar Combobox = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _useCombobox = (0, _Picker.useCombobox)(),\n id = _useCombobox.id,\n popupType = _useCombobox.popupType;\n var expanded = props.expanded,\n focusItemValue = props.focusItemValue,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"expanded\", \"focusItemValue\"]);\n return /*#__PURE__*/_react.default.createElement(_Input.default, (0, _extends2.default)({\n role: \"combobox\",\n \"aria-autocomplete\": \"list\",\n \"aria-haspopup\": popupType,\n \"aria-expanded\": expanded,\n \"aria-activedescendant\": focusItemValue ? id + \"-opt-\" + focusItemValue : undefined,\n autoComplete: \"off\",\n id: id,\n ref: ref\n }, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 15,\n columnNumber: 5\n }\n }));\n});\nvar _default = Combobox;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/AutoComplete/Combobox.tsx?");
5981
5992
 
5982
5993
  /***/ }),
5983
5994
 
@@ -6186,7 +6197,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
6186
6197
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6187
6198
 
6188
6199
  "use strict";
6189
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _isSameMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/isSameMonth */ \"./node_modules/date-fns/esm/isSameMonth/index.js\"));\nvar _CalendarContainer = _interopRequireDefault(__webpack_require__(/*! ./CalendarContainer */ \"./src/Calendar/CalendarContainer.tsx\"));\nvar _Button = _interopRequireDefault(__webpack_require__(/*! ../Button */ \"./src/Button/index.tsx\"));\nvar _CustomProvider = __webpack_require__(/*! ../CustomProvider */ \"./src/CustomProvider/index.tsx\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _useCalendarDate2 = _interopRequireDefault(__webpack_require__(/*! ./useCalendarDate */ \"./src/Calendar/useCalendarDate.ts\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Calendar/Calendar.tsx\",\n _this = void 0;\n/**\n * The Calendar component is used to select dates.\n * @see https://rsuitejs.com/components/calendar\n */\nvar Calendar = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? _CalendarContainer.default : _props$as,\n bordered = props.bordered,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'calendar' : _props$classPrefix,\n compact = props.compact,\n _props$defaultValue = props.defaultValue,\n defaultValue = _props$defaultValue === void 0 ? new Date() : _props$defaultValue,\n isoWeek = props.isoWeek,\n overrideLocale = props.locale,\n onChange = props.onChange,\n onMonthChange = props.onMonthChange,\n onSelect = props.onSelect,\n renderCell = props.renderCell,\n value = props.value,\n cellClassName = props.cellClassName,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"bordered\", \"className\", \"classPrefix\", \"compact\", \"defaultValue\", \"isoWeek\", \"locale\", \"onChange\", \"onMonthChange\", \"onSelect\", \"renderCell\", \"value\", \"cellClassName\"]);\n var _useCalendarDate = (0, _useCalendarDate2.default)(value, defaultValue),\n calendarDate = _useCalendarDate.calendarDate,\n setCalendarDate = _useCalendarDate.setCalendarDate;\n var _useCustom = (0, _utils.useCustom)('Calendar', overrideLocale),\n locale = _useCustom.locale;\n var handleChange = (0, _react.useCallback)(function (nextValue) {\n setCalendarDate(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue);\n if (!(0, _isSameMonth.default)(nextValue, calendarDate)) {\n onMonthChange === null || onMonthChange === void 0 ? void 0 : onMonthChange(nextValue);\n }\n }, [setCalendarDate, onChange, calendarDate, onMonthChange]);\n var handleClickToday = (0, _react.useCallback)(function () {\n handleChange(new Date());\n }, [handleChange]);\n var handleSelect = (0, _react.useCallback)(function (nextValue) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(nextValue);\n handleChange(nextValue);\n }, [handleChange, onSelect]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix;\n var renderToolbar = (0, _react.useCallback)(function () {\n return /*#__PURE__*/_react.default.createElement(_Button.default, {\n className: prefix('btn-today'),\n size: \"sm\",\n onClick: handleClickToday,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 105,\n columnNumber: 9\n }\n }, locale.today || 'Today');\n }, [handleClickToday, locale.today, prefix]);\n var customRenderCell = (0, _react.useCallback)(function (date) {\n return renderCell === null || renderCell === void 0 ? void 0 : renderCell(date);\n }, [renderCell]);\n var classes = merge(className, withClassPrefix('panel', {\n bordered: bordered,\n compact: compact\n }));\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n inline: true,\n className: classes,\n ref: ref,\n isoWeek: isoWeek,\n format: \"yyyy-MM-dd\",\n calendarDate: calendarDate,\n limitEndYear: 1000,\n locale: locale,\n renderTitle: function renderTitle(date) {\n return /*#__PURE__*/_react.default.createElement(_CustomProvider.FormattedDate, {\n date: date,\n formatStr: locale.formattedMonthPattern || 'MMMM yyyy',\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 128,\n columnNumber: 11\n }\n });\n },\n renderToolbar: renderToolbar,\n renderCell: customRenderCell,\n cellClassName: cellClassName,\n onMoveForward: handleChange,\n onMoveBackward: handleChange,\n onChangeMonth: handleChange,\n onSelect: handleSelect,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 117,\n columnNumber: 7\n }\n }));\n});\nCalendar.displayName = 'Calendar';\nCalendar.propTypes = {\n value: _propTypes.default.instanceOf(Date),\n defaultValue: _propTypes.default.instanceOf(Date),\n isoWeek: _propTypes.default.bool,\n compact: _propTypes.default.bool,\n bordered: _propTypes.default.bool,\n locale: _propTypes.default.object,\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n onChange: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n renderCell: _propTypes.default.func\n};\nvar _default = Calendar;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Calendar/Calendar.tsx?");
6200
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _isSameMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/isSameMonth */ \"./node_modules/date-fns/esm/isSameMonth/index.js\"));\nvar _CalendarContainer = _interopRequireDefault(__webpack_require__(/*! ./CalendarContainer */ \"./src/Calendar/CalendarContainer.tsx\"));\nvar _Button = _interopRequireDefault(__webpack_require__(/*! ../Button */ \"./src/Button/index.tsx\"));\nvar _CustomProvider = __webpack_require__(/*! ../CustomProvider */ \"./src/CustomProvider/index.tsx\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _useCalendarDate2 = _interopRequireDefault(__webpack_require__(/*! ./useCalendarDate */ \"./src/Calendar/useCalendarDate.ts\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Calendar/Calendar.tsx\",\n _this = void 0;\n/**\n * The Calendar component is used to select dates.\n * @see https://rsuitejs.com/components/calendar\n */\nvar Calendar = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? _CalendarContainer.default : _props$as,\n bordered = props.bordered,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'calendar' : _props$classPrefix,\n compact = props.compact,\n _props$defaultValue = props.defaultValue,\n defaultValue = _props$defaultValue === void 0 ? new Date() : _props$defaultValue,\n isoWeek = props.isoWeek,\n overrideLocale = props.locale,\n onChange = props.onChange,\n onMonthChange = props.onMonthChange,\n onSelect = props.onSelect,\n renderCell = props.renderCell,\n value = props.value,\n cellClassName = props.cellClassName,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"bordered\", \"className\", \"classPrefix\", \"compact\", \"defaultValue\", \"isoWeek\", \"locale\", \"onChange\", \"onMonthChange\", \"onSelect\", \"renderCell\", \"value\", \"cellClassName\"]);\n var _useCalendarDate = (0, _useCalendarDate2.default)(value, defaultValue),\n calendarDate = _useCalendarDate.calendarDate,\n setCalendarDate = _useCalendarDate.setCalendarDate;\n var _useCustom = (0, _utils.useCustom)('Calendar', overrideLocale),\n locale = _useCustom.locale;\n var handleChange = (0, _react.useCallback)(function (nextValue) {\n setCalendarDate(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue);\n if (!(0, _isSameMonth.default)(nextValue, calendarDate)) {\n onMonthChange === null || onMonthChange === void 0 ? void 0 : onMonthChange(nextValue);\n }\n }, [setCalendarDate, onChange, calendarDate, onMonthChange]);\n var handleClickToday = (0, _react.useCallback)(function () {\n handleChange(new Date());\n }, [handleChange]);\n var handleSelect = (0, _react.useCallback)(function (nextValue) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(nextValue);\n handleChange(nextValue);\n }, [handleChange, onSelect]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix;\n var renderToolbar = (0, _react.useCallback)(function () {\n return /*#__PURE__*/_react.default.createElement(_Button.default, {\n className: prefix('btn-today'),\n size: \"sm\",\n onClick: handleClickToday,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 109,\n columnNumber: 9\n }\n }, locale.today || 'Today');\n }, [handleClickToday, locale.today, prefix]);\n var customRenderCell = (0, _react.useCallback)(function (date) {\n return renderCell === null || renderCell === void 0 ? void 0 : renderCell(date);\n }, [renderCell]);\n var classes = merge(className, withClassPrefix('panel', {\n bordered: bordered,\n compact: compact\n }));\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n inline: true,\n className: classes,\n ref: ref,\n isoWeek: isoWeek,\n format: \"yyyy-MM-dd\",\n calendarDate: calendarDate,\n limitEndYear: 1000,\n locale: locale,\n renderTitle: function renderTitle(date) {\n return /*#__PURE__*/_react.default.createElement(_CustomProvider.FormattedDate, {\n date: date,\n formatStr: locale.formattedMonthPattern || 'MMMM yyyy',\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 132,\n columnNumber: 11\n }\n });\n },\n renderToolbar: renderToolbar,\n renderCell: customRenderCell,\n cellClassName: cellClassName,\n onMoveForward: handleChange,\n onMoveBackward: handleChange,\n onChangeMonth: handleChange,\n onSelect: handleSelect,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 121,\n columnNumber: 7\n }\n }));\n});\nCalendar.displayName = 'Calendar';\nCalendar.propTypes = {\n value: _propTypes.default.instanceOf(Date),\n defaultValue: _propTypes.default.instanceOf(Date),\n isoWeek: _propTypes.default.bool,\n compact: _propTypes.default.bool,\n bordered: _propTypes.default.bool,\n locale: _propTypes.default.object,\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n onChange: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n renderCell: _propTypes.default.func\n};\nvar _default = Calendar;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Calendar/Calendar.tsx?");
6190
6201
 
6191
6202
  /***/ }),
6192
6203
 
@@ -6208,7 +6219,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
6208
6219
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6209
6220
 
6210
6221
  "use strict";
6211
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _MonthDropdown = _interopRequireDefault(__webpack_require__(/*! ./MonthDropdown */ \"./src/Calendar/MonthDropdown.tsx\"));\nvar _TimeDropdown = _interopRequireDefault(__webpack_require__(/*! ./TimeDropdown */ \"./src/Calendar/TimeDropdown.tsx\"));\nvar _CalendarBody = _interopRequireDefault(__webpack_require__(/*! ./CalendarBody */ \"./src/Calendar/CalendarBody.tsx\"));\nvar _CalendarHeader = _interopRequireDefault(__webpack_require__(/*! ./CalendarHeader */ \"./src/Calendar/CalendarHeader.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _dateUtils = __webpack_require__(/*! ../utils/dateUtils */ \"./src/utils/dateUtils.ts\");\nvar _CalendarContext = __webpack_require__(/*! ./CalendarContext */ \"./src/Calendar/CalendarContext.ts\");\nvar _useCalendarState2 = _interopRequireWildcard(__webpack_require__(/*! ./useCalendarState */ \"./src/Calendar/useCalendarState.ts\"));\nvar _AngleUp = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleUp */ \"./node_modules/@rsuite/icons/legacy/AngleUp.js\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Calendar/CalendarContainer.tsx\",\n _this = void 0;\nvar CalendarContainer = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'calendar' : _props$classPrefix,\n dateRange = props.dateRange,\n disabledBackward = props.disabledBackward,\n defaultState = props.defaultState,\n disabledDate = props.disabledDate,\n disabledForward = props.disabledForward,\n format = props.format,\n hoverRangeValue = props.hoverRangeValue,\n _props$isoWeek = props.isoWeek,\n isoWeek = _props$isoWeek === void 0 ? false : _props$isoWeek,\n targetId = props.targetId,\n limitEndYear = props.limitEndYear,\n limitStartYear = props.limitStartYear,\n locale = props.locale,\n onChangeMonth = props.onChangeMonth,\n onChangeTime = props.onChangeTime,\n onMouseMove = props.onMouseMove,\n onMoveBackward = props.onMoveBackward,\n onMoveForward = props.onMoveForward,\n onSelect = props.onSelect,\n onToggleMeridian = props.onToggleMeridian,\n onToggleMonthDropdown = props.onToggleMonthDropdown,\n onToggleTimeDropdown = props.onToggleTimeDropdown,\n calendarDateProp = props.calendarDate,\n cellClassName = props.cellClassName,\n renderCell = props.renderCell,\n renderTitle = props.renderTitle,\n renderToolbar = props.renderToolbar,\n showMeridian = props.showMeridian,\n showWeekNumbers = props.showWeekNumbers,\n inline = props.inline,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"className\", \"classPrefix\", \"dateRange\", \"disabledBackward\", \"defaultState\", \"disabledDate\", \"disabledForward\", \"format\", \"hoverRangeValue\", \"isoWeek\", \"targetId\", \"limitEndYear\", \"limitStartYear\", \"locale\", \"onChangeMonth\", \"onChangeTime\", \"onMouseMove\", \"onMoveBackward\", \"onMoveForward\", \"onSelect\", \"onToggleMeridian\", \"onToggleMonthDropdown\", \"onToggleTimeDropdown\", \"calendarDate\", \"cellClassName\", \"renderCell\", \"renderTitle\", \"renderToolbar\", \"showMeridian\", \"showWeekNumbers\", \"inline\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var _useCalendarState = (0, _useCalendarState2.default)(defaultState),\n calendarState = _useCalendarState.calendarState,\n reset = _useCalendarState.reset,\n openMonth = _useCalendarState.openMonth,\n openTime = _useCalendarState.openTime;\n var calendarDate = (0, _react.useMemo)(function () {\n return (0, _dateUtils.isValid)(calendarDateProp) ? calendarDateProp : new Date();\n }, [calendarDateProp]);\n var isDisabledDate = (0, _react.useCallback)(function (date) {\n var _disabledDate;\n return (_disabledDate = disabledDate === null || disabledDate === void 0 ? void 0 : disabledDate(date)) !== null && _disabledDate !== void 0 ? _disabledDate : false;\n }, [disabledDate]);\n var isTimeDisabled = function isTimeDisabled(date) {\n return (0, _dateUtils.disabledTime)(props, date);\n };\n var handleMoveForward = (0, _react.useCallback)(function () {\n onMoveForward === null || onMoveForward === void 0 ? void 0 : onMoveForward((0, _dateUtils.addMonths)(calendarDate, 1));\n }, [onMoveForward, calendarDate]);\n var handleMoveBackward = (0, _react.useCallback)(function () {\n onMoveBackward === null || onMoveBackward === void 0 ? void 0 : onMoveBackward((0, _dateUtils.addMonths)(calendarDate, -1));\n }, [onMoveBackward, calendarDate]);\n\n // It is displayed as the month to be selected.\n var toggleMonthView = (0, _react.useCallback)(function () {\n if (calendarState === _useCalendarState2.CalendarState.MONTH) {\n reset();\n } else {\n openMonth();\n }\n onToggleMonthDropdown === null || onToggleMonthDropdown === void 0 ? void 0 : onToggleMonthDropdown(calendarState !== _useCalendarState2.CalendarState.MONTH);\n }, [calendarState, onToggleMonthDropdown, openMonth, reset]);\n\n // It is displayed as a time to be selected.\n var toggleTimeView = (0, _react.useCallback)(function () {\n if (calendarState === _useCalendarState2.CalendarState.TIME) {\n reset();\n } else {\n openTime();\n }\n onToggleTimeDropdown === null || onToggleTimeDropdown === void 0 ? void 0 : onToggleTimeDropdown(calendarState !== _useCalendarState2.CalendarState.TIME);\n }, [calendarState, onToggleTimeDropdown, openTime, reset]);\n var handleCloseDropdown = (0, _react.useCallback)(function () {\n return reset();\n }, [reset]);\n var renderDate = (0, _dateUtils.shouldRenderDate)(format);\n var renderTime = (0, _dateUtils.shouldRenderTime)(format);\n var renderMonth = (0, _dateUtils.shouldRenderMonth)(format);\n var onlyShowTime = renderTime && !renderDate && !renderMonth;\n var onlyShowMonth = renderMonth && !renderDate && !renderTime;\n var showTime = calendarState === _useCalendarState2.CalendarState.TIME || onlyShowTime;\n var showMonth = calendarState === _useCalendarState2.CalendarState.MONTH || onlyShowMonth;\n var inSameThisMonthDate = (0, _react.useCallback)(function (date) {\n return (0, _dateUtils.isSameMonth)(calendarDate, date);\n }, [calendarDate]);\n var calendarClasses = merge(className, withClassPrefix({\n 'time-view': showTime,\n 'month-view': showMonth,\n 'show-week-numbers': showWeekNumbers\n }));\n var timeDropdownProps = (0, _pick.default)(rest, _dateUtils.calendarOnlyProps);\n var handleChangeMonth = (0, _react.useCallback)(function (date, event) {\n reset();\n onChangeMonth === null || onChangeMonth === void 0 ? void 0 : onChangeMonth(date, event);\n }, [onChangeMonth, reset]);\n var contextValue = (0, _react.useMemo)(function () {\n return {\n date: calendarDate,\n dateRange: dateRange,\n disabledDate: isDisabledDate,\n format: format,\n hoverRangeValue: hoverRangeValue,\n inSameMonth: inSameThisMonthDate,\n isoWeek: isoWeek,\n targetId: targetId,\n locale: locale,\n onChangeMonth: handleChangeMonth,\n onChangeTime: onChangeTime,\n onMouseMove: onMouseMove,\n onSelect: onSelect,\n cellClassName: cellClassName,\n renderCell: renderCell,\n showWeekNumbers: showWeekNumbers,\n inline: inline\n };\n }, [calendarDate, dateRange, format, handleChangeMonth, hoverRangeValue, inSameThisMonthDate, inline, isDisabledDate, isoWeek, targetId, locale, onChangeTime, onMouseMove, onSelect, cellClassName, renderCell, showWeekNumbers]);\n return /*#__PURE__*/_react.default.createElement(_CalendarContext.CalendarProvider, {\n value: contextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 271,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n \"data-testid\": \"calendar\"\n }, (0, _dateUtils.omitHideDisabledProps)(rest), {\n className: calendarClasses,\n ref: ref,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 272,\n columnNumber: 9\n }\n }), /*#__PURE__*/_react.default.createElement(_CalendarHeader.default, {\n showMonth: renderMonth,\n showDate: renderDate,\n showTime: renderTime,\n showMeridian: showMeridian,\n disabledTime: isTimeDisabled,\n onMoveForward: handleMoveForward,\n onMoveBackward: handleMoveBackward,\n onToggleMonthDropdown: toggleMonthView,\n onToggleTimeDropdown: toggleTimeView,\n onToggleMeridian: onToggleMeridian,\n renderTitle: renderTitle,\n renderToolbar: renderToolbar,\n disabledBackward: disabledBackward,\n disabledForward: disabledForward,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 278,\n columnNumber: 11\n }\n }), renderDate && /*#__PURE__*/_react.default.createElement(_CalendarBody.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 294,\n columnNumber: 26\n }\n }), renderMonth && /*#__PURE__*/_react.default.createElement(_MonthDropdown.default, {\n show: showMonth,\n limitEndYear: limitEndYear,\n limitStartYear: limitStartYear,\n disabledMonth: isDisabledDate,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 296,\n columnNumber: 13\n }\n }), renderTime && /*#__PURE__*/_react.default.createElement(_TimeDropdown.default, (0, _extends2.default)({}, timeDropdownProps, {\n show: showTime,\n showMeridian: showMeridian,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 304,\n columnNumber: 13\n }\n })), (showMonth || showTime) && renderDate && /*#__PURE__*/_react.default.createElement(\"button\", {\n className: prefix('btn-close'),\n onClick: handleCloseDropdown,\n \"aria-label\": \"Collapse \" + (showMonth ? 'month' : 'time') + \" view\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 308,\n columnNumber: 13\n }\n }, /*#__PURE__*/_react.default.createElement(_AngleUp.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 313,\n columnNumber: 15\n }\n }))));\n});\nCalendarContainer.displayName = 'CalendarContainer';\nCalendarContainer.propTypes = {\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n disabledDate: _propTypes.default.func,\n disabledHours: _propTypes.default.func,\n disabledMinutes: _propTypes.default.func,\n disabledSeconds: _propTypes.default.func,\n format: _propTypes.default.string,\n hideHours: _propTypes.default.func,\n hideMinutes: _propTypes.default.func,\n hideSeconds: _propTypes.default.func,\n isoWeek: _propTypes.default.bool,\n limitEndYear: _propTypes.default.number,\n limitStartYear: _propTypes.default.number,\n locale: _propTypes.default.object,\n onChangeMonth: _propTypes.default.func,\n onChangeTime: _propTypes.default.func,\n onMoveBackward: _propTypes.default.func,\n onMoveForward: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onToggleMeridian: _propTypes.default.func,\n onToggleMonthDropdown: _propTypes.default.func,\n onToggleTimeDropdown: _propTypes.default.func,\n calendarDate: _propTypes.default.instanceOf(Date),\n renderCell: _propTypes.default.func,\n renderTitle: _propTypes.default.func,\n renderToolbar: _propTypes.default.func,\n showMeridian: _propTypes.default.bool,\n showWeekNumbers: _propTypes.default.bool\n};\nvar _default = CalendarContainer;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Calendar/CalendarContainer.tsx?");
6222
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _MonthDropdown = _interopRequireDefault(__webpack_require__(/*! ./MonthDropdown */ \"./src/Calendar/MonthDropdown.tsx\"));\nvar _TimeDropdown = _interopRequireDefault(__webpack_require__(/*! ./TimeDropdown */ \"./src/Calendar/TimeDropdown.tsx\"));\nvar _CalendarBody = _interopRequireDefault(__webpack_require__(/*! ./CalendarBody */ \"./src/Calendar/CalendarBody.tsx\"));\nvar _CalendarHeader = _interopRequireDefault(__webpack_require__(/*! ./CalendarHeader */ \"./src/Calendar/CalendarHeader.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _dateUtils = __webpack_require__(/*! ../utils/dateUtils */ \"./src/utils/dateUtils.ts\");\nvar _CalendarContext = __webpack_require__(/*! ./CalendarContext */ \"./src/Calendar/CalendarContext.ts\");\nvar _useCalendarState2 = _interopRequireWildcard(__webpack_require__(/*! ./useCalendarState */ \"./src/Calendar/useCalendarState.ts\"));\nvar _AngleUp = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleUp */ \"./node_modules/@rsuite/icons/legacy/AngleUp.js\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Calendar/CalendarContainer.tsx\",\n _this = void 0;\nvar CalendarContainer = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'calendar' : _props$classPrefix,\n dateRange = props.dateRange,\n disabledBackward = props.disabledBackward,\n defaultState = props.defaultState,\n disabledDate = props.disabledDate,\n disabledForward = props.disabledForward,\n format = props.format,\n hoverRangeValue = props.hoverRangeValue,\n _props$isoWeek = props.isoWeek,\n isoWeek = _props$isoWeek === void 0 ? false : _props$isoWeek,\n targetId = props.targetId,\n limitEndYear = props.limitEndYear,\n limitStartYear = props.limitStartYear,\n locale = props.locale,\n onChangeMonth = props.onChangeMonth,\n onChangeTime = props.onChangeTime,\n onMouseMove = props.onMouseMove,\n onMoveBackward = props.onMoveBackward,\n onMoveForward = props.onMoveForward,\n onSelect = props.onSelect,\n onToggleMeridian = props.onToggleMeridian,\n onToggleMonthDropdown = props.onToggleMonthDropdown,\n onToggleTimeDropdown = props.onToggleTimeDropdown,\n calendarDateProp = props.calendarDate,\n cellClassName = props.cellClassName,\n renderCell = props.renderCell,\n renderTitle = props.renderTitle,\n renderToolbar = props.renderToolbar,\n showMeridian = props.showMeridian,\n showWeekNumbers = props.showWeekNumbers,\n inline = props.inline,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"className\", \"classPrefix\", \"dateRange\", \"disabledBackward\", \"defaultState\", \"disabledDate\", \"disabledForward\", \"format\", \"hoverRangeValue\", \"isoWeek\", \"targetId\", \"limitEndYear\", \"limitStartYear\", \"locale\", \"onChangeMonth\", \"onChangeTime\", \"onMouseMove\", \"onMoveBackward\", \"onMoveForward\", \"onSelect\", \"onToggleMeridian\", \"onToggleMonthDropdown\", \"onToggleTimeDropdown\", \"calendarDate\", \"cellClassName\", \"renderCell\", \"renderTitle\", \"renderToolbar\", \"showMeridian\", \"showWeekNumbers\", \"inline\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var _useCalendarState = (0, _useCalendarState2.default)(defaultState),\n calendarState = _useCalendarState.calendarState,\n reset = _useCalendarState.reset,\n openMonth = _useCalendarState.openMonth,\n openTime = _useCalendarState.openTime;\n var calendarDate = (0, _react.useMemo)(function () {\n return (0, _dateUtils.isValid)(calendarDateProp) ? calendarDateProp : new Date();\n }, [calendarDateProp]);\n var isDisabledDate = (0, _utils.useEventCallback)(function (date) {\n var _disabledDate;\n return (_disabledDate = disabledDate === null || disabledDate === void 0 ? void 0 : disabledDate(date)) !== null && _disabledDate !== void 0 ? _disabledDate : false;\n });\n var isTimeDisabled = function isTimeDisabled(date) {\n return (0, _dateUtils.disabledTime)(props, date);\n };\n var handleMoveForward = (0, _utils.useEventCallback)(function () {\n onMoveForward === null || onMoveForward === void 0 ? void 0 : onMoveForward((0, _dateUtils.addMonths)(calendarDate, 1));\n });\n var handleMoveBackward = (0, _utils.useEventCallback)(function () {\n onMoveBackward === null || onMoveBackward === void 0 ? void 0 : onMoveBackward((0, _dateUtils.addMonths)(calendarDate, -1));\n });\n\n // It is displayed as the month to be selected.\n var toggleMonthView = (0, _utils.useEventCallback)(function () {\n if (calendarState === _useCalendarState2.CalendarState.MONTH) {\n reset();\n } else {\n openMonth();\n }\n onToggleMonthDropdown === null || onToggleMonthDropdown === void 0 ? void 0 : onToggleMonthDropdown(calendarState !== _useCalendarState2.CalendarState.MONTH);\n });\n\n // It is displayed as a time to be selected.\n var toggleTimeView = (0, _utils.useEventCallback)(function () {\n if (calendarState === _useCalendarState2.CalendarState.TIME) {\n reset();\n } else {\n openTime();\n }\n onToggleTimeDropdown === null || onToggleTimeDropdown === void 0 ? void 0 : onToggleTimeDropdown(calendarState !== _useCalendarState2.CalendarState.TIME);\n });\n var handleCloseDropdown = (0, _utils.useEventCallback)(function () {\n return reset();\n });\n var renderDate = (0, _dateUtils.shouldRenderDate)(format);\n var renderTime = (0, _dateUtils.shouldRenderTime)(format);\n var renderMonth = (0, _dateUtils.shouldRenderMonth)(format);\n var onlyShowTime = renderTime && !renderDate && !renderMonth;\n var onlyShowMonth = renderMonth && !renderDate && !renderTime;\n var showTime = calendarState === _useCalendarState2.CalendarState.TIME || onlyShowTime;\n var showMonth = calendarState === _useCalendarState2.CalendarState.MONTH || onlyShowMonth;\n var inSameThisMonthDate = (0, _utils.useEventCallback)(function (date) {\n return (0, _dateUtils.isSameMonth)(calendarDate, date);\n });\n var calendarClasses = merge(className, withClassPrefix({\n 'time-view': showTime,\n 'month-view': showMonth,\n 'show-week-numbers': showWeekNumbers\n }));\n var timeDropdownProps = (0, _pick.default)(rest, _dateUtils.calendarOnlyProps);\n var handleChangeMonth = (0, _utils.useEventCallback)(function (date, event) {\n reset();\n onChangeMonth === null || onChangeMonth === void 0 ? void 0 : onChangeMonth(date, event);\n });\n var contextValue = {\n date: calendarDate,\n dateRange: dateRange,\n disabledDate: isDisabledDate,\n format: format,\n hoverRangeValue: hoverRangeValue,\n inSameMonth: inSameThisMonthDate,\n isoWeek: isoWeek,\n targetId: targetId,\n locale: locale,\n onChangeMonth: handleChangeMonth,\n onChangeTime: onChangeTime,\n onMouseMove: onMouseMove,\n onSelect: onSelect,\n cellClassName: cellClassName,\n renderCell: renderCell,\n showWeekNumbers: showWeekNumbers,\n inline: inline\n };\n return /*#__PURE__*/_react.default.createElement(_CalendarContext.CalendarProvider, {\n value: contextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 246,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n \"data-testid\": \"calendar\"\n }, (0, _dateUtils.omitHideDisabledProps)(rest), {\n className: calendarClasses,\n ref: ref,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 247,\n columnNumber: 9\n }\n }), /*#__PURE__*/_react.default.createElement(_CalendarHeader.default, {\n showMonth: renderMonth,\n showDate: renderDate,\n showTime: renderTime,\n showMeridian: showMeridian,\n disabledTime: isTimeDisabled,\n onMoveForward: handleMoveForward,\n onMoveBackward: handleMoveBackward,\n onToggleMonthDropdown: toggleMonthView,\n onToggleTimeDropdown: toggleTimeView,\n onToggleMeridian: onToggleMeridian,\n renderTitle: renderTitle,\n renderToolbar: renderToolbar,\n disabledBackward: disabledBackward,\n disabledForward: disabledForward,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 253,\n columnNumber: 11\n }\n }), renderDate && /*#__PURE__*/_react.default.createElement(_CalendarBody.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 269,\n columnNumber: 26\n }\n }), renderMonth && /*#__PURE__*/_react.default.createElement(_MonthDropdown.default, {\n show: showMonth,\n limitEndYear: limitEndYear,\n limitStartYear: limitStartYear,\n disabledMonth: isDisabledDate,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 271,\n columnNumber: 13\n }\n }), renderTime && /*#__PURE__*/_react.default.createElement(_TimeDropdown.default, (0, _extends2.default)({}, timeDropdownProps, {\n show: showTime,\n showMeridian: showMeridian,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 279,\n columnNumber: 13\n }\n })), (showMonth || showTime) && renderDate && /*#__PURE__*/_react.default.createElement(\"button\", {\n className: prefix('btn-close'),\n onClick: handleCloseDropdown,\n \"aria-label\": \"Collapse \" + (showMonth ? 'month' : 'time') + \" view\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 283,\n columnNumber: 13\n }\n }, /*#__PURE__*/_react.default.createElement(_AngleUp.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 288,\n columnNumber: 15\n }\n }))));\n});\nCalendarContainer.displayName = 'CalendarContainer';\nCalendarContainer.propTypes = {\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n disabledDate: _propTypes.default.func,\n disabledHours: _propTypes.default.func,\n disabledMinutes: _propTypes.default.func,\n disabledSeconds: _propTypes.default.func,\n format: _propTypes.default.string,\n hideHours: _propTypes.default.func,\n hideMinutes: _propTypes.default.func,\n hideSeconds: _propTypes.default.func,\n isoWeek: _propTypes.default.bool,\n limitEndYear: _propTypes.default.number,\n limitStartYear: _propTypes.default.number,\n locale: _propTypes.default.object,\n onChangeMonth: _propTypes.default.func,\n onChangeTime: _propTypes.default.func,\n onMoveBackward: _propTypes.default.func,\n onMoveForward: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onToggleMeridian: _propTypes.default.func,\n onToggleMonthDropdown: _propTypes.default.func,\n onToggleTimeDropdown: _propTypes.default.func,\n calendarDate: _propTypes.default.instanceOf(Date),\n renderCell: _propTypes.default.func,\n renderTitle: _propTypes.default.func,\n renderToolbar: _propTypes.default.func,\n showMeridian: _propTypes.default.bool,\n showWeekNumbers: _propTypes.default.bool\n};\nvar _default = CalendarContainer;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Calendar/CalendarContainer.tsx?");
6212
6223
 
6213
6224
  /***/ }),
6214
6225
 
@@ -6384,18 +6395,18 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
6384
6395
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6385
6396
 
6386
6397
  "use strict";
6387
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _reactUseSet = __webpack_require__(/*! react-use-set */ \"./node_modules/react-use-set/dist/index.js\");\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _shallowEqual = _interopRequireDefault(__webpack_require__(/*! ../utils/shallowEqual */ \"./src/utils/shallowEqual.ts\"));\nvar _DropdownMenu = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenu */ \"./src/Cascader/DropdownMenu.tsx\"));\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils = __webpack_require__(/*! ./utils */ \"./src/Cascader/utils.ts\");\nvar _utils2 = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _useMap = __webpack_require__(/*! ../utils/useMap */ \"./src/utils/useMap.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Cascader/Cascader.tsx\",\n _this = void 0;\nvar emptyArray = [];\n\n/**\n * The `Cascader` component displays a hierarchical list of options.\n * @see https://rsuitejs.com/components/cascader\n */\nvar Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\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 _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\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 defaultValue = props.defaultValue,\n placeholder = props.placeholder,\n disabled = props.disabled,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\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 valueProp = props.value,\n inline = props.inline,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n menuWidth = props.menuWidth,\n menuHeight = props.menuHeight,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n parentSelectable = props.parentSelectable,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n id = props.id,\n renderMenuItem = props.renderMenuItem,\n renderSearchItem = props.renderSearchItem,\n renderValue = props.renderValue,\n renderMenu = props.renderMenu,\n renderExtraFooter = props.renderExtraFooter,\n onEnter = props.onEnter,\n onExited = props.onExited,\n onClean = props.onClean,\n onChange = props.onChange,\n onSelect = props.onSelect,\n onSearch = props.onSearch,\n onClose = props.onClose,\n onOpen = props.onOpen,\n getChildren = props.getChildren,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"data\", \"classPrefix\", \"childrenKey\", \"valueKey\", \"labelKey\", \"defaultValue\", \"placeholder\", \"disabled\", \"disabledItemValues\", \"appearance\", \"cleanable\", \"locale\", \"toggleAs\", \"style\", \"value\", \"inline\", \"menuClassName\", \"menuStyle\", \"menuWidth\", \"menuHeight\", \"searchable\", \"parentSelectable\", \"placement\", \"id\", \"renderMenuItem\", \"renderSearchItem\", \"renderValue\", \"renderMenu\", \"renderExtraFooter\", \"onEnter\", \"onExited\", \"onClean\", \"onChange\", \"onSelect\", \"onSearch\", \"onClose\", \"onOpen\", \"getChildren\"]); // Use component active state to support keyboard events.\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\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 var _ref = (0, _utils2.useControlled)(valueProp, defaultValue),\n value = _ref[0],\n setValue = _ref[1];\n var isMounted = (0, _utils2.useIsMounted)();\n var loadingItemsSet = (0, _reactUseSet.useSet)();\n var asyncChildrenMap = (0, _useMap.useMap)();\n var parentMap = (0, _react.useMemo)(function () {\n return (0, _treeUtils.getParentMap)(data, function (item) {\n var _asyncChildrenMap$get;\n return (_asyncChildrenMap$get = asyncChildrenMap.get(item)) !== null && _asyncChildrenMap$get !== void 0 ? _asyncChildrenMap$get : item[childrenKey];\n });\n }, [asyncChildrenMap, childrenKey, data]);\n var flattenedData = (0, _react.useMemo)(function () {\n return (0, _treeUtils.flattenTree)(data, function (item) {\n var _asyncChildrenMap$get2;\n return (_asyncChildrenMap$get2 = asyncChildrenMap.get(item)) !== null && _asyncChildrenMap$get2 !== void 0 ? _asyncChildrenMap$get2 : item[childrenKey];\n });\n }, [asyncChildrenMap, childrenKey, data]);\n\n // The item that focus is on\n var _useState2 = (0, _react.useState)(),\n activeItem = _useState2[0],\n setActiveItem = _useState2[1];\n var _usePaths = (0, _utils.usePaths)({\n data: data,\n activeItem: activeItem,\n selectedItem: flattenedData.find(function (item) {\n return item[valueKey] === value;\n }),\n getParent: function getParent(item) {\n return parentMap.get(item);\n },\n getChildren: function getChildren(item) {\n var _asyncChildrenMap$get3;\n return (_asyncChildrenMap$get3 = asyncChildrenMap.get(item)) !== null && _asyncChildrenMap$get3 !== void 0 ? _asyncChildrenMap$get3 : item[childrenKey];\n }\n }),\n columnsToDisplay = _usePaths.columnsToDisplay,\n pathTowardsActiveItem = _usePaths.pathTowardsActiveItem,\n pathTowardsSelectedItem = _usePaths.pathTowardsSelectedItem;\n (0, _Picker.usePublicMethods)(ref, {\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef\n });\n var _useCustom = (0, _utils2.useCustom)('Picker', overrideLocale),\n locale = _useCustom.locale,\n rtl = _useCustom.rtl;\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 var hasValue = pathTowardsSelectedItem.length > 0 || !(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue);\n var _useClassNames = (0, _utils2.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var _useState3 = (0, _react.useState)(''),\n searchKeyword = _useState3[0],\n setSearchKeyword = _useState3[1];\n var someKeyword = (0, _react.useCallback)(function (item, keyword) {\n if (item[labelKey].match(new RegExp((0, _utils2.getSafeRegExpString)(keyword || searchKeyword), 'i'))) {\n return true;\n }\n var parent = parentMap.get(item);\n if (parent && someKeyword(parent)) {\n return true;\n }\n return false;\n }, [labelKey, parentMap, searchKeyword]);\n var getSearchResult = (0, _react.useCallback)(function (keyword) {\n var items = [];\n var result = flattenedData.filter(function (item) {\n if (!parentSelectable && item[childrenKey]) {\n return false;\n }\n return someKeyword(item, keyword);\n });\n for (var i = 0; i < result.length; i++) {\n items.push(result[i]);\n\n // A maximum of 100 search results are returned.\n if (i === 99) {\n return items;\n }\n }\n return items;\n }, [childrenKey, flattenedData, someKeyword, parentSelectable]);\n\n // Used to hover the focuse item when trigger `onKeydown`\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(value, {\n rtl: rtl,\n data: flattenedData,\n valueKey: valueKey,\n defaultLayer: pathTowardsSelectedItem !== null && pathTowardsSelectedItem !== void 0 && pathTowardsSelectedItem.length ? pathTowardsSelectedItem.length - 1 : 0,\n target: function target() {\n return overlayRef.current;\n },\n getParent: function getParent(item) {\n return parentMap.get(item);\n },\n callback: (0, _react.useCallback)(function (value) {\n setActiveItem(flattenedData.find(function (item) {\n return item[valueKey] === value;\n }));\n }, [flattenedData, setActiveItem, valueKey])\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setFocusItemValue = _useFocusItemValue.setFocusItemValue,\n setLayer = _useFocusItemValue.setLayer,\n setKeys = _useFocusItemValue.setKeys,\n onFocusItem = _useFocusItemValue.onKeyDown;\n var handleSearch = (0, _react.useCallback)(function (value, event) {\n var items = getSearchResult(value);\n setSearchKeyword(value);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(value, event);\n if (!value || items.length === 0) {\n setFocusItemValue(undefined);\n return;\n }\n if (items.length > 0) {\n setFocusItemValue(items[0][valueKey]);\n setLayer(0);\n setKeys([]);\n }\n }, [getSearchResult, onSearch, setFocusItemValue, setKeys, setLayer, valueKey]);\n var handleEntered = (0, _react.useCallback)(function () {\n if (!targetRef.current) {\n return;\n }\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n }, [onOpen]);\n var handleExited = (0, _react.useCallback)(function () {\n if (!targetRef.current) {\n return;\n }\n onClose === null || onClose === void 0 ? void 0 : onClose();\n setActive(false);\n setSearchKeyword('');\n }, [onClose]);\n var handleClose = (0, _react.useCallback)(function () {\n var _triggerRef$current, _targetRef$current, _targetRef$current$fo;\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.close();\n\n // The focus is on the trigger button after closing\n (_targetRef$current = targetRef.current) === null || _targetRef$current === void 0 ? void 0 : (_targetRef$current$fo = _targetRef$current.focus) === null || _targetRef$current$fo === void 0 ? void 0 : _targetRef$current$fo.call(_targetRef$current);\n }, []);\n var handleClean = (0, _react.useCallback)(function (event) {\n if (disabled || !targetRef.current) {\n return;\n }\n setValue(null);\n onChange === null || onChange === void 0 ? void 0 : onChange(null, event);\n }, [disabled, onChange, setValue]);\n var handleMenuPressEnter = (0, _react.useCallback)(function (event) {\n var focusItem = (0, _treeUtils.findNodeOfTree)(data, function (item) {\n return item[valueKey] === focusItemValue;\n });\n var isLeafNode = focusItem && !focusItem[childrenKey];\n if (isLeafNode) {\n setValue(focusItemValue);\n if (pathTowardsActiveItem.length) {\n setLayer(pathTowardsActiveItem.length - 1);\n }\n if (!(0, _shallowEqual.default)(value, focusItemValue)) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(focusItem, pathTowardsActiveItem, event);\n onChange === null || onChange === void 0 ? void 0 : onChange(focusItemValue !== null && focusItemValue !== void 0 ? focusItemValue : null, event);\n }\n handleClose();\n }\n }, [childrenKey, data, focusItemValue, handleClose, onChange, pathTowardsActiveItem, setLayer, setValue, value, valueKey, onSelect]);\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 handleSelect = function handleSelect(node, cascadePaths, isLeafNode, event) {\n var _node$childrenKey, _triggerRef$current2;\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event);\n setActiveItem(node);\n var nextValue = node[valueKey];\n\n // Lazy load node's children\n if (typeof getChildren === 'function' && ((_node$childrenKey = node[childrenKey]) === null || _node$childrenKey === void 0 ? void 0 : _node$childrenKey.length) === 0 && !asyncChildrenMap.has(node)) {\n loadingItemsSet.add(node);\n var children = getChildren(node);\n if (children instanceof Promise) {\n children.then(function (data) {\n if (isMounted()) {\n loadingItemsSet.delete(node);\n asyncChildrenMap.set(node, data);\n }\n });\n } else {\n loadingItemsSet.delete(node);\n asyncChildrenMap.set(node, children);\n }\n }\n if (isLeafNode) {\n // Determines whether the option is a leaf node, and if so, closes the picker.\n handleClose();\n setValue(nextValue);\n if (!(0, _shallowEqual.default)(value, nextValue)) {\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }\n return;\n }\n\n /** When the parent is optional, the value and the displayed path are updated. */\n if (parentSelectable && !(0, _shallowEqual.default)(value, nextValue)) {\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }\n\n // Update menu position\n (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : _triggerRef$current2.updatePosition();\n };\n\n /**\n * The search structure option is processed after being selected.\n */\n var handleSearchRowSelect = function handleSearchRowSelect(node, nodes, event) {\n var nextValue = node[valueKey];\n handleClose();\n setSearchKeyword('');\n setValue(nextValue);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, nodes, event);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n };\n var renderSearchRow = function renderSearchRow(item, key) {\n var regx = new RegExp((0, _utils2.getSafeRegExpString)(searchKeyword), 'ig');\n var nodes = (0, _treeUtils.getPathTowardsItem)(item, function (item) {\n return parentMap.get(item);\n });\n var formattedNodes = nodes.map(function (node) {\n var _extends2;\n var labelElements = [];\n var a = node[labelKey].split(regx);\n var b = node[labelKey].match(regx);\n for (var i = 0; i < a.length; i++) {\n labelElements.push(a[i]);\n if (b && 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: 478,\n columnNumber: 13\n }\n }, b[i]));\n }\n }\n return (0, _extends3.default)({}, node, (_extends2 = {}, _extends2[labelKey] = labelElements, _extends2));\n });\n var disabled = disabledItemValues.some(function (value) {\n return formattedNodes.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 var label = formattedNodes.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: 499,\n columnNumber: 7\n }\n }, node[labelKey]);\n });\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n key: key,\n \"aria-disabled\": disabled,\n \"data-key\": item[valueKey],\n className: itemClasses,\n tabIndex: -1,\n role: \"option\",\n onClick: function onClick(event) {\n if (!disabled) {\n handleSearchRowSelect(item, nodes, event);\n }\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 505,\n columnNumber: 7\n }\n }, renderSearchItem ? renderSearchItem(label, nodes) : label);\n };\n var renderSearchResultPanel = function renderSearchResultPanel() {\n if (searchKeyword === '') {\n return null;\n }\n var items = getSearchResult();\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('cascader-search-panel'),\n \"data-layer\": 0,\n role: \"listbox\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 530,\n columnNumber: 7\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: 534,\n columnNumber: 11\n }\n }, locale.noResultsText));\n };\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var _ref2 = positionProps || {},\n left = _ref2.left,\n top = _ref2.top,\n className = _ref2.className;\n var styles = (0, _extends3.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var classes = merge(className, menuClassName, prefix('cascader-menu', {\n inline: inline\n }));\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n ref: (0, _utils2.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: 546,\n columnNumber: 7\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: 554,\n columnNumber: 11\n }\n }), renderSearchResultPanel(), searchKeyword === '' && /*#__PURE__*/_react.default.createElement(_DropdownMenu.default, {\n id: id ? id + \"-listbox\" : undefined,\n menuWidth: menuWidth,\n menuHeight: menuHeight,\n disabledItemValues: disabledItemValues,\n loadingItemsSet: loadingItemsSet,\n valueKey: valueKey,\n labelKey: labelKey,\n childrenKey: childrenKey,\n classPrefix: 'picker-cascader-menu',\n cascadeData: columnsToDisplay,\n cascadePaths: pathTowardsActiveItem,\n activeItemValue: value\n // FIXME make onSelect generic\n ,\n onSelect: handleSelect,\n renderMenu: renderMenu,\n renderMenuItem: renderMenuItem,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 564,\n columnNumber: 11\n }\n }), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n var selectedElement = placeholder;\n if (pathTowardsSelectedItem.length > 0) {\n selectedElement = [];\n pathTowardsSelectedItem.forEach(function (item, index) {\n var key = item[valueKey] || item[labelKey];\n selectedElement.push( /*#__PURE__*/_react.default.createElement(\"span\", {\n key: key,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 595,\n columnNumber: 28\n }\n }, item[labelKey]));\n if (index < pathTowardsSelectedItem.length - 1) {\n selectedElement.push( /*#__PURE__*/_react.default.createElement(\"span\", {\n className: \"separator\",\n key: key + \"-separator\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 598,\n columnNumber: 11\n }\n }, ' / '));\n }\n });\n }\n if (!(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue)) {\n selectedElement = renderValue(value, pathTowardsSelectedItem, selectedElement);\n // If renderValue returns null or undefined, hasValue is false.\n if ((0, _isNil.default)(selectedElement)) {\n hasValue = false;\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]; // TODO: bad api design\n // consider an isolated Menu component\n if (inline) {\n return renderDropdownMenu();\n }\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n placement: placement,\n onEntered: (0, _utils2.createChainedFunction)(handleEntered, onEnter),\n onExited: (0, _utils2.createChainedFunction)(handleExited, onExited),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 630,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 638,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends3.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n id: id,\n ref: targetRef,\n as: toggleAs,\n appearance: appearance,\n disabled: disabled,\n onClean: (0, _utils2.createChainedFunction)(handleClean, onClean),\n onKeyDown: onPickerKeyDown,\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n active: active,\n placement: placement,\n inputValue: value !== null && value !== void 0 ? value : '',\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 639,\n columnNumber: 9\n }\n }), selectedElement || (locale === null || locale === void 0 ? void 0 : locale.placeholder))));\n});\nCascader.displayName = 'Cascader';\nCascader.propTypes = (0, _extends3.default)({}, _Picker.listPickerPropTypes, {\n disabledItemValues: _propTypes.default.array,\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n renderMenu: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onSearch: _propTypes.default.func,\n cleanable: _propTypes.default.bool,\n renderMenuItem: _propTypes.default.func,\n renderSearchItem: _propTypes.default.func,\n menuWidth: _propTypes.default.number,\n menuHeight: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n searchable: _propTypes.default.bool,\n inline: _propTypes.default.bool,\n parentSelectable: _propTypes.default.bool\n});\nvar _default = Cascader;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Cascader/Cascader.tsx?");
6398
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _reactUseSet = __webpack_require__(/*! react-use-set */ \"./node_modules/react-use-set/dist/index.js\");\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _shallowEqual = _interopRequireDefault(__webpack_require__(/*! ../utils/shallowEqual */ \"./src/utils/shallowEqual.ts\"));\nvar _TreeView = _interopRequireDefault(__webpack_require__(/*! ./TreeView */ \"./src/Cascader/TreeView.tsx\"));\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils = __webpack_require__(/*! ./utils */ \"./src/Cascader/utils.ts\");\nvar _utils2 = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _useMap = __webpack_require__(/*! ../utils/useMap */ \"./src/utils/useMap.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Cascader/Cascader.tsx\",\n _this = void 0;\nvar emptyArray = [];\n\n/**\n * The `Cascader` component displays a hierarchical list of options.\n * @see https://rsuitejs.com/components/cascader\n */\nvar Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\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 _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\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 defaultValue = props.defaultValue,\n placeholder = props.placeholder,\n disabled = props.disabled,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\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 valueProp = props.value,\n inline = props.inline,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n menuWidth = props.menuWidth,\n menuHeight = props.menuHeight,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n parentSelectable = props.parentSelectable,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n id = props.id,\n renderMenuItem = props.renderMenuItem,\n renderSearchItem = props.renderSearchItem,\n renderValue = props.renderValue,\n renderMenu = props.renderMenu,\n renderExtraFooter = props.renderExtraFooter,\n onEnter = props.onEnter,\n onExited = props.onExited,\n onClean = props.onClean,\n onChange = props.onChange,\n onSelect = props.onSelect,\n onSearch = props.onSearch,\n onClose = props.onClose,\n onOpen = props.onOpen,\n getChildren = props.getChildren,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"data\", \"classPrefix\", \"childrenKey\", \"valueKey\", \"labelKey\", \"defaultValue\", \"placeholder\", \"disabled\", \"disabledItemValues\", \"appearance\", \"cleanable\", \"locale\", \"toggleAs\", \"style\", \"value\", \"inline\", \"menuClassName\", \"menuStyle\", \"menuWidth\", \"menuHeight\", \"searchable\", \"parentSelectable\", \"placement\", \"id\", \"renderMenuItem\", \"renderSearchItem\", \"renderValue\", \"renderMenu\", \"renderExtraFooter\", \"onEnter\", \"onExited\", \"onClean\", \"onChange\", \"onSelect\", \"onSearch\", \"onClose\", \"onOpen\", \"getChildren\"]); // Use component active state to support keyboard events.\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n var _usePickerRef = (0, _Picker.usePickerRef)(ref),\n trigger = _usePickerRef.trigger,\n root = _usePickerRef.root,\n target = _usePickerRef.target,\n overlay = _usePickerRef.overlay,\n searchInput = _usePickerRef.searchInput;\n var _ref = (0, _utils2.useControlled)(valueProp, defaultValue),\n value = _ref[0],\n setValue = _ref[1];\n var isMounted = (0, _utils2.useIsMounted)();\n var loadingItemsSet = (0, _reactUseSet.useSet)();\n var asyncChildrenMap = (0, _useMap.useMap)();\n var parentMap = (0, _react.useMemo)(function () {\n return (0, _treeUtils.getParentMap)(data, function (item) {\n var _asyncChildrenMap$get;\n return (_asyncChildrenMap$get = asyncChildrenMap.get(item)) !== null && _asyncChildrenMap$get !== void 0 ? _asyncChildrenMap$get : item[childrenKey];\n });\n }, [asyncChildrenMap, childrenKey, data]);\n var flattenedData = (0, _react.useMemo)(function () {\n return (0, _treeUtils.flattenTree)(data, function (item) {\n var _asyncChildrenMap$get2;\n return (_asyncChildrenMap$get2 = asyncChildrenMap.get(item)) !== null && _asyncChildrenMap$get2 !== void 0 ? _asyncChildrenMap$get2 : item[childrenKey];\n });\n }, [asyncChildrenMap, childrenKey, data]);\n\n // The item that focus is on\n var _useState2 = (0, _react.useState)(),\n activeItem = _useState2[0],\n setActiveItem = _useState2[1];\n var _usePaths = (0, _utils.usePaths)({\n data: data,\n activeItem: activeItem,\n selectedItem: flattenedData.find(function (item) {\n return item[valueKey] === value;\n }),\n getParent: function getParent(item) {\n return parentMap.get(item);\n },\n getChildren: function getChildren(item) {\n var _asyncChildrenMap$get3;\n return (_asyncChildrenMap$get3 = asyncChildrenMap.get(item)) !== null && _asyncChildrenMap$get3 !== void 0 ? _asyncChildrenMap$get3 : item[childrenKey];\n }\n }),\n columnsToDisplay = _usePaths.columnsToDisplay,\n pathTowardsActiveItem = _usePaths.pathTowardsActiveItem,\n pathTowardsSelectedItem = _usePaths.pathTowardsSelectedItem;\n var _useCustom = (0, _utils2.useCustom)('Picker', overrideLocale),\n locale = _useCustom.locale,\n rtl = _useCustom.rtl;\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 var hasValue = pathTowardsSelectedItem.length > 0 || !(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue);\n var _useClassNames = (0, _utils2.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var _useState3 = (0, _react.useState)(''),\n searchKeyword = _useState3[0],\n setSearchKeyword = _useState3[1];\n var someKeyword = function someKeyword(item, keyword) {\n if (item[labelKey].match(new RegExp((0, _utils2.getSafeRegExpString)(keyword || searchKeyword), 'i'))) {\n return true;\n }\n var parent = parentMap.get(item);\n if (parent && someKeyword(parent)) {\n return true;\n }\n return false;\n };\n var getSearchResult = function getSearchResult(keyword) {\n var items = [];\n var result = flattenedData.filter(function (item) {\n if (!parentSelectable && item[childrenKey]) {\n return false;\n }\n return someKeyword(item, keyword);\n });\n for (var i = 0; i < result.length; i++) {\n items.push(result[i]);\n\n // A maximum of 100 search results are returned.\n if (i === 99) {\n return items;\n }\n }\n return items;\n };\n\n // Used to hover the focuse item when trigger `onKeydown`\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(value, {\n rtl: rtl,\n data: flattenedData,\n valueKey: valueKey,\n defaultLayer: pathTowardsSelectedItem !== null && pathTowardsSelectedItem !== void 0 && pathTowardsSelectedItem.length ? pathTowardsSelectedItem.length - 1 : 0,\n target: function target() {\n return overlay.current;\n },\n getParent: function getParent(item) {\n return parentMap.get(item);\n },\n callback: (0, _react.useCallback)(function (value) {\n setActiveItem(flattenedData.find(function (item) {\n return item[valueKey] === value;\n }));\n }, [flattenedData, setActiveItem, valueKey])\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setFocusItemValue = _useFocusItemValue.setFocusItemValue,\n setLayer = _useFocusItemValue.setLayer,\n setKeys = _useFocusItemValue.setKeys,\n onFocusItem = _useFocusItemValue.onKeyDown;\n var handleSearch = (0, _utils2.useEventCallback)(function (value, event) {\n var items = getSearchResult(value);\n setSearchKeyword(value);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(value, event);\n if (!value || items.length === 0) {\n setFocusItemValue(undefined);\n return;\n }\n if (items.length > 0) {\n setFocusItemValue(items[0][valueKey]);\n setLayer(0);\n setKeys([]);\n }\n });\n var handleEntered = (0, _utils2.useEventCallback)(function () {\n if (!target.current) {\n return;\n }\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n });\n var handleExited = (0, _utils2.useEventCallback)(function () {\n if (!target.current) {\n return;\n }\n onClose === null || onClose === void 0 ? void 0 : onClose();\n setActive(false);\n setSearchKeyword('');\n });\n var handleClose = (0, _utils2.useEventCallback)(function () {\n var _trigger$current, _target$current, _target$current$focus;\n (_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : _trigger$current.close();\n\n // The focus is on the trigger button after closing\n (_target$current = target.current) === null || _target$current === void 0 ? void 0 : (_target$current$focus = _target$current.focus) === null || _target$current$focus === void 0 ? void 0 : _target$current$focus.call(_target$current);\n });\n var handleClean = (0, _utils2.useEventCallback)(function (event) {\n if (disabled || !target.current) {\n return;\n }\n setValue(null);\n onChange === null || onChange === void 0 ? void 0 : onChange(null, event);\n });\n var handleMenuPressEnter = (0, _utils2.useEventCallback)(function (event) {\n var focusItem = (0, _treeUtils.findNodeOfTree)(data, function (item) {\n return item[valueKey] === focusItemValue;\n });\n var isLeafNode = focusItem && !focusItem[childrenKey];\n if (isLeafNode) {\n setValue(focusItemValue);\n if (pathTowardsActiveItem.length) {\n setLayer(pathTowardsActiveItem.length - 1);\n }\n if (!(0, _shallowEqual.default)(value, focusItemValue)) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(focusItem, pathTowardsActiveItem, event);\n onChange === null || onChange === void 0 ? void 0 : onChange(focusItemValue !== null && focusItemValue !== void 0 ? focusItemValue : null, event);\n }\n handleClose();\n }\n });\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends3.default)({\n toggle: !focusItemValue || !active,\n trigger: trigger,\n target: target,\n overlay: overlay,\n searchInput: searchInput,\n active: active,\n onExit: handleClean,\n onMenuKeyDown: onFocusItem,\n onMenuPressEnter: handleMenuPressEnter\n }, rest));\n var handleSelect = (0, _utils2.useEventCallback)(function (node, cascadePaths, isLeafNode, event) {\n var _node$childrenKey, _trigger$current2;\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event);\n setActiveItem(node);\n var nextValue = node[valueKey];\n\n // Lazy load node's children\n if (typeof getChildren === 'function' && ((_node$childrenKey = node[childrenKey]) === null || _node$childrenKey === void 0 ? void 0 : _node$childrenKey.length) === 0 && !asyncChildrenMap.has(node)) {\n loadingItemsSet.add(node);\n var children = getChildren(node);\n if (children instanceof Promise) {\n children.then(function (data) {\n if (isMounted()) {\n loadingItemsSet.delete(node);\n asyncChildrenMap.set(node, data);\n }\n });\n } else {\n loadingItemsSet.delete(node);\n asyncChildrenMap.set(node, children);\n }\n }\n if (isLeafNode) {\n // Determines whether the option is a leaf node, and if so, closes the picker.\n handleClose();\n setValue(nextValue);\n if (!(0, _shallowEqual.default)(value, nextValue)) {\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }\n return;\n }\n\n /** When the parent is optional, the value and the displayed path are updated. */\n if (parentSelectable && !(0, _shallowEqual.default)(value, nextValue)) {\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }\n\n // Update menu position\n (_trigger$current2 = trigger.current) === null || _trigger$current2 === void 0 ? void 0 : _trigger$current2.updatePosition();\n });\n\n /**\n * The search structure option is processed after being selected.\n */\n var handleSearchRowSelect = (0, _utils2.useEventCallback)(function (node, nodes, event) {\n var nextValue = node[valueKey];\n handleClose();\n setSearchKeyword('');\n setValue(nextValue);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, nodes, event);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n });\n var renderSearchRow = function renderSearchRow(item, key) {\n var regx = new RegExp((0, _utils2.getSafeRegExpString)(searchKeyword), 'ig');\n var nodes = (0, _treeUtils.getPathTowardsItem)(item, function (item) {\n return parentMap.get(item);\n });\n var formattedNodes = nodes.map(function (node) {\n var _extends2;\n var labelElements = [];\n var a = node[labelKey].split(regx);\n var b = node[labelKey].match(regx);\n for (var i = 0; i < a.length; i++) {\n labelElements.push(a[i]);\n if (b && 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: 446,\n columnNumber: 13\n }\n }, b[i]));\n }\n }\n return (0, _extends3.default)({}, node, (_extends2 = {}, _extends2[labelKey] = labelElements, _extends2));\n });\n var disabled = disabledItemValues.some(function (value) {\n return formattedNodes.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 var label = formattedNodes.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: 467,\n columnNumber: 7\n }\n }, node[labelKey]);\n });\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n role: \"treeitem\",\n key: key,\n \"aria-disabled\": disabled,\n \"data-key\": item[valueKey],\n className: itemClasses,\n tabIndex: -1,\n onClick: function onClick(event) {\n if (!disabled) {\n handleSearchRowSelect(item, nodes, event);\n }\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 473,\n columnNumber: 7\n }\n }, renderSearchItem ? renderSearchItem(label, nodes) : label);\n };\n var renderSearchResultPanel = function renderSearchResultPanel() {\n if (searchKeyword === '') {\n return null;\n }\n var items = getSearchResult();\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('cascader-search-panel'),\n \"data-layer\": 0,\n role: \"tree\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 498,\n columnNumber: 7\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: 502,\n columnNumber: 11\n }\n }, locale.noResultsText));\n };\n var renderTreeView = function renderTreeView(positionProps, speakerRef) {\n var _ref2 = positionProps || {},\n left = _ref2.left,\n top = _ref2.top,\n className = _ref2.className;\n var styles = (0, _extends3.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var classes = merge(className, menuClassName, prefix('cascader-menu', {\n inline: inline\n }));\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerPopup, {\n ref: (0, _utils2.mergeRefs)(overlay, speakerRef),\n className: classes,\n style: styles,\n target: trigger,\n onKeyDown: onPickerKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 514,\n columnNumber: 7\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: searchInput,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 522,\n columnNumber: 11\n }\n }), renderSearchResultPanel(), searchKeyword === '' && /*#__PURE__*/_react.default.createElement(_TreeView.default, {\n menuWidth: menuWidth,\n menuHeight: menuHeight,\n disabledItemValues: disabledItemValues,\n loadingItemsSet: loadingItemsSet,\n valueKey: valueKey,\n labelKey: labelKey,\n childrenKey: childrenKey,\n classPrefix: 'picker-cascader-menu',\n cascadeData: columnsToDisplay,\n cascadePaths: pathTowardsActiveItem,\n activeItemValue: value\n // FIXME make onSelect generic\n ,\n onSelect: handleSelect,\n renderMenu: renderMenu,\n renderMenuItem: renderMenuItem,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 532,\n columnNumber: 11\n }\n }), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n var selectedElement = placeholder;\n if (pathTowardsSelectedItem.length > 0) {\n selectedElement = [];\n pathTowardsSelectedItem.forEach(function (item, index) {\n var key = item[valueKey] || item[labelKey];\n selectedElement.push( /*#__PURE__*/_react.default.createElement(\"span\", {\n key: key,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 562,\n columnNumber: 28\n }\n }, item[labelKey]));\n if (index < pathTowardsSelectedItem.length - 1) {\n selectedElement.push( /*#__PURE__*/_react.default.createElement(\"span\", {\n className: \"separator\",\n key: key + \"-separator\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 565,\n columnNumber: 11\n }\n }, ' / '));\n }\n });\n }\n if (!(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue)) {\n selectedElement = renderValue(value, pathTowardsSelectedItem, selectedElement);\n // If renderValue returns null or undefined, hasValue is false.\n if ((0, _isNil.default)(selectedElement)) {\n hasValue = false;\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]; // TODO: bad api design\n // consider an isolated Menu component\n if (inline) {\n return renderTreeView();\n }\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n id: id,\n popupType: \"tree\",\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: trigger,\n placement: placement,\n onEntered: (0, _utils2.createChainedFunction)(handleEntered, onEnter),\n onExited: (0, _utils2.createChainedFunction)(handleExited, onExited),\n speaker: renderTreeView,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 597,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n ref: root,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 607,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends3.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n ref: target,\n as: toggleAs,\n appearance: appearance,\n disabled: disabled,\n onClean: (0, _utils2.createChainedFunction)(handleClean, onClean),\n onKeyDown: onPickerKeyDown,\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n active: active,\n placement: placement,\n inputValue: value !== null && value !== void 0 ? value : '',\n focusItemValue: focusItemValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 608,\n columnNumber: 9\n }\n }), selectedElement || (locale === null || locale === void 0 ? void 0 : locale.placeholder))));\n});\nCascader.displayName = 'Cascader';\nCascader.propTypes = (0, _extends3.default)({}, _Picker.listPickerPropTypes, {\n disabledItemValues: _propTypes.default.array,\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n renderMenu: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onSearch: _propTypes.default.func,\n cleanable: _propTypes.default.bool,\n renderMenuItem: _propTypes.default.func,\n renderSearchItem: _propTypes.default.func,\n menuWidth: _propTypes.default.number,\n menuHeight: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n searchable: _propTypes.default.bool,\n inline: _propTypes.default.bool,\n parentSelectable: _propTypes.default.bool\n});\nvar _default = Cascader;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Cascader/Cascader.tsx?");
6388
6399
 
6389
6400
  /***/ }),
6390
6401
 
6391
- /***/ "./src/Cascader/DropdownMenu.tsx":
6392
- /*!***************************************!*\
6393
- !*** ./src/Cascader/DropdownMenu.tsx ***!
6394
- \***************************************/
6402
+ /***/ "./src/Cascader/TreeView.tsx":
6403
+ /*!***********************************!*\
6404
+ !*** ./src/Cascader/TreeView.tsx ***!
6405
+ \***********************************/
6395
6406
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6396
6407
 
6397
6408
  "use strict";
6398
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = exports.dropdownMenuPropTypes = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _Spinner = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Spinner */ \"./node_modules/@rsuite/icons/legacy/Spinner.js\"));\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _AngleLeft = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleLeft */ \"./node_modules/@rsuite/icons/legacy/AngleLeft.js\"));\nvar _AngleRight = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleRight */ \"./node_modules/@rsuite/icons/legacy/AngleRight.js\"));\nvar _getPosition = _interopRequireDefault(__webpack_require__(/*! dom-lib/getPosition */ \"./node_modules/dom-lib/esm/getPosition.js\"));\nvar _scrollTop = _interopRequireDefault(__webpack_require__(/*! dom-lib/scrollTop */ \"./node_modules/dom-lib/esm/scrollTop.js\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Cascader/DropdownMenu.tsx\",\n _this = void 0;\nvar emptyArray = [];\nvar DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n activeItemValue = props.activeItemValue,\n classPrefix = props.classPrefix,\n className = props.className,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n _props$menuWidth = props.menuWidth,\n menuWidth = _props$menuWidth === void 0 ? 120 : _props$menuWidth,\n _props$menuHeight = props.menuHeight,\n menuHeight = _props$menuHeight === void 0 ? 200 : _props$menuHeight,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$cascadeData = props.cascadeData,\n cascadeData = _props$cascadeData === void 0 ? emptyArray : _props$cascadeData,\n _props$cascadePaths = props.cascadePaths,\n cascadePaths = _props$cascadePaths === void 0 ? emptyArray : _props$cascadePaths,\n loadingItemsSet = props.loadingItemsSet,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n renderMenu = props.renderMenu,\n renderMenuItem = props.renderMenuItem,\n onSelect = props.onSelect,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"activeItemValue\", \"classPrefix\", \"className\", \"childrenKey\", \"disabledItemValues\", \"menuWidth\", \"menuHeight\", \"valueKey\", \"cascadeData\", \"cascadePaths\", \"loadingItemsSet\", \"labelKey\", \"renderMenu\", \"renderMenuItem\", \"onSelect\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var classes = merge(className, prefix('items'));\n var rootRef = (0, _react.useRef)();\n var _useCustom = (0, _utils.useCustom)('DropdownMenu'),\n rtl = _useCustom.rtl;\n (0, _react.useEffect)(function () {\n var _rootRef$current;\n var columns = ((_rootRef$current = rootRef.current) === null || _rootRef$current === void 0 ? void 0 : _rootRef$current.querySelectorAll('[data-type=\"column\"]')) || [];\n columns.forEach(function (column) {\n if (!column) {\n return;\n }\n var activeItem = column.querySelector(\".\" + prefix('item-focus'));\n if (!activeItem) {\n activeItem = column.querySelector(\".\" + prefix('item-active'));\n }\n if (activeItem) {\n var position = (0, _getPosition.default)(activeItem, column);\n // Let the active option scroll into view.\n (0, _scrollTop.default)(column, position === null || position === void 0 ? void 0 : position.top);\n }\n });\n }, [prefix]);\n var getCascadePaths = (0, _react.useCallback)(function (layer, node) {\n var paths = [];\n for (var i = 0; i < cascadeData.length && i < layer; i += 1) {\n if (i < layer - 1 && cascadePaths) {\n paths.push(cascadePaths[i]);\n }\n }\n paths.push(node);\n return paths;\n }, [cascadeData, cascadePaths]);\n var handleSelect = function handleSelect(layer, node, event) {\n var isLeafNode = (0, _isNil.default)(node[childrenKey]);\n var cascadePaths = getCascadePaths(layer + 1, node);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, isLeafNode, event);\n };\n var renderCascadeNode = function renderCascadeNode(node, index, layer, focus) {\n var _loadingItemsSet$has;\n var children = node[childrenKey];\n var value = node[valueKey];\n var label = node[labelKey];\n var disabled = disabledItemValues.some(function (disabledValue) {\n return (0, _utils.shallowEqual)(disabledValue, value);\n });\n var loading = (_loadingItemsSet$has = loadingItemsSet === null || loadingItemsSet === void 0 ? void 0 : loadingItemsSet.has(node)) !== null && _loadingItemsSet$has !== void 0 ? _loadingItemsSet$has : false;\n\n // Use `value` in keys when If `value` is string or number\n var onlyKey = typeof value === 'number' || typeof value === 'string' ? value : index;\n var Icon = loading ? _Spinner.default : rtl ? _AngleLeft.default : _AngleRight.default;\n return /*#__PURE__*/_react.default.createElement(_Picker.DropdownMenuItem, {\n classPrefix: \"picker-cascader-menu-item\",\n as: 'li',\n role: \"treeitem\",\n key: layer + \"-\" + onlyKey,\n disabled: disabled,\n active: !(0, _isUndefined.default)(activeItemValue) && (0, _utils.shallowEqual)(activeItemValue, value),\n focus: focus,\n value: value,\n \"aria-owns\": node.children ? 'treeitem-' + value + '-children' : undefined,\n className: children ? prefix('has-children') : undefined,\n onSelect: function onSelect(_value, event) {\n return handleSelect(layer, node, event);\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 132,\n columnNumber: 9\n }\n }, renderMenuItem ? renderMenuItem(label, node) : label, children ? /*#__PURE__*/_react.default.createElement(Icon, {\n className: prefix('caret'),\n spin: loading,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 146,\n columnNumber: 23\n }\n }) : null);\n };\n var styles = {\n width: cascadeData.length * menuWidth\n };\n var cascadeNodes = cascadeData.map(function (children, layer) {\n var onlyKey = layer + \"_\" + children.length;\n var parentNode = cascadePaths[layer - 1];\n var menu = /*#__PURE__*/_react.default.createElement(\"ul\", {\n role: layer === 0 ? 'none presentation' : 'group',\n id: parentNode ? 'treeitem-' + parentNode[valueKey] + '-children' : undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 159,\n columnNumber: 9\n }\n }, children.map(function (item, index) {\n return renderCascadeNode(item, index, layer, cascadePaths[layer] && (0, _utils.shallowEqual)(cascadePaths[layer][valueKey], item[valueKey]));\n }));\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n key: onlyKey,\n className: prefix('column'),\n \"data-layer\": layer,\n \"data-type\": 'column',\n style: {\n height: menuHeight,\n width: menuWidth\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 175,\n columnNumber: 9\n }\n }, renderMenu ? renderMenu(children, menu, parentNode, layer) : menu);\n });\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"tree\"\n }, rest, {\n ref: (0, _utils.mergeRefs)(rootRef, ref),\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 188,\n columnNumber: 7\n }\n }), /*#__PURE__*/_react.default.createElement(\"div\", {\n style: styles,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 189,\n columnNumber: 9\n }\n }, cascadeNodes));\n});\nvar dropdownMenuPropTypes = {\n classPrefix: _propTypes.default.string,\n disabledItemValues: _propTypes.default.array,\n activeItemValue: _propTypes.default.any,\n childrenKey: _propTypes.default.string,\n valueKey: _propTypes.default.string,\n labelKey: _propTypes.default.string,\n menuWidth: _propTypes.default.number,\n menuHeight: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n className: _propTypes.default.string,\n renderMenuItem: _propTypes.default.func,\n renderMenu: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n cascadeData: _propTypes.default.array,\n cascadePaths: _propTypes.default.array\n};\nexports.dropdownMenuPropTypes = dropdownMenuPropTypes;\nDropdownMenu.displayName = 'DropdownMenu';\nDropdownMenu.propTypes = dropdownMenuPropTypes;\nvar _default = DropdownMenu;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Cascader/DropdownMenu.tsx?");
6409
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _Spinner = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Spinner */ \"./node_modules/@rsuite/icons/legacy/Spinner.js\"));\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _AngleLeft = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleLeft */ \"./node_modules/@rsuite/icons/legacy/AngleLeft.js\"));\nvar _AngleRight = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleRight */ \"./node_modules/@rsuite/icons/legacy/AngleRight.js\"));\nvar _getPosition = _interopRequireDefault(__webpack_require__(/*! dom-lib/getPosition */ \"./node_modules/dom-lib/esm/getPosition.js\"));\nvar _scrollTop = _interopRequireDefault(__webpack_require__(/*! dom-lib/scrollTop */ \"./node_modules/dom-lib/esm/scrollTop.js\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Cascader/TreeView.tsx\",\n _this = void 0;\nvar emptyArray = [];\nvar TreeView = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n activeItemValue = props.activeItemValue,\n classPrefix = props.classPrefix,\n className = props.className,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n _props$menuWidth = props.menuWidth,\n menuWidth = _props$menuWidth === void 0 ? 120 : _props$menuWidth,\n _props$menuHeight = props.menuHeight,\n menuHeight = _props$menuHeight === void 0 ? 200 : _props$menuHeight,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$cascadeData = props.cascadeData,\n cascadeData = _props$cascadeData === void 0 ? emptyArray : _props$cascadeData,\n _props$cascadePaths = props.cascadePaths,\n cascadePaths = _props$cascadePaths === void 0 ? emptyArray : _props$cascadePaths,\n loadingItemsSet = props.loadingItemsSet,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n style = props.style,\n renderMenu = props.renderMenu,\n renderMenuItem = props.renderMenuItem,\n onSelect = props.onSelect,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"activeItemValue\", \"classPrefix\", \"className\", \"childrenKey\", \"disabledItemValues\", \"menuWidth\", \"menuHeight\", \"valueKey\", \"cascadeData\", \"cascadePaths\", \"loadingItemsSet\", \"labelKey\", \"style\", \"renderMenu\", \"renderMenuItem\", \"onSelect\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var classes = merge(className, prefix('items'));\n var rootRef = (0, _react.useRef)();\n var _useCustom = (0, _utils.useCustom)(),\n rtl = _useCustom.rtl;\n var _useCombobox = (0, _Picker.useCombobox)(),\n id = _useCombobox.id,\n labelId = _useCombobox.labelId,\n popupType = _useCombobox.popupType;\n (0, _react.useEffect)(function () {\n var _rootRef$current;\n var columns = ((_rootRef$current = rootRef.current) === null || _rootRef$current === void 0 ? void 0 : _rootRef$current.querySelectorAll('[data-type=\"column\"]')) || [];\n columns.forEach(function (column) {\n if (!column) {\n return;\n }\n var activeItem = column.querySelector(\".\" + prefix('item-focus'));\n if (!activeItem) {\n activeItem = column.querySelector(\".\" + prefix('item-active'));\n }\n if (activeItem) {\n var position = (0, _getPosition.default)(activeItem, column);\n // Let the active option scroll into view.\n (0, _scrollTop.default)(column, position === null || position === void 0 ? void 0 : position.top);\n }\n });\n }, [prefix]);\n var getCascadePaths = function getCascadePaths(layer, node) {\n var paths = [];\n for (var i = 0; i < cascadeData.length && i < layer; i += 1) {\n if (i < layer - 1 && cascadePaths) {\n paths.push(cascadePaths[i]);\n }\n }\n paths.push(node);\n return paths;\n };\n var handleSelect = (0, _utils.useEventCallback)(function (layer, node, event) {\n var isLeafNode = (0, _isNil.default)(node[childrenKey]);\n var cascadePaths = getCascadePaths(layer + 1, node);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, isLeafNode, event);\n });\n var renderCascadeNode = function renderCascadeNode(nodeProps) {\n var _loadingItemsSet$has;\n var node = nodeProps.node,\n index = nodeProps.index,\n layer = nodeProps.layer,\n focus = nodeProps.focus,\n size = nodeProps.size;\n var children = node[childrenKey];\n var value = node[valueKey];\n var label = node[labelKey];\n var disabled = disabledItemValues.some(function (disabledValue) {\n return (0, _utils.shallowEqual)(disabledValue, value);\n });\n var loading = (_loadingItemsSet$has = loadingItemsSet === null || loadingItemsSet === void 0 ? void 0 : loadingItemsSet.has(node)) !== null && _loadingItemsSet$has !== void 0 ? _loadingItemsSet$has : false;\n\n // Use `value` in keys when If `value` is string or number\n var onlyKey = typeof value === 'number' || typeof value === 'string' ? value : index;\n var Icon = loading ? _Spinner.default : rtl ? _AngleLeft.default : _AngleRight.default;\n return /*#__PURE__*/_react.default.createElement(_Picker.ListItem, {\n as: 'li',\n role: \"treeitem\",\n \"aria-level\": layer + 1,\n \"aria-setsize\": size,\n \"aria-posinset\": index + 1,\n \"aria-label\": typeof label === 'string' ? label : undefined,\n classPrefix: \"picker-cascader-menu-item\",\n key: layer + \"-\" + onlyKey,\n disabled: disabled,\n active: !(0, _isUndefined.default)(activeItemValue) && (0, _utils.shallowEqual)(activeItemValue, value),\n focus: focus,\n value: value,\n className: children ? prefix('has-children') : undefined,\n onSelect: function onSelect(_value, event) {\n return handleSelect(layer, node, event);\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 135,\n columnNumber: 9\n }\n }, renderMenuItem ? renderMenuItem(label, node) : label, children ? /*#__PURE__*/_react.default.createElement(Icon, {\n className: prefix('caret'),\n spin: loading,\n \"data-testid\": \"spinner\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 153,\n columnNumber: 13\n }\n }) : null);\n };\n var cascadeNodes = cascadeData.map(function (children, layer) {\n var onlyKey = layer + \"_\" + children.length;\n var parentNode = cascadePaths[layer - 1];\n var menu = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, children.map(function (item, index) {\n var focus = cascadePaths[layer] && (0, _utils.shallowEqual)(cascadePaths[layer][valueKey], item[valueKey]);\n return renderCascadeNode({\n node: item,\n index: index,\n layer: layer,\n focus: focus,\n size: children.length\n });\n }));\n return /*#__PURE__*/_react.default.createElement(\"ul\", {\n role: \"group\",\n \"data-layer\": layer,\n \"data-type\": 'column',\n key: onlyKey,\n className: prefix('column'),\n style: {\n height: menuHeight,\n width: menuWidth\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 174,\n columnNumber: 9\n }\n }, renderMenu ? renderMenu(children, menu, parentNode, layer) : menu);\n });\n var styles = (0, _extends2.default)({}, style, {\n width: cascadeData.length * menuWidth\n });\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"tree\",\n id: id + \"-\" + popupType,\n \"aria-labelledby\": labelId\n }, rest, {\n ref: (0, _utils.mergeRefs)(rootRef, ref),\n className: classes,\n style: styles,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 190,\n columnNumber: 7\n }\n }), cascadeNodes);\n});\nTreeView.displayName = 'TreeView';\nvar _default = TreeView;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Cascader/TreeView.tsx?");
6399
6410
 
6400
6411
  /***/ }),
6401
6412
 
@@ -6428,7 +6439,7 @@ eval("\n\nexports.__esModule = true;\nexports.getColumnsAndPaths = getColumnsAnd
6428
6439
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6429
6440
 
6430
6441
  "use strict";
6431
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _clone = _interopRequireDefault(__webpack_require__(/*! lodash/clone */ \"./node_modules/lodash/clone.js\"));\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _remove = _interopRequireDefault(__webpack_require__(/*! lodash/remove */ \"./node_modules/lodash/remove.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _getDataGroupBy = __webpack_require__(/*! ../utils/getDataGroupBy */ \"./src/utils/getDataGroupBy.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/CheckPicker/CheckPicker.tsx\",\n _this = void 0,\n _templateObject;\nvar emptyArray = [];\n/**\n * A component for selecting checkable items in a dropdown list.\n * @see https://rsuitejs.com/components/check-picker\n */\nvar CheckPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n _props$countable = props.countable,\n countable = _props$countable === void 0 ? true : _props$countable,\n _props$data = props.data,\n data = _props$data === void 0 ? emptyArray : _props$data,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\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$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n virtualized = props.virtualized,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n _props$menuAutoWidth = props.menuAutoWidth,\n menuAutoWidth = _props$menuAutoWidth === void 0 ? true : _props$menuAutoWidth,\n _props$menuMaxHeight = props.menuMaxHeight,\n menuMaxHeight = _props$menuMaxHeight === void 0 ? 320 : _props$menuMaxHeight,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n overrideLocale = props.locale,\n placeholder = props.placeholder,\n disabled = props.disabled,\n toggleAs = props.toggleAs,\n style = props.style,\n sticky = props.sticky,\n valueProp = props.value,\n defaultValue = props.defaultValue,\n groupBy = props.groupBy,\n listProps = props.listProps,\n id = props.id,\n sort = props.sort,\n searchBy = props.searchBy,\n renderMenuItem = props.renderMenuItem,\n renderMenuGroup = props.renderMenuGroup,\n renderValue = props.renderValue,\n renderExtraFooter = props.renderExtraFooter,\n renderMenu = props.renderMenu,\n onGroupTitleClick = props.onGroupTitleClick,\n onSearch = props.onSearch,\n onEnter = props.onEnter,\n onEntered = props.onEntered,\n onExited = props.onExited,\n onClean = props.onClean,\n onChange = props.onChange,\n onSelect = props.onSelect,\n onClose = props.onClose,\n onOpen = props.onOpen,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"appearance\", \"classPrefix\", \"countable\", \"data\", \"disabledItemValues\", \"valueKey\", \"labelKey\", \"searchable\", \"virtualized\", \"cleanable\", \"placement\", \"menuAutoWidth\", \"menuMaxHeight\", \"menuClassName\", \"menuStyle\", \"locale\", \"placeholder\", \"disabled\", \"toggleAs\", \"style\", \"sticky\", \"value\", \"defaultValue\", \"groupBy\", \"listProps\", \"id\", \"sort\", \"searchBy\", \"renderMenuItem\", \"renderMenuGroup\", \"renderValue\", \"renderExtraFooter\", \"renderMenu\", \"onGroupTitleClick\", \"onSearch\", \"onEnter\", \"onEntered\", \"onExited\", \"onClean\", \"onChange\", \"onSelect\", \"onClose\", \"onOpen\"]);\n var triggerRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n var searchInputRef = (0, _react.useRef)(null);\n var listRef = (0, _react.useRef)(null);\n var _useCustom = (0, _utils.useCustom)('Picker', overrideLocale),\n locale = _useCustom.locale;\n var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue || []),\n value = _useControlled[0],\n setValue = _useControlled[1]; // Used to hover the focuse item when trigger `onKeydown`\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(value === null || value === void 0 ? void 0 : value[0], {\n data: data,\n valueKey: valueKey,\n target: function target() {\n return overlayRef.current;\n }\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setFocusItemValue = _useFocusItemValue.setFocusItemValue,\n onFocusItem = _useFocusItemValue.onKeyDown;\n var handleSearchCallback = (0, _react.useCallback)(function (searchKeyword, filteredData, event) {\n var _filteredData$;\n // The first option after filtering is the focus.\n setFocusItemValue(filteredData === null || filteredData === void 0 ? void 0 : (_filteredData$ = filteredData[0]) === null || _filteredData$ === void 0 ? void 0 : _filteredData$[valueKey]);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);\n }, [setFocusItemValue, onSearch, valueKey]);\n\n // Use search keywords to filter options.\n var _useSearch = (0, _Picker.useSearch)(data, {\n labelKey: labelKey,\n searchBy: searchBy,\n callback: handleSearchCallback\n }),\n searchKeyword = _useSearch.searchKeyword,\n filteredData = _useSearch.filteredData,\n handleSearch = _useSearch.handleSearch,\n resetSearch = _useSearch.resetSearch,\n checkShouldDisplay = _useSearch.checkShouldDisplay; // Use component active state to support keyboard events.\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1]; // A list of shortcut options.\n // when opened again, the selected options are displayed at the top.\n var _useState2 = (0, _react.useState)([]),\n stickyItems = _useState2[0],\n setStickyItems = _useState2[1];\n var initStickyItems = function initStickyItems() {\n if (!sticky) {\n return;\n }\n var nextStickyItems = [];\n if (data && value.length) {\n nextStickyItems = data.filter(function (item) {\n return value.some(function (v) {\n return v === item[valueKey];\n });\n });\n }\n setStickyItems(nextStickyItems);\n };\n var handleChangeValue = (0, _react.useCallback)(function (value, event) {\n onChange === null || onChange === void 0 ? void 0 : onChange(value, event);\n }, [onChange]);\n var handleClean = (0, _react.useCallback)(function (event) {\n if (disabled || !cleanable) {\n return;\n }\n setValue([]);\n onClean === null || onClean === void 0 ? void 0 : onClean(event);\n handleChangeValue([], event);\n }, [disabled, cleanable, setValue, onClean, handleChangeValue]);\n var handleMenuPressEnter = function handleMenuPressEnter(event) {\n var nextValue = (0, _clone.default)(value);\n if (!focusItemValue) {\n return;\n }\n if (!nextValue.some(function (v) {\n return (0, _utils.shallowEqual)(v, focusItemValue);\n })) {\n nextValue.push(focusItemValue);\n } else {\n (0, _remove.default)(nextValue, function (itemVal) {\n return (0, _utils.shallowEqual)(itemVal, focusItemValue);\n });\n }\n var focusItem = data.find(function (item) {\n return (0, _utils.shallowEqual)(item === null || item === void 0 ? void 0 : item[valueKey], focusItemValue);\n });\n setValue(nextValue);\n handleSelect(nextValue, focusItem, event);\n handleChangeValue(nextValue, event);\n };\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.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 onMenuPressBackspace: handleClean,\n onClose: function onClose() {\n setFocusItemValue(null);\n }\n }, rest));\n var handleSelect = (0, _react.useCallback)(function (nextItemValue, item, event) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(nextItemValue, item, event);\n }, [onSelect]);\n var handleItemSelect = (0, _react.useCallback)(function (nextItemValue, item, event, checked) {\n var nextValue = (0, _clone.default)(value);\n if (checked) {\n nextValue.push(nextItemValue);\n } else {\n (0, _remove.default)(nextValue, function (itemVal) {\n return (0, _utils.shallowEqual)(itemVal, nextItemValue);\n });\n }\n setValue(nextValue);\n setFocusItemValue(nextItemValue);\n handleSelect(nextValue, item, event);\n handleChangeValue(nextValue, event);\n }, [value, setValue, handleSelect, handleChangeValue, setFocusItemValue]);\n var handleEntered = (0, _react.useCallback)(function () {\n setActive(true);\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n }, [onOpen]);\n var handleExited = (0, _react.useCallback)(function () {\n resetSearch();\n setFocusItemValue(null);\n setActive(false);\n onClose === null || onClose === void 0 ? void 0 : onClose();\n }, [onClose, setFocusItemValue, resetSearch]);\n (0, _Picker.usePublicMethods)(ref, {\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef,\n listRef: listRef\n });\n var selectedItems = data.filter(function (item) {\n return value === null || value === void 0 ? void 0 : value.some(function (val) {\n return (0, _utils.shallowEqual)(item[valueKey], val);\n });\n }) || [];\n\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 var hasValue = selectedItems.length > 0 || (value === null || value === void 0 ? void 0 : value.length) > 0 && (0, _isFunction.default)(renderValue);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var selectedElement = placeholder;\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 prefix: prefix,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 296,\n columnNumber: 9\n }\n });\n }\n if ((value === null || value === void 0 ? void 0 : value.length) > 0 && (0, _isFunction.default)(renderValue)) {\n selectedElement = renderValue(value, selectedItems, selectedElement);\n // If renderValue returns null or undefined, hasValue is false.\n if ((0, _isNil.default)(selectedElement)) {\n hasValue = false;\n }\n }\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = merge(className, menuClassName, prefix('check-menu'));\n var styles = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var items = filteredData;\n var filteredStickyItems = [];\n if (stickyItems) {\n filteredStickyItems = (0, _treeUtils.filterNodesOfTree)(stickyItems, function (item) {\n return checkShouldDisplay(item);\n });\n items = (0, _treeUtils.filterNodesOfTree)(data, function (item) {\n return checkShouldDisplay(item) && !stickyItems.some(function (v) {\n return v[valueKey] === item[valueKey];\n });\n });\n }\n\n // Create a tree structure data when set `groupBy`\n if (groupBy) {\n items = (0, _getDataGroupBy.getDataGroupBy)(items, groupBy, sort);\n } else if (typeof sort === 'function') {\n items = items.sort(sort(false));\n }\n var menu = items.length || filteredStickyItems.length ? /*#__PURE__*/_react.default.createElement(_Picker.DropdownMenu, {\n id: id ? id + \"-listbox\" : undefined,\n listProps: listProps,\n listRef: listRef,\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n labelKey: labelKey,\n renderMenuGroup: renderMenuGroup,\n renderMenuItem: renderMenuItem,\n maxHeight: menuMaxHeight,\n classPrefix: 'picker-check-menu',\n dropdownMenuItemAs: _Picker.DropdownMenuCheckItem,\n activeItemValues: value,\n focusItemValue: focusItemValue,\n data: [].concat(filteredStickyItems, items)\n // `group` is redundant so long as `groupBy` exists\n ,\n group: !(0, _isUndefined.default)(groupBy),\n groupBy: groupBy,\n onSelect: handleItemSelect,\n onGroupTitleClick: onGroupTitleClick,\n virtualized: virtualized,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 339,\n columnNumber: 11\n }\n }) : /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"none\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 362,\n columnNumber: 11\n }\n }, locale === null || locale === void 0 ? void 0 : locale.noResultsText);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n ref: (0, _utils.mergeRefs)(overlayRef, speakerRef),\n autoWidth: menuAutoWidth,\n className: classes,\n style: styles,\n onKeyDown: onPickerKeyDown,\n target: triggerRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 366,\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: 375,\n columnNumber: 13\n }\n }), renderMenu ? renderMenu(menu) : menu, renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n appearance: appearance,\n classPrefix: classPrefix,\n cleanable: cleanable,\n countable: countable,\n hasValue: hasValue,\n name: 'check'\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\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, _utils.createChainedFunction)(initStickyItems, onEnter),\n onEntered: (0, _utils.createChainedFunction)(handleEntered, onEntered),\n onExited: (0, _utils.createChainedFunction)(handleExited, onExited),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 399,\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: 408,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n id: id,\n ref: targetRef,\n appearance: appearance,\n disabled: disabled,\n onClean: handleClean,\n onKeyDown: onPickerKeyDown,\n as: toggleAs,\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: 409,\n columnNumber: 11\n }\n }), selectedElement || (locale === null || locale === void 0 ? void 0 : locale.placeholder))));\n});\nCheckPicker.displayName = 'CheckPicker';\nCheckPicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes, {\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n menuAutoWidth: _propTypes.default.bool,\n menuMaxHeight: _propTypes.default.number,\n renderMenu: _propTypes.default.func,\n renderMenuItem: _propTypes.default.func,\n renderMenuGroup: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onGroupTitleClick: _propTypes.default.func,\n onSearch: _propTypes.default.func,\n groupBy: _propTypes.default.any,\n sort: _propTypes.default.func,\n searchable: _propTypes.default.bool,\n countable: _propTypes.default.bool,\n sticky: _propTypes.default.bool,\n virtualized: _propTypes.default.bool,\n searchBy: _propTypes.default.func\n});\nvar _default = CheckPicker;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/CheckPicker/CheckPicker.tsx?");
6442
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _clone = _interopRequireDefault(__webpack_require__(/*! lodash/clone */ \"./node_modules/lodash/clone.js\"));\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _remove = _interopRequireDefault(__webpack_require__(/*! lodash/remove */ \"./node_modules/lodash/remove.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _getDataGroupBy = __webpack_require__(/*! ../utils/getDataGroupBy */ \"./src/utils/getDataGroupBy.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/CheckPicker/CheckPicker.tsx\",\n _this = void 0,\n _templateObject;\nvar emptyArray = [];\n/**\n * A component for selecting checkable items in a dropdown list.\n * @see https://rsuitejs.com/components/check-picker\n */\nvar CheckPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n _props$countable = props.countable,\n countable = _props$countable === void 0 ? true : _props$countable,\n _props$data = props.data,\n data = _props$data === void 0 ? emptyArray : _props$data,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\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$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n virtualized = props.virtualized,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n _props$menuAutoWidth = props.menuAutoWidth,\n menuAutoWidth = _props$menuAutoWidth === void 0 ? true : _props$menuAutoWidth,\n _props$menuMaxHeight = props.menuMaxHeight,\n menuMaxHeight = _props$menuMaxHeight === void 0 ? 320 : _props$menuMaxHeight,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n overrideLocale = props.locale,\n placeholder = props.placeholder,\n disabled = props.disabled,\n toggleAs = props.toggleAs,\n style = props.style,\n sticky = props.sticky,\n valueProp = props.value,\n defaultValue = props.defaultValue,\n groupBy = props.groupBy,\n listProps = props.listProps,\n id = props.id,\n sort = props.sort,\n searchBy = props.searchBy,\n renderMenuItem = props.renderMenuItem,\n renderMenuGroup = props.renderMenuGroup,\n renderValue = props.renderValue,\n renderExtraFooter = props.renderExtraFooter,\n renderMenu = props.renderMenu,\n onGroupTitleClick = props.onGroupTitleClick,\n onSearch = props.onSearch,\n onEnter = props.onEnter,\n onEntered = props.onEntered,\n onExited = props.onExited,\n onClean = props.onClean,\n onChange = props.onChange,\n onSelect = props.onSelect,\n onClose = props.onClose,\n onOpen = props.onOpen,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"appearance\", \"classPrefix\", \"countable\", \"data\", \"disabledItemValues\", \"valueKey\", \"labelKey\", \"searchable\", \"virtualized\", \"cleanable\", \"placement\", \"menuAutoWidth\", \"menuMaxHeight\", \"menuClassName\", \"menuStyle\", \"locale\", \"placeholder\", \"disabled\", \"toggleAs\", \"style\", \"sticky\", \"value\", \"defaultValue\", \"groupBy\", \"listProps\", \"id\", \"sort\", \"searchBy\", \"renderMenuItem\", \"renderMenuGroup\", \"renderValue\", \"renderExtraFooter\", \"renderMenu\", \"onGroupTitleClick\", \"onSearch\", \"onEnter\", \"onEntered\", \"onExited\", \"onClean\", \"onChange\", \"onSelect\", \"onClose\", \"onOpen\"]);\n var _usePickerRef = (0, _Picker.usePickerRef)(ref),\n trigger = _usePickerRef.trigger,\n root = _usePickerRef.root,\n target = _usePickerRef.target,\n overlay = _usePickerRef.overlay,\n list = _usePickerRef.list,\n searchInput = _usePickerRef.searchInput;\n var _useCustom = (0, _utils.useCustom)('Picker', overrideLocale),\n locale = _useCustom.locale;\n var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue || []),\n value = _useControlled[0],\n setValue = _useControlled[1]; // Used to hover the focuse item when trigger `onKeydown`\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(value === null || value === void 0 ? void 0 : value[0], {\n data: data,\n valueKey: valueKey,\n target: function target() {\n return overlay.current;\n }\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setFocusItemValue = _useFocusItemValue.setFocusItemValue,\n onFocusItem = _useFocusItemValue.onKeyDown;\n var handleSearchCallback = (0, _utils.useEventCallback)(function (searchKeyword, filteredData, event) {\n var _filteredData$;\n // The first option after filtering is the focus.\n setFocusItemValue(filteredData === null || filteredData === void 0 ? void 0 : (_filteredData$ = filteredData[0]) === null || _filteredData$ === void 0 ? void 0 : _filteredData$[valueKey]);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);\n });\n\n // Use search keywords to filter options.\n var _useSearch = (0, _Picker.useSearch)(data, {\n labelKey: labelKey,\n searchBy: searchBy,\n callback: handleSearchCallback\n }),\n searchKeyword = _useSearch.searchKeyword,\n filteredData = _useSearch.filteredData,\n handleSearch = _useSearch.handleSearch,\n resetSearch = _useSearch.resetSearch,\n checkShouldDisplay = _useSearch.checkShouldDisplay; // Use component active state to support keyboard events.\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1]; // A list of shortcut options.\n // when opened again, the selected options are displayed at the top.\n var _useState2 = (0, _react.useState)([]),\n stickyItems = _useState2[0],\n setStickyItems = _useState2[1];\n var initStickyItems = function initStickyItems() {\n if (!sticky) {\n return;\n }\n var nextStickyItems = [];\n if (data && value.length) {\n nextStickyItems = data.filter(function (item) {\n return value.some(function (v) {\n return v === item[valueKey];\n });\n });\n }\n setStickyItems(nextStickyItems);\n };\n var handleChangeValue = (0, _utils.useEventCallback)(function (value, event) {\n onChange === null || onChange === void 0 ? void 0 : onChange(value, event);\n });\n var handleClean = (0, _utils.useEventCallback)(function (event) {\n if (disabled || !cleanable) {\n return;\n }\n setValue([]);\n onClean === null || onClean === void 0 ? void 0 : onClean(event);\n handleChangeValue([], event);\n });\n var handleMenuPressEnter = function handleMenuPressEnter(event) {\n var nextValue = (0, _clone.default)(value);\n if (!focusItemValue) {\n return;\n }\n if (!nextValue.some(function (v) {\n return (0, _utils.shallowEqual)(v, focusItemValue);\n })) {\n nextValue.push(focusItemValue);\n } else {\n (0, _remove.default)(nextValue, function (itemVal) {\n return (0, _utils.shallowEqual)(itemVal, focusItemValue);\n });\n }\n var focusItem = data.find(function (item) {\n return (0, _utils.shallowEqual)(item === null || item === void 0 ? void 0 : item[valueKey], focusItemValue);\n });\n setValue(nextValue);\n handleSelect(nextValue, focusItem, event);\n handleChangeValue(nextValue, event);\n };\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({\n toggle: !focusItemValue || !active,\n trigger: trigger,\n target: target,\n overlay: overlay,\n searchInput: searchInput,\n active: active,\n onExit: handleClean,\n onMenuKeyDown: onFocusItem,\n onMenuPressEnter: handleMenuPressEnter,\n onMenuPressBackspace: handleClean,\n onClose: function onClose() {\n setFocusItemValue(null);\n }\n }, rest));\n var handleSelect = (0, _utils.useEventCallback)(function (nextItemValue, item, event) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(nextItemValue, item, event);\n });\n var handleItemSelect = (0, _utils.useEventCallback)(function (nextItemValue, item, event, checked) {\n var nextValue = (0, _clone.default)(value);\n if (checked) {\n nextValue.push(nextItemValue);\n } else {\n (0, _remove.default)(nextValue, function (itemVal) {\n return (0, _utils.shallowEqual)(itemVal, nextItemValue);\n });\n }\n setValue(nextValue);\n setFocusItemValue(nextItemValue);\n handleSelect(nextValue, item, event);\n handleChangeValue(nextValue, event);\n });\n var handleEntered = (0, _utils.useEventCallback)(function () {\n setActive(true);\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n });\n var handleExited = (0, _utils.useEventCallback)(function () {\n resetSearch();\n setFocusItemValue(null);\n setActive(false);\n onClose === null || onClose === void 0 ? void 0 : onClose();\n });\n var selectedItems = data.filter(function (item) {\n return value === null || value === void 0 ? void 0 : value.some(function (val) {\n return (0, _utils.shallowEqual)(item[valueKey], val);\n });\n }) || [];\n\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 var hasValue = selectedItems.length > 0 || (value === null || value === void 0 ? void 0 : value.length) > 0 && (0, _isFunction.default)(renderValue);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var selectedElement = placeholder;\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 prefix: prefix,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 280,\n columnNumber: 9\n }\n });\n }\n if ((value === null || value === void 0 ? void 0 : value.length) > 0 && (0, _isFunction.default)(renderValue)) {\n selectedElement = renderValue(value, selectedItems, selectedElement);\n // If renderValue returns null or undefined, hasValue is false.\n if ((0, _isNil.default)(selectedElement)) {\n hasValue = false;\n }\n }\n var renderPopup = function renderPopup(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = merge(className, menuClassName, prefix('check-menu'));\n var styles = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var items = filteredData;\n var filteredStickyItems = [];\n if (stickyItems) {\n filteredStickyItems = (0, _treeUtils.filterNodesOfTree)(stickyItems, function (item) {\n return checkShouldDisplay(item);\n });\n items = (0, _treeUtils.filterNodesOfTree)(data, function (item) {\n return checkShouldDisplay(item) && !stickyItems.some(function (v) {\n return v[valueKey] === item[valueKey];\n });\n });\n }\n\n // Create a tree structure data when set `groupBy`\n if (groupBy) {\n items = (0, _getDataGroupBy.getDataGroupBy)(items, groupBy, sort);\n } else if (typeof sort === 'function') {\n items = items.sort(sort(false));\n }\n var menu = items.length || filteredStickyItems.length ? /*#__PURE__*/_react.default.createElement(_Picker.Listbox, {\n listProps: listProps,\n listRef: list,\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n labelKey: labelKey,\n renderMenuGroup: renderMenuGroup,\n renderMenuItem: renderMenuItem,\n maxHeight: menuMaxHeight,\n classPrefix: 'picker-check-menu',\n listItemAs: _Picker.ListCheckItem,\n activeItemValues: value,\n focusItemValue: focusItemValue,\n data: [].concat(filteredStickyItems, items)\n // `group` is redundant so long as `groupBy` exists\n ,\n group: !(0, _isUndefined.default)(groupBy),\n groupBy: groupBy,\n onSelect: handleItemSelect,\n onGroupTitleClick: onGroupTitleClick,\n virtualized: virtualized,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 323,\n columnNumber: 11\n }\n }) : /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"none\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 345,\n columnNumber: 11\n }\n }, locale === null || locale === void 0 ? void 0 : locale.noResultsText);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerPopup, {\n ref: (0, _utils.mergeRefs)(overlay, speakerRef),\n autoWidth: menuAutoWidth,\n className: classes,\n style: styles,\n onKeyDown: onPickerKeyDown,\n target: trigger,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 349,\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: searchInput,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 358,\n columnNumber: 13\n }\n }), renderMenu ? renderMenu(menu) : menu, renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n appearance: appearance,\n classPrefix: classPrefix,\n cleanable: cleanable,\n countable: countable,\n hasValue: hasValue,\n name: 'check'\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n id: id,\n multiple: true,\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: trigger,\n placement: placement,\n onEnter: (0, _utils.createChainedFunction)(initStickyItems, onEnter),\n onEntered: (0, _utils.createChainedFunction)(handleEntered, onEntered),\n onExited: (0, _utils.createChainedFunction)(handleExited, onExited),\n speaker: renderPopup,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 382,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n ref: root,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 393,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n ref: target,\n appearance: appearance,\n disabled: disabled,\n onClean: handleClean,\n onKeyDown: onPickerKeyDown,\n as: toggleAs,\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n active: active,\n placement: placement,\n inputValue: value,\n focusItemValue: focusItemValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 394,\n columnNumber: 11\n }\n }), selectedElement || (locale === null || locale === void 0 ? void 0 : locale.placeholder))));\n});\nCheckPicker.displayName = 'CheckPicker';\nCheckPicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes, {\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n menuAutoWidth: _propTypes.default.bool,\n menuMaxHeight: _propTypes.default.number,\n renderMenu: _propTypes.default.func,\n renderMenuItem: _propTypes.default.func,\n renderMenuGroup: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onGroupTitleClick: _propTypes.default.func,\n onSearch: _propTypes.default.func,\n groupBy: _propTypes.default.any,\n sort: _propTypes.default.func,\n searchable: _propTypes.default.bool,\n countable: _propTypes.default.bool,\n sticky: _propTypes.default.bool,\n virtualized: _propTypes.default.bool,\n searchBy: _propTypes.default.func\n});\nvar _default = CheckPicker;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/CheckPicker/CheckPicker.tsx?");
6432
6443
 
6433
6444
  /***/ }),
6434
6445
 
@@ -6461,7 +6472,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
6461
6472
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6462
6473
 
6463
6474
  "use strict";
6464
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _ArrowDown = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/ArrowDown */ \"./node_modules/@rsuite/icons/legacy/ArrowDown.js\"));\nvar _Spinner = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Spinner */ \"./node_modules/@rsuite/icons/legacy/Spinner.js\"));\nvar _DropdownMenuCheckItem = _interopRequireDefault(__webpack_require__(/*! ../Picker/DropdownMenuCheckItem */ \"./src/Picker/DropdownMenuCheckItem.tsx\"));\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/CheckTreePicker/CheckTreeNode.tsx\",\n _this = void 0;\nvar CheckTreeNode = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {\n var _ref$as = _ref.as,\n Component = _ref$as === void 0 ? 'div' : _ref$as,\n style = _ref.style,\n className = _ref.className,\n _ref$classPrefix = _ref.classPrefix,\n classPrefix = _ref$classPrefix === void 0 ? 'check-tree-node' : _ref$classPrefix,\n _ref$visible = _ref.visible,\n visible = _ref$visible === void 0 ? true : _ref$visible,\n layer = _ref.layer,\n disabled = _ref.disabled,\n allUncheckable = _ref.allUncheckable,\n rtl = _ref.rtl,\n loading = _ref.loading,\n expand = _ref.expand,\n hasChildren = _ref.hasChildren,\n nodeData = _ref.nodeData,\n focus = _ref.focus,\n label = _ref.label,\n uncheckable = _ref.uncheckable,\n checkState = _ref.checkState,\n onExpand = _ref.onExpand,\n onSelect = _ref.onSelect,\n onRenderTreeIcon = _ref.onRenderTreeIcon,\n onRenderTreeNode = _ref.onRenderTreeNode,\n rest = (0, _objectWithoutPropertiesLoose2.default)(_ref, [\"as\", \"style\", \"className\", \"classPrefix\", \"visible\", \"layer\", \"disabled\", \"allUncheckable\", \"rtl\", \"loading\", \"expand\", \"hasChildren\", \"nodeData\", \"focus\", \"label\", \"uncheckable\", \"checkState\", \"onExpand\", \"onSelect\", \"onRenderTreeIcon\", \"onRenderTreeNode\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix;\n var getTitle = function getTitle() {\n if (typeof label === 'string') {\n return label;\n } else if ( /*#__PURE__*/_react.default.isValidElement(label)) {\n var nodes = (0, _utils.reactToString)(label);\n return nodes.join('');\n }\n };\n var handleExpand = (0, _react.useCallback)(function (event) {\n var _event$nativeEvent, _event$nativeEvent$st;\n // stop propagation when using custom loading icon\n event === null || event === void 0 ? void 0 : (_event$nativeEvent = event.nativeEvent) === null || _event$nativeEvent === void 0 ? void 0 : (_event$nativeEvent$st = _event$nativeEvent.stopImmediatePropagation) === null || _event$nativeEvent$st === void 0 ? void 0 : _event$nativeEvent$st.call(_event$nativeEvent);\n onExpand === null || onExpand === void 0 ? void 0 : onExpand(nodeData);\n }, [nodeData, onExpand]);\n var handleSelect = (0, _react.useCallback)(function (_value, event) {\n if (disabled || uncheckable) {\n return;\n }\n var isChecked = false;\n if (checkState === _utils.CHECK_STATE.UNCHECK || checkState === _utils.CHECK_STATE.INDETERMINATE) {\n isChecked = true;\n }\n if (checkState === _utils.CHECK_STATE.CHECK) {\n isChecked = false;\n }\n var nextNodeData = (0, _extends2.default)({}, nodeData, {\n check: isChecked\n });\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(nextNodeData, event);\n }, [disabled, checkState, uncheckable, nodeData, onSelect]);\n var renderIcon = function renderIcon() {\n var expandIconClasses = prefix('expand-icon', 'icon', {\n expanded: expand\n });\n var expandIcon = /*#__PURE__*/_react.default.createElement(_ArrowDown.default, {\n className: expandIconClasses,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 114,\n columnNumber: 24\n }\n });\n if (loading) {\n expandIcon = /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('loading-icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 118,\n columnNumber: 11\n }\n }, /*#__PURE__*/_react.default.createElement(_Spinner.default, {\n spin: true,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 119,\n columnNumber: 13\n }\n }));\n }\n if (typeof onRenderTreeIcon === 'function') {\n var customIcon = onRenderTreeIcon(nodeData);\n expandIcon = customIcon !== null ? /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('custom-icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 128,\n columnNumber: 13\n }\n }, customIcon) : expandIcon;\n }\n return hasChildren ? /*#__PURE__*/_react.default.createElement(\"div\", {\n role: \"button\",\n tabIndex: -1,\n \"data-ref\": nodeData.refKey,\n className: prefix('expand-icon-wrapper'),\n onClick: handleExpand,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 134,\n columnNumber: 9\n }\n }, expandIcon) : null;\n };\n var renderLabel = function renderLabel() {\n return /*#__PURE__*/_react.default.createElement(_DropdownMenuCheckItem.default, {\n as: \"div\",\n active: checkState === _utils.CHECK_STATE.CHECK,\n indeterminate: checkState === _utils.CHECK_STATE.INDETERMINATE,\n focus: focus,\n checkable: !uncheckable,\n disabled: disabled,\n \"data-layer\": layer,\n value: nodeData.refKey,\n className: prefix('label'),\n title: getTitle(),\n onSelect: handleSelect,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 148,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix('text-wrapper'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 161,\n columnNumber: 11\n }\n }, typeof onRenderTreeNode === 'function' ? onRenderTreeNode(nodeData) : label));\n };\n var classes = merge(className, withClassPrefix({\n disabled: disabled,\n 'all-uncheckable': !!allUncheckable,\n 'text-muted': disabled,\n focus: focus\n }));\n var styles = (0, _extends2.default)({}, style, (0, _treeUtils.getTreeNodeIndent)(rtl, layer - 1));\n return visible ? /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"treeitem\",\n \"aria-label\": label,\n \"aria-expanded\": expand,\n \"aria-selected\": checkState === _utils.CHECK_STATE.CHECK,\n \"aria-disabled\": disabled,\n \"aria-level\": layer\n }, rest, {\n style: styles,\n className: classes,\n ref: ref,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 181,\n columnNumber: 7\n }\n }), renderIcon(), renderLabel()) : null;\n});\nCheckTreeNode.displayName = 'CheckTreeNode';\nCheckTreeNode.propTypes = {\n as: _propTypes.default.elementType,\n rtl: _propTypes.default.bool,\n classPrefix: _propTypes.default.string,\n visible: _propTypes.default.bool,\n style: _propTypes.default.object,\n label: _propTypes.default.any,\n layer: _propTypes.default.number,\n loading: _propTypes.default.bool,\n value: _propTypes.default.any,\n focus: _propTypes.default.bool,\n expand: _propTypes.default.bool,\n nodeData: _propTypes.default.object,\n disabled: _propTypes.default.bool,\n className: _propTypes.default.string,\n checkState: _propTypes.default.oneOf([_utils.CHECK_STATE.UNCHECK, _utils.CHECK_STATE.CHECK, _utils.CHECK_STATE.INDETERMINATE]),\n hasChildren: _propTypes.default.bool,\n uncheckable: _propTypes.default.bool,\n allUncheckable: _propTypes.default.bool,\n onExpand: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onRenderTreeIcon: _propTypes.default.func,\n onRenderTreeNode: _propTypes.default.func\n};\nvar _default = CheckTreeNode;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/CheckTreePicker/CheckTreeNode.tsx?");
6475
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _ArrowDown = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/ArrowDown */ \"./node_modules/@rsuite/icons/legacy/ArrowDown.js\"));\nvar _Spinner = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Spinner */ \"./node_modules/@rsuite/icons/legacy/Spinner.js\"));\nvar _ListCheckItem = _interopRequireDefault(__webpack_require__(/*! ../Picker/ListCheckItem */ \"./src/Picker/ListCheckItem.tsx\"));\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/CheckTreePicker/CheckTreeNode.tsx\",\n _this = void 0;\nvar CheckTreeNode = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {\n var _ref$as = _ref.as,\n Component = _ref$as === void 0 ? 'div' : _ref$as,\n style = _ref.style,\n className = _ref.className,\n _ref$classPrefix = _ref.classPrefix,\n classPrefix = _ref$classPrefix === void 0 ? 'check-tree-node' : _ref$classPrefix,\n _ref$visible = _ref.visible,\n visible = _ref$visible === void 0 ? true : _ref$visible,\n layer = _ref.layer,\n disabled = _ref.disabled,\n allUncheckable = _ref.allUncheckable,\n rtl = _ref.rtl,\n loading = _ref.loading,\n expand = _ref.expand,\n hasChildren = _ref.hasChildren,\n nodeData = _ref.nodeData,\n focus = _ref.focus,\n label = _ref.label,\n uncheckable = _ref.uncheckable,\n checkState = _ref.checkState,\n value = _ref.value,\n onExpand = _ref.onExpand,\n onSelect = _ref.onSelect,\n renderTreeIcon = _ref.renderTreeIcon,\n renderTreeNode = _ref.renderTreeNode,\n rest = (0, _objectWithoutPropertiesLoose2.default)(_ref, [\"as\", \"style\", \"className\", \"classPrefix\", \"visible\", \"layer\", \"disabled\", \"allUncheckable\", \"rtl\", \"loading\", \"expand\", \"hasChildren\", \"nodeData\", \"focus\", \"label\", \"uncheckable\", \"checkState\", \"value\", \"onExpand\", \"onSelect\", \"renderTreeIcon\", \"renderTreeNode\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix;\n var getTitle = function getTitle() {\n if (typeof label === 'string') {\n return label;\n } else if ( /*#__PURE__*/_react.default.isValidElement(label)) {\n var nodes = (0, _utils.reactToString)(label);\n return nodes.join('');\n }\n };\n var handleExpand = (0, _utils.useEventCallback)(function (event) {\n var _event$nativeEvent, _event$nativeEvent$st;\n // stop propagation when using custom loading icon\n event === null || event === void 0 ? void 0 : (_event$nativeEvent = event.nativeEvent) === null || _event$nativeEvent === void 0 ? void 0 : (_event$nativeEvent$st = _event$nativeEvent.stopImmediatePropagation) === null || _event$nativeEvent$st === void 0 ? void 0 : _event$nativeEvent$st.call(_event$nativeEvent);\n onExpand === null || onExpand === void 0 ? void 0 : onExpand(nodeData);\n });\n var handleSelect = (0, _utils.useEventCallback)(function (_value, event) {\n if (disabled || uncheckable) {\n return;\n }\n var isChecked = false;\n if (checkState === _utils.CHECK_STATE.UNCHECK || checkState === _utils.CHECK_STATE.INDETERMINATE) {\n isChecked = true;\n }\n if (checkState === _utils.CHECK_STATE.CHECK) {\n isChecked = false;\n }\n var nextNodeData = (0, _extends2.default)({}, nodeData, {\n check: isChecked\n });\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(nextNodeData, event);\n });\n var renderIcon = function renderIcon() {\n var expandIconClasses = prefix('expand-icon', 'icon', {\n expanded: expand\n });\n var expandIcon = /*#__PURE__*/_react.default.createElement(_ArrowDown.default, {\n className: expandIconClasses,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 114,\n columnNumber: 24\n }\n });\n if (loading) {\n expandIcon = /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('loading-icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 118,\n columnNumber: 11\n }\n }, /*#__PURE__*/_react.default.createElement(_Spinner.default, {\n spin: true,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 119,\n columnNumber: 13\n }\n }));\n }\n if (typeof renderTreeIcon === 'function') {\n var customIcon = renderTreeIcon(nodeData);\n expandIcon = customIcon !== null ? /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('custom-icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 128,\n columnNumber: 13\n }\n }, customIcon) : expandIcon;\n }\n return hasChildren ? /*#__PURE__*/_react.default.createElement(\"div\", {\n role: \"button\",\n tabIndex: -1,\n \"data-ref\": nodeData.refKey,\n className: prefix('expand-icon-wrapper'),\n onClick: handleExpand,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 134,\n columnNumber: 9\n }\n }, expandIcon) : null;\n };\n var classes = merge(className, withClassPrefix({\n disabled: disabled,\n 'all-uncheckable': !!allUncheckable,\n 'text-muted': disabled,\n focus: focus\n }));\n var styles = (0, _extends2.default)({}, style, (0, _treeUtils.getTreeNodeIndent)(rtl, layer - 1));\n return visible ? /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n style: styles,\n className: classes,\n ref: ref,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 158,\n columnNumber: 7\n }\n }), renderIcon(), /*#__PURE__*/_react.default.createElement(_ListCheckItem.default, {\n as: \"div\",\n role: \"treeitem\",\n \"aria-label\": label,\n \"aria-expanded\": expand,\n \"aria-selected\": checkState === _utils.CHECK_STATE.CHECK,\n \"aria-disabled\": disabled,\n \"aria-level\": layer,\n active: checkState === _utils.CHECK_STATE.CHECK,\n indeterminate: checkState === _utils.CHECK_STATE.INDETERMINATE,\n focus: focus,\n checkable: !uncheckable,\n disabled: disabled,\n \"data-layer\": layer,\n value: nodeData.refKey || value,\n className: prefix('label'),\n title: getTitle(),\n onSelect: handleSelect,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 160,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix('text-wrapper'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 179,\n columnNumber: 11\n }\n }, typeof renderTreeNode === 'function' ? renderTreeNode(nodeData) : label))) : null;\n});\nCheckTreeNode.displayName = 'CheckTreeNode';\nvar _default = CheckTreeNode;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/CheckTreePicker/CheckTreeNode.tsx?");
6465
6476
 
6466
6477
  /***/ }),
6467
6478
 
@@ -6472,7 +6483,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
6472
6483
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6473
6484
 
6474
6485
  "use strict";
6475
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _isUndefined2 = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _cloneDeep2 = _interopRequireDefault(__webpack_require__(/*! lodash/cloneDeep */ \"./node_modules/lodash/cloneDeep.js\"));\nvar _omit2 = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _isFunction2 = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _pick2 = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _isNil2 = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ \"./node_modules/classnames/index.js\"));\nvar _Windowing = __webpack_require__(/*! ../Windowing */ \"./src/Windowing/index.ts\");\nvar _CheckTreeNode = _interopRequireDefault(__webpack_require__(/*! ./CheckTreeNode */ \"./src/CheckTreePicker/CheckTreeNode.tsx\"));\nvar _TreeContext = _interopRequireDefault(__webpack_require__(/*! ../Tree/TreeContext */ \"./src/Tree/TreeContext.ts\"));\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _utils2 = __webpack_require__(/*! ./utils */ \"./src/CheckTreePicker/utils.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/CheckTreePicker/CheckTreePicker.tsx\",\n _this = void 0;\nvar emptyArray = [];\nvar itemSize = function itemSize() {\n return 36;\n};\n\n/**\n * The `CheckTreePicker` component is used for selecting multiple options which are organized in a tree structure.\n *\n * @see https://rsuitejs.com/components/check-tree-picker\n */\nvar CheckTreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\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 style = props.style,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$countable = props.countable,\n countable = _props$countable === void 0 ? true : _props$countable,\n searchBy = props.searchBy,\n toggleAs = props.toggleAs,\n searchKeyword = props.searchKeyword,\n showIndentLine = props.showIndentLine,\n overrideLocale = props.locale,\n _props$cascade = props.cascade,\n cascade = _props$cascade === void 0 ? true : _props$cascade,\n disabled = props.disabled,\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$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n placeholder = props.placeholder,\n controlledValue = props.value,\n _props$defaultValue = props.defaultValue,\n defaultValue = _props$defaultValue === void 0 ? emptyArray : _props$defaultValue,\n _props$defaultExpandA = props.defaultExpandAll,\n defaultExpandAll = _props$defaultExpandA === void 0 ? false : _props$defaultExpandA,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n controlledExpandItemValues = props.expandItemValues,\n _props$defaultExpandI = props.defaultExpandItemValues,\n defaultExpandItemValues = _props$defaultExpandI === void 0 ? emptyArray : _props$defaultExpandI,\n _props$height = props.height,\n height = _props$height === void 0 ? 360 : _props$height,\n _props$menuMaxHeight = props.menuMaxHeight,\n menuMaxHeight = _props$menuMaxHeight === void 0 ? 320 : _props$menuMaxHeight,\n menuStyle = props.menuStyle,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n _props$virtualized = props.virtualized,\n virtualized = _props$virtualized === void 0 ? false : _props$virtualized,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n menuClassName = props.menuClassName,\n _props$menuAutoWidth = props.menuAutoWidth,\n menuAutoWidth = _props$menuAutoWidth === void 0 ? true : _props$menuAutoWidth,\n _props$uncheckableIte = props.uncheckableItemValues,\n uncheckableItemValues = _props$uncheckableIte === void 0 ? emptyArray : _props$uncheckableIte,\n id = props.id,\n listProps = props.listProps,\n renderMenu = props.renderMenu,\n getChildren = props.getChildren,\n renderExtraFooter = props.renderExtraFooter,\n onEntered = props.onEntered,\n onChange = props.onChange,\n onClean = props.onClean,\n onClose = props.onClose,\n onExited = props.onExited,\n onSearch = props.onSearch,\n onSelect = props.onSelect,\n onSelectItem = props.onSelectItem,\n onOpen = props.onOpen,\n onScroll = props.onScroll,\n onExpand = props.onExpand,\n renderValue = props.renderValue,\n renderTreeIcon = props.renderTreeIcon,\n renderTreeNode = props.renderTreeNode,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"data\", \"style\", \"appearance\", \"cleanable\", \"countable\", \"searchBy\", \"toggleAs\", \"searchKeyword\", \"showIndentLine\", \"locale\", \"cascade\", \"disabled\", \"valueKey\", \"labelKey\", \"placement\", \"childrenKey\", \"placeholder\", \"value\", \"defaultValue\", \"defaultExpandAll\", \"disabledItemValues\", \"expandItemValues\", \"defaultExpandItemValues\", \"height\", \"menuMaxHeight\", \"menuStyle\", \"searchable\", \"virtualized\", \"className\", \"classPrefix\", \"menuClassName\", \"menuAutoWidth\", \"uncheckableItemValues\", \"id\", \"listProps\", \"renderMenu\", \"getChildren\", \"renderExtraFooter\", \"onEntered\", \"onChange\", \"onClean\", \"onClose\", \"onExited\", \"onSearch\", \"onSelect\", \"onSelectItem\", \"onOpen\", \"onScroll\", \"onExpand\", \"renderValue\", \"renderTreeIcon\", \"renderTreeNode\"]);\n var _useContext = (0, _react.useContext)(_TreeContext.default),\n inline = _useContext.inline;\n var triggerRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var listRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n var searchInputRef = (0, _react.useRef)(null);\n var treeViewRef = (0, _react.useRef)(null);\n var _useCustom = (0, _utils.useCustom)('Picker', overrideLocale),\n rtl = _useCustom.rtl,\n locale = _useCustom.locale;\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n var _useState2 = (0, _react.useState)(null),\n activeNode = _useState2[0],\n setActiveNode = _useState2[1];\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var _useClassNames2 = (0, _utils.useClassNames)('check-tree'),\n checkTreePrefix = _useClassNames2.prefix,\n withCheckTreeClassPrefix = _useClassNames2.withClassPrefix;\n var _useControlled = (0, _utils.useControlled)(controlledValue, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1],\n isControlled = _useControlled[2];\n var _useGetTreeNodeChildr = (0, _treeUtils.useGetTreeNodeChildren)(data, valueKey, childrenKey),\n treeData = _useGetTreeNodeChildr.data,\n setTreeData = _useGetTreeNodeChildr.setData,\n loadingNodeValues = _useGetTreeNodeChildr.loadingNodeValues,\n loadChildren = _useGetTreeNodeChildr.loadChildren;\n var _useControlled2 = (0, _utils.useControlled)(controlledExpandItemValues, (0, _treeUtils.getDefaultExpandItemValues)(treeData, {\n defaultExpandAll: defaultExpandAll,\n valueKey: valueKey,\n childrenKey: childrenKey,\n defaultExpandItemValues: defaultExpandItemValues\n })),\n expandItemValues = _useControlled2[0],\n setExpandItemValues = _useControlled2[1];\n var _useState3 = (0, _react.useState)(null),\n focusItemValue = _useState3[0],\n setFocusItemValue = _useState3[1];\n var _useFlattenTreeData = (0, _treeUtils.useFlattenTreeData)({\n data: treeData,\n labelKey: labelKey,\n valueKey: valueKey,\n childrenKey: childrenKey,\n uncheckableItemValues: uncheckableItemValues,\n callback: function callback(nodes) {\n // after flattenData, always unSerialize check property value\n unSerializeList({\n nodes: nodes,\n key: 'check',\n value: value,\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n forceUpdate();\n }\n }),\n flattenNodes = _useFlattenTreeData.flattenNodes,\n forceUpdate = _useFlattenTreeData.forceUpdate,\n formatVirtualizedTreeData = _useFlattenTreeData.formatVirtualizedTreeData,\n serializeListOnlyParent = _useFlattenTreeData.serializeListOnlyParent,\n unSerializeList = _useFlattenTreeData.unSerializeList;\n var _useTreeSearch = (0, _treeUtils.useTreeSearch)({\n labelKey: labelKey,\n childrenKey: childrenKey,\n searchKeyword: searchKeyword,\n data: treeData,\n searchBy: searchBy,\n callback: function callback(searchKeyword, _filterData, event) {\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);\n }\n }),\n filteredData = _useTreeSearch.filteredData,\n searchKeywordState = _useTreeSearch.searchKeywordState,\n setSearchKeyword = _useTreeSearch.setSearchKeyword,\n handleSearch = _useTreeSearch.handleSearch,\n setFilteredData = _useTreeSearch.setFilteredData;\n var _useTreeNodeRefs = (0, _treeUtils.useTreeNodeRefs)(),\n treeNodesRefs = _useTreeNodeRefs.treeNodesRefs,\n saveTreeNodeRef = _useTreeNodeRefs.saveTreeNodeRef;\n /**\n * get formatted nodes for render tree\n * @params render - renderNode function. only used when virtualized setting false\n */\n var getFormattedNodes = (0, _react.useCallback)(function (render) {\n if (virtualized) {\n return formatVirtualizedTreeData(flattenNodes, filteredData, expandItemValues, {\n cascade: cascade,\n searchKeyword: searchKeywordState\n }).filter(function (item) {\n return item.visible;\n });\n }\n return (0, _utils2.getFormattedTree)(flattenNodes, filteredData, {\n childrenKey: childrenKey,\n cascade: cascade\n }).map(function (node) {\n return render === null || render === void 0 ? void 0 : render(node, 1);\n });\n }, [searchKeywordState, expandItemValues, filteredData, flattenNodes, formatVirtualizedTreeData, virtualized, childrenKey, cascade]);\n var getTreeNodeProps = function getTreeNodeProps(node, layer) {\n return {\n as: Component,\n rtl: rtl,\n value: node[valueKey],\n label: node[labelKey],\n layer: layer,\n focus: focusItemValue === node[valueKey],\n expand: node.expand,\n visible: node.visible,\n loading: loadingNodeValues.some(function (item) {\n return item === node[valueKey];\n }),\n disabled: (0, _utils2.getDisabledState)(flattenNodes, node, {\n disabledItemValues: disabledItemValues,\n valueKey: valueKey\n }),\n nodeData: node,\n checkState: node.checkState,\n uncheckable: (0, _utils2.isNodeUncheckable)(node, {\n uncheckableItemValues: uncheckableItemValues,\n valueKey: valueKey\n }),\n allUncheckable: (0, _utils2.isAllSiblingNodeUncheckable)(node, flattenNodes, uncheckableItemValues, valueKey),\n onSelect: handleSelect,\n onExpand: handleExpand,\n onRenderTreeNode: renderTreeNode,\n onRenderTreeIcon: renderTreeIcon\n };\n };\n var focusActiveNode = (0, _react.useCallback)(function () {\n if (listRef.current) {\n (0, _treeUtils.focusToActiveTreeNode)({\n list: listRef.current,\n valueKey: valueKey,\n selector: \".\" + checkTreePrefix('node-active'),\n activeNode: activeNode,\n virtualized: virtualized,\n container: treeViewRef.current,\n formattedNodes: getFormattedNodes()\n });\n }\n }, [checkTreePrefix, activeNode, getFormattedNodes, valueKey, virtualized]);\n (0, _react.useEffect)(function () {\n setValue((0, _utils2.getCheckTreePickerDefaultValue)(value, uncheckableItemValues));\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n (0, _react.useEffect)(function () {\n setFilteredData(data, searchKeywordState);\n setTreeData(data);\n }, [data, searchKeywordState, setFilteredData, setTreeData]);\n (0, _react.useEffect)(function () {\n setFilteredData(treeData, searchKeywordState);\n }, [treeData, searchKeywordState, setFilteredData]);\n (0, _react.useEffect)(function () {\n if (Array.isArray(controlledExpandItemValues)) {\n setExpandItemValues(controlledExpandItemValues);\n }\n }, [controlledExpandItemValues, setExpandItemValues]);\n (0, _react.useEffect)(function () {\n setSearchKeyword(searchKeyword !== null && searchKeyword !== void 0 ? searchKeyword : '');\n }, [searchKeyword, setSearchKeyword]);\n (0, _react.useEffect)(function () {\n unSerializeList({\n nodes: flattenNodes,\n key: 'check',\n value: value,\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n forceUpdate();\n }, [cascade, value, uncheckableItemValues, unSerializeList, flattenNodes, forceUpdate]);\n var toggleUpChecked = (0, _react.useCallback)(function (nodes, node, checked) {\n var currentNode = node.refKey ? nodes[node.refKey] : null;\n if (cascade && currentNode) {\n if (!checked) {\n currentNode.check = checked;\n currentNode.checkAll = checked;\n } else {\n if ((0, _utils2.isEveryChildChecked)(nodes, currentNode)) {\n currentNode.check = true;\n currentNode.checkAll = true;\n } else {\n currentNode.check = false;\n currentNode.checkAll = false;\n }\n }\n if (currentNode.parent) {\n toggleUpChecked(nodes, currentNode.parent, checked);\n }\n }\n }, [cascade]);\n var toggleDownChecked = (0, _react.useCallback)(function (nodes, node, isChecked) {\n var currentNode = node.refKey ? nodes[node.refKey] : null;\n if (!currentNode) {\n return;\n }\n currentNode.check = isChecked;\n if (!currentNode[childrenKey] || !currentNode[childrenKey].length || !cascade) {\n currentNode.checkAll = false;\n } else {\n currentNode.checkAll = isChecked;\n currentNode[childrenKey].forEach(function (child) {\n toggleDownChecked(nodes, child, isChecked);\n });\n }\n }, [cascade, childrenKey]);\n var toggleChecked = (0, _react.useCallback)(function (node, isChecked) {\n var nodes = (0, _cloneDeep2.default)(flattenNodes);\n toggleDownChecked(nodes, node, isChecked);\n node.parent && toggleUpChecked(nodes, node.parent, isChecked);\n var values = serializeListOnlyParent(nodes, 'check');\n // filter uncheckableItemValues\n return values.filter(function (v) {\n return !uncheckableItemValues.includes(v);\n });\n }, [flattenNodes, uncheckableItemValues, serializeListOnlyParent, toggleDownChecked, toggleUpChecked]);\n\n // TODO-Doma\n // Replace `getKeyParentMap` with `getParentMap`\n var itemParentMap = (0, _react.useMemo)(function () {\n return (0, _treeUtils.getKeyParentMap)(data, function (node) {\n return node[valueKey];\n }, function (node) {\n return node[childrenKey];\n });\n }, [childrenKey, data, valueKey]);\n var handleSelect = (0, _react.useCallback)(function (node, event) {\n var currentNode = node.refKey ? flattenNodes[node.refKey] : null;\n if (!node || !currentNode) {\n return;\n }\n var selectedValues = toggleChecked(node, !currentNode.check);\n if (!isControlled) {\n unSerializeList({\n nodes: flattenNodes,\n key: 'check',\n value: selectedValues,\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n setValue(selectedValues);\n }\n setActiveNode(node);\n setFocusItemValue(node[valueKey]);\n onChange === null || onChange === void 0 ? void 0 : onChange(selectedValues, event);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, selectedValues, event);\n onSelectItem === null || onSelectItem === void 0 ? void 0 : onSelectItem(node, (0, _treeUtils.getPathTowardsItem)(node, function (item) {\n return itemParentMap.get(item[valueKey]);\n }));\n }, [flattenNodes, toggleChecked, isControlled, valueKey, onChange, onSelect, onSelectItem, unSerializeList, cascade, uncheckableItemValues, setValue, itemParentMap]);\n var handleOpen = (0, _react.useCallback)(function () {\n var _triggerRef$current, _triggerRef$current$o;\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$o = _triggerRef$current.open) === null || _triggerRef$current$o === void 0 ? void 0 : _triggerRef$current$o.call(_triggerRef$current);\n setFocusItemValue(activeNode === null || activeNode === void 0 ? void 0 : activeNode[valueKey]);\n focusActiveNode();\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n }, [activeNode, focusActiveNode, onOpen, valueKey]);\n var handleClose = (0, _react.useCallback)(function () {\n var _triggerRef$current2, _triggerRef$current2$, _targetRef$current;\n (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : (_triggerRef$current2$ = _triggerRef$current2.close) === null || _triggerRef$current2$ === void 0 ? void 0 : _triggerRef$current2$.call(_triggerRef$current2);\n setSearchKeyword('');\n onClose === null || onClose === void 0 ? void 0 : onClose();\n setFocusItemValue(null);\n setActive(false);\n\n /**\n * when using keyboard toggle picker, should refocus on PickerToggle Component after close picker menu\n */\n (_targetRef$current = targetRef.current) === null || _targetRef$current === void 0 ? void 0 : _targetRef$current.focus();\n }, [onClose, setSearchKeyword]);\n var handleExpand = (0, _react.useCallback)(function (node) {\n var nextExpandItemValues = (0, _treeUtils.toggleExpand)({\n node: node,\n isExpand: !node.expand,\n expandItemValues: expandItemValues,\n valueKey: valueKey\n });\n setExpandItemValues(nextExpandItemValues);\n onExpand === null || onExpand === void 0 ? void 0 : onExpand(nextExpandItemValues, node, (0, _Picker.createConcatChildrenFunction)(node, node[valueKey], {\n valueKey: valueKey,\n childrenKey: childrenKey\n }));\n if ((0, _isFunction2.default)(getChildren) && !node.expand && Array.isArray(node[childrenKey]) && node[childrenKey].length === 0) {\n loadChildren(node, getChildren);\n }\n }, [childrenKey, expandItemValues, getChildren, loadChildren, onExpand, setExpandItemValues, valueKey]);\n (0, _Picker.usePublicMethods)(ref, {\n rootRef: inline ? treeViewRef : undefined,\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef,\n listRef: listRef,\n inline: inline\n });\n var handleClean = (0, _react.useCallback)(function (event) {\n var target = event.target;\n // exclude searchBar\n if (target.matches('div[role=\"searchbox\"] > input') || disabled || !cleanable) {\n return;\n }\n setActiveNode(null);\n setFocusItemValue(null);\n if (!isControlled) {\n setValue([]);\n unSerializeList({\n nodes: flattenNodes,\n key: 'check',\n value: [],\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n }\n onChange === null || onChange === void 0 ? void 0 : onChange([], event);\n }, [cascade, cleanable, disabled, flattenNodes, onChange, setValue, unSerializeList, uncheckableItemValues, isControlled]);\n var handleFocusItem = (0, _react.useCallback)(function (key) {\n var focusableItems = (0, _treeUtils.getFocusableItems)(filteredData, {\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n childrenKey: childrenKey,\n expandItemValues: expandItemValues\n }, (0, _treeUtils.isSearching)(searchKeywordState));\n var selector = \".\" + checkTreePrefix('node-label');\n var focusProps = {\n focusItemValue: focusItemValue,\n focusableItems: focusableItems,\n treeNodesRefs: treeNodesRefs,\n selector: selector,\n valueKey: valueKey,\n callback: function callback(nextFocusItemValue) {\n setFocusItemValue(nextFocusItemValue);\n }\n };\n if (key === _utils.KEY_VALUES.DOWN) {\n (0, _treeUtils.focusNextItem)(focusProps);\n return;\n }\n if (key === _utils.KEY_VALUES.UP) {\n (0, _treeUtils.focusPreviousItem)(focusProps);\n }\n }, [searchKeywordState, checkTreePrefix, expandItemValues, filteredData, focusItemValue, treeNodesRefs, childrenKey, valueKey, disabledItemValues]);\n var handleLeftArrow = (0, _react.useCallback)(function () {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var focusItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n (0, _treeUtils.leftArrowHandler)({\n focusItem: focusItem,\n expand: expandItemValues.includes(focusItem === null || focusItem === void 0 ? void 0 : focusItem[valueKey]),\n onExpand: handleExpand,\n childrenKey: childrenKey,\n onFocusItem: function onFocusItem() {\n var _focusItem$parent, _focusItem$parent2;\n setFocusItemValue(focusItem === null || focusItem === void 0 ? void 0 : (_focusItem$parent = focusItem.parent) === null || _focusItem$parent === void 0 ? void 0 : _focusItem$parent[valueKey]);\n (0, _treeUtils.focusTreeNode)(focusItem === null || focusItem === void 0 ? void 0 : (_focusItem$parent2 = focusItem.parent) === null || _focusItem$parent2 === void 0 ? void 0 : _focusItem$parent2.refKey, treeNodesRefs, \".\" + checkTreePrefix('node-label'));\n }\n });\n }, [checkTreePrefix, expandItemValues, flattenNodes, focusItemValue, handleExpand, treeNodesRefs, valueKey, childrenKey]);\n var handleRightArrow = (0, _react.useCallback)(function () {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var focusItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n (0, _treeUtils.rightArrowHandler)({\n focusItem: focusItem,\n expand: expandItemValues.includes(focusItem === null || focusItem === void 0 ? void 0 : focusItem[valueKey]),\n childrenKey: childrenKey,\n onExpand: handleExpand,\n onFocusItem: function onFocusItem() {\n handleFocusItem(_utils.KEY_VALUES.DOWN);\n }\n });\n }, [focusItemValue, flattenNodes, valueKey, expandItemValues, childrenKey, handleExpand, handleFocusItem]);\n var selectActiveItem = (0, _react.useCallback)(function (event) {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var activeItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n if (!(0, _utils2.isNodeUncheckable)(activeItem, {\n uncheckableItemValues: uncheckableItemValues,\n valueKey: valueKey\n }) && activeItem !== null) {\n handleSelect(activeItem, event);\n }\n }, [flattenNodes, focusItemValue, handleSelect, uncheckableItemValues, valueKey]);\n var onPickerKeydown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({\n toggle: !focusItemValue || !active,\n triggerRef: triggerRef,\n targetRef: targetRef,\n overlayRef: overlayRef,\n searchInputRef: searchInputRef,\n active: active,\n onExit: handleClean,\n onClose: handleClose,\n onMenuKeyDown: function onMenuKeyDown(event) {\n (0, _Picker.onMenuKeyDown)(event, {\n down: function down() {\n return handleFocusItem(_utils.KEY_VALUES.DOWN);\n },\n up: function up() {\n return handleFocusItem(_utils.KEY_VALUES.UP);\n },\n left: rtl ? handleRightArrow : handleLeftArrow,\n right: rtl ? handleLeftArrow : handleRightArrow,\n enter: selectActiveItem,\n del: handleClean\n });\n }\n }, rest));\n var handleTreeKeydown = (0, _react.useCallback)(function (event) {\n if (!treeViewRef.current) {\n return;\n }\n (0, _Picker.onMenuKeyDown)(event, {\n down: function down() {\n return handleFocusItem(_utils.KEY_VALUES.DOWN);\n },\n up: function up() {\n return handleFocusItem(_utils.KEY_VALUES.UP);\n },\n left: rtl ? handleRightArrow : handleLeftArrow,\n right: rtl ? handleLeftArrow : handleRightArrow,\n enter: selectActiveItem\n });\n }, [handleFocusItem, handleLeftArrow, handleRightArrow, rtl, selectActiveItem]);\n var renderNode = function renderNode(node, layer) {\n var visible = node.visible,\n refKey = node.refKey; // when searching, all nodes should be expand\n var expand = (0, _treeUtils.getExpandWhenSearching)(searchKeywordState, expandItemValues.includes(node[valueKey]));\n if (!visible) {\n return null;\n }\n var children = node[childrenKey];\n var visibleChildren = (0, _isUndefined2.default)(searchKeywordState) || searchKeywordState.length === 0 ? !!children : (0, _treeUtils.hasVisibleChildren)(node, childrenKey);\n var nodeProps = (0, _extends2.default)({}, getTreeNodeProps((0, _extends2.default)({}, node, {\n /**\n * spread operator don't copy unenumerable properties\n * so we need to copy them manually\n */\n parent: node.parent,\n expand: expand\n }), layer), {\n hasChildren: visibleChildren\n });\n if (nodeProps.hasChildren) {\n var _merge;\n layer += 1;\n var openClass = checkTreePrefix('open');\n var childrenClass = merge(checkTreePrefix('node-children'), (_merge = {}, _merge[openClass] = expand && visibleChildren, _merge));\n var nodes = children || [];\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: childrenClass,\n key: node[valueKey],\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 760,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_CheckTreeNode.default, (0, _extends2.default)({}, nodeProps, {\n ref: function ref(_ref) {\n return saveTreeNodeRef(_ref, refKey);\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 761,\n columnNumber: 11\n }\n })), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: checkTreePrefix('children'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 762,\n columnNumber: 11\n }\n }, nodes.map(function (child) {\n return renderNode(child, layer);\n }), showIndentLine && /*#__PURE__*/_react.default.createElement(\"span\", {\n className: checkTreePrefix('indent-line'),\n style: (0, _treeUtils.getTreeNodeIndent)(rtl, layer - 1, true),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 765,\n columnNumber: 15\n }\n })));\n }\n return /*#__PURE__*/_react.default.createElement(_CheckTreeNode.default, (0, _extends2.default)({\n key: node[valueKey],\n ref: function ref(_ref2) {\n return saveTreeNodeRef(_ref2, refKey);\n }\n }, nodeProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 776,\n columnNumber: 7\n }\n }));\n };\n var renderVirtualListNode = function renderVirtualListNode(_ref3) {\n var index = _ref3.index,\n style = _ref3.style,\n data = _ref3.data;\n var node = data[index];\n var layer = node.layer,\n refKey = node.refKey,\n visible = node.visible;\n var expand = (0, _treeUtils.getExpandWhenSearching)(searchKeywordState, expandItemValues.includes(node[valueKey]));\n var nodeProps = (0, _extends2.default)({}, getTreeNodeProps((0, _extends2.default)({}, node, {\n /**\n * spread operator don't copy unenumerable properties\n * so we need to copy them manually\n */\n parent: node.parent,\n expand: expand\n }), layer), {\n hasChildren: node.hasChildren\n });\n return visible && /*#__PURE__*/_react.default.createElement(_CheckTreeNode.default, (0, _extends2.default)({\n style: style,\n ref: function ref(_ref4) {\n return saveTreeNodeRef(_ref4, refKey);\n }\n }, nodeProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 809,\n columnNumber: 9\n }\n }));\n };\n var renderCheckTree = function renderCheckTree() {\n var _withCheckTreeClassPr, _merge2;\n var classes = withCheckTreeClassPrefix((_withCheckTreeClassPr = {}, _withCheckTreeClassPr[className !== null && className !== void 0 ? className : ''] = inline, _withCheckTreeClassPr['without-children'] = !(0, _utils2.isSomeNodeHasChildren)(data, childrenKey), _withCheckTreeClassPr.virtualized = virtualized, _withCheckTreeClassPr));\n var formattedNodes = getFormattedNodes(renderNode);\n if (!formattedNodes.some(function (v) {\n return v !== null;\n })) {\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('none'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 824,\n columnNumber: 14\n }\n }, locale.noResultsText);\n }\n var treeNodesClass = merge(checkTreePrefix('nodes'), (_merge2 = {}, _merge2[checkTreePrefix('all-uncheckable')] = (0, _utils2.isEveryFirstLevelNodeUncheckable)(flattenNodes, uncheckableItemValues, valueKey), _merge2));\n var styles = inline ? (0, _extends2.default)({\n height: height\n }, style) : {};\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n id: id ? id + \"-listbox\" : undefined,\n ref: treeViewRef,\n role: \"tree\",\n \"aria-multiselectable\": true,\n className: classes,\n style: styles,\n onScroll: onScroll,\n onKeyDown: inline ? handleTreeKeydown : undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 837,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: treeNodesClass,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 847,\n columnNumber: 9\n }\n }, virtualized ? /*#__PURE__*/_react.default.createElement(_Windowing.AutoSizer, {\n defaultHeight: inline ? height : menuMaxHeight,\n style: {\n width: 'auto',\n height: 'auto'\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 849,\n columnNumber: 13\n }\n }, function (_ref5) {\n var height = _ref5.height;\n return /*#__PURE__*/_react.default.createElement(_Windowing.List, (0, _extends2.default)({\n ref: listRef,\n height: height,\n itemSize: itemSize,\n itemCount: formattedNodes.length,\n itemData: formattedNodes\n }, listProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 854,\n columnNumber: 17\n }\n }), renderVirtualListNode);\n }) : formattedNodes));\n };\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = (0, _classnames.default)(className, menuClassName, prefix('check-tree-menu'));\n var mergedMenuStyle = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n autoWidth: menuAutoWidth,\n className: classes,\n style: mergedMenuStyle,\n ref: (0, _utils.mergeRefs)(overlayRef, speakerRef),\n onKeyDown: onPickerKeydown,\n target: triggerRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 880,\n columnNumber: 7\n }\n }, searchable ? /*#__PURE__*/_react.default.createElement(_Picker.SearchBar, {\n placeholder: locale.searchPlaceholder,\n onChange: handleSearch,\n value: searchKeywordState,\n inputRef: searchInputRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 889,\n columnNumber: 11\n }\n }) : null, renderMenu ? renderMenu(renderCheckTree()) : renderCheckTree(), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n var selectedItems = (0, _react.useMemo)(function () {\n return (0, _utils2.getSelectedItems)(flattenNodes, value);\n }, [flattenNodes, value]);\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 var hasValidValue = selectedItems.length > 0 || value.length > 0 && (0, _isFunction2.default)(renderValue);\n var selectedElement = placeholder;\n if (hasValidValue) {\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: 912,\n columnNumber: 7\n }\n });\n if ((0, _isFunction2.default)(renderValue)) {\n selectedElement = renderValue(value, selectedItems, selectedElement);\n if ((0, _isNil2.default)(selectedElement)) {\n hasValidValue = false;\n }\n }\n }\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n appearance: appearance,\n countable: countable,\n cleanable: cleanable,\n disabled: disabled,\n hasValue: hasValidValue,\n name: 'check-tree'\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n if (inline) {\n return renderCheckTree();\n }\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n pickerProps: (0, _pick2.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n placement: placement,\n onEnter: handleOpen,\n onEntered: onEntered,\n onExited: (0, _utils.createChainedFunction)(handleClose, onExited),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 947,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 956,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit2.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n id: id,\n ref: targetRef,\n appearance: appearance,\n onKeyDown: onPickerKeydown,\n onClean: (0, _utils.createChainedFunction)(handleClean, onClean),\n cleanable: cleanable && !disabled,\n disabled: disabled,\n as: toggleAs,\n hasValue: hasValidValue,\n active: active,\n placement: placement,\n inputValue: value,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 957,\n columnNumber: 9\n }\n }), selectedElement || locale.placeholder)));\n});\nCheckTreePicker.displayName = 'CheckTreePicker';\nCheckTreePicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes, {\n height: _propTypes.default.number,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n locale: _propTypes.default.any,\n cascade: _propTypes.default.bool,\n countable: _propTypes.default.bool,\n searchable: _propTypes.default.bool,\n virtualized: _propTypes.default.bool,\n searchKeyword: _propTypes.default.string,\n menuAutoWidth: _propTypes.default.bool,\n defaultExpandAll: _propTypes.default.bool,\n containerPadding: _propTypes.default.number,\n disabledItemValues: _propTypes.default.array,\n expandItemValues: _propTypes.default.array,\n defaultExpandItemValues: _propTypes.default.array,\n uncheckableItemValues: _propTypes.default.array,\n onSearch: _propTypes.default.func,\n onExpand: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n renderMenu: _propTypes.default.func,\n renderTreeNode: _propTypes.default.func,\n renderTreeIcon: _propTypes.default.func,\n searchBy: _propTypes.default.func,\n onScroll: _propTypes.default.func\n});\nvar _default = CheckTreePicker;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/CheckTreePicker/CheckTreePicker.tsx?");
6486
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _isUndefined2 = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _cloneDeep2 = _interopRequireDefault(__webpack_require__(/*! lodash/cloneDeep */ \"./node_modules/lodash/cloneDeep.js\"));\nvar _omit2 = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _isFunction2 = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _pick2 = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _isNil2 = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ \"./node_modules/classnames/index.js\"));\nvar _Windowing = __webpack_require__(/*! ../Windowing */ \"./src/Windowing/index.ts\");\nvar _CheckTreeNode = _interopRequireDefault(__webpack_require__(/*! ./CheckTreeNode */ \"./src/CheckTreePicker/CheckTreeNode.tsx\"));\nvar _TreeContext = _interopRequireDefault(__webpack_require__(/*! ../Tree/TreeContext */ \"./src/Tree/TreeContext.ts\"));\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _utils2 = __webpack_require__(/*! ./utils */ \"./src/CheckTreePicker/utils.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/CheckTreePicker/CheckTreePicker.tsx\",\n _this = void 0;\nvar emptyArray = [];\nvar itemSize = function itemSize() {\n return 36;\n};\n\n/**\n * The `CheckTreePicker` component is used for selecting multiple options which are organized in a tree structure.\n *\n * @see https://rsuitejs.com/components/check-tree-picker\n */\nvar CheckTreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\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 style = props.style,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$countable = props.countable,\n countable = _props$countable === void 0 ? true : _props$countable,\n searchBy = props.searchBy,\n toggleAs = props.toggleAs,\n searchKeyword = props.searchKeyword,\n showIndentLine = props.showIndentLine,\n overrideLocale = props.locale,\n _props$cascade = props.cascade,\n cascade = _props$cascade === void 0 ? true : _props$cascade,\n disabled = props.disabled,\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$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n placeholder = props.placeholder,\n controlledValue = props.value,\n _props$defaultValue = props.defaultValue,\n defaultValue = _props$defaultValue === void 0 ? emptyArray : _props$defaultValue,\n _props$defaultExpandA = props.defaultExpandAll,\n defaultExpandAll = _props$defaultExpandA === void 0 ? false : _props$defaultExpandA,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n controlledExpandItemValues = props.expandItemValues,\n _props$defaultExpandI = props.defaultExpandItemValues,\n defaultExpandItemValues = _props$defaultExpandI === void 0 ? emptyArray : _props$defaultExpandI,\n _props$height = props.height,\n height = _props$height === void 0 ? 360 : _props$height,\n _props$menuMaxHeight = props.menuMaxHeight,\n menuMaxHeight = _props$menuMaxHeight === void 0 ? 320 : _props$menuMaxHeight,\n menuStyle = props.menuStyle,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n _props$virtualized = props.virtualized,\n virtualized = _props$virtualized === void 0 ? false : _props$virtualized,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n menuClassName = props.menuClassName,\n _props$menuAutoWidth = props.menuAutoWidth,\n menuAutoWidth = _props$menuAutoWidth === void 0 ? true : _props$menuAutoWidth,\n _props$uncheckableIte = props.uncheckableItemValues,\n uncheckableItemValues = _props$uncheckableIte === void 0 ? emptyArray : _props$uncheckableIte,\n id = props.id,\n listProps = props.listProps,\n renderMenu = props.renderMenu,\n getChildren = props.getChildren,\n renderExtraFooter = props.renderExtraFooter,\n onEntered = props.onEntered,\n onChange = props.onChange,\n onClean = props.onClean,\n onClose = props.onClose,\n onExited = props.onExited,\n onSearch = props.onSearch,\n onSelect = props.onSelect,\n onSelectItem = props.onSelectItem,\n onOpen = props.onOpen,\n onScroll = props.onScroll,\n onExpand = props.onExpand,\n renderValue = props.renderValue,\n renderTreeIcon = props.renderTreeIcon,\n renderTreeNode = props.renderTreeNode,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"data\", \"style\", \"appearance\", \"cleanable\", \"countable\", \"searchBy\", \"toggleAs\", \"searchKeyword\", \"showIndentLine\", \"locale\", \"cascade\", \"disabled\", \"valueKey\", \"labelKey\", \"placement\", \"childrenKey\", \"placeholder\", \"value\", \"defaultValue\", \"defaultExpandAll\", \"disabledItemValues\", \"expandItemValues\", \"defaultExpandItemValues\", \"height\", \"menuMaxHeight\", \"menuStyle\", \"searchable\", \"virtualized\", \"className\", \"classPrefix\", \"menuClassName\", \"menuAutoWidth\", \"uncheckableItemValues\", \"id\", \"listProps\", \"renderMenu\", \"getChildren\", \"renderExtraFooter\", \"onEntered\", \"onChange\", \"onClean\", \"onClose\", \"onExited\", \"onSearch\", \"onSelect\", \"onSelectItem\", \"onOpen\", \"onScroll\", \"onExpand\", \"renderValue\", \"renderTreeIcon\", \"renderTreeNode\"]);\n var _useContext = (0, _react.useContext)(_TreeContext.default),\n inline = _useContext.inline;\n var _usePickerRef = (0, _Picker.usePickerRef)(ref, {\n inline: inline\n }),\n trigger = _usePickerRef.trigger,\n root = _usePickerRef.root,\n target = _usePickerRef.target,\n overlay = _usePickerRef.overlay,\n list = _usePickerRef.list,\n searchInput = _usePickerRef.searchInput,\n treeView = _usePickerRef.treeView;\n var _useCustom = (0, _utils.useCustom)('Picker', overrideLocale),\n rtl = _useCustom.rtl,\n locale = _useCustom.locale;\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n var _useState2 = (0, _react.useState)(null),\n activeNode = _useState2[0],\n setActiveNode = _useState2[1];\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var _useClassNames2 = (0, _utils.useClassNames)('check-tree'),\n checkTreePrefix = _useClassNames2.prefix,\n withCheckTreeClassPrefix = _useClassNames2.withClassPrefix;\n var _useControlled = (0, _utils.useControlled)(controlledValue, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1],\n isControlled = _useControlled[2];\n var _useGetTreeNodeChildr = (0, _treeUtils.useGetTreeNodeChildren)(data, valueKey, childrenKey),\n treeData = _useGetTreeNodeChildr.data,\n setTreeData = _useGetTreeNodeChildr.setData,\n loadingNodeValues = _useGetTreeNodeChildr.loadingNodeValues,\n loadChildren = _useGetTreeNodeChildr.loadChildren;\n var _useControlled2 = (0, _utils.useControlled)(controlledExpandItemValues, (0, _treeUtils.getDefaultExpandItemValues)(treeData, {\n defaultExpandAll: defaultExpandAll,\n valueKey: valueKey,\n childrenKey: childrenKey,\n defaultExpandItemValues: defaultExpandItemValues\n })),\n expandItemValues = _useControlled2[0],\n setExpandItemValues = _useControlled2[1];\n var _useState3 = (0, _react.useState)(null),\n focusItemValue = _useState3[0],\n setFocusItemValue = _useState3[1];\n var _useFlattenTreeData = (0, _treeUtils.useFlattenTreeData)({\n data: treeData,\n labelKey: labelKey,\n valueKey: valueKey,\n childrenKey: childrenKey,\n uncheckableItemValues: uncheckableItemValues,\n callback: function callback(nodes) {\n // after flattenData, always unSerialize check property value\n unSerializeList({\n nodes: nodes,\n key: 'check',\n value: value,\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n forceUpdate();\n }\n }),\n flattenNodes = _useFlattenTreeData.flattenNodes,\n forceUpdate = _useFlattenTreeData.forceUpdate,\n formatVirtualizedTreeData = _useFlattenTreeData.formatVirtualizedTreeData,\n serializeListOnlyParent = _useFlattenTreeData.serializeListOnlyParent,\n unSerializeList = _useFlattenTreeData.unSerializeList;\n var _useTreeSearch = (0, _treeUtils.useTreeSearch)({\n labelKey: labelKey,\n childrenKey: childrenKey,\n searchKeyword: searchKeyword,\n data: treeData,\n searchBy: searchBy,\n callback: function callback(searchKeyword, _filterData, event) {\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);\n }\n }),\n filteredData = _useTreeSearch.filteredData,\n searchKeywordState = _useTreeSearch.searchKeywordState,\n setSearchKeyword = _useTreeSearch.setSearchKeyword,\n handleSearch = _useTreeSearch.handleSearch,\n setFilteredData = _useTreeSearch.setFilteredData;\n var _useTreeNodeRefs = (0, _treeUtils.useTreeNodeRefs)(),\n treeNodesRefs = _useTreeNodeRefs.treeNodesRefs,\n saveTreeNodeRef = _useTreeNodeRefs.saveTreeNodeRef;\n /**\n * get formatted nodes for render tree\n * @params render - renderNode function. only used when virtualized setting false\n */\n var getFormattedNodes = function getFormattedNodes(render) {\n if (virtualized) {\n return formatVirtualizedTreeData(flattenNodes, filteredData, expandItemValues, {\n cascade: cascade,\n searchKeyword: searchKeywordState\n }).filter(function (item) {\n return item.visible;\n });\n }\n return (0, _utils2.getFormattedTree)(flattenNodes, filteredData, {\n childrenKey: childrenKey,\n cascade: cascade\n }).map(function (node) {\n return render === null || render === void 0 ? void 0 : render(node, 1);\n });\n };\n var getTreeNodeProps = function getTreeNodeProps(node, layer) {\n return {\n as: Component,\n rtl: rtl,\n value: node[valueKey],\n label: node[labelKey],\n layer: layer,\n focus: focusItemValue === node[valueKey],\n expand: node.expand,\n visible: node.visible,\n loading: loadingNodeValues.some(function (item) {\n return item === node[valueKey];\n }),\n disabled: (0, _utils2.getDisabledState)(flattenNodes, node, {\n disabledItemValues: disabledItemValues,\n valueKey: valueKey\n }),\n nodeData: node,\n checkState: node.checkState,\n uncheckable: (0, _utils2.isNodeUncheckable)(node, {\n uncheckableItemValues: uncheckableItemValues,\n valueKey: valueKey\n }),\n allUncheckable: (0, _utils2.isAllSiblingNodeUncheckable)(node, flattenNodes, uncheckableItemValues, valueKey),\n onSelect: handleSelect,\n onExpand: handleExpand,\n renderTreeNode: renderTreeNode,\n renderTreeIcon: renderTreeIcon\n };\n };\n var focusActiveNode = function focusActiveNode() {\n if (list.current) {\n (0, _treeUtils.focusToActiveTreeNode)({\n list: list.current,\n valueKey: valueKey,\n selector: \".\" + checkTreePrefix('node-active'),\n activeNode: activeNode,\n virtualized: virtualized,\n container: treeView.current,\n formattedNodes: getFormattedNodes()\n });\n }\n };\n (0, _react.useEffect)(function () {\n setValue((0, _utils2.getCheckTreePickerDefaultValue)(value, uncheckableItemValues));\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n (0, _react.useEffect)(function () {\n setFilteredData(data, searchKeywordState);\n setTreeData(data);\n }, [data, searchKeywordState, setFilteredData, setTreeData]);\n (0, _react.useEffect)(function () {\n setFilteredData(treeData, searchKeywordState);\n }, [treeData, searchKeywordState, setFilteredData]);\n (0, _react.useEffect)(function () {\n if (Array.isArray(controlledExpandItemValues)) {\n setExpandItemValues(controlledExpandItemValues);\n }\n }, [controlledExpandItemValues, setExpandItemValues]);\n (0, _react.useEffect)(function () {\n setSearchKeyword(searchKeyword !== null && searchKeyword !== void 0 ? searchKeyword : '');\n }, [searchKeyword, setSearchKeyword]);\n (0, _react.useEffect)(function () {\n unSerializeList({\n nodes: flattenNodes,\n key: 'check',\n value: value,\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n forceUpdate();\n }, [cascade, value, uncheckableItemValues, unSerializeList, flattenNodes, forceUpdate]);\n var toggleUpChecked = (0, _utils.useEventCallback)(function (nodes, node, checked) {\n var currentNode = node.refKey ? nodes[node.refKey] : null;\n if (cascade && currentNode) {\n if (!checked) {\n currentNode.check = checked;\n currentNode.checkAll = checked;\n } else {\n if ((0, _utils2.isEveryChildChecked)(nodes, currentNode)) {\n currentNode.check = true;\n currentNode.checkAll = true;\n } else {\n currentNode.check = false;\n currentNode.checkAll = false;\n }\n }\n if (currentNode.parent) {\n toggleUpChecked(nodes, currentNode.parent, checked);\n }\n }\n });\n var toggleDownChecked = (0, _utils.useEventCallback)(function (nodes, node, isChecked) {\n var currentNode = node.refKey ? nodes[node.refKey] : null;\n if (!currentNode) {\n return;\n }\n currentNode.check = isChecked;\n if (!currentNode[childrenKey] || !currentNode[childrenKey].length || !cascade) {\n currentNode.checkAll = false;\n } else {\n currentNode.checkAll = isChecked;\n currentNode[childrenKey].forEach(function (child) {\n toggleDownChecked(nodes, child, isChecked);\n });\n }\n });\n var toggleChecked = (0, _utils.useEventCallback)(function (node, isChecked) {\n var nodes = (0, _cloneDeep2.default)(flattenNodes);\n toggleDownChecked(nodes, node, isChecked);\n node.parent && toggleUpChecked(nodes, node.parent, isChecked);\n var values = serializeListOnlyParent(nodes, 'check');\n // filter uncheckableItemValues\n return values.filter(function (v) {\n return !uncheckableItemValues.includes(v);\n });\n });\n\n // TODO-Doma\n // Replace `getKeyParentMap` with `getParentMap`\n var itemParentMap = (0, _react.useMemo)(function () {\n return (0, _treeUtils.getKeyParentMap)(data, function (node) {\n return node[valueKey];\n }, function (node) {\n return node[childrenKey];\n });\n }, [childrenKey, data, valueKey]);\n var handleSelect = (0, _utils.useEventCallback)(function (node, event) {\n var currentNode = node.refKey ? flattenNodes[node.refKey] : null;\n if (!node || !currentNode) {\n return;\n }\n var selectedValues = toggleChecked(node, !currentNode.check);\n if (!isControlled) {\n unSerializeList({\n nodes: flattenNodes,\n key: 'check',\n value: selectedValues,\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n setValue(selectedValues);\n }\n setActiveNode(node);\n setFocusItemValue(node[valueKey]);\n onChange === null || onChange === void 0 ? void 0 : onChange(selectedValues, event);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, selectedValues, event);\n onSelectItem === null || onSelectItem === void 0 ? void 0 : onSelectItem(node, (0, _treeUtils.getPathTowardsItem)(node, function (item) {\n return itemParentMap.get(item[valueKey]);\n }));\n });\n var handleOpen = (0, _utils.useEventCallback)(function () {\n var _trigger$current, _trigger$current$open;\n (_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : (_trigger$current$open = _trigger$current.open) === null || _trigger$current$open === void 0 ? void 0 : _trigger$current$open.call(_trigger$current);\n setFocusItemValue(activeNode === null || activeNode === void 0 ? void 0 : activeNode[valueKey]);\n focusActiveNode();\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n });\n var handleClose = (0, _utils.useEventCallback)(function () {\n var _trigger$current2, _trigger$current2$clo, _target$current;\n (_trigger$current2 = trigger.current) === null || _trigger$current2 === void 0 ? void 0 : (_trigger$current2$clo = _trigger$current2.close) === null || _trigger$current2$clo === void 0 ? void 0 : _trigger$current2$clo.call(_trigger$current2);\n setSearchKeyword('');\n onClose === null || onClose === void 0 ? void 0 : onClose();\n setFocusItemValue(null);\n setActive(false);\n\n /**\n * when using keyboard toggle picker, should refocus on PickerToggle Component after close picker menu\n */\n (_target$current = target.current) === null || _target$current === void 0 ? void 0 : _target$current.focus();\n });\n var handleExpand = (0, _utils.useEventCallback)(function (node) {\n var nextExpandItemValues = (0, _treeUtils.toggleExpand)({\n node: node,\n isExpand: !node.expand,\n expandItemValues: expandItemValues,\n valueKey: valueKey\n });\n setExpandItemValues(nextExpandItemValues);\n onExpand === null || onExpand === void 0 ? void 0 : onExpand(nextExpandItemValues, node, (0, _Picker.createConcatChildrenFunction)(node, node[valueKey], {\n valueKey: valueKey,\n childrenKey: childrenKey\n }));\n if ((0, _isFunction2.default)(getChildren) && !node.expand && Array.isArray(node[childrenKey]) && node[childrenKey].length === 0) {\n loadChildren(node, getChildren);\n }\n });\n var handleClean = (0, _utils.useEventCallback)(function (event) {\n var target = event.target;\n // exclude searchbox\n if (target.matches('input[role=\"searchbox\"]') || disabled || !cleanable) {\n return;\n }\n setActiveNode(null);\n setFocusItemValue(null);\n if (!isControlled) {\n setValue([]);\n unSerializeList({\n nodes: flattenNodes,\n key: 'check',\n value: [],\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n }\n onChange === null || onChange === void 0 ? void 0 : onChange([], event);\n });\n var handleFocusItem = (0, _utils.useEventCallback)(function (key) {\n var focusableItems = (0, _treeUtils.getFocusableItems)(filteredData, {\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n childrenKey: childrenKey,\n expandItemValues: expandItemValues\n }, (0, _treeUtils.isSearching)(searchKeywordState));\n var selector = \".\" + checkTreePrefix('node-label');\n var focusProps = {\n focusItemValue: focusItemValue,\n focusableItems: focusableItems,\n treeNodesRefs: treeNodesRefs,\n selector: selector,\n valueKey: valueKey,\n callback: function callback(nextFocusItemValue) {\n setFocusItemValue(nextFocusItemValue);\n }\n };\n if (key === _utils.KEY_VALUES.DOWN) {\n (0, _treeUtils.focusNextItem)(focusProps);\n return;\n }\n if (key === _utils.KEY_VALUES.UP) {\n (0, _treeUtils.focusPreviousItem)(focusProps);\n }\n });\n var handleLeftArrow = (0, _utils.useEventCallback)(function () {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var focusItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n (0, _treeUtils.leftArrowHandler)({\n focusItem: focusItem,\n expand: expandItemValues.includes(focusItem === null || focusItem === void 0 ? void 0 : focusItem[valueKey]),\n onExpand: handleExpand,\n childrenKey: childrenKey,\n onFocusItem: function onFocusItem() {\n var _focusItem$parent, _focusItem$parent2;\n setFocusItemValue(focusItem === null || focusItem === void 0 ? void 0 : (_focusItem$parent = focusItem.parent) === null || _focusItem$parent === void 0 ? void 0 : _focusItem$parent[valueKey]);\n (0, _treeUtils.focusTreeNode)(focusItem === null || focusItem === void 0 ? void 0 : (_focusItem$parent2 = focusItem.parent) === null || _focusItem$parent2 === void 0 ? void 0 : _focusItem$parent2.refKey, treeNodesRefs, \".\" + checkTreePrefix('node-label'));\n }\n });\n });\n var handleRightArrow = (0, _utils.useEventCallback)(function () {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var focusItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n (0, _treeUtils.rightArrowHandler)({\n focusItem: focusItem,\n expand: expandItemValues.includes(focusItem === null || focusItem === void 0 ? void 0 : focusItem[valueKey]),\n childrenKey: childrenKey,\n onExpand: handleExpand,\n onFocusItem: function onFocusItem() {\n handleFocusItem(_utils.KEY_VALUES.DOWN);\n }\n });\n });\n var selectActiveItem = function selectActiveItem(event) {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var activeItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n if (!(0, _utils2.isNodeUncheckable)(activeItem, {\n uncheckableItemValues: uncheckableItemValues,\n valueKey: valueKey\n }) && activeItem !== null) {\n handleSelect(activeItem, event);\n }\n };\n var onPickerKeydown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({\n toggle: !focusItemValue || !active,\n trigger: trigger,\n target: target,\n overlay: overlay,\n searchInput: searchInput,\n active: active,\n onExit: handleClean,\n onClose: handleClose,\n onMenuKeyDown: function onMenuKeyDown(event) {\n (0, _Picker.onMenuKeyDown)(event, {\n down: function down() {\n return handleFocusItem(_utils.KEY_VALUES.DOWN);\n },\n up: function up() {\n return handleFocusItem(_utils.KEY_VALUES.UP);\n },\n left: rtl ? handleRightArrow : handleLeftArrow,\n right: rtl ? handleLeftArrow : handleRightArrow,\n enter: selectActiveItem,\n del: handleClean\n });\n }\n }, rest));\n var handleTreeKeydown = (0, _utils.useEventCallback)(function (event) {\n if (!treeView.current) {\n return;\n }\n (0, _Picker.onMenuKeyDown)(event, {\n down: function down() {\n return handleFocusItem(_utils.KEY_VALUES.DOWN);\n },\n up: function up() {\n return handleFocusItem(_utils.KEY_VALUES.UP);\n },\n left: rtl ? handleRightArrow : handleLeftArrow,\n right: rtl ? handleLeftArrow : handleRightArrow,\n enter: selectActiveItem\n });\n });\n var renderNode = function renderNode(node, layer) {\n var visible = node.visible,\n refKey = node.refKey; // when searching, all nodes should be expand\n var expand = (0, _treeUtils.getExpandWhenSearching)(searchKeywordState, expandItemValues.includes(node[valueKey]));\n if (!visible) {\n return null;\n }\n var children = node[childrenKey];\n var visibleChildren = (0, _isUndefined2.default)(searchKeywordState) || searchKeywordState.length === 0 ? !!children : (0, _treeUtils.hasVisibleChildren)(node, childrenKey);\n var nodeProps = (0, _extends2.default)({}, getTreeNodeProps((0, _extends2.default)({}, node, {\n /**\n * spread operator don't copy unenumerable properties\n * so we need to copy them manually\n */\n parent: node.parent,\n expand: expand\n }), layer), {\n hasChildren: visibleChildren\n });\n if (nodeProps.hasChildren) {\n var _merge;\n layer += 1;\n var openClass = checkTreePrefix('open');\n var childrenClass = merge(checkTreePrefix('node-children'), (_merge = {}, _merge[openClass] = expand && visibleChildren, _merge));\n var nodes = children || [];\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: childrenClass,\n key: node[valueKey],\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 651,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_CheckTreeNode.default, (0, _extends2.default)({}, nodeProps, {\n ref: function ref(_ref) {\n return saveTreeNodeRef(_ref, refKey);\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 652,\n columnNumber: 11\n }\n })), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: checkTreePrefix('group'),\n role: \"group\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 653,\n columnNumber: 11\n }\n }, nodes.map(function (child) {\n return renderNode(child, layer);\n }), showIndentLine && /*#__PURE__*/_react.default.createElement(\"span\", {\n className: checkTreePrefix('indent-line'),\n style: (0, _treeUtils.getTreeNodeIndent)(rtl, layer - 1, true),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 656,\n columnNumber: 15\n }\n })));\n }\n return /*#__PURE__*/_react.default.createElement(_CheckTreeNode.default, (0, _extends2.default)({\n key: node[valueKey],\n ref: function ref(_ref2) {\n return saveTreeNodeRef(_ref2, refKey);\n }\n }, nodeProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 667,\n columnNumber: 7\n }\n }));\n };\n var renderVirtualListNode = function renderVirtualListNode(_ref3) {\n var index = _ref3.index,\n style = _ref3.style,\n data = _ref3.data;\n var node = data[index];\n var layer = node.layer,\n refKey = node.refKey,\n visible = node.visible;\n var expand = (0, _treeUtils.getExpandWhenSearching)(searchKeywordState, expandItemValues.includes(node[valueKey]));\n var nodeProps = (0, _extends2.default)({}, getTreeNodeProps((0, _extends2.default)({}, node, {\n /**\n * spread operator don't copy unenumerable properties\n * so we need to copy them manually\n */\n parent: node.parent,\n expand: expand\n }), layer), {\n hasChildren: node.hasChildren\n });\n return visible && /*#__PURE__*/_react.default.createElement(_CheckTreeNode.default, (0, _extends2.default)({\n style: style,\n ref: function ref(_ref4) {\n return saveTreeNodeRef(_ref4, refKey);\n }\n }, nodeProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 700,\n columnNumber: 9\n }\n }));\n };\n var renderCheckTree = function renderCheckTree() {\n var _withCheckTreeClassPr, _merge2;\n var classes = withCheckTreeClassPrefix((_withCheckTreeClassPr = {}, _withCheckTreeClassPr[className !== null && className !== void 0 ? className : ''] = inline, _withCheckTreeClassPr['without-children'] = !(0, _utils2.isSomeNodeHasChildren)(data, childrenKey), _withCheckTreeClassPr.virtualized = virtualized, _withCheckTreeClassPr));\n var formattedNodes = getFormattedNodes(renderNode);\n if (!formattedNodes.some(function (v) {\n return v !== null;\n })) {\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('none'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 715,\n columnNumber: 14\n }\n }, locale.noResultsText);\n }\n var treeNodesClass = merge(checkTreePrefix('root'), (_merge2 = {}, _merge2[checkTreePrefix('all-uncheckable')] = (0, _utils2.isEveryFirstLevelNodeUncheckable)(flattenNodes, uncheckableItemValues, valueKey), _merge2));\n return /*#__PURE__*/_react.default.createElement(_Picker.TreeView, {\n ref: inline ? root : treeView,\n multiselectable: true,\n treeRootClassName: treeNodesClass,\n className: classes,\n style: inline ? (0, _extends2.default)({\n height: height\n }, style) : {},\n onScroll: onScroll,\n onKeyDown: inline ? handleTreeKeydown : undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 727,\n columnNumber: 7\n }\n }, virtualized ? /*#__PURE__*/_react.default.createElement(_Windowing.AutoSizer, {\n defaultHeight: inline ? height : menuMaxHeight,\n style: {\n width: 'auto',\n height: 'auto'\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 737,\n columnNumber: 11\n }\n }, function (_ref5) {\n var height = _ref5.height;\n return /*#__PURE__*/_react.default.createElement(_Windowing.List, (0, _extends2.default)({\n ref: list,\n height: height,\n itemSize: itemSize,\n itemCount: formattedNodes.length,\n itemData: formattedNodes\n }, listProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 742,\n columnNumber: 15\n }\n }), renderVirtualListNode);\n }) : formattedNodes);\n };\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = (0, _classnames.default)(className, menuClassName, prefix('check-tree-menu'));\n var mergedMenuStyle = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerPopup, {\n autoWidth: menuAutoWidth,\n className: classes,\n style: mergedMenuStyle,\n ref: (0, _utils.mergeRefs)(overlay, speakerRef),\n onKeyDown: onPickerKeydown,\n target: trigger,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 767,\n columnNumber: 7\n }\n }, searchable ? /*#__PURE__*/_react.default.createElement(_Picker.SearchBar, {\n placeholder: locale.searchPlaceholder,\n onChange: handleSearch,\n value: searchKeywordState,\n inputRef: searchInput,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 776,\n columnNumber: 11\n }\n }) : null, renderMenu ? renderMenu(renderCheckTree()) : renderCheckTree(), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n var selectedItems = (0, _react.useMemo)(function () {\n return (0, _utils2.getSelectedItems)(flattenNodes, value);\n }, [flattenNodes, value]);\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 var hasValidValue = selectedItems.length > 0 || value.length > 0 && (0, _isFunction2.default)(renderValue);\n var selectedElement = placeholder;\n if (hasValidValue) {\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: 799,\n columnNumber: 7\n }\n });\n if ((0, _isFunction2.default)(renderValue)) {\n selectedElement = renderValue(value, selectedItems, selectedElement);\n if ((0, _isNil2.default)(selectedElement)) {\n hasValidValue = false;\n }\n }\n }\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n appearance: appearance,\n countable: countable,\n cleanable: cleanable,\n disabled: disabled,\n hasValue: hasValidValue,\n name: 'check-tree'\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n if (inline) {\n return renderCheckTree();\n }\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n id: id,\n popupType: \"tree\",\n multiple: true,\n pickerProps: (0, _pick2.default)(props, _Picker.pickTriggerPropKeys),\n ref: trigger,\n placement: placement,\n onEnter: handleOpen,\n onEntered: onEntered,\n onExited: (0, _utils.createChainedFunction)(handleClose, onExited),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 834,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n ref: root,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 846,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit2.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n ref: target,\n appearance: appearance,\n onKeyDown: onPickerKeydown,\n onClean: (0, _utils.createChainedFunction)(handleClean, onClean),\n cleanable: cleanable && !disabled,\n disabled: disabled,\n as: toggleAs,\n hasValue: hasValidValue,\n active: active,\n placement: placement,\n inputValue: value,\n focusItemValue: focusItemValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 847,\n columnNumber: 9\n }\n }), selectedElement || locale.placeholder)));\n});\nCheckTreePicker.displayName = 'CheckTreePicker';\nCheckTreePicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes, {\n height: _propTypes.default.number,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n locale: _propTypes.default.any,\n cascade: _propTypes.default.bool,\n countable: _propTypes.default.bool,\n searchable: _propTypes.default.bool,\n virtualized: _propTypes.default.bool,\n searchKeyword: _propTypes.default.string,\n menuAutoWidth: _propTypes.default.bool,\n defaultExpandAll: _propTypes.default.bool,\n containerPadding: _propTypes.default.number,\n disabledItemValues: _propTypes.default.array,\n expandItemValues: _propTypes.default.array,\n defaultExpandItemValues: _propTypes.default.array,\n uncheckableItemValues: _propTypes.default.array,\n onSearch: _propTypes.default.func,\n onExpand: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n renderMenu: _propTypes.default.func,\n renderTreeNode: _propTypes.default.func,\n renderTreeIcon: _propTypes.default.func,\n searchBy: _propTypes.default.func,\n onScroll: _propTypes.default.func\n});\nvar _default = CheckTreePicker;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/CheckTreePicker/CheckTreePicker.tsx?");
6476
6487
 
6477
6488
  /***/ }),
6478
6489
 
@@ -6780,29 +6791,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
6780
6791
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6781
6792
 
6782
6793
  "use strict";
6783
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _mapValues = _interopRequireDefault(__webpack_require__(/*! lodash/mapValues */ \"./node_modules/lodash/mapValues.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _delay = _interopRequireDefault(__webpack_require__(/*! lodash/delay */ \"./node_modules/lodash/delay.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _Calendar = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Calendar */ \"./node_modules/@rsuite/icons/legacy/Calendar.js\"));\nvar _ClockO = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/ClockO */ \"./node_modules/@rsuite/icons/legacy/ClockO.js\"));\nvar _CalendarContainer = _interopRequireDefault(__webpack_require__(/*! ../Calendar/CalendarContainer */ \"./src/Calendar/CalendarContainer.tsx\"));\nvar _useCalendarDate2 = _interopRequireDefault(__webpack_require__(/*! ../Calendar/useCalendarDate */ \"./src/Calendar/useCalendarDate.ts\"));\nvar _MonthDropdown = __webpack_require__(/*! ../Calendar/MonthDropdown */ \"./src/Calendar/MonthDropdown.tsx\");\nvar _Toolbar = _interopRequireDefault(__webpack_require__(/*! ./Toolbar */ \"./src/DatePicker/Toolbar.tsx\"));\nvar _Stack = _interopRequireDefault(__webpack_require__(/*! ../Stack */ \"./src/Stack/index.tsx\"));\nvar _PredefinedRanges = _interopRequireDefault(__webpack_require__(/*! ./PredefinedRanges */ \"./src/DatePicker/PredefinedRanges.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _dateUtils = __webpack_require__(/*! ../utils/dateUtils */ \"./src/utils/dateUtils.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _usePickerRef2 = _interopRequireDefault(__webpack_require__(/*! ../Picker/usePickerRef */ \"./src/Picker/usePickerRef.ts\"));\nvar _DateInput = _interopRequireDefault(__webpack_require__(/*! ../DateInput */ \"./src/DateInput/index.tsx\"));\nvar _InputGroup = _interopRequireDefault(__webpack_require__(/*! ../InputGroup */ \"./src/InputGroup/index.tsx\"));\nvar _PickerLabel = _interopRequireDefault(__webpack_require__(/*! ./PickerLabel */ \"./src/DatePicker/PickerLabel.tsx\"));\nvar _PickerIndicator = _interopRequireDefault(__webpack_require__(/*! ./PickerIndicator */ \"./src/DatePicker/PickerIndicator.tsx\"));\nvar _OverlayTrigger = __webpack_require__(/*! ../Overlay/OverlayTrigger */ \"./src/Overlay/OverlayTrigger.tsx\");\nvar _deprecatePropType = __webpack_require__(/*! ../utils/deprecatePropType */ \"./src/utils/deprecatePropType.ts\");\nvar _utils2 = __webpack_require__(/*! ../Calendar/utils */ \"./src/Calendar/utils.ts\");\nvar _utils3 = __webpack_require__(/*! ./utils */ \"./src/DatePicker/utils.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/DatePicker/DatePicker.tsx\",\n _this = void 0,\n _templateObject;\n/**\n * A date picker allows users to select a date from a calendar.\n *\n * @see https://rsuitejs.com/components/date-picker\n */\nvar DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _merge;\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n calendarDefaultDate = props.calendarDefaultDate,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$editable = props.editable,\n editable = _props$editable === void 0 ? true : _props$editable,\n defaultValue = props.defaultValue,\n disabled = props.disabled,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n _props$format = props.format,\n formatStr = _props$format === void 0 ? 'yyyy-MM-dd' : _props$format,\n idProp = props.id,\n isoWeek = props.isoWeek,\n _props$limitEndYear = props.limitEndYear,\n limitEndYear = _props$limitEndYear === void 0 ? 1000 : _props$limitEndYear,\n limitStartYear = props.limitStartYear,\n overrideLocale = props.locale,\n loading = props.loading,\n label = props.label,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n oneTap = props.oneTap,\n _props$placeholder = props.placeholder,\n placeholder = _props$placeholder === void 0 ? '' : _props$placeholder,\n ranges = props.ranges,\n valueProp = props.value,\n showMeridian = props.showMeridian,\n showWeekNumbers = props.showWeekNumbers,\n style = props.style,\n size = props.size,\n caretAsProp = props.caretAs,\n DEPRECATED_disabledDate = props.disabledDate,\n DEPRECATED_disabledHours = props.disabledHours,\n DEPRECATED_disabledMinutes = props.disabledMinutes,\n DEPRECATED_disabledSeconds = props.disabledSeconds,\n shouldDisableDate = props.shouldDisableDate,\n shouldDisableHour = props.shouldDisableHour,\n shouldDisableMinute = props.shouldDisableMinute,\n shouldDisableSecond = props.shouldDisableSecond,\n onChange = props.onChange,\n onChangeCalendarDate = props.onChangeCalendarDate,\n onClean = props.onClean,\n onClose = props.onClose,\n onEntered = props.onEntered,\n onExited = props.onExited,\n onNextMonth = props.onNextMonth,\n onOk = props.onOk,\n onOpen = props.onOpen,\n onPrevMonth = props.onPrevMonth,\n onSelect = props.onSelect,\n onToggleMonthDropdown = props.onToggleMonthDropdown,\n onToggleTimeDropdown = props.onToggleTimeDropdown,\n onShortcutClick = props.onShortcutClick,\n restProps = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"className\", \"classPrefix\", \"calendarDefaultDate\", \"cleanable\", \"editable\", \"defaultValue\", \"disabled\", \"readOnly\", \"plaintext\", \"format\", \"id\", \"isoWeek\", \"limitEndYear\", \"limitStartYear\", \"locale\", \"loading\", \"label\", \"menuClassName\", \"menuStyle\", \"appearance\", \"placement\", \"oneTap\", \"placeholder\", \"ranges\", \"value\", \"showMeridian\", \"showWeekNumbers\", \"style\", \"size\", \"caretAs\", \"disabledDate\", \"disabledHours\", \"disabledMinutes\", \"disabledSeconds\", \"shouldDisableDate\", \"shouldDisableHour\", \"shouldDisableMinute\", \"shouldDisableSecond\", \"onChange\", \"onChangeCalendarDate\", \"onClean\", \"onClose\", \"onEntered\", \"onExited\", \"onNextMonth\", \"onOk\", \"onOpen\", \"onPrevMonth\", \"onSelect\", \"onToggleMonthDropdown\", \"onToggleTimeDropdown\", \"onShortcutClick\"]);\n var id = (0, _utils.useUniqueId)(classPrefix + \"-\", idProp);\n var _usePickerRef = (0, _usePickerRef2.default)(ref),\n trigger = _usePickerRef.trigger,\n root = _usePickerRef.root,\n target = _usePickerRef.target,\n overlay = _usePickerRef.overlay;\n var _useCustom = (0, _utils.useCustom)('DatePicker', overrideLocale),\n locale = _useCustom.locale,\n formatDate = _useCustom.formatDate;\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1];\n var _useCalendarDate = (0, _useCalendarDate2.default)(value, calendarDefaultDate),\n calendarDate = _useCalendarDate.calendarDate,\n setCalendarDate = _useCalendarDate.setCalendarDate,\n resetCalendarDate = _useCalendarDate.resetCalendarDate;\n var _useState = (0, _react.useState)(false),\n showMonthDropdown = _useState[0],\n setShowMonthDropdown = _useState[1]; // Show only the calendar month panel. formatStr = 'yyyy-MM'\n var onlyShowMonth = (0, _dateUtils.shouldRenderMonth)(formatStr) && !(0, _dateUtils.shouldRenderDate)(formatStr);\n var showMonth = onlyShowMonth || showMonthDropdown;\n var isDateDisabled = function isDateDisabled(date) {\n if (typeof shouldDisableDate === 'function') {\n return shouldDisableDate(date);\n }\n if (typeof DEPRECATED_disabledDate === 'function') {\n return DEPRECATED_disabledDate(date);\n }\n return false;\n };\n var isErrorValue = function isErrorValue(value) {\n if (!(0, _dateUtils.isValid)(value)) {\n return true;\n } else if (value && isDateDisabled(value)) {\n return true;\n }\n return false;\n };\n\n /**\n * Switch to the callback triggered after the next month.\n */\n var handleMoveForward = (0, _utils.useEventCallback)(function (nextPageDate) {\n setCalendarDate(nextPageDate);\n onNextMonth === null || onNextMonth === void 0 ? void 0 : onNextMonth(nextPageDate);\n onChangeCalendarDate === null || onChangeCalendarDate === void 0 ? void 0 : onChangeCalendarDate(nextPageDate);\n });\n\n /**\n * Switch to the callback triggered after the previous month.\n */\n var handleMoveBackward = (0, _utils.useEventCallback)(function (nextPageDate) {\n setCalendarDate(nextPageDate);\n onPrevMonth === null || onPrevMonth === void 0 ? void 0 : onPrevMonth(nextPageDate);\n onChangeCalendarDate === null || onChangeCalendarDate === void 0 ? void 0 : onChangeCalendarDate(nextPageDate);\n });\n\n /**\n * The callback triggered when the date changes.\n */\n var handleDateChange = (0, _utils.useEventCallback)(function (nextValue, event) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(nextValue, event);\n onChangeCalendarDate === null || onChangeCalendarDate === void 0 ? void 0 : onChangeCalendarDate(nextValue, event);\n });\n\n /**\n * A callback triggered when the time on the calendar changes.\n */\n var handleChangeTime = (0, _utils.useEventCallback)(function (nextPageTime) {\n setCalendarDate(nextPageTime);\n handleDateChange(nextPageTime);\n });\n var handleClose = (0, _utils.useEventCallback)(function () {\n var _trigger$current, _trigger$current$clos;\n (_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : (_trigger$current$clos = _trigger$current.close) === null || _trigger$current$clos === void 0 ? void 0 : _trigger$current$clos.call(_trigger$current);\n });\n\n /**\n * The callback triggered when PM/AM is switched.\n */\n var handleToggleMeridian = (0, _utils.useEventCallback)(function () {\n var hours = (0, _dateUtils.getHours)(calendarDate);\n var nextHours = hours >= 12 ? hours - 12 : hours + 12;\n var nextDate = (0, _dateUtils.setHours)(calendarDate, nextHours);\n handleChangeTime(nextDate);\n });\n var updateValue = function updateValue(event, nextPageDate, closeOverlay) {\n if (closeOverlay === void 0) {\n closeOverlay = true;\n }\n var nextValue = typeof nextPageDate !== 'undefined' ? nextPageDate : calendarDate;\n setCalendarDate(nextValue || new Date());\n setValue(nextValue);\n if (nextValue !== value) {\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }\n\n // `closeOverlay` default value is `true`\n if (closeOverlay !== false) {\n handleClose();\n }\n };\n\n /**\n * The callback triggered after the date in the shortcut area is clicked.\n */\n var handleShortcutPageDate = (0, _utils.useEventCallback)(function (range, closeOverlay, event) {\n var value = range.value;\n updateValue(event, value, closeOverlay);\n handleDateChange(value, event);\n onShortcutClick === null || onShortcutClick === void 0 ? void 0 : onShortcutClick(range, event);\n });\n\n /**\n * Get the corresponding container based on date selection and month selection\n */\n var getOverlayContainer = function getOverlayContainer() {\n return showMonth ? document.getElementById(id + \"-calendar-month-dropdown\") : document.getElementById(id + \"-calendar-table\");\n };\n\n /**\n * Check whether the date is focusable\n */\n var checkFocusable = function checkFocusable(date) {\n var formatStr = showMonth ? locale.formattedMonthPattern : locale.formattedDayPattern;\n var ariaLabel = (0, _utils2.getAriaLabel)(date, formatStr, formatDate);\n var container = getOverlayContainer();\n var dateElement = container === null || container === void 0 ? void 0 : container.querySelector(\"[aria-label=\\\"\" + ariaLabel + \"\\\"]\");\n if ((dateElement === null || dateElement === void 0 ? void 0 : dateElement.getAttribute('aria-disabled')) === 'true') {\n return false;\n }\n return true;\n };\n\n /**\n * Focus on the currently selected date element\n */\n var focusSelectedDate = function focusSelectedDate() {\n (0, _delay.default)(function () {\n var container = getOverlayContainer();\n var selectedElement = container === null || container === void 0 ? void 0 : container.querySelector('[aria-selected=\"true\"]');\n selectedElement === null || selectedElement === void 0 ? void 0 : selectedElement.focus();\n }, 1);\n };\n\n /**\n * Focus on the input element\n */\n var focusTargetInput = (0, _utils.useEventCallback)(function () {\n (0, _delay.default)(function () {\n var _target$current;\n return (_target$current = target.current) === null || _target$current === void 0 ? void 0 : _target$current.focus();\n }, 1);\n });\n\n /**\n * The callback triggered after clicking the OK button.\n */\n var handleOK = (0, _utils.useEventCallback)(function (event) {\n updateValue(event);\n onOk === null || onOk === void 0 ? void 0 : onOk(calendarDate, event);\n focusTargetInput();\n });\n\n /**\n * Callback after clicking the clear button.\n */\n\n var handleClean = (0, _utils.useEventCallback)(function (event) {\n updateValue(event, null);\n resetCalendarDate(null);\n onClean === null || onClean === void 0 ? void 0 : onClean(event);\n event.stopPropagation();\n });\n var handlePickerOverlayKeyDown = (0, _utils.useEventCallback)(function (event) {\n var delta = 0;\n var step = showMonth ? 6 : 7;\n var changeDateFunc = showMonth ? _dateUtils.addMonths : _dateUtils.addDays;\n (0, _Picker.onMenuKeyDown)(event, {\n down: function down() {\n delta = step;\n },\n up: function up() {\n delta = -step;\n },\n right: function right() {\n delta = 1;\n },\n left: function left() {\n delta = -1;\n },\n enter: function enter() {\n handleOK(event);\n }\n });\n var nextDate = changeDateFunc(calendarDate, delta);\n if (checkFocusable(nextDate)) {\n setCalendarDate(nextDate);\n focusSelectedDate();\n }\n });\n\n /**\n * The callback triggered after the month selection box is opened or closed.\n */\n var handleToggleMonthDropdown = (0, _utils.useEventCallback)(function (toggle) {\n onToggleMonthDropdown === null || onToggleMonthDropdown === void 0 ? void 0 : onToggleMonthDropdown(toggle);\n setShowMonthDropdown(toggle);\n });\n var handleClick = (0, _utils.useEventCallback)(function () {\n if (editable) {\n return;\n }\n focusSelectedDate();\n });\n\n /**\n * Callback after the date is selected.\n */\n var handleSelect = (0, _utils.useEventCallback)(function (nextValue, event, updatableValue) {\n if (updatableValue === void 0) {\n updatableValue = true;\n }\n setCalendarDate(\n // Determine whether the current value contains time, if not, use calendarDate.\n (0, _dateUtils.shouldRenderTime)(formatStr) ? nextValue : (0, _dateUtils.copyTime)({\n from: calendarDate,\n to: nextValue\n }));\n handleDateChange(nextValue);\n if (oneTap && updatableValue) {\n updateValue(event, nextValue);\n focusTargetInput();\n }\n });\n\n /**\n * A callback triggered when the date on the calendar changes.\n */\n var handleChangeMonth = (0, _utils.useEventCallback)(function (nextPageDate, event) {\n setCalendarDate(nextPageDate);\n handleDateChange(nextPageDate);\n focusSelectedDate();\n if (oneTap && onlyShowMonth) {\n updateValue(event, nextPageDate);\n focusTargetInput();\n }\n });\n\n /**\n * Callback after the input box value is changed.\n */\n var handleInputChange = (0, _utils.useEventCallback)(function (value, event) {\n if (!isErrorValue(value)) {\n handleSelect(value, event);\n }\n updateValue(event, value, false);\n });\n var handleInputKeyDown = (0, _utils.useEventCallback)(function (event) {\n (0, _Picker.onMenuKeyDown)(event, {\n esc: handleClose,\n enter: function enter() {\n var _trigger$current2;\n var _ref = ((_trigger$current2 = trigger.current) === null || _trigger$current2 === void 0 ? void 0 : _trigger$current2.getState()) || {},\n open = _ref.open;\n if (open) {\n if ((0, _dateUtils.isValid)(calendarDate) && !isDateDisabled(calendarDate)) {\n updateValue(event);\n focusTargetInput();\n }\n } else {\n var _trigger$current3;\n (_trigger$current3 = trigger.current) === null || _trigger$current3 === void 0 ? void 0 : _trigger$current3.open();\n }\n }\n });\n });\n\n // Check whether the time is within the time range of the shortcut option in the toolbar.\n var disabledToolbarHandle = function disabledToolbarHandle(date) {\n var _DEPRECATED_disabledD;\n var allowDate = (_DEPRECATED_disabledD = DEPRECATED_disabledDate === null || DEPRECATED_disabledDate === void 0 ? void 0 : DEPRECATED_disabledDate(date)) !== null && _DEPRECATED_disabledD !== void 0 ? _DEPRECATED_disabledD : false;\n var allowTime = (0, _dateUtils.disabledTime)(props, date);\n return allowDate || allowTime;\n };\n\n /**\n * Whether \"OK\" button is disabled\n *\n * - If format is date, disable ok button if selected date is disabled\n * - If format is month, disable ok button if all dates in the month of selected date are disabled\n */\n var isOKButtonDisabled = function isOKButtonDisabled(selectedDate) {\n if ((0, _dateUtils.shouldRenderMonth)(formatStr) && !(0, _dateUtils.shouldRenderDate)(formatStr)) {\n return (0, _MonthDropdown.isEveryDateInMonth)(selectedDate.getFullYear(), selectedDate.getMonth(), disabledToolbarHandle);\n }\n return disabledToolbarHandle(selectedDate);\n };\n var calendarProps = (0, _react.useMemo)(function () {\n return (0, _mapValues.default)((0, _pick.default)(props, _dateUtils.calendarOnlyProps), function (disabledOrHiddenTimeFunc) {\n return function (next, date) {\n var _disabledOrHiddenTime;\n return (_disabledOrHiddenTime = disabledOrHiddenTimeFunc === null || disabledOrHiddenTimeFunc === void 0 ? void 0 : disabledOrHiddenTimeFunc(next, date)) !== null && _disabledOrHiddenTime !== void 0 ? _disabledOrHiddenTime : false;\n };\n });\n }, [props]);\n var _splitRanges = (0, _utils3.splitRanges)(ranges),\n sideRanges = _splitRanges.sideRanges,\n bottomRanges = _splitRanges.bottomRanges;\n var renderCalendarOverlay = function renderCalendarOverlay(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = merge(menuClassName, className);\n var styles = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n role: \"dialog\",\n \"aria-labelledby\": label ? id + \"-label\" : undefined,\n tabIndex: -1,\n className: classes,\n ref: (0, _utils.mergeRefs)(overlay, speakerRef),\n style: styles,\n target: trigger,\n onKeyDown: handlePickerOverlayKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 621,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Stack.default, {\n alignItems: \"flex-start\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 631,\n columnNumber: 11\n }\n }, sideRanges.length > 0 && /*#__PURE__*/_react.default.createElement(_PredefinedRanges.default, {\n direction: \"column\",\n spacing: 0,\n className: prefix('date-predefined'),\n ranges: sideRanges,\n calendarDate: calendarDate,\n locale: locale,\n disabledShortcut: disabledToolbarHandle,\n onShortcutClick: handleShortcutPageDate,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 633,\n columnNumber: 15\n }\n }), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_CalendarContainer.default, (0, _extends2.default)({}, calendarProps, {\n targetId: id,\n locale: locale,\n showWeekNumbers: showWeekNumbers,\n showMeridian: showMeridian,\n disabledDate: isDateDisabled,\n disabledHours: shouldDisableHour !== null && shouldDisableHour !== void 0 ? shouldDisableHour : DEPRECATED_disabledHours,\n disabledMinutes: shouldDisableMinute !== null && shouldDisableMinute !== void 0 ? shouldDisableMinute : DEPRECATED_disabledMinutes,\n disabledSeconds: shouldDisableSecond !== null && shouldDisableSecond !== void 0 ? shouldDisableSecond : DEPRECATED_disabledSeconds,\n limitEndYear: limitEndYear,\n limitStartYear: limitStartYear,\n format: formatStr,\n isoWeek: isoWeek,\n calendarDate: calendarDate,\n onMoveForward: handleMoveForward,\n onMoveBackward: handleMoveBackward,\n onSelect: handleSelect,\n onToggleMonthDropdown: handleToggleMonthDropdown,\n onToggleTimeDropdown: onToggleTimeDropdown,\n onChangeMonth: handleChangeMonth,\n onChangeTime: handleChangeTime,\n onToggleMeridian: handleToggleMeridian,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 646,\n columnNumber: 15\n }\n })), /*#__PURE__*/_react.default.createElement(_Toolbar.default, {\n locale: locale,\n ranges: bottomRanges,\n calendarDate: calendarDate,\n disabledOkBtn: isOKButtonDisabled,\n disabledShortcut: disabledToolbarHandle,\n onShortcutClick: handleShortcutPageDate,\n onOk: handleOK,\n hideOkBtn: oneTap,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 670,\n columnNumber: 15\n }\n }))));\n };\n var hasValue = (0, _dateUtils.isValid)(value);\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n name: 'date',\n appearance: appearance,\n hasValue: hasValue,\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n var caretAs = (0, _react.useMemo)(function () {\n if (caretAsProp === null) {\n return null;\n }\n return caretAsProp || ((0, _dateUtils.shouldOnlyRenderTime)(formatStr) ? _ClockO.default : _Calendar.default);\n }, [caretAsProp, formatStr]);\n var handleTriggerClose = (0, _utils.useEventCallback)(function (cause) {\n // Unless overlay is closing on user clicking \"OK\" button,\n // reset the selected date on calendar panel\n if (cause !== _OverlayTrigger.OverlayCloseCause.ImperativeHandle) {\n resetCalendarDate();\n }\n setShowMonthDropdown(false);\n });\n var showCleanButton = cleanable && hasValue && !readOnly;\n var _partitionHTMLProps = (0, _utils.partitionHTMLProps)(restProps, {\n htmlProps: [],\n includeAria: true\n }),\n ariaProps = _partitionHTMLProps[0],\n rest = _partitionHTMLProps[1];\n var invalidValue = value && isErrorValue(value);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n trigger: \"active\",\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: trigger,\n placement: placement,\n onClose: handleTriggerClose,\n onEntered: (0, _utils.createChainedFunction)(onOpen, onEntered),\n onExited: (0, _utils.createChainedFunction)(onClose, onExited),\n speaker: renderCalendarOverlay,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 718,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: merge(className, classes, (_merge = {}, _merge[prefix('error')] = invalidValue, _merge)),\n style: style,\n ref: root,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 728,\n columnNumber: 9\n }\n }, plaintext ? /*#__PURE__*/_react.default.createElement(_DateInput.default, {\n value: value,\n format: formatStr,\n plaintext: plaintext,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 734,\n columnNumber: 13\n }\n }) : /*#__PURE__*/_react.default.createElement(_InputGroup.default, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys, _dateUtils.calendarOnlyProps)), {\n inside: true,\n size: size,\n onClick: handleClick,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 736,\n columnNumber: 13\n }\n }), /*#__PURE__*/_react.default.createElement(_PickerLabel.default, {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"label\"]))),\n id: id + \"-label\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 746,\n columnNumber: 15\n }\n }, label), /*#__PURE__*/_react.default.createElement(_DateInput.default, (0, _extends2.default)({\n \"aria-haspopup\": \"dialog\",\n \"aria-invalid\": invalidValue,\n \"aria-labelledby\": label ? id + \"-label\" : undefined\n }, ariaProps, {\n ref: target,\n id: id,\n value: value,\n format: formatStr,\n placeholder: placeholder ? placeholder : formatStr,\n disabled: disabled,\n onChange: handleInputChange,\n readOnly: readOnly || !editable || loading,\n plaintext: plaintext,\n onKeyDown: handleInputKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 749,\n columnNumber: 15\n }\n })), /*#__PURE__*/_react.default.createElement(_PickerIndicator.default, {\n loading: loading,\n caretAs: caretAs,\n onClose: handleClean,\n showCleanButton: showCleanButton,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 765,\n columnNumber: 15\n }\n }))));\n});\nDatePicker.displayName = 'DatePicker';\nDatePicker.propTypes = (0, _extends2.default)({}, _Picker.pickerPropTypes, {\n calendarDefaultDate: _propTypes.default.instanceOf(Date),\n defaultValue: _propTypes.default.instanceOf(Date),\n disabledDate: (0, _deprecatePropType.deprecatePropTypeNew)(_propTypes.default.func, 'Use \"shouldDisableDate\" property instead.'),\n disabledHours: (0, _deprecatePropType.deprecatePropTypeNew)(_propTypes.default.func, 'Use \"shouldDisableHour\" property instead.'),\n disabledMinutes: (0, _deprecatePropType.deprecatePropTypeNew)(_propTypes.default.func, 'Use \"shouldDisableMinute\" property instead.'),\n disabledSeconds: (0, _deprecatePropType.deprecatePropTypeNew)(_propTypes.default.func, 'Use \"shouldDisableSecond\" property instead.'),\n shouldDisableDate: _propTypes.default.func,\n shouldDisableHour: _propTypes.default.func,\n shouldDisableMinute: _propTypes.default.func,\n shouldDisableSecond: _propTypes.default.func,\n format: _propTypes.default.string,\n hideHours: _propTypes.default.func,\n hideMinutes: _propTypes.default.func,\n hideSeconds: _propTypes.default.func,\n isoWeek: _propTypes.default.bool,\n limitEndYear: _propTypes.default.number,\n limitStartYear: _propTypes.default.number,\n onChange: _propTypes.default.func,\n onChangeCalendarDate: _propTypes.default.func,\n onNextMonth: _propTypes.default.func,\n onOk: _propTypes.default.func,\n onPrevMonth: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onToggleMonthDropdown: _propTypes.default.func,\n onToggleTimeDropdown: _propTypes.default.func,\n oneTap: _propTypes.default.bool,\n panelContainerRef: _propTypes.default.any,\n ranges: _propTypes.default.array,\n showMeridian: _propTypes.default.bool,\n showWeekNumbers: _propTypes.default.bool,\n value: _propTypes.default.instanceOf(Date)\n});\nvar _default = DatePicker;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/DatePicker/DatePicker.tsx?");
6784
-
6785
- /***/ }),
6786
-
6787
- /***/ "./src/DatePicker/PickerIndicator.tsx":
6788
- /*!********************************************!*\
6789
- !*** ./src/DatePicker/PickerIndicator.tsx ***!
6790
- \********************************************/
6791
- /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6792
-
6793
- "use strict";
6794
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _icons = __webpack_require__(/*! @rsuite/icons */ \"./node_modules/@rsuite/icons/es/index.js\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _InputGroup = _interopRequireDefault(__webpack_require__(/*! ../InputGroup */ \"./src/InputGroup/index.tsx\"));\nvar _CloseButton = _interopRequireDefault(__webpack_require__(/*! ../CloseButton */ \"./src/CloseButton/index.tsx\"));\nvar _Loader = _interopRequireDefault(__webpack_require__(/*! ../Loader */ \"./src/Loader/index.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/DatePicker/PickerIndicator.tsx\",\n _this = void 0;\nvar PickerIndicator = function PickerIndicator(_ref) {\n var loading = _ref.loading,\n caretAs = _ref.caretAs,\n onClose = _ref.onClose,\n showCleanButton = _ref.showCleanButton,\n _ref$as = _ref.as,\n Component = _ref$as === void 0 ? _InputGroup.default.Addon : _ref$as;\n var _useCustom = (0, _utils.useCustom)(),\n locale = _useCustom.locale;\n var _useClassNames = (0, _utils.useClassNames)('picker'),\n prefix = _useClassNames.prefix;\n var addon = function addon() {\n if (loading) {\n return /*#__PURE__*/_react.default.createElement(_Loader.default, {\n className: prefix('loader'),\n \"data-testid\": \"spinner\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 28,\n columnNumber: 14\n }\n });\n }\n if (showCleanButton) {\n return /*#__PURE__*/_react.default.createElement(_CloseButton.default, {\n className: prefix('clean'),\n tabIndex: -1,\n locale: {\n closeLabel: locale === null || locale === void 0 ? void 0 : locale.clear\n },\n onClick: onClose,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 32,\n columnNumber: 9\n }\n });\n }\n return caretAs && /*#__PURE__*/_react.default.createElement(_icons.Icon, {\n as: caretAs,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 40,\n columnNumber: 23\n }\n });\n };\n return /*#__PURE__*/_react.default.createElement(Component, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 43,\n columnNumber: 10\n }\n }, addon());\n};\nvar _default = PickerIndicator;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/DatePicker/PickerIndicator.tsx?");
6795
-
6796
- /***/ }),
6797
-
6798
- /***/ "./src/DatePicker/PickerLabel.tsx":
6799
- /*!****************************************!*\
6800
- !*** ./src/DatePicker/PickerLabel.tsx ***!
6801
- \****************************************/
6802
- /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6803
-
6804
- "use strict";
6805
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _InputGroup = _interopRequireDefault(__webpack_require__(/*! ../InputGroup */ \"./src/InputGroup/index.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/DatePicker/PickerLabel.tsx\",\n _this = void 0;\nvar PickerLabel = function PickerLabel(_ref) {\n var children = _ref.children,\n className = _ref.className,\n _ref$as = _ref.as,\n Component = _ref$as === void 0 ? _InputGroup.default.Addon : _ref$as,\n rest = (0, _objectWithoutPropertiesLoose2.default)(_ref, [\"children\", \"className\", \"as\"]);\n return children ? /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n \"data-testid\": \"picker-label\",\n className: className\n }, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 18,\n columnNumber: 5\n }\n }), children) : null;\n};\nvar _default = PickerLabel;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/DatePicker/PickerLabel.tsx?");
6794
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _mapValues = _interopRequireDefault(__webpack_require__(/*! lodash/mapValues */ \"./node_modules/lodash/mapValues.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _delay = _interopRequireDefault(__webpack_require__(/*! lodash/delay */ \"./node_modules/lodash/delay.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _Calendar = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Calendar */ \"./node_modules/@rsuite/icons/legacy/Calendar.js\"));\nvar _ClockO = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/ClockO */ \"./node_modules/@rsuite/icons/legacy/ClockO.js\"));\nvar _CalendarContainer = _interopRequireDefault(__webpack_require__(/*! ../Calendar/CalendarContainer */ \"./src/Calendar/CalendarContainer.tsx\"));\nvar _useCalendarDate2 = _interopRequireDefault(__webpack_require__(/*! ../Calendar/useCalendarDate */ \"./src/Calendar/useCalendarDate.ts\"));\nvar _MonthDropdown = __webpack_require__(/*! ../Calendar/MonthDropdown */ \"./src/Calendar/MonthDropdown.tsx\");\nvar _Toolbar = _interopRequireDefault(__webpack_require__(/*! ./Toolbar */ \"./src/DatePicker/Toolbar.tsx\"));\nvar _Stack = _interopRequireDefault(__webpack_require__(/*! ../Stack */ \"./src/Stack/index.tsx\"));\nvar _PredefinedRanges = _interopRequireDefault(__webpack_require__(/*! ./PredefinedRanges */ \"./src/DatePicker/PredefinedRanges.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _dateUtils = __webpack_require__(/*! ../utils/dateUtils */ \"./src/utils/dateUtils.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _DateInput = _interopRequireDefault(__webpack_require__(/*! ../DateInput */ \"./src/DateInput/index.tsx\"));\nvar _InputGroup = _interopRequireDefault(__webpack_require__(/*! ../InputGroup */ \"./src/InputGroup/index.tsx\"));\nvar _OverlayTrigger = __webpack_require__(/*! ../Overlay/OverlayTrigger */ \"./src/Overlay/OverlayTrigger.tsx\");\nvar _deprecatePropType = __webpack_require__(/*! ../utils/deprecatePropType */ \"./src/utils/deprecatePropType.ts\");\nvar _utils2 = __webpack_require__(/*! ../Calendar/utils */ \"./src/Calendar/utils.ts\");\nvar _utils3 = __webpack_require__(/*! ./utils */ \"./src/DatePicker/utils.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/DatePicker/DatePicker.tsx\",\n _this = void 0,\n _templateObject;\n/**\n * A date picker allows users to select a date from a calendar.\n *\n * @see https://rsuitejs.com/components/date-picker\n */\nvar DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _merge;\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n calendarDefaultDate = props.calendarDefaultDate,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$editable = props.editable,\n editable = _props$editable === void 0 ? true : _props$editable,\n defaultValue = props.defaultValue,\n disabled = props.disabled,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n _props$format = props.format,\n formatStr = _props$format === void 0 ? 'yyyy-MM-dd' : _props$format,\n idProp = props.id,\n isoWeek = props.isoWeek,\n _props$limitEndYear = props.limitEndYear,\n limitEndYear = _props$limitEndYear === void 0 ? 1000 : _props$limitEndYear,\n limitStartYear = props.limitStartYear,\n overrideLocale = props.locale,\n loading = props.loading,\n label = props.label,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n oneTap = props.oneTap,\n _props$placeholder = props.placeholder,\n placeholder = _props$placeholder === void 0 ? '' : _props$placeholder,\n ranges = props.ranges,\n valueProp = props.value,\n showMeridian = props.showMeridian,\n showWeekNumbers = props.showWeekNumbers,\n style = props.style,\n size = props.size,\n caretAsProp = props.caretAs,\n DEPRECATED_disabledDate = props.disabledDate,\n DEPRECATED_disabledHours = props.disabledHours,\n DEPRECATED_disabledMinutes = props.disabledMinutes,\n DEPRECATED_disabledSeconds = props.disabledSeconds,\n shouldDisableDate = props.shouldDisableDate,\n shouldDisableHour = props.shouldDisableHour,\n shouldDisableMinute = props.shouldDisableMinute,\n shouldDisableSecond = props.shouldDisableSecond,\n onChange = props.onChange,\n onChangeCalendarDate = props.onChangeCalendarDate,\n onClean = props.onClean,\n onClose = props.onClose,\n onEntered = props.onEntered,\n onExited = props.onExited,\n onNextMonth = props.onNextMonth,\n onOk = props.onOk,\n onOpen = props.onOpen,\n onPrevMonth = props.onPrevMonth,\n onSelect = props.onSelect,\n onToggleMonthDropdown = props.onToggleMonthDropdown,\n onToggleTimeDropdown = props.onToggleTimeDropdown,\n onShortcutClick = props.onShortcutClick,\n restProps = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"className\", \"classPrefix\", \"calendarDefaultDate\", \"cleanable\", \"editable\", \"defaultValue\", \"disabled\", \"readOnly\", \"plaintext\", \"format\", \"id\", \"isoWeek\", \"limitEndYear\", \"limitStartYear\", \"locale\", \"loading\", \"label\", \"menuClassName\", \"menuStyle\", \"appearance\", \"placement\", \"oneTap\", \"placeholder\", \"ranges\", \"value\", \"showMeridian\", \"showWeekNumbers\", \"style\", \"size\", \"caretAs\", \"disabledDate\", \"disabledHours\", \"disabledMinutes\", \"disabledSeconds\", \"shouldDisableDate\", \"shouldDisableHour\", \"shouldDisableMinute\", \"shouldDisableSecond\", \"onChange\", \"onChangeCalendarDate\", \"onClean\", \"onClose\", \"onEntered\", \"onExited\", \"onNextMonth\", \"onOk\", \"onOpen\", \"onPrevMonth\", \"onSelect\", \"onToggleMonthDropdown\", \"onToggleTimeDropdown\", \"onShortcutClick\"]);\n var id = (0, _utils.useUniqueId)('rs-', idProp);\n var _usePickerRef = (0, _Picker.usePickerRef)(ref),\n trigger = _usePickerRef.trigger,\n root = _usePickerRef.root,\n target = _usePickerRef.target,\n overlay = _usePickerRef.overlay;\n var _useCustom = (0, _utils.useCustom)('DatePicker', overrideLocale),\n locale = _useCustom.locale,\n formatDate = _useCustom.formatDate;\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1];\n var _useCalendarDate = (0, _useCalendarDate2.default)(value, calendarDefaultDate),\n calendarDate = _useCalendarDate.calendarDate,\n setCalendarDate = _useCalendarDate.setCalendarDate,\n resetCalendarDate = _useCalendarDate.resetCalendarDate;\n var _useState = (0, _react.useState)(false),\n showMonthDropdown = _useState[0],\n setShowMonthDropdown = _useState[1]; // Show only the calendar month panel. formatStr = 'yyyy-MM'\n var onlyShowMonth = (0, _dateUtils.shouldRenderMonth)(formatStr) && !(0, _dateUtils.shouldRenderDate)(formatStr);\n var showMonth = onlyShowMonth || showMonthDropdown;\n var isDateDisabled = function isDateDisabled(date) {\n if (typeof shouldDisableDate === 'function') {\n return shouldDisableDate(date);\n }\n if (typeof DEPRECATED_disabledDate === 'function') {\n return DEPRECATED_disabledDate(date);\n }\n return false;\n };\n var isErrorValue = function isErrorValue(value) {\n if (!(0, _dateUtils.isValid)(value)) {\n return true;\n } else if (value && isDateDisabled(value)) {\n return true;\n }\n return false;\n };\n\n /**\n * Switch to the callback triggered after the next month.\n */\n var handleMoveForward = (0, _utils.useEventCallback)(function (nextPageDate) {\n setCalendarDate(nextPageDate);\n onNextMonth === null || onNextMonth === void 0 ? void 0 : onNextMonth(nextPageDate);\n onChangeCalendarDate === null || onChangeCalendarDate === void 0 ? void 0 : onChangeCalendarDate(nextPageDate);\n });\n\n /**\n * Switch to the callback triggered after the previous month.\n */\n var handleMoveBackward = (0, _utils.useEventCallback)(function (nextPageDate) {\n setCalendarDate(nextPageDate);\n onPrevMonth === null || onPrevMonth === void 0 ? void 0 : onPrevMonth(nextPageDate);\n onChangeCalendarDate === null || onChangeCalendarDate === void 0 ? void 0 : onChangeCalendarDate(nextPageDate);\n });\n\n /**\n * The callback triggered when the date changes.\n */\n var handleDateChange = (0, _utils.useEventCallback)(function (nextValue, event) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(nextValue, event);\n onChangeCalendarDate === null || onChangeCalendarDate === void 0 ? void 0 : onChangeCalendarDate(nextValue, event);\n });\n\n /**\n * A callback triggered when the time on the calendar changes.\n */\n var handleChangeTime = (0, _utils.useEventCallback)(function (nextPageTime) {\n setCalendarDate(nextPageTime);\n handleDateChange(nextPageTime);\n });\n var handleClose = (0, _utils.useEventCallback)(function () {\n var _trigger$current, _trigger$current$clos;\n (_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : (_trigger$current$clos = _trigger$current.close) === null || _trigger$current$clos === void 0 ? void 0 : _trigger$current$clos.call(_trigger$current);\n });\n\n /**\n * The callback triggered when PM/AM is switched.\n */\n var handleToggleMeridian = (0, _utils.useEventCallback)(function () {\n var hours = (0, _dateUtils.getHours)(calendarDate);\n var nextHours = hours >= 12 ? hours - 12 : hours + 12;\n var nextDate = (0, _dateUtils.setHours)(calendarDate, nextHours);\n handleChangeTime(nextDate);\n });\n var updateValue = function updateValue(event, nextPageDate, closeOverlay) {\n if (closeOverlay === void 0) {\n closeOverlay = true;\n }\n var nextValue = typeof nextPageDate !== 'undefined' ? nextPageDate : calendarDate;\n setCalendarDate(nextValue || new Date());\n setValue(nextValue);\n if (nextValue !== value) {\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }\n\n // `closeOverlay` default value is `true`\n if (closeOverlay !== false) {\n handleClose();\n }\n };\n\n /**\n * The callback triggered after the date in the shortcut area is clicked.\n */\n var handleShortcutPageDate = (0, _utils.useEventCallback)(function (range, closeOverlay, event) {\n var value = range.value;\n updateValue(event, value, closeOverlay);\n handleDateChange(value, event);\n onShortcutClick === null || onShortcutClick === void 0 ? void 0 : onShortcutClick(range, event);\n });\n\n /**\n * Get the corresponding container based on date selection and month selection\n */\n var getOverlayContainer = function getOverlayContainer() {\n return showMonth ? document.getElementById(id + \"-calendar-month-dropdown\") : document.getElementById(id + \"-calendar-table\");\n };\n\n /**\n * Check whether the date is focusable\n */\n var checkFocusable = function checkFocusable(date) {\n var formatStr = showMonth ? locale.formattedMonthPattern : locale.formattedDayPattern;\n var ariaLabel = (0, _utils2.getAriaLabel)(date, formatStr, formatDate);\n var container = getOverlayContainer();\n var dateElement = container === null || container === void 0 ? void 0 : container.querySelector(\"[aria-label=\\\"\" + ariaLabel + \"\\\"]\");\n if ((dateElement === null || dateElement === void 0 ? void 0 : dateElement.getAttribute('aria-disabled')) === 'true') {\n return false;\n }\n return true;\n };\n\n /**\n * Focus on the currently selected date element\n */\n var focusSelectedDate = function focusSelectedDate() {\n (0, _delay.default)(function () {\n var container = getOverlayContainer();\n var selectedElement = container === null || container === void 0 ? void 0 : container.querySelector('[aria-selected=\"true\"]');\n selectedElement === null || selectedElement === void 0 ? void 0 : selectedElement.focus();\n }, 1);\n };\n\n /**\n * Focus on the input element\n */\n var focusTargetInput = (0, _utils.useEventCallback)(function () {\n (0, _delay.default)(function () {\n var _target$current;\n return (_target$current = target.current) === null || _target$current === void 0 ? void 0 : _target$current.focus();\n }, 1);\n });\n\n /**\n * The callback triggered after clicking the OK button.\n */\n var handleOK = (0, _utils.useEventCallback)(function (event) {\n updateValue(event);\n onOk === null || onOk === void 0 ? void 0 : onOk(calendarDate, event);\n focusTargetInput();\n });\n\n /**\n * Callback after clicking the clear button.\n */\n\n var handleClean = (0, _utils.useEventCallback)(function (event) {\n updateValue(event, null);\n resetCalendarDate(null);\n onClean === null || onClean === void 0 ? void 0 : onClean(event);\n event.stopPropagation();\n });\n var handlePickerPopupKeyDown = (0, _utils.useEventCallback)(function (event) {\n var delta = 0;\n var step = showMonth ? 6 : 7;\n var changeDateFunc = showMonth ? _dateUtils.addMonths : _dateUtils.addDays;\n (0, _Picker.onMenuKeyDown)(event, {\n down: function down() {\n delta = step;\n },\n up: function up() {\n delta = -step;\n },\n right: function right() {\n delta = 1;\n },\n left: function left() {\n delta = -1;\n },\n enter: function enter() {\n handleOK(event);\n }\n });\n var nextDate = changeDateFunc(calendarDate, delta);\n if (checkFocusable(nextDate)) {\n setCalendarDate(nextDate);\n focusSelectedDate();\n }\n });\n\n /**\n * The callback triggered after the month selection box is opened or closed.\n */\n var handleToggleMonthDropdown = (0, _utils.useEventCallback)(function (toggle) {\n onToggleMonthDropdown === null || onToggleMonthDropdown === void 0 ? void 0 : onToggleMonthDropdown(toggle);\n setShowMonthDropdown(toggle);\n });\n var handleClick = (0, _utils.useEventCallback)(function () {\n if (editable) {\n return;\n }\n focusSelectedDate();\n });\n\n /**\n * Callback after the date is selected.\n */\n var handleSelect = (0, _utils.useEventCallback)(function (nextValue, event, updatableValue) {\n if (updatableValue === void 0) {\n updatableValue = true;\n }\n setCalendarDate(\n // Determine whether the current value contains time, if not, use calendarDate.\n (0, _dateUtils.shouldRenderTime)(formatStr) ? nextValue : (0, _dateUtils.copyTime)({\n from: calendarDate,\n to: nextValue\n }));\n handleDateChange(nextValue);\n if (oneTap && updatableValue) {\n updateValue(event, nextValue);\n focusTargetInput();\n }\n });\n\n /**\n * A callback triggered when the date on the calendar changes.\n */\n var handleChangeMonth = (0, _utils.useEventCallback)(function (nextPageDate, event) {\n setCalendarDate(nextPageDate);\n handleDateChange(nextPageDate);\n focusSelectedDate();\n if (oneTap && onlyShowMonth) {\n updateValue(event, nextPageDate);\n focusTargetInput();\n }\n });\n\n /**\n * Callback after the input box value is changed.\n */\n var handleInputChange = (0, _utils.useEventCallback)(function (value, event) {\n if (!isErrorValue(value)) {\n handleSelect(value, event);\n }\n updateValue(event, value, false);\n });\n var handleInputKeyDown = (0, _utils.useEventCallback)(function (event) {\n (0, _Picker.onMenuKeyDown)(event, {\n esc: handleClose,\n enter: function enter() {\n var _trigger$current2;\n var _ref = ((_trigger$current2 = trigger.current) === null || _trigger$current2 === void 0 ? void 0 : _trigger$current2.getState()) || {},\n open = _ref.open;\n if (open) {\n if ((0, _dateUtils.isValid)(calendarDate) && !isDateDisabled(calendarDate)) {\n updateValue(event);\n focusTargetInput();\n }\n } else {\n var _trigger$current3;\n (_trigger$current3 = trigger.current) === null || _trigger$current3 === void 0 ? void 0 : _trigger$current3.open();\n }\n }\n });\n });\n\n // Check whether the time is within the time range of the shortcut option in the toolbar.\n var disabledToolbarHandle = function disabledToolbarHandle(date) {\n var _DEPRECATED_disabledD;\n var allowDate = (_DEPRECATED_disabledD = DEPRECATED_disabledDate === null || DEPRECATED_disabledDate === void 0 ? void 0 : DEPRECATED_disabledDate(date)) !== null && _DEPRECATED_disabledD !== void 0 ? _DEPRECATED_disabledD : false;\n var allowTime = (0, _dateUtils.disabledTime)(props, date);\n return allowDate || allowTime;\n };\n\n /**\n * Whether \"OK\" button is disabled\n *\n * - If format is date, disable ok button if selected date is disabled\n * - If format is month, disable ok button if all dates in the month of selected date are disabled\n */\n var isOKButtonDisabled = function isOKButtonDisabled(selectedDate) {\n if ((0, _dateUtils.shouldRenderMonth)(formatStr) && !(0, _dateUtils.shouldRenderDate)(formatStr)) {\n return (0, _MonthDropdown.isEveryDateInMonth)(selectedDate.getFullYear(), selectedDate.getMonth(), disabledToolbarHandle);\n }\n return disabledToolbarHandle(selectedDate);\n };\n var calendarProps = (0, _react.useMemo)(function () {\n return (0, _mapValues.default)((0, _pick.default)(props, _dateUtils.calendarOnlyProps), function (disabledOrHiddenTimeFunc) {\n return function (next, date) {\n var _disabledOrHiddenTime;\n return (_disabledOrHiddenTime = disabledOrHiddenTimeFunc === null || disabledOrHiddenTimeFunc === void 0 ? void 0 : disabledOrHiddenTimeFunc(next, date)) !== null && _disabledOrHiddenTime !== void 0 ? _disabledOrHiddenTime : false;\n };\n });\n }, [props]);\n var _splitRanges = (0, _utils3.splitRanges)(ranges),\n sideRanges = _splitRanges.sideRanges,\n bottomRanges = _splitRanges.bottomRanges;\n var renderCalendarOverlay = function renderCalendarOverlay(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = merge(menuClassName, className);\n var styles = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerPopup, {\n role: \"dialog\",\n \"aria-labelledby\": label ? id + \"-label\" : undefined,\n tabIndex: -1,\n className: classes,\n ref: (0, _utils.mergeRefs)(overlay, speakerRef),\n style: styles,\n target: trigger,\n onKeyDown: handlePickerPopupKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 625,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Stack.default, {\n alignItems: \"flex-start\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 635,\n columnNumber: 11\n }\n }, sideRanges.length > 0 && /*#__PURE__*/_react.default.createElement(_PredefinedRanges.default, {\n direction: \"column\",\n spacing: 0,\n className: prefix('date-predefined'),\n ranges: sideRanges,\n calendarDate: calendarDate,\n locale: locale,\n disabledShortcut: disabledToolbarHandle,\n onShortcutClick: handleShortcutPageDate,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 637,\n columnNumber: 15\n }\n }), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_CalendarContainer.default, (0, _extends2.default)({}, calendarProps, {\n targetId: id,\n locale: locale,\n showWeekNumbers: showWeekNumbers,\n showMeridian: showMeridian,\n disabledDate: isDateDisabled,\n disabledHours: shouldDisableHour !== null && shouldDisableHour !== void 0 ? shouldDisableHour : DEPRECATED_disabledHours,\n disabledMinutes: shouldDisableMinute !== null && shouldDisableMinute !== void 0 ? shouldDisableMinute : DEPRECATED_disabledMinutes,\n disabledSeconds: shouldDisableSecond !== null && shouldDisableSecond !== void 0 ? shouldDisableSecond : DEPRECATED_disabledSeconds,\n limitEndYear: limitEndYear,\n limitStartYear: limitStartYear,\n format: formatStr,\n isoWeek: isoWeek,\n calendarDate: calendarDate,\n onMoveForward: handleMoveForward,\n onMoveBackward: handleMoveBackward,\n onSelect: handleSelect,\n onToggleMonthDropdown: handleToggleMonthDropdown,\n onToggleTimeDropdown: onToggleTimeDropdown,\n onChangeMonth: handleChangeMonth,\n onChangeTime: handleChangeTime,\n onToggleMeridian: handleToggleMeridian,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 650,\n columnNumber: 15\n }\n })), /*#__PURE__*/_react.default.createElement(_Toolbar.default, {\n locale: locale,\n ranges: bottomRanges,\n calendarDate: calendarDate,\n disabledOkBtn: isOKButtonDisabled,\n disabledShortcut: disabledToolbarHandle,\n onShortcutClick: handleShortcutPageDate,\n onOk: handleOK,\n hideOkBtn: oneTap,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 674,\n columnNumber: 15\n }\n }))));\n };\n var hasValue = (0, _dateUtils.isValid)(value);\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n name: 'date',\n appearance: appearance,\n hasValue: hasValue,\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n var caretAs = (0, _react.useMemo)(function () {\n if (caretAsProp === null) {\n return null;\n }\n return caretAsProp || ((0, _dateUtils.shouldOnlyRenderTime)(formatStr) ? _ClockO.default : _Calendar.default);\n }, [caretAsProp, formatStr]);\n var handleTriggerClose = (0, _utils.useEventCallback)(function (cause) {\n // Unless overlay is closing on user clicking \"OK\" button,\n // reset the selected date on calendar panel\n if (cause !== _OverlayTrigger.OverlayCloseCause.ImperativeHandle) {\n resetCalendarDate();\n }\n setShowMonthDropdown(false);\n });\n var showCleanButton = cleanable && hasValue && !readOnly;\n var _partitionHTMLProps = (0, _utils.partitionHTMLProps)(restProps, {\n htmlProps: [],\n includeAria: true\n }),\n ariaProps = _partitionHTMLProps[0],\n rest = _partitionHTMLProps[1];\n var invalidValue = value && isErrorValue(value);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n trigger: \"active\",\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: trigger,\n placement: placement,\n onClose: handleTriggerClose,\n onEntered: (0, _utils.createChainedFunction)(onOpen, onEntered),\n onExited: (0, _utils.createChainedFunction)(onClose, onExited),\n speaker: renderCalendarOverlay,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 722,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: merge(className, classes, (_merge = {}, _merge[prefix('error')] = invalidValue, _merge)),\n style: style,\n ref: root,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 732,\n columnNumber: 9\n }\n }, plaintext ? /*#__PURE__*/_react.default.createElement(_DateInput.default, {\n value: value,\n format: formatStr,\n plaintext: plaintext,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 738,\n columnNumber: 13\n }\n }) : /*#__PURE__*/_react.default.createElement(_InputGroup.default, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys, _dateUtils.calendarOnlyProps)), {\n inside: true,\n size: size,\n onClick: handleClick,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 740,\n columnNumber: 13\n }\n }), /*#__PURE__*/_react.default.createElement(_Picker.PickerLabel, {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"label\"]))),\n id: id + \"-label\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 750,\n columnNumber: 15\n }\n }, label), /*#__PURE__*/_react.default.createElement(_DateInput.default, (0, _extends2.default)({\n \"aria-haspopup\": \"dialog\",\n \"aria-invalid\": invalidValue,\n \"aria-labelledby\": label ? id + \"-label\" : undefined\n }, ariaProps, {\n ref: target,\n id: id,\n value: value,\n format: formatStr,\n placeholder: placeholder ? placeholder : formatStr,\n disabled: disabled,\n onChange: handleInputChange,\n readOnly: readOnly || !editable || loading,\n plaintext: plaintext,\n onKeyDown: handleInputKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 753,\n columnNumber: 15\n }\n })), /*#__PURE__*/_react.default.createElement(_Picker.PickerIndicator, {\n loading: loading,\n caretAs: caretAs,\n onClose: handleClean,\n showCleanButton: showCleanButton,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 769,\n columnNumber: 15\n }\n }))));\n});\nDatePicker.displayName = 'DatePicker';\nDatePicker.propTypes = (0, _extends2.default)({}, _Picker.pickerPropTypes, {\n calendarDefaultDate: _propTypes.default.instanceOf(Date),\n defaultValue: _propTypes.default.instanceOf(Date),\n disabledDate: (0, _deprecatePropType.deprecatePropTypeNew)(_propTypes.default.func, 'Use \"shouldDisableDate\" property instead.'),\n disabledHours: (0, _deprecatePropType.deprecatePropTypeNew)(_propTypes.default.func, 'Use \"shouldDisableHour\" property instead.'),\n disabledMinutes: (0, _deprecatePropType.deprecatePropTypeNew)(_propTypes.default.func, 'Use \"shouldDisableMinute\" property instead.'),\n disabledSeconds: (0, _deprecatePropType.deprecatePropTypeNew)(_propTypes.default.func, 'Use \"shouldDisableSecond\" property instead.'),\n shouldDisableDate: _propTypes.default.func,\n shouldDisableHour: _propTypes.default.func,\n shouldDisableMinute: _propTypes.default.func,\n shouldDisableSecond: _propTypes.default.func,\n format: _propTypes.default.string,\n hideHours: _propTypes.default.func,\n hideMinutes: _propTypes.default.func,\n hideSeconds: _propTypes.default.func,\n isoWeek: _propTypes.default.bool,\n limitEndYear: _propTypes.default.number,\n limitStartYear: _propTypes.default.number,\n onChange: _propTypes.default.func,\n onChangeCalendarDate: _propTypes.default.func,\n onNextMonth: _propTypes.default.func,\n onOk: _propTypes.default.func,\n onPrevMonth: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onToggleMonthDropdown: _propTypes.default.func,\n onToggleTimeDropdown: _propTypes.default.func,\n oneTap: _propTypes.default.bool,\n panelContainerRef: _propTypes.default.any,\n ranges: _propTypes.default.array,\n showMeridian: _propTypes.default.bool,\n showWeekNumbers: _propTypes.default.bool,\n value: _propTypes.default.instanceOf(Date)\n});\nvar _default = DatePicker;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/DatePicker/DatePicker.tsx?");
6806
6795
 
6807
6796
  /***/ }),
6808
6797
 
@@ -6824,7 +6813,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
6824
6813
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6825
6814
 
6826
6815
  "use strict";
6827
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _Button = _interopRequireDefault(__webpack_require__(/*! ../Button */ \"./src/Button/index.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _PredefinedRanges = _interopRequireDefault(__webpack_require__(/*! ./PredefinedRanges */ \"./src/DatePicker/PredefinedRanges.tsx\"));\nvar _Stack = _interopRequireDefault(__webpack_require__(/*! ../Stack */ \"./src/Stack/index.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/DatePicker/Toolbar.tsx\",\n _this = void 0;\nvar SubmitButton = function SubmitButton(_ref) {\n var disabledOkBtn = _ref.disabledOkBtn,\n calendarDate = _ref.calendarDate,\n onOk = _ref.onOk,\n children = _ref.children;\n var disabled = disabledOkBtn === null || disabledOkBtn === void 0 ? void 0 : disabledOkBtn(calendarDate);\n return /*#__PURE__*/_react.default.createElement(_Button.default, {\n appearance: \"primary\",\n size: \"sm\",\n disabled: disabled,\n onClick: disabled ? undefined : onOk,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 30,\n columnNumber: 5\n }\n }, children);\n};\n\n/**\n * Toolbar for DatePicker and DateRangePicker\n */\nvar Toolbar = /*#__PURE__*/_react.default.forwardRef(function Toolbar(props, ref) {\n var className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker-toolbar' : _props$classPrefix,\n disabledOkBtn = props.disabledOkBtn,\n disabledShortcut = props.disabledShortcut,\n hideOkBtn = props.hideOkBtn,\n onOk = props.onOk,\n onShortcutClick = props.onShortcutClick,\n calendarDate = props.calendarDate,\n ranges = props.ranges,\n locale = props.locale,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"className\", \"classPrefix\", \"disabledOkBtn\", \"disabledShortcut\", \"hideOkBtn\", \"onOk\", \"onShortcutClick\", \"calendarDate\", \"ranges\", \"locale\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix,\n withClassPrefix = _useClassNames.withClassPrefix;\n if (hideOkBtn && (ranges === null || ranges === void 0 ? void 0 : ranges.length) === 0) {\n return null;\n }\n var classes = merge(className, withClassPrefix());\n return /*#__PURE__*/_react.default.createElement(_Stack.default, (0, _extends2.default)({\n ref: ref,\n className: classes,\n justifyContent: \"space-between\",\n alignItems: \"flex-start\"\n }, rest, {\n __self: this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 71,\n columnNumber: 5\n }\n }), /*#__PURE__*/_react.default.createElement(_PredefinedRanges.default, {\n wrap: true,\n className: prefix('ranges'),\n ranges: ranges,\n calendarDate: calendarDate,\n locale: locale,\n disabledShortcut: disabledShortcut,\n onShortcutClick: onShortcutClick,\n __self: this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 78,\n columnNumber: 7\n }\n }), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('right'),\n __self: this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 87,\n columnNumber: 7\n }\n }, !hideOkBtn && /*#__PURE__*/_react.default.createElement(SubmitButton, {\n disabledOkBtn: disabledOkBtn,\n calendarDate: calendarDate,\n onOk: onOk,\n __self: this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 89,\n columnNumber: 11\n }\n }, locale === null || locale === void 0 ? void 0 : locale.ok)));\n});\nvar _default = Toolbar;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/DatePicker/Toolbar.tsx?");
6816
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _Button = _interopRequireDefault(__webpack_require__(/*! ../Button */ \"./src/Button/index.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _PredefinedRanges = _interopRequireDefault(__webpack_require__(/*! ./PredefinedRanges */ \"./src/DatePicker/PredefinedRanges.tsx\"));\nvar _Stack = _interopRequireDefault(__webpack_require__(/*! ../Stack */ \"./src/Stack/index.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/DatePicker/Toolbar.tsx\",\n _this = void 0;\nvar SubmitButton = function SubmitButton(_ref) {\n var disabledOkBtn = _ref.disabledOkBtn,\n calendarDate = _ref.calendarDate,\n onOk = _ref.onOk,\n children = _ref.children;\n var disabled = disabledOkBtn === null || disabledOkBtn === void 0 ? void 0 : disabledOkBtn(calendarDate);\n return /*#__PURE__*/_react.default.createElement(_Button.default, {\n appearance: \"primary\",\n size: \"sm\",\n disabled: disabled,\n onClick: disabled ? undefined : onOk,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 30,\n columnNumber: 5\n }\n }, children);\n};\n\n/**\n * Toolbar for DatePicker and DateRangePicker\n */\nvar Toolbar = /*#__PURE__*/_react.default.forwardRef(function Toolbar(props, ref) {\n var className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker-toolbar' : _props$classPrefix,\n disabledOkBtn = props.disabledOkBtn,\n disabledShortcut = props.disabledShortcut,\n hideOkBtn = props.hideOkBtn,\n onOk = props.onOk,\n onShortcutClick = props.onShortcutClick,\n calendarDate = props.calendarDate,\n ranges = props.ranges,\n locale = props.locale,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"className\", \"classPrefix\", \"disabledOkBtn\", \"disabledShortcut\", \"hideOkBtn\", \"onOk\", \"onShortcutClick\", \"calendarDate\", \"ranges\", \"locale\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix,\n withClassPrefix = _useClassNames.withClassPrefix;\n if (hideOkBtn && (ranges === null || ranges === void 0 ? void 0 : ranges.length) === 0) {\n return null;\n }\n var classes = merge(className, withClassPrefix());\n return /*#__PURE__*/_react.default.createElement(_Stack.default, (0, _extends2.default)({\n ref: ref,\n className: classes,\n justifyContent: \"space-between\",\n alignItems: \"flex-start\"\n }, rest, {\n __self: this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 71,\n columnNumber: 5\n }\n }), /*#__PURE__*/_react.default.createElement(_PredefinedRanges.default, {\n wrap: true,\n className: prefix('ranges'),\n ranges: ranges,\n calendarDate: calendarDate,\n locale: locale,\n disabledShortcut: disabledShortcut,\n onShortcutClick: onShortcutClick,\n \"data-testid\": \"daterange-predefined-bottom\",\n __self: this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 78,\n columnNumber: 7\n }\n }), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('right'),\n __self: this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 88,\n columnNumber: 7\n }\n }, !hideOkBtn && /*#__PURE__*/_react.default.createElement(SubmitButton, {\n disabledOkBtn: disabledOkBtn,\n calendarDate: calendarDate,\n onOk: onOk,\n __self: this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 90,\n columnNumber: 11\n }\n }, locale === null || locale === void 0 ? void 0 : locale.ok)));\n});\nvar _default = Toolbar;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/DatePicker/Toolbar.tsx?");
6828
6817
 
6829
6818
  /***/ }),
6830
6819
 
@@ -6857,7 +6846,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
6857
6846
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6858
6847
 
6859
6848
  "use strict";
6860
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _Input = _interopRequireDefault(__webpack_require__(/*! ../Input */ \"./src/Input/index.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _DateInput = __webpack_require__(/*! ../DateInput */ \"./src/DateInput/index.tsx\");\nvar _utils2 = __webpack_require__(/*! ./utils */ \"./src/DateRangeInput/utils.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/DateRangeInput/DateRangeInput.tsx\",\n _this = void 0;\n/**\n * The DateRangeInput component lets users select a date with the keyboard.\n * @version 5.59.0\n * @see https://rsuitejs.com/components/date-range-input/\n */\nvar DateRangeInput = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'date-range-input' : _props$classPrefix,\n _props$character = props.character,\n character = _props$character === void 0 ? ' ~ ' : _props$character,\n _props$format = props.format,\n formatStr = _props$format === void 0 ? 'yyyy-MM-dd' : _props$format,\n valueProp = props.value,\n _props$defaultValue = props.defaultValue,\n defaultValue = _props$defaultValue === void 0 ? [] : _props$defaultValue,\n placeholder = props.placeholder,\n onChange = props.onChange,\n onKeyDown = props.onKeyDown,\n onBlur = props.onBlur,\n onFocus = props.onFocus,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"className\", \"classPrefix\", \"character\", \"format\", \"value\", \"defaultValue\", \"placeholder\", \"onChange\", \"onKeyDown\", \"onBlur\", \"onFocus\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge;\n var classes = merge(className, withClassPrefix());\n var inputRef = (0, _react.useRef)();\n var _useState = (0, _react.useState)({\n selectedPattern: 'y',\n selectionStart: 0,\n selectionEnd: 0\n }),\n selectedState = _useState[0],\n setSelectedState = _useState[1];\n var _useCustom = (0, _utils.useCustom)('Calendar'),\n locale = _useCustom.locale;\n var rangeFormatStr = \"\" + formatStr + character + formatStr;\n var dateLocale = locale.dateLocale;\n var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1],\n isControlled = _useControlled[2];\n var _useState2 = (0, _react.useState)(_utils2.DateType.Start),\n dateType = _useState2[0],\n setDateType = _useState2[1];\n var dateInputOptions = {\n formatStr: formatStr,\n locale: dateLocale,\n isControlledDate: isControlled\n };\n var startDateState = (0, _DateInput.useDateInputState)((0, _extends2.default)({}, dateInputOptions, {\n date: value === null || value === void 0 ? void 0 : value[0]\n }));\n var endDateState = (0, _DateInput.useDateInputState)((0, _extends2.default)({}, dateInputOptions, {\n date: value === null || value === void 0 ? void 0 : value[1]\n }));\n var getActiveState = function getActiveState(type) {\n if (type === void 0) {\n type = dateType;\n }\n return type === _utils2.DateType.Start ? startDateState : endDateState;\n };\n var _useIsFocused = (0, _DateInput.useIsFocused)({\n onBlur: onBlur,\n onFocus: onFocus\n }),\n focused = _useIsFocused[0],\n focusEventProps = _useIsFocused[1];\n var renderedValue = (0, _react.useMemo)(function () {\n var dateString = startDateState.toDateString() + character + endDateState.toDateString();\n if (!startDateState.isEmptyValue() || !endDateState.isEmptyValue()) {\n return dateString;\n }\n return !focused ? '' : dateString;\n }, [character, endDateState, focused, startDateState]);\n var keyPressOptions = {\n formatStr: formatStr,\n rangeFormatStr: rangeFormatStr,\n localize: dateLocale.localize,\n selectedMonth: getActiveState().dateField.month,\n dateString: renderedValue,\n dateType: dateType,\n character: character\n };\n var setSelectionRange = (0, _DateInput.useInputSelection)(inputRef);\n var handleChange = (0, _utils.useEventCallback)(function (date, event) {\n var nextValue = dateType === _utils2.DateType.Start ? [date, value === null || value === void 0 ? void 0 : value[1]] : [value === null || value === void 0 ? void 0 : value[0], date];\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n setValue(nextValue);\n });\n var onSegmentChange = (0, _utils.useEventCallback)(function (event, nextDirection) {\n var input = event.target;\n var key = event.key;\n var direction = nextDirection || (key === 'ArrowRight' ? 'right' : 'left');\n if (input.selectionEnd === null || input.selectionStart === null) {\n return;\n }\n var cursorIndex = direction === 'right' ? input.selectionEnd : input.selectionStart;\n var nextDateType = dateType;\n if ((0, _utils2.isSwitchDateType)(renderedValue, character, cursorIndex, direction)) {\n nextDateType = dateType === _utils2.DateType.Start ? _utils2.DateType.End : _utils2.DateType.Start;\n setDateType(nextDateType);\n }\n var state = (0, _utils2.getInputSelectedState)((0, _extends2.default)({}, keyPressOptions, {\n dateType: nextDateType,\n selectedMonth: getActiveState(nextDateType).dateField.month,\n input: input,\n direction: direction\n }));\n setSelectionRange(state.selectionStart, state.selectionEnd);\n setSelectedState(state);\n });\n var onSegmentValueChange = (0, _utils.useEventCallback)(function (event) {\n var input = event.target;\n var key = event.key;\n var offset = key === 'ArrowUp' ? 1 : -1;\n var state = (0, _utils2.getInputSelectedState)((0, _extends2.default)({}, keyPressOptions, {\n input: input,\n valueOffset: offset\n }));\n setSelectedState(state);\n getActiveState().setDateOffset(state.selectedPattern, offset, function (date) {\n return handleChange(date, event);\n });\n setSelectionRange(state.selectionStart, state.selectionEnd);\n });\n var onSegmentValueChangeWithNumericKeys = (0, _utils.useEventCallback)(function (event) {\n var input = event.target;\n var key = event.key;\n var pattern = selectedState.selectedPattern;\n if (!pattern) {\n return;\n }\n var field = getActiveState().getDateField(pattern);\n var value = parseInt(key, 10);\n var padValue = parseInt(\"\" + (field.value || '') + key, 10);\n var newValue = value;\n\n // Check if the value entered by the user is a valid date\n if ((0, _DateInput.validateDateTime)(field.name, padValue)) {\n newValue = padValue;\n }\n if (pattern === 'M') {\n // Month cannot be less than 1.\n newValue = Math.max(1, newValue);\n }\n getActiveState().setDateField(pattern, newValue, function (date) {\n return handleChange(date, event);\n });\n\n // The currently selected month will be retained as a parameter of getInputSelectedState,\n // but if the user enters a month, the month value will be replaced with the value entered by the user.\n var selectedMonth = pattern === 'M' ? newValue : getActiveState().dateField.month;\n var nextState = (0, _utils2.getInputSelectedState)((0, _extends2.default)({}, keyPressOptions, {\n input: input,\n selectedMonth: selectedMonth\n }));\n setSelectedState(nextState);\n setSelectionRange(nextState.selectionStart, nextState.selectionEnd);\n\n // If the field is full value, move the cursor to the next field\n if ((0, _DateInput.isFieldFullValue)(formatStr, newValue, pattern) && input.selectionEnd !== input.value.length) {\n onSegmentChange(event, 'right');\n }\n });\n var onSegmentValueRemove = (0, _utils.useEventCallback)(function (event) {\n var input = event.target;\n if (selectedState.selectedPattern) {\n var nextState = (0, _utils2.getInputSelectedState)((0, _extends2.default)({}, keyPressOptions, {\n input: input,\n valueOffset: null\n }));\n setSelectedState(nextState);\n setSelectionRange(nextState.selectionStart, nextState.selectionEnd);\n getActiveState().setDateField(selectedState.selectedPattern, null, function (date) {\n return handleChange(date, event);\n });\n }\n });\n var handleClick = (0, _utils.useEventCallback)(function (event) {\n var input = event.target;\n if (input.selectionStart === null) {\n return;\n }\n var cursorIndex = input.selectionStart === renderedValue.length ? 0 : input.selectionStart;\n var dateType = (0, _utils2.getDateType)(renderedValue, character, cursorIndex);\n var state = (0, _utils2.getInputSelectedState)((0, _extends2.default)({}, keyPressOptions, {\n dateType: dateType,\n selectedMonth: getActiveState(dateType).dateField.month,\n input: input\n }));\n setDateType(dateType);\n setSelectedState(state);\n setSelectionRange(state.selectionStart, state.selectionEnd);\n });\n var onKeyboardInput = (0, _DateInput.useKeyboardInputEvent)({\n onSegmentChange: onSegmentChange,\n onSegmentValueChange: onSegmentValueChange,\n onSegmentValueChangeWithNumericKeys: onSegmentValueChangeWithNumericKeys,\n onSegmentValueRemove: onSegmentValueRemove,\n onKeyDown: onKeyDown\n });\n return /*#__PURE__*/_react.default.createElement(_Input.default, (0, _extends2.default)({\n inputMode: focused ? 'numeric' : 'text',\n autoComplete: \"off\",\n autoCorrect: \"off\",\n spellCheck: false,\n className: classes,\n ref: (0, _utils.mergeRefs)(inputRef, ref),\n onKeyDown: onKeyboardInput,\n onClick: handleClick,\n value: renderedValue,\n placeholder: placeholder || rangeFormatStr\n }, focusEventProps, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 264,\n columnNumber: 5\n }\n }));\n});\nDateRangeInput.displayName = 'DateRangeInput';\nDateRangeInput.propTypes = {\n character: _propTypes.default.string,\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n format: _propTypes.default.string,\n placeholder: _propTypes.default.string,\n onChange: _propTypes.default.func,\n onKeyDown: _propTypes.default.func,\n onFocus: _propTypes.default.func,\n onBlur: _propTypes.default.func\n};\nvar _default = DateRangeInput;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/DateRangeInput/DateRangeInput.tsx?");
6849
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _Input = _interopRequireDefault(__webpack_require__(/*! ../Input */ \"./src/Input/index.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _DateInput = __webpack_require__(/*! ../DateInput */ \"./src/DateInput/index.tsx\");\nvar _utils2 = __webpack_require__(/*! ./utils */ \"./src/DateRangeInput/utils.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/DateRangeInput/DateRangeInput.tsx\",\n _this = void 0;\n/**\n * The DateRangeInput component lets users select a date with the keyboard.\n * @version 5.59.0\n * @see https://rsuitejs.com/components/date-range-input/\n */\nvar DateRangeInput = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'date-range-input' : _props$classPrefix,\n _props$character = props.character,\n character = _props$character === void 0 ? ' ~ ' : _props$character,\n _props$format = props.format,\n formatStr = _props$format === void 0 ? 'yyyy-MM-dd' : _props$format,\n valueProp = props.value,\n _props$defaultValue = props.defaultValue,\n defaultValue = _props$defaultValue === void 0 ? [] : _props$defaultValue,\n placeholder = props.placeholder,\n onChange = props.onChange,\n onKeyDown = props.onKeyDown,\n onBlur = props.onBlur,\n onFocus = props.onFocus,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"className\", \"classPrefix\", \"character\", \"format\", \"value\", \"defaultValue\", \"placeholder\", \"onChange\", \"onKeyDown\", \"onBlur\", \"onFocus\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge;\n var classes = merge(className, withClassPrefix());\n var inputRef = (0, _react.useRef)();\n var _useState = (0, _react.useState)({\n selectedPattern: 'y',\n selectionStart: 0,\n selectionEnd: 0\n }),\n selectedState = _useState[0],\n setSelectedState = _useState[1];\n var _useCustom = (0, _utils.useCustom)('Calendar'),\n locale = _useCustom.locale;\n var rangeFormatStr = \"\" + formatStr + character + formatStr;\n var dateLocale = locale.dateLocale;\n var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1],\n isControlled = _useControlled[2];\n var _useState2 = (0, _react.useState)(_utils2.DateType.Start),\n dateType = _useState2[0],\n setDateType = _useState2[1];\n var dateInputOptions = {\n formatStr: formatStr,\n locale: dateLocale,\n isControlledDate: isControlled\n };\n var startDateState = (0, _DateInput.useDateInputState)((0, _extends2.default)({}, dateInputOptions, {\n date: (value === null || value === void 0 ? void 0 : value[0]) || null\n }));\n var endDateState = (0, _DateInput.useDateInputState)((0, _extends2.default)({}, dateInputOptions, {\n date: (value === null || value === void 0 ? void 0 : value[1]) || null\n }));\n var getActiveState = function getActiveState(type) {\n if (type === void 0) {\n type = dateType;\n }\n return type === _utils2.DateType.Start ? startDateState : endDateState;\n };\n var _useIsFocused = (0, _DateInput.useIsFocused)({\n onBlur: onBlur,\n onFocus: onFocus\n }),\n focused = _useIsFocused[0],\n focusEventProps = _useIsFocused[1];\n var renderedValue = (0, _react.useMemo)(function () {\n var dateString = startDateState.toDateString() + character + endDateState.toDateString();\n if (!startDateState.isEmptyValue() || !endDateState.isEmptyValue()) {\n return dateString;\n }\n return !focused ? '' : dateString;\n }, [character, endDateState, focused, startDateState]);\n var keyPressOptions = {\n formatStr: formatStr,\n rangeFormatStr: rangeFormatStr,\n localize: dateLocale.localize,\n selectedMonth: getActiveState().dateField.month,\n dateString: renderedValue,\n dateType: dateType,\n character: character\n };\n var setSelectionRange = (0, _DateInput.useInputSelection)(inputRef);\n var handleChange = (0, _utils.useEventCallback)(function (date, event) {\n var nextValue = dateType === _utils2.DateType.Start ? [date, value === null || value === void 0 ? void 0 : value[1]] : [value === null || value === void 0 ? void 0 : value[0], date];\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n setValue(nextValue);\n });\n var onSegmentChange = (0, _utils.useEventCallback)(function (event, nextDirection) {\n var input = event.target;\n var key = event.key;\n var direction = nextDirection || (key === 'ArrowRight' ? 'right' : 'left');\n if (input.selectionEnd === null || input.selectionStart === null) {\n return;\n }\n var cursorIndex = direction === 'right' ? input.selectionEnd : input.selectionStart;\n var nextDateType = dateType;\n if ((0, _utils2.isSwitchDateType)(renderedValue, character, cursorIndex, direction)) {\n nextDateType = dateType === _utils2.DateType.Start ? _utils2.DateType.End : _utils2.DateType.Start;\n setDateType(nextDateType);\n }\n var state = (0, _utils2.getInputSelectedState)((0, _extends2.default)({}, keyPressOptions, {\n dateType: nextDateType,\n selectedMonth: getActiveState(nextDateType).dateField.month,\n input: input,\n direction: direction\n }));\n setSelectionRange(state.selectionStart, state.selectionEnd);\n setSelectedState(state);\n });\n var onSegmentValueChange = (0, _utils.useEventCallback)(function (event) {\n var input = event.target;\n var key = event.key;\n var offset = key === 'ArrowUp' ? 1 : -1;\n var state = (0, _utils2.getInputSelectedState)((0, _extends2.default)({}, keyPressOptions, {\n input: input,\n valueOffset: offset\n }));\n setSelectedState(state);\n getActiveState().setDateOffset(state.selectedPattern, offset, function (date) {\n return handleChange(date, event);\n });\n setSelectionRange(state.selectionStart, state.selectionEnd);\n });\n var onSegmentValueChangeWithNumericKeys = (0, _utils.useEventCallback)(function (event) {\n var input = event.target;\n var key = event.key;\n var pattern = selectedState.selectedPattern;\n if (!pattern) {\n return;\n }\n var field = getActiveState().getDateField(pattern);\n var value = parseInt(key, 10);\n var padValue = parseInt(\"\" + (field.value || '') + key, 10);\n var newValue = value;\n\n // Check if the value entered by the user is a valid date\n if ((0, _DateInput.validateDateTime)(field.name, padValue)) {\n newValue = padValue;\n }\n if (pattern === 'M') {\n // Month cannot be less than 1.\n newValue = Math.max(1, newValue);\n }\n getActiveState().setDateField(pattern, newValue, function (date) {\n return handleChange(date, event);\n });\n\n // The currently selected month will be retained as a parameter of getInputSelectedState,\n // but if the user enters a month, the month value will be replaced with the value entered by the user.\n var selectedMonth = pattern === 'M' ? newValue : getActiveState().dateField.month;\n var nextState = (0, _utils2.getInputSelectedState)((0, _extends2.default)({}, keyPressOptions, {\n input: input,\n selectedMonth: selectedMonth\n }));\n setSelectedState(nextState);\n setSelectionRange(nextState.selectionStart, nextState.selectionEnd);\n\n // If the field is full value, move the cursor to the next field\n if ((0, _DateInput.isFieldFullValue)(formatStr, newValue, pattern) && input.selectionEnd !== input.value.length) {\n onSegmentChange(event, 'right');\n }\n });\n var onSegmentValueRemove = (0, _utils.useEventCallback)(function (event) {\n var input = event.target;\n if (selectedState.selectedPattern) {\n var nextState = (0, _utils2.getInputSelectedState)((0, _extends2.default)({}, keyPressOptions, {\n input: input,\n valueOffset: null\n }));\n setSelectedState(nextState);\n setSelectionRange(nextState.selectionStart, nextState.selectionEnd);\n getActiveState().setDateField(selectedState.selectedPattern, null, function (date) {\n return handleChange(date, event);\n });\n }\n });\n var handleClick = (0, _utils.useEventCallback)(function (event) {\n var input = event.target;\n if (input.selectionStart === null) {\n return;\n }\n var cursorIndex = input.selectionStart === renderedValue.length ? 0 : input.selectionStart;\n var dateType = (0, _utils2.getDateType)(renderedValue, character, cursorIndex);\n var state = (0, _utils2.getInputSelectedState)((0, _extends2.default)({}, keyPressOptions, {\n dateType: dateType,\n selectedMonth: getActiveState(dateType).dateField.month,\n input: input\n }));\n setDateType(dateType);\n setSelectedState(state);\n setSelectionRange(state.selectionStart, state.selectionEnd);\n });\n var onKeyboardInput = (0, _DateInput.useKeyboardInputEvent)({\n onSegmentChange: onSegmentChange,\n onSegmentValueChange: onSegmentValueChange,\n onSegmentValueChangeWithNumericKeys: onSegmentValueChangeWithNumericKeys,\n onSegmentValueRemove: onSegmentValueRemove,\n onKeyDown: onKeyDown\n });\n return /*#__PURE__*/_react.default.createElement(_Input.default, (0, _extends2.default)({\n inputMode: focused ? 'numeric' : 'text',\n autoComplete: \"off\",\n autoCorrect: \"off\",\n spellCheck: false,\n className: classes,\n ref: (0, _utils.mergeRefs)(inputRef, ref),\n onKeyDown: onKeyboardInput,\n onClick: handleClick,\n value: renderedValue,\n placeholder: placeholder || rangeFormatStr\n }, focusEventProps, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 264,\n columnNumber: 5\n }\n }));\n});\nDateRangeInput.displayName = 'DateRangeInput';\nDateRangeInput.propTypes = {\n character: _propTypes.default.string,\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n format: _propTypes.default.string,\n placeholder: _propTypes.default.string,\n onChange: _propTypes.default.func,\n onKeyDown: _propTypes.default.func,\n onFocus: _propTypes.default.func,\n onBlur: _propTypes.default.func\n};\nvar _default = DateRangeInput;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/DateRangeInput/DateRangeInput.tsx?");
6861
6850
 
6862
6851
  /***/ }),
6863
6852
 
@@ -6890,7 +6879,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
6890
6879
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6891
6880
 
6892
6881
  "use strict";
6893
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _dateUtils = __webpack_require__(/*! ../utils/dateUtils */ \"./src/utils/dateUtils.ts\");\nvar _CalendarContainer = _interopRequireDefault(__webpack_require__(/*! ../Calendar/CalendarContainer */ \"./src/Calendar/CalendarContainer.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/DateRangePicker/Calendar.tsx\",\n _this = void 0;\nvar Calendar = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? _CalendarContainer.default : _props$as,\n _props$calendarDate = props.calendarDate,\n calendarDate = _props$calendarDate === void 0 ? [new Date(), (0, _dateUtils.addMonths)(new Date(), 1)] : _props$calendarDate,\n _props$format = props.format,\n format = _props$format === void 0 ? 'yyyy-MM-dd' : _props$format,\n disabledDate = props.disabledDate,\n _props$index = props.index,\n index = _props$index === void 0 ? 0 : _props$index,\n limitEndYear = props.limitEndYear,\n limitStartYear = props.limitStartYear,\n onChangeCalendarMonth = props.onChangeCalendarMonth,\n onChangeCalendarTime = props.onChangeCalendarTime,\n onToggleMeridian = props.onToggleMeridian,\n onSelect = props.onSelect,\n _props$value = props.value,\n value = _props$value === void 0 ? [] : _props$value,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"calendarDate\", \"format\", \"disabledDate\", \"index\", \"limitEndYear\", \"limitStartYear\", \"onChangeCalendarMonth\", \"onChangeCalendarTime\", \"onToggleMeridian\", \"onSelect\", \"value\"]);\n var onMoveForward = (0, _react.useCallback)(function (nextPageDate) {\n onChangeCalendarMonth === null || onChangeCalendarMonth === void 0 ? void 0 : onChangeCalendarMonth(index, nextPageDate);\n }, [index, onChangeCalendarMonth]);\n var onMoveBackward = (0, _react.useCallback)(function (nextPageDate) {\n onChangeCalendarMonth === null || onChangeCalendarMonth === void 0 ? void 0 : onChangeCalendarMonth(index, nextPageDate);\n }, [index, onChangeCalendarMonth]);\n var handleSelect = (0, _react.useCallback)(function (date, event) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(index, date, event);\n }, [index, onSelect]);\n var handleChangeMonth = (0, _react.useCallback)(function (nextPageDate) {\n onChangeCalendarMonth === null || onChangeCalendarMonth === void 0 ? void 0 : onChangeCalendarMonth(index, nextPageDate);\n }, [index, onChangeCalendarMonth]);\n var handleChangeTime = (0, _react.useCallback)(function (nextPageDate) {\n onChangeCalendarTime === null || onChangeCalendarTime === void 0 ? void 0 : onChangeCalendarTime(index, nextPageDate);\n }, [index, onChangeCalendarTime]);\n var handleToggleMeridian = (0, _react.useCallback)(function (event) {\n onToggleMeridian(index, event);\n }, [index, onToggleMeridian]);\n var getCalendarDate = (0, _react.useCallback)(function () {\n return calendarDate[index];\n }, [calendarDate, index]);\n var handleMoveForward = (0, _react.useCallback)(function () {\n onMoveForward === null || onMoveForward === void 0 ? void 0 : onMoveForward((0, _dateUtils.addMonths)(getCalendarDate(), 1));\n }, [getCalendarDate, onMoveForward]);\n var handleMoveBackward = (0, _react.useCallback)(function () {\n onMoveBackward === null || onMoveBackward === void 0 ? void 0 : onMoveBackward((0, _dateUtils.addMonths)(getCalendarDate(), -1));\n }, [getCalendarDate, onMoveBackward]);\n var disabledMonth = (0, _react.useCallback)(function (date) {\n return disabledDate === null || disabledDate === void 0 ? void 0 : disabledDate(date, value, _utils.DATERANGE_DISABLED_TARGET.CALENDAR);\n }, [disabledDate, value]);\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n format: format,\n dateRange: value,\n disabledDate: disabledMonth,\n index: index,\n limitEndYear: limitEndYear,\n limitStartYear: limitStartYear,\n onChangeMonth: handleChangeMonth,\n onChangeTime: handleChangeTime,\n onMoveBackward: handleMoveBackward,\n onMoveForward: handleMoveForward,\n onToggleMeridian: handleToggleMeridian,\n onSelect: handleSelect,\n calendarDate: getCalendarDate(),\n ref: ref,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 118,\n columnNumber: 7\n }\n }));\n});\nCalendar.displayName = 'DateRangePicker.Calendar';\nCalendar.propTypes = {\n value: _propTypes.default.arrayOf(_propTypes.default.instanceOf(Date)),\n hoverValue: _propTypes.default.arrayOf(_propTypes.default.instanceOf(Date)),\n calendarDate: _propTypes.default.arrayOf(_propTypes.default.instanceOf(Date)),\n index: _propTypes.default.number,\n format: _propTypes.default.string,\n isoWeek: _propTypes.default.bool,\n limitEndYear: _propTypes.default.number,\n limitStartYear: _propTypes.default.number,\n classPrefix: _propTypes.default.string,\n disabledDate: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onMouseMove: _propTypes.default.func,\n onChangeCalendarMonth: _propTypes.default.func\n};\nvar _default = Calendar;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/DateRangePicker/Calendar.tsx?");
6882
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _dateUtils = __webpack_require__(/*! ../utils/dateUtils */ \"./src/utils/dateUtils.ts\");\nvar _CalendarContainer = _interopRequireDefault(__webpack_require__(/*! ../Calendar/CalendarContainer */ \"./src/Calendar/CalendarContainer.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/DateRangePicker/Calendar.tsx\",\n _this = void 0;\nvar Calendar = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? _CalendarContainer.default : _props$as,\n _props$calendarDate = props.calendarDate,\n calendarDate = _props$calendarDate === void 0 ? [new Date(), (0, _dateUtils.addMonths)(new Date(), 1)] : _props$calendarDate,\n _props$format = props.format,\n format = _props$format === void 0 ? 'yyyy-MM-dd' : _props$format,\n disabledDate = props.disabledDate,\n _props$index = props.index,\n index = _props$index === void 0 ? 0 : _props$index,\n limitEndYear = props.limitEndYear,\n limitStartYear = props.limitStartYear,\n onChangeCalendarMonth = props.onChangeCalendarMonth,\n onChangeCalendarTime = props.onChangeCalendarTime,\n onToggleMeridian = props.onToggleMeridian,\n onSelect = props.onSelect,\n _props$value = props.value,\n value = _props$value === void 0 ? [] : _props$value,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"calendarDate\", \"format\", \"disabledDate\", \"index\", \"limitEndYear\", \"limitStartYear\", \"onChangeCalendarMonth\", \"onChangeCalendarTime\", \"onToggleMeridian\", \"onSelect\", \"value\"]);\n var onMoveForward = (0, _utils.useEventCallback)(function (nextPageDate) {\n onChangeCalendarMonth === null || onChangeCalendarMonth === void 0 ? void 0 : onChangeCalendarMonth(index, nextPageDate);\n });\n var onMoveBackward = (0, _utils.useEventCallback)(function (nextPageDate) {\n onChangeCalendarMonth === null || onChangeCalendarMonth === void 0 ? void 0 : onChangeCalendarMonth(index, nextPageDate);\n });\n var handleSelect = (0, _utils.useEventCallback)(function (date, event) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(index, date, event);\n });\n var handleChangeMonth = (0, _utils.useEventCallback)(function (nextPageDate) {\n onChangeCalendarMonth === null || onChangeCalendarMonth === void 0 ? void 0 : onChangeCalendarMonth(index, nextPageDate);\n });\n var handleChangeTime = (0, _utils.useEventCallback)(function (nextPageDate) {\n onChangeCalendarTime === null || onChangeCalendarTime === void 0 ? void 0 : onChangeCalendarTime(index, nextPageDate);\n });\n var handleToggleMeridian = (0, _utils.useEventCallback)(function (event) {\n onToggleMeridian(index, event);\n });\n var getCalendarDate = function getCalendarDate() {\n return calendarDate[index];\n };\n var handleMoveForward = (0, _utils.useEventCallback)(function () {\n onMoveForward === null || onMoveForward === void 0 ? void 0 : onMoveForward((0, _dateUtils.addMonths)(getCalendarDate(), 1));\n });\n var handleMoveBackward = (0, _utils.useEventCallback)(function () {\n onMoveBackward === null || onMoveBackward === void 0 ? void 0 : onMoveBackward((0, _dateUtils.addMonths)(getCalendarDate(), -1));\n });\n var disabledMonth = function disabledMonth(date) {\n return disabledDate === null || disabledDate === void 0 ? void 0 : disabledDate(date, value, _utils.DATERANGE_DISABLED_TARGET.CALENDAR);\n };\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n \"data-testid\": \"calendar-\" + (index === 0 ? 'start' : 'end')\n }, rest, {\n format: format,\n dateRange: value,\n disabledDate: disabledMonth,\n index: index,\n limitEndYear: limitEndYear,\n limitStartYear: limitStartYear,\n onChangeMonth: handleChangeMonth,\n onChangeTime: handleChangeTime,\n onMoveBackward: handleMoveBackward,\n onMoveForward: handleMoveForward,\n onToggleMeridian: handleToggleMeridian,\n onSelect: handleSelect,\n calendarDate: getCalendarDate(),\n ref: ref,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 98,\n columnNumber: 7\n }\n }));\n});\nCalendar.displayName = 'DateRangePicker.Calendar';\nCalendar.propTypes = {\n value: _propTypes.default.arrayOf(_propTypes.default.instanceOf(Date)),\n hoverValue: _propTypes.default.arrayOf(_propTypes.default.instanceOf(Date)),\n calendarDate: _propTypes.default.arrayOf(_propTypes.default.instanceOf(Date)),\n index: _propTypes.default.number,\n format: _propTypes.default.string,\n isoWeek: _propTypes.default.bool,\n limitEndYear: _propTypes.default.number,\n limitStartYear: _propTypes.default.number,\n classPrefix: _propTypes.default.string,\n disabledDate: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onMouseMove: _propTypes.default.func,\n onChangeCalendarMonth: _propTypes.default.func\n};\nvar _default = Calendar;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/DateRangePicker/Calendar.tsx?");
6894
6883
 
6895
6884
  /***/ }),
6896
6885
 
@@ -6901,7 +6890,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
6901
6890
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6902
6891
 
6903
6892
  "use strict";
6904
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _Calendar = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Calendar */ \"./node_modules/@rsuite/icons/legacy/Calendar.js\"));\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _partial = _interopRequireDefault(__webpack_require__(/*! lodash/partial */ \"./node_modules/lodash/partial.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _debounce = _interopRequireDefault(__webpack_require__(/*! lodash/debounce */ \"./node_modules/lodash/debounce.js\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _CustomProvider = __webpack_require__(/*! ../CustomProvider */ \"./src/CustomProvider/index.tsx\");\nvar _Toolbar = _interopRequireDefault(__webpack_require__(/*! ../DatePicker/Toolbar */ \"./src/DatePicker/Toolbar.tsx\"));\nvar _PredefinedRanges = _interopRequireDefault(__webpack_require__(/*! ../DatePicker/PredefinedRanges */ \"./src/DatePicker/PredefinedRanges.tsx\"));\nvar _Stack = _interopRequireDefault(__webpack_require__(/*! ../Stack */ \"./src/Stack/index.tsx\"));\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _dateUtils = __webpack_require__(/*! ../utils/dateUtils */ \"./src/utils/dateUtils.ts\");\nvar _Calendar2 = _interopRequireDefault(__webpack_require__(/*! ./Calendar */ \"./src/DateRangePicker/Calendar.tsx\"));\nvar disabledDateUtils = _interopRequireWildcard(__webpack_require__(/*! ./disabledDateUtils */ \"./src/DateRangePicker/disabledDateUtils.ts\"));\nvar _utils2 = __webpack_require__(/*! ./utils */ \"./src/DateRangePicker/utils.ts\");\nvar _deprecatePropType = __webpack_require__(/*! ../utils/deprecatePropType */ \"./src/utils/deprecatePropType.ts\");\nvar _DateRangePickerContext = _interopRequireDefault(__webpack_require__(/*! ./DateRangePickerContext */ \"./src/DateRangePicker/DateRangePickerContext.ts\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/DateRangePicker/DateRangePicker.tsx\",\n _this = void 0;\n/**\n * A date range picker allows you to select a date range from a calendar.\n *\n * @see https://rsuitejs.com/components/date-range-picker\n */\nvar DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _ref, _ref2, _merge;\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n className = props.className,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$editable = props.editable,\n editable = _props$editable === void 0 ? true : _props$editable,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$character = props.character,\n character = _props$character === void 0 ? ' ~ ' : _props$character,\n defaultCalendarValue = props.defaultCalendarValue,\n defaultValue = props.defaultValue,\n disabled = props.disabled,\n DEPRECATED_disabledDateProp = props.disabledDate,\n shouldDisableDate = props.shouldDisableDate,\n _props$format = props.format,\n formatStr = _props$format === void 0 ? 'yyyy-MM-dd' : _props$format,\n hoverRange = props.hoverRange,\n _props$isoWeek = props.isoWeek,\n isoWeek = _props$isoWeek === void 0 ? false : _props$isoWeek,\n _props$limitEndYear = props.limitEndYear,\n limitEndYear = _props$limitEndYear === void 0 ? 1000 : _props$limitEndYear,\n limitStartYear = props.limitStartYear,\n overrideLocale = props.locale,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n oneTap = props.oneTap,\n _props$placeholder = props.placeholder,\n placeholder = _props$placeholder === void 0 ? '' : _props$placeholder,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n ranges = props.ranges,\n renderValue = props.renderValue,\n _props$showOneCalenda = props.showOneCalendar,\n showOneCalendar = _props$showOneCalenda === void 0 ? false : _props$showOneCalenda,\n showWeekNumbers = props.showWeekNumbers,\n showMeridian = props.showMeridian,\n style = props.style,\n toggleAs = props.toggleAs,\n caretAs = props.caretAs,\n valueProp = props.value,\n onChange = props.onChange,\n onClean = props.onClean,\n onClose = props.onClose,\n onEnter = props.onEnter,\n onEntered = props.onEntered,\n onExited = props.onExited,\n onOk = props.onOk,\n onOpen = props.onOpen,\n onSelect = props.onSelect,\n onShortcutClick = props.onShortcutClick,\n renderTitle = props.renderTitle,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"className\", \"appearance\", \"editable\", \"cleanable\", \"character\", \"defaultCalendarValue\", \"defaultValue\", \"disabled\", \"disabledDate\", \"shouldDisableDate\", \"format\", \"hoverRange\", \"isoWeek\", \"limitEndYear\", \"limitStartYear\", \"locale\", \"menuClassName\", \"menuStyle\", \"oneTap\", \"placeholder\", \"placement\", \"ranges\", \"renderValue\", \"showOneCalendar\", \"showWeekNumbers\", \"showMeridian\", \"style\", \"toggleAs\", \"caretAs\", \"value\", \"onChange\", \"onClean\", \"onClose\", \"onEnter\", \"onEntered\", \"onExited\", \"onOk\", \"onOpen\", \"onSelect\", \"onShortcutClick\", \"renderTitle\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var _useCustom = (0, _utils.useCustom)('DateRangePicker', overrideLocale),\n locale = _useCustom.locale,\n formatDate = _useCustom.formatDate,\n parseDate = _useCustom.parseDate;\n var rangeFormatStr = \"\" + formatStr + character + formatStr;\n var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue !== null && defaultValue !== void 0 ? defaultValue : null),\n value = _useControlled[0],\n setValue = _useControlled[1];\n /**\n * Whether to complete the selection.\n * Everytime selection will change this value. If the value is false, it means that the selection has not been completed.\n *\n * In `oneTap` mode, select action will not change this value, its value should be true always.\n */\n var _useState = (0, _react.useState)(true),\n isSelectedIdle = _useState[0],\n setSelectedIdle = _useState[1];\n /**\n * The currently selected date range.\n *\n * The time range is selected by two clicks. After the first click,\n * the cursor will store a temporary event date in the process until\n * the second click to determine the end date of the date range.\n *\n */\n var _useState2 = (0, _react.useState)((_ref = valueProp !== null && valueProp !== void 0 ? valueProp : defaultValue) !== null && _ref !== void 0 ? _ref : []),\n selectedDates = _useState2[0],\n setSelectedDates = _useState2[1]; // The date of the current hover, used to reduce the calculation of `handleMouseMove`\n var _useState3 = (0, _react.useState)(null),\n hoverDateRange = _useState3[0],\n setHoverDateRange = _useState3[1]; // The displayed calendar panel is rendered based on this value.\n var _useState4 = (0, _react.useState)((0, _utils2.getSafeCalendarDate)({\n value: (_ref2 = value !== null && value !== void 0 ? value : defaultCalendarValue) !== null && _ref2 !== void 0 ? _ref2 : null\n })),\n calendarDate = _useState4[0],\n setCalendarDate = _useState4[1];\n var _useState5 = (0, _react.useState)(),\n inputState = _useState5[0],\n setInputState = _useState5[1];\n /**\n * When hoverRange is set, `selectValue` will be updated during the hover process,\n * which will cause the `selectValue` to be updated after the first click,\n * so declare a Ref to temporarily store the `selectValue` of the first click.\n */\n var selectRangeValueRef = (0, _react.useRef)(null);\n\n /**\n * Get the time on the calendar.\n */\n var getCalendarDatetime = (0, _react.useCallback)(function (calendarKey) {\n var index = calendarKey === 'start' ? 0 : 1;\n return (calendarDate === null || calendarDate === void 0 ? void 0 : calendarDate[index]) || (defaultCalendarValue === null || defaultCalendarValue === void 0 ? void 0 : defaultCalendarValue[index]);\n }, [calendarDate, defaultCalendarValue]);\n\n /**\n * Call this function to update the calendar panel rendering benchmark value.\n * If params `value` is not passed, it defaults to [new Date(), addMonth(new Date(), 1)].\n */\n var updateCalendarDateRange = (0, _react.useCallback)(function (_ref3) {\n var dateRange = _ref3.dateRange,\n calendarKey = _ref3.calendarKey,\n eventName = _ref3.eventName;\n var nextValue = dateRange;\n\n // The time should remain the same when the dates in the date range are changed.\n if ((0, _dateUtils.shouldRenderTime)(formatStr) && dateRange !== null && dateRange !== void 0 && dateRange.length && eventName !== 'changeTime') {\n var _startDate = (0, _dateUtils.copyTime)({\n from: getCalendarDatetime('start'),\n to: dateRange[0]\n });\n var _endDate = (0, _dateUtils.copyTime)({\n from: getCalendarDatetime('end'),\n to: dateRange.length === 1 ? (0, _dateUtils.addMonths)(_startDate, 1) : dateRange[1]\n });\n nextValue = [_startDate, _endDate];\n } else if (dateRange === null && typeof defaultCalendarValue !== 'undefined') {\n // Make the calendar render the value of defaultCalendarValue after clearing the value.\n nextValue = defaultCalendarValue;\n }\n setCalendarDate((0, _utils2.getSafeCalendarDate)({\n value: nextValue,\n calendarKey: calendarKey\n }));\n }, [formatStr, defaultCalendarValue, getCalendarDatetime]);\n\n // if valueProp changed then update selectValue/hoverValue\n (0, _react.useEffect)(function () {\n setSelectedDates(valueProp !== null && valueProp !== void 0 ? valueProp : []);\n setHoverDateRange(valueProp !== null && valueProp !== void 0 ? valueProp : null);\n }, [valueProp]);\n var _useState6 = (0, _react.useState)(false),\n isPickerToggleActive = _useState6[0],\n setPickerToggleActive = _useState6[1];\n var rootRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var triggerRef = (0, _react.useRef)(null);\n var handleCloseDropdown = (0, _react.useCallback)(function () {\n var _triggerRef$current, _triggerRef$current$c;\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$c = _triggerRef$current.close) === null || _triggerRef$current$c === void 0 ? void 0 : _triggerRef$current$c.call(_triggerRef$current);\n }, []);\n (0, _Picker.usePublicMethods)(ref, {\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef,\n rootRef: rootRef\n });\n var getDisplayString = (0, _react.useCallback)(function (nextValue, isPlaintext) {\n var _nextValue$, _nextValue$2;\n var startDate = (_nextValue$ = nextValue === null || nextValue === void 0 ? void 0 : nextValue[0]) !== null && _nextValue$ !== void 0 ? _nextValue$ : null;\n var endDate = (_nextValue$2 = nextValue === null || nextValue === void 0 ? void 0 : nextValue[1]) !== null && _nextValue$2 !== void 0 ? _nextValue$2 : null;\n if (startDate && endDate) {\n var displayValue = [startDate, endDate].sort(_dateUtils.compareAsc);\n if (isPlaintext) {\n return formatDate(displayValue[0], formatStr) + character + formatDate(displayValue[1], formatStr);\n }\n return renderValue ? renderValue(displayValue, formatStr) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_CustomProvider.FormattedDate, {\n date: displayValue[0],\n formatStr: formatStr,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 351,\n columnNumber: 13\n }\n }), character, /*#__PURE__*/_react.default.createElement(_CustomProvider.FormattedDate, {\n date: displayValue[1],\n formatStr: formatStr,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 353,\n columnNumber: 13\n }\n }));\n }\n return isPlaintext ? '' : placeholder || rangeFormatStr;\n }, [character, formatDate, formatStr, placeholder, rangeFormatStr, renderValue]);\n\n /**\n * preset hover range\n */\n var getHoverRangeValue = (0, _react.useCallback)(function (date) {\n function getHoverRangeFunc() {\n if (hoverRange === 'week') {\n return (0, _partial.default)(_utils2.getWeekHoverRange, isoWeek);\n } else if (hoverRange === 'month') {\n return _utils2.getMonthHoverRange;\n }\n return hoverRange;\n }\n var hoverRangeFunc = getHoverRangeFunc();\n if ((0, _isNil.default)(hoverRangeFunc)) {\n return null;\n }\n var hoverValues = hoverRangeFunc(date);\n var isHoverRangeValid = hoverValues instanceof Array && hoverValues.length === 2;\n if (!isHoverRangeValid) {\n return null;\n }\n if ((0, _dateUtils.isAfter)(hoverValues[0], hoverValues[1])) {\n hoverValues = (0, _dateUtils.reverseDateRangeOmitTime)(hoverValues);\n }\n return hoverValues;\n }, [hoverRange, isoWeek]);\n var handleValueUpdate = (0, _react.useCallback)(function (event, nextValue, closeOverlay) {\n if (closeOverlay === void 0) {\n closeOverlay = true;\n }\n // If nextValue is null, it means that the user is erasing the selected dates.\n setSelectedDates(nextValue !== null && nextValue !== void 0 ? nextValue : []);\n if (!(0, _utils2.isSameRange)(nextValue, value, formatStr)) {\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }\n\n // `closeOverlay` default value is `true`\n if (closeOverlay !== false) {\n handleCloseDropdown();\n }\n }, [formatStr, handleCloseDropdown, onChange, setValue, value]);\n\n /**\n * Select the date range. If oneTap is not set, you need to click twice to select the start time and end time.\n * The MouseMove event is called between the first click and the second click to update the selection state.\n */\n var handleMouseMove = (0, _react.useCallback)(function (date) {\n var nextHoverDateRange = getHoverRangeValue(date);\n\n // If hasDoneSelect is false,\n // it means there's already one selected date\n // and waiting for user to select the second date to complete the selection.\n if (!isSelectedIdle) {\n // If `hoverRange` is set, you need to change the value of hoverDateRange according to the rules\n if (!(0, _isNil.default)(nextHoverDateRange) && !(0, _isNil.default)(selectRangeValueRef.current)) {\n var nextSelectedDates = [selectRangeValueRef.current[0], nextHoverDateRange[1]];\n if (_utils.DateUtils.isBefore(nextHoverDateRange[0], selectRangeValueRef.current[0])) {\n nextSelectedDates = [nextHoverDateRange[0], selectRangeValueRef.current[1]];\n }\n setSelectedDates(nextSelectedDates);\n } else {\n setHoverDateRange(function (prevHoverValue) {\n return (0, _isNil.default)(prevHoverValue) ? null : [prevHoverValue[0], date];\n });\n }\n\n // Before the first click, if nextHoverDateRange has a value, hoverDateRange needs to be updated\n } else if (!(0, _isNil.default)(nextHoverDateRange)) {\n setHoverDateRange(nextHoverDateRange);\n }\n }, [getHoverRangeValue, isSelectedIdle]);\n\n /**\n * Callback for selecting a date cell in the calendar grid\n */\n var handleSelectDate = (0, _react.useCallback)(function (index, date, event) {\n var calendarKey = index === 0 ? 'start' : 'end';\n var nextSelectDates = hoverDateRange !== null && hoverDateRange !== void 0 ? hoverDateRange : [];\n var hoverRangeValue = getHoverRangeValue(date);\n var noHoverRangeValid = (0, _isNil.default)(hoverRangeValue);\n\n // in `oneTap` mode\n if (isSelectedIdle && oneTap) {\n handleValueUpdate(event, noHoverRangeValid ? [(0, _dateUtils.startOfDay)(date), (0, _dateUtils.endOfDay)(date)] : hoverRangeValue);\n setSelectedIdle(false);\n return;\n }\n\n // no preset hover range can use\n if (noHoverRangeValid) {\n // start select\n if (isSelectedIdle) {\n nextSelectDates = [date];\n } else {\n // finish select\n nextSelectDates[1] = date;\n }\n } else {\n if (!isSelectedIdle) {\n nextSelectDates = selectedDates;\n selectRangeValueRef.current = null;\n } else {\n nextSelectDates = hoverRangeValue;\n selectRangeValueRef.current = hoverRangeValue;\n }\n }\n if (nextSelectDates.length === 2) {\n // If user have completed the selection, then sort the selected dates.\n if ((0, _dateUtils.isAfter)(nextSelectDates[0], nextSelectDates[1])) {\n nextSelectDates = (0, _dateUtils.reverseDateRangeOmitTime)(nextSelectDates);\n }\n if ((0, _dateUtils.shouldRenderTime)(formatStr)) {\n nextSelectDates = [(0, _dateUtils.copyTime)({\n from: getCalendarDatetime('start'),\n to: nextSelectDates[0]\n }), (0, _dateUtils.copyTime)({\n from: getCalendarDatetime('end'),\n to: nextSelectDates[1]\n })];\n }\n setHoverDateRange(nextSelectDates);\n } else {\n setHoverDateRange([nextSelectDates[0], nextSelectDates[0]]);\n }\n setSelectedDates(nextSelectDates);\n updateCalendarDateRange({\n dateRange: nextSelectDates,\n calendarKey: calendarKey,\n eventName: 'changeDate'\n });\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(date, event);\n setSelectedIdle(!isSelectedIdle);\n }, [formatStr, getCalendarDatetime, getHoverRangeValue, handleValueUpdate, hoverDateRange, isSelectedIdle, onSelect, oneTap, selectedDates, updateCalendarDateRange]);\n\n /**\n * If `selectValue` changed, there will be the following effects.\n * 1. Check if the selection is completed.\n * 2. if the selection is completed, set the temporary `hoverValue` empty.\n */\n (0, _react.useEffect)(function () {\n var selectValueLength = selectedDates.length;\n var doneSelected = selectValueLength === 0 || selectValueLength === 2;\n doneSelected && setHoverDateRange(null);\n }, [selectedDates]);\n var updateSingleCalendarMonth = (0, _react.useCallback)(function (index, date) {\n var calendarKey = index === 0 ? 'start' : 'end';\n var nextCalendarDate = Array.from(calendarDate);\n nextCalendarDate[index] = date;\n updateCalendarDateRange({\n dateRange: nextCalendarDate,\n calendarKey: calendarKey,\n eventName: 'changeMonth'\n });\n }, [calendarDate, updateCalendarDateRange]);\n var updateSingleCalendarTime = (0, _react.useCallback)(function (index, date) {\n var calendarKey = index === 0 ? 'start' : 'end';\n var nextCalendarDate = Array.from(calendarDate);\n nextCalendarDate[index] = date;\n updateCalendarDateRange({\n dateRange: nextCalendarDate,\n calendarKey: calendarKey,\n eventName: 'changeTime'\n });\n setSelectedDates(function (prev) {\n var next = [].concat(prev);\n\n // if next[index] is not empty, only update the time after aligning the year, month and day\n next[index] = next[index] ? (0, _dateUtils.copyTime)({\n from: date,\n to: next[index]\n }) : new Date(date.valueOf());\n return next;\n });\n }, [calendarDate, updateCalendarDateRange]);\n\n /**\n * The callback triggered when PM/AM is switched.\n */\n var handleToggleMeridian = (0, _react.useCallback)(function (index) {\n var nextCalendarDate = Array.from(calendarDate);\n nextCalendarDate[index] = (0, _dateUtils.getReversedTimeMeridian)(nextCalendarDate[index]);\n setCalendarDate(nextCalendarDate);\n\n // If the value already exists, update the value again.\n if (selectedDates.length === 2) {\n var nextSelectedDates = Array.from(selectedDates);\n nextSelectedDates[index] = (0, _dateUtils.getReversedTimeMeridian)(nextSelectedDates[index]);\n setSelectedDates(nextSelectedDates);\n }\n }, [calendarDate, selectedDates]);\n\n /**\n * Toolbar operation callback function\n */\n var handleShortcutPageDate = (0, _react.useCallback)(function (range, closeOverlay, event) {\n if (closeOverlay === void 0) {\n closeOverlay = false;\n }\n var value = range.value;\n updateCalendarDateRange({\n dateRange: value\n });\n if (closeOverlay) {\n handleValueUpdate(event, value, closeOverlay);\n } else {\n setSelectedDates(value !== null && value !== void 0 ? value : []);\n }\n onShortcutClick === null || onShortcutClick === void 0 ? void 0 : onShortcutClick(range, event);\n\n // End unfinished selections.\n setSelectedIdle(true);\n }, [handleValueUpdate, onShortcutClick, updateCalendarDateRange]);\n var handleOK = (0, _react.useCallback)(function (event) {\n handleValueUpdate(event, selectedDates);\n onOk === null || onOk === void 0 ? void 0 : onOk(selectedDates, event);\n }, [handleValueUpdate, onOk, selectedDates]);\n var handleClean = (0, _react.useCallback)(function (event) {\n updateCalendarDateRange({\n dateRange: null\n });\n handleValueUpdate(event, null);\n }, [handleValueUpdate, updateCalendarDateRange]);\n\n /**\n * Callback after the input box value is changed.\n */\n var handleInputChange = (0, _react.useCallback)(function (value) {\n setInputState('Typing');\n var rangeValue = value.split(character);\n\n // isMatch('01/11/2020', 'MM/dd/yyyy') ==> true\n // isMatch('2020-11-01', 'MM/dd/yyyy') ==> false\n if (!_utils.DateUtils.isMatch(rangeValue[0], formatStr, {\n locale: locale.dateLocale\n }) || !_utils.DateUtils.isMatch(rangeValue[1], formatStr, {\n locale: locale.dateLocale\n })) {\n setInputState('Error');\n return;\n }\n var startDate = parseDate(rangeValue[0], formatStr);\n var endDate = parseDate(rangeValue[1], formatStr);\n var selectValue = [startDate, endDate];\n if (!_utils.DateUtils.isValid(startDate) || !_utils.DateUtils.isValid(endDate)) {\n setInputState('Error');\n return;\n }\n if (isDateDisabled(startDate, selectValue, true, _utils.DATERANGE_DISABLED_TARGET.CALENDAR)) {\n setInputState('Error');\n return;\n }\n setHoverDateRange(selectValue);\n setSelectedDates(selectValue);\n updateCalendarDateRange({\n dateRange: selectValue\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [character, rangeFormatStr, updateCalendarDateRange]);\n\n /**\n * The callback after the enter key is triggered on the input\n */\n var handleInputPressEnd = (0, _react.useCallback)(function (event) {\n if (inputState === 'Typing') {\n handleValueUpdate(event, selectedDates.length === 2 ? selectedDates : null);\n }\n setInputState('Initial');\n }, [handleValueUpdate, selectedDates, inputState]);\n var handleInputBackspace = (0, _react.useCallback)(function (event) {\n var value = event.target.value;\n\n // When the input box is empty, the date is cleared.\n if (value === '') {\n handleClean(event);\n }\n }, [handleClean]);\n var handleEnter = (0, _react.useCallback)(function () {\n var nextCalendarDate;\n if (value && value.length) {\n var _startDate2 = value[0],\n endData = value[1];\n nextCalendarDate = [_startDate2, (0, _dateUtils.isSameMonth)(_startDate2, endData) ? (0, _dateUtils.addMonths)(endData, 1) : endData];\n } else {\n // Reset the date on the calendar to the default date\n nextCalendarDate = (0, _utils2.getSafeCalendarDate)({\n value: defaultCalendarValue !== null && defaultCalendarValue !== void 0 ? defaultCalendarValue : null\n });\n }\n setSelectedDates(value !== null && value !== void 0 ? value : []);\n updateCalendarDateRange({\n dateRange: nextCalendarDate\n });\n }, [defaultCalendarValue, updateCalendarDateRange, setSelectedDates, value]);\n var handleEntered = (0, _react.useCallback)(function () {\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setPickerToggleActive(true);\n }, [onOpen]);\n var handleExited = (0, _react.useCallback)(function () {\n setPickerToggleActive(false);\n setSelectedIdle(true);\n onClose === null || onClose === void 0 ? void 0 : onClose();\n }, [onClose]);\n var isDateDisabled = (0, _react.useCallback)(function (date, selectDate, selectedDone, target) {\n if (typeof shouldDisableDate === 'function') {\n return shouldDisableDate(date, selectDate, selectedDone, target);\n }\n if (typeof DEPRECATED_disabledDateProp === 'function') {\n return DEPRECATED_disabledDateProp(date, selectDate, selectedDone, target);\n }\n return false;\n }, [DEPRECATED_disabledDateProp, shouldDisableDate]);\n var disabledByBetween = (0, _react.useCallback)(function (start, end, type) {\n // If the date is between the start and the end\n // the button is disabled\n while (_utils.DateUtils.isBefore(start, end) || _utils.DateUtils.isSameDay(start, end)) {\n if (isDateDisabled(start, selectedDates, isSelectedIdle, type)) {\n return true;\n }\n start = _utils.DateUtils.addDays(start, 1);\n }\n return false;\n }, [isDateDisabled, isSelectedIdle, selectedDates]);\n var disabledOkButton = (0, _react.useCallback)(function () {\n var start = selectedDates[0],\n end = selectedDates[1];\n if (!start || !end || !isSelectedIdle) {\n return true;\n }\n return disabledByBetween(start, end, _utils.DATERANGE_DISABLED_TARGET.TOOLBAR_BUTTON_OK);\n }, [disabledByBetween, isSelectedIdle, selectedDates]);\n var disabledShortcutButton = (0, _react.useCallback)(function (value) {\n if (value === void 0) {\n value = [];\n }\n var _value = value,\n start = _value[0],\n end = _value[1];\n if (!start || !end) {\n return true;\n }\n return disabledByBetween(start, end, _utils.DATERANGE_DISABLED_TARGET.TOOLBAR_SHORTCUT);\n }, [disabledByBetween]);\n var handleDisabledDate = (0, _react.useCallback)(function (date, values, type) {\n return isDateDisabled(date, values, isSelectedIdle, type);\n }, [isDateDisabled, isSelectedIdle]);\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({\n triggerRef: triggerRef,\n targetRef: targetRef,\n active: isPickerToggleActive,\n onExit: handleClean\n }, rest));\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = merge(className, menuClassName, prefix('daterange-menu'));\n var panelClasses = prefix('daterange-panel', {\n 'daterange-panel-show-one-calendar': showOneCalendar\n });\n\n /**\n * Set a min-width (528px) when there are two calendars\n * @see https://github.com/rsuite/rsuite/issues/3522\n */\n var panelStyles = {\n minWidth: showOneCalendar ? 'auto' : 528\n };\n var styles = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var calendarProps = {\n calendarDate: calendarDate,\n disabledDate: handleDisabledDate,\n format: formatStr,\n hoverRangeValue: hoverDateRange !== null && hoverDateRange !== void 0 ? hoverDateRange : undefined,\n isoWeek: isoWeek,\n limitEndYear: limitEndYear,\n limitStartYear: limitStartYear,\n locale: locale,\n showWeekNumbers: showWeekNumbers,\n value: selectedDates,\n showMeridian: showMeridian,\n onChangeCalendarMonth: updateSingleCalendarMonth,\n onChangeCalendarTime: updateSingleCalendarTime,\n onMouseMove: handleMouseMove,\n onSelect: handleSelectDate,\n onToggleMeridian: handleToggleMeridian,\n renderTitle: renderTitle\n };\n var sideRanges = (ranges === null || ranges === void 0 ? void 0 : ranges.filter(function (range) {\n return (range === null || range === void 0 ? void 0 : range.placement) === 'left';\n })) || [];\n var bottomRanges = ranges === null || ranges === void 0 ? void 0 : ranges.filter(function (range) {\n return (range === null || range === void 0 ? void 0 : range.placement) === 'bottom' || (range === null || range === void 0 ? void 0 : range.placement) === undefined;\n });\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n role: \"dialog\",\n className: classes,\n ref: (0, _utils.mergeRefs)(overlayRef, speakerRef),\n target: triggerRef,\n style: styles,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 848,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: panelClasses,\n style: panelStyles,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 855,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Stack.default, {\n alignItems: \"flex-start\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 856,\n columnNumber: 11\n }\n }, sideRanges.length > 0 && /*#__PURE__*/_react.default.createElement(_PredefinedRanges.default, {\n direction: \"column\",\n spacing: 0,\n className: prefix('daterange-predefined'),\n ranges: sideRanges,\n calendarDate: calendarDate,\n locale: locale,\n disabledShortcut: disabledShortcutButton,\n onShortcutClick: handleShortcutPageDate,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 858,\n columnNumber: 15\n }\n }), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('daterange-content'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 871,\n columnNumber: 15\n }\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('daterange-header'),\n \"data-testid\": \"daterange-header\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 872,\n columnNumber: 17\n }\n }, getDisplayString(selectedDates)), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix(\"daterange-calendar-\" + (showOneCalendar ? 'single' : 'group')),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 875,\n columnNumber: 17\n }\n }, /*#__PURE__*/_react.default.createElement(_DateRangePickerContext.default.Provider, {\n value: {\n isSelectedIdle: isSelectedIdle\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 878,\n columnNumber: 19\n }\n }, /*#__PURE__*/_react.default.createElement(_Calendar2.default, (0, _extends2.default)({\n index: 0\n }, calendarProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 879,\n columnNumber: 21\n }\n })), !showOneCalendar && /*#__PURE__*/_react.default.createElement(_Calendar2.default, (0, _extends2.default)({\n index: 1\n }, calendarProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 880,\n columnNumber: 42\n }\n }))))), /*#__PURE__*/_react.default.createElement(_Toolbar.default, {\n locale: locale,\n calendarDate: selectedDates,\n disabledOkBtn: disabledOkButton,\n disabledShortcut: disabledShortcutButton,\n hideOkBtn: oneTap,\n onOk: handleOK,\n onShortcutClick: handleShortcutPageDate,\n ranges: bottomRanges,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 884,\n columnNumber: 15\n }\n })))));\n };\n var hasValue = !(0, _isNil.default)(value) && value.length > 1;\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n name: 'daterange',\n appearance: appearance,\n hasValue: hasValue,\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\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, _utils.createChainedFunction)(handleEnter, onEnter),\n onEntered: (0, _utils.createChainedFunction)(handleEntered, onEntered),\n onExited: (0, _utils.createChainedFunction)(handleExited, onExited),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 912,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n ref: rootRef,\n className: merge(className, classes, (_merge = {}, _merge[prefix('error')] = inputState === 'Error', _merge)),\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 921,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys, _utils.DateUtils.calendarOnlyProps)), {\n as: toggleAs,\n ref: targetRef,\n appearance: appearance,\n editable: editable,\n inputMask: _utils.DateUtils.getDateMask(rangeFormatStr),\n inputValue: value ? getDisplayString(value, true) : '',\n inputPlaceholder: typeof placeholder === 'string' && placeholder ? placeholder : rangeFormatStr,\n onInputChange: handleInputChange,\n onInputBlur: handleInputPressEnd,\n onInputPressEnter: handleInputPressEnd,\n onInputBackspace: (0, _debounce.default)(handleInputBackspace, 10),\n onKeyDown: onPickerKeyDown,\n onClean: (0, _utils.createChainedFunction)(handleClean, onClean),\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n active: isPickerToggleActive,\n placement: placement,\n disabled: disabled,\n caretAs: caretAs || _Calendar.default,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 928,\n columnNumber: 9\n }\n }), getDisplayString(value))));\n});\nDateRangePicker.after = disabledDateUtils.after;\nDateRangePicker.afterToday = disabledDateUtils.afterToday;\nDateRangePicker.allowedDays = disabledDateUtils.allowedDays;\nDateRangePicker.allowedMaxDays = disabledDateUtils.allowedMaxDays;\nDateRangePicker.allowedRange = disabledDateUtils.allowedRange;\nDateRangePicker.before = disabledDateUtils.before;\nDateRangePicker.beforeToday = disabledDateUtils.beforeToday;\nDateRangePicker.combine = disabledDateUtils.combine;\nDateRangePicker.displayName = 'DateRangePicker';\nDateRangePicker.propTypes = (0, _extends2.default)({}, _Picker.pickerPropTypes, {\n ranges: _propTypes.default.array,\n value: _propTypes.default.arrayOf(_propTypes.default.instanceOf(Date)),\n defaultValue: _propTypes.default.arrayOf(_propTypes.default.instanceOf(Date)),\n defaultCalendarValue: _propTypes.default.arrayOf(_propTypes.default.instanceOf(Date)),\n hoverRange: _propTypes.default.oneOfType([_propTypes.default.oneOf(['week', 'month']), _propTypes.default.func]),\n format: _propTypes.default.string,\n isoWeek: _propTypes.default.bool,\n oneTap: _propTypes.default.bool,\n limitEndYear: _propTypes.default.number,\n limitStartYear: _propTypes.default.number,\n onChange: _propTypes.default.func,\n onOk: _propTypes.default.func,\n disabledDate: (0, _deprecatePropType.deprecatePropTypeNew)(_propTypes.default.func, 'Use \"shouldDisableDate\" property instead.'),\n shouldDisableDate: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n showWeekNumbers: _propTypes.default.bool,\n showMeridian: _propTypes.default.bool,\n showOneCalendar: _propTypes.default.bool\n});\nvar _default = DateRangePicker;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/DateRangePicker/DateRangePicker.tsx?");
6893
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _partial = _interopRequireDefault(__webpack_require__(/*! lodash/partial */ \"./node_modules/lodash/partial.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _Calendar = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Calendar */ \"./node_modules/@rsuite/icons/legacy/Calendar.js\"));\nvar _ClockO = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/ClockO */ \"./node_modules/@rsuite/icons/legacy/ClockO.js\"));\nvar _CustomProvider = __webpack_require__(/*! ../CustomProvider */ \"./src/CustomProvider/index.tsx\");\nvar _Toolbar = _interopRequireDefault(__webpack_require__(/*! ../DatePicker/Toolbar */ \"./src/DatePicker/Toolbar.tsx\"));\nvar _PredefinedRanges = _interopRequireDefault(__webpack_require__(/*! ../DatePicker/PredefinedRanges */ \"./src/DatePicker/PredefinedRanges.tsx\"));\nvar _Stack = _interopRequireDefault(__webpack_require__(/*! ../Stack */ \"./src/Stack/index.tsx\"));\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _dateUtils = __webpack_require__(/*! ../utils/dateUtils */ \"./src/utils/dateUtils.ts\");\nvar _Calendar2 = _interopRequireDefault(__webpack_require__(/*! ./Calendar */ \"./src/DateRangePicker/Calendar.tsx\"));\nvar disabledDateUtils = _interopRequireWildcard(__webpack_require__(/*! ./disabledDateUtils */ \"./src/DateRangePicker/disabledDateUtils.ts\"));\nvar _utils2 = __webpack_require__(/*! ./utils */ \"./src/DateRangePicker/utils.ts\");\nvar _deprecatePropType = __webpack_require__(/*! ../utils/deprecatePropType */ \"./src/utils/deprecatePropType.ts\");\nvar _DateRangePickerContext = _interopRequireDefault(__webpack_require__(/*! ./DateRangePickerContext */ \"./src/DateRangePicker/DateRangePickerContext.ts\"));\nvar _DateRangeInput = _interopRequireDefault(__webpack_require__(/*! ../DateRangeInput */ \"./src/DateRangeInput/index.tsx\"));\nvar _InputGroup = _interopRequireDefault(__webpack_require__(/*! ../InputGroup */ \"./src/InputGroup/index.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/DateRangePicker/DateRangePicker.tsx\",\n _this = void 0,\n _templateObject;\n/**\n * A date range picker allows you to select a date range from a calendar.\n *\n * @see https://rsuitejs.com/components/date-range-picker\n */\nvar DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _ref, _ref2, _merge;\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n className = props.className,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$editable = props.editable,\n editable = _props$editable === void 0 ? true : _props$editable,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$character = props.character,\n character = _props$character === void 0 ? ' ~ ' : _props$character,\n defaultCalendarValue = props.defaultCalendarValue,\n defaultValue = props.defaultValue,\n plaintext = props.plaintext,\n disabled = props.disabled,\n DEPRECATED_disabledDateProp = props.disabledDate,\n shouldDisableDate = props.shouldDisableDate,\n _props$format = props.format,\n formatStr = _props$format === void 0 ? 'yyyy-MM-dd' : _props$format,\n hoverRange = props.hoverRange,\n idProp = props.id,\n _props$isoWeek = props.isoWeek,\n isoWeek = _props$isoWeek === void 0 ? false : _props$isoWeek,\n _props$limitEndYear = props.limitEndYear,\n limitEndYear = _props$limitEndYear === void 0 ? 1000 : _props$limitEndYear,\n limitStartYear = props.limitStartYear,\n overrideLocale = props.locale,\n loading = props.loading,\n label = props.label,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n oneTap = props.oneTap,\n _props$placeholder = props.placeholder,\n placeholder = _props$placeholder === void 0 ? '' : _props$placeholder,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n ranges = props.ranges,\n readOnly = props.readOnly,\n _props$showOneCalenda = props.showOneCalendar,\n showOneCalendar = _props$showOneCalenda === void 0 ? false : _props$showOneCalenda,\n showWeekNumbers = props.showWeekNumbers,\n showMeridian = props.showMeridian,\n style = props.style,\n size = props.size,\n caretAsProp = props.caretAs,\n valueProp = props.value,\n onChange = props.onChange,\n onClean = props.onClean,\n onClose = props.onClose,\n onEnter = props.onEnter,\n onEntered = props.onEntered,\n onExited = props.onExited,\n onOk = props.onOk,\n onOpen = props.onOpen,\n onSelect = props.onSelect,\n onShortcutClick = props.onShortcutClick,\n renderTitle = props.renderTitle,\n restProps = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"className\", \"appearance\", \"editable\", \"cleanable\", \"character\", \"defaultCalendarValue\", \"defaultValue\", \"plaintext\", \"disabled\", \"disabledDate\", \"shouldDisableDate\", \"format\", \"hoverRange\", \"id\", \"isoWeek\", \"limitEndYear\", \"limitStartYear\", \"locale\", \"loading\", \"label\", \"menuClassName\", \"menuStyle\", \"oneTap\", \"placeholder\", \"placement\", \"ranges\", \"readOnly\", \"showOneCalendar\", \"showWeekNumbers\", \"showMeridian\", \"style\", \"size\", \"caretAs\", \"value\", \"onChange\", \"onClean\", \"onClose\", \"onEnter\", \"onEntered\", \"onExited\", \"onOk\", \"onOpen\", \"onSelect\", \"onShortcutClick\", \"renderTitle\"]);\n var id = (0, _utils.useUniqueId)('rs-', idProp);\n var _usePickerRef = (0, _Picker.usePickerRef)(ref),\n trigger = _usePickerRef.trigger,\n root = _usePickerRef.root,\n target = _usePickerRef.target,\n overlay = _usePickerRef.overlay;\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var _useCustom = (0, _utils.useCustom)('DateRangePicker', overrideLocale),\n locale = _useCustom.locale,\n formatDate = _useCustom.formatDate;\n var rangeFormatStr = \"\" + formatStr + character + formatStr;\n var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue !== null && defaultValue !== void 0 ? defaultValue : null),\n value = _useControlled[0],\n setValue = _useControlled[1]; // Show only the calendar month panel. formatStr = 'yyyy-MM'\n var onlyShowMonth = (0, _dateUtils.shouldRenderMonth)(formatStr) && !(0, _dateUtils.shouldRenderDate)(formatStr);\n\n /**\n * Whether to complete the selection.\n * Everytime selection will change this value. If the value is false, it means that the selection has not been completed.\n *\n * In `oneTap` mode, select action will not change this value, its value should be true always.\n */\n var _useState = (0, _react.useState)(true),\n isSelectedIdle = _useState[0],\n setSelectedIdle = _useState[1];\n /**\n * The currently selected date range.\n *\n * The time range is selected by two clicks. After the first click,\n * the cursor will store a temporary event date in the process until\n * the second click to determine the end date of the date range.\n *\n */\n var _useState2 = (0, _react.useState)((_ref = valueProp !== null && valueProp !== void 0 ? valueProp : defaultValue) !== null && _ref !== void 0 ? _ref : []),\n selectedDates = _useState2[0],\n setSelectedDates = _useState2[1]; // The date of the current hover, used to reduce the calculation of `handleMouseMove`\n var _useState3 = (0, _react.useState)(null),\n hoverDateRange = _useState3[0],\n setHoverDateRange = _useState3[1]; // The displayed calendar panel is rendered based on this value.\n var _useState4 = (0, _react.useState)((0, _utils2.getSafeCalendarDate)({\n value: (_ref2 = value !== null && value !== void 0 ? value : defaultCalendarValue) !== null && _ref2 !== void 0 ? _ref2 : null\n })),\n calendarDate = _useState4[0],\n setCalendarDate = _useState4[1];\n /**\n * When hoverRange is set, `selectValue` will be updated during the hover process,\n * which will cause the `selectValue` to be updated after the first click,\n * so declare a Ref to temporarily store the `selectValue` of the first click.\n */\n var selectRangeValueRef = (0, _react.useRef)(null);\n\n /**\n * Get the time on the calendar.\n */\n var getCalendarDatetime = function getCalendarDatetime(calendarKey) {\n var index = calendarKey === 'start' ? 0 : 1;\n return (calendarDate === null || calendarDate === void 0 ? void 0 : calendarDate[index]) || (defaultCalendarValue === null || defaultCalendarValue === void 0 ? void 0 : defaultCalendarValue[index]);\n };\n\n /**\n * Call this function to update the calendar panel rendering benchmark value.\n * If params `value` is not passed, it defaults to [new Date(), addMonth(new Date(), 1)].\n */\n var setCalendarDateRange = function setCalendarDateRange(_ref3) {\n var dateRange = _ref3.dateRange,\n calendarKey = _ref3.calendarKey,\n eventName = _ref3.eventName;\n var nextValue = dateRange;\n\n // The time should remain the same when the dates in the date range are changed.\n if ((0, _dateUtils.shouldRenderTime)(formatStr) && dateRange !== null && dateRange !== void 0 && dateRange.length && eventName !== 'changeTime') {\n var _startDate = (0, _dateUtils.copyTime)({\n from: getCalendarDatetime('start'),\n to: dateRange[0]\n });\n var _endDate = (0, _dateUtils.copyTime)({\n from: getCalendarDatetime('end'),\n to: dateRange.length === 1 ? (0, _dateUtils.addMonths)(_startDate, 1) : dateRange[1]\n });\n nextValue = [_startDate, _endDate];\n } else if (dateRange === null && typeof defaultCalendarValue !== 'undefined') {\n // Make the calendar render the value of defaultCalendarValue after clearing the value.\n nextValue = defaultCalendarValue;\n }\n var nextCalendarDate = (0, _utils2.getSafeCalendarDate)({\n value: nextValue,\n calendarKey: calendarKey,\n allowAameMonth: onlyShowMonth\n });\n setCalendarDate(nextCalendarDate);\n if (onlyShowMonth && eventName === 'changeMonth') {\n setSelectedDates(nextCalendarDate);\n }\n };\n\n // if valueProp changed then update selectValue/hoverValue\n (0, _react.useEffect)(function () {\n setSelectedDates(valueProp !== null && valueProp !== void 0 ? valueProp : []);\n setHoverDateRange(valueProp !== null && valueProp !== void 0 ? valueProp : null);\n }, [valueProp]);\n var getDateRangeString = function getDateRangeString(nextValue) {\n var _nextValue$, _nextValue$2;\n var startDate = (_nextValue$ = nextValue === null || nextValue === void 0 ? void 0 : nextValue[0]) !== null && _nextValue$ !== void 0 ? _nextValue$ : null;\n var endDate = (_nextValue$2 = nextValue === null || nextValue === void 0 ? void 0 : nextValue[1]) !== null && _nextValue$2 !== void 0 ? _nextValue$2 : null;\n if (startDate && endDate) {\n var displayValue = [startDate, endDate].sort(_dateUtils.compareAsc);\n return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_CustomProvider.FormattedDate, {\n date: displayValue[0],\n formatStr: formatStr,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 358,\n columnNumber: 11\n }\n }), character, /*#__PURE__*/_react.default.createElement(_CustomProvider.FormattedDate, {\n date: displayValue[1],\n formatStr: formatStr,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 360,\n columnNumber: 11\n }\n }));\n }\n return rangeFormatStr;\n };\n var getInputHtmlSize = function getInputHtmlSize() {\n var padding = 4;\n var strings = rangeFormatStr;\n if (value) {\n var _startDate2 = value[0],\n _endDate2 = value[1];\n strings = \"\" + formatDate(_startDate2, formatStr) + character + formatDate(_endDate2, formatStr);\n }\n return (0, _utils.getStringLength)(strings) + padding;\n };\n\n /**\n * preset hover range\n */\n var getHoverRangeValue = function getHoverRangeValue(date) {\n function getHoverRangeFunc() {\n if (hoverRange === 'week') {\n return (0, _partial.default)(_utils2.getWeekHoverRange, isoWeek);\n } else if (hoverRange === 'month') {\n return _utils2.getMonthHoverRange;\n }\n return hoverRange;\n }\n var hoverRangeFunc = getHoverRangeFunc();\n if ((0, _isNil.default)(hoverRangeFunc)) {\n return null;\n }\n var hoverValues = hoverRangeFunc(date);\n var isHoverRangeValid = hoverValues instanceof Array && hoverValues.length === 2;\n if (!isHoverRangeValid) {\n return null;\n }\n if ((0, _dateUtils.isAfter)(hoverValues[0], hoverValues[1])) {\n hoverValues = (0, _dateUtils.reverseDateRangeOmitTime)(hoverValues);\n }\n return hoverValues;\n };\n var setDateRange = function setDateRange(event, nextValue, closeOverlay) {\n if (closeOverlay === void 0) {\n closeOverlay = true;\n }\n // If nextValue is null, it means that the user is erasing the selected dates.\n setSelectedDates(nextValue !== null && nextValue !== void 0 ? nextValue : []);\n setValue(nextValue);\n if (!(0, _utils2.isSameRange)(nextValue, value, formatStr)) {\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }\n\n // `closeOverlay` default value is `true`\n if (closeOverlay !== false) {\n handleClose();\n }\n };\n\n /**\n * Select the date range. If oneTap is not set, you need to click twice to select the start time and end time.\n * The MouseMove event is called between the first click and the second click to update the selection state.\n */\n var handleMouseMove = (0, _utils.useEventCallback)(function (date) {\n var nextHoverDateRange = getHoverRangeValue(date);\n\n // If hasDoneSelect is false,\n // it means there's already one selected date\n // and waiting for user to select the second date to complete the selection.\n if (!isSelectedIdle) {\n // If `hoverRange` is set, you need to change the value of hoverDateRange according to the rules\n if (!(0, _isNil.default)(nextHoverDateRange) && !(0, _isNil.default)(selectRangeValueRef.current)) {\n var nextSelectedDates = [selectRangeValueRef.current[0], nextHoverDateRange[1]];\n if ((0, _dateUtils.isBefore)(nextHoverDateRange[0], selectRangeValueRef.current[0])) {\n nextSelectedDates = [nextHoverDateRange[0], selectRangeValueRef.current[1]];\n }\n setSelectedDates(nextSelectedDates);\n } else {\n setHoverDateRange(function (prevHoverValue) {\n return (0, _isNil.default)(prevHoverValue) ? null : [prevHoverValue[0], date];\n });\n }\n\n // Before the first click, if nextHoverDateRange has a value, hoverDateRange needs to be updated\n } else if (!(0, _isNil.default)(nextHoverDateRange)) {\n setHoverDateRange(nextHoverDateRange);\n }\n });\n\n /**\n * Callback for selecting a date cell in the calendar grid\n */\n var handleSelectDate = (0, _utils.useEventCallback)(function (index, date, event) {\n var calendarKey = index === 0 ? 'start' : 'end';\n var nextSelectDates = hoverDateRange !== null && hoverDateRange !== void 0 ? hoverDateRange : [];\n var hoverRangeValue = getHoverRangeValue(date);\n var noHoverRangeValid = (0, _isNil.default)(hoverRangeValue);\n\n // in `oneTap` mode\n if (isSelectedIdle && oneTap) {\n setDateRange(event, noHoverRangeValid ? [(0, _dateUtils.startOfDay)(date), (0, _dateUtils.endOfDay)(date)] : hoverRangeValue);\n setSelectedIdle(false);\n return;\n }\n\n // no preset hover range can use\n if (noHoverRangeValid) {\n // start select\n if (isSelectedIdle) {\n nextSelectDates = [date];\n } else {\n // finish select\n nextSelectDates[1] = date;\n }\n } else {\n if (!isSelectedIdle) {\n nextSelectDates = selectedDates;\n selectRangeValueRef.current = null;\n } else {\n nextSelectDates = hoverRangeValue;\n selectRangeValueRef.current = hoverRangeValue;\n }\n }\n if (nextSelectDates.length === 2) {\n // If user have completed the selection, then sort the selected dates.\n if ((0, _dateUtils.isAfter)(nextSelectDates[0], nextSelectDates[1])) {\n nextSelectDates = (0, _dateUtils.reverseDateRangeOmitTime)(nextSelectDates);\n }\n if ((0, _dateUtils.shouldRenderTime)(formatStr)) {\n nextSelectDates = [(0, _dateUtils.copyTime)({\n from: getCalendarDatetime('start'),\n to: nextSelectDates[0]\n }), (0, _dateUtils.copyTime)({\n from: getCalendarDatetime('end'),\n to: nextSelectDates[1]\n })];\n }\n setHoverDateRange(nextSelectDates);\n } else {\n setHoverDateRange([nextSelectDates[0], nextSelectDates[0]]);\n }\n setSelectedDates(nextSelectDates);\n setCalendarDateRange({\n dateRange: nextSelectDates,\n calendarKey: calendarKey,\n eventName: 'changeDate'\n });\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(date, event);\n setSelectedIdle(!isSelectedIdle);\n });\n\n /**\n * If `selectValue` changed, there will be the following effects.\n * 1. Check if the selection is completed.\n * 2. if the selection is completed, set the temporary `hoverValue` empty.\n */\n (0, _react.useEffect)(function () {\n var selectValueLength = selectedDates.length;\n var doneSelected = selectValueLength === 0 || selectValueLength === 2;\n doneSelected && setHoverDateRange(null);\n }, [selectedDates]);\n var handleSingleCalendarMonth = (0, _utils.useEventCallback)(function (index, date) {\n var calendarKey = index === 0 ? 'start' : 'end';\n var nextCalendarDate = Array.from(calendarDate);\n nextCalendarDate[index] = date;\n setCalendarDateRange({\n dateRange: nextCalendarDate,\n calendarKey: calendarKey,\n eventName: 'changeMonth'\n });\n });\n var handleSingleCalendarTime = (0, _utils.useEventCallback)(function (index, date) {\n var calendarKey = index === 0 ? 'start' : 'end';\n var nextCalendarDate = Array.from(calendarDate);\n nextCalendarDate[index] = date;\n setCalendarDateRange({\n dateRange: nextCalendarDate,\n calendarKey: calendarKey,\n eventName: 'changeTime'\n });\n setSelectedDates(function (prev) {\n var next = [].concat(prev);\n\n // if next[index] is not empty, only update the time after aligning the year, month and day\n next[index] = next[index] ? (0, _dateUtils.copyTime)({\n from: date,\n to: next[index]\n }) : new Date(date.valueOf());\n return next;\n });\n });\n\n /**\n * The callback triggered when PM/AM is switched.\n */\n var handleToggleMeridian = (0, _utils.useEventCallback)(function (index) {\n var nextCalendarDate = Array.from(calendarDate);\n nextCalendarDate[index] = (0, _dateUtils.getReversedTimeMeridian)(nextCalendarDate[index]);\n setCalendarDate(nextCalendarDate);\n\n // If the value already exists, update the value again.\n if (selectedDates.length === 2) {\n var nextSelectedDates = Array.from(selectedDates);\n nextSelectedDates[index] = (0, _dateUtils.getReversedTimeMeridian)(nextSelectedDates[index]);\n setSelectedDates(nextSelectedDates);\n }\n });\n var handleEnter = (0, _utils.useEventCallback)(function () {\n var nextCalendarDate;\n if (value && value.length) {\n var _startDate3 = value[0],\n endData = value[1];\n nextCalendarDate = [_startDate3, (0, _dateUtils.isSameMonth)(_startDate3, endData) ? (0, _dateUtils.addMonths)(endData, 1) : endData];\n } else {\n // Reset the date on the calendar to the default date\n nextCalendarDate = (0, _utils2.getSafeCalendarDate)({\n value: defaultCalendarValue !== null && defaultCalendarValue !== void 0 ? defaultCalendarValue : null\n });\n }\n setSelectedDates(value !== null && value !== void 0 ? value : []);\n setCalendarDateRange({\n dateRange: nextCalendarDate\n });\n });\n\n /**\n * Toolbar operation callback function\n */\n var handleShortcutPageDate = (0, _utils.useEventCallback)(function (range, closeOverlay, event) {\n if (closeOverlay === void 0) {\n closeOverlay = false;\n }\n var value = range.value;\n setCalendarDateRange({\n dateRange: value\n });\n if (closeOverlay) {\n setDateRange(event, value, closeOverlay);\n } else {\n setSelectedDates(value !== null && value !== void 0 ? value : []);\n }\n onShortcutClick === null || onShortcutClick === void 0 ? void 0 : onShortcutClick(range, event);\n\n // End unfinished selections.\n setSelectedIdle(true);\n });\n var handleOK = (0, _utils.useEventCallback)(function (event) {\n setDateRange(event, selectedDates);\n onOk === null || onOk === void 0 ? void 0 : onOk(selectedDates, event);\n });\n var handleClean = (0, _utils.useEventCallback)(function (event) {\n setCalendarDateRange({\n dateRange: null\n });\n setDateRange(event, null);\n onClean === null || onClean === void 0 ? void 0 : onClean(event);\n event.stopPropagation();\n });\n\n /**\n * Callback after the input box value is changed.\n */\n var handleInputChange = (0, _utils.useEventCallback)(function (value, event) {\n if (!value) {\n return;\n }\n var startDate = value[0],\n endDate = value[1];\n var selectValue = [startDate, endDate];\n setHoverDateRange(selectValue);\n setSelectedDates(selectValue);\n setCalendarDateRange({\n dateRange: selectValue\n });\n setDateRange(event, selectValue);\n });\n var isDateDisabled = function isDateDisabled(date, options) {\n var selectDate = options.selectDate,\n selectedDone = options.selectedDone,\n target = options.target;\n if (typeof shouldDisableDate === 'function') {\n return shouldDisableDate(date, selectDate, selectedDone, target);\n }\n if (typeof DEPRECATED_disabledDateProp === 'function') {\n return DEPRECATED_disabledDateProp(date, selectDate, selectedDone, target);\n }\n return false;\n };\n var disabledByBetween = function disabledByBetween(start, end, type) {\n // If the date is between the start and the end\n // the button is disabled\n while ((0, _dateUtils.isBefore)(start, end) || (0, _dateUtils.isSameDay)(start, end)) {\n if (isDateDisabled(start, {\n selectDate: selectedDates,\n selectedDone: isSelectedIdle,\n target: type\n })) {\n return true;\n }\n start = (0, _dateUtils.addDays)(start, 1);\n }\n return false;\n };\n var disabledOkButton = function disabledOkButton() {\n var start = selectedDates[0],\n end = selectedDates[1];\n if (!start || !end || !isSelectedIdle) {\n return true;\n }\n return disabledByBetween(start, end, _utils.DATERANGE_DISABLED_TARGET.TOOLBAR_BUTTON_OK);\n };\n var disabledShortcutButton = function disabledShortcutButton(value) {\n if (value === void 0) {\n value = [];\n }\n var _value = value,\n start = _value[0],\n end = _value[1];\n if (!start || !end) {\n return true;\n }\n return disabledByBetween(start, end, _utils.DATERANGE_DISABLED_TARGET.TOOLBAR_SHORTCUT);\n };\n var handleClose = (0, _utils.useEventCallback)(function () {\n var _trigger$current, _trigger$current$clos;\n (_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : (_trigger$current$clos = _trigger$current.close) === null || _trigger$current$clos === void 0 ? void 0 : _trigger$current$clos.call(_trigger$current);\n });\n var handleInputKeyDown = (0, _utils.useEventCallback)(function (event) {\n (0, _Picker.onMenuKeyDown)(event, {\n esc: handleClose,\n enter: function enter() {\n var _trigger$current2;\n var _ref4 = ((_trigger$current2 = trigger.current) === null || _trigger$current2 === void 0 ? void 0 : _trigger$current2.getState()) || {},\n open = _ref4.open;\n if (!open) {\n var _trigger$current3;\n (_trigger$current3 = trigger.current) === null || _trigger$current3 === void 0 ? void 0 : _trigger$current3.open();\n }\n }\n });\n });\n var renderCalendarOverlay = function renderCalendarOverlay(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = merge(className, menuClassName, prefix('daterange-menu'));\n var panelClasses = prefix('daterange-panel', {\n 'daterange-panel-show-one-calendar': showOneCalendar\n });\n\n /**\n * Set a min-width (528px) when there are two calendars\n * @see https://github.com/rsuite/rsuite/issues/3522\n */\n var panelStyles = {\n minWidth: showOneCalendar ? 'auto' : 528\n };\n var styles = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var calendarProps = {\n calendarDate: calendarDate,\n disabledDate: function disabledDate(date, values, type) {\n return isDateDisabled(date, {\n selectDate: values,\n selectedDone: isSelectedIdle,\n target: type\n });\n },\n format: formatStr,\n hoverRangeValue: hoverDateRange !== null && hoverDateRange !== void 0 ? hoverDateRange : undefined,\n isoWeek: isoWeek,\n limitEndYear: limitEndYear,\n limitStartYear: limitStartYear,\n locale: locale,\n showWeekNumbers: showWeekNumbers,\n value: selectedDates,\n showMeridian: showMeridian,\n onChangeCalendarMonth: handleSingleCalendarMonth,\n onChangeCalendarTime: handleSingleCalendarTime,\n onMouseMove: handleMouseMove,\n onSelect: handleSelectDate,\n onToggleMeridian: handleToggleMeridian,\n renderTitle: renderTitle\n };\n var sideRanges = (ranges === null || ranges === void 0 ? void 0 : ranges.filter(function (range) {\n return (range === null || range === void 0 ? void 0 : range.placement) === 'left';\n })) || [];\n var bottomRanges = ranges === null || ranges === void 0 ? void 0 : ranges.filter(function (range) {\n return (range === null || range === void 0 ? void 0 : range.placement) === 'bottom' || (range === null || range === void 0 ? void 0 : range.placement) === undefined;\n });\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerPopup, {\n role: \"dialog\",\n \"aria-labelledby\": label ? id + \"-label\" : undefined,\n tabIndex: -1,\n className: classes,\n ref: (0, _utils.mergeRefs)(overlay, speakerRef),\n target: trigger,\n style: styles,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 772,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: panelClasses,\n style: panelStyles,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 781,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Stack.default, {\n alignItems: \"flex-start\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 782,\n columnNumber: 11\n }\n }, sideRanges.length > 0 && /*#__PURE__*/_react.default.createElement(_PredefinedRanges.default, {\n direction: \"column\",\n spacing: 0,\n className: prefix('daterange-predefined'),\n ranges: sideRanges,\n calendarDate: calendarDate,\n locale: locale,\n disabledShortcut: disabledShortcutButton,\n onShortcutClick: handleShortcutPageDate,\n \"data-testid\": \"daterange-predefined-side\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 784,\n columnNumber: 15\n }\n }), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('daterange-content'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 798,\n columnNumber: 15\n }\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('daterange-header'),\n \"data-testid\": \"daterange-header\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 799,\n columnNumber: 17\n }\n }, getDateRangeString(selectedDates)), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix(\"daterange-calendar-\" + (showOneCalendar ? 'single' : 'group')),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 802,\n columnNumber: 17\n }\n }, /*#__PURE__*/_react.default.createElement(_DateRangePickerContext.default.Provider, {\n value: {\n isSelectedIdle: isSelectedIdle\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 805,\n columnNumber: 19\n }\n }, /*#__PURE__*/_react.default.createElement(_Calendar2.default, (0, _extends2.default)({\n index: 0\n }, calendarProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 806,\n columnNumber: 21\n }\n })), !showOneCalendar && /*#__PURE__*/_react.default.createElement(_Calendar2.default, (0, _extends2.default)({\n index: 1\n }, calendarProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 807,\n columnNumber: 42\n }\n }))))), /*#__PURE__*/_react.default.createElement(_Toolbar.default, {\n locale: locale,\n calendarDate: selectedDates,\n disabledOkBtn: disabledOkButton,\n disabledShortcut: disabledShortcutButton,\n hideOkBtn: oneTap,\n onOk: handleOK,\n onShortcutClick: handleShortcutPageDate,\n ranges: bottomRanges,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 811,\n columnNumber: 15\n }\n })))));\n };\n var hasValue = !(0, _isNil.default)(value) && value.length > 1;\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n name: 'daterange',\n appearance: appearance,\n hasValue: hasValue,\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n var caretAs = (0, _react.useMemo)(function () {\n if (caretAsProp === null) {\n return null;\n }\n return caretAsProp || ((0, _dateUtils.shouldOnlyRenderTime)(formatStr) ? _ClockO.default : _Calendar.default);\n }, [caretAsProp, formatStr]);\n var isErrorValue = function isErrorValue(value) {\n if (!value) {\n return false;\n }\n var startDate = value[0],\n endDate = value[1];\n if (!(0, _dateUtils.isValid)(startDate) || !(0, _dateUtils.isValid)(endDate)) {\n return true;\n }\n if ((0, _dateUtils.isBefore)(endDate, startDate)) {\n return true;\n }\n var disabledOptions = {\n selectDate: value,\n selectedDone: isSelectedIdle,\n target: _utils.DATERANGE_DISABLED_TARGET.INPUT\n };\n if (isDateDisabled(startDate, disabledOptions) || isDateDisabled(endDate, disabledOptions)) {\n return true;\n }\n return false;\n };\n var _partitionHTMLProps = (0, _utils.partitionHTMLProps)(restProps, {\n htmlProps: [],\n includeAria: true\n }),\n ariaProps = _partitionHTMLProps[0],\n rest = _partitionHTMLProps[1];\n var showCleanButton = cleanable && hasValue && !readOnly;\n var invalidValue = value && isErrorValue(value);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n trigger: \"active\",\n ref: trigger,\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n placement: placement,\n onEnter: (0, _utils.createChainedFunction)(handleEnter, onEnter),\n onEntered: (0, _utils.createChainedFunction)(onOpen, onEntered),\n onExited: (0, _utils.createChainedFunction)(onClose, onExited),\n speaker: renderCalendarOverlay,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 878,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n ref: root,\n className: merge(className, classes, (_merge = {}, _merge[prefix('error')] = invalidValue, _merge)),\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 888,\n columnNumber: 7\n }\n }, plaintext ? /*#__PURE__*/_react.default.createElement(_DateRangeInput.default, {\n value: value,\n format: formatStr,\n plaintext: plaintext,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 894,\n columnNumber: 11\n }\n }) : /*#__PURE__*/_react.default.createElement(_InputGroup.default, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys, _dateUtils.calendarOnlyProps)), {\n inside: true,\n size: size,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 896,\n columnNumber: 11\n }\n }), /*#__PURE__*/_react.default.createElement(_Picker.PickerLabel, {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"label\"]))),\n id: id + \"-label\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 905,\n columnNumber: 13\n }\n }, label), /*#__PURE__*/_react.default.createElement(_DateRangeInput.default, (0, _extends2.default)({\n \"aria-haspopup\": \"dialog\",\n \"aria-invalid\": invalidValue,\n \"aria-labelledby\": label ? id + \"-label\" : undefined\n }, ariaProps, {\n ref: target,\n id: id,\n value: value,\n character: character,\n format: formatStr,\n placeholder: placeholder ? placeholder : rangeFormatStr,\n disabled: disabled,\n onChange: handleInputChange,\n readOnly: readOnly || !editable || loading,\n plaintext: plaintext,\n onKeyDown: handleInputKeyDown,\n htmlSize: getInputHtmlSize(),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 908,\n columnNumber: 13\n }\n })), /*#__PURE__*/_react.default.createElement(_Picker.PickerIndicator, {\n loading: loading,\n caretAs: caretAs,\n onClose: handleClean,\n showCleanButton: showCleanButton,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 926,\n columnNumber: 13\n }\n }))));\n});\nDateRangePicker.after = disabledDateUtils.after;\nDateRangePicker.afterToday = disabledDateUtils.afterToday;\nDateRangePicker.allowedDays = disabledDateUtils.allowedDays;\nDateRangePicker.allowedMaxDays = disabledDateUtils.allowedMaxDays;\nDateRangePicker.allowedRange = disabledDateUtils.allowedRange;\nDateRangePicker.before = disabledDateUtils.before;\nDateRangePicker.beforeToday = disabledDateUtils.beforeToday;\nDateRangePicker.combine = disabledDateUtils.combine;\nDateRangePicker.displayName = 'DateRangePicker';\nDateRangePicker.propTypes = (0, _extends2.default)({}, _Picker.pickerPropTypes, {\n ranges: _propTypes.default.array,\n value: _propTypes.default.arrayOf(_propTypes.default.instanceOf(Date)),\n defaultValue: _propTypes.default.arrayOf(_propTypes.default.instanceOf(Date)),\n defaultCalendarValue: _propTypes.default.arrayOf(_propTypes.default.instanceOf(Date)),\n hoverRange: _propTypes.default.oneOfType([_propTypes.default.oneOf(['week', 'month']), _propTypes.default.func]),\n format: _propTypes.default.string,\n isoWeek: _propTypes.default.bool,\n oneTap: _propTypes.default.bool,\n limitEndYear: _propTypes.default.number,\n limitStartYear: _propTypes.default.number,\n onChange: _propTypes.default.func,\n onOk: _propTypes.default.func,\n disabledDate: (0, _deprecatePropType.deprecatePropTypeNew)(_propTypes.default.func, 'Use \"shouldDisableDate\" property instead.'),\n shouldDisableDate: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n showWeekNumbers: _propTypes.default.bool,\n showMeridian: _propTypes.default.bool,\n showOneCalendar: _propTypes.default.bool\n});\nvar _default = DateRangePicker;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/DateRangePicker/DateRangePicker.tsx?");
6905
6894
 
6906
6895
  /***/ }),
6907
6896
 
@@ -6945,7 +6934,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
6945
6934
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6946
6935
 
6947
6936
  "use strict";
6948
- eval("\n\nexports.__esModule = true;\nexports.getSafeCalendarDate = getSafeCalendarDate;\nexports.getWeekHoverRange = exports.getMonthHoverRange = exports.isSameRange = void 0;\nvar _dateUtils = __webpack_require__(/*! ../utils/dateUtils */ \"./src/utils/dateUtils.ts\");\nfunction getSafeCalendarDate(_ref) {\n var _value;\n var value = _ref.value,\n _ref$calendarKey = _ref.calendarKey,\n calendarKey = _ref$calendarKey === void 0 ? 'start' : _ref$calendarKey;\n // Update calendarDate if the value is not null\n value = (_value = value) !== null && _value !== void 0 ? _value : [];\n if (value[0] && value[1]) {\n var diffMonth = (0, _dateUtils.differenceInCalendarMonths)(value[1], value[0]);\n if (calendarKey === 'start') {\n return [value[0], diffMonth <= 0 ? (0, _dateUtils.copyTime)({\n from: value[1],\n to: (0, _dateUtils.addMonths)(value[0], 1)\n }) : value[1]];\n } else if (calendarKey === 'end') {\n return [diffMonth <= 0 ? (0, _dateUtils.copyTime)({\n from: value[0],\n to: (0, _dateUtils.addMonths)(value[1], -1)\n }) : value[0], value[1]];\n }\n\n // If only the start date\n } else if (value[0]) {\n return [value[0], (0, _dateUtils.addMonths)(value[0], 1)];\n }\n var todayDate = new Date();\n return [todayDate, (0, _dateUtils.addMonths)(todayDate, 1)];\n}\nvar isSameRange = function isSameRange(source, dest, format) {\n // If both are null, reguard as same\n if (null === source && null === dest) return true;\n // If only one is null, regard as different\n if (null === source || null === dest) return false;\n var result = (0, _dateUtils.isSameDay)(source[0], dest[0]) && (0, _dateUtils.isSameDay)(source[1], dest[1]);\n if ((0, _dateUtils.shouldRenderTime)(format)) {\n result && (result = (0, _dateUtils.isSameSecond)(source[0], dest[0]) && (0, _dateUtils.isSameSecond)(source[1], dest[1]));\n }\n return result;\n};\nexports.isSameRange = isSameRange;\nvar getMonthHoverRange = function getMonthHoverRange(date) {\n return [(0, _dateUtils.startOfMonth)(date), (0, _dateUtils.endOfMonth)(date)];\n};\nexports.getMonthHoverRange = getMonthHoverRange;\nvar getWeekHoverRange = function getWeekHoverRange(isoWeek, date) {\n if (isoWeek) {\n // set to the first day of this week according to ISO 8601, 12:00 am\n return [(0, _dateUtils.startOfISOWeek)(date), (0, _dateUtils.endOfISOWeek)(date)];\n }\n return [(0, _dateUtils.startOfWeek)(date), (0, _dateUtils.endOfWeek)(date)];\n};\nexports.getWeekHoverRange = getWeekHoverRange;\n\n//# sourceURL=webpack://rsuite/./src/DateRangePicker/utils.ts?");
6937
+ eval("\n\nexports.__esModule = true;\nexports.getSafeCalendarDate = getSafeCalendarDate;\nexports.getWeekHoverRange = exports.getMonthHoverRange = exports.isSameRange = void 0;\nvar _dateUtils = __webpack_require__(/*! ../utils/dateUtils */ \"./src/utils/dateUtils.ts\");\nfunction getSafeCalendarDate(_ref) {\n var _value;\n var value = _ref.value,\n _ref$calendarKey = _ref.calendarKey,\n calendarKey = _ref$calendarKey === void 0 ? 'start' : _ref$calendarKey,\n allowAameMonth = _ref.allowAameMonth;\n // Update calendarDate if the value is not null\n value = (_value = value) !== null && _value !== void 0 ? _value : [];\n var gap = allowAameMonth ? 0 : 1;\n if (value[0] && value[1]) {\n var diffMonth = (0, _dateUtils.differenceInCalendarMonths)(value[1], value[0]);\n if (calendarKey === 'start') {\n return [value[0], diffMonth <= 0 ? (0, _dateUtils.copyTime)({\n from: value[1],\n to: (0, _dateUtils.addMonths)(value[0], gap)\n }) : value[1]];\n } else if (calendarKey === 'end') {\n return [diffMonth <= 0 ? (0, _dateUtils.copyTime)({\n from: value[0],\n to: (0, _dateUtils.addMonths)(value[1], -gap)\n }) : value[0], value[1]];\n }\n\n // If only the start date\n } else if (value[0]) {\n return [value[0], (0, _dateUtils.addMonths)(value[0], gap)];\n }\n var todayDate = new Date();\n return [todayDate, (0, _dateUtils.addMonths)(todayDate, gap)];\n}\nvar isSameRange = function isSameRange(source, dest, format) {\n // If both are null, reguard as same\n if (null === source && null === dest) return true;\n // If only one is null, regard as different\n if (null === source || null === dest) return false;\n var result = (0, _dateUtils.isSameDay)(source[0], dest[0]) && (0, _dateUtils.isSameDay)(source[1], dest[1]);\n if ((0, _dateUtils.shouldRenderTime)(format)) {\n result && (result = (0, _dateUtils.isSameSecond)(source[0], dest[0]) && (0, _dateUtils.isSameSecond)(source[1], dest[1]));\n }\n return result;\n};\nexports.isSameRange = isSameRange;\nvar getMonthHoverRange = function getMonthHoverRange(date) {\n return [(0, _dateUtils.startOfMonth)(date), (0, _dateUtils.endOfMonth)(date)];\n};\nexports.getMonthHoverRange = getMonthHoverRange;\nvar getWeekHoverRange = function getWeekHoverRange(isoWeek, date) {\n if (isoWeek) {\n // set to the first day of this week according to ISO 8601, 12:00 am\n return [(0, _dateUtils.startOfISOWeek)(date), (0, _dateUtils.endOfISOWeek)(date)];\n }\n return [(0, _dateUtils.startOfWeek)(date), (0, _dateUtils.endOfWeek)(date)];\n};\nexports.getWeekHoverRange = getWeekHoverRange;\n\n//# sourceURL=webpack://rsuite/./src/DateRangePicker/utils.ts?");
6949
6938
 
6950
6939
  /***/ }),
6951
6940
 
@@ -7231,7 +7220,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
7231
7220
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
7232
7221
 
7233
7222
  "use strict";
7234
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends6 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _schemaTyped = __webpack_require__(/*! schema-typed */ \"./node_modules/schema-typed/es/index.js\");\nvar _FormContext = _interopRequireWildcard(__webpack_require__(/*! ./FormContext */ \"./src/Form/FormContext.tsx\"));\nvar _FormControl = _interopRequireDefault(__webpack_require__(/*! ../FormControl */ \"./src/FormControl/index.tsx\"));\nvar _FormControlLabel = _interopRequireDefault(__webpack_require__(/*! ../FormControlLabel */ \"./src/FormControlLabel/index.tsx\"));\nvar _FormErrorMessage = _interopRequireDefault(__webpack_require__(/*! ../FormErrorMessage */ \"./src/FormErrorMessage/index.tsx\"));\nvar _FormGroup = _interopRequireDefault(__webpack_require__(/*! ../FormGroup */ \"./src/FormGroup/index.tsx\"));\nvar _FormHelpText = _interopRequireDefault(__webpack_require__(/*! ../FormHelpText */ \"./src/FormHelpText/index.tsx\"));\nvar _useFormClassNames = __webpack_require__(/*! ./useFormClassNames */ \"./src/Form/useFormClassNames.ts\");\nvar _useSchemaModel2 = _interopRequireDefault(__webpack_require__(/*! ./useSchemaModel */ \"./src/Form/useSchemaModel.ts\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Form/Form.tsx\",\n _this = void 0;\n/**\n * The `Form` component is a form interface for collecting and validating user input.\n * @see https://rsuitejs.com/components/form\n */\nvar Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$checkTrigger = props.checkTrigger,\n checkTrigger = _props$checkTrigger === void 0 ? 'change' : _props$checkTrigger,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'form' : _props$classPrefix,\n _props$errorFromConte = props.errorFromContext,\n errorFromContext = _props$errorFromConte === void 0 ? true : _props$errorFromConte,\n _props$formDefaultVal = props.formDefaultValue,\n formDefaultValue = _props$formDefaultVal === void 0 ? {} : _props$formDefaultVal,\n formValue = props.formValue,\n formError = props.formError,\n fluid = props.fluid,\n _props$layout = props.layout,\n layout = _props$layout === void 0 ? 'vertical' : _props$layout,\n _props$model = props.model,\n formModel = _props$model === void 0 ? (0, _schemaTyped.SchemaModel)({}) : _props$model,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n className = props.className,\n children = props.children,\n disabled = props.disabled,\n onSubmit = props.onSubmit,\n onCheck = props.onCheck,\n onError = props.onError,\n onChange = props.onChange,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"checkTrigger\", \"classPrefix\", \"errorFromContext\", \"formDefaultValue\", \"formValue\", \"formError\", \"fluid\", \"layout\", \"model\", \"readOnly\", \"plaintext\", \"className\", \"children\", \"disabled\", \"onSubmit\", \"onCheck\", \"onError\", \"onChange\"]);\n var _useSchemaModel = (0, _useSchemaModel2.default)(formModel),\n getCombinedModel = _useSchemaModel.getCombinedModel,\n pushFieldRule = _useSchemaModel.pushFieldRule,\n removeFieldRule = _useSchemaModel.removeFieldRule;\n var classes = (0, _useFormClassNames.useFormClassNames)({\n classPrefix: classPrefix,\n className: className,\n fluid: fluid,\n layout: layout,\n readOnly: readOnly,\n plaintext: plaintext,\n disabled: disabled\n });\n var _useControlled = (0, _utils.useControlled)(formValue, formDefaultValue),\n realFormValue = _useControlled[0],\n setFormValue = _useControlled[1];\n var _useControlled2 = (0, _utils.useControlled)(formError, {}),\n realFormError = _useControlled2[0],\n setFormError = _useControlled2[1];\n var realFormValueRef = (0, _react.useRef)(realFormValue);\n realFormValueRef.current = realFormValue;\n var realFormErrorRef = (0, _react.useRef)(realFormError);\n realFormErrorRef.current = realFormError;\n\n /**\n * Validate the form data and return a boolean.\n * The error message after verification is returned in the callback.\n * @param callback\n */\n var check = (0, _react.useCallback)(function (callback) {\n var formValue = realFormValue || {};\n var formError = {};\n var errorCount = 0;\n var model = getCombinedModel();\n Object.keys(model.spec).forEach(function (key) {\n var checkResult = model.checkForField(key, formValue);\n if (checkResult.hasError === true) {\n errorCount += 1;\n formError[key] = (checkResult === null || checkResult === void 0 ? void 0 : checkResult.errorMessage) || checkResult;\n }\n });\n setFormError(formError);\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);\n callback === null || callback === void 0 ? void 0 : callback(formError);\n if (errorCount > 0) {\n onError === null || onError === void 0 ? void 0 : onError(formError);\n return false;\n }\n return true;\n }, [realFormValue, getCombinedModel, setFormError, onCheck, onError]);\n\n /**\n * Check the data field\n * @param fieldName\n * @param callback\n */\n var checkForField = (0, _react.useCallback)(function (fieldName, callback) {\n var _extends2;\n var formValue = realFormValue || {};\n var model = getCombinedModel();\n var checkResult = model.checkForField(fieldName, formValue);\n var formError = (0, _extends6.default)({}, realFormError, (_extends2 = {}, _extends2[fieldName] = (checkResult === null || checkResult === void 0 ? void 0 : checkResult.errorMessage) || checkResult, _extends2));\n setFormError(formError);\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);\n callback === null || callback === void 0 ? void 0 : callback(checkResult);\n if (checkResult.hasError) {\n onError === null || onError === void 0 ? void 0 : onError(formError);\n }\n return !checkResult.hasError;\n }, [realFormValue, getCombinedModel, realFormError, setFormError, onCheck, onError]);\n\n /**\n * Check form data asynchronously and return a Promise\n */\n var checkAsync = (0, _react.useCallback)(function () {\n var formValue = realFormValue || {};\n var promises = [];\n var keys = [];\n var model = getCombinedModel();\n Object.keys(model.spec).forEach(function (key) {\n keys.push(key);\n promises.push(model.checkForFieldAsync(key, formValue));\n });\n return Promise.all(promises).then(function (values) {\n var formError = {};\n var errorCount = 0;\n for (var i = 0; i < values.length; i++) {\n if (values[i].hasError) {\n errorCount += 1;\n formError[keys[i]] = values[i].errorMessage;\n }\n }\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);\n setFormError(formError);\n if (errorCount > 0) {\n onError === null || onError === void 0 ? void 0 : onError(formError);\n }\n return {\n hasError: errorCount > 0,\n formError: formError\n };\n });\n }, [realFormValue, getCombinedModel, onCheck, setFormError, onError]);\n\n /**\n * Asynchronously check form fields and return Promise\n * @param fieldName\n */\n var checkForFieldAsync = (0, _react.useCallback)(function (fieldName) {\n var formValue = realFormValue || {};\n var model = getCombinedModel();\n return model.checkForFieldAsync(fieldName, formValue).then(function (checkResult) {\n var _extends3;\n var formError = (0, _extends6.default)({}, realFormError, (_extends3 = {}, _extends3[fieldName] = checkResult.errorMessage, _extends3));\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);\n setFormError(formError);\n if (checkResult.hasError) {\n onError === null || onError === void 0 ? void 0 : onError(formError);\n }\n return checkResult;\n });\n }, [realFormValue, getCombinedModel, realFormError, onCheck, setFormError, onError]);\n var cleanErrors = (0, _react.useCallback)(function () {\n setFormError({});\n }, [setFormError]);\n var cleanErrorForField = (0, _react.useCallback)(function (fieldName) {\n setFormError((0, _omit.default)(realFormError, [fieldName]));\n }, [realFormError, setFormError]);\n var resetErrors = (0, _react.useCallback)(function (formError) {\n if (formError === void 0) {\n formError = {};\n }\n setFormError(formError);\n }, [setFormError]);\n (0, _react.useImperativeHandle)(ref, function () {\n return {\n root: rootRef.current,\n check: check,\n checkForField: checkForField,\n checkAsync: checkAsync,\n checkForFieldAsync: checkForFieldAsync,\n cleanErrors: cleanErrors,\n cleanErrorForField: cleanErrorForField,\n resetErrors: resetErrors\n };\n });\n var removeFieldError = (0, _react.useCallback)(function (name) {\n /**\n * when this function is called when the children component is unmount, it's an old render frame\n * so use Ref to get future error\n */\n var formError = (0, _omit.default)(realFormErrorRef.current, [name]);\n realFormErrorRef.current = formError;\n setFormError(formError);\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);\n }, [onCheck, setFormError]);\n var removeFieldValue = (0, _react.useCallback)(function (name) {\n /**\n * when this function is called when the children component is unmount, it's an old render frame\n * so use Ref to get future value\n */\n var formValue = (0, _omit.default)(realFormValueRef.current, [name]);\n realFormValueRef.current = formValue;\n setFormValue(formValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(formValue);\n }, [onChange, setFormValue]);\n var handleSubmit = (0, _react.useCallback)(function (event) {\n if (disabled || readOnly || plaintext) {\n return;\n }\n event.preventDefault();\n event.stopPropagation();\n var checkStatus = check();\n onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(checkStatus, event);\n }, [disabled, readOnly, plaintext, check, onSubmit]);\n var handleFieldError = (0, _react.useCallback)(function (name, errorMessage) {\n var _extends4;\n var formError = (0, _extends6.default)({}, realFormError, (_extends4 = {}, _extends4[name] = errorMessage, _extends4));\n setFormError(formError);\n onError === null || onError === void 0 ? void 0 : onError(formError);\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);\n }, [realFormError, setFormError, onError, onCheck]);\n var handleFieldSuccess = (0, _react.useCallback)(function (name) {\n removeFieldError(name);\n }, [removeFieldError]);\n var handleFieldChange = (0, _react.useCallback)(function (name, value, event) {\n var _extends5;\n var formValue = realFormValue;\n var nextFormValue = (0, _extends6.default)({}, formValue, (_extends5 = {}, _extends5[name] = value, _extends5));\n setFormValue(nextFormValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextFormValue, event);\n }, [realFormValue, setFormValue, onChange]);\n var rootRef = (0, _react.useRef)(null);\n var formContextValue = (0, _react.useMemo)(function () {\n return {\n getCombinedModel: getCombinedModel,\n checkTrigger: checkTrigger,\n errorFromContext: errorFromContext,\n readOnly: readOnly,\n plaintext: plaintext,\n disabled: disabled,\n formError: realFormError,\n removeFieldValue: removeFieldValue,\n removeFieldError: removeFieldError,\n pushFieldRule: pushFieldRule,\n removeFieldRule: removeFieldRule,\n onFieldChange: handleFieldChange,\n onFieldError: handleFieldError,\n onFieldSuccess: handleFieldSuccess\n };\n }, [getCombinedModel, checkTrigger, errorFromContext, readOnly, plaintext, disabled, realFormError, removeFieldValue, removeFieldError, pushFieldRule, removeFieldRule, handleFieldChange, handleFieldError, handleFieldSuccess]);\n return /*#__PURE__*/_react.default.createElement(\"form\", (0, _extends6.default)({}, rest, {\n ref: rootRef,\n onSubmit: handleSubmit,\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 424,\n columnNumber: 5\n }\n }), /*#__PURE__*/_react.default.createElement(_FormContext.default.Provider, {\n value: formContextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 425,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_FormContext.FormValueContext.Provider, {\n value: realFormValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 426,\n columnNumber: 9\n }\n }, children)));\n});\nForm.Control = _FormControl.default;\nForm.ControlLabel = _FormControlLabel.default;\nForm.ErrorMessage = _FormErrorMessage.default;\nForm.Group = _FormGroup.default;\nForm.HelpText = _FormHelpText.default;\nForm.Control = _FormControl.default;\nForm.displayName = 'Form';\nForm.propTypes = {\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n children: _propTypes.default.node,\n errorFromContext: _propTypes.default.bool,\n layout: _propTypes.default.oneOf(['horizontal', 'vertical', 'inline']),\n fluid: _propTypes.default.bool,\n formValue: _propTypes.default.object,\n formDefaultValue: _propTypes.default.object,\n formError: _propTypes.default.object,\n checkTrigger: _propTypes.default.oneOf(['change', 'blur', 'none']),\n onChange: _propTypes.default.func,\n onError: _propTypes.default.func,\n onCheck: _propTypes.default.func,\n onSubmit: _propTypes.default.func,\n model: _propTypes.default.any,\n readOnly: _propTypes.default.bool,\n plaintext: _propTypes.default.bool,\n disabled: _propTypes.default.bool\n};\nvar _default = Form;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Form/Form.tsx?");
7223
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends6 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _set = _interopRequireDefault(__webpack_require__(/*! lodash/set */ \"./node_modules/lodash/set.js\"));\nvar _schemaTyped = __webpack_require__(/*! schema-typed */ \"./node_modules/schema-typed/es/index.js\");\nvar _FormContext = _interopRequireWildcard(__webpack_require__(/*! ./FormContext */ \"./src/Form/FormContext.tsx\"));\nvar _FormControl = _interopRequireDefault(__webpack_require__(/*! ../FormControl */ \"./src/FormControl/index.tsx\"));\nvar _FormControlLabel = _interopRequireDefault(__webpack_require__(/*! ../FormControlLabel */ \"./src/FormControlLabel/index.tsx\"));\nvar _FormErrorMessage = _interopRequireDefault(__webpack_require__(/*! ../FormErrorMessage */ \"./src/FormErrorMessage/index.tsx\"));\nvar _FormGroup = _interopRequireDefault(__webpack_require__(/*! ../FormGroup */ \"./src/FormGroup/index.tsx\"));\nvar _FormHelpText = _interopRequireDefault(__webpack_require__(/*! ../FormHelpText */ \"./src/FormHelpText/index.tsx\"));\nvar _useFormClassNames = __webpack_require__(/*! ./useFormClassNames */ \"./src/Form/useFormClassNames.ts\");\nvar _useSchemaModel2 = _interopRequireDefault(__webpack_require__(/*! ./useSchemaModel */ \"./src/Form/useSchemaModel.ts\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Form/Form.tsx\",\n _this = void 0;\n/**\n * The `Form` component is a form interface for collecting and validating user input.\n * @see https://rsuitejs.com/components/form\n */\nvar Form = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$checkTrigger = props.checkTrigger,\n checkTrigger = _props$checkTrigger === void 0 ? 'change' : _props$checkTrigger,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'form' : _props$classPrefix,\n _props$errorFromConte = props.errorFromContext,\n errorFromContext = _props$errorFromConte === void 0 ? true : _props$errorFromConte,\n _props$formDefaultVal = props.formDefaultValue,\n formDefaultValue = _props$formDefaultVal === void 0 ? {} : _props$formDefaultVal,\n formValue = props.formValue,\n formError = props.formError,\n fluid = props.fluid,\n _props$nestedField = props.nestedField,\n nestedField = _props$nestedField === void 0 ? false : _props$nestedField,\n _props$layout = props.layout,\n layout = _props$layout === void 0 ? 'vertical' : _props$layout,\n _props$model = props.model,\n formModel = _props$model === void 0 ? (0, _schemaTyped.SchemaModel)({}) : _props$model,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n className = props.className,\n children = props.children,\n disabled = props.disabled,\n onSubmit = props.onSubmit,\n onCheck = props.onCheck,\n onError = props.onError,\n onChange = props.onChange,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"checkTrigger\", \"classPrefix\", \"errorFromContext\", \"formDefaultValue\", \"formValue\", \"formError\", \"fluid\", \"nestedField\", \"layout\", \"model\", \"readOnly\", \"plaintext\", \"className\", \"children\", \"disabled\", \"onSubmit\", \"onCheck\", \"onError\", \"onChange\"]);\n var _useSchemaModel = (0, _useSchemaModel2.default)(formModel),\n getCombinedModel = _useSchemaModel.getCombinedModel,\n pushFieldRule = _useSchemaModel.pushFieldRule,\n removeFieldRule = _useSchemaModel.removeFieldRule;\n var classes = (0, _useFormClassNames.useFormClassNames)({\n classPrefix: classPrefix,\n className: className,\n fluid: fluid,\n layout: layout,\n readOnly: readOnly,\n plaintext: plaintext,\n disabled: disabled\n });\n var _useControlled = (0, _utils.useControlled)(formValue, formDefaultValue),\n realFormValue = _useControlled[0],\n setFormValue = _useControlled[1];\n var _useControlled2 = (0, _utils.useControlled)(formError, {}),\n realFormError = _useControlled2[0],\n setFormError = _useControlled2[1];\n var realFormValueRef = (0, _react.useRef)(realFormValue);\n realFormValueRef.current = realFormValue;\n var realFormErrorRef = (0, _react.useRef)(realFormError);\n realFormErrorRef.current = realFormError;\n\n /**\n * Validate the form data and return a boolean.\n * The error message after verification is returned in the callback.\n * @param callback\n */\n var check = (0, _utils.useEventCallback)(function (callback) {\n var formValue = realFormValue || {};\n var formError = {};\n var errorCount = 0;\n var model = getCombinedModel();\n Object.keys(model.spec).forEach(function (key) {\n var checkResult = model.checkForField(key, formValue);\n if (checkResult.hasError === true) {\n errorCount += 1;\n formError[key] = (checkResult === null || checkResult === void 0 ? void 0 : checkResult.errorMessage) || checkResult;\n }\n });\n setFormError(formError);\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);\n callback === null || callback === void 0 ? void 0 : callback(formError);\n if (errorCount > 0) {\n onError === null || onError === void 0 ? void 0 : onError(formError);\n return false;\n }\n return true;\n });\n\n /**\n * Check the data field\n * @param fieldName\n * @param callback\n */\n var checkForField = (0, _utils.useEventCallback)(function (fieldName, callback) {\n var _extends2;\n var formValue = realFormValue || {};\n var model = getCombinedModel();\n var checkResult = model.checkForField(fieldName, formValue);\n var formError = (0, _extends6.default)({}, realFormError, (_extends2 = {}, _extends2[fieldName] = (checkResult === null || checkResult === void 0 ? void 0 : checkResult.errorMessage) || checkResult, _extends2));\n setFormError(formError);\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);\n callback === null || callback === void 0 ? void 0 : callback(checkResult);\n if (checkResult.hasError) {\n onError === null || onError === void 0 ? void 0 : onError(formError);\n }\n return !checkResult.hasError;\n });\n\n /**\n * Check form data asynchronously and return a Promise\n */\n var checkAsync = (0, _utils.useEventCallback)(function () {\n var formValue = realFormValue || {};\n var promises = [];\n var keys = [];\n var model = getCombinedModel();\n Object.keys(model.spec).forEach(function (key) {\n keys.push(key);\n promises.push(model.checkForFieldAsync(key, formValue));\n });\n return Promise.all(promises).then(function (values) {\n var formError = {};\n var errorCount = 0;\n for (var i = 0; i < values.length; i++) {\n if (values[i].hasError) {\n errorCount += 1;\n formError[keys[i]] = values[i].errorMessage;\n }\n }\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);\n setFormError(formError);\n if (errorCount > 0) {\n onError === null || onError === void 0 ? void 0 : onError(formError);\n }\n return {\n hasError: errorCount > 0,\n formError: formError\n };\n });\n });\n\n /**\n * Asynchronously check form fields and return Promise\n * @param fieldName\n */\n var checkForFieldAsync = (0, _utils.useEventCallback)(function (fieldName) {\n var formValue = realFormValue || {};\n var model = getCombinedModel();\n return model.checkForFieldAsync(fieldName, formValue).then(function (checkResult) {\n var _extends3;\n var formError = (0, _extends6.default)({}, realFormError, (_extends3 = {}, _extends3[fieldName] = checkResult.errorMessage, _extends3));\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);\n setFormError(formError);\n if (checkResult.hasError) {\n onError === null || onError === void 0 ? void 0 : onError(formError);\n }\n return checkResult;\n });\n });\n var cleanErrors = (0, _utils.useEventCallback)(function () {\n setFormError({});\n });\n var cleanErrorForField = (0, _utils.useEventCallback)(function (fieldName) {\n setFormError((0, _omit.default)(realFormError, [fieldName]));\n });\n var resetErrors = (0, _utils.useEventCallback)(function (formError) {\n if (formError === void 0) {\n formError = {};\n }\n setFormError(formError);\n });\n (0, _react.useImperativeHandle)(ref, function () {\n return {\n root: rootRef.current,\n check: check,\n checkForField: checkForField,\n checkAsync: checkAsync,\n checkForFieldAsync: checkForFieldAsync,\n cleanErrors: cleanErrors,\n cleanErrorForField: cleanErrorForField,\n resetErrors: resetErrors\n };\n });\n var removeFieldError = (0, _utils.useEventCallback)(function (name) {\n /**\n * when this function is called when the children component is unmount, it's an old render frame\n * so use Ref to get future error\n */\n var formError = (0, _omit.default)(realFormErrorRef.current, [name]);\n realFormErrorRef.current = formError;\n setFormError(formError);\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);\n });\n var removeFieldValue = (0, _utils.useEventCallback)(function (name) {\n /**\n * when this function is called when the children component is unmount, it's an old render frame\n * so use Ref to get future value\n */\n var formValue = (0, _omit.default)(realFormValueRef.current, [name]);\n realFormValueRef.current = formValue;\n setFormValue(formValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(formValue);\n });\n var handleSubmit = (0, _utils.useEventCallback)(function (event) {\n if (disabled || readOnly || plaintext) {\n return;\n }\n event.preventDefault();\n event.stopPropagation();\n var checkStatus = check();\n onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(checkStatus, event);\n });\n var handleFieldError = (0, _utils.useEventCallback)(function (name, errorMessage) {\n var _extends4;\n var formError = (0, _extends6.default)({}, realFormError, (_extends4 = {}, _extends4[name] = errorMessage, _extends4));\n setFormError(formError);\n onError === null || onError === void 0 ? void 0 : onError(formError);\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);\n });\n var handleFieldSuccess = (0, _utils.useEventCallback)(function (name) {\n removeFieldError(name);\n });\n var setFieldValue = function setFieldValue(formValue, fieldName, fieldValue) {\n var _extends5;\n if (nestedField) {\n return (0, _set.default)((0, _extends6.default)({}, formValue), fieldName, fieldValue);\n }\n return (0, _extends6.default)({}, formValue, (_extends5 = {}, _extends5[fieldName] = fieldValue, _extends5));\n };\n var handleFieldChange = (0, _utils.useEventCallback)(function (name, value, event) {\n var nextFormValue = setFieldValue(realFormValue, name, value);\n setFormValue(nextFormValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextFormValue, event);\n });\n var rootRef = (0, _react.useRef)(null);\n var formContextValue = (0, _react.useMemo)(function () {\n return {\n getCombinedModel: getCombinedModel,\n checkTrigger: checkTrigger,\n errorFromContext: errorFromContext,\n readOnly: readOnly,\n plaintext: plaintext,\n disabled: disabled,\n formError: realFormError,\n nestedField: nestedField,\n removeFieldValue: removeFieldValue,\n removeFieldError: removeFieldError,\n pushFieldRule: pushFieldRule,\n removeFieldRule: removeFieldRule,\n onFieldChange: handleFieldChange,\n onFieldError: handleFieldError,\n onFieldSuccess: handleFieldSuccess\n };\n }, [getCombinedModel, checkTrigger, errorFromContext, readOnly, plaintext, disabled, realFormError, nestedField, removeFieldValue, removeFieldError, pushFieldRule, removeFieldRule, handleFieldChange, handleFieldError, handleFieldSuccess]);\n return /*#__PURE__*/_react.default.createElement(\"form\", (0, _extends6.default)({}, rest, {\n ref: rootRef,\n onSubmit: handleSubmit,\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 419,\n columnNumber: 5\n }\n }), /*#__PURE__*/_react.default.createElement(_FormContext.default.Provider, {\n value: formContextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 420,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_FormContext.FormValueContext.Provider, {\n value: realFormValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 421,\n columnNumber: 9\n }\n }, children)));\n});\nForm.Control = _FormControl.default;\nForm.ControlLabel = _FormControlLabel.default;\nForm.ErrorMessage = _FormErrorMessage.default;\nForm.Group = _FormGroup.default;\nForm.HelpText = _FormHelpText.default;\nForm.Control = _FormControl.default;\nForm.displayName = 'Form';\nForm.propTypes = {\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n children: _propTypes.default.node,\n errorFromContext: _propTypes.default.bool,\n layout: _propTypes.default.oneOf(['horizontal', 'vertical', 'inline']),\n fluid: _propTypes.default.bool,\n formValue: _propTypes.default.object,\n formDefaultValue: _propTypes.default.object,\n formError: _propTypes.default.object,\n checkTrigger: _propTypes.default.oneOf(['change', 'blur', 'none']),\n onChange: _propTypes.default.func,\n onError: _propTypes.default.func,\n onCheck: _propTypes.default.func,\n onSubmit: _propTypes.default.func,\n model: _propTypes.default.any,\n readOnly: _propTypes.default.bool,\n plaintext: _propTypes.default.bool,\n disabled: _propTypes.default.bool\n};\nvar _default = Form;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Form/Form.tsx?");
7235
7224
 
7236
7225
  /***/ }),
7237
7226
 
@@ -7286,7 +7275,7 @@ eval("\n\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _schem
7286
7275
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
7287
7276
 
7288
7277
  "use strict";
7289
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _extends3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _Input = _interopRequireDefault(__webpack_require__(/*! ../Input */ \"./src/Input/index.tsx\"));\nvar _FormErrorMessage = _interopRequireDefault(__webpack_require__(/*! ../FormErrorMessage */ \"./src/FormErrorMessage/index.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _FormContext = _interopRequireWildcard(__webpack_require__(/*! ../Form/FormContext */ \"./src/Form/FormContext.tsx\"));\nvar _FormGroup = __webpack_require__(/*! ../FormGroup/FormGroup */ \"./src/FormGroup/FormGroup.tsx\");\nvar _useRegisterModel = _interopRequireDefault(__webpack_require__(/*! ./useRegisterModel */ \"./src/FormControl/useRegisterModel.ts\"));\nvar _Toggle = _interopRequireDefault(__webpack_require__(/*! ../Toggle */ \"./src/Toggle/index.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/FormControl/FormControl.tsx\",\n _this = void 0,\n _templateObject;\n/**\n * Props that FormControl passes to its accepter\n */\n\n/**\n * The `<Form.Control>` component is used to wrap the components that need to be validated.\n * @see https://rsuitejs.com/components/form/\n */\nvar FormControl = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _accepterProps;\n var _useContext = (0, _react.useContext)(_FormContext.default),\n readOnlyContext = _useContext.readOnly,\n plaintextContext = _useContext.plaintext,\n disabledContext = _useContext.disabled,\n errorFromContext = _useContext.errorFromContext,\n formError = _useContext.formError,\n removeFieldValue = _useContext.removeFieldValue,\n removeFieldError = _useContext.removeFieldError,\n pushFieldRule = _useContext.pushFieldRule,\n removeFieldRule = _useContext.removeFieldRule,\n onFieldChange = _useContext.onFieldChange,\n onFieldError = _useContext.onFieldError,\n onFieldSuccess = _useContext.onFieldSuccess,\n getCombinedModel = _useContext.getCombinedModel,\n contextCheckTrigger = _useContext.checkTrigger;\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$accepter = props.accepter,\n AccepterComponent = _props$accepter === void 0 ? _Input.default : _props$accepter,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'form-control' : _props$classPrefix,\n checkAsync = props.checkAsync,\n checkTrigger = props.checkTrigger,\n _props$errorPlacement = props.errorPlacement,\n errorPlacement = _props$errorPlacement === void 0 ? 'bottomStart' : _props$errorPlacement,\n errorMessage = props.errorMessage,\n name = props.name,\n value = props.value,\n _props$readOnly = props.readOnly,\n readOnly = _props$readOnly === void 0 ? readOnlyContext : _props$readOnly,\n _props$plaintext = props.plaintext,\n plaintext = _props$plaintext === void 0 ? plaintextContext : _props$plaintext,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? disabledContext : _props$disabled,\n onChange = props.onChange,\n onBlur = props.onBlur,\n defaultValue = props.defaultValue,\n _props$shouldResetWit = props.shouldResetWithUnmount,\n shouldResetWithUnmount = _props$shouldResetWit === void 0 ? false : _props$shouldResetWit,\n rule = props.rule,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"accepter\", \"classPrefix\", \"checkAsync\", \"checkTrigger\", \"errorPlacement\", \"errorMessage\", \"name\", \"value\", \"readOnly\", \"plaintext\", \"disabled\", \"onChange\", \"onBlur\", \"defaultValue\", \"shouldResetWithUnmount\", \"rule\"]);\n var _useContext2 = (0, _react.useContext)(_FormGroup.FormGroupContext),\n controlId = _useContext2.controlId;\n if (!onFieldChange) {\n throw new Error(\"\\n <FormControl> must be inside a component decorated with <Form>.\\n And need to update React to 16.6.0 +.\\n \");\n }\n (0, _useRegisterModel.default)(name, pushFieldRule, removeFieldRule, rule);\n (0, _utils.useWillUnmount)(function () {\n if (shouldResetWithUnmount) {\n removeFieldValue === null || removeFieldValue === void 0 ? void 0 : removeFieldValue(name);\n removeFieldError === null || removeFieldError === void 0 ? void 0 : removeFieldError(name);\n }\n });\n var trigger = checkTrigger || contextCheckTrigger;\n var formValue = (0, _react.useContext)(_FormContext.FormValueContext);\n var val = (0, _isUndefined.default)(value) ? formValue === null || formValue === void 0 ? void 0 : formValue[name] : value;\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix;\n var classes = withClassPrefix('wrapper');\n var handleFieldChange = function handleFieldChange(value, event) {\n handleFieldCheck(value, trigger === 'change');\n onFieldChange === null || onFieldChange === void 0 ? void 0 : onFieldChange(name, value, event);\n onChange === null || onChange === void 0 ? void 0 : onChange(value, event);\n };\n var handleFieldBlur = function handleFieldBlur(event) {\n handleFieldCheck(val, trigger === 'blur');\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(event);\n };\n var handleFieldCheck = function handleFieldCheck(value, isCheckTrigger) {\n var _extends2;\n var callbackEvents = function callbackEvents(checkResult) {\n // The relevant event is triggered only when the inspection is allowed.\n if (isCheckTrigger) {\n if (checkResult.hasError) {\n onFieldError === null || onFieldError === void 0 ? void 0 : onFieldError(name, (checkResult === null || checkResult === void 0 ? void 0 : checkResult.errorMessage) || checkResult);\n } else {\n onFieldSuccess === null || onFieldSuccess === void 0 ? void 0 : onFieldSuccess(name);\n }\n }\n return checkResult;\n };\n var nextFormValue = (0, _extends3.default)({}, formValue, (_extends2 = {}, _extends2[name] = value, _extends2));\n var model = getCombinedModel();\n if (checkAsync) {\n return model === null || model === void 0 ? void 0 : model.checkForFieldAsync(name, nextFormValue).then(function (checkResult) {\n return callbackEvents(checkResult);\n });\n }\n return Promise.resolve(callbackEvents(model === null || model === void 0 ? void 0 : model.checkForField(name, nextFormValue)));\n };\n var messageNode = null;\n if (!(0, _isUndefined.default)(errorMessage)) {\n messageNode = errorMessage;\n } else if (errorFromContext) {\n var fieldError = formError === null || formError === void 0 ? void 0 : formError[name];\n if (typeof fieldError === 'string' || !(fieldError !== null && fieldError !== void 0 && fieldError.array) && !(fieldError !== null && fieldError !== void 0 && fieldError.object) && fieldError !== null && fieldError !== void 0 && fieldError.hasError) {\n messageNode = fieldError;\n }\n }\n var ariaDescribedby = controlId ? controlId + \"-help-text\" : null;\n var fieldHasError = Boolean(messageNode);\n var ariaErrormessage = fieldHasError && controlId ? controlId + \"-error-message\" : undefined;\n var valueKey = 'value';\n\n // Toggle component is a special case that uses `checked` and `defaultChecked` instead of `value` and `defaultValue` props.\n if (AccepterComponent === _Toggle.default) {\n valueKey = 'checked';\n }\n var accepterProps = (_accepterProps = {}, _accepterProps[valueKey] = val === undefined ? defaultValue : val, _accepterProps);\n return /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n ref: ref,\n \"data-testid\": \"form-control-wrapper\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 205,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(AccepterComponent, (0, _extends3.default)({\n id: controlId,\n \"aria-labelledby\": controlId ? controlId + \"-control-label\" : null,\n \"aria-describedby\": ariaDescribedby,\n \"aria-invalid\": fieldHasError || undefined,\n \"aria-errormessage\": ariaErrormessage\n }, accepterProps, rest, {\n readOnly: readOnly,\n plaintext: plaintext,\n disabled: disabled,\n name: name,\n onChange: handleFieldChange,\n onBlur: handleFieldBlur,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 206,\n columnNumber: 7\n }\n })), /*#__PURE__*/_react.default.createElement(_FormErrorMessage.default, {\n id: controlId + \"-error-message\",\n role: \"alert\",\n \"aria-relevant\": \"all\",\n show: !!messageNode,\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"message-wrapper\"]))),\n placement: errorPlacement,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 222,\n columnNumber: 7\n }\n }, messageNode));\n});\nFormControl.displayName = 'FormControl';\nFormControl.propTypes = {\n name: _propTypes.default.string.isRequired,\n checkTrigger: _propTypes.default.oneOf(['change', 'blur', 'none']),\n checkAsync: _propTypes.default.bool,\n accepter: _propTypes.default.any,\n onChange: _propTypes.default.func,\n onBlur: _propTypes.default.func,\n classPrefix: _propTypes.default.string,\n errorMessage: _propTypes.default.node,\n errorPlacement: _propTypes.default.oneOf(['bottomStart', 'bottomEnd', 'topStart', 'topEnd', 'leftStart', 'rightStart', 'leftEnd', 'rightEnd']),\n value: _propTypes.default.any\n};\nvar _default = FormControl;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/FormControl/FormControl.tsx?");
7278
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _extends3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _get = _interopRequireDefault(__webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\"));\nvar _set = _interopRequireDefault(__webpack_require__(/*! lodash/set */ \"./node_modules/lodash/set.js\"));\nvar _Input = _interopRequireDefault(__webpack_require__(/*! ../Input */ \"./src/Input/index.tsx\"));\nvar _FormErrorMessage = _interopRequireDefault(__webpack_require__(/*! ../FormErrorMessage */ \"./src/FormErrorMessage/index.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _FormContext = _interopRequireWildcard(__webpack_require__(/*! ../Form/FormContext */ \"./src/Form/FormContext.tsx\"));\nvar _FormGroup = __webpack_require__(/*! ../FormGroup/FormGroup */ \"./src/FormGroup/FormGroup.tsx\");\nvar _useRegisterModel = _interopRequireDefault(__webpack_require__(/*! ./useRegisterModel */ \"./src/FormControl/useRegisterModel.ts\"));\nvar _Toggle = _interopRequireDefault(__webpack_require__(/*! ../Toggle */ \"./src/Toggle/index.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/FormControl/FormControl.tsx\",\n _this = void 0,\n _templateObject;\n/**\n * Props that FormControl passes to its accepter\n */\n\n/**\n * The `<Form.Control>` component is used to wrap the components that need to be validated.\n * @see https://rsuitejs.com/components/form/\n */\nvar FormControl = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _accepterProps;\n var _useContext = (0, _react.useContext)(_FormContext.default),\n readOnlyContext = _useContext.readOnly,\n plaintextContext = _useContext.plaintext,\n disabledContext = _useContext.disabled,\n errorFromContext = _useContext.errorFromContext,\n formError = _useContext.formError,\n nestedField = _useContext.nestedField,\n removeFieldValue = _useContext.removeFieldValue,\n removeFieldError = _useContext.removeFieldError,\n pushFieldRule = _useContext.pushFieldRule,\n removeFieldRule = _useContext.removeFieldRule,\n onFieldChange = _useContext.onFieldChange,\n onFieldError = _useContext.onFieldError,\n onFieldSuccess = _useContext.onFieldSuccess,\n getCombinedModel = _useContext.getCombinedModel,\n contextCheckTrigger = _useContext.checkTrigger;\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$accepter = props.accepter,\n AccepterComponent = _props$accepter === void 0 ? _Input.default : _props$accepter,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'form-control' : _props$classPrefix,\n checkAsync = props.checkAsync,\n checkTrigger = props.checkTrigger,\n _props$errorPlacement = props.errorPlacement,\n errorPlacement = _props$errorPlacement === void 0 ? 'bottomStart' : _props$errorPlacement,\n errorMessage = props.errorMessage,\n name = props.name,\n value = props.value,\n _props$readOnly = props.readOnly,\n readOnly = _props$readOnly === void 0 ? readOnlyContext : _props$readOnly,\n _props$plaintext = props.plaintext,\n plaintext = _props$plaintext === void 0 ? plaintextContext : _props$plaintext,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? disabledContext : _props$disabled,\n onChange = props.onChange,\n onBlur = props.onBlur,\n defaultValue = props.defaultValue,\n _props$shouldResetWit = props.shouldResetWithUnmount,\n shouldResetWithUnmount = _props$shouldResetWit === void 0 ? false : _props$shouldResetWit,\n rule = props.rule,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"accepter\", \"classPrefix\", \"checkAsync\", \"checkTrigger\", \"errorPlacement\", \"errorMessage\", \"name\", \"value\", \"readOnly\", \"plaintext\", \"disabled\", \"onChange\", \"onBlur\", \"defaultValue\", \"shouldResetWithUnmount\", \"rule\"]);\n var _useContext2 = (0, _react.useContext)(_FormGroup.FormGroupContext),\n controlId = _useContext2.controlId;\n if (!onFieldChange) {\n throw new Error(\"\\n <FormControl> must be inside a component decorated with <Form>.\\n And need to update React to 16.6.0 +.\\n \");\n }\n (0, _useRegisterModel.default)(name, pushFieldRule, removeFieldRule, rule);\n (0, _utils.useWillUnmount)(function () {\n if (shouldResetWithUnmount) {\n removeFieldValue === null || removeFieldValue === void 0 ? void 0 : removeFieldValue(name);\n removeFieldError === null || removeFieldError === void 0 ? void 0 : removeFieldError(name);\n }\n });\n var trigger = checkTrigger || contextCheckTrigger;\n var formValue = (0, _react.useContext)(_FormContext.FormValueContext);\n var getFieldValue = function getFieldValue(fieldName) {\n if (!(0, _isUndefined.default)(value)) {\n return value;\n }\n return nestedField ? (0, _get.default)(formValue, fieldName) : formValue === null || formValue === void 0 ? void 0 : formValue[name];\n };\n var setFieldValue = function setFieldValue(fieldName, fieldValue) {\n var _extends2;\n if (nestedField) {\n return (0, _set.default)((0, _extends3.default)({}, formValue), fieldName, fieldValue);\n }\n return (0, _extends3.default)({}, formValue, (_extends2 = {}, _extends2[fieldName] = fieldValue, _extends2));\n };\n var getFieldError = function getFieldError(fieldName) {\n if (nestedField) {\n var _name = fieldName.includes('.') ? fieldName.replace('.', '.object.') + '.errorMessage' : fieldName;\n return (0, _get.default)(formError, _name);\n }\n return formError === null || formError === void 0 ? void 0 : formError[fieldName];\n };\n var fieldValue = getFieldValue(name);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix;\n var classes = withClassPrefix('wrapper');\n var handleFieldChange = (0, _utils.useEventCallback)(function (value, event) {\n handleFieldCheck(value, trigger === 'change');\n onFieldChange === null || onFieldChange === void 0 ? void 0 : onFieldChange(name, value, event);\n onChange === null || onChange === void 0 ? void 0 : onChange(value, event);\n });\n var handleFieldBlur = (0, _utils.useEventCallback)(function (event) {\n handleFieldCheck(fieldValue, trigger === 'blur');\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(event);\n });\n var handleFieldCheck = (0, _utils.useEventCallback)(function (value, isCheckTrigger) {\n var checkFieldName = nestedField ? name.split('.')[0] : name;\n var callbackEvents = function callbackEvents(checkResult) {\n // The relevant event is triggered only when the inspection is allowed.\n if (isCheckTrigger) {\n if (checkResult.hasError) {\n onFieldError === null || onFieldError === void 0 ? void 0 : onFieldError(checkFieldName, (checkResult === null || checkResult === void 0 ? void 0 : checkResult.errorMessage) || checkResult);\n } else {\n onFieldSuccess === null || onFieldSuccess === void 0 ? void 0 : onFieldSuccess(checkFieldName);\n }\n }\n return checkResult;\n };\n var nextFormValue = setFieldValue(name, value);\n var model = getCombinedModel();\n if (checkAsync) {\n return model === null || model === void 0 ? void 0 : model.checkForFieldAsync(checkFieldName, nextFormValue).then(function (checkResult) {\n return callbackEvents(checkResult);\n });\n }\n return Promise.resolve(callbackEvents(model === null || model === void 0 ? void 0 : model.checkForField(checkFieldName, nextFormValue)));\n });\n var messageNode = null;\n if (!(0, _isUndefined.default)(errorMessage)) {\n messageNode = errorMessage;\n } else if (errorFromContext) {\n var fieldError = getFieldError(name);\n if (typeof fieldError === 'string' || !(fieldError !== null && fieldError !== void 0 && fieldError.array) && !(fieldError !== null && fieldError !== void 0 && fieldError.object) && fieldError !== null && fieldError !== void 0 && fieldError.hasError) {\n messageNode = fieldError;\n }\n }\n var ariaDescribedby = controlId ? controlId + \"-help-text\" : null;\n var fieldHasError = Boolean(messageNode);\n var ariaErrormessage = fieldHasError && controlId ? controlId + \"-error-message\" : undefined;\n var valueKey = 'value';\n\n // Toggle component is a special case that uses `checked` and `defaultChecked` instead of `value` and `defaultValue` props.\n if (AccepterComponent === _Toggle.default) {\n valueKey = 'checked';\n }\n var accepterProps = (_accepterProps = {}, _accepterProps[valueKey] = fieldValue === undefined ? defaultValue : fieldValue, _accepterProps);\n return /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n ref: ref,\n \"data-testid\": \"form-control-wrapper\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 249,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(AccepterComponent, (0, _extends3.default)({\n id: controlId,\n \"aria-labelledby\": controlId ? controlId + \"-control-label\" : null,\n \"aria-describedby\": ariaDescribedby,\n \"aria-invalid\": fieldHasError || undefined,\n \"aria-errormessage\": ariaErrormessage\n }, accepterProps, rest, {\n readOnly: readOnly,\n plaintext: plaintext,\n disabled: disabled,\n name: name,\n onChange: handleFieldChange,\n onBlur: handleFieldBlur,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 250,\n columnNumber: 7\n }\n })), /*#__PURE__*/_react.default.createElement(_FormErrorMessage.default, {\n id: controlId ? controlId + \"-error-message\" : undefined,\n role: \"alert\",\n \"aria-relevant\": \"all\",\n show: !!messageNode,\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"message-wrapper\"]))),\n placement: errorPlacement,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 266,\n columnNumber: 7\n }\n }, messageNode));\n});\nFormControl.displayName = 'FormControl';\nFormControl.propTypes = {\n name: _propTypes.default.string.isRequired,\n checkTrigger: _propTypes.default.oneOf(['change', 'blur', 'none']),\n checkAsync: _propTypes.default.bool,\n accepter: _propTypes.default.any,\n onChange: _propTypes.default.func,\n onBlur: _propTypes.default.func,\n classPrefix: _propTypes.default.string,\n errorMessage: _propTypes.default.node,\n errorPlacement: _propTypes.default.oneOf(['bottomStart', 'bottomEnd', 'topStart', 'topEnd', 'leftStart', 'rightStart', 'leftEnd', 'rightEnd']),\n value: _propTypes.default.any\n};\nvar _default = FormControl;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/FormControl/FormControl.tsx?");
7290
7279
 
7291
7280
  /***/ }),
7292
7281
 
@@ -7363,7 +7352,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
7363
7352
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
7364
7353
 
7365
7354
  "use strict";
7366
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = exports.FormGroupContext = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/FormGroup/FormGroup.tsx\",\n _this = void 0;\nvar FormGroupContext = /*#__PURE__*/_react.default.createContext({});\n\n/**\n * The `<Form.Group>` component is the easiest way to add some structure to forms.\n * @see https://rsuitejs.com/components/form/\n */\nexports.FormGroupContext = FormGroupContext;\nvar FormGroup = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'form-group' : _props$classPrefix,\n controlId = props.controlId,\n className = props.className,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"controlId\", \"className\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge;\n var classes = merge(className, withClassPrefix());\n var contextValue = (0, _react.useMemo)(function () {\n return {\n controlId: controlId\n };\n }, [controlId]);\n return /*#__PURE__*/_react.default.createElement(FormGroupContext.Provider, {\n value: contextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 35,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n ref: ref,\n className: classes,\n role: \"group\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 36,\n columnNumber: 9\n }\n })));\n});\nFormGroup.displayName = 'FormGroup';\nFormGroup.propTypes = {\n controlId: _propTypes.default.string,\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string\n};\nvar _default = FormGroup;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/FormGroup/FormGroup.tsx?");
7355
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = exports.FormGroupContext = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/FormGroup/FormGroup.tsx\",\n _this = void 0;\nvar FormGroupContext = /*#__PURE__*/_react.default.createContext({});\n\n/**\n * The `<Form.Group>` component is the easiest way to add some structure to forms.\n * @see https://rsuitejs.com/components/form/\n */\nexports.FormGroupContext = FormGroupContext;\nvar FormGroup = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'form-group' : _props$classPrefix,\n controlIdProp = props.controlId,\n className = props.className,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"controlId\", \"className\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge;\n var classes = merge(className, withClassPrefix());\n var controlId = (0, _utils.useUniqueId)('rs-', controlIdProp);\n var contextValue = (0, _react.useMemo)(function () {\n return {\n controlId: controlId\n };\n }, [controlId]);\n return /*#__PURE__*/_react.default.createElement(FormGroupContext.Provider, {\n value: contextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 36,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n ref: ref,\n className: classes,\n role: \"group\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 37,\n columnNumber: 9\n }\n })));\n});\nFormGroup.displayName = 'FormGroup';\nFormGroup.propTypes = {\n controlId: _propTypes.default.string,\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string\n};\nvar _default = FormGroup;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/FormGroup/FormGroup.tsx?");
7367
7356
 
7368
7357
  /***/ }),
7369
7358
 
@@ -7572,7 +7561,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
7572
7561
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
7573
7562
 
7574
7563
  "use strict";
7575
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _remove = _interopRequireDefault(__webpack_require__(/*! lodash/remove */ \"./node_modules/lodash/remove.js\"));\nvar _clone = _interopRequireDefault(__webpack_require__(/*! lodash/clone */ \"./node_modules/lodash/clone.js\"));\nvar _isArray = _interopRequireDefault(__webpack_require__(/*! lodash/isArray */ \"./node_modules/lodash/isArray.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _getWidth = _interopRequireDefault(__webpack_require__(/*! dom-lib/getWidth */ \"./node_modules/dom-lib/esm/getWidth.js\"));\nvar _shallowEqual = _interopRequireDefault(__webpack_require__(/*! ../utils/shallowEqual */ \"./src/utils/shallowEqual.ts\"));\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _Plaintext = _interopRequireDefault(__webpack_require__(/*! ../Plaintext */ \"./src/Plaintext/index.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _getDataGroupBy = __webpack_require__(/*! ../utils/getDataGroupBy */ \"./src/utils/getDataGroupBy.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _Tag = _interopRequireDefault(__webpack_require__(/*! ../Tag */ \"./src/Tag/index.tsx\"));\nvar _InputAutosize = _interopRequireDefault(__webpack_require__(/*! ./InputAutosize */ \"./src/InputPicker/InputAutosize.tsx\"));\nvar _InputSearch = _interopRequireDefault(__webpack_require__(/*! ./InputSearch */ \"./src/InputPicker/InputSearch.tsx\"));\nvar _InputPickerContext = _interopRequireDefault(__webpack_require__(/*! ./InputPickerContext */ \"./src/InputPicker/InputPickerContext.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/InputPicker/InputPicker.tsx\",\n _this = void 0,\n _templateObject,\n _templateObject2,\n _templateObject3,\n _templateObject4,\n _templateObject5;\n/**\n * Single item selector with text box input.\n *\n * @see https://rsuitejs.com/components/input-picker\n */\nvar InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _merge;\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$cacheData = props.cacheData,\n cacheData = _props$cacheData === void 0 ? [] : _props$cacheData,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n _props$data = props.data,\n controlledData = _props$data === void 0 ? [] : _props$data,\n disabled = props.disabled,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n defaultValue = props.defaultValue,\n _props$defaultOpen = props.defaultOpen,\n defaultOpen = _props$defaultOpen === void 0 ? false : _props$defaultOpen,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? [] : _props$disabledItemVa,\n overrideLocale = props.locale,\n toggleAs = props.toggleAs,\n style = props.style,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n controlledOpen = props.open,\n placeholder = props.placeholder,\n groupBy = props.groupBy,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n _props$menuAutoWidth = props.menuAutoWidth,\n menuAutoWidth = _props$menuAutoWidth === void 0 ? true : _props$menuAutoWidth,\n _props$menuMaxHeight = props.menuMaxHeight,\n menuMaxHeight = _props$menuMaxHeight === void 0 ? 320 : _props$menuMaxHeight,\n creatable = props.creatable,\n shouldDisplayCreateOption = props.shouldDisplayCreateOption,\n valueProp = props.value,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n virtualized = props.virtualized,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n listProps = props.listProps,\n id = props.id,\n tabIndex = props.tabIndex,\n sort = props.sort,\n renderMenu = props.renderMenu,\n renderExtraFooter = props.renderExtraFooter,\n renderValue = props.renderValue,\n renderMenuItem = props.renderMenuItem,\n renderMenuGroup = props.renderMenuGroup,\n onEnter = props.onEnter,\n onEntered = props.onEntered,\n onExit = props.onExit,\n onExited = props.onExited,\n onChange = props.onChange,\n onClean = props.onClean,\n onCreate = props.onCreate,\n onSearch = props.onSearch,\n onSelect = props.onSelect,\n onOpen = props.onOpen,\n onClose = props.onClose,\n onBlur = props.onBlur,\n onFocus = props.onFocus,\n searchBy = props.searchBy,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"appearance\", \"cleanable\", \"cacheData\", \"classPrefix\", \"data\", \"disabled\", \"readOnly\", \"plaintext\", \"defaultValue\", \"defaultOpen\", \"disabledItemValues\", \"locale\", \"toggleAs\", \"style\", \"searchable\", \"open\", \"placeholder\", \"groupBy\", \"menuClassName\", \"menuStyle\", \"menuAutoWidth\", \"menuMaxHeight\", \"creatable\", \"shouldDisplayCreateOption\", \"value\", \"valueKey\", \"virtualized\", \"labelKey\", \"listProps\", \"id\", \"tabIndex\", \"sort\", \"renderMenu\", \"renderExtraFooter\", \"renderValue\", \"renderMenuItem\", \"renderMenuGroup\", \"onEnter\", \"onEntered\", \"onExit\", \"onExited\", \"onChange\", \"onClean\", \"onCreate\", \"onSearch\", \"onSelect\", \"onOpen\", \"onClose\", \"onBlur\", \"onFocus\", \"searchBy\", \"placement\"]);\n var _useContext = (0, _react.useContext)(_InputPickerContext.default),\n multi = _useContext.multi,\n tagProps = _useContext.tagProps,\n trigger = _useContext.trigger,\n disabledOptions = _useContext.disabledOptions,\n onTagRemove = _useContext.onTagRemove,\n renderMenuItemCheckbox = _useContext.renderMenuItemCheckbox;\n if (groupBy === valueKey || groupBy === labelKey) {\n throw Error('`groupBy` can not be equal to `valueKey` and `labelKey`');\n }\n var overlayRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var triggerRef = (0, _react.useRef)(null);\n var inputRef = (0, _react.useRef)();\n var listRef = (0, _react.useRef)(null);\n var _useCustom = (0, _utils.useCustom)(['Picker', 'InputPicker'], overrideLocale),\n locale = _useCustom.locale;\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var _useState = (0, _react.useState)(controlledData),\n uncontrolledData = _useState[0],\n setData = _useState[1];\n var _useState2 = (0, _react.useState)(100),\n maxWidth = _useState2[0],\n setMaxWidth = _useState2[1];\n var _useState3 = (0, _react.useState)([]),\n newData = _useState3[0],\n setNewData = _useState3[1];\n var _useState4 = (0, _react.useState)(defaultOpen),\n uncontrolledOpen = _useState4[0],\n setOpen = _useState4[1];\n var open = (0, _isUndefined.default)(controlledOpen) ? uncontrolledOpen : controlledOpen;\n var getAllData = (0, _react.useCallback)(function () {\n return [].concat(uncontrolledData, newData);\n }, [uncontrolledData, newData]);\n var getAllDataAndCache = (0, _react.useCallback)(function () {\n return [].concat(getAllData(), cacheData);\n }, [getAllData, cacheData]);\n var _useControlled = (0, _utils.useControlled)(valueProp, multi ? defaultValue || [] : defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1],\n isControlled = _useControlled[2];\n var cloneValue = (0, _react.useCallback)(function () {\n return multi ? (0, _clone.default)(value) || [] : value;\n }, [multi, value]);\n var handleClose = (0, _react.useCallback)(function () {\n var _triggerRef$current, _targetRef$current, _targetRef$current$fo;\n triggerRef === null || triggerRef === void 0 ? void 0 : (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.close();\n\n // The focus is on the trigger button after closing\n (_targetRef$current = targetRef.current) === null || _targetRef$current === void 0 ? void 0 : (_targetRef$current$fo = _targetRef$current.focus) === null || _targetRef$current$fo === void 0 ? void 0 : _targetRef$current$fo.call(_targetRef$current);\n }, []);\n\n // Used to hover the focuse item when trigger `onKeydown`\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(multi ? value === null || value === void 0 ? void 0 : value[0] : value, {\n data: getAllDataAndCache(),\n valueKey: valueKey,\n target: function target() {\n return overlayRef.current;\n }\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setFocusItemValue = _useFocusItemValue.setFocusItemValue,\n onKeyDown = _useFocusItemValue.onKeyDown;\n var handleSearchCallback = (0, _react.useCallback)(function (searchKeyword, filteredData, event) {\n var _filteredData$;\n // The first option after filtering is the focus.\n setFocusItemValue(disabledOptions ? searchKeyword : (filteredData === null || filteredData === void 0 ? void 0 : (_filteredData$ = filteredData[0]) === null || _filteredData$ === void 0 ? void 0 : _filteredData$[valueKey]) || searchKeyword);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);\n }, [disabledOptions, setFocusItemValue, valueKey, onSearch]);\n\n // Use search keywords to filter options.\n var _useSearch = (0, _Picker.useSearch)(getAllData(), {\n labelKey: labelKey,\n searchBy: searchBy,\n callback: handleSearchCallback\n }),\n searchKeyword = _useSearch.searchKeyword,\n resetSearch = _useSearch.resetSearch,\n checkShouldDisplay = _useSearch.checkShouldDisplay,\n handleSearch = _useSearch.handleSearch; // Update the state when the data in props changes\n (0, _react.useEffect)(function () {\n if (controlledData && !(0, _shallowEqual.default)(controlledData, uncontrolledData)) {\n var _controlledData$;\n setData(controlledData);\n setNewData([]);\n setFocusItemValue(controlledData === null || controlledData === void 0 ? void 0 : (_controlledData$ = controlledData[0]) === null || _controlledData$ === void 0 ? void 0 : _controlledData$[valueKey]);\n }\n }, [setFocusItemValue, controlledData, uncontrolledData, valueKey]);\n (0, _react.useEffect)(function () {\n var _triggerRef$current2;\n // In multiple selection, you need to set a maximum width for the input.\n if ((_triggerRef$current2 = triggerRef.current) !== null && _triggerRef$current2 !== void 0 && _triggerRef$current2.root) {\n setMaxWidth((0, _getWidth.default)(triggerRef.current.root));\n }\n }, []);\n\n // Update the position of the menu when the search keyword and value change\n (0, _react.useEffect)(function () {\n var _triggerRef$current3, _triggerRef$current3$;\n (_triggerRef$current3 = triggerRef.current) === null || _triggerRef$current3 === void 0 ? void 0 : (_triggerRef$current3$ = _triggerRef$current3.updatePosition) === null || _triggerRef$current3$ === void 0 ? void 0 : _triggerRef$current3$.call(_triggerRef$current3);\n }, [searchKeyword, value]);\n var getDateItem = function getDateItem(value) {\n // Find active `MenuItem` by `value`\n var allData = getAllDataAndCache();\n var activeItem = allData.find(function (item) {\n return (0, _shallowEqual.default)(item[valueKey], value);\n });\n var itemNode = placeholder;\n if (activeItem !== null && activeItem !== void 0 && activeItem[labelKey]) {\n itemNode = activeItem === null || activeItem === void 0 ? void 0 : activeItem[labelKey];\n }\n return {\n isValid: !!activeItem,\n activeItem: activeItem,\n itemNode: itemNode\n };\n };\n var getInput = (0, _react.useCallback)(function () {\n var _inputRef$current;\n return multi ? (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.input : inputRef.current;\n }, [inputRef, multi]);\n var focusInput = (0, _react.useCallback)(function () {\n var _getInput;\n return (_getInput = getInput()) === null || _getInput === void 0 ? void 0 : _getInput.focus();\n }, [getInput]);\n var blurInput = (0, _react.useCallback)(function () {\n var _getInput2;\n return (_getInput2 = getInput()) === null || _getInput2 === void 0 ? void 0 : _getInput2.blur();\n }, [getInput]);\n\n /**\n * Convert the string of the newly created option into an object.\n */\n var createOption = (0, _react.useCallback)(function (value) {\n var _ref2;\n if (groupBy) {\n var _ref;\n return _ref = {\n create: true\n }, _ref[groupBy] = locale === null || locale === void 0 ? void 0 : locale.newItem, _ref[valueKey] = value, _ref[labelKey] = value, _ref;\n }\n return _ref2 = {\n create: true\n }, _ref2[valueKey] = value, _ref2[labelKey] = value, _ref2;\n }, [groupBy, valueKey, labelKey, locale]);\n var handleChange = (0, _react.useCallback)(function (value, event) {\n onChange === null || onChange === void 0 ? void 0 : onChange(value, event);\n }, [onChange]);\n var handleRemoveItemByTag = (0, _react.useCallback)(function (tag, event) {\n event.stopPropagation();\n var val = cloneValue();\n (0, _remove.default)(val, function (itemVal) {\n return (0, _shallowEqual.default)(itemVal, tag);\n });\n setValue(val);\n handleChange(val, event);\n onTagRemove === null || onTagRemove === void 0 ? void 0 : onTagRemove(tag, event);\n }, [cloneValue, setValue, handleChange, onTagRemove]);\n var handleSelect = (0, _react.useCallback)(function (value, item, event) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, item, event);\n if (creatable && item.create) {\n delete item.create;\n onCreate === null || onCreate === void 0 ? void 0 : onCreate(value, item, event);\n setNewData(newData.concat(item));\n }\n }, [creatable, newData, onSelect, onCreate]);\n\n /**\n * Callback triggered by single selection\n * @param value\n * @param item\n * @param event\n */\n var handleSelectItem = function handleSelectItem(value, item, event) {\n setValue(value);\n setFocusItemValue(value);\n resetSearch();\n handleSelect(value, item, event);\n handleChange(value, event);\n handleClose();\n };\n\n /**\n * Callback triggered by multiple selection\n * @param nextItemValue\n * @param item\n * @param event\n * @param checked\n */\n var handleCheckTag = function handleCheckTag(nextItemValue, item, event, checked) {\n var val = cloneValue();\n if (checked) {\n val.push(nextItemValue);\n } else {\n (0, _remove.default)(val, function (itemVal) {\n return (0, _shallowEqual.default)(itemVal, nextItemValue);\n });\n }\n setValue(val);\n resetSearch();\n setFocusItemValue(nextItemValue);\n handleSelect(val, item, event);\n handleChange(val, event);\n focusInput();\n };\n var handleTagKeyPress = (0, _react.useCallback)(function (event) {\n // When composing, ignore the keypress event.\n if (event.nativeEvent.isComposing) {\n return;\n }\n var val = cloneValue();\n var data = getAllData();\n if (!focusItemValue || !data) {\n return;\n }\n\n // If the value is disabled in this option, it is returned.\n if (disabledItemValues !== null && disabledItemValues !== void 0 && disabledItemValues.some(function (item) {\n return item === focusItemValue;\n })) {\n return;\n }\n if (!val.some(function (v) {\n return (0, _shallowEqual.default)(v, focusItemValue);\n })) {\n val.push(focusItemValue);\n } else if (!disabledOptions) {\n (0, _remove.default)(val, function (itemVal) {\n return (0, _shallowEqual.default)(itemVal, focusItemValue);\n });\n }\n var focusItem = data.find(function (item) {\n return (0, _shallowEqual.default)(item === null || item === void 0 ? void 0 : item[valueKey], focusItemValue);\n });\n if (!focusItem) {\n focusItem = createOption(focusItemValue);\n }\n setValue(val);\n resetSearch();\n handleSelect(val, focusItem, event);\n handleChange(val, event);\n }, [cloneValue, getAllData, focusItemValue, disabledItemValues, disabledOptions, setValue, resetSearch, handleSelect, handleChange, valueKey, createOption]);\n var handleMenuItemKeyPress = (0, _react.useCallback)(function (event) {\n if (!focusItemValue || !controlledData) {\n return;\n }\n\n // If the value is disabled in this option, it is returned.\n if (disabledItemValues !== null && disabledItemValues !== void 0 && disabledItemValues.some(function (item) {\n return item === focusItemValue;\n })) {\n return;\n }\n\n // Find active `MenuItem` by `value`\n var allData = getAllData();\n var focusItem = allData.find(function (item) {\n return (0, _shallowEqual.default)(item[valueKey], focusItemValue);\n });\n\n // FIXME Bad state flow\n if (!focusItem && focusItemValue === searchKeyword) {\n focusItem = createOption(searchKeyword);\n }\n setValue(focusItemValue);\n resetSearch();\n if (focusItem) {\n handleSelect(focusItemValue, focusItem, event);\n }\n handleChange(focusItemValue, event);\n handleClose();\n }, [setValue, disabledItemValues, controlledData, focusItemValue, valueKey, searchKeyword, handleClose, resetSearch, createOption, getAllData, handleChange, handleSelect]);\n (0, _Picker.usePublicMethods)(ref, {\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef,\n listRef: listRef\n });\n\n /**\n * Remove the last item, after pressing the back key on the keyboard.\n * @param event\n */\n var removeLastItem = (0, _react.useCallback)(function (event) {\n var target = event === null || event === void 0 ? void 0 : event.target;\n if ((target === null || target === void 0 ? void 0 : target.tagName) !== 'INPUT') {\n focusInput();\n return;\n }\n if ((target === null || target === void 0 ? void 0 : target.tagName) === 'INPUT' && target !== null && target !== void 0 && target.value) {\n return;\n }\n var val = cloneValue();\n val.pop();\n setValue(val);\n handleChange(val, event);\n }, [setValue, focusInput, handleChange, cloneValue]);\n var handleClean = (0, _react.useCallback)(function (event) {\n if (disabled || searchKeyword !== '') {\n return;\n }\n setValue(null);\n setFocusItemValue(null);\n resetSearch();\n if (multi) {\n handleChange([], event);\n } else {\n handleChange(null, event);\n }\n onClean === null || onClean === void 0 ? void 0 : onClean(event);\n }, [disabled, searchKeyword, setValue, setFocusItemValue, resetSearch, multi, onClean, handleChange]);\n var events = {\n onMenuPressBackspace: multi ? removeLastItem : handleClean,\n onMenuKeyDown: onKeyDown,\n onMenuPressEnter: undefined,\n onKeyDown: undefined\n };\n var handleKeyPress = (0, _react.useCallback)(function (event) {\n // When typing a space, create a tag.\n if ((0, _utils.isOneOf)('Space', trigger) && event.key === _utils.KEY_VALUES.SPACE) {\n handleTagKeyPress(event);\n event.preventDefault();\n }\n\n // When typing a comma, create a tag.\n if ((0, _utils.isOneOf)('Comma', trigger) && event.key === _utils.KEY_VALUES.COMMA) {\n handleTagKeyPress(event);\n event.preventDefault();\n }\n }, [handleTagKeyPress, trigger]);\n if (multi) {\n if ((0, _utils.isOneOf)('Enter', trigger)) {\n events.onMenuPressEnter = handleTagKeyPress;\n }\n if (creatable) {\n events.onKeyDown = handleKeyPress;\n }\n } else {\n events.onMenuPressEnter = handleMenuItemKeyPress;\n }\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({\n triggerRef: triggerRef,\n targetRef: targetRef,\n overlayRef: overlayRef\n }, events, rest));\n var handleExited = (0, _react.useCallback)(function () {\n setFocusItemValue(multi ? value === null || value === void 0 ? void 0 : value[0] : value);\n resetSearch();\n onClose === null || onClose === void 0 ? void 0 : onClose();\n }, [setFocusItemValue, resetSearch, onClose, value, multi]);\n var handleFocus = (0, _react.useCallback)(function () {\n if (!readOnly) {\n var _triggerRef$current4;\n setOpen(true);\n (_triggerRef$current4 = triggerRef.current) === null || _triggerRef$current4 === void 0 ? void 0 : _triggerRef$current4.open();\n }\n }, [readOnly]);\n var handleEnter = (0, _react.useCallback)(function () {\n focusInput();\n setOpen(true);\n }, [focusInput]);\n var handleExit = (0, _react.useCallback)(function () {\n blurInput();\n setOpen(false);\n }, [blurInput]);\n var renderDropdownMenuItem = function renderDropdownMenuItem(label, item) {\n // 'Create option \"{0}\"' => Create option \"xxxxx\"\n var newLabel = item.create ? /*#__PURE__*/_react.default.createElement(\"span\", {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 597,\n columnNumber: 9\n }\n }, (0, _utils.tplTransform)(locale.createOption, label)) : label;\n return renderMenuItem ? renderMenuItem(newLabel, item) : newLabel;\n };\n var checkValue = function checkValue() {\n if (multi) {\n return {\n isValid: false,\n itemNode: null\n };\n }\n var dataItem = getDateItem(value);\n var itemNode = dataItem.itemNode;\n if (!(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue)) {\n itemNode = renderValue(value, dataItem.activeItem, itemNode);\n }\n return {\n isValid: dataItem.isValid,\n itemNode: itemNode\n };\n };\n var renderMultiValue = function renderMultiValue() {\n if (!multi) {\n return null;\n }\n var _tagProps$closable = tagProps.closable,\n closable = _tagProps$closable === void 0 ? true : _tagProps$closable,\n onClose = tagProps.onClose,\n tagRest = (0, _objectWithoutPropertiesLoose2.default)(tagProps, [\"closable\", \"onClose\"]);\n var tags = value || [];\n var items = [];\n var tagElements = tags.map(function (tag) {\n var _getDateItem = getDateItem(tag),\n isValid = _getDateItem.isValid,\n itemNode = _getDateItem.itemNode,\n activeItem = _getDateItem.activeItem;\n items.push(activeItem);\n if (!isValid) {\n return null;\n }\n return /*#__PURE__*/_react.default.createElement(_Tag.default, (0, _extends2.default)({}, tagRest, {\n key: tag,\n size: rest.size === 'lg' ? 'lg' : rest.size === 'xs' ? 'sm' : 'md',\n closable: !disabled && closable && !readOnly && !plaintext,\n title: typeof itemNode === 'string' ? itemNode : undefined,\n onClose: (0, _utils.createChainedFunction)(handleRemoveItemByTag.bind(null, tag), onClose),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 642,\n columnNumber: 13\n }\n }), itemNode);\n }).filter(function (item) {\n return item !== null;\n });\n if ((tags.length > 0 || isControlled) && (0, _isFunction.default)(renderValue)) {\n return renderValue(value, items, tagElements);\n }\n return tagElements;\n };\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var menuClassPrefix = multi ? 'picker-check-menu' : 'picker-select-menu';\n var classes = merge(className, menuClassName, prefix(multi ? 'check-menu' : 'select-menu'));\n var styles = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var items = (0, _treeUtils.filterNodesOfTree)(getAllData(), checkShouldDisplay);\n if (creatable && (typeof shouldDisplayCreateOption === 'function' ? shouldDisplayCreateOption(searchKeyword, items) : searchKeyword && !items.find(function (item) {\n return item[valueKey] === searchKeyword;\n }))) {\n items = [].concat(items, [createOption(searchKeyword)]);\n }\n\n // Create a tree structure data when set `groupBy`\n if (groupBy) {\n items = (0, _getDataGroupBy.getDataGroupBy)(items, groupBy, sort);\n } else if (typeof sort === 'function') {\n items = items.sort(sort(false));\n }\n if (disabledOptions) {\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n ref: (0, _utils.mergeRefs)(overlayRef, speakerRef),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 688,\n columnNumber: 16\n }\n });\n }\n var menu = items.length ? /*#__PURE__*/_react.default.createElement(_Picker.DropdownMenu, {\n id: id ? id + \"-listbox\" : undefined,\n listProps: listProps,\n listRef: listRef,\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n labelKey: labelKey,\n classPrefix: menuClassPrefix,\n dropdownMenuItemClassPrefix: multi ? undefined : menuClassPrefix + \"-item\",\n dropdownMenuItemAs: multi ? _Picker.DropdownMenuCheckItem : _Picker.DropdownMenuItem,\n dropdownMenuItemProps: {\n renderMenuItemCheckbox: renderMenuItemCheckbox\n },\n activeItemValues: multi ? value : [value],\n focusItemValue: focusItemValue,\n maxHeight: menuMaxHeight,\n data: items\n // FIXME-Doma\n // `group` is redundant so long as `groupBy` exists\n ,\n group: !(0, _isUndefined.default)(groupBy),\n groupBy: groupBy,\n onSelect: multi ? handleCheckTag : handleSelectItem // fixme don't use any\n ,\n renderMenuGroup: renderMenuGroup,\n renderMenuItem: renderDropdownMenuItem,\n virtualized: virtualized,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 692,\n columnNumber: 9\n }\n }) : /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"none\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 717,\n columnNumber: 9\n }\n }, locale === null || locale === void 0 ? void 0 : locale.noResultsText);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n ref: (0, _utils.mergeRefs)(overlayRef, speakerRef),\n autoWidth: menuAutoWidth,\n className: classes,\n style: styles,\n target: triggerRef,\n onKeyDown: onPickerKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 721,\n columnNumber: 9\n }\n }, renderMenu ? renderMenu(menu) : menu, renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n var _checkValue = checkValue(),\n isValid = _checkValue.isValid,\n itemNode = _checkValue.itemNode;\n var tagElements = renderMultiValue();\n\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 * 3.If renderValue returns null or undefined, hasValue is false.\n */\n var hasSingleValue = !(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue) && !(0, _isNil.default)(itemNode);\n var hasMultiValue = (0, _isArray.default)(value) && value.length > 0 && (0, _isFunction.default)(renderValue) && !(0, _isNil.default)(tagElements);\n var hasValue = multi ? !!(tagElements !== null && tagElements !== void 0 && tagElements.length) || hasMultiValue : isValid || hasSingleValue;\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n appearance: appearance,\n hasValue: hasValue,\n name: 'input',\n cleanable: cleanable\n })),\n pickerClasses = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n var classes = merge(pickerClasses, (_merge = {}, _merge[prefix(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)([\"tag\"])))] = multi, _merge[prefix(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteralLoose2.default)([\"focused\"])))] = open, _merge[prefix(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteralLoose2.default)([\"disabled-options\"])))] = disabledOptions, _merge));\n var searching = !!searchKeyword && open;\n var displaySearchInput = searchable && !disabled && !rest.loading;\n var inputProps = multi ? {\n inputStyle: {\n maxWidth: maxWidth - 63\n },\n as: _InputAutosize.default\n } : {\n as: 'input'\n };\n if (plaintext) {\n var plaintextProps = {};\n\n // TagPicker has -6px margin-left on the plaintext wrapper\n // for fixing margin-left on tags from 2nd line on\n if (multi && hasValue) {\n plaintextProps.style = {\n marginLeft: -6\n };\n }\n return /*#__PURE__*/_react.default.createElement(_Plaintext.default, (0, _extends2.default)({\n localeKey: \"notSelected\",\n ref: targetRef\n }, plaintextProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 781,\n columnNumber: 9\n }\n }), itemNode || (tagElements !== null && tagElements !== void 0 && tagElements.length ? tagElements : null) || placeholder);\n }\n var placeholderNode = placeholder || (disabledOptions ? null : locale === null || locale === void 0 ? void 0 : locale.placeholder);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n trigger: \"active\",\n onEnter: (0, _utils.createChainedFunction)(handleEnter, onEnter),\n onEntered: (0, _utils.createChainedFunction)(onEntered, onOpen),\n onExit: (0, _utils.createChainedFunction)(handleExit, onExit),\n onExited: (0, _utils.createChainedFunction)(handleExited, onExited),\n speaker: renderDropdownMenu,\n placement: placement,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 790,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n onClick: focusInput,\n onKeyDown: onPickerKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 801,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n id: id,\n appearance: appearance,\n readOnly: readOnly,\n plaintext: plaintext,\n ref: targetRef,\n as: toggleAs,\n tabIndex: tabIndex,\n onClean: handleClean,\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n active: open,\n disabled: disabled,\n placement: placement,\n inputValue: value,\n caret: !disabledOptions,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 807,\n columnNumber: 11\n }\n }), searching || multi && hasValue ? null : itemNode || placeholderNode), !(!multi && disabled) && /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteralLoose2.default)([\"tag-wrapper\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 829,\n columnNumber: 13\n }\n }, tagElements, displaySearchInput && /*#__PURE__*/_react.default.createElement(_InputSearch.default, (0, _extends2.default)({}, inputProps, {\n tabIndex: -1,\n readOnly: readOnly,\n onBlur: onBlur,\n onFocus: (0, _utils.createChainedFunction)(handleFocus, onFocus),\n inputRef: inputRef,\n onChange: handleSearch,\n value: open ? searchKeyword : '',\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 832,\n columnNumber: 17\n }\n })))));\n});\nInputPicker.displayName = 'InputPicker';\nInputPicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes, {\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n cacheData: _propTypes.default.array,\n menuAutoWidth: _propTypes.default.bool,\n menuMaxHeight: _propTypes.default.number,\n searchable: _propTypes.default.bool,\n creatable: _propTypes.default.bool,\n groupBy: _propTypes.default.any,\n sort: _propTypes.default.func,\n renderMenu: _propTypes.default.func,\n renderMenuItem: _propTypes.default.func,\n renderMenuGroup: _propTypes.default.func,\n onCreate: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onGroupTitleClick: _propTypes.default.func,\n onSearch: _propTypes.default.func,\n virtualized: _propTypes.default.bool,\n searchBy: _propTypes.default.func\n});\nvar _default = InputPicker;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/InputPicker/InputPicker.tsx?");
7564
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _remove = _interopRequireDefault(__webpack_require__(/*! lodash/remove */ \"./node_modules/lodash/remove.js\"));\nvar _clone = _interopRequireDefault(__webpack_require__(/*! lodash/clone */ \"./node_modules/lodash/clone.js\"));\nvar _isArray = _interopRequireDefault(__webpack_require__(/*! lodash/isArray */ \"./node_modules/lodash/isArray.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _getWidth = _interopRequireDefault(__webpack_require__(/*! dom-lib/getWidth */ \"./node_modules/dom-lib/esm/getWidth.js\"));\nvar _shallowEqual = _interopRequireDefault(__webpack_require__(/*! ../utils/shallowEqual */ \"./src/utils/shallowEqual.ts\"));\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _Plaintext = _interopRequireDefault(__webpack_require__(/*! ../Plaintext */ \"./src/Plaintext/index.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _getDataGroupBy = __webpack_require__(/*! ../utils/getDataGroupBy */ \"./src/utils/getDataGroupBy.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _Tag = _interopRequireDefault(__webpack_require__(/*! ../Tag */ \"./src/Tag/index.tsx\"));\nvar _InputAutosize = _interopRequireDefault(__webpack_require__(/*! ./InputAutosize */ \"./src/InputPicker/InputAutosize.tsx\"));\nvar _TextBox = _interopRequireDefault(__webpack_require__(/*! ./TextBox */ \"./src/InputPicker/TextBox.tsx\"));\nvar _InputPickerContext = _interopRequireDefault(__webpack_require__(/*! ./InputPickerContext */ \"./src/InputPicker/InputPickerContext.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/InputPicker/InputPicker.tsx\",\n _this = void 0,\n _templateObject,\n _templateObject2,\n _templateObject3,\n _templateObject4;\nvar convertSize = function convertSize(size) {\n switch (size) {\n case 'lg':\n return 'lg';\n case 'sm':\n case 'xs':\n return 'sm';\n default:\n return 'md';\n }\n};\n/**\n * Single item selector with text box input.\n *\n * @see https://rsuitejs.com/components/input-picker\n */\nvar InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _merge;\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$cacheData = props.cacheData,\n cacheData = _props$cacheData === void 0 ? [] : _props$cacheData,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n _props$data = props.data,\n controlledData = _props$data === void 0 ? [] : _props$data,\n disabled = props.disabled,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n defaultValue = props.defaultValue,\n _props$defaultOpen = props.defaultOpen,\n defaultOpen = _props$defaultOpen === void 0 ? false : _props$defaultOpen,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? [] : _props$disabledItemVa,\n overrideLocale = props.locale,\n toggleAs = props.toggleAs,\n style = props.style,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n controlledOpen = props.open,\n placeholder = props.placeholder,\n groupBy = props.groupBy,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n _props$menuAutoWidth = props.menuAutoWidth,\n menuAutoWidth = _props$menuAutoWidth === void 0 ? true : _props$menuAutoWidth,\n _props$menuMaxHeight = props.menuMaxHeight,\n menuMaxHeight = _props$menuMaxHeight === void 0 ? 320 : _props$menuMaxHeight,\n creatable = props.creatable,\n shouldDisplayCreateOption = props.shouldDisplayCreateOption,\n valueProp = props.value,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n virtualized = props.virtualized,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n listProps = props.listProps,\n id = props.id,\n tabIndex = props.tabIndex,\n sort = props.sort,\n renderMenu = props.renderMenu,\n renderExtraFooter = props.renderExtraFooter,\n renderValue = props.renderValue,\n renderMenuItem = props.renderMenuItem,\n renderMenuGroup = props.renderMenuGroup,\n onEnter = props.onEnter,\n onEntered = props.onEntered,\n onExit = props.onExit,\n onExited = props.onExited,\n onChange = props.onChange,\n onClean = props.onClean,\n onCreate = props.onCreate,\n onSearch = props.onSearch,\n onSelect = props.onSelect,\n onOpen = props.onOpen,\n onClose = props.onClose,\n onBlur = props.onBlur,\n onFocus = props.onFocus,\n searchBy = props.searchBy,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"appearance\", \"cleanable\", \"cacheData\", \"classPrefix\", \"data\", \"disabled\", \"readOnly\", \"plaintext\", \"defaultValue\", \"defaultOpen\", \"disabledItemValues\", \"locale\", \"toggleAs\", \"style\", \"searchable\", \"open\", \"placeholder\", \"groupBy\", \"menuClassName\", \"menuStyle\", \"menuAutoWidth\", \"menuMaxHeight\", \"creatable\", \"shouldDisplayCreateOption\", \"value\", \"valueKey\", \"virtualized\", \"labelKey\", \"listProps\", \"id\", \"tabIndex\", \"sort\", \"renderMenu\", \"renderExtraFooter\", \"renderValue\", \"renderMenuItem\", \"renderMenuGroup\", \"onEnter\", \"onEntered\", \"onExit\", \"onExited\", \"onChange\", \"onClean\", \"onCreate\", \"onSearch\", \"onSelect\", \"onOpen\", \"onClose\", \"onBlur\", \"onFocus\", \"searchBy\", \"placement\"]);\n var _useContext = (0, _react.useContext)(_InputPickerContext.default),\n multi = _useContext.multi,\n tagProps = _useContext.tagProps,\n trigger = _useContext.trigger,\n disabledOptions = _useContext.disabledOptions,\n onTagRemove = _useContext.onTagRemove,\n renderMenuItemCheckbox = _useContext.renderMenuItemCheckbox;\n if (groupBy === valueKey || groupBy === labelKey) {\n throw Error('`groupBy` can not be equal to `valueKey` and `labelKey`');\n }\n var inputRef = (0, _react.useRef)();\n var _usePickerRef = (0, _Picker.usePickerRef)(ref),\n triggerRef = _usePickerRef.trigger,\n root = _usePickerRef.root,\n target = _usePickerRef.target,\n overlay = _usePickerRef.overlay,\n list = _usePickerRef.list;\n var _useCustom = (0, _utils.useCustom)(['Picker', 'InputPicker'], overrideLocale),\n locale = _useCustom.locale;\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var _useState = (0, _react.useState)(controlledData),\n uncontrolledData = _useState[0],\n setData = _useState[1];\n var _useState2 = (0, _react.useState)(100),\n maxWidth = _useState2[0],\n setMaxWidth = _useState2[1];\n var _useState3 = (0, _react.useState)([]),\n newData = _useState3[0],\n setNewData = _useState3[1];\n var _useState4 = (0, _react.useState)(defaultOpen),\n uncontrolledOpen = _useState4[0],\n setOpen = _useState4[1];\n var open = (0, _isUndefined.default)(controlledOpen) ? uncontrolledOpen : controlledOpen;\n var getAllData = (0, _react.useCallback)(function () {\n return [].concat(uncontrolledData, newData);\n }, [uncontrolledData, newData]);\n var getAllDataAndCache = (0, _react.useCallback)(function () {\n return [].concat(getAllData(), cacheData);\n }, [getAllData, cacheData]);\n var _useControlled = (0, _utils.useControlled)(valueProp, multi ? defaultValue || [] : defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1],\n isControlled = _useControlled[2];\n var cloneValue = function cloneValue() {\n return multi ? (0, _clone.default)(value) || [] : value;\n };\n var handleClose = (0, _utils.useEventCallback)(function () {\n var _triggerRef$current, _target$current, _target$current$focus;\n triggerRef === null || triggerRef === void 0 ? void 0 : (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.close();\n\n // The focus is on the trigger button after closing\n (_target$current = target.current) === null || _target$current === void 0 ? void 0 : (_target$current$focus = _target$current.focus) === null || _target$current$focus === void 0 ? void 0 : _target$current$focus.call(_target$current);\n });\n\n // Used to hover the focuse item when trigger `onKeydown`\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(multi ? value === null || value === void 0 ? void 0 : value[0] : value, {\n data: getAllDataAndCache(),\n valueKey: valueKey,\n target: function target() {\n return overlay.current;\n }\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setFocusItemValue = _useFocusItemValue.setFocusItemValue,\n onKeyDown = _useFocusItemValue.onKeyDown;\n var handleSearchCallback = (0, _utils.useEventCallback)(function (searchKeyword, filteredData, event) {\n var _filteredData$;\n // The first option after filtering is the focus.\n setFocusItemValue(disabledOptions ? searchKeyword : (filteredData === null || filteredData === void 0 ? void 0 : (_filteredData$ = filteredData[0]) === null || _filteredData$ === void 0 ? void 0 : _filteredData$[valueKey]) || searchKeyword);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);\n });\n\n // Use search keywords to filter options.\n var _useSearch = (0, _Picker.useSearch)(getAllData(), {\n labelKey: labelKey,\n searchBy: searchBy,\n callback: handleSearchCallback\n }),\n searchKeyword = _useSearch.searchKeyword,\n resetSearch = _useSearch.resetSearch,\n checkShouldDisplay = _useSearch.checkShouldDisplay,\n handleSearch = _useSearch.handleSearch; // Update the state when the data in props changes\n (0, _react.useEffect)(function () {\n if (controlledData && !(0, _shallowEqual.default)(controlledData, uncontrolledData)) {\n var _controlledData$;\n setData(controlledData);\n setNewData([]);\n setFocusItemValue(controlledData === null || controlledData === void 0 ? void 0 : (_controlledData$ = controlledData[0]) === null || _controlledData$ === void 0 ? void 0 : _controlledData$[valueKey]);\n }\n }, [setFocusItemValue, controlledData, uncontrolledData, valueKey]);\n (0, _react.useEffect)(function () {\n var _triggerRef$current2;\n // In multiple selection, you need to set a maximum width for the input.\n if ((_triggerRef$current2 = triggerRef.current) !== null && _triggerRef$current2 !== void 0 && _triggerRef$current2.root) {\n setMaxWidth((0, _getWidth.default)(triggerRef.current.root));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n // Update the position of the menu when the search keyword and value change\n (0, _react.useEffect)(function () {\n var _triggerRef$current3, _triggerRef$current3$;\n (_triggerRef$current3 = triggerRef.current) === null || _triggerRef$current3 === void 0 ? void 0 : (_triggerRef$current3$ = _triggerRef$current3.updatePosition) === null || _triggerRef$current3$ === void 0 ? void 0 : _triggerRef$current3$.call(_triggerRef$current3);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [searchKeyword, value]);\n var getDataItem = function getDataItem(value) {\n // Find active `MenuItem` by `value`\n var allData = getAllDataAndCache();\n var activeItem = allData.find(function (item) {\n return (0, _shallowEqual.default)(item[valueKey], value);\n });\n var itemNode = placeholder;\n if (activeItem !== null && activeItem !== void 0 && activeItem[labelKey]) {\n itemNode = activeItem === null || activeItem === void 0 ? void 0 : activeItem[labelKey];\n }\n return {\n isValid: !!activeItem,\n activeItem: activeItem,\n itemNode: itemNode\n };\n };\n var getInput = function getInput() {\n var _inputRef$current;\n return multi ? (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.input : inputRef.current;\n };\n var focusInput = function focusInput() {\n var _getInput;\n return (_getInput = getInput()) === null || _getInput === void 0 ? void 0 : _getInput.focus();\n };\n var blurInput = function blurInput() {\n var _getInput2;\n return (_getInput2 = getInput()) === null || _getInput2 === void 0 ? void 0 : _getInput2.blur();\n };\n\n /**\n * Convert the string of the newly created option into an object.\n */\n var createOption = function createOption(value) {\n var _ref2;\n if (groupBy) {\n var _ref;\n return _ref = {\n create: true\n }, _ref[groupBy] = locale === null || locale === void 0 ? void 0 : locale.newItem, _ref[valueKey] = value, _ref[labelKey] = value, _ref;\n }\n return _ref2 = {\n create: true\n }, _ref2[valueKey] = value, _ref2[labelKey] = value, _ref2;\n };\n var handleChange = (0, _utils.useEventCallback)(function (value, event) {\n onChange === null || onChange === void 0 ? void 0 : onChange(value, event);\n });\n var handleRemoveItemByTag = (0, _utils.useEventCallback)(function (tag, event) {\n event.stopPropagation();\n var val = cloneValue();\n (0, _remove.default)(val, function (itemVal) {\n return (0, _shallowEqual.default)(itemVal, tag);\n });\n setValue(val);\n handleChange(val, event);\n onTagRemove === null || onTagRemove === void 0 ? void 0 : onTagRemove(tag, event);\n });\n var handleSelect = (0, _utils.useEventCallback)(function (value, item, event) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, item, event);\n if (creatable && item.create) {\n delete item.create;\n onCreate === null || onCreate === void 0 ? void 0 : onCreate(value, item, event);\n setNewData(newData.concat(item));\n }\n });\n\n /**\n * Callback triggered by single selection\n * @param value\n * @param item\n * @param event\n */\n var handleSelectItem = (0, _utils.useEventCallback)(function (value, item, event) {\n setValue(value);\n setFocusItemValue(value);\n resetSearch();\n handleSelect(value, item, event);\n handleChange(value, event);\n handleClose();\n });\n\n /**\n * Callback triggered by multiple selection\n * @param nextItemValue\n * @param item\n * @param event\n * @param checked\n */\n var handleCheckTag = (0, _utils.useEventCallback)(function (nextItemValue, item, event, checked) {\n var val = cloneValue();\n if (checked) {\n val.push(nextItemValue);\n } else {\n (0, _remove.default)(val, function (itemVal) {\n return (0, _shallowEqual.default)(itemVal, nextItemValue);\n });\n }\n setValue(val);\n resetSearch();\n setFocusItemValue(nextItemValue);\n handleSelect(val, item, event);\n handleChange(val, event);\n focusInput();\n });\n var handleTagKeyPress = (0, _utils.useEventCallback)(function (event) {\n // When composing, ignore the keypress event.\n if (event.nativeEvent.isComposing) {\n return;\n }\n var val = cloneValue();\n var data = getAllData();\n if (!focusItemValue || !data) {\n return;\n }\n\n // If the value is disabled in this option, it is returned.\n if (disabledItemValues !== null && disabledItemValues !== void 0 && disabledItemValues.some(function (item) {\n return item === focusItemValue;\n })) {\n return;\n }\n if (!val.some(function (v) {\n return (0, _shallowEqual.default)(v, focusItemValue);\n })) {\n val.push(focusItemValue);\n } else if (!disabledOptions) {\n (0, _remove.default)(val, function (itemVal) {\n return (0, _shallowEqual.default)(itemVal, focusItemValue);\n });\n }\n var focusItem = data.find(function (item) {\n return (0, _shallowEqual.default)(item === null || item === void 0 ? void 0 : item[valueKey], focusItemValue);\n });\n if (!focusItem) {\n focusItem = createOption(focusItemValue);\n }\n setValue(val);\n resetSearch();\n handleSelect(val, focusItem, event);\n handleChange(val, event);\n });\n var handleMenuItemKeyPress = (0, _utils.useEventCallback)(function (event) {\n if (!focusItemValue || !controlledData) {\n return;\n }\n\n // If the value is disabled in this option, it is returned.\n if (disabledItemValues !== null && disabledItemValues !== void 0 && disabledItemValues.some(function (item) {\n return item === focusItemValue;\n })) {\n return;\n }\n\n // Find active `MenuItem` by `value`\n var allData = getAllData();\n var focusItem = allData.find(function (item) {\n return (0, _shallowEqual.default)(item[valueKey], focusItemValue);\n });\n\n // FIXME Bad state flow\n if (!focusItem && focusItemValue === searchKeyword) {\n focusItem = createOption(searchKeyword);\n }\n setValue(focusItemValue);\n resetSearch();\n if (focusItem) {\n handleSelect(focusItemValue, focusItem, event);\n }\n handleChange(focusItemValue, event);\n handleClose();\n });\n\n /**\n * Remove the last item, after pressing the back key on the keyboard.\n * @param event\n */\n var removeLastItem = (0, _utils.useEventCallback)(function (event) {\n var target = event === null || event === void 0 ? void 0 : event.target;\n if ((target === null || target === void 0 ? void 0 : target.tagName) !== 'INPUT') {\n focusInput();\n return;\n }\n if ((target === null || target === void 0 ? void 0 : target.tagName) === 'INPUT' && target !== null && target !== void 0 && target.value) {\n return;\n }\n var val = cloneValue();\n val.pop();\n setValue(val);\n handleChange(val, event);\n });\n var handleClean = (0, _utils.useEventCallback)(function (event) {\n if (disabled || searchKeyword !== '') {\n return;\n }\n setValue(null);\n setFocusItemValue(null);\n resetSearch();\n if (multi) {\n handleChange([], event);\n } else {\n handleChange(null, event);\n }\n onClean === null || onClean === void 0 ? void 0 : onClean(event);\n });\n var events = {\n onMenuPressBackspace: multi ? removeLastItem : handleClean,\n onMenuKeyDown: onKeyDown,\n onMenuPressEnter: undefined,\n onKeyDown: undefined\n };\n var handleKeyPress = (0, _utils.useEventCallback)(function (event) {\n // When typing a space, create a tag.\n if ((0, _utils.isOneOf)('Space', trigger) && event.key === _utils.KEY_VALUES.SPACE) {\n handleTagKeyPress(event);\n event.preventDefault();\n }\n\n // When typing a comma, create a tag.\n if ((0, _utils.isOneOf)('Comma', trigger) && event.key === _utils.KEY_VALUES.COMMA) {\n handleTagKeyPress(event);\n event.preventDefault();\n }\n });\n if (multi) {\n if ((0, _utils.isOneOf)('Enter', trigger)) {\n events.onMenuPressEnter = handleTagKeyPress;\n }\n if (creatable) {\n events.onKeyDown = handleKeyPress;\n }\n } else {\n events.onMenuPressEnter = handleMenuItemKeyPress;\n }\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({\n trigger: triggerRef,\n target: target,\n overlay: overlay\n }, events, rest));\n var handleExited = (0, _utils.useEventCallback)(function () {\n setFocusItemValue(multi ? value === null || value === void 0 ? void 0 : value[0] : value);\n resetSearch();\n onClose === null || onClose === void 0 ? void 0 : onClose();\n });\n var handleFocus = (0, _utils.useEventCallback)(function () {\n if (!readOnly) {\n var _triggerRef$current4;\n setOpen(true);\n (_triggerRef$current4 = triggerRef.current) === null || _triggerRef$current4 === void 0 ? void 0 : _triggerRef$current4.open();\n }\n });\n var handleEnter = (0, _utils.useEventCallback)(function () {\n focusInput();\n setOpen(true);\n });\n var handleExit = (0, _utils.useEventCallback)(function () {\n blurInput();\n setOpen(false);\n });\n var renderListItem = function renderListItem(label, item) {\n // 'Create option \"{0}\"' => Create option \"xxxxx\"\n var newLabel = item.create ? /*#__PURE__*/_react.default.createElement(\"span\", {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 548,\n columnNumber: 9\n }\n }, (0, _utils.tplTransform)(locale.createOption, label)) : label;\n return renderMenuItem ? renderMenuItem(newLabel, item) : newLabel;\n };\n var checkValue = function checkValue() {\n if (multi) {\n return {\n isValid: false,\n itemNode: null\n };\n }\n var dataItem = getDataItem(value);\n var itemNode = dataItem.itemNode;\n if (!(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue)) {\n itemNode = renderValue(value, dataItem.activeItem, itemNode);\n }\n return {\n isValid: dataItem.isValid,\n itemNode: itemNode\n };\n };\n var renderMultiValue = function renderMultiValue() {\n if (!multi) {\n return null;\n }\n var _tagProps$closable = tagProps.closable,\n closable = _tagProps$closable === void 0 ? true : _tagProps$closable,\n onClose = tagProps.onClose,\n tagRest = (0, _objectWithoutPropertiesLoose2.default)(tagProps, [\"closable\", \"onClose\"]);\n var tags = value || [];\n var items = [];\n var tagElements = tags.map(function (tag) {\n var _getDataItem = getDataItem(tag),\n isValid = _getDataItem.isValid,\n itemNode = _getDataItem.itemNode,\n activeItem = _getDataItem.activeItem;\n items.push(activeItem);\n if (!isValid) {\n return null;\n }\n return /*#__PURE__*/_react.default.createElement(_Tag.default, (0, _extends2.default)({\n role: \"option\"\n }, tagRest, {\n key: tag,\n size: convertSize(rest.size),\n closable: !disabled && closable && !readOnly && !plaintext,\n title: typeof itemNode === 'string' ? itemNode : undefined,\n onClose: (0, _utils.createChainedFunction)(handleRemoveItemByTag.bind(null, tag), onClose),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 593,\n columnNumber: 13\n }\n }), itemNode);\n }).filter(function (item) {\n return item !== null;\n });\n if ((tags.length > 0 || isControlled) && (0, _isFunction.default)(renderValue)) {\n return renderValue(value, items, tagElements);\n }\n return tagElements;\n };\n var renderPopup = function renderPopup(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var menuClassPrefix = multi ? 'picker-check-menu' : 'picker-select-menu';\n var classes = merge(className, menuClassName, prefix(multi ? 'check-menu' : 'select-menu'));\n var styles = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var items = (0, _treeUtils.filterNodesOfTree)(getAllData(), checkShouldDisplay);\n if (creatable && (typeof shouldDisplayCreateOption === 'function' ? shouldDisplayCreateOption(searchKeyword, items) : searchKeyword && !items.find(function (item) {\n return item[valueKey] === searchKeyword;\n }))) {\n items = [].concat(items, [createOption(searchKeyword)]);\n }\n\n // Create a tree structure data when set `groupBy`\n if (groupBy) {\n items = (0, _getDataGroupBy.getDataGroupBy)(items, groupBy, sort);\n } else if (typeof sort === 'function') {\n items = items.sort(sort(false));\n }\n if (disabledOptions) {\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerPopup, {\n ref: (0, _utils.mergeRefs)(overlay, speakerRef),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 640,\n columnNumber: 16\n }\n });\n }\n var menu = items.length ? /*#__PURE__*/_react.default.createElement(_Picker.Listbox, {\n listProps: listProps,\n listRef: list,\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n labelKey: labelKey,\n classPrefix: menuClassPrefix,\n listItemClassPrefix: multi ? undefined : menuClassPrefix + \"-item\",\n listItemAs: multi ? _Picker.ListCheckItem : _Picker.ListItem,\n listItemProps: {\n renderMenuItemCheckbox: renderMenuItemCheckbox\n },\n activeItemValues: multi ? value : [value],\n focusItemValue: focusItemValue,\n maxHeight: menuMaxHeight,\n data: items\n // FIXME-Doma\n // `group` is redundant so long as `groupBy` exists\n ,\n group: !(0, _isUndefined.default)(groupBy),\n groupBy: groupBy,\n onSelect: multi ? handleCheckTag : handleSelectItem // fixme don't use any\n ,\n renderMenuGroup: renderMenuGroup,\n renderMenuItem: renderListItem,\n virtualized: virtualized,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 644,\n columnNumber: 9\n }\n }) : /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"none\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 668,\n columnNumber: 9\n }\n }, locale === null || locale === void 0 ? void 0 : locale.noResultsText);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerPopup, {\n ref: (0, _utils.mergeRefs)(overlay, speakerRef),\n autoWidth: menuAutoWidth,\n className: classes,\n style: styles,\n target: triggerRef,\n onKeyDown: onPickerKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 672,\n columnNumber: 9\n }\n }, renderMenu ? renderMenu(menu) : menu, renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n var _checkValue = checkValue(),\n isValid = _checkValue.isValid,\n itemNode = _checkValue.itemNode;\n var tagElements = renderMultiValue();\n\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 * 3.If renderValue returns null or undefined, hasValue is false.\n */\n var hasSingleValue = !(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue) && !(0, _isNil.default)(itemNode);\n var hasMultiValue = (0, _isArray.default)(value) && value.length > 0 && (0, _isFunction.default)(renderValue) && !(0, _isNil.default)(tagElements);\n var hasValue = multi ? !!(tagElements !== null && tagElements !== void 0 && tagElements.length) || hasMultiValue : isValid || hasSingleValue;\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n appearance: appearance,\n hasValue: hasValue,\n name: 'input',\n cleanable: cleanable\n })),\n pickerClasses = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n var classes = merge(pickerClasses, (_merge = {}, _merge[prefix(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)([\"tag\"])))] = multi, _merge[prefix(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteralLoose2.default)([\"focused\"])))] = open, _merge[prefix(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteralLoose2.default)([\"disabled-options\"])))] = disabledOptions, _merge));\n var searching = !!searchKeyword && open;\n var editable = searchable && !disabled && !rest.loading;\n var inputProps = multi ? {\n inputStyle: {\n maxWidth: maxWidth - 63\n },\n as: _InputAutosize.default\n } : {\n as: 'input'\n };\n if (plaintext) {\n var plaintextProps = {};\n\n // TagPicker has -6px margin-left on the plaintext wrapper\n // for fixing margin-left on tags from 2nd line on\n if (multi && hasValue) {\n plaintextProps.style = {\n marginLeft: -6\n };\n }\n return /*#__PURE__*/_react.default.createElement(_Plaintext.default, (0, _extends2.default)({\n localeKey: \"notSelected\",\n ref: target\n }, plaintextProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 732,\n columnNumber: 9\n }\n }), itemNode || (tagElements !== null && tagElements !== void 0 && tagElements.length ? tagElements : null) || placeholder);\n }\n var placeholderNode = placeholder || (disabledOptions ? null : locale === null || locale === void 0 ? void 0 : locale.placeholder);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n id: id,\n multiple: multi,\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n trigger: \"active\",\n onEnter: (0, _utils.createChainedFunction)(handleEnter, onEnter),\n onEntered: (0, _utils.createChainedFunction)(onEntered, onOpen),\n onExit: (0, _utils.createChainedFunction)(handleExit, onExit),\n onExited: (0, _utils.createChainedFunction)(handleExited, onExited),\n speaker: renderPopup,\n placement: placement,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 741,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n onClick: focusInput,\n onKeyDown: onPickerKeyDown,\n ref: root,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 754,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n appearance: appearance,\n readOnly: readOnly,\n plaintext: plaintext,\n ref: target,\n as: toggleAs,\n tabIndex: tabIndex,\n onClean: handleClean,\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n active: open,\n disabled: disabled,\n placement: placement,\n inputValue: value,\n focusItemValue: focusItemValue,\n caret: !disabledOptions,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 761,\n columnNumber: 11\n }\n }), searching || multi && hasValue ? null : itemNode || placeholderNode), /*#__PURE__*/_react.default.createElement(_TextBox.default, {\n showTagList: hasValue && multi,\n tags: tagElements,\n editable: editable,\n readOnly: readOnly,\n disabled: disabled,\n multiple: multi,\n onBlur: onBlur,\n onFocus: (0, _utils.createChainedFunction)(handleFocus, onFocus),\n inputRef: inputRef,\n onChange: handleSearch,\n inputValue: open ? searchKeyword : '',\n inputProps: inputProps,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 781,\n columnNumber: 11\n }\n })));\n});\nInputPicker.displayName = 'InputPicker';\nInputPicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes, {\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n cacheData: _propTypes.default.array,\n menuAutoWidth: _propTypes.default.bool,\n menuMaxHeight: _propTypes.default.number,\n searchable: _propTypes.default.bool,\n creatable: _propTypes.default.bool,\n groupBy: _propTypes.default.any,\n sort: _propTypes.default.func,\n renderMenu: _propTypes.default.func,\n renderMenuItem: _propTypes.default.func,\n renderMenuGroup: _propTypes.default.func,\n onCreate: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onGroupTitleClick: _propTypes.default.func,\n onSearch: _propTypes.default.func,\n virtualized: _propTypes.default.bool,\n searchBy: _propTypes.default.func\n});\nvar _default = InputPicker;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/InputPicker/InputPicker.tsx?");
7576
7565
 
7577
7566
  /***/ }),
7578
7567
 
@@ -7594,7 +7583,29 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
7594
7583
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
7595
7584
 
7596
7585
  "use strict";
7597
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/InputPicker/InputSearch.tsx\",\n _this = void 0,\n _templateObject;\nvar InputSearch = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'input' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker-search' : _props$classPrefix,\n children = props.children,\n className = props.className,\n value = props.value,\n inputRef = props.inputRef,\n style = props.style,\n readOnly = props.readOnly,\n onChange = props.onChange,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"children\", \"className\", \"value\", \"inputRef\", \"style\", \"readOnly\", \"onChange\"]);\n var handleChange = (0, _react.useCallback)(function (event) {\n var _event$target;\n onChange === null || onChange === void 0 ? void 0 : onChange(event === null || event === void 0 ? void 0 : (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.value, event);\n }, [onChange]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var classes = merge(className, withClassPrefix());\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n ref: ref,\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 42,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n ref: inputRef,\n readOnly: readOnly,\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"input\"]))),\n value: value,\n onChange: handleChange,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 43,\n columnNumber: 7\n }\n })), children);\n});\nInputSearch.displayName = 'InputSearch';\nInputSearch.propTypes = {\n classPrefix: _propTypes.default.string,\n value: _propTypes.default.string,\n className: _propTypes.default.string,\n children: _propTypes.default.node,\n style: _propTypes.default.object,\n inputRef: _utils.TypeChecker.refType,\n as: _propTypes.default.elementType,\n onChange: _propTypes.default.func\n};\nvar _default = InputSearch;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/InputPicker/InputSearch.tsx?");
7586
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/InputPicker/InputSearch.tsx\",\n _this = void 0,\n _templateObject;\nvar InputSearch = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'input' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker-search' : _props$classPrefix,\n children = props.children,\n className = props.className,\n value = props.value,\n inputRef = props.inputRef,\n style = props.style,\n readOnly = props.readOnly,\n onChange = props.onChange,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"children\", \"className\", \"value\", \"inputRef\", \"style\", \"readOnly\", \"onChange\"]);\n var handleChange = (0, _utils.useEventCallback)(function (event) {\n var _event$target;\n onChange === null || onChange === void 0 ? void 0 : onChange(event === null || event === void 0 ? void 0 : (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.value, event);\n });\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var classes = merge(className, withClassPrefix());\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n ref: ref,\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 38,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n ref: inputRef,\n readOnly: readOnly,\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"input\"]))),\n value: value,\n onChange: handleChange,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 39,\n columnNumber: 7\n }\n })), children);\n});\nInputSearch.displayName = 'InputSearch';\nvar _default = InputSearch;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/InputPicker/InputSearch.tsx?");
7587
+
7588
+ /***/ }),
7589
+
7590
+ /***/ "./src/InputPicker/TagList.tsx":
7591
+ /*!*************************************!*\
7592
+ !*** ./src/InputPicker/TagList.tsx ***!
7593
+ \*************************************/
7594
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
7595
+
7596
+ "use strict";
7597
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _useCombobox2 = _interopRequireDefault(__webpack_require__(/*! ../Picker/hooks/useCombobox */ \"./src/Picker/hooks/useCombobox.ts\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/InputPicker/TagList.tsx\",\n _this = void 0,\n _templateObject;\nvar TagList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var children = props.children,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"children\"]);\n var _useClassNames = (0, _utils.useClassNames)('picker'),\n prefix = _useClassNames.prefix;\n var _useCombobox = (0, _useCombobox2.default)(),\n id = _useCombobox.id;\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n ref: ref,\n role: \"listbox\",\n id: id + \"-describe\",\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"tag-list\"])))\n }, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 12,\n columnNumber: 7\n }\n }), children);\n});\nvar _default = TagList;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/InputPicker/TagList.tsx?");
7598
+
7599
+ /***/ }),
7600
+
7601
+ /***/ "./src/InputPicker/TextBox.tsx":
7602
+ /*!*************************************!*\
7603
+ !*** ./src/InputPicker/TextBox.tsx ***!
7604
+ \*************************************/
7605
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
7606
+
7607
+ "use strict";
7608
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _TagList = _interopRequireDefault(__webpack_require__(/*! ./TagList */ \"./src/InputPicker/TagList.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _InputSearch = _interopRequireDefault(__webpack_require__(/*! ./InputSearch */ \"./src/InputPicker/InputSearch.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/InputPicker/TextBox.tsx\",\n _this = void 0,\n _templateObject;\nvar TextBox = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var tags = props.tags,\n inputProps = props.inputProps,\n readOnly = props.readOnly,\n disabled = props.disabled,\n multiple = props.multiple,\n onBlur = props.onBlur,\n onFocus = props.onFocus,\n onChange = props.onChange,\n inputValue = props.inputValue,\n inputRef = props.inputRef,\n editable = props.editable,\n showTagList = props.showTagList,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"tags\", \"inputProps\", \"readOnly\", \"disabled\", \"multiple\", \"onBlur\", \"onFocus\", \"onChange\", \"inputValue\", \"inputRef\", \"editable\", \"showTagList\"]);\n var _useClassNames = (0, _utils.useClassNames)('picker'),\n prefix = _useClassNames.prefix;\n if (!multiple && disabled) {\n return null;\n }\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"textbox\"]))),\n ref: ref\n }, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 45,\n columnNumber: 5\n }\n }), showTagList ? /*#__PURE__*/_react.default.createElement(_TagList.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 46,\n columnNumber: 22\n }\n }, tags) : null, editable && /*#__PURE__*/_react.default.createElement(_InputSearch.default, (0, _extends2.default)({}, inputProps, {\n tabIndex: -1,\n readOnly: readOnly,\n onBlur: onBlur,\n onFocus: onFocus,\n inputRef: inputRef,\n onChange: onChange,\n value: inputValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 48,\n columnNumber: 9\n }\n })));\n});\nvar _default = TextBox;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/InputPicker/TextBox.tsx?");
7598
7609
 
7599
7610
  /***/ }),
7600
7611
 
@@ -7972,25 +7983,25 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
7972
7983
 
7973
7984
  /***/ }),
7974
7985
 
7975
- /***/ "./src/MultiCascader/DropdownMenu.tsx":
7976
- /*!********************************************!*\
7977
- !*** ./src/MultiCascader/DropdownMenu.tsx ***!
7978
- \********************************************/
7986
+ /***/ "./src/MultiCascader/MultiCascader.tsx":
7987
+ /*!*********************************************!*\
7988
+ !*** ./src/MultiCascader/MultiCascader.tsx ***!
7989
+ \*********************************************/
7979
7990
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
7980
7991
 
7981
7992
  "use strict";
7982
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _Spinner = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Spinner */ \"./node_modules/@rsuite/icons/legacy/Spinner.js\"));\nvar _AngleLeft = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleLeft */ \"./node_modules/@rsuite/icons/legacy/AngleLeft.js\"));\nvar _AngleRight = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleRight */ \"./node_modules/@rsuite/icons/legacy/AngleRight.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _utils2 = __webpack_require__(/*! ./utils */ \"./src/MultiCascader/utils.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/MultiCascader/DropdownMenu.tsx\",\n _this = void 0;\nvar emptyArray = [];\n\n/**\n * TODO: reuse Menu from Cascader for consistent behavior\n */\nvar DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'menu' : _props$classPrefix,\n className = props.className,\n cascade = props.cascade,\n _props$cascadeData = props.cascadeData,\n cascadeData = _props$cascadeData === void 0 ? emptyArray : _props$cascadeData,\n _props$cascadePaths = props.cascadePaths,\n cascadePaths = _props$cascadePaths === void 0 ? emptyArray : _props$cascadePaths,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n _props$menuWidth = props.menuWidth,\n menuWidth = _props$menuWidth === void 0 ? 156 : _props$menuWidth,\n _props$menuHeight = props.menuHeight,\n menuHeight = _props$menuHeight === void 0 ? 200 : _props$menuHeight,\n _props$uncheckableIte = props.uncheckableItemValues,\n uncheckableItemValues = _props$uncheckableIte === void 0 ? emptyArray : _props$uncheckableIte,\n value = 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 renderMenuItem = props.renderMenuItem,\n renderMenu = props.renderMenu,\n _onCheck = props.onCheck,\n onSelect = props.onSelect,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"className\", \"cascade\", \"cascadeData\", \"cascadePaths\", \"childrenKey\", \"disabledItemValues\", \"menuWidth\", \"menuHeight\", \"uncheckableItemValues\", \"value\", \"valueKey\", \"labelKey\", \"renderMenuItem\", \"renderMenu\", \"onCheck\", \"onSelect\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var classes = merge(className, prefix('items'));\n var _useCustom = (0, _utils.useCustom)('DropdownMenu'),\n rtl = _useCustom.rtl;\n var getCascadePaths = (0, _react.useCallback)(function (layer, node) {\n var paths = [];\n for (var i = 0; i < cascadeData.length && i < layer; i += 1) {\n if (i < layer - 1 && cascadePaths) {\n paths.push(cascadePaths[i]);\n }\n }\n paths.push(node);\n return paths;\n }, [cascadeData, cascadePaths]);\n var handleSelect = (0, _react.useCallback)(function (layer, node, event) {\n var cascadePaths = getCascadePaths(layer + 1, node);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event);\n }, [getCascadePaths, onSelect]);\n var renderCascadeNode = function renderCascadeNode(node, index, layer, focus, uncheckable) {\n var children = node[childrenKey];\n var nodeValue = node[valueKey];\n var nodeLabel = node[labelKey];\n var disabled = disabledItemValues.some(function (disabledValue) {\n return (0, _utils.shallowEqual)(disabledValue, nodeValue);\n });\n\n // Use `value` in keys when If `value` is string or number\n var onlyKey = typeof value === 'number' || typeof value === 'string' ? value : index;\n var Icon = node.loading ? _Spinner.default : rtl ? _AngleLeft.default : _AngleRight.default;\n var active = value.some(function (v) {\n return v === nodeValue;\n });\n if (cascade) {\n active = active || (0, _utils2.isSomeParentChecked)(node, value, {\n valueKey: valueKey\n });\n }\n return /*#__PURE__*/_react.default.createElement(_Picker.DropdownMenuCheckItem, {\n as: \"li\",\n key: layer + \"-\" + onlyKey,\n disabled: disabled,\n active: active,\n focus: focus\n // Pass the node as a value to Item, and use it in event callbacks.\n ,\n value: nodeValue,\n className: children ? prefix('has-children') : undefined,\n indeterminate: cascade && !active && (0, _utils2.isSomeChildChecked)(node, value, {\n valueKey: valueKey,\n childrenKey: childrenKey\n }),\n onSelectItem: function onSelectItem(_value, event) {\n return handleSelect(layer, node, event);\n },\n onCheck: function onCheck(_value, event, checked) {\n return _onCheck === null || _onCheck === void 0 ? void 0 : _onCheck(node, event, checked);\n },\n checkable: !uncheckable,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 124,\n columnNumber: 9\n }\n }, renderMenuItem ? renderMenuItem(nodeLabel, node) : nodeLabel, children ? /*#__PURE__*/_react.default.createElement(Icon, {\n className: prefix('caret'),\n spin: node.loading,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 141,\n columnNumber: 23\n }\n }) : null);\n };\n var renderCascade = function renderCascade() {\n var styles = {\n width: cascadeData.length * menuWidth\n };\n var columnStyles = {\n height: menuHeight,\n width: menuWidth\n };\n var cascadeNodes = cascadeData.map(function (children, layer) {\n var uncheckableCount = 0;\n var onlyKey = layer + \"_\" + children.length;\n var menu = /*#__PURE__*/_react.default.createElement(\"ul\", {\n role: \"listbox\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 154,\n columnNumber: 11\n }\n }, children.map(function (item, index) {\n var uncheckable = uncheckableItemValues.some(function (uncheckableValue) {\n return (0, _utils.shallowEqual)(uncheckableValue, item[valueKey]);\n });\n if (uncheckable) {\n uncheckableCount++;\n }\n return renderCascadeNode(item, index, layer, cascadePaths[layer] && (0, _utils.shallowEqual)(cascadePaths[layer][valueKey], item[valueKey]), uncheckable);\n }));\n var parentNode = cascadePaths[layer - 1];\n var columnClasses = prefix('column', {\n 'column-uncheckable': uncheckableCount === children.length\n });\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n key: onlyKey,\n className: columnClasses,\n \"data-layer\": layer,\n style: columnStyles,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 179,\n columnNumber: 11\n }\n }, renderMenu ? renderMenu(children, menu, parentNode, layer) : menu);\n });\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n style: styles,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 184,\n columnNumber: 14\n }\n }, cascadeNodes);\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: 188,\n columnNumber: 7\n }\n }), renderCascade());\n});\nDropdownMenu.displayName = 'DropdownMenu';\nDropdownMenu.propTypes = {\n classPrefix: _propTypes.default.string,\n data: _propTypes.default.array,\n disabledItemValues: _propTypes.default.array,\n value: _propTypes.default.array,\n childrenKey: _propTypes.default.string,\n valueKey: _propTypes.default.string,\n labelKey: _propTypes.default.string,\n menuWidth: _propTypes.default.number,\n menuHeight: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n className: _propTypes.default.string,\n cascade: _propTypes.default.bool,\n cascadeData: _propTypes.default.array,\n cascadePaths: _propTypes.default.array,\n uncheckableItemValues: _propTypes.default.array,\n renderMenuItem: _propTypes.default.func,\n renderMenu: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onCheck: _propTypes.default.func\n};\nvar _default = DropdownMenu;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/MultiCascader/DropdownMenu.tsx?");
7993
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _TreeView = _interopRequireDefault(__webpack_require__(/*! ./TreeView */ \"./src/MultiCascader/TreeView.tsx\"));\nvar _Checkbox = _interopRequireDefault(__webpack_require__(/*! ../Checkbox */ \"./src/Checkbox/index.tsx\"));\nvar _utils = __webpack_require__(/*! ./utils */ \"./src/MultiCascader/utils.ts\");\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils2 = __webpack_require__(/*! ../Cascader/utils */ \"./src/Cascader/utils.ts\");\nvar _utils3 = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/MultiCascader/MultiCascader.tsx\",\n _this = void 0;\nvar emptyArray = [];\n\n/**\n * The `MultiCascader` component is used to select multiple values from cascading options.\n * @see https://rsuitejs.com/components/multi-cascader/\n */\nvar MultiCascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _selectedPaths;\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 var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n var _useFlattenData = (0, _utils.useFlattenData)(data, itemKeys),\n flattenData = _useFlattenData.flattenData,\n addFlattenData = _useFlattenData.addFlattenData;\n var _useControlled = (0, _utils3.useControlled)(valueProp, defaultValue),\n controlledValue = _useControlled[0];\n var _useCascadeValue = (0, _utils.useCascadeValue)((0, _extends3.default)({}, itemKeys, {\n uncheckableItemValues: uncheckableItemValues,\n cascade: cascade,\n value: controlledValue\n }), flattenData),\n value = _useCascadeValue.value,\n setValue = _useCascadeValue.setValue,\n splitValue = _useCascadeValue.splitValue; // The columns displayed in the cascading panel.\n var _useColumnData = (0, _utils.useColumnData)(flattenData),\n columnData = _useColumnData.columnData,\n setColumnData = _useColumnData.setColumnData,\n addColumn = _useColumnData.addColumn,\n removeColumnByIndex = _useColumnData.removeColumnByIndex,\n enforceUpdateColumnData = _useColumnData.enforceUpdateColumnData;\n (0, _utils3.useUpdateEffect)(function () {\n enforceUpdateColumnData(data);\n }, [data]);\n\n // The path after cascading data selection.\n var _useState2 = (0, _react.useState)(),\n selectedPaths = _useState2[0],\n setSelectedPaths = _useState2[1];\n var _usePickerRef = (0, _Picker.usePickerRef)(ref),\n trigger = _usePickerRef.trigger,\n root = _usePickerRef.root,\n target = _usePickerRef.target,\n overlay = _usePickerRef.overlay,\n searchInput = _usePickerRef.searchInput;\n var _useCustom = (0, _utils3.useCustom)('Picker', overrideLocale),\n locale = _useCustom.locale,\n rtl = _useCustom.rtl;\n var selectedItems = flattenData.filter(function (item) {\n return value.some(function (v) {\n return v === item[valueKey];\n });\n }) || [];\n\n // Used to hover the focuse item when trigger `onKeydown`\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 overlay.current;\n },\n callback: (0, _react.useCallback)(function (value) {\n var _getColumnsAndPaths = (0, _utils2.getColumnsAndPaths)(data, flattenData.find(function (item) {\n return item[valueKey] === value;\n }), {\n getParent: function getParent() {\n return undefined;\n },\n getChildren: function getChildren(item) {\n return item[childrenKey];\n }\n }),\n columns = _getColumnsAndPaths.columns,\n path = _getColumnsAndPaths.path;\n setColumnData(columns);\n setSelectedPaths(path);\n }, [childrenKey, data, flattenData, 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 var hasValue = selectedItems.length > 0 || Number(valueProp === null || valueProp === void 0 ? void 0 : valueProp.length) > 0 && (0, _isFunction.default)(renderValue);\n var _useClassNames = (0, _utils3.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var _useState3 = (0, _react.useState)(''),\n searchKeyword = _useState3[0],\n setSearchKeyword = _useState3[1];\n var handleEntered = (0, _utils3.useEventCallback)(function () {\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n });\n var handleExited = (0, _utils3.useEventCallback)(function () {\n setActive(false);\n setSearchKeyword('');\n });\n var handleSelect = (0, _utils3.useEventCallback)(function (node, cascadePaths, event) {\n var _node$childrenKey, _node$childrenKey2, _trigger$current, _trigger$current$upda;\n setSelectedPaths(cascadePaths);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event);\n var columnIndex = cascadePaths.length;\n\n // Lazy load node's children\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 if (children instanceof Promise) {\n children.then(function (data) {\n node.loading = false;\n node[childrenKey] = data;\n if (target.current || inline) {\n addFlattenData(data, node);\n addColumn(data, columnIndex);\n }\n });\n } else {\n node.loading = false;\n node[childrenKey] = children;\n addFlattenData(children, node);\n addColumn(children, columnIndex);\n }\n } else if ((_node$childrenKey2 = node[childrenKey]) !== null && _node$childrenKey2 !== void 0 && _node$childrenKey2.length) {\n addColumn(node[childrenKey], columnIndex);\n } else {\n // Removes subsequent columns of the current column when the clicked node is a leaf node.\n removeColumnByIndex(columnIndex);\n }\n (_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : (_trigger$current$upda = _trigger$current.updatePosition) === null || _trigger$current$upda === void 0 ? void 0 : _trigger$current$upda.call(_trigger$current);\n });\n var handleCheck = (0, _utils3.useEventCallback)(function (node, event, checked) {\n var nodeValue = node[valueKey];\n var nextValue = [];\n if (cascade) {\n nextValue = splitValue(node, checked, value).value;\n } else {\n nextValue = [].concat(value);\n if (checked) {\n nextValue.push(nodeValue);\n } else {\n nextValue = nextValue.filter(function (n) {\n return n !== nodeValue;\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 });\n var handleClean = (0, _utils3.useEventCallback)(function (event) {\n if (disabled || !target.current) {\n return;\n }\n setSelectedPaths([]);\n setValue([]);\n setColumnData([data]);\n onChange === null || onChange === void 0 ? void 0 : onChange([], event);\n });\n var handleMenuPressEnter = (0, _utils3.useEventCallback)(function (event) {\n var _overlay$current;\n var focusItem = (0, _treeUtils.findNodeOfTree)(data, function (item) {\n return item[valueKey] === focusItemValue;\n });\n var checkbox = (_overlay$current = overlay.current) === null || _overlay$current === void 0 ? void 0 : _overlay$current.querySelector(\"[data-key=\\\"\" + focusItemValue + \"\\\"] [type=\\\"checkbox\\\"]\");\n if (checkbox) {\n handleCheck(focusItem, event, (checkbox === null || checkbox === void 0 ? void 0 : checkbox.getAttribute('aria-checked')) !== 'true');\n }\n });\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends3.default)({\n toggle: !focusItemValue || !active,\n trigger: trigger,\n target: target,\n overlay: overlay,\n searchInput: searchInput,\n active: active,\n onExit: handleClean,\n onMenuKeyDown: onFocusItem,\n onMenuPressEnter: handleMenuPressEnter\n }, rest));\n var handleSearch = (0, _utils3.useEventCallback)(function (value, event) {\n setSearchKeyword(value);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(value, event);\n if (value) {\n setLayer(0);\n } else if (selectedPaths !== null && selectedPaths !== void 0 && selectedPaths.length) {\n setLayer(selectedPaths.length - 1);\n }\n setKeys([]);\n });\n var getSearchResult = function getSearchResult() {\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 if (item[labelKey].match(new RegExp((0, _utils3.getSafeRegExpString)(searchKeyword), 'i'))) {\n return true;\n }\n return false;\n });\n for (var i = 0; i < result.length; i++) {\n items.push(result[i]);\n\n // A maximum of 100 search results are returned.\n if (i === 99) {\n return items;\n }\n }\n return items;\n };\n var renderSearchRow = function renderSearchRow(item, key) {\n var _extends2;\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 for (var i = 0; i < a.length; i++) {\n labelElements.push(a[i]);\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: 387,\n columnNumber: 13\n }\n }, b[i]));\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 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 role: \"treeitem\",\n \"aria-disabled\": disabled,\n key: key,\n className: itemClasses,\n \"data-key\": item[valueKey],\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 412,\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: 419,\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: 430,\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: 432,\n columnNumber: 17\n }\n }, node[labelKey]);\n }))));\n };\n var renderSearchResultPanel = function renderSearchResultPanel() {\n if (searchKeyword === '') {\n return null;\n }\n var items = getSearchResult();\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('cascader-search-panel'),\n \"data-layer\": 0,\n role: \"tree\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 449,\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: 453,\n columnNumber: 13\n }\n }, locale.noResultsText));\n };\n var renderTreeView = function renderTreeView(positionProps, speakerRef) {\n var _ref = positionProps || {},\n left = _ref.left,\n top = _ref.top,\n className = _ref.className;\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.PickerPopup, {\n ref: (0, _utils3.mergeRefs)(overlay, speakerRef),\n className: classes,\n style: styles,\n target: trigger,\n onKeyDown: onPickerKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 470,\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: searchInput,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 478,\n columnNumber: 13\n }\n }), renderSearchResultPanel(), searchKeyword === '' && /*#__PURE__*/_react.default.createElement(_TreeView.default, {\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: 489,\n columnNumber: 13\n }\n }), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n var selectedElement = placeholder;\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: 518,\n columnNumber: 9\n }\n });\n }\n if (hasValue && (0, _isFunction.default)(renderValue)) {\n selectedElement = renderValue(value.length ? value : valueProp !== null && valueProp !== void 0 ? valueProp : [], selectedItems, selectedElement);\n // If renderValue returns null or undefined, hasValue is false.\n if ((0, _isNil.default)(selectedElement)) {\n hasValue = false;\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 if (inline) {\n return renderTreeView();\n }\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n id: id,\n popupType: \"tree\",\n multiple: true,\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: trigger,\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: renderTreeView,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 558,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n ref: root,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 570,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends3.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n as: toggleAs,\n appearance: appearance,\n disabled: disabled,\n ref: target,\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: 571,\n columnNumber: 11\n }\n }), selectedElement || locale.placeholder)));\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?");
7983
7994
 
7984
7995
  /***/ }),
7985
7996
 
7986
- /***/ "./src/MultiCascader/MultiCascader.tsx":
7987
- /*!*********************************************!*\
7988
- !*** ./src/MultiCascader/MultiCascader.tsx ***!
7989
- \*********************************************/
7997
+ /***/ "./src/MultiCascader/TreeView.tsx":
7998
+ /*!****************************************!*\
7999
+ !*** ./src/MultiCascader/TreeView.tsx ***!
8000
+ \****************************************/
7990
8001
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
7991
8002
 
7992
8003
  "use strict";
7993
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _DropdownMenu = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenu */ \"./src/MultiCascader/DropdownMenu.tsx\"));\nvar _Checkbox = _interopRequireDefault(__webpack_require__(/*! ../Checkbox */ \"./src/Checkbox/index.tsx\"));\nvar _utils = __webpack_require__(/*! ./utils */ \"./src/MultiCascader/utils.ts\");\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils2 = __webpack_require__(/*! ../Cascader/utils */ \"./src/Cascader/utils.ts\");\nvar _utils3 = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/MultiCascader/MultiCascader.tsx\",\n _this = void 0;\nvar emptyArray = [];\n\n/**\n * The `MultiCascader` component is used to select multiple values from cascading options.\n * @see https://rsuitejs.com/components/multi-cascader/\n */\nvar MultiCascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _selectedPaths;\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 var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n var _useFlattenData = (0, _utils.useFlattenData)(data, itemKeys),\n flattenData = _useFlattenData.flattenData,\n addFlattenData = _useFlattenData.addFlattenData;\n var _useControlled = (0, _utils3.useControlled)(valueProp, defaultValue),\n controlledValue = _useControlled[0];\n var _useCascadeValue = (0, _utils.useCascadeValue)((0, _extends3.default)({}, itemKeys, {\n uncheckableItemValues: uncheckableItemValues,\n cascade: cascade,\n value: controlledValue\n }), flattenData),\n value = _useCascadeValue.value,\n setValue = _useCascadeValue.setValue,\n splitValue = _useCascadeValue.splitValue; // The columns displayed in the cascading panel.\n var _useColumnData = (0, _utils.useColumnData)(flattenData),\n columnData = _useColumnData.columnData,\n setColumnData = _useColumnData.setColumnData,\n addColumn = _useColumnData.addColumn,\n removeColumnByIndex = _useColumnData.removeColumnByIndex,\n enforceUpdateColumnData = _useColumnData.enforceUpdateColumnData;\n (0, _utils3.useUpdateEffect)(function () {\n enforceUpdateColumnData(data);\n }, [data]);\n\n // The path after cascading data selection.\n var _useState2 = (0, _react.useState)(),\n selectedPaths = _useState2[0],\n setSelectedPaths = _useState2[1];\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 var _useCustom = (0, _utils3.useCustom)('Picker', overrideLocale),\n locale = _useCustom.locale,\n rtl = _useCustom.rtl;\n var selectedItems = flattenData.filter(function (item) {\n return value.some(function (v) {\n return v === item[valueKey];\n });\n }) || [];\n\n // Used to hover the focuse item when trigger `onKeydown`\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, flattenData.find(function (item) {\n return item[valueKey] === value;\n }), {\n getParent: function getParent() {\n return undefined;\n },\n getChildren: function getChildren(item) {\n return item[childrenKey];\n }\n }),\n columns = _getColumnsAndPaths.columns,\n path = _getColumnsAndPaths.path;\n setColumnData(columns);\n setSelectedPaths(path);\n }, [childrenKey, data, flattenData, 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 var hasValue = selectedItems.length > 0 || Number(valueProp === null || valueProp === void 0 ? void 0 : valueProp.length) > 0 && (0, _isFunction.default)(renderValue);\n var _useClassNames = (0, _utils3.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var _useState3 = (0, _react.useState)(''),\n searchKeyword = _useState3[0],\n setSearchKeyword = _useState3[1];\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 setSelectedPaths(cascadePaths);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event);\n var columnIndex = cascadePaths.length;\n\n // Lazy load node's children\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 if (children instanceof Promise) {\n children.then(function (data) {\n node.loading = false;\n node[childrenKey] = data;\n if (targetRef.current || inline) {\n addFlattenData(data, node);\n addColumn(data, columnIndex);\n }\n });\n } else {\n node.loading = false;\n node[childrenKey] = children;\n addFlattenData(children, node);\n addColumn(children, columnIndex);\n }\n } else if ((_node$childrenKey2 = node[childrenKey]) !== null && _node$childrenKey2 !== void 0 && _node$childrenKey2.length) {\n addColumn(node[childrenKey], columnIndex);\n } else {\n // Removes subsequent columns of the current column when the clicked node is a leaf node.\n removeColumnByIndex(columnIndex);\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, inline, addFlattenData, addColumn, removeColumnByIndex]);\n var handleCheck = (0, _react.useCallback)(function (node, event, checked) {\n var nodeValue = node[valueKey];\n var nextValue = [];\n if (cascade) {\n nextValue = splitValue(node, checked, value).value;\n } else {\n nextValue = [].concat(value);\n if (checked) {\n nextValue.push(nodeValue);\n } else {\n nextValue = nextValue.filter(function (n) {\n return n !== nodeValue;\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 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 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 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 if (value) {\n setLayer(0);\n } else if (selectedPaths !== null && selectedPaths !== void 0 && selectedPaths.length) {\n setLayer(selectedPaths.length - 1);\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 if (item[labelKey].match(new RegExp((0, _utils3.getSafeRegExpString)(searchKeyword), 'i'))) {\n return true;\n }\n return false;\n });\n for (var i = 0; i < result.length; i++) {\n items.push(result[i]);\n\n // A maximum of 100 search results are returned.\n if (i === 99) {\n return items;\n }\n }\n return items;\n }, [flattenData, labelKey, searchKeyword, uncheckableItemValues, valueKey]);\n var renderSearchRow = function renderSearchRow(item, key) {\n var _extends2;\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 for (var i = 0; i < a.length; i++) {\n labelElements.push(a[i]);\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: 405,\n columnNumber: 13\n }\n }, b[i]));\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 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: 430,\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: 431,\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: 442,\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: 444,\n columnNumber: 17\n }\n }, node[labelKey]);\n }))));\n };\n var renderSearchResultPanel = function renderSearchResultPanel() {\n if (searchKeyword === '') {\n return null;\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: 461,\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: 465,\n columnNumber: 13\n }\n }, locale.noResultsText));\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 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: 482,\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: 490,\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: 501,\n columnNumber: 13\n }\n }), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n var selectedElement = placeholder;\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: 531,\n columnNumber: 9\n }\n });\n }\n if (hasValue && (0, _isFunction.default)(renderValue)) {\n selectedElement = renderValue(value.length ? value : valueProp !== null && valueProp !== void 0 ? valueProp : [], selectedItems, selectedElement);\n // If renderValue returns null or undefined, hasValue is false.\n if ((0, _isNil.default)(selectedElement)) {\n hasValue = false;\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 if (inline) {\n return renderDropdownMenu();\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: 571,\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: 580,\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: 581,\n columnNumber: 11\n }\n }), selectedElement || locale.placeholder)));\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?");
8004
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _Spinner = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Spinner */ \"./node_modules/@rsuite/icons/legacy/Spinner.js\"));\nvar _AngleLeft = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleLeft */ \"./node_modules/@rsuite/icons/legacy/AngleLeft.js\"));\nvar _AngleRight = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleRight */ \"./node_modules/@rsuite/icons/legacy/AngleRight.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _utils2 = __webpack_require__(/*! ./utils */ \"./src/MultiCascader/utils.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/MultiCascader/TreeView.tsx\",\n _this = void 0;\nvar emptyArray = [];\n\n/**\n * TODO: reuse Menu from Cascader for consistent behavior\n */\nvar TreeView = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'menu' : _props$classPrefix,\n className = props.className,\n cascade = props.cascade,\n _props$cascadeData = props.cascadeData,\n cascadeData = _props$cascadeData === void 0 ? emptyArray : _props$cascadeData,\n _props$cascadePaths = props.cascadePaths,\n cascadePaths = _props$cascadePaths === void 0 ? emptyArray : _props$cascadePaths,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n _props$menuWidth = props.menuWidth,\n menuWidth = _props$menuWidth === void 0 ? 156 : _props$menuWidth,\n _props$menuHeight = props.menuHeight,\n menuHeight = _props$menuHeight === void 0 ? 200 : _props$menuHeight,\n _props$uncheckableIte = props.uncheckableItemValues,\n uncheckableItemValues = _props$uncheckableIte === void 0 ? emptyArray : _props$uncheckableIte,\n value = 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 style = props.style,\n renderMenuItem = props.renderMenuItem,\n renderMenu = props.renderMenu,\n _onCheck = props.onCheck,\n onSelect = props.onSelect,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"className\", \"cascade\", \"cascadeData\", \"cascadePaths\", \"childrenKey\", \"disabledItemValues\", \"menuWidth\", \"menuHeight\", \"uncheckableItemValues\", \"value\", \"valueKey\", \"labelKey\", \"style\", \"renderMenuItem\", \"renderMenu\", \"onCheck\", \"onSelect\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var classes = merge(className, prefix('items'));\n var _useCustom = (0, _utils.useCustom)(),\n rtl = _useCustom.rtl;\n var _useCombobox = (0, _Picker.useCombobox)(),\n id = _useCombobox.id,\n labelId = _useCombobox.labelId,\n popupType = _useCombobox.popupType,\n multiple = _useCombobox.multiple;\n var getCascadePaths = function getCascadePaths(layer, node) {\n var paths = [];\n for (var i = 0; i < cascadeData.length && i < layer; i += 1) {\n if (i < layer - 1 && cascadePaths) {\n paths.push(cascadePaths[i]);\n }\n }\n paths.push(node);\n return paths;\n };\n var handleSelect = (0, _utils.useEventCallback)(function (layer, node, event) {\n var cascadePaths = getCascadePaths(layer + 1, node);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event);\n });\n var renderCascadeNode = function renderCascadeNode(nodeProps) {\n var node = nodeProps.node,\n index = nodeProps.index,\n layer = nodeProps.layer,\n focus = nodeProps.focus,\n uncheckable = nodeProps.uncheckable,\n size = nodeProps.size;\n var children = node[childrenKey];\n var nodeValue = node[valueKey];\n var label = node[labelKey];\n var disabled = disabledItemValues.some(function (disabledValue) {\n return (0, _utils.shallowEqual)(disabledValue, nodeValue);\n });\n\n // Use `value` in keys when If `value` is string or number\n var onlyKey = typeof value === 'number' || typeof value === 'string' ? value : index;\n var Icon = node.loading ? _Spinner.default : rtl ? _AngleLeft.default : _AngleRight.default;\n var active = value.some(function (v) {\n return v === nodeValue;\n });\n if (cascade) {\n active = active || (0, _utils2.isSomeParentChecked)(node, value, {\n valueKey: valueKey\n });\n }\n return /*#__PURE__*/_react.default.createElement(_Picker.ListCheckItem, {\n as: \"li\",\n role: \"treeitem\",\n \"aria-level\": layer + 1,\n \"aria-setsize\": size,\n \"aria-posinset\": index + 1,\n \"aria-label\": typeof label === 'string' ? label : undefined,\n key: layer + \"-\" + onlyKey,\n disabled: disabled,\n active: active,\n focus: focus\n // Pass the node as a value to Item, and use it in event callbacks.\n ,\n value: nodeValue,\n className: children ? prefix('has-children') : undefined,\n indeterminate: cascade && !active && (0, _utils2.isSomeChildChecked)(node, value, {\n valueKey: valueKey,\n childrenKey: childrenKey\n }),\n onSelectItem: function onSelectItem(_value, event) {\n return handleSelect(layer, node, event);\n },\n onCheck: function onCheck(_value, event, checked) {\n return _onCheck === null || _onCheck === void 0 ? void 0 : _onCheck(node, event, checked);\n },\n checkable: !uncheckable,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 122,\n columnNumber: 9\n }\n }, renderMenuItem ? renderMenuItem(label, node) : label, children ? /*#__PURE__*/_react.default.createElement(Icon, {\n className: prefix('caret'),\n spin: node.loading,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 144,\n columnNumber: 23\n }\n }) : null);\n };\n var columnStyles = {\n height: menuHeight,\n width: menuWidth\n };\n var cascadeNodes = cascadeData.map(function (children, layer) {\n var uncheckableCount = 0;\n var onlyKey = layer + \"_\" + children.length;\n var menu = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, children.map(function (item, index) {\n var uncheckable = uncheckableItemValues.some(function (uncheckableValue) {\n return (0, _utils.shallowEqual)(uncheckableValue, item[valueKey]);\n });\n if (uncheckable) {\n uncheckableCount++;\n }\n var focus = cascadePaths[layer] && (0, _utils.shallowEqual)(cascadePaths[layer][valueKey], item[valueKey]);\n return renderCascadeNode({\n node: item,\n index: index,\n layer: layer,\n focus: focus,\n uncheckable: uncheckable,\n size: children.length\n });\n }));\n var parentNode = cascadePaths[layer - 1];\n var columnClasses = prefix('column', {\n 'column-uncheckable': uncheckableCount === children.length\n });\n return /*#__PURE__*/_react.default.createElement(\"ul\", {\n role: \"group\",\n key: onlyKey,\n className: columnClasses,\n \"data-layer\": layer,\n style: columnStyles,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 183,\n columnNumber: 9\n }\n }, renderMenu ? renderMenu(children, menu, parentNode, layer) : menu);\n });\n var styles = (0, _extends2.default)({}, style, {\n width: cascadeData.length * menuWidth\n });\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"tree\",\n id: id + \"-\" + popupType,\n \"aria-labelledby\": labelId,\n \"aria-multiselectable\": multiple\n }, rest, {\n ref: ref,\n className: classes,\n style: styles,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 198,\n columnNumber: 7\n }\n }), cascadeNodes);\n});\nTreeView.displayName = 'TreeView';\nvar _default = TreeView;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/MultiCascader/TreeView.tsx?");
7994
8005
 
7995
8006
  /***/ }),
7996
8007
 
@@ -8412,58 +8423,80 @@ eval("\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/h
8412
8423
 
8413
8424
  /***/ }),
8414
8425
 
8415
- /***/ "./src/Picker/DropdownMenu.tsx":
8416
- /*!*************************************!*\
8417
- !*** ./src/Picker/DropdownMenu.tsx ***!
8418
- \*************************************/
8426
+ /***/ "./src/Picker/ListCheckItem.tsx":
8427
+ /*!**************************************!*\
8428
+ !*** ./src/Picker/ListCheckItem.tsx ***!
8429
+ \**************************************/
8419
8430
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8420
8431
 
8421
8432
  "use strict";
8422
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = exports.dropdownMenuPropTypes = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _get2 = _interopRequireDefault(__webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _isString = _interopRequireDefault(__webpack_require__(/*! lodash/isString */ \"./node_modules/lodash/isString.js\"));\nvar _isNumber = _interopRequireDefault(__webpack_require__(/*! lodash/isNumber */ \"./node_modules/lodash/isNumber.js\"));\nvar _findIndex = _interopRequireDefault(__webpack_require__(/*! lodash/findIndex */ \"./node_modules/lodash/findIndex.js\"));\nvar _pickBy = _interopRequireDefault(__webpack_require__(/*! lodash/pickBy */ \"./node_modules/lodash/pickBy.js\"));\nvar _getPosition = _interopRequireDefault(__webpack_require__(/*! dom-lib/getPosition */ \"./node_modules/dom-lib/esm/getPosition.js\"));\nvar _scrollTop = _interopRequireDefault(__webpack_require__(/*! dom-lib/scrollTop */ \"./node_modules/dom-lib/esm/scrollTop.js\"));\nvar _getHeight = _interopRequireDefault(__webpack_require__(/*! dom-lib/getHeight */ \"./node_modules/dom-lib/esm/getHeight.js\"));\nvar _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ \"./node_modules/classnames/index.js\"));\nvar _Windowing = __webpack_require__(/*! ../Windowing */ \"./src/Windowing/index.ts\");\nvar _shallowEqual = _interopRequireDefault(__webpack_require__(/*! ../utils/shallowEqual */ \"./src/utils/shallowEqual.ts\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _DropdownMenuGroup = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenuGroup */ \"./src/Picker/DropdownMenuGroup.tsx\"));\nvar _getDataGroupBy = __webpack_require__(/*! ../utils/getDataGroupBy */ \"./src/utils/getDataGroupBy.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/DropdownMenu.tsx\",\n _this = void 0;\nvar DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$data = props.data,\n data = _props$data === void 0 ? [] : _props$data,\n group = props.group,\n groupBy = props.groupBy,\n _props$maxHeight = props.maxHeight,\n maxHeight = _props$maxHeight === void 0 ? 320 : _props$maxHeight,\n _props$activeItemValu = props.activeItemValues,\n activeItemValues = _props$activeItemValu === void 0 ? [] : _props$activeItemValu,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? [] : _props$disabledItemVa,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'dropdown-menu' : _props$classPrefix,\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 virtualized = props.virtualized,\n listProps = props.listProps,\n virtualizedListRef = props.listRef,\n className = props.className,\n style = props.style,\n focusItemValue = props.focusItemValue,\n dropdownMenuItemClassPrefix = props.dropdownMenuItemClassPrefix,\n DropdownMenuItem = props.dropdownMenuItemAs,\n dropdownMenuItemProps = props.dropdownMenuItemProps,\n _props$rowHeight = props.rowHeight,\n rowHeight = _props$rowHeight === void 0 ? 36 : _props$rowHeight,\n _props$rowGroupHeight = props.rowGroupHeight,\n rowGroupHeight = _props$rowGroupHeight === void 0 ? 48 : _props$rowGroupHeight,\n renderMenuGroup = props.renderMenuGroup,\n renderMenuItem = props.renderMenuItem,\n onGroupTitleClick = props.onGroupTitleClick,\n onSelect = props.onSelect,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"data\", \"group\", \"groupBy\", \"maxHeight\", \"activeItemValues\", \"disabledItemValues\", \"classPrefix\", \"valueKey\", \"labelKey\", \"virtualized\", \"listProps\", \"listRef\", \"className\", \"style\", \"focusItemValue\", \"dropdownMenuItemClassPrefix\", \"dropdownMenuItemAs\", \"dropdownMenuItemProps\", \"rowHeight\", \"rowGroupHeight\", \"renderMenuGroup\", \"renderMenuItem\", \"onGroupTitleClick\", \"onSelect\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var classes = merge(className, withClassPrefix('items', {\n grouped: group\n }));\n var menuBodyContainerRef = (0, _react.useRef)(null);\n var listRef = (0, _react.useRef)(null);\n var _useState = (0, _react.useState)([]),\n foldedGroupKeys = _useState[0],\n setFoldedGroupKeys = _useState[1];\n var handleGroupTitleClick = (0, _react.useCallback)(function (key, event) {\n var nextGroupKeys = foldedGroupKeys.filter(function (item) {\n return item !== key;\n });\n if (nextGroupKeys.length === foldedGroupKeys.length) {\n nextGroupKeys.push(key);\n }\n setFoldedGroupKeys(nextGroupKeys);\n onGroupTitleClick === null || onGroupTitleClick === void 0 ? void 0 : onGroupTitleClick(event);\n }, [onGroupTitleClick, foldedGroupKeys]);\n var handleSelect = (0, _react.useCallback)(function (item, value, event, checked) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, item, event, checked);\n }, [onSelect]);\n var getRowHeight = function getRowHeight(list, index) {\n var item = list[index];\n if (group && item[_getDataGroupBy.KEY_GROUP] && index !== 0) {\n return rowGroupHeight;\n }\n return rowHeight;\n };\n (0, _react.useEffect)(function () {\n var container = menuBodyContainerRef.current;\n if (!container) {\n return;\n }\n var activeItem = container.querySelector(\".\" + prefix('item-focus'));\n if (!activeItem) {\n activeItem = container.querySelector(\".\" + prefix('item-active'));\n }\n if (!activeItem) {\n return;\n }\n var position = (0, _getPosition.default)(activeItem, container);\n var sTop = (0, _scrollTop.default)(container);\n var sHeight = (0, _getHeight.default)(container);\n if (sTop > position.top) {\n (0, _scrollTop.default)(container, Math.max(0, position.top - 20));\n } else if (position.top > sTop + sHeight) {\n (0, _scrollTop.default)(container, Math.max(0, position.top - sHeight + 32));\n }\n }, [focusItemValue, menuBodyContainerRef, prefix]);\n var renderItem = function renderItem(_ref) {\n var _ref$index = _ref.index,\n index = _ref$index === void 0 ? 0 : _ref$index,\n style = _ref.style,\n data = _ref.data,\n itemData = _ref.item;\n var item = itemData || data[index];\n var value = item[valueKey];\n var label = item[labelKey];\n if ((0, _isUndefined.default)(label) && !item[_getDataGroupBy.KEY_GROUP]) {\n throw Error(\"labelKey \\\"\" + labelKey + \"\\\" is not defined in \\\"data\\\" : \" + index);\n }\n\n // Use `value` in keys when If `value` is string or number\n var itemKey = (0, _isString.default)(value) || (0, _isNumber.default)(value) ? value : index;\n\n /**\n * Render <DropdownMenuGroup>\n * when if `group` is enabled\n */\n if (group && item[_getDataGroupBy.KEY_GROUP]) {\n var groupValue = item[_getDataGroupBy.KEY_GROUP_TITLE];\n // TODO: grouped options should be owned by group\n return /*#__PURE__*/_react.default.createElement(_DropdownMenuGroup.default, {\n style: style,\n classPrefix: 'picker-menu-group',\n className: (0, _classnames.default)({\n folded: foldedGroupKeys.some(function (key) {\n return key === groupValue;\n })\n }),\n key: \"group-\" + groupValue,\n onClick: handleGroupTitleClick.bind(null, groupValue),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 187,\n columnNumber: 9\n }\n }, renderMenuGroup ? renderMenuGroup(groupValue, item) : groupValue);\n } else if ((0, _isUndefined.default)(value) && !(0, _isUndefined.default)(item[_getDataGroupBy.KEY_GROUP])) {\n throw Error(\"valueKey \\\"\" + valueKey + \"\\\" is not defined in \\\"data\\\" : \" + index + \" \");\n }\n var disabled = disabledItemValues === null || disabledItemValues === void 0 ? void 0 : disabledItemValues.some(function (disabledValue) {\n return (0, _shallowEqual.default)(disabledValue, value);\n });\n var active = activeItemValues === null || activeItemValues === void 0 ? void 0 : activeItemValues.some(function (v) {\n return (0, _shallowEqual.default)(v, value);\n });\n var focus = !(0, _isUndefined.default)(focusItemValue) && (0, _shallowEqual.default)(focusItemValue, value);\n return /*#__PURE__*/_react.default.createElement(DropdownMenuItem, (0, _extends2.default)({\n style: style,\n key: itemKey,\n disabled: disabled,\n active: active,\n focus: focus,\n value: value,\n classPrefix: dropdownMenuItemClassPrefix,\n onSelect: handleSelect.bind(null, item)\n }, (0, _pickBy.default)(dropdownMenuItemProps, function (v) {\n return v !== undefined;\n }), {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 208,\n columnNumber: 7\n }\n }), renderMenuItem ? renderMenuItem(label, item) : label);\n };\n var filteredItems = group ? data.filter(function (item) {\n var _item$parent;\n // Display group title items\n if (item[_getDataGroupBy.KEY_GROUP]) return true;\n\n // Display items under the unfolded group\n // FIXME-Doma\n // `groupBy` is bound to be string when `group` is true\n // because `group` is actually redundant as a prop\n // It could simply be derived from `groupBy` value\n var groupValue = (0, _get2.default)(item, groupBy, '') || ( // FIXME-Doma\n // Usage of `item.parent` is strongly discouraged\n // It's only here for legacy support\n // Remove once `item.parent` is completely removed across related components\n (_item$parent = item.parent) === null || _item$parent === void 0 ? void 0 : _item$parent[_getDataGroupBy.KEY_GROUP_TITLE]);\n return !foldedGroupKeys.includes(groupValue);\n }) : data;\n var rowCount = filteredItems.length;\n (0, _utils.useMount)(function () {\n var _listRef$current, _listRef$current$scro;\n var itemIndex = (0, _findIndex.default)(filteredItems, function (item) {\n return item[valueKey] === (activeItemValues === null || activeItemValues === void 0 ? void 0 : activeItemValues[0]);\n });\n (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : (_listRef$current$scro = _listRef$current.scrollToItem) === null || _listRef$current$scro === void 0 ? void 0 : _listRef$current$scro.call(_listRef$current, itemIndex);\n });\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n role: \"listbox\"\n }, rest, {\n className: classes,\n ref: (0, _utils.mergeRefs)(menuBodyContainerRef, ref),\n style: (0, _extends2.default)({}, style, {\n maxHeight: maxHeight\n }),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 252,\n columnNumber: 5\n }\n }), virtualized ? /*#__PURE__*/_react.default.createElement(_Windowing.AutoSizer, {\n defaultHeight: maxHeight,\n style: {\n width: 'auto',\n height: 'auto'\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 260,\n columnNumber: 9\n }\n }, function (_ref2) {\n var height = _ref2.height;\n return /*#__PURE__*/_react.default.createElement(_Windowing.List, (0, _extends2.default)({\n as: _Windowing.VariableSizeList,\n ref: (0, _utils.mergeRefs)(listRef, virtualizedListRef),\n height: height || maxHeight,\n itemCount: rowCount,\n itemData: filteredItems,\n itemSize: getRowHeight.bind(_this, filteredItems)\n }, listProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 262,\n columnNumber: 13\n }\n }), renderItem);\n }) : filteredItems.map(function (item, index) {\n return renderItem({\n index: index,\n item: item\n });\n }));\n});\nvar dropdownMenuPropTypes = {\n classPrefix: _propTypes.default.string.isRequired,\n className: _propTypes.default.string,\n dropdownMenuItemAs: _propTypes.default.elementType.isRequired,\n dropdownMenuItemClassPrefix: _propTypes.default.string,\n data: _propTypes.default.array,\n group: _propTypes.default.bool,\n disabledItemValues: _propTypes.default.array,\n activeItemValues: _propTypes.default.array,\n focusItemValue: _propTypes.default.any,\n maxHeight: _propTypes.default.number,\n valueKey: _propTypes.default.string,\n labelKey: _propTypes.default.string,\n style: _propTypes.default.object,\n renderMenuItem: _propTypes.default.func,\n renderMenuGroup: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onGroupTitleClick: _propTypes.default.func,\n virtualized: _propTypes.default.bool,\n listProps: _propTypes.default.any,\n rowHeight: _propTypes.default.number,\n rowGroupHeight: _propTypes.default.number\n};\nexports.dropdownMenuPropTypes = dropdownMenuPropTypes;\nDropdownMenu.displayName = 'DropdownMenu';\nDropdownMenu.propTypes = dropdownMenuPropTypes;\nvar _default = DropdownMenu;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/DropdownMenu.tsx?");
8433
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Checkbox = _interopRequireDefault(__webpack_require__(/*! ../Checkbox */ \"./src/Checkbox/index.tsx\"));\nvar _useCombobox2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/useCombobox */ \"./src/Picker/hooks/useCombobox.ts\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/ListCheckItem.tsx\",\n _this = void 0;\nvar ListCheckItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$active = props.active,\n active = _props$active === void 0 ? false : _props$active,\n _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$checkboxAs = props.checkboxAs,\n CheckboxItem = _props$checkboxAs === void 0 ? _Checkbox.default : _props$checkboxAs,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'check-item' : _props$classPrefix,\n _props$checkable = props.checkable,\n checkable = _props$checkable === void 0 ? true : _props$checkable,\n disabled = props.disabled,\n value = props.value,\n focus = props.focus,\n children = props.children,\n className = props.className,\n indeterminate = props.indeterminate,\n onKeyDown = props.onKeyDown,\n onSelect = props.onSelect,\n onCheck = props.onCheck,\n onSelectItem = props.onSelectItem,\n renderMenuItemCheckbox = props.renderMenuItemCheckbox,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"active\", \"as\", \"checkboxAs\", \"classPrefix\", \"checkable\", \"disabled\", \"value\", \"focus\", \"children\", \"className\", \"indeterminate\", \"onKeyDown\", \"onSelect\", \"onCheck\", \"onSelectItem\", \"renderMenuItemCheckbox\"]);\n var handleChange = (0, _utils.useEventCallback)(function (value, checked, event) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, event, checked);\n });\n var handleCheck = (0, _utils.useEventCallback)(function (event) {\n if (!disabled) {\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(value, event, !active);\n }\n });\n var handleSelectItem = (0, _utils.useEventCallback)(function (event) {\n if (!disabled) {\n onSelectItem === null || onSelectItem === void 0 ? void 0 : onSelectItem(value, event, !active);\n }\n });\n var _useCombobox = (0, _useCombobox2.default)(),\n id = _useCombobox.id;\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix;\n var checkboxItemClasses = withClassPrefix({\n focus: focus\n });\n var checkboxProps = {\n value: value,\n disabled: disabled,\n indeterminate: indeterminate,\n checkable: checkable,\n children: children,\n checked: active,\n className: checkboxItemClasses,\n onKeyDown: disabled ? undefined : onKeyDown,\n onChange: handleChange,\n onClick: handleSelectItem,\n onCheckboxClick: handleCheck\n };\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"option\",\n \"aria-selected\": active,\n \"aria-disabled\": disabled,\n id: id ? id + \"-opt-\" + value : undefined,\n \"data-key\": value\n }, rest, {\n ref: ref,\n className: className,\n tabIndex: -1,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 85,\n columnNumber: 7\n }\n }), renderMenuItemCheckbox ? renderMenuItemCheckbox(checkboxProps) : /*#__PURE__*/_react.default.createElement(CheckboxItem, (0, _extends2.default)({\n role: \"checkbox\"\n }, checkboxProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 99,\n columnNumber: 11\n }\n })));\n});\nListCheckItem.displayName = 'ListCheckItem';\nvar _default = ListCheckItem;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/ListCheckItem.tsx?");
8423
8434
 
8424
8435
  /***/ }),
8425
8436
 
8426
- /***/ "./src/Picker/DropdownMenuCheckItem.tsx":
8427
- /*!**********************************************!*\
8428
- !*** ./src/Picker/DropdownMenuCheckItem.tsx ***!
8429
- \**********************************************/
8437
+ /***/ "./src/Picker/ListItem.tsx":
8438
+ /*!*********************************!*\
8439
+ !*** ./src/Picker/ListItem.tsx ***!
8440
+ \*********************************/
8430
8441
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8431
8442
 
8432
8443
  "use strict";
8433
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Checkbox = _interopRequireDefault(__webpack_require__(/*! ../Checkbox */ \"./src/Checkbox/index.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/DropdownMenuCheckItem.tsx\",\n _this = void 0;\nvar DropdownMenuCheckItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$active = props.active,\n active = _props$active === void 0 ? false : _props$active,\n _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$checkboxAs = props.checkboxAs,\n CheckboxItem = _props$checkboxAs === void 0 ? _Checkbox.default : _props$checkboxAs,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'check-item' : _props$classPrefix,\n _props$checkable = props.checkable,\n checkable = _props$checkable === void 0 ? true : _props$checkable,\n disabled = props.disabled,\n value = props.value,\n focus = props.focus,\n children = props.children,\n className = props.className,\n indeterminate = props.indeterminate,\n onKeyDown = props.onKeyDown,\n onSelect = props.onSelect,\n onCheck = props.onCheck,\n onSelectItem = props.onSelectItem,\n renderMenuItemCheckbox = props.renderMenuItemCheckbox,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"active\", \"as\", \"checkboxAs\", \"classPrefix\", \"checkable\", \"disabled\", \"value\", \"focus\", \"children\", \"className\", \"indeterminate\", \"onKeyDown\", \"onSelect\", \"onCheck\", \"onSelectItem\", \"renderMenuItemCheckbox\"]);\n var handleChange = (0, _react.useCallback)(function (value, checked, event) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, event, checked);\n }, [onSelect]);\n var handleCheck = (0, _react.useCallback)(function (event) {\n if (!disabled) {\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(value, event, !active);\n }\n }, [value, disabled, onCheck, active]);\n var handleSelectItem = (0, _react.useCallback)(function (event) {\n if (!disabled) {\n onSelectItem === null || onSelectItem === void 0 ? void 0 : onSelectItem(value, event, !active);\n }\n }, [value, disabled, onSelectItem, active]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix;\n var checkboxItemClasses = withClassPrefix({\n focus: focus\n });\n var checkboxProps = {\n value: value,\n disabled: disabled,\n indeterminate: indeterminate,\n checkable: checkable,\n children: children,\n checked: active,\n className: checkboxItemClasses,\n onKeyDown: disabled ? undefined : onKeyDown,\n onChange: handleChange,\n onClick: handleSelectItem,\n onCheckboxClick: handleCheck\n };\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"option\",\n \"aria-selected\": active,\n \"aria-disabled\": disabled,\n \"data-key\": value\n }, rest, {\n ref: ref,\n className: className,\n tabIndex: -1,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 91,\n columnNumber: 7\n }\n }), renderMenuItemCheckbox ? renderMenuItemCheckbox(checkboxProps) : /*#__PURE__*/_react.default.createElement(CheckboxItem, (0, _extends2.default)({\n role: \"checkbox\"\n }, checkboxProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 104,\n columnNumber: 11\n }\n })));\n});\nDropdownMenuCheckItem.displayName = 'DropdownMenuCheckItem';\nDropdownMenuCheckItem.propTypes = {\n classPrefix: _propTypes.default.string,\n active: _propTypes.default.bool,\n disabled: _propTypes.default.bool,\n checkable: _propTypes.default.bool,\n indeterminate: _propTypes.default.bool,\n value: _propTypes.default.any,\n onSelect: _propTypes.default.func,\n onCheck: _propTypes.default.func,\n onSelectItem: _propTypes.default.func,\n onKeyDown: _propTypes.default.func,\n focus: _propTypes.default.bool,\n title: _propTypes.default.string,\n className: _propTypes.default.string,\n children: _propTypes.default.node,\n as: _propTypes.default.elementType,\n checkboxAs: _propTypes.default.elementType\n};\nvar _default = DropdownMenuCheckItem;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/DropdownMenuCheckItem.tsx?");
8444
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _useCombobox2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/useCombobox */ \"./src/Picker/hooks/useCombobox.ts\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/ListItem.tsx\",\n _this = void 0;\nvar ListItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$role = props.role,\n role = _props$role === void 0 ? 'option' : _props$role,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'dropdown-menu-item' : _props$classPrefix,\n active = props.active,\n children = props.children,\n className = props.className,\n disabled = props.disabled,\n focus = props.focus,\n value = props.value,\n onKeyDown = props.onKeyDown,\n onSelect = props.onSelect,\n renderItem = props.renderItem,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"role\", \"classPrefix\", \"active\", \"children\", \"className\", \"disabled\", \"focus\", \"value\", \"onKeyDown\", \"onSelect\", \"renderItem\"]);\n var _useCombobox = (0, _useCombobox2.default)(),\n id = _useCombobox.id;\n var handleClick = (0, _utils.useEventCallback)(function (event) {\n event.preventDefault();\n if (!disabled) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, event);\n }\n });\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix;\n var classes = withClassPrefix({\n active: active,\n focus: focus,\n disabled: disabled\n });\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: role,\n \"aria-selected\": active,\n \"aria-disabled\": disabled,\n id: id ? id + \"-opt-\" + value : undefined,\n \"data-key\": value\n }, rest, {\n ref: ref,\n className: className,\n tabIndex: -1,\n onKeyDown: disabled ? null : onKeyDown,\n onClick: handleClick,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 50,\n columnNumber: 7\n }\n }), /*#__PURE__*/_react.default.createElement(\"span\", {\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 63,\n columnNumber: 9\n }\n }, renderItem ? renderItem(value) : children));\n});\nListItem.displayName = 'ListItem';\nvar _default = ListItem;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/ListItem.tsx?");
8434
8445
 
8435
8446
  /***/ }),
8436
8447
 
8437
- /***/ "./src/Picker/DropdownMenuGroup.tsx":
8438
- /*!******************************************!*\
8439
- !*** ./src/Picker/DropdownMenuGroup.tsx ***!
8440
- \******************************************/
8448
+ /***/ "./src/Picker/ListItemGroup.tsx":
8449
+ /*!**************************************!*\
8450
+ !*** ./src/Picker/ListItemGroup.tsx ***!
8451
+ \**************************************/
8441
8452
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8442
8453
 
8443
8454
  "use strict";
8444
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _ArrowDown = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/ArrowDown */ \"./node_modules/@rsuite/icons/legacy/ArrowDown.js\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/DropdownMenuGroup.tsx\",\n _this = void 0,\n _templateObject,\n _templateObject2;\nvar DropdownMenuGroup = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'dropdown-menu-group' : _props$classPrefix,\n children = props.children,\n className = props.className,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"children\", \"className\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var classes = merge(className, withClassPrefix());\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"group\"\n }, rest, {\n ref: ref,\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 22,\n columnNumber: 7\n }\n }), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"title\"]))),\n tabIndex: -1,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 23,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(\"span\", {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 24,\n columnNumber: 11\n }\n }, children), /*#__PURE__*/_react.default.createElement(_ArrowDown.default, {\n \"aria-hidden\": true,\n className: prefix(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)([\"caret\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 25,\n columnNumber: 11\n }\n })));\n});\nDropdownMenuGroup.displayName = 'DropdownMenuGroup';\nDropdownMenuGroup.propTypes = {\n classPrefix: _propTypes.default.string,\n className: _propTypes.default.string,\n children: _propTypes.default.node\n};\nvar _default = DropdownMenuGroup;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/DropdownMenuGroup.tsx?");
8455
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _ArrowDown = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/ArrowDown */ \"./node_modules/@rsuite/icons/legacy/ArrowDown.js\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/ListItemGroup.tsx\",\n _this = void 0,\n _templateObject,\n _templateObject2;\nvar ListItemGroup = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'dropdown-menu-group' : _props$classPrefix,\n children = props.children,\n className = props.className,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"children\", \"className\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var classes = merge(className, withClassPrefix());\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"group\"\n }, rest, {\n ref: ref,\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 21,\n columnNumber: 7\n }\n }), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"title\"]))),\n tabIndex: -1,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 22,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(\"span\", {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 23,\n columnNumber: 11\n }\n }, children), /*#__PURE__*/_react.default.createElement(_ArrowDown.default, {\n \"aria-hidden\": true,\n className: prefix(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)([\"caret\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 24,\n columnNumber: 11\n }\n })));\n});\nListItemGroup.displayName = 'ListItemGroup';\nvar _default = ListItemGroup;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/ListItemGroup.tsx?");
8445
8456
 
8446
8457
  /***/ }),
8447
8458
 
8448
- /***/ "./src/Picker/DropdownMenuItem.tsx":
8449
- /*!*****************************************!*\
8450
- !*** ./src/Picker/DropdownMenuItem.tsx ***!
8451
- \*****************************************/
8459
+ /***/ "./src/Picker/Listbox.tsx":
8460
+ /*!********************************!*\
8461
+ !*** ./src/Picker/Listbox.tsx ***!
8462
+ \********************************/
8452
8463
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8453
8464
 
8454
8465
  "use strict";
8455
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/DropdownMenuItem.tsx\",\n _this = void 0;\nvar DropdownMenuItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n active = props.active,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'dropdown-menu-item' : _props$classPrefix,\n children = props.children,\n className = props.className,\n disabled = props.disabled,\n focus = props.focus,\n value = props.value,\n onKeyDown = props.onKeyDown,\n onSelect = props.onSelect,\n renderItem = props.renderItem,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"active\", \"classPrefix\", \"children\", \"className\", \"disabled\", \"focus\", \"value\", \"onKeyDown\", \"onSelect\", \"renderItem\"]);\n var handleClick = (0, _react.useCallback)(function (event) {\n event.preventDefault();\n if (!disabled) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, event);\n }\n }, [onSelect, disabled, value]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix;\n var classes = withClassPrefix({\n active: active,\n focus: focus,\n disabled: disabled\n });\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"option\",\n \"aria-selected\": active,\n \"aria-disabled\": disabled,\n \"data-key\": value\n }, rest, {\n ref: ref,\n className: className,\n tabIndex: -1,\n onKeyDown: disabled ? null : onKeyDown,\n onClick: handleClick,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 48,\n columnNumber: 7\n }\n }), /*#__PURE__*/_react.default.createElement(\"span\", {\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 60,\n columnNumber: 9\n }\n }, renderItem ? renderItem(value) : children));\n});\nDropdownMenuItem.displayName = 'DropdownMenuItem';\nDropdownMenuItem.propTypes = {\n classPrefix: _propTypes.default.string,\n active: _propTypes.default.bool,\n disabled: _propTypes.default.bool,\n value: _propTypes.default.any,\n onSelect: _propTypes.default.func,\n onKeyDown: _propTypes.default.func,\n focus: _propTypes.default.bool,\n title: _propTypes.default.string,\n className: _propTypes.default.string,\n children: _propTypes.default.node,\n as: _propTypes.default.elementType\n};\nvar _default = DropdownMenuItem;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/DropdownMenuItem.tsx?");
8466
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _isString = _interopRequireDefault(__webpack_require__(/*! lodash/isString */ \"./node_modules/lodash/isString.js\"));\nvar _isNumber = _interopRequireDefault(__webpack_require__(/*! lodash/isNumber */ \"./node_modules/lodash/isNumber.js\"));\nvar _findIndex = _interopRequireDefault(__webpack_require__(/*! lodash/findIndex */ \"./node_modules/lodash/findIndex.js\"));\nvar _pickBy = _interopRequireDefault(__webpack_require__(/*! lodash/pickBy */ \"./node_modules/lodash/pickBy.js\"));\nvar _getPosition = _interopRequireDefault(__webpack_require__(/*! dom-lib/getPosition */ \"./node_modules/dom-lib/esm/getPosition.js\"));\nvar _scrollTop = _interopRequireDefault(__webpack_require__(/*! dom-lib/scrollTop */ \"./node_modules/dom-lib/esm/scrollTop.js\"));\nvar _getHeight = _interopRequireDefault(__webpack_require__(/*! dom-lib/getHeight */ \"./node_modules/dom-lib/esm/getHeight.js\"));\nvar _get = _interopRequireDefault(__webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\"));\nvar _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ \"./node_modules/classnames/index.js\"));\nvar _Windowing = __webpack_require__(/*! ../Windowing */ \"./src/Windowing/index.ts\");\nvar _shallowEqual = _interopRequireDefault(__webpack_require__(/*! ../utils/shallowEqual */ \"./src/utils/shallowEqual.ts\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _ListItemGroup = _interopRequireDefault(__webpack_require__(/*! ./ListItemGroup */ \"./src/Picker/ListItemGroup.tsx\"));\nvar _getDataGroupBy = __webpack_require__(/*! ../utils/getDataGroupBy */ \"./src/utils/getDataGroupBy.ts\");\nvar _useCombobox2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/useCombobox */ \"./src/Picker/hooks/useCombobox.ts\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/Listbox.tsx\",\n _this = void 0;\nvar Listbox = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$data = props.data,\n data = _props$data === void 0 ? [] : _props$data,\n group = props.group,\n groupBy = props.groupBy,\n _props$maxHeight = props.maxHeight,\n maxHeight = _props$maxHeight === void 0 ? 320 : _props$maxHeight,\n _props$activeItemValu = props.activeItemValues,\n activeItemValues = _props$activeItemValu === void 0 ? [] : _props$activeItemValu,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? [] : _props$disabledItemVa,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'dropdown-menu' : _props$classPrefix,\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 virtualized = props.virtualized,\n listProps = props.listProps,\n virtualizedListRef = props.listRef,\n className = props.className,\n style = props.style,\n focusItemValue = props.focusItemValue,\n listItemClassPrefix = props.listItemClassPrefix,\n ListItem = props.listItemAs,\n listItemProps = props.listItemProps,\n _props$rowHeight = props.rowHeight,\n rowHeight = _props$rowHeight === void 0 ? 36 : _props$rowHeight,\n _props$rowGroupHeight = props.rowGroupHeight,\n rowGroupHeight = _props$rowGroupHeight === void 0 ? 48 : _props$rowGroupHeight,\n renderMenuGroup = props.renderMenuGroup,\n renderMenuItem = props.renderMenuItem,\n onGroupTitleClick = props.onGroupTitleClick,\n onSelect = props.onSelect,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"data\", \"group\", \"groupBy\", \"maxHeight\", \"activeItemValues\", \"disabledItemValues\", \"classPrefix\", \"valueKey\", \"labelKey\", \"virtualized\", \"listProps\", \"listRef\", \"className\", \"style\", \"focusItemValue\", \"listItemClassPrefix\", \"listItemAs\", \"listItemProps\", \"rowHeight\", \"rowGroupHeight\", \"renderMenuGroup\", \"renderMenuItem\", \"onGroupTitleClick\", \"onSelect\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var classes = merge(className, withClassPrefix('items', {\n grouped: group\n }));\n var _useCombobox = (0, _useCombobox2.default)(),\n id = _useCombobox.id,\n labelId = _useCombobox.labelId,\n popupType = _useCombobox.popupType,\n multiple = _useCombobox.multiple;\n var menuBodyContainerRef = (0, _react.useRef)(null);\n var listRef = (0, _react.useRef)(null);\n var _useState = (0, _react.useState)([]),\n foldedGroupKeys = _useState[0],\n setFoldedGroupKeys = _useState[1];\n var handleGroupTitleClick = (0, _utils.useEventCallback)(function (key, event) {\n var nextGroupKeys = foldedGroupKeys.filter(function (item) {\n return item !== key;\n });\n if (nextGroupKeys.length === foldedGroupKeys.length) {\n nextGroupKeys.push(key);\n }\n setFoldedGroupKeys(nextGroupKeys);\n onGroupTitleClick === null || onGroupTitleClick === void 0 ? void 0 : onGroupTitleClick(event);\n });\n var handleSelect = (0, _utils.useEventCallback)(function (item, value, event, checked) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, item, event, checked);\n });\n var getRowHeight = function getRowHeight(list, index) {\n var item = list[index];\n if (group && item[_getDataGroupBy.KEY_GROUP] && index !== 0) {\n return rowGroupHeight;\n }\n return rowHeight;\n };\n (0, _react.useEffect)(function () {\n var container = menuBodyContainerRef.current;\n if (!container) {\n return;\n }\n var activeItem = container.querySelector(\".\" + prefix('item-focus'));\n if (!activeItem) {\n activeItem = container.querySelector(\".\" + prefix('item-active'));\n }\n if (!activeItem) {\n return;\n }\n var position = (0, _getPosition.default)(activeItem, container);\n var sTop = (0, _scrollTop.default)(container);\n var sHeight = (0, _getHeight.default)(container);\n if (sTop > position.top) {\n (0, _scrollTop.default)(container, Math.max(0, position.top - 20));\n } else if (position.top > sTop + sHeight) {\n (0, _scrollTop.default)(container, Math.max(0, position.top - sHeight + 32));\n }\n }, [focusItemValue, menuBodyContainerRef, prefix]);\n var filteredItems = group ? data.filter(function (item) {\n var _item$parent;\n // Display group title items\n if (item[_getDataGroupBy.KEY_GROUP]) return true;\n\n // Display items under the unfolded group\n // FIXME-Doma\n // `groupBy` is bound to be string when `group` is true\n // because `group` is actually redundant as a prop\n // It could simply be derived from `groupBy` value\n var groupValue = (0, _get.default)(item, groupBy, '') || ( // FIXME-Doma\n // Usage of `item.parent` is strongly discouraged\n // It's only here for legacy support\n // Remove once `item.parent` is completely removed across related components\n (_item$parent = item.parent) === null || _item$parent === void 0 ? void 0 : _item$parent[_getDataGroupBy.KEY_GROUP_TITLE]);\n return !foldedGroupKeys.includes(groupValue);\n }) : data;\n var rowCount = filteredItems.length;\n var renderItem = function renderItem(_ref) {\n var _ref$index = _ref.index,\n index = _ref$index === void 0 ? 0 : _ref$index,\n style = _ref.style,\n data = _ref.data,\n itemData = _ref.item;\n var item = itemData || data[index];\n var value = item[valueKey];\n var label = item[labelKey];\n if ((0, _isUndefined.default)(label) && !item[_getDataGroupBy.KEY_GROUP]) {\n throw Error(\"labelKey \\\"\" + labelKey + \"\\\" is not defined in \\\"data\\\" : \" + index);\n }\n\n // Use `value` in keys when If `value` is string or number\n var itemKey = (0, _isString.default)(value) || (0, _isNumber.default)(value) ? value : index;\n\n /**\n * Render <ListboxGroup>\n * when if `group` is enabled\n */\n if (group && item[_getDataGroupBy.KEY_GROUP]) {\n var groupValue = item[_getDataGroupBy.KEY_GROUP_TITLE];\n // TODO: grouped options should be owned by group\n return /*#__PURE__*/_react.default.createElement(_ListItemGroup.default, {\n style: style,\n classPrefix: 'picker-menu-group',\n className: (0, _classnames.default)({\n folded: foldedGroupKeys.some(function (key) {\n return key === groupValue;\n })\n }),\n key: \"group-\" + groupValue,\n onClick: handleGroupTitleClick.bind(null, groupValue),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 204,\n columnNumber: 11\n }\n }, renderMenuGroup ? renderMenuGroup(groupValue, item) : groupValue);\n } else if ((0, _isUndefined.default)(value) && !(0, _isUndefined.default)(item[_getDataGroupBy.KEY_GROUP])) {\n throw Error(\"valueKey \\\"\" + valueKey + \"\\\" is not defined in \\\"data\\\" : \" + index + \" \");\n }\n var disabled = disabledItemValues === null || disabledItemValues === void 0 ? void 0 : disabledItemValues.some(function (disabledValue) {\n return (0, _shallowEqual.default)(disabledValue, value);\n });\n var active = activeItemValues === null || activeItemValues === void 0 ? void 0 : activeItemValues.some(function (v) {\n return (0, _shallowEqual.default)(v, value);\n });\n var focus = !(0, _isUndefined.default)(focusItemValue) && (0, _shallowEqual.default)(focusItemValue, value);\n return /*#__PURE__*/_react.default.createElement(ListItem, (0, _extends2.default)({\n \"aria-posinset\": index + 1,\n \"aria-setsize\": rowCount,\n style: style,\n key: itemKey,\n disabled: disabled,\n active: active,\n focus: focus,\n value: value,\n classPrefix: listItemClassPrefix,\n onSelect: handleSelect.bind(null, item)\n }, (0, _pickBy.default)(listItemProps, function (v) {\n return v !== undefined;\n }), {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 227,\n columnNumber: 9\n }\n }), renderMenuItem ? renderMenuItem(label, item) : label);\n };\n (0, _utils.useMount)(function () {\n var _listRef$current, _listRef$current$scro;\n var itemIndex = (0, _findIndex.default)(filteredItems, function (item) {\n return item[valueKey] === (activeItemValues === null || activeItemValues === void 0 ? void 0 : activeItemValues[0]);\n });\n (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : (_listRef$current$scro = _listRef$current.scrollToItem) === null || _listRef$current$scro === void 0 ? void 0 : _listRef$current$scro.call(_listRef$current, itemIndex);\n });\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n role: \"listbox\",\n id: id + \"-\" + popupType,\n \"aria-labelledby\": labelId,\n \"aria-multiselectable\": multiple\n }, rest, {\n className: classes,\n ref: (0, _utils.mergeRefs)(menuBodyContainerRef, ref),\n style: (0, _extends2.default)({}, style, {\n maxHeight: maxHeight\n }),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 251,\n columnNumber: 7\n }\n }), virtualized ? /*#__PURE__*/_react.default.createElement(_Windowing.AutoSizer, {\n defaultHeight: maxHeight,\n style: {\n width: 'auto',\n height: 'auto'\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 262,\n columnNumber: 11\n }\n }, function (_ref2) {\n var height = _ref2.height;\n return /*#__PURE__*/_react.default.createElement(_Windowing.List, (0, _extends2.default)({\n as: _Windowing.VariableSizeList,\n ref: (0, _utils.mergeRefs)(listRef, virtualizedListRef),\n height: height || maxHeight,\n itemCount: rowCount,\n itemData: filteredItems,\n itemSize: getRowHeight.bind(_this, filteredItems)\n }, listProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 264,\n columnNumber: 15\n }\n }), renderItem);\n }) : filteredItems.map(function (item, index) {\n return renderItem({\n index: index,\n item: item\n });\n }));\n});\nListbox.displayName = 'Listbox';\nvar _default = Listbox;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/Listbox.tsx?");
8456
8467
 
8457
8468
  /***/ }),
8458
8469
 
8459
- /***/ "./src/Picker/PickerOverlay.tsx":
8460
- /*!**************************************!*\
8461
- !*** ./src/Picker/PickerOverlay.tsx ***!
8462
- \**************************************/
8470
+ /***/ "./src/Picker/PickerIndicator.tsx":
8471
+ /*!****************************************!*\
8472
+ !*** ./src/Picker/PickerIndicator.tsx ***!
8473
+ \****************************************/
8474
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8475
+
8476
+ "use strict";
8477
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _icons = __webpack_require__(/*! @rsuite/icons */ \"./node_modules/@rsuite/icons/es/index.js\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _InputGroup = _interopRequireDefault(__webpack_require__(/*! ../InputGroup */ \"./src/InputGroup/index.tsx\"));\nvar _CloseButton = _interopRequireDefault(__webpack_require__(/*! ../CloseButton */ \"./src/CloseButton/index.tsx\"));\nvar _Loader = _interopRequireDefault(__webpack_require__(/*! ../Loader */ \"./src/Loader/index.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/PickerIndicator.tsx\",\n _this = void 0;\nvar PickerIndicator = function PickerIndicator(_ref) {\n var loading = _ref.loading,\n caretAs = _ref.caretAs,\n onClose = _ref.onClose,\n showCleanButton = _ref.showCleanButton,\n _ref$as = _ref.as,\n Component = _ref$as === void 0 ? _InputGroup.default.Addon : _ref$as;\n var _useCustom = (0, _utils.useCustom)(),\n locale = _useCustom.locale;\n var _useClassNames = (0, _utils.useClassNames)('picker'),\n prefix = _useClassNames.prefix;\n var addon = function addon() {\n if (loading) {\n return /*#__PURE__*/_react.default.createElement(_Loader.default, {\n className: prefix('loader'),\n \"data-testid\": \"spinner\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 28,\n columnNumber: 14\n }\n });\n }\n if (showCleanButton) {\n return /*#__PURE__*/_react.default.createElement(_CloseButton.default, {\n className: prefix('clean'),\n tabIndex: -1,\n locale: {\n closeLabel: locale === null || locale === void 0 ? void 0 : locale.clear\n },\n onClick: onClose,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 32,\n columnNumber: 9\n }\n });\n }\n return caretAs && /*#__PURE__*/_react.default.createElement(_icons.Icon, {\n as: caretAs,\n className: prefix('caret-icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 40,\n columnNumber: 23\n }\n });\n };\n return /*#__PURE__*/_react.default.createElement(Component, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 43,\n columnNumber: 10\n }\n }, addon());\n};\nvar _default = PickerIndicator;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/PickerIndicator.tsx?");
8478
+
8479
+ /***/ }),
8480
+
8481
+ /***/ "./src/Picker/PickerLabel.tsx":
8482
+ /*!************************************!*\
8483
+ !*** ./src/Picker/PickerLabel.tsx ***!
8484
+ \************************************/
8463
8485
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8464
8486
 
8465
8487
  "use strict";
8466
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _addStyle = _interopRequireDefault(__webpack_require__(/*! dom-lib/addStyle */ \"./node_modules/dom-lib/esm/addStyle.js\"));\nvar _getWidth = _interopRequireDefault(__webpack_require__(/*! dom-lib/getWidth */ \"./node_modules/dom-lib/esm/getWidth.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/PickerOverlay.tsx\",\n _this = void 0;\nvar omitProps = ['placement', 'arrowOffsetLeft', 'arrowOffsetTop', 'positionLeft', 'positionTop', 'getPositionInstance', 'getToggleInstance', 'autoWidth'];\nvar resizePlacement = ['topStart', 'topEnd', 'leftEnd', 'rightEnd', 'auto', 'autoVerticalStart', 'autoVerticalEnd', 'autoHorizontalEnd'];\nvar PickerOverlay = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker-menu' : _props$classPrefix,\n autoWidth = props.autoWidth,\n className = props.className,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n target = props.target,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"autoWidth\", \"className\", \"placement\", \"target\"]);\n var overlayRef = (0, _react.useRef)(null);\n var handleResize = (0, _react.useCallback)(function () {\n var instance = target === null || target === void 0 ? void 0 : target.current;\n if (instance && resizePlacement.includes(placement)) {\n instance.updatePosition();\n }\n }, [target, placement]);\n (0, _utils.useElementResize)((0, _react.useCallback)(function () {\n return overlayRef.current;\n }, []), handleResize);\n (0, _react.useEffect)(function () {\n var toggle = target === null || target === void 0 ? void 0 : target.current;\n if (autoWidth && toggle !== null && toggle !== void 0 && toggle.root) {\n // Get the width value of the button,\n // and then set it to the menu to make their width consistent.\n var width = (0, _getWidth.default)((0, _utils.getDOMNode)(toggle.root));\n if (overlayRef.current) {\n (0, _addStyle.default)(overlayRef.current, 'min-width', width + \"px\");\n }\n }\n }, [autoWidth, target, overlayRef]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge;\n var classes = merge(className, withClassPrefix());\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, (0, _omit.default)(rest, omitProps), {\n ref: (0, _utils.mergeRefs)(overlayRef, ref),\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 82,\n columnNumber: 7\n }\n }));\n});\nPickerOverlay.displayName = 'PickerOverlay';\nvar _default = PickerOverlay;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/PickerOverlay.tsx?");
8488
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _InputGroup = _interopRequireDefault(__webpack_require__(/*! ../InputGroup */ \"./src/InputGroup/index.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/PickerLabel.tsx\",\n _this = void 0;\nvar PickerLabel = function PickerLabel(_ref) {\n var children = _ref.children,\n className = _ref.className,\n _ref$as = _ref.as,\n Component = _ref$as === void 0 ? _InputGroup.default.Addon : _ref$as,\n rest = (0, _objectWithoutPropertiesLoose2.default)(_ref, [\"children\", \"className\", \"as\"]);\n return children ? /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n \"data-testid\": \"picker-label\",\n className: className\n }, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 18,\n columnNumber: 5\n }\n }), children) : null;\n};\nvar _default = PickerLabel;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/PickerLabel.tsx?");
8489
+
8490
+ /***/ }),
8491
+
8492
+ /***/ "./src/Picker/PickerPopup.tsx":
8493
+ /*!************************************!*\
8494
+ !*** ./src/Picker/PickerPopup.tsx ***!
8495
+ \************************************/
8496
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8497
+
8498
+ "use strict";
8499
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _addStyle = _interopRequireDefault(__webpack_require__(/*! dom-lib/addStyle */ \"./node_modules/dom-lib/esm/addStyle.js\"));\nvar _getWidth = _interopRequireDefault(__webpack_require__(/*! dom-lib/getWidth */ \"./node_modules/dom-lib/esm/getWidth.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/PickerPopup.tsx\",\n _this = void 0;\nvar omitProps = ['placement', 'arrowOffsetLeft', 'arrowOffsetTop', 'positionLeft', 'positionTop', 'getPositionInstance', 'getToggleInstance', 'autoWidth'];\nvar resizePlacement = ['topStart', 'topEnd', 'leftEnd', 'rightEnd', 'auto', 'autoVerticalStart', 'autoVerticalEnd', 'autoHorizontalEnd'];\nvar PickerPopup = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker-popup' : _props$classPrefix,\n autoWidth = props.autoWidth,\n className = props.className,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n target = props.target,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"autoWidth\", \"className\", \"placement\", \"target\"]);\n var overlayRef = (0, _react.useRef)(null);\n var handleResize = (0, _utils.useEventCallback)(function () {\n var instance = target === null || target === void 0 ? void 0 : target.current;\n if (instance && resizePlacement.includes(placement)) {\n instance.updatePosition();\n }\n });\n (0, _utils.useElementResize)((0, _react.useCallback)(function () {\n return overlayRef.current;\n }, []), handleResize);\n (0, _react.useEffect)(function () {\n var toggle = target === null || target === void 0 ? void 0 : target.current;\n if (autoWidth && toggle !== null && toggle !== void 0 && toggle.root) {\n // Get the width value of the button,\n // and then set it to the menu to make their width consistent.\n var width = (0, _getWidth.default)((0, _utils.getDOMNode)(toggle.root));\n if (overlayRef.current) {\n (0, _addStyle.default)(overlayRef.current, 'min-width', width + \"px\");\n }\n }\n }, [autoWidth, target, overlayRef]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge;\n var classes = merge(className, withClassPrefix());\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n \"data-testid\": \"picker-popup\"\n }, (0, _omit.default)(rest, omitProps), {\n ref: (0, _utils.mergeRefs)(overlayRef, ref),\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 82,\n columnNumber: 7\n }\n }));\n});\nPickerPopup.displayName = 'PickerPopup';\nvar _default = PickerPopup;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/PickerPopup.tsx?");
8467
8500
 
8468
8501
  /***/ }),
8469
8502
 
@@ -8474,7 +8507,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
8474
8507
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8475
8508
 
8476
8509
  "use strict";
8477
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _debounce = _interopRequireDefault(__webpack_require__(/*! lodash/debounce */ \"./node_modules/lodash/debounce.js\"));\nvar _ToggleButton = _interopRequireDefault(__webpack_require__(/*! ./ToggleButton */ \"./src/Picker/ToggleButton.tsx\"));\nvar _CloseButton = _interopRequireDefault(__webpack_require__(/*! ../CloseButton */ \"./src/CloseButton/index.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Plaintext = _interopRequireDefault(__webpack_require__(/*! ../Plaintext */ \"./src/Plaintext/index.tsx\"));\nvar _useToggleCaret = _interopRequireDefault(__webpack_require__(/*! ../utils/useToggleCaret */ \"./src/utils/useToggleCaret.tsx\"));\nvar _TextMask = _interopRequireDefault(__webpack_require__(/*! ../MaskedInput/TextMask */ \"./src/MaskedInput/TextMask.tsx\"));\nvar _deprecatePropType = _interopRequireDefault(__webpack_require__(/*! ../utils/deprecatePropType */ \"./src/utils/deprecatePropType.ts\"));\nvar _Loader = _interopRequireDefault(__webpack_require__(/*! ../Loader */ \"./src/Loader/index.tsx\"));\nvar _Stack = _interopRequireDefault(__webpack_require__(/*! ../Stack */ \"./src/Stack/index.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/PickerToggle.tsx\",\n _this = void 0,\n _templateObject,\n _templateObject2;\nvar defaultInputMask = [];\nvar PickerToggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var activeProp = props.active,\n _props$as = props.as,\n Component = _props$as === void 0 ? _ToggleButton.default : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker-toggle' : _props$classPrefix,\n children = props.children,\n _props$caret = props.caret,\n caret = _props$caret === void 0 ? true : _props$caret,\n className = props.className,\n disabled = props.disabled,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n hasValue = props.hasValue,\n editable = props.editable,\n _props$loading = props.loading,\n loading = _props$loading === void 0 ? false : _props$loading,\n cleanableProp = props.cleanable,\n _props$tabIndex = props.tabIndex,\n tabIndexProp = _props$tabIndex === void 0 ? editable ? -1 : 0 : _props$tabIndex,\n id = props.id,\n value = props.value,\n inputPlaceholder = props.inputPlaceholder,\n inputValueProp = props.inputValue,\n _props$inputMask = props.inputMask,\n inputMask = _props$inputMask === void 0 ? defaultInputMask : _props$inputMask,\n onInputChange = props.onInputChange,\n onInputPressEnter = props.onInputPressEnter,\n onInputBackspace = props.onInputBackspace,\n onInputBlur = props.onInputBlur,\n onInputFocus = props.onInputFocus,\n onClean = props.onClean,\n onFocus = props.onFocus,\n onBlur = props.onBlur,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n caretComponent = props.caretComponent,\n _props$caretAs = props.caretAs,\n caretAs = _props$caretAs === void 0 ? caretComponent : _props$caretAs,\n label = props.label,\n name = props.name,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"active\", \"as\", \"classPrefix\", \"children\", \"caret\", \"className\", \"disabled\", \"readOnly\", \"plaintext\", \"hasValue\", \"editable\", \"loading\", \"cleanable\", \"tabIndex\", \"id\", \"value\", \"inputPlaceholder\", \"inputValue\", \"inputMask\", \"onInputChange\", \"onInputPressEnter\", \"onInputBackspace\", \"onInputBlur\", \"onInputFocus\", \"onClean\", \"onFocus\", \"onBlur\", \"placement\", \"caretComponent\", \"caretAs\", \"label\", \"name\"]);\n var _useCustom = (0, _utils.useCustom)(),\n locale = _useCustom.locale;\n var inputRef = (0, _react.useRef)(null);\n var comboboxRef = (0, _react.useRef)(null);\n var _useState = (0, _react.useState)(false),\n activeState = _useState[0],\n setActive = _useState[1];\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var getInputValue = (0, _react.useCallback)(function () {\n return typeof inputValueProp === 'undefined' ? Array.isArray(value) ? value.join(',') : value : inputValueProp;\n }, [inputValueProp, value]);\n var _useState2 = (0, _react.useState)(getInputValue),\n inputValue = _useState2[0],\n setInputValue = _useState2[1];\n (0, _react.useEffect)(function () {\n if (comboboxRef.current) {\n var _value = getInputValue();\n setInputValue(_value);\n }\n }, [getInputValue]);\n var classes = merge(className, withClassPrefix({\n active: activeProp || activeState\n }));\n var handleFocus = (0, _react.useCallback)(function (event) {\n if (!loading) {\n setActive(true);\n }\n if (editable) {\n // Avoid firing the onFocus event twice when DatePicker and DateRangePicker allow keyboard input.\n if (event.target === inputRef.current) {\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(event);\n }\n\n // Force the input to be focused and editable.\n if (document.activeElement === comboboxRef.current) {\n var _inputRef$current;\n (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();\n }\n } else {\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(event);\n }\n }, [editable, loading, onFocus]);\n var handleBlur = (0, _react.useCallback)(function (event) {\n if (inputRef.current && !editable) {\n setActive(false);\n }\n\n // When activeElement is an input, it remains active.\n if (editable && inputRef.current && document.activeElement !== inputRef.current) {\n setActive(false);\n }\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(event);\n }, [editable, onBlur]);\n var handleInputBlur = function handleInputBlur(event) {\n setInputValue(getInputValue());\n onInputBlur === null || onInputBlur === void 0 ? void 0 : onInputBlur(event);\n };\n var handleClean = (0, _react.useCallback)(function (event) {\n var _inputRef$current2, _comboboxRef$current;\n event.stopPropagation();\n onClean === null || onClean === void 0 ? void 0 : onClean(event);\n\n // When the value is cleared, the current component is still in focus.\n editable ? (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.focus() : (_comboboxRef$current = comboboxRef.current) === null || _comboboxRef$current === void 0 ? void 0 : _comboboxRef$current.focus();\n }, [editable, onClean]);\n var handleInputChange = (0, _react.useCallback)(function (event) {\n var _event$target;\n var value = (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.value;\n setInputValue(value);\n onInputChange === null || onInputChange === void 0 ? void 0 : onInputChange(value, event);\n }, [onInputChange]);\n var handleInputKeyDown = (0, _react.useCallback)(function (event) {\n if (editable) {\n if (event.key === _utils.KEY_VALUES.ENTER) {\n onInputPressEnter === null || onInputPressEnter === void 0 ? void 0 : onInputPressEnter(event);\n }\n if (event.key === _utils.KEY_VALUES.BACKSPACE) {\n onInputBackspace === null || onInputBackspace === void 0 ? void 0 : onInputBackspace(event);\n }\n }\n }, [editable, onInputPressEnter, onInputBackspace]);\n var renderInput = (0, _react.useCallback)(function (ref, props) {\n return /*#__PURE__*/_react.default.createElement(\"input\", (0, _extends2.default)({\n type: \"text\",\n autoComplete: \"off\",\n ref: (0, _utils.mergeRefs)(inputRef, ref),\n name: name,\n style: {\n pointerEvents: editable ? undefined : 'none'\n }\n }, props, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 203,\n columnNumber: 9\n }\n }));\n }, [editable, name]);\n var ToggleCaret = (0, _useToggleCaret.default)(placement);\n var Caret = caretAs !== null && caretAs !== void 0 ? caretAs : ToggleCaret;\n if (plaintext) {\n return /*#__PURE__*/_react.default.createElement(_Plaintext.default, {\n ref: ref,\n localeKey: \"notSelected\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 220,\n columnNumber: 9\n }\n }, hasValue ? children : null);\n }\n var showCleanButton = cleanableProp && hasValue && !readOnly;\n\n // When the component is read-only or disabled, the input is not interactive.\n var inputFocused = readOnly || disabled ? false : editable && activeState;\n var tabIndex = disabled ? undefined : tabIndexProp;\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"combobox\",\n \"aria-haspopup\": \"listbox\",\n \"aria-expanded\": activeProp,\n \"aria-disabled\": disabled,\n \"aria-owns\": id ? id + \"-listbox\" : undefined\n }, rest, {\n ref: (0, _utils.mergeRefs)(comboboxRef, ref),\n disabled: disabled,\n tabIndex: tabIndex,\n className: classes,\n onFocus: !disabled ? handleFocus : null\n // The debounce is set to 200 to solve the flicker caused by the switch between input and div.\n ,\n onBlur: !disabled ? (0, _debounce.default)(handleBlur, 200) : null,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 234,\n columnNumber: 7\n }\n }), /*#__PURE__*/_react.default.createElement(_Stack.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 249,\n columnNumber: 9\n }\n }, label && /*#__PURE__*/_react.default.createElement(_Stack.default.Item, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 251,\n columnNumber: 13\n }\n }, /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix('label'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 252,\n columnNumber: 15\n }\n }, label)), /*#__PURE__*/_react.default.createElement(_Stack.default.Item, {\n grow: 1,\n style: {\n overflow: 'hidden'\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 255,\n columnNumber: 11\n }\n }, loading ? /*#__PURE__*/_react.default.createElement(_Loader.default, {\n style: {\n display: 'block',\n padding: '1px 0'\n },\n \"data-testid\": \"spinner\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 257,\n columnNumber: 15\n }\n }) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_TextMask.default, {\n keepCharPositions: true,\n mask: inputMask,\n value: Array.isArray(inputValue) ? inputValue.toString() : inputValue,\n onBlur: handleInputBlur,\n onFocus: onInputFocus,\n onChange: handleInputChange,\n onKeyDown: handleInputKeyDown,\n id: id,\n \"aria-hidden\": !inputFocused,\n readOnly: !inputFocused,\n disabled: disabled,\n \"aria-controls\": id ? id + \"-listbox\" : undefined,\n tabIndex: editable ? 0 : -1,\n className: prefix('textbox', {\n 'read-only': !inputFocused\n }),\n placeholder: inputPlaceholder,\n render: renderInput,\n \"data-testid\": \"picker-toggle-input\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 260,\n columnNumber: 17\n }\n }), children ? /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix(hasValue ? 'value' : 'placeholder'),\n \"aria-placeholder\": typeof children === 'string' ? children : undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 280,\n columnNumber: 19\n }\n }, children) : null)), showCleanButton && /*#__PURE__*/_react.default.createElement(_CloseButton.default, {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"clean\"]))),\n tabIndex: -1,\n locale: {\n closeLabel: locale === null || locale === void 0 ? void 0 : locale.clear\n },\n onClick: handleClean,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 291,\n columnNumber: 13\n }\n }), caret && !showCleanButton && /*#__PURE__*/_react.default.createElement(Caret, {\n className: prefix(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)([\"caret\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 298,\n columnNumber: 41\n }\n })));\n});\nPickerToggle.displayName = 'PickerToggle';\nPickerToggle.propTypes = {\n classPrefix: _propTypes.default.string,\n hasValue: _propTypes.default.bool,\n cleanable: _propTypes.default.bool,\n className: _propTypes.default.string,\n children: _propTypes.default.node,\n caret: _propTypes.default.bool,\n as: _propTypes.default.elementType,\n onClean: _propTypes.default.func,\n active: _propTypes.default.bool,\n readOnly: _propTypes.default.bool,\n disabled: _propTypes.default.bool,\n plaintext: _propTypes.default.bool,\n caretComponent: (0, _deprecatePropType.default)(_propTypes.default.elementType, 'Use `caretAs` instead.'),\n caretAs: _propTypes.default.elementType\n};\nvar _default = PickerToggle;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/PickerToggle.tsx?");
8510
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _ToggleButton = _interopRequireDefault(__webpack_require__(/*! ./ToggleButton */ \"./src/Picker/ToggleButton.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Plaintext = _interopRequireDefault(__webpack_require__(/*! ../Plaintext */ \"./src/Plaintext/index.tsx\"));\nvar _useToggleCaret = _interopRequireDefault(__webpack_require__(/*! ../utils/useToggleCaret */ \"./src/utils/useToggleCaret.tsx\"));\nvar _Stack = _interopRequireDefault(__webpack_require__(/*! ../Stack */ \"./src/Stack/index.tsx\"));\nvar _PickerIndicator = _interopRequireDefault(__webpack_require__(/*! ./PickerIndicator */ \"./src/Picker/PickerIndicator.tsx\"));\nvar _PickerLabel = _interopRequireDefault(__webpack_require__(/*! ./PickerLabel */ \"./src/Picker/PickerLabel.tsx\"));\nvar _useCombobox2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/useCombobox */ \"./src/Picker/hooks/useCombobox.ts\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/PickerToggle.tsx\",\n _this = void 0,\n _templateObject;\nvar PickerToggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var active = props.active,\n _props$as = props.as,\n Component = _props$as === void 0 ? _ToggleButton.default : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker-toggle' : _props$classPrefix,\n children = props.children,\n _props$caret = props.caret,\n caret = _props$caret === void 0 ? true : _props$caret,\n className = props.className,\n disabled = props.disabled,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n hasValue = props.hasValue,\n _props$loading = props.loading,\n loading = _props$loading === void 0 ? false : _props$loading,\n cleanable = props.cleanable,\n _props$tabIndex = props.tabIndex,\n tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,\n inputValueProp = props.inputValue,\n focusItemValue = props.focusItemValue,\n onClean = props.onClean,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n caretComponent = props.caretComponent,\n _props$caretAs = props.caretAs,\n caretAs = _props$caretAs === void 0 ? caretComponent : _props$caretAs,\n label = props.label,\n name = props.name,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"active\", \"as\", \"classPrefix\", \"children\", \"caret\", \"className\", \"disabled\", \"readOnly\", \"plaintext\", \"hasValue\", \"loading\", \"cleanable\", \"tabIndex\", \"inputValue\", \"focusItemValue\", \"onClean\", \"placement\", \"caretComponent\", \"caretAs\", \"label\", \"name\"]);\n var combobox = (0, _react.useRef)(null);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var _useCombobox = (0, _useCombobox2.default)(),\n id = _useCombobox.id,\n labelId = _useCombobox.labelId,\n popupType = _useCombobox.popupType;\n var inputValue = (0, _react.useMemo)(function () {\n if (typeof inputValueProp === 'number' || typeof inputValueProp === 'string') {\n return inputValueProp;\n } else if (Array.isArray(inputValueProp)) {\n return inputValueProp.join(',');\n }\n return '';\n }, [inputValueProp]);\n var classes = merge(className, withClassPrefix({\n active: active\n }));\n var handleClean = (0, _utils.useEventCallback)(function (event) {\n var _combobox$current;\n event.stopPropagation();\n onClean === null || onClean === void 0 ? void 0 : onClean(event);\n (_combobox$current = combobox.current) === null || _combobox$current === void 0 ? void 0 : _combobox$current.focus();\n });\n var ToggleCaret = (0, _useToggleCaret.default)(placement);\n var Caret = caretAs !== null && caretAs !== void 0 ? caretAs : ToggleCaret;\n if (plaintext) {\n return /*#__PURE__*/_react.default.createElement(_Plaintext.default, {\n ref: ref,\n localeKey: \"notSelected\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 99,\n columnNumber: 9\n }\n }, hasValue ? children : null);\n }\n var showCleanButton = cleanable && hasValue && !readOnly;\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"combobox\",\n id: id,\n \"aria-haspopup\": popupType,\n \"aria-expanded\": active,\n \"aria-disabled\": disabled,\n \"aria-controls\": id + \"-\" + popupType,\n \"aria-labelledby\": labelId,\n \"aria-describedby\": id + \"-describe\",\n \"aria-activedescendant\": active && focusItemValue ? id + \"-opt-\" + focusItemValue : undefined\n }, rest, {\n ref: (0, _utils.mergeRefs)(combobox, ref),\n disabled: disabled,\n tabIndex: disabled ? undefined : tabIndex,\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 108,\n columnNumber: 7\n }\n }), /*#__PURE__*/_react.default.createElement(_Stack.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 124,\n columnNumber: 9\n }\n }, label && /*#__PURE__*/_react.default.createElement(_Stack.default.Item, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 126,\n columnNumber: 13\n }\n }, /*#__PURE__*/_react.default.createElement(_PickerLabel.default, {\n as: \"span\",\n className: prefix('label'),\n id: labelId,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 127,\n columnNumber: 15\n }\n }, label)), /*#__PURE__*/_react.default.createElement(_Stack.default.Item, {\n grow: 1,\n style: {\n overflow: 'hidden'\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 132,\n columnNumber: 11\n }\n }, /*#__PURE__*/_react.default.createElement(\"input\", {\n readOnly: true,\n \"aria-hidden\": true,\n tabIndex: -1,\n \"data-testid\": \"picker-toggle-input\",\n name: name,\n value: inputValue,\n className: prefix('textbox', 'read-only'),\n style: {\n pointerEvents: 'none'\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 133,\n columnNumber: 13\n }\n }), children ? /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix(hasValue ? 'value' : 'placeholder'),\n id: id + \"-describe\",\n \"data-testid\": \"picker-describe\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 144,\n columnNumber: 15\n }\n }, children) : null), /*#__PURE__*/_react.default.createElement(_Stack.default.Item, {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"indicator\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 153,\n columnNumber: 11\n }\n }, /*#__PURE__*/_react.default.createElement(_PickerIndicator.default, {\n as: _react.default.Fragment,\n loading: loading,\n caretAs: caret ? Caret : null,\n onClose: handleClean,\n showCleanButton: showCleanButton,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 154,\n columnNumber: 13\n }\n }))));\n});\nPickerToggle.displayName = 'PickerToggle';\nvar _default = PickerToggle;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/PickerToggle.tsx?");
8478
8511
 
8479
8512
  /***/ }),
8480
8513
 
@@ -8485,7 +8518,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
8485
8518
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8486
8519
 
8487
8520
  "use strict";
8488
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = exports.pickTriggerPropKeys = exports.omitTriggerPropKeys = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _OverlayTrigger = _interopRequireDefault(__webpack_require__(/*! ../Overlay/OverlayTrigger */ \"./src/Overlay/OverlayTrigger.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/PickerToggleTrigger.tsx\",\n _this = void 0;\nvar omitTriggerPropKeys = ['onEntered', 'onExited', 'onEnter', 'onEntering', 'onExit', 'onExiting', 'open', 'defaultOpen', 'container', 'containerPadding', 'preventOverflow'];\nexports.omitTriggerPropKeys = omitTriggerPropKeys;\nvar pickTriggerPropKeys = [].concat(omitTriggerPropKeys, ['disabled', 'plaintext', 'readOnly', 'loading']);\nexports.pickTriggerPropKeys = pickTriggerPropKeys;\nvar PickerToggleTrigger = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var pickerProps = props.pickerProps,\n speaker = props.speaker,\n placement = props.placement,\n _props$trigger = props.trigger,\n trigger = _props$trigger === void 0 ? 'click' : _props$trigger,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"pickerProps\", \"speaker\", \"placement\", \"trigger\"]);\n var pickerTriggerProps = (0, _pick.default)(pickerProps, pickTriggerPropKeys);\n var _useCustom = (0, _utils.useCustom)(),\n rtl = _useCustom.rtl;\n return /*#__PURE__*/_react.default.createElement(_OverlayTrigger.default, (0, _extends2.default)({}, pickerTriggerProps, rest, {\n disabled: pickerTriggerProps.disabled || pickerTriggerProps.loading,\n ref: ref,\n trigger: trigger,\n placement: (0, _utils.placementPolyfill)(placement, rtl),\n speaker: speaker,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 54,\n columnNumber: 7\n }\n }));\n});\nPickerToggleTrigger.displayName = 'PickerToggleTrigger';\nvar _default = PickerToggleTrigger;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/PickerToggleTrigger.tsx?");
8521
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = exports.ComboboxContextContext = exports.pickTriggerPropKeys = exports.omitTriggerPropKeys = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _OverlayTrigger = _interopRequireDefault(__webpack_require__(/*! ../Overlay/OverlayTrigger */ \"./src/Overlay/OverlayTrigger.tsx\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/PickerToggleTrigger.tsx\",\n _this = void 0;\nvar omitTriggerPropKeys = ['onEntered', 'onExited', 'onEnter', 'onEntering', 'onExit', 'onExiting', 'open', 'defaultOpen', 'container', 'containerPadding', 'preventOverflow'];\nexports.omitTriggerPropKeys = omitTriggerPropKeys;\nvar pickTriggerPropKeys = [].concat(omitTriggerPropKeys, ['disabled', 'plaintext', 'readOnly', 'loading', 'label']);\nexports.pickTriggerPropKeys = pickTriggerPropKeys;\nvar ComboboxContextContext = /*#__PURE__*/_react.default.createContext({\n popupType: 'listbox'\n});\nexports.ComboboxContextContext = ComboboxContextContext;\nvar PickerToggleTrigger = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var pickerProps = props.pickerProps,\n speaker = props.speaker,\n placement = props.placement,\n _props$trigger = props.trigger,\n trigger = _props$trigger === void 0 ? 'click' : _props$trigger,\n id = props.id,\n multiple = props.multiple,\n _props$popupType = props.popupType,\n popupType = _props$popupType === void 0 ? 'listbox' : _props$popupType,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"pickerProps\", \"speaker\", \"placement\", \"trigger\", \"id\", \"multiple\", \"popupType\"]);\n var pickerTriggerProps = (0, _pick.default)(pickerProps, pickTriggerPropKeys);\n var pickerId = (0, _utils.useUniqueId)('rs-', id);\n var _useCustom = (0, _utils.useCustom)(),\n rtl = _useCustom.rtl;\n return /*#__PURE__*/_react.default.createElement(ComboboxContextContext.Provider, {\n value: {\n id: pickerId,\n hasLabel: typeof pickerTriggerProps.label !== 'undefined',\n multiple: multiple,\n popupType: popupType\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 83,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_OverlayTrigger.default, (0, _extends2.default)({}, pickerTriggerProps, rest, {\n disabled: pickerTriggerProps.disabled || pickerTriggerProps.loading,\n ref: ref,\n trigger: trigger,\n placement: (0, _utils.placementPolyfill)(placement, rtl),\n speaker: speaker,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 91,\n columnNumber: 9\n }\n })));\n});\nPickerToggleTrigger.displayName = 'PickerToggleTrigger';\nvar _default = PickerToggleTrigger;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/PickerToggleTrigger.tsx?");
8489
8522
 
8490
8523
  /***/ }),
8491
8524
 
@@ -8496,7 +8529,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
8496
8529
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8497
8530
 
8498
8531
  "use strict";
8499
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _get = _interopRequireDefault(__webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _Search = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Search */ \"./node_modules/@rsuite/icons/legacy/Search.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/SearchBar.tsx\",\n _this = void 0;\nvar SearchBar = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker-search-bar' : _props$classPrefix,\n value = props.value,\n children = props.children,\n className = props.className,\n placeholder = props.placeholder,\n inputRef = props.inputRef,\n onChange = props.onChange,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"value\", \"children\", \"className\", \"placeholder\", \"inputRef\", \"onChange\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var classes = merge(className, withClassPrefix());\n var handleChange = (0, _react.useCallback)(function (event) {\n onChange === null || onChange === void 0 ? void 0 : onChange((0, _get.default)(event, 'target.value'), event);\n }, [onChange]);\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"searchbox\"\n }, rest, {\n ref: ref,\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 39,\n columnNumber: 7\n }\n }), /*#__PURE__*/_react.default.createElement(\"input\", {\n className: prefix('input'),\n value: value,\n onChange: handleChange,\n placeholder: placeholder,\n ref: inputRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 40,\n columnNumber: 9\n }\n }), /*#__PURE__*/_react.default.createElement(_Search.default, {\n className: prefix('search-icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 47,\n columnNumber: 9\n }\n }), children);\n});\nSearchBar.displayName = 'SearchBar';\nSearchBar.propTypes = {\n as: _propTypes.default.elementType,\n classPrefix: _propTypes.default.string,\n value: _propTypes.default.string,\n placeholder: _propTypes.default.string,\n className: _propTypes.default.string,\n children: _propTypes.default.node,\n onChange: _propTypes.default.func\n};\nvar _default = SearchBar;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/SearchBar.tsx?");
8532
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _Search = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Search */ \"./node_modules/@rsuite/icons/legacy/Search.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/SearchBar.tsx\",\n _this = void 0;\nvar SearchBar = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker-search-bar' : _props$classPrefix,\n value = props.value,\n children = props.children,\n className = props.className,\n placeholder = props.placeholder,\n inputRef = props.inputRef,\n onChange = props.onChange,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"value\", \"children\", \"className\", \"placeholder\", \"inputRef\", \"onChange\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n var classes = merge(className, withClassPrefix());\n var handleChange = (0, _utils.useEventCallback)(function (event) {\n var _event$target;\n onChange === null || onChange === void 0 ? void 0 : onChange((_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.value, event);\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: 35,\n columnNumber: 7\n }\n }), /*#__PURE__*/_react.default.createElement(\"input\", {\n role: \"searchbox\",\n className: prefix('input'),\n value: value,\n onChange: handleChange,\n placeholder: placeholder,\n ref: inputRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 36,\n columnNumber: 9\n }\n }), /*#__PURE__*/_react.default.createElement(_Search.default, {\n className: prefix('search-icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 44,\n columnNumber: 9\n }\n }), children);\n});\nSearchBar.displayName = 'SearchBar';\nSearchBar.propTypes = {\n as: _propTypes.default.elementType,\n classPrefix: _propTypes.default.string,\n value: _propTypes.default.string,\n placeholder: _propTypes.default.string,\n className: _propTypes.default.string,\n children: _propTypes.default.node,\n onChange: _propTypes.default.func\n};\nvar _default = SearchBar;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/SearchBar.tsx?");
8500
8533
 
8501
8534
  /***/ }),
8502
8535
 
@@ -8522,6 +8555,94 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
8522
8555
 
8523
8556
  /***/ }),
8524
8557
 
8558
+ /***/ "./src/Picker/TreeView.tsx":
8559
+ /*!*********************************!*\
8560
+ !*** ./src/Picker/TreeView.tsx ***!
8561
+ \*********************************/
8562
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8563
+
8564
+ "use strict";
8565
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _useCombobox2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/useCombobox */ \"./src/Picker/hooks/useCombobox.ts\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/TreeView.tsx\",\n _this = void 0;\nvar TreeView = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var children = props.children,\n treeRootClassName = props.treeRootClassName,\n multiselectable = props.multiselectable,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"children\", \"treeRootClassName\", \"multiselectable\"]);\n var _useCombobox = (0, _useCombobox2.default)(),\n id = _useCombobox.id,\n labelId = _useCombobox.labelId,\n popupType = _useCombobox.popupType;\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n role: \"tree\",\n id: id + \"-\" + popupType,\n \"aria-multiselectable\": multiselectable,\n \"aria-labelledby\": labelId,\n ref: ref\n }, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 14,\n columnNumber: 5\n }\n }), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: treeRootClassName,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 22,\n columnNumber: 7\n }\n }, children));\n});\nvar _default = TreeView;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/TreeView.tsx?");
8566
+
8567
+ /***/ }),
8568
+
8569
+ /***/ "./src/Picker/hooks/index.ts":
8570
+ /*!***********************************!*\
8571
+ !*** ./src/Picker/hooks/index.ts ***!
8572
+ \***********************************/
8573
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8574
+
8575
+ "use strict";
8576
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports.usePickerClassName = exports.useSearch = exports.useToggleKeyDownEvent = exports.useFocusItemValue = exports.useCombobox = exports.usePickerRef = void 0;\nvar _usePickerRef = _interopRequireDefault(__webpack_require__(/*! ./usePickerRef */ \"./src/Picker/hooks/usePickerRef.ts\"));\nexports.usePickerRef = _usePickerRef.default;\nvar _useCombobox = _interopRequireDefault(__webpack_require__(/*! ./useCombobox */ \"./src/Picker/hooks/useCombobox.ts\"));\nexports.useCombobox = _useCombobox.default;\nvar _useFocusItemValue = _interopRequireDefault(__webpack_require__(/*! ./useFocusItemValue */ \"./src/Picker/hooks/useFocusItemValue.ts\"));\nexports.useFocusItemValue = _useFocusItemValue.default;\nvar _useToggleKeyDownEvent = _interopRequireDefault(__webpack_require__(/*! ./useToggleKeyDownEvent */ \"./src/Picker/hooks/useToggleKeyDownEvent.ts\"));\nexports.useToggleKeyDownEvent = _useToggleKeyDownEvent.default;\nvar _useSearch = _interopRequireDefault(__webpack_require__(/*! ./useSearch */ \"./src/Picker/hooks/useSearch.ts\"));\nexports.useSearch = _useSearch.default;\nvar _usePickerClassName = _interopRequireDefault(__webpack_require__(/*! ./usePickerClassName */ \"./src/Picker/hooks/usePickerClassName.ts\"));\nexports.usePickerClassName = _usePickerClassName.default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/hooks/index.ts?");
8577
+
8578
+ /***/ }),
8579
+
8580
+ /***/ "./src/Picker/hooks/useCombobox.ts":
8581
+ /*!*****************************************!*\
8582
+ !*** ./src/Picker/hooks/useCombobox.ts ***!
8583
+ \*****************************************/
8584
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8585
+
8586
+ "use strict";
8587
+ eval("\n\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _react = __webpack_require__(/*! react */ \"react\");\nvar _PickerToggleTrigger = __webpack_require__(/*! ../PickerToggleTrigger */ \"./src/Picker/PickerToggleTrigger.tsx\");\nfunction useCombobox() {\n var _useContext = (0, _react.useContext)(_PickerToggleTrigger.ComboboxContextContext),\n id = _useContext.id,\n hasLabel = _useContext.hasLabel,\n popupType = _useContext.popupType,\n multiple = _useContext.multiple;\n return {\n id: id,\n popupType: popupType,\n multiple: multiple,\n labelId: hasLabel ? id + \"-label\" : undefined\n };\n}\nvar _default = useCombobox;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/hooks/useCombobox.ts?");
8588
+
8589
+ /***/ }),
8590
+
8591
+ /***/ "./src/Picker/hooks/useFocusItemValue.ts":
8592
+ /*!***********************************************!*\
8593
+ !*** ./src/Picker/hooks/useFocusItemValue.ts ***!
8594
+ \***********************************************/
8595
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8596
+
8597
+ "use strict";
8598
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _react = __webpack_require__(/*! react */ \"react\");\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _find = _interopRequireDefault(__webpack_require__(/*! lodash/find */ \"./node_modules/lodash/find.js\"));\nvar _domLib = __webpack_require__(/*! dom-lib */ \"./node_modules/dom-lib/esm/index.js\");\nvar _utils = __webpack_require__(/*! ../../utils */ \"./src/utils/index.ts\");\nvar _treeUtils = __webpack_require__(/*! ../../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils2 = __webpack_require__(/*! ../utils */ \"./src/Picker/utils.ts\");\n/**\n * A hook that manages the focus state of the option.\n * @param defaultFocusItemValue\n * @param props\n */\nvar useFocusItemValue = function useFocusItemValue(defaultFocusItemValue, props) {\n var _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$focusableQuery = props.focusableQueryKey,\n focusableQueryKey = _props$focusableQuery === void 0 ? '[data-key][aria-disabled=\"false\"]' : _props$focusableQuery,\n _props$defaultLayer = props.defaultLayer,\n defaultLayer = _props$defaultLayer === void 0 ? 0 : _props$defaultLayer,\n _props$focusToOption = props.focusToOption,\n focusToOption = _props$focusToOption === void 0 ? true : _props$focusToOption,\n data = props.data,\n target = props.target,\n rtl = props.rtl,\n callback = props.callback,\n _props$getParent = props.getParent,\n getParent = _props$getParent === void 0 ? function (item) {\n return item === null || item === void 0 ? void 0 : item.parent;\n } : _props$getParent;\n var _useState = (0, _react.useState)(defaultFocusItemValue),\n focusItemValue = _useState[0],\n setFocusItemValue = _useState[1];\n var _useState2 = (0, _react.useState)(defaultLayer),\n layer = _useState2[0],\n setLayer = _useState2[1];\n var _useState3 = (0, _react.useState)([]),\n keys = _useState3[0],\n setKeys = _useState3[1];\n var focusCallback = (0, _utils.useEventCallback)(function (value, event) {\n if (focusToOption) {\n var menu = (0, _isFunction.default)(target) ? target() : target;\n var focusElement = menu === null || menu === void 0 ? void 0 : menu.querySelector(\"[data-key=\\\"\" + value + \"\\\"]\");\n focusElement === null || focusElement === void 0 ? void 0 : focusElement.focus();\n }\n callback === null || callback === void 0 ? void 0 : callback(value, event);\n });\n var getScrollContainer = (0, _utils.useEventCallback)(function () {\n var menu = (0, _isFunction.default)(target) ? target() : target;\n\n // For Cascader and MutiCascader\n var subMenu = menu === null || menu === void 0 ? void 0 : menu.querySelector(\"[data-layer=\\\"\" + layer + \"\\\"]\");\n if (subMenu) {\n return subMenu;\n }\n\n // For SelectPicker、CheckPicker、Autocomplete、InputPicker、TagPicker\n return menu === null || menu === void 0 ? void 0 : menu.querySelector('[role=\"listbox\"]');\n });\n\n /**\n * Get the elements visible in all options.\n */\n var getFocusableMenuItems = function getFocusableMenuItems() {\n if (!target) {\n return [];\n }\n var currentKeys = keys;\n if (layer < 1) {\n var popup = (0, _isFunction.default)(target) ? target() : target;\n var rootMenu = popup === null || popup === void 0 ? void 0 : popup.querySelector('[data-layer=\"0\"]');\n if (rootMenu) {\n var _rootMenu$querySelect;\n currentKeys = Array.from((_rootMenu$querySelect = rootMenu.querySelectorAll(focusableQueryKey)) !== null && _rootMenu$querySelect !== void 0 ? _rootMenu$querySelect : []).map(function (item) {\n var _item$dataset;\n return (_item$dataset = item.dataset) === null || _item$dataset === void 0 ? void 0 : _item$dataset.key;\n });\n } else {\n var _popup$querySelectorA;\n currentKeys = Array.from((_popup$querySelectorA = popup === null || popup === void 0 ? void 0 : popup.querySelectorAll(focusableQueryKey)) !== null && _popup$querySelectorA !== void 0 ? _popup$querySelectorA : []).map(function (item) {\n var _item$dataset2;\n return (_item$dataset2 = item.dataset) === null || _item$dataset2 === void 0 ? void 0 : _item$dataset2.key;\n });\n }\n }\n\n // 1. It is necessary to traverse the `keys` instead of `data` here to preserve the order of the array.\n // 2. The values ​​in `keys` are all string, so the corresponding value of `data` should also be converted to string\n return currentKeys.map(function (key) {\n return (0, _find.default)(data, function (i) {\n return \"\" + i[valueKey] === key;\n });\n });\n };\n\n /**\n * Get the index of the focus item.\n */\n var findFocusItemIndex = (0, _utils.useEventCallback)(function (callback) {\n var items = getFocusableMenuItems();\n for (var i = 0; i < items.length; i += 1) {\n var _items$i;\n if ((0, _utils.shallowEqual)(focusItemValue, (_items$i = items[i]) === null || _items$i === void 0 ? void 0 : _items$i[valueKey])) {\n callback(items, i);\n return;\n }\n }\n callback(items, -1);\n });\n var scrollListItem = (0, _utils.useEventCallback)(function (direction, itemValue, willOverflow) {\n var container = getScrollContainer();\n var item = container === null || container === void 0 ? void 0 : container.querySelector(\"[data-key=\\\"\" + itemValue + \"\\\"]\");\n if (willOverflow && container) {\n var scrollHeight = container.scrollHeight,\n clientHeight = container.clientHeight;\n container.scrollTop = direction === 'top' ? scrollHeight - clientHeight : 0;\n return;\n }\n if (item && container) {\n if (!isVisible(item, container, direction)) {\n var height = (0, _domLib.getHeight)(item);\n scrollTo(container, direction, height);\n }\n }\n });\n var focusNextMenuItem = (0, _utils.useEventCallback)(function (event) {\n findFocusItemIndex(function (items, index) {\n var willOverflow = index + 2 > items.length;\n var nextIndex = willOverflow ? 0 : index + 1;\n var focusItem = items[nextIndex];\n if (!(0, _isUndefined.default)(focusItem)) {\n setFocusItemValue(focusItem[valueKey]);\n focusCallback(focusItem[valueKey], event);\n scrollListItem('bottom', focusItem[valueKey], willOverflow);\n }\n });\n });\n var focusPrevMenuItem = (0, _utils.useEventCallback)(function (event) {\n findFocusItemIndex(function (items, index) {\n var willOverflow = index === 0;\n var nextIndex = willOverflow ? items.length - 1 : index - 1;\n var focusItem = items[nextIndex];\n if (!(0, _isUndefined.default)(focusItem)) {\n setFocusItemValue(focusItem[valueKey]);\n focusCallback(focusItem[valueKey], event);\n scrollListItem('top', focusItem[valueKey], willOverflow);\n }\n });\n });\n var getSubMenuKeys = function getSubMenuKeys(nextLayer) {\n var menu = (0, _isFunction.default)(target) ? target() : target;\n var subMenu = menu === null || menu === void 0 ? void 0 : menu.querySelector(\"[data-layer=\\\"\" + nextLayer + \"\\\"]\");\n if (subMenu) {\n var _Array$from;\n return (_Array$from = Array.from(subMenu.querySelectorAll(focusableQueryKey))) === null || _Array$from === void 0 ? void 0 : _Array$from.map(function (item) {\n var _item$dataset3;\n return (_item$dataset3 = item.dataset) === null || _item$dataset3 === void 0 ? void 0 : _item$dataset3.key;\n });\n }\n return null;\n };\n var focusNextLevelMenu = (0, _utils.useEventCallback)(function (event) {\n var nextLayer = layer + 1;\n var nextKeys = getSubMenuKeys(nextLayer);\n if (nextKeys) {\n setKeys(nextKeys);\n setLayer(nextLayer);\n setFocusItemValue(nextKeys[0]);\n focusCallback(nextKeys[0], event);\n }\n });\n var focusPrevLevelMenu = (0, _utils.useEventCallback)(function (event) {\n var nextLayer = layer - 1;\n var nextKeys = getSubMenuKeys(nextLayer);\n if (nextKeys) {\n var _getParent;\n setKeys(nextKeys);\n setLayer(nextLayer);\n var focusItem = (0, _treeUtils.findNodeOfTree)(data, function (item) {\n return item[valueKey] === focusItemValue;\n });\n var parentItemValue = (_getParent = getParent(focusItem)) === null || _getParent === void 0 ? void 0 : _getParent[valueKey];\n if (parentItemValue) {\n setFocusItemValue(parentItemValue);\n focusCallback(parentItemValue, event);\n }\n }\n });\n var handleKeyDown = (0, _utils.useEventCallback)(function (event) {\n var _onMenuKeyDown;\n (0, _utils2.onMenuKeyDown)(event, (_onMenuKeyDown = {\n down: focusNextMenuItem,\n up: focusPrevMenuItem\n }, _onMenuKeyDown[rtl ? 'left' : 'right'] = focusNextLevelMenu, _onMenuKeyDown[rtl ? 'right' : 'left'] = focusPrevLevelMenu, _onMenuKeyDown));\n });\n return {\n focusItemValue: focusItemValue,\n setFocusItemValue: setFocusItemValue,\n layer: layer,\n setLayer: setLayer,\n keys: keys,\n setKeys: setKeys,\n onKeyDown: handleKeyDown\n };\n};\nfunction scrollTo(container, direction, step) {\n var scrollTop = container.scrollTop;\n container.scrollTop = direction === 'top' ? scrollTop - step : scrollTop + step;\n}\n\n/**\n * Checks if the element has a vertical scrollbar.\n */\nfunction hasVerticalScroll(element) {\n var scrollHeight = element.scrollHeight,\n clientHeight = element.clientHeight;\n return scrollHeight > clientHeight;\n}\n\n/**\n * Checks if the element is within the visible area of the container\n */\nfunction isVisible(element, container, direction) {\n if (!hasVerticalScroll(container)) {\n return true;\n }\n var _element$getBoundingC = element.getBoundingClientRect(),\n top = _element$getBoundingC.top,\n bottom = _element$getBoundingC.bottom,\n height = _element$getBoundingC.height;\n var _container$getBoundin = container.getBoundingClientRect(),\n containerTop = _container$getBoundin.top,\n containerBottom = _container$getBoundin.bottom;\n if (direction === 'top') {\n return top + height > containerTop;\n }\n return bottom - height < containerBottom;\n}\nvar _default = useFocusItemValue;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/hooks/useFocusItemValue.ts?");
8599
+
8600
+ /***/ }),
8601
+
8602
+ /***/ "./src/Picker/hooks/usePickerClassName.ts":
8603
+ /*!************************************************!*\
8604
+ !*** ./src/Picker/hooks/usePickerClassName.ts ***!
8605
+ \************************************************/
8606
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8607
+
8608
+ "use strict";
8609
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _kebabCase = _interopRequireDefault(__webpack_require__(/*! lodash/kebabCase */ \"./node_modules/lodash/kebabCase.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _utils = __webpack_require__(/*! ../../utils */ \"./src/utils/index.ts\");\n/**\n * The className of the assembled Toggle is on the Picker.\n */\nfunction usePickerClassName(props) {\n var _withClassPrefix;\n var name = props.name,\n classPrefix = props.classPrefix,\n className = props.className,\n placement = props.placement,\n appearance = props.appearance,\n cleanable = props.cleanable,\n block = props.block,\n disabled = props.disabled,\n countable = props.countable,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n hasValue = props.hasValue,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"name\", \"classPrefix\", \"className\", \"placement\", \"appearance\", \"cleanable\", \"block\", \"disabled\", \"countable\", \"readOnly\", \"plaintext\", \"hasValue\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge;\n var classes = merge(className, withClassPrefix(name, appearance, 'toggle-wrapper', (_withClassPrefix = {}, _withClassPrefix[\"placement-\" + (0, _kebabCase.default)((0, _utils.placementPolyfill)(placement))] = placement, _withClassPrefix['read-only'] = readOnly, _withClassPrefix['has-value'] = hasValue, _withClassPrefix.cleanable = cleanable, _withClassPrefix.block = block, _withClassPrefix.disabled = disabled, _withClassPrefix.countable = countable, _withClassPrefix.plaintext = plaintext, _withClassPrefix)));\n\n // Those props that're used for composing the className\n var usedClassNamePropKeys = Object.keys((0, _omit.default)(props, [].concat(Object.keys(rest || {}), ['disabled', 'readOnly', 'plaintext', 'name'])));\n return [classes, usedClassNamePropKeys];\n}\nvar _default = usePickerClassName;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/hooks/usePickerClassName.ts?");
8610
+
8611
+ /***/ }),
8612
+
8613
+ /***/ "./src/Picker/hooks/usePickerRef.ts":
8614
+ /*!******************************************!*\
8615
+ !*** ./src/Picker/hooks/usePickerRef.ts ***!
8616
+ \******************************************/
8617
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8618
+
8619
+ "use strict";
8620
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _react = __webpack_require__(/*! react */ \"react\");\nvar _useEventCallback = _interopRequireDefault(__webpack_require__(/*! ../../utils/useEventCallback */ \"./src/utils/useEventCallback.ts\"));\n/**\n * A hook of the exposed method of Picker\n */\nfunction usePickerRef(ref, parmas) {\n var trigger = (0, _react.useRef)(null);\n var root = (0, _react.useRef)(null);\n var target = (0, _react.useRef)(null);\n var overlay = (0, _react.useRef)(null);\n var list = (0, _react.useRef)(null);\n var searchInput = (0, _react.useRef)(null);\n var treeView = (0, _react.useRef)(null);\n var _ref = parmas || {},\n inline = _ref.inline;\n var handleOpen = (0, _useEventCallback.default)(function () {\n var _trigger$current;\n trigger === null || trigger === void 0 ? void 0 : (_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : _trigger$current.open();\n });\n var handleClose = (0, _useEventCallback.default)(function () {\n var _trigger$current2;\n trigger === null || trigger === void 0 ? void 0 : (_trigger$current2 = trigger.current) === null || _trigger$current2 === void 0 ? void 0 : _trigger$current2.close();\n });\n var handleUpdatePosition = (0, _useEventCallback.default)(function () {\n var _trigger$current3;\n trigger === null || trigger === void 0 ? void 0 : (_trigger$current3 = trigger.current) === null || _trigger$current3 === void 0 ? void 0 : _trigger$current3.updatePosition();\n });\n (0, _react.useImperativeHandle)(ref, function () {\n // Tree and CheckTree\n if (inline) {\n return {\n get root() {\n var _trigger$current$root, _trigger$current4;\n return root !== null && root !== void 0 && root.current ? root === null || root === void 0 ? void 0 : root.current : (_trigger$current$root = trigger === null || trigger === void 0 ? void 0 : (_trigger$current4 = trigger.current) === null || _trigger$current4 === void 0 ? void 0 : _trigger$current4.root) !== null && _trigger$current$root !== void 0 ? _trigger$current$root : null;\n },\n get list() {\n if (!(list !== null && list !== void 0 && list.current)) {\n throw new Error('The list is not found, please set `virtualized` for the component.');\n }\n return list === null || list === void 0 ? void 0 : list.current;\n }\n };\n }\n return {\n get root() {\n var _ref2, _trigger$current5;\n return (_ref2 = (root === null || root === void 0 ? void 0 : root.current) || (trigger === null || trigger === void 0 ? void 0 : (_trigger$current5 = trigger.current) === null || _trigger$current5 === void 0 ? void 0 : _trigger$current5.root)) !== null && _ref2 !== void 0 ? _ref2 : null;\n },\n get overlay() {\n var _overlay$current;\n if (!(overlay !== null && overlay !== void 0 && overlay.current)) {\n throw new Error('The overlay is not found. Please confirm whether the picker is open.');\n }\n return (_overlay$current = overlay === null || overlay === void 0 ? void 0 : overlay.current) !== null && _overlay$current !== void 0 ? _overlay$current : null;\n },\n get target() {\n var _target$current;\n return (_target$current = target === null || target === void 0 ? void 0 : target.current) !== null && _target$current !== void 0 ? _target$current : null;\n },\n get list() {\n if (!(list !== null && list !== void 0 && list.current)) {\n throw new Error(\"\\n The list is not found.\\n 1.Please set virtualized for the component.\\n 2.Please confirm whether the picker is open.\\n \");\n }\n return list === null || list === void 0 ? void 0 : list.current;\n },\n updatePosition: handleUpdatePosition,\n open: handleOpen,\n close: handleClose\n };\n });\n return {\n trigger: trigger,\n root: root,\n overlay: overlay,\n target: target,\n list: list,\n searchInput: searchInput,\n treeView: treeView\n };\n}\nvar _default = usePickerRef;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/hooks/usePickerRef.ts?");
8621
+
8622
+ /***/ }),
8623
+
8624
+ /***/ "./src/Picker/hooks/useSearch.ts":
8625
+ /*!***************************************!*\
8626
+ !*** ./src/Picker/hooks/useSearch.ts ***!
8627
+ \***************************************/
8628
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8629
+
8630
+ "use strict";
8631
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _react = __webpack_require__(/*! react */ \"react\");\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/Picker/utils.ts\");\n/**\n * A hook that handles search filter options\n */\nfunction useSearch(data, props) {\n var labelKey = props.labelKey,\n searchBy = props.searchBy,\n callback = props.callback; // Use search keywords to filter options.\n var _useState = (0, _react.useState)(''),\n searchKeyword = _useState[0],\n setSearchKeyword = _useState[1];\n var resetSearch = (0, _react.useCallback)(function () {\n setSearchKeyword('');\n }, []);\n\n /**\n * Index of keyword in `label`\n * @param {node} label\n */\n var checkShouldDisplay = (0, _react.useCallback)(function (item, keyword) {\n var checkValue = typeof item === 'object' ? item === null || item === void 0 ? void 0 : item[labelKey] : String(item);\n var _keyword = (0, _isUndefined.default)(keyword) ? searchKeyword : keyword;\n if (typeof searchBy === 'function') {\n return searchBy(_keyword, checkValue, item);\n }\n return (0, _utils.shouldDisplay)(checkValue, _keyword);\n }, [labelKey, searchBy, searchKeyword]);\n var filteredData = (0, _react.useMemo)(function () {\n return data.filter(function (item) {\n return checkShouldDisplay(item, searchKeyword);\n });\n }, [checkShouldDisplay, data, searchKeyword]);\n var handleSearch = function handleSearch(searchKeyword, event) {\n var filteredData = data.filter(function (item) {\n return checkShouldDisplay(item, searchKeyword);\n });\n setSearchKeyword(searchKeyword);\n callback === null || callback === void 0 ? void 0 : callback(searchKeyword, filteredData, event);\n };\n return {\n searchKeyword: searchKeyword,\n filteredData: filteredData,\n checkShouldDisplay: checkShouldDisplay,\n handleSearch: handleSearch,\n resetSearch: resetSearch\n };\n}\nvar _default = useSearch;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/hooks/useSearch.ts?");
8632
+
8633
+ /***/ }),
8634
+
8635
+ /***/ "./src/Picker/hooks/useToggleKeyDownEvent.ts":
8636
+ /*!***************************************************!*\
8637
+ !*** ./src/Picker/hooks/useToggleKeyDownEvent.ts ***!
8638
+ \***************************************************/
8639
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8640
+
8641
+ "use strict";
8642
+ eval("\n\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _utils = __webpack_require__(/*! ../../utils */ \"./src/utils/index.ts\");\n/**\n * A hook to control the toggle keyboard operation\n * @param props\n */\nvar useToggleKeyDownEvent = function useToggleKeyDownEvent(props) {\n var _props$toggle = props.toggle,\n toggle = _props$toggle === void 0 ? true : _props$toggle,\n trigger = props.trigger,\n target = props.target,\n overlay = props.overlay,\n searchInput = props.searchInput,\n active = props.active,\n readOnly = props.readOnly,\n disabled = props.disabled,\n loading = props.loading,\n onExit = props.onExit,\n onOpen = props.onOpen,\n onClose = props.onClose,\n onKeyDown = props.onKeyDown,\n onMenuKeyDown = props.onMenuKeyDown,\n onMenuPressEnter = props.onMenuPressEnter,\n onMenuPressBackspace = props.onMenuPressBackspace;\n var handleClose = (0, _utils.useEventCallback)(function () {\n var _trigger$current, _trigger$current$clos, _trigger$current2, _trigger$current2$foc;\n (_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : (_trigger$current$clos = _trigger$current.close) === null || _trigger$current$clos === void 0 ? void 0 : _trigger$current$clos.call(_trigger$current);\n\n // The focus is on the trigger button after closing\n (_trigger$current2 = trigger.current) === null || _trigger$current2 === void 0 ? void 0 : (_trigger$current2$foc = _trigger$current2.focus) === null || _trigger$current2$foc === void 0 ? void 0 : _trigger$current2$foc.call(_trigger$current2);\n onClose === null || onClose === void 0 ? void 0 : onClose();\n });\n var handleOpen = (0, _utils.useEventCallback)(function () {\n var _trigger$current3, _trigger$current3$ope;\n (_trigger$current3 = trigger.current) === null || _trigger$current3 === void 0 ? void 0 : (_trigger$current3$ope = _trigger$current3.open) === null || _trigger$current3$ope === void 0 ? void 0 : _trigger$current3$ope.call(_trigger$current3);\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n });\n var handleToggleDropdown = (0, _utils.useEventCallback)(function () {\n if (active) {\n handleClose();\n return;\n }\n handleOpen();\n });\n var onToggle = (0, _utils.useEventCallback)(function (event) {\n // Keyboard events should not be processed when readOnly and disabled are set.\n if (readOnly || disabled || loading) {\n return;\n }\n if (event.target === (target === null || target === void 0 ? void 0 : target.current)) {\n // enter\n if (toggle && event.key === _utils.KEY_VALUES.ENTER) {\n handleToggleDropdown();\n }\n\n // delete\n if (event.key === _utils.KEY_VALUES.BACKSPACE) {\n onExit === null || onExit === void 0 ? void 0 : onExit(event);\n }\n }\n if (overlay !== null && overlay !== void 0 && overlay.current) {\n // The keyboard operation callback on the menu.\n onMenuKeyDown === null || onMenuKeyDown === void 0 ? void 0 : onMenuKeyDown(event);\n if (event.key === _utils.KEY_VALUES.ENTER) {\n onMenuPressEnter === null || onMenuPressEnter === void 0 ? void 0 : onMenuPressEnter(event);\n }\n\n /**\n * There is no callback when typing the Backspace key in the search box.\n * The default is to remove search keywords\n */\n if (event.key === _utils.KEY_VALUES.BACKSPACE && event.target !== (searchInput === null || searchInput === void 0 ? void 0 : searchInput.current)) {\n onMenuPressBackspace === null || onMenuPressBackspace === void 0 ? void 0 : onMenuPressBackspace(event);\n }\n\n // The search box gets focus when typing characters and numbers.\n if (event.key.length === 1 && /\\w/.test(event.key)) {\n var _event$target;\n // Exclude Input\n // eg: <SelectPicker renderExtraFooter={() => <Input />} />\n if (((_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.tagName) !== 'INPUT') {\n var _searchInput$current;\n searchInput === null || searchInput === void 0 ? void 0 : (_searchInput$current = searchInput.current) === null || _searchInput$current === void 0 ? void 0 : _searchInput$current.focus();\n }\n }\n }\n if (event.key === _utils.KEY_VALUES.ESC || event.key === _utils.KEY_VALUES.TAB) {\n handleClose();\n }\n\n // Native event callback\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);\n });\n return onToggle;\n};\nvar _default = useToggleKeyDownEvent;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/hooks/useToggleKeyDownEvent.ts?");
8643
+
8644
+ /***/ }),
8645
+
8525
8646
  /***/ "./src/Picker/index.ts":
8526
8647
  /*!*****************************!*\
8527
8648
  !*** ./src/Picker/index.ts ***!
@@ -8529,7 +8650,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
8529
8650
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8530
8651
 
8531
8652
  "use strict";
8532
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nvar _exportNames = {\n DropdownMenu: true,\n DropdownMenuCheckItem: true,\n DropdownMenuGroup: true,\n DropdownMenuItem: true,\n PickerOverlay: true,\n PickerToggle: true,\n PickerToggleTrigger: true,\n SearchBar: true,\n SelectedElement: true,\n pickTriggerPropKeys: true,\n omitTriggerPropKeys: true\n};\nexports.SelectedElement = exports.SearchBar = exports.PickerToggleTrigger = exports.PickerToggle = exports.PickerOverlay = exports.DropdownMenuItem = exports.DropdownMenuGroup = exports.DropdownMenuCheckItem = exports.DropdownMenu = void 0;\nvar _PickerToggleTrigger = _interopRequireWildcard(__webpack_require__(/*! ./PickerToggleTrigger */ \"./src/Picker/PickerToggleTrigger.tsx\"));\nexports.pickTriggerPropKeys = _PickerToggleTrigger.pickTriggerPropKeys;\nexports.omitTriggerPropKeys = _PickerToggleTrigger.omitTriggerPropKeys;\nexports.PickerToggleTrigger = _PickerToggleTrigger.default;\nvar _DropdownMenu = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenu */ \"./src/Picker/DropdownMenu.tsx\"));\nexports.DropdownMenu = _DropdownMenu.default;\nvar _DropdownMenuCheckItem = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenuCheckItem */ \"./src/Picker/DropdownMenuCheckItem.tsx\"));\nexports.DropdownMenuCheckItem = _DropdownMenuCheckItem.default;\nvar _DropdownMenuGroup = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenuGroup */ \"./src/Picker/DropdownMenuGroup.tsx\"));\nexports.DropdownMenuGroup = _DropdownMenuGroup.default;\nvar _DropdownMenuItem = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenuItem */ \"./src/Picker/DropdownMenuItem.tsx\"));\nexports.DropdownMenuItem = _DropdownMenuItem.default;\nvar _PickerOverlay = _interopRequireDefault(__webpack_require__(/*! ./PickerOverlay */ \"./src/Picker/PickerOverlay.tsx\"));\nexports.PickerOverlay = _PickerOverlay.default;\nvar _PickerToggle = _interopRequireDefault(__webpack_require__(/*! ./PickerToggle */ \"./src/Picker/PickerToggle.tsx\"));\nexports.PickerToggle = _PickerToggle.default;\nvar _SearchBar = _interopRequireDefault(__webpack_require__(/*! ./SearchBar */ \"./src/Picker/SearchBar.tsx\"));\nexports.SearchBar = _SearchBar.default;\nvar _SelectedElement = _interopRequireDefault(__webpack_require__(/*! ./SelectedElement */ \"./src/Picker/SelectedElement.tsx\"));\nexports.SelectedElement = _SelectedElement.default;\nvar _utils = __webpack_require__(/*! ./utils */ \"./src/Picker/utils.ts\");\nObject.keys(_utils).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;\n if (key in exports && exports[key] === _utils[key]) return;\n exports[key] = _utils[key];\n});\nvar _propTypes = __webpack_require__(/*! ./propTypes */ \"./src/Picker/propTypes.ts\");\nObject.keys(_propTypes).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;\n if (key in exports && exports[key] === _propTypes[key]) return;\n exports[key] = _propTypes[key];\n});\n\n//# sourceURL=webpack://rsuite/./src/Picker/index.ts?");
8653
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nvar _exportNames = {\n TreeView: true,\n Listbox: true,\n ListItem: true,\n ListItemGroup: true,\n ListCheckItem: true,\n PickerPopup: true,\n PickerToggle: true,\n PickerLabel: true,\n PickerIndicator: true,\n PickerToggleTrigger: true,\n SearchBar: true,\n SelectedElement: true,\n pickTriggerPropKeys: true,\n omitTriggerPropKeys: true\n};\nexports.SelectedElement = exports.SearchBar = exports.PickerToggleTrigger = exports.PickerIndicator = exports.PickerLabel = exports.PickerToggle = exports.PickerPopup = exports.ListCheckItem = exports.ListItemGroup = exports.ListItem = exports.Listbox = exports.TreeView = void 0;\nvar _PickerToggleTrigger = _interopRequireWildcard(__webpack_require__(/*! ./PickerToggleTrigger */ \"./src/Picker/PickerToggleTrigger.tsx\"));\nexports.pickTriggerPropKeys = _PickerToggleTrigger.pickTriggerPropKeys;\nexports.omitTriggerPropKeys = _PickerToggleTrigger.omitTriggerPropKeys;\nexports.PickerToggleTrigger = _PickerToggleTrigger.default;\nvar _TreeView = _interopRequireDefault(__webpack_require__(/*! ./TreeView */ \"./src/Picker/TreeView.tsx\"));\nexports.TreeView = _TreeView.default;\nvar _Listbox = _interopRequireDefault(__webpack_require__(/*! ./Listbox */ \"./src/Picker/Listbox.tsx\"));\nexports.Listbox = _Listbox.default;\nvar _ListItem = _interopRequireDefault(__webpack_require__(/*! ./ListItem */ \"./src/Picker/ListItem.tsx\"));\nexports.ListItem = _ListItem.default;\nvar _ListItemGroup = _interopRequireDefault(__webpack_require__(/*! ./ListItemGroup */ \"./src/Picker/ListItemGroup.tsx\"));\nexports.ListItemGroup = _ListItemGroup.default;\nvar _ListCheckItem = _interopRequireDefault(__webpack_require__(/*! ./ListCheckItem */ \"./src/Picker/ListCheckItem.tsx\"));\nexports.ListCheckItem = _ListCheckItem.default;\nvar _PickerPopup = _interopRequireDefault(__webpack_require__(/*! ./PickerPopup */ \"./src/Picker/PickerPopup.tsx\"));\nexports.PickerPopup = _PickerPopup.default;\nvar _PickerToggle = _interopRequireDefault(__webpack_require__(/*! ./PickerToggle */ \"./src/Picker/PickerToggle.tsx\"));\nexports.PickerToggle = _PickerToggle.default;\nvar _PickerLabel = _interopRequireDefault(__webpack_require__(/*! ./PickerLabel */ \"./src/Picker/PickerLabel.tsx\"));\nexports.PickerLabel = _PickerLabel.default;\nvar _PickerIndicator = _interopRequireDefault(__webpack_require__(/*! ./PickerIndicator */ \"./src/Picker/PickerIndicator.tsx\"));\nexports.PickerIndicator = _PickerIndicator.default;\nvar _SearchBar = _interopRequireDefault(__webpack_require__(/*! ./SearchBar */ \"./src/Picker/SearchBar.tsx\"));\nexports.SearchBar = _SearchBar.default;\nvar _SelectedElement = _interopRequireDefault(__webpack_require__(/*! ./SelectedElement */ \"./src/Picker/SelectedElement.tsx\"));\nexports.SelectedElement = _SelectedElement.default;\nvar _hooks = __webpack_require__(/*! ./hooks */ \"./src/Picker/hooks/index.ts\");\nObject.keys(_hooks).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;\n if (key in exports && exports[key] === _hooks[key]) return;\n exports[key] = _hooks[key];\n});\nvar _utils = __webpack_require__(/*! ./utils */ \"./src/Picker/utils.ts\");\nObject.keys(_utils).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;\n if (key in exports && exports[key] === _utils[key]) return;\n exports[key] = _utils[key];\n});\nvar _propTypes = __webpack_require__(/*! ./propTypes */ \"./src/Picker/propTypes.ts\");\nObject.keys(_propTypes).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;\n if (key in exports && exports[key] === _propTypes[key]) return;\n exports[key] = _propTypes[key];\n});\n\n//# sourceURL=webpack://rsuite/./src/Picker/index.ts?");
8533
8654
 
8534
8655
  /***/ }),
8535
8656
 
@@ -8540,18 +8661,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
8540
8661
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8541
8662
 
8542
8663
  "use strict";
8543
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports.listPickerPropTypes = exports.pickerPropTypes = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _utils2 = __webpack_require__(/*! ../Animation/utils */ \"./src/Animation/utils.ts\");\nvar pickerPropTypes = (0, _extends2.default)({}, _utils2.animationPropTypes, {\n classPrefix: _propTypes.default.string,\n className: _propTypes.default.string,\n style: _propTypes.default.object,\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n block: _propTypes.default.bool,\n containerPadding: _propTypes.default.number,\n container: _propTypes.default.oneOfType([_propTypes.default.any, _propTypes.default.func]),\n disabled: _propTypes.default.bool,\n // PropTypes.elementType conflictin with React.ElementType\n // toggleAs: PropTypes.elementType,\n menuClassName: _propTypes.default.string,\n menuStyle: _propTypes.default.object,\n placeholder: _propTypes.default.node,\n placement: _propTypes.default.oneOf(_utils.PLACEMENT),\n /**\n * Prevent floating element overflow\n */\n preventOverflow: _propTypes.default.bool,\n open: _propTypes.default.bool,\n defaultOpen: _propTypes.default.bool,\n cleanable: _propTypes.default.bool,\n renderExtraFooter: _propTypes.default.func,\n renderValue: _propTypes.default.func,\n onOpen: _propTypes.default.func,\n onClose: _propTypes.default.func,\n onClean: _propTypes.default.func,\n listProps: _propTypes.default.any\n});\nexports.pickerPropTypes = pickerPropTypes;\nvar listPickerPropTypes = (0, _extends2.default)({}, pickerPropTypes, {\n data: _propTypes.default.array.isRequired,\n valueKey: _propTypes.default.string,\n labelKey: _propTypes.default.string,\n childrenKey: _propTypes.default.string,\n disabledItemValues: _propTypes.default.array,\n value: _propTypes.default.any,\n defaultValue: _propTypes.default.any,\n onChange: _propTypes.default.func\n});\nexports.listPickerPropTypes = listPickerPropTypes;\n\n//# sourceURL=webpack://rsuite/./src/Picker/propTypes.ts?");
8544
-
8545
- /***/ }),
8546
-
8547
- /***/ "./src/Picker/usePickerRef.ts":
8548
- /*!************************************!*\
8549
- !*** ./src/Picker/usePickerRef.ts ***!
8550
- \************************************/
8551
- /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8552
-
8553
- "use strict";
8554
- eval("\n\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _react = __webpack_require__(/*! react */ \"react\");\n/**\n * A hook of the exposed method of Picker\n */\nfunction usePickerRef(ref, parmas) {\n var trigger = (0, _react.useRef)(null);\n var root = (0, _react.useRef)(null);\n var target = (0, _react.useRef)(null);\n var overlay = (0, _react.useRef)(null);\n var list = (0, _react.useRef)(null);\n var _ref = parmas || {},\n inline = _ref.inline;\n var handleOpen = (0, _react.useCallback)(function () {\n var _trigger$current;\n trigger === null || trigger === void 0 ? void 0 : (_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : _trigger$current.open();\n }, [trigger]);\n var handleClose = (0, _react.useCallback)(function () {\n var _trigger$current2;\n trigger === null || trigger === void 0 ? void 0 : (_trigger$current2 = trigger.current) === null || _trigger$current2 === void 0 ? void 0 : _trigger$current2.close();\n }, [trigger]);\n var handleUpdatePosition = (0, _react.useCallback)(function () {\n var _trigger$current3;\n trigger === null || trigger === void 0 ? void 0 : (_trigger$current3 = trigger.current) === null || _trigger$current3 === void 0 ? void 0 : _trigger$current3.updatePosition();\n }, [trigger]);\n (0, _react.useImperativeHandle)(ref, function () {\n // Tree and CheckTree\n if (inline) {\n return {\n get root() {\n var _trigger$current$root, _trigger$current4;\n return root !== null && root !== void 0 && root.current ? root === null || root === void 0 ? void 0 : root.current : (_trigger$current$root = trigger === null || trigger === void 0 ? void 0 : (_trigger$current4 = trigger.current) === null || _trigger$current4 === void 0 ? void 0 : _trigger$current4.root) !== null && _trigger$current$root !== void 0 ? _trigger$current$root : null;\n },\n get list() {\n if (!(list !== null && list !== void 0 && list.current)) {\n throw new Error('The list is not found, please set `virtualized` for the component.');\n }\n return list === null || list === void 0 ? void 0 : list.current;\n }\n };\n }\n return {\n get root() {\n var _ref2, _trigger$current5;\n return (_ref2 = (root === null || root === void 0 ? void 0 : root.current) || (trigger === null || trigger === void 0 ? void 0 : (_trigger$current5 = trigger.current) === null || _trigger$current5 === void 0 ? void 0 : _trigger$current5.root)) !== null && _ref2 !== void 0 ? _ref2 : null;\n },\n get overlay() {\n var _overlay$current;\n if (!(overlay !== null && overlay !== void 0 && overlay.current)) {\n throw new Error('The overlay is not found. Please confirm whether the picker is open.');\n }\n return (_overlay$current = overlay === null || overlay === void 0 ? void 0 : overlay.current) !== null && _overlay$current !== void 0 ? _overlay$current : null;\n },\n get target() {\n var _target$current;\n return (_target$current = target === null || target === void 0 ? void 0 : target.current) !== null && _target$current !== void 0 ? _target$current : null;\n },\n get list() {\n if (!(list !== null && list !== void 0 && list.current)) {\n throw new Error(\"\\n The list is not found.\\n 1.Please set virtualized for the component.\\n 2.Please confirm whether the picker is open.\\n \");\n }\n return list === null || list === void 0 ? void 0 : list.current;\n },\n updatePosition: handleUpdatePosition,\n open: handleOpen,\n close: handleClose\n };\n });\n return {\n trigger: trigger,\n root: root,\n overlay: overlay,\n target: target,\n list: list\n };\n}\nvar _default = usePickerRef;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/usePickerRef.ts?");
8664
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports.listPickerPropTypes = exports.pickerPropTypes = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _utils2 = __webpack_require__(/*! ../Animation/utils */ \"./src/Animation/utils.ts\");\nvar pickerPropTypes = (0, _extends2.default)({}, _utils2.animationPropTypes, {\n classPrefix: _propTypes.default.string,\n className: _propTypes.default.string,\n style: _propTypes.default.object,\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n block: _propTypes.default.bool,\n containerPadding: _propTypes.default.number,\n container: _propTypes.default.oneOfType([_propTypes.default.any, _propTypes.default.func]),\n disabled: _propTypes.default.bool,\n menuClassName: _propTypes.default.string,\n menuStyle: _propTypes.default.object,\n placeholder: _propTypes.default.node,\n placement: _propTypes.default.oneOf(_utils.PLACEMENT),\n preventOverflow: _propTypes.default.bool,\n open: _propTypes.default.bool,\n defaultOpen: _propTypes.default.bool,\n cleanable: _propTypes.default.bool,\n renderExtraFooter: _propTypes.default.func,\n renderValue: _propTypes.default.func,\n onOpen: _propTypes.default.func,\n onClose: _propTypes.default.func,\n onClean: _propTypes.default.func,\n listProps: _propTypes.default.any\n});\nexports.pickerPropTypes = pickerPropTypes;\nvar listPickerPropTypes = (0, _extends2.default)({}, pickerPropTypes, {\n data: _propTypes.default.array.isRequired,\n valueKey: _propTypes.default.string,\n labelKey: _propTypes.default.string,\n childrenKey: _propTypes.default.string,\n disabledItemValues: _propTypes.default.array,\n value: _propTypes.default.any,\n defaultValue: _propTypes.default.any,\n onChange: _propTypes.default.func\n});\nexports.listPickerPropTypes = listPickerPropTypes;\n\n//# sourceURL=webpack://rsuite/./src/Picker/propTypes.ts?");
8555
8665
 
8556
8666
  /***/ }),
8557
8667
 
@@ -8562,7 +8672,7 @@ eval("\n\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _react
8562
8672
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8563
8673
 
8564
8674
  "use strict";
8565
- eval("\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports.createConcatChildrenFunction = createConcatChildrenFunction;\nexports.shouldDisplay = shouldDisplay;\nexports.usePickerClassName = usePickerClassName;\nexports.onMenuKeyDown = onMenuKeyDown;\nexports.useSearch = useSearch;\nexports.usePublicMethods = usePublicMethods;\nexports.useToggleKeyDownEvent = exports.useFocusItemValue = void 0;\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _kebabCase = _interopRequireDefault(__webpack_require__(/*! lodash/kebabCase */ \"./node_modules/lodash/kebabCase.js\"));\nvar _trim = _interopRequireDefault(__webpack_require__(/*! lodash/trim */ \"./node_modules/lodash/trim.js\"));\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _find = _interopRequireDefault(__webpack_require__(/*! lodash/find */ \"./node_modules/lodash/find.js\"));\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _domLib = __webpack_require__(/*! dom-lib */ \"./node_modules/dom-lib/esm/index.js\");\nvar defaultNodeKeys = {\n valueKey: 'value',\n childrenKey: 'children'\n};\nfunction createConcatChildrenFunction(node, nodeValue, nodeKeys) {\n if (nodeKeys === void 0) {\n nodeKeys = defaultNodeKeys;\n }\n var _nodeKeys = nodeKeys,\n valueKey = _nodeKeys.valueKey,\n childrenKey = _nodeKeys.childrenKey;\n return function (data, children) {\n if (nodeValue) {\n node = (0, _treeUtils.findNodeOfTree)(data, function (item) {\n return nodeValue === item[valueKey];\n });\n }\n node[childrenKey] = children;\n return data.concat([]);\n };\n}\nfunction shouldDisplay(label, searchKeyword) {\n if (!(0, _trim.default)(searchKeyword)) {\n return true;\n }\n var keyword = searchKeyword.toLocaleLowerCase();\n if (typeof label === 'string' || typeof label === 'number') {\n return (\"\" + label).toLocaleLowerCase().indexOf(keyword) >= 0;\n } else if ( /*#__PURE__*/_react.default.isValidElement(label)) {\n var nodes = (0, _utils.reactToString)(label);\n return nodes.join('').toLocaleLowerCase().indexOf(keyword) >= 0;\n }\n return false;\n}\n/**\n * The className of the assembled Toggle is on the Picker.\n */\nfunction usePickerClassName(props) {\n var _withClassPrefix;\n var name = props.name,\n classPrefix = props.classPrefix,\n className = props.className,\n placement = props.placement,\n appearance = props.appearance,\n cleanable = props.cleanable,\n block = props.block,\n disabled = props.disabled,\n countable = props.countable,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n hasValue = props.hasValue,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"name\", \"classPrefix\", \"className\", \"placement\", \"appearance\", \"cleanable\", \"block\", \"disabled\", \"countable\", \"readOnly\", \"plaintext\", \"hasValue\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge;\n var classes = merge(className, withClassPrefix(name, appearance, 'toggle-wrapper', (_withClassPrefix = {}, _withClassPrefix[\"placement-\" + (0, _kebabCase.default)((0, _utils.placementPolyfill)(placement))] = placement, _withClassPrefix['read-only'] = readOnly, _withClassPrefix['has-value'] = hasValue, _withClassPrefix.cleanable = cleanable, _withClassPrefix.block = block, _withClassPrefix.disabled = disabled, _withClassPrefix.countable = countable, _withClassPrefix.plaintext = plaintext, _withClassPrefix)));\n\n // Those props that're used for composing the className\n var usedClassNamePropKeys = Object.keys((0, _omit.default)(props, [].concat(Object.keys(rest || {}), ['disabled', 'readOnly', 'plaintext', 'name'])));\n return [classes, usedClassNamePropKeys];\n}\n/**\n * Handling keyboard events...\n * @param event Keyboard event object\n * @param events Event callback functions\n */\nfunction onMenuKeyDown(event, events) {\n var down = events.down,\n up = events.up,\n enter = events.enter,\n del = events.del,\n esc = events.esc,\n right = events.right,\n left = events.left;\n switch (event.key) {\n // down\n case _utils.KEY_VALUES.DOWN:\n down === null || down === void 0 ? void 0 : down(event);\n event.preventDefault();\n break;\n // up\n case _utils.KEY_VALUES.UP:\n up === null || up === void 0 ? void 0 : up(event);\n event.preventDefault();\n break;\n // enter\n case _utils.KEY_VALUES.ENTER:\n enter === null || enter === void 0 ? void 0 : enter(event);\n event.preventDefault();\n break;\n // delete\n case _utils.KEY_VALUES.BACKSPACE:\n del === null || del === void 0 ? void 0 : del(event);\n break;\n // esc | tab\n case _utils.KEY_VALUES.ESC:\n case _utils.KEY_VALUES.TAB:\n esc === null || esc === void 0 ? void 0 : esc(event);\n break;\n // left arrow\n case _utils.KEY_VALUES.LEFT:\n left === null || left === void 0 ? void 0 : left(event);\n break;\n // right arrow\n case _utils.KEY_VALUES.RIGHT:\n right === null || right === void 0 ? void 0 : right(event);\n break;\n default:\n }\n}\n/**\n * Checks if the element has a vertical scrollbar.\n */\nfunction hasVerticalScroll(element) {\n var scrollHeight = element.scrollHeight,\n clientHeight = element.clientHeight;\n return scrollHeight > clientHeight;\n}\n\n/**\n * Checks if the element is within the visible area of the container\n */\nfunction isVisible(element, container, direction) {\n if (!hasVerticalScroll(container)) {\n return true;\n }\n var _element$getBoundingC = element.getBoundingClientRect(),\n top = _element$getBoundingC.top,\n bottom = _element$getBoundingC.bottom,\n height = _element$getBoundingC.height;\n var _container$getBoundin = container.getBoundingClientRect(),\n containerTop = _container$getBoundin.top,\n containerBottom = _container$getBoundin.bottom;\n if (direction === 'top') {\n return top + height > containerTop;\n }\n return bottom - height < containerBottom;\n}\nfunction scrollTo(container, direction, step) {\n var scrollTop = container.scrollTop;\n container.scrollTop = direction === 'top' ? scrollTop - step : scrollTop + step;\n}\n\n/**\n * A hook that manages the focus state of the option.\n * @param defaultFocusItemValue\n * @param props\n */\nvar useFocusItemValue = function useFocusItemValue(defaultFocusItemValue, props) {\n var _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$focusableQuery = props.focusableQueryKey,\n focusableQueryKey = _props$focusableQuery === void 0 ? '[data-key][aria-disabled=\"false\"]' : _props$focusableQuery,\n _props$defaultLayer = props.defaultLayer,\n defaultLayer = _props$defaultLayer === void 0 ? 0 : _props$defaultLayer,\n data = props.data,\n target = props.target,\n rtl = props.rtl,\n callback = props.callback,\n _props$getParent = props.getParent,\n getParent = _props$getParent === void 0 ? function (item) {\n return item === null || item === void 0 ? void 0 : item.parent;\n } : _props$getParent;\n var _useState = (0, _react.useState)(defaultFocusItemValue),\n focusItemValue = _useState[0],\n setFocusItemValue = _useState[1];\n var _useState2 = (0, _react.useState)(defaultLayer),\n layer = _useState2[0],\n setLayer = _useState2[1];\n var _useState3 = (0, _react.useState)([]),\n keys = _useState3[0],\n setKeys = _useState3[1];\n var focusCallback = (0, _react.useCallback)(function (value, event) {\n var menu = (0, _isFunction.default)(target) ? target() : target;\n var focusElement = menu === null || menu === void 0 ? void 0 : menu.querySelector(\"[data-key=\\\"\" + value + \"\\\"]\");\n focusElement === null || focusElement === void 0 ? void 0 : focusElement.focus();\n callback === null || callback === void 0 ? void 0 : callback(value, event);\n }, [callback, target]);\n var getScrollContainer = (0, _react.useCallback)(function () {\n var menu = (0, _isFunction.default)(target) ? target() : target;\n\n // For Cascader and MutiCascader\n var subMenu = menu === null || menu === void 0 ? void 0 : menu.querySelector(\"[data-layer=\\\"\" + layer + \"\\\"]\");\n if (subMenu) {\n return subMenu;\n }\n\n // For SelectPicker、CheckPicker、Autocomplete、InputPicker、TagPicker\n return menu === null || menu === void 0 ? void 0 : menu.querySelector('[role=\"listbox\"]');\n }, [layer, target]);\n\n /**\n * Get the elements visible in all options.\n */\n var getFocusableMenuItems = (0, _react.useCallback)(function () {\n if (!target) {\n return [];\n }\n var currentKeys = keys;\n if (layer < 1) {\n var popup = (0, _isFunction.default)(target) ? target() : target;\n var rootMenu = popup === null || popup === void 0 ? void 0 : popup.querySelector('[data-layer=\"0\"]');\n if (rootMenu) {\n var _rootMenu$querySelect;\n currentKeys = Array.from((_rootMenu$querySelect = rootMenu.querySelectorAll(focusableQueryKey)) !== null && _rootMenu$querySelect !== void 0 ? _rootMenu$querySelect : []).map(function (item) {\n var _item$dataset;\n return (_item$dataset = item.dataset) === null || _item$dataset === void 0 ? void 0 : _item$dataset.key;\n });\n } else {\n var _popup$querySelectorA;\n currentKeys = Array.from((_popup$querySelectorA = popup === null || popup === void 0 ? void 0 : popup.querySelectorAll(focusableQueryKey)) !== null && _popup$querySelectorA !== void 0 ? _popup$querySelectorA : []).map(function (item) {\n var _item$dataset2;\n return (_item$dataset2 = item.dataset) === null || _item$dataset2 === void 0 ? void 0 : _item$dataset2.key;\n });\n }\n }\n\n // 1. It is necessary to traverse the `keys` instead of `data` here to preserve the order of the array.\n // 2. The values ​​in `keys` are all string, so the corresponding value of `data` should also be converted to string\n return currentKeys.map(function (key) {\n return (0, _find.default)(data, function (i) {\n return \"\" + i[valueKey] === key;\n });\n });\n }, [data, focusableQueryKey, keys, target, valueKey, layer]);\n\n /**\n * Get the index of the focus item.\n */\n var findFocusItemIndex = (0, _react.useCallback)(function (callback) {\n var items = getFocusableMenuItems();\n for (var i = 0; i < items.length; i += 1) {\n var _items$i;\n if ((0, _utils.shallowEqual)(focusItemValue, (_items$i = items[i]) === null || _items$i === void 0 ? void 0 : _items$i[valueKey])) {\n callback(items, i);\n return;\n }\n }\n callback(items, -1);\n }, [focusItemValue, getFocusableMenuItems, valueKey]);\n var scrollListItem = (0, _react.useCallback)(function (direction, itemValue, willOverflow) {\n var container = getScrollContainer();\n var item = container === null || container === void 0 ? void 0 : container.querySelector(\"[data-key=\\\"\" + itemValue + \"\\\"]\");\n if (willOverflow && container) {\n var scrollHeight = container.scrollHeight,\n clientHeight = container.clientHeight;\n container.scrollTop = direction === 'top' ? scrollHeight - clientHeight : 0;\n return;\n }\n if (item && container) {\n if (!isVisible(item, container, direction)) {\n var height = (0, _domLib.getHeight)(item);\n scrollTo(container, direction, height);\n }\n }\n }, [getScrollContainer]);\n var focusNextMenuItem = (0, _react.useCallback)(function (event) {\n findFocusItemIndex(function (items, index) {\n var willOverflow = index + 2 > items.length;\n var nextIndex = willOverflow ? 0 : index + 1;\n var focusItem = items[nextIndex];\n if (!(0, _isUndefined.default)(focusItem)) {\n setFocusItemValue(focusItem[valueKey]);\n focusCallback(focusItem[valueKey], event);\n scrollListItem('bottom', focusItem[valueKey], willOverflow);\n }\n });\n }, [focusCallback, findFocusItemIndex, scrollListItem, valueKey]);\n var focusPrevMenuItem = (0, _react.useCallback)(function (event) {\n findFocusItemIndex(function (items, index) {\n var willOverflow = index === 0;\n var nextIndex = willOverflow ? items.length - 1 : index - 1;\n var focusItem = items[nextIndex];\n if (!(0, _isUndefined.default)(focusItem)) {\n setFocusItemValue(focusItem[valueKey]);\n focusCallback(focusItem[valueKey], event);\n scrollListItem('top', focusItem[valueKey], willOverflow);\n }\n });\n }, [focusCallback, findFocusItemIndex, scrollListItem, valueKey]);\n var getSubMenuKeys = (0, _react.useCallback)(function (nextLayer) {\n var menu = (0, _isFunction.default)(target) ? target() : target;\n var subMenu = menu === null || menu === void 0 ? void 0 : menu.querySelector(\"[data-layer=\\\"\" + nextLayer + \"\\\"]\");\n if (subMenu) {\n var _Array$from;\n return (_Array$from = Array.from(subMenu.querySelectorAll(focusableQueryKey))) === null || _Array$from === void 0 ? void 0 : _Array$from.map(function (item) {\n var _item$dataset3;\n return (_item$dataset3 = item.dataset) === null || _item$dataset3 === void 0 ? void 0 : _item$dataset3.key;\n });\n }\n return null;\n }, [focusableQueryKey, target]);\n var focusNextLevelMenu = (0, _react.useCallback)(function (event) {\n var nextLayer = layer + 1;\n var nextKeys = getSubMenuKeys(nextLayer);\n if (nextKeys) {\n setKeys(nextKeys);\n setLayer(nextLayer);\n setFocusItemValue(nextKeys[0]);\n focusCallback(nextKeys[0], event);\n }\n }, [focusCallback, getSubMenuKeys, layer]);\n var focusPrevLevelMenu = (0, _react.useCallback)(function (event) {\n var nextLayer = layer - 1;\n var nextKeys = getSubMenuKeys(nextLayer);\n if (nextKeys) {\n var _getParent;\n setKeys(nextKeys);\n setLayer(nextLayer);\n var focusItem = (0, _treeUtils.findNodeOfTree)(data, function (item) {\n return item[valueKey] === focusItemValue;\n });\n var parentItemValue = (_getParent = getParent(focusItem)) === null || _getParent === void 0 ? void 0 : _getParent[valueKey];\n if (parentItemValue) {\n setFocusItemValue(parentItemValue);\n focusCallback(parentItemValue, event);\n }\n }\n }, [focusCallback, data, focusItemValue, getParent, getSubMenuKeys, layer, valueKey]);\n var handleKeyDown = (0, _react.useCallback)(function (event) {\n var _onMenuKeyDown;\n onMenuKeyDown(event, (_onMenuKeyDown = {\n down: focusNextMenuItem,\n up: focusPrevMenuItem\n }, _onMenuKeyDown[rtl ? 'left' : 'right'] = focusNextLevelMenu, _onMenuKeyDown[rtl ? 'right' : 'left'] = focusPrevLevelMenu, _onMenuKeyDown));\n }, [focusNextLevelMenu, focusNextMenuItem, focusPrevLevelMenu, focusPrevMenuItem, rtl]);\n return {\n focusItemValue: focusItemValue,\n setFocusItemValue: setFocusItemValue,\n layer: layer,\n setLayer: setLayer,\n keys: keys,\n setKeys: setKeys,\n onKeyDown: handleKeyDown\n };\n};\nexports.useFocusItemValue = useFocusItemValue;\n/**\n * A hook to control the toggle keyboard operation\n * @param props\n */\nvar useToggleKeyDownEvent = function useToggleKeyDownEvent(props) {\n var _props$toggle = props.toggle,\n toggle = _props$toggle === void 0 ? true : _props$toggle,\n triggerRef = props.triggerRef,\n targetRef = props.targetRef,\n overlayRef = props.overlayRef,\n searchInputRef = props.searchInputRef,\n active = props.active,\n readOnly = props.readOnly,\n disabled = props.disabled,\n loading = props.loading,\n onExit = props.onExit,\n onOpen = props.onOpen,\n onClose = props.onClose,\n onKeyDown = props.onKeyDown,\n onMenuKeyDown = props.onMenuKeyDown,\n onMenuPressEnter = props.onMenuPressEnter,\n onMenuPressBackspace = props.onMenuPressBackspace;\n var handleClose = (0, _react.useCallback)(function () {\n var _triggerRef$current, _triggerRef$current$c, _targetRef$current, _targetRef$current$fo;\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$c = _triggerRef$current.close) === null || _triggerRef$current$c === void 0 ? void 0 : _triggerRef$current$c.call(_triggerRef$current);\n\n // The focus is on the trigger button after closing\n (_targetRef$current = targetRef.current) === null || _targetRef$current === void 0 ? void 0 : (_targetRef$current$fo = _targetRef$current.focus) === null || _targetRef$current$fo === void 0 ? void 0 : _targetRef$current$fo.call(_targetRef$current);\n onClose === null || onClose === void 0 ? void 0 : onClose();\n }, [onClose, targetRef, triggerRef]);\n var handleOpen = (0, _react.useCallback)(function () {\n var _triggerRef$current2, _triggerRef$current2$;\n (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : (_triggerRef$current2$ = _triggerRef$current2.open) === null || _triggerRef$current2$ === void 0 ? void 0 : _triggerRef$current2$.call(_triggerRef$current2);\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n }, [onOpen, triggerRef]);\n var handleToggleDropdown = (0, _react.useCallback)(function () {\n if (active) {\n handleClose();\n return;\n }\n handleOpen();\n }, [active, handleOpen, handleClose]);\n var onToggle = (0, _react.useCallback)(function (event) {\n // Keyboard events should not be processed when readOnly and disabled are set.\n if (readOnly || disabled || loading) {\n return;\n }\n if (event.target === (targetRef === null || targetRef === void 0 ? void 0 : targetRef.current)) {\n // enter\n if (toggle && event.key === _utils.KEY_VALUES.ENTER) {\n handleToggleDropdown();\n }\n\n // delete\n if (event.key === _utils.KEY_VALUES.BACKSPACE) {\n onExit === null || onExit === void 0 ? void 0 : onExit(event);\n }\n }\n if (overlayRef !== null && overlayRef !== void 0 && overlayRef.current) {\n // The keyboard operation callback on the menu.\n onMenuKeyDown === null || onMenuKeyDown === void 0 ? void 0 : onMenuKeyDown(event);\n if (event.key === _utils.KEY_VALUES.ENTER) {\n onMenuPressEnter === null || onMenuPressEnter === void 0 ? void 0 : onMenuPressEnter(event);\n }\n\n /**\n * There is no callback when typing the Backspace key in the search box.\n * The default is to remove search keywords\n */\n if (event.key === _utils.KEY_VALUES.BACKSPACE && event.target !== (searchInputRef === null || searchInputRef === void 0 ? void 0 : searchInputRef.current)) {\n onMenuPressBackspace === null || onMenuPressBackspace === void 0 ? void 0 : onMenuPressBackspace(event);\n }\n\n // The search box gets focus when typing characters and numbers.\n if (event.key.length === 1 && /\\w/.test(event.key)) {\n var _event$target;\n // Exclude Input\n // eg: <SelectPicker renderExtraFooter={() => <Input />} />\n if (((_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.tagName) !== 'INPUT') {\n var _searchInputRef$curre;\n searchInputRef === null || searchInputRef === void 0 ? void 0 : (_searchInputRef$curre = searchInputRef.current) === null || _searchInputRef$curre === void 0 ? void 0 : _searchInputRef$curre.focus();\n }\n }\n }\n if (event.key === _utils.KEY_VALUES.ESC || event.key === _utils.KEY_VALUES.TAB) {\n handleClose();\n }\n\n // Native event callback\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);\n }, [readOnly, disabled, loading, targetRef, overlayRef, onKeyDown, toggle, handleToggleDropdown, onExit, onMenuKeyDown, searchInputRef, onMenuPressEnter, onMenuPressBackspace, handleClose]);\n return onToggle;\n};\nexports.useToggleKeyDownEvent = useToggleKeyDownEvent;\n/**\n * A hook that handles search filter options\n */\nfunction useSearch(data, props) {\n var labelKey = props.labelKey,\n searchBy = props.searchBy,\n callback = props.callback; // Use search keywords to filter options.\n var _useState4 = (0, _react.useState)(''),\n searchKeyword = _useState4[0],\n setSearchKeyword = _useState4[1];\n var resetSearch = (0, _react.useCallback)(function () {\n setSearchKeyword('');\n }, []);\n\n /**\n * Index of keyword in `label`\n * @param {node} label\n */\n var checkShouldDisplay = (0, _react.useCallback)(function (item, keyword) {\n var checkValue = typeof item === 'object' ? item === null || item === void 0 ? void 0 : item[labelKey] : String(item);\n var _keyword = (0, _isUndefined.default)(keyword) ? searchKeyword : keyword;\n if (typeof searchBy === 'function') {\n return searchBy(_keyword, checkValue, item);\n }\n return shouldDisplay(checkValue, _keyword);\n }, [labelKey, searchBy, searchKeyword]);\n var filteredData = (0, _react.useMemo)(function () {\n return data.filter(function (item) {\n return checkShouldDisplay(item, searchKeyword);\n });\n }, [checkShouldDisplay, data, searchKeyword]);\n var handleSearch = function handleSearch(searchKeyword, event) {\n var filteredData = data.filter(function (item) {\n return checkShouldDisplay(item, searchKeyword);\n });\n setSearchKeyword(searchKeyword);\n callback === null || callback === void 0 ? void 0 : callback(searchKeyword, filteredData, event);\n };\n return {\n searchKeyword: searchKeyword,\n filteredData: filteredData,\n checkShouldDisplay: checkShouldDisplay,\n handleSearch: handleSearch,\n resetSearch: resetSearch\n };\n}\n/**\n * A hook of the exposed method of Picker\n */\nfunction usePublicMethods(ref, parmas) {\n var triggerRef = parmas.triggerRef,\n overlayRef = parmas.overlayRef,\n targetRef = parmas.targetRef,\n rootRef = parmas.rootRef,\n listRef = parmas.listRef,\n inline = parmas.inline;\n var handleOpen = (0, _react.useCallback)(function () {\n var _triggerRef$current3;\n triggerRef === null || triggerRef === void 0 ? void 0 : (_triggerRef$current3 = triggerRef.current) === null || _triggerRef$current3 === void 0 ? void 0 : _triggerRef$current3.open();\n }, [triggerRef]);\n var handleClose = (0, _react.useCallback)(function () {\n var _triggerRef$current4;\n triggerRef === null || triggerRef === void 0 ? void 0 : (_triggerRef$current4 = triggerRef.current) === null || _triggerRef$current4 === void 0 ? void 0 : _triggerRef$current4.close();\n }, [triggerRef]);\n var handleUpdatePosition = (0, _react.useCallback)(function () {\n var _triggerRef$current5;\n triggerRef === null || triggerRef === void 0 ? void 0 : (_triggerRef$current5 = triggerRef.current) === null || _triggerRef$current5 === void 0 ? void 0 : _triggerRef$current5.updatePosition();\n }, [triggerRef]);\n (0, _react.useImperativeHandle)(ref, function () {\n // Tree and CheckTree\n if (inline) {\n return {\n get root() {\n var _triggerRef$current$r, _triggerRef$current6;\n return rootRef !== null && rootRef !== void 0 && rootRef.current ? rootRef === null || rootRef === void 0 ? void 0 : rootRef.current : (_triggerRef$current$r = triggerRef === null || triggerRef === void 0 ? void 0 : (_triggerRef$current6 = triggerRef.current) === null || _triggerRef$current6 === void 0 ? void 0 : _triggerRef$current6.root) !== null && _triggerRef$current$r !== void 0 ? _triggerRef$current$r : null;\n },\n get list() {\n if (!(listRef !== null && listRef !== void 0 && listRef.current)) {\n throw new Error('The list is not found, please set `virtualized` for the component.');\n }\n return listRef === null || listRef === void 0 ? void 0 : listRef.current;\n }\n };\n }\n return {\n get root() {\n var _ref, _triggerRef$current7;\n return (_ref = (rootRef === null || rootRef === void 0 ? void 0 : rootRef.current) || (triggerRef === null || triggerRef === void 0 ? void 0 : (_triggerRef$current7 = triggerRef.current) === null || _triggerRef$current7 === void 0 ? void 0 : _triggerRef$current7.root)) !== null && _ref !== void 0 ? _ref : null;\n },\n get overlay() {\n var _overlayRef$current;\n if (!(overlayRef !== null && overlayRef !== void 0 && overlayRef.current)) {\n throw new Error('The overlay is not found. Please confirm whether the picker is open.');\n }\n return (_overlayRef$current = overlayRef === null || overlayRef === void 0 ? void 0 : overlayRef.current) !== null && _overlayRef$current !== void 0 ? _overlayRef$current : null;\n },\n get target() {\n var _targetRef$current2;\n return (_targetRef$current2 = targetRef === null || targetRef === void 0 ? void 0 : targetRef.current) !== null && _targetRef$current2 !== void 0 ? _targetRef$current2 : null;\n },\n get list() {\n if (!(listRef !== null && listRef !== void 0 && listRef.current)) {\n throw new Error(\"\\n The list is not found.\\n 1.Please set virtualized for the component.\\n 2.Please confirm whether the picker is open.\\n \");\n }\n return listRef === null || listRef === void 0 ? void 0 : listRef.current;\n },\n updatePosition: handleUpdatePosition,\n open: handleOpen,\n close: handleClose\n };\n });\n}\n\n//# sourceURL=webpack://rsuite/./src/Picker/utils.ts?");
8675
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports.createConcatChildrenFunction = createConcatChildrenFunction;\nexports.shouldDisplay = shouldDisplay;\nexports.onMenuKeyDown = onMenuKeyDown;\nvar _react = _interopRequireDefault(__webpack_require__(/*! react */ \"react\"));\nvar _trim = _interopRequireDefault(__webpack_require__(/*! lodash/trim */ \"./node_modules/lodash/trim.js\"));\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar defaultNodeKeys = {\n valueKey: 'value',\n childrenKey: 'children'\n};\nfunction createConcatChildrenFunction(node, nodeValue, nodeKeys) {\n if (nodeKeys === void 0) {\n nodeKeys = defaultNodeKeys;\n }\n var _nodeKeys = nodeKeys,\n valueKey = _nodeKeys.valueKey,\n childrenKey = _nodeKeys.childrenKey;\n return function (data, children) {\n if (nodeValue) {\n node = (0, _treeUtils.findNodeOfTree)(data, function (item) {\n return nodeValue === item[valueKey];\n });\n }\n node[childrenKey] = children;\n return data.concat([]);\n };\n}\nfunction shouldDisplay(label, searchKeyword) {\n if (!(0, _trim.default)(searchKeyword)) {\n return true;\n }\n var keyword = searchKeyword.toLocaleLowerCase();\n if (typeof label === 'string' || typeof label === 'number') {\n return (\"\" + label).toLocaleLowerCase().indexOf(keyword) >= 0;\n } else if ( /*#__PURE__*/_react.default.isValidElement(label)) {\n var nodes = (0, _utils.reactToString)(label);\n return nodes.join('').toLocaleLowerCase().indexOf(keyword) >= 0;\n }\n return false;\n}\n/**\n * Handling keyboard events...\n * @param event Keyboard event object\n * @param events Event callback functions\n */\nfunction onMenuKeyDown(event, events) {\n var down = events.down,\n up = events.up,\n enter = events.enter,\n del = events.del,\n esc = events.esc,\n right = events.right,\n left = events.left;\n switch (event.key) {\n // down\n case _utils.KEY_VALUES.DOWN:\n down === null || down === void 0 ? void 0 : down(event);\n event.preventDefault();\n break;\n // up\n case _utils.KEY_VALUES.UP:\n up === null || up === void 0 ? void 0 : up(event);\n event.preventDefault();\n break;\n // enter\n case _utils.KEY_VALUES.ENTER:\n enter === null || enter === void 0 ? void 0 : enter(event);\n event.preventDefault();\n break;\n // delete\n case _utils.KEY_VALUES.BACKSPACE:\n del === null || del === void 0 ? void 0 : del(event);\n break;\n // esc | tab\n case _utils.KEY_VALUES.ESC:\n case _utils.KEY_VALUES.TAB:\n esc === null || esc === void 0 ? void 0 : esc(event);\n break;\n // left arrow\n case _utils.KEY_VALUES.LEFT:\n left === null || left === void 0 ? void 0 : left(event);\n break;\n // right arrow\n case _utils.KEY_VALUES.RIGHT:\n right === null || right === void 0 ? void 0 : right(event);\n break;\n default:\n }\n}\n\n//# sourceURL=webpack://rsuite/./src/Picker/utils.ts?");
8566
8676
 
8567
8677
  /***/ }),
8568
8678
 
@@ -8958,7 +9068,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
8958
9068
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
8959
9069
 
8960
9070
  "use strict";
8961
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _getDataGroupBy = __webpack_require__(/*! ../utils/getDataGroupBy */ \"./src/utils/getDataGroupBy.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/SelectPicker/SelectPicker.tsx\",\n _this = void 0,\n _templateObject;\nvar emptyArray = [];\n/**\n * The `SelectPicker` component is used to select an item from a list of data.\n * @see https://rsuitejs.com/components/select-picker/\n */\nvar SelectPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$data = props.data,\n data = _props$data === void 0 ? emptyArray : _props$data,\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 valueProp = props.value,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n placeholder = props.placeholder,\n defaultValue = props.defaultValue,\n disabled = props.disabled,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n menuClassName = props.menuClassName,\n _props$menuAutoWidth = props.menuAutoWidth,\n menuAutoWidth = _props$menuAutoWidth === void 0 ? true : _props$menuAutoWidth,\n _props$menuMaxHeight = props.menuMaxHeight,\n menuMaxHeight = _props$menuMaxHeight === void 0 ? 320 : _props$menuMaxHeight,\n menuStyle = props.menuStyle,\n groupBy = props.groupBy,\n overrideLocale = props.locale,\n toggleAs = props.toggleAs,\n style = props.style,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n virtualized = props.virtualized,\n listProps = props.listProps,\n id = props.id,\n onGroupTitleClick = props.onGroupTitleClick,\n searchBy = props.searchBy,\n onEntered = props.onEntered,\n onExited = props.onExited,\n onClean = props.onClean,\n onChange = props.onChange,\n onSelect = props.onSelect,\n onSearch = props.onSearch,\n onClose = props.onClose,\n onOpen = props.onOpen,\n sort = props.sort,\n renderValue = props.renderValue,\n renderMenu = props.renderMenu,\n renderMenuGroup = props.renderMenuGroup,\n renderMenuItem = props.renderMenuItem,\n renderExtraFooter = props.renderExtraFooter,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"appearance\", \"data\", \"valueKey\", \"labelKey\", \"value\", \"classPrefix\", \"placeholder\", \"defaultValue\", \"disabled\", \"cleanable\", \"placement\", \"menuClassName\", \"menuAutoWidth\", \"menuMaxHeight\", \"menuStyle\", \"groupBy\", \"locale\", \"toggleAs\", \"style\", \"searchable\", \"disabledItemValues\", \"virtualized\", \"listProps\", \"id\", \"onGroupTitleClick\", \"searchBy\", \"onEntered\", \"onExited\", \"onClean\", \"onChange\", \"onSelect\", \"onSearch\", \"onClose\", \"onOpen\", \"sort\", \"renderValue\", \"renderMenu\", \"renderMenuGroup\", \"renderMenuItem\", \"renderExtraFooter\"]);\n var triggerRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n var searchInputRef = (0, _react.useRef)(null);\n var listRef = (0, _react.useRef)(null);\n var _useCustom = (0, _utils.useCustom)('Picker', overrideLocale),\n locale = _useCustom.locale;\n var _ref = (0, _utils.useControlled)(valueProp, defaultValue),\n value = _ref[0],\n setValue = _ref[1]; // Used to hover the focus item when trigger `onKeydown`\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(value, {\n data: data,\n valueKey: valueKey,\n target: function target() {\n return overlayRef.current;\n }\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setFocusItemValue = _useFocusItemValue.setFocusItemValue,\n onFocusItem = _useFocusItemValue.onKeyDown; // Use search keywords to filter options.\n var _useSearch = (0, _Picker.useSearch)(data, {\n labelKey: labelKey,\n searchBy: searchBy,\n callback: function callback(searchKeyword, filteredData, event) {\n var _filteredData$;\n // The first option after filtering is the focus.\n setFocusItemValue(filteredData === null || filteredData === void 0 ? void 0 : (_filteredData$ = filteredData[0]) === null || _filteredData$ === void 0 ? void 0 : _filteredData$[valueKey]);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);\n }\n }),\n searchKeyword = _useSearch.searchKeyword,\n filteredData = _useSearch.filteredData,\n resetSearch = _useSearch.resetSearch,\n handleSearch = _useSearch.handleSearch; // Use component active state to support keyboard events.\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n var handleClose = (0, _react.useCallback)(function () {\n var _triggerRef$current, _triggerRef$current$c;\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$c = _triggerRef$current.close) === null || _triggerRef$current$c === void 0 ? void 0 : _triggerRef$current$c.call(_triggerRef$current);\n }, []);\n var handleSelect = (0, _react.useCallback)(function (value, item, event) {\n var _targetRef$current;\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, item, event);\n (_targetRef$current = targetRef.current) === null || _targetRef$current === void 0 ? void 0 : _targetRef$current.focus();\n }, [onSelect]);\n var handleChangeValue = (0, _react.useCallback)(function (value, event) {\n onChange === null || onChange === void 0 ? void 0 : onChange(value, event);\n }, [onChange]);\n var handleMenuPressEnter = (0, _react.useCallback)(function (event) {\n if (!focusItemValue) {\n return;\n }\n\n // Find active `MenuItem` by `value`\n var focusItem = data.find(function (item) {\n return (0, _utils.shallowEqual)(item[valueKey], focusItemValue);\n });\n setValue(focusItemValue);\n handleSelect(focusItemValue, focusItem, event);\n handleChangeValue(focusItemValue, event);\n handleClose();\n }, [data, focusItemValue, handleChangeValue, handleClose, handleSelect, setValue, valueKey]);\n var handleItemSelect = (0, _react.useCallback)(function (value, item, event) {\n setValue(value);\n setFocusItemValue(value);\n handleSelect(value, item, event);\n handleChangeValue(value, event);\n handleClose();\n }, [setValue, setFocusItemValue, handleSelect, handleChangeValue, handleClose]);\n var handleClean = (0, _react.useCallback)(function (event) {\n if (disabled || !cleanable) {\n return;\n }\n setValue(null);\n setFocusItemValue(value);\n handleChangeValue(null, event);\n }, [value, disabled, cleanable, setValue, handleChangeValue, setFocusItemValue]);\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.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 onClose: function onClose() {\n setFocusItemValue(null);\n }\n }, rest));\n var handleExited = (0, _react.useCallback)(function () {\n resetSearch();\n setActive(false);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch('');\n onClose === null || onClose === void 0 ? void 0 : onClose();\n }, [onClose, resetSearch, onSearch]);\n var handleEntered = (0, _react.useCallback)(function () {\n setActive(true);\n setFocusItemValue(value);\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n }, [onOpen, setFocusItemValue, value]);\n (0, _Picker.usePublicMethods)(ref, {\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef,\n listRef: listRef\n });\n\n // Find active `MenuItem` by `value`\n var activeItem = data.find(function (item) {\n return (0, _utils.shallowEqual)(item[valueKey], value);\n });\n\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 var hasValue = !!activeItem || !(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var selectedElement = placeholder;\n if (activeItem !== null && activeItem !== void 0 && activeItem[labelKey]) {\n selectedElement = activeItem[labelKey];\n }\n if (!(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue)) {\n selectedElement = renderValue(value, activeItem, selectedElement);\n // If renderValue returns null or undefined, hasValue is false.\n if ((0, _isNil.default)(selectedElement)) {\n hasValue = false;\n }\n }\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = merge(className, menuClassName, prefix('select-menu'));\n var styles = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var items = filteredData;\n\n // Create a tree structure data when set `groupBy`\n if (groupBy) {\n items = (0, _getDataGroupBy.getDataGroupBy)(items, groupBy, sort);\n } else if (typeof sort === 'function') {\n items = items.sort(sort(false));\n }\n var menu = items.length ? /*#__PURE__*/_react.default.createElement(_Picker.DropdownMenu, {\n id: id ? id + \"-listbox\" : undefined,\n listProps: listProps,\n listRef: listRef,\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n labelKey: labelKey,\n renderMenuGroup: renderMenuGroup,\n renderMenuItem: renderMenuItem,\n maxHeight: menuMaxHeight,\n classPrefix: 'picker-select-menu',\n dropdownMenuItemClassPrefix: 'picker-select-menu-item',\n dropdownMenuItemAs: _Picker.DropdownMenuItem,\n activeItemValues: [value],\n focusItemValue: focusItemValue,\n data: items\n // FIXME-Doma\n // `group` is redundant so long as `groupBy` exists\n ,\n group: !(0, _isUndefined.default)(groupBy),\n groupBy: groupBy,\n onSelect: handleItemSelect,\n onGroupTitleClick: onGroupTitleClick,\n virtualized: virtualized,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 355,\n columnNumber: 9\n }\n }) : /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"none\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 380,\n columnNumber: 9\n }\n }, locale === null || locale === void 0 ? void 0 : locale.noResultsText);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n ref: (0, _utils.mergeRefs)(overlayRef, speakerRef),\n autoWidth: menuAutoWidth,\n className: classes,\n style: styles,\n onKeyDown: onPickerKeyDown,\n target: triggerRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 384,\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: 393,\n columnNumber: 13\n }\n }), renderMenu ? renderMenu(menu) : menu, renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n appearance: appearance,\n hasValue: hasValue,\n name: 'select',\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n placement: placement,\n onEntered: (0, _utils.createChainedFunction)(handleEntered, onEntered),\n onExited: (0, _utils.createChainedFunction)(handleExited, onExited),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 417,\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: 425,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n id: id,\n ref: targetRef,\n appearance: appearance,\n onClean: (0, _utils.createChainedFunction)(handleClean, onClean),\n onKeyDown: onPickerKeyDown,\n as: toggleAs,\n disabled: disabled,\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n inputValue: value !== null && value !== void 0 ? value : '',\n active: active,\n placement: placement,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 426,\n columnNumber: 11\n }\n }), selectedElement || (locale === null || locale === void 0 ? void 0 : locale.placeholder))));\n});\nSelectPicker.displayName = 'SelectPicker';\nSelectPicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes, {\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n menuAutoWidth: _propTypes.default.bool,\n menuMaxHeight: _propTypes.default.number,\n renderMenu: _propTypes.default.func,\n renderMenuItem: _propTypes.default.func,\n renderMenuGroup: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onGroupTitleClick: _propTypes.default.func,\n onSearch: _propTypes.default.func,\n /**\n * group by key in `data`\n */\n groupBy: _propTypes.default.any,\n sort: _propTypes.default.func,\n searchable: _propTypes.default.bool,\n virtualized: _propTypes.default.bool,\n searchBy: _propTypes.default.func\n});\nvar _default = SelectPicker;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/SelectPicker/SelectPicker.tsx?");
9071
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _getDataGroupBy = __webpack_require__(/*! ../utils/getDataGroupBy */ \"./src/utils/getDataGroupBy.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/SelectPicker/SelectPicker.tsx\",\n _this = void 0,\n _templateObject;\nvar emptyArray = [];\n/**\n * The `SelectPicker` component is used to select an item from a list of data.\n * @see https://rsuitejs.com/components/select-picker/\n */\nvar SelectPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$data = props.data,\n data = _props$data === void 0 ? emptyArray : _props$data,\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 valueProp = props.value,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n placeholder = props.placeholder,\n defaultValue = props.defaultValue,\n disabled = props.disabled,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n menuClassName = props.menuClassName,\n _props$menuAutoWidth = props.menuAutoWidth,\n menuAutoWidth = _props$menuAutoWidth === void 0 ? true : _props$menuAutoWidth,\n _props$menuMaxHeight = props.menuMaxHeight,\n menuMaxHeight = _props$menuMaxHeight === void 0 ? 320 : _props$menuMaxHeight,\n menuStyle = props.menuStyle,\n groupBy = props.groupBy,\n overrideLocale = props.locale,\n toggleAs = props.toggleAs,\n style = props.style,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n virtualized = props.virtualized,\n listProps = props.listProps,\n id = props.id,\n onGroupTitleClick = props.onGroupTitleClick,\n searchBy = props.searchBy,\n onEntered = props.onEntered,\n onExited = props.onExited,\n onClean = props.onClean,\n onChange = props.onChange,\n onSelect = props.onSelect,\n onSearch = props.onSearch,\n onClose = props.onClose,\n onOpen = props.onOpen,\n sort = props.sort,\n renderValue = props.renderValue,\n renderMenu = props.renderMenu,\n renderMenuGroup = props.renderMenuGroup,\n renderMenuItem = props.renderMenuItem,\n renderExtraFooter = props.renderExtraFooter,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"appearance\", \"data\", \"valueKey\", \"labelKey\", \"value\", \"classPrefix\", \"placeholder\", \"defaultValue\", \"disabled\", \"cleanable\", \"placement\", \"menuClassName\", \"menuAutoWidth\", \"menuMaxHeight\", \"menuStyle\", \"groupBy\", \"locale\", \"toggleAs\", \"style\", \"searchable\", \"disabledItemValues\", \"virtualized\", \"listProps\", \"id\", \"onGroupTitleClick\", \"searchBy\", \"onEntered\", \"onExited\", \"onClean\", \"onChange\", \"onSelect\", \"onSearch\", \"onClose\", \"onOpen\", \"sort\", \"renderValue\", \"renderMenu\", \"renderMenuGroup\", \"renderMenuItem\", \"renderExtraFooter\"]);\n var _usePickerRef = (0, _Picker.usePickerRef)(ref),\n trigger = _usePickerRef.trigger,\n root = _usePickerRef.root,\n target = _usePickerRef.target,\n overlay = _usePickerRef.overlay,\n list = _usePickerRef.list,\n searchInput = _usePickerRef.searchInput;\n var _useCustom = (0, _utils.useCustom)('Picker', overrideLocale),\n locale = _useCustom.locale;\n var _ref = (0, _utils.useControlled)(valueProp, defaultValue),\n value = _ref[0],\n setValue = _ref[1]; // Used to hover the focus item when trigger `onKeydown`\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(value, {\n data: data,\n valueKey: valueKey,\n target: function target() {\n return overlay.current;\n }\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setFocusItemValue = _useFocusItemValue.setFocusItemValue,\n onFocusItem = _useFocusItemValue.onKeyDown; // Use search keywords to filter options.\n var _useSearch = (0, _Picker.useSearch)(data, {\n labelKey: labelKey,\n searchBy: searchBy,\n callback: function callback(searchKeyword, filteredData, event) {\n var _filteredData$;\n // The first option after filtering is the focus.\n setFocusItemValue(filteredData === null || filteredData === void 0 ? void 0 : (_filteredData$ = filteredData[0]) === null || _filteredData$ === void 0 ? void 0 : _filteredData$[valueKey]);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);\n }\n }),\n searchKeyword = _useSearch.searchKeyword,\n filteredData = _useSearch.filteredData,\n resetSearch = _useSearch.resetSearch,\n handleSearch = _useSearch.handleSearch; // Use component active state to support keyboard events.\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n var handleClose = (0, _utils.useEventCallback)(function () {\n var _trigger$current, _trigger$current$clos;\n (_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : (_trigger$current$clos = _trigger$current.close) === null || _trigger$current$clos === void 0 ? void 0 : _trigger$current$clos.call(_trigger$current);\n });\n var handleSelect = (0, _utils.useEventCallback)(function (value, item, event) {\n var _target$current;\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, item, event);\n (_target$current = target.current) === null || _target$current === void 0 ? void 0 : _target$current.focus();\n });\n var handleChangeValue = (0, _utils.useEventCallback)(function (value, event) {\n onChange === null || onChange === void 0 ? void 0 : onChange(value, event);\n });\n var handleMenuPressEnter = (0, _utils.useEventCallback)(function (event) {\n if (!focusItemValue) {\n return;\n }\n\n // Find active `MenuItem` by `value`\n var focusItem = data.find(function (item) {\n return (0, _utils.shallowEqual)(item[valueKey], focusItemValue);\n });\n setValue(focusItemValue);\n handleSelect(focusItemValue, focusItem, event);\n handleChangeValue(focusItemValue, event);\n handleClose();\n });\n var handleItemSelect = (0, _utils.useEventCallback)(function (value, item, event) {\n setValue(value);\n setFocusItemValue(value);\n handleSelect(value, item, event);\n handleChangeValue(value, event);\n handleClose();\n });\n var handleClean = (0, _utils.useEventCallback)(function (event) {\n if (disabled || !cleanable) {\n return;\n }\n setValue(null);\n setFocusItemValue(value);\n handleChangeValue(null, event);\n });\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({\n toggle: !focusItemValue || !active,\n trigger: trigger,\n target: target,\n overlay: overlay,\n searchInput: searchInput,\n active: active,\n onExit: handleClean,\n onMenuKeyDown: onFocusItem,\n onMenuPressEnter: handleMenuPressEnter,\n onClose: function onClose() {\n setFocusItemValue(null);\n }\n }, rest));\n var handleExited = (0, _utils.useEventCallback)(function () {\n resetSearch();\n setActive(false);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch('');\n onClose === null || onClose === void 0 ? void 0 : onClose();\n });\n var handleEntered = (0, _utils.useEventCallback)(function () {\n setActive(true);\n setFocusItemValue(value);\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n });\n\n // Find active `MenuItem` by `value`\n var activeItem = data.find(function (item) {\n return (0, _utils.shallowEqual)(item[valueKey], value);\n });\n\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 var hasValue = !!activeItem || !(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var selectedElement = placeholder;\n if (activeItem !== null && activeItem !== void 0 && activeItem[labelKey]) {\n selectedElement = activeItem[labelKey];\n }\n if (!(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue)) {\n selectedElement = renderValue(value, activeItem, selectedElement);\n // If renderValue returns null or undefined, hasValue is false.\n if ((0, _isNil.default)(selectedElement)) {\n hasValue = false;\n }\n }\n var renderPopup = function renderPopup(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = merge(className, menuClassName, prefix('select-menu'));\n var styles = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var items = filteredData;\n\n // Create a tree structure data when set `groupBy`\n if (groupBy) {\n items = (0, _getDataGroupBy.getDataGroupBy)(items, groupBy, sort);\n } else if (typeof sort === 'function') {\n items = items.sort(sort(false));\n }\n var menu = items.length ? /*#__PURE__*/_react.default.createElement(_Picker.Listbox, {\n listProps: listProps,\n listRef: list,\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n labelKey: labelKey,\n renderMenuGroup: renderMenuGroup,\n renderMenuItem: renderMenuItem,\n maxHeight: menuMaxHeight,\n classPrefix: 'picker-select-menu',\n listItemClassPrefix: 'picker-select-menu-item',\n listItemAs: _Picker.ListItem,\n activeItemValues: [value],\n focusItemValue: focusItemValue,\n data: items\n // FIXME-Doma\n // `group` is redundant so long as `groupBy` exists\n ,\n group: !(0, _isUndefined.default)(groupBy),\n groupBy: groupBy,\n onSelect: handleItemSelect,\n onGroupTitleClick: onGroupTitleClick,\n virtualized: virtualized,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 337,\n columnNumber: 9\n }\n }) : /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"none\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 361,\n columnNumber: 9\n }\n }, locale === null || locale === void 0 ? void 0 : locale.noResultsText);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerPopup, {\n ref: (0, _utils.mergeRefs)(overlay, speakerRef),\n autoWidth: menuAutoWidth,\n className: classes,\n style: styles,\n onKeyDown: onPickerKeyDown,\n target: trigger,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 365,\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: searchInput,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 374,\n columnNumber: 13\n }\n }), renderMenu ? renderMenu(menu) : menu, renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n appearance: appearance,\n hasValue: hasValue,\n name: 'select',\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n id: id,\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: trigger,\n placement: placement,\n onEntered: (0, _utils.createChainedFunction)(handleEntered, onEntered),\n onExited: (0, _utils.createChainedFunction)(handleExited, onExited),\n speaker: renderPopup,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 398,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n ref: root,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 407,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n ref: target,\n appearance: appearance,\n onClean: (0, _utils.createChainedFunction)(handleClean, onClean),\n onKeyDown: onPickerKeyDown,\n as: toggleAs,\n disabled: disabled,\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n inputValue: value !== null && value !== void 0 ? value : '',\n focusItemValue: focusItemValue,\n active: active,\n placement: placement,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 408,\n columnNumber: 11\n }\n }), selectedElement || (locale === null || locale === void 0 ? void 0 : locale.placeholder))));\n});\nSelectPicker.displayName = 'SelectPicker';\nSelectPicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes, {\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n menuAutoWidth: _propTypes.default.bool,\n menuMaxHeight: _propTypes.default.number,\n renderMenu: _propTypes.default.func,\n renderMenuItem: _propTypes.default.func,\n renderMenuGroup: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onGroupTitleClick: _propTypes.default.func,\n onSearch: _propTypes.default.func,\n /**\n * group by key in `data`\n */\n groupBy: _propTypes.default.any,\n sort: _propTypes.default.func,\n searchable: _propTypes.default.bool,\n virtualized: _propTypes.default.bool,\n searchBy: _propTypes.default.func\n});\nvar _default = SelectPicker;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/SelectPicker/SelectPicker.tsx?");
8962
9072
 
8963
9073
  /***/ }),
8964
9074
 
@@ -9376,7 +9486,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
9376
9486
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
9377
9487
 
9378
9488
  "use strict";
9379
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _InputPicker = _interopRequireDefault(__webpack_require__(/*! ../InputPicker/InputPicker */ \"./src/InputPicker/InputPicker.tsx\"));\nvar _InputPickerContext = _interopRequireDefault(__webpack_require__(/*! ../InputPicker/InputPickerContext */ \"./src/InputPicker/InputPickerContext.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/TagInput/index.tsx\",\n _this = void 0;\n/**\n * The `TagInput` component is an enhancement of Input and supports input tags and management tags.\n *\n * @see https://rsuitejs.com/components/tag-input\n */\nvar TagInput = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$tagProps = props.tagProps,\n tagProps = _props$tagProps === void 0 ? {} : _props$tagProps,\n _props$trigger = props.trigger,\n trigger = _props$trigger === void 0 ? 'Enter' : _props$trigger,\n value = props.value,\n defaultValue = props.defaultValue,\n onTagRemove = props.onTagRemove,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"tagProps\", \"trigger\", \"value\", \"defaultValue\", \"onTagRemove\"]);\n var contextValue = (0, _react.useMemo)(function () {\n return {\n multi: true,\n disabledOptions: true,\n trigger: trigger,\n tagProps: tagProps,\n onTagRemove: onTagRemove\n };\n }, [onTagRemove, tagProps, trigger]);\n var data = (0, _react.useMemo)(function () {\n return (value || defaultValue || []).map(function (v) {\n return {\n value: v,\n label: v\n };\n });\n }, [defaultValue, value]);\n return /*#__PURE__*/_react.default.createElement(_InputPickerContext.default.Provider, {\n value: contextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 27,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(_InputPicker.default, (0, _extends2.default)({}, rest, {\n value: value,\n defaultValue: defaultValue,\n data: data,\n placement: undefined,\n creatable: true,\n ref: ref,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 28,\n columnNumber: 7\n }\n })));\n});\nTagInput.displayName = 'TagInput';\nvar _default = TagInput;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/TagInput/index.tsx?");
9489
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _InputPicker = _interopRequireDefault(__webpack_require__(/*! ../InputPicker/InputPicker */ \"./src/InputPicker/InputPicker.tsx\"));\nvar _InputPickerContext = _interopRequireDefault(__webpack_require__(/*! ../InputPicker/InputPickerContext */ \"./src/InputPicker/InputPickerContext.tsx\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/TagInput/index.tsx\",\n _this = void 0;\n/**\n * The `TagInput` component is an enhancement of Input and supports input tags and management tags.\n *\n * @see https://rsuitejs.com/components/tag-input\n */\nvar TagInput = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$tagProps = props.tagProps,\n tagProps = _props$tagProps === void 0 ? {} : _props$tagProps,\n _props$trigger = props.trigger,\n trigger = _props$trigger === void 0 ? 'Enter' : _props$trigger,\n value = props.value,\n defaultValue = props.defaultValue,\n onTagRemove = props.onTagRemove,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"tagProps\", \"trigger\", \"value\", \"defaultValue\", \"onTagRemove\"]);\n var contextValue = (0, _react.useMemo)(function () {\n return {\n multi: true,\n disabledOptions: true,\n trigger: trigger,\n tagProps: tagProps,\n onTagRemove: onTagRemove\n };\n }, [onTagRemove, tagProps, trigger]);\n var data = (0, _react.useMemo)(function () {\n return (value || defaultValue || []).map(function (v) {\n return {\n value: v,\n label: v\n };\n });\n }, [defaultValue, value]);\n return /*#__PURE__*/_react.default.createElement(_InputPickerContext.default.Provider, {\n value: contextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 27,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(_InputPicker.default, (0, _extends2.default)({}, rest, {\n \"aria-haspopup\": false,\n \"aria-expanded\": undefined,\n \"aria-controls\": undefined,\n \"aria-keyshortcuts\": trigger,\n value: value,\n defaultValue: defaultValue,\n data: data,\n placement: undefined,\n creatable: true,\n ref: ref,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 28,\n columnNumber: 7\n }\n })));\n});\nTagInput.displayName = 'TagInput';\nvar _default = TagInput;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/TagInput/index.tsx?");
9380
9490
 
9381
9491
  /***/ }),
9382
9492
 
@@ -9508,7 +9618,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
9508
9618
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
9509
9619
 
9510
9620
  "use strict";
9511
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _hasClass = _interopRequireDefault(__webpack_require__(/*! dom-lib/hasClass */ \"./node_modules/dom-lib/esm/hasClass.js\"));\nvar _ArrowDown = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/ArrowDown */ \"./node_modules/@rsuite/icons/legacy/ArrowDown.js\"));\nvar _Spinner = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Spinner */ \"./node_modules/@rsuite/icons/legacy/Spinner.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/TreePicker/TreeNode.tsx\",\n _this = void 0;\nvar TreeNode = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {\n var _ref$as = _ref.as,\n Component = _ref$as === void 0 ? 'div' : _ref$as,\n rtl = _ref.rtl,\n label = _ref.label,\n layer = _ref.layer,\n style = _ref.style,\n active = _ref.active,\n loading = _ref.loading,\n nodeData = _ref.nodeData,\n className = _ref.className,\n _ref$classPrefix = _ref.classPrefix,\n classPrefix = _ref$classPrefix === void 0 ? 'tree-node' : _ref$classPrefix,\n disabled = _ref.disabled,\n _ref$visible = _ref.visible,\n visible = _ref$visible === void 0 ? true : _ref$visible,\n draggable = _ref.draggable,\n expand = _ref.expand,\n focus = _ref.focus,\n hasChildren = _ref.hasChildren,\n dragging = _ref.dragging,\n dragOver = _ref.dragOver,\n dragOverTop = _ref.dragOverTop,\n dragOverBottom = _ref.dragOverBottom,\n onSelect = _ref.onSelect,\n onDragStart = _ref.onDragStart,\n onDragOver = _ref.onDragOver,\n onDragEnter = _ref.onDragEnter,\n onDragLeave = _ref.onDragLeave,\n onDragEnd = _ref.onDragEnd,\n onDrop = _ref.onDrop,\n onExpand = _ref.onExpand,\n onRenderTreeIcon = _ref.onRenderTreeIcon,\n onRenderTreeNode = _ref.onRenderTreeNode,\n rest = (0, _objectWithoutPropertiesLoose2.default)(_ref, [\"as\", \"rtl\", \"label\", \"layer\", \"style\", \"active\", \"loading\", \"nodeData\", \"className\", \"classPrefix\", \"disabled\", \"visible\", \"draggable\", \"expand\", \"focus\", \"hasChildren\", \"dragging\", \"dragOver\", \"dragOverTop\", \"dragOverBottom\", \"onSelect\", \"onDragStart\", \"onDragOver\", \"onDragEnter\", \"onDragLeave\", \"onDragEnd\", \"onDrop\", \"onExpand\", \"onRenderTreeIcon\", \"onRenderTreeNode\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix;\n var handleExpand = (0, _react.useCallback)(function (event) {\n var _event$nativeEvent, _event$nativeEvent$st;\n // stop propagation when using custom loading icon\n event === null || event === void 0 ? void 0 : (_event$nativeEvent = event.nativeEvent) === null || _event$nativeEvent === void 0 ? void 0 : (_event$nativeEvent$st = _event$nativeEvent.stopImmediatePropagation) === null || _event$nativeEvent$st === void 0 ? void 0 : _event$nativeEvent$st.call(_event$nativeEvent);\n onExpand === null || onExpand === void 0 ? void 0 : onExpand(nodeData);\n }, [nodeData, onExpand]);\n var handleSelect = (0, _react.useCallback)(function (event) {\n if (disabled) {\n return;\n }\n if (event.target instanceof HTMLElement) {\n if ((0, _hasClass.default)(event.target.parentNode, prefix('expand-icon-wrapper'))) {\n return;\n }\n }\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(nodeData, event);\n }, [nodeData, disabled, prefix, onSelect]);\n var handleDragStart = (0, _react.useCallback)(function (event) {\n onDragStart === null || onDragStart === void 0 ? void 0 : onDragStart(nodeData, event);\n }, [nodeData, onDragStart]);\n var handleDragEnter = (0, _react.useCallback)(function (event) {\n event.preventDefault();\n event.stopPropagation();\n onDragEnter === null || onDragEnter === void 0 ? void 0 : onDragEnter(nodeData, event);\n }, [nodeData, onDragEnter]);\n var handleDragOver = (0, _react.useCallback)(function (event) {\n event.preventDefault();\n event.stopPropagation();\n onDragOver === null || onDragOver === void 0 ? void 0 : onDragOver(nodeData, event);\n }, [nodeData, onDragOver]);\n var handleDragLeave = (0, _react.useCallback)(function (event) {\n event.stopPropagation();\n onDragLeave === null || onDragLeave === void 0 ? void 0 : onDragLeave(nodeData, event);\n }, [nodeData, onDragLeave]);\n var handleDragEnd = (0, _react.useCallback)(function (event) {\n event.stopPropagation();\n onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(nodeData, event);\n }, [nodeData, onDragEnd]);\n var handleDrop = (0, _react.useCallback)(function (event) {\n event.preventDefault();\n event.stopPropagation();\n onDrop === null || onDrop === void 0 ? void 0 : onDrop(nodeData, event);\n }, [nodeData, onDrop]);\n var renderIcon = function renderIcon() {\n var classes = prefix('expand-icon', 'icon', {\n expanded: expand\n });\n var expandIcon = /*#__PURE__*/_react.default.createElement(_ArrowDown.default, {\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 166,\n columnNumber: 24\n }\n });\n if (loading) {\n expandIcon = /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('loading-icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 169,\n columnNumber: 11\n }\n }, /*#__PURE__*/_react.default.createElement(_Spinner.default, {\n spin: true,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 170,\n columnNumber: 13\n }\n }));\n }\n if (nodeData !== undefined && typeof onRenderTreeIcon === 'function') {\n var customIcon = onRenderTreeIcon(nodeData);\n expandIcon = customIcon !== null ? /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('custom-icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 178,\n columnNumber: 13\n }\n }, customIcon) : expandIcon;\n }\n return hasChildren ? /*#__PURE__*/_react.default.createElement(\"div\", {\n role: \"button\",\n tabIndex: -1,\n \"data-ref\": nodeData.refKey,\n className: prefix('expand-icon-wrapper'),\n onClick: handleExpand,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 185,\n columnNumber: 9\n }\n }, expandIcon) : null;\n };\n var renderLabel = function renderLabel() {\n var contentClasses = prefix('label-content', {\n dragging: dragging,\n 'drag-over': dragOver,\n 'drag-over-top': dragOverTop,\n 'drag-over-bottom': dragOverBottom\n });\n return /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix('label'),\n title: (0, _treeUtils.stringifyTreeNodeLabel)(label),\n \"data-layer\": layer,\n \"data-key\": (nodeData === null || nodeData === void 0 ? void 0 : nodeData.refKey) || '',\n role: \"button\",\n tabIndex: -1,\n onClick: handleSelect,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 205,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(\"span\", {\n className: contentClasses,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 214,\n columnNumber: 11\n }\n }, onRenderTreeNode ? onRenderTreeNode(nodeData) : label));\n };\n var classes = merge(className, withClassPrefix({\n disabled: disabled,\n active: active,\n 'text-muted': disabled,\n focus: focus\n }));\n var styles = (0, _extends2.default)({}, style, (0, _treeUtils.getTreeNodeIndent)(rtl, layer - 1));\n return visible ? /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"treeitem\"\n }, rest, {\n \"aria-expanded\": expand,\n \"aria-label\": label,\n \"aria-level\": layer,\n \"aria-disabled\": disabled,\n \"aria-selected\": active,\n style: styles,\n className: classes,\n ref: ref,\n draggable: draggable,\n onDragStart: handleDragStart,\n onDragEnter: handleDragEnter,\n onDragOver: handleDragOver,\n onDragLeave: handleDragLeave,\n onDragEnd: handleDragEnd,\n onDrop: handleDrop,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 229,\n columnNumber: 7\n }\n }), renderIcon(), renderLabel()) : null;\n});\nTreeNode.displayName = 'TreePickerNode';\nTreeNode.propTypes = {\n as: _propTypes.default.elementType,\n rtl: _propTypes.default.bool,\n focus: _propTypes.default.bool,\n layer: _propTypes.default.number,\n value: _propTypes.default.any,\n label: _propTypes.default.any,\n expand: _propTypes.default.bool,\n active: _propTypes.default.bool,\n loading: _propTypes.default.bool,\n visible: _propTypes.default.bool,\n nodeData: _propTypes.default.any,\n disabled: _propTypes.default.bool,\n draggable: _propTypes.default.bool,\n dragging: _propTypes.default.bool,\n dragOver: _propTypes.default.bool,\n dragOverTop: _propTypes.default.bool,\n dragOverBottom: _propTypes.default.bool,\n hasChildren: _propTypes.default.bool,\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n style: _propTypes.default.object,\n onExpand: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onRenderTreeIcon: _propTypes.default.func,\n onRenderTreeNode: _propTypes.default.func,\n onDragStart: _propTypes.default.func,\n onDragEnter: _propTypes.default.func,\n onDragOver: _propTypes.default.func,\n onDragLeave: _propTypes.default.func,\n onDragEnd: _propTypes.default.func,\n onDrop: _propTypes.default.func\n};\nvar _default = TreeNode;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/TreePicker/TreeNode.tsx?");
9621
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _hasClass = _interopRequireDefault(__webpack_require__(/*! dom-lib/hasClass */ \"./node_modules/dom-lib/esm/hasClass.js\"));\nvar _ArrowDown = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/ArrowDown */ \"./node_modules/@rsuite/icons/legacy/ArrowDown.js\"));\nvar _Spinner = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Spinner */ \"./node_modules/@rsuite/icons/legacy/Spinner.js\"));\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/TreePicker/TreeNode.tsx\",\n _this = void 0;\nvar TreeNode = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {\n var _ref$as = _ref.as,\n Component = _ref$as === void 0 ? 'div' : _ref$as,\n rtl = _ref.rtl,\n label = _ref.label,\n layer = _ref.layer,\n style = _ref.style,\n active = _ref.active,\n loading = _ref.loading,\n nodeData = _ref.nodeData,\n className = _ref.className,\n _ref$classPrefix = _ref.classPrefix,\n classPrefix = _ref$classPrefix === void 0 ? 'tree-node' : _ref$classPrefix,\n disabled = _ref.disabled,\n _ref$visible = _ref.visible,\n visible = _ref$visible === void 0 ? true : _ref$visible,\n draggable = _ref.draggable,\n expand = _ref.expand,\n focus = _ref.focus,\n hasChildren = _ref.hasChildren,\n dragging = _ref.dragging,\n dragOver = _ref.dragOver,\n dragOverTop = _ref.dragOverTop,\n dragOverBottom = _ref.dragOverBottom,\n onSelect = _ref.onSelect,\n onDragStart = _ref.onDragStart,\n onDragOver = _ref.onDragOver,\n onDragEnter = _ref.onDragEnter,\n onDragLeave = _ref.onDragLeave,\n onDragEnd = _ref.onDragEnd,\n onDrop = _ref.onDrop,\n onExpand = _ref.onExpand,\n renderTreeIcon = _ref.renderTreeIcon,\n renderTreeNode = _ref.renderTreeNode,\n rest = (0, _objectWithoutPropertiesLoose2.default)(_ref, [\"as\", \"rtl\", \"label\", \"layer\", \"style\", \"active\", \"loading\", \"nodeData\", \"className\", \"classPrefix\", \"disabled\", \"visible\", \"draggable\", \"expand\", \"focus\", \"hasChildren\", \"dragging\", \"dragOver\", \"dragOverTop\", \"dragOverBottom\", \"onSelect\", \"onDragStart\", \"onDragOver\", \"onDragEnter\", \"onDragLeave\", \"onDragEnd\", \"onDrop\", \"onExpand\", \"renderTreeIcon\", \"renderTreeNode\"]);\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix;\n var handleExpand = (0, _utils.useEventCallback)(function (event) {\n var _event$nativeEvent, _event$nativeEvent$st;\n // stop propagation when using custom loading icon\n event === null || event === void 0 ? void 0 : (_event$nativeEvent = event.nativeEvent) === null || _event$nativeEvent === void 0 ? void 0 : (_event$nativeEvent$st = _event$nativeEvent.stopImmediatePropagation) === null || _event$nativeEvent$st === void 0 ? void 0 : _event$nativeEvent$st.call(_event$nativeEvent);\n onExpand === null || onExpand === void 0 ? void 0 : onExpand(nodeData);\n });\n var handleSelect = (0, _utils.useEventCallback)(function (event) {\n if (disabled) {\n return;\n }\n if (event.target instanceof HTMLElement) {\n if ((0, _hasClass.default)(event.target.parentNode, prefix('expand-icon-wrapper'))) {\n return;\n }\n }\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(nodeData, event);\n });\n var handleDragStart = (0, _utils.useEventCallback)(function (event) {\n onDragStart === null || onDragStart === void 0 ? void 0 : onDragStart(nodeData, event);\n });\n var handleDragEnter = (0, _utils.useEventCallback)(function (event) {\n event.preventDefault();\n event.stopPropagation();\n onDragEnter === null || onDragEnter === void 0 ? void 0 : onDragEnter(nodeData, event);\n });\n var handleDragOver = (0, _utils.useEventCallback)(function (event) {\n event.preventDefault();\n event.stopPropagation();\n onDragOver === null || onDragOver === void 0 ? void 0 : onDragOver(nodeData, event);\n });\n var handleDragLeave = (0, _utils.useEventCallback)(function (event) {\n event.stopPropagation();\n onDragLeave === null || onDragLeave === void 0 ? void 0 : onDragLeave(nodeData, event);\n });\n var handleDragEnd = (0, _utils.useEventCallback)(function (event) {\n event.stopPropagation();\n onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(nodeData, event);\n });\n var handleDrop = (0, _utils.useEventCallback)(function (event) {\n event.preventDefault();\n event.stopPropagation();\n onDrop === null || onDrop === void 0 ? void 0 : onDrop(nodeData, event);\n });\n var renderIcon = function renderIcon() {\n var classes = prefix('expand-icon', 'icon', {\n expanded: expand\n });\n var expandIcon = /*#__PURE__*/_react.default.createElement(_ArrowDown.default, {\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 141,\n columnNumber: 24\n }\n });\n if (loading) {\n expandIcon = /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('loading-icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 144,\n columnNumber: 11\n }\n }, /*#__PURE__*/_react.default.createElement(_Spinner.default, {\n spin: true,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 145,\n columnNumber: 13\n }\n }));\n }\n if (nodeData !== undefined && typeof renderTreeIcon === 'function') {\n var customIcon = renderTreeIcon(nodeData);\n expandIcon = customIcon !== null ? /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('custom-icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 153,\n columnNumber: 13\n }\n }, customIcon) : expandIcon;\n }\n return hasChildren ? /*#__PURE__*/_react.default.createElement(\"div\", {\n role: \"button\",\n tabIndex: -1,\n \"data-ref\": nodeData.refKey,\n className: prefix('expand-icon-wrapper'),\n onClick: handleExpand,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 160,\n columnNumber: 9\n }\n }, expandIcon) : null;\n };\n var renderLabel = function renderLabel() {\n var contentClasses = prefix('label-content', {\n dragging: dragging,\n 'drag-over': dragOver,\n 'drag-over-top': dragOverTop,\n 'drag-over-bottom': dragOverBottom\n });\n return /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix('label'),\n title: (0, _treeUtils.stringifyTreeNodeLabel)(label),\n \"data-layer\": layer,\n \"data-key\": (nodeData === null || nodeData === void 0 ? void 0 : nodeData.refKey) || '',\n role: \"button\",\n tabIndex: -1,\n onClick: handleSelect,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 180,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(\"span\", {\n className: contentClasses,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 189,\n columnNumber: 11\n }\n }, renderTreeNode ? renderTreeNode(nodeData) : label));\n };\n var classes = merge(className, withClassPrefix({\n disabled: disabled,\n active: active,\n 'text-muted': disabled,\n focus: focus\n }));\n var styles = (0, _extends2.default)({}, style, (0, _treeUtils.getTreeNodeIndent)(rtl, layer - 1));\n return visible ? /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"treeitem\"\n }, rest, {\n \"aria-expanded\": expand,\n \"aria-label\": label,\n \"aria-level\": layer,\n \"aria-disabled\": disabled,\n \"aria-selected\": active,\n style: styles,\n className: classes,\n ref: ref,\n draggable: draggable,\n onDragStart: handleDragStart,\n onDragEnter: handleDragEnter,\n onDragOver: handleDragOver,\n onDragLeave: handleDragLeave,\n onDragEnd: handleDragEnd,\n onDrop: handleDrop,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 204,\n columnNumber: 7\n }\n }), renderIcon(), renderLabel()) : null;\n});\nTreeNode.displayName = 'TreePickerNode';\nvar _default = TreeNode;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/TreePicker/TreeNode.tsx?");
9512
9622
 
9513
9623
  /***/ }),
9514
9624
 
@@ -9519,7 +9629,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
9519
9629
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
9520
9630
 
9521
9631
  "use strict";
9522
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _isFunction2 = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _isNil2 = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _isUndefined2 = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _omit2 = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _pick2 = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _Windowing = __webpack_require__(/*! ../Windowing */ \"./src/Windowing/index.ts\");\nvar _TreeNode = _interopRequireDefault(__webpack_require__(/*! ./TreeNode */ \"./src/TreePicker/TreeNode.tsx\"));\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _TreeContext = _interopRequireDefault(__webpack_require__(/*! ../Tree/TreeContext */ \"./src/Tree/TreeContext.ts\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/TreePicker/TreePicker.tsx\",\n _this = void 0;\nvar emptyArray = [];\nvar itemSize = function itemSize() {\n return 36;\n};\n\n/**\n * The `TreePicker` component is used for selecting single options which are organized in a tree structure.\n *\n * @see https://rsuitejs.com/components/tree-picker/\n */\nvar TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\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$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n style = props.style,\n showIndentLine = props.showIndentLine,\n controlledValue = props.value,\n overrideLocale = props.locale,\n _props$height = props.height,\n height = _props$height === void 0 ? 360 : _props$height,\n _props$menuMaxHeight = props.menuMaxHeight,\n menuMaxHeight = _props$menuMaxHeight === void 0 ? 320 : _props$menuMaxHeight,\n menuStyle = props.menuStyle,\n className = props.className,\n disabled = props.disabled,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n _props$virtualized = props.virtualized,\n virtualized = _props$virtualized === void 0 ? false : _props$virtualized,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n defaultValue = props.defaultValue,\n placeholder = props.placeholder,\n searchKeyword = props.searchKeyword,\n menuClassName = props.menuClassName,\n _props$menuAutoWidth = props.menuAutoWidth,\n menuAutoWidth = _props$menuAutoWidth === void 0 ? true : _props$menuAutoWidth,\n searchBy = props.searchBy,\n toggleAs = props.toggleAs,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n draggable = props.draggable,\n _props$defaultExpandA = props.defaultExpandAll,\n defaultExpandAll = _props$defaultExpandA === void 0 ? false : _props$defaultExpandA,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n controlledExpandItemValues = props.expandItemValues,\n _props$defaultExpandI = props.defaultExpandItemValues,\n defaultExpandItemValues = _props$defaultExpandI === void 0 ? emptyArray : _props$defaultExpandI,\n id = props.id,\n listProps = props.listProps,\n getChildren = props.getChildren,\n renderTreeIcon = props.renderTreeIcon,\n renderTreeNode = props.renderTreeNode,\n onExit = props.onExit,\n onExited = props.onExited,\n onClean = props.onClean,\n onOpen = props.onOpen,\n onSearch = props.onSearch,\n onSelect = props.onSelect,\n onSelectItem = props.onSelectItem,\n onChange = props.onChange,\n onEntered = props.onEntered,\n onClose = props.onClose,\n onDragEnd = props.onDragEnd,\n onDragStart = props.onDragStart,\n onDragEnter = props.onDragEnter,\n onDragLeave = props.onDragLeave,\n onDragOver = props.onDragOver,\n onDrop = props.onDrop,\n onExpand = props.onExpand,\n renderExtraFooter = props.renderExtraFooter,\n renderMenu = props.renderMenu,\n renderValue = props.renderValue,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"data\", \"appearance\", \"style\", \"showIndentLine\", \"value\", \"locale\", \"height\", \"menuMaxHeight\", \"menuStyle\", \"className\", \"disabled\", \"placement\", \"cleanable\", \"searchable\", \"virtualized\", \"classPrefix\", \"defaultValue\", \"placeholder\", \"searchKeyword\", \"menuClassName\", \"menuAutoWidth\", \"searchBy\", \"toggleAs\", \"labelKey\", \"valueKey\", \"childrenKey\", \"draggable\", \"defaultExpandAll\", \"disabledItemValues\", \"expandItemValues\", \"defaultExpandItemValues\", \"id\", \"listProps\", \"getChildren\", \"renderTreeIcon\", \"renderTreeNode\", \"onExit\", \"onExited\", \"onClean\", \"onOpen\", \"onSearch\", \"onSelect\", \"onSelectItem\", \"onChange\", \"onEntered\", \"onClose\", \"onDragEnd\", \"onDragStart\", \"onDragEnter\", \"onDragLeave\", \"onDragOver\", \"onDrop\", \"onExpand\", \"renderExtraFooter\", \"renderMenu\", \"renderValue\"]);\n var triggerRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var listRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n var searchInputRef = (0, _react.useRef)(null);\n var treeViewRef = (0, _react.useRef)(null);\n var _useCustom = (0, _utils.useCustom)('Picker', overrideLocale),\n rtl = _useCustom.rtl,\n locale = _useCustom.locale;\n var _useContext = (0, _react.useContext)(_TreeContext.default),\n inline = _useContext.inline;\n var _useControlled = (0, _utils.useControlled)(controlledValue, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1],\n isControlled = _useControlled[2];\n var _useGetTreeNodeChildr = (0, _treeUtils.useGetTreeNodeChildren)(data, valueKey, childrenKey),\n treeData = _useGetTreeNodeChildr.data,\n setTreeData = _useGetTreeNodeChildr.setData,\n loadingNodeValues = _useGetTreeNodeChildr.loadingNodeValues,\n loadChildren = _useGetTreeNodeChildr.loadChildren;\n var _useControlled2 = (0, _utils.useControlled)(controlledExpandItemValues, (0, _treeUtils.getDefaultExpandItemValues)(treeData, {\n defaultExpandAll: defaultExpandAll,\n valueKey: valueKey,\n childrenKey: childrenKey,\n defaultExpandItemValues: defaultExpandItemValues\n })),\n expandItemValues = _useControlled2[0],\n setExpandItemValues = _useControlled2[1];\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n var _useState2 = (0, _react.useState)(null),\n focusItemValue = _useState2[0],\n setFocusItemValue = _useState2[1];\n var _useFlattenTreeData = (0, _treeUtils.useFlattenTreeData)({\n data: treeData,\n labelKey: labelKey,\n valueKey: valueKey,\n childrenKey: childrenKey,\n callback: function callback() {\n // after flattenData, always trigger re-render\n forceUpdate();\n }\n }),\n flattenNodes = _useFlattenTreeData.flattenNodes,\n forceUpdate = _useFlattenTreeData.forceUpdate,\n formatVirtualizedTreeData = _useFlattenTreeData.formatVirtualizedTreeData;\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var _useClassNames2 = (0, _utils.useClassNames)('tree'),\n treePrefix = _useClassNames2.prefix,\n withTreeClassPrefix = _useClassNames2.withClassPrefix;\n var _useTreeSearch = (0, _treeUtils.useTreeSearch)({\n labelKey: labelKey,\n childrenKey: childrenKey,\n searchKeyword: searchKeyword,\n data: treeData,\n searchBy: searchBy,\n callback: function callback(searchKeyword, _filterData, event) {\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);\n }\n }),\n filteredData = _useTreeSearch.filteredData,\n searchKeywordState = _useTreeSearch.searchKeywordState,\n setSearchKeyword = _useTreeSearch.setSearchKeyword,\n handleSearch = _useTreeSearch.handleSearch,\n setFilteredData = _useTreeSearch.setFilteredData;\n var _useTreeDrag = (0, _treeUtils.useTreeDrag)(),\n dragNodeKeys = _useTreeDrag.dragNodeKeys,\n dragOverNodeKey = _useTreeDrag.dragOverNodeKey,\n dragNode = _useTreeDrag.dragNode,\n dropNodePosition = _useTreeDrag.dropNodePosition,\n setDragNodeKeys = _useTreeDrag.setDragNodeKeys,\n setDragOverNodeKey = _useTreeDrag.setDragOverNodeKey,\n setDragNode = _useTreeDrag.setDragNode,\n setDropNodePosition = _useTreeDrag.setDropNodePosition;\n var _useTreeNodeRefs = (0, _treeUtils.useTreeNodeRefs)(),\n treeNodesRefs = _useTreeNodeRefs.treeNodesRefs,\n saveTreeNodeRef = _useTreeNodeRefs.saveTreeNodeRef;\n var activeNode = (0, _treeUtils.getTreeActiveNode)(flattenNodes, value, valueKey);\n var getFormattedNodes = (0, _react.useCallback)(function (render) {\n if (virtualized) {\n return formatVirtualizedTreeData(flattenNodes, filteredData, expandItemValues, {\n searchKeyword: searchKeywordState\n }).filter(function (n) {\n return n.visible;\n });\n }\n return filteredData.map(function (dataItem, index) {\n return render === null || render === void 0 ? void 0 : render(dataItem, index, 1);\n });\n }, [searchKeywordState, expandItemValues, filteredData, flattenNodes, formatVirtualizedTreeData, virtualized]);\n var focusActiveNode = (0, _react.useCallback)(function () {\n if (listRef.current) {\n (0, _treeUtils.focusToActiveTreeNode)({\n list: listRef.current,\n valueKey: valueKey,\n selector: \".\" + treePrefix('node-active'),\n activeNode: activeNode,\n virtualized: virtualized,\n container: treeViewRef.current,\n formattedNodes: getFormattedNodes()\n });\n }\n }, [treePrefix, activeNode, getFormattedNodes, valueKey, virtualized]);\n (0, _react.useEffect)(function () {\n setFilteredData(data, searchKeywordState);\n setTreeData(data);\n }, [data, searchKeywordState, setFilteredData, setTreeData]);\n (0, _react.useEffect)(function () {\n setFilteredData(treeData, searchKeywordState);\n }, [treeData, searchKeywordState, setFilteredData]);\n (0, _react.useEffect)(function () {\n if (Array.isArray(controlledExpandItemValues)) {\n setExpandItemValues(controlledExpandItemValues);\n }\n }, [controlledExpandItemValues, setExpandItemValues]);\n (0, _react.useEffect)(function () {\n setSearchKeyword(searchKeyword !== null && searchKeyword !== void 0 ? searchKeyword : '');\n }, [searchKeyword, setSearchKeyword]);\n var getDropData = (0, _react.useCallback)(function (nodeData) {\n var options = {\n valueKey: valueKey,\n childrenKey: childrenKey\n };\n return {\n /** draggingNode */\n dragNode: dragNode,\n /** dropNode */\n dropNode: nodeData,\n /** dragAndDrop Position type */\n dropNodePosition: dropNodePosition,\n createUpdateDataFunction: (0, _treeUtils.createUpdateTreeDataFunction)({\n dragNode: dragNode,\n dropNode: nodeData,\n dropNodePosition: dropNodePosition\n }, options)\n };\n }, [dragNode, valueKey, childrenKey, dropNodePosition]);\n var getTreeNodeProps = function getTreeNodeProps(node, layer, index) {\n var draggingNode = dragNode !== null && dragNode !== void 0 ? dragNode : {};\n return {\n as: Component,\n rtl: rtl,\n value: node[valueKey],\n label: node[labelKey],\n index: index,\n layer: layer,\n loading: loadingNodeValues.some(function (item) {\n return (0, _utils.shallowEqual)(item, node[valueKey]);\n }),\n expand: node.expand,\n active: (0, _utils.shallowEqual)(node[valueKey], value),\n focus: (0, _utils.shallowEqual)(node[valueKey], focusItemValue),\n visible: node.visible,\n draggable: draggable,\n dragging: (0, _utils.shallowEqual)(node[valueKey], draggingNode[valueKey]),\n children: node[childrenKey],\n nodeData: node,\n disabled: disabledItemValues.some(function (disabledItem) {\n return (0, _utils.shallowEqual)(disabledItem, node[valueKey]);\n }),\n dragOver: (0, _utils.shallowEqual)(node[valueKey], dragOverNodeKey) && dropNodePosition === _utils.TREE_NODE_DROP_POSITION.DRAG_OVER,\n dragOverTop: (0, _utils.shallowEqual)(node[valueKey], dragOverNodeKey) && dropNodePosition === _utils.TREE_NODE_DROP_POSITION.DRAG_OVER_TOP,\n dragOverBottom: (0, _utils.shallowEqual)(node[valueKey], dragOverNodeKey) && dropNodePosition === _utils.TREE_NODE_DROP_POSITION.DRAG_OVER_BOTTOM,\n onSelect: handleSelect,\n onDragStart: handleDragStart,\n onDragEnter: handleDragEnter,\n onDragOver: handleDragOver,\n onDragLeave: handleDragLeave,\n onDragEnd: handleDragEnd,\n onDrop: handleDrop,\n onExpand: handleExpand,\n onRenderTreeNode: renderTreeNode,\n onRenderTreeIcon: renderTreeIcon\n };\n };\n\n // TODO-Doma\n // Replace `getKeyParentMap` with `getParentMap`\n var itemParentMap = (0, _react.useMemo)(function () {\n return (0, _treeUtils.getKeyParentMap)(data, function (node) {\n return node[valueKey];\n }, function (node) {\n return node[childrenKey];\n });\n }, [childrenKey, data, valueKey]);\n var handleSelect = (0, _react.useCallback)(function (nodeData, event) {\n var _targetRef$current, _triggerRef$current, _triggerRef$current$c;\n if (!nodeData) {\n return;\n }\n var nodeValue = nodeData[valueKey];\n if (!isControlled) {\n setValue(nodeValue);\n }\n setFocusItemValue(nodeData[valueKey]);\n onChange === null || onChange === void 0 ? void 0 : onChange(nodeValue, event);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(nodeData, nodeValue, event);\n onSelectItem === null || onSelectItem === void 0 ? void 0 : onSelectItem(nodeData, (0, _treeUtils.getPathTowardsItem)(nodeData, function (item) {\n return itemParentMap.get(item[valueKey]);\n }));\n (_targetRef$current = targetRef.current) === null || _targetRef$current === void 0 ? void 0 : _targetRef$current.focus();\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$c = _triggerRef$current.close) === null || _triggerRef$current$c === void 0 ? void 0 : _triggerRef$current$c.call(_triggerRef$current);\n }, [valueKey, isControlled, onChange, onSelect, onSelectItem, setValue, itemParentMap]);\n var handleExpand = (0, _react.useCallback)(function (node) {\n var nextExpandItemValues = (0, _treeUtils.toggleExpand)({\n node: node,\n isExpand: !node.expand,\n expandItemValues: expandItemValues,\n valueKey: valueKey\n });\n setExpandItemValues(nextExpandItemValues);\n onExpand === null || onExpand === void 0 ? void 0 : onExpand(nextExpandItemValues, node, (0, _Picker.createConcatChildrenFunction)(node, node[valueKey], {\n valueKey: valueKey,\n childrenKey: childrenKey\n }));\n if ((0, _isFunction2.default)(getChildren) && !node.expand && Array.isArray(node[childrenKey]) && node[childrenKey].length === 0) {\n loadChildren(node, getChildren);\n }\n }, [valueKey, childrenKey, expandItemValues, getChildren, onExpand, setExpandItemValues, loadChildren]);\n var handleDragStart = (0, _react.useCallback)(function (nodeData, event) {\n if (draggable) {\n var _event$dataTransfer;\n var dragMoverNode = (0, _treeUtils.createDragPreview)((0, _treeUtils.stringifyTreeNodeLabel)(nodeData[labelKey]), treePrefix('drag-preview'));\n (_event$dataTransfer = event.dataTransfer) === null || _event$dataTransfer === void 0 ? void 0 : _event$dataTransfer.setDragImage(dragMoverNode, 0, 0);\n setDragNodeKeys((0, _treeUtils.getDragNodeKeys)(nodeData, childrenKey, valueKey));\n setDragNode(flattenNodes[nodeData.refKey]);\n onDragStart === null || onDragStart === void 0 ? void 0 : onDragStart(nodeData, event);\n }\n }, [draggable, labelKey, treePrefix, setDragNodeKeys, childrenKey, valueKey, setDragNode, flattenNodes, onDragStart]);\n var handleDragEnter = (0, _react.useCallback)(function (nodeData, event) {\n if (dragNodeKeys.some(function (d) {\n return (0, _utils.shallowEqual)(d, nodeData[valueKey]);\n })) {\n return;\n }\n if (dragNode) {\n setDragOverNodeKey(nodeData[valueKey]);\n setDropNodePosition((0, _treeUtils.calDropNodePosition)(event, treeNodesRefs[nodeData.refKey]));\n }\n onDragEnter === null || onDragEnter === void 0 ? void 0 : onDragEnter(nodeData, event);\n }, [dragNode, treeNodesRefs, dragNodeKeys, onDragEnter, setDragOverNodeKey, setDropNodePosition, valueKey]);\n var handleDragOver = (0, _react.useCallback)(function (nodeData, event) {\n if (dragNodeKeys.some(function (d) {\n return (0, _utils.shallowEqual)(d, nodeData[valueKey]);\n })) {\n event.dataTransfer.dropEffect = 'none';\n return;\n }\n if (dragNode && (0, _utils.shallowEqual)(nodeData[valueKey], dragOverNodeKey)) {\n var lastDropNodePosition = (0, _treeUtils.calDropNodePosition)(event, treeNodesRefs[nodeData.refKey]);\n if (lastDropNodePosition === dropNodePosition) return;\n setDropNodePosition(lastDropNodePosition);\n }\n onDragOver === null || onDragOver === void 0 ? void 0 : onDragOver(nodeData, event);\n }, [dragNode, dragNodeKeys, dragOverNodeKey, dropNodePosition, onDragOver, setDropNodePosition, treeNodesRefs, valueKey]);\n var handleDragLeave = (0, _react.useCallback)(function (nodeData, event) {\n onDragLeave === null || onDragLeave === void 0 ? void 0 : onDragLeave(nodeData, event);\n }, [onDragLeave]);\n var handleDragEnd = (0, _react.useCallback)(function (nodeData, event) {\n (0, _treeUtils.removeDragPreview)();\n setDragNode(null);\n setDragNodeKeys([]);\n setDragOverNodeKey(null);\n onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(nodeData, event);\n }, [setDragNode, setDragNodeKeys, setDragOverNodeKey, onDragEnd]);\n var handleDrop = (0, _react.useCallback)(function (nodeData, event) {\n if (dragNodeKeys.some(function (d) {\n return (0, _utils.shallowEqual)(d, nodeData[valueKey]);\n })) {\n console.error('Cannot drag a node to itself and its children');\n } else {\n var dropData = getDropData(nodeData);\n onDrop === null || onDrop === void 0 ? void 0 : onDrop(dropData, event);\n }\n (0, _treeUtils.removeDragPreview)();\n setDragNode(null);\n setDragNodeKeys([]);\n setDragOverNodeKey(null);\n }, [dragNodeKeys, setDragNode, setDragOverNodeKey, setDragNodeKeys, onDrop, getDropData, valueKey]);\n var handleOpen = (0, _react.useCallback)(function () {\n var _triggerRef$current2, _triggerRef$current2$;\n (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : (_triggerRef$current2$ = _triggerRef$current2.open) === null || _triggerRef$current2$ === void 0 ? void 0 : _triggerRef$current2$.call(_triggerRef$current2);\n focusActiveNode();\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n }, [focusActiveNode, onOpen]);\n var handleClose = (0, _react.useCallback)(function () {\n var _triggerRef$current3, _triggerRef$current3$, _targetRef$current2;\n (_triggerRef$current3 = triggerRef.current) === null || _triggerRef$current3 === void 0 ? void 0 : (_triggerRef$current3$ = _triggerRef$current3.close) === null || _triggerRef$current3$ === void 0 ? void 0 : _triggerRef$current3$.call(_triggerRef$current3);\n setSearchKeyword('');\n setActive(false);\n setFocusItemValue(activeNode === null || activeNode === void 0 ? void 0 : activeNode[valueKey]);\n /**\n * when using keyboard toggle picker, should refocus on PickerToggle Component after close picker menu\n */\n (_targetRef$current2 = targetRef.current) === null || _targetRef$current2 === void 0 ? void 0 : _targetRef$current2.focus();\n }, [activeNode, setSearchKeyword, valueKey]);\n (0, _Picker.usePublicMethods)(ref, {\n rootRef: inline ? treeViewRef : undefined,\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef,\n listRef: listRef,\n inline: inline\n });\n var handleFocusItem = (0, _react.useCallback)(function (key) {\n var focusableItems = (0, _treeUtils.getFocusableItems)(filteredData, {\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n childrenKey: childrenKey,\n expandItemValues: expandItemValues\n }, (0, _treeUtils.isSearching)(searchKeywordState));\n var selector = \".\" + treePrefix('node-label');\n var focusProps = {\n focusItemValue: focusItemValue,\n focusableItems: focusableItems,\n treeNodesRefs: treeNodesRefs,\n selector: selector,\n valueKey: valueKey,\n callback: function callback(nextFocusItemValue) {\n setFocusItemValue(nextFocusItemValue);\n }\n };\n if (key === _utils.KEY_VALUES.DOWN) {\n (0, _treeUtils.focusNextItem)(focusProps);\n return;\n }\n if (key === _utils.KEY_VALUES.UP) {\n (0, _treeUtils.focusPreviousItem)(focusProps);\n }\n }, [searchKeywordState, expandItemValues, filteredData, focusItemValue, treeNodesRefs, treePrefix, valueKey, childrenKey, disabledItemValues]);\n var handleLeftArrow = (0, _react.useCallback)(function () {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var focusItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n (0, _treeUtils.leftArrowHandler)({\n focusItem: focusItem,\n expand: expandItemValues.includes(focusItem === null || focusItem === void 0 ? void 0 : focusItem[valueKey]),\n onExpand: handleExpand,\n childrenKey: childrenKey,\n onFocusItem: function onFocusItem() {\n var _focusItem$parent, _focusItem$parent2;\n setFocusItemValue(focusItem === null || focusItem === void 0 ? void 0 : (_focusItem$parent = focusItem.parent) === null || _focusItem$parent === void 0 ? void 0 : _focusItem$parent[valueKey]);\n (0, _treeUtils.focusTreeNode)(focusItem === null || focusItem === void 0 ? void 0 : (_focusItem$parent2 = focusItem.parent) === null || _focusItem$parent2 === void 0 ? void 0 : _focusItem$parent2.refKey, treeNodesRefs, \".\" + treePrefix('node-label'));\n }\n });\n }, [expandItemValues, flattenNodes, focusItemValue, handleExpand, treeNodesRefs, treePrefix, valueKey, childrenKey]);\n var handleRightArrow = (0, _react.useCallback)(function () {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var focusItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n (0, _treeUtils.rightArrowHandler)({\n focusItem: focusItem,\n expand: expandItemValues.includes(focusItem === null || focusItem === void 0 ? void 0 : focusItem[valueKey]),\n childrenKey: childrenKey,\n onExpand: handleExpand,\n onFocusItem: function onFocusItem() {\n handleFocusItem(_utils.KEY_VALUES.DOWN);\n }\n });\n }, [focusItemValue, flattenNodes, valueKey, expandItemValues, childrenKey, handleExpand, handleFocusItem]);\n var selectActiveItem = (0, _react.useCallback)(function (event) {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var activeItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n handleSelect(activeItem, event);\n }, [flattenNodes, valueKey, focusItemValue, handleSelect]);\n var handleClean = (0, _react.useCallback)(function (event) {\n var nullValue = null;\n var target = event.target;\n // exclude searchBar\n if (target.matches('div[role=\"searchbox\"] > input') || disabled || !cleanable) {\n return;\n }\n if (!isControlled) {\n setValue(null);\n }\n onChange === null || onChange === void 0 ? void 0 : onChange(nullValue, event);\n }, [cleanable, disabled, onChange, setValue, isControlled]);\n var onPickerKeydown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({\n toggle: !activeNode || !active,\n triggerRef: triggerRef,\n targetRef: targetRef,\n overlayRef: overlayRef,\n searchInputRef: searchInputRef,\n active: active,\n onExit: handleClean,\n onClose: handleClose,\n onMenuKeyDown: function onMenuKeyDown(event) {\n (0, _Picker.onMenuKeyDown)(event, {\n down: function down() {\n return handleFocusItem(_utils.KEY_VALUES.DOWN);\n },\n up: function up() {\n return handleFocusItem(_utils.KEY_VALUES.UP);\n },\n left: rtl ? handleRightArrow : handleLeftArrow,\n right: rtl ? handleLeftArrow : handleRightArrow,\n enter: selectActiveItem,\n del: handleClean\n });\n }\n }, rest));\n var handleTreeKeyDown = (0, _react.useCallback)(function (event) {\n if (!treeViewRef.current) {\n return;\n }\n (0, _Picker.onMenuKeyDown)(event, {\n down: function down() {\n return handleFocusItem(_utils.KEY_VALUES.DOWN);\n },\n up: function up() {\n return handleFocusItem(_utils.KEY_VALUES.UP);\n },\n left: rtl ? handleRightArrow : handleLeftArrow,\n right: rtl ? handleLeftArrow : handleRightArrow,\n enter: selectActiveItem\n });\n }, [handleFocusItem, handleLeftArrow, handleRightArrow, rtl, selectActiveItem]);\n var renderNode = function renderNode(node, index, layer) {\n if (!node.visible) {\n return null;\n }\n var children = node[childrenKey];\n var expand = (0, _treeUtils.getExpandWhenSearching)(searchKeywordState, expandItemValues.includes(node[valueKey]));\n var visibleChildren = (0, _isUndefined2.default)(searchKeywordState) || searchKeywordState.length === 0 ? !!children : (0, _treeUtils.hasVisibleChildren)(node, childrenKey);\n var nodeProps = (0, _extends2.default)({}, getTreeNodeProps((0, _extends2.default)({}, node, {\n expand: expand\n }), layer, index), {\n hasChildren: visibleChildren\n });\n if (nodeProps.hasChildren) {\n var _merge;\n layer += 1;\n var openClass = treePrefix('open');\n var childrenClass = merge(treePrefix('node-children'), (_merge = {}, _merge[openClass] = expand && visibleChildren, _merge));\n var nodes = children || [];\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: childrenClass,\n key: node[valueKey],\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 762,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_TreeNode.default, (0, _extends2.default)({}, nodeProps, {\n ref: function ref(_ref) {\n return saveTreeNodeRef(_ref, node.refKey);\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 763,\n columnNumber: 11\n }\n })), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: treePrefix('children'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 764,\n columnNumber: 11\n }\n }, nodes.map(function (child, i) {\n return renderNode(child, i, layer);\n }), showIndentLine && /*#__PURE__*/_react.default.createElement(\"span\", {\n className: treePrefix('indent-line'),\n style: (0, _treeUtils.getTreeNodeIndent)(rtl, layer - 1, true),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 767,\n columnNumber: 15\n }\n })));\n }\n return /*#__PURE__*/_react.default.createElement(_TreeNode.default, (0, _extends2.default)({\n ref: function ref(_ref2) {\n return saveTreeNodeRef(_ref2, node.refKey);\n },\n key: node[valueKey]\n }, nodeProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 777,\n columnNumber: 7\n }\n }));\n };\n var renderVirtualListNode = function renderVirtualListNode(_ref3) {\n var index = _ref3.index,\n style = _ref3.style,\n data = _ref3.data;\n var node = data[index];\n var layer = node.layer,\n visible = node.visible;\n var expand = (0, _treeUtils.getExpandWhenSearching)(searchKeywordState, expandItemValues.includes(node[valueKey]));\n if (!node.visible) {\n return null;\n }\n var nodeProps = (0, _extends2.default)({}, getTreeNodeProps((0, _extends2.default)({}, node, {\n expand: expand\n }), layer), {\n style: style,\n hasChildren: node.hasChildren\n });\n return visible && /*#__PURE__*/_react.default.createElement(_TreeNode.default, (0, _extends2.default)({\n ref: function ref(_ref4) {\n return saveTreeNodeRef(_ref4, node.refKey);\n }\n }, nodeProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 803,\n columnNumber: 23\n }\n }));\n };\n var renderTree = function renderTree() {\n var _withTreeClassPrefix;\n var classes = withTreeClassPrefix((_withTreeClassPrefix = {}, _withTreeClassPrefix[className !== null && className !== void 0 ? className : ''] = inline, _withTreeClassPrefix.virtualized = virtualized, _withTreeClassPrefix));\n var formattedNodes = getFormattedNodes(renderNode);\n var styles = inline ? (0, _extends2.default)({\n height: height\n }, style) : {};\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n role: \"tree\",\n id: id ? id + \"-listbox\" : undefined,\n ref: treeViewRef,\n className: classes,\n style: styles,\n onKeyDown: inline ? handleTreeKeyDown : undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 815,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: treePrefix('nodes'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 823,\n columnNumber: 9\n }\n }, virtualized ? /*#__PURE__*/_react.default.createElement(_Windowing.AutoSizer, {\n defaultHeight: inline ? height : menuMaxHeight,\n style: {\n width: 'auto',\n height: 'auto'\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 825,\n columnNumber: 13\n }\n }, function (_ref5) {\n var height = _ref5.height;\n return /*#__PURE__*/_react.default.createElement(_Windowing.List, (0, _extends2.default)({\n ref: listRef,\n height: height,\n itemSize: itemSize,\n itemCount: formattedNodes.length,\n itemData: formattedNodes\n }, listProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 830,\n columnNumber: 17\n }\n }), renderVirtualListNode);\n }) : formattedNodes));\n };\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = merge(className, menuClassName, prefix('tree-menu'));\n var mergedMenuStyle = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n autoWidth: menuAutoWidth,\n className: classes,\n style: mergedMenuStyle,\n ref: (0, _utils.mergeRefs)(overlayRef, speakerRef),\n onKeyDown: onPickerKeydown,\n target: triggerRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 856,\n columnNumber: 7\n }\n }, searchable ? /*#__PURE__*/_react.default.createElement(_Picker.SearchBar, {\n placeholder: locale.searchPlaceholder,\n onChange: handleSearch,\n value: searchKeywordState,\n inputRef: searchInputRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 865,\n columnNumber: 11\n }\n }) : null, renderMenu ? renderMenu(renderTree()) : renderTree(), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n\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 var hasValidValue = !(0, _isNil2.default)(activeNode) || !(0, _isNil2.default)(value) && (0, _isFunction2.default)(renderValue);\n var selectedElement = placeholder;\n if (hasValidValue) {\n var node = activeNode !== null && activeNode !== void 0 ? activeNode : {};\n selectedElement = node[labelKey];\n if ((0, _isFunction2.default)(renderValue) && value) {\n selectedElement = renderValue(value, node, selectedElement);\n if ((0, _isNil2.default)(selectedElement)) {\n hasValidValue = false;\n }\n }\n }\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n appearance: appearance,\n hasValue: hasValidValue,\n name: 'tree',\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n if (inline) {\n return renderTree();\n }\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n pickerProps: (0, _pick2.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n placement: placement,\n onEnter: handleOpen,\n onEntered: onEntered,\n onExit: (0, _utils.createChainedFunction)(onClose, onExit),\n onExited: (0, _utils.createChainedFunction)(handleClose, onExited),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 910,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 920,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit2.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys, ['cascade'])), {\n id: id,\n ref: targetRef,\n appearance: appearance,\n onKeyDown: onPickerKeydown,\n onClean: (0, _utils.createChainedFunction)(handleClean, onClean),\n cleanable: cleanable && !disabled,\n as: toggleAs,\n disabled: disabled,\n hasValue: hasValidValue,\n active: active,\n placement: placement,\n inputValue: value,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 921,\n columnNumber: 9\n }\n }), selectedElement || locale.placeholder)));\n});\nTreePicker.displayName = 'TreePicker';\nTreePicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes, {\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n height: _propTypes.default.number,\n draggable: _propTypes.default.bool,\n virtualized: _propTypes.default.bool,\n searchable: _propTypes.default.bool,\n menuAutoWidth: _propTypes.default.bool,\n searchKeyword: _propTypes.default.string,\n defaultExpandAll: _propTypes.default.bool,\n expandItemValues: _propTypes.default.array,\n defaultExpandItemValues: _propTypes.default.array,\n onSearch: _propTypes.default.func,\n onExpand: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n renderMenu: _propTypes.default.func,\n renderTreeNode: _propTypes.default.func,\n renderTreeIcon: _propTypes.default.func,\n renderExtraFooter: _propTypes.default.func,\n renderDragNode: _propTypes.default.func,\n searchBy: _propTypes.default.func\n});\nvar _default = TreePicker;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/TreePicker/TreePicker.tsx?");
9632
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _isFunction2 = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\nvar _isNil2 = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\nvar _isUndefined2 = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\nvar _omit2 = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\nvar _pick2 = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _Windowing = __webpack_require__(/*! ../Windowing */ \"./src/Windowing/index.ts\");\nvar _TreeNode = _interopRequireDefault(__webpack_require__(/*! ./TreeNode */ \"./src/TreePicker/TreeNode.tsx\"));\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\nvar _TreeContext = _interopRequireDefault(__webpack_require__(/*! ../Tree/TreeContext */ \"./src/Tree/TreeContext.ts\"));\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/TreePicker/TreePicker.tsx\",\n _this = void 0;\nvar emptyArray = [];\nvar itemSize = function itemSize() {\n return 36;\n};\n\n/**\n * The `TreePicker` component is used for selecting single options which are organized in a tree structure.\n *\n * @see https://rsuitejs.com/components/tree-picker/\n */\nvar TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\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$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n style = props.style,\n showIndentLine = props.showIndentLine,\n controlledValue = props.value,\n overrideLocale = props.locale,\n _props$height = props.height,\n height = _props$height === void 0 ? 360 : _props$height,\n _props$menuMaxHeight = props.menuMaxHeight,\n menuMaxHeight = _props$menuMaxHeight === void 0 ? 320 : _props$menuMaxHeight,\n menuStyle = props.menuStyle,\n className = props.className,\n disabled = props.disabled,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n _props$virtualized = props.virtualized,\n virtualized = _props$virtualized === void 0 ? false : _props$virtualized,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n defaultValue = props.defaultValue,\n placeholder = props.placeholder,\n searchKeyword = props.searchKeyword,\n menuClassName = props.menuClassName,\n _props$menuAutoWidth = props.menuAutoWidth,\n menuAutoWidth = _props$menuAutoWidth === void 0 ? true : _props$menuAutoWidth,\n searchBy = props.searchBy,\n toggleAs = props.toggleAs,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n draggable = props.draggable,\n _props$defaultExpandA = props.defaultExpandAll,\n defaultExpandAll = _props$defaultExpandA === void 0 ? false : _props$defaultExpandA,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n controlledExpandItemValues = props.expandItemValues,\n _props$defaultExpandI = props.defaultExpandItemValues,\n defaultExpandItemValues = _props$defaultExpandI === void 0 ? emptyArray : _props$defaultExpandI,\n id = props.id,\n listProps = props.listProps,\n getChildren = props.getChildren,\n renderTreeIcon = props.renderTreeIcon,\n renderTreeNode = props.renderTreeNode,\n onExit = props.onExit,\n onExited = props.onExited,\n onClean = props.onClean,\n onOpen = props.onOpen,\n onSearch = props.onSearch,\n onSelect = props.onSelect,\n onSelectItem = props.onSelectItem,\n onChange = props.onChange,\n onEntered = props.onEntered,\n onClose = props.onClose,\n onDragEnd = props.onDragEnd,\n onDragStart = props.onDragStart,\n onDragEnter = props.onDragEnter,\n onDragLeave = props.onDragLeave,\n onDragOver = props.onDragOver,\n onDrop = props.onDrop,\n onExpand = props.onExpand,\n renderExtraFooter = props.renderExtraFooter,\n renderMenu = props.renderMenu,\n renderValue = props.renderValue,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"data\", \"appearance\", \"style\", \"showIndentLine\", \"value\", \"locale\", \"height\", \"menuMaxHeight\", \"menuStyle\", \"className\", \"disabled\", \"placement\", \"cleanable\", \"searchable\", \"virtualized\", \"classPrefix\", \"defaultValue\", \"placeholder\", \"searchKeyword\", \"menuClassName\", \"menuAutoWidth\", \"searchBy\", \"toggleAs\", \"labelKey\", \"valueKey\", \"childrenKey\", \"draggable\", \"defaultExpandAll\", \"disabledItemValues\", \"expandItemValues\", \"defaultExpandItemValues\", \"id\", \"listProps\", \"getChildren\", \"renderTreeIcon\", \"renderTreeNode\", \"onExit\", \"onExited\", \"onClean\", \"onOpen\", \"onSearch\", \"onSelect\", \"onSelectItem\", \"onChange\", \"onEntered\", \"onClose\", \"onDragEnd\", \"onDragStart\", \"onDragEnter\", \"onDragLeave\", \"onDragOver\", \"onDrop\", \"onExpand\", \"renderExtraFooter\", \"renderMenu\", \"renderValue\"]);\n var _useCustom = (0, _utils.useCustom)('Picker', overrideLocale),\n rtl = _useCustom.rtl,\n locale = _useCustom.locale;\n var _useContext = (0, _react.useContext)(_TreeContext.default),\n inline = _useContext.inline;\n var _usePickerRef = (0, _Picker.usePickerRef)(ref, {\n inline: inline\n }),\n trigger = _usePickerRef.trigger,\n root = _usePickerRef.root,\n target = _usePickerRef.target,\n overlay = _usePickerRef.overlay,\n list = _usePickerRef.list,\n searchInput = _usePickerRef.searchInput,\n treeView = _usePickerRef.treeView;\n var _useControlled = (0, _utils.useControlled)(controlledValue, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1],\n isControlled = _useControlled[2];\n var _useGetTreeNodeChildr = (0, _treeUtils.useGetTreeNodeChildren)(data, valueKey, childrenKey),\n treeData = _useGetTreeNodeChildr.data,\n setTreeData = _useGetTreeNodeChildr.setData,\n loadingNodeValues = _useGetTreeNodeChildr.loadingNodeValues,\n loadChildren = _useGetTreeNodeChildr.loadChildren;\n var _useControlled2 = (0, _utils.useControlled)(controlledExpandItemValues, (0, _treeUtils.getDefaultExpandItemValues)(treeData, {\n defaultExpandAll: defaultExpandAll,\n valueKey: valueKey,\n childrenKey: childrenKey,\n defaultExpandItemValues: defaultExpandItemValues\n })),\n expandItemValues = _useControlled2[0],\n setExpandItemValues = _useControlled2[1];\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n var _useState2 = (0, _react.useState)(null),\n focusItemValue = _useState2[0],\n setFocusItemValue = _useState2[1];\n var _useFlattenTreeData = (0, _treeUtils.useFlattenTreeData)({\n data: treeData,\n labelKey: labelKey,\n valueKey: valueKey,\n childrenKey: childrenKey,\n callback: function callback() {\n // after flattenData, always trigger re-render\n forceUpdate();\n }\n }),\n flattenNodes = _useFlattenTreeData.flattenNodes,\n forceUpdate = _useFlattenTreeData.forceUpdate,\n formatVirtualizedTreeData = _useFlattenTreeData.formatVirtualizedTreeData;\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n var _useClassNames2 = (0, _utils.useClassNames)('tree'),\n treePrefix = _useClassNames2.prefix,\n withTreeClassPrefix = _useClassNames2.withClassPrefix;\n var _useTreeSearch = (0, _treeUtils.useTreeSearch)({\n labelKey: labelKey,\n childrenKey: childrenKey,\n searchKeyword: searchKeyword,\n data: treeData,\n searchBy: searchBy,\n callback: function callback(searchKeyword, _filterData, event) {\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);\n }\n }),\n filteredData = _useTreeSearch.filteredData,\n searchKeywordState = _useTreeSearch.searchKeywordState,\n setSearchKeyword = _useTreeSearch.setSearchKeyword,\n handleSearch = _useTreeSearch.handleSearch,\n setFilteredData = _useTreeSearch.setFilteredData;\n var _useTreeDrag = (0, _treeUtils.useTreeDrag)(),\n dragNodeKeys = _useTreeDrag.dragNodeKeys,\n dragOverNodeKey = _useTreeDrag.dragOverNodeKey,\n dragNode = _useTreeDrag.dragNode,\n dropNodePosition = _useTreeDrag.dropNodePosition,\n setDragNodeKeys = _useTreeDrag.setDragNodeKeys,\n setDragOverNodeKey = _useTreeDrag.setDragOverNodeKey,\n setDragNode = _useTreeDrag.setDragNode,\n setDropNodePosition = _useTreeDrag.setDropNodePosition;\n var _useTreeNodeRefs = (0, _treeUtils.useTreeNodeRefs)(),\n treeNodesRefs = _useTreeNodeRefs.treeNodesRefs,\n saveTreeNodeRef = _useTreeNodeRefs.saveTreeNodeRef;\n var activeNode = (0, _treeUtils.getTreeActiveNode)(flattenNodes, value, valueKey);\n var getFormattedNodes = function getFormattedNodes(render) {\n if (virtualized) {\n return formatVirtualizedTreeData(flattenNodes, filteredData, expandItemValues, {\n searchKeyword: searchKeywordState\n }).filter(function (n) {\n return n.visible;\n });\n }\n return filteredData.map(function (dataItem, index) {\n return render === null || render === void 0 ? void 0 : render(dataItem, index, 1);\n });\n };\n var focusActiveNode = function focusActiveNode() {\n if (list.current) {\n (0, _treeUtils.focusToActiveTreeNode)({\n list: list.current,\n valueKey: valueKey,\n selector: \".\" + treePrefix('node-active'),\n activeNode: activeNode,\n virtualized: virtualized,\n container: treeView.current,\n formattedNodes: getFormattedNodes()\n });\n }\n };\n (0, _react.useEffect)(function () {\n setFilteredData(data, searchKeywordState);\n setTreeData(data);\n }, [data, searchKeywordState, setFilteredData, setTreeData]);\n (0, _react.useEffect)(function () {\n setFilteredData(treeData, searchKeywordState);\n }, [treeData, searchKeywordState, setFilteredData]);\n (0, _react.useEffect)(function () {\n if (Array.isArray(controlledExpandItemValues)) {\n setExpandItemValues(controlledExpandItemValues);\n }\n }, [controlledExpandItemValues, setExpandItemValues]);\n (0, _react.useEffect)(function () {\n setSearchKeyword(searchKeyword !== null && searchKeyword !== void 0 ? searchKeyword : '');\n }, [searchKeyword, setSearchKeyword]);\n var getDropData = function getDropData(nodeData) {\n var options = {\n valueKey: valueKey,\n childrenKey: childrenKey\n };\n return {\n /** draggingNode */\n dragNode: dragNode,\n /** dropNode */\n dropNode: nodeData,\n /** dragAndDrop Position type */\n dropNodePosition: dropNodePosition,\n createUpdateDataFunction: (0, _treeUtils.createUpdateTreeDataFunction)({\n dragNode: dragNode,\n dropNode: nodeData,\n dropNodePosition: dropNodePosition\n }, options)\n };\n };\n var getTreeNodeProps = function getTreeNodeProps(node, layer, index) {\n var draggingNode = dragNode !== null && dragNode !== void 0 ? dragNode : {};\n return {\n as: Component,\n rtl: rtl,\n value: node[valueKey],\n label: node[labelKey],\n index: index,\n layer: layer,\n loading: loadingNodeValues.some(function (item) {\n return (0, _utils.shallowEqual)(item, node[valueKey]);\n }),\n expand: node.expand,\n active: (0, _utils.shallowEqual)(node[valueKey], value),\n focus: (0, _utils.shallowEqual)(node[valueKey], focusItemValue),\n visible: node.visible,\n draggable: draggable,\n dragging: (0, _utils.shallowEqual)(node[valueKey], draggingNode[valueKey]),\n children: node[childrenKey],\n nodeData: node,\n disabled: disabledItemValues.some(function (disabledItem) {\n return (0, _utils.shallowEqual)(disabledItem, node[valueKey]);\n }),\n dragOver: (0, _utils.shallowEqual)(node[valueKey], dragOverNodeKey) && dropNodePosition === _utils.TREE_NODE_DROP_POSITION.DRAG_OVER,\n dragOverTop: (0, _utils.shallowEqual)(node[valueKey], dragOverNodeKey) && dropNodePosition === _utils.TREE_NODE_DROP_POSITION.DRAG_OVER_TOP,\n dragOverBottom: (0, _utils.shallowEqual)(node[valueKey], dragOverNodeKey) && dropNodePosition === _utils.TREE_NODE_DROP_POSITION.DRAG_OVER_BOTTOM,\n onSelect: handleSelect,\n onDragStart: handleDragStart,\n onDragEnter: handleDragEnter,\n onDragOver: handleDragOver,\n onDragLeave: handleDragLeave,\n onDragEnd: handleDragEnd,\n onDrop: handleDrop,\n onExpand: handleExpand,\n renderTreeNode: renderTreeNode,\n renderTreeIcon: renderTreeIcon\n };\n };\n\n // TODO-Doma\n // Replace `getKeyParentMap` with `getParentMap`\n var itemParentMap = (0, _react.useMemo)(function () {\n return (0, _treeUtils.getKeyParentMap)(data, function (node) {\n return node[valueKey];\n }, function (node) {\n return node[childrenKey];\n });\n }, [childrenKey, data, valueKey]);\n var handleSelect = (0, _utils.useEventCallback)(function (nodeData, event) {\n var _target$current, _trigger$current, _trigger$current$clos;\n if (!nodeData) {\n return;\n }\n var nodeValue = nodeData[valueKey];\n if (!isControlled) {\n setValue(nodeValue);\n }\n setFocusItemValue(nodeData[valueKey]);\n onChange === null || onChange === void 0 ? void 0 : onChange(nodeValue, event);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(nodeData, nodeValue, event);\n onSelectItem === null || onSelectItem === void 0 ? void 0 : onSelectItem(nodeData, (0, _treeUtils.getPathTowardsItem)(nodeData, function (item) {\n return itemParentMap.get(item[valueKey]);\n }));\n (_target$current = target.current) === null || _target$current === void 0 ? void 0 : _target$current.focus();\n (_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : (_trigger$current$clos = _trigger$current.close) === null || _trigger$current$clos === void 0 ? void 0 : _trigger$current$clos.call(_trigger$current);\n });\n var handleExpand = (0, _utils.useEventCallback)(function (node) {\n var nextExpandItemValues = (0, _treeUtils.toggleExpand)({\n node: node,\n isExpand: !node.expand,\n expandItemValues: expandItemValues,\n valueKey: valueKey\n });\n setExpandItemValues(nextExpandItemValues);\n onExpand === null || onExpand === void 0 ? void 0 : onExpand(nextExpandItemValues, node, (0, _Picker.createConcatChildrenFunction)(node, node[valueKey], {\n valueKey: valueKey,\n childrenKey: childrenKey\n }));\n if ((0, _isFunction2.default)(getChildren) && !node.expand && Array.isArray(node[childrenKey]) && node[childrenKey].length === 0) {\n loadChildren(node, getChildren);\n }\n });\n var handleDragStart = (0, _utils.useEventCallback)(function (nodeData, event) {\n if (draggable) {\n var _event$dataTransfer;\n var dragMoverNode = (0, _treeUtils.createDragPreview)((0, _treeUtils.stringifyTreeNodeLabel)(nodeData[labelKey]), treePrefix('drag-preview'));\n (_event$dataTransfer = event.dataTransfer) === null || _event$dataTransfer === void 0 ? void 0 : _event$dataTransfer.setDragImage(dragMoverNode, 0, 0);\n setDragNodeKeys((0, _treeUtils.getDragNodeKeys)(nodeData, childrenKey, valueKey));\n setDragNode(flattenNodes[nodeData.refKey]);\n onDragStart === null || onDragStart === void 0 ? void 0 : onDragStart(nodeData, event);\n }\n });\n var handleDragEnter = (0, _utils.useEventCallback)(function (nodeData, event) {\n if (dragNodeKeys.some(function (d) {\n return (0, _utils.shallowEqual)(d, nodeData[valueKey]);\n })) {\n return;\n }\n if (dragNode) {\n setDragOverNodeKey(nodeData[valueKey]);\n setDropNodePosition((0, _treeUtils.calDropNodePosition)(event, treeNodesRefs[nodeData.refKey]));\n }\n onDragEnter === null || onDragEnter === void 0 ? void 0 : onDragEnter(nodeData, event);\n });\n var handleDragOver = (0, _utils.useEventCallback)(function (nodeData, event) {\n if (dragNodeKeys.some(function (d) {\n return (0, _utils.shallowEqual)(d, nodeData[valueKey]);\n })) {\n event.dataTransfer.dropEffect = 'none';\n return;\n }\n if (dragNode && (0, _utils.shallowEqual)(nodeData[valueKey], dragOverNodeKey)) {\n var lastDropNodePosition = (0, _treeUtils.calDropNodePosition)(event, treeNodesRefs[nodeData.refKey]);\n if (lastDropNodePosition === dropNodePosition) return;\n setDropNodePosition(lastDropNodePosition);\n }\n onDragOver === null || onDragOver === void 0 ? void 0 : onDragOver(nodeData, event);\n });\n var handleDragLeave = (0, _utils.useEventCallback)(function (nodeData, event) {\n onDragLeave === null || onDragLeave === void 0 ? void 0 : onDragLeave(nodeData, event);\n });\n var handleDragEnd = (0, _utils.useEventCallback)(function (nodeData, event) {\n (0, _treeUtils.removeDragPreview)();\n setDragNode(null);\n setDragNodeKeys([]);\n setDragOverNodeKey(null);\n onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(nodeData, event);\n });\n var handleDrop = (0, _utils.useEventCallback)(function (nodeData, event) {\n if (dragNodeKeys.some(function (d) {\n return (0, _utils.shallowEqual)(d, nodeData[valueKey]);\n })) {\n console.error('Cannot drag a node to itself and its children');\n } else {\n var dropData = getDropData(nodeData);\n onDrop === null || onDrop === void 0 ? void 0 : onDrop(dropData, event);\n }\n (0, _treeUtils.removeDragPreview)();\n setDragNode(null);\n setDragNodeKeys([]);\n setDragOverNodeKey(null);\n });\n var handleOpen = (0, _utils.useEventCallback)(function () {\n var _trigger$current2, _trigger$current2$ope;\n (_trigger$current2 = trigger.current) === null || _trigger$current2 === void 0 ? void 0 : (_trigger$current2$ope = _trigger$current2.open) === null || _trigger$current2$ope === void 0 ? void 0 : _trigger$current2$ope.call(_trigger$current2);\n focusActiveNode();\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n });\n var handleClose = (0, _utils.useEventCallback)(function () {\n var _trigger$current3, _trigger$current3$clo, _target$current2;\n (_trigger$current3 = trigger.current) === null || _trigger$current3 === void 0 ? void 0 : (_trigger$current3$clo = _trigger$current3.close) === null || _trigger$current3$clo === void 0 ? void 0 : _trigger$current3$clo.call(_trigger$current3);\n setSearchKeyword('');\n setActive(false);\n setFocusItemValue(activeNode === null || activeNode === void 0 ? void 0 : activeNode[valueKey]);\n /**\n * when using keyboard toggle picker, should refocus on PickerToggle Component after close picker menu\n */\n (_target$current2 = target.current) === null || _target$current2 === void 0 ? void 0 : _target$current2.focus();\n });\n var handleFocusItem = (0, _utils.useEventCallback)(function (key) {\n var focusableItems = (0, _treeUtils.getFocusableItems)(filteredData, {\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n childrenKey: childrenKey,\n expandItemValues: expandItemValues\n }, (0, _treeUtils.isSearching)(searchKeywordState));\n var selector = \".\" + treePrefix('node-label');\n var focusProps = {\n focusItemValue: focusItemValue,\n focusableItems: focusableItems,\n treeNodesRefs: treeNodesRefs,\n selector: selector,\n valueKey: valueKey,\n callback: function callback(nextFocusItemValue) {\n setFocusItemValue(nextFocusItemValue);\n }\n };\n if (key === _utils.KEY_VALUES.DOWN) {\n (0, _treeUtils.focusNextItem)(focusProps);\n return;\n }\n if (key === _utils.KEY_VALUES.UP) {\n (0, _treeUtils.focusPreviousItem)(focusProps);\n }\n });\n var handleLeftArrow = (0, _utils.useEventCallback)(function () {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var focusItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n (0, _treeUtils.leftArrowHandler)({\n focusItem: focusItem,\n expand: expandItemValues.includes(focusItem === null || focusItem === void 0 ? void 0 : focusItem[valueKey]),\n onExpand: handleExpand,\n childrenKey: childrenKey,\n onFocusItem: function onFocusItem() {\n var _focusItem$parent, _focusItem$parent2;\n setFocusItemValue(focusItem === null || focusItem === void 0 ? void 0 : (_focusItem$parent = focusItem.parent) === null || _focusItem$parent === void 0 ? void 0 : _focusItem$parent[valueKey]);\n (0, _treeUtils.focusTreeNode)(focusItem === null || focusItem === void 0 ? void 0 : (_focusItem$parent2 = focusItem.parent) === null || _focusItem$parent2 === void 0 ? void 0 : _focusItem$parent2.refKey, treeNodesRefs, \".\" + treePrefix('node-label'));\n }\n });\n });\n var handleRightArrow = (0, _utils.useEventCallback)(function () {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var focusItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n (0, _treeUtils.rightArrowHandler)({\n focusItem: focusItem,\n expand: expandItemValues.includes(focusItem === null || focusItem === void 0 ? void 0 : focusItem[valueKey]),\n childrenKey: childrenKey,\n onExpand: handleExpand,\n onFocusItem: function onFocusItem() {\n handleFocusItem(_utils.KEY_VALUES.DOWN);\n }\n });\n });\n var selectActiveItem = (0, _utils.useEventCallback)(function (event) {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var activeItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n handleSelect(activeItem, event);\n });\n var handleClean = (0, _utils.useEventCallback)(function (event) {\n var nullValue = null;\n var target = event.target;\n // exclude searchbox\n if (target.matches('input[role=\"searchbox\"]') || disabled || !cleanable) {\n return;\n }\n if (!isControlled) {\n setValue(null);\n }\n onChange === null || onChange === void 0 ? void 0 : onChange(nullValue, event);\n });\n var onPickerKeydown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({\n toggle: !activeNode || !active,\n trigger: trigger,\n target: target,\n overlay: overlay,\n searchInput: searchInput,\n active: active,\n onExit: handleClean,\n onClose: handleClose,\n onMenuKeyDown: function onMenuKeyDown(event) {\n (0, _Picker.onMenuKeyDown)(event, {\n down: function down() {\n return handleFocusItem(_utils.KEY_VALUES.DOWN);\n },\n up: function up() {\n return handleFocusItem(_utils.KEY_VALUES.UP);\n },\n left: rtl ? handleRightArrow : handleLeftArrow,\n right: rtl ? handleLeftArrow : handleRightArrow,\n enter: selectActiveItem,\n del: handleClean\n });\n }\n }, rest));\n var handleTreeKeyDown = (0, _utils.useEventCallback)(function (event) {\n if (!treeView.current) {\n return;\n }\n (0, _Picker.onMenuKeyDown)(event, {\n down: function down() {\n return handleFocusItem(_utils.KEY_VALUES.DOWN);\n },\n up: function up() {\n return handleFocusItem(_utils.KEY_VALUES.UP);\n },\n left: rtl ? handleRightArrow : handleLeftArrow,\n right: rtl ? handleLeftArrow : handleRightArrow,\n enter: selectActiveItem\n });\n });\n var renderNode = function renderNode(node, index, layer) {\n if (!node.visible) {\n return null;\n }\n var children = node[childrenKey];\n var expand = (0, _treeUtils.getExpandWhenSearching)(searchKeywordState, expandItemValues.includes(node[valueKey]));\n var visibleChildren = (0, _isUndefined2.default)(searchKeywordState) || searchKeywordState.length === 0 ? !!children : (0, _treeUtils.hasVisibleChildren)(node, childrenKey);\n var nodeProps = (0, _extends2.default)({}, getTreeNodeProps((0, _extends2.default)({}, node, {\n expand: expand\n }), layer, index), {\n hasChildren: visibleChildren\n });\n if (nodeProps.hasChildren) {\n var _merge;\n layer += 1;\n var openClass = treePrefix('open');\n var childrenClass = merge(treePrefix('node-children'), (_merge = {}, _merge[openClass] = expand && visibleChildren, _merge));\n var nodes = children || [];\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: childrenClass,\n key: node[valueKey],\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 640,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_TreeNode.default, (0, _extends2.default)({}, nodeProps, {\n ref: function ref(_ref) {\n return saveTreeNodeRef(_ref, node.refKey);\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 641,\n columnNumber: 11\n }\n })), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: treePrefix('group'),\n role: \"group\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 642,\n columnNumber: 11\n }\n }, nodes.map(function (child, i) {\n return renderNode(child, i, layer);\n }), showIndentLine && /*#__PURE__*/_react.default.createElement(\"span\", {\n className: treePrefix('indent-line'),\n style: (0, _treeUtils.getTreeNodeIndent)(rtl, layer - 1, true),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 645,\n columnNumber: 15\n }\n })));\n }\n return /*#__PURE__*/_react.default.createElement(_TreeNode.default, (0, _extends2.default)({\n ref: function ref(_ref2) {\n return saveTreeNodeRef(_ref2, node.refKey);\n },\n key: node[valueKey]\n }, nodeProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 655,\n columnNumber: 7\n }\n }));\n };\n var renderVirtualListNode = function renderVirtualListNode(_ref3) {\n var index = _ref3.index,\n style = _ref3.style,\n data = _ref3.data;\n var node = data[index];\n var layer = node.layer,\n visible = node.visible;\n var expand = (0, _treeUtils.getExpandWhenSearching)(searchKeywordState, expandItemValues.includes(node[valueKey]));\n if (!node.visible) {\n return null;\n }\n var nodeProps = (0, _extends2.default)({}, getTreeNodeProps((0, _extends2.default)({}, node, {\n expand: expand\n }), layer), {\n style: style,\n hasChildren: node.hasChildren\n });\n return visible && /*#__PURE__*/_react.default.createElement(_TreeNode.default, (0, _extends2.default)({\n ref: function ref(_ref4) {\n return saveTreeNodeRef(_ref4, node.refKey);\n }\n }, nodeProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 681,\n columnNumber: 23\n }\n }));\n };\n var renderTree = function renderTree() {\n var _withTreeClassPrefix;\n var classes = withTreeClassPrefix((_withTreeClassPrefix = {}, _withTreeClassPrefix[className !== null && className !== void 0 ? className : ''] = inline, _withTreeClassPrefix.virtualized = virtualized, _withTreeClassPrefix));\n var formattedNodes = getFormattedNodes(renderNode);\n return /*#__PURE__*/_react.default.createElement(_Picker.TreeView, {\n treeRootClassName: treePrefix('root'),\n ref: inline ? root : treeView,\n className: classes,\n style: inline ? (0, _extends2.default)({\n height: height\n }, style) : {},\n onKeyDown: inline ? handleTreeKeyDown : undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 693,\n columnNumber: 7\n }\n }, virtualized ? /*#__PURE__*/_react.default.createElement(_Windowing.AutoSizer, {\n defaultHeight: inline ? height : menuMaxHeight,\n style: {\n width: 'auto',\n height: 'auto'\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 701,\n columnNumber: 11\n }\n }, function (_ref5) {\n var height = _ref5.height;\n return /*#__PURE__*/_react.default.createElement(_Windowing.List, (0, _extends2.default)({\n ref: list,\n height: height,\n itemSize: itemSize,\n itemCount: formattedNodes.length,\n itemData: formattedNodes\n }, listProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 706,\n columnNumber: 15\n }\n }), renderVirtualListNode);\n }) : formattedNodes);\n };\n var renderTreeView = function renderTreeView(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = merge(className, menuClassName, prefix('tree-menu'));\n var mergedMenuStyle = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerPopup, {\n autoWidth: menuAutoWidth,\n className: classes,\n style: mergedMenuStyle,\n ref: (0, _utils.mergeRefs)(overlay, speakerRef),\n onKeyDown: onPickerKeydown,\n target: trigger,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 731,\n columnNumber: 7\n }\n }, searchable ? /*#__PURE__*/_react.default.createElement(_Picker.SearchBar, {\n placeholder: locale.searchPlaceholder,\n onChange: handleSearch,\n value: searchKeywordState,\n inputRef: searchInput,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 740,\n columnNumber: 11\n }\n }) : null, renderMenu ? renderMenu(renderTree()) : renderTree(), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n\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 var hasValidValue = !(0, _isNil2.default)(activeNode) || !(0, _isNil2.default)(value) && (0, _isFunction2.default)(renderValue);\n var selectedElement = placeholder;\n if (hasValidValue) {\n var node = activeNode !== null && activeNode !== void 0 ? activeNode : {};\n selectedElement = node[labelKey];\n if ((0, _isFunction2.default)(renderValue) && value) {\n selectedElement = renderValue(value, node, selectedElement);\n if ((0, _isNil2.default)(selectedElement)) {\n hasValidValue = false;\n }\n }\n }\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n appearance: appearance,\n hasValue: hasValidValue,\n name: 'tree',\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n if (inline) {\n return renderTree();\n }\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n id: id,\n popupType: \"tree\",\n pickerProps: (0, _pick2.default)(props, _Picker.pickTriggerPropKeys),\n ref: trigger,\n placement: placement,\n onEnter: handleOpen,\n onEntered: onEntered,\n onExit: (0, _utils.createChainedFunction)(onClose, onExit),\n onExited: (0, _utils.createChainedFunction)(handleClose, onExited),\n speaker: renderTreeView,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 785,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n ref: root,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 797,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit2.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys, ['cascade'])), {\n ref: target,\n appearance: appearance,\n onKeyDown: onPickerKeydown,\n onClean: (0, _utils.createChainedFunction)(handleClean, onClean),\n cleanable: cleanable && !disabled,\n as: toggleAs,\n disabled: disabled,\n hasValue: hasValidValue,\n active: active,\n placement: placement,\n inputValue: value,\n focusItemValue: focusItemValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 798,\n columnNumber: 9\n }\n }), selectedElement || locale.placeholder)));\n});\nTreePicker.displayName = 'TreePicker';\nTreePicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes, {\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n height: _propTypes.default.number,\n draggable: _propTypes.default.bool,\n virtualized: _propTypes.default.bool,\n searchable: _propTypes.default.bool,\n menuAutoWidth: _propTypes.default.bool,\n searchKeyword: _propTypes.default.string,\n defaultExpandAll: _propTypes.default.bool,\n expandItemValues: _propTypes.default.array,\n defaultExpandItemValues: _propTypes.default.array,\n onSearch: _propTypes.default.func,\n onExpand: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n renderMenu: _propTypes.default.func,\n renderTreeNode: _propTypes.default.func,\n renderTreeIcon: _propTypes.default.func,\n renderExtraFooter: _propTypes.default.func,\n renderDragNode: _propTypes.default.func,\n searchBy: _propTypes.default.func\n});\nvar _default = TreePicker;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/TreePicker/TreePicker.tsx?");
9523
9633
 
9524
9634
  /***/ }),
9525
9635
 
@@ -9816,7 +9926,7 @@ eval("\n\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _defau
9816
9926
  /***/ (function(__unused_webpack_module, exports) {
9817
9927
 
9818
9928
  "use strict";
9819
- eval("\n\nexports.__esModule = true;\nexports.DATERANGE_DISABLED_TARGET = exports.KEY_VALUES = exports.TREE_NODE_DROP_POSITION = exports.TREE_NODE_ROOT_PADDING = exports.TREE_NODE_PADDING = exports.CHECK_STATE = exports.PLACEMENT = exports.PLACEMENT_AUTO = exports.PLACEMENT_8 = exports.PLACEMENT_4 = exports.COLOR = exports.STATUS = exports.COLUMN_SIZE = exports.SIZE = void 0;\nvar SIZE = ['lg', 'md', 'sm', 'xs'];\nexports.SIZE = SIZE;\nvar COLUMN_SIZE = ['xxl', 'xl', 'lg', 'md', 'sm', 'xs'];\nexports.COLUMN_SIZE = COLUMN_SIZE;\nvar STATUS = ['success', 'warning', 'error', 'info'];\nexports.STATUS = STATUS;\nvar COLOR = ['red', 'orange', 'yellow', 'green', 'cyan', 'blue', 'violet'];\nexports.COLOR = COLOR;\nvar PLACEMENT_4 = ['top', 'bottom', 'right', 'left'];\nexports.PLACEMENT_4 = PLACEMENT_4;\nvar PLACEMENT_8 = ['bottomStart', 'bottomEnd', 'topStart', 'topEnd', 'leftStart', 'rightStart', 'leftEnd', 'rightEnd'];\nexports.PLACEMENT_8 = PLACEMENT_8;\nvar PLACEMENT_AUTO = ['auto', 'autoVertical', 'autoVerticalStart', 'autoVerticalEnd', 'autoHorizontal', 'autoHorizontalStart', 'autoHorizontalEnd'];\nexports.PLACEMENT_AUTO = PLACEMENT_AUTO;\nvar PLACEMENT = [].concat(PLACEMENT_4, PLACEMENT_8, PLACEMENT_AUTO);\n\n/**\n * Check Tree Node State\n */\nexports.PLACEMENT = PLACEMENT;\nvar CHECK_STATE;\nexports.CHECK_STATE = CHECK_STATE;\n(function (CHECK_STATE) {\n CHECK_STATE[CHECK_STATE[\"UNCHECK\"] = 0] = \"UNCHECK\";\n CHECK_STATE[CHECK_STATE[\"CHECK\"] = 1] = \"CHECK\";\n CHECK_STATE[CHECK_STATE[\"INDETERMINATE\"] = 2] = \"INDETERMINATE\";\n})(CHECK_STATE || (exports.CHECK_STATE = CHECK_STATE = {}));\nvar TREE_NODE_PADDING = 16;\nexports.TREE_NODE_PADDING = TREE_NODE_PADDING;\nvar TREE_NODE_ROOT_PADDING = 12;\n\n/**\n * Tree Node Drag Type\n */\nexports.TREE_NODE_ROOT_PADDING = TREE_NODE_ROOT_PADDING;\nvar TREE_NODE_DROP_POSITION;\n/**\n * UI Events KeyboardEvent key Values\n * https://www.w3.org/TR/uievents-key\n */\nexports.TREE_NODE_DROP_POSITION = TREE_NODE_DROP_POSITION;\n(function (TREE_NODE_DROP_POSITION) {\n TREE_NODE_DROP_POSITION[TREE_NODE_DROP_POSITION[\"DRAG_OVER\"] = 0] = \"DRAG_OVER\";\n TREE_NODE_DROP_POSITION[TREE_NODE_DROP_POSITION[\"DRAG_OVER_TOP\"] = 1] = \"DRAG_OVER_TOP\";\n TREE_NODE_DROP_POSITION[TREE_NODE_DROP_POSITION[\"DRAG_OVER_BOTTOM\"] = 2] = \"DRAG_OVER_BOTTOM\";\n})(TREE_NODE_DROP_POSITION || (exports.TREE_NODE_DROP_POSITION = TREE_NODE_DROP_POSITION = {}));\nvar KEY_VALUES = {\n // Navigation Keys\n LEFT: 'ArrowLeft',\n UP: 'ArrowUp',\n RIGHT: 'ArrowRight',\n DOWN: 'ArrowDown',\n END: 'End',\n HOME: 'Home',\n PAGE_DOWN: 'PageDown',\n PAGE_UP: 'PageUp',\n // Whitespace Keys\n ENTER: 'Enter',\n TAB: 'Tab',\n SPACE: ' ',\n // Editing Keys\n BACKSPACE: 'Backspace',\n DELETE: 'Delete',\n COMMA: ',',\n // UI Keys\n ESC: 'Escape'\n};\nexports.KEY_VALUES = KEY_VALUES;\nvar DATERANGE_DISABLED_TARGET;\nexports.DATERANGE_DISABLED_TARGET = DATERANGE_DISABLED_TARGET;\n(function (DATERANGE_DISABLED_TARGET) {\n DATERANGE_DISABLED_TARGET[\"CALENDAR\"] = \"CALENDAR\";\n DATERANGE_DISABLED_TARGET[\"TOOLBAR_BUTTON_OK\"] = \"TOOLBAR_BUTTON_OK\";\n DATERANGE_DISABLED_TARGET[\"TOOLBAR_SHORTCUT\"] = \"TOOLBAR_SHORTCUT\";\n})(DATERANGE_DISABLED_TARGET || (exports.DATERANGE_DISABLED_TARGET = DATERANGE_DISABLED_TARGET = {}));\n\n//# sourceURL=webpack://rsuite/./src/utils/constants.ts?");
9929
+ eval("\n\nexports.__esModule = true;\nexports.DATERANGE_DISABLED_TARGET = exports.KEY_VALUES = exports.TREE_NODE_DROP_POSITION = exports.TREE_NODE_ROOT_PADDING = exports.TREE_NODE_PADDING = exports.CHECK_STATE = exports.PLACEMENT = exports.PLACEMENT_AUTO = exports.PLACEMENT_8 = exports.PLACEMENT_4 = exports.COLOR = exports.STATUS = exports.COLUMN_SIZE = exports.SIZE = void 0;\nvar SIZE = ['lg', 'md', 'sm', 'xs'];\nexports.SIZE = SIZE;\nvar COLUMN_SIZE = ['xxl', 'xl', 'lg', 'md', 'sm', 'xs'];\nexports.COLUMN_SIZE = COLUMN_SIZE;\nvar STATUS = ['success', 'warning', 'error', 'info'];\nexports.STATUS = STATUS;\nvar COLOR = ['red', 'orange', 'yellow', 'green', 'cyan', 'blue', 'violet'];\nexports.COLOR = COLOR;\nvar PLACEMENT_4 = ['top', 'bottom', 'right', 'left'];\nexports.PLACEMENT_4 = PLACEMENT_4;\nvar PLACEMENT_8 = ['bottomStart', 'bottomEnd', 'topStart', 'topEnd', 'leftStart', 'rightStart', 'leftEnd', 'rightEnd'];\nexports.PLACEMENT_8 = PLACEMENT_8;\nvar PLACEMENT_AUTO = ['auto', 'autoVertical', 'autoVerticalStart', 'autoVerticalEnd', 'autoHorizontal', 'autoHorizontalStart', 'autoHorizontalEnd'];\nexports.PLACEMENT_AUTO = PLACEMENT_AUTO;\nvar PLACEMENT = [].concat(PLACEMENT_4, PLACEMENT_8, PLACEMENT_AUTO);\n\n/**\n * Check Tree Node State\n */\nexports.PLACEMENT = PLACEMENT;\nvar CHECK_STATE;\nexports.CHECK_STATE = CHECK_STATE;\n(function (CHECK_STATE) {\n CHECK_STATE[CHECK_STATE[\"UNCHECK\"] = 0] = \"UNCHECK\";\n CHECK_STATE[CHECK_STATE[\"CHECK\"] = 1] = \"CHECK\";\n CHECK_STATE[CHECK_STATE[\"INDETERMINATE\"] = 2] = \"INDETERMINATE\";\n})(CHECK_STATE || (exports.CHECK_STATE = CHECK_STATE = {}));\nvar TREE_NODE_PADDING = 16;\nexports.TREE_NODE_PADDING = TREE_NODE_PADDING;\nvar TREE_NODE_ROOT_PADDING = 12;\n\n/**\n * Tree Node Drag Type\n */\nexports.TREE_NODE_ROOT_PADDING = TREE_NODE_ROOT_PADDING;\nvar TREE_NODE_DROP_POSITION;\n/**\n * UI Events KeyboardEvent key Values\n * https://www.w3.org/TR/uievents-key\n */\nexports.TREE_NODE_DROP_POSITION = TREE_NODE_DROP_POSITION;\n(function (TREE_NODE_DROP_POSITION) {\n TREE_NODE_DROP_POSITION[TREE_NODE_DROP_POSITION[\"DRAG_OVER\"] = 0] = \"DRAG_OVER\";\n TREE_NODE_DROP_POSITION[TREE_NODE_DROP_POSITION[\"DRAG_OVER_TOP\"] = 1] = \"DRAG_OVER_TOP\";\n TREE_NODE_DROP_POSITION[TREE_NODE_DROP_POSITION[\"DRAG_OVER_BOTTOM\"] = 2] = \"DRAG_OVER_BOTTOM\";\n})(TREE_NODE_DROP_POSITION || (exports.TREE_NODE_DROP_POSITION = TREE_NODE_DROP_POSITION = {}));\nvar KEY_VALUES = {\n // Navigation Keys\n LEFT: 'ArrowLeft',\n UP: 'ArrowUp',\n RIGHT: 'ArrowRight',\n DOWN: 'ArrowDown',\n END: 'End',\n HOME: 'Home',\n PAGE_DOWN: 'PageDown',\n PAGE_UP: 'PageUp',\n // Whitespace Keys\n ENTER: 'Enter',\n TAB: 'Tab',\n SPACE: ' ',\n // Editing Keys\n BACKSPACE: 'Backspace',\n DELETE: 'Delete',\n COMMA: ',',\n // UI Keys\n ESC: 'Escape'\n};\nexports.KEY_VALUES = KEY_VALUES;\nvar DATERANGE_DISABLED_TARGET;\nexports.DATERANGE_DISABLED_TARGET = DATERANGE_DISABLED_TARGET;\n(function (DATERANGE_DISABLED_TARGET) {\n DATERANGE_DISABLED_TARGET[\"CALENDAR\"] = \"CALENDAR\";\n DATERANGE_DISABLED_TARGET[\"TOOLBAR_BUTTON_OK\"] = \"TOOLBAR_BUTTON_OK\";\n DATERANGE_DISABLED_TARGET[\"TOOLBAR_SHORTCUT\"] = \"TOOLBAR_SHORTCUT\";\n DATERANGE_DISABLED_TARGET[\"INPUT\"] = \"INPUT\";\n})(DATERANGE_DISABLED_TARGET || (exports.DATERANGE_DISABLED_TARGET = DATERANGE_DISABLED_TARGET = {}));\n\n//# sourceURL=webpack://rsuite/./src/utils/constants.ts?");
9820
9930
 
9821
9931
  /***/ }),
9822
9932
 
@@ -9849,7 +9959,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
9849
9959
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
9850
9960
 
9851
9961
  "use strict";
9852
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports.disabledTime = disabledTime;\nexports.getMonthView = getMonthView;\nexports.getDateMask = getDateMask;\nexports.copyTime = copyTime;\nexports.reverseDateRangeOmitTime = reverseDateRangeOmitTime;\nexports.getReversedTimeMeridian = exports.shouldOnlyRenderTime = exports.shouldRenderDate = exports.shouldRenderMonth = exports.shouldRenderTime = exports.omitHideDisabledProps = exports.calendarOnlyProps = exports.lastDayOfMonth = exports.isLastDayOfMonth = exports.differenceInCalendarMonths = exports.set = exports.isValid = exports.isMatch = exports.subDays = exports.startOfWeek = exports.startOfMonth = exports.startOfISOWeek = exports.startOfDay = exports.setYear = exports.setSeconds = exports.setMonth = exports.setMinutes = exports.setHours = exports.setDate = exports.parseISO = exports.parse = exports.isSameSecond = exports.isSameMonth = exports.isSameDay = exports.isEqual = exports.isBefore = exports.isAfter = exports.getYear = exports.getSeconds = exports.getMonth = exports.getMinutes = exports.getHours = exports.getDaysInMonth = exports.getDay = exports.getDate = exports.format = exports.endOfWeek = exports.endOfMonth = exports.endOfISOWeek = exports.endOfDay = exports.compareAsc = exports.addHours = exports.addMinutes = exports.addSeconds = exports.addYears = exports.addMonths = exports.addDays = void 0;\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _omitBy = _interopRequireDefault(__webpack_require__(/*! lodash/omitBy */ \"./node_modules/lodash/omitBy.js\"));\nvar _getHours = _interopRequireDefault(__webpack_require__(/*! date-fns/getHours */ \"./node_modules/date-fns/esm/getHours/index.js\"));\nexports.getHours = _getHours.default;\nvar _setHours = _interopRequireDefault(__webpack_require__(/*! date-fns/setHours */ \"./node_modules/date-fns/esm/setHours/index.js\"));\nexports.setHours = _setHours.default;\nvar _getDay = _interopRequireDefault(__webpack_require__(/*! date-fns/getDay */ \"./node_modules/date-fns/esm/getDay/index.js\"));\nexports.getDay = _getDay.default;\nvar _getMinutes = _interopRequireDefault(__webpack_require__(/*! date-fns/getMinutes */ \"./node_modules/date-fns/esm/getMinutes/index.js\"));\nexports.getMinutes = _getMinutes.default;\nvar _getSeconds = _interopRequireDefault(__webpack_require__(/*! date-fns/getSeconds */ \"./node_modules/date-fns/esm/getSeconds/index.js\"));\nexports.getSeconds = _getSeconds.default;\nvar _addDays = _interopRequireDefault(__webpack_require__(/*! date-fns/addDays */ \"./node_modules/date-fns/esm/addDays/index.js\"));\nexports.addDays = _addDays.default;\nvar _set = _interopRequireDefault(__webpack_require__(/*! date-fns/set */ \"./node_modules/date-fns/esm/set/index.js\"));\nexports.set = _set.default;\nvar _addMonths = _interopRequireDefault(__webpack_require__(/*! date-fns/addMonths */ \"./node_modules/date-fns/esm/addMonths/index.js\"));\nexports.addMonths = _addMonths.default;\nvar _addYears = _interopRequireDefault(__webpack_require__(/*! date-fns/addYears */ \"./node_modules/date-fns/esm/addYears/index.js\"));\nexports.addYears = _addYears.default;\nvar _addSeconds = _interopRequireDefault(__webpack_require__(/*! date-fns/addSeconds */ \"./node_modules/date-fns/esm/addSeconds/index.js\"));\nexports.addSeconds = _addSeconds.default;\nvar _addMinutes = _interopRequireDefault(__webpack_require__(/*! date-fns/addMinutes */ \"./node_modules/date-fns/esm/addMinutes/index.js\"));\nexports.addMinutes = _addMinutes.default;\nvar _addHours = _interopRequireDefault(__webpack_require__(/*! date-fns/addHours */ \"./node_modules/date-fns/esm/addHours/index.js\"));\nexports.addHours = _addHours.default;\nvar _compareAsc = _interopRequireDefault(__webpack_require__(/*! date-fns/compareAsc */ \"./node_modules/date-fns/esm/compareAsc/index.js\"));\nexports.compareAsc = _compareAsc.default;\nvar _endOfDay = _interopRequireDefault(__webpack_require__(/*! date-fns/endOfDay */ \"./node_modules/date-fns/esm/endOfDay/index.js\"));\nexports.endOfDay = _endOfDay.default;\nvar _endOfISOWeek = _interopRequireDefault(__webpack_require__(/*! date-fns/endOfISOWeek */ \"./node_modules/date-fns/esm/endOfISOWeek/index.js\"));\nexports.endOfISOWeek = _endOfISOWeek.default;\nvar _endOfMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/endOfMonth */ \"./node_modules/date-fns/esm/endOfMonth/index.js\"));\nexports.endOfMonth = _endOfMonth.default;\nvar _endOfWeek = _interopRequireDefault(__webpack_require__(/*! date-fns/endOfWeek */ \"./node_modules/date-fns/esm/endOfWeek/index.js\"));\nexports.endOfWeek = _endOfWeek.default;\nvar _format = _interopRequireDefault(__webpack_require__(/*! date-fns/format */ \"./node_modules/date-fns/esm/format/index.js\"));\nexports.format = _format.default;\nvar _getDate = _interopRequireDefault(__webpack_require__(/*! date-fns/getDate */ \"./node_modules/date-fns/esm/getDate/index.js\"));\nexports.getDate = _getDate.default;\nvar _getDaysInMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/getDaysInMonth */ \"./node_modules/date-fns/esm/getDaysInMonth/index.js\"));\nexports.getDaysInMonth = _getDaysInMonth.default;\nvar _getMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/getMonth */ \"./node_modules/date-fns/esm/getMonth/index.js\"));\nexports.getMonth = _getMonth.default;\nvar _getYear = _interopRequireDefault(__webpack_require__(/*! date-fns/getYear */ \"./node_modules/date-fns/esm/getYear/index.js\"));\nexports.getYear = _getYear.default;\nvar _isAfter = _interopRequireDefault(__webpack_require__(/*! date-fns/isAfter */ \"./node_modules/date-fns/esm/isAfter/index.js\"));\nexports.isAfter = _isAfter.default;\nvar _isBefore = _interopRequireDefault(__webpack_require__(/*! date-fns/isBefore */ \"./node_modules/date-fns/esm/isBefore/index.js\"));\nexports.isBefore = _isBefore.default;\nvar _isEqual = _interopRequireDefault(__webpack_require__(/*! date-fns/isEqual */ \"./node_modules/date-fns/esm/isEqual/index.js\"));\nexports.isEqual = _isEqual.default;\nvar _isSameDay = _interopRequireDefault(__webpack_require__(/*! date-fns/isSameDay */ \"./node_modules/date-fns/esm/isSameDay/index.js\"));\nexports.isSameDay = _isSameDay.default;\nvar _isSameMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/isSameMonth */ \"./node_modules/date-fns/esm/isSameMonth/index.js\"));\nexports.isSameMonth = _isSameMonth.default;\nvar _isSameSecond = _interopRequireDefault(__webpack_require__(/*! date-fns/isSameSecond */ \"./node_modules/date-fns/esm/isSameSecond/index.js\"));\nexports.isSameSecond = _isSameSecond.default;\nvar _parse = _interopRequireDefault(__webpack_require__(/*! date-fns/parse */ \"./node_modules/date-fns/esm/parse/index.js\"));\nexports.parse = _parse.default;\nvar _parseISO = _interopRequireDefault(__webpack_require__(/*! date-fns/parseISO */ \"./node_modules/date-fns/esm/parseISO/index.js\"));\nexports.parseISO = _parseISO.default;\nvar _setDate = _interopRequireDefault(__webpack_require__(/*! date-fns/setDate */ \"./node_modules/date-fns/esm/setDate/index.js\"));\nexports.setDate = _setDate.default;\nvar _setMinutes = _interopRequireDefault(__webpack_require__(/*! date-fns/setMinutes */ \"./node_modules/date-fns/esm/setMinutes/index.js\"));\nexports.setMinutes = _setMinutes.default;\nvar _setMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/setMonth */ \"./node_modules/date-fns/esm/setMonth/index.js\"));\nexports.setMonth = _setMonth.default;\nvar _setSeconds = _interopRequireDefault(__webpack_require__(/*! date-fns/setSeconds */ \"./node_modules/date-fns/esm/setSeconds/index.js\"));\nexports.setSeconds = _setSeconds.default;\nvar _setYear = _interopRequireDefault(__webpack_require__(/*! date-fns/setYear */ \"./node_modules/date-fns/esm/setYear/index.js\"));\nexports.setYear = _setYear.default;\nvar _startOfDay = _interopRequireDefault(__webpack_require__(/*! date-fns/startOfDay */ \"./node_modules/date-fns/esm/startOfDay/index.js\"));\nexports.startOfDay = _startOfDay.default;\nvar _startOfISOWeek = _interopRequireDefault(__webpack_require__(/*! date-fns/startOfISOWeek */ \"./node_modules/date-fns/esm/startOfISOWeek/index.js\"));\nexports.startOfISOWeek = _startOfISOWeek.default;\nvar _startOfMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/startOfMonth */ \"./node_modules/date-fns/esm/startOfMonth/index.js\"));\nexports.startOfMonth = _startOfMonth.default;\nvar _startOfWeek = _interopRequireDefault(__webpack_require__(/*! date-fns/startOfWeek */ \"./node_modules/date-fns/esm/startOfWeek/index.js\"));\nexports.startOfWeek = _startOfWeek.default;\nvar _subDays = _interopRequireDefault(__webpack_require__(/*! date-fns/subDays */ \"./node_modules/date-fns/esm/subDays/index.js\"));\nexports.subDays = _subDays.default;\nvar _isMatch = _interopRequireDefault(__webpack_require__(/*! date-fns/isMatch */ \"./node_modules/date-fns/esm/isMatch/index.js\"));\nexports.isMatch = _isMatch.default;\nvar _isValid = _interopRequireDefault(__webpack_require__(/*! date-fns/isValid */ \"./node_modules/date-fns/esm/isValid/index.js\"));\nexports.isValid = _isValid.default;\nvar _differenceInCalendarMonths = _interopRequireDefault(__webpack_require__(/*! date-fns/differenceInCalendarMonths */ \"./node_modules/date-fns/esm/differenceInCalendarMonths/index.js\"));\nexports.differenceInCalendarMonths = _differenceInCalendarMonths.default;\nvar _isLastDayOfMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/isLastDayOfMonth */ \"./node_modules/date-fns/esm/isLastDayOfMonth/index.js\"));\nexports.isLastDayOfMonth = _isLastDayOfMonth.default;\nvar _lastDayOfMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/lastDayOfMonth */ \"./node_modules/date-fns/esm/lastDayOfMonth/index.js\"));\nexports.lastDayOfMonth = _lastDayOfMonth.default;\nvar disabledTimeProps = ['disabledHours', 'disabledMinutes', 'disabledSeconds'];\nvar hideTimeProps = ['hideHours', 'hideMinutes', 'hideSeconds'];\nvar calendarOnlyProps = disabledTimeProps.concat(hideTimeProps);\nexports.calendarOnlyProps = calendarOnlyProps;\nfunction validTime(calendarProps, date) {\n if (!date) {\n return false;\n }\n return Object.keys(calendarProps).some(function (key) {\n if (/(Hours)/.test(key)) {\n var _calendarProps$key;\n return (_calendarProps$key = calendarProps[key]) === null || _calendarProps$key === void 0 ? void 0 : _calendarProps$key.call(calendarProps, (0, _getHours.default)(date), date);\n }\n if (/(Minutes)/.test(key)) {\n var _calendarProps$key2;\n return (_calendarProps$key2 = calendarProps[key]) === null || _calendarProps$key2 === void 0 ? void 0 : _calendarProps$key2.call(calendarProps, (0, _getMinutes.default)(date), date);\n }\n if (/(Seconds)/.test(key)) {\n var _calendarProps$key3;\n return (_calendarProps$key3 = calendarProps[key]) === null || _calendarProps$key3 === void 0 ? void 0 : _calendarProps$key3.call(calendarProps, (0, _getSeconds.default)(date), date);\n }\n return false;\n });\n}\n\n/**\n * Verify that the time is valid.\n *\n * @param props\n * @param date\n */\nfunction disabledTime(props, date) {\n var calendarProps = (0, _pick.default)(props, disabledTimeProps);\n return validTime(calendarProps, date);\n}\nvar omitHideDisabledProps = function omitHideDisabledProps(props) {\n return (0, _omitBy.default)(props, function (_val, key) {\n return key.startsWith('disabled') || key.startsWith('hide');\n });\n};\nexports.omitHideDisabledProps = omitHideDisabledProps;\nvar shouldRenderTime = function shouldRenderTime(format) {\n return /([Hhms])/.test(format);\n};\nexports.shouldRenderTime = shouldRenderTime;\nvar shouldRenderMonth = function shouldRenderMonth(format) {\n return /[Yy]/.test(format) && /[ML]/.test(format);\n};\nexports.shouldRenderMonth = shouldRenderMonth;\nvar shouldRenderDate = function shouldRenderDate(format) {\n return /[Yy]/.test(format) && /[ML]/.test(format) && /[Dd]/.test(format);\n}; // for date-fns v1 and v2\nexports.shouldRenderDate = shouldRenderDate;\nvar shouldOnlyRenderTime = function shouldOnlyRenderTime(format) {\n return /([Hhms])/.test(format) && !/([YyMDd])/.test(format);\n}; // for date-fns v1 and v2\n\n/**\n * Get all weeks of this month\n * @params monthDate\n * @return date[]\n */\nexports.shouldOnlyRenderTime = shouldOnlyRenderTime;\nfunction getMonthView(monthDate, isoWeek) {\n var firstDayOfMonth = (0, _getDay.default)(monthDate);\n var distance = 0 - firstDayOfMonth;\n if (isoWeek) {\n distance = 1 - firstDayOfMonth;\n if (firstDayOfMonth === 0) {\n distance = -6;\n }\n }\n var firstWeekendDate = (0, _addDays.default)(monthDate, distance);\n var weeks = [firstWeekendDate];\n var nextWeekendDate = (0, _addDays.default)(firstWeekendDate, 7);\n weeks.push(nextWeekendDate);\n while (weeks.length < 6) {\n nextWeekendDate = (0, _addDays.default)(nextWeekendDate, 7);\n weeks.push(nextWeekendDate);\n }\n return weeks;\n}\nfunction getDateMask(formatStr) {\n return Array.from(formatStr).map(function (i) {\n return i.match(/[A-Za-z]/) ? /[\\d|A-Za-z]/ : i;\n });\n}\n\n/**\n * Copy the time of one date to another\n */\nfunction copyTime(_ref) {\n var from = _ref.from,\n to = _ref.to;\n return (0, _set.default)(to, {\n hours: (0, _getHours.default)(from),\n minutes: (0, _getMinutes.default)(from),\n seconds: (0, _getSeconds.default)(from)\n });\n}\n\n/**\n * Swap two dates without swapping the time.\n */\nfunction reverseDateRangeOmitTime(dateRange) {\n var start = dateRange[0],\n end = dateRange[1];\n if (start && end) {\n return [copyTime({\n from: start,\n to: end\n }), copyTime({\n from: end,\n to: start\n })];\n }\n return dateRange;\n}\n\n/**\n * Get the time with AM and PM reversed.\n */\nvar getReversedTimeMeridian = function getReversedTimeMeridian(date) {\n var clonedDate = new Date(date.valueOf());\n var hours = (0, _getHours.default)(clonedDate);\n var nextHours = hours >= 12 ? hours - 12 : hours + 12;\n return (0, _setHours.default)(clonedDate, nextHours);\n};\nexports.getReversedTimeMeridian = getReversedTimeMeridian;\n\n//# sourceURL=webpack://rsuite/./src/utils/dateUtils.ts?");
9962
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports.disabledTime = disabledTime;\nexports.getMonthView = getMonthView;\nexports.copyTime = copyTime;\nexports.reverseDateRangeOmitTime = reverseDateRangeOmitTime;\nexports.getReversedTimeMeridian = exports.shouldOnlyRenderTime = exports.shouldRenderDate = exports.shouldRenderMonth = exports.shouldRenderTime = exports.omitHideDisabledProps = exports.calendarOnlyProps = exports.lastDayOfMonth = exports.isLastDayOfMonth = exports.differenceInCalendarMonths = exports.set = exports.isValid = exports.isMatch = exports.subDays = exports.startOfWeek = exports.startOfMonth = exports.startOfISOWeek = exports.startOfDay = exports.setYear = exports.setSeconds = exports.setMonth = exports.setMinutes = exports.setHours = exports.setDate = exports.parseISO = exports.parse = exports.isSameSecond = exports.isSameMonth = exports.isSameDay = exports.isEqual = exports.isBefore = exports.isAfter = exports.getYear = exports.getSeconds = exports.getMonth = exports.getMinutes = exports.getHours = exports.getDaysInMonth = exports.getDay = exports.getDate = exports.format = exports.endOfWeek = exports.endOfMonth = exports.endOfISOWeek = exports.endOfDay = exports.compareAsc = exports.addHours = exports.addMinutes = exports.addSeconds = exports.addYears = exports.addMonths = exports.addDays = void 0;\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\nvar _omitBy = _interopRequireDefault(__webpack_require__(/*! lodash/omitBy */ \"./node_modules/lodash/omitBy.js\"));\nvar _getHours = _interopRequireDefault(__webpack_require__(/*! date-fns/getHours */ \"./node_modules/date-fns/esm/getHours/index.js\"));\nexports.getHours = _getHours.default;\nvar _setHours = _interopRequireDefault(__webpack_require__(/*! date-fns/setHours */ \"./node_modules/date-fns/esm/setHours/index.js\"));\nexports.setHours = _setHours.default;\nvar _getDay = _interopRequireDefault(__webpack_require__(/*! date-fns/getDay */ \"./node_modules/date-fns/esm/getDay/index.js\"));\nexports.getDay = _getDay.default;\nvar _getMinutes = _interopRequireDefault(__webpack_require__(/*! date-fns/getMinutes */ \"./node_modules/date-fns/esm/getMinutes/index.js\"));\nexports.getMinutes = _getMinutes.default;\nvar _getSeconds = _interopRequireDefault(__webpack_require__(/*! date-fns/getSeconds */ \"./node_modules/date-fns/esm/getSeconds/index.js\"));\nexports.getSeconds = _getSeconds.default;\nvar _addDays = _interopRequireDefault(__webpack_require__(/*! date-fns/addDays */ \"./node_modules/date-fns/esm/addDays/index.js\"));\nexports.addDays = _addDays.default;\nvar _set = _interopRequireDefault(__webpack_require__(/*! date-fns/set */ \"./node_modules/date-fns/esm/set/index.js\"));\nexports.set = _set.default;\nvar _addMonths = _interopRequireDefault(__webpack_require__(/*! date-fns/addMonths */ \"./node_modules/date-fns/esm/addMonths/index.js\"));\nexports.addMonths = _addMonths.default;\nvar _addYears = _interopRequireDefault(__webpack_require__(/*! date-fns/addYears */ \"./node_modules/date-fns/esm/addYears/index.js\"));\nexports.addYears = _addYears.default;\nvar _addSeconds = _interopRequireDefault(__webpack_require__(/*! date-fns/addSeconds */ \"./node_modules/date-fns/esm/addSeconds/index.js\"));\nexports.addSeconds = _addSeconds.default;\nvar _addMinutes = _interopRequireDefault(__webpack_require__(/*! date-fns/addMinutes */ \"./node_modules/date-fns/esm/addMinutes/index.js\"));\nexports.addMinutes = _addMinutes.default;\nvar _addHours = _interopRequireDefault(__webpack_require__(/*! date-fns/addHours */ \"./node_modules/date-fns/esm/addHours/index.js\"));\nexports.addHours = _addHours.default;\nvar _compareAsc = _interopRequireDefault(__webpack_require__(/*! date-fns/compareAsc */ \"./node_modules/date-fns/esm/compareAsc/index.js\"));\nexports.compareAsc = _compareAsc.default;\nvar _endOfDay = _interopRequireDefault(__webpack_require__(/*! date-fns/endOfDay */ \"./node_modules/date-fns/esm/endOfDay/index.js\"));\nexports.endOfDay = _endOfDay.default;\nvar _endOfISOWeek = _interopRequireDefault(__webpack_require__(/*! date-fns/endOfISOWeek */ \"./node_modules/date-fns/esm/endOfISOWeek/index.js\"));\nexports.endOfISOWeek = _endOfISOWeek.default;\nvar _endOfMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/endOfMonth */ \"./node_modules/date-fns/esm/endOfMonth/index.js\"));\nexports.endOfMonth = _endOfMonth.default;\nvar _endOfWeek = _interopRequireDefault(__webpack_require__(/*! date-fns/endOfWeek */ \"./node_modules/date-fns/esm/endOfWeek/index.js\"));\nexports.endOfWeek = _endOfWeek.default;\nvar _format = _interopRequireDefault(__webpack_require__(/*! date-fns/format */ \"./node_modules/date-fns/esm/format/index.js\"));\nexports.format = _format.default;\nvar _getDate = _interopRequireDefault(__webpack_require__(/*! date-fns/getDate */ \"./node_modules/date-fns/esm/getDate/index.js\"));\nexports.getDate = _getDate.default;\nvar _getDaysInMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/getDaysInMonth */ \"./node_modules/date-fns/esm/getDaysInMonth/index.js\"));\nexports.getDaysInMonth = _getDaysInMonth.default;\nvar _getMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/getMonth */ \"./node_modules/date-fns/esm/getMonth/index.js\"));\nexports.getMonth = _getMonth.default;\nvar _getYear = _interopRequireDefault(__webpack_require__(/*! date-fns/getYear */ \"./node_modules/date-fns/esm/getYear/index.js\"));\nexports.getYear = _getYear.default;\nvar _isAfter = _interopRequireDefault(__webpack_require__(/*! date-fns/isAfter */ \"./node_modules/date-fns/esm/isAfter/index.js\"));\nexports.isAfter = _isAfter.default;\nvar _isBefore = _interopRequireDefault(__webpack_require__(/*! date-fns/isBefore */ \"./node_modules/date-fns/esm/isBefore/index.js\"));\nexports.isBefore = _isBefore.default;\nvar _isEqual = _interopRequireDefault(__webpack_require__(/*! date-fns/isEqual */ \"./node_modules/date-fns/esm/isEqual/index.js\"));\nexports.isEqual = _isEqual.default;\nvar _isSameDay = _interopRequireDefault(__webpack_require__(/*! date-fns/isSameDay */ \"./node_modules/date-fns/esm/isSameDay/index.js\"));\nexports.isSameDay = _isSameDay.default;\nvar _isSameMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/isSameMonth */ \"./node_modules/date-fns/esm/isSameMonth/index.js\"));\nexports.isSameMonth = _isSameMonth.default;\nvar _isSameSecond = _interopRequireDefault(__webpack_require__(/*! date-fns/isSameSecond */ \"./node_modules/date-fns/esm/isSameSecond/index.js\"));\nexports.isSameSecond = _isSameSecond.default;\nvar _parse = _interopRequireDefault(__webpack_require__(/*! date-fns/parse */ \"./node_modules/date-fns/esm/parse/index.js\"));\nexports.parse = _parse.default;\nvar _parseISO = _interopRequireDefault(__webpack_require__(/*! date-fns/parseISO */ \"./node_modules/date-fns/esm/parseISO/index.js\"));\nexports.parseISO = _parseISO.default;\nvar _setDate = _interopRequireDefault(__webpack_require__(/*! date-fns/setDate */ \"./node_modules/date-fns/esm/setDate/index.js\"));\nexports.setDate = _setDate.default;\nvar _setMinutes = _interopRequireDefault(__webpack_require__(/*! date-fns/setMinutes */ \"./node_modules/date-fns/esm/setMinutes/index.js\"));\nexports.setMinutes = _setMinutes.default;\nvar _setMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/setMonth */ \"./node_modules/date-fns/esm/setMonth/index.js\"));\nexports.setMonth = _setMonth.default;\nvar _setSeconds = _interopRequireDefault(__webpack_require__(/*! date-fns/setSeconds */ \"./node_modules/date-fns/esm/setSeconds/index.js\"));\nexports.setSeconds = _setSeconds.default;\nvar _setYear = _interopRequireDefault(__webpack_require__(/*! date-fns/setYear */ \"./node_modules/date-fns/esm/setYear/index.js\"));\nexports.setYear = _setYear.default;\nvar _startOfDay = _interopRequireDefault(__webpack_require__(/*! date-fns/startOfDay */ \"./node_modules/date-fns/esm/startOfDay/index.js\"));\nexports.startOfDay = _startOfDay.default;\nvar _startOfISOWeek = _interopRequireDefault(__webpack_require__(/*! date-fns/startOfISOWeek */ \"./node_modules/date-fns/esm/startOfISOWeek/index.js\"));\nexports.startOfISOWeek = _startOfISOWeek.default;\nvar _startOfMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/startOfMonth */ \"./node_modules/date-fns/esm/startOfMonth/index.js\"));\nexports.startOfMonth = _startOfMonth.default;\nvar _startOfWeek = _interopRequireDefault(__webpack_require__(/*! date-fns/startOfWeek */ \"./node_modules/date-fns/esm/startOfWeek/index.js\"));\nexports.startOfWeek = _startOfWeek.default;\nvar _subDays = _interopRequireDefault(__webpack_require__(/*! date-fns/subDays */ \"./node_modules/date-fns/esm/subDays/index.js\"));\nexports.subDays = _subDays.default;\nvar _isMatch = _interopRequireDefault(__webpack_require__(/*! date-fns/isMatch */ \"./node_modules/date-fns/esm/isMatch/index.js\"));\nexports.isMatch = _isMatch.default;\nvar _isValid = _interopRequireDefault(__webpack_require__(/*! date-fns/isValid */ \"./node_modules/date-fns/esm/isValid/index.js\"));\nexports.isValid = _isValid.default;\nvar _differenceInCalendarMonths = _interopRequireDefault(__webpack_require__(/*! date-fns/differenceInCalendarMonths */ \"./node_modules/date-fns/esm/differenceInCalendarMonths/index.js\"));\nexports.differenceInCalendarMonths = _differenceInCalendarMonths.default;\nvar _isLastDayOfMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/isLastDayOfMonth */ \"./node_modules/date-fns/esm/isLastDayOfMonth/index.js\"));\nexports.isLastDayOfMonth = _isLastDayOfMonth.default;\nvar _lastDayOfMonth = _interopRequireDefault(__webpack_require__(/*! date-fns/lastDayOfMonth */ \"./node_modules/date-fns/esm/lastDayOfMonth/index.js\"));\nexports.lastDayOfMonth = _lastDayOfMonth.default;\nvar disabledTimeProps = ['disabledHours', 'disabledMinutes', 'disabledSeconds'];\nvar hideTimeProps = ['hideHours', 'hideMinutes', 'hideSeconds'];\nvar calendarOnlyProps = disabledTimeProps.concat(hideTimeProps);\nexports.calendarOnlyProps = calendarOnlyProps;\nfunction validTime(calendarProps, date) {\n if (!date) {\n return false;\n }\n return Object.keys(calendarProps).some(function (key) {\n if (/(Hours)/.test(key)) {\n var _calendarProps$key;\n return (_calendarProps$key = calendarProps[key]) === null || _calendarProps$key === void 0 ? void 0 : _calendarProps$key.call(calendarProps, (0, _getHours.default)(date), date);\n }\n if (/(Minutes)/.test(key)) {\n var _calendarProps$key2;\n return (_calendarProps$key2 = calendarProps[key]) === null || _calendarProps$key2 === void 0 ? void 0 : _calendarProps$key2.call(calendarProps, (0, _getMinutes.default)(date), date);\n }\n if (/(Seconds)/.test(key)) {\n var _calendarProps$key3;\n return (_calendarProps$key3 = calendarProps[key]) === null || _calendarProps$key3 === void 0 ? void 0 : _calendarProps$key3.call(calendarProps, (0, _getSeconds.default)(date), date);\n }\n return false;\n });\n}\n\n/**\n * Verify that the time is valid.\n *\n * @param props\n * @param date\n */\nfunction disabledTime(props, date) {\n var calendarProps = (0, _pick.default)(props, disabledTimeProps);\n return validTime(calendarProps, date);\n}\nvar omitHideDisabledProps = function omitHideDisabledProps(props) {\n return (0, _omitBy.default)(props, function (_val, key) {\n return key.startsWith('disabled') || key.startsWith('hide');\n });\n};\nexports.omitHideDisabledProps = omitHideDisabledProps;\nvar shouldRenderTime = function shouldRenderTime(format) {\n return /([Hhms])/.test(format);\n};\nexports.shouldRenderTime = shouldRenderTime;\nvar shouldRenderMonth = function shouldRenderMonth(format) {\n return /[Yy]/.test(format) && /[ML]/.test(format);\n};\nexports.shouldRenderMonth = shouldRenderMonth;\nvar shouldRenderDate = function shouldRenderDate(format) {\n return /[Yy]/.test(format) && /[ML]/.test(format) && /[Dd]/.test(format);\n}; // for date-fns v1 and v2\nexports.shouldRenderDate = shouldRenderDate;\nvar shouldOnlyRenderTime = function shouldOnlyRenderTime(format) {\n return /([Hhms])/.test(format) && !/([YyMDd])/.test(format);\n}; // for date-fns v1 and v2\n\n/**\n * Get all weeks of this month\n * @params monthDate\n * @return date[]\n */\nexports.shouldOnlyRenderTime = shouldOnlyRenderTime;\nfunction getMonthView(monthDate, isoWeek) {\n var firstDayOfMonth = (0, _getDay.default)(monthDate);\n var distance = 0 - firstDayOfMonth;\n if (isoWeek) {\n distance = 1 - firstDayOfMonth;\n if (firstDayOfMonth === 0) {\n distance = -6;\n }\n }\n var firstWeekendDate = (0, _addDays.default)(monthDate, distance);\n var weeks = [firstWeekendDate];\n var nextWeekendDate = (0, _addDays.default)(firstWeekendDate, 7);\n weeks.push(nextWeekendDate);\n while (weeks.length < 6) {\n nextWeekendDate = (0, _addDays.default)(nextWeekendDate, 7);\n weeks.push(nextWeekendDate);\n }\n return weeks;\n}\n\n/**\n * Copy the time of one date to another\n */\nfunction copyTime(_ref) {\n var from = _ref.from,\n to = _ref.to;\n return (0, _set.default)(to, {\n hours: (0, _getHours.default)(from),\n minutes: (0, _getMinutes.default)(from),\n seconds: (0, _getSeconds.default)(from)\n });\n}\n\n/**\n * Swap two dates without swapping the time.\n */\nfunction reverseDateRangeOmitTime(dateRange) {\n var start = dateRange[0],\n end = dateRange[1];\n if (start && end) {\n return [copyTime({\n from: start,\n to: end\n }), copyTime({\n from: end,\n to: start\n })];\n }\n return dateRange;\n}\n\n/**\n * Get the time with AM and PM reversed.\n */\nvar getReversedTimeMeridian = function getReversedTimeMeridian(date) {\n var clonedDate = new Date(date.valueOf());\n var hours = (0, _getHours.default)(clonedDate);\n var nextHours = hours >= 12 ? hours - 12 : hours + 12;\n return (0, _setHours.default)(clonedDate, nextHours);\n};\nexports.getReversedTimeMeridian = getReversedTimeMeridian;\n\n//# sourceURL=webpack://rsuite/./src/utils/dateUtils.ts?");
9853
9963
 
9854
9964
  /***/ }),
9855
9965
 
@@ -9930,6 +10040,17 @@ eval("\n\nexports.__esModule = true;\nexports[\"default\"] = getSafeRegExpString
9930
10040
 
9931
10041
  /***/ }),
9932
10042
 
10043
+ /***/ "./src/utils/getStringLength.ts":
10044
+ /*!**************************************!*\
10045
+ !*** ./src/utils/getStringLength.ts ***!
10046
+ \**************************************/
10047
+ /***/ (function(__unused_webpack_module, exports) {
10048
+
10049
+ "use strict";
10050
+ eval("\n\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nfunction getStringLength(str) {\n var length = 0;\n Array.from(str).forEach(function (char) {\n if (char.charCodeAt(0) > 255) {\n length += 2;\n } else {\n length++;\n }\n });\n return length;\n}\nvar _default = getStringLength;\nexports[\"default\"] = _default;\n\n//# sourceURL=webpack://rsuite/./src/utils/getStringLength.ts?");
10051
+
10052
+ /***/ }),
10053
+
9933
10054
  /***/ "./src/utils/guid.ts":
9934
10055
  /*!***************************!*\
9935
10056
  !*** ./src/utils/guid.ts ***!
@@ -9959,7 +10080,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
9959
10080
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
9960
10081
 
9961
10082
  "use strict";
9962
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nvar _exportNames = {\n guid: true,\n prefix: true,\n createChainedFunction: true,\n isOneOf: true,\n ReactChildren: true,\n tplTransform: true,\n ajaxUpload: true,\n previewFile: true,\n clone: true,\n placementPolyfill: true,\n getDOMNode: true,\n mergeRefs: true,\n shallowEqual: true,\n shallowEqualArray: true,\n composeFunctions: true,\n reactToString: true,\n scrollTopAnimation: true,\n appendTooltip: true,\n render: true,\n safeSetSelection: true,\n useClassNames: true,\n useEventListener: true,\n useElementResize: true,\n useCustom: true,\n usePortal: true,\n createComponent: true,\n useTimeout: true,\n useControlled: true,\n useRootClose: true,\n getSafeRegExpString: true,\n stringToObject: true,\n useEventCallback: true,\n useUpdatedRef: true,\n useWillUnmount: true,\n useUpdateEffect: true,\n useIsMounted: true,\n useMount: true,\n useUniqueId: true,\n useIsomorphicLayoutEffect: true,\n defaultClassPrefix: true,\n getClassNamePrefix: true,\n globalKey: true,\n DateUtils: true,\n TypeChecker: true\n};\nexports.TypeChecker = exports.DateUtils = exports.globalKey = exports.getClassNamePrefix = exports.defaultClassPrefix = exports.useIsomorphicLayoutEffect = exports.useUniqueId = exports.useMount = exports.useIsMounted = exports.useUpdateEffect = exports.useWillUnmount = exports.useUpdatedRef = exports.useEventCallback = exports.stringToObject = exports.getSafeRegExpString = exports.useRootClose = exports.useControlled = exports.useTimeout = exports.createComponent = exports.usePortal = exports.useCustom = exports.useElementResize = exports.useEventListener = exports.useClassNames = exports.safeSetSelection = exports.render = exports.appendTooltip = exports.scrollTopAnimation = exports.reactToString = exports.composeFunctions = exports.shallowEqualArray = exports.shallowEqual = exports.mergeRefs = exports.getDOMNode = exports.placementPolyfill = exports.clone = exports.previewFile = exports.ajaxUpload = exports.tplTransform = exports.ReactChildren = exports.isOneOf = exports.createChainedFunction = exports.prefix = exports.guid = void 0;\nvar _BrowserDetection = __webpack_require__(/*! ./BrowserDetection */ \"./src/utils/BrowserDetection.ts\");\nObject.keys(_BrowserDetection).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;\n if (key in exports && exports[key] === _BrowserDetection[key]) return;\n exports[key] = _BrowserDetection[key];\n});\nvar _htmlPropsUtils = __webpack_require__(/*! ./htmlPropsUtils */ \"./src/utils/htmlPropsUtils.ts\");\nObject.keys(_htmlPropsUtils).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;\n if (key in exports && exports[key] === _htmlPropsUtils[key]) return;\n exports[key] = _htmlPropsUtils[key];\n});\nvar _constants = __webpack_require__(/*! ./constants */ \"./src/utils/constants.ts\");\nObject.keys(_constants).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;\n if (key in exports && exports[key] === _constants[key]) return;\n exports[key] = _constants[key];\n});\nvar _DateUtils = _interopRequireWildcard(__webpack_require__(/*! ./dateUtils */ \"./src/utils/dateUtils.ts\"));\nexports.DateUtils = _DateUtils;\nvar _TypeChecker = _interopRequireWildcard(__webpack_require__(/*! ./propTypeChecker */ \"./src/utils/propTypeChecker.ts\"));\nexports.TypeChecker = _TypeChecker;\nvar _statusIcons = __webpack_require__(/*! ./statusIcons */ \"./src/utils/statusIcons.tsx\");\nObject.keys(_statusIcons).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;\n if (key in exports && exports[key] === _statusIcons[key]) return;\n exports[key] = _statusIcons[key];\n});\nvar _guid = _interopRequireDefault(__webpack_require__(/*! ./guid */ \"./src/utils/guid.ts\"));\nexports.guid = _guid.default;\nvar _prefix = _interopRequireWildcard(__webpack_require__(/*! ./prefix */ \"./src/utils/prefix.ts\"));\nexports.prefix = _prefix.default;\nexports.defaultClassPrefix = _prefix.defaultClassPrefix;\nexports.getClassNamePrefix = _prefix.getClassNamePrefix;\nexports.globalKey = _prefix.globalKey;\nvar _createChainedFunction = _interopRequireDefault(__webpack_require__(/*! ./createChainedFunction */ \"./src/utils/createChainedFunction.ts\"));\nexports.createChainedFunction = _createChainedFunction.default;\nvar _isOneOf = _interopRequireDefault(__webpack_require__(/*! ./isOneOf */ \"./src/utils/isOneOf.ts\"));\nexports.isOneOf = _isOneOf.default;\nvar _ReactChildren = _interopRequireDefault(__webpack_require__(/*! ./ReactChildren */ \"./src/utils/ReactChildren.tsx\"));\nexports.ReactChildren = _ReactChildren.default;\nvar _tplTransform = _interopRequireDefault(__webpack_require__(/*! ./tplTransform */ \"./src/utils/tplTransform.tsx\"));\nexports.tplTransform = _tplTransform.default;\nvar _ajaxUpload = _interopRequireDefault(__webpack_require__(/*! ./ajaxUpload */ \"./src/utils/ajaxUpload.ts\"));\nexports.ajaxUpload = _ajaxUpload.default;\nvar _previewFile = _interopRequireDefault(__webpack_require__(/*! ./previewFile */ \"./src/utils/previewFile.ts\"));\nexports.previewFile = _previewFile.default;\nvar _clone = _interopRequireDefault(__webpack_require__(/*! ./clone */ \"./src/utils/clone.ts\"));\nexports.clone = _clone.default;\nvar _placementPolyfill = _interopRequireDefault(__webpack_require__(/*! ./placementPolyfill */ \"./src/utils/placementPolyfill.ts\"));\nexports.placementPolyfill = _placementPolyfill.default;\nvar _getDOMNode = _interopRequireDefault(__webpack_require__(/*! ./getDOMNode */ \"./src/utils/getDOMNode.ts\"));\nexports.getDOMNode = _getDOMNode.default;\nvar _mergeRefs = _interopRequireDefault(__webpack_require__(/*! ./mergeRefs */ \"./src/utils/mergeRefs.ts\"));\nexports.mergeRefs = _mergeRefs.default;\nvar _shallowEqual = _interopRequireDefault(__webpack_require__(/*! ./shallowEqual */ \"./src/utils/shallowEqual.ts\"));\nexports.shallowEqual = _shallowEqual.default;\nvar _shallowEqualArray = _interopRequireDefault(__webpack_require__(/*! ./shallowEqualArray */ \"./src/utils/shallowEqualArray.ts\"));\nexports.shallowEqualArray = _shallowEqualArray.default;\nvar _composeFunctions = _interopRequireDefault(__webpack_require__(/*! ./composeFunctions */ \"./src/utils/composeFunctions.ts\"));\nexports.composeFunctions = _composeFunctions.default;\nvar _reactToString = _interopRequireDefault(__webpack_require__(/*! ./reactToString */ \"./src/utils/reactToString.ts\"));\nexports.reactToString = _reactToString.default;\nvar _scrollTopAnimation = _interopRequireDefault(__webpack_require__(/*! ./scrollTopAnimation */ \"./src/utils/scrollTopAnimation.ts\"));\nexports.scrollTopAnimation = _scrollTopAnimation.default;\nvar _appendTooltip = _interopRequireDefault(__webpack_require__(/*! ./appendTooltip */ \"./src/utils/appendTooltip.tsx\"));\nexports.appendTooltip = _appendTooltip.default;\nvar _render = _interopRequireDefault(__webpack_require__(/*! ./render */ \"./src/utils/render.ts\"));\nexports.render = _render.default;\nvar _safeSetSelection = _interopRequireDefault(__webpack_require__(/*! ./safeSetSelection */ \"./src/utils/safeSetSelection.ts\"));\nexports.safeSetSelection = _safeSetSelection.default;\nvar _useClassNames = _interopRequireDefault(__webpack_require__(/*! ./useClassNames */ \"./src/utils/useClassNames.ts\"));\nexports.useClassNames = _useClassNames.default;\nvar _useEventListener = _interopRequireDefault(__webpack_require__(/*! ./useEventListener */ \"./src/utils/useEventListener.ts\"));\nexports.useEventListener = _useEventListener.default;\nvar _useElementResize = _interopRequireDefault(__webpack_require__(/*! ./useElementResize */ \"./src/utils/useElementResize.ts\"));\nexports.useElementResize = _useElementResize.default;\nvar _useCustom = _interopRequireDefault(__webpack_require__(/*! ./useCustom */ \"./src/utils/useCustom.ts\"));\nexports.useCustom = _useCustom.default;\nvar _usePortal = _interopRequireDefault(__webpack_require__(/*! ./usePortal */ \"./src/utils/usePortal.tsx\"));\nexports.usePortal = _usePortal.default;\nvar _createComponent = _interopRequireDefault(__webpack_require__(/*! ./createComponent */ \"./src/utils/createComponent.tsx\"));\nexports.createComponent = _createComponent.default;\nvar _useTimeout = _interopRequireDefault(__webpack_require__(/*! ./useTimeout */ \"./src/utils/useTimeout.ts\"));\nexports.useTimeout = _useTimeout.default;\nvar _useControlled = _interopRequireDefault(__webpack_require__(/*! ./useControlled */ \"./src/utils/useControlled.ts\"));\nexports.useControlled = _useControlled.default;\nvar _useRootClose = _interopRequireDefault(__webpack_require__(/*! ./useRootClose */ \"./src/utils/useRootClose.ts\"));\nexports.useRootClose = _useRootClose.default;\nvar _getSafeRegExpString = _interopRequireDefault(__webpack_require__(/*! ./getSafeRegExpString */ \"./src/utils/getSafeRegExpString.ts\"));\nexports.getSafeRegExpString = _getSafeRegExpString.default;\nvar _stringToObject = _interopRequireDefault(__webpack_require__(/*! ./stringToObject */ \"./src/utils/stringToObject.ts\"));\nexports.stringToObject = _stringToObject.default;\nvar _useEventCallback = _interopRequireDefault(__webpack_require__(/*! ./useEventCallback */ \"./src/utils/useEventCallback.ts\"));\nexports.useEventCallback = _useEventCallback.default;\nvar _useUpdatedRef = _interopRequireDefault(__webpack_require__(/*! ./useUpdatedRef */ \"./src/utils/useUpdatedRef.ts\"));\nexports.useUpdatedRef = _useUpdatedRef.default;\nvar _useWillUnmount = _interopRequireDefault(__webpack_require__(/*! ./useWillUnmount */ \"./src/utils/useWillUnmount.ts\"));\nexports.useWillUnmount = _useWillUnmount.default;\nvar _useUpdateEffect = _interopRequireDefault(__webpack_require__(/*! ./useUpdateEffect */ \"./src/utils/useUpdateEffect.ts\"));\nexports.useUpdateEffect = _useUpdateEffect.default;\nvar _useIsMounted = _interopRequireDefault(__webpack_require__(/*! ./useIsMounted */ \"./src/utils/useIsMounted.ts\"));\nexports.useIsMounted = _useIsMounted.default;\nvar _useMount = _interopRequireDefault(__webpack_require__(/*! ./useMount */ \"./src/utils/useMount.ts\"));\nexports.useMount = _useMount.default;\nvar _useUniqueId = _interopRequireDefault(__webpack_require__(/*! ./useUniqueId */ \"./src/utils/useUniqueId.ts\"));\nexports.useUniqueId = _useUniqueId.default;\nvar _useIsomorphicLayoutEffect = _interopRequireDefault(__webpack_require__(/*! ./useIsomorphicLayoutEffect */ \"./src/utils/useIsomorphicLayoutEffect.ts\"));\nexports.useIsomorphicLayoutEffect = _useIsomorphicLayoutEffect.default;\n\n//# sourceURL=webpack://rsuite/./src/utils/index.ts?");
10083
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\nexports.__esModule = true;\nvar _exportNames = {\n guid: true,\n prefix: true,\n createChainedFunction: true,\n isOneOf: true,\n ReactChildren: true,\n tplTransform: true,\n ajaxUpload: true,\n previewFile: true,\n clone: true,\n placementPolyfill: true,\n getDOMNode: true,\n mergeRefs: true,\n shallowEqual: true,\n shallowEqualArray: true,\n composeFunctions: true,\n reactToString: true,\n scrollTopAnimation: true,\n appendTooltip: true,\n render: true,\n safeSetSelection: true,\n getStringLength: true,\n useClassNames: true,\n useEventListener: true,\n useElementResize: true,\n useCustom: true,\n usePortal: true,\n createComponent: true,\n useTimeout: true,\n useControlled: true,\n useRootClose: true,\n getSafeRegExpString: true,\n stringToObject: true,\n useEventCallback: true,\n useUpdatedRef: true,\n useWillUnmount: true,\n useUpdateEffect: true,\n useIsMounted: true,\n useMount: true,\n useUniqueId: true,\n useIsomorphicLayoutEffect: true,\n defaultClassPrefix: true,\n getClassNamePrefix: true,\n globalKey: true,\n DateUtils: true,\n TypeChecker: true\n};\nexports.TypeChecker = exports.DateUtils = exports.globalKey = exports.getClassNamePrefix = exports.defaultClassPrefix = exports.useIsomorphicLayoutEffect = exports.useUniqueId = exports.useMount = exports.useIsMounted = exports.useUpdateEffect = exports.useWillUnmount = exports.useUpdatedRef = exports.useEventCallback = exports.stringToObject = exports.getSafeRegExpString = exports.useRootClose = exports.useControlled = exports.useTimeout = exports.createComponent = exports.usePortal = exports.useCustom = exports.useElementResize = exports.useEventListener = exports.useClassNames = exports.getStringLength = exports.safeSetSelection = exports.render = exports.appendTooltip = exports.scrollTopAnimation = exports.reactToString = exports.composeFunctions = exports.shallowEqualArray = exports.shallowEqual = exports.mergeRefs = exports.getDOMNode = exports.placementPolyfill = exports.clone = exports.previewFile = exports.ajaxUpload = exports.tplTransform = exports.ReactChildren = exports.isOneOf = exports.createChainedFunction = exports.prefix = exports.guid = void 0;\nvar _BrowserDetection = __webpack_require__(/*! ./BrowserDetection */ \"./src/utils/BrowserDetection.ts\");\nObject.keys(_BrowserDetection).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;\n if (key in exports && exports[key] === _BrowserDetection[key]) return;\n exports[key] = _BrowserDetection[key];\n});\nvar _htmlPropsUtils = __webpack_require__(/*! ./htmlPropsUtils */ \"./src/utils/htmlPropsUtils.ts\");\nObject.keys(_htmlPropsUtils).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;\n if (key in exports && exports[key] === _htmlPropsUtils[key]) return;\n exports[key] = _htmlPropsUtils[key];\n});\nvar _constants = __webpack_require__(/*! ./constants */ \"./src/utils/constants.ts\");\nObject.keys(_constants).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;\n if (key in exports && exports[key] === _constants[key]) return;\n exports[key] = _constants[key];\n});\nvar _DateUtils = _interopRequireWildcard(__webpack_require__(/*! ./dateUtils */ \"./src/utils/dateUtils.ts\"));\nexports.DateUtils = _DateUtils;\nvar _TypeChecker = _interopRequireWildcard(__webpack_require__(/*! ./propTypeChecker */ \"./src/utils/propTypeChecker.ts\"));\nexports.TypeChecker = _TypeChecker;\nvar _statusIcons = __webpack_require__(/*! ./statusIcons */ \"./src/utils/statusIcons.tsx\");\nObject.keys(_statusIcons).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;\n if (key in exports && exports[key] === _statusIcons[key]) return;\n exports[key] = _statusIcons[key];\n});\nvar _guid = _interopRequireDefault(__webpack_require__(/*! ./guid */ \"./src/utils/guid.ts\"));\nexports.guid = _guid.default;\nvar _prefix = _interopRequireWildcard(__webpack_require__(/*! ./prefix */ \"./src/utils/prefix.ts\"));\nexports.prefix = _prefix.default;\nexports.defaultClassPrefix = _prefix.defaultClassPrefix;\nexports.getClassNamePrefix = _prefix.getClassNamePrefix;\nexports.globalKey = _prefix.globalKey;\nvar _createChainedFunction = _interopRequireDefault(__webpack_require__(/*! ./createChainedFunction */ \"./src/utils/createChainedFunction.ts\"));\nexports.createChainedFunction = _createChainedFunction.default;\nvar _isOneOf = _interopRequireDefault(__webpack_require__(/*! ./isOneOf */ \"./src/utils/isOneOf.ts\"));\nexports.isOneOf = _isOneOf.default;\nvar _ReactChildren = _interopRequireDefault(__webpack_require__(/*! ./ReactChildren */ \"./src/utils/ReactChildren.tsx\"));\nexports.ReactChildren = _ReactChildren.default;\nvar _tplTransform = _interopRequireDefault(__webpack_require__(/*! ./tplTransform */ \"./src/utils/tplTransform.tsx\"));\nexports.tplTransform = _tplTransform.default;\nvar _ajaxUpload = _interopRequireDefault(__webpack_require__(/*! ./ajaxUpload */ \"./src/utils/ajaxUpload.ts\"));\nexports.ajaxUpload = _ajaxUpload.default;\nvar _previewFile = _interopRequireDefault(__webpack_require__(/*! ./previewFile */ \"./src/utils/previewFile.ts\"));\nexports.previewFile = _previewFile.default;\nvar _clone = _interopRequireDefault(__webpack_require__(/*! ./clone */ \"./src/utils/clone.ts\"));\nexports.clone = _clone.default;\nvar _placementPolyfill = _interopRequireDefault(__webpack_require__(/*! ./placementPolyfill */ \"./src/utils/placementPolyfill.ts\"));\nexports.placementPolyfill = _placementPolyfill.default;\nvar _getDOMNode = _interopRequireDefault(__webpack_require__(/*! ./getDOMNode */ \"./src/utils/getDOMNode.ts\"));\nexports.getDOMNode = _getDOMNode.default;\nvar _mergeRefs = _interopRequireDefault(__webpack_require__(/*! ./mergeRefs */ \"./src/utils/mergeRefs.ts\"));\nexports.mergeRefs = _mergeRefs.default;\nvar _shallowEqual = _interopRequireDefault(__webpack_require__(/*! ./shallowEqual */ \"./src/utils/shallowEqual.ts\"));\nexports.shallowEqual = _shallowEqual.default;\nvar _shallowEqualArray = _interopRequireDefault(__webpack_require__(/*! ./shallowEqualArray */ \"./src/utils/shallowEqualArray.ts\"));\nexports.shallowEqualArray = _shallowEqualArray.default;\nvar _composeFunctions = _interopRequireDefault(__webpack_require__(/*! ./composeFunctions */ \"./src/utils/composeFunctions.ts\"));\nexports.composeFunctions = _composeFunctions.default;\nvar _reactToString = _interopRequireDefault(__webpack_require__(/*! ./reactToString */ \"./src/utils/reactToString.ts\"));\nexports.reactToString = _reactToString.default;\nvar _scrollTopAnimation = _interopRequireDefault(__webpack_require__(/*! ./scrollTopAnimation */ \"./src/utils/scrollTopAnimation.ts\"));\nexports.scrollTopAnimation = _scrollTopAnimation.default;\nvar _appendTooltip = _interopRequireDefault(__webpack_require__(/*! ./appendTooltip */ \"./src/utils/appendTooltip.tsx\"));\nexports.appendTooltip = _appendTooltip.default;\nvar _render = _interopRequireDefault(__webpack_require__(/*! ./render */ \"./src/utils/render.ts\"));\nexports.render = _render.default;\nvar _safeSetSelection = _interopRequireDefault(__webpack_require__(/*! ./safeSetSelection */ \"./src/utils/safeSetSelection.ts\"));\nexports.safeSetSelection = _safeSetSelection.default;\nvar _getStringLength = _interopRequireDefault(__webpack_require__(/*! ./getStringLength */ \"./src/utils/getStringLength.ts\"));\nexports.getStringLength = _getStringLength.default;\nvar _useClassNames = _interopRequireDefault(__webpack_require__(/*! ./useClassNames */ \"./src/utils/useClassNames.ts\"));\nexports.useClassNames = _useClassNames.default;\nvar _useEventListener = _interopRequireDefault(__webpack_require__(/*! ./useEventListener */ \"./src/utils/useEventListener.ts\"));\nexports.useEventListener = _useEventListener.default;\nvar _useElementResize = _interopRequireDefault(__webpack_require__(/*! ./useElementResize */ \"./src/utils/useElementResize.ts\"));\nexports.useElementResize = _useElementResize.default;\nvar _useCustom = _interopRequireDefault(__webpack_require__(/*! ./useCustom */ \"./src/utils/useCustom.ts\"));\nexports.useCustom = _useCustom.default;\nvar _usePortal = _interopRequireDefault(__webpack_require__(/*! ./usePortal */ \"./src/utils/usePortal.tsx\"));\nexports.usePortal = _usePortal.default;\nvar _createComponent = _interopRequireDefault(__webpack_require__(/*! ./createComponent */ \"./src/utils/createComponent.tsx\"));\nexports.createComponent = _createComponent.default;\nvar _useTimeout = _interopRequireDefault(__webpack_require__(/*! ./useTimeout */ \"./src/utils/useTimeout.ts\"));\nexports.useTimeout = _useTimeout.default;\nvar _useControlled = _interopRequireDefault(__webpack_require__(/*! ./useControlled */ \"./src/utils/useControlled.ts\"));\nexports.useControlled = _useControlled.default;\nvar _useRootClose = _interopRequireDefault(__webpack_require__(/*! ./useRootClose */ \"./src/utils/useRootClose.ts\"));\nexports.useRootClose = _useRootClose.default;\nvar _getSafeRegExpString = _interopRequireDefault(__webpack_require__(/*! ./getSafeRegExpString */ \"./src/utils/getSafeRegExpString.ts\"));\nexports.getSafeRegExpString = _getSafeRegExpString.default;\nvar _stringToObject = _interopRequireDefault(__webpack_require__(/*! ./stringToObject */ \"./src/utils/stringToObject.ts\"));\nexports.stringToObject = _stringToObject.default;\nvar _useEventCallback = _interopRequireDefault(__webpack_require__(/*! ./useEventCallback */ \"./src/utils/useEventCallback.ts\"));\nexports.useEventCallback = _useEventCallback.default;\nvar _useUpdatedRef = _interopRequireDefault(__webpack_require__(/*! ./useUpdatedRef */ \"./src/utils/useUpdatedRef.ts\"));\nexports.useUpdatedRef = _useUpdatedRef.default;\nvar _useWillUnmount = _interopRequireDefault(__webpack_require__(/*! ./useWillUnmount */ \"./src/utils/useWillUnmount.ts\"));\nexports.useWillUnmount = _useWillUnmount.default;\nvar _useUpdateEffect = _interopRequireDefault(__webpack_require__(/*! ./useUpdateEffect */ \"./src/utils/useUpdateEffect.ts\"));\nexports.useUpdateEffect = _useUpdateEffect.default;\nvar _useIsMounted = _interopRequireDefault(__webpack_require__(/*! ./useIsMounted */ \"./src/utils/useIsMounted.ts\"));\nexports.useIsMounted = _useIsMounted.default;\nvar _useMount = _interopRequireDefault(__webpack_require__(/*! ./useMount */ \"./src/utils/useMount.ts\"));\nexports.useMount = _useMount.default;\nvar _useUniqueId = _interopRequireDefault(__webpack_require__(/*! ./useUniqueId */ \"./src/utils/useUniqueId.ts\"));\nexports.useUniqueId = _useUniqueId.default;\nvar _useIsomorphicLayoutEffect = _interopRequireDefault(__webpack_require__(/*! ./useIsomorphicLayoutEffect */ \"./src/utils/useIsomorphicLayoutEffect.ts\"));\nexports.useIsomorphicLayoutEffect = _useIsomorphicLayoutEffect.default;\n\n//# sourceURL=webpack://rsuite/./src/utils/index.ts?");
9963
10084
 
9964
10085
  /***/ }),
9965
10086
 
@@ -14171,6 +14292,16 @@ eval("var baseIteratee = __webpack_require__(/*! ./_baseIteratee */ \"./node_mod
14171
14292
 
14172
14293
  /***/ }),
14173
14294
 
14295
+ /***/ "./node_modules/lodash/set.js":
14296
+ /*!************************************!*\
14297
+ !*** ./node_modules/lodash/set.js ***!
14298
+ \************************************/
14299
+ /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
14300
+
14301
+ eval("var baseSet = __webpack_require__(/*! ./_baseSet */ \"./node_modules/lodash/_baseSet.js\");\n\n/**\n * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n * it's created. Arrays are created for missing index properties while objects\n * are created for all other missing properties. Use `_.setWith` to customize\n * `path` creation.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.set(object, 'a[0].b.c', 4);\n * console.log(object.a[0].b.c);\n * // => 4\n *\n * _.set(object, ['x', '0', 'y', 'z'], 5);\n * console.log(object.x[0].y.z);\n * // => 5\n */\nfunction set(object, path, value) {\n return object == null ? object : baseSet(object, path, value);\n}\n\nmodule.exports = set;\n\n\n//# sourceURL=webpack://rsuite/./node_modules/lodash/set.js?");
14302
+
14303
+ /***/ }),
14304
+
14174
14305
  /***/ "./node_modules/lodash/slice.js":
14175
14306
  /*!**************************************!*\
14176
14307
  !*** ./node_modules/lodash/slice.js ***!