rsuite 6.0.0-canary-2025032014 → 6.0.0-canary-20250416
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/AutoComplete/styles/index.css +112 -62
- package/AutoComplete/styles/index.less +1 -1
- package/Box/styles/index.css +12 -0
- package/CHANGELOG.md +24 -0
- package/Calendar/styles/index.css +11 -9
- package/Calendar/styles/index.less +3 -1
- package/Cascader/styles/index.css +112 -62
- package/CheckPicker/styles/index.css +112 -62
- package/CheckPicker/styles/index.less +1 -1
- package/CheckTree/styles/index.css +113 -63
- package/CheckTree/styles/index.less +1 -1
- package/CheckTreePicker/styles/index.css +113 -63
- package/DateInput/styles/index.css +0 -7
- package/DatePicker/styles/index.css +122 -74
- package/DatePicker/styles/index.less +5 -11
- package/DateRangeInput/styles/index.css +0 -7
- package/DateRangePicker/styles/index.css +132 -78
- package/DateRangePicker/styles/index.less +10 -4
- package/Divider/styles/index.css +2 -2
- package/Divider/styles/index.less +2 -2
- package/Grid/styles/columns.less +1 -2
- package/Grid/styles/grid-framework.less +1 -0
- package/Grid/styles/index.css +9 -4
- package/Grid/styles/row.less +2 -2
- package/Input/styles/index.css +0 -7
- package/Input/styles/index.less +0 -6
- package/Input/styles/mixin.less +0 -4
- package/InputGroup/styles/index.css +1 -1
- package/InputGroup/styles/index.less +1 -1
- package/InputNumber/styles/index.css +1 -8
- package/InputPicker/styles/index.css +121 -70
- package/InputPicker/styles/index.less +4 -4
- package/Link/package.json +7 -0
- package/Link/styles/index.css +32 -0
- package/Link/styles/index.less +39 -0
- package/Message/styles/index.css +9 -0
- package/Message/styles/index.less +11 -0
- package/MultiCascadeTree/styles/index.css +112 -62
- package/MultiCascader/styles/index.css +112 -62
- package/Nav/styles/index.css +1 -0
- package/Nav/styles/index.less +1 -0
- package/Pagination/styles/index.css +114 -64
- package/PasswordInput/package.json +7 -0
- package/PasswordInput/styles/index.css +172 -0
- package/PasswordInput/styles/index.less +1 -0
- package/PasswordStrengthMeter/package.json +7 -0
- package/PasswordStrengthMeter/styles/index.css +33 -0
- package/PasswordStrengthMeter/styles/index.less +39 -0
- package/README.md +3 -3
- package/RadioGroup/styles/index.css +1 -0
- package/RadioGroup/styles/index.less +1 -0
- package/RangeSlider/styles/index.css +76 -43
- package/Rate/styles/index.css +48 -34
- package/Rate/styles/index.less +32 -21
- package/SelectPicker/styles/index.css +112 -62
- package/SelectPicker/styles/index.less +1 -1
- package/Slider/styles/index.css +76 -43
- package/Slider/styles/index.less +95 -48
- package/Tabs/styles/index.css +1 -0
- package/TagInput/styles/index.css +152 -91
- package/TagInput/styles/index.less +1 -1
- package/TagPicker/styles/index.css +151 -90
- package/TagPicker/styles/index.less +52 -41
- package/Textarea/package.json +7 -0
- package/Textarea/styles/index.css +6 -0
- package/Textarea/styles/index.less +7 -0
- package/TimePicker/styles/index.css +122 -74
- package/TimeRangePicker/styles/index.css +132 -78
- package/Toggle/styles/index.css +146 -87
- package/Toggle/styles/index.less +66 -38
- package/Tree/styles/index.css +113 -63
- package/Tree/styles/index.less +1 -1
- package/TreePicker/styles/index.css +113 -63
- package/cjs/AutoComplete/AutoComplete.d.ts +1 -1
- package/cjs/AutoComplete/AutoComplete.js +13 -11
- package/cjs/Avatar/Avatar.d.ts +3 -4
- package/cjs/Breadcrumb/Breadcrumb.js +2 -2
- package/cjs/Breadcrumb/BreadcrumbItem.js +1 -1
- package/cjs/Button/Button.js +9 -10
- package/cjs/Calendar/CalendarProvider.js +0 -0
- package/cjs/Calendar/hooks/useCalendar.js +0 -0
- package/cjs/Carousel/Carousel.js +2 -2
- package/cjs/Cascader/Cascader.js +42 -45
- package/cjs/Cascader/useActive.d.ts +6 -4
- package/cjs/Cascader/useActive.js +10 -8
- package/cjs/CheckPicker/CheckPicker.js +38 -41
- package/cjs/CheckTreePicker/CheckTreePicker.js +20 -22
- package/cjs/CustomProvider/CustomProvider.d.ts +1 -4
- package/cjs/CustomProvider/types.d.ts +10 -2
- package/cjs/DatePicker/DatePicker.d.ts +1 -1
- package/cjs/DatePicker/DatePicker.js +28 -25
- package/cjs/DatePicker/utils.d.ts +3 -3
- package/cjs/DatePicker/utils.js +3 -3
- package/cjs/DateRangePicker/DateRangePicker.js +39 -33
- package/cjs/DateRangePicker/utils.js +0 -0
- package/cjs/Divider/Divider.d.ts +3 -2
- package/cjs/Divider/Divider.js +2 -2
- package/cjs/Form/hooks/useFormValidate.js +0 -0
- package/cjs/Form/hooks/useSchemaModel.js +2 -54
- package/cjs/Form/utils/constructFlatSchema.d.ts +4 -0
- package/cjs/Form/utils/constructFlatSchema.js +41 -0
- package/cjs/FormControl/hooks/useField.js +0 -0
- package/cjs/FormControl/utils.js +0 -0
- package/cjs/Grid/Row.d.ts +2 -2
- package/cjs/Grid/Row.js +2 -20
- package/cjs/Grid/types.d.ts +1 -0
- package/cjs/Grid/utils/styles.d.ts +6 -0
- package/cjs/Grid/utils/styles.js +43 -0
- package/cjs/Image/Image.js +12 -11
- package/cjs/Image/hooks/useImage.d.ts +2 -0
- package/cjs/Image/hooks/useImage.js +19 -43
- package/cjs/InlineEdit/InlineEdit.js +3 -1
- package/cjs/InlineEdit/useEditState.d.ts +2 -0
- package/cjs/InlineEdit/useEditState.js +8 -0
- package/cjs/Input/Input.d.ts +3 -12
- package/cjs/Input/Input.js +12 -73
- package/cjs/InputPicker/InputPicker.js +27 -28
- package/cjs/Link/ExternalLinkIcon.d.ts +3 -0
- package/cjs/Link/ExternalLinkIcon.js +23 -0
- package/cjs/Link/Link.d.ts +14 -0
- package/cjs/Link/Link.js +52 -0
- package/cjs/Link/index.d.ts +4 -0
- package/cjs/Link/index.js +11 -0
- package/cjs/List/List.js +6 -2
- package/cjs/List/helper/useSortHelper.d.ts +7 -5
- package/cjs/List/helper/useSortHelper.js +109 -16
- package/cjs/List/helper/utils.js +14 -6
- package/cjs/MultiCascader/MultiCascader.js +40 -43
- package/cjs/Nav/NavItem.js +1 -1
- package/cjs/Nav/NavMegaMenu.d.ts +5 -0
- package/cjs/Nav/NavMegaMenu.js +5 -0
- package/cjs/Navbar/NavbarItem.js +1 -1
- package/cjs/Navbar/NavbarMegaMenu.js +1 -1
- package/cjs/PasswordInput/PasswordInput.d.ts +14 -0
- package/cjs/PasswordInput/PasswordInput.js +71 -0
- package/cjs/PasswordInput/index.d.ts +4 -0
- package/cjs/PasswordInput/index.js +11 -0
- package/cjs/PasswordStrengthMeter/PasswordStrengthMeter.d.ts +12 -0
- package/cjs/PasswordStrengthMeter/PasswordStrengthMeter.js +50 -0
- package/cjs/PasswordStrengthMeter/index.d.ts +4 -0
- package/cjs/PasswordStrengthMeter/index.js +11 -0
- package/cjs/RangeSlider/RangeSlider.js +18 -3
- package/cjs/Rate/Character.d.ts +4 -3
- package/cjs/Rate/Character.js +19 -15
- package/cjs/Rate/Rate.d.ts +10 -2
- package/cjs/Rate/Rate.js +47 -42
- package/cjs/Rate/types.d.ts +8 -0
- package/cjs/Rate/types.js +4 -0
- package/cjs/Rate/useRatingStates.d.ts +20 -0
- package/cjs/Rate/useRatingStates.js +48 -0
- package/cjs/Rate/utils.d.ts +14 -3
- package/cjs/Rate/utils.js +50 -9
- package/cjs/SelectPicker/SelectPicker.js +45 -46
- package/cjs/Sidenav/ExpandedSidenavDropdownItem.js +1 -1
- package/cjs/Sidenav/SidenavItem.js +1 -1
- package/cjs/Slider/Graduated.d.ts +4 -0
- package/cjs/Slider/Graduated.js +43 -20
- package/cjs/Slider/Handle.d.ts +1 -1
- package/cjs/Slider/Handle.js +12 -12
- package/cjs/Slider/Slider.d.ts +16 -1
- package/cjs/Slider/Slider.js +7 -2
- package/cjs/Slider/useDrag.d.ts +1 -0
- package/cjs/Slider/useDrag.js +8 -3
- package/cjs/Steps/Steps.js +2 -2
- package/cjs/Tabs/Tabs.js +2 -2
- package/cjs/Textarea/Textarea.d.ts +32 -0
- package/cjs/Textarea/Textarea.js +51 -0
- package/cjs/Textarea/index.d.ts +4 -0
- package/cjs/Textarea/index.js +11 -0
- package/cjs/Timeline/Timeline.js +2 -2
- package/cjs/Toggle/Toggle.d.ts +10 -1
- package/cjs/Toggle/Toggle.js +12 -9
- package/cjs/TreePicker/TreePicker.js +18 -19
- package/cjs/index.d.ts +4 -1
- package/cjs/index.js +24 -6
- package/cjs/internals/Box/Box.d.ts +4 -0
- package/cjs/internals/Box/Box.js +1 -1
- package/cjs/internals/Box/utils.js +5 -1
- package/cjs/internals/InputBase/InputBase.d.ts +45 -0
- package/cjs/internals/InputBase/InputBase.js +96 -0
- package/cjs/internals/InputBase/index.d.ts +3 -0
- package/cjs/internals/InputBase/index.js +8 -0
- package/cjs/internals/Overlay/Modal.d.ts +1 -1
- package/cjs/internals/Overlay/OverlayTrigger.d.ts +4 -3
- package/cjs/internals/Overlay/OverlayTrigger.js +8 -3
- package/cjs/internals/Picker/Listbox.js +7 -9
- package/cjs/internals/Picker/PickerDrawer.d.ts +8 -0
- package/cjs/internals/Picker/PickerDrawer.js +31 -0
- package/cjs/internals/Picker/PickerPopup.js +5 -3
- package/cjs/internals/Picker/PickerToggle.d.ts +1 -0
- package/cjs/internals/Picker/PickerToggle.js +10 -3
- package/cjs/internals/Picker/PickerToggleTrigger.d.ts +51 -11
- package/cjs/internals/Picker/PickerToggleTrigger.js +59 -13
- package/cjs/internals/Picker/hooks/index.d.ts +0 -1
- package/cjs/internals/Picker/hooks/index.js +2 -4
- package/cjs/internals/Picker/hooks/useCombobox.d.ts +1 -0
- package/cjs/internals/Picker/hooks/useCombobox.js +3 -1
- package/cjs/internals/Picker/index.d.ts +1 -2
- package/cjs/internals/Picker/index.js +10 -12
- package/{esm → cjs/internals}/SafeAnchor/SafeAnchor.d.ts +2 -2
- package/cjs/{SafeAnchor → internals/SafeAnchor}/SafeAnchor.js +3 -3
- package/cjs/internals/Tree/TreeView.js +3 -4
- package/cjs/internals/hooks/useRootClose.js +4 -4
- package/cjs/internals/index.d.ts +4 -0
- package/cjs/internals/index.js +13 -1
- package/cjs/internals/types/html.d.ts +2 -0
- package/cjs/internals/utils/{dom.d.ts → html/dom.d.ts} +1 -0
- package/cjs/internals/utils/{dom.js → html/dom.js} +8 -0
- package/cjs/internals/utils/{events.js → html/events.js} +0 -0
- package/cjs/internals/utils/{htmlPropsUtils.js → html/htmlPropsUtils.js} +0 -0
- package/cjs/internals/utils/html/index.d.ts +4 -0
- package/cjs/internals/utils/html/index.js +28 -0
- package/cjs/internals/utils/{safeSetSelection.js → html/safeSetSelection.js} +1 -1
- package/cjs/internals/utils/index.d.ts +3 -15
- package/cjs/internals/utils/index.js +20 -49
- package/cjs/internals/utils/{ReactChildren.d.ts → react/ReactChildren.d.ts} +2 -8
- package/cjs/internals/utils/{ReactChildren.js → react/ReactChildren.js} +5 -25
- package/cjs/internals/utils/react/ReactIs.d.ts +7 -0
- package/cjs/internals/utils/react/ReactIs.js +26 -0
- package/{esm/internals/utils → cjs/internals/utils/react}/createComponent.d.ts +2 -2
- package/cjs/internals/utils/{createComponent.js → react/createComponent.js} +3 -3
- package/cjs/internals/utils/{deprecateComponent.js → react/deprecateComponent.js} +1 -1
- package/cjs/internals/utils/{forwardRef.d.ts → react/forwardRef.d.ts} +1 -1
- package/cjs/internals/utils/react/index.d.ts +7 -0
- package/cjs/internals/utils/react/index.js +46 -0
- package/cjs/internals/utils/{mergeRefs.js → react/mergeRefs.js} +0 -0
- package/cjs/internals/utils/{getStringLength.d.ts → string/getStringLength.d.ts} +0 -1
- package/cjs/internals/utils/{getStringLength.js → string/getStringLength.js} +1 -3
- package/cjs/internals/utils/string/index.d.ts +4 -0
- package/cjs/internals/utils/string/index.js +28 -0
- package/cjs/internals/utils/{stringifyReactNode.js → string/stringifyReactNode.js} +0 -0
- package/cjs/internals/utils/{tplTransform.js → string/tplTransform.js} +0 -0
- package/cjs/locales/en_GB.js +2 -2
- package/cjs/locales/en_US.js +2 -2
- package/cjs/locales/index.js +0 -0
- package/cjs/locales/pl_PL.js +2 -3
- package/cjs/useBreakpointValue/useBreakpointValue.d.ts +6 -2
- package/cjs/useBreakpointValue/useBreakpointValue.js +9 -4
- package/cjs/useMediaQuery/breakpoints.d.ts +24 -0
- package/cjs/useMediaQuery/breakpoints.js +248 -0
- package/cjs/useMediaQuery/index.d.ts +1 -1
- package/cjs/useMediaQuery/types.d.ts +45 -0
- package/cjs/useMediaQuery/types.js +4 -0
- package/cjs/useMediaQuery/useMediaQuery.d.ts +4 -13
- package/cjs/useMediaQuery/useMediaQuery.js +30 -12
- package/cjs/useToaster/useToaster.d.ts +1 -1
- package/cjs/useToaster/useToaster.js +1 -1
- package/dist/rsuite-no-reset-rtl.css +565 -276
- package/dist/rsuite-no-reset-rtl.min.css +1 -1
- package/dist/rsuite-no-reset-rtl.min.css.map +1 -1
- package/dist/rsuite-no-reset.css +565 -276
- package/dist/rsuite-no-reset.min.css +1 -1
- package/dist/rsuite-no-reset.min.css.map +1 -1
- package/dist/rsuite-rtl.css +565 -276
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +565 -276
- package/dist/rsuite.js +508 -211
- package/dist/rsuite.js.map +1 -1
- package/dist/rsuite.min.css +1 -1
- package/dist/rsuite.min.css.map +1 -1
- package/dist/rsuite.min.js +1 -1
- package/dist/rsuite.min.js.map +1 -1
- package/esm/AutoComplete/AutoComplete.d.ts +1 -1
- package/esm/AutoComplete/AutoComplete.js +13 -11
- package/esm/Avatar/Avatar.d.ts +3 -4
- package/esm/Breadcrumb/Breadcrumb.js +3 -3
- package/esm/Breadcrumb/BreadcrumbItem.js +1 -1
- package/esm/Button/Button.js +10 -11
- package/esm/Calendar/CalendarProvider.js +0 -0
- package/esm/Calendar/hooks/useCalendar.js +0 -0
- package/esm/Carousel/Carousel.js +3 -3
- package/esm/Cascader/Cascader.js +43 -46
- package/esm/Cascader/useActive.d.ts +6 -4
- package/esm/Cascader/useActive.js +10 -8
- package/esm/CheckPicker/CheckPicker.js +39 -42
- package/esm/CheckTreePicker/CheckTreePicker.js +21 -23
- package/esm/CustomProvider/CustomProvider.d.ts +1 -4
- package/esm/CustomProvider/types.d.ts +10 -2
- package/esm/DatePicker/DatePicker.d.ts +1 -1
- package/esm/DatePicker/DatePicker.js +29 -26
- package/esm/DatePicker/utils.d.ts +3 -3
- package/esm/DatePicker/utils.js +4 -4
- package/esm/DateRangePicker/DateRangePicker.js +35 -29
- package/esm/DateRangePicker/utils.js +0 -0
- package/esm/Divider/Divider.d.ts +3 -2
- package/esm/Divider/Divider.js +2 -2
- package/esm/Form/hooks/useFormValidate.js +0 -0
- package/esm/Form/hooks/useSchemaModel.js +3 -55
- package/esm/Form/utils/constructFlatSchema.d.ts +4 -0
- package/esm/Form/utils/constructFlatSchema.js +37 -0
- package/esm/FormControl/hooks/useField.js +0 -0
- package/esm/FormControl/utils.js +0 -0
- package/esm/Grid/Row.d.ts +2 -2
- package/esm/Grid/Row.js +2 -20
- package/esm/Grid/types.d.ts +1 -0
- package/esm/Grid/utils/styles.d.ts +6 -0
- package/esm/Grid/utils/styles.js +37 -0
- package/esm/Image/Image.js +12 -11
- package/esm/Image/hooks/useImage.d.ts +2 -0
- package/esm/Image/hooks/useImage.js +20 -43
- package/esm/InlineEdit/InlineEdit.js +3 -1
- package/esm/InlineEdit/useEditState.d.ts +2 -0
- package/esm/InlineEdit/useEditState.js +8 -0
- package/esm/Input/Input.d.ts +3 -12
- package/esm/Input/Input.js +12 -74
- package/esm/InputPicker/InputPicker.js +28 -29
- package/esm/Link/ExternalLinkIcon.d.ts +3 -0
- package/esm/Link/ExternalLinkIcon.js +18 -0
- package/esm/Link/Link.d.ts +14 -0
- package/esm/Link/Link.js +47 -0
- package/esm/Link/index.d.ts +4 -0
- package/esm/Link/index.js +8 -0
- package/esm/List/List.js +6 -2
- package/esm/List/helper/useSortHelper.d.ts +7 -5
- package/esm/List/helper/useSortHelper.js +109 -16
- package/esm/List/helper/utils.js +14 -6
- package/esm/MultiCascader/MultiCascader.js +41 -44
- package/esm/Nav/NavItem.js +1 -1
- package/esm/Nav/NavMegaMenu.d.ts +5 -0
- package/esm/Nav/NavMegaMenu.js +5 -0
- package/esm/Navbar/NavbarItem.js +1 -1
- package/esm/Navbar/NavbarMegaMenu.js +1 -1
- package/esm/PasswordInput/PasswordInput.d.ts +14 -0
- package/esm/PasswordInput/PasswordInput.js +66 -0
- package/esm/PasswordInput/index.d.ts +4 -0
- package/esm/PasswordInput/index.js +8 -0
- package/esm/PasswordStrengthMeter/PasswordStrengthMeter.d.ts +12 -0
- package/esm/PasswordStrengthMeter/PasswordStrengthMeter.js +45 -0
- package/esm/PasswordStrengthMeter/index.d.ts +4 -0
- package/esm/PasswordStrengthMeter/index.js +8 -0
- package/esm/RangeSlider/RangeSlider.js +18 -3
- package/esm/Rate/Character.d.ts +4 -3
- package/esm/Rate/Character.js +20 -16
- package/esm/Rate/Rate.d.ts +10 -2
- package/esm/Rate/Rate.js +49 -42
- package/esm/Rate/types.d.ts +8 -0
- package/esm/Rate/types.js +2 -0
- package/esm/Rate/useRatingStates.d.ts +20 -0
- package/esm/Rate/useRatingStates.js +43 -0
- package/esm/Rate/utils.d.ts +14 -3
- package/esm/Rate/utils.js +46 -7
- package/esm/SelectPicker/SelectPicker.js +46 -47
- package/esm/Sidenav/ExpandedSidenavDropdownItem.js +1 -1
- package/esm/Sidenav/SidenavItem.js +1 -1
- package/esm/Slider/Graduated.d.ts +4 -0
- package/esm/Slider/Graduated.js +43 -20
- package/esm/Slider/Handle.d.ts +1 -1
- package/esm/Slider/Handle.js +12 -12
- package/esm/Slider/Slider.d.ts +16 -1
- package/esm/Slider/Slider.js +7 -2
- package/esm/Slider/useDrag.d.ts +1 -0
- package/esm/Slider/useDrag.js +8 -3
- package/esm/Steps/Steps.js +3 -3
- package/esm/Tabs/Tabs.js +3 -3
- package/esm/Textarea/Textarea.d.ts +32 -0
- package/esm/Textarea/Textarea.js +46 -0
- package/esm/Textarea/index.d.ts +4 -0
- package/esm/Textarea/index.js +8 -0
- package/esm/Timeline/Timeline.js +3 -3
- package/esm/Toggle/Toggle.d.ts +10 -1
- package/esm/Toggle/Toggle.js +12 -9
- package/esm/TreePicker/TreePicker.js +19 -20
- package/esm/index.d.ts +4 -1
- package/esm/index.js +4 -1
- package/esm/internals/Box/Box.d.ts +4 -0
- package/esm/internals/Box/Box.js +1 -1
- package/esm/internals/Box/utils.js +5 -1
- package/esm/internals/InputBase/InputBase.d.ts +45 -0
- package/esm/internals/InputBase/InputBase.js +89 -0
- package/esm/internals/InputBase/index.d.ts +3 -0
- package/esm/internals/InputBase/index.js +3 -0
- package/esm/internals/Overlay/Modal.d.ts +1 -1
- package/esm/internals/Overlay/OverlayTrigger.d.ts +4 -3
- package/esm/internals/Overlay/OverlayTrigger.js +8 -2
- package/esm/internals/Picker/Listbox.js +8 -10
- package/esm/internals/Picker/PickerDrawer.d.ts +8 -0
- package/esm/internals/Picker/PickerDrawer.js +26 -0
- package/esm/internals/Picker/PickerPopup.js +5 -3
- package/esm/internals/Picker/PickerToggle.d.ts +1 -0
- package/esm/internals/Picker/PickerToggle.js +10 -3
- package/esm/internals/Picker/PickerToggleTrigger.d.ts +51 -11
- package/esm/internals/Picker/PickerToggleTrigger.js +59 -12
- package/esm/internals/Picker/hooks/index.d.ts +0 -1
- package/esm/internals/Picker/hooks/index.js +1 -2
- package/esm/internals/Picker/hooks/useCombobox.d.ts +1 -0
- package/esm/internals/Picker/hooks/useCombobox.js +3 -1
- package/esm/internals/Picker/index.d.ts +1 -2
- package/esm/internals/Picker/index.js +1 -2
- package/{cjs → esm/internals}/SafeAnchor/SafeAnchor.d.ts +2 -2
- package/esm/{SafeAnchor → internals/SafeAnchor}/SafeAnchor.js +3 -3
- package/esm/internals/Tree/TreeView.js +4 -5
- package/esm/internals/hooks/useRootClose.js +1 -1
- package/esm/internals/index.d.ts +4 -0
- package/esm/internals/index.js +5 -0
- package/esm/internals/types/html.d.ts +2 -0
- package/esm/internals/utils/{dom.d.ts → html/dom.d.ts} +1 -0
- package/esm/internals/utils/{dom.js → html/dom.js} +7 -0
- package/esm/internals/utils/{events.js → html/events.js} +0 -0
- package/esm/internals/utils/{htmlPropsUtils.js → html/htmlPropsUtils.js} +0 -0
- package/esm/internals/utils/html/index.d.ts +4 -0
- package/esm/internals/utils/html/index.js +5 -0
- package/esm/internals/utils/{safeSetSelection.js → html/safeSetSelection.js} +1 -1
- package/esm/internals/utils/index.d.ts +3 -15
- package/esm/internals/utils/index.js +3 -14
- package/esm/internals/utils/{ReactChildren.d.ts → react/ReactChildren.d.ts} +2 -8
- package/esm/internals/utils/{ReactChildren.js → react/ReactChildren.js} +3 -21
- package/esm/internals/utils/react/ReactIs.d.ts +7 -0
- package/esm/internals/utils/react/ReactIs.js +22 -0
- package/{cjs/internals/utils → esm/internals/utils/react}/createComponent.d.ts +2 -2
- package/esm/internals/utils/{createComponent.js → react/createComponent.js} +3 -3
- package/esm/internals/utils/{deprecateComponent.js → react/deprecateComponent.js} +1 -1
- package/esm/internals/utils/{forwardRef.d.ts → react/forwardRef.d.ts} +1 -1
- package/esm/internals/utils/react/index.d.ts +7 -0
- package/esm/internals/utils/react/index.js +8 -0
- package/esm/internals/utils/{mergeRefs.js → react/mergeRefs.js} +0 -0
- package/esm/internals/utils/{getStringLength.d.ts → string/getStringLength.d.ts} +0 -1
- package/esm/internals/utils/{getStringLength.js → string/getStringLength.js} +1 -2
- package/esm/internals/utils/string/index.d.ts +4 -0
- package/esm/internals/utils/string/index.js +5 -0
- package/esm/internals/utils/{stringifyReactNode.js → string/stringifyReactNode.js} +0 -0
- package/esm/internals/utils/{tplTransform.js → string/tplTransform.js} +0 -0
- package/esm/locales/en_GB.js +2 -2
- package/esm/locales/en_US.js +2 -2
- package/esm/locales/index.js +0 -0
- package/esm/locales/pl_PL.js +1 -1
- package/esm/useBreakpointValue/useBreakpointValue.d.ts +6 -2
- package/esm/useBreakpointValue/useBreakpointValue.js +9 -4
- package/esm/useMediaQuery/breakpoints.d.ts +24 -0
- package/esm/useMediaQuery/breakpoints.js +244 -0
- package/esm/useMediaQuery/index.d.ts +1 -1
- package/esm/useMediaQuery/types.d.ts +45 -0
- package/esm/useMediaQuery/types.js +2 -0
- package/esm/useMediaQuery/useMediaQuery.d.ts +4 -13
- package/esm/useMediaQuery/useMediaQuery.js +29 -11
- package/esm/useToaster/useToaster.d.ts +1 -1
- package/esm/useToaster/useToaster.js +1 -1
- package/internals/Box/styles/index.less +4 -0
- package/internals/Picker/styles/index.less +105 -23
- package/internals/Picker/styles/mixin.less +6 -6
- package/package.json +3 -2
- package/styles/color-modes/dark.less +2 -2
- package/styles/color-modes/high-contrast.less +2 -2
- package/styles/color-modes/light.less +2 -2
- package/styles/index.less +3 -0
- package/styles/root.less +2 -0
- package/styles/variables.less +0 -24
- package/SafeAnchor/package.json +0 -7
- package/cjs/Form/hooks/useFormClassNames.d.ts +0 -5
- package/cjs/Form/hooks/useFormClassNames.js +0 -29
- package/cjs/internals/Picker/hooks/usePickerClassName.d.ts +0 -19
- package/cjs/internals/Picker/hooks/usePickerClassName.js +0 -45
- package/esm/Form/hooks/useFormClassNames.d.ts +0 -5
- package/esm/Form/hooks/useFormClassNames.js +0 -25
- package/esm/internals/Picker/hooks/usePickerClassName.d.ts +0 -19
- package/esm/internals/Picker/hooks/usePickerClassName.js +0 -40
- /package/cjs/{SafeAnchor → internals/SafeAnchor}/index.d.ts +0 -0
- /package/cjs/{SafeAnchor → internals/SafeAnchor}/index.js +0 -0
- /package/cjs/internals/utils/{events.d.ts → html/events.d.ts} +0 -0
- /package/cjs/internals/utils/{htmlPropsUtils.d.ts → html/htmlPropsUtils.d.ts} +0 -0
- /package/cjs/internals/utils/{safeSetSelection.d.ts → html/safeSetSelection.d.ts} +0 -0
- /package/cjs/internals/utils/{deprecateComponent.d.ts → react/deprecateComponent.d.ts} +0 -0
- /package/cjs/internals/utils/{forwardRef.js → react/forwardRef.js} +0 -0
- /package/cjs/internals/utils/{getDOMNode.d.ts → react/getDOMNode.d.ts} +0 -0
- /package/cjs/internals/utils/{getDOMNode.js → react/getDOMNode.js} +0 -0
- /package/cjs/internals/utils/{mergeRefs.d.ts → react/mergeRefs.d.ts} +0 -0
- /package/cjs/internals/utils/{getSafeRegExpString.d.ts → string/getSafeRegExpString.d.ts} +0 -0
- /package/cjs/internals/utils/{getSafeRegExpString.js → string/getSafeRegExpString.js} +0 -0
- /package/cjs/internals/utils/{stringifyReactNode.d.ts → string/stringifyReactNode.d.ts} +0 -0
- /package/cjs/internals/utils/{tplTransform.d.ts → string/tplTransform.d.ts} +0 -0
- /package/esm/{SafeAnchor → internals/SafeAnchor}/index.d.ts +0 -0
- /package/esm/{SafeAnchor → internals/SafeAnchor}/index.js +0 -0
- /package/esm/internals/utils/{events.d.ts → html/events.d.ts} +0 -0
- /package/esm/internals/utils/{htmlPropsUtils.d.ts → html/htmlPropsUtils.d.ts} +0 -0
- /package/esm/internals/utils/{safeSetSelection.d.ts → html/safeSetSelection.d.ts} +0 -0
- /package/esm/internals/utils/{deprecateComponent.d.ts → react/deprecateComponent.d.ts} +0 -0
- /package/esm/internals/utils/{forwardRef.js → react/forwardRef.js} +0 -0
- /package/esm/internals/utils/{getDOMNode.d.ts → react/getDOMNode.d.ts} +0 -0
- /package/esm/internals/utils/{getDOMNode.js → react/getDOMNode.js} +0 -0
- /package/esm/internals/utils/{mergeRefs.d.ts → react/mergeRefs.d.ts} +0 -0
- /package/esm/internals/utils/{getSafeRegExpString.d.ts → string/getSafeRegExpString.d.ts} +0 -0
- /package/esm/internals/utils/{getSafeRegExpString.js → string/getSafeRegExpString.js} +0 -0
- /package/esm/internals/utils/{stringifyReactNode.d.ts → string/stringifyReactNode.d.ts} +0 -0
- /package/esm/internals/utils/{tplTransform.d.ts → string/tplTransform.d.ts} +0 -0
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import React, { useCallback, useContext } from 'react';
|
|
3
3
|
import isNil from 'lodash/isNil';
|
|
4
4
|
import Ripple from "../internals/Ripple/index.js";
|
|
5
|
-
import SafeAnchor from "../SafeAnchor/index.js";
|
|
5
|
+
import SafeAnchor from "../internals/SafeAnchor/index.js";
|
|
6
6
|
import NavContext from "../Nav/NavContext.js";
|
|
7
7
|
import { forwardRef, createChainedFunction, shallowEqual } from "../internals/utils/index.js";
|
|
8
8
|
import { useStyles } from "../internals/hooks/index.js";
|
|
@@ -3,7 +3,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
3
3
|
import React, { useContext, useCallback } from 'react';
|
|
4
4
|
import classNames from 'classnames';
|
|
5
5
|
import isNil from 'lodash/isNil';
|
|
6
|
-
import SafeAnchor from "../SafeAnchor/index.js";
|
|
6
|
+
import SafeAnchor from "../internals/SafeAnchor/index.js";
|
|
7
7
|
import NavContext from "../Nav/NavContext.js";
|
|
8
8
|
import MenuItem from "../internals/Menu/MenuItem.js";
|
|
9
9
|
import omit from 'lodash/omit';
|
|
@@ -6,6 +6,10 @@ export interface GraduatedProps extends BoxProps {
|
|
|
6
6
|
max: number;
|
|
7
7
|
count: number;
|
|
8
8
|
value: number | number[];
|
|
9
|
+
marks?: {
|
|
10
|
+
value: number;
|
|
11
|
+
label: React.ReactNode;
|
|
12
|
+
}[];
|
|
9
13
|
renderMark?: (mark: number) => React.ReactNode;
|
|
10
14
|
}
|
|
11
15
|
declare const Graduated: import("../internals/types").InternalRefForwardingComponent<"div", GraduatedProps, never> & Record<string, never>;
|
package/esm/Slider/Graduated.js
CHANGED
|
@@ -16,12 +16,14 @@ const Graduated = forwardRef((props, ref) => {
|
|
|
16
16
|
value,
|
|
17
17
|
classPrefix = 'slider',
|
|
18
18
|
className,
|
|
19
|
+
marks = [],
|
|
19
20
|
renderMark,
|
|
20
21
|
...rest
|
|
21
22
|
} = props;
|
|
22
23
|
const {
|
|
23
24
|
merge,
|
|
24
|
-
prefix
|
|
25
|
+
prefix,
|
|
26
|
+
cssVar
|
|
25
27
|
} = useStyles(classPrefix);
|
|
26
28
|
const activeIndexs = [];
|
|
27
29
|
let startIndex = 0;
|
|
@@ -37,32 +39,53 @@ const Graduated = forwardRef((props, ref) => {
|
|
|
37
39
|
activeIndexs.push(precisionMath(Math.ceil((value - min) / (max - min) * count)));
|
|
38
40
|
}
|
|
39
41
|
const graduatedItems = [];
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
|
|
43
|
+
// If custom marks are provided, use them
|
|
44
|
+
if (marks.length > 0) {
|
|
45
|
+
// Only create DOM nodes for the specific mark values
|
|
46
|
+
marks.forEach((mark, index) => {
|
|
47
|
+
// Calculate the position index for this mark
|
|
48
|
+
const markPosition = precisionMath((mark.value - min) / (max - min) * count);
|
|
49
|
+
graduatedItems.push(/*#__PURE__*/React.createElement("li", {
|
|
50
|
+
className: prefix('tick'),
|
|
51
|
+
key: `${mark.value}-${index}`,
|
|
52
|
+
"data-pass": markPosition >= startIndex && markPosition <= endIndex,
|
|
53
|
+
"data-active": activeIndexs.indexOf(markPosition) !== -1,
|
|
54
|
+
style: cssVar('tick-offset', `${(mark.value - min) / (max - min) * 100}%`)
|
|
55
|
+
}, /*#__PURE__*/React.createElement(Mark, {
|
|
56
|
+
mark: mark.value,
|
|
57
|
+
renderMark: () => mark.label || mark.value
|
|
58
|
+
})));
|
|
44
59
|
});
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
60
|
+
} else {
|
|
61
|
+
// Original implementation for when no custom marks are provided
|
|
62
|
+
for (let i = 0; i < count; i += 1) {
|
|
63
|
+
const mark = precisionMath(i * step + min);
|
|
64
|
+
const lastMark = Math.min(max, mark + step);
|
|
65
|
+
const last = i === count - 1;
|
|
66
|
+
graduatedItems.push(/*#__PURE__*/React.createElement("li", {
|
|
67
|
+
className: prefix('tick'),
|
|
68
|
+
"data-pass": i >= startIndex && i <= endIndex,
|
|
69
|
+
"data-active": activeIndexs.indexOf(i) !== -1,
|
|
70
|
+
key: i
|
|
71
|
+
}, /*#__PURE__*/React.createElement(Mark, {
|
|
72
|
+
mark: mark,
|
|
73
|
+
renderMark: renderMark
|
|
74
|
+
}), last ? /*#__PURE__*/React.createElement(Mark, {
|
|
75
|
+
mark: lastMark,
|
|
76
|
+
renderMark: renderMark,
|
|
77
|
+
last: last
|
|
78
|
+
}) : null));
|
|
79
|
+
}
|
|
59
80
|
}
|
|
60
81
|
const classes = merge(className, prefix('graduator'));
|
|
61
82
|
return /*#__PURE__*/React.createElement(Box, _extends({
|
|
62
83
|
as: as,
|
|
63
84
|
ref: ref,
|
|
64
85
|
className: classes
|
|
65
|
-
}, rest
|
|
86
|
+
}, rest, {
|
|
87
|
+
"data-with-marks": marks.length > 0
|
|
88
|
+
}), /*#__PURE__*/React.createElement("ol", null, graduatedItems));
|
|
66
89
|
});
|
|
67
90
|
Graduated.displayName = 'Graduated';
|
|
68
91
|
export default Graduated;
|
package/esm/Slider/Handle.d.ts
CHANGED
|
@@ -4,9 +4,9 @@ export interface HandleProps extends BoxProps, React.HTMLAttributes<HTMLDivEleme
|
|
|
4
4
|
disabled?: boolean;
|
|
5
5
|
vertical?: boolean;
|
|
6
6
|
tooltip?: boolean;
|
|
7
|
-
rtl?: boolean;
|
|
8
7
|
position?: number;
|
|
9
8
|
value?: number;
|
|
9
|
+
keepTooltipOpen?: boolean;
|
|
10
10
|
renderTooltip?: (value: number | undefined) => React.ReactNode;
|
|
11
11
|
onDragMove?: (event: React.DragEvent, dataset?: DOMStringMap) => void;
|
|
12
12
|
onDragStart?: (event: React.MouseEvent) => void;
|
package/esm/Slider/Handle.js
CHANGED
|
@@ -18,10 +18,10 @@ const Handle = forwardRef((props, ref) => {
|
|
|
18
18
|
position,
|
|
19
19
|
vertical,
|
|
20
20
|
tooltip,
|
|
21
|
-
rtl,
|
|
22
21
|
value,
|
|
23
22
|
role,
|
|
24
23
|
tabIndex,
|
|
24
|
+
keepTooltipOpen,
|
|
25
25
|
renderTooltip,
|
|
26
26
|
onDragStart,
|
|
27
27
|
onDragMove,
|
|
@@ -31,15 +31,13 @@ const Handle = forwardRef((props, ref) => {
|
|
|
31
31
|
'data-key': dateKey,
|
|
32
32
|
...rest
|
|
33
33
|
} = props;
|
|
34
|
-
const
|
|
35
|
-
const direction = vertical ? 'bottom' : horizontalKey;
|
|
36
|
-
const styles = mergeStyles(style, {
|
|
37
|
-
[direction]: `${position}%`
|
|
38
|
-
});
|
|
34
|
+
const actualTooltip = tooltip || keepTooltipOpen;
|
|
39
35
|
const {
|
|
40
36
|
merge,
|
|
41
|
-
prefix
|
|
37
|
+
prefix,
|
|
38
|
+
cssVar
|
|
42
39
|
} = useStyles(classPrefix);
|
|
40
|
+
const styles = mergeStyles(style, cssVar('offset', `${position}%`));
|
|
43
41
|
const {
|
|
44
42
|
active,
|
|
45
43
|
onMoveStart,
|
|
@@ -47,14 +45,15 @@ const Handle = forwardRef((props, ref) => {
|
|
|
47
45
|
rootRef,
|
|
48
46
|
tooltipRef
|
|
49
47
|
} = useDrag({
|
|
50
|
-
tooltip,
|
|
48
|
+
tooltip: actualTooltip,
|
|
51
49
|
disabled,
|
|
52
50
|
onDragStart,
|
|
53
51
|
onDragMove,
|
|
54
|
-
onDragEnd
|
|
52
|
+
onDragEnd,
|
|
53
|
+
keepTooltipOpen
|
|
55
54
|
});
|
|
56
55
|
const handleClasses = merge(className, prefix('handle'), {
|
|
57
|
-
active
|
|
56
|
+
active: active || keepTooltipOpen
|
|
58
57
|
});
|
|
59
58
|
return /*#__PURE__*/React.createElement(Box, {
|
|
60
59
|
as: as,
|
|
@@ -70,10 +69,11 @@ const Handle = forwardRef((props, ref) => {
|
|
|
70
69
|
"data-range": dataRange,
|
|
71
70
|
"data-key": dateKey,
|
|
72
71
|
"data-testid": "slider-handle"
|
|
73
|
-
},
|
|
72
|
+
}, actualTooltip && /*#__PURE__*/React.createElement(Tooltip, {
|
|
74
73
|
"aria-hidden": "true",
|
|
75
74
|
ref: tooltipRef,
|
|
76
|
-
className:
|
|
75
|
+
className: prefix('tooltip'),
|
|
76
|
+
"data-placement": vertical ? 'left' : 'top'
|
|
77
77
|
}, renderTooltip ? renderTooltip(value) : value), /*#__PURE__*/React.createElement(Input, _extends({
|
|
78
78
|
tabIndex: -1,
|
|
79
79
|
value: value
|
package/esm/Slider/Slider.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { BoxProps } from '../internals/Box';
|
|
3
|
-
import type { FormControlBaseProps } from '../internals/types';
|
|
3
|
+
import type { FormControlBaseProps, Size } from '../internals/types';
|
|
4
4
|
export interface LocaleType {
|
|
5
5
|
placeholder?: string;
|
|
6
6
|
searchPlaceholder?: string;
|
|
@@ -44,6 +44,21 @@ export interface SliderProps<T = number> extends BoxProps, FormControlBaseProps<
|
|
|
44
44
|
placeholder?: React.ReactNode;
|
|
45
45
|
/** Vertical Slide */
|
|
46
46
|
vertical?: boolean;
|
|
47
|
+
/** If true, tooltip will always be visible even without hover */
|
|
48
|
+
keepTooltipOpen?: boolean;
|
|
49
|
+
/**
|
|
50
|
+
* A slider can have different sizes.
|
|
51
|
+
*
|
|
52
|
+
* @default 'sm'
|
|
53
|
+
*/
|
|
54
|
+
size?: Size;
|
|
55
|
+
/**
|
|
56
|
+
* Custom marks on the ruler
|
|
57
|
+
*/
|
|
58
|
+
marks?: {
|
|
59
|
+
value: number;
|
|
60
|
+
label: React.ReactNode;
|
|
61
|
+
}[];
|
|
47
62
|
/** Customize labels on the render ruler */
|
|
48
63
|
renderMark?: (mark: number) => React.ReactNode;
|
|
49
64
|
/** Customize the content of the rendered Tooltip. */
|
package/esm/Slider/Slider.js
CHANGED
|
@@ -42,15 +42,18 @@ const Slider = forwardRef((props, ref) => {
|
|
|
42
42
|
handleTitle,
|
|
43
43
|
tooltip = true,
|
|
44
44
|
step = 1,
|
|
45
|
+
size = 'sm',
|
|
45
46
|
defaultValue = 0,
|
|
46
47
|
value: valueProp,
|
|
47
48
|
max: maxProp = 100,
|
|
48
49
|
placeholder,
|
|
50
|
+
marks,
|
|
49
51
|
getAriaValueText,
|
|
50
52
|
renderTooltip,
|
|
51
53
|
renderMark,
|
|
52
54
|
onChange,
|
|
53
55
|
onChangeCommitted,
|
|
56
|
+
keepTooltipOpen,
|
|
54
57
|
...rest
|
|
55
58
|
} = propsWithDefaults;
|
|
56
59
|
const barRef = useRef(null);
|
|
@@ -178,7 +181,8 @@ const Slider = forwardRef((props, ref) => {
|
|
|
178
181
|
as: as,
|
|
179
182
|
ref: ref,
|
|
180
183
|
role: "presentation",
|
|
181
|
-
className: classes
|
|
184
|
+
className: classes,
|
|
185
|
+
"data-size": size
|
|
182
186
|
}, rest), /*#__PURE__*/React.createElement("div", {
|
|
183
187
|
ref: barRef,
|
|
184
188
|
className: merge(barClassName, prefix('bar')),
|
|
@@ -195,6 +199,7 @@ const Slider = forwardRef((props, ref) => {
|
|
|
195
199
|
max: max,
|
|
196
200
|
count: count,
|
|
197
201
|
value: value,
|
|
202
|
+
marks: marks,
|
|
198
203
|
renderMark: renderMark
|
|
199
204
|
})), /*#__PURE__*/React.createElement(Handle, {
|
|
200
205
|
position: (value - min) / (max - min) * 100,
|
|
@@ -203,8 +208,8 @@ const Slider = forwardRef((props, ref) => {
|
|
|
203
208
|
disabled: disabled,
|
|
204
209
|
vertical: vertical,
|
|
205
210
|
tooltip: tooltip,
|
|
206
|
-
rtl: rtl,
|
|
207
211
|
value: value,
|
|
212
|
+
keepTooltipOpen: keepTooltipOpen,
|
|
208
213
|
renderTooltip: renderTooltip,
|
|
209
214
|
onDragMove: handleChangeValue,
|
|
210
215
|
onKeyDown: handleKeyDown,
|
package/esm/Slider/useDrag.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ interface DragProps {
|
|
|
5
5
|
onDragStart?: (event: React.MouseEvent) => void;
|
|
6
6
|
onDragMove?: (event: React.DragEvent, dataset?: DOMStringMap) => void;
|
|
7
7
|
onDragEnd?: (event: React.MouseEvent, dataset?: DOMStringMap) => void;
|
|
8
|
+
keepTooltipOpen?: boolean;
|
|
8
9
|
}
|
|
9
10
|
declare const useDrag: (props: DragProps) => {
|
|
10
11
|
active: boolean;
|
package/esm/Slider/useDrag.js
CHANGED
|
@@ -12,7 +12,8 @@ const useDrag = props => {
|
|
|
12
12
|
disabled,
|
|
13
13
|
onDragMove,
|
|
14
14
|
onDragEnd,
|
|
15
|
-
onDragStart
|
|
15
|
+
onDragStart,
|
|
16
|
+
keepTooltipOpen
|
|
16
17
|
} = props;
|
|
17
18
|
const [active, setActive] = useState(false);
|
|
18
19
|
const moveTracker = useRef(null);
|
|
@@ -27,8 +28,9 @@ const useDrag = props => {
|
|
|
27
28
|
const tooltipElement = tooltipRef.current;
|
|
28
29
|
if (tooltip && tooltipElement) {
|
|
29
30
|
const width = getWidth(tooltipElement);
|
|
31
|
+
|
|
30
32
|
// Set the position of the tooltip
|
|
31
|
-
addStyle(tooltipElement, '
|
|
33
|
+
addStyle(tooltipElement, '--rs-tooltip-offset', `-${width / 2}px`);
|
|
32
34
|
}
|
|
33
35
|
}, [tooltip]);
|
|
34
36
|
const handleDragMove = useEventCallback((_deltaX, _deltaY, event) => {
|
|
@@ -67,10 +69,13 @@ const useDrag = props => {
|
|
|
67
69
|
setTooltipPosition();
|
|
68
70
|
});
|
|
69
71
|
useEffect(() => {
|
|
72
|
+
if (keepTooltipOpen) {
|
|
73
|
+
onMouseEnter();
|
|
74
|
+
}
|
|
70
75
|
return () => {
|
|
71
76
|
releaseMoves();
|
|
72
77
|
};
|
|
73
|
-
}, [releaseMoves]);
|
|
78
|
+
}, [releaseMoves, keepTooltipOpen]);
|
|
74
79
|
return {
|
|
75
80
|
active,
|
|
76
81
|
rootRef,
|
package/esm/Steps/Steps.js
CHANGED
|
@@ -3,7 +3,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import StepItem from "./StepItem.js";
|
|
5
5
|
import Box from "../internals/Box/index.js";
|
|
6
|
-
import { forwardRef,
|
|
6
|
+
import { forwardRef, rch } from "../internals/utils/index.js";
|
|
7
7
|
import { useStyles } from "../internals/hooks/index.js";
|
|
8
8
|
import { useCustom } from "../CustomProvider/index.js";
|
|
9
9
|
const Subcomponents = {
|
|
@@ -41,8 +41,8 @@ const Steps = forwardRef((props, ref) => {
|
|
|
41
41
|
vertical,
|
|
42
42
|
horizontal: !vertical
|
|
43
43
|
}));
|
|
44
|
-
const count =
|
|
45
|
-
const items =
|
|
44
|
+
const count = rch.count(children);
|
|
45
|
+
const items = rch.mapCloneElement(children, (item, index) => {
|
|
46
46
|
const itemStyles = {
|
|
47
47
|
flexBasis: index < count - 1 ? `${100 / (count - 1)}%` : undefined,
|
|
48
48
|
maxWidth: index === count - 1 ? `${100 / count}%` : undefined
|
package/esm/Tabs/Tabs.js
CHANGED
|
@@ -5,7 +5,7 @@ import Nav from "../Nav/index.js";
|
|
|
5
5
|
import Tab from "./Tab.js";
|
|
6
6
|
import TabPanel from "./TabPanel.js";
|
|
7
7
|
import Box from "../internals/Box/index.js";
|
|
8
|
-
import { forwardRef,
|
|
8
|
+
import { forwardRef, rch } from "../internals/utils/index.js";
|
|
9
9
|
import { useStyles, useControlled, useEventCallback, useUniqueId } from "../internals/hooks/index.js";
|
|
10
10
|
import { useCustom } from "../CustomProvider/index.js";
|
|
11
11
|
|
|
@@ -56,7 +56,7 @@ const renderPanels = (children, tabProps) => {
|
|
|
56
56
|
id,
|
|
57
57
|
activeKey
|
|
58
58
|
} = tabProps;
|
|
59
|
-
return
|
|
59
|
+
return rch.map(children, child => {
|
|
60
60
|
const {
|
|
61
61
|
eventKey,
|
|
62
62
|
children
|
|
@@ -75,7 +75,7 @@ const renderTabs = (children, tabPanelProps) => {
|
|
|
75
75
|
id,
|
|
76
76
|
activeKey
|
|
77
77
|
} = tabPanelProps;
|
|
78
|
-
return
|
|
78
|
+
return rch.map(children, child => {
|
|
79
79
|
const {
|
|
80
80
|
eventKey,
|
|
81
81
|
title,
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { InputBaseCommonProps } from '../internals/InputBase';
|
|
3
|
+
import type { SanitizedTextareaProps, PropsWithoutChange, FormControlBaseProps, Size } from '../internals/types';
|
|
4
|
+
export interface TextareaProps extends InputBaseCommonProps, SanitizedTextareaProps, PropsWithoutChange<FormControlBaseProps> {
|
|
5
|
+
/**
|
|
6
|
+
* The size of the textarea.
|
|
7
|
+
* @default 'md'
|
|
8
|
+
*/
|
|
9
|
+
size?: Size;
|
|
10
|
+
/** Enable auto resize of the textarea based on content */
|
|
11
|
+
autosize?: boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Maximum number of rows up to which the textarea can grow
|
|
14
|
+
* Auto resize props for react-textarea-autosize
|
|
15
|
+
*/
|
|
16
|
+
maxRows?: number;
|
|
17
|
+
/**
|
|
18
|
+
* Minimum number of rows up to which the textarea can shrink
|
|
19
|
+
* Auto resize props for react-textarea-autosize
|
|
20
|
+
*/
|
|
21
|
+
minRows?: number;
|
|
22
|
+
/**
|
|
23
|
+
* Whether to allow the textarea to be resized
|
|
24
|
+
*/
|
|
25
|
+
resize?: React.CSSProperties['resize'];
|
|
26
|
+
/**
|
|
27
|
+
* Called when Enter key is pressed
|
|
28
|
+
*/
|
|
29
|
+
onPressEnter?: React.KeyboardEventHandler<HTMLTextAreaElement>;
|
|
30
|
+
}
|
|
31
|
+
declare const Textarea: import("../internals/types").InternalRefForwardingComponent<"textarea", TextareaProps, never> & Record<string, never>;
|
|
32
|
+
export default Textarea;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import ReactTextareaAutosize from 'react-textarea-autosize';
|
|
5
|
+
import InputBase from "../internals/InputBase/index.js";
|
|
6
|
+
import { forwardRef, mergeStyles } from "../internals/utils/index.js";
|
|
7
|
+
import { useStyles } from "../internals/hooks/index.js";
|
|
8
|
+
import { useCustom } from "../CustomProvider/index.js";
|
|
9
|
+
const Textarea = forwardRef((props, ref) => {
|
|
10
|
+
const {
|
|
11
|
+
propsWithDefaults
|
|
12
|
+
} = useCustom('Textarea', props);
|
|
13
|
+
const {
|
|
14
|
+
rows = 3,
|
|
15
|
+
classPrefix = 'textarea',
|
|
16
|
+
className,
|
|
17
|
+
size = 'md',
|
|
18
|
+
autosize,
|
|
19
|
+
maxRows,
|
|
20
|
+
minRows,
|
|
21
|
+
resize,
|
|
22
|
+
style,
|
|
23
|
+
...rest
|
|
24
|
+
} = propsWithDefaults;
|
|
25
|
+
const {
|
|
26
|
+
withPrefix,
|
|
27
|
+
merge,
|
|
28
|
+
cssVar
|
|
29
|
+
} = useStyles(classPrefix);
|
|
30
|
+
const classes = merge(className, withPrefix());
|
|
31
|
+
const styles = mergeStyles(style, cssVar('resize', resize));
|
|
32
|
+
const autosizeProps = autosize ? {
|
|
33
|
+
maxRows,
|
|
34
|
+
minRows
|
|
35
|
+
} : {};
|
|
36
|
+
return /*#__PURE__*/React.createElement(InputBase, _extends({
|
|
37
|
+
as: autosize ? ReactTextareaAutosize : 'textarea',
|
|
38
|
+
ref: ref,
|
|
39
|
+
size: size,
|
|
40
|
+
rows: rows,
|
|
41
|
+
className: classes,
|
|
42
|
+
style: styles
|
|
43
|
+
}, autosizeProps, rest));
|
|
44
|
+
});
|
|
45
|
+
Textarea.displayName = 'Textarea';
|
|
46
|
+
export default Textarea;
|
package/esm/Timeline/Timeline.js
CHANGED
|
@@ -6,7 +6,7 @@ import TimelineItem from "./TimelineItem.js";
|
|
|
6
6
|
import Box from "../internals/Box/index.js";
|
|
7
7
|
import { useStyles } from "../internals/hooks/index.js";
|
|
8
8
|
import { useCustom } from "../CustomProvider/index.js";
|
|
9
|
-
import { forwardRef,
|
|
9
|
+
import { forwardRef, rch } from "../internals/utils/index.js";
|
|
10
10
|
const ACTIVE_FIRST = index => index === 0;
|
|
11
11
|
const ACTIVE_LAST = (index, totalItemsCount) => index === totalItemsCount - 1;
|
|
12
12
|
const SubcomponentsAndStaticMethods = {
|
|
@@ -38,7 +38,7 @@ const Timeline = forwardRef((props, ref) => {
|
|
|
38
38
|
merge,
|
|
39
39
|
withPrefix
|
|
40
40
|
} = useStyles(classPrefix);
|
|
41
|
-
const count =
|
|
41
|
+
const count = rch.count(children);
|
|
42
42
|
const withTime = some(React.Children.toArray(children), item => {
|
|
43
43
|
var _item$props;
|
|
44
44
|
return item === null || item === void 0 || (_item$props = item.props) === null || _item$props === void 0 ? void 0 : _item$props.time;
|
|
@@ -51,7 +51,7 @@ const Timeline = forwardRef((props, ref) => {
|
|
|
51
51
|
as: as,
|
|
52
52
|
ref: ref,
|
|
53
53
|
className: classes
|
|
54
|
-
}, rest),
|
|
54
|
+
}, rest), rch.mapCloneElement(children, (_child, index) => ({
|
|
55
55
|
last: index + 1 === count,
|
|
56
56
|
INTERNAL_active: isItemActive(index, count),
|
|
57
57
|
align
|
package/esm/Toggle/Toggle.d.ts
CHANGED
|
@@ -42,11 +42,20 @@ export interface ToggleProps extends BoxProps, SanitizedInputProps {
|
|
|
42
42
|
/**
|
|
43
43
|
* The size of the toggle
|
|
44
44
|
*/
|
|
45
|
-
size?:
|
|
45
|
+
size?: Size;
|
|
46
46
|
/**
|
|
47
47
|
* Custom locale
|
|
48
48
|
*/
|
|
49
49
|
locale?: ToggleLocale;
|
|
50
|
+
/**
|
|
51
|
+
* The label of the toggle switch
|
|
52
|
+
*/
|
|
53
|
+
label?: React.ReactNode;
|
|
54
|
+
/**
|
|
55
|
+
* The placement of the label
|
|
56
|
+
* @version 6.0.0
|
|
57
|
+
*/
|
|
58
|
+
labelPlacement?: 'start' | 'end';
|
|
50
59
|
/**
|
|
51
60
|
* Called when the state of the toggle changes
|
|
52
61
|
*/
|
package/esm/Toggle/Toggle.js
CHANGED
|
@@ -32,6 +32,8 @@ const Toggle = forwardRef((props, ref) => {
|
|
|
32
32
|
defaultChecked,
|
|
33
33
|
size = 'md',
|
|
34
34
|
locale,
|
|
35
|
+
label = children,
|
|
36
|
+
labelPlacement = 'end',
|
|
35
37
|
onChange,
|
|
36
38
|
...rest
|
|
37
39
|
} = propsWithDefaults;
|
|
@@ -48,10 +50,10 @@ const Toggle = forwardRef((props, ref) => {
|
|
|
48
50
|
loading
|
|
49
51
|
}));
|
|
50
52
|
const inner = checked ? checkedChildren : unCheckedChildren;
|
|
51
|
-
const
|
|
53
|
+
const innerLabel = checked ? locale === null || locale === void 0 ? void 0 : locale.on : locale === null || locale === void 0 ? void 0 : locale.off;
|
|
52
54
|
const labelId = useUniqueId('rs-label');
|
|
53
55
|
const innerId = inner ? labelId + '-inner' : undefined;
|
|
54
|
-
const labelledby =
|
|
56
|
+
const labelledby = label ? labelId : innerId;
|
|
55
57
|
const [htmlInputProps, restProps] = partitionHTMLProps(rest);
|
|
56
58
|
const handleInputChange = useEventCallback(e => {
|
|
57
59
|
if (disabled || readOnly || loading) {
|
|
@@ -64,12 +66,13 @@ const Toggle = forwardRef((props, ref) => {
|
|
|
64
66
|
onChange === null || onChange === void 0 || onChange(checked, e);
|
|
65
67
|
});
|
|
66
68
|
if (plaintext) {
|
|
67
|
-
return /*#__PURE__*/React.createElement(Plaintext, null, inner ||
|
|
69
|
+
return /*#__PURE__*/React.createElement(Plaintext, null, inner || innerLabel);
|
|
68
70
|
}
|
|
69
71
|
return /*#__PURE__*/React.createElement(Box, _extends({
|
|
70
72
|
as: as,
|
|
71
73
|
ref: ref,
|
|
72
|
-
className: classes
|
|
74
|
+
className: classes,
|
|
75
|
+
"data-placement": labelPlacement
|
|
73
76
|
}, restProps), /*#__PURE__*/React.createElement("input", _extends({}, htmlInputProps, {
|
|
74
77
|
ref: inputRef,
|
|
75
78
|
type: "checkbox",
|
|
@@ -83,19 +86,19 @@ const Toggle = forwardRef((props, ref) => {
|
|
|
83
86
|
"aria-checked": checked,
|
|
84
87
|
"aria-disabled": disabled,
|
|
85
88
|
"aria-labelledby": labelledby,
|
|
86
|
-
"aria-label": labelledby ? undefined :
|
|
89
|
+
"aria-label": labelledby ? undefined : innerLabel,
|
|
87
90
|
"aria-busy": loading || undefined
|
|
88
91
|
})), /*#__PURE__*/React.createElement("span", {
|
|
89
|
-
className: prefix('
|
|
90
|
-
}, /*#__PURE__*/React.createElement("span", {
|
|
92
|
+
className: prefix('track')
|
|
93
|
+
}, inner && /*#__PURE__*/React.createElement("span", {
|
|
91
94
|
className: prefix('inner'),
|
|
92
95
|
id: innerId
|
|
93
96
|
}, inner), loading && /*#__PURE__*/React.createElement(Loader, {
|
|
94
97
|
className: prefix('loader')
|
|
95
|
-
})),
|
|
98
|
+
})), label && /*#__PURE__*/React.createElement("span", {
|
|
96
99
|
className: prefix('label'),
|
|
97
100
|
id: labelId
|
|
98
|
-
},
|
|
101
|
+
}, label));
|
|
99
102
|
});
|
|
100
103
|
Toggle.displayName = 'Toggle';
|
|
101
104
|
export default Toggle;
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
3
3
|
import React, { useMemo } from 'react';
|
|
4
4
|
import pick from 'lodash/pick';
|
|
5
|
-
import omit from 'lodash/omit';
|
|
6
5
|
import isNil from 'lodash/isNil';
|
|
7
6
|
import isFunction from 'lodash/isFunction';
|
|
8
7
|
import useTreeWithChildren from "../Tree/hooks/useTreeWithChildren.js";
|
|
@@ -10,11 +9,10 @@ import useFlattenTree from "../Tree/hooks/useFlattenTree.js";
|
|
|
10
9
|
import useFocusState from "./hooks/useFocusState.js";
|
|
11
10
|
import useExpandTree from "../Tree/hooks/useExpandTree.js";
|
|
12
11
|
import TreeView from "../Tree/TreeView.js";
|
|
13
|
-
import Box from "../internals/Box/index.js";
|
|
14
12
|
import { useStyles, useControlled, useEventCallback } from "../internals/hooks/index.js";
|
|
15
13
|
import { forwardRef, createChainedFunction, mergeRefs } from "../internals/utils/index.js";
|
|
16
14
|
import { getActiveItem, getTreeActiveNode } from "../Tree/utils/index.js";
|
|
17
|
-
import { PickerToggle, PickerPopup, PickerToggleTrigger,
|
|
15
|
+
import { PickerToggle, PickerPopup, PickerToggleTrigger, usePickerRef, onMenuKeyDown, triggerPropKeys, useToggleKeyDownEvent } from "../internals/Picker/index.js";
|
|
18
16
|
import { TreeProvider, useTreeImperativeHandle } from "../internals/Tree/TreeProvider.js";
|
|
19
17
|
import { useCustom } from "../CustomProvider/index.js";
|
|
20
18
|
/**
|
|
@@ -40,6 +38,8 @@ const TreePicker = forwardRef((props, ref) => {
|
|
|
40
38
|
defaultExpandItemValues = [],
|
|
41
39
|
expandItemValues: controlledExpandItemValues,
|
|
42
40
|
id,
|
|
41
|
+
block,
|
|
42
|
+
className,
|
|
43
43
|
locale,
|
|
44
44
|
labelKey = 'label',
|
|
45
45
|
placeholder,
|
|
@@ -246,27 +246,26 @@ const TreePicker = forwardRef((props, ref) => {
|
|
|
246
246
|
}
|
|
247
247
|
}
|
|
248
248
|
}
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
classPrefix,
|
|
252
|
-
appearance,
|
|
253
|
-
hasValue: hasValidValue,
|
|
254
|
-
name: 'tree',
|
|
255
|
-
cleanable
|
|
256
|
-
});
|
|
257
|
-
return /*#__PURE__*/React.createElement(PickerToggleTrigger, _extends({
|
|
249
|
+
return /*#__PURE__*/React.createElement(PickerToggleTrigger, {
|
|
250
|
+
as: as,
|
|
258
251
|
id: id,
|
|
252
|
+
name: "tree",
|
|
253
|
+
block: block,
|
|
254
|
+
disabled: disabled,
|
|
255
|
+
appearance: appearance,
|
|
259
256
|
popupType: "tree",
|
|
260
|
-
|
|
257
|
+
triggerProps: {
|
|
258
|
+
...pick(props, triggerPropKeys),
|
|
259
|
+
...triggerProps
|
|
260
|
+
},
|
|
261
261
|
ref: trigger,
|
|
262
262
|
placement: placement,
|
|
263
|
-
speaker: renderTreeView
|
|
264
|
-
|
|
265
|
-
as: as,
|
|
266
|
-
className: classes,
|
|
263
|
+
speaker: renderTreeView,
|
|
264
|
+
rootRef: root,
|
|
267
265
|
style: style,
|
|
268
|
-
|
|
269
|
-
|
|
266
|
+
classPrefix: classPrefix,
|
|
267
|
+
className: className
|
|
268
|
+
}, /*#__PURE__*/React.createElement(PickerToggle, _extends({
|
|
270
269
|
ref: target,
|
|
271
270
|
appearance: appearance,
|
|
272
271
|
onKeyDown: onPickerKeydown,
|
|
@@ -279,7 +278,7 @@ const TreePicker = forwardRef((props, ref) => {
|
|
|
279
278
|
placement: placement,
|
|
280
279
|
inputValue: value,
|
|
281
280
|
focusItemValue: focusItemValue
|
|
282
|
-
}), selectedElement || (locale === null || locale === void 0 ? void 0 : locale.placeholder)))
|
|
281
|
+
}, rest), selectedElement || (locale === null || locale === void 0 ? void 0 : locale.placeholder)));
|
|
283
282
|
});
|
|
284
283
|
TreePicker.displayName = 'TreePicker';
|
|
285
284
|
export default TreePicker;
|