rsuite 6.1.2 → 6.1.3

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 (631) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/cjs/Affix/Affix.js +4 -4
  3. package/cjs/Animation/Collapse.js +4 -5
  4. package/cjs/Animation/Transition.d.ts +2 -2
  5. package/cjs/Animation/Transition.js +17 -20
  6. package/cjs/AutoComplete/AutoComplete.js +9 -9
  7. package/cjs/Avatar/useImage.js +1 -1
  8. package/cjs/AvatarGroup/AvatarGroup.d.ts +2 -2
  9. package/cjs/Badge/Badge.js +1 -4
  10. package/cjs/Breadcrumb/Breadcrumb.js +4 -4
  11. package/cjs/Button/Button.js +6 -6
  12. package/cjs/Calendar/Calendar.js +5 -5
  13. package/cjs/Calendar/CalendarBody.js +1 -1
  14. package/cjs/Calendar/CalendarContainer.js +14 -33
  15. package/cjs/Calendar/CalendarHeader.js +7 -8
  16. package/cjs/Calendar/Grid/GridCell.js +2 -2
  17. package/cjs/Calendar/Grid/GridHeaderRow.js +1 -1
  18. package/cjs/Calendar/Grid/GridRow.js +5 -6
  19. package/cjs/Calendar/MonthDropdown/MonthDropdown.js +1 -1
  20. package/cjs/Calendar/MonthDropdown/MonthDropdownItem.js +1 -1
  21. package/cjs/Calendar/TimeDropdown/TimeDropdown.js +12 -14
  22. package/cjs/Calendar/hooks/useCalendar.d.ts +16 -17
  23. package/cjs/Calendar/hooks/useCalendar.js +2 -4
  24. package/cjs/Calendar/hooks/useCalendarDate.js +5 -9
  25. package/cjs/Calendar/hooks/useCalendarState.js +6 -12
  26. package/cjs/Calendar/types.d.ts +0 -1
  27. package/cjs/Carousel/Carousel.js +5 -6
  28. package/cjs/CascadeTree/CascadeTree.js +6 -16
  29. package/cjs/CascadeTree/TreeView.js +5 -7
  30. package/cjs/CascadeTree/hooks/useSearch.d.ts +0 -1
  31. package/cjs/CascadeTree/hooks/useSearch.js +1 -1
  32. package/cjs/CascadeTree/hooks/useSelect.d.ts +0 -1
  33. package/cjs/CascadeTree/hooks/useSelect.js +3 -4
  34. package/cjs/CascadeTree/types.d.ts +0 -1
  35. package/cjs/CascadeTree/utils.js +1 -2
  36. package/cjs/Cascader/Cascader.js +18 -29
  37. package/cjs/Cascader/useActive.d.ts +0 -1
  38. package/cjs/Cascader/useActive.js +4 -6
  39. package/cjs/CheckPicker/CheckPicker.js +14 -15
  40. package/cjs/CheckTree/CheckTree.js +1 -1
  41. package/cjs/CheckTree/CheckTreeNode.js +3 -4
  42. package/cjs/CheckTree/CheckTreeView.js +5 -5
  43. package/cjs/CheckTree/hooks/useTreeCheckState.js +2 -2
  44. package/cjs/CheckTree/utils.js +7 -16
  45. package/cjs/CheckTreePicker/CheckTreePicker.js +7 -7
  46. package/cjs/CheckTreePicker/hooks/useFocusState.d.ts +0 -1
  47. package/cjs/CheckTreePicker/hooks/useFocusState.js +3 -6
  48. package/cjs/Checkbox/Checkbox.js +4 -5
  49. package/cjs/Checkbox/hooks/useIndeterminateCheckbox.d.ts +0 -1
  50. package/cjs/Checkbox/hooks/useIndeterminateCheckbox.js +1 -1
  51. package/cjs/CheckboxGroup/CheckboxGroup.js +2 -2
  52. package/cjs/DOMHelper/index.d.ts +1 -2
  53. package/cjs/DOMHelper/isElement.js +1 -1
  54. package/cjs/DateInput/DateField.d.ts +122 -3
  55. package/cjs/DateInput/DateField.js +12 -15
  56. package/cjs/DateInput/DateInput.js +3 -4
  57. package/cjs/DateInput/hooks/useDateInputState.d.ts +124 -4
  58. package/cjs/DateInput/hooks/useDateInputState.js +2 -2
  59. package/cjs/DateInput/hooks/useIsFocused.js +2 -2
  60. package/cjs/DateInput/hooks/useKeyboardInputEvent.d.ts +0 -1
  61. package/cjs/DateInput/hooks/useKeyboardInputEvent.js +8 -9
  62. package/cjs/DateInput/hooks/useSelectedState.d.ts +0 -1
  63. package/cjs/DateInput/utils.d.ts +0 -1
  64. package/cjs/DateInput/utils.js +2 -3
  65. package/cjs/DatePicker/DatePicker.js +18 -25
  66. package/cjs/DatePicker/PredefinedRanges.js +3 -3
  67. package/cjs/DatePicker/Toolbar.js +4 -4
  68. package/cjs/DatePicker/hooks/useCustomizedInput.d.ts +0 -1
  69. package/cjs/DatePicker/hooks/useFocus.js +5 -8
  70. package/cjs/DatePicker/hooks/useMonthView.d.ts +0 -1
  71. package/cjs/DatePicker/hooks/useMonthView.js +1 -1
  72. package/cjs/DatePicker/utils.d.ts +1 -2
  73. package/cjs/DatePicker/utils.js +2 -2
  74. package/cjs/DateRangeInput/DateRangeInput.js +8 -9
  75. package/cjs/DateRangePicker/Calendar.js +2 -2
  76. package/cjs/DateRangePicker/DateRangePicker.js +25 -29
  77. package/cjs/DateRangePicker/Header.js +3 -3
  78. package/cjs/DateRangePicker/disabledDateUtils.js +2 -2
  79. package/cjs/DateRangePicker/hooks/useCalendarHandlers.d.ts +0 -1
  80. package/cjs/DateRangePicker/hooks/useCalendarHandlers.js +5 -5
  81. package/cjs/DateRangePicker/utils.js +1 -2
  82. package/cjs/Dropdown/Dropdown.js +3 -3
  83. package/cjs/Dropdown/DropdownItem.js +4 -5
  84. package/cjs/Dropdown/DropdownMenu.d.ts +1 -1
  85. package/cjs/Dropdown/DropdownMenu.js +1 -1
  86. package/cjs/Form/Form.d.ts +1 -3
  87. package/cjs/Form/Form.js +9 -11
  88. package/cjs/Form/hooks/useFormRef.d.ts +0 -1
  89. package/cjs/Form/hooks/useFormValidate.d.ts +0 -1
  90. package/cjs/Form/hooks/useFormValidate.js +19 -19
  91. package/cjs/Form/hooks/useFormValue.d.ts +0 -1
  92. package/cjs/FormControl/FormControl.js +5 -5
  93. package/cjs/FormGroup/FormGroupContext.d.ts +1 -1
  94. package/cjs/Highlight/utils/highlightText.js +1 -1
  95. package/cjs/InlineEdit/renderChildren.js +5 -6
  96. package/cjs/InlineEdit/useEditState.js +9 -12
  97. package/cjs/InlineEdit/useFocusEvent.d.ts +0 -1
  98. package/cjs/InlineEdit/useFocusEvent.js +7 -11
  99. package/cjs/Input/Input.js +1 -1
  100. package/cjs/InputGroup/InputGroupContext.d.ts +2 -1
  101. package/cjs/InputNumber/index.d.ts +0 -1
  102. package/cjs/InputPicker/InputAutosize.js +1 -1
  103. package/cjs/InputPicker/InputPicker.js +30 -35
  104. package/cjs/InputPicker/InputSearch.js +1 -2
  105. package/cjs/InputPicker/hooks/useData.d.ts +0 -1
  106. package/cjs/InputPicker/hooks/useData.js +1 -1
  107. package/cjs/InputPicker/hooks/useInput.js +3 -6
  108. package/cjs/InputPicker/hooks/useMaxWidth.js +2 -4
  109. package/cjs/List/helper/AutoScroller.js +2 -4
  110. package/cjs/List/helper/useSortHelper.d.ts +4 -4
  111. package/cjs/List/helper/useSortHelper.js +13 -19
  112. package/cjs/MaskedInput/TextMask.d.ts +5 -5
  113. package/cjs/MaskedInput/TextMask.js +3 -5
  114. package/cjs/MaskedInput/conformToMask.d.ts +1 -1
  115. package/cjs/MaskedInput/createTextMaskInputElement.js +2 -3
  116. package/cjs/Menu/MenuItem.js +3 -4
  117. package/cjs/Message/Message.js +1 -1
  118. package/cjs/Modal/Modal.js +8 -10
  119. package/cjs/Modal/ModalBody.js +1 -1
  120. package/cjs/Modal/utils.d.ts +2 -3
  121. package/cjs/Modal/utils.js +2 -3
  122. package/cjs/MultiCascadeTree/SearchView.js +1 -1
  123. package/cjs/MultiCascadeTree/TreeView.js +2 -2
  124. package/cjs/MultiCascadeTree/hooks/useCascadeValue.d.ts +0 -1
  125. package/cjs/MultiCascadeTree/hooks/useCascadeValue.js +5 -8
  126. package/cjs/MultiCascadeTree/hooks/useColumnData.d.ts +0 -1
  127. package/cjs/MultiCascadeTree/hooks/useSearch.d.ts +0 -1
  128. package/cjs/MultiCascadeTree/hooks/useSearch.js +2 -2
  129. package/cjs/MultiCascadeTree/hooks/useSelect.js +3 -4
  130. package/cjs/MultiCascadeTree/types.d.ts +0 -1
  131. package/cjs/MultiCascadeTree/utils.d.ts +4 -4
  132. package/cjs/MultiCascadeTree/utils.js +2 -3
  133. package/cjs/MultiCascader/MultiCascader.js +13 -16
  134. package/cjs/Nav/AdaptiveNavItem.js +2 -3
  135. package/cjs/Nav/Nav.d.ts +1 -1
  136. package/cjs/Nav/Nav.js +4 -4
  137. package/cjs/Nav/NavDropdown.d.ts +1 -1
  138. package/cjs/Nav/NavDropdown.js +3 -3
  139. package/cjs/Nav/NavDropdownItem.js +2 -2
  140. package/cjs/Nav/NavDropdownMenu.d.ts +1 -1
  141. package/cjs/Nav/NavDropdownMenu.js +1 -1
  142. package/cjs/Nav/NavItem.js +4 -4
  143. package/cjs/Navbar/Navbar.js +1 -1
  144. package/cjs/Navbar/NavbarContent.js +1 -1
  145. package/cjs/Navbar/NavbarDrawer.js +1 -1
  146. package/cjs/Navbar/NavbarDropdown.d.ts +1 -1
  147. package/cjs/Navbar/NavbarDropdown.js +3 -3
  148. package/cjs/Navbar/NavbarDropdownItem.js +5 -6
  149. package/cjs/Navbar/NavbarDropdownMenu.d.ts +1 -1
  150. package/cjs/Navbar/NavbarDropdownMenu.js +1 -1
  151. package/cjs/Navbar/NavbarItem.js +4 -4
  152. package/cjs/Navbar/NavbarToggle.js +2 -2
  153. package/cjs/Notification/Notification.js +1 -1
  154. package/cjs/NumberInput/NumberInput.js +3 -3
  155. package/cjs/NumberInput/hooks/useEvents.d.ts +0 -1
  156. package/cjs/NumberInput/hooks/useEvents.js +2 -3
  157. package/cjs/NumberInput/hooks/useWheelHandler.js +1 -2
  158. package/cjs/Pagination/Pagination.js +1 -1
  159. package/cjs/Pagination/PaginationButton.js +1 -1
  160. package/cjs/Pagination/PaginationGroup.js +3 -4
  161. package/cjs/Panel/Panel.js +2 -2
  162. package/cjs/PanelGroup/PanelGroup.js +1 -1
  163. package/cjs/PasswordInput/PasswordInput.js +2 -2
  164. package/cjs/PinInput/PinInput.js +1 -1
  165. package/cjs/PinInput/hooks/usePinInputRefs.d.ts +0 -1
  166. package/cjs/PinInput/hooks/usePinInputRefs.js +2 -4
  167. package/cjs/PinInput/hooks/usePinValue.d.ts +1 -1
  168. package/cjs/PinInput/hooks/usePinValue.js +2 -2
  169. package/cjs/Progress/ProgressLine.js +1 -1
  170. package/cjs/Progress/types.d.ts +0 -1
  171. package/cjs/ProgressCircle/hooks/useProgressCirclePath.d.ts +0 -1
  172. package/cjs/Radio/Radio.js +3 -3
  173. package/cjs/RadioGroup/RadioGroup.js +1 -1
  174. package/cjs/RadioTile/RadioTile.js +2 -2
  175. package/cjs/RadioTileGroup/RadioTileGroup.js +1 -1
  176. package/cjs/RangeSlider/RangeSlider.js +6 -6
  177. package/cjs/Rate/Character.js +2 -2
  178. package/cjs/Rate/Rate.js +3 -3
  179. package/cjs/Rate/useRatingStates.d.ts +0 -1
  180. package/cjs/SegmentedControl/SegmentedControl.js +3 -3
  181. package/cjs/SegmentedControl/hooks/useIndicatorPosition.js +1 -1
  182. package/cjs/SelectPicker/SelectPicker.js +13 -16
  183. package/cjs/Sidebar/Sidebar.js +1 -1
  184. package/cjs/Sidenav/ExpandedSidenavDropdown.js +6 -6
  185. package/cjs/Sidenav/ExpandedSidenavDropdownItem.js +4 -5
  186. package/cjs/Sidenav/Node.js +9 -16
  187. package/cjs/Sidenav/Sidenav.js +2 -2
  188. package/cjs/Sidenav/SidenavDropdown.d.ts +1 -1
  189. package/cjs/Sidenav/SidenavDropdown.js +4 -4
  190. package/cjs/Sidenav/SidenavDropdownItem.js +3 -4
  191. package/cjs/Sidenav/SidenavItem.js +5 -6
  192. package/cjs/Sidenav/SidenavToggle.js +2 -2
  193. package/cjs/Slider/Slider.js +3 -3
  194. package/cjs/Slider/useDrag.d.ts +0 -1
  195. package/cjs/Slider/useDrag.js +7 -12
  196. package/cjs/Slider/utils.d.ts +1 -2
  197. package/cjs/Slider/utils.js +2 -3
  198. package/cjs/Steps/StepItem.js +1 -2
  199. package/cjs/Table/Table.d.ts +3 -3
  200. package/cjs/Tabs/Tabs.js +3 -4
  201. package/cjs/TimePicker/TimePicker.js +2 -2
  202. package/cjs/Timeline/Timeline.d.ts +1 -1
  203. package/cjs/Timeline/Timeline.js +1 -4
  204. package/cjs/Toggle/Toggle.js +2 -2
  205. package/cjs/Tree/Tree.js +2 -2
  206. package/cjs/Tree/TreeNode.js +10 -11
  207. package/cjs/Tree/TreeView.js +5 -5
  208. package/cjs/Tree/hooks/useExpandTree.js +1 -1
  209. package/cjs/Tree/hooks/useFlattenTree.js +1 -1
  210. package/cjs/Tree/hooks/useFocusTree.d.ts +1 -2
  211. package/cjs/Tree/hooks/useFocusTree.js +12 -14
  212. package/cjs/Tree/hooks/useTreeDrag.d.ts +0 -1
  213. package/cjs/Tree/hooks/useTreeDrag.js +10 -12
  214. package/cjs/Tree/hooks/useTreeNodeProps.js +1 -1
  215. package/cjs/Tree/hooks/useTreeSearch.js +4 -4
  216. package/cjs/Tree/hooks/useVirtualizedTreeData.js +2 -2
  217. package/cjs/Tree/types.d.ts +2 -3
  218. package/cjs/Tree/utils/flattenTree.d.ts +1 -1
  219. package/cjs/Tree/utils/focusableTree.js +5 -8
  220. package/cjs/Tree/utils/getNodeParentKeys.js +2 -4
  221. package/cjs/Tree/utils/hasVisibleChildren.d.ts +1 -1
  222. package/cjs/Tree/utils/treeKeyboardInteractions.js +3 -3
  223. package/cjs/TreePicker/TreePicker.js +8 -9
  224. package/cjs/TreePicker/hooks/useFocusState.d.ts +0 -1
  225. package/cjs/TreePicker/hooks/useFocusState.js +4 -8
  226. package/cjs/Uploader/UploadFileItem.js +8 -10
  227. package/cjs/Uploader/UploadTrigger.js +8 -10
  228. package/cjs/Uploader/Uploader.js +18 -24
  229. package/cjs/Uploader/utils/ajaxUpload.js +5 -5
  230. package/cjs/Uploader/utils/previewFile.js +1 -1
  231. package/cjs/internals/Disclosure/Disclosure.js +5 -8
  232. package/cjs/internals/Disclosure/DisclosureButton.js +2 -2
  233. package/cjs/internals/InputBase/InputBase.js +5 -6
  234. package/cjs/internals/Menu/Menu.js +16 -20
  235. package/cjs/internals/Menu/MenuItem.js +4 -5
  236. package/cjs/internals/Menu/Menubar.js +5 -7
  237. package/cjs/internals/Menu/useMenu.js +5 -10
  238. package/cjs/internals/Overlay/Modal.js +8 -11
  239. package/cjs/internals/Overlay/ModalManager.js +3 -5
  240. package/cjs/internals/Overlay/Overlay.js +1 -1
  241. package/cjs/internals/Overlay/OverlayTrigger.d.ts +0 -1
  242. package/cjs/internals/Overlay/OverlayTrigger.js +5 -7
  243. package/cjs/internals/Overlay/Position.js +6 -8
  244. package/cjs/internals/Picker/ListCheckItem.js +3 -3
  245. package/cjs/internals/Picker/ListItem.js +1 -1
  246. package/cjs/internals/Picker/Listbox.js +9 -10
  247. package/cjs/internals/Picker/PickerPopup.js +4 -5
  248. package/cjs/internals/Picker/PickerToggle.js +3 -4
  249. package/cjs/internals/Picker/SelectedElement.js +1 -1
  250. package/cjs/internals/Picker/hooks/useFocusItemValue.d.ts +0 -1
  251. package/cjs/internals/Picker/hooks/useFocusItemValue.js +14 -28
  252. package/cjs/internals/Picker/hooks/usePickerRef.d.ts +0 -1
  253. package/cjs/internals/Picker/hooks/usePickerRef.js +9 -15
  254. package/cjs/internals/Picker/hooks/useSearch.d.ts +0 -1
  255. package/cjs/internals/Picker/hooks/useSearch.js +2 -2
  256. package/cjs/internals/Picker/hooks/useToggleKeyDownEvent.d.ts +0 -1
  257. package/cjs/internals/Picker/hooks/useToggleKeyDownEvent.js +13 -17
  258. package/cjs/internals/Picker/utils.js +9 -9
  259. package/cjs/internals/Ripple/Ripple.js +3 -4
  260. package/cjs/internals/SafeAnchor/SafeAnchor.js +1 -1
  261. package/cjs/internals/ScrollView/hooks/useScrollState.d.ts +0 -1
  262. package/cjs/internals/ScrollView/hooks/useScrollState.js +2 -3
  263. package/cjs/internals/Tree/TreeProvider.d.ts +4 -4
  264. package/cjs/internals/Tree/TreeProvider.js +2 -8
  265. package/cjs/internals/Tree/types.d.ts +0 -1
  266. package/cjs/internals/Tree/utils/getParentMap.d.ts +0 -1
  267. package/cjs/internals/Windowing/AutoSizer.js +2 -3
  268. package/cjs/internals/Windowing/List.js +4 -8
  269. package/cjs/internals/constants/index.d.ts +2 -2
  270. package/cjs/internals/hooks/useClickOutside.js +2 -4
  271. package/cjs/internals/hooks/useCustom.d.ts +0 -1
  272. package/cjs/internals/hooks/useCustom.js +5 -7
  273. package/cjs/internals/hooks/useElementResize.d.ts +0 -1
  274. package/cjs/internals/hooks/useEventCallback.js +1 -2
  275. package/cjs/internals/hooks/useEventListener.js +1 -1
  276. package/cjs/internals/hooks/useFocus.js +2 -4
  277. package/cjs/internals/hooks/useFocusVirtualListItem.d.ts +0 -1
  278. package/cjs/internals/hooks/useMount.js +1 -2
  279. package/cjs/internals/hooks/useRootClose.js +6 -6
  280. package/cjs/internals/hooks/useTimeout.js +1 -2
  281. package/cjs/internals/hooks/useToggleCaret.d.ts +0 -1
  282. package/cjs/internals/hooks/useUniqueId.js +1 -1
  283. package/cjs/internals/hooks/useUpdatedRef.d.ts +0 -1
  284. package/cjs/internals/styled-system/style-manager.js +1 -1
  285. package/cjs/internals/styled-system/useStyled.js +2 -2
  286. package/cjs/internals/types/utils.d.ts +0 -1
  287. package/cjs/internals/utils/colours.d.ts +4 -4
  288. package/cjs/internals/utils/colours.js +1 -1
  289. package/cjs/internals/utils/date/disableTime.js +6 -12
  290. package/cjs/internals/utils/date/omitHideDisabledProps.d.ts +1 -1
  291. package/cjs/internals/utils/date/useDateMode.d.ts +1 -1
  292. package/cjs/internals/utils/react/ReactChildren.js +1 -2
  293. package/cjs/internals/utils/react/deprecateComponent.js +1 -2
  294. package/cjs/internals/utils/react/getDOMNode.js +4 -5
  295. package/cjs/internals/utils/sizes.d.ts +2 -2
  296. package/cjs/internals/utils/style-sheet/css.d.ts +0 -1
  297. package/cjs/internals/utils/style-sheet/css.js +1 -1
  298. package/cjs/internals/utils/style-sheet/prefix.d.ts +0 -1
  299. package/cjs/internals/utils/style-sheet/responsive.d.ts +1 -1
  300. package/cjs/internals/utils/style-sheet/styles.d.ts +3 -3
  301. package/cjs/internals/utils/style-sheet/styles.js +1 -1
  302. package/cjs/toaster/ToastContainer.js +3 -5
  303. package/cjs/toaster/hooks/useDelayedClosure.d.ts +0 -1
  304. package/cjs/toaster/hooks/useDelayedClosure.js +3 -4
  305. package/cjs/toaster/toaster.js +4 -12
  306. package/cjs/useDialog/Dialog.d.ts +1 -1
  307. package/cjs/useDialog/Dialog.js +1 -1
  308. package/cjs/useDialog/useDialog.d.ts +1 -1
  309. package/cjs/useDialog/useDialog.js +3 -3
  310. package/cjs/useFormControl/hooks/useField.d.ts +0 -1
  311. package/cjs/useFormControl/hooks/useField.js +5 -7
  312. package/cjs/useFormControl/hooks/useRegisterModel.js +2 -2
  313. package/cjs/useFormControl/useFormControl.js +8 -8
  314. package/cjs/useToaster/useToaster.js +4 -5
  315. package/dist/rsuite.js +223 -223
  316. package/dist/rsuite.min.js +1 -1
  317. package/dist/rsuite.min.js.map +1 -1
  318. package/esm/Affix/Affix.js +4 -4
  319. package/esm/Animation/Collapse.js +1 -2
  320. package/esm/Animation/Transition.d.ts +2 -2
  321. package/esm/Animation/Transition.js +17 -20
  322. package/esm/AutoComplete/AutoComplete.js +9 -9
  323. package/esm/Avatar/useImage.js +1 -1
  324. package/esm/AvatarGroup/AvatarGroup.d.ts +2 -2
  325. package/esm/Badge/Badge.js +1 -4
  326. package/esm/Breadcrumb/Breadcrumb.js +4 -4
  327. package/esm/Button/Button.js +6 -6
  328. package/esm/Calendar/Calendar.js +5 -5
  329. package/esm/Calendar/CalendarBody.js +1 -1
  330. package/esm/Calendar/CalendarContainer.js +14 -33
  331. package/esm/Calendar/CalendarHeader.js +7 -8
  332. package/esm/Calendar/Grid/GridCell.js +2 -2
  333. package/esm/Calendar/Grid/GridHeaderRow.js +1 -1
  334. package/esm/Calendar/Grid/GridRow.js +5 -6
  335. package/esm/Calendar/MonthDropdown/MonthDropdown.js +1 -1
  336. package/esm/Calendar/MonthDropdown/MonthDropdownItem.js +1 -1
  337. package/esm/Calendar/TimeDropdown/TimeDropdown.js +12 -14
  338. package/esm/Calendar/hooks/useCalendar.d.ts +16 -17
  339. package/esm/Calendar/hooks/useCalendar.js +2 -4
  340. package/esm/Calendar/hooks/useCalendarDate.js +5 -9
  341. package/esm/Calendar/hooks/useCalendarState.js +6 -12
  342. package/esm/Calendar/types.d.ts +0 -1
  343. package/esm/Carousel/Carousel.js +5 -6
  344. package/esm/CascadeTree/CascadeTree.js +6 -16
  345. package/esm/CascadeTree/TreeView.js +5 -7
  346. package/esm/CascadeTree/hooks/useSearch.d.ts +0 -1
  347. package/esm/CascadeTree/hooks/useSearch.js +1 -1
  348. package/esm/CascadeTree/hooks/useSelect.d.ts +0 -1
  349. package/esm/CascadeTree/hooks/useSelect.js +3 -4
  350. package/esm/CascadeTree/types.d.ts +0 -1
  351. package/esm/CascadeTree/utils.js +1 -2
  352. package/esm/Cascader/Cascader.js +18 -29
  353. package/esm/Cascader/useActive.d.ts +0 -1
  354. package/esm/Cascader/useActive.js +4 -6
  355. package/esm/CheckPicker/CheckPicker.js +14 -15
  356. package/esm/CheckTree/CheckTree.js +1 -1
  357. package/esm/CheckTree/CheckTreeNode.js +3 -4
  358. package/esm/CheckTree/CheckTreeView.js +5 -5
  359. package/esm/CheckTree/hooks/useTreeCheckState.js +2 -2
  360. package/esm/CheckTree/utils.js +7 -16
  361. package/esm/CheckTreePicker/CheckTreePicker.js +7 -7
  362. package/esm/CheckTreePicker/hooks/useFocusState.d.ts +0 -1
  363. package/esm/CheckTreePicker/hooks/useFocusState.js +3 -6
  364. package/esm/Checkbox/Checkbox.js +4 -5
  365. package/esm/Checkbox/hooks/useIndeterminateCheckbox.d.ts +0 -1
  366. package/esm/Checkbox/hooks/useIndeterminateCheckbox.js +1 -1
  367. package/esm/CheckboxGroup/CheckboxGroup.js +2 -2
  368. package/esm/DOMHelper/index.d.ts +1 -2
  369. package/esm/DOMHelper/isElement.js +1 -1
  370. package/esm/DateInput/DateField.d.ts +122 -3
  371. package/esm/DateInput/DateField.js +12 -15
  372. package/esm/DateInput/DateInput.js +3 -4
  373. package/esm/DateInput/hooks/useDateInputState.d.ts +124 -4
  374. package/esm/DateInput/hooks/useDateInputState.js +2 -2
  375. package/esm/DateInput/hooks/useIsFocused.js +2 -2
  376. package/esm/DateInput/hooks/useKeyboardInputEvent.d.ts +0 -1
  377. package/esm/DateInput/hooks/useKeyboardInputEvent.js +8 -9
  378. package/esm/DateInput/hooks/useSelectedState.d.ts +0 -1
  379. package/esm/DateInput/utils.d.ts +0 -1
  380. package/esm/DateInput/utils.js +2 -3
  381. package/esm/DatePicker/DatePicker.js +18 -25
  382. package/esm/DatePicker/PredefinedRanges.js +3 -3
  383. package/esm/DatePicker/Toolbar.js +4 -4
  384. package/esm/DatePicker/hooks/useCustomizedInput.d.ts +0 -1
  385. package/esm/DatePicker/hooks/useFocus.js +5 -8
  386. package/esm/DatePicker/hooks/useMonthView.d.ts +0 -1
  387. package/esm/DatePicker/hooks/useMonthView.js +1 -1
  388. package/esm/DatePicker/utils.d.ts +1 -2
  389. package/esm/DatePicker/utils.js +2 -2
  390. package/esm/DateRangeInput/DateRangeInput.js +8 -9
  391. package/esm/DateRangePicker/Calendar.js +2 -2
  392. package/esm/DateRangePicker/DateRangePicker.js +25 -29
  393. package/esm/DateRangePicker/Header.js +3 -3
  394. package/esm/DateRangePicker/disabledDateUtils.js +2 -2
  395. package/esm/DateRangePicker/hooks/useCalendarHandlers.d.ts +0 -1
  396. package/esm/DateRangePicker/hooks/useCalendarHandlers.js +5 -5
  397. package/esm/DateRangePicker/utils.js +1 -2
  398. package/esm/Dropdown/Dropdown.js +3 -3
  399. package/esm/Dropdown/DropdownItem.js +4 -5
  400. package/esm/Dropdown/DropdownMenu.d.ts +1 -1
  401. package/esm/Dropdown/DropdownMenu.js +1 -1
  402. package/esm/Form/Form.d.ts +1 -3
  403. package/esm/Form/Form.js +9 -11
  404. package/esm/Form/hooks/useFormRef.d.ts +0 -1
  405. package/esm/Form/hooks/useFormValidate.d.ts +0 -1
  406. package/esm/Form/hooks/useFormValidate.js +19 -19
  407. package/esm/Form/hooks/useFormValue.d.ts +0 -1
  408. package/esm/FormControl/FormControl.js +5 -5
  409. package/esm/FormGroup/FormGroupContext.d.ts +1 -1
  410. package/esm/Highlight/utils/highlightText.js +1 -1
  411. package/esm/InlineEdit/renderChildren.js +5 -6
  412. package/esm/InlineEdit/useEditState.js +9 -12
  413. package/esm/InlineEdit/useFocusEvent.d.ts +0 -1
  414. package/esm/InlineEdit/useFocusEvent.js +7 -11
  415. package/esm/Input/Input.js +1 -1
  416. package/esm/InputGroup/InputGroupContext.d.ts +2 -1
  417. package/esm/InputNumber/index.d.ts +0 -1
  418. package/esm/InputPicker/InputAutosize.js +1 -1
  419. package/esm/InputPicker/InputPicker.js +30 -35
  420. package/esm/InputPicker/InputSearch.js +1 -2
  421. package/esm/InputPicker/hooks/useData.d.ts +0 -1
  422. package/esm/InputPicker/hooks/useData.js +1 -1
  423. package/esm/InputPicker/hooks/useInput.js +3 -6
  424. package/esm/InputPicker/hooks/useMaxWidth.js +2 -4
  425. package/esm/List/helper/AutoScroller.js +2 -4
  426. package/esm/List/helper/useSortHelper.d.ts +4 -4
  427. package/esm/List/helper/useSortHelper.js +13 -19
  428. package/esm/MaskedInput/TextMask.d.ts +5 -5
  429. package/esm/MaskedInput/TextMask.js +3 -5
  430. package/esm/MaskedInput/conformToMask.d.ts +1 -1
  431. package/esm/MaskedInput/createTextMaskInputElement.js +2 -3
  432. package/esm/Menu/MenuItem.js +3 -4
  433. package/esm/Message/Message.js +1 -1
  434. package/esm/Modal/Modal.js +8 -10
  435. package/esm/Modal/ModalBody.js +1 -1
  436. package/esm/Modal/utils.d.ts +2 -3
  437. package/esm/Modal/utils.js +2 -3
  438. package/esm/MultiCascadeTree/SearchView.js +1 -1
  439. package/esm/MultiCascadeTree/TreeView.js +2 -2
  440. package/esm/MultiCascadeTree/hooks/useCascadeValue.d.ts +0 -1
  441. package/esm/MultiCascadeTree/hooks/useCascadeValue.js +5 -8
  442. package/esm/MultiCascadeTree/hooks/useColumnData.d.ts +0 -1
  443. package/esm/MultiCascadeTree/hooks/useSearch.d.ts +0 -1
  444. package/esm/MultiCascadeTree/hooks/useSearch.js +2 -2
  445. package/esm/MultiCascadeTree/hooks/useSelect.js +3 -4
  446. package/esm/MultiCascadeTree/types.d.ts +0 -1
  447. package/esm/MultiCascadeTree/utils.d.ts +4 -4
  448. package/esm/MultiCascadeTree/utils.js +2 -3
  449. package/esm/MultiCascader/MultiCascader.js +13 -16
  450. package/esm/Nav/AdaptiveNavItem.js +2 -3
  451. package/esm/Nav/Nav.d.ts +1 -1
  452. package/esm/Nav/Nav.js +4 -4
  453. package/esm/Nav/NavDropdown.d.ts +1 -1
  454. package/esm/Nav/NavDropdown.js +3 -3
  455. package/esm/Nav/NavDropdownItem.js +2 -2
  456. package/esm/Nav/NavDropdownMenu.d.ts +1 -1
  457. package/esm/Nav/NavDropdownMenu.js +1 -1
  458. package/esm/Nav/NavItem.js +4 -4
  459. package/esm/Navbar/Navbar.js +1 -1
  460. package/esm/Navbar/NavbarContent.js +1 -1
  461. package/esm/Navbar/NavbarDrawer.js +1 -1
  462. package/esm/Navbar/NavbarDropdown.d.ts +1 -1
  463. package/esm/Navbar/NavbarDropdown.js +3 -3
  464. package/esm/Navbar/NavbarDropdownItem.js +5 -6
  465. package/esm/Navbar/NavbarDropdownMenu.d.ts +1 -1
  466. package/esm/Navbar/NavbarDropdownMenu.js +1 -1
  467. package/esm/Navbar/NavbarItem.js +4 -4
  468. package/esm/Navbar/NavbarToggle.js +2 -2
  469. package/esm/Notification/Notification.js +1 -1
  470. package/esm/NumberInput/NumberInput.js +3 -3
  471. package/esm/NumberInput/hooks/useEvents.d.ts +0 -1
  472. package/esm/NumberInput/hooks/useEvents.js +2 -3
  473. package/esm/NumberInput/hooks/useWheelHandler.js +1 -2
  474. package/esm/Pagination/Pagination.js +1 -1
  475. package/esm/Pagination/PaginationButton.js +1 -1
  476. package/esm/Pagination/PaginationGroup.js +3 -4
  477. package/esm/Panel/Panel.js +2 -2
  478. package/esm/PanelGroup/PanelGroup.js +1 -1
  479. package/esm/PasswordInput/PasswordInput.js +2 -2
  480. package/esm/PinInput/PinInput.js +1 -1
  481. package/esm/PinInput/hooks/usePinInputRefs.d.ts +0 -1
  482. package/esm/PinInput/hooks/usePinInputRefs.js +2 -4
  483. package/esm/PinInput/hooks/usePinValue.d.ts +1 -1
  484. package/esm/PinInput/hooks/usePinValue.js +2 -2
  485. package/esm/Progress/ProgressLine.js +1 -1
  486. package/esm/Progress/types.d.ts +0 -1
  487. package/esm/ProgressCircle/hooks/useProgressCirclePath.d.ts +0 -1
  488. package/esm/Radio/Radio.js +3 -3
  489. package/esm/RadioGroup/RadioGroup.js +1 -1
  490. package/esm/RadioTile/RadioTile.js +2 -2
  491. package/esm/RadioTileGroup/RadioTileGroup.js +1 -1
  492. package/esm/RangeSlider/RangeSlider.js +6 -6
  493. package/esm/Rate/Character.js +2 -2
  494. package/esm/Rate/Rate.js +3 -3
  495. package/esm/Rate/useRatingStates.d.ts +0 -1
  496. package/esm/SegmentedControl/SegmentedControl.js +3 -3
  497. package/esm/SegmentedControl/hooks/useIndicatorPosition.js +1 -1
  498. package/esm/SelectPicker/SelectPicker.js +13 -16
  499. package/esm/Sidebar/Sidebar.js +1 -1
  500. package/esm/Sidenav/ExpandedSidenavDropdown.js +6 -6
  501. package/esm/Sidenav/ExpandedSidenavDropdownItem.js +4 -5
  502. package/esm/Sidenav/Node.js +9 -16
  503. package/esm/Sidenav/Sidenav.js +2 -2
  504. package/esm/Sidenav/SidenavDropdown.d.ts +1 -1
  505. package/esm/Sidenav/SidenavDropdown.js +4 -4
  506. package/esm/Sidenav/SidenavDropdownItem.js +3 -4
  507. package/esm/Sidenav/SidenavItem.js +5 -6
  508. package/esm/Sidenav/SidenavToggle.js +2 -2
  509. package/esm/Slider/Slider.js +3 -3
  510. package/esm/Slider/useDrag.d.ts +0 -1
  511. package/esm/Slider/useDrag.js +7 -12
  512. package/esm/Slider/utils.d.ts +1 -2
  513. package/esm/Slider/utils.js +2 -3
  514. package/esm/Steps/StepItem.js +1 -2
  515. package/esm/Table/Table.d.ts +3 -3
  516. package/esm/Tabs/Tabs.js +3 -4
  517. package/esm/TimePicker/TimePicker.js +2 -2
  518. package/esm/Timeline/Timeline.d.ts +1 -1
  519. package/esm/Timeline/Timeline.js +1 -4
  520. package/esm/Toggle/Toggle.js +2 -2
  521. package/esm/Tree/Tree.js +2 -2
  522. package/esm/Tree/TreeNode.js +10 -11
  523. package/esm/Tree/TreeView.js +5 -5
  524. package/esm/Tree/hooks/useExpandTree.js +1 -1
  525. package/esm/Tree/hooks/useFlattenTree.js +1 -1
  526. package/esm/Tree/hooks/useFocusTree.d.ts +1 -2
  527. package/esm/Tree/hooks/useFocusTree.js +12 -14
  528. package/esm/Tree/hooks/useTreeDrag.d.ts +0 -1
  529. package/esm/Tree/hooks/useTreeDrag.js +10 -12
  530. package/esm/Tree/hooks/useTreeNodeProps.js +1 -1
  531. package/esm/Tree/hooks/useTreeSearch.js +4 -4
  532. package/esm/Tree/hooks/useVirtualizedTreeData.js +2 -2
  533. package/esm/Tree/types.d.ts +2 -3
  534. package/esm/Tree/utils/flattenTree.d.ts +1 -1
  535. package/esm/Tree/utils/focusableTree.js +5 -8
  536. package/esm/Tree/utils/getNodeParentKeys.js +2 -4
  537. package/esm/Tree/utils/hasVisibleChildren.d.ts +1 -1
  538. package/esm/Tree/utils/treeKeyboardInteractions.js +3 -3
  539. package/esm/TreePicker/TreePicker.js +8 -9
  540. package/esm/TreePicker/hooks/useFocusState.d.ts +0 -1
  541. package/esm/TreePicker/hooks/useFocusState.js +4 -8
  542. package/esm/Uploader/UploadFileItem.js +8 -10
  543. package/esm/Uploader/UploadTrigger.js +8 -10
  544. package/esm/Uploader/Uploader.js +18 -24
  545. package/esm/Uploader/utils/ajaxUpload.js +5 -5
  546. package/esm/Uploader/utils/previewFile.js +1 -1
  547. package/esm/internals/Disclosure/Disclosure.js +5 -8
  548. package/esm/internals/Disclosure/DisclosureButton.js +2 -2
  549. package/esm/internals/InputBase/InputBase.js +5 -6
  550. package/esm/internals/Menu/Menu.js +16 -20
  551. package/esm/internals/Menu/MenuItem.js +4 -5
  552. package/esm/internals/Menu/Menubar.js +5 -7
  553. package/esm/internals/Menu/useMenu.js +5 -10
  554. package/esm/internals/Overlay/Modal.js +8 -11
  555. package/esm/internals/Overlay/ModalManager.js +3 -5
  556. package/esm/internals/Overlay/Overlay.js +1 -1
  557. package/esm/internals/Overlay/OverlayTrigger.d.ts +0 -1
  558. package/esm/internals/Overlay/OverlayTrigger.js +5 -7
  559. package/esm/internals/Overlay/Position.js +6 -8
  560. package/esm/internals/Picker/ListCheckItem.js +3 -3
  561. package/esm/internals/Picker/ListItem.js +1 -1
  562. package/esm/internals/Picker/Listbox.js +9 -10
  563. package/esm/internals/Picker/PickerPopup.js +4 -5
  564. package/esm/internals/Picker/PickerToggle.js +3 -4
  565. package/esm/internals/Picker/SelectedElement.js +1 -1
  566. package/esm/internals/Picker/hooks/useFocusItemValue.d.ts +0 -1
  567. package/esm/internals/Picker/hooks/useFocusItemValue.js +14 -28
  568. package/esm/internals/Picker/hooks/usePickerRef.d.ts +0 -1
  569. package/esm/internals/Picker/hooks/usePickerRef.js +9 -15
  570. package/esm/internals/Picker/hooks/useSearch.d.ts +0 -1
  571. package/esm/internals/Picker/hooks/useSearch.js +2 -2
  572. package/esm/internals/Picker/hooks/useToggleKeyDownEvent.d.ts +0 -1
  573. package/esm/internals/Picker/hooks/useToggleKeyDownEvent.js +13 -17
  574. package/esm/internals/Picker/utils.js +9 -9
  575. package/esm/internals/Ripple/Ripple.js +3 -4
  576. package/esm/internals/SafeAnchor/SafeAnchor.js +1 -1
  577. package/esm/internals/ScrollView/hooks/useScrollState.d.ts +0 -1
  578. package/esm/internals/ScrollView/hooks/useScrollState.js +2 -3
  579. package/esm/internals/Tree/TreeProvider.d.ts +4 -4
  580. package/esm/internals/Tree/TreeProvider.js +2 -8
  581. package/esm/internals/Tree/types.d.ts +0 -1
  582. package/esm/internals/Tree/utils/getParentMap.d.ts +0 -1
  583. package/esm/internals/Windowing/AutoSizer.js +2 -3
  584. package/esm/internals/Windowing/List.js +4 -8
  585. package/esm/internals/constants/index.d.ts +2 -2
  586. package/esm/internals/hooks/useClickOutside.js +2 -4
  587. package/esm/internals/hooks/useCustom.d.ts +0 -1
  588. package/esm/internals/hooks/useCustom.js +5 -7
  589. package/esm/internals/hooks/useElementResize.d.ts +0 -1
  590. package/esm/internals/hooks/useEventCallback.js +1 -2
  591. package/esm/internals/hooks/useEventListener.js +1 -1
  592. package/esm/internals/hooks/useFocus.js +2 -4
  593. package/esm/internals/hooks/useFocusVirtualListItem.d.ts +0 -1
  594. package/esm/internals/hooks/useMount.js +1 -2
  595. package/esm/internals/hooks/useRootClose.js +6 -6
  596. package/esm/internals/hooks/useTimeout.js +1 -2
  597. package/esm/internals/hooks/useToggleCaret.d.ts +0 -1
  598. package/esm/internals/hooks/useUniqueId.js +1 -1
  599. package/esm/internals/hooks/useUpdatedRef.d.ts +0 -1
  600. package/esm/internals/styled-system/style-manager.js +1 -1
  601. package/esm/internals/styled-system/useStyled.js +2 -2
  602. package/esm/internals/types/utils.d.ts +0 -1
  603. package/esm/internals/utils/colours.d.ts +4 -4
  604. package/esm/internals/utils/colours.js +1 -1
  605. package/esm/internals/utils/date/disableTime.js +6 -12
  606. package/esm/internals/utils/date/omitHideDisabledProps.d.ts +1 -1
  607. package/esm/internals/utils/date/useDateMode.d.ts +1 -1
  608. package/esm/internals/utils/react/ReactChildren.js +1 -2
  609. package/esm/internals/utils/react/deprecateComponent.js +1 -2
  610. package/esm/internals/utils/react/getDOMNode.js +4 -5
  611. package/esm/internals/utils/sizes.d.ts +2 -2
  612. package/esm/internals/utils/style-sheet/css.d.ts +0 -1
  613. package/esm/internals/utils/style-sheet/css.js +1 -1
  614. package/esm/internals/utils/style-sheet/prefix.d.ts +0 -1
  615. package/esm/internals/utils/style-sheet/responsive.d.ts +1 -1
  616. package/esm/internals/utils/style-sheet/styles.d.ts +3 -3
  617. package/esm/internals/utils/style-sheet/styles.js +1 -1
  618. package/esm/toaster/ToastContainer.js +3 -5
  619. package/esm/toaster/hooks/useDelayedClosure.d.ts +0 -1
  620. package/esm/toaster/hooks/useDelayedClosure.js +3 -4
  621. package/esm/toaster/toaster.js +4 -12
  622. package/esm/useDialog/Dialog.d.ts +1 -1
  623. package/esm/useDialog/Dialog.js +1 -1
  624. package/esm/useDialog/useDialog.d.ts +1 -1
  625. package/esm/useDialog/useDialog.js +3 -3
  626. package/esm/useFormControl/hooks/useField.d.ts +0 -1
  627. package/esm/useFormControl/hooks/useField.js +5 -7
  628. package/esm/useFormControl/hooks/useRegisterModel.js +2 -2
  629. package/esm/useFormControl/useFormControl.js +8 -8
  630. package/esm/useToaster/useToaster.js +4 -5
  631. package/package.json +1 -1
