rsuite 5.2.4 → 5.3.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.
- package/Avatar/styles/index.less +2 -2
- package/AvatarGroup/package.json +7 -0
- package/AvatarGroup/styles/index.less +19 -0
- package/ButtonGroup/styles/index.less +0 -18
- package/CHANGELOG.md +15 -0
- package/CheckTreePicker/styles/index.less +14 -1
- package/TreePicker/styles/index.less +10 -0
- package/cjs/@types/common.d.ts +9 -8
- package/cjs/@types/utils.d.ts +12 -0
- package/cjs/Affix/Affix.js +5 -5
- package/cjs/Animation/Transition.d.ts +21 -12
- package/cjs/Animation/Transition.js +4 -1
- package/cjs/AutoComplete/AutoComplete.js +1 -1
- package/cjs/AutoComplete/utils.d.ts +1 -1
- package/cjs/Avatar/Avatar.js +10 -3
- package/cjs/AvatarGroup/AvatarGroup.d.ts +15 -0
- package/cjs/AvatarGroup/AvatarGroup.js +71 -0
- package/cjs/AvatarGroup/index.d.ts +3 -0
- package/cjs/AvatarGroup/index.js +11 -0
- package/cjs/Breadcrumb/Breadcrumb.js +1 -1
- package/cjs/Button/Button.js +8 -2
- package/cjs/ButtonGroup/ButtonGroup.js +8 -2
- package/cjs/ButtonGroup/ButtonGroupContext.d.ts +7 -0
- package/cjs/ButtonGroup/ButtonGroupContext.js +13 -0
- package/cjs/ButtonGroup/index.d.ts +2 -0
- package/cjs/ButtonGroup/index.js +3 -0
- package/cjs/Calendar/Calendar.d.ts +4 -4
- package/cjs/Calendar/Calendar.js +5 -2
- package/cjs/Calendar/CalendarContext.js +1 -1
- package/cjs/Calendar/TableRow.js +1 -1
- package/cjs/Calendar/TimeDropdown.js +6 -5
- package/cjs/Calendar/types.d.ts +2 -2
- package/cjs/Calendar/useCalendarDate.d.ts +2 -2
- package/cjs/Carousel/Carousel.d.ts +1 -1
- package/cjs/Carousel/Carousel.js +1 -1
- package/cjs/Cascader/Cascader.d.ts +1 -1
- package/cjs/Cascader/Cascader.js +10 -10
- package/cjs/Cascader/DropdownMenu.d.ts +5 -4
- package/cjs/Cascader/utils.d.ts +3 -3
- package/cjs/CheckPicker/CheckPicker.js +4 -4
- package/cjs/CheckTreePicker/CheckTreeNode.d.ts +1 -1
- package/cjs/CheckTreePicker/CheckTreeNode.js +7 -9
- package/cjs/CheckTreePicker/CheckTreePicker.js +29 -25
- package/cjs/CheckTreePicker/utils.d.ts +3 -1
- package/cjs/CheckTreePicker/utils.js +12 -10
- package/cjs/Checkbox/Checkbox.d.ts +1 -1
- package/cjs/CustomProvider/CustomProvider.d.ts +31 -57
- package/cjs/DOMHelper/index.d.ts +12 -12
- package/cjs/DatePicker/DatePicker.d.ts +1 -1
- package/cjs/DatePicker/DatePicker.js +15 -9
- package/cjs/DatePicker/Toolbar.d.ts +12 -9
- package/cjs/DatePicker/Toolbar.js +6 -8
- package/cjs/DatePicker/types.d.ts +4 -4
- package/cjs/DatePicker/utils.d.ts +4 -3
- package/cjs/DateRangePicker/Calendar.d.ts +8 -7
- package/cjs/DateRangePicker/Calendar.js +1 -1
- package/cjs/DateRangePicker/DateRangePicker.d.ts +6 -6
- package/cjs/DateRangePicker/DateRangePicker.js +105 -108
- package/cjs/DateRangePicker/types.d.ts +2 -1
- package/cjs/DateRangePicker/utils.d.ts +6 -6
- package/cjs/DateRangePicker/utils.js +7 -2
- package/cjs/Disclosure/Disclosure.js +4 -2
- package/cjs/Disclosure/DisclosureButton.js +9 -7
- package/cjs/Disclosure/DisclosureContent.js +4 -6
- package/cjs/Disclosure/DisclosureContext.d.ts +2 -2
- package/cjs/Disclosure/useDisclosureContext.d.ts +2 -0
- package/cjs/Disclosure/useDisclosureContext.js +20 -0
- package/cjs/Dropdown/Dropdown.d.ts +1 -1
- package/cjs/Dropdown/DropdownContext.d.ts +2 -2
- package/cjs/Dropdown/DropdownItem.js +1 -1
- package/cjs/Dropdown/DropdownMenu.d.ts +3 -3
- package/cjs/Dropdown/DropdownState.d.ts +1 -1
- package/cjs/Dropdown/DropdownToggle.js +2 -1
- package/cjs/Dropdown/useRenderDropdownItem.d.ts +1 -1
- package/cjs/Form/Form.js +1 -1
- package/cjs/Form/FormContext.d.ts +1 -1
- package/cjs/FormControl/FormControl.d.ts +1 -1
- package/cjs/FormControl/FormControl.js +5 -4
- package/cjs/FormGroup/FormGroup.d.ts +1 -1
- package/cjs/Input/Input.d.ts +3 -2
- package/cjs/InputGroup/InputGroup.d.ts +1 -1
- package/cjs/InputNumber/InputNumber.js +6 -2
- package/cjs/InputPicker/InputAutosize.js +4 -4
- package/cjs/InputPicker/InputPicker.d.ts +2 -2
- package/cjs/InputPicker/InputPicker.js +15 -10
- package/cjs/List/ListContext.d.ts +1 -1
- package/cjs/List/ListContext.js +8 -1
- package/cjs/List/helper/AutoScroller.js +4 -2
- package/cjs/List/helper/useManager.d.ts +3 -3
- package/cjs/List/helper/useManager.js +1 -1
- package/cjs/List/helper/useSortHelper.d.ts +3 -3
- package/cjs/List/helper/useSortHelper.js +6 -4
- package/cjs/List/helper/utils.d.ts +2 -2
- package/cjs/MaskedInput/TextMask.d.ts +5 -5
- package/cjs/MaskedInput/adjustCaretPosition.d.ts +6 -6
- package/cjs/MaskedInput/conformToMask.js +5 -4
- package/cjs/MaskedInput/createTextMaskInputElement.d.ts +2 -2
- package/cjs/MaskedInput/utilities.d.ts +1 -1
- package/cjs/Menu/Menu.js +14 -7
- package/cjs/Menu/MenuContext.d.ts +1 -1
- package/cjs/Menu/MenuItem.d.ts +1 -1
- package/cjs/Menu/MenuItem.js +19 -15
- package/cjs/Menu/Menubar.js +8 -8
- package/cjs/Menu/useMenu.js +17 -7
- package/cjs/Modal/Modal.js +12 -6
- package/cjs/Modal/ModalContext.d.ts +2 -2
- package/cjs/Modal/utils.d.ts +1 -1
- package/cjs/Modal/utils.js +3 -5
- package/cjs/MultiCascader/DropdownMenu.d.ts +4 -4
- package/cjs/MultiCascader/MultiCascader.js +6 -6
- package/cjs/MultiCascader/utils.d.ts +14 -14
- package/cjs/Nav/Nav.d.ts +1 -1
- package/cjs/Nav/NavContext.d.ts +1 -1
- package/cjs/Nav/NavItem.d.ts +1 -1
- package/cjs/Navbar/Navbar.js +1 -1
- package/cjs/Navbar/NavbarItem.d.ts +1 -1
- package/cjs/Overlay/Modal.d.ts +2 -2
- package/cjs/Overlay/Modal.js +41 -31
- package/cjs/Overlay/ModalManager.d.ts +17 -8
- package/cjs/Overlay/ModalManager.js +11 -20
- package/cjs/Overlay/Overlay.d.ts +2 -2
- package/cjs/Overlay/Overlay.js +1 -1
- package/cjs/Overlay/OverlayTrigger.d.ts +11 -11
- package/cjs/Overlay/OverlayTrigger.js +14 -6
- package/cjs/Overlay/Position.d.ts +3 -3
- package/cjs/Overlay/Position.js +14 -8
- package/cjs/Overlay/positionUtils.d.ts +1 -1
- package/cjs/Overlay/positionUtils.js +8 -8
- package/cjs/Pagination/Pagination.d.ts +1 -1
- package/cjs/Pagination/PaginationButton.d.ts +3 -3
- package/cjs/Pagination/PaginationGroup.js +5 -3
- package/cjs/Panel/Panel.d.ts +1 -1
- package/cjs/Panel/Panel.js +2 -2
- package/cjs/PanelGroup/PanelGroup.d.ts +2 -2
- package/cjs/Picker/DropdownMenu.d.ts +8 -5
- package/cjs/Picker/DropdownMenu.js +5 -5
- package/cjs/Picker/PickerOverlay.js +4 -3
- package/cjs/Picker/PickerToggle.js +4 -3
- package/cjs/Picker/PickerToggleTrigger.d.ts +2 -6
- package/cjs/Picker/SearchBar.d.ts +1 -1
- package/cjs/Picker/SelectedElement.js +2 -1
- package/cjs/Picker/propTypes.d.ts +2 -2
- package/cjs/Picker/utils.d.ts +13 -13
- package/cjs/Picker/utils.js +22 -18
- package/cjs/Placeholder/PlaceholderGrid.js +1 -1
- package/cjs/Plaintext/Plaintext.js +2 -1
- package/cjs/Radio/Radio.d.ts +1 -1
- package/cjs/RadioGroup/RadioGroup.d.ts +2 -2
- package/cjs/RadioGroup/RadioGroup.js +1 -1
- package/cjs/RangeSlider/RangeSlider.d.ts +2 -2
- package/cjs/RangeSlider/RangeSlider.js +6 -4
- package/cjs/Rate/Character.js +4 -2
- package/cjs/Rate/Rate.js +2 -1
- package/cjs/Ripple/Ripple.js +1 -1
- package/cjs/SelectPicker/SelectPicker.js +4 -4
- package/cjs/Sidenav/Node.d.ts +1 -1
- package/cjs/Sidenav/Sidenav.d.ts +4 -4
- package/cjs/Sidenav/Sidenav.js +5 -2
- package/cjs/Sidenav/SidenavDropdown.js +11 -8
- package/cjs/Sidenav/SidenavDropdownItem.js +10 -5
- package/cjs/Sidenav/SidenavDropdownMenu.js +9 -5
- package/cjs/Sidenav/SidenavItem.d.ts +1 -1
- package/cjs/Sidenav/SidenavItem.js +4 -0
- package/cjs/Slider/Graduated.d.ts +5 -5
- package/cjs/Slider/Handle.d.ts +1 -1
- package/cjs/Slider/Handle.js +10 -6
- package/cjs/Slider/Mark.d.ts +1 -1
- package/cjs/Slider/Slider.d.ts +1 -1
- package/cjs/Slider/Slider.js +2 -2
- package/cjs/Slider/utils.d.ts +2 -1
- package/cjs/Slider/utils.js +4 -5
- package/cjs/Steps/StepItem.js +2 -2
- package/cjs/TagInput/index.js +1 -1
- package/cjs/Toggle/Toggle.js +1 -1
- package/cjs/Tree/Tree.d.ts +3 -1
- package/cjs/TreePicker/TreeNode.js +6 -8
- package/cjs/TreePicker/TreePicker.js +31 -25
- package/cjs/Uploader/UploadFileItem.d.ts +1 -1
- package/cjs/Uploader/UploadFileItem.js +2 -2
- package/cjs/Uploader/UploadTrigger.d.ts +1 -1
- package/cjs/Uploader/UploadTrigger.js +2 -3
- package/cjs/Uploader/Uploader.d.ts +5 -5
- package/cjs/Uploader/Uploader.js +1 -2
- package/cjs/index.d.ts +2 -0
- package/cjs/index.js +5 -1
- package/cjs/locales/index.d.ts +3 -3
- package/cjs/toaster/ToastContainer.d.ts +1 -1
- package/cjs/toaster/ToastContainer.js +1 -1
- package/cjs/toaster/toaster.js +3 -1
- package/cjs/utils/BrowserDetection.js +1 -1
- package/cjs/utils/ReactChildren.d.ts +2 -2
- package/cjs/utils/ajaxUpload.d.ts +1 -1
- package/cjs/utils/ajaxUpload.js +5 -4
- package/cjs/utils/appendTooltip.d.ts +1 -1
- package/cjs/utils/constants.d.ts +4 -4
- package/cjs/utils/createChainedFunction.d.ts +1 -1
- package/cjs/utils/getDataGroupBy.d.ts +1 -1
- package/cjs/utils/mergeRefs.d.ts +2 -2
- package/cjs/utils/previewFile.d.ts +1 -1
- package/cjs/utils/propTypeChecker.d.ts +6 -2
- package/cjs/utils/propTypeChecker.js +7 -6
- package/cjs/utils/reactToString.d.ts +2 -1
- package/cjs/utils/statusIcons.d.ts +1 -1
- package/cjs/utils/stringToObject.d.ts +1 -1
- package/cjs/utils/treeUtils.d.ts +32 -29
- package/cjs/utils/treeUtils.js +46 -23
- package/cjs/utils/useControlled.d.ts +6 -1
- package/cjs/utils/useControlled.js +0 -8
- package/cjs/utils/useCustom.js +6 -4
- package/cjs/utils/useFocus.d.ts +2 -2
- package/cjs/utils/usePortal.d.ts +1 -1
- package/cjs/utils/useRootClose.d.ts +2 -2
- package/cjs/utils/useTimeout.d.ts +1 -1
- package/cjs/utils/useTimeout.js +5 -3
- package/dist/rsuite-rtl.css +40 -159
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +40 -159
- package/dist/rsuite.js +146 -102
- package/dist/rsuite.js.map +1 -1
- package/dist/rsuite.min.css +1 -1
- package/dist/rsuite.min.css.map +1 -1
- package/dist/rsuite.min.js +1 -1
- package/dist/rsuite.min.js.map +1 -1
- package/esm/@types/common.d.ts +9 -8
- package/esm/@types/utils.d.ts +12 -0
- package/esm/Affix/Affix.js +5 -5
- package/esm/Animation/Transition.d.ts +21 -12
- package/esm/Animation/Transition.js +4 -1
- package/esm/AutoComplete/AutoComplete.js +1 -1
- package/esm/AutoComplete/utils.d.ts +1 -1
- package/esm/Avatar/Avatar.js +7 -3
- package/esm/AvatarGroup/AvatarGroup.d.ts +15 -0
- package/esm/AvatarGroup/AvatarGroup.js +54 -0
- package/esm/AvatarGroup/index.d.ts +3 -0
- package/esm/AvatarGroup/index.js +2 -0
- package/esm/Breadcrumb/Breadcrumb.js +1 -1
- package/esm/Button/Button.js +6 -2
- package/esm/ButtonGroup/ButtonGroup.js +7 -2
- package/esm/ButtonGroup/ButtonGroupContext.d.ts +7 -0
- package/esm/ButtonGroup/ButtonGroupContext.js +3 -0
- package/esm/ButtonGroup/index.d.ts +2 -0
- package/esm/ButtonGroup/index.js +2 -0
- package/esm/Calendar/Calendar.d.ts +4 -4
- package/esm/Calendar/Calendar.js +5 -2
- package/esm/Calendar/CalendarContext.js +1 -1
- package/esm/Calendar/TableRow.js +1 -1
- package/esm/Calendar/TimeDropdown.js +5 -4
- package/esm/Calendar/types.d.ts +2 -2
- package/esm/Calendar/useCalendarDate.d.ts +2 -2
- package/esm/Carousel/Carousel.d.ts +1 -1
- package/esm/Carousel/Carousel.js +1 -1
- package/esm/Cascader/Cascader.d.ts +1 -1
- package/esm/Cascader/Cascader.js +10 -10
- package/esm/Cascader/DropdownMenu.d.ts +5 -4
- package/esm/Cascader/utils.d.ts +3 -3
- package/esm/CheckPicker/CheckPicker.js +4 -4
- package/esm/CheckTreePicker/CheckTreeNode.d.ts +1 -1
- package/esm/CheckTreePicker/CheckTreeNode.js +4 -7
- package/esm/CheckTreePicker/CheckTreePicker.js +28 -23
- package/esm/CheckTreePicker/utils.d.ts +3 -1
- package/esm/CheckTreePicker/utils.js +12 -10
- package/esm/Checkbox/Checkbox.d.ts +1 -1
- package/esm/CustomProvider/CustomProvider.d.ts +31 -57
- package/esm/DOMHelper/index.d.ts +12 -12
- package/esm/DatePicker/DatePicker.d.ts +1 -1
- package/esm/DatePicker/DatePicker.js +14 -9
- package/esm/DatePicker/Toolbar.d.ts +12 -9
- package/esm/DatePicker/Toolbar.js +6 -8
- package/esm/DatePicker/types.d.ts +4 -4
- package/esm/DatePicker/utils.d.ts +4 -3
- package/esm/DateRangePicker/Calendar.d.ts +8 -7
- package/esm/DateRangePicker/Calendar.js +1 -1
- package/esm/DateRangePicker/DateRangePicker.d.ts +6 -6
- package/esm/DateRangePicker/DateRangePicker.js +105 -108
- package/esm/DateRangePicker/types.d.ts +2 -1
- package/esm/DateRangePicker/utils.d.ts +6 -6
- package/esm/DateRangePicker/utils.js +6 -2
- package/esm/Disclosure/Disclosure.js +4 -2
- package/esm/Disclosure/DisclosureButton.js +8 -7
- package/esm/Disclosure/DisclosureContent.js +5 -7
- package/esm/Disclosure/DisclosureContext.d.ts +2 -2
- package/esm/Disclosure/useDisclosureContext.d.ts +2 -0
- package/esm/Disclosure/useDisclosureContext.js +11 -0
- package/esm/Dropdown/Dropdown.d.ts +1 -1
- package/esm/Dropdown/DropdownContext.d.ts +2 -2
- package/esm/Dropdown/DropdownItem.js +1 -1
- package/esm/Dropdown/DropdownMenu.d.ts +3 -3
- package/esm/Dropdown/DropdownState.d.ts +1 -1
- package/esm/Dropdown/DropdownToggle.js +2 -1
- package/esm/Dropdown/useRenderDropdownItem.d.ts +1 -1
- package/esm/Form/Form.js +1 -1
- package/esm/Form/FormContext.d.ts +1 -1
- package/esm/FormControl/FormControl.d.ts +1 -1
- package/esm/FormControl/FormControl.js +5 -4
- package/esm/FormGroup/FormGroup.d.ts +1 -1
- package/esm/Input/Input.d.ts +3 -2
- package/esm/InputGroup/InputGroup.d.ts +1 -1
- package/esm/InputNumber/InputNumber.js +6 -2
- package/esm/InputPicker/InputAutosize.js +4 -4
- package/esm/InputPicker/InputPicker.d.ts +2 -2
- package/esm/InputPicker/InputPicker.js +15 -10
- package/esm/List/ListContext.d.ts +1 -1
- package/esm/List/ListContext.js +7 -1
- package/esm/List/helper/AutoScroller.js +4 -2
- package/esm/List/helper/useManager.d.ts +3 -3
- package/esm/List/helper/useManager.js +1 -1
- package/esm/List/helper/useSortHelper.d.ts +3 -3
- package/esm/List/helper/useSortHelper.js +6 -4
- package/esm/List/helper/utils.d.ts +2 -2
- package/esm/MaskedInput/TextMask.d.ts +5 -5
- package/esm/MaskedInput/adjustCaretPosition.d.ts +6 -6
- package/esm/MaskedInput/conformToMask.js +5 -4
- package/esm/MaskedInput/createTextMaskInputElement.d.ts +2 -2
- package/esm/MaskedInput/utilities.d.ts +1 -1
- package/esm/Menu/Menu.js +13 -7
- package/esm/Menu/MenuContext.d.ts +1 -1
- package/esm/Menu/MenuItem.d.ts +1 -1
- package/esm/Menu/MenuItem.js +18 -15
- package/esm/Menu/Menubar.js +7 -8
- package/esm/Menu/useMenu.js +17 -7
- package/esm/Modal/Modal.js +12 -6
- package/esm/Modal/ModalContext.d.ts +2 -2
- package/esm/Modal/utils.d.ts +1 -1
- package/esm/Modal/utils.js +3 -5
- package/esm/MultiCascader/DropdownMenu.d.ts +4 -4
- package/esm/MultiCascader/MultiCascader.js +6 -6
- package/esm/MultiCascader/utils.d.ts +14 -14
- package/esm/Nav/Nav.d.ts +1 -1
- package/esm/Nav/NavContext.d.ts +1 -1
- package/esm/Nav/NavItem.d.ts +1 -1
- package/esm/Navbar/Navbar.js +1 -1
- package/esm/Navbar/NavbarItem.d.ts +1 -1
- package/esm/Overlay/Modal.d.ts +2 -2
- package/esm/Overlay/Modal.js +42 -32
- package/esm/Overlay/ModalManager.d.ts +17 -8
- package/esm/Overlay/ModalManager.js +11 -20
- package/esm/Overlay/Overlay.d.ts +2 -2
- package/esm/Overlay/Overlay.js +1 -1
- package/esm/Overlay/OverlayTrigger.d.ts +11 -11
- package/esm/Overlay/OverlayTrigger.js +14 -6
- package/esm/Overlay/Position.d.ts +3 -3
- package/esm/Overlay/Position.js +14 -8
- package/esm/Overlay/positionUtils.d.ts +1 -1
- package/esm/Overlay/positionUtils.js +6 -6
- package/esm/Pagination/Pagination.d.ts +1 -1
- package/esm/Pagination/PaginationButton.d.ts +3 -3
- package/esm/Pagination/PaginationGroup.js +5 -3
- package/esm/Panel/Panel.d.ts +1 -1
- package/esm/Panel/Panel.js +2 -2
- package/esm/PanelGroup/PanelGroup.d.ts +2 -2
- package/esm/Picker/DropdownMenu.d.ts +8 -5
- package/esm/Picker/DropdownMenu.js +5 -5
- package/esm/Picker/PickerOverlay.js +4 -3
- package/esm/Picker/PickerToggle.js +4 -3
- package/esm/Picker/PickerToggleTrigger.d.ts +2 -6
- package/esm/Picker/SearchBar.d.ts +1 -1
- package/esm/Picker/SelectedElement.js +2 -1
- package/esm/Picker/propTypes.d.ts +2 -2
- package/esm/Picker/utils.d.ts +13 -13
- package/esm/Picker/utils.js +21 -18
- package/esm/Placeholder/PlaceholderGrid.js +1 -1
- package/esm/Plaintext/Plaintext.js +2 -1
- package/esm/Radio/Radio.d.ts +1 -1
- package/esm/RadioGroup/RadioGroup.d.ts +2 -2
- package/esm/RadioGroup/RadioGroup.js +1 -1
- package/esm/RangeSlider/RangeSlider.d.ts +2 -2
- package/esm/RangeSlider/RangeSlider.js +5 -4
- package/esm/Rate/Character.js +3 -2
- package/esm/Rate/Rate.js +2 -1
- package/esm/Ripple/Ripple.js +1 -1
- package/esm/SelectPicker/SelectPicker.js +4 -4
- package/esm/Sidenav/Node.d.ts +1 -1
- package/esm/Sidenav/Sidenav.d.ts +4 -4
- package/esm/Sidenav/Sidenav.js +5 -2
- package/esm/Sidenav/SidenavDropdown.js +11 -7
- package/esm/Sidenav/SidenavDropdownItem.js +11 -5
- package/esm/Sidenav/SidenavDropdownMenu.js +9 -5
- package/esm/Sidenav/SidenavItem.d.ts +1 -1
- package/esm/Sidenav/SidenavItem.js +4 -0
- package/esm/Slider/Graduated.d.ts +5 -5
- package/esm/Slider/Handle.d.ts +1 -1
- package/esm/Slider/Handle.js +10 -6
- package/esm/Slider/Mark.d.ts +1 -1
- package/esm/Slider/Slider.d.ts +1 -1
- package/esm/Slider/Slider.js +2 -2
- package/esm/Slider/utils.d.ts +2 -1
- package/esm/Slider/utils.js +5 -2
- package/esm/Steps/StepItem.js +2 -2
- package/esm/TagInput/index.js +1 -1
- package/esm/Toggle/Toggle.js +1 -1
- package/esm/Tree/Tree.d.ts +3 -1
- package/esm/TreePicker/TreeNode.js +4 -7
- package/esm/TreePicker/TreePicker.js +30 -23
- package/esm/Uploader/UploadFileItem.d.ts +1 -1
- package/esm/Uploader/UploadFileItem.js +2 -2
- package/esm/Uploader/UploadTrigger.d.ts +1 -1
- package/esm/Uploader/UploadTrigger.js +2 -3
- package/esm/Uploader/Uploader.d.ts +5 -5
- package/esm/Uploader/Uploader.js +1 -2
- package/esm/index.d.ts +2 -0
- package/esm/index.js +1 -0
- package/esm/locales/index.d.ts +3 -3
- package/esm/toaster/ToastContainer.d.ts +1 -1
- package/esm/toaster/ToastContainer.js +1 -1
- package/esm/toaster/toaster.js +3 -1
- package/esm/utils/BrowserDetection.js +1 -1
- package/esm/utils/ReactChildren.d.ts +2 -2
- package/esm/utils/ajaxUpload.d.ts +1 -1
- package/esm/utils/ajaxUpload.js +5 -4
- package/esm/utils/appendTooltip.d.ts +1 -1
- package/esm/utils/constants.d.ts +4 -4
- package/esm/utils/createChainedFunction.d.ts +1 -1
- package/esm/utils/getDataGroupBy.d.ts +1 -1
- package/esm/utils/mergeRefs.d.ts +2 -2
- package/esm/utils/previewFile.d.ts +1 -1
- package/esm/utils/propTypeChecker.d.ts +6 -2
- package/esm/utils/propTypeChecker.js +7 -6
- package/esm/utils/reactToString.d.ts +2 -1
- package/esm/utils/statusIcons.d.ts +1 -1
- package/esm/utils/stringToObject.d.ts +1 -1
- package/esm/utils/treeUtils.d.ts +32 -29
- package/esm/utils/treeUtils.js +45 -21
- package/esm/utils/useControlled.d.ts +6 -1
- package/esm/utils/useControlled.js +0 -8
- package/esm/utils/useCustom.js +6 -4
- package/esm/utils/useFocus.d.ts +2 -2
- package/esm/utils/usePortal.d.ts +1 -1
- package/esm/utils/useRootClose.d.ts +2 -2
- package/esm/utils/useTimeout.d.ts +1 -1
- package/esm/utils/useTimeout.js +5 -3
- package/package.json +2 -2
- package/styles/index.less +1 -0
|
@@ -13,7 +13,7 @@ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runt
|
|
|
13
13
|
|
|
14
14
|
var _Calendar = _interopRequireDefault(require("@rsuite/icons/legacy/Calendar"));
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _isNil = _interopRequireDefault(require("lodash/isNil"));
|
|
17
17
|
|
|
18
18
|
var _omit = _interopRequireDefault(require("lodash/omit"));
|
|
19
19
|
|
|
@@ -42,7 +42,7 @@ var disabledDateUtils = _interopRequireWildcard(require("./disabledDateUtils"));
|
|
|
42
42
|
var _utils2 = require("./utils");
|
|
43
43
|
|
|
44
44
|
var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
45
|
-
var _ref, _merge;
|
|
45
|
+
var _ref, _ref2, _merge;
|
|
46
46
|
|
|
47
47
|
var _props$as = props.as,
|
|
48
48
|
Component = _props$as === void 0 ? 'div' : _props$as,
|
|
@@ -62,7 +62,8 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
62
62
|
_props$format = props.format,
|
|
63
63
|
formatStr = _props$format === void 0 ? 'yyyy-MM-dd' : _props$format,
|
|
64
64
|
hoverRange = props.hoverRange,
|
|
65
|
-
isoWeek = props.isoWeek,
|
|
65
|
+
_props$isoWeek = props.isoWeek,
|
|
66
|
+
isoWeek = _props$isoWeek === void 0 ? false : _props$isoWeek,
|
|
66
67
|
_props$limitEndYear = props.limitEndYear,
|
|
67
68
|
limitEndYear = _props$limitEndYear === void 0 ? 1000 : _props$limitEndYear,
|
|
68
69
|
overrideLocale = props.locale,
|
|
@@ -104,7 +105,7 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
104
105
|
|
|
105
106
|
var rangeFormatStr = "" + formatStr + character + formatStr;
|
|
106
107
|
|
|
107
|
-
var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue !== null && defaultValue !== void 0 ? defaultValue :
|
|
108
|
+
var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue !== null && defaultValue !== void 0 ? defaultValue : null),
|
|
108
109
|
value = _useControlled[0],
|
|
109
110
|
setValue = _useControlled[1];
|
|
110
111
|
/**
|
|
@@ -126,17 +127,17 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
126
127
|
*/
|
|
127
128
|
|
|
128
129
|
var _useState = (0, _react.useState)((_ref = valueProp !== null && valueProp !== void 0 ? valueProp : defaultValue) !== null && _ref !== void 0 ? _ref : []),
|
|
129
|
-
|
|
130
|
-
|
|
130
|
+
selectedDates = _useState[0],
|
|
131
|
+
setSelectedDates = _useState[1]; // The date of the current hover, used to reduce the calculation of `handleMouseMove`
|
|
131
132
|
|
|
132
133
|
|
|
133
|
-
var _useState2 = (0, _react.useState)(
|
|
134
|
-
|
|
135
|
-
|
|
134
|
+
var _useState2 = (0, _react.useState)(null),
|
|
135
|
+
hoverDateRange = _useState2[0],
|
|
136
|
+
setHoverDateRange = _useState2[1]; // The displayed calendar panel is rendered based on this value.
|
|
136
137
|
|
|
137
138
|
|
|
138
139
|
var _useState3 = (0, _react.useState)((0, _utils2.getCalendarDate)({
|
|
139
|
-
value: valueProp !== null && valueProp !== void 0 ? valueProp : defaultCalendarValue
|
|
140
|
+
value: (_ref2 = valueProp !== null && valueProp !== void 0 ? valueProp : defaultCalendarValue) !== null && _ref2 !== void 0 ? _ref2 : null
|
|
140
141
|
})),
|
|
141
142
|
calendarDate = _useState3[0],
|
|
142
143
|
setCalendarDate = _useState3[1];
|
|
@@ -164,18 +165,18 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
164
165
|
}, []); // if valueProp changed then update selectValue/hoverValue
|
|
165
166
|
|
|
166
167
|
(0, _react.useEffect)(function () {
|
|
167
|
-
|
|
168
|
-
|
|
168
|
+
setSelectedDates(valueProp !== null && valueProp !== void 0 ? valueProp : []);
|
|
169
|
+
setHoverDateRange(valueProp !== null && valueProp !== void 0 ? valueProp : null);
|
|
169
170
|
}, [valueProp]);
|
|
170
171
|
|
|
171
172
|
var _useState5 = (0, _react.useState)(false),
|
|
172
173
|
isPickerToggleActive = _useState5[0],
|
|
173
174
|
setPickerToggleActive = _useState5[1];
|
|
174
175
|
|
|
175
|
-
var rootRef = (0, _react.useRef)();
|
|
176
|
-
var overlayRef = (0, _react.useRef)();
|
|
177
|
-
var targetRef = (0, _react.useRef)();
|
|
178
|
-
var triggerRef = (0, _react.useRef)();
|
|
176
|
+
var rootRef = (0, _react.useRef)(null);
|
|
177
|
+
var overlayRef = (0, _react.useRef)(null);
|
|
178
|
+
var targetRef = (0, _react.useRef)(null);
|
|
179
|
+
var triggerRef = (0, _react.useRef)(null);
|
|
179
180
|
var handleCloseDropdown = (0, _react.useCallback)(function () {
|
|
180
181
|
var _triggerRef$current, _triggerRef$current$c;
|
|
181
182
|
|
|
@@ -188,14 +189,10 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
188
189
|
rootRef: rootRef
|
|
189
190
|
});
|
|
190
191
|
var getDisplayString = (0, _react.useCallback)(function (nextValue, isPlaintext) {
|
|
191
|
-
var _nextValue
|
|
192
|
+
var _nextValue$, _nextValue$2;
|
|
192
193
|
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
var startDate = (_nextValue = nextValue) === null || _nextValue === void 0 ? void 0 : _nextValue[0];
|
|
198
|
-
var endDate = (_nextValue2 = nextValue) === null || _nextValue2 === void 0 ? void 0 : _nextValue2[1];
|
|
194
|
+
var startDate = (_nextValue$ = nextValue === null || nextValue === void 0 ? void 0 : nextValue[0]) !== null && _nextValue$ !== void 0 ? _nextValue$ : null;
|
|
195
|
+
var endDate = (_nextValue$2 = nextValue === null || nextValue === void 0 ? void 0 : nextValue[1]) !== null && _nextValue$2 !== void 0 ? _nextValue$2 : null;
|
|
199
196
|
|
|
200
197
|
if (startDate && endDate) {
|
|
201
198
|
var displayValue = [startDate, endDate].sort(_dateUtils.compareAsc);
|
|
@@ -220,29 +217,27 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
220
217
|
*/
|
|
221
218
|
|
|
222
219
|
var getHoverRangeValue = (0, _react.useCallback)(function (date) {
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
220
|
+
function getHoverRangeFunc() {
|
|
221
|
+
if (hoverRange === 'week') {
|
|
222
|
+
return (0, _partial.default)(_utils2.getWeekHoverRange, isoWeek);
|
|
223
|
+
} else if (hoverRange === 'month') {
|
|
224
|
+
return _utils2.getMonthHoverRange;
|
|
225
|
+
}
|
|
228
226
|
|
|
229
|
-
|
|
230
|
-
hoverRangeFunc = (0, _partial.default)(_utils2.getWeekHoverRange, isoWeek);
|
|
227
|
+
return hoverRange;
|
|
231
228
|
}
|
|
232
229
|
|
|
233
|
-
|
|
234
|
-
hoverRangeFunc = _utils2.getMonthHoverRange;
|
|
235
|
-
}
|
|
230
|
+
var hoverRangeFunc = getHoverRangeFunc();
|
|
236
231
|
|
|
237
|
-
if (
|
|
238
|
-
return
|
|
232
|
+
if ((0, _isNil.default)(hoverRangeFunc)) {
|
|
233
|
+
return null;
|
|
239
234
|
}
|
|
240
235
|
|
|
241
236
|
var hoverValues = hoverRangeFunc(date);
|
|
242
237
|
var isHoverRangeValid = hoverValues instanceof Array && hoverValues.length === 2;
|
|
243
238
|
|
|
244
239
|
if (!isHoverRangeValid) {
|
|
245
|
-
return
|
|
240
|
+
return null;
|
|
246
241
|
}
|
|
247
242
|
|
|
248
243
|
if (_utils.DateUtils.isAfter(hoverValues[0], hoverValues[1])) {
|
|
@@ -251,13 +246,13 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
251
246
|
|
|
252
247
|
return hoverValues;
|
|
253
248
|
}, [hoverRange, isoWeek]);
|
|
254
|
-
var handleValueUpdate = (0, _react.useCallback)(function (event,
|
|
249
|
+
var handleValueUpdate = (0, _react.useCallback)(function (event, nextValue, closeOverlay) {
|
|
255
250
|
if (closeOverlay === void 0) {
|
|
256
251
|
closeOverlay = true;
|
|
257
252
|
}
|
|
258
253
|
|
|
259
|
-
|
|
260
|
-
|
|
254
|
+
// If nextValue is null, it means that the user is erasing the selected dates.
|
|
255
|
+
setSelectedDates(nextValue !== null && nextValue !== void 0 ? nextValue : []);
|
|
261
256
|
|
|
262
257
|
if (!(0, _utils2.isSameRange)(nextValue, value, formatStr)) {
|
|
263
258
|
setValue(nextValue);
|
|
@@ -268,40 +263,41 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
268
263
|
if (closeOverlay !== false) {
|
|
269
264
|
handleCloseDropdown();
|
|
270
265
|
}
|
|
271
|
-
}, [formatStr, handleCloseDropdown, onChange,
|
|
266
|
+
}, [formatStr, handleCloseDropdown, onChange, selectedDates, setValue, value]);
|
|
272
267
|
/**
|
|
273
268
|
* Select the date range. If oneTap is not set, you need to click twice to select the start time and end time.
|
|
274
269
|
* The MouseMove event is called between the first click and the second click to update the selection state.
|
|
275
270
|
*/
|
|
276
271
|
|
|
277
272
|
var handleMouseMove = (0, _react.useCallback)(function (date) {
|
|
278
|
-
var
|
|
273
|
+
var nextHoverDateRange = getHoverRangeValue(date); // If hasDoneSelect is false,
|
|
274
|
+
// it means there's already one selected date
|
|
275
|
+
// and waiting for user to select the second date to complete the selection.
|
|
279
276
|
|
|
280
277
|
if (!hasDoneSelect.current) {
|
|
281
|
-
// If hoverRange is set, you need to change the value of
|
|
282
|
-
if (
|
|
283
|
-
var
|
|
278
|
+
// If `hoverRange` is set, you need to change the value of hoverDateRange according to the rules
|
|
279
|
+
if (!(0, _isNil.default)(nextHoverDateRange)) {
|
|
280
|
+
var nextSelectedDates = [selectRangeValueRef.current[0], nextHoverDateRange[1]];
|
|
284
281
|
|
|
285
|
-
if (_utils.DateUtils.isBefore(
|
|
286
|
-
|
|
287
|
-
nextHoverValue[1] = selectRangeValueRef.current[1];
|
|
282
|
+
if (_utils.DateUtils.isBefore(nextHoverDateRange[0], selectRangeValueRef.current[0])) {
|
|
283
|
+
nextSelectedDates = [nextHoverDateRange[0], selectRangeValueRef.current[1]];
|
|
288
284
|
}
|
|
289
285
|
|
|
290
|
-
|
|
286
|
+
setSelectedDates(nextSelectedDates);
|
|
291
287
|
} else {
|
|
292
|
-
|
|
293
|
-
return [prevHoverValue[0], date];
|
|
288
|
+
setHoverDateRange(function (prevHoverValue) {
|
|
289
|
+
return (0, _isNil.default)(prevHoverValue) ? null : [prevHoverValue[0], date];
|
|
294
290
|
});
|
|
295
|
-
} // Before the first click, if
|
|
291
|
+
} // Before the first click, if nextHoverDateRange has a value, hoverDateRange needs to be updated
|
|
296
292
|
|
|
297
|
-
} else if (
|
|
298
|
-
|
|
293
|
+
} else if (!(0, _isNil.default)(nextHoverDateRange)) {
|
|
294
|
+
setHoverDateRange(nextHoverDateRange);
|
|
299
295
|
}
|
|
300
296
|
}, [getHoverRangeValue, hoverRange]);
|
|
301
|
-
var
|
|
302
|
-
var
|
|
297
|
+
var handleSelectDate = (0, _react.useCallback)(function (date, event) {
|
|
298
|
+
var nextSelectDates = hoverDateRange !== null && hoverDateRange !== void 0 ? hoverDateRange : [];
|
|
303
299
|
var hoverRangeValue = getHoverRangeValue(date);
|
|
304
|
-
var noHoverRangeValid = hoverRangeValue
|
|
300
|
+
var noHoverRangeValid = (0, _isNil.default)(hoverRangeValue); // in `oneTap` mode
|
|
305
301
|
|
|
306
302
|
if (hasDoneSelect.current && oneTap) {
|
|
307
303
|
handleValueUpdate(event, noHoverRangeValid ? [(0, _utils2.setTimingMargin)(date), (0, _utils2.setTimingMargin)(date, 'right')] : hoverRangeValue);
|
|
@@ -313,32 +309,32 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
313
309
|
if (noHoverRangeValid) {
|
|
314
310
|
// start select
|
|
315
311
|
if (hasDoneSelect.current) {
|
|
316
|
-
|
|
312
|
+
nextSelectDates = [date];
|
|
317
313
|
} else {
|
|
318
314
|
// finish select
|
|
319
|
-
|
|
315
|
+
nextSelectDates[1] = date;
|
|
320
316
|
}
|
|
321
317
|
} else {
|
|
322
318
|
if (!hasDoneSelect.current) {
|
|
323
|
-
|
|
319
|
+
nextSelectDates = selectedDates;
|
|
324
320
|
selectRangeValueRef.current = null;
|
|
325
321
|
} else {
|
|
326
|
-
|
|
322
|
+
nextSelectDates = hoverRangeValue;
|
|
327
323
|
selectRangeValueRef.current = hoverRangeValue;
|
|
328
324
|
}
|
|
329
325
|
} // If user have completed the selection, then sort
|
|
330
326
|
|
|
331
327
|
|
|
332
|
-
if (
|
|
333
|
-
|
|
328
|
+
if (nextSelectDates.length === 2 && _utils.DateUtils.isAfter(nextSelectDates[0], nextSelectDates[1])) {
|
|
329
|
+
nextSelectDates.reverse();
|
|
334
330
|
}
|
|
335
331
|
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
updateCalendarDate(
|
|
332
|
+
setHoverDateRange(nextSelectDates.length === 2 ? nextSelectDates : null);
|
|
333
|
+
setSelectedDates(nextSelectDates);
|
|
334
|
+
updateCalendarDate(nextSelectDates);
|
|
339
335
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(date, event);
|
|
340
336
|
hasDoneSelect.current = !hasDoneSelect.current;
|
|
341
|
-
}, [getHoverRangeValue, handleValueUpdate,
|
|
337
|
+
}, [getHoverRangeValue, handleValueUpdate, hoverDateRange, onSelect, oneTap, selectedDates, updateCalendarDate]);
|
|
342
338
|
/**
|
|
343
339
|
* If `selectValue` changed, there will be the following effects.
|
|
344
340
|
* 1. Check if the selection is completed.
|
|
@@ -346,19 +342,17 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
346
342
|
*/
|
|
347
343
|
|
|
348
344
|
(0, _react.useEffect)(function () {
|
|
349
|
-
var
|
|
350
|
-
|
|
351
|
-
var selectValueLength = (_selectValue$length = selectValue === null || selectValue === void 0 ? void 0 : selectValue.length) !== null && _selectValue$length !== void 0 ? _selectValue$length : 0;
|
|
345
|
+
var selectValueLength = selectedDates.length;
|
|
352
346
|
var doneSelected = selectValueLength === 0 || selectValueLength === 2;
|
|
353
|
-
doneSelected &&
|
|
354
|
-
}, [
|
|
347
|
+
doneSelected && setHoverDateRange(null);
|
|
348
|
+
}, [selectedDates]);
|
|
355
349
|
var handleChangeCalendarDate = (0, _react.useCallback)(function (index, date) {
|
|
356
350
|
var nextCalendarDate = Array.from(calendarDate);
|
|
357
351
|
nextCalendarDate[index] = date;
|
|
358
352
|
updateCalendarDate(nextCalendarDate);
|
|
359
353
|
}, [calendarDate, updateCalendarDate]);
|
|
360
354
|
var handleChangeCalendarTime = (0, _react.useCallback)(function (index, date) {
|
|
361
|
-
|
|
355
|
+
setSelectedDates(function (prev) {
|
|
362
356
|
var next = [].concat(prev);
|
|
363
357
|
var clonedDate = new Date(date.valueOf()); // if next[index] is not empty, only update the time after aligning the year, month and day
|
|
364
358
|
|
|
@@ -385,24 +379,28 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
385
379
|
next[index] = _utils.DateUtils.setHours(clonedDate, nextHours);
|
|
386
380
|
setCalendarDate(next); // If the value already exists, update the value again.
|
|
387
381
|
|
|
388
|
-
if (
|
|
389
|
-
|
|
382
|
+
if (selectedDates.length === 2) {
|
|
383
|
+
setSelectedDates(next);
|
|
390
384
|
}
|
|
391
|
-
}, [calendarDate,
|
|
385
|
+
}, [calendarDate, selectedDates]);
|
|
392
386
|
/**
|
|
393
387
|
* Toolbar operation callback function
|
|
394
388
|
*/
|
|
395
389
|
|
|
396
390
|
var handleShortcutPageDate = (0, _react.useCallback)(function (value, closeOverlay, event) {
|
|
391
|
+
if (closeOverlay === void 0) {
|
|
392
|
+
closeOverlay = false;
|
|
393
|
+
}
|
|
394
|
+
|
|
397
395
|
handleValueUpdate(event, value, closeOverlay);
|
|
398
396
|
}, [handleValueUpdate]);
|
|
399
397
|
var handleOK = (0, _react.useCallback)(function (event) {
|
|
400
|
-
handleValueUpdate(event);
|
|
401
|
-
onOk === null || onOk === void 0 ? void 0 : onOk(
|
|
402
|
-
}, [handleValueUpdate, onOk,
|
|
398
|
+
handleValueUpdate(event, selectedDates);
|
|
399
|
+
onOk === null || onOk === void 0 ? void 0 : onOk(selectedDates, event);
|
|
400
|
+
}, [handleValueUpdate, onOk, selectedDates]);
|
|
403
401
|
var handleClean = (0, _react.useCallback)(function (event) {
|
|
404
|
-
updateCalendarDate();
|
|
405
|
-
handleValueUpdate(event,
|
|
402
|
+
updateCalendarDate(null);
|
|
403
|
+
handleValueUpdate(event, null);
|
|
406
404
|
}, [handleValueUpdate, updateCalendarDate]);
|
|
407
405
|
/**
|
|
408
406
|
* Callback after the input box value is changed.
|
|
@@ -431,13 +429,13 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
431
429
|
return;
|
|
432
430
|
}
|
|
433
431
|
|
|
434
|
-
if (
|
|
432
|
+
if (isDateDisabled(startDate, selectValue, true, _utils.DATERANGE_DISABLED_TARGET.CALENDAR)) {
|
|
435
433
|
setInputState('Error');
|
|
436
434
|
return;
|
|
437
435
|
}
|
|
438
436
|
|
|
439
|
-
|
|
440
|
-
|
|
437
|
+
setHoverDateRange(selectValue);
|
|
438
|
+
setSelectedDates(selectValue);
|
|
441
439
|
updateCalendarDate(selectValue);
|
|
442
440
|
}, // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
443
441
|
[character, rangeFormatStr, updateCalendarDate]);
|
|
@@ -447,11 +445,11 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
447
445
|
|
|
448
446
|
var handleInputPressEnd = (0, _react.useCallback)(function (event) {
|
|
449
447
|
if (inputState === 'Typing') {
|
|
450
|
-
handleValueUpdate(event,
|
|
448
|
+
handleValueUpdate(event, selectedDates.length === 2 ? selectedDates : null);
|
|
451
449
|
}
|
|
452
450
|
|
|
453
451
|
setInputState('Initial');
|
|
454
|
-
}, [handleValueUpdate,
|
|
452
|
+
}, [handleValueUpdate, selectedDates, inputState]);
|
|
455
453
|
var handleEnter = (0, _react.useCallback)(function () {
|
|
456
454
|
var nextCalendarDate;
|
|
457
455
|
|
|
@@ -461,13 +459,13 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
461
459
|
nextCalendarDate = [_startDate, (0, _dateUtils.isSameMonth)(_startDate, endData) ? (0, _dateUtils.addMonths)(endData, 1) : endData];
|
|
462
460
|
} else {
|
|
463
461
|
nextCalendarDate = (0, _utils2.getCalendarDate)({
|
|
464
|
-
value: defaultCalendarValue
|
|
462
|
+
value: defaultCalendarValue !== null && defaultCalendarValue !== void 0 ? defaultCalendarValue : null
|
|
465
463
|
});
|
|
466
464
|
}
|
|
467
465
|
|
|
468
|
-
|
|
466
|
+
setSelectedDates(value !== null && value !== void 0 ? value : []);
|
|
469
467
|
updateCalendarDate(nextCalendarDate);
|
|
470
|
-
}, [defaultCalendarValue, updateCalendarDate,
|
|
468
|
+
}, [defaultCalendarValue, updateCalendarDate, setSelectedDates, value]);
|
|
471
469
|
var handleEntered = (0, _react.useCallback)(function () {
|
|
472
470
|
onOpen === null || onOpen === void 0 ? void 0 : onOpen();
|
|
473
471
|
setPickerToggleActive(true);
|
|
@@ -477,17 +475,16 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
477
475
|
hasDoneSelect.current = true;
|
|
478
476
|
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
479
477
|
}, [onClose]);
|
|
480
|
-
var
|
|
481
|
-
|
|
478
|
+
var isDateDisabled = (0, _react.useCallback)(function (date, selectDate, selectedDone, target) {
|
|
479
|
+
var _disabledDateProp;
|
|
480
|
+
|
|
481
|
+
return (_disabledDateProp = disabledDateProp === null || disabledDateProp === void 0 ? void 0 : disabledDateProp(date, selectDate, selectedDone, target)) !== null && _disabledDateProp !== void 0 ? _disabledDateProp : false;
|
|
482
482
|
}, [disabledDateProp]);
|
|
483
483
|
var disabledByBetween = (0, _react.useCallback)(function (start, end, type) {
|
|
484
|
-
|
|
485
|
-
selectEndDate = selectValue[1];
|
|
486
|
-
var nextSelectValue = [selectStartDate, selectEndDate]; // If the date is between the start and the end
|
|
484
|
+
// If the date is between the start and the end
|
|
487
485
|
// the button is disabled
|
|
488
|
-
|
|
489
486
|
while (_utils.DateUtils.isBefore(start, end) || _utils.DateUtils.isSameDay(start, end)) {
|
|
490
|
-
if (
|
|
487
|
+
if (isDateDisabled(start, selectedDates, hasDoneSelect.current, type)) {
|
|
491
488
|
return true;
|
|
492
489
|
}
|
|
493
490
|
|
|
@@ -495,17 +492,17 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
495
492
|
}
|
|
496
493
|
|
|
497
494
|
return false;
|
|
498
|
-
}, [
|
|
495
|
+
}, [isDateDisabled, selectedDates]);
|
|
499
496
|
var disabledOkButton = (0, _react.useCallback)(function () {
|
|
500
|
-
var start =
|
|
501
|
-
end =
|
|
497
|
+
var start = selectedDates[0],
|
|
498
|
+
end = selectedDates[1];
|
|
502
499
|
|
|
503
500
|
if (!start || !end || !hasDoneSelect.current) {
|
|
504
501
|
return true;
|
|
505
502
|
}
|
|
506
503
|
|
|
507
504
|
return disabledByBetween(start, end, _utils.DATERANGE_DISABLED_TARGET.TOOLBAR_BUTTON_OK);
|
|
508
|
-
}, [disabledByBetween,
|
|
505
|
+
}, [disabledByBetween, selectedDates]);
|
|
509
506
|
var disabledShortcutButton = (0, _react.useCallback)(function (value) {
|
|
510
507
|
if (value === void 0) {
|
|
511
508
|
value = [];
|
|
@@ -522,8 +519,8 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
522
519
|
return disabledByBetween(start, end, _utils.DATERANGE_DISABLED_TARGET.TOOLBAR_SHORTCUT);
|
|
523
520
|
}, [disabledByBetween]);
|
|
524
521
|
var handleDisabledDate = (0, _react.useCallback)(function (date, values, type) {
|
|
525
|
-
return
|
|
526
|
-
}, [
|
|
522
|
+
return isDateDisabled(date, values, hasDoneSelect.current, type);
|
|
523
|
+
}, [isDateDisabled]);
|
|
527
524
|
var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({
|
|
528
525
|
triggerRef: triggerRef,
|
|
529
526
|
targetRef: targetRef,
|
|
@@ -547,18 +544,18 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
547
544
|
calendarDate: calendarDate,
|
|
548
545
|
disabledDate: handleDisabledDate,
|
|
549
546
|
format: formatStr,
|
|
550
|
-
hoverRangeValue:
|
|
547
|
+
hoverRangeValue: hoverDateRange !== null && hoverDateRange !== void 0 ? hoverDateRange : undefined,
|
|
551
548
|
isoWeek: isoWeek,
|
|
552
549
|
limitEndYear: limitEndYear,
|
|
553
550
|
locale: locale,
|
|
554
551
|
showOneCalendar: showOneCalendar,
|
|
555
552
|
showWeekNumbers: showWeekNumbers,
|
|
556
|
-
value:
|
|
553
|
+
value: selectedDates,
|
|
557
554
|
showMeridian: showMeridian,
|
|
558
555
|
onChangeCalendarDate: handleChangeCalendarDate,
|
|
559
556
|
onChangeCalendarTime: handleChangeCalendarTime,
|
|
560
557
|
onMouseMove: handleMouseMove,
|
|
561
|
-
onSelect:
|
|
558
|
+
onSelect: handleSelectDate,
|
|
562
559
|
onToggleMeridian: handleToggleMeridian
|
|
563
560
|
};
|
|
564
561
|
return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {
|
|
@@ -572,7 +569,7 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
572
569
|
className: prefix('daterange-content')
|
|
573
570
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
574
571
|
className: prefix('daterange-header')
|
|
575
|
-
}, getDisplayString(
|
|
572
|
+
}, getDisplayString(selectedDates)), /*#__PURE__*/_react.default.createElement("div", {
|
|
576
573
|
className: prefix("daterange-calendar-" + (showOneCalendar ? 'single' : 'group'))
|
|
577
574
|
}, /*#__PURE__*/_react.default.createElement(_Calendar2.default, (0, _extends2.default)({
|
|
578
575
|
index: 0
|
|
@@ -580,7 +577,7 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
580
577
|
index: 1
|
|
581
578
|
}, panelProps)))), /*#__PURE__*/_react.default.createElement(_Toolbar.default, {
|
|
582
579
|
locale: locale,
|
|
583
|
-
calendarDate:
|
|
580
|
+
calendarDate: selectedDates,
|
|
584
581
|
disabledOkBtn: disabledOkButton,
|
|
585
582
|
disabledShortcut: disabledShortcutButton,
|
|
586
583
|
hideOkBtn: oneTap,
|
|
@@ -590,7 +587,7 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
590
587
|
})));
|
|
591
588
|
};
|
|
592
589
|
|
|
593
|
-
var hasValue = value && value.length > 1;
|
|
590
|
+
var hasValue = !(0, _isNil.default)(value) && value.length > 1;
|
|
594
591
|
|
|
595
592
|
var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {
|
|
596
593
|
classPrefix: classPrefix,
|
|
@@ -633,7 +630,7 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
633
630
|
placement: placement,
|
|
634
631
|
caretComponent: _Calendar.default,
|
|
635
632
|
disabled: disabled
|
|
636
|
-
}), getDisplayString())));
|
|
633
|
+
}), getDisplayString(value))));
|
|
637
634
|
});
|
|
638
635
|
|
|
639
636
|
DateRangePicker.after = disabledDateUtils.after;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { DATERANGE_DISABLED_TARGET } from '../utils/constants';
|
|
3
3
|
export declare type ValueType = [Date?, Date?];
|
|
4
|
+
export declare type DateRange = [Date, Date];
|
|
4
5
|
export interface RangeType {
|
|
5
6
|
label: React.ReactNode;
|
|
6
7
|
closeOverlay?: boolean;
|
|
7
|
-
value:
|
|
8
|
+
value: DateRange | ((value?: ValueType) => DateRange);
|
|
8
9
|
}
|
|
9
10
|
export declare type DisabledDateFunction = (
|
|
10
11
|
/** Date used to determine if disabling is required. */
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DateRange, RangeType } from './types';
|
|
2
2
|
export declare const setTimingMargin: (date: any, way?: string) => Date;
|
|
3
3
|
export declare function getCalendarDate({ value }: {
|
|
4
|
-
value
|
|
5
|
-
}):
|
|
4
|
+
value: [] | [Date] | [Date, Date] | null;
|
|
5
|
+
}): DateRange;
|
|
6
6
|
export declare const getDefaultRanges: () => RangeType[];
|
|
7
|
-
export declare const isSameRange: (source:
|
|
8
|
-
export declare const getMonthHoverRange: (date: Date) =>
|
|
9
|
-
export declare const getWeekHoverRange: (isoWeek: boolean, date: Date) =>
|
|
7
|
+
export declare const isSameRange: (source: DateRange | null, dest: DateRange | null, format: string) => boolean;
|
|
8
|
+
export declare const getMonthHoverRange: (date: Date) => DateRange;
|
|
9
|
+
export declare const getWeekHoverRange: (isoWeek: boolean, date: Date) => DateRange;
|
|
@@ -52,10 +52,15 @@ var getDefaultRanges = function getDefaultRanges() {
|
|
|
52
52
|
exports.getDefaultRanges = getDefaultRanges;
|
|
53
53
|
|
|
54
54
|
var isSameRange = function isSameRange(source, dest, format) {
|
|
55
|
-
|
|
55
|
+
// If both are null, reguard as same
|
|
56
|
+
if (null === source && null === dest) return true; // If only one is null, regard as different
|
|
57
|
+
|
|
58
|
+
if (null === source || null === dest) return false;
|
|
59
|
+
|
|
60
|
+
var result = _utils.DateUtils.isSameDay(source[0], dest[0]) && _utils.DateUtils.isSameDay(source[1], dest[1]);
|
|
56
61
|
|
|
57
62
|
if (_utils.DateUtils.shouldTime(format)) {
|
|
58
|
-
result && (result = _utils.DateUtils.isSameSecond(source
|
|
63
|
+
result && (result = _utils.DateUtils.isSameSecond(source[0], dest[0]) && _utils.DateUtils.isSameSecond(source[1], dest[1]));
|
|
59
64
|
}
|
|
60
65
|
|
|
61
66
|
return result;
|
|
@@ -56,12 +56,14 @@ function Disclosure(props) {
|
|
|
56
56
|
openState = _useReducer[0].open,
|
|
57
57
|
dispatch = _useReducer[1];
|
|
58
58
|
|
|
59
|
-
var containerElementRef = (0, _react.useRef)();
|
|
59
|
+
var containerElementRef = (0, _react.useRef)(null);
|
|
60
60
|
var open = openProp !== null && openProp !== void 0 ? openProp : openState;
|
|
61
61
|
(0, _useClickOutside.default)({
|
|
62
62
|
enabled: hideOnClickOutside,
|
|
63
63
|
isOutside: function isOutside(event) {
|
|
64
|
-
|
|
64
|
+
var _containerElementRef$;
|
|
65
|
+
|
|
66
|
+
return !((_containerElementRef$ = containerElementRef.current) !== null && _containerElementRef$ !== void 0 && _containerElementRef$.contains(event.target));
|
|
65
67
|
},
|
|
66
68
|
handle: function handle() {
|
|
67
69
|
return dispatch({
|
|
@@ -1,24 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
|
|
5
5
|
exports.__esModule = true;
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
|
|
10
|
-
var _DisclosureContext =
|
|
10
|
+
var _DisclosureContext = require("./DisclosureContext");
|
|
11
11
|
|
|
12
12
|
var _utils = require("../utils");
|
|
13
13
|
|
|
14
|
+
var _useDisclosureContext2 = _interopRequireDefault(require("./useDisclosureContext"));
|
|
15
|
+
|
|
14
16
|
function DisclosureButton(props) {
|
|
15
17
|
var children = props.children;
|
|
16
|
-
var buttonRef = (0, _react.useRef)();
|
|
18
|
+
var buttonRef = (0, _react.useRef)(null);
|
|
17
19
|
|
|
18
|
-
var
|
|
19
|
-
open =
|
|
20
|
-
dispatch =
|
|
21
|
-
onToggle =
|
|
20
|
+
var _useDisclosureContext = (0, _useDisclosureContext2.default)(DisclosureButton.displayName),
|
|
21
|
+
open = _useDisclosureContext[0].open,
|
|
22
|
+
dispatch = _useDisclosureContext[1],
|
|
23
|
+
onToggle = _useDisclosureContext[2].onToggle;
|
|
22
24
|
|
|
23
25
|
var toggle = (0, _react.useCallback)(function (event) {
|
|
24
26
|
if (!open) {
|
|
@@ -7,15 +7,13 @@ exports.default = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _useDisclosureContext = _interopRequireDefault(require("./useDisclosureContext"));
|
|
11
11
|
|
|
12
12
|
function DisclosureContent(props) {
|
|
13
13
|
var children = props.children;
|
|
14
|
-
var elementRef = (0, _react.useRef)();
|
|
15
|
-
|
|
16
|
-
var
|
|
17
|
-
open = _useContext[0].open;
|
|
18
|
-
|
|
14
|
+
var elementRef = (0, _react.useRef)(null);
|
|
15
|
+
var disclosure = (0, _useDisclosureContext.default)(DisclosureContent.displayName);
|
|
16
|
+
var open = disclosure[0].open;
|
|
19
17
|
return children({
|
|
20
18
|
open: open
|
|
21
19
|
}, elementRef);
|
|
@@ -13,8 +13,8 @@ export declare type DisclosureContextProps = [
|
|
|
13
13
|
DisclosureState,
|
|
14
14
|
Dispatch<DisclosureAction>,
|
|
15
15
|
{
|
|
16
|
-
onToggle
|
|
16
|
+
onToggle?: (open: boolean, event: React.SyntheticEvent) => void;
|
|
17
17
|
}
|
|
18
18
|
];
|
|
19
|
-
declare const DisclosureContext: React.Context<DisclosureContextProps>;
|
|
19
|
+
declare const DisclosureContext: React.Context<DisclosureContextProps | null>;
|
|
20
20
|
export default DisclosureContext;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
exports.default = useDisclosureContext;
|
|
7
|
+
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
|
|
10
|
+
var _DisclosureContext = _interopRequireDefault(require("./DisclosureContext"));
|
|
11
|
+
|
|
12
|
+
function useDisclosureContext(component) {
|
|
13
|
+
var context = (0, _react.useContext)(_DisclosureContext.default);
|
|
14
|
+
|
|
15
|
+
if (!context) {
|
|
16
|
+
throw new Error("<" + component + "> component must be rendered within a <Disclosure>");
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
return context;
|
|
20
|
+
}
|
|
@@ -45,7 +45,7 @@ export interface DropdownProps<T = any> extends WithAsProps, Omit<React.HTMLAttr
|
|
|
45
45
|
/** Callback function for menu state switching */
|
|
46
46
|
onToggle?: (open?: boolean) => void;
|
|
47
47
|
/** Selected callback function */
|
|
48
|
-
onSelect?: (eventKey: T, event: React.SyntheticEvent) => void;
|
|
48
|
+
onSelect?: (eventKey: T | undefined, event: React.SyntheticEvent) => void;
|
|
49
49
|
}
|
|
50
50
|
export interface DropdownComponent extends RsRefForwardingComponent<'div', DropdownProps> {
|
|
51
51
|
Item: typeof DropdownItem;
|