rsuite 5.19.1 → 5.20.0-beta.6
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/Animation/styles/animation.less +0 -0
- package/Animation/styles/index.less +0 -0
- package/Animation/styles/mixin.less +0 -0
- package/AutoComplete/styles/index.less +0 -0
- package/Avatar/styles/mixin.less +0 -0
- package/Badge/styles/index.less +0 -0
- package/Breadcrumb/styles/index.less +0 -0
- package/Button/styles/mixin.less +0 -0
- package/CHANGELOG.md +11 -0
- package/Cascader/styles/index.less +0 -0
- package/CheckPicker/styles/index.less +0 -0
- package/Checkbox/styles/index.less +0 -0
- package/Checkbox/styles/mixin.less +0 -0
- package/CheckboxGroup/styles/index.less +0 -0
- package/CloseButton/styles/index.less +0 -0
- package/Container/styles/index.less +0 -0
- package/Content/styles/index.less +0 -0
- package/Divider/styles/index.less +0 -0
- package/Drawer/styles/mixin.less +0 -0
- package/FlexboxGrid/styles/index.less +0 -0
- package/Footer/styles/index.less +0 -0
- package/Form/styles/index.less +0 -0
- package/FormControlLabel/styles/index.less +0 -0
- package/FormErrorMessage/styles/animation.less +0 -0
- package/FormErrorMessage/styles/index.less +0 -0
- package/FormGroup/styles/index.less +0 -0
- package/FormHelpText/styles/index.less +0 -0
- package/Grid/styles/grid-framework.less +0 -0
- package/Grid/styles/mixin.less +0 -0
- package/Header/styles/index.less +0 -0
- package/Input/styles/index.less +0 -0
- package/InputNumber/styles/index.less +0 -0
- package/InputNumber/styles/mixin.less +0 -0
- package/InputPicker/styles/index.less +0 -0
- package/LICENSE +0 -0
- package/List/styles/index.less +0 -0
- package/Loader/styles/index.less +0 -0
- package/Loader/styles/mixin.less +0 -0
- package/Message/styles/index.less +0 -0
- package/Message/styles/mixin.less +0 -0
- package/Modal/styles/animation.less +0 -0
- package/Notification/styles/index.less +0 -0
- package/Notification/styles/mixin.less +0 -0
- package/Pagination/styles/index.less +0 -0
- package/Pagination/styles/mixin.less +0 -0
- package/Pagination/styles/pagination-group.less +0 -0
- package/Panel/styles/index.less +0 -0
- package/Picker/styles/index.less +4 -0
- package/Placeholder/styles/index.less +0 -0
- package/Popover/styles/index.less +0 -0
- package/Popover/styles/mixins.less +0 -0
- package/Progress/styles/animation.less +0 -0
- package/Progress/styles/index.less +0 -0
- package/Radio/styles/mixin.less +0 -0
- package/RadioGroup/styles/index.less +0 -0
- package/Rate/styles/index.less +0 -0
- package/Ripple/styles/index.less +0 -0
- package/Ripple/styles/mixins.less +0 -0
- package/Row/styles/index.less +0 -0
- package/SelectPicker/styles/index.less +0 -0
- package/Sidebar/styles/index.less +0 -0
- package/Sidenav/styles/mixin.less +0 -0
- package/Steps/styles/index.less +0 -0
- package/Table/styles/mixin.less +0 -0
- package/Tag/styles/index.less +0 -0
- package/TagInput/styles/index.less +0 -0
- package/TagPicker/styles/index.less +0 -0
- package/Timeline/styles/index.less +0 -0
- package/Timeline/styles/mixin.less +0 -0
- package/Tooltip/styles/mixins.less +0 -0
- package/TreePicker/styles/mixin.less +0 -0
- package/Uploader/styles/mixin.less +0 -0
- package/Windowing/package.json +7 -0
- package/cjs/@types/global.d.ts +0 -0
- package/cjs/Affix/index.js +0 -0
- package/cjs/Animation/Bounce.js +0 -0
- package/cjs/Animation/Fade.js +0 -0
- package/cjs/Animation/Slide.js +0 -0
- package/cjs/Animation/index.js +0 -0
- package/cjs/Animation/utils.js +0 -0
- package/cjs/AutoComplete/index.js +0 -0
- package/cjs/Avatar/index.js +0 -0
- package/cjs/Badge/index.js +0 -0
- package/cjs/Breadcrumb/index.js +0 -0
- package/cjs/Button/index.js +0 -0
- package/cjs/ButtonToolbar/ButtonToolbar.js +0 -0
- package/cjs/ButtonToolbar/index.js +0 -0
- package/cjs/Calendar/MonthDropdown.d.ts +1 -0
- package/cjs/Calendar/MonthDropdown.js +27 -40
- package/cjs/Carousel/index.js +0 -0
- package/cjs/Cascader/Cascader.d.ts +2 -2
- package/cjs/Cascader/DropdownMenu.js +5 -2
- package/cjs/Cascader/index.js +0 -0
- package/cjs/CheckPicker/CheckPicker.d.ts +2 -2
- package/cjs/CheckPicker/CheckPicker.js +4 -1
- package/cjs/CheckPicker/index.js +0 -0
- package/cjs/CheckTreePicker/CheckTreePicker.js +36 -36
- package/cjs/CheckTreePicker/index.js +0 -0
- package/cjs/Checkbox/index.js +0 -0
- package/cjs/CloseButton/CloseButton.js +0 -0
- package/cjs/CloseButton/index.js +0 -0
- package/cjs/Col/index.js +0 -0
- package/cjs/Container/index.js +0 -0
- package/cjs/Content/Content.js +0 -0
- package/cjs/Content/index.js +0 -0
- package/cjs/CustomProvider/FormattedDate.js +0 -0
- package/cjs/CustomProvider/index.js +0 -0
- package/cjs/DatePicker/DatePicker.js +9 -0
- package/cjs/DatePicker/index.js +0 -0
- package/cjs/DateRangePicker/disabledDateUtils.js +0 -0
- package/cjs/Disclosure/Disclosure.d.ts +2 -2
- package/cjs/Disclosure/Disclosure.js +6 -6
- package/cjs/Disclosure/index.js +0 -0
- package/cjs/Divider/index.js +0 -0
- package/cjs/Drawer/index.js +0 -0
- package/cjs/Dropdown/DropdownState.js +0 -0
- package/cjs/Dropdown/index.js +0 -0
- package/cjs/FlexboxGrid/index.js +0 -0
- package/cjs/Footer/Footer.js +0 -0
- package/cjs/Footer/index.js +0 -0
- package/cjs/Form/Form.js +44 -38
- package/cjs/FormControl/index.js +0 -0
- package/cjs/FormControlLabel/FormControlLabel.js +0 -0
- package/cjs/FormControlLabel/index.js +0 -0
- package/cjs/FormErrorMessage/FormErrorMessage.js +0 -0
- package/cjs/FormErrorMessage/index.js +0 -0
- package/cjs/FormGroup/index.js +0 -0
- package/cjs/FormHelpText/index.js +0 -0
- package/cjs/Grid/Grid.js +0 -0
- package/cjs/Grid/index.js +0 -0
- package/cjs/Header/Header.js +0 -0
- package/cjs/Header/index.js +0 -0
- package/cjs/IconButton/index.js +0 -0
- package/cjs/Input/index.js +0 -0
- package/cjs/InputGroup/InputGroupButton.js +0 -0
- package/cjs/InputGroup/index.js +0 -0
- package/cjs/InputNumber/index.js +0 -0
- package/cjs/InputPicker/InputPicker.js +4 -1
- package/cjs/InputPicker/index.js +0 -0
- package/cjs/List/index.js +0 -0
- package/cjs/Loader/index.js +0 -0
- package/cjs/Menu/MenuContext.js +0 -0
- package/cjs/Menu/index.js +0 -0
- package/cjs/Message/index.js +0 -0
- package/cjs/Modal/ModalFooter.js +0 -0
- package/cjs/Modal/index.js +0 -0
- package/cjs/MultiCascader/DropdownMenu.js +5 -2
- package/cjs/MultiCascader/index.js +0 -0
- package/cjs/Nav/index.js +0 -0
- package/cjs/Navbar/NavbarBody.js +0 -0
- package/cjs/Navbar/NavbarBrand.js +0 -0
- package/cjs/Navbar/NavbarDropdownMenu.js +16 -10
- package/cjs/Navbar/NavbarHeader.js +0 -0
- package/cjs/Notification/index.js +0 -0
- package/cjs/Overlay/OverlayTrigger.d.ts +12 -3
- package/cjs/Overlay/OverlayTrigger.js +26 -4
- package/cjs/Overlay/index.js +0 -0
- package/cjs/Pagination/index.js +0 -0
- package/cjs/Panel/index.js +0 -0
- package/cjs/PanelGroup/index.js +0 -0
- package/cjs/Picker/DropdownMenu.d.ts +2 -1
- package/cjs/Picker/DropdownMenu.js +39 -33
- package/cjs/Picker/PickerOverlay.d.ts +2 -2
- package/cjs/Picker/PickerToggle.d.ts +1 -0
- package/cjs/Picker/PickerToggle.js +27 -8
- package/cjs/Picker/PickerToggleTrigger.d.ts +3 -3
- package/cjs/Picker/PickerToggleTrigger.js +4 -2
- package/cjs/Picker/index.d.ts +3 -3
- package/cjs/Picker/types.d.ts +7 -5
- package/cjs/Picker/utils.d.ts +11 -12
- package/cjs/Picker/utils.js +4 -0
- package/cjs/Placeholder/Placeholder.js +0 -0
- package/cjs/Placeholder/index.js +0 -0
- package/cjs/Plaintext/index.js +0 -0
- package/cjs/Popover/index.js +0 -0
- package/cjs/Progress/Progress.js +0 -0
- package/cjs/Progress/index.js +0 -0
- package/cjs/Radio/index.js +0 -0
- package/cjs/RadioGroup/index.js +0 -0
- package/cjs/RangeSlider/index.js +0 -0
- package/cjs/Rate/index.js +0 -0
- package/cjs/Ripple/index.js +0 -0
- package/cjs/Row/Row.js +0 -0
- package/cjs/Row/index.js +0 -0
- package/cjs/SafeAnchor/index.js +0 -0
- package/cjs/Schema/Schema.js +0 -0
- package/cjs/Schema/index.js +0 -0
- package/cjs/SelectPicker/SelectPicker.d.ts +6 -5
- package/cjs/SelectPicker/SelectPicker.js +4 -1
- package/cjs/Sidebar/index.js +0 -0
- package/cjs/Sidenav/SidenavBody.js +0 -0
- package/cjs/Sidenav/SidenavHeader.js +0 -0
- package/cjs/Sidenav/index.js +0 -0
- package/cjs/Slider/index.js +0 -0
- package/cjs/Steps/index.js +0 -0
- package/cjs/Table/index.js +0 -0
- package/cjs/Tag/Tag.js +0 -0
- package/cjs/Tag/index.js +0 -0
- package/cjs/TagGroup/TagGroup.js +0 -0
- package/cjs/TagGroup/index.js +0 -0
- package/cjs/Timeline/index.js +0 -0
- package/cjs/Toggle/index.js +0 -0
- package/cjs/Tooltip/index.js +0 -0
- package/cjs/Tree/Tree.d.ts +2 -5
- package/cjs/Tree/index.js +0 -0
- package/cjs/TreePicker/TreePicker.js +34 -34
- package/cjs/TreePicker/index.js +0 -0
- package/cjs/TreePicker/test/TreePicker.test.js +14 -0
- package/cjs/Whisper/Whisper.d.ts +3 -3
- package/cjs/Whisper/index.js +0 -0
- package/cjs/Windowing/AutoSizer.d.ts +25 -0
- package/cjs/Windowing/AutoSizer.js +103 -0
- package/cjs/Windowing/List.d.ts +45 -0
- package/cjs/Windowing/List.js +72 -0
- package/cjs/Windowing/index.d.ts +5 -0
- package/cjs/Windowing/index.js +19 -0
- package/cjs/index.d.ts +1 -0
- package/cjs/locales/ar_EG.js +0 -0
- package/cjs/locales/da_DK.js +0 -0
- package/cjs/locales/de_DE.js +0 -0
- package/cjs/locales/default.js +0 -0
- package/cjs/locales/en_GB.js +0 -0
- package/cjs/locales/en_US.js +0 -0
- package/cjs/locales/es_AR.js +0 -0
- package/cjs/locales/es_ES.js +0 -0
- package/cjs/locales/fi_FI.js +0 -0
- package/cjs/locales/it_IT.js +0 -0
- package/cjs/locales/ko_KR.js +0 -0
- package/cjs/locales/pt_BR.js +0 -0
- package/cjs/locales/ru_RU.js +0 -0
- package/cjs/locales/sv_SE.js +0 -0
- package/cjs/locales/zh_CN.js +0 -0
- package/cjs/locales/zh_TW.js +0 -0
- package/cjs/toaster/ToastContainer.d.ts +2 -1
- package/cjs/toaster/ToastContainer.js +27 -26
- package/cjs/toaster/toaster.d.ts +1 -1
- package/cjs/toaster/toaster.js +43 -13
- package/cjs/toaster/useToaster.d.ts +1 -1
- package/cjs/utils/clone.js +0 -0
- package/cjs/utils/events.js +0 -0
- package/cjs/utils/getDOMNode.js +0 -0
- package/cjs/utils/getSafeRegExpString.js +0 -0
- package/cjs/utils/guid.js +0 -0
- package/cjs/utils/htmlPropsUtils.js +0 -0
- package/cjs/utils/index.d.ts +1 -0
- package/cjs/utils/index.js +6 -1
- package/cjs/utils/isOneOf.js +0 -0
- package/cjs/utils/prefix.js +0 -0
- package/cjs/utils/render.d.ts +3 -0
- package/cjs/utils/render.js +49 -0
- package/cjs/utils/shallowEqual.js +0 -0
- package/cjs/utils/shallowEqualArray.js +0 -0
- package/cjs/utils/statusIcons.js +0 -0
- package/cjs/utils/stringToObject.js +0 -0
- package/cjs/utils/tplTransform.js +0 -0
- package/cjs/utils/treeUtils.d.ts +2 -2
- package/cjs/utils/useClassNames.js +0 -0
- package/cjs/utils/useEnsuredRef.js +0 -0
- package/cjs/utils/useEventCallback.js +0 -0
- package/cjs/utils/useToggleCaret.js +0 -0
- package/cjs/utils/useUniqueId.js +10 -2
- package/cjs/utils/useUpdateEffect.js +0 -0
- package/cjs/utils/useUpdatedRef.js +0 -0
- package/cjs/utils/useWillUnmount.js +0 -0
- package/dist/rsuite-rtl.css +3 -0
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +3 -0
- package/dist/rsuite.js +303 -562
- 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.LICENSE.txt +2 -0
- package/dist/rsuite.min.js.map +1 -1
- package/esm/@types/global.d.ts +0 -0
- package/esm/Affix/index.js +0 -0
- package/esm/Animation/Bounce.js +0 -0
- package/esm/Animation/Fade.js +0 -0
- package/esm/Animation/Slide.js +0 -0
- package/esm/Animation/index.js +0 -0
- package/esm/Animation/utils.js +0 -0
- package/esm/AutoComplete/index.js +0 -0
- package/esm/Avatar/index.js +0 -0
- package/esm/Badge/index.js +0 -0
- package/esm/Breadcrumb/index.js +0 -0
- package/esm/Button/index.js +0 -0
- package/esm/ButtonToolbar/ButtonToolbar.js +0 -0
- package/esm/ButtonToolbar/index.js +0 -0
- package/esm/Calendar/MonthDropdown.d.ts +1 -0
- package/esm/Calendar/MonthDropdown.js +26 -41
- package/esm/Carousel/index.js +0 -0
- package/esm/Cascader/Cascader.d.ts +2 -2
- package/esm/Cascader/DropdownMenu.js +5 -2
- package/esm/Cascader/index.js +0 -0
- package/esm/CheckPicker/CheckPicker.d.ts +2 -2
- package/esm/CheckPicker/CheckPicker.js +4 -1
- package/esm/CheckPicker/index.js +0 -0
- package/esm/CheckTreePicker/CheckTreePicker.js +36 -35
- package/esm/CheckTreePicker/index.js +0 -0
- package/esm/Checkbox/index.js +0 -0
- package/esm/CloseButton/CloseButton.js +0 -0
- package/esm/CloseButton/index.js +0 -0
- package/esm/Col/index.js +0 -0
- package/esm/Container/index.js +0 -0
- package/esm/Content/Content.js +0 -0
- package/esm/Content/index.js +0 -0
- package/esm/CustomProvider/FormattedDate.js +0 -0
- package/esm/CustomProvider/index.js +0 -0
- package/esm/DatePicker/DatePicker.js +8 -0
- package/esm/DatePicker/index.js +0 -0
- package/esm/DateRangePicker/disabledDateUtils.js +0 -0
- package/esm/Disclosure/Disclosure.d.ts +2 -2
- package/esm/Disclosure/Disclosure.js +6 -6
- package/esm/Disclosure/index.js +0 -0
- package/esm/Divider/index.js +0 -0
- package/esm/Drawer/index.js +0 -0
- package/esm/Dropdown/DropdownState.js +0 -0
- package/esm/Dropdown/index.js +0 -0
- package/esm/FlexboxGrid/index.js +0 -0
- package/esm/Footer/Footer.js +0 -0
- package/esm/Footer/index.js +0 -0
- package/esm/Form/Form.js +44 -38
- package/esm/FormControl/index.js +0 -0
- package/esm/FormControlLabel/FormControlLabel.js +0 -0
- package/esm/FormControlLabel/index.js +0 -0
- package/esm/FormErrorMessage/FormErrorMessage.js +0 -0
- package/esm/FormErrorMessage/index.js +0 -0
- package/esm/FormGroup/index.js +0 -0
- package/esm/FormHelpText/index.js +0 -0
- package/esm/Grid/Grid.js +0 -0
- package/esm/Grid/index.js +0 -0
- package/esm/Header/Header.js +0 -0
- package/esm/Header/index.js +0 -0
- package/esm/IconButton/index.js +0 -0
- package/esm/Input/index.js +0 -0
- package/esm/InputGroup/InputGroupButton.js +0 -0
- package/esm/InputGroup/index.js +0 -0
- package/esm/InputNumber/index.js +0 -0
- package/esm/InputPicker/InputPicker.js +4 -1
- package/esm/InputPicker/index.js +0 -0
- package/esm/List/index.js +0 -0
- package/esm/Loader/index.js +0 -0
- package/esm/Menu/MenuContext.js +0 -0
- package/esm/Menu/index.js +0 -0
- package/esm/Message/index.js +0 -0
- package/esm/Modal/ModalFooter.js +0 -0
- package/esm/Modal/index.js +0 -0
- package/esm/MultiCascader/DropdownMenu.js +5 -2
- package/esm/MultiCascader/index.js +0 -0
- package/esm/Nav/index.js +0 -0
- package/esm/Navbar/NavbarBody.js +0 -0
- package/esm/Navbar/NavbarBrand.js +0 -0
- package/esm/Navbar/NavbarDropdownMenu.js +14 -8
- package/esm/Navbar/NavbarHeader.js +0 -0
- package/esm/Notification/index.js +0 -0
- package/esm/Overlay/OverlayTrigger.d.ts +12 -3
- package/esm/Overlay/OverlayTrigger.js +23 -3
- package/esm/Overlay/index.js +0 -0
- package/esm/Pagination/index.js +0 -0
- package/esm/Panel/index.js +0 -0
- package/esm/PanelGroup/index.js +0 -0
- package/esm/Picker/DropdownMenu.d.ts +2 -1
- package/esm/Picker/DropdownMenu.js +39 -35
- package/esm/Picker/PickerOverlay.d.ts +2 -2
- package/esm/Picker/PickerToggle.d.ts +1 -0
- package/esm/Picker/PickerToggle.js +25 -8
- package/esm/Picker/PickerToggleTrigger.d.ts +3 -3
- package/esm/Picker/PickerToggleTrigger.js +4 -2
- package/esm/Picker/index.d.ts +3 -3
- package/esm/Picker/types.d.ts +7 -5
- package/esm/Picker/utils.d.ts +11 -12
- package/esm/Picker/utils.js +4 -0
- package/esm/Placeholder/Placeholder.js +0 -0
- package/esm/Placeholder/index.js +0 -0
- package/esm/Plaintext/index.js +0 -0
- package/esm/Popover/index.js +0 -0
- package/esm/Progress/Progress.js +0 -0
- package/esm/Progress/index.js +0 -0
- package/esm/Radio/index.js +0 -0
- package/esm/RadioGroup/index.js +0 -0
- package/esm/RangeSlider/index.js +0 -0
- package/esm/Rate/index.js +0 -0
- package/esm/Ripple/index.js +0 -0
- package/esm/Row/Row.js +0 -0
- package/esm/Row/index.js +0 -0
- package/esm/SafeAnchor/index.js +0 -0
- package/esm/Schema/Schema.js +0 -0
- package/esm/Schema/index.js +0 -0
- package/esm/SelectPicker/SelectPicker.d.ts +6 -5
- package/esm/SelectPicker/SelectPicker.js +4 -1
- package/esm/Sidebar/index.js +0 -0
- package/esm/Sidenav/SidenavBody.js +0 -0
- package/esm/Sidenav/SidenavHeader.js +0 -0
- package/esm/Sidenav/index.js +0 -0
- package/esm/Slider/index.js +0 -0
- package/esm/Steps/index.js +0 -0
- package/esm/Table/index.js +0 -0
- package/esm/Tag/Tag.js +0 -0
- package/esm/Tag/index.js +0 -0
- package/esm/TagGroup/TagGroup.js +0 -0
- package/esm/TagGroup/index.js +0 -0
- package/esm/Timeline/index.js +0 -0
- package/esm/Toggle/index.js +0 -0
- package/esm/Tooltip/index.js +0 -0
- package/esm/Tree/Tree.d.ts +2 -5
- package/esm/Tree/index.js +0 -0
- package/esm/TreePicker/TreePicker.js +33 -32
- package/esm/TreePicker/index.js +0 -0
- package/esm/TreePicker/test/TreePicker.test.js +14 -0
- package/esm/Whisper/Whisper.d.ts +3 -3
- package/esm/Whisper/index.js +0 -0
- package/esm/Windowing/AutoSizer.d.ts +25 -0
- package/esm/Windowing/AutoSizer.js +88 -0
- package/esm/Windowing/List.d.ts +45 -0
- package/esm/Windowing/List.js +58 -0
- package/esm/Windowing/index.d.ts +5 -0
- package/esm/Windowing/index.js +3 -0
- package/esm/index.d.ts +1 -0
- package/esm/locales/ar_EG.js +0 -0
- package/esm/locales/da_DK.js +0 -0
- package/esm/locales/de_DE.js +0 -0
- package/esm/locales/default.js +0 -0
- package/esm/locales/en_GB.js +0 -0
- package/esm/locales/en_US.js +0 -0
- package/esm/locales/es_AR.js +0 -0
- package/esm/locales/es_ES.js +0 -0
- package/esm/locales/fi_FI.js +0 -0
- package/esm/locales/it_IT.js +0 -0
- package/esm/locales/ko_KR.js +0 -0
- package/esm/locales/pt_BR.js +0 -0
- package/esm/locales/ru_RU.js +0 -0
- package/esm/locales/sv_SE.js +0 -0
- package/esm/locales/zh_CN.js +0 -0
- package/esm/locales/zh_TW.js +0 -0
- package/esm/toaster/ToastContainer.d.ts +2 -1
- package/esm/toaster/ToastContainer.js +28 -26
- package/esm/toaster/toaster.d.ts +1 -1
- package/esm/toaster/toaster.js +41 -13
- package/esm/toaster/useToaster.d.ts +1 -1
- package/esm/utils/clone.js +0 -0
- package/esm/utils/events.js +0 -0
- package/esm/utils/getDOMNode.js +0 -0
- package/esm/utils/getSafeRegExpString.js +0 -0
- package/esm/utils/guid.js +0 -0
- package/esm/utils/htmlPropsUtils.js +0 -0
- package/esm/utils/index.d.ts +1 -0
- package/esm/utils/index.js +1 -0
- package/esm/utils/isOneOf.js +0 -0
- package/esm/utils/prefix.js +0 -0
- package/esm/utils/render.d.ts +3 -0
- package/esm/utils/render.js +37 -0
- package/esm/utils/shallowEqual.js +0 -0
- package/esm/utils/shallowEqualArray.js +0 -0
- package/esm/utils/statusIcons.js +0 -0
- package/esm/utils/stringToObject.js +0 -0
- package/esm/utils/tplTransform.js +0 -0
- package/esm/utils/treeUtils.d.ts +2 -2
- package/esm/utils/useClassNames.js +0 -0
- package/esm/utils/useEnsuredRef.js +0 -0
- package/esm/utils/useEventCallback.js +0 -0
- package/esm/utils/useToggleCaret.js +0 -0
- package/esm/utils/useUniqueId.js +7 -2
- package/esm/utils/useUpdateEffect.js +0 -0
- package/esm/utils/useUpdatedRef.js +0 -0
- package/esm/utils/useWillUnmount.js +0 -0
- package/package.json +5 -5
- package/styles/color-modes.less +0 -0
- package/styles/colors/light.less +0 -0
- package/styles/common.less +0 -0
- package/styles/mixins/color-modes.less +0 -0
- package/styles/mixins/hacks.less +0 -0
- package/styles/mixins/menu.less +0 -0
- package/styles/normalize.less +0 -0
- package/styles/scaffolding.less +0 -0
- package/styles/typography.less +0 -0
- package/toaster/styles/animation.less +0 -0
- package/toaster/styles/index.less +0 -0
- package/cjs/Picker/VirtualizedList.d.ts +0 -37
- package/cjs/Picker/VirtualizedList.js +0 -15
- package/esm/Picker/VirtualizedList.d.ts +0 -37
- package/esm/Picker/VirtualizedList.js +0 -4
package/esm/Form/Form.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
import React, { useMemo, useCallback,
|
|
3
|
+
import React, { useMemo, useCallback, useImperativeHandle, useRef } from 'react';
|
|
4
4
|
import PropTypes from 'prop-types';
|
|
5
|
-
import isUndefined from 'lodash/isUndefined';
|
|
6
5
|
import omit from 'lodash/omit';
|
|
7
6
|
import { SchemaModel } from 'schema-typed';
|
|
8
7
|
import FormContext, { FormValueContext } from './FormContext';
|
|
@@ -13,6 +12,7 @@ import FormGroup from '../FormGroup';
|
|
|
13
12
|
import FormHelpText from '../FormHelpText';
|
|
14
13
|
import { useFormClassNames } from './useFormClassNames';
|
|
15
14
|
import useSchemaModel from './useSchemaModel';
|
|
15
|
+
import { useControlled } from '../utils';
|
|
16
16
|
var Form = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
17
17
|
var _props$checkTrigger = props.checkTrigger,
|
|
18
18
|
checkTrigger = _props$checkTrigger === void 0 ? 'change' : _props$checkTrigger,
|
|
@@ -55,20 +55,18 @@ var Form = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
55
55
|
disabled: disabled
|
|
56
56
|
});
|
|
57
57
|
|
|
58
|
-
var
|
|
59
|
-
|
|
60
|
-
setFormValue =
|
|
58
|
+
var _useControlled = useControlled(formValue, formDefaultValue),
|
|
59
|
+
realFormValue = _useControlled[0],
|
|
60
|
+
setFormValue = _useControlled[1];
|
|
61
61
|
|
|
62
|
-
var
|
|
63
|
-
|
|
64
|
-
setFormError =
|
|
62
|
+
var _useControlled2 = useControlled(formError, {}),
|
|
63
|
+
realFormError = _useControlled2[0],
|
|
64
|
+
setFormError = _useControlled2[1];
|
|
65
65
|
|
|
66
|
-
var
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
return isUndefined(formError) ? _formError : formError;
|
|
71
|
-
}, [formError, _formError]);
|
|
66
|
+
var realFormValueRef = useRef(realFormValue);
|
|
67
|
+
realFormValueRef.current = realFormValue;
|
|
68
|
+
var realFormErrorRef = useRef(realFormError);
|
|
69
|
+
realFormErrorRef.current = realFormError;
|
|
72
70
|
/**
|
|
73
71
|
* Validate the form data and return a boolean.
|
|
74
72
|
* The error message after verification is returned in the callback.
|
|
@@ -76,7 +74,7 @@ var Form = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
76
74
|
*/
|
|
77
75
|
|
|
78
76
|
var check = useCallback(function (callback) {
|
|
79
|
-
var formValue =
|
|
77
|
+
var formValue = realFormValue || {};
|
|
80
78
|
var formError = {};
|
|
81
79
|
var errorCount = 0;
|
|
82
80
|
var model = getCombinedModel();
|
|
@@ -98,7 +96,7 @@ var Form = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
98
96
|
}
|
|
99
97
|
|
|
100
98
|
return true;
|
|
101
|
-
}, [
|
|
99
|
+
}, [realFormValue, getCombinedModel, setFormError, onCheck, onError]);
|
|
102
100
|
/**
|
|
103
101
|
* Check the data field
|
|
104
102
|
* @param fieldName
|
|
@@ -108,11 +106,11 @@ var Form = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
108
106
|
var checkForField = useCallback(function (fieldName, callback) {
|
|
109
107
|
var _extends2;
|
|
110
108
|
|
|
111
|
-
var formValue =
|
|
109
|
+
var formValue = realFormValue || {};
|
|
112
110
|
var model = getCombinedModel();
|
|
113
111
|
var checkResult = model.checkForField(fieldName, formValue);
|
|
114
112
|
|
|
115
|
-
var formError = _extends({},
|
|
113
|
+
var formError = _extends({}, realFormError, (_extends2 = {}, _extends2[fieldName] = (checkResult === null || checkResult === void 0 ? void 0 : checkResult.errorMessage) || checkResult, _extends2));
|
|
116
114
|
|
|
117
115
|
setFormError(formError);
|
|
118
116
|
onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);
|
|
@@ -123,13 +121,13 @@ var Form = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
123
121
|
}
|
|
124
122
|
|
|
125
123
|
return !checkResult.hasError;
|
|
126
|
-
}, [
|
|
124
|
+
}, [realFormValue, getCombinedModel, realFormError, setFormError, onCheck, onError]);
|
|
127
125
|
/**
|
|
128
126
|
* Check form data asynchronously and return a Promise
|
|
129
127
|
*/
|
|
130
128
|
|
|
131
129
|
var checkAsync = useCallback(function () {
|
|
132
|
-
var formValue =
|
|
130
|
+
var formValue = realFormValue || {};
|
|
133
131
|
var promises = [];
|
|
134
132
|
var keys = [];
|
|
135
133
|
var model = getCombinedModel();
|
|
@@ -160,19 +158,19 @@ var Form = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
160
158
|
formError: formError
|
|
161
159
|
};
|
|
162
160
|
});
|
|
163
|
-
}, [
|
|
161
|
+
}, [realFormValue, getCombinedModel, onCheck, setFormError, onError]);
|
|
164
162
|
/**
|
|
165
163
|
* Asynchronously check form fields and return Promise
|
|
166
164
|
* @param fieldName
|
|
167
165
|
*/
|
|
168
166
|
|
|
169
167
|
var checkForFieldAsync = useCallback(function (fieldName) {
|
|
170
|
-
var formValue =
|
|
168
|
+
var formValue = realFormValue || {};
|
|
171
169
|
var model = getCombinedModel();
|
|
172
170
|
return model.checkForFieldAsync(fieldName, formValue).then(function (checkResult) {
|
|
173
171
|
var _extends3;
|
|
174
172
|
|
|
175
|
-
var formError = _extends({},
|
|
173
|
+
var formError = _extends({}, realFormError, (_extends3 = {}, _extends3[fieldName] = checkResult.errorMessage, _extends3));
|
|
176
174
|
|
|
177
175
|
onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);
|
|
178
176
|
setFormError(formError);
|
|
@@ -183,20 +181,20 @@ var Form = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
183
181
|
|
|
184
182
|
return checkResult;
|
|
185
183
|
});
|
|
186
|
-
}, [
|
|
184
|
+
}, [realFormValue, getCombinedModel, realFormError, onCheck, setFormError, onError]);
|
|
187
185
|
var cleanErrors = useCallback(function () {
|
|
188
186
|
setFormError({});
|
|
189
|
-
}, []);
|
|
187
|
+
}, [setFormError]);
|
|
190
188
|
var cleanErrorForField = useCallback(function (fieldName) {
|
|
191
|
-
setFormError(omit(
|
|
192
|
-
}, [
|
|
189
|
+
setFormError(omit(realFormError, [fieldName]));
|
|
190
|
+
}, [realFormError, setFormError]);
|
|
193
191
|
var resetErrors = useCallback(function (formError) {
|
|
194
192
|
if (formError === void 0) {
|
|
195
193
|
formError = {};
|
|
196
194
|
}
|
|
197
195
|
|
|
198
196
|
setFormError(formError);
|
|
199
|
-
}, []);
|
|
197
|
+
}, [setFormError]);
|
|
200
198
|
useImperativeHandle(ref, function () {
|
|
201
199
|
return {
|
|
202
200
|
root: rootRef.current,
|
|
@@ -210,15 +208,23 @@ var Form = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
210
208
|
};
|
|
211
209
|
});
|
|
212
210
|
var removeFieldError = useCallback(function (name) {
|
|
213
|
-
|
|
211
|
+
/**
|
|
212
|
+
* when this function is called when the children component is unmount, it's an old render frame
|
|
213
|
+
* so use Ref to get future error
|
|
214
|
+
*/
|
|
215
|
+
var formError = omit(realFormErrorRef.current, [name]);
|
|
214
216
|
setFormError(formError);
|
|
215
217
|
onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);
|
|
216
|
-
}, [
|
|
218
|
+
}, [onCheck, setFormError]);
|
|
217
219
|
var removeFieldValue = useCallback(function (name) {
|
|
218
|
-
|
|
220
|
+
/**
|
|
221
|
+
* when this function is called when the children component is unmount, it's an old render frame
|
|
222
|
+
* so use Ref to get future value
|
|
223
|
+
*/
|
|
224
|
+
var formValue = omit(realFormValueRef.current, [name]);
|
|
219
225
|
setFormValue(formValue);
|
|
220
226
|
onChange === null || onChange === void 0 ? void 0 : onChange(formValue);
|
|
221
|
-
}, [
|
|
227
|
+
}, [onChange, setFormValue]);
|
|
222
228
|
var handleSubmit = useCallback(function (event) {
|
|
223
229
|
if (disabled || readOnly || plaintext) {
|
|
224
230
|
return;
|
|
@@ -232,25 +238,25 @@ var Form = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
232
238
|
var handleFieldError = useCallback(function (name, errorMessage) {
|
|
233
239
|
var _extends4;
|
|
234
240
|
|
|
235
|
-
var formError = _extends({},
|
|
241
|
+
var formError = _extends({}, realFormError, (_extends4 = {}, _extends4[name] = errorMessage, _extends4));
|
|
236
242
|
|
|
237
243
|
setFormError(formError);
|
|
238
244
|
onError === null || onError === void 0 ? void 0 : onError(formError);
|
|
239
245
|
onCheck === null || onCheck === void 0 ? void 0 : onCheck(formError);
|
|
240
|
-
}, [onError, onCheck
|
|
246
|
+
}, [realFormError, setFormError, onError, onCheck]);
|
|
241
247
|
var handleFieldSuccess = useCallback(function (name) {
|
|
242
248
|
removeFieldError(name);
|
|
243
249
|
}, [removeFieldError]);
|
|
244
250
|
var handleFieldChange = useCallback(function (name, value, event) {
|
|
245
251
|
var _extends5;
|
|
246
252
|
|
|
247
|
-
var formValue =
|
|
253
|
+
var formValue = realFormValue;
|
|
248
254
|
|
|
249
255
|
var nextFormValue = _extends({}, formValue, (_extends5 = {}, _extends5[name] = value, _extends5));
|
|
250
256
|
|
|
251
257
|
setFormValue(nextFormValue);
|
|
252
258
|
onChange === null || onChange === void 0 ? void 0 : onChange(nextFormValue, event);
|
|
253
|
-
}, [
|
|
259
|
+
}, [realFormValue, setFormValue, onChange]);
|
|
254
260
|
var rootRef = useRef(null);
|
|
255
261
|
var formContextValue = useMemo(function () {
|
|
256
262
|
return {
|
|
@@ -261,7 +267,7 @@ var Form = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
261
267
|
readOnly: readOnly,
|
|
262
268
|
plaintext: plaintext,
|
|
263
269
|
disabled: disabled,
|
|
264
|
-
formError:
|
|
270
|
+
formError: realFormError,
|
|
265
271
|
removeFieldValue: removeFieldValue,
|
|
266
272
|
removeFieldError: removeFieldError,
|
|
267
273
|
pushFieldRule: pushFieldRule,
|
|
@@ -270,7 +276,7 @@ var Form = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
270
276
|
onFieldError: handleFieldError,
|
|
271
277
|
onFieldSuccess: handleFieldSuccess
|
|
272
278
|
};
|
|
273
|
-
}, [getCombinedModel, checkTrigger, formDefaultValue, errorFromContext, readOnly, plaintext, disabled,
|
|
279
|
+
}, [getCombinedModel, checkTrigger, formDefaultValue, errorFromContext, readOnly, plaintext, disabled, realFormError, removeFieldValue, removeFieldError, pushFieldRule, removeFieldRule, handleFieldChange, handleFieldError, handleFieldSuccess]);
|
|
274
280
|
return /*#__PURE__*/React.createElement("form", _extends({}, rest, {
|
|
275
281
|
ref: rootRef,
|
|
276
282
|
onSubmit: handleSubmit,
|
package/esm/FormControl/index.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/esm/FormGroup/index.js
CHANGED
|
File without changes
|
|
File without changes
|
package/esm/Grid/Grid.js
CHANGED
|
File without changes
|
package/esm/Grid/index.js
CHANGED
|
File without changes
|
package/esm/Header/Header.js
CHANGED
|
File without changes
|
package/esm/Header/index.js
CHANGED
|
File without changes
|
package/esm/IconButton/index.js
CHANGED
|
File without changes
|
package/esm/Input/index.js
CHANGED
|
File without changes
|
|
File without changes
|
package/esm/InputGroup/index.js
CHANGED
|
File without changes
|
package/esm/InputNumber/index.js
CHANGED
|
File without changes
|
|
@@ -112,6 +112,7 @@ var InputPicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
112
112
|
var targetRef = useRef(null);
|
|
113
113
|
var triggerRef = useRef(null);
|
|
114
114
|
var inputRef = useRef();
|
|
115
|
+
var listRef = useRef(null);
|
|
115
116
|
|
|
116
117
|
var _useCustom = useCustom(['Picker', 'InputPicker'], overrideLocale),
|
|
117
118
|
locale = _useCustom.locale;
|
|
@@ -403,7 +404,8 @@ var InputPicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
403
404
|
usePublicMethods(ref, {
|
|
404
405
|
triggerRef: triggerRef,
|
|
405
406
|
overlayRef: overlayRef,
|
|
406
|
-
targetRef: targetRef
|
|
407
|
+
targetRef: targetRef,
|
|
408
|
+
listRef: listRef
|
|
407
409
|
});
|
|
408
410
|
/**
|
|
409
411
|
* Remove the last item, after pressing the back key on the keyboard.
|
|
@@ -605,6 +607,7 @@ var InputPicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
605
607
|
var menu = items.length ? /*#__PURE__*/React.createElement(DropdownMenu, {
|
|
606
608
|
id: id ? id + "-listbox" : undefined,
|
|
607
609
|
listProps: listProps,
|
|
610
|
+
listRef: listRef,
|
|
608
611
|
disabledItemValues: disabledItemValues,
|
|
609
612
|
valueKey: valueKey,
|
|
610
613
|
labelKey: labelKey,
|
package/esm/InputPicker/index.js
CHANGED
|
File without changes
|
package/esm/List/index.js
CHANGED
|
File without changes
|
package/esm/Loader/index.js
CHANGED
|
File without changes
|
package/esm/Menu/MenuContext.js
CHANGED
|
File without changes
|
package/esm/Menu/index.js
CHANGED
|
File without changes
|
package/esm/Message/index.js
CHANGED
|
File without changes
|
package/esm/Modal/ModalFooter.js
CHANGED
|
File without changes
|
package/esm/Modal/index.js
CHANGED
|
File without changes
|
|
@@ -50,7 +50,10 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
50
50
|
prefix = _useClassNames.prefix;
|
|
51
51
|
|
|
52
52
|
var classes = merge(className, prefix('items'));
|
|
53
|
-
|
|
53
|
+
|
|
54
|
+
var _useCustom = useCustom('DropdownMenu'),
|
|
55
|
+
rtl = _useCustom.rtl;
|
|
56
|
+
|
|
54
57
|
var getCascadePaths = useCallback(function (layer, node) {
|
|
55
58
|
var paths = [];
|
|
56
59
|
|
|
@@ -77,7 +80,7 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
77
80
|
}); // Use `value` in keys when If `value` is string or number
|
|
78
81
|
|
|
79
82
|
var onlyKey = typeof value === 'number' || typeof value === 'string' ? value : index;
|
|
80
|
-
var Icon = node.loading ? SpinnerIcon : rtl ?
|
|
83
|
+
var Icon = node.loading ? SpinnerIcon : rtl ? AngleLeftIcon : AngleRightIcon;
|
|
81
84
|
var active = value.some(function (v) {
|
|
82
85
|
return v === nodeValue;
|
|
83
86
|
});
|
|
File without changes
|
package/esm/Nav/index.js
CHANGED
|
File without changes
|
package/esm/Navbar/NavbarBody.js
CHANGED
|
File without changes
|
|
File without changes
|
|
@@ -5,12 +5,12 @@ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWith
|
|
|
5
5
|
var _templateObject, _templateObject2;
|
|
6
6
|
|
|
7
7
|
import React, { useContext } from 'react';
|
|
8
|
-
import omit from 'lodash/omit';
|
|
9
|
-
import { mergeRefs, useClassNames } from '../utils';
|
|
10
8
|
import PropTypes from 'prop-types';
|
|
9
|
+
import omit from 'lodash/omit';
|
|
10
|
+
import isNil from 'lodash/isNil';
|
|
11
11
|
import AngleLeft from '@rsuite/icons/legacy/AngleLeft';
|
|
12
12
|
import AngleRight from '@rsuite/icons/legacy/AngleRight';
|
|
13
|
-
import useCustom from '../utils
|
|
13
|
+
import { mergeRefs, useClassNames, useCustom } from '../utils';
|
|
14
14
|
import { NavbarContext } from '.';
|
|
15
15
|
import Disclosure from '../Disclosure';
|
|
16
16
|
import NavContext from '../Nav/NavContext';
|
|
@@ -73,7 +73,7 @@ var NavbarDropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
73
73
|
var Icon = rtl ? AngleLeft : AngleRight;
|
|
74
74
|
return /*#__PURE__*/React.createElement(Disclosure, {
|
|
75
75
|
hideOnClickOutside: true,
|
|
76
|
-
trigger: ['click', '
|
|
76
|
+
trigger: ['click', 'hover'],
|
|
77
77
|
onToggle: function onToggle(open, event) {
|
|
78
78
|
return _onToggle === null || _onToggle === void 0 ? void 0 : _onToggle(open, undefined, event);
|
|
79
79
|
}
|
|
@@ -98,12 +98,18 @@ var NavbarDropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
98
98
|
open: open,
|
|
99
99
|
disabled: disabled
|
|
100
100
|
}));
|
|
101
|
+
var dataAttributes = {
|
|
102
|
+
'data-event-key': eventKey
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
if (!isNil(eventKey) && typeof eventKey !== 'string') {
|
|
106
|
+
dataAttributes['data-event-key-type'] = typeof eventKey;
|
|
107
|
+
}
|
|
108
|
+
|
|
101
109
|
return /*#__PURE__*/React.createElement("div", _extends({
|
|
102
110
|
ref: mergeRefs(buttonRef, buttonRef),
|
|
103
|
-
className: classes
|
|
104
|
-
|
|
105
|
-
"data-event-key-type": typeof eventKey
|
|
106
|
-
}, buttonProps), icon && /*#__PURE__*/React.cloneElement(icon, {
|
|
111
|
+
className: classes
|
|
112
|
+
}, dataAttributes, buttonProps), icon && /*#__PURE__*/React.cloneElement(icon, {
|
|
107
113
|
className: prefix('menu-icon')
|
|
108
114
|
}), title, /*#__PURE__*/React.createElement(Icon, {
|
|
109
115
|
className: prefix(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["toggle-icon"])))
|
|
File without changes
|
|
File without changes
|
|
@@ -59,15 +59,24 @@ export interface OverlayTriggerProps extends StandardProps, AnimationEventProps
|
|
|
59
59
|
/** Callback fired when open component */
|
|
60
60
|
onOpen?: () => void;
|
|
61
61
|
/** Callback fired when close component */
|
|
62
|
-
onClose?: () => void;
|
|
62
|
+
onClose?: (cause?: OverlayCloseCause) => void;
|
|
63
63
|
/** Whether speaker to follow the cursor */
|
|
64
64
|
followCursor?: boolean;
|
|
65
65
|
}
|
|
66
|
-
|
|
66
|
+
/**
|
|
67
|
+
* The reason that triggers closing of an overlay
|
|
68
|
+
* - Clicking outside of the overlay
|
|
69
|
+
* - Direct invocation of triggerRef.current.close()
|
|
70
|
+
*/
|
|
71
|
+
export declare enum OverlayCloseCause {
|
|
72
|
+
ClickOutside = 0,
|
|
73
|
+
ImperativeHandle = 1
|
|
74
|
+
}
|
|
75
|
+
export interface OverlayTriggerHandle {
|
|
67
76
|
root: HTMLElement | undefined;
|
|
68
77
|
updatePosition: () => void;
|
|
69
78
|
open: (delay?: number) => void;
|
|
70
79
|
close: (delay?: number) => void;
|
|
71
80
|
}
|
|
72
|
-
declare const OverlayTrigger: React.ForwardRefExoticComponent<OverlayTriggerProps & React.RefAttributes<
|
|
81
|
+
declare const OverlayTrigger: React.ForwardRefExoticComponent<OverlayTriggerProps & React.RefAttributes<OverlayTriggerHandle>>;
|
|
73
82
|
export default OverlayTrigger;
|
|
@@ -30,6 +30,12 @@ function mergeEvents(events, props) {
|
|
|
30
30
|
return nextEvents;
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
+
/**
|
|
34
|
+
* The reason that triggers closing of an overlay
|
|
35
|
+
* - Clicking outside of the overlay
|
|
36
|
+
* - Direct invocation of triggerRef.current.close()
|
|
37
|
+
*/
|
|
38
|
+
export var OverlayCloseCause;
|
|
33
39
|
/**
|
|
34
40
|
* Useful for mouseover and mouseout.
|
|
35
41
|
* In order to resolve the node entering the mouseover element, a mouseout event and a mouseover event will be triggered.
|
|
@@ -37,6 +43,12 @@ function mergeEvents(events, props) {
|
|
|
37
43
|
* @param handler
|
|
38
44
|
* @param event
|
|
39
45
|
*/
|
|
46
|
+
|
|
47
|
+
(function (OverlayCloseCause) {
|
|
48
|
+
OverlayCloseCause[OverlayCloseCause["ClickOutside"] = 0] = "ClickOutside";
|
|
49
|
+
OverlayCloseCause[OverlayCloseCause["ImperativeHandle"] = 1] = "ImperativeHandle";
|
|
50
|
+
})(OverlayCloseCause || (OverlayCloseCause = {}));
|
|
51
|
+
|
|
40
52
|
function onMouseEventHandler(handler, event, delay) {
|
|
41
53
|
var target = event.currentTarget;
|
|
42
54
|
var related = event.relatedTarget || get(event, ['nativeEvent', 'toElement']);
|
|
@@ -133,17 +145,19 @@ var OverlayTrigger = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
133
145
|
|
|
134
146
|
setOpen(true);
|
|
135
147
|
}, [delayOpen, setOpen]);
|
|
136
|
-
var handleClose = useCallback(function (delay) {
|
|
148
|
+
var handleClose = useCallback(function (delay, callback) {
|
|
137
149
|
var ms = _isUndefined(delay) ? delayClose : delay;
|
|
138
150
|
|
|
139
151
|
if (ms && typeof ms === 'number') {
|
|
140
152
|
return delayCloseTimer.current = setTimeout(function () {
|
|
141
153
|
delayCloseTimer.current = null;
|
|
142
154
|
setOpen(false);
|
|
155
|
+
callback === null || callback === void 0 ? void 0 : callback();
|
|
143
156
|
}, ms);
|
|
144
157
|
}
|
|
145
158
|
|
|
146
159
|
setOpen(false);
|
|
160
|
+
callback === null || callback === void 0 ? void 0 : callback();
|
|
147
161
|
}, [delayClose, setOpen]);
|
|
148
162
|
var handleExited = useCallback(function () {
|
|
149
163
|
setCursorPosition(null);
|
|
@@ -161,7 +175,11 @@ var OverlayTrigger = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
161
175
|
},
|
|
162
176
|
|
|
163
177
|
open: handleOpen,
|
|
164
|
-
close:
|
|
178
|
+
close: function close(delay) {
|
|
179
|
+
return handleClose(delay, function () {
|
|
180
|
+
return onClose === null || onClose === void 0 ? void 0 : onClose(OverlayCloseCause.ImperativeHandle);
|
|
181
|
+
});
|
|
182
|
+
},
|
|
165
183
|
updatePosition: function updatePosition() {
|
|
166
184
|
var _overlayRef$current2, _overlayRef$current2$;
|
|
167
185
|
|
|
@@ -322,7 +340,9 @@ var OverlayTrigger = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
322
340
|
var overlayProps = _extends({}, rest, {
|
|
323
341
|
rootClose: rootClose,
|
|
324
342
|
triggerTarget: triggerRef,
|
|
325
|
-
onClose: trigger !== 'none' ? createChainedFunction(handleClose,
|
|
343
|
+
onClose: trigger !== 'none' ? createChainedFunction(handleClose, function () {
|
|
344
|
+
return onClose === null || onClose === void 0 ? void 0 : onClose(OverlayCloseCause.ClickOutside);
|
|
345
|
+
}) : undefined,
|
|
326
346
|
onExited: createChainedFunction(followCursor ? handleExited : undefined, onExited),
|
|
327
347
|
placement: placement,
|
|
328
348
|
container: container,
|
package/esm/Overlay/index.js
CHANGED
|
File without changes
|
package/esm/Pagination/index.js
CHANGED
|
File without changes
|
package/esm/Panel/index.js
CHANGED
|
File without changes
|
package/esm/PanelGroup/index.js
CHANGED
|
File without changes
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
import { ListProps } from '
|
|
3
|
+
import { ListProps, ListHandle } from '../Windowing';
|
|
4
4
|
import { StandardProps, ItemDataType } from '../@types/common';
|
|
5
5
|
export interface DropdownMenuProps<Multiple = false> extends StandardProps, Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect'> {
|
|
6
6
|
classPrefix: string;
|
|
@@ -20,6 +20,7 @@ export interface DropdownMenuProps<Multiple = false> extends StandardProps, Omit
|
|
|
20
20
|
rowGroupHeight?: number;
|
|
21
21
|
virtualized?: boolean;
|
|
22
22
|
listProps?: Partial<ListProps>;
|
|
23
|
+
listRef?: React.Ref<ListHandle>;
|
|
23
24
|
/** Custom selected option */
|
|
24
25
|
renderMenuItem?: (itemLabel: React.ReactNode, item: any) => React.ReactNode;
|
|
25
26
|
renderMenuGroup?: (title: React.ReactNode, item: any) => React.ReactNode;
|
|
@@ -13,9 +13,9 @@ import getPosition from 'dom-lib/getPosition';
|
|
|
13
13
|
import scrollTop from 'dom-lib/scrollTop';
|
|
14
14
|
import getHeight from 'dom-lib/getHeight';
|
|
15
15
|
import classNames from 'classnames';
|
|
16
|
-
import { List, AutoSizer } from '
|
|
16
|
+
import { List, AutoSizer, VariableSizeList } from '../Windowing';
|
|
17
17
|
import shallowEqual from '../utils/shallowEqual';
|
|
18
|
-
import { mergeRefs, useClassNames } from '../utils';
|
|
18
|
+
import { mergeRefs, useClassNames, useMount } from '../utils';
|
|
19
19
|
import DropdownMenuGroup from './DropdownMenuGroup';
|
|
20
20
|
import { KEY_GROUP, KEY_GROUP_TITLE } from '../utils/getDataGroupBy';
|
|
21
21
|
var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
@@ -36,6 +36,7 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
36
36
|
labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,
|
|
37
37
|
virtualized = props.virtualized,
|
|
38
38
|
listProps = props.listProps,
|
|
39
|
+
virtualizedListRef = props.listRef,
|
|
39
40
|
className = props.className,
|
|
40
41
|
style = props.style,
|
|
41
42
|
focusItemValue = props.focusItemValue,
|
|
@@ -49,7 +50,7 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
49
50
|
renderMenuItem = props.renderMenuItem,
|
|
50
51
|
onGroupTitleClick = props.onGroupTitleClick,
|
|
51
52
|
onSelect = props.onSelect,
|
|
52
|
-
rest = _objectWithoutPropertiesLoose(props, ["data", "group", "maxHeight", "activeItemValues", "disabledItemValues", "classPrefix", "valueKey", "labelKey", "virtualized", "listProps", "className", "style", "focusItemValue", "dropdownMenuItemClassPrefix", "dropdownMenuItemAs", "rowHeight", "rowGroupHeight", "renderMenuGroup", "renderMenuItem", "onGroupTitleClick", "onSelect"]);
|
|
53
|
+
rest = _objectWithoutPropertiesLoose(props, ["data", "group", "maxHeight", "activeItemValues", "disabledItemValues", "classPrefix", "valueKey", "labelKey", "virtualized", "listProps", "listRef", "className", "style", "focusItemValue", "dropdownMenuItemClassPrefix", "dropdownMenuItemAs", "rowHeight", "rowGroupHeight", "renderMenuGroup", "renderMenuItem", "onGroupTitleClick", "onSelect"]);
|
|
53
54
|
|
|
54
55
|
var _useClassNames = useClassNames(classPrefix),
|
|
55
56
|
withClassPrefix = _useClassNames.withClassPrefix,
|
|
@@ -59,12 +60,8 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
59
60
|
var classes = merge(className, withClassPrefix('items', {
|
|
60
61
|
grouped: group
|
|
61
62
|
}));
|
|
62
|
-
|
|
63
|
-
var styles = _extends({}, style, {
|
|
64
|
-
maxHeight: maxHeight
|
|
65
|
-
});
|
|
66
|
-
|
|
67
63
|
var menuBodyContainerRef = useRef(null);
|
|
64
|
+
var listRef = useRef(null);
|
|
68
65
|
|
|
69
66
|
var _useState = useState([]),
|
|
70
67
|
foldedGroupKeys = _useState[0],
|
|
@@ -86,8 +83,7 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
86
83
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, item, event, checked);
|
|
87
84
|
}, [onSelect]);
|
|
88
85
|
|
|
89
|
-
var getRowHeight = function getRowHeight(list,
|
|
90
|
-
var index = _ref.index;
|
|
86
|
+
var getRowHeight = function getRowHeight(list, index) {
|
|
91
87
|
var item = list[index];
|
|
92
88
|
|
|
93
89
|
if (group && item[KEY_GROUP] && index !== 0) {
|
|
@@ -125,10 +121,13 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
125
121
|
}
|
|
126
122
|
}, [focusItemValue, menuBodyContainerRef, prefix]);
|
|
127
123
|
|
|
128
|
-
var renderItem = function renderItem(
|
|
129
|
-
var index =
|
|
130
|
-
|
|
131
|
-
|
|
124
|
+
var renderItem = function renderItem(_ref) {
|
|
125
|
+
var _ref$index = _ref.index,
|
|
126
|
+
index = _ref$index === void 0 ? 0 : _ref$index,
|
|
127
|
+
style = _ref.style,
|
|
128
|
+
data = _ref.data,
|
|
129
|
+
itemData = _ref.item;
|
|
130
|
+
var item = itemData || data[index];
|
|
132
131
|
var value = item[valueKey];
|
|
133
132
|
var label = item[labelKey];
|
|
134
133
|
|
|
@@ -187,40 +186,45 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
187
186
|
return key === ((_item$parent = item.parent) === null || _item$parent === void 0 ? void 0 : _item$parent[KEY_GROUP_TITLE]);
|
|
188
187
|
}));
|
|
189
188
|
}) : data;
|
|
190
|
-
var rowCount = filteredItems.length;
|
|
189
|
+
var rowCount = filteredItems.length;
|
|
190
|
+
useMount(function () {
|
|
191
|
+
var _listRef$current, _listRef$current$scro;
|
|
191
192
|
|
|
192
|
-
|
|
193
|
+
var itemIndex = findIndex(filteredItems, function (item) {
|
|
194
|
+
return item[valueKey] === (activeItemValues === null || activeItemValues === void 0 ? void 0 : activeItemValues[0]);
|
|
195
|
+
});
|
|
196
|
+
(_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : (_listRef$current$scro = _listRef$current.scrollToItem) === null || _listRef$current$scro === void 0 ? void 0 : _listRef$current$scro.call(_listRef$current, itemIndex);
|
|
197
|
+
});
|
|
193
198
|
return /*#__PURE__*/React.createElement("div", _extends({
|
|
194
|
-
role:
|
|
199
|
+
role: "listbox"
|
|
195
200
|
}, rest, {
|
|
196
201
|
className: classes,
|
|
197
202
|
ref: mergeRefs(menuBodyContainerRef, ref),
|
|
198
|
-
style:
|
|
199
|
-
|
|
203
|
+
style: _extends({}, style, {
|
|
204
|
+
maxHeight: maxHeight
|
|
205
|
+
})
|
|
206
|
+
}), virtualized ? /*#__PURE__*/React.createElement(AutoSizer, {
|
|
200
207
|
defaultHeight: maxHeight,
|
|
201
208
|
style: {
|
|
202
209
|
width: 'auto',
|
|
203
210
|
height: 'auto'
|
|
204
211
|
}
|
|
205
|
-
}, function (
|
|
206
|
-
var height =
|
|
207
|
-
width =
|
|
212
|
+
}, function (_ref2) {
|
|
213
|
+
var height = _ref2.height,
|
|
214
|
+
width = _ref2.width;
|
|
208
215
|
return /*#__PURE__*/React.createElement(List, _extends({
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
"aria-readonly": undefined,
|
|
216
|
+
as: VariableSizeList,
|
|
217
|
+
ref: mergeRefs(listRef, virtualizedListRef),
|
|
212
218
|
width: width,
|
|
213
219
|
height: height || maxHeight,
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
return renderItem(filteredItems, {
|
|
223
|
-
index: index
|
|
220
|
+
itemCount: rowCount,
|
|
221
|
+
itemData: filteredItems,
|
|
222
|
+
itemSize: getRowHeight.bind(_this, filteredItems)
|
|
223
|
+
}, listProps), renderItem);
|
|
224
|
+
}) : filteredItems.map(function (item, index) {
|
|
225
|
+
return renderItem({
|
|
226
|
+
index: index,
|
|
227
|
+
item: item
|
|
224
228
|
});
|
|
225
229
|
}));
|
|
226
230
|
});
|