@@ -60,9 +60,8 @@ function createDragPreview(name, className) {
60
60
  * Removes the drag preview element from the DOM.
61
61
  */
62
62
  function removeDragPreview() {
63
- var _dragPreview$parentNo, _dragPreview$parentNo2;
64
63
  const dragPreview = document.getElementById('rs-tree-drag-preview');
65
- dragPreview === null || dragPreview === void 0 || (_dragPreview$parentNo = dragPreview.parentNode) === null || _dragPreview$parentNo === void 0 || (_dragPreview$parentNo2 = _dragPreview$parentNo.removeChild) === null || _dragPreview$parentNo2 === void 0 || _dragPreview$parentNo2.call(_dragPreview$parentNo, dragPreview);
64
+ dragPreview?.parentNode?.removeChild?.(dragPreview);
66
65
  }
67
66
  /**
68
67
  * Custom hook for handling tree node dragging.
@@ -101,7 +100,7 @@ export default function useTreeDrag(props) {
101
100
  const getDragNodeKeys = useCallback(dragNode => {
102
101
  let dragNodeKeys = [dragNode[valueKey]];
103
102
  const traverse = data => {
104
- if ((data === null || data === void 0 ? void 0 : data.length) > 0) {
103
+ if (data?.length > 0) {
105
104
  data.forEach(node => {
106
105
  dragNodeKeys = dragNodeKeys.concat([node[valueKey]]);
107
106
  if (node[childrenKey]) {
@@ -197,12 +196,11 @@ export default function useTreeDrag(props) {
197
196
  }, [createDragTreeDataFunction, dropNodePosition]);
198
197
  const handleDragStart = useEventCallback((nodeData, event) => {
199
198
  if (draggable) {
200
- var _event$dataTransfer;
201
199
  const dragMoverNode = createDragPreview(stringifyReactNode(nodeData[labelKey]), prefix('drag-preview'));
202
- (_event$dataTransfer = event.dataTransfer) === null || _event$dataTransfer === void 0 || _event$dataTransfer.setDragImage(dragMoverNode, 0, 0);
200
+ event.dataTransfer?.setDragImage(dragMoverNode, 0, 0);
203
201
  setDragNodeKeys(getDragNodeKeys(nodeData));
204
202
  setDragNode(flattenedNodes[nodeData.refKey]);
205
- onDragStart === null || onDragStart === void 0 || onDragStart(nodeData, event);
203
+ onDragStart?.(nodeData, event);
206
204
  }
207
205
  });
208
206
  const handleDragEnter = useEventCallback((nodeData, event) => {
@@ -213,7 +211,7 @@ export default function useTreeDrag(props) {
213
211
  setDragOverNodeKey(nodeData[valueKey]);
214
212
  setDropNodePosition(calDropNodePosition(event, treeNodesRefs[nodeData.refKey]));
215
213
  }
216
- onDragEnter === null || onDragEnter === void 0 || onDragEnter(nodeData, event);
214
+ onDragEnter?.(nodeData, event);
217
215
  });
218
216
  const handleDragOver = useEventCallback((nodeData, event) => {
219
217
  if (dragNodeKeys.some(d => equal(d, nodeData[valueKey]))) {
@@ -225,24 +223,24 @@ export default function useTreeDrag(props) {
225
223
  if (lastDropNodePosition === dropNodePosition) return;
226
224
  setDropNodePosition(lastDropNodePosition);
227
225
  }
228
- onDragOver === null || onDragOver === void 0 || onDragOver(nodeData, event);
226
+ onDragOver?.(nodeData, event);
229
227
  });
230
228
  const handleDragLeave = useEventCallback((nodeData, event) => {
231
- onDragLeave === null || onDragLeave === void 0 || onDragLeave(nodeData, event);
229
+ onDragLeave?.(nodeData, event);
232
230
  });
233
231
  const handleDragEnd = useEventCallback((nodeData, event) => {
234
232
  removeDragPreview();
235
233
  setDragNode(null);
236
234
  setDragNodeKeys([]);
237
235
  setDragOverNodeKey(null);
238
- onDragEnd === null || onDragEnd === void 0 || onDragEnd(nodeData, event);
236
+ onDragEnd?.(nodeData, event);
239
237
  });
240
238
  const handleDrop = useEventCallback((nodeData, event) => {
241
239
  if (dragNodeKeys.some(d => equal(d, nodeData[valueKey]))) {
242
240
  console.error('Cannot drag a node to itself and its children');
243
241
  } else {
244
242
  const dropData = getDropData(nodeData);
245
- onDrop === null || onDrop === void 0 || onDrop(dropData, event);
243
+ onDrop?.(dropData, event);
246
244
  }
247
245
  removeDragPreview();
248
246
  setDragNode(null);
@@ -258,7 +256,7 @@ export default function useTreeDrag(props) {
258
256
  onDrop: handleDrop
259
257
  };
260
258
  return {
261
- dragNode: dragNode === null || dragNode === void 0 ? void 0 : dragNode.current,
259
+ dragNode: dragNode?.current,
262
260
  dragOverNodeKey,
263
261
  dropNodePosition,
264
262
  dragEvents
@@ -33,7 +33,7 @@ function useTreeNodeProps(props) {
33
33
  const {
34
34
  visible
35
35
  } = nodeData;
36
- const draggingNode = dragNode !== null && dragNode !== void 0 ? dragNode : {};
36
+ const draggingNode = dragNode ?? {};
37
37
  const nodeValue = nodeData[valueKey];
38
38
  const nodeLabel = nodeData[labelKey];
39
39
  const children = nodeData[childrenKey];
@@ -34,21 +34,21 @@ export default function useTreeSearch(props) {
34
34
  }, [childrenKey, labelKey, searchBy]);
35
35
 
36
36
  // Use search keywords to filter options.
37
- const [keyword, setSearchKeyword] = useState(searchKeyword !== null && searchKeyword !== void 0 ? searchKeyword : '');
37
+ const [keyword, setSearchKeyword] = useState(searchKeyword ?? '');
38
38
  const [filteredData, setFilteredData] = useState(() => filterVisibleData(data, keyword));
39
39
  const handleSearch = (searchKeyword, event) => {
40
40
  const filteredData = filterVisibleData(data, searchKeyword);
41
41
  setFilteredData(filteredData);
42
42
  setSearchKeyword(searchKeyword);
43
43
  if (event) {
44
- callback === null || callback === void 0 || callback(searchKeyword, filteredData, event);
44
+ callback?.(searchKeyword, filteredData, event);
45
45
  }
46
46
  };
47
47
  useEffect(() => {
48
- handleSearch(searchKeyword !== null && searchKeyword !== void 0 ? searchKeyword : '');
48
+ handleSearch(searchKeyword ?? '');
49
49
  }, [searchKeyword]);
50
50
  useEffect(() => {
51
- setSearchKeyword(searchKeyword !== null && searchKeyword !== void 0 ? searchKeyword : '');
51
+ setSearchKeyword(searchKeyword ?? '');
52
52
  }, [searchKeyword, setSearchKeyword]);
53
53
  const setVisibleData = useCallback((data, searchKeyword) => {
54
54
  setFilteredData(filterVisibleData(data, searchKeyword));
@@ -35,14 +35,14 @@ function useVirtualizedTreeData(nodes, data, options) {
35
35
  } = options;
36
36
  return UNSAFE_flattenTree(data, childrenKey, node => {
37
37
  let formatted = {};
38
- const curNode = nodes === null || nodes === void 0 ? void 0 : nodes[node.refKey];
38
+ const curNode = nodes?.[node.refKey];
39
39
  const parentKeys = getNodeParentKeys(nodes, curNode, valueKey);
40
40
  /**
41
41
  * When using virtualized,
42
42
  * if the parent node is collapsed, the child nodes should be hidden
43
43
  * avoid component height calculation errors
44
44
  */
45
- let visible = curNode !== null && curNode !== void 0 && curNode.parent ? shouldShowNodeByParentExpanded(expandItemValues, parentKeys) : true;
45
+ let visible = curNode?.parent ? shouldShowNodeByParentExpanded(expandItemValues, parentKeys) : true;
46
46
 
47
47
  /**
48
48
  * when searching, every node default expand
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import type { BaseBoxProps } from '../internals/Box';
3
2
  import type { ListProps } from '../internals/Windowing';
4
3
  import type { TreeNode } from '../internals/Tree/types';
@@ -6,8 +5,8 @@ import type { TreeNode } from '../internals/Tree/types';
6
5
  * Tree Node Drag Type
7
6
  */
8
7
  export declare enum TREE_NODE_DROP_POSITION {
9
- DRAG_OVER = 0,
10
- DRAG_OVER_TOP = 1,
8
+ DRAG_OVER = 0,// drag node in tree node
9
+ DRAG_OVER_TOP = 1,// drag node on tree node
11
10
  DRAG_OVER_BOTTOM = 2
12
11
  }
13
12
  export interface DropData<T> {
@@ -2,7 +2,7 @@
2
2
  * Strategy for walking the tree.
3
3
  */
4
4
  export declare enum WalkTreeStrategy {
5
- DFS = 0,
5
+ DFS = 0,// Depth-first search
6
6
  BFS = 1
7
7
  }
8
8
  /**
@@ -63,9 +63,8 @@ export const getActiveItem = (focusItemValue, flattenedNodes, valueKey) => {
63
63
  *
64
64
  */
65
65
  export const focusTreeNode = (refKey, treeNodeRefs) => {
66
- var _treeItem$focus;
67
66
  const treeItem = treeNodeRefs[refKey];
68
- treeItem === null || treeItem === void 0 || (_treeItem$focus = treeItem.focus) === null || _treeItem$focus === void 0 || _treeItem$focus.call(treeItem);
67
+ treeItem?.focus?.();
69
68
  };
70
69
  /**
71
70
  * Focuses on the next item in a tree.
@@ -164,9 +163,8 @@ export function scrollToActiveTreeNode(props) {
164
163
  formattedNodes
165
164
  } = props;
166
165
  if (virtualized && value) {
167
- var _list$scrollToItem;
168
166
  const scrollIndex = getScrollToIndex(formattedNodes, value, valueKey);
169
- list === null || list === void 0 || (_list$scrollToItem = list.scrollToItem) === null || _list$scrollToItem === void 0 || _list$scrollToItem.call(list, scrollIndex);
167
+ list?.scrollToItem?.(scrollIndex);
170
168
  }
171
169
  }
172
170
  export const focusCurrentItem = props => {
@@ -174,10 +172,9 @@ export const focusCurrentItem = props => {
174
172
  selector = SELECTED_TREEITEM_SELECTOR,
175
173
  container
176
174
  } = props;
177
- const activeItem = container === null || container === void 0 ? void 0 : container.querySelector(selector);
175
+ const activeItem = container?.querySelector(selector);
178
176
  if (activeItem) {
179
- var _activeItem$focus, _activeItem$dataset;
180
- activeItem === null || activeItem === void 0 || (_activeItem$focus = activeItem.focus) === null || _activeItem$focus === void 0 || _activeItem$focus.call(activeItem);
181
- return (_activeItem$dataset = activeItem.dataset) === null || _activeItem$dataset === void 0 ? void 0 : _activeItem$dataset.key;
177
+ activeItem?.focus?.();
178
+ return activeItem.dataset?.key;
182
179
  }
183
180
  };
@@ -5,11 +5,9 @@
5
5
  export function getNodeParentKeys(nodes, node, valueKey) {
6
6
  const parentKeys = [];
7
7
  const traverse = node => {
8
- var _node$parent;
9
- if (node !== null && node !== void 0 && (_node$parent = node.parent) !== null && _node$parent !== void 0 && _node$parent.refKey) {
10
- var _node$parent2;
8
+ if (node?.parent?.refKey) {
11
9
  traverse(nodes[node.parent.refKey]);
12
- parentKeys.push(node === null || node === void 0 || (_node$parent2 = node.parent) === null || _node$parent2 === void 0 ? void 0 : _node$parent2[valueKey]);
10
+ parentKeys.push(node?.parent?.[valueKey]);
13
11
  }
14
12
  };
15
13
  traverse(node);
@@ -2,4 +2,4 @@ import type { TreeNode } from '../../internals/Tree/types';
2
2
  /**
3
3
  * Checks if a node has visible children.
4
4
  */
5
- export declare function hasVisibleChildren(node: TreeNode, childrenKey: string): any;
5
+ export declare function hasVisibleChildren(node: TreeNode, childrenKey: string): boolean;
@@ -16,8 +16,8 @@ export function handleLeftArrow(props) {
16
16
  return;
17
17
  }
18
18
  if (expand) {
19
- onExpand === null || onExpand === void 0 || onExpand(focusItem, expand);
20
- } else if (focusItem !== null && focusItem !== void 0 && focusItem.parent) {
19
+ onExpand?.(focusItem, expand);
20
+ } else if (focusItem?.parent) {
21
21
  onFocusItem();
22
22
  }
23
23
  }
@@ -40,7 +40,7 @@ export function handleRightArrow(props) {
40
40
  return;
41
41
  }
42
42
  if (!expand) {
43
- onExpand === null || onExpand === void 0 || onExpand(focusItem, expand);
43
+ onExpand?.(focusItem, expand);
44
44
  } else {
45
45
  onFocusItem();
46
46
  }
@@ -135,8 +135,7 @@ const TreePicker = forwardRef((props, ref) => {
135
135
  onEntered
136
136
  });
137
137
  const handleSelect = useEventCallback((treeNode, value, event) => {
138
- var _target$current, _trigger$current, _trigger$current$clos;
139
- onSelect === null || onSelect === void 0 || onSelect(treeNode, value, event);
138
+ onSelect?.(treeNode, value, event);
140
139
 
141
140
  // Only leaf nodes can update the value and close the picker.
142
141
  if (onlyLeafSelectable && !isLeafNode(treeNode)) {
@@ -144,8 +143,8 @@ const TreePicker = forwardRef((props, ref) => {
144
143
  }
145
144
  setFocusItemValue(value);
146
145
  handleChange(value, event);
147
- (_target$current = target.current) === null || _target$current === void 0 || _target$current.focus();
148
- (_trigger$current = trigger.current) === null || _trigger$current === void 0 || (_trigger$current$clos = _trigger$current.close) === null || _trigger$current$clos === void 0 || _trigger$current$clos.call(_trigger$current);
146
+ target.current?.focus();
147
+ trigger.current?.close?.();
149
148
  });
150
149
  const handleClean = useEventCallback(event => {
151
150
  const target = event.target;
@@ -154,7 +153,7 @@ const TreePicker = forwardRef((props, ref) => {
154
153
  return;
155
154
  }
156
155
  setValue(null);
157
- onChange === null || onChange === void 0 || onChange(null, event);
156
+ onChange?.(null, event);
158
157
  });
159
158
  const handleTreePressEnter = useEventCallback(event => {
160
159
  if (isNil(focusItemValue)) {
@@ -183,7 +182,7 @@ const TreePicker = forwardRef((props, ref) => {
183
182
  });
184
183
  const handleChange = useEventCallback((nextValue, event) => {
185
184
  setValue(nextValue);
186
- onChange === null || onChange === void 0 || onChange(nextValue, event);
185
+ onChange?.(nextValue, event);
187
186
  });
188
187
  const treeContext = useMemo(() => ({
189
188
  register,
@@ -233,7 +232,7 @@ const TreePicker = forwardRef((props, ref) => {
233
232
  ref: mergeRefs(overlay, speakerRef),
234
233
  onKeyDown: onPickerKeydown,
235
234
  target: trigger
236
- }, renderTree ? renderTree(tree) : tree, renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());
235
+ }, renderTree ? renderTree(tree) : tree, renderExtraFooter?.());
237
236
  };
238
237
 
239
238
  /**
@@ -243,7 +242,7 @@ const TreePicker = forwardRef((props, ref) => {
243
242
  let hasValidValue = !isNil(activeNode) || !isNil(value) && isFunction(renderValue);
244
243
  let selectedElement = placeholder;
245
244
  if (hasValidValue) {
246
- const node = activeNode !== null && activeNode !== void 0 ? activeNode : {};
245
+ const node = activeNode ?? {};
247
246
  selectedElement = node[labelKey];
248
247
  if (isFunction(renderValue) && value) {
249
248
  selectedElement = renderValue(value, node, selectedElement);
@@ -284,7 +283,7 @@ const TreePicker = forwardRef((props, ref) => {
284
283
  placement: placement,
285
284
  inputValue: value,
286
285
  focusItemValue: focusItemValue
287
- }, rest), selectedElement || (locale === null || locale === void 0 ? void 0 : locale.placeholder)));
286
+ }, rest), selectedElement || locale?.placeholder));
288
287
  });
289
288
  TreePicker.displayName = 'TreePicker';
290
289
  export default TreePicker;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  interface FocusStateProps {
3
2
  target: React.RefObject<HTMLElement | null>;
4
3
  value?: number | string | null | undefined;
@@ -10,27 +10,23 @@ function useFocusState(props) {
10
10
  const [active, setActive] = useState(false);
11
11
  const [focusItemValue, setFocusItemValue] = useState(null);
12
12
  const focusTarget = useEventCallback(() => {
13
- var _target$current;
14
- (_target$current = target.current) === null || _target$current === void 0 || _target$current.focus();
13
+ target.current?.focus();
15
14
  });
16
15
  const onEnter = useEventCallback(node => {
17
- var _props$onEnter;
18
16
  setActive(true);
19
- (_props$onEnter = props.onEnter) === null || _props$onEnter === void 0 || _props$onEnter.call(props, node);
17
+ props.onEnter?.(node);
20
18
  });
21
19
  const onExit = useEventCallback(node => {
22
- var _props$onExit;
23
20
  setActive(false);
24
21
  focusTarget();
25
- (_props$onExit = props.onExit) === null || _props$onExit === void 0 || _props$onExit.call(props, node);
22
+ props.onExit?.(node);
26
23
  });
27
24
  const onEntered = useEventCallback(node => {
28
- var _props$onEntered;
29
25
  if (value) {
30
26
  setFocusItemValue(value);
31
27
  focusActiveNode();
32
28
  }
33
- (_props$onEntered = props.onEntered) === null || _props$onEntered === void 0 || _props$onEntered.call(props, node);
29
+ props.onEntered?.(node);
34
30
  });
35
31
  return {
36
32
  active,
@@ -63,13 +63,12 @@ const UploadFileItem = forwardRef((props, ref) => {
63
63
  * Get thumbnail of image file
64
64
  */
65
65
  const getThumbnail = useCallback(callback => {
66
- var _file$blobFile;
67
66
  if (!~['picture-text', 'picture'].indexOf(listType)) {
68
67
  return;
69
68
  }
70
69
 
71
70
  // The thumbnail file size cannot be larger than the preset value.
72
- if (!file.blobFile || (file === null || file === void 0 || (_file$blobFile = file.blobFile) === null || _file$blobFile === void 0 ? void 0 : _file$blobFile.size) > maxPreviewFileSize) {
71
+ if (!file.blobFile || file?.blobFile?.size > maxPreviewFileSize) {
73
72
  return;
74
73
  }
75
74
  previewFile(file.blobFile, callback);
@@ -85,19 +84,19 @@ const UploadFileItem = forwardRef((props, ref) => {
85
84
  if (disabled) {
86
85
  return;
87
86
  }
88
- onPreview === null || onPreview === void 0 || onPreview(file, event);
87
+ onPreview?.(file, event);
89
88
  }, [disabled, file, onPreview]);
90
89
  const handleRemove = useCallback(event => {
91
90
  if (disabled) {
92
91
  return;
93
92
  }
94
- onCancel === null || onCancel === void 0 || onCancel(file.fileKey, event);
93
+ onCancel?.(file.fileKey, event);
95
94
  }, [disabled, file.fileKey, onCancel]);
96
95
  const handleReupload = useCallback(event => {
97
96
  if (disabled) {
98
97
  return;
99
98
  }
100
- onReupload === null || onReupload === void 0 || onReupload(file, event);
99
+ onReupload?.(file, event);
101
100
  }, [disabled, file, onReupload]);
102
101
 
103
102
  /**
@@ -173,8 +172,8 @@ const UploadFileItem = forwardRef((props, ref) => {
173
172
  return null;
174
173
  }
175
174
  let closeLabel = 'Remove file';
176
- if (locale !== null && locale !== void 0 && locale.removeFile) {
177
- closeLabel = (locale === null || locale === void 0 ? void 0 : locale.removeFile) + (file !== null && file !== void 0 && file.name ? `: ${file === null || file === void 0 ? void 0 : file.name}` : '');
175
+ if (locale?.removeFile) {
176
+ closeLabel = locale?.removeFile + (file?.name ? `: ${file?.name}` : '');
178
177
  }
179
178
  return /*#__PURE__*/React.createElement(CloseButton, {
180
179
  className: prefix('btn-remove'),
@@ -194,7 +193,7 @@ const UploadFileItem = forwardRef((props, ref) => {
194
193
  if (file.status === 'error') {
195
194
  return /*#__PURE__*/React.createElement("div", {
196
195
  className: prefix('status')
197
- }, /*#__PURE__*/React.createElement("span", null, locale === null || locale === void 0 ? void 0 : locale.error), allowReupload && /*#__PURE__*/React.createElement("a", {
196
+ }, /*#__PURE__*/React.createElement("span", null, locale?.error), allowReupload && /*#__PURE__*/React.createElement("a", {
198
197
  role: "button",
199
198
  tabIndex: -1,
200
199
  onClick: handleReupload,
@@ -211,10 +210,9 @@ const UploadFileItem = forwardRef((props, ref) => {
211
210
  */
212
211
  const renderFileSize = () => {
213
212
  if (file.status !== 'error' && file.blobFile) {
214
- var _file$blobFile2;
215
213
  return /*#__PURE__*/React.createElement("span", {
216
214
  className: prefix('size')
217
- }, formatSize(file === null || file === void 0 || (_file$blobFile2 = file.blobFile) === null || _file$blobFile2 === void 0 ? void 0 : _file$blobFile2.size));
215
+ }, formatSize(file?.blobFile?.size));
218
216
  }
219
217
  return null;
220
218
  };
@@ -5,7 +5,6 @@ import { useStyles, useEventCallback } from "../internals/hooks/index.js";
5
5
  import { forwardRef } from "../internals/utils/index.js";
6
6
  import classNames from 'classnames';
7
7
  const UploadTrigger = forwardRef((props, ref) => {
8
- var _children$props;
9
8
  const {
10
9
  as: Component = Button,
11
10
  name,
@@ -37,8 +36,7 @@ const UploadTrigger = forwardRef((props, ref) => {
37
36
  'drag-over': dragOver
38
37
  }));
39
38
  const handleClick = useEventCallback(() => {
40
- var _inputRef$current;
41
- (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.click();
39
+ inputRef.current?.click();
42
40
  });
43
41
  const handleClearInput = useEventCallback(() => {
44
42
  if (inputRef.current) {
@@ -50,26 +48,26 @@ const UploadTrigger = forwardRef((props, ref) => {
50
48
  event.preventDefault();
51
49
  setDragOver(true);
52
50
  }
53
- onDragEnter === null || onDragEnter === void 0 || onDragEnter(event);
51
+ onDragEnter?.(event);
54
52
  });
55
53
  const handleDragLeave = useEventCallback(event => {
56
54
  if (draggable) {
57
55
  event.preventDefault();
58
56
  setDragOver(false);
59
57
  }
60
- onDragLeave === null || onDragLeave === void 0 || onDragLeave(event);
58
+ onDragLeave?.(event);
61
59
  });
62
60
  const handleDragOver = useEventCallback(event => {
63
61
  draggable && event.preventDefault();
64
- onDragOver === null || onDragOver === void 0 || onDragOver(event);
62
+ onDragOver?.(event);
65
63
  });
66
64
  const handleDrop = useEventCallback(event => {
67
65
  if (draggable) {
68
66
  event.preventDefault();
69
67
  setDragOver(false);
70
- onChange === null || onChange === void 0 || onChange(event);
68
+ onChange?.(event);
71
69
  }
72
- onDrop === null || onDrop === void 0 || onDrop(event);
70
+ onDrop?.(event);
73
71
  });
74
72
  useImperativeHandle(ref, () => ({
75
73
  root: rootRef.current,
@@ -92,8 +90,8 @@ const UploadTrigger = forwardRef((props, ref) => {
92
90
  };
93
91
  const trigger = children ? (/*#__PURE__*/React.cloneElement(children, {
94
92
  ...buttonProps,
95
- className: classNames((_children$props = children.props) === null || _children$props === void 0 ? void 0 : _children$props.className, prefix('btn'))
96
- })) : /*#__PURE__*/React.createElement(Component, buttonProps, locale === null || locale === void 0 ? void 0 : locale.upload);
93
+ className: classNames(children.props?.className, prefix('btn'))
94
+ })) : /*#__PURE__*/React.createElement(Component, buttonProps, locale?.upload);
97
95
  return /*#__PURE__*/React.createElement("div", {
98
96
  ref: rootRef,
99
97
  className: classes,
@@ -13,9 +13,8 @@ import { useStyles, useCustom, useWillUnmount, useEventCallback } from "../inter
13
13
  // Define several states of the file during the upload process.
14
14
 
15
15
  const getFiles = event => {
16
- if (typeof (event === null || event === void 0 ? void 0 : event['dataTransfer']) === 'object') {
17
- var _event$dataTransfer;
18
- return event === null || event === void 0 || (_event$dataTransfer = event['dataTransfer']) === null || _event$dataTransfer === void 0 ? void 0 : _event$dataTransfer.files;
16
+ if (typeof event?.['dataTransfer'] === 'object') {
17
+ return event?.['dataTransfer']?.files;
19
18
  }
20
19
  if (event.target) {
21
20
  return event.target['files'];
@@ -33,7 +32,6 @@ const createFile = file => {
33
32
  };
34
33
  };
35
34
  function fileListReducer(files, action) {
36
- var _action$files;
37
35
  switch (action.type) {
38
36
  // Add one or more files
39
37
  case 'push':
@@ -51,10 +49,10 @@ function fileListReducer(files, action) {
51
49
 
52
50
  // Initialization file list
53
51
  case 'init':
54
- return ((_action$files = action.files) === null || _action$files === void 0 ? void 0 : _action$files.map(file => {
52
+ return action.files?.map(file => {
55
53
  // The state of the file needs to be preserved when the `fileList` is controlled.
56
54
  return files.find(f => f.fileKey === file.fileKey) || createFile(file);
57
- })) || [];
55
+ }) || [];
58
56
  default:
59
57
  throw new Error();
60
58
  }
@@ -65,8 +63,7 @@ const useFileList = (defaultFileList = []) => {
65
63
  const [fileList, dispatch] = useReducer(fileListReducer, fileListRef.current);
66
64
  fileListRef.current = fileList;
67
65
  useEffect(() => {
68
- var _fileListUpdateCallba;
69
- (_fileListUpdateCallba = fileListUpdateCallback.current) === null || _fileListUpdateCallba === void 0 || _fileListUpdateCallba.call(fileListUpdateCallback, fileList);
66
+ fileListUpdateCallback.current?.(fileList);
70
67
  fileListUpdateCallback.current = null;
71
68
  }, [fileList]);
72
69
  useWillUnmount(() => {
@@ -162,8 +159,7 @@ const Uploader = forwardRef((props, ref) => {
162
159
  * Clear the value in input.
163
160
  */
164
161
  const cleanInputValue = useCallback(() => {
165
- var _trigger$current;
166
- (_trigger$current = trigger.current) === null || _trigger$current === void 0 || _trigger$current.clearInput();
162
+ trigger.current?.clearInput();
167
163
  }, []);
168
164
 
169
165
  /**
@@ -180,7 +176,7 @@ const Uploader = forwardRef((props, ref) => {
180
176
  progress: 100
181
177
  };
182
178
  updateFileStatus(nextFile);
183
- onSuccess === null || onSuccess === void 0 || onSuccess(response, nextFile, event, xhr);
179
+ onSuccess?.(response, nextFile, event, xhr);
184
180
  }, [onSuccess, updateFileStatus]);
185
181
 
186
182
  /**
@@ -196,7 +192,7 @@ const Uploader = forwardRef((props, ref) => {
196
192
  status: 'error'
197
193
  };
198
194
  updateFileStatus(nextFile);
199
- onError === null || onError === void 0 || onError(status, nextFile, event, xhr);
195
+ onError?.(status, nextFile, event, xhr);
200
196
  }, [onError, updateFileStatus]);
201
197
 
202
198
  /**
@@ -213,7 +209,7 @@ const Uploader = forwardRef((props, ref) => {
213
209
  progress: percent
214
210
  };
215
211
  updateFileStatus(nextFile);
216
- onProgress === null || onProgress === void 0 || onProgress(percent, nextFile, event, xhr);
212
+ onProgress?.(percent, nextFile, event, xhr);
217
213
  }, [onProgress, updateFileStatus]);
218
214
 
219
215
  /**
@@ -245,11 +241,11 @@ const Uploader = forwardRef((props, ref) => {
245
241
  if (file.fileKey) {
246
242
  xhrs.current[file.fileKey] = xhr;
247
243
  }
248
- onUpload === null || onUpload === void 0 || onUpload(file, uploadData, xhr);
244
+ onUpload?.(file, uploadData, xhr);
249
245
  });
250
246
  const handleAjaxUpload = useEventCallback(() => {
251
247
  fileList.current.forEach(file => {
252
- const checkState = shouldUpload === null || shouldUpload === void 0 ? void 0 : shouldUpload(file);
248
+ const checkState = shouldUpload?.(file);
253
249
  if (checkState instanceof Promise) {
254
250
  checkState.then(res => {
255
251
  if (res) {
@@ -278,13 +274,13 @@ const Uploader = forwardRef((props, ref) => {
278
274
  });
279
275
  });
280
276
  const nextFileList = [...fileList.current, ...newFileList];
281
- const checkState = shouldQueueUpdate === null || shouldQueueUpdate === void 0 ? void 0 : shouldQueueUpdate(nextFileList, newFileList);
277
+ const checkState = shouldQueueUpdate?.(nextFileList, newFileList);
282
278
  if (checkState === false) {
283
279
  cleanInputValue();
284
280
  return;
285
281
  }
286
282
  const upload = () => {
287
- onChange === null || onChange === void 0 || onChange(nextFileList, event);
283
+ onChange?.(nextFileList, event);
288
284
  if (rootRef.current) {
289
285
  dispatch({
290
286
  type: 'push',
@@ -303,24 +299,22 @@ const Uploader = forwardRef((props, ref) => {
303
299
  upload();
304
300
  });
305
301
  const handleRemoveFile = useEventCallback((fileKey, event) => {
306
- var _xhrs$current;
307
302
  const file = find(fileList.current, f => f.fileKey === fileKey);
308
303
  const nextFileList = fileList.current.filter(f => f.fileKey !== fileKey);
309
- if (((_xhrs$current = xhrs.current) === null || _xhrs$current === void 0 || (_xhrs$current = _xhrs$current[file.fileKey]) === null || _xhrs$current === void 0 ? void 0 : _xhrs$current.readyState) !== 4) {
310
- var _xhrs$current$file$fi;
311
- (_xhrs$current$file$fi = xhrs.current[file.fileKey]) === null || _xhrs$current$file$fi === void 0 || _xhrs$current$file$fi.abort();
304
+ if (xhrs.current?.[file.fileKey]?.readyState !== 4) {
305
+ xhrs.current[file.fileKey]?.abort();
312
306
  }
313
307
  dispatch({
314
308
  type: 'remove',
315
309
  fileKey
316
310
  });
317
- onRemove === null || onRemove === void 0 || onRemove(file);
318
- onChange === null || onChange === void 0 || onChange(nextFileList, event);
311
+ onRemove?.(file);
312
+ onChange?.(nextFileList, event);
319
313
  cleanInputValue();
320
314
  });
321
315
  const handleReupload = useEventCallback(file => {
322
316
  autoUpload && handleUploadFile(file);
323
- onReupload === null || onReupload === void 0 || onReupload(file);
317
+ onReupload?.(file);
324
318
  });
325
319
 
326
320
  // public API
@@ -48,7 +48,7 @@ export default function ajaxUpload(options) {
48
48
  if (timeout) {
49
49
  xhr.timeout = timeout;
50
50
  xhr.ontimeout = event => {
51
- onError === null || onError === void 0 || onError({
51
+ onError?.({
52
52
  type: 'timeout'
53
53
  }, event, xhr);
54
54
  };
@@ -59,13 +59,13 @@ export default function ajaxUpload(options) {
59
59
  xhr.onload = event => {
60
60
  const resp = getResponse(xhr);
61
61
  if (xhr.status < 200 || xhr.status >= 300) {
62
- onError === null || onError === void 0 || onError({
62
+ onError?.({
63
63
  type: 'server_error',
64
64
  response: resp
65
65
  }, event, xhr);
66
66
  return;
67
67
  }
68
- onSuccess === null || onSuccess === void 0 || onSuccess(resp, event, xhr);
68
+ onSuccess?.(resp, event, xhr);
69
69
  };
70
70
  if (xhr.upload) {
71
71
  xhr.upload.onprogress = event => {
@@ -73,11 +73,11 @@ export default function ajaxUpload(options) {
73
73
  if (event.lengthComputable) {
74
74
  percent = event.loaded / event.total * 100;
75
75
  }
76
- onProgress === null || onProgress === void 0 || onProgress(percent, event, xhr);
76
+ onProgress?.(percent, event, xhr);
77
77
  };
78
78
  }
79
79
  xhr.onerror = event => {
80
- onError === null || onError === void 0 || onError({
80
+ onError?.({
81
81
  type: 'xhr_error'
82
82
  }, event, xhr);
83
83
  };