rsuite 6.1.2 → 6.2.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/CHANGELOG.md +27 -0
- package/Timeline/styles/index.css +11 -0
- package/Timeline/styles/index.scss +13 -0
- package/Uploader/styles/index.css +3 -0
- package/Uploader/styles/index.scss +3 -0
- package/cjs/Affix/Affix.js +4 -4
- package/cjs/Animation/Collapse.js +4 -5
- package/cjs/Animation/Transition.d.ts +2 -2
- package/cjs/Animation/Transition.js +17 -20
- package/cjs/AutoComplete/AutoComplete.d.ts +2 -0
- package/cjs/AutoComplete/AutoComplete.js +12 -10
- package/cjs/Avatar/useImage.js +1 -1
- package/cjs/AvatarGroup/AvatarGroup.d.ts +2 -2
- package/cjs/Badge/Badge.js +1 -4
- package/cjs/Breadcrumb/Breadcrumb.js +4 -4
- package/cjs/Button/Button.js +6 -6
- package/cjs/Calendar/Calendar.js +5 -5
- package/cjs/Calendar/CalendarBody.js +1 -1
- package/cjs/Calendar/CalendarContainer.js +14 -33
- package/cjs/Calendar/CalendarHeader.js +7 -8
- package/cjs/Calendar/Grid/GridCell.js +2 -2
- package/cjs/Calendar/Grid/GridHeaderRow.js +1 -1
- package/cjs/Calendar/Grid/GridRow.js +5 -6
- package/cjs/Calendar/MonthDropdown/MonthDropdown.js +1 -1
- package/cjs/Calendar/MonthDropdown/MonthDropdownItem.js +1 -1
- package/cjs/Calendar/TimeDropdown/TimeDropdown.js +12 -14
- package/cjs/Calendar/hooks/useCalendar.d.ts +16 -17
- package/cjs/Calendar/hooks/useCalendar.js +2 -4
- package/cjs/Calendar/hooks/useCalendarDate.js +5 -9
- package/cjs/Calendar/hooks/useCalendarState.js +6 -12
- package/cjs/Calendar/types.d.ts +0 -1
- package/cjs/Carousel/Carousel.js +5 -6
- package/cjs/CascadeTree/CascadeTree.js +6 -16
- package/cjs/CascadeTree/TreeView.js +5 -7
- package/cjs/CascadeTree/hooks/useSearch.d.ts +0 -1
- package/cjs/CascadeTree/hooks/useSearch.js +1 -1
- package/cjs/CascadeTree/hooks/useSelect.d.ts +0 -1
- package/cjs/CascadeTree/hooks/useSelect.js +3 -4
- package/cjs/CascadeTree/types.d.ts +0 -1
- package/cjs/CascadeTree/utils.js +1 -2
- package/cjs/Cascader/Cascader.js +18 -29
- package/cjs/Cascader/useActive.d.ts +0 -1
- package/cjs/Cascader/useActive.js +4 -6
- package/cjs/CheckPicker/CheckPicker.js +14 -15
- package/cjs/CheckTree/CheckTree.js +1 -1
- package/cjs/CheckTree/CheckTreeNode.js +3 -4
- package/cjs/CheckTree/CheckTreeView.js +5 -5
- package/cjs/CheckTree/hooks/useTreeCheckState.js +2 -2
- package/cjs/CheckTree/utils.js +9 -17
- package/cjs/CheckTreePicker/CheckTreePicker.js +7 -7
- package/cjs/CheckTreePicker/hooks/useFocusState.d.ts +0 -1
- package/cjs/CheckTreePicker/hooks/useFocusState.js +3 -6
- package/cjs/Checkbox/Checkbox.js +4 -5
- package/cjs/Checkbox/hooks/useIndeterminateCheckbox.d.ts +0 -1
- package/cjs/Checkbox/hooks/useIndeterminateCheckbox.js +1 -1
- package/cjs/CheckboxGroup/CheckboxGroup.js +2 -2
- package/cjs/DOMHelper/index.d.ts +1 -2
- package/cjs/DOMHelper/isElement.js +1 -1
- package/cjs/DateInput/DateField.d.ts +122 -3
- package/cjs/DateInput/DateField.js +12 -15
- package/cjs/DateInput/DateInput.js +3 -4
- package/cjs/DateInput/hooks/useDateInputState.d.ts +124 -4
- package/cjs/DateInput/hooks/useDateInputState.js +2 -2
- package/cjs/DateInput/hooks/useIsFocused.js +2 -2
- package/cjs/DateInput/hooks/useKeyboardInputEvent.d.ts +0 -1
- package/cjs/DateInput/hooks/useKeyboardInputEvent.js +8 -9
- package/cjs/DateInput/hooks/useSelectedState.d.ts +0 -1
- package/cjs/DateInput/utils.d.ts +0 -1
- package/cjs/DateInput/utils.js +2 -3
- package/cjs/DatePicker/DatePicker.js +18 -25
- package/cjs/DatePicker/PredefinedRanges.js +3 -3
- package/cjs/DatePicker/Toolbar.js +4 -4
- package/cjs/DatePicker/hooks/useCustomizedInput.d.ts +0 -1
- package/cjs/DatePicker/hooks/useFocus.js +5 -8
- package/cjs/DatePicker/hooks/useMonthView.d.ts +0 -1
- package/cjs/DatePicker/hooks/useMonthView.js +1 -1
- package/cjs/DatePicker/utils.d.ts +1 -2
- package/cjs/DatePicker/utils.js +2 -2
- package/cjs/DateRangeInput/DateRangeInput.js +8 -9
- package/cjs/DateRangePicker/Calendar.js +2 -2
- package/cjs/DateRangePicker/DateRangePicker.js +25 -29
- package/cjs/DateRangePicker/Header.js +3 -3
- package/cjs/DateRangePicker/disabledDateUtils.js +2 -2
- package/cjs/DateRangePicker/hooks/useCalendarHandlers.d.ts +0 -1
- package/cjs/DateRangePicker/hooks/useCalendarHandlers.js +5 -5
- package/cjs/DateRangePicker/utils.js +1 -2
- package/cjs/Dropdown/Dropdown.js +3 -3
- package/cjs/Dropdown/DropdownItem.js +4 -5
- package/cjs/Dropdown/DropdownMenu.d.ts +1 -1
- package/cjs/Dropdown/DropdownMenu.js +1 -1
- package/cjs/Form/Form.d.ts +38 -3
- package/cjs/Form/Form.js +25 -12
- package/cjs/Form/hooks/useFormRef.d.ts +0 -1
- package/cjs/Form/hooks/useFormValidate.d.ts +2 -1
- package/cjs/Form/hooks/useFormValidate.js +136 -20
- package/cjs/Form/hooks/useFormValue.d.ts +0 -1
- package/cjs/Form/index.d.ts +1 -0
- package/cjs/Form/resolvers.d.ts +59 -0
- package/cjs/Form/resolvers.js +4 -0
- package/cjs/FormControl/FormControl.js +5 -5
- package/cjs/FormGroup/FormGroupContext.d.ts +1 -1
- package/cjs/Highlight/utils/highlightText.js +1 -1
- package/cjs/InlineEdit/renderChildren.js +5 -6
- package/cjs/InlineEdit/useEditState.js +9 -12
- package/cjs/InlineEdit/useFocusEvent.d.ts +0 -1
- package/cjs/InlineEdit/useFocusEvent.js +7 -11
- package/cjs/Input/Input.js +1 -1
- package/cjs/InputGroup/InputGroupContext.d.ts +2 -1
- package/cjs/InputNumber/index.d.ts +0 -1
- package/cjs/InputPicker/InputAutosize.js +1 -1
- package/cjs/InputPicker/InputPicker.js +30 -35
- package/cjs/InputPicker/InputSearch.js +1 -2
- package/cjs/InputPicker/hooks/useData.d.ts +0 -1
- package/cjs/InputPicker/hooks/useData.js +1 -1
- package/cjs/InputPicker/hooks/useInput.js +3 -6
- package/cjs/InputPicker/hooks/useMaxWidth.js +2 -4
- package/cjs/List/helper/AutoScroller.js +2 -4
- package/cjs/List/helper/useSortHelper.d.ts +4 -4
- package/cjs/List/helper/useSortHelper.js +13 -19
- package/cjs/MaskedInput/TextMask.d.ts +5 -5
- package/cjs/MaskedInput/TextMask.js +3 -5
- package/cjs/MaskedInput/conformToMask.d.ts +1 -1
- package/cjs/MaskedInput/createTextMaskInputElement.js +2 -3
- package/cjs/Menu/MenuItem.js +3 -4
- package/cjs/Message/Message.js +1 -1
- package/cjs/Modal/Modal.js +8 -10
- package/cjs/Modal/ModalBody.js +1 -1
- package/cjs/Modal/utils.d.ts +2 -3
- package/cjs/Modal/utils.js +2 -3
- package/cjs/MultiCascadeTree/SearchView.js +1 -1
- package/cjs/MultiCascadeTree/TreeView.js +2 -2
- package/cjs/MultiCascadeTree/hooks/useCascadeValue.d.ts +0 -1
- package/cjs/MultiCascadeTree/hooks/useCascadeValue.js +5 -8
- package/cjs/MultiCascadeTree/hooks/useColumnData.d.ts +0 -1
- package/cjs/MultiCascadeTree/hooks/useSearch.d.ts +0 -1
- package/cjs/MultiCascadeTree/hooks/useSearch.js +2 -2
- package/cjs/MultiCascadeTree/hooks/useSelect.js +3 -4
- package/cjs/MultiCascadeTree/types.d.ts +0 -1
- package/cjs/MultiCascadeTree/utils.d.ts +4 -4
- package/cjs/MultiCascadeTree/utils.js +2 -3
- package/cjs/MultiCascader/MultiCascader.js +13 -16
- package/cjs/Nav/AdaptiveNavItem.js +2 -3
- package/cjs/Nav/Nav.d.ts +1 -1
- package/cjs/Nav/Nav.js +4 -4
- package/cjs/Nav/NavDropdown.d.ts +1 -1
- package/cjs/Nav/NavDropdown.js +3 -3
- package/cjs/Nav/NavDropdownItem.js +2 -2
- package/cjs/Nav/NavDropdownMenu.d.ts +1 -1
- package/cjs/Nav/NavDropdownMenu.js +1 -1
- package/cjs/Nav/NavItem.js +4 -4
- package/cjs/Navbar/Navbar.js +1 -1
- package/cjs/Navbar/NavbarContent.js +1 -1
- package/cjs/Navbar/NavbarDrawer.js +1 -1
- package/cjs/Navbar/NavbarDropdown.d.ts +1 -1
- package/cjs/Navbar/NavbarDropdown.js +3 -3
- package/cjs/Navbar/NavbarDropdownItem.js +5 -6
- package/cjs/Navbar/NavbarDropdownMenu.d.ts +1 -1
- package/cjs/Navbar/NavbarDropdownMenu.js +1 -1
- package/cjs/Navbar/NavbarItem.js +4 -4
- package/cjs/Navbar/NavbarToggle.js +2 -2
- package/cjs/Notification/Notification.js +1 -1
- package/cjs/NumberInput/NumberInput.js +3 -3
- package/cjs/NumberInput/hooks/useEvents.d.ts +0 -1
- package/cjs/NumberInput/hooks/useEvents.js +2 -3
- package/cjs/NumberInput/hooks/useWheelHandler.js +1 -2
- package/cjs/Pagination/Pagination.js +1 -1
- package/cjs/Pagination/PaginationButton.js +1 -1
- package/cjs/Pagination/PaginationGroup.js +3 -4
- package/cjs/Panel/Panel.js +2 -2
- package/cjs/PanelGroup/PanelGroup.js +1 -1
- package/cjs/PasswordInput/PasswordInput.js +2 -2
- package/cjs/PinInput/PinInput.js +1 -1
- package/cjs/PinInput/hooks/usePinInputRefs.d.ts +0 -1
- package/cjs/PinInput/hooks/usePinInputRefs.js +2 -4
- package/cjs/PinInput/hooks/usePinValue.d.ts +1 -1
- package/cjs/PinInput/hooks/usePinValue.js +2 -2
- package/cjs/Progress/ProgressLine.js +1 -1
- package/cjs/Progress/types.d.ts +0 -1
- package/cjs/ProgressCircle/hooks/useProgressCirclePath.d.ts +0 -1
- package/cjs/Radio/Radio.js +3 -3
- package/cjs/RadioGroup/RadioGroup.js +1 -1
- package/cjs/RadioTile/RadioTile.js +2 -2
- package/cjs/RadioTileGroup/RadioTileGroup.js +1 -1
- package/cjs/RangeSlider/RangeSlider.js +6 -6
- package/cjs/Rate/Character.js +2 -2
- package/cjs/Rate/Rate.js +3 -3
- package/cjs/Rate/useRatingStates.d.ts +0 -1
- package/cjs/SegmentedControl/SegmentedControl.js +3 -3
- package/cjs/SegmentedControl/hooks/useIndicatorPosition.js +1 -1
- package/cjs/SelectPicker/SelectPicker.js +13 -16
- package/cjs/Sidebar/Sidebar.js +1 -1
- package/cjs/Sidenav/ExpandedSidenavDropdown.js +6 -6
- package/cjs/Sidenav/ExpandedSidenavDropdownItem.js +4 -5
- package/cjs/Sidenav/Node.js +9 -16
- package/cjs/Sidenav/Sidenav.js +2 -2
- package/cjs/Sidenav/SidenavDropdown.d.ts +1 -1
- package/cjs/Sidenav/SidenavDropdown.js +4 -4
- package/cjs/Sidenav/SidenavDropdownItem.js +3 -4
- package/cjs/Sidenav/SidenavItem.js +5 -6
- package/cjs/Sidenav/SidenavToggle.js +2 -2
- package/cjs/Slider/Slider.js +3 -3
- package/cjs/Slider/useDrag.d.ts +0 -1
- package/cjs/Slider/useDrag.js +7 -12
- package/cjs/Slider/utils.d.ts +1 -2
- package/cjs/Slider/utils.js +2 -3
- package/cjs/Steps/StepItem.js +1 -2
- package/cjs/Table/Table.d.ts +3 -3
- package/cjs/Tabs/Tabs.js +3 -4
- package/cjs/TimePicker/TimePicker.js +2 -2
- package/cjs/Timeline/Timeline.d.ts +6 -1
- package/cjs/Timeline/Timeline.js +14 -10
- package/cjs/Toggle/Toggle.js +2 -2
- package/cjs/Tree/Tree.js +2 -2
- package/cjs/Tree/TreeNode.js +10 -11
- package/cjs/Tree/TreeView.js +5 -5
- package/cjs/Tree/hooks/useExpandTree.js +1 -1
- package/cjs/Tree/hooks/useFlattenTree.js +6 -9
- package/cjs/Tree/hooks/useFocusTree.d.ts +1 -2
- package/cjs/Tree/hooks/useFocusTree.js +12 -14
- package/cjs/Tree/hooks/useTreeDrag.d.ts +0 -1
- package/cjs/Tree/hooks/useTreeDrag.js +10 -12
- package/cjs/Tree/hooks/useTreeNodeProps.js +1 -1
- package/cjs/Tree/hooks/useTreeSearch.js +4 -4
- package/cjs/Tree/hooks/useVirtualizedTreeData.js +2 -2
- package/cjs/Tree/types.d.ts +2 -3
- package/cjs/Tree/utils/flattenTree.d.ts +1 -1
- package/cjs/Tree/utils/focusableTree.js +5 -8
- package/cjs/Tree/utils/getNodeParentKeys.js +2 -4
- package/cjs/Tree/utils/hasVisibleChildren.d.ts +1 -1
- package/cjs/Tree/utils/treeKeyboardInteractions.js +3 -3
- package/cjs/TreePicker/TreePicker.js +8 -9
- package/cjs/TreePicker/hooks/useFocusState.d.ts +0 -1
- package/cjs/TreePicker/hooks/useFocusState.js +4 -8
- package/cjs/Uploader/UploadFileItem.js +8 -10
- package/cjs/Uploader/UploadTrigger.js +8 -10
- package/cjs/Uploader/Uploader.d.ts +2 -0
- package/cjs/Uploader/Uploader.js +66 -26
- package/cjs/Uploader/utils/ajaxUpload.js +5 -5
- package/cjs/Uploader/utils/previewFile.js +1 -1
- package/cjs/internals/Disclosure/Disclosure.js +5 -8
- package/cjs/internals/Disclosure/DisclosureButton.js +2 -2
- package/cjs/internals/InputBase/InputBase.js +5 -6
- package/cjs/internals/Menu/Menu.js +16 -20
- package/cjs/internals/Menu/MenuItem.js +4 -5
- package/cjs/internals/Menu/Menubar.js +5 -7
- package/cjs/internals/Menu/useMenu.js +5 -10
- package/cjs/internals/Overlay/Modal.js +8 -11
- package/cjs/internals/Overlay/ModalManager.js +3 -5
- package/cjs/internals/Overlay/Overlay.js +1 -1
- package/cjs/internals/Overlay/OverlayTrigger.d.ts +0 -1
- package/cjs/internals/Overlay/OverlayTrigger.js +5 -7
- package/cjs/internals/Overlay/Position.js +6 -8
- package/cjs/internals/Picker/ListCheckItem.js +3 -3
- package/cjs/internals/Picker/ListItem.js +1 -1
- package/cjs/internals/Picker/Listbox.js +9 -10
- package/cjs/internals/Picker/PickerIndicator.js +13 -11
- package/cjs/internals/Picker/PickerPopup.js +4 -5
- package/cjs/internals/Picker/PickerToggle.js +3 -4
- package/cjs/internals/Picker/SelectedElement.js +1 -1
- package/cjs/internals/Picker/hooks/useFocusItemValue.d.ts +0 -1
- package/cjs/internals/Picker/hooks/useFocusItemValue.js +14 -28
- package/cjs/internals/Picker/hooks/usePickerRef.d.ts +0 -1
- package/cjs/internals/Picker/hooks/usePickerRef.js +9 -15
- package/cjs/internals/Picker/hooks/useSearch.d.ts +0 -1
- package/cjs/internals/Picker/hooks/useSearch.js +2 -2
- package/cjs/internals/Picker/hooks/useToggleKeyDownEvent.d.ts +0 -1
- package/cjs/internals/Picker/hooks/useToggleKeyDownEvent.js +13 -17
- package/cjs/internals/Picker/utils.js +9 -9
- package/cjs/internals/Ripple/Ripple.js +3 -4
- package/cjs/internals/SafeAnchor/SafeAnchor.js +1 -1
- package/cjs/internals/ScrollView/hooks/useScrollState.d.ts +0 -1
- package/cjs/internals/ScrollView/hooks/useScrollState.js +2 -3
- package/cjs/internals/Tree/TreeProvider.d.ts +4 -4
- package/cjs/internals/Tree/TreeProvider.js +2 -8
- package/cjs/internals/Tree/types.d.ts +0 -1
- package/cjs/internals/Tree/utils/getParentMap.d.ts +0 -1
- package/cjs/internals/Windowing/AutoSizer.js +2 -3
- package/cjs/internals/Windowing/List.js +4 -8
- package/cjs/internals/constants/index.d.ts +2 -2
- package/cjs/internals/hooks/useClickOutside.js +2 -4
- package/cjs/internals/hooks/useCustom.d.ts +0 -1
- package/cjs/internals/hooks/useCustom.js +5 -7
- package/cjs/internals/hooks/useElementResize.d.ts +0 -1
- package/cjs/internals/hooks/useEventCallback.js +1 -2
- package/cjs/internals/hooks/useEventListener.js +1 -1
- package/cjs/internals/hooks/useFocus.js +2 -4
- package/cjs/internals/hooks/useFocusVirtualListItem.d.ts +0 -1
- package/cjs/internals/hooks/useMount.js +1 -2
- package/cjs/internals/hooks/useRootClose.js +6 -6
- package/cjs/internals/hooks/useTimeout.js +1 -2
- package/cjs/internals/hooks/useToggleCaret.d.ts +0 -1
- package/cjs/internals/hooks/useUniqueId.js +1 -1
- package/cjs/internals/hooks/useUpdatedRef.d.ts +0 -1
- package/cjs/internals/styled-system/style-manager.js +1 -1
- package/cjs/internals/styled-system/useStyled.js +2 -2
- package/cjs/internals/types/utils.d.ts +0 -1
- package/cjs/internals/utils/colours.d.ts +4 -4
- package/cjs/internals/utils/colours.js +1 -1
- package/cjs/internals/utils/date/disableTime.js +6 -12
- package/cjs/internals/utils/date/omitHideDisabledProps.d.ts +1 -1
- package/cjs/internals/utils/date/useDateMode.d.ts +1 -1
- package/cjs/internals/utils/react/ReactChildren.js +1 -2
- package/cjs/internals/utils/react/deprecateComponent.js +1 -2
- package/cjs/internals/utils/react/getDOMNode.js +4 -5
- package/cjs/internals/utils/sizes.d.ts +2 -2
- package/cjs/internals/utils/style-sheet/css.d.ts +0 -1
- package/cjs/internals/utils/style-sheet/css.js +1 -1
- package/cjs/internals/utils/style-sheet/prefix.d.ts +0 -1
- package/cjs/internals/utils/style-sheet/responsive.d.ts +1 -1
- package/cjs/internals/utils/style-sheet/styles.d.ts +3 -3
- package/cjs/internals/utils/style-sheet/styles.js +1 -1
- package/cjs/toaster/ToastContainer.js +3 -5
- package/cjs/toaster/hooks/useDelayedClosure.d.ts +0 -1
- package/cjs/toaster/hooks/useDelayedClosure.js +3 -4
- package/cjs/toaster/toaster.js +42 -15
- package/cjs/useDialog/Dialog.d.ts +1 -1
- package/cjs/useDialog/Dialog.js +1 -1
- package/cjs/useDialog/useDialog.d.ts +1 -1
- package/cjs/useDialog/useDialog.js +3 -3
- package/cjs/useFormControl/hooks/useField.d.ts +0 -1
- package/cjs/useFormControl/hooks/useField.js +5 -7
- package/cjs/useFormControl/hooks/useRegisterModel.js +2 -2
- package/cjs/useFormControl/useFormControl.js +8 -8
- package/cjs/useToaster/useToaster.js +4 -5
- package/dist/rsuite-no-reset.css +14 -0
- package/dist/rsuite-no-reset.min.css +1 -1
- package/dist/rsuite.css +14 -0
- package/dist/rsuite.js +224 -224
- package/dist/rsuite.min.css +1 -1
- package/dist/rsuite.min.js +1 -1
- package/dist/rsuite.min.js.map +1 -1
- package/esm/Affix/Affix.js +4 -4
- package/esm/Animation/Collapse.js +1 -2
- package/esm/Animation/Transition.d.ts +2 -2
- package/esm/Animation/Transition.js +17 -20
- package/esm/AutoComplete/AutoComplete.d.ts +2 -0
- package/esm/AutoComplete/AutoComplete.js +12 -10
- package/esm/Avatar/useImage.js +1 -1
- package/esm/AvatarGroup/AvatarGroup.d.ts +2 -2
- package/esm/Badge/Badge.js +1 -4
- package/esm/Breadcrumb/Breadcrumb.js +4 -4
- package/esm/Button/Button.js +6 -6
- package/esm/Calendar/Calendar.js +5 -5
- package/esm/Calendar/CalendarBody.js +1 -1
- package/esm/Calendar/CalendarContainer.js +14 -33
- package/esm/Calendar/CalendarHeader.js +7 -8
- package/esm/Calendar/Grid/GridCell.js +2 -2
- package/esm/Calendar/Grid/GridHeaderRow.js +1 -1
- package/esm/Calendar/Grid/GridRow.js +5 -6
- package/esm/Calendar/MonthDropdown/MonthDropdown.js +1 -1
- package/esm/Calendar/MonthDropdown/MonthDropdownItem.js +1 -1
- package/esm/Calendar/TimeDropdown/TimeDropdown.js +12 -14
- package/esm/Calendar/hooks/useCalendar.d.ts +16 -17
- package/esm/Calendar/hooks/useCalendar.js +2 -4
- package/esm/Calendar/hooks/useCalendarDate.js +5 -9
- package/esm/Calendar/hooks/useCalendarState.js +6 -12
- package/esm/Calendar/types.d.ts +0 -1
- package/esm/Carousel/Carousel.js +5 -6
- package/esm/CascadeTree/CascadeTree.js +6 -16
- package/esm/CascadeTree/TreeView.js +5 -7
- package/esm/CascadeTree/hooks/useSearch.d.ts +0 -1
- package/esm/CascadeTree/hooks/useSearch.js +1 -1
- package/esm/CascadeTree/hooks/useSelect.d.ts +0 -1
- package/esm/CascadeTree/hooks/useSelect.js +3 -4
- package/esm/CascadeTree/types.d.ts +0 -1
- package/esm/CascadeTree/utils.js +1 -2
- package/esm/Cascader/Cascader.js +18 -29
- package/esm/Cascader/useActive.d.ts +0 -1
- package/esm/Cascader/useActive.js +4 -6
- package/esm/CheckPicker/CheckPicker.js +14 -15
- package/esm/CheckTree/CheckTree.js +1 -1
- package/esm/CheckTree/CheckTreeNode.js +3 -4
- package/esm/CheckTree/CheckTreeView.js +5 -5
- package/esm/CheckTree/hooks/useTreeCheckState.js +2 -2
- package/esm/CheckTree/utils.js +9 -17
- package/esm/CheckTreePicker/CheckTreePicker.js +7 -7
- package/esm/CheckTreePicker/hooks/useFocusState.d.ts +0 -1
- package/esm/CheckTreePicker/hooks/useFocusState.js +3 -6
- package/esm/Checkbox/Checkbox.js +4 -5
- package/esm/Checkbox/hooks/useIndeterminateCheckbox.d.ts +0 -1
- package/esm/Checkbox/hooks/useIndeterminateCheckbox.js +1 -1
- package/esm/CheckboxGroup/CheckboxGroup.js +2 -2
- package/esm/DOMHelper/index.d.ts +1 -2
- package/esm/DOMHelper/isElement.js +1 -1
- package/esm/DateInput/DateField.d.ts +122 -3
- package/esm/DateInput/DateField.js +12 -15
- package/esm/DateInput/DateInput.js +3 -4
- package/esm/DateInput/hooks/useDateInputState.d.ts +124 -4
- package/esm/DateInput/hooks/useDateInputState.js +2 -2
- package/esm/DateInput/hooks/useIsFocused.js +2 -2
- package/esm/DateInput/hooks/useKeyboardInputEvent.d.ts +0 -1
- package/esm/DateInput/hooks/useKeyboardInputEvent.js +8 -9
- package/esm/DateInput/hooks/useSelectedState.d.ts +0 -1
- package/esm/DateInput/utils.d.ts +0 -1
- package/esm/DateInput/utils.js +2 -3
- package/esm/DatePicker/DatePicker.js +18 -25
- package/esm/DatePicker/PredefinedRanges.js +3 -3
- package/esm/DatePicker/Toolbar.js +4 -4
- package/esm/DatePicker/hooks/useCustomizedInput.d.ts +0 -1
- package/esm/DatePicker/hooks/useFocus.js +5 -8
- package/esm/DatePicker/hooks/useMonthView.d.ts +0 -1
- package/esm/DatePicker/hooks/useMonthView.js +1 -1
- package/esm/DatePicker/utils.d.ts +1 -2
- package/esm/DatePicker/utils.js +2 -2
- package/esm/DateRangeInput/DateRangeInput.js +8 -9
- package/esm/DateRangePicker/Calendar.js +2 -2
- package/esm/DateRangePicker/DateRangePicker.js +25 -29
- package/esm/DateRangePicker/Header.js +3 -3
- package/esm/DateRangePicker/disabledDateUtils.js +2 -2
- package/esm/DateRangePicker/hooks/useCalendarHandlers.d.ts +0 -1
- package/esm/DateRangePicker/hooks/useCalendarHandlers.js +5 -5
- package/esm/DateRangePicker/utils.js +1 -2
- package/esm/Dropdown/Dropdown.js +3 -3
- package/esm/Dropdown/DropdownItem.js +4 -5
- package/esm/Dropdown/DropdownMenu.d.ts +1 -1
- package/esm/Dropdown/DropdownMenu.js +1 -1
- package/esm/Form/Form.d.ts +38 -3
- package/esm/Form/Form.js +25 -12
- package/esm/Form/hooks/useFormRef.d.ts +0 -1
- package/esm/Form/hooks/useFormValidate.d.ts +2 -1
- package/esm/Form/hooks/useFormValidate.js +136 -20
- package/esm/Form/hooks/useFormValue.d.ts +0 -1
- package/esm/Form/index.d.ts +1 -0
- package/esm/Form/resolvers.d.ts +59 -0
- package/esm/Form/resolvers.js +2 -0
- package/esm/FormControl/FormControl.js +5 -5
- package/esm/FormGroup/FormGroupContext.d.ts +1 -1
- package/esm/Highlight/utils/highlightText.js +1 -1
- package/esm/InlineEdit/renderChildren.js +5 -6
- package/esm/InlineEdit/useEditState.js +9 -12
- package/esm/InlineEdit/useFocusEvent.d.ts +0 -1
- package/esm/InlineEdit/useFocusEvent.js +7 -11
- package/esm/Input/Input.js +1 -1
- package/esm/InputGroup/InputGroupContext.d.ts +2 -1
- package/esm/InputNumber/index.d.ts +0 -1
- package/esm/InputPicker/InputAutosize.js +1 -1
- package/esm/InputPicker/InputPicker.js +30 -35
- package/esm/InputPicker/InputSearch.js +1 -2
- package/esm/InputPicker/hooks/useData.d.ts +0 -1
- package/esm/InputPicker/hooks/useData.js +1 -1
- package/esm/InputPicker/hooks/useInput.js +3 -6
- package/esm/InputPicker/hooks/useMaxWidth.js +2 -4
- package/esm/List/helper/AutoScroller.js +2 -4
- package/esm/List/helper/useSortHelper.d.ts +4 -4
- package/esm/List/helper/useSortHelper.js +13 -19
- package/esm/MaskedInput/TextMask.d.ts +5 -5
- package/esm/MaskedInput/TextMask.js +3 -5
- package/esm/MaskedInput/conformToMask.d.ts +1 -1
- package/esm/MaskedInput/createTextMaskInputElement.js +2 -3
- package/esm/Menu/MenuItem.js +3 -4
- package/esm/Message/Message.js +1 -1
- package/esm/Modal/Modal.js +8 -10
- package/esm/Modal/ModalBody.js +1 -1
- package/esm/Modal/utils.d.ts +2 -3
- package/esm/Modal/utils.js +2 -3
- package/esm/MultiCascadeTree/SearchView.js +1 -1
- package/esm/MultiCascadeTree/TreeView.js +2 -2
- package/esm/MultiCascadeTree/hooks/useCascadeValue.d.ts +0 -1
- package/esm/MultiCascadeTree/hooks/useCascadeValue.js +5 -8
- package/esm/MultiCascadeTree/hooks/useColumnData.d.ts +0 -1
- package/esm/MultiCascadeTree/hooks/useSearch.d.ts +0 -1
- package/esm/MultiCascadeTree/hooks/useSearch.js +2 -2
- package/esm/MultiCascadeTree/hooks/useSelect.js +3 -4
- package/esm/MultiCascadeTree/types.d.ts +0 -1
- package/esm/MultiCascadeTree/utils.d.ts +4 -4
- package/esm/MultiCascadeTree/utils.js +2 -3
- package/esm/MultiCascader/MultiCascader.js +13 -16
- package/esm/Nav/AdaptiveNavItem.js +2 -3
- package/esm/Nav/Nav.d.ts +1 -1
- package/esm/Nav/Nav.js +4 -4
- package/esm/Nav/NavDropdown.d.ts +1 -1
- package/esm/Nav/NavDropdown.js +3 -3
- package/esm/Nav/NavDropdownItem.js +2 -2
- package/esm/Nav/NavDropdownMenu.d.ts +1 -1
- package/esm/Nav/NavDropdownMenu.js +1 -1
- package/esm/Nav/NavItem.js +4 -4
- package/esm/Navbar/Navbar.js +1 -1
- package/esm/Navbar/NavbarContent.js +1 -1
- package/esm/Navbar/NavbarDrawer.js +1 -1
- package/esm/Navbar/NavbarDropdown.d.ts +1 -1
- package/esm/Navbar/NavbarDropdown.js +3 -3
- package/esm/Navbar/NavbarDropdownItem.js +5 -6
- package/esm/Navbar/NavbarDropdownMenu.d.ts +1 -1
- package/esm/Navbar/NavbarDropdownMenu.js +1 -1
- package/esm/Navbar/NavbarItem.js +4 -4
- package/esm/Navbar/NavbarToggle.js +2 -2
- package/esm/Notification/Notification.js +1 -1
- package/esm/NumberInput/NumberInput.js +3 -3
- package/esm/NumberInput/hooks/useEvents.d.ts +0 -1
- package/esm/NumberInput/hooks/useEvents.js +2 -3
- package/esm/NumberInput/hooks/useWheelHandler.js +1 -2
- package/esm/Pagination/Pagination.js +1 -1
- package/esm/Pagination/PaginationButton.js +1 -1
- package/esm/Pagination/PaginationGroup.js +3 -4
- package/esm/Panel/Panel.js +2 -2
- package/esm/PanelGroup/PanelGroup.js +1 -1
- package/esm/PasswordInput/PasswordInput.js +2 -2
- package/esm/PinInput/PinInput.js +1 -1
- package/esm/PinInput/hooks/usePinInputRefs.d.ts +0 -1
- package/esm/PinInput/hooks/usePinInputRefs.js +2 -4
- package/esm/PinInput/hooks/usePinValue.d.ts +1 -1
- package/esm/PinInput/hooks/usePinValue.js +2 -2
- package/esm/Progress/ProgressLine.js +1 -1
- package/esm/Progress/types.d.ts +0 -1
- package/esm/ProgressCircle/hooks/useProgressCirclePath.d.ts +0 -1
- package/esm/Radio/Radio.js +3 -3
- package/esm/RadioGroup/RadioGroup.js +1 -1
- package/esm/RadioTile/RadioTile.js +2 -2
- package/esm/RadioTileGroup/RadioTileGroup.js +1 -1
- package/esm/RangeSlider/RangeSlider.js +6 -6
- package/esm/Rate/Character.js +2 -2
- package/esm/Rate/Rate.js +3 -3
- package/esm/Rate/useRatingStates.d.ts +0 -1
- package/esm/SegmentedControl/SegmentedControl.js +3 -3
- package/esm/SegmentedControl/hooks/useIndicatorPosition.js +1 -1
- package/esm/SelectPicker/SelectPicker.js +13 -16
- package/esm/Sidebar/Sidebar.js +1 -1
- package/esm/Sidenav/ExpandedSidenavDropdown.js +6 -6
- package/esm/Sidenav/ExpandedSidenavDropdownItem.js +4 -5
- package/esm/Sidenav/Node.js +9 -16
- package/esm/Sidenav/Sidenav.js +2 -2
- package/esm/Sidenav/SidenavDropdown.d.ts +1 -1
- package/esm/Sidenav/SidenavDropdown.js +4 -4
- package/esm/Sidenav/SidenavDropdownItem.js +3 -4
- package/esm/Sidenav/SidenavItem.js +5 -6
- package/esm/Sidenav/SidenavToggle.js +2 -2
- package/esm/Slider/Slider.js +3 -3
- package/esm/Slider/useDrag.d.ts +0 -1
- package/esm/Slider/useDrag.js +7 -12
- package/esm/Slider/utils.d.ts +1 -2
- package/esm/Slider/utils.js +2 -3
- package/esm/Steps/StepItem.js +1 -2
- package/esm/Table/Table.d.ts +3 -3
- package/esm/Tabs/Tabs.js +3 -4
- package/esm/TimePicker/TimePicker.js +2 -2
- package/esm/Timeline/Timeline.d.ts +6 -1
- package/esm/Timeline/Timeline.js +14 -10
- package/esm/Toggle/Toggle.js +2 -2
- package/esm/Tree/Tree.js +2 -2
- package/esm/Tree/TreeNode.js +10 -11
- package/esm/Tree/TreeView.js +5 -5
- package/esm/Tree/hooks/useExpandTree.js +1 -1
- package/esm/Tree/hooks/useFlattenTree.js +6 -9
- package/esm/Tree/hooks/useFocusTree.d.ts +1 -2
- package/esm/Tree/hooks/useFocusTree.js +12 -14
- package/esm/Tree/hooks/useTreeDrag.d.ts +0 -1
- package/esm/Tree/hooks/useTreeDrag.js +10 -12
- package/esm/Tree/hooks/useTreeNodeProps.js +1 -1
- package/esm/Tree/hooks/useTreeSearch.js +4 -4
- package/esm/Tree/hooks/useVirtualizedTreeData.js +2 -2
- package/esm/Tree/types.d.ts +2 -3
- package/esm/Tree/utils/flattenTree.d.ts +1 -1
- package/esm/Tree/utils/focusableTree.js +5 -8
- package/esm/Tree/utils/getNodeParentKeys.js +2 -4
- package/esm/Tree/utils/hasVisibleChildren.d.ts +1 -1
- package/esm/Tree/utils/treeKeyboardInteractions.js +3 -3
- package/esm/TreePicker/TreePicker.js +8 -9
- package/esm/TreePicker/hooks/useFocusState.d.ts +0 -1
- package/esm/TreePicker/hooks/useFocusState.js +4 -8
- package/esm/Uploader/UploadFileItem.js +8 -10
- package/esm/Uploader/UploadTrigger.js +8 -10
- package/esm/Uploader/Uploader.d.ts +2 -0
- package/esm/Uploader/Uploader.js +66 -26
- package/esm/Uploader/utils/ajaxUpload.js +5 -5
- package/esm/Uploader/utils/previewFile.js +1 -1
- package/esm/internals/Disclosure/Disclosure.js +5 -8
- package/esm/internals/Disclosure/DisclosureButton.js +2 -2
- package/esm/internals/InputBase/InputBase.js +5 -6
- package/esm/internals/Menu/Menu.js +16 -20
- package/esm/internals/Menu/MenuItem.js +4 -5
- package/esm/internals/Menu/Menubar.js +5 -7
- package/esm/internals/Menu/useMenu.js +5 -10
- package/esm/internals/Overlay/Modal.js +8 -11
- package/esm/internals/Overlay/ModalManager.js +3 -5
- package/esm/internals/Overlay/Overlay.js +1 -1
- package/esm/internals/Overlay/OverlayTrigger.d.ts +0 -1
- package/esm/internals/Overlay/OverlayTrigger.js +5 -7
- package/esm/internals/Overlay/Position.js +6 -8
- package/esm/internals/Picker/ListCheckItem.js +3 -3
- package/esm/internals/Picker/ListItem.js +1 -1
- package/esm/internals/Picker/Listbox.js +9 -10
- package/esm/internals/Picker/PickerIndicator.js +13 -11
- package/esm/internals/Picker/PickerPopup.js +4 -5
- package/esm/internals/Picker/PickerToggle.js +3 -4
- package/esm/internals/Picker/SelectedElement.js +1 -1
- package/esm/internals/Picker/hooks/useFocusItemValue.d.ts +0 -1
- package/esm/internals/Picker/hooks/useFocusItemValue.js +14 -28
- package/esm/internals/Picker/hooks/usePickerRef.d.ts +0 -1
- package/esm/internals/Picker/hooks/usePickerRef.js +9 -15
- package/esm/internals/Picker/hooks/useSearch.d.ts +0 -1
- package/esm/internals/Picker/hooks/useSearch.js +2 -2
- package/esm/internals/Picker/hooks/useToggleKeyDownEvent.d.ts +0 -1
- package/esm/internals/Picker/hooks/useToggleKeyDownEvent.js +13 -17
- package/esm/internals/Picker/utils.js +9 -9
- package/esm/internals/Ripple/Ripple.js +3 -4
- package/esm/internals/SafeAnchor/SafeAnchor.js +1 -1
- package/esm/internals/ScrollView/hooks/useScrollState.d.ts +0 -1
- package/esm/internals/ScrollView/hooks/useScrollState.js +2 -3
- package/esm/internals/Tree/TreeProvider.d.ts +4 -4
- package/esm/internals/Tree/TreeProvider.js +2 -8
- package/esm/internals/Tree/types.d.ts +0 -1
- package/esm/internals/Tree/utils/getParentMap.d.ts +0 -1
- package/esm/internals/Windowing/AutoSizer.js +2 -3
- package/esm/internals/Windowing/List.js +4 -8
- package/esm/internals/constants/index.d.ts +2 -2
- package/esm/internals/hooks/useClickOutside.js +2 -4
- package/esm/internals/hooks/useCustom.d.ts +0 -1
- package/esm/internals/hooks/useCustom.js +5 -7
- package/esm/internals/hooks/useElementResize.d.ts +0 -1
- package/esm/internals/hooks/useEventCallback.js +1 -2
- package/esm/internals/hooks/useEventListener.js +1 -1
- package/esm/internals/hooks/useFocus.js +2 -4
- package/esm/internals/hooks/useFocusVirtualListItem.d.ts +0 -1
- package/esm/internals/hooks/useMount.js +1 -2
- package/esm/internals/hooks/useRootClose.js +6 -6
- package/esm/internals/hooks/useTimeout.js +1 -2
- package/esm/internals/hooks/useToggleCaret.d.ts +0 -1
- package/esm/internals/hooks/useUniqueId.js +1 -1
- package/esm/internals/hooks/useUpdatedRef.d.ts +0 -1
- package/esm/internals/styled-system/style-manager.js +1 -1
- package/esm/internals/styled-system/useStyled.js +2 -2
- package/esm/internals/types/utils.d.ts +0 -1
- package/esm/internals/utils/colours.d.ts +4 -4
- package/esm/internals/utils/colours.js +1 -1
- package/esm/internals/utils/date/disableTime.js +6 -12
- package/esm/internals/utils/date/omitHideDisabledProps.d.ts +1 -1
- package/esm/internals/utils/date/useDateMode.d.ts +1 -1
- package/esm/internals/utils/react/ReactChildren.js +1 -2
- package/esm/internals/utils/react/deprecateComponent.js +1 -2
- package/esm/internals/utils/react/getDOMNode.js +4 -5
- package/esm/internals/utils/sizes.d.ts +2 -2
- package/esm/internals/utils/style-sheet/css.d.ts +0 -1
- package/esm/internals/utils/style-sheet/css.js +1 -1
- package/esm/internals/utils/style-sheet/prefix.d.ts +0 -1
- package/esm/internals/utils/style-sheet/responsive.d.ts +1 -1
- package/esm/internals/utils/style-sheet/styles.d.ts +3 -3
- package/esm/internals/utils/style-sheet/styles.js +1 -1
- package/esm/toaster/ToastContainer.js +3 -5
- package/esm/toaster/hooks/useDelayedClosure.d.ts +0 -1
- package/esm/toaster/hooks/useDelayedClosure.js +3 -4
- package/esm/toaster/toaster.js +42 -15
- package/esm/useDialog/Dialog.d.ts +1 -1
- package/esm/useDialog/Dialog.js +1 -1
- package/esm/useDialog/useDialog.d.ts +1 -1
- package/esm/useDialog/useDialog.js +3 -3
- package/esm/useFormControl/hooks/useField.d.ts +0 -1
- package/esm/useFormControl/hooks/useField.js +5 -7
- package/esm/useFormControl/hooks/useRegisterModel.js +2 -2
- package/esm/useFormControl/useFormControl.js +8 -8
- package/esm/useToaster/useToaster.js +4 -5
- package/package.json +1 -1
package/cjs/Cascader/Cascader.js
CHANGED
|
@@ -83,29 +83,22 @@ const Cascader = (0, _utils3.forwardRef)((props, ref) => {
|
|
|
83
83
|
const childrenMap = (0, _hooks2.useMap)();
|
|
84
84
|
|
|
85
85
|
// Store the parent of each node
|
|
86
|
-
const parentMap = (0, _react.useMemo)(() => (0, _utils2.getParentMap)(data, item =>
|
|
87
|
-
var _childrenMap$get;
|
|
88
|
-
return (_childrenMap$get = childrenMap.get(item)) !== null && _childrenMap$get !== void 0 ? _childrenMap$get : item[childrenKey];
|
|
89
|
-
}), [childrenMap, childrenKey, data]);
|
|
86
|
+
const parentMap = (0, _react.useMemo)(() => (0, _utils2.getParentMap)(data, item => childrenMap.get(item) ?? item[childrenKey]), [childrenMap, childrenKey, data]);
|
|
90
87
|
|
|
91
88
|
// Flatten the tree data
|
|
92
|
-
const flattenedData = (0, _react.useMemo)(() => (0, _utils.flattenTree)(data, item =>
|
|
93
|
-
var _childrenMap$get2;
|
|
94
|
-
return (_childrenMap$get2 = childrenMap.get(item)) !== null && _childrenMap$get2 !== void 0 ? _childrenMap$get2 : item[childrenKey];
|
|
95
|
-
}), [childrenMap, childrenKey, data]);
|
|
89
|
+
const flattenedData = (0, _react.useMemo)(() => (0, _utils.flattenTree)(data, item => childrenMap.get(item) ?? item[childrenKey]), [childrenMap, childrenKey, data]);
|
|
96
90
|
|
|
97
91
|
// The selected item
|
|
98
92
|
const selectedItem = flattenedData.find(item => item[valueKey] === value);
|
|
99
93
|
|
|
100
94
|
// Callback function after selecting the node
|
|
101
95
|
const onSelectCallback = (node, event) => {
|
|
102
|
-
var _trigger$current;
|
|
103
96
|
const {
|
|
104
97
|
isLeafNode,
|
|
105
98
|
cascadePaths,
|
|
106
99
|
itemData
|
|
107
100
|
} = node;
|
|
108
|
-
onSelect
|
|
101
|
+
onSelect?.(itemData, cascadePaths, event);
|
|
109
102
|
const nextValue = itemData[valueKey];
|
|
110
103
|
if (isLeafNode) {
|
|
111
104
|
// Determines whether the option is a leaf node, and if so, closes the picker.
|
|
@@ -117,11 +110,11 @@ const Cascader = (0, _utils3.forwardRef)((props, ref) => {
|
|
|
117
110
|
// When the parent is optional, the value and the displayed path are updated.
|
|
118
111
|
if (parentSelectable && !(0, _utils3.shallowEqual)(value, nextValue)) {
|
|
119
112
|
setValue(nextValue);
|
|
120
|
-
onChange
|
|
113
|
+
onChange?.(nextValue, event);
|
|
121
114
|
}
|
|
122
115
|
|
|
123
116
|
// Update menu position
|
|
124
|
-
|
|
117
|
+
trigger.current?.updatePosition();
|
|
125
118
|
};
|
|
126
119
|
const {
|
|
127
120
|
activeItem,
|
|
@@ -147,10 +140,7 @@ const Cascader = (0, _utils3.forwardRef)((props, ref) => {
|
|
|
147
140
|
activeItem,
|
|
148
141
|
selectedItem,
|
|
149
142
|
getParent: item => parentMap.get(item),
|
|
150
|
-
getChildren: item =>
|
|
151
|
-
var _childrenMap$get3;
|
|
152
|
-
return (_childrenMap$get3 = childrenMap.get(item)) !== null && _childrenMap$get3 !== void 0 ? _childrenMap$get3 : item[childrenKey];
|
|
153
|
-
}
|
|
143
|
+
getChildren: item => childrenMap.get(item) ?? item[childrenKey]
|
|
154
144
|
});
|
|
155
145
|
|
|
156
146
|
/**
|
|
@@ -177,13 +167,13 @@ const Cascader = (0, _utils3.forwardRef)((props, ref) => {
|
|
|
177
167
|
rtl,
|
|
178
168
|
data: flattenedData,
|
|
179
169
|
valueKey,
|
|
180
|
-
defaultLayer: pathTowardsSelectedItem
|
|
170
|
+
defaultLayer: pathTowardsSelectedItem?.length ? pathTowardsSelectedItem.length - 1 : 0,
|
|
181
171
|
target: () => overlay.current,
|
|
182
172
|
getParent: item => parentMap.get(item),
|
|
183
173
|
callback: onFocusItemCallback
|
|
184
174
|
});
|
|
185
175
|
const onSearchCallback = (value, items, event) => {
|
|
186
|
-
onSearch
|
|
176
|
+
onSearch?.(value, event);
|
|
187
177
|
if (!value || items.length === 0) {
|
|
188
178
|
setFocusItemValue(undefined);
|
|
189
179
|
return;
|
|
@@ -217,18 +207,17 @@ const Cascader = (0, _utils3.forwardRef)((props, ref) => {
|
|
|
217
207
|
setSearchKeyword
|
|
218
208
|
});
|
|
219
209
|
const handleClose = (0, _hooks2.useEventCallback)(() => {
|
|
220
|
-
|
|
221
|
-
(_trigger$current2 = trigger.current) === null || _trigger$current2 === void 0 || _trigger$current2.close();
|
|
210
|
+
trigger.current?.close();
|
|
222
211
|
|
|
223
212
|
// The focus is on the trigger button after closing
|
|
224
|
-
|
|
213
|
+
target.current?.focus?.();
|
|
225
214
|
});
|
|
226
215
|
const handleClean = (0, _hooks2.useEventCallback)(event => {
|
|
227
216
|
if (disabled || !target.current) {
|
|
228
217
|
return;
|
|
229
218
|
}
|
|
230
219
|
setValue(null);
|
|
231
|
-
onChange
|
|
220
|
+
onChange?.(null, event);
|
|
232
221
|
});
|
|
233
222
|
const handleMenuPressEnter = (0, _hooks2.useEventCallback)(event => {
|
|
234
223
|
const focusItem = (0, _utils2.findNodeOfTree)(data, item => item[valueKey] === focusItemValue);
|
|
@@ -239,8 +228,8 @@ const Cascader = (0, _utils3.forwardRef)((props, ref) => {
|
|
|
239
228
|
setLayer(pathTowardsActiveItem.length - 1);
|
|
240
229
|
}
|
|
241
230
|
if (!(0, _utils3.shallowEqual)(value, focusItemValue)) {
|
|
242
|
-
onSelect
|
|
243
|
-
onChange
|
|
231
|
+
onSelect?.(focusItem, pathTowardsActiveItem, event);
|
|
232
|
+
onChange?.(focusItemValue ?? null, event);
|
|
244
233
|
}
|
|
245
234
|
handleClose();
|
|
246
235
|
}
|
|
@@ -266,8 +255,8 @@ const Cascader = (0, _utils3.forwardRef)((props, ref) => {
|
|
|
266
255
|
handleClose();
|
|
267
256
|
setSearchKeyword('');
|
|
268
257
|
setValue(nextValue);
|
|
269
|
-
onSelect
|
|
270
|
-
onChange
|
|
258
|
+
onSelect?.(itemData, nodes, event);
|
|
259
|
+
onChange?.(nextValue, event);
|
|
271
260
|
});
|
|
272
261
|
const renderCascadeColumn = (childNodes, column) => {
|
|
273
262
|
if (typeof renderColumn === 'function') {
|
|
@@ -320,7 +309,7 @@ const Cascader = (0, _utils3.forwardRef)((props, ref) => {
|
|
|
320
309
|
onSelect: handleSelect,
|
|
321
310
|
renderColumn: renderCascadeColumn,
|
|
322
311
|
renderTreeNode: renderCascadeTreeNode
|
|
323
|
-
}), renderExtraFooter
|
|
312
|
+
}), renderExtraFooter?.());
|
|
324
313
|
};
|
|
325
314
|
let selectedElement = placeholder;
|
|
326
315
|
if (pathTowardsSelectedItem.length > 0) {
|
|
@@ -376,9 +365,9 @@ const Cascader = (0, _utils3.forwardRef)((props, ref) => {
|
|
|
376
365
|
hasValue: hasValue,
|
|
377
366
|
active: active,
|
|
378
367
|
placement: placement,
|
|
379
|
-
inputValue: value
|
|
368
|
+
inputValue: value ?? '',
|
|
380
369
|
focusItemValue: focusItemValue
|
|
381
|
-
}, rest), selectedElement ||
|
|
370
|
+
}, rest), selectedElement || locale?.placeholder));
|
|
382
371
|
});
|
|
383
372
|
Cascader.displayName = 'Cascader';
|
|
384
373
|
var _default = exports.default = Cascader;
|
|
@@ -15,21 +15,19 @@ const useActive = props => {
|
|
|
15
15
|
// Use component active state to support keyboard events.
|
|
16
16
|
const [active, setActive] = (0, _react.useState)(false);
|
|
17
17
|
const onEnter = (0, _hooks.useEventCallback)(node => {
|
|
18
|
-
|
|
19
|
-
(_props$onEnter = props.onEnter) === null || _props$onEnter === void 0 || _props$onEnter.call(props, node);
|
|
18
|
+
props.onEnter?.(node);
|
|
20
19
|
if (!target.current) {
|
|
21
20
|
return;
|
|
22
21
|
}
|
|
23
|
-
onOpen
|
|
22
|
+
onOpen?.();
|
|
24
23
|
setActive(true);
|
|
25
24
|
});
|
|
26
25
|
const onExit = (0, _hooks.useEventCallback)(node => {
|
|
27
|
-
|
|
28
|
-
(_props$onExit = props.onExit) === null || _props$onExit === void 0 || _props$onExit.call(props, node);
|
|
26
|
+
props.onExit?.(node);
|
|
29
27
|
if (!target.current) {
|
|
30
28
|
return;
|
|
31
29
|
}
|
|
32
|
-
onClose
|
|
30
|
+
onClose?.();
|
|
33
31
|
setActive(false);
|
|
34
32
|
setSearchKeyword('');
|
|
35
33
|
});
|
|
@@ -88,16 +88,15 @@ const CheckPicker = (0, _utils2.forwardRef)((props, ref) => {
|
|
|
88
88
|
focusItemValue,
|
|
89
89
|
setFocusItemValue,
|
|
90
90
|
onKeyDown: onFocusItem
|
|
91
|
-
} = (0, _Picker.useFocusItemValue)(value
|
|
91
|
+
} = (0, _Picker.useFocusItemValue)(value?.[0], {
|
|
92
92
|
data,
|
|
93
93
|
valueKey,
|
|
94
94
|
target: () => overlay.current
|
|
95
95
|
});
|
|
96
96
|
const handleSearchCallback = (0, _hooks.useEventCallback)((searchKeyword, filteredData, event) => {
|
|
97
|
-
var _filteredData$;
|
|
98
97
|
// The first option after filtering is the focus.
|
|
99
|
-
setFocusItemValue(filteredData
|
|
100
|
-
onSearch
|
|
98
|
+
setFocusItemValue(filteredData?.[0]?.[valueKey]);
|
|
99
|
+
onSearch?.(searchKeyword, event);
|
|
101
100
|
});
|
|
102
101
|
|
|
103
102
|
// Use search keywords to filter options.
|
|
@@ -132,14 +131,14 @@ const CheckPicker = (0, _utils2.forwardRef)((props, ref) => {
|
|
|
132
131
|
setStickyItems(nextStickyItems);
|
|
133
132
|
};
|
|
134
133
|
const handleChangeValue = (0, _hooks.useEventCallback)((value, event) => {
|
|
135
|
-
onChange
|
|
134
|
+
onChange?.(value, event);
|
|
136
135
|
});
|
|
137
136
|
const handleClean = (0, _hooks.useEventCallback)(event => {
|
|
138
137
|
if (disabled || !cleanable) {
|
|
139
138
|
return;
|
|
140
139
|
}
|
|
141
140
|
setValue([]);
|
|
142
|
-
onClean
|
|
141
|
+
onClean?.(event);
|
|
143
142
|
handleChangeValue([], event);
|
|
144
143
|
});
|
|
145
144
|
const handleMenuPressEnter = event => {
|
|
@@ -152,7 +151,7 @@ const CheckPicker = (0, _utils2.forwardRef)((props, ref) => {
|
|
|
152
151
|
} else {
|
|
153
152
|
(0, _remove.default)(nextValue, itemVal => (0, _utils2.shallowEqual)(itemVal, focusItemValue));
|
|
154
153
|
}
|
|
155
|
-
const focusItem = data.find(item => (0, _utils2.shallowEqual)(item
|
|
154
|
+
const focusItem = data.find(item => (0, _utils2.shallowEqual)(item?.[valueKey], focusItemValue));
|
|
156
155
|
setValue(nextValue);
|
|
157
156
|
handleSelect(nextValue, focusItem, event);
|
|
158
157
|
handleChangeValue(nextValue, event);
|
|
@@ -171,7 +170,7 @@ const CheckPicker = (0, _utils2.forwardRef)((props, ref) => {
|
|
|
171
170
|
...rest
|
|
172
171
|
});
|
|
173
172
|
const handleSelect = (0, _hooks.useEventCallback)((nextItemValue, item, event) => {
|
|
174
|
-
onSelect
|
|
173
|
+
onSelect?.(nextItemValue, item, event);
|
|
175
174
|
});
|
|
176
175
|
const handleItemSelect = (0, _hooks.useEventCallback)((nextItemValue, item, event, checked) => {
|
|
177
176
|
const nextValue = (0, _clone.default)(value);
|
|
@@ -193,13 +192,13 @@ const CheckPicker = (0, _utils2.forwardRef)((props, ref) => {
|
|
|
193
192
|
setFocusItemValue(null);
|
|
194
193
|
setActive(false);
|
|
195
194
|
});
|
|
196
|
-
const selectedItems = data.filter(item => value
|
|
195
|
+
const selectedItems = data.filter(item => value?.some(val => (0, _utils2.shallowEqual)(item[valueKey], val))) || [];
|
|
197
196
|
|
|
198
197
|
/**
|
|
199
198
|
* 1.Have a value and the value is valid.
|
|
200
199
|
* 2.Regardless of whether the value is valid, as long as renderValue is set, it is judged to have a value.
|
|
201
200
|
*/
|
|
202
|
-
let hasValue = selectedItems.length > 0 ||
|
|
201
|
+
let hasValue = selectedItems.length > 0 || value?.length > 0 && (0, _isFunction.default)(renderValue);
|
|
203
202
|
const {
|
|
204
203
|
prefix,
|
|
205
204
|
merge
|
|
@@ -215,7 +214,7 @@ const CheckPicker = (0, _utils2.forwardRef)((props, ref) => {
|
|
|
215
214
|
badgeSize: size
|
|
216
215
|
});
|
|
217
216
|
}
|
|
218
|
-
if (
|
|
217
|
+
if (value?.length > 0 && (0, _isFunction.default)(renderValue)) {
|
|
219
218
|
selectedElement = renderValue(value, selectedItems, selectedElement);
|
|
220
219
|
// If renderValue returns null or undefined, hasValue is false.
|
|
221
220
|
if ((0, _isNil.default)(selectedElement)) {
|
|
@@ -263,7 +262,7 @@ const CheckPicker = (0, _utils2.forwardRef)((props, ref) => {
|
|
|
263
262
|
query: searchKeyword
|
|
264
263
|
}) : /*#__PURE__*/_react.default.createElement("div", {
|
|
265
264
|
className: prefix`none`
|
|
266
|
-
}, locale
|
|
265
|
+
}, locale?.noResultsText);
|
|
267
266
|
return /*#__PURE__*/_react.default.createElement(_Picker.PickerPopup, {
|
|
268
267
|
ref: (0, _utils2.mergeRefs)(overlay, speakerRef),
|
|
269
268
|
autoWidth: popupAutoWidth,
|
|
@@ -272,11 +271,11 @@ const CheckPicker = (0, _utils2.forwardRef)((props, ref) => {
|
|
|
272
271
|
onKeyDown: onPickerKeyDown,
|
|
273
272
|
target: trigger
|
|
274
273
|
}, searchable && /*#__PURE__*/_react.default.createElement(_SearchBox.default, {
|
|
275
|
-
placeholder: locale
|
|
274
|
+
placeholder: locale?.searchPlaceholder,
|
|
276
275
|
onChange: handleSearch,
|
|
277
276
|
value: searchKeyword,
|
|
278
277
|
inputRef: searchInput
|
|
279
|
-
}), renderListbox ? renderListbox(listbox) : listbox, renderExtraFooter
|
|
278
|
+
}), renderListbox ? renderListbox(listbox) : listbox, renderExtraFooter?.());
|
|
280
279
|
};
|
|
281
280
|
const triggerProps = {
|
|
282
281
|
...(0, _pick.default)(props, _Picker.triggerPropKeys),
|
|
@@ -314,7 +313,7 @@ const CheckPicker = (0, _utils2.forwardRef)((props, ref) => {
|
|
|
314
313
|
inputValue: value,
|
|
315
314
|
focusItemValue: focusItemValue,
|
|
316
315
|
size: size
|
|
317
|
-
}, rest), selectedElement ||
|
|
316
|
+
}, rest), selectedElement || locale?.placeholder));
|
|
318
317
|
});
|
|
319
318
|
CheckPicker.displayName = 'CheckPicker';
|
|
320
319
|
var _default = exports.default = CheckPicker;
|
|
@@ -81,7 +81,7 @@ const CheckTree = (0, _utils.forwardRef)((props, ref) => {
|
|
|
81
81
|
});
|
|
82
82
|
const handleChange = (0, _hooks.useEventCallback)((nextValue, event) => {
|
|
83
83
|
setValue(nextValue);
|
|
84
|
-
onChange
|
|
84
|
+
onChange?.(nextValue, event);
|
|
85
85
|
});
|
|
86
86
|
const treeContext = (0, _react.useMemo)(() => ({
|
|
87
87
|
props: {
|
|
@@ -52,10 +52,9 @@ const CheckTreeNode = (0, _utils.forwardRef)((props, ref) => {
|
|
|
52
52
|
} = (0, _hooks.useStyles)(classPrefix);
|
|
53
53
|
const labelStr = (0, _react.useMemo)(() => (0, _utils.stringifyReactNode)(label), [label]);
|
|
54
54
|
const handleExpand = (0, _hooks.useEventCallback)(event => {
|
|
55
|
-
var _event$nativeEvent, _event$nativeEvent$st;
|
|
56
55
|
// stop propagation when using custom loading icon
|
|
57
|
-
event
|
|
58
|
-
onExpand
|
|
56
|
+
event?.nativeEvent?.stopImmediatePropagation?.();
|
|
57
|
+
onExpand?.(nodeData, expanded);
|
|
59
58
|
});
|
|
60
59
|
const handleSelect = (0, _hooks.useEventCallback)((_value, event) => {
|
|
61
60
|
let isChecked = false;
|
|
@@ -69,7 +68,7 @@ const CheckTreeNode = (0, _utils.forwardRef)((props, ref) => {
|
|
|
69
68
|
...nodeData,
|
|
70
69
|
check: isChecked
|
|
71
70
|
};
|
|
72
|
-
onSelect
|
|
71
|
+
onSelect?.(nextNodeData, event);
|
|
73
72
|
});
|
|
74
73
|
const classes = merge(className, withPrefix({
|
|
75
74
|
disabled,
|
|
@@ -88,7 +88,7 @@ const CheckTreeView = (0, _utils.forwardRef)((props, ref) => {
|
|
|
88
88
|
disabledItemValues
|
|
89
89
|
});
|
|
90
90
|
const handleSearchCallback = (value, _data, event) => {
|
|
91
|
-
onSearch
|
|
91
|
+
onSearch?.(value, event);
|
|
92
92
|
};
|
|
93
93
|
const {
|
|
94
94
|
filteredData,
|
|
@@ -135,7 +135,7 @@ const CheckTreeView = (0, _utils.forwardRef)((props, ref) => {
|
|
|
135
135
|
cascade,
|
|
136
136
|
disabledItemValues,
|
|
137
137
|
valueKey
|
|
138
|
-
}).map(node => render
|
|
138
|
+
}).map(node => render?.(node, 1)).filter(item => item);
|
|
139
139
|
};
|
|
140
140
|
const getTreeNodeProps = (0, _useTreeNodeProps.default)({
|
|
141
141
|
uncheckableItemValues,
|
|
@@ -160,9 +160,9 @@ const CheckTreeView = (0, _utils.forwardRef)((props, ref) => {
|
|
|
160
160
|
const checkedValues = getCheckedValues(node, !currentNode.check);
|
|
161
161
|
const path = (0, _utils2.getPathTowardsItem)(node, item => itemParentMap.get(item[valueKey]));
|
|
162
162
|
setFocusItemValue(node[valueKey]);
|
|
163
|
-
onChange
|
|
164
|
-
onSelect
|
|
165
|
-
onSelectItem
|
|
163
|
+
onChange?.(checkedValues, event);
|
|
164
|
+
onSelect?.(node, checkedValues, event);
|
|
165
|
+
onSelectItem?.(node, path);
|
|
166
166
|
});
|
|
167
167
|
const selectActiveItem = event => {
|
|
168
168
|
if ((0, _isNil.default)(focusItemValue)) return;
|
|
@@ -116,9 +116,9 @@ function useTreeCheckState(props) {
|
|
|
116
116
|
if (currentNode.checkAll && parentNode.check) {
|
|
117
117
|
continue;
|
|
118
118
|
}
|
|
119
|
-
if (!
|
|
119
|
+
if (!parentNode?.checkAll) {
|
|
120
120
|
values.push(currentNode[valueKey]);
|
|
121
|
-
} else if (parentNode
|
|
121
|
+
} else if (parentNode?.uncheckable) {
|
|
122
122
|
values.push(currentNode[valueKey]);
|
|
123
123
|
}
|
|
124
124
|
}
|
package/cjs/CheckTree/utils.js
CHANGED
|
@@ -28,10 +28,7 @@ function getChildrenByFlattenNodes(nodes, parent) {
|
|
|
28
28
|
if (!(0, _isNil2.default)(parent.refKey) && (0, _isNil2.default)(nodes[parent.refKey])) {
|
|
29
29
|
return [];
|
|
30
30
|
}
|
|
31
|
-
return Object.values(nodes).filter(item =>
|
|
32
|
-
var _item$parent;
|
|
33
|
-
return (item === null || item === void 0 || (_item$parent = item.parent) === null || _item$parent === void 0 ? void 0 : _item$parent.refKey) === parent.refKey && item.refKey && !nodes[item.refKey].uncheckable;
|
|
34
|
-
});
|
|
31
|
+
return Object.values(nodes).filter(item => item?.parent?.refKey === parent.refKey && item.refKey && !nodes[item.refKey].uncheckable);
|
|
35
32
|
}
|
|
36
33
|
|
|
37
34
|
/**
|
|
@@ -50,8 +47,7 @@ function isEveryChildChecked(parent, options) {
|
|
|
50
47
|
}
|
|
51
48
|
const children = getChildrenByFlattenNodes(nodes, parent);
|
|
52
49
|
if (!children.length) {
|
|
53
|
-
|
|
54
|
-
return (_nodes$parent$refKey$ = nodes[parent.refKey].check) !== null && _nodes$parent$refKey$ !== void 0 ? _nodes$parent$refKey$ : false;
|
|
50
|
+
return nodes[parent.refKey].check ?? false;
|
|
55
51
|
}
|
|
56
52
|
|
|
57
53
|
// Filter out disabled children
|
|
@@ -65,14 +61,12 @@ function isEveryChildChecked(parent, options) {
|
|
|
65
61
|
|
|
66
62
|
// If all children are disabled, return the parent's own check state
|
|
67
63
|
if (enabledChildren.length === 0) {
|
|
68
|
-
|
|
69
|
-
return (_nodes$parent$refKey$2 = nodes[parent.refKey].check) !== null && _nodes$parent$refKey$2 !== void 0 ? _nodes$parent$refKey$2 : false;
|
|
64
|
+
return nodes[parent.refKey].check ?? false;
|
|
70
65
|
}
|
|
71
66
|
|
|
72
67
|
// Check if all enabled children are checked
|
|
73
68
|
return enabledChildren.every(child => {
|
|
74
|
-
|
|
75
|
-
if ((child === null || child === void 0 || (_child$childrenKey = child[childrenKey]) === null || _child$childrenKey === void 0 ? void 0 : _child$childrenKey.length) > 0) {
|
|
69
|
+
if (child?.[childrenKey]?.length > 0) {
|
|
76
70
|
// fix: #3559
|
|
77
71
|
return isEveryChildChecked(child, {
|
|
78
72
|
nodes,
|
|
@@ -95,7 +89,6 @@ function isSomeChildChecked(nodes, parent, childrenKey, disabledItemValues = [],
|
|
|
95
89
|
}
|
|
96
90
|
const children = getChildrenByFlattenNodes(nodes, parent);
|
|
97
91
|
return children.some(child => {
|
|
98
|
-
var _child$childrenKey2;
|
|
99
92
|
// Skip disabled children
|
|
100
93
|
const isDisabled = getDisabledState(nodes, child, {
|
|
101
94
|
disabledItemValues,
|
|
@@ -104,7 +97,7 @@ function isSomeChildChecked(nodes, parent, childrenKey, disabledItemValues = [],
|
|
|
104
97
|
if (isDisabled) {
|
|
105
98
|
return false; // Disabled children don't count as "some checked"
|
|
106
99
|
}
|
|
107
|
-
if (
|
|
100
|
+
if (child?.[childrenKey]?.length > 0) {
|
|
108
101
|
return isSomeChildChecked(nodes, child, childrenKey, disabledItemValues, valueKey);
|
|
109
102
|
}
|
|
110
103
|
return !(0, _isNil2.default)(child.refKey) && nodes[child.refKey].check;
|
|
@@ -125,11 +118,10 @@ function isAllSiblingNodeUncheckable(node, nodes, uncheckableItemValues, valueKe
|
|
|
125
118
|
const list = [];
|
|
126
119
|
const parentNodeRefKey = node.parent ? node.parent.refKey : '';
|
|
127
120
|
Object.keys(nodes).forEach(refKey => {
|
|
128
|
-
var _curNode$parent;
|
|
129
121
|
const curNode = nodes[refKey];
|
|
130
122
|
if ((0, _isNil2.default)(node.parent) && (0, _isNil2.default)(curNode.parent)) {
|
|
131
123
|
list.push(curNode);
|
|
132
|
-
} else if (
|
|
124
|
+
} else if (curNode.parent?.refKey === parentNodeRefKey) {
|
|
133
125
|
list.push(curNode);
|
|
134
126
|
}
|
|
135
127
|
});
|
|
@@ -179,7 +171,6 @@ function getFormattedTree(nodes, data, props) {
|
|
|
179
171
|
};
|
|
180
172
|
const curNode = nodes[node.refKey];
|
|
181
173
|
if (curNode) {
|
|
182
|
-
var _node$childrenKey;
|
|
183
174
|
const checkState = !(0, _isUndefined2.default)(cascade) ? getNodeCheckState(curNode, {
|
|
184
175
|
cascade,
|
|
185
176
|
nodes,
|
|
@@ -191,7 +182,7 @@ function getFormattedTree(nodes, data, props) {
|
|
|
191
182
|
formatted.uncheckable = curNode.uncheckable;
|
|
192
183
|
(0, _utils.attachParent)(formatted, curNode.parent);
|
|
193
184
|
formatted.checkState = checkState;
|
|
194
|
-
if (
|
|
185
|
+
if (node[childrenKey]?.length > 0) {
|
|
195
186
|
formatted[childrenKey] = getFormattedTree(nodes, formatted[childrenKey], props);
|
|
196
187
|
}
|
|
197
188
|
}
|
|
@@ -236,7 +227,8 @@ function getDisabledState(nodes, node, props) {
|
|
|
236
227
|
*/
|
|
237
228
|
function getCheckTreeDefaultValue(value, uncheckableItemValues) {
|
|
238
229
|
if (Array.isArray(value) && Array.isArray(uncheckableItemValues)) {
|
|
239
|
-
|
|
230
|
+
const filtered = value.filter(v => !uncheckableItemValues.includes(v));
|
|
231
|
+
return filtered.length === value.length ? value : filtered;
|
|
240
232
|
}
|
|
241
233
|
return value;
|
|
242
234
|
}
|
|
@@ -156,8 +156,8 @@ const CheckTreePicker = (0, _utils.forwardRef)((props, ref) => {
|
|
|
156
156
|
}
|
|
157
157
|
setFocusItemValue(null);
|
|
158
158
|
setValue([]);
|
|
159
|
-
onChange
|
|
160
|
-
onCascadeChange
|
|
159
|
+
onChange?.([], event);
|
|
160
|
+
onCascadeChange?.([], event);
|
|
161
161
|
});
|
|
162
162
|
const handleTreeKeyDown = (0, _hooks.useEventCallback)(event => {
|
|
163
163
|
(0, _Picker.onMenuKeyDown)(event, {
|
|
@@ -193,17 +193,17 @@ const CheckTreePicker = (0, _utils.forwardRef)((props, ref) => {
|
|
|
193
193
|
});
|
|
194
194
|
const handleChangeCascade = (0, _hooks.useEventCallback)((nextValue, event) => {
|
|
195
195
|
if (!cascade) {
|
|
196
|
-
onCascadeChange
|
|
196
|
+
onCascadeChange?.(nextValue, event);
|
|
197
197
|
} else {
|
|
198
198
|
const nextSelectedNodes = (0, _utils2.getSelectedItems)(flattenedNodes, nextValue);
|
|
199
199
|
const childrenNodes = handleTransValue2Children(nextSelectedNodes);
|
|
200
200
|
const childrenValue = childrenNodes.map(node => node[valueKey]);
|
|
201
|
-
onCascadeChange
|
|
201
|
+
onCascadeChange?.(childrenValue, event);
|
|
202
202
|
}
|
|
203
203
|
});
|
|
204
204
|
const handleChange = (0, _hooks.useEventCallback)((nextValue, event) => {
|
|
205
205
|
setValue(nextValue);
|
|
206
|
-
onChange
|
|
206
|
+
onChange?.(nextValue, event);
|
|
207
207
|
handleChangeCascade(nextValue, event);
|
|
208
208
|
});
|
|
209
209
|
const treeContext = (0, _react.useMemo)(() => ({
|
|
@@ -258,7 +258,7 @@ const CheckTreePicker = (0, _utils.forwardRef)((props, ref) => {
|
|
|
258
258
|
style: popupStyle,
|
|
259
259
|
onKeyDown: onPickerKeydown,
|
|
260
260
|
target: trigger
|
|
261
|
-
}, renderTree ? renderTree(checkTreeView) : checkTreeView, renderExtraFooter
|
|
261
|
+
}, renderTree ? renderTree(checkTreeView) : checkTreeView, renderExtraFooter?.());
|
|
262
262
|
};
|
|
263
263
|
|
|
264
264
|
/**
|
|
@@ -321,7 +321,7 @@ const CheckTreePicker = (0, _utils.forwardRef)((props, ref) => {
|
|
|
321
321
|
inputValue: value,
|
|
322
322
|
focusItemValue: focusItemValue,
|
|
323
323
|
size: size
|
|
324
|
-
}, rest), selectedElement ||
|
|
324
|
+
}, rest), selectedElement || locale?.placeholder));
|
|
325
325
|
});
|
|
326
326
|
CheckTreePicker.displayName = 'CheckTreePicker';
|
|
327
327
|
var _default = exports.default = CheckTreePicker;
|
|
@@ -12,19 +12,16 @@ function useFocusState(props) {
|
|
|
12
12
|
const [active, setActive] = (0, _react.useState)(false);
|
|
13
13
|
const [focusItemValue, setFocusItemValue] = (0, _react.useState)(null);
|
|
14
14
|
const focusTarget = (0, _hooks.useEventCallback)(() => {
|
|
15
|
-
|
|
16
|
-
(_target$current = target.current) === null || _target$current === void 0 || _target$current.focus();
|
|
15
|
+
target.current?.focus();
|
|
17
16
|
});
|
|
18
17
|
const onEnter = (0, _hooks.useEventCallback)(node => {
|
|
19
|
-
var _props$onEnter;
|
|
20
18
|
setActive(true);
|
|
21
|
-
|
|
19
|
+
props.onEnter?.(node);
|
|
22
20
|
});
|
|
23
21
|
const onExit = (0, _hooks.useEventCallback)(node => {
|
|
24
|
-
var _props$onExit;
|
|
25
22
|
setActive(false);
|
|
26
23
|
focusTarget();
|
|
27
|
-
|
|
24
|
+
props.onExit?.(node);
|
|
28
25
|
});
|
|
29
26
|
return {
|
|
30
27
|
active,
|
package/cjs/Checkbox/Checkbox.js
CHANGED
|
@@ -28,7 +28,7 @@ const Checkbox = (0, _utils.forwardRef)((props, ref) => {
|
|
|
28
28
|
readOnly: readOnlyContext,
|
|
29
29
|
plaintext: plaintextContext,
|
|
30
30
|
onChange: onGroupChange
|
|
31
|
-
} = checkboxGroupContext
|
|
31
|
+
} = checkboxGroupContext ?? {};
|
|
32
32
|
const {
|
|
33
33
|
as,
|
|
34
34
|
checked: controlledChecked,
|
|
@@ -59,13 +59,12 @@ const Checkbox = (0, _utils.forwardRef)((props, ref) => {
|
|
|
59
59
|
|
|
60
60
|
// Either <Checkbox> is checked itself or by parent <CheckboxGroup>
|
|
61
61
|
const checked = (0, _react.useMemo)(() => {
|
|
62
|
-
var _checkboxGroupContext, _checkboxGroupContext2;
|
|
63
62
|
if (!checkboxGroupContext) {
|
|
64
63
|
return selfChecked;
|
|
65
64
|
}
|
|
66
65
|
|
|
67
66
|
// fixme value from group should not be nullable
|
|
68
|
-
return
|
|
67
|
+
return checkboxGroupContext.value?.some(checkedValue => checkedValue === value) ?? false;
|
|
69
68
|
}, [checkboxGroupContext, selfChecked, value]);
|
|
70
69
|
const {
|
|
71
70
|
merge,
|
|
@@ -89,8 +88,8 @@ const Checkbox = (0, _utils.forwardRef)((props, ref) => {
|
|
|
89
88
|
return;
|
|
90
89
|
}
|
|
91
90
|
setSelfChecked(nextChecked);
|
|
92
|
-
onChange
|
|
93
|
-
onGroupChange
|
|
91
|
+
onChange?.(value, nextChecked, event);
|
|
92
|
+
onGroupChange?.(value, nextChecked, event);
|
|
94
93
|
});
|
|
95
94
|
const handleLabelClick = (0, _hooks.useEventCallback)(event => {
|
|
96
95
|
// Prevent check when label is not clickable
|
|
@@ -25,7 +25,7 @@ function useIndeterminateCheckbox(indeterminate) {
|
|
|
25
25
|
const ref = (0, _react.useRef)(null);
|
|
26
26
|
(0, _react.useLayoutEffect)(() => {
|
|
27
27
|
if (ref.current) {
|
|
28
|
-
ref.current.indeterminate = indeterminate
|
|
28
|
+
ref.current.indeterminate = indeterminate ?? false;
|
|
29
29
|
}
|
|
30
30
|
}, [indeterminate]);
|
|
31
31
|
return ref;
|
|
@@ -51,7 +51,7 @@ const CheckboxGroup = (0, _utils.forwardRef)((props, ref) => {
|
|
|
51
51
|
(0, _remove.default)(nextValue, i => (0, _utils.shallowEqual)(i, itemValue));
|
|
52
52
|
}
|
|
53
53
|
setValue(nextValue);
|
|
54
|
-
onChange
|
|
54
|
+
onChange?.(nextValue, event);
|
|
55
55
|
}, [onChange, setValue, value]);
|
|
56
56
|
const contextValue = (0, _react.useMemo)(() => ({
|
|
57
57
|
inline,
|
|
@@ -68,7 +68,7 @@ const CheckboxGroup = (0, _utils.forwardRef)((props, ref) => {
|
|
|
68
68
|
}, plaintext ? /*#__PURE__*/_react.default.createElement(_Plaintext.default, (0, _extends2.default)({
|
|
69
69
|
ref: ref,
|
|
70
70
|
localeKey: "notSelected"
|
|
71
|
-
}, rest), value
|
|
71
|
+
}, rest), value?.length ? children : null) : /*#__PURE__*/_react.default.createElement(_Box.default, (0, _extends2.default)({
|
|
72
72
|
as: as
|
|
73
73
|
}, rest, {
|
|
74
74
|
ref: ref,
|
package/cjs/DOMHelper/index.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
1
|
import * as helpers from 'dom-lib';
|
|
3
2
|
export * from 'dom-lib';
|
|
4
3
|
/**
|
|
@@ -39,6 +38,6 @@ export declare const DOMHelper: {
|
|
|
39
38
|
getStyle: typeof helpers.getStyle;
|
|
40
39
|
removeStyle: typeof helpers.removeStyle;
|
|
41
40
|
addStyle: typeof helpers.addStyle;
|
|
42
|
-
translateDOMPositionXY: (style: CSSStyleDeclaration, x?: number
|
|
41
|
+
translateDOMPositionXY: (style: CSSStyleDeclaration, x?: number, y?: number) => CSSStyleDeclaration;
|
|
43
42
|
};
|
|
44
43
|
export default DOMHelper;
|
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
exports.__esModule = true;
|
|
5
5
|
exports.default = void 0;
|
|
6
6
|
const isElement = value => {
|
|
7
|
-
return
|
|
7
|
+
return value?.nodeType === 1 && typeof value?.nodeName === 'string';
|
|
8
8
|
};
|
|
9
9
|
var _default = exports.default = isElement;
|