rsuite 5.76.2 → 6.0.0-canary-20250103
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/Accordion/styles/index.css +12 -45
- package/Animation/styles/animation.less +0 -0
- package/Animation/styles/index.css +49 -214
- package/Animation/styles/mixin.less +0 -0
- package/AutoComplete/styles/index.css +122 -490
- package/Avatar/styles/index.css +10 -17
- package/AvatarGroup/styles/index.css +12 -16
- package/AvatarGroup/styles/index.less +3 -0
- package/Badge/styles/index.css +90 -31
- package/Badge/styles/index.less +68 -9
- package/Breadcrumb/styles/index.css +9 -16
- package/Button/styles/index.css +20 -97
- package/Button/styles/mixin.less +1 -2
- package/ButtonGroup/styles/index.css +8 -9
- package/ButtonGroup/styles/index.less +0 -0
- package/ButtonToolbar/styles/index.css +7 -6
- package/Calendar/styles/index.css +36 -214
- package/Calendar/styles/index.less +0 -5
- package/Card/styles/index.css +12 -28
- package/Carousel/styles/index.css +21 -75
- package/Carousel/styles/index.less +0 -0
- package/CascadeTree/styles/index.css +10 -39
- package/Cascader/styles/index.css +125 -519
- package/CheckPicker/styles/index.css +129 -554
- package/CheckTree/styles/index.css +133 -579
- package/CheckTreePicker/styles/index.css +134 -585
- package/Checkbox/styles/index.css +13 -68
- package/CheckboxGroup/styles/index.css +9 -14
- package/Col/styles/index.css +7 -4
- package/Container/styles/index.css +10 -17
- package/Container/styles/index.less +0 -0
- package/Content/styles/index.css +8 -7
- package/Content/styles/index.less +0 -0
- package/DateInput/styles/index.css +7 -43
- package/DatePicker/styles/index.css +138 -621
- package/DatePicker/styles/mixin.less +0 -0
- package/DateRangeInput/styles/index.css +7 -43
- package/DateRangePicker/styles/index.css +141 -637
- package/Divider/styles/index.css +11 -21
- package/Drawer/styles/index.css +15 -46
- package/Drawer/styles/mixin.less +0 -0
- package/Dropdown/styles/index.css +37 -178
- package/FlexboxGrid/styles/index.css +41 -108
- package/FlexboxGrid/styles/index.less +0 -0
- package/Footer/styles/index.css +11 -20
- package/Footer/styles/index.less +0 -0
- package/Form/styles/index.css +7 -4
- package/Form/styles/index.less +0 -0
- package/Form/styles/mixin.less +9 -5
- package/FormControl/styles/index.css +8 -6
- package/FormControl/styles/index.less +0 -0
- package/FormControlLabel/styles/index.css +7 -5
- package/FormControlLabel/styles/index.less +0 -0
- package/FormErrorMessage/styles/animation.less +0 -0
- package/FormErrorMessage/styles/index.css +22 -89
- package/FormErrorMessage/styles/index.less +0 -0
- package/FormGroup/styles/index.css +7 -4
- package/FormHelpText/styles/index.css +8 -10
- package/FormHelpText/styles/index.less +0 -0
- package/Grid/styles/grid-framework.less +0 -0
- package/Grid/styles/index.css +7 -4
- package/Grid/styles/mixin.less +0 -0
- package/Header/styles/index.css +11 -20
- package/Header/styles/index.less +0 -0
- package/Heading/styles/index.css +7 -4
- package/IconButton/styles/index.css +22 -110
- package/IconButton/styles/index.less +0 -0
- package/Image/styles/index.css +1 -5
- package/InlineEdit/styles/index.css +9 -29
- package/Input/styles/index.css +7 -43
- package/Input/styles/index.less +0 -0
- package/InputGroup/styles/index.css +25 -193
- package/InputNumber/styles/index.css +29 -251
- package/InputNumber/styles/index.less +0 -0
- package/InputPicker/styles/index.css +123 -506
- package/List/styles/index.css +8 -14
- package/Loader/styles/index.css +19 -57
- package/Message/styles/index.css +33 -155
- package/Modal/styles/animation.less +0 -0
- package/Modal/styles/index.css +13 -32
- package/Modal/styles/mixin.less +0 -0
- package/MultiCascadeTree/styles/index.css +131 -583
- package/MultiCascader/styles/index.css +131 -583
- package/Nav/styles/index.css +46 -236
- package/Navbar/styles/index.css +41 -214
- package/Notification/styles/index.css +24 -109
- package/Notification/styles/mixin.less +0 -0
- package/Pagination/styles/index.css +139 -592
- package/Pagination/styles/mixin.less +0 -0
- package/Panel/styles/index.css +12 -43
- package/PanelGroup/styles/index.css +7 -6
- package/PanelGroup/styles/index.less +0 -0
- package/Placeholder/styles/index.css +15 -47
- package/Popover/styles/index.css +16 -124
- package/Popover/styles/mixins.less +0 -12
- package/Progress/styles/animation.less +0 -0
- package/Progress/styles/index.css +19 -89
- package/README.md +9 -5
- package/Radio/styles/index.css +12 -66
- package/Radio/styles/mixin.less +0 -0
- package/RadioGroup/styles/index.css +9 -25
- package/RadioTile/styles/index.css +7 -13
- package/RangeSlider/styles/index.css +20 -144
- package/Rate/styles/index.css +29 -40
- package/Rate/styles/index.less +6 -2
- package/Row/styles/index.css +7 -4
- package/Row/styles/index.less +0 -0
- package/SelectPicker/styles/index.css +123 -498
- package/SelectPicker/styles/index.less +1 -1
- package/Sidebar/styles/index.css +10 -20
- package/Sidebar/styles/index.less +0 -0
- package/Sidenav/styles/index.css +21 -108
- package/Sidenav/styles/mixin.less +0 -0
- package/Slider/styles/index.css +20 -144
- package/Stack/styles/index.css +7 -6
- package/Stack/styles/index.less +0 -0
- package/Stat/styles/index.css +37 -263
- package/Steps/styles/index.css +14 -46
- package/Table/styles/index.css +21 -70
- package/Table/styles/mixin.less +0 -0
- package/Tabs/styles/index.css +51 -259
- package/Tag/styles/index.css +36 -36
- package/Tag/styles/index.less +6 -3
- package/TagGroup/styles/index.css +7 -4
- package/TagInput/styles/index.css +133 -578
- package/TagPicker/styles/index.css +133 -578
- package/Text/styles/index.css +8 -23
- package/TimePicker/styles/index.css +138 -621
- package/TimeRangePicker/styles/index.css +141 -637
- package/Timeline/styles/index.css +9 -22
- package/Timeline/styles/index.less +0 -3
- package/Timeline/styles/mixin.less +0 -0
- package/Toggle/styles/index.css +13 -60
- package/Tooltip/styles/index.css +15 -113
- package/Tooltip/styles/index.less +0 -0
- package/Tooltip/styles/mixins.less +0 -12
- package/Tree/styles/index.css +2737 -59
- package/Tree/styles/index.less +1 -1
- package/TreePicker/styles/index.css +2737 -59
- package/Uploader/styles/index.css +41 -225
- package/Uploader/styles/mixin.less +0 -0
- package/cjs/Accordion/Accordion.js +4 -3
- package/cjs/Affix/Affix.d.ts +1 -1
- package/cjs/Affix/Affix.js +55 -66
- package/cjs/Affix/index.js +0 -0
- package/cjs/Animation/Bounce.js +11 -10
- package/cjs/Animation/Collapse.js +41 -49
- package/cjs/Animation/Fade.js +13 -12
- package/cjs/Animation/Slide.js +14 -14
- package/cjs/Animation/Transition.d.ts +1 -40
- package/cjs/Animation/Transition.js +97 -115
- package/cjs/Animation/index.js +1 -1
- package/cjs/Animation/utils.d.ts +0 -9
- package/cjs/Animation/utils.js +2 -13
- package/cjs/AutoComplete/AutoComplete.d.ts +2 -2
- package/cjs/AutoComplete/AutoComplete.js +87 -128
- package/cjs/AutoComplete/Combobox.js +11 -10
- package/cjs/AutoComplete/index.js +0 -0
- package/cjs/AutoComplete/utils.js +7 -6
- package/cjs/Avatar/Avatar.js +54 -76
- package/cjs/Avatar/AvatarIcon.js +12 -14
- package/cjs/Avatar/index.js +0 -0
- package/cjs/Avatar/useImage.js +19 -19
- package/cjs/AvatarGroup/AvatarGroup.js +31 -43
- package/cjs/AvatarGroup/index.js +0 -0
- package/cjs/Badge/Badge.d.ts +40 -5
- package/cjs/Badge/Badge.js +48 -49
- package/cjs/Badge/index.js +0 -0
- package/cjs/Breadcrumb/Breadcrumb.js +34 -49
- package/cjs/Breadcrumb/BreadcrumbItem.d.ts +1 -1
- package/cjs/Breadcrumb/BreadcrumbItem.js +21 -34
- package/cjs/Breadcrumb/index.js +0 -0
- package/cjs/Button/Button.d.ts +5 -1
- package/cjs/Button/Button.js +60 -65
- package/cjs/Button/index.js +0 -0
- package/cjs/ButtonGroup/ButtonGroup.js +28 -44
- package/cjs/ButtonGroup/ButtonGroupContext.js +1 -1
- package/cjs/ButtonGroup/index.js +0 -0
- package/cjs/ButtonToolbar/ButtonToolbar.js +17 -23
- package/cjs/ButtonToolbar/index.js +0 -0
- package/cjs/Calendar/Calendar.js +46 -66
- package/cjs/Calendar/CalendarBody.js +26 -26
- package/cjs/Calendar/CalendarContainer.js +88 -95
- package/cjs/Calendar/CalendarHeader.js +50 -50
- package/cjs/Calendar/CalendarProvider.js +2 -2
- package/cjs/Calendar/Grid/Grid.js +22 -25
- package/cjs/Calendar/Grid/GridCell.js +39 -37
- package/cjs/Calendar/Grid/GridHeaderRow.js +27 -29
- package/cjs/Calendar/Grid/GridRow.js +48 -53
- package/cjs/Calendar/MonthDropdown/MonthDropdown.js +62 -63
- package/cjs/Calendar/MonthDropdown/MonthDropdownItem.js +36 -39
- package/cjs/Calendar/TimeDropdown/TimeColumn.js +7 -7
- package/cjs/Calendar/TimeDropdown/TimeDropdown.js +64 -64
- package/cjs/Calendar/TimeDropdown/utils/formatWithLeadingZero.js +3 -2
- package/cjs/Calendar/TimeDropdown/utils/getClockTime.js +7 -5
- package/cjs/Calendar/TimeDropdown/utils/getTimeLimits.js +3 -3
- package/cjs/Calendar/TimeDropdown/utils/scrollToTime.js +6 -7
- package/cjs/Calendar/hooks/useCalendar.js +3 -2
- package/cjs/Calendar/hooks/useCalendarDate.d.ts +1 -1
- package/cjs/Calendar/hooks/useCalendarDate.js +11 -12
- package/cjs/Calendar/hooks/useCalendarState.js +18 -19
- package/cjs/Calendar/utils/isEveryDateInMonth.js +2 -2
- package/cjs/Card/Card.js +30 -39
- package/cjs/Card/CardBody.d.ts +1 -1
- package/cjs/Card/CardBody.js +1 -1
- package/cjs/Card/CardFooter.d.ts +1 -1
- package/cjs/Card/CardFooter.js +1 -1
- package/cjs/Card/CardHeader.d.ts +1 -1
- package/cjs/Card/CardHeader.js +1 -1
- package/cjs/CardGroup/CardGroup.js +24 -28
- package/cjs/Carousel/Carousel.js +75 -97
- package/cjs/Carousel/index.js +0 -0
- package/cjs/CascadeTree/CascadeTree.d.ts +0 -1
- package/cjs/CascadeTree/CascadeTree.js +93 -105
- package/cjs/CascadeTree/SearchView.js +49 -54
- package/cjs/CascadeTree/TreeView.js +84 -92
- package/cjs/CascadeTree/hooks/usePaths.js +18 -19
- package/cjs/CascadeTree/hooks/useSearch.js +22 -22
- package/cjs/CascadeTree/hooks/useSelect.js +26 -24
- package/cjs/CascadeTree/utils.js +10 -8
- package/cjs/Cascader/Cascader.d.ts +0 -1
- package/cjs/Cascader/Cascader.js +203 -239
- package/cjs/Cascader/index.js +0 -0
- package/cjs/Cascader/useActive.js +15 -15
- package/cjs/CheckPicker/CheckPicker.d.ts +0 -1
- package/cjs/CheckPicker/CheckPicker.js +146 -200
- package/cjs/CheckPicker/index.js +0 -0
- package/cjs/CheckTree/CheckTree.js +72 -77
- package/cjs/CheckTree/CheckTreeNode.js +53 -51
- package/cjs/CheckTree/CheckTreeView.js +178 -185
- package/cjs/CheckTree/hooks/useTreeCheckState.js +26 -25
- package/cjs/CheckTree/hooks/useTreeNodeProps.js +40 -37
- package/cjs/CheckTree/hooks/useTreeValue.js +6 -7
- package/cjs/CheckTree/utils.js +62 -65
- package/cjs/CheckTreePicker/CheckTreePicker.js +175 -190
- package/cjs/CheckTreePicker/hooks/useFocusState.js +13 -15
- package/cjs/CheckTreePicker/index.js +0 -0
- package/cjs/Checkbox/Checkbox.js +65 -102
- package/cjs/Checkbox/index.js +0 -0
- package/cjs/CheckboxGroup/CheckboxGroup.js +40 -62
- package/cjs/CheckboxGroup/CheckboxGroupContext.js +1 -1
- package/cjs/CheckboxGroup/index.js +0 -0
- package/cjs/Col/Col.js +32 -66
- package/cjs/Col/index.js +0 -0
- package/cjs/Container/Container.d.ts +1 -1
- package/cjs/Container/Container.js +22 -32
- package/cjs/Container/index.js +0 -0
- package/cjs/Content/Content.d.ts +1 -1
- package/cjs/Content/Content.js +1 -1
- package/cjs/Content/index.js +0 -0
- package/cjs/CustomProvider/CustomProvider.d.ts +19 -17
- package/cjs/CustomProvider/CustomProvider.js +48 -56
- package/cjs/CustomProvider/FormattedDate.js +8 -5
- package/cjs/CustomProvider/FormattedNumber.js +10 -9
- package/cjs/CustomProvider/index.js +1 -1
- package/cjs/CustomProvider/useCustom.js +44 -47
- package/cjs/DOMHelper/index.js +4 -4
- package/cjs/DOMHelper/isElement.js +1 -1
- package/cjs/DateInput/DateField.js +106 -105
- package/cjs/DateInput/DateInput.js +124 -139
- package/cjs/DateInput/hooks/useDateInputState.js +55 -49
- package/cjs/DateInput/hooks/useFieldCursor.js +16 -16
- package/cjs/DateInput/hooks/useIsFocused.js +9 -9
- package/cjs/DateInput/hooks/useKeyboardInputEvent.js +10 -7
- package/cjs/DateInput/hooks/useSelectedState.js +4 -6
- package/cjs/DateInput/utils.d.ts +1 -1
- package/cjs/DateInput/utils.js +76 -72
- package/cjs/DatePicker/DatePicker.js +190 -225
- package/cjs/DatePicker/PredefinedRanges.js +24 -29
- package/cjs/DatePicker/Toolbar.d.ts +1 -1
- package/cjs/DatePicker/Toolbar.js +28 -26
- package/cjs/DatePicker/hooks/useCustomizedInput.d.ts +1 -1
- package/cjs/DatePicker/hooks/useCustomizedInput.js +21 -26
- package/cjs/DatePicker/hooks/useFocus.js +45 -39
- package/cjs/DatePicker/hooks/useMonthView.js +8 -8
- package/cjs/DatePicker/utils.d.ts +0 -7
- package/cjs/DatePicker/utils.js +29 -36
- package/cjs/DateRangeInput/DateRangeInput.js +131 -152
- package/cjs/DateRangeInput/utils.js +50 -50
- package/cjs/DateRangePicker/Calendar.js +24 -29
- package/cjs/DateRangePicker/DateRangePicker.js +260 -323
- package/cjs/DateRangePicker/DateRangePickerProvider.js +5 -4
- package/cjs/DateRangePicker/Header.js +20 -23
- package/cjs/DateRangePicker/disabledDateUtils.js +17 -35
- package/cjs/DateRangePicker/hooks/useCalendarHandlers.js +14 -14
- package/cjs/DateRangePicker/hooks/useDateDisabled.js +10 -6
- package/cjs/DateRangePicker/hooks/useDateRangePicker.js +3 -2
- package/cjs/DateRangePicker/index.js +2 -2
- package/cjs/DateRangePicker/utils.js +24 -20
- package/cjs/Divider/Divider.js +18 -26
- package/cjs/Divider/index.js +0 -0
- package/cjs/Drawer/Drawer.d.ts +2 -2
- package/cjs/Drawer/Drawer.js +19 -29
- package/cjs/Drawer/DrawerActions.d.ts +1 -1
- package/cjs/Drawer/DrawerActions.js +1 -1
- package/cjs/Drawer/DrawerBody.js +1 -1
- package/cjs/Drawer/DrawerFooter.js +1 -1
- package/cjs/Drawer/DrawerHeader.js +1 -1
- package/cjs/Drawer/DrawerTitle.js +1 -1
- package/cjs/Drawer/index.js +0 -0
- package/cjs/Dropdown/Dropdown.d.ts +3 -3
- package/cjs/Dropdown/Dropdown.js +74 -106
- package/cjs/Dropdown/DropdownContext.d.ts +1 -1
- package/cjs/Dropdown/DropdownContext.js +1 -1
- package/cjs/Dropdown/DropdownItem.js +54 -73
- package/cjs/Dropdown/DropdownMenu.d.ts +2 -2
- package/cjs/Dropdown/DropdownMenu.js +79 -97
- package/cjs/Dropdown/DropdownSeparator.js +11 -16
- package/cjs/Dropdown/DropdownState.js +22 -23
- package/cjs/Dropdown/DropdownToggle.d.ts +2 -2
- package/cjs/Dropdown/DropdownToggle.js +20 -34
- package/cjs/Dropdown/index.js +0 -0
- package/cjs/Dropdown/useRenderDropdownItem.js +2 -2
- package/cjs/FlexboxGrid/FlexboxGrid.js +17 -27
- package/cjs/FlexboxGrid/FlexboxGridItem.js +17 -26
- package/cjs/FlexboxGrid/index.js +0 -0
- package/cjs/Footer/Footer.d.ts +1 -1
- package/cjs/Footer/Footer.js +1 -1
- package/cjs/Footer/index.js +0 -0
- package/cjs/Form/Form.js +108 -133
- package/cjs/Form/FormContext.js +5 -5
- package/cjs/Form/hooks/useFormClassNames.js +15 -14
- package/cjs/Form/hooks/useFormRef.js +9 -8
- package/cjs/Form/hooks/useFormValidate.js +77 -77
- package/cjs/Form/hooks/useFormValue.js +22 -19
- package/cjs/Form/hooks/useSchemaModel.js +31 -33
- package/cjs/FormControl/FormControl.d.ts +3 -3
- package/cjs/FormControl/FormControl.js +83 -97
- package/cjs/FormControl/hooks/useField.js +23 -18
- package/cjs/FormControl/hooks/useRegisterModel.js +7 -6
- package/cjs/FormControl/index.js +0 -0
- package/cjs/FormControlLabel/FormControlLabel.js +21 -28
- package/cjs/FormControlLabel/index.js +0 -0
- package/cjs/FormErrorMessage/FormErrorMessage.d.ts +2 -2
- package/cjs/FormErrorMessage/FormErrorMessage.js +24 -34
- package/cjs/FormErrorMessage/index.js +0 -0
- package/cjs/FormGroup/FormGroup.js +33 -40
- package/cjs/FormGroup/index.js +1 -1
- package/cjs/FormHelpText/FormHelpText.js +22 -29
- package/cjs/FormHelpText/index.js +0 -0
- package/cjs/Grid/Grid.js +18 -25
- package/cjs/Grid/index.js +0 -0
- package/cjs/Header/Header.d.ts +1 -1
- package/cjs/Header/Header.js +1 -1
- package/cjs/Header/index.js +0 -0
- package/cjs/Heading/Heading.js +17 -24
- package/cjs/HeadingGroup/HeadingGroup.d.ts +1 -1
- package/cjs/HeadingGroup/HeadingGroup.js +1 -1
- package/cjs/Highlight/Highlight.js +21 -28
- package/cjs/Highlight/utils/highlightText.js +10 -10
- package/cjs/IconButton/IconButton.js +19 -29
- package/cjs/IconButton/index.js +0 -0
- package/cjs/Image/Image.js +61 -68
- package/cjs/Image/ImageWrapper.d.ts +1 -1
- package/cjs/Image/ImageWrapper.js +1 -1
- package/cjs/Image/hooks/useImage.js +26 -29
- package/cjs/InlineEdit/EditableControls.js +6 -6
- package/cjs/InlineEdit/InlineEdit.d.ts +3 -3
- package/cjs/InlineEdit/InlineEdit.js +54 -72
- package/cjs/InlineEdit/renderChildren.js +19 -20
- package/cjs/InlineEdit/useEditState.js +23 -30
- package/cjs/InlineEdit/useFocusEvent.js +17 -15
- package/cjs/Input/Input.js +41 -60
- package/cjs/Input/index.js +0 -0
- package/cjs/InputGroup/InputGroup.js +34 -48
- package/cjs/InputGroup/InputGroupAddon.js +14 -21
- package/cjs/InputGroup/InputGroupButton.js +14 -13
- package/cjs/InputGroup/index.js +0 -0
- package/cjs/InputNumber/InputNumber.js +73 -107
- package/cjs/InputNumber/index.js +0 -0
- package/cjs/InputPicker/InputAutosize.js +49 -66
- package/cjs/InputPicker/InputPicker.js +246 -295
- package/cjs/InputPicker/InputPickerContext.js +2 -2
- package/cjs/InputPicker/InputSearch.js +21 -24
- package/cjs/InputPicker/TagList.js +15 -14
- package/cjs/InputPicker/TextBox.js +21 -21
- package/cjs/InputPicker/hooks/useData.js +14 -18
- package/cjs/InputPicker/hooks/useInput.js +15 -13
- package/cjs/InputPicker/hooks/useMaxWidth.js +2 -5
- package/cjs/InputPicker/utils.js +3 -2
- package/cjs/List/List.js +55 -79
- package/cjs/List/ListContext.js +4 -6
- package/cjs/List/ListItem.js +39 -46
- package/cjs/List/helper/AutoScroller.js +35 -35
- package/cjs/List/helper/useManager.js +14 -18
- package/cjs/List/helper/useSortHelper.js +88 -101
- package/cjs/List/helper/utils.js +11 -16
- package/cjs/List/index.js +0 -0
- package/cjs/Loader/Loader.js +27 -42
- package/cjs/Loader/index.js +0 -0
- package/cjs/MaskedInput/MaskedInput.js +8 -5
- package/cjs/MaskedInput/TextMask.js +29 -43
- package/cjs/MaskedInput/adjustCaretPosition.js +64 -82
- package/cjs/MaskedInput/conformToMask.js +52 -56
- package/cjs/MaskedInput/createTextMaskInputElement.js +62 -58
- package/cjs/MaskedInput/index.js +0 -0
- package/cjs/MaskedInput/types.js +0 -0
- package/cjs/MaskedInput/utilities.js +8 -8
- package/cjs/Message/Message.js +51 -71
- package/cjs/Message/index.js +0 -0
- package/cjs/Modal/Modal.js +91 -118
- package/cjs/Modal/ModalBody.js +28 -31
- package/cjs/Modal/ModalContext.js +1 -1
- package/cjs/Modal/ModalDialog.d.ts +0 -10
- package/cjs/Modal/ModalDialog.js +25 -40
- package/cjs/Modal/ModalFooter.d.ts +1 -1
- package/cjs/Modal/ModalFooter.js +1 -1
- package/cjs/Modal/ModalHeader.js +23 -32
- package/cjs/Modal/ModalTitle.js +16 -24
- package/cjs/Modal/utils.js +28 -30
- package/cjs/MultiCascadeTree/MultiCascadeTree.js +76 -80
- package/cjs/MultiCascadeTree/SearchView.js +53 -58
- package/cjs/MultiCascadeTree/TreeView.js +84 -99
- package/cjs/MultiCascadeTree/hooks/useCascadeValue.js +68 -100
- package/cjs/MultiCascadeTree/hooks/useColumnData.js +10 -16
- package/cjs/MultiCascadeTree/hooks/useFlattenData.js +10 -10
- package/cjs/MultiCascadeTree/hooks/useSearch.js +17 -19
- package/cjs/MultiCascadeTree/hooks/useSelect.js +39 -37
- package/cjs/MultiCascadeTree/utils.js +44 -42
- package/cjs/MultiCascader/MultiCascader.js +190 -224
- package/cjs/MultiCascader/index.js +0 -0
- package/cjs/Nav/AdaptiveNavItem.js +12 -13
- package/cjs/Nav/Nav.js +52 -73
- package/cjs/Nav/NavContext.js +1 -1
- package/cjs/Nav/NavDropdown.d.ts +3 -3
- package/cjs/Nav/NavDropdown.js +63 -93
- package/cjs/Nav/NavDropdownItem.js +56 -72
- package/cjs/Nav/NavDropdownMenu.d.ts +1 -1
- package/cjs/Nav/NavDropdownMenu.js +67 -81
- package/cjs/Nav/NavDropdownToggle.d.ts +2 -2
- package/cjs/Nav/NavDropdownToggle.js +19 -30
- package/cjs/Nav/NavItem.js +34 -49
- package/cjs/Nav/NavMenu.js +18 -20
- package/cjs/Nav/index.js +0 -0
- package/cjs/Navbar/Navbar.js +17 -18
- package/cjs/Navbar/NavbarBody.d.ts +1 -1
- package/cjs/Navbar/NavbarBody.js +1 -1
- package/cjs/Navbar/NavbarBrand.d.ts +1 -1
- package/cjs/Navbar/NavbarBrand.js +1 -1
- package/cjs/Navbar/NavbarDropdown.d.ts +3 -3
- package/cjs/Navbar/NavbarDropdown.js +52 -79
- package/cjs/Navbar/NavbarDropdownItem.js +50 -72
- package/cjs/Navbar/NavbarDropdownMenu.d.ts +1 -1
- package/cjs/Navbar/NavbarDropdownMenu.js +60 -76
- package/cjs/Navbar/NavbarDropdownToggle.d.ts +2 -2
- package/cjs/Navbar/NavbarDropdownToggle.js +18 -30
- package/cjs/Navbar/NavbarHeader.d.ts +1 -1
- package/cjs/Navbar/NavbarHeader.js +1 -1
- package/cjs/Navbar/NavbarItem.js +31 -45
- package/cjs/Navbar/index.js +1 -1
- package/cjs/Notification/Notification.d.ts +4 -3
- package/cjs/Notification/Notification.js +40 -56
- package/cjs/Notification/index.js +0 -0
- package/cjs/Pagination/LimitPicker.js +16 -18
- package/cjs/Pagination/Pagination.js +58 -81
- package/cjs/Pagination/PaginationButton.js +23 -24
- package/cjs/Pagination/PaginationGroup.js +44 -60
- package/cjs/Pagination/index.js +0 -0
- package/cjs/Panel/AccordionButton.js +17 -20
- package/cjs/Panel/Panel.js +56 -81
- package/cjs/Panel/PanelBody.js +35 -34
- package/cjs/Panel/PanelHeader.js +24 -25
- package/cjs/Panel/hooks/useExpanded.js +14 -13
- package/cjs/Panel/index.js +0 -0
- package/cjs/PanelGroup/PanelGroup.js +32 -47
- package/cjs/PanelGroup/index.js +1 -1
- package/cjs/Placeholder/Placeholder.js +1 -1
- package/cjs/Placeholder/PlaceholderGraph.js +24 -33
- package/cjs/Placeholder/PlaceholderGrid.js +49 -60
- package/cjs/Placeholder/PlaceholderParagraph.js +31 -48
- package/cjs/Placeholder/index.js +0 -0
- package/cjs/Popover/Popover.js +30 -44
- package/cjs/Popover/index.js +0 -0
- package/cjs/Progress/Progress.js +1 -1
- package/cjs/Progress/ProgressCircle.js +55 -76
- package/cjs/Progress/ProgressLine.js +39 -50
- package/cjs/Progress/index.js +0 -0
- package/cjs/Radio/Radio.js +56 -85
- package/cjs/Radio/index.js +0 -0
- package/cjs/RadioGroup/RadioGroup.js +40 -60
- package/cjs/RadioGroup/index.js +0 -0
- package/cjs/RadioTile/RadioTile.js +43 -62
- package/cjs/RadioTileGroup/RadioTileGroup.js +32 -47
- package/cjs/RangeSlider/RangeSlider.js +116 -141
- package/cjs/RangeSlider/index.js +0 -0
- package/cjs/Rate/Character.js +33 -46
- package/cjs/Rate/Rate.d.ts +4 -4
- package/cjs/Rate/Rate.js +72 -105
- package/cjs/Rate/index.js +0 -0
- package/cjs/Rate/utils.js +8 -8
- package/cjs/Row/Row.js +32 -40
- package/cjs/Row/index.js +0 -0
- package/cjs/SafeAnchor/SafeAnchor.js +14 -20
- package/cjs/SafeAnchor/index.js +0 -0
- package/cjs/Schema/Schema.js +1 -1
- package/cjs/Schema/index.js +0 -0
- package/cjs/SelectPicker/SelectPicker.d.ts +0 -1
- package/cjs/SelectPicker/SelectPicker.js +131 -169
- package/cjs/SelectPicker/index.js +0 -0
- package/cjs/Sidebar/Sidebar.js +28 -35
- package/cjs/Sidebar/index.js +0 -0
- package/cjs/Sidenav/ExpandedSidenavDropdown.d.ts +3 -3
- package/cjs/Sidenav/ExpandedSidenavDropdown.js +70 -96
- package/cjs/Sidenav/ExpandedSidenavDropdownItem.js +51 -74
- package/cjs/Sidenav/ExpandedSidenavDropdownMenu.js +48 -65
- package/cjs/Sidenav/Node.js +26 -37
- package/cjs/Sidenav/Sidenav.js +43 -65
- package/cjs/Sidenav/SidenavBody.d.ts +1 -1
- package/cjs/Sidenav/SidenavBody.js +1 -1
- package/cjs/Sidenav/SidenavDropdown.d.ts +3 -3
- package/cjs/Sidenav/SidenavDropdown.js +81 -111
- package/cjs/Sidenav/SidenavDropdownCollapse.js +22 -30
- package/cjs/Sidenav/SidenavDropdownItem.d.ts +1 -1
- package/cjs/Sidenav/SidenavDropdownItem.js +57 -75
- package/cjs/Sidenav/SidenavDropdownMenu.d.ts +1 -1
- package/cjs/Sidenav/SidenavDropdownMenu.js +67 -78
- package/cjs/Sidenav/SidenavDropdownToggle.d.ts +2 -2
- package/cjs/Sidenav/SidenavDropdownToggle.js +17 -29
- package/cjs/Sidenav/SidenavHeader.d.ts +1 -1
- package/cjs/Sidenav/SidenavHeader.js +1 -1
- package/cjs/Sidenav/SidenavItem.js +64 -82
- package/cjs/Sidenav/SidenavToggle.js +20 -29
- package/cjs/Sidenav/index.js +0 -0
- package/cjs/Slider/Graduated.js +28 -37
- package/cjs/Slider/Handle.js +52 -68
- package/cjs/Slider/Input.js +10 -7
- package/cjs/Slider/Mark.js +16 -24
- package/cjs/Slider/ProgressBar.js +24 -34
- package/cjs/Slider/Slider.d.ts +0 -26
- package/cjs/Slider/Slider.js +77 -118
- package/cjs/Slider/index.js +0 -0
- package/cjs/Slider/useDrag.js +29 -29
- package/cjs/Slider/utils.js +3 -4
- package/cjs/Stack/HStack.js +8 -10
- package/cjs/Stack/Stack.js +37 -58
- package/cjs/Stack/StackItem.d.ts +0 -11
- package/cjs/Stack/StackItem.js +25 -36
- package/cjs/Stack/VStack.js +9 -12
- package/cjs/Stat/Stat.js +20 -25
- package/cjs/Stat/StatHelpText.d.ts +1 -1
- package/cjs/Stat/StatHelpText.js +1 -1
- package/cjs/Stat/StatLabel.js +16 -22
- package/cjs/Stat/StatTrend.js +20 -28
- package/cjs/Stat/StatValue.js +15 -21
- package/cjs/Stat/StatValueUnit.d.ts +1 -1
- package/cjs/Stat/StatValueUnit.js +1 -1
- package/cjs/StatGroup/StatGroup.js +24 -28
- package/cjs/Steps/StepItem.js +31 -43
- package/cjs/Steps/Steps.js +33 -45
- package/cjs/Steps/index.js +0 -0
- package/cjs/Table/Table.js +13 -13
- package/cjs/Tabs/Tab.js +1 -9
- package/cjs/Tabs/TabPanel.js +13 -14
- package/cjs/Tabs/Tabs.js +85 -101
- package/cjs/Tag/Tag.d.ts +2 -2
- package/cjs/Tag/Tag.js +39 -45
- package/cjs/Tag/index.js +0 -0
- package/cjs/TagGroup/TagGroup.d.ts +1 -1
- package/cjs/TagGroup/TagGroup.js +1 -1
- package/cjs/TagGroup/index.js +0 -0
- package/cjs/TagInput/index.js +24 -31
- package/cjs/TagPicker/index.js +19 -22
- package/cjs/Text/Text.js +32 -43
- package/cjs/TimePicker/TimePicker.js +11 -14
- package/cjs/TimeRangePicker/TimeRangePicker.js +9 -7
- package/cjs/Timeline/Timeline.js +33 -48
- package/cjs/Timeline/TimelineItem.js +18 -28
- package/cjs/Timeline/index.js +0 -0
- package/cjs/Toggle/Toggle.js +45 -70
- package/cjs/Toggle/index.js +0 -0
- package/cjs/Tooltip/Tooltip.d.ts +2 -2
- package/cjs/Tooltip/Tooltip.js +24 -33
- package/cjs/Tooltip/index.js +0 -0
- package/cjs/Tree/IndentLine.js +4 -3
- package/cjs/Tree/Tree.js +63 -66
- package/cjs/Tree/TreeNode.js +62 -61
- package/cjs/Tree/TreeNodeToggle.js +19 -16
- package/cjs/Tree/TreeView.js +175 -186
- package/cjs/Tree/hooks/useExpandTree.js +33 -38
- package/cjs/Tree/hooks/useFlattenTree.js +31 -34
- package/cjs/Tree/hooks/useFocusTree.d.ts +1 -1
- package/cjs/Tree/hooks/useFocusTree.js +77 -81
- package/cjs/Tree/hooks/useForceUpdate.js +2 -3
- package/cjs/Tree/hooks/useTreeDrag.js +86 -86
- package/cjs/Tree/hooks/useTreeNodeProps.js +52 -48
- package/cjs/Tree/hooks/useTreeNodeRefs.d.ts +1 -1
- package/cjs/Tree/hooks/useTreeNodeRefs.js +3 -3
- package/cjs/Tree/hooks/useTreeSearch.js +33 -39
- package/cjs/Tree/hooks/useTreeWithChildren.js +21 -35
- package/cjs/Tree/hooks/useVirtualizedTreeData.js +25 -22
- package/cjs/Tree/index.js +0 -0
- package/cjs/Tree/types.js +1 -1
- package/cjs/Tree/utils/flattenTree.js +16 -24
- package/cjs/Tree/utils/focusableTree.js +66 -59
- package/cjs/Tree/utils/formatNodeRefKey.js +1 -1
- package/cjs/Tree/utils/getExpandItemValues.js +7 -5
- package/cjs/Tree/utils/getNodeParentKeys.js +4 -4
- package/cjs/Tree/utils/getTreeActiveNode.js +2 -2
- package/cjs/Tree/utils/hasVisibleChildren.js +1 -3
- package/cjs/Tree/utils/indentTreeNode.js +7 -5
- package/cjs/Tree/utils/treeKeyboardInteractions.js +13 -9
- package/cjs/TreePicker/TreePicker.js +172 -182
- package/cjs/TreePicker/hooks/useFocusState.js +17 -19
- package/cjs/TreePicker/index.js +0 -0
- package/cjs/Uploader/UploadFileItem.js +70 -92
- package/cjs/Uploader/UploadTrigger.js +52 -90
- package/cjs/Uploader/Uploader.js +156 -216
- package/cjs/Uploader/index.js +0 -0
- package/cjs/Uploader/utils/ajaxUpload.js +27 -28
- package/cjs/Uploader/utils/previewFile.js +3 -3
- package/cjs/VisuallyHidden/VisuallyHidden.d.ts +1 -1
- package/cjs/VisuallyHidden/VisuallyHidden.js +1 -1
- package/cjs/Whisper/Whisper.js +14 -32
- package/cjs/Whisper/index.js +0 -0
- package/cjs/index.js +1 -1
- package/cjs/internals/CloseButton/CloseButton.js +19 -18
- package/cjs/internals/Disclosure/Disclosure.js +42 -42
- package/cjs/internals/Disclosure/DisclosureButton.js +16 -13
- package/cjs/internals/Disclosure/DisclosureContent.js +9 -5
- package/cjs/internals/Disclosure/DisclosureContext.js +2 -2
- package/cjs/internals/Disclosure/useDisclosureContext.js +2 -2
- package/cjs/internals/Menu/Menu.d.ts +1 -5
- package/cjs/internals/Menu/Menu.js +80 -80
- package/cjs/internals/Menu/MenuContext.js +3 -3
- package/cjs/internals/Menu/MenuItem.d.ts +0 -7
- package/cjs/internals/Menu/MenuItem.js +22 -30
- package/cjs/internals/Menu/Menubar.js +25 -25
- package/cjs/internals/Menu/useMenu.js +75 -69
- package/cjs/internals/Overlay/Modal.d.ts +6 -20
- package/cjs/internals/Overlay/Modal.js +78 -117
- package/cjs/internals/Overlay/ModalManager.js +22 -28
- package/cjs/internals/Overlay/Overlay.d.ts +2 -23
- package/cjs/internals/Overlay/Overlay.js +57 -76
- package/cjs/internals/Overlay/OverlayContext.js +1 -1
- package/cjs/internals/Overlay/OverlayTrigger.d.ts +2 -2
- package/cjs/internals/Overlay/OverlayTrigger.js +139 -152
- package/cjs/internals/Overlay/Position.d.ts +2 -2
- package/cjs/internals/Overlay/Position.js +63 -86
- package/cjs/internals/Overlay/positionUtils.d.ts +2 -2
- package/cjs/internals/Overlay/positionUtils.js +114 -107
- package/cjs/internals/Picker/ListCheckItem.js +44 -49
- package/cjs/internals/Picker/ListItem.js +32 -35
- package/cjs/internals/Picker/ListItemGroup.js +16 -19
- package/cjs/internals/Picker/Listbox.d.ts +1 -1
- package/cjs/internals/Picker/Listbox.js +99 -119
- package/cjs/internals/Picker/PickerIndicator.js +21 -17
- package/cjs/internals/Picker/PickerLabel.js +7 -8
- package/cjs/internals/Picker/PickerPopup.js +26 -30
- package/cjs/internals/Picker/PickerToggle.d.ts +2 -2
- package/cjs/internals/Picker/PickerToggle.js +50 -57
- package/cjs/internals/Picker/PickerToggleTrigger.d.ts +2 -2
- package/cjs/internals/Picker/PickerToggleTrigger.js +21 -22
- package/cjs/internals/Picker/SelectedElement.js +19 -18
- package/cjs/internals/Picker/ToggleButton.js +1 -1
- package/cjs/internals/Picker/hooks/useCombobox.js +10 -9
- package/cjs/internals/Picker/hooks/useFocusItemValue.js +92 -98
- package/cjs/internals/Picker/hooks/usePickerClassName.d.ts +2 -2
- package/cjs/internals/Picker/hooks/usePickerClassName.js +30 -21
- package/cjs/internals/Picker/hooks/usePickerRef.js +23 -19
- package/cjs/internals/Picker/hooks/useSearch.js +19 -23
- package/cjs/internals/Picker/hooks/useToggleKeyDownEvent.js +21 -20
- package/cjs/internals/Picker/index.d.ts +0 -1
- package/cjs/internals/Picker/index.js +1 -8
- package/cjs/internals/Picker/utils.js +19 -18
- package/cjs/internals/Plaintext/Plaintext.js +18 -20
- package/cjs/internals/Ripple/Ripple.js +42 -51
- package/cjs/internals/ScrollView/ScrollView.js +31 -30
- package/cjs/internals/ScrollView/hooks/useScrollState.d.ts +1 -1
- package/cjs/internals/ScrollView/hooks/useScrollState.js +16 -18
- package/cjs/internals/SearchBox/SearchBox.js +19 -22
- package/cjs/internals/Tree/TreeProvider.d.ts +4 -1
- package/cjs/internals/Tree/TreeProvider.js +49 -37
- package/cjs/internals/Tree/TreeView.js +28 -25
- package/cjs/internals/Tree/utils/filterNodesOfTree.js +6 -6
- package/cjs/internals/Tree/utils/findNodeOfTree.js +5 -5
- package/cjs/internals/Tree/utils/getParentMap.js +10 -15
- package/cjs/internals/Tree/utils/getPathTowardsItem.js +2 -2
- package/cjs/internals/Windowing/AutoSizer.js +35 -35
- package/cjs/internals/Windowing/List.d.ts +1 -1
- package/cjs/internals/Windowing/List.js +43 -46
- package/cjs/internals/Windowing/index.js +1 -1
- package/cjs/internals/constants/index.js +12 -12
- package/cjs/internals/constants/statusIcons.js +2 -2
- package/cjs/internals/hooks/useClassNames.d.ts +1 -2
- package/cjs/internals/hooks/useClassNames.js +16 -26
- package/cjs/internals/hooks/useClickOutside.js +11 -10
- package/cjs/internals/hooks/useControlled.js +4 -6
- package/cjs/internals/hooks/useElementResize.js +4 -4
- package/cjs/internals/hooks/useEnsuredRef.js +1 -1
- package/cjs/internals/hooks/useEventCallback.js +3 -3
- package/cjs/internals/hooks/useEventListener.js +4 -4
- package/cjs/internals/hooks/useFocus.js +7 -7
- package/cjs/internals/hooks/useFocusVirtualListItem.js +5 -5
- package/cjs/internals/hooks/useInternalId.js +2 -2
- package/cjs/internals/hooks/useIsMounted.js +4 -6
- package/cjs/internals/hooks/useIsomorphicLayoutEffect.js +1 -1
- package/cjs/internals/hooks/useMap.js +8 -12
- package/cjs/internals/hooks/useMount.js +4 -3
- package/cjs/internals/hooks/usePortal.js +21 -25
- package/cjs/internals/hooks/useRootClose.js +16 -15
- package/cjs/internals/hooks/useTimeout.js +8 -8
- package/cjs/internals/hooks/useToggleCaret.d.ts +2 -2
- package/cjs/internals/hooks/useToggleCaret.js +5 -4
- package/cjs/internals/hooks/useUniqueId.js +3 -15
- package/cjs/internals/hooks/useUpdateEffect.js +4 -4
- package/cjs/internals/hooks/useUpdatedRef.js +1 -1
- package/cjs/internals/hooks/useWillUnmount.js +2 -8
- package/cjs/internals/symbols.d.ts +1 -0
- package/cjs/internals/symbols.js +4 -3
- package/cjs/internals/types/colours.d.ts +10 -0
- package/cjs/internals/types/colours.js +15 -0
- package/cjs/internals/types/index.d.ts +29 -26
- package/cjs/internals/types/index.js +13 -1
- package/cjs/internals/types/placement.d.ts +5 -0
- package/cjs/internals/types/placement.js +4 -0
- package/cjs/internals/utils/BrowserDetection.d.ts +0 -10
- package/cjs/internals/utils/BrowserDetection.js +5 -61
- package/cjs/internals/utils/ReactChildren.js +23 -27
- package/cjs/internals/utils/colours.d.ts +21 -0
- package/cjs/internals/utils/colours.js +86 -0
- package/cjs/internals/utils/composeFunctions.js +1 -5
- package/cjs/internals/utils/createChainedFunction.js +1 -3
- package/cjs/internals/utils/createComponent.d.ts +1 -1
- package/cjs/internals/utils/createComponent.js +22 -28
- package/cjs/internals/utils/css.d.ts +16 -0
- package/cjs/internals/utils/css.js +61 -0
- package/cjs/internals/utils/date/copyTime.js +14 -13
- package/cjs/internals/utils/date/disableTime.js +13 -13
- package/cjs/internals/utils/date/extractTimeFormat.js +1 -1
- package/cjs/internals/utils/date/formatCheck.js +10 -15
- package/cjs/internals/utils/date/getWeekKeys.js +1 -1
- package/cjs/internals/utils/date/getWeekStartDates.js +14 -14
- package/cjs/internals/utils/date/index.d.ts +46 -46
- package/cjs/internals/utils/date/index.js +92 -93
- package/cjs/internals/utils/date/omitHideDisabledProps.js +2 -5
- package/cjs/internals/utils/date/reverseDateRangeOmitTime.js +1 -2
- package/cjs/internals/utils/date/types.js +2 -2
- package/cjs/internals/utils/date/useDateMode.js +8 -7
- package/cjs/internals/utils/deprecateComponent.js +3 -3
- package/cjs/internals/utils/dom.js +2 -6
- package/cjs/internals/utils/getDOMNode.js +4 -4
- package/cjs/internals/utils/getDataGroupBy.js +11 -13
- package/cjs/internals/utils/getSafeRegExpString.js +2 -1
- package/cjs/internals/utils/getStringLength.js +2 -2
- package/cjs/internals/utils/htmlPropsUtils.js +15 -15
- package/cjs/internals/utils/index.d.ts +2 -0
- package/cjs/internals/utils/index.js +14 -0
- package/cjs/internals/utils/mergeRefs.js +5 -7
- package/cjs/internals/utils/placementPolyfill.js +1 -3
- package/cjs/internals/utils/prefix.js +8 -12
- package/cjs/internals/utils/safeSetSelection.js +2 -4
- package/cjs/internals/utils/shallowEqual.js +5 -5
- package/cjs/internals/utils/stringifyReactNode.js +6 -6
- package/cjs/internals/utils/tplTransform.js +4 -10
- package/cjs/internals/utils/warnOnce.js +3 -3
- package/cjs/locales/ar_EG.js +12 -12
- package/cjs/locales/ca_ES.d.ts +4 -4
- package/cjs/locales/ca_ES.js +12 -12
- package/cjs/locales/cs_CZ.js +12 -12
- package/cjs/locales/da_DK.js +12 -12
- package/cjs/locales/de_DE.js +12 -12
- package/cjs/locales/en_GB.js +12 -12
- package/cjs/locales/en_US.js +12 -12
- package/cjs/locales/es_AR.js +12 -12
- package/cjs/locales/es_ES.js +12 -12
- package/cjs/locales/fa_IR.js +12 -12
- package/cjs/locales/fi_FI.js +12 -12
- package/cjs/locales/fr_FR.js +12 -12
- package/cjs/locales/hu_HU.js +12 -12
- package/cjs/locales/it_IT.js +12 -12
- package/cjs/locales/ja_JP.js +12 -12
- package/cjs/locales/kk_KZ.js +12 -12
- package/cjs/locales/ko_KR.js +12 -12
- package/cjs/locales/ne_NP.js +12 -12
- package/cjs/locales/nl_NL.js +12 -12
- package/cjs/locales/pt_BR.js +12 -12
- package/cjs/locales/ru_RU.js +12 -12
- package/cjs/locales/sv_SE.js +12 -12
- package/cjs/locales/tr_TR.js +12 -12
- package/cjs/locales/zh_CN.js +12 -12
- package/cjs/locales/zh_TW.js +12 -12
- package/cjs/toaster/ToastContainer.d.ts +2 -2
- package/cjs/toaster/ToastContainer.js +106 -130
- package/cjs/toaster/ToastContext.js +1 -1
- package/cjs/toaster/hooks/useDelayedClosure.js +20 -17
- package/cjs/toaster/render.d.ts +0 -1
- package/cjs/toaster/render.js +12 -30
- package/cjs/toaster/toaster.js +29 -56
- package/cjs/useBreakpointValue/useBreakpointValue.js +7 -6
- package/cjs/useMediaQuery/useMediaQuery.d.ts +1 -7
- package/cjs/useMediaQuery/useMediaQuery.js +18 -81
- package/cjs/useToaster/useToaster.js +42 -43
- package/dist/rsuite-no-reset-rtl.css +656 -3131
- 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 +656 -3131
- package/dist/rsuite-no-reset.min.css +1 -1
- package/dist/rsuite-no-reset.min.css.map +1 -1
- package/dist/rsuite-rtl.css +669 -3154
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +669 -3154
- package/dist/rsuite.js +3345 -3618
- package/dist/rsuite.js.map +1 -1
- package/dist/rsuite.min.css +1 -1
- package/dist/rsuite.min.css.map +1 -1
- package/dist/rsuite.min.js +1 -1
- package/dist/rsuite.min.js.LICENSE.txt +0 -2
- package/dist/rsuite.min.js.map +1 -1
- package/esm/Accordion/Accordion.js +4 -3
- package/esm/Affix/Affix.d.ts +1 -1
- package/esm/Affix/Affix.js +54 -65
- package/esm/Affix/index.js +0 -0
- package/esm/Animation/Bounce.js +11 -10
- package/esm/Animation/Collapse.js +40 -48
- package/esm/Animation/Fade.js +13 -12
- package/esm/Animation/Slide.js +14 -14
- package/esm/Animation/Transition.d.ts +1 -40
- package/esm/Animation/Transition.js +97 -115
- package/esm/Animation/index.js +6 -6
- package/esm/Animation/utils.d.ts +0 -9
- package/esm/Animation/utils.js +2 -11
- package/esm/AutoComplete/AutoComplete.d.ts +2 -2
- package/esm/AutoComplete/AutoComplete.js +85 -126
- package/esm/AutoComplete/Combobox.js +11 -10
- package/esm/AutoComplete/index.js +0 -0
- package/esm/AutoComplete/utils.js +5 -5
- package/esm/Avatar/Avatar.js +50 -72
- package/esm/Avatar/AvatarIcon.js +12 -14
- package/esm/Avatar/index.js +0 -0
- package/esm/Avatar/useImage.js +19 -19
- package/esm/AvatarGroup/AvatarGroup.js +30 -42
- package/esm/AvatarGroup/index.js +0 -0
- package/esm/Badge/Badge.d.ts +40 -5
- package/esm/Badge/Badge.js +46 -49
- package/esm/Badge/index.js +0 -0
- package/esm/Breadcrumb/Breadcrumb.js +33 -48
- package/esm/Breadcrumb/BreadcrumbItem.d.ts +1 -1
- package/esm/Breadcrumb/BreadcrumbItem.js +21 -34
- package/esm/Breadcrumb/index.js +0 -0
- package/esm/Button/Button.d.ts +5 -1
- package/esm/Button/Button.js +60 -65
- package/esm/Button/index.js +0 -0
- package/esm/ButtonGroup/ButtonGroup.js +27 -43
- package/esm/ButtonGroup/ButtonGroupContext.js +1 -1
- package/esm/ButtonGroup/index.js +0 -0
- package/esm/ButtonToolbar/ButtonToolbar.js +17 -23
- package/esm/ButtonToolbar/index.js +0 -0
- package/esm/Calendar/Calendar.js +46 -66
- package/esm/Calendar/CalendarBody.js +26 -26
- package/esm/Calendar/CalendarContainer.js +87 -94
- package/esm/Calendar/CalendarHeader.js +49 -49
- package/esm/Calendar/CalendarProvider.js +2 -2
- package/esm/Calendar/Grid/Grid.js +22 -25
- package/esm/Calendar/Grid/GridCell.js +39 -37
- package/esm/Calendar/Grid/GridHeaderRow.js +27 -29
- package/esm/Calendar/Grid/GridRow.js +47 -52
- package/esm/Calendar/MonthDropdown/MonthDropdown.js +61 -62
- package/esm/Calendar/MonthDropdown/MonthDropdownItem.js +35 -38
- package/esm/Calendar/TimeDropdown/TimeColumn.js +7 -7
- package/esm/Calendar/TimeDropdown/TimeDropdown.js +63 -63
- package/esm/Calendar/TimeDropdown/utils/formatWithLeadingZero.js +1 -1
- package/esm/Calendar/TimeDropdown/utils/getClockTime.js +7 -5
- package/esm/Calendar/TimeDropdown/utils/getTimeLimits.js +3 -3
- package/esm/Calendar/TimeDropdown/utils/scrollToTime.js +6 -7
- package/esm/Calendar/hooks/useCalendar.js +1 -1
- package/esm/Calendar/hooks/useCalendarDate.d.ts +1 -1
- package/esm/Calendar/hooks/useCalendarDate.js +9 -11
- package/esm/Calendar/hooks/useCalendarState.js +16 -18
- package/esm/Calendar/utils/isEveryDateInMonth.js +2 -2
- package/esm/Card/Card.js +30 -39
- package/esm/Card/CardBody.d.ts +1 -1
- package/esm/Card/CardBody.js +1 -1
- package/esm/Card/CardFooter.d.ts +1 -1
- package/esm/Card/CardFooter.js +1 -1
- package/esm/Card/CardHeader.d.ts +1 -1
- package/esm/Card/CardHeader.js +1 -1
- package/esm/CardGroup/CardGroup.js +24 -28
- package/esm/Carousel/Carousel.js +72 -94
- package/esm/Carousel/index.js +0 -0
- package/esm/CascadeTree/CascadeTree.d.ts +0 -1
- package/esm/CascadeTree/CascadeTree.js +92 -104
- package/esm/CascadeTree/SearchView.js +47 -52
- package/esm/CascadeTree/TreeView.js +83 -91
- package/esm/CascadeTree/hooks/usePaths.js +18 -19
- package/esm/CascadeTree/hooks/useSearch.js +22 -22
- package/esm/CascadeTree/hooks/useSelect.js +26 -24
- package/esm/CascadeTree/utils.js +10 -8
- package/esm/Cascader/Cascader.d.ts +0 -1
- package/esm/Cascader/Cascader.js +202 -239
- package/esm/Cascader/index.js +0 -0
- package/esm/Cascader/useActive.js +15 -15
- package/esm/CheckPicker/CheckPicker.d.ts +0 -1
- package/esm/CheckPicker/CheckPicker.js +146 -200
- package/esm/CheckPicker/index.js +0 -0
- package/esm/CheckTree/CheckTree.js +68 -73
- package/esm/CheckTree/CheckTreeNode.js +52 -50
- package/esm/CheckTree/CheckTreeView.js +174 -181
- package/esm/CheckTree/hooks/useTreeCheckState.js +26 -25
- package/esm/CheckTree/hooks/useTreeNodeProps.js +39 -36
- package/esm/CheckTree/hooks/useTreeValue.js +6 -7
- package/esm/CheckTree/utils.js +62 -65
- package/esm/CheckTreePicker/CheckTreePicker.js +170 -185
- package/esm/CheckTreePicker/hooks/useFocusState.js +13 -15
- package/esm/CheckTreePicker/index.js +0 -0
- package/esm/Checkbox/Checkbox.js +64 -101
- package/esm/Checkbox/index.js +0 -0
- package/esm/CheckboxGroup/CheckboxGroup.js +39 -61
- package/esm/CheckboxGroup/CheckboxGroupContext.js +1 -1
- package/esm/CheckboxGroup/index.js +0 -0
- package/esm/Col/Col.js +32 -66
- package/esm/Col/index.js +0 -0
- package/esm/Container/Container.d.ts +1 -1
- package/esm/Container/Container.js +21 -31
- package/esm/Container/index.js +0 -0
- package/esm/Content/Content.d.ts +1 -1
- package/esm/Content/Content.js +1 -1
- package/esm/Content/index.js +0 -0
- package/esm/CustomProvider/CustomProvider.d.ts +19 -17
- package/esm/CustomProvider/CustomProvider.js +47 -55
- package/esm/CustomProvider/FormattedDate.js +7 -4
- package/esm/CustomProvider/FormattedNumber.js +8 -7
- package/esm/CustomProvider/useCustom.js +44 -47
- package/esm/DOMHelper/index.js +4 -4
- package/esm/DOMHelper/isElement.js +1 -1
- package/esm/DateInput/DateField.js +101 -102
- package/esm/DateInput/DateInput.js +119 -134
- package/esm/DateInput/hooks/useDateInputState.js +55 -49
- package/esm/DateInput/hooks/useFieldCursor.js +16 -16
- package/esm/DateInput/hooks/useIsFocused.js +9 -9
- package/esm/DateInput/hooks/useKeyboardInputEvent.js +10 -7
- package/esm/DateInput/hooks/useSelectedState.js +4 -6
- package/esm/DateInput/utils.d.ts +1 -1
- package/esm/DateInput/utils.js +76 -71
- package/esm/DatePicker/DatePicker.js +188 -223
- package/esm/DatePicker/PredefinedRanges.js +23 -28
- package/esm/DatePicker/Toolbar.d.ts +1 -1
- package/esm/DatePicker/Toolbar.js +28 -26
- package/esm/DatePicker/hooks/useCustomizedInput.d.ts +1 -1
- package/esm/DatePicker/hooks/useCustomizedInput.js +21 -26
- package/esm/DatePicker/hooks/useFocus.js +45 -39
- package/esm/DatePicker/hooks/useMonthView.js +8 -8
- package/esm/DatePicker/utils.d.ts +0 -7
- package/esm/DatePicker/utils.js +26 -34
- package/esm/DateRangeInput/DateRangeInput.js +130 -151
- package/esm/DateRangeInput/utils.js +50 -49
- package/esm/DateRangePicker/Calendar.js +23 -28
- package/esm/DateRangePicker/DateRangePicker.js +259 -322
- package/esm/DateRangePicker/DateRangePickerProvider.js +3 -3
- package/esm/DateRangePicker/Header.js +20 -23
- package/esm/DateRangePicker/disabledDateUtils.js +16 -34
- package/esm/DateRangePicker/hooks/useCalendarHandlers.js +14 -14
- package/esm/DateRangePicker/hooks/useDateDisabled.js +10 -6
- package/esm/DateRangePicker/hooks/useDateRangePicker.js +1 -1
- package/esm/DateRangePicker/index.js +1 -1
- package/esm/DateRangePicker/utils.js +20 -19
- package/esm/Divider/Divider.js +18 -26
- package/esm/Divider/index.js +0 -0
- package/esm/Drawer/Drawer.d.ts +2 -2
- package/esm/Drawer/Drawer.js +19 -29
- package/esm/Drawer/DrawerActions.d.ts +1 -1
- package/esm/Drawer/DrawerActions.js +1 -1
- package/esm/Drawer/DrawerBody.js +1 -1
- package/esm/Drawer/DrawerFooter.js +1 -1
- package/esm/Drawer/DrawerHeader.js +1 -1
- package/esm/Drawer/DrawerTitle.js +1 -1
- package/esm/Drawer/index.js +0 -0
- package/esm/Dropdown/Dropdown.d.ts +3 -3
- package/esm/Dropdown/Dropdown.js +73 -105
- package/esm/Dropdown/DropdownContext.d.ts +1 -1
- package/esm/Dropdown/DropdownContext.js +1 -1
- package/esm/Dropdown/DropdownItem.js +53 -72
- package/esm/Dropdown/DropdownMenu.d.ts +2 -2
- package/esm/Dropdown/DropdownMenu.js +76 -94
- package/esm/Dropdown/DropdownSeparator.js +11 -16
- package/esm/Dropdown/DropdownState.js +22 -22
- package/esm/Dropdown/DropdownToggle.d.ts +2 -2
- package/esm/Dropdown/DropdownToggle.js +20 -34
- package/esm/Dropdown/index.js +0 -0
- package/esm/Dropdown/useRenderDropdownItem.js +1 -1
- package/esm/FlexboxGrid/FlexboxGrid.js +17 -27
- package/esm/FlexboxGrid/FlexboxGridItem.js +17 -26
- package/esm/FlexboxGrid/index.js +0 -0
- package/esm/Footer/Footer.d.ts +1 -1
- package/esm/Footer/Footer.js +1 -1
- package/esm/Footer/index.js +0 -0
- package/esm/Form/Form.js +105 -130
- package/esm/Form/FormContext.js +4 -4
- package/esm/Form/hooks/useFormClassNames.js +15 -14
- package/esm/Form/hooks/useFormRef.js +9 -7
- package/esm/Form/hooks/useFormValidate.js +77 -77
- package/esm/Form/hooks/useFormValue.js +22 -19
- package/esm/Form/hooks/useSchemaModel.js +31 -33
- package/esm/FormControl/FormControl.d.ts +3 -3
- package/esm/FormControl/FormControl.js +81 -95
- package/esm/FormControl/hooks/useField.js +23 -18
- package/esm/FormControl/hooks/useRegisterModel.js +7 -6
- package/esm/FormControl/index.js +0 -0
- package/esm/FormControlLabel/FormControlLabel.js +21 -28
- package/esm/FormControlLabel/index.js +0 -0
- package/esm/FormErrorMessage/FormErrorMessage.d.ts +2 -2
- package/esm/FormErrorMessage/FormErrorMessage.js +24 -34
- package/esm/FormErrorMessage/index.js +0 -0
- package/esm/FormGroup/FormGroup.js +31 -39
- package/esm/FormHelpText/FormHelpText.js +22 -29
- package/esm/FormHelpText/index.js +0 -0
- package/esm/Grid/Grid.js +18 -25
- package/esm/Grid/index.js +0 -0
- package/esm/Header/Header.d.ts +1 -1
- package/esm/Header/Header.js +1 -1
- package/esm/Header/index.js +0 -0
- package/esm/Heading/Heading.js +17 -24
- package/esm/HeadingGroup/HeadingGroup.d.ts +1 -1
- package/esm/HeadingGroup/HeadingGroup.js +1 -1
- package/esm/Highlight/Highlight.js +21 -28
- package/esm/Highlight/utils/highlightText.js +10 -10
- package/esm/IconButton/IconButton.js +19 -29
- package/esm/IconButton/index.js +0 -0
- package/esm/Image/Image.js +59 -66
- package/esm/Image/ImageWrapper.d.ts +1 -1
- package/esm/Image/ImageWrapper.js +1 -1
- package/esm/Image/hooks/useImage.js +24 -28
- package/esm/InlineEdit/EditableControls.js +6 -6
- package/esm/InlineEdit/InlineEdit.d.ts +3 -3
- package/esm/InlineEdit/InlineEdit.js +52 -70
- package/esm/InlineEdit/renderChildren.js +19 -20
- package/esm/InlineEdit/useEditState.js +23 -29
- package/esm/InlineEdit/useFocusEvent.js +17 -15
- package/esm/Input/Input.js +40 -59
- package/esm/Input/index.js +0 -0
- package/esm/InputGroup/InputGroup.js +33 -47
- package/esm/InputGroup/InputGroupAddon.js +14 -21
- package/esm/InputGroup/InputGroupButton.js +14 -13
- package/esm/InputGroup/index.js +0 -0
- package/esm/InputNumber/InputNumber.js +72 -106
- package/esm/InputNumber/index.js +0 -0
- package/esm/InputPicker/InputAutosize.js +48 -65
- package/esm/InputPicker/InputPicker.js +241 -290
- package/esm/InputPicker/InputPickerContext.js +2 -2
- package/esm/InputPicker/InputSearch.js +21 -24
- package/esm/InputPicker/TagList.js +14 -13
- package/esm/InputPicker/TextBox.js +21 -21
- package/esm/InputPicker/hooks/useData.js +14 -18
- package/esm/InputPicker/hooks/useInput.js +15 -13
- package/esm/InputPicker/hooks/useMaxWidth.js +2 -5
- package/esm/InputPicker/utils.js +1 -1
- package/esm/List/List.js +53 -77
- package/esm/List/ListContext.js +4 -6
- package/esm/List/ListItem.js +38 -45
- package/esm/List/helper/AutoScroller.js +35 -35
- package/esm/List/helper/useManager.js +14 -18
- package/esm/List/helper/useSortHelper.js +87 -100
- package/esm/List/helper/utils.js +11 -16
- package/esm/List/index.js +0 -0
- package/esm/Loader/Loader.js +27 -42
- package/esm/Loader/index.js +0 -0
- package/esm/MaskedInput/MaskedInput.js +8 -5
- package/esm/MaskedInput/TextMask.js +28 -42
- package/esm/MaskedInput/adjustCaretPosition.js +64 -82
- package/esm/MaskedInput/conformToMask.js +52 -56
- package/esm/MaskedInput/createTextMaskInputElement.js +61 -57
- package/esm/MaskedInput/index.js +0 -0
- package/esm/MaskedInput/types.js +0 -0
- package/esm/MaskedInput/utilities.js +8 -8
- package/esm/Message/Message.js +49 -69
- package/esm/Message/index.js +0 -0
- package/esm/Modal/Modal.js +90 -117
- package/esm/Modal/ModalBody.js +27 -30
- package/esm/Modal/ModalContext.js +1 -1
- package/esm/Modal/ModalDialog.d.ts +0 -10
- package/esm/Modal/ModalDialog.js +24 -39
- package/esm/Modal/ModalFooter.d.ts +1 -1
- package/esm/Modal/ModalFooter.js +1 -1
- package/esm/Modal/ModalHeader.js +22 -31
- package/esm/Modal/ModalTitle.js +15 -23
- package/esm/Modal/utils.js +26 -29
- package/esm/MultiCascadeTree/MultiCascadeTree.js +76 -80
- package/esm/MultiCascadeTree/SearchView.js +51 -56
- package/esm/MultiCascadeTree/TreeView.js +84 -99
- package/esm/MultiCascadeTree/hooks/useCascadeValue.js +68 -100
- package/esm/MultiCascadeTree/hooks/useColumnData.js +10 -16
- package/esm/MultiCascadeTree/hooks/useFlattenData.js +10 -10
- package/esm/MultiCascadeTree/hooks/useSearch.js +17 -19
- package/esm/MultiCascadeTree/hooks/useSelect.js +37 -35
- package/esm/MultiCascadeTree/utils.js +40 -45
- package/esm/MultiCascader/MultiCascader.js +189 -224
- package/esm/MultiCascader/index.js +0 -0
- package/esm/Nav/AdaptiveNavItem.js +11 -12
- package/esm/Nav/Nav.js +51 -72
- package/esm/Nav/NavContext.js +1 -1
- package/esm/Nav/NavDropdown.d.ts +3 -3
- package/esm/Nav/NavDropdown.js +62 -92
- package/esm/Nav/NavDropdownItem.js +55 -71
- package/esm/Nav/NavDropdownMenu.d.ts +1 -1
- package/esm/Nav/NavDropdownMenu.js +64 -78
- package/esm/Nav/NavDropdownToggle.d.ts +2 -2
- package/esm/Nav/NavDropdownToggle.js +19 -30
- package/esm/Nav/NavItem.js +33 -48
- package/esm/Nav/NavMenu.js +17 -19
- package/esm/Nav/index.js +0 -0
- package/esm/Navbar/Navbar.js +17 -18
- package/esm/Navbar/NavbarBody.d.ts +1 -1
- package/esm/Navbar/NavbarBody.js +1 -1
- package/esm/Navbar/NavbarBrand.d.ts +1 -1
- package/esm/Navbar/NavbarBrand.js +1 -1
- package/esm/Navbar/NavbarDropdown.d.ts +3 -3
- package/esm/Navbar/NavbarDropdown.js +51 -78
- package/esm/Navbar/NavbarDropdownItem.js +49 -71
- package/esm/Navbar/NavbarDropdownMenu.d.ts +1 -1
- package/esm/Navbar/NavbarDropdownMenu.js +58 -74
- package/esm/Navbar/NavbarDropdownToggle.d.ts +2 -2
- package/esm/Navbar/NavbarDropdownToggle.js +18 -30
- package/esm/Navbar/NavbarHeader.d.ts +1 -1
- package/esm/Navbar/NavbarHeader.js +1 -1
- package/esm/Navbar/NavbarItem.js +30 -44
- package/esm/Notification/Notification.d.ts +4 -3
- package/esm/Notification/Notification.js +38 -54
- package/esm/Notification/index.js +0 -0
- package/esm/Pagination/LimitPicker.js +15 -17
- package/esm/Pagination/Pagination.js +58 -81
- package/esm/Pagination/PaginationButton.js +23 -24
- package/esm/Pagination/PaginationGroup.js +44 -60
- package/esm/Pagination/index.js +0 -0
- package/esm/Panel/AccordionButton.js +17 -20
- package/esm/Panel/Panel.js +54 -79
- package/esm/Panel/PanelBody.js +35 -34
- package/esm/Panel/PanelHeader.js +23 -24
- package/esm/Panel/hooks/useExpanded.js +14 -13
- package/esm/Panel/index.js +0 -0
- package/esm/PanelGroup/PanelGroup.js +31 -46
- package/esm/PanelGroup/index.js +0 -0
- package/esm/Placeholder/Placeholder.js +1 -1
- package/esm/Placeholder/PlaceholderGraph.js +24 -33
- package/esm/Placeholder/PlaceholderGrid.js +47 -60
- package/esm/Placeholder/PlaceholderParagraph.js +30 -47
- package/esm/Placeholder/index.js +0 -0
- package/esm/Popover/Popover.js +30 -44
- package/esm/Popover/index.js +0 -0
- package/esm/Progress/Progress.js +1 -1
- package/esm/Progress/ProgressCircle.js +54 -75
- package/esm/Progress/ProgressLine.js +39 -50
- package/esm/Progress/index.js +0 -0
- package/esm/Radio/Radio.js +55 -84
- package/esm/Radio/index.js +0 -0
- package/esm/RadioGroup/RadioGroup.js +39 -59
- package/esm/RadioGroup/index.js +0 -0
- package/esm/RadioTile/RadioTile.js +42 -61
- package/esm/RadioTileGroup/RadioTileGroup.js +31 -46
- package/esm/RangeSlider/RangeSlider.js +115 -140
- package/esm/RangeSlider/index.js +0 -0
- package/esm/Rate/Character.js +34 -47
- package/esm/Rate/Rate.d.ts +4 -4
- package/esm/Rate/Rate.js +75 -108
- package/esm/Rate/index.js +0 -0
- package/esm/Rate/utils.js +6 -8
- package/esm/Row/Row.js +32 -40
- package/esm/Row/index.js +0 -0
- package/esm/SafeAnchor/SafeAnchor.js +13 -19
- package/esm/SafeAnchor/index.js +0 -0
- package/esm/Schema/Schema.js +8 -8
- package/esm/Schema/index.js +0 -0
- package/esm/SelectPicker/SelectPicker.d.ts +0 -1
- package/esm/SelectPicker/SelectPicker.js +131 -169
- package/esm/SelectPicker/index.js +0 -0
- package/esm/Sidebar/Sidebar.js +27 -34
- package/esm/Sidebar/index.js +0 -0
- package/esm/Sidenav/ExpandedSidenavDropdown.d.ts +3 -3
- package/esm/Sidenav/ExpandedSidenavDropdown.js +69 -95
- package/esm/Sidenav/ExpandedSidenavDropdownItem.js +50 -73
- package/esm/Sidenav/ExpandedSidenavDropdownMenu.js +47 -64
- package/esm/Sidenav/Node.js +25 -36
- package/esm/Sidenav/Sidenav.js +42 -64
- package/esm/Sidenav/SidenavBody.d.ts +1 -1
- package/esm/Sidenav/SidenavBody.js +1 -1
- package/esm/Sidenav/SidenavDropdown.d.ts +3 -3
- package/esm/Sidenav/SidenavDropdown.js +80 -110
- package/esm/Sidenav/SidenavDropdownCollapse.js +22 -30
- package/esm/Sidenav/SidenavDropdownItem.d.ts +1 -1
- package/esm/Sidenav/SidenavDropdownItem.js +56 -74
- package/esm/Sidenav/SidenavDropdownMenu.d.ts +1 -1
- package/esm/Sidenav/SidenavDropdownMenu.js +63 -74
- package/esm/Sidenav/SidenavDropdownToggle.d.ts +2 -2
- package/esm/Sidenav/SidenavDropdownToggle.js +17 -29
- package/esm/Sidenav/SidenavHeader.d.ts +1 -1
- package/esm/Sidenav/SidenavHeader.js +1 -1
- package/esm/Sidenav/SidenavItem.js +63 -81
- package/esm/Sidenav/SidenavToggle.js +19 -28
- package/esm/Sidenav/index.js +0 -0
- package/esm/Slider/Graduated.js +28 -37
- package/esm/Slider/Handle.js +49 -65
- package/esm/Slider/Input.js +10 -7
- package/esm/Slider/Mark.js +16 -24
- package/esm/Slider/ProgressBar.js +24 -34
- package/esm/Slider/Slider.d.ts +0 -26
- package/esm/Slider/Slider.js +75 -116
- package/esm/Slider/index.js +0 -0
- package/esm/Slider/useDrag.js +29 -29
- package/esm/Slider/utils.js +2 -4
- package/esm/Stack/HStack.js +8 -10
- package/esm/Stack/Stack.js +38 -59
- package/esm/Stack/StackItem.d.ts +0 -11
- package/esm/Stack/StackItem.js +25 -36
- package/esm/Stack/VStack.js +9 -12
- package/esm/Stat/Stat.js +20 -25
- package/esm/Stat/StatHelpText.d.ts +1 -1
- package/esm/Stat/StatHelpText.js +1 -1
- package/esm/Stat/StatLabel.js +16 -22
- package/esm/Stat/StatTrend.js +20 -28
- package/esm/Stat/StatValue.js +15 -21
- package/esm/Stat/StatValueUnit.d.ts +1 -1
- package/esm/Stat/StatValueUnit.js +1 -1
- package/esm/StatGroup/StatGroup.js +24 -28
- package/esm/Steps/StepItem.js +31 -43
- package/esm/Steps/Steps.js +33 -45
- package/esm/Steps/index.js +0 -0
- package/esm/Table/Table.js +13 -13
- package/esm/Tabs/Tab.js +1 -9
- package/esm/Tabs/TabPanel.js +13 -14
- package/esm/Tabs/Tabs.js +85 -101
- package/esm/Tag/Tag.d.ts +2 -2
- package/esm/Tag/Tag.js +37 -45
- package/esm/Tag/index.js +0 -0
- package/esm/TagGroup/TagGroup.d.ts +1 -1
- package/esm/TagGroup/TagGroup.js +1 -1
- package/esm/TagGroup/index.js +0 -0
- package/esm/TagInput/index.js +23 -30
- package/esm/TagPicker/index.js +18 -21
- package/esm/Text/Text.js +32 -43
- package/esm/TimePicker/TimePicker.js +10 -13
- package/esm/TimeRangePicker/TimeRangePicker.js +9 -7
- package/esm/Timeline/Timeline.js +33 -48
- package/esm/Timeline/TimelineItem.js +18 -28
- package/esm/Timeline/index.js +0 -0
- package/esm/Toggle/Toggle.js +44 -69
- package/esm/Toggle/index.js +0 -0
- package/esm/Tooltip/Tooltip.d.ts +2 -2
- package/esm/Tooltip/Tooltip.js +24 -33
- package/esm/Tooltip/index.js +0 -0
- package/esm/Tree/IndentLine.js +4 -3
- package/esm/Tree/Tree.js +60 -63
- package/esm/Tree/TreeNode.js +61 -60
- package/esm/Tree/TreeNodeToggle.js +19 -16
- package/esm/Tree/TreeView.js +171 -182
- package/esm/Tree/hooks/useExpandTree.js +33 -38
- package/esm/Tree/hooks/useFlattenTree.js +31 -34
- package/esm/Tree/hooks/useFocusTree.d.ts +1 -1
- package/esm/Tree/hooks/useFocusTree.js +76 -80
- package/esm/Tree/hooks/useForceUpdate.js +2 -3
- package/esm/Tree/hooks/useTreeDrag.js +86 -86
- package/esm/Tree/hooks/useTreeNodeProps.js +51 -47
- package/esm/Tree/hooks/useTreeNodeRefs.d.ts +1 -1
- package/esm/Tree/hooks/useTreeNodeRefs.js +3 -3
- package/esm/Tree/hooks/useTreeSearch.js +33 -39
- package/esm/Tree/hooks/useTreeWithChildren.js +21 -35
- package/esm/Tree/hooks/useVirtualizedTreeData.js +25 -22
- package/esm/Tree/index.js +0 -0
- package/esm/Tree/types.js +1 -1
- package/esm/Tree/utils/flattenTree.js +16 -24
- package/esm/Tree/utils/focusableTree.js +59 -58
- package/esm/Tree/utils/formatNodeRefKey.js +1 -1
- package/esm/Tree/utils/getExpandItemValues.js +7 -5
- package/esm/Tree/utils/getNodeParentKeys.js +4 -4
- package/esm/Tree/utils/getTreeActiveNode.js +2 -2
- package/esm/Tree/utils/hasVisibleChildren.js +1 -3
- package/esm/Tree/utils/indentTreeNode.js +7 -5
- package/esm/Tree/utils/treeKeyboardInteractions.js +13 -9
- package/esm/TreePicker/TreePicker.js +168 -178
- package/esm/TreePicker/hooks/useFocusState.js +17 -19
- package/esm/TreePicker/index.js +0 -0
- package/esm/Uploader/UploadFileItem.js +68 -91
- package/esm/Uploader/UploadTrigger.js +53 -91
- package/esm/Uploader/Uploader.js +154 -214
- package/esm/Uploader/index.js +0 -0
- package/esm/Uploader/utils/ajaxUpload.js +27 -28
- package/esm/Uploader/utils/previewFile.js +3 -3
- package/esm/VisuallyHidden/VisuallyHidden.d.ts +1 -1
- package/esm/VisuallyHidden/VisuallyHidden.js +1 -1
- package/esm/Whisper/Whisper.js +14 -32
- package/esm/Whisper/index.js +0 -0
- package/esm/internals/CloseButton/CloseButton.js +19 -18
- package/esm/internals/Disclosure/Disclosure.js +41 -41
- package/esm/internals/Disclosure/DisclosureButton.js +15 -12
- package/esm/internals/Disclosure/DisclosureContent.js +9 -5
- package/esm/internals/Disclosure/DisclosureContext.js +2 -2
- package/esm/internals/Disclosure/useDisclosureContext.js +2 -2
- package/esm/internals/Menu/Menu.d.ts +1 -5
- package/esm/internals/Menu/Menu.js +79 -79
- package/esm/internals/Menu/MenuContext.js +3 -3
- package/esm/internals/Menu/MenuItem.d.ts +0 -7
- package/esm/internals/Menu/MenuItem.js +21 -29
- package/esm/internals/Menu/Menubar.js +24 -24
- package/esm/internals/Menu/useMenu.js +75 -68
- package/esm/internals/Overlay/Modal.d.ts +6 -20
- package/esm/internals/Overlay/Modal.js +76 -115
- package/esm/internals/Overlay/ModalManager.js +22 -28
- package/esm/internals/Overlay/Overlay.d.ts +2 -23
- package/esm/internals/Overlay/Overlay.js +55 -74
- package/esm/internals/Overlay/OverlayContext.js +1 -1
- package/esm/internals/Overlay/OverlayTrigger.d.ts +2 -2
- package/esm/internals/Overlay/OverlayTrigger.js +138 -151
- package/esm/internals/Overlay/Position.d.ts +2 -2
- package/esm/internals/Overlay/Position.js +62 -85
- package/esm/internals/Overlay/positionUtils.d.ts +2 -2
- package/esm/internals/Overlay/positionUtils.js +113 -107
- package/esm/internals/Picker/ListCheckItem.js +43 -48
- package/esm/internals/Picker/ListItem.js +31 -34
- package/esm/internals/Picker/ListItemGroup.js +16 -19
- package/esm/internals/Picker/Listbox.d.ts +1 -1
- package/esm/internals/Picker/Listbox.js +97 -117
- package/esm/internals/Picker/PickerIndicator.js +21 -17
- package/esm/internals/Picker/PickerLabel.js +7 -8
- package/esm/internals/Picker/PickerPopup.js +25 -29
- package/esm/internals/Picker/PickerToggle.d.ts +2 -2
- package/esm/internals/Picker/PickerToggle.js +48 -55
- package/esm/internals/Picker/PickerToggleTrigger.d.ts +2 -2
- package/esm/internals/Picker/PickerToggleTrigger.js +21 -22
- package/esm/internals/Picker/SelectedElement.js +19 -18
- package/esm/internals/Picker/ToggleButton.js +1 -1
- package/esm/internals/Picker/hooks/useCombobox.js +10 -9
- package/esm/internals/Picker/hooks/useFocusItemValue.js +92 -98
- package/esm/internals/Picker/hooks/usePickerClassName.d.ts +2 -2
- package/esm/internals/Picker/hooks/usePickerClassName.js +30 -21
- package/esm/internals/Picker/hooks/usePickerRef.js +23 -19
- package/esm/internals/Picker/hooks/useSearch.js +19 -23
- package/esm/internals/Picker/hooks/useToggleKeyDownEvent.js +21 -20
- package/esm/internals/Picker/index.d.ts +0 -1
- package/esm/internals/Picker/index.js +1 -2
- package/esm/internals/Picker/utils.js +19 -18
- package/esm/internals/Plaintext/Plaintext.js +18 -20
- package/esm/internals/Ripple/Ripple.js +41 -50
- package/esm/internals/ScrollView/ScrollView.js +30 -29
- package/esm/internals/ScrollView/hooks/useScrollState.d.ts +1 -1
- package/esm/internals/ScrollView/hooks/useScrollState.js +16 -18
- package/esm/internals/SearchBox/SearchBox.js +19 -22
- package/esm/internals/Tree/TreeProvider.d.ts +4 -1
- package/esm/internals/Tree/TreeProvider.js +43 -36
- package/esm/internals/Tree/TreeView.js +27 -24
- package/esm/internals/Tree/utils/filterNodesOfTree.js +6 -6
- package/esm/internals/Tree/utils/findNodeOfTree.js +5 -5
- package/esm/internals/Tree/utils/getParentMap.js +10 -15
- package/esm/internals/Tree/utils/getPathTowardsItem.js +2 -2
- package/esm/internals/Windowing/AutoSizer.js +34 -34
- package/esm/internals/Windowing/List.d.ts +1 -1
- package/esm/internals/Windowing/List.js +41 -45
- package/esm/internals/constants/index.js +12 -12
- package/esm/internals/constants/statusIcons.js +2 -2
- package/esm/internals/hooks/useClassNames.d.ts +1 -2
- package/esm/internals/hooks/useClassNames.js +16 -26
- package/esm/internals/hooks/useClickOutside.js +11 -10
- package/esm/internals/hooks/useControlled.js +4 -6
- package/esm/internals/hooks/useElementResize.js +4 -4
- package/esm/internals/hooks/useEnsuredRef.js +1 -1
- package/esm/internals/hooks/useEventCallback.js +3 -3
- package/esm/internals/hooks/useEventListener.js +4 -4
- package/esm/internals/hooks/useFocus.js +7 -7
- package/esm/internals/hooks/useFocusVirtualListItem.js +5 -5
- package/esm/internals/hooks/useInternalId.js +2 -2
- package/esm/internals/hooks/useIsMounted.js +4 -6
- package/esm/internals/hooks/useIsomorphicLayoutEffect.js +1 -1
- package/esm/internals/hooks/useMap.js +8 -12
- package/esm/internals/hooks/useMount.js +3 -3
- package/esm/internals/hooks/usePortal.js +20 -24
- package/esm/internals/hooks/useRootClose.js +16 -15
- package/esm/internals/hooks/useTimeout.js +8 -8
- package/esm/internals/hooks/useToggleCaret.d.ts +2 -2
- package/esm/internals/hooks/useToggleCaret.js +5 -4
- package/esm/internals/hooks/useUniqueId.js +3 -11
- package/esm/internals/hooks/useUpdateEffect.js +3 -4
- package/esm/internals/hooks/useUpdatedRef.js +1 -1
- package/esm/internals/hooks/useWillUnmount.js +2 -8
- package/esm/internals/symbols.d.ts +1 -0
- package/esm/internals/symbols.js +3 -2
- package/esm/internals/types/colours.d.ts +10 -0
- package/esm/internals/types/colours.js +11 -0
- package/esm/internals/types/index.d.ts +29 -26
- package/esm/internals/types/index.js +6 -0
- package/esm/internals/types/placement.d.ts +5 -0
- package/esm/internals/types/placement.js +2 -0
- package/esm/internals/utils/BrowserDetection.d.ts +0 -10
- package/esm/internals/utils/BrowserDetection.js +2 -60
- package/esm/internals/utils/ReactChildren.js +23 -27
- package/esm/internals/utils/colours.d.ts +21 -0
- package/esm/internals/utils/colours.js +77 -0
- package/esm/internals/utils/composeFunctions.js +1 -5
- package/esm/internals/utils/createChainedFunction.js +1 -3
- package/esm/internals/utils/createComponent.d.ts +1 -1
- package/esm/internals/utils/createComponent.js +22 -28
- package/esm/internals/utils/css.d.ts +16 -0
- package/esm/internals/utils/css.js +55 -0
- package/esm/internals/utils/date/copyTime.js +9 -7
- package/esm/internals/utils/date/disableTime.js +10 -10
- package/esm/internals/utils/date/extractTimeFormat.js +1 -1
- package/esm/internals/utils/date/formatCheck.js +5 -15
- package/esm/internals/utils/date/getWeekKeys.js +1 -1
- package/esm/internals/utils/date/getWeekStartDates.js +13 -12
- package/esm/internals/utils/date/index.d.ts +46 -46
- package/esm/internals/utils/date/index.js +46 -46
- package/esm/internals/utils/date/omitHideDisabledProps.js +1 -5
- package/esm/internals/utils/date/reverseDateRangeOmitTime.js +1 -2
- package/esm/internals/utils/date/types.js +2 -2
- package/esm/internals/utils/date/useDateMode.js +6 -6
- package/esm/internals/utils/deprecateComponent.js +3 -3
- package/esm/internals/utils/dom.js +2 -6
- package/esm/internals/utils/getDOMNode.js +3 -4
- package/esm/internals/utils/getDataGroupBy.js +11 -13
- package/esm/internals/utils/getSafeRegExpString.js +2 -1
- package/esm/internals/utils/getStringLength.js +2 -2
- package/esm/internals/utils/htmlPropsUtils.js +13 -14
- package/esm/internals/utils/index.d.ts +2 -0
- package/esm/internals/utils/index.js +2 -0
- package/esm/internals/utils/mergeRefs.js +5 -7
- package/esm/internals/utils/placementPolyfill.js +1 -3
- package/esm/internals/utils/prefix.js +6 -12
- package/esm/internals/utils/safeSetSelection.js +2 -4
- package/esm/internals/utils/shallowEqual.js +5 -5
- package/esm/internals/utils/stringifyReactNode.js +6 -6
- package/esm/internals/utils/tplTransform.js +4 -10
- package/esm/internals/utils/warnOnce.js +3 -3
- package/esm/locales/ar_EG.js +11 -10
- package/esm/locales/ca_ES.d.ts +4 -4
- package/esm/locales/ca_ES.js +11 -10
- package/esm/locales/cs_CZ.js +11 -10
- package/esm/locales/da_DK.js +11 -10
- package/esm/locales/de_DE.js +11 -10
- package/esm/locales/en_GB.js +11 -10
- package/esm/locales/en_US.js +11 -10
- package/esm/locales/es_AR.js +11 -10
- package/esm/locales/es_ES.js +11 -10
- package/esm/locales/fa_IR.js +11 -10
- package/esm/locales/fi_FI.js +11 -10
- package/esm/locales/fr_FR.js +11 -10
- package/esm/locales/hu_HU.js +11 -10
- package/esm/locales/it_IT.js +11 -10
- package/esm/locales/ja_JP.js +11 -10
- package/esm/locales/kk_KZ.js +11 -10
- package/esm/locales/ko_KR.js +11 -10
- package/esm/locales/ne_NP.js +11 -10
- package/esm/locales/nl_NL.js +11 -10
- package/esm/locales/pt_BR.js +11 -10
- package/esm/locales/ru_RU.js +11 -10
- package/esm/locales/sv_SE.js +11 -10
- package/esm/locales/tr_TR.js +11 -10
- package/esm/locales/zh_CN.js +11 -10
- package/esm/locales/zh_TW.js +11 -10
- package/esm/toaster/ToastContainer.d.ts +2 -2
- package/esm/toaster/ToastContainer.js +104 -129
- package/esm/toaster/ToastContext.js +1 -1
- package/esm/toaster/hooks/useDelayedClosure.js +20 -17
- package/esm/toaster/render.d.ts +0 -1
- package/esm/toaster/render.js +12 -26
- package/esm/toaster/toaster.js +28 -54
- package/esm/useBreakpointValue/useBreakpointValue.js +7 -6
- package/esm/useMediaQuery/useMediaQuery.d.ts +1 -7
- package/esm/useMediaQuery/useMediaQuery.js +18 -78
- package/esm/useToaster/useToaster.js +42 -43
- package/internals/Picker/styles/index.less +7 -11
- package/internals/Picker/styles/mixin.less +6 -3
- package/package.json +16 -13
- package/styles/color-modes/dark.less +1 -0
- package/styles/color-modes/high-contrast.less +1 -0
- package/styles/color-modes/light.less +1 -0
- package/styles/common.less +1 -0
- package/styles/mixins/hacks.less +0 -73
- package/styles/mixins/menu.less +0 -0
- package/styles/mixins/utilities.less +25 -3
- package/styles/scaffolding.less +1 -1
- package/styles/typography.less +11 -6
- package/styles/variables.less +28 -73
- package/toaster/styles/animation.less +0 -0
- package/toaster/styles/index.css +35 -128
- package/useToaster/styles/index.css +35 -128
- package/cjs/internals/Picker/propTypes.d.ts +0 -71
- package/cjs/internals/Picker/propTypes.js +0 -46
- package/cjs/internals/propTypes/deprecatePropType.d.ts +0 -16
- package/cjs/internals/propTypes/deprecatePropType.js +0 -49
- package/cjs/internals/propTypes/index.d.ts +0 -5
- package/cjs/internals/propTypes/index.js +0 -28
- package/cjs/internals/propTypes/oneOf.d.ts +0 -3
- package/cjs/internals/propTypes/oneOf.js +0 -18
- package/cjs/internals/utils/render.d.ts +0 -7
- package/cjs/internals/utils/render.js +0 -48
- package/esm/internals/Picker/propTypes.d.ts +0 -71
- package/esm/internals/Picker/propTypes.js +0 -41
- package/esm/internals/propTypes/deprecatePropType.d.ts +0 -16
- package/esm/internals/propTypes/deprecatePropType.js +0 -45
- package/esm/internals/propTypes/index.d.ts +0 -5
- package/esm/internals/propTypes/index.js +0 -17
- package/esm/internals/propTypes/oneOf.d.ts +0 -3
- package/esm/internals/propTypes/oneOf.js +0 -13
- package/esm/internals/utils/render.d.ts +0 -7
- package/esm/internals/utils/render.js +0 -40
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
2
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
4
|
-
var _excluded = ["mask", "guide", "placeholderChar", "value", "showMask", "pipe", "render", "onChange"];
|
|
5
3
|
import React, { useCallback, useEffect, useRef } from 'react';
|
|
6
4
|
import omit from 'lodash/omit';
|
|
7
|
-
import PropTypes from 'prop-types';
|
|
8
5
|
import createTextMaskInputElement from "./createTextMaskInputElement.js";
|
|
9
6
|
import { mergeRefs } from "../internals/utils/index.js";
|
|
10
7
|
|
|
@@ -12,60 +9,49 @@ import { mergeRefs } from "../internals/utils/index.js";
|
|
|
12
9
|
* https://github.com/text-mask/text-mask/blob/master/componentDocumentation.md#guide
|
|
13
10
|
*/
|
|
14
11
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}, props));
|
|
19
|
-
};
|
|
12
|
+
const defaultRender = (ref, props) => /*#__PURE__*/React.createElement("input", _extends({
|
|
13
|
+
ref: ref
|
|
14
|
+
}, props));
|
|
20
15
|
|
|
21
16
|
/**
|
|
22
17
|
* The `TextMask` component is used to format the user input data.
|
|
23
18
|
* @see https://rsuitejs.com/components/input/#masked-input
|
|
24
19
|
*/
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
guide =
|
|
29
|
-
placeholderChar
|
|
30
|
-
value
|
|
31
|
-
showMask
|
|
32
|
-
pipe
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
20
|
+
const TextMask = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
21
|
+
const {
|
|
22
|
+
mask,
|
|
23
|
+
guide = true,
|
|
24
|
+
placeholderChar,
|
|
25
|
+
value,
|
|
26
|
+
showMask,
|
|
27
|
+
pipe,
|
|
28
|
+
render = defaultRender,
|
|
29
|
+
onChange,
|
|
30
|
+
...rest
|
|
31
|
+
} = props;
|
|
32
|
+
const inputRef = useRef(null);
|
|
33
|
+
const textMaskInputElement = useRef();
|
|
34
|
+
const initTextMask = useCallback(() => {
|
|
40
35
|
var _textMaskInputElement;
|
|
41
|
-
textMaskInputElement.current = createTextMaskInputElement(
|
|
42
|
-
inputElement: inputRef.current
|
|
43
|
-
|
|
36
|
+
textMaskInputElement.current = createTextMaskInputElement({
|
|
37
|
+
inputElement: inputRef.current,
|
|
38
|
+
...props
|
|
39
|
+
});
|
|
44
40
|
(_textMaskInputElement = textMaskInputElement.current) === null || _textMaskInputElement === void 0 || _textMaskInputElement.update(value);
|
|
45
41
|
}, [props, value]);
|
|
46
|
-
|
|
42
|
+
const handleChange = useCallback(event => {
|
|
47
43
|
var _textMaskInputElement2;
|
|
48
44
|
(_textMaskInputElement2 = textMaskInputElement.current) === null || _textMaskInputElement2 === void 0 || _textMaskInputElement2.update();
|
|
49
45
|
onChange === null || onChange === void 0 || onChange(event);
|
|
50
46
|
}, [onChange]);
|
|
51
|
-
useEffect(
|
|
47
|
+
useEffect(() => {
|
|
52
48
|
initTextMask();
|
|
53
49
|
}, [guide, placeholderChar, showMask, pipe, mask, value, initTextMask]);
|
|
54
|
-
return render(mergeRefs(inputRef, ref),
|
|
50
|
+
return render(mergeRefs(inputRef, ref), {
|
|
55
51
|
onChange: handleChange,
|
|
56
|
-
defaultValue: value
|
|
57
|
-
|
|
52
|
+
defaultValue: value,
|
|
53
|
+
...omit(rest, ['keepCharPositions'])
|
|
54
|
+
});
|
|
58
55
|
});
|
|
59
56
|
TextMask.displayName = 'TextMask';
|
|
60
|
-
TextMask.propTypes = {
|
|
61
|
-
render: PropTypes.func,
|
|
62
|
-
onChange: PropTypes.func,
|
|
63
|
-
mask: PropTypes.oneOfType([PropTypes.array, PropTypes.func, PropTypes.bool]).isRequired,
|
|
64
|
-
guide: PropTypes.bool,
|
|
65
|
-
value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
|
|
66
|
-
pipe: PropTypes.func,
|
|
67
|
-
placeholderChar: PropTypes.string,
|
|
68
|
-
keepCharPositions: PropTypes.bool,
|
|
69
|
-
showMask: PropTypes.bool
|
|
70
|
-
};
|
|
71
57
|
export default TextMask;
|
|
@@ -1,40 +1,37 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
const defaultArray = [];
|
|
3
|
+
const emptyString = '';
|
|
4
4
|
export default function adjustCaretPosition(_ref) {
|
|
5
|
-
|
|
6
|
-
previousConformedValue =
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
indexesOfPipedChars = _ref$indexesOfPipedCh === void 0 ? defaultArray : _ref$indexesOfPipedCh,
|
|
17
|
-
_ref$caretTrapIndexes = _ref.caretTrapIndexes,
|
|
18
|
-
caretTrapIndexes = _ref$caretTrapIndexes === void 0 ? defaultArray : _ref$caretTrapIndexes;
|
|
5
|
+
let {
|
|
6
|
+
previousConformedValue = emptyString,
|
|
7
|
+
previousPlaceholder = emptyString,
|
|
8
|
+
currentCaretPosition = 0,
|
|
9
|
+
conformedValue,
|
|
10
|
+
rawValue,
|
|
11
|
+
placeholderChar,
|
|
12
|
+
placeholder,
|
|
13
|
+
indexesOfPipedChars = defaultArray,
|
|
14
|
+
caretTrapIndexes = defaultArray
|
|
15
|
+
} = _ref;
|
|
19
16
|
if (currentCaretPosition === 0 || !rawValue.length) {
|
|
20
17
|
return 0;
|
|
21
18
|
}
|
|
22
19
|
|
|
23
20
|
// Store lengths for faster performance?
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
21
|
+
const rawValueLength = rawValue.length;
|
|
22
|
+
const previousConformedValueLength = previousConformedValue.length;
|
|
23
|
+
const placeholderLength = placeholder.length;
|
|
24
|
+
const conformedValueLength = conformedValue.length;
|
|
28
25
|
|
|
29
26
|
// This tells us how long the edit is. If user modified input from `(2__)` to `(243__)`,
|
|
30
27
|
// we know the user in this instance pasted two characters
|
|
31
|
-
|
|
28
|
+
const editLength = rawValueLength - previousConformedValueLength;
|
|
32
29
|
|
|
33
30
|
// If the edit length is positive, that means the user is adding characters, not deleting.
|
|
34
|
-
|
|
31
|
+
const isAddition = editLength > 0;
|
|
35
32
|
|
|
36
33
|
// This is the first raw value the user entered that needs to be conformed to mask
|
|
37
|
-
|
|
34
|
+
const isFirstRawValue = previousConformedValueLength === 0;
|
|
38
35
|
|
|
39
36
|
// A partial multi-character edit happens when the user makes a partial selection in their
|
|
40
37
|
// input and edits that selection. That is going from `(123) 432-4348` to `() 432-4348` by
|
|
@@ -42,7 +39,7 @@ export default function adjustCaretPosition(_ref) {
|
|
|
42
39
|
//
|
|
43
40
|
// Such cases can also happen when the user presses the backspace while holding down the ALT
|
|
44
41
|
// key.
|
|
45
|
-
|
|
42
|
+
const isPartialMultiCharEdit = editLength > 1 && !isFirstRawValue;
|
|
46
43
|
|
|
47
44
|
// This algorithm doesn't support all cases of multi-character edits, so we just return
|
|
48
45
|
// the current caret position.
|
|
@@ -56,10 +53,10 @@ export default function adjustCaretPosition(_ref) {
|
|
|
56
53
|
// `f` so the `rawValue` becomes (1f__), the new `conformedValue` would be (1__), which is the
|
|
57
54
|
// same as the original `previousConformedValue`. We handle this case differently for caret
|
|
58
55
|
// positioning.
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
56
|
+
const possiblyHasRejectedChar = isAddition && (previousConformedValue === conformedValue || conformedValue === placeholder);
|
|
57
|
+
let startingSearchIndex = 0;
|
|
58
|
+
let trackRightCharacter;
|
|
59
|
+
let targetChar;
|
|
63
60
|
if (possiblyHasRejectedChar) {
|
|
64
61
|
startingSearchIndex = currentCaretPosition - editLength;
|
|
65
62
|
} else {
|
|
@@ -71,17 +68,15 @@ export default function adjustCaretPosition(_ref) {
|
|
|
71
68
|
|
|
72
69
|
// First, we need to normalize the inputs so that letter capitalization between raw input and
|
|
73
70
|
// conformed input wouldn't matter.
|
|
74
|
-
|
|
75
|
-
|
|
71
|
+
const normalizedConformedValue = conformedValue.toLowerCase();
|
|
72
|
+
const normalizedRawValue = rawValue.toLowerCase();
|
|
76
73
|
|
|
77
74
|
// Then we take all characters that come before where the caret currently is.
|
|
78
|
-
|
|
75
|
+
const leftHalfChars = normalizedRawValue.substr(0, currentCaretPosition).split(emptyString);
|
|
79
76
|
|
|
80
77
|
// Now we find all the characters in the left half that exist in the conformed input
|
|
81
78
|
// This step ensures that we don't look for a character that was filtered out or rejected by `conformToMask`.
|
|
82
|
-
|
|
83
|
-
return normalizedConformedValue.indexOf(char) !== -1;
|
|
84
|
-
});
|
|
79
|
+
const intersection = leftHalfChars.filter(char => normalizedConformedValue.indexOf(char) !== -1);
|
|
85
80
|
|
|
86
81
|
// The last character in the intersection is the character we want to look for in the conformed
|
|
87
82
|
// value and the one we want to adjust the caret close to
|
|
@@ -89,21 +84,17 @@ export default function adjustCaretPosition(_ref) {
|
|
|
89
84
|
|
|
90
85
|
// Calculate the number of mask characters in the previous placeholder
|
|
91
86
|
// from the start of the string up to the place where the caret is
|
|
92
|
-
|
|
93
|
-
return char !== placeholderChar;
|
|
94
|
-
}).length;
|
|
87
|
+
const previousLeftMaskChars = previousPlaceholder.substr(0, intersection.length).split(emptyString).filter(char => char !== placeholderChar).length;
|
|
95
88
|
|
|
96
89
|
// Calculate the number of mask characters in the current placeholder
|
|
97
90
|
// from the start of the string up to the place where the caret is
|
|
98
|
-
|
|
99
|
-
return char !== placeholderChar;
|
|
100
|
-
}).length;
|
|
91
|
+
const leftMaskChars = placeholder.substr(0, intersection.length).split(emptyString).filter(char => char !== placeholderChar).length;
|
|
101
92
|
|
|
102
93
|
// Has the number of mask characters up to the caret changed?
|
|
103
|
-
|
|
94
|
+
const masklengthChanged = leftMaskChars !== previousLeftMaskChars;
|
|
104
95
|
|
|
105
96
|
// Detect if `targetChar` is a mask character and has moved to the left
|
|
106
|
-
|
|
97
|
+
const targetIsMaskMovingLeft = previousPlaceholder[intersection.length - 1] !== undefined && placeholder[intersection.length - 2] !== undefined && previousPlaceholder[intersection.length - 1] !== placeholderChar && previousPlaceholder[intersection.length - 1] !== placeholder[intersection.length - 1] && previousPlaceholder[intersection.length - 1] === placeholder[intersection.length - 2];
|
|
107
98
|
|
|
108
99
|
// If deleting and the `targetChar` `is a mask character and `masklengthChanged` is true
|
|
109
100
|
// or the mask is moving to the left, we can't use the selected `targetChar` any longer
|
|
@@ -121,36 +112,27 @@ export default function adjustCaretPosition(_ref) {
|
|
|
121
112
|
|
|
122
113
|
// If the `conformedValue` got piped, we need to know which characters were piped in so that when we look for
|
|
123
114
|
// our `targetChar`, we don't select a piped char by mistake
|
|
124
|
-
|
|
125
|
-
return normalizedConformedValue[index];
|
|
126
|
-
});
|
|
115
|
+
const pipedChars = indexesOfPipedChars.map(index => normalizedConformedValue[index]);
|
|
127
116
|
|
|
128
117
|
// We need to know how many times the `targetChar` occurs in the piped characters.
|
|
129
|
-
|
|
130
|
-
return char === targetChar;
|
|
131
|
-
}).length;
|
|
118
|
+
const countTargetCharInPipedChars = pipedChars.filter(char => char === targetChar).length;
|
|
132
119
|
|
|
133
120
|
// We need to know how many times it occurs in the intersection
|
|
134
|
-
|
|
135
|
-
return char === targetChar;
|
|
136
|
-
}).length;
|
|
121
|
+
const countTargetCharInIntersection = intersection.filter(char => char === targetChar).length;
|
|
137
122
|
|
|
138
123
|
// We need to know if the placeholder contains characters that look like
|
|
139
124
|
// our `targetChar`, so we don't select one of those by mistake.
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
rawValue[index] !== char
|
|
148
|
-
);
|
|
149
|
-
}).length;
|
|
125
|
+
const countTargetCharInPlaceholder = placeholder.substr(0, placeholder.indexOf(placeholderChar)).split(emptyString).filter((char, index) =>
|
|
126
|
+
// Check if `char` is the same as our `targetChar`, so we account for it
|
|
127
|
+
char === targetChar &&
|
|
128
|
+
// but also make sure that both the `rawValue` and placeholder don't have the same character at the same
|
|
129
|
+
// index because if they are equal, that means we are already counting those characters in
|
|
130
|
+
// `countTargetCharInIntersection`
|
|
131
|
+
rawValue[index] !== char).length;
|
|
150
132
|
|
|
151
133
|
// The number of times we need to see occurrences of the `targetChar` before we know it is the one we're looking
|
|
152
134
|
// for is:
|
|
153
|
-
|
|
135
|
+
const requiredNumberOfMatches = countTargetCharInPlaceholder + countTargetCharInIntersection + countTargetCharInPipedChars + (
|
|
154
136
|
// The character to the right of the caret isn't included in `intersection`
|
|
155
137
|
// so add one if we are tracking the character to the right
|
|
156
138
|
trackRightCharacter ? 1 : 0);
|
|
@@ -159,9 +141,9 @@ export default function adjustCaretPosition(_ref) {
|
|
|
159
141
|
// We keep looping forward and store the index in every iteration. Once we have encountered
|
|
160
142
|
// enough occurrences of the target character, we break out of the loop
|
|
161
143
|
// If are searching for the second `1` in `1214`, `startingSearchIndex` will point at `4`.
|
|
162
|
-
|
|
163
|
-
for (
|
|
164
|
-
|
|
144
|
+
let numberOfEncounteredMatches = 0;
|
|
145
|
+
for (let i = 0; i < conformedValueLength; i++) {
|
|
146
|
+
const conformedValueChar = normalizedConformedValue[i];
|
|
165
147
|
startingSearchIndex = i + 1;
|
|
166
148
|
if (conformedValueChar === targetChar) {
|
|
167
149
|
numberOfEncounteredMatches++;
|
|
@@ -182,18 +164,18 @@ export default function adjustCaretPosition(_ref) {
|
|
|
182
164
|
// We want to remember the last placeholder character encountered so that if the mask
|
|
183
165
|
// contains more characters after the last placeholder character, we don't forward the caret
|
|
184
166
|
// that far to the right. Instead, we stop it at the last encountered placeholder character.
|
|
185
|
-
|
|
186
|
-
for (
|
|
187
|
-
if (placeholder[
|
|
188
|
-
lastPlaceholderChar =
|
|
167
|
+
let lastPlaceholderChar = startingSearchIndex;
|
|
168
|
+
for (let i = startingSearchIndex; i <= placeholderLength; i++) {
|
|
169
|
+
if (placeholder[i] === placeholderChar) {
|
|
170
|
+
lastPlaceholderChar = i;
|
|
189
171
|
}
|
|
190
172
|
if (
|
|
191
173
|
// If we're adding, we can position the caret at the next placeholder character.
|
|
192
|
-
placeholder[
|
|
174
|
+
placeholder[i] === placeholderChar ||
|
|
193
175
|
// If a caret trap was set by a mask function, we need to stop at the trap.
|
|
194
|
-
caretTrapIndexes.indexOf(
|
|
176
|
+
caretTrapIndexes.indexOf(i) !== -1 ||
|
|
195
177
|
// This is the end of the placeholder. We cannot move any further. Let's put the caret there.
|
|
196
|
-
|
|
178
|
+
i === placeholderLength) {
|
|
197
179
|
return lastPlaceholderChar;
|
|
198
180
|
}
|
|
199
181
|
}
|
|
@@ -202,26 +184,26 @@ export default function adjustCaretPosition(_ref) {
|
|
|
202
184
|
if (trackRightCharacter) {
|
|
203
185
|
// Searching for the character that was to the right of the caret
|
|
204
186
|
// We start at `startingSearchIndex` - 1 because it includes one character extra to the right
|
|
205
|
-
for (
|
|
187
|
+
for (let i = startingSearchIndex - 1; i >= 0; i--) {
|
|
206
188
|
// If tracking the character to the right of the cursor, we move to the left until
|
|
207
189
|
// we found the character and then place the caret right before it
|
|
208
190
|
|
|
209
191
|
if (
|
|
210
192
|
// `targetChar` should be in `conformedValue`, since it was in `rawValue`, just
|
|
211
193
|
// to the right of the caret
|
|
212
|
-
conformedValue[
|
|
194
|
+
conformedValue[i] === targetChar ||
|
|
213
195
|
// If a caret trap was set by a mask function, we need to stop at the trap.
|
|
214
|
-
caretTrapIndexes.indexOf(
|
|
196
|
+
caretTrapIndexes.indexOf(i) !== -1 ||
|
|
215
197
|
// This is the beginning of the placeholder. We cannot move any further.
|
|
216
198
|
// Let's put the caret there.
|
|
217
|
-
|
|
218
|
-
return
|
|
199
|
+
i === 0) {
|
|
200
|
+
return i;
|
|
219
201
|
}
|
|
220
202
|
}
|
|
221
203
|
} else {
|
|
222
204
|
// Searching for the first placeholder or caret trap to the left
|
|
223
205
|
|
|
224
|
-
for (
|
|
206
|
+
for (let i = startingSearchIndex; i >= 0; i--) {
|
|
225
207
|
// If we're deleting, we stop the caret right before the placeholder character.
|
|
226
208
|
// For example, for mask `(111) 11`, current conformed input `(456) 86`. If user
|
|
227
209
|
// modifies input to `(456 86`. That is, they deleted the `)`, we place the caret
|
|
@@ -229,13 +211,13 @@ export default function adjustCaretPosition(_ref) {
|
|
|
229
211
|
|
|
230
212
|
if (
|
|
231
213
|
// If we're deleting, we can position the caret right before the placeholder character
|
|
232
|
-
placeholder[
|
|
214
|
+
placeholder[i - 1] === placeholderChar ||
|
|
233
215
|
// If a caret trap was set by a mask function, we need to stop at the trap.
|
|
234
|
-
caretTrapIndexes.indexOf(
|
|
216
|
+
caretTrapIndexes.indexOf(i) !== -1 ||
|
|
235
217
|
// This is the beginning of the placeholder. We cannot move any further.
|
|
236
218
|
// Let's put the caret there.
|
|
237
|
-
|
|
238
|
-
return
|
|
219
|
+
i === 0) {
|
|
220
|
+
return i;
|
|
239
221
|
}
|
|
240
222
|
}
|
|
241
223
|
}
|
|
@@ -31,39 +31,35 @@ export default function conformToMask(rawValue, mask, config) {
|
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
// These configurations tell us how to conform the mask
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
placeholder = _config$placeholder === void 0 ? convertMaskToPlaceholder(mask, placeholderChar) : _config$placeholder,
|
|
43
|
-
_config$currentCaretP = _config.currentCaretPosition,
|
|
44
|
-
currentCaretPosition = _config$currentCaretP === void 0 ? 0 : _config$currentCaretP,
|
|
45
|
-
keepCharPositions = _config.keepCharPositions;
|
|
34
|
+
const {
|
|
35
|
+
guide = true,
|
|
36
|
+
previousConformedValue = '',
|
|
37
|
+
placeholderChar = defaultPlaceholderChar,
|
|
38
|
+
placeholder = convertMaskToPlaceholder(mask, placeholderChar),
|
|
39
|
+
currentCaretPosition = 0,
|
|
40
|
+
keepCharPositions
|
|
41
|
+
} = config;
|
|
46
42
|
|
|
47
43
|
// The configs below indicate that the user wants the algorithm to work in *no guide* mode
|
|
48
|
-
|
|
44
|
+
const suppressGuide = guide === false && previousConformedValue !== undefined;
|
|
49
45
|
|
|
50
46
|
// Calculate lengths once for performance
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
47
|
+
const rawValueLength = rawValue.length;
|
|
48
|
+
const previousConformedValueLength = previousConformedValue.length;
|
|
49
|
+
const placeholderLength = placeholder.length;
|
|
50
|
+
const maskLength = mask.length;
|
|
55
51
|
|
|
56
52
|
// This tells us the number of edited characters and the direction in which they were edited (+/-)
|
|
57
|
-
|
|
53
|
+
const editDistance = rawValueLength - previousConformedValueLength;
|
|
58
54
|
|
|
59
55
|
// In *no guide* mode, we need to know if the user is trying to add a character or not
|
|
60
|
-
|
|
56
|
+
const isAddition = editDistance > 0;
|
|
61
57
|
|
|
62
58
|
// Tells us the index of the first change. For (438) 394-4938 to (38) 394-4938, that would be 1
|
|
63
|
-
|
|
59
|
+
const indexOfFirstChange = currentCaretPosition + (isAddition ? -editDistance : 0);
|
|
64
60
|
|
|
65
61
|
// We're also gonna need the index of last change, which we can derive as follows...
|
|
66
|
-
|
|
62
|
+
const indexOfLastChange = indexOfFirstChange + Math.abs(editDistance);
|
|
67
63
|
|
|
68
64
|
// If `conformToMask` is configured to keep character positions, that is, for mask 111, previous value
|
|
69
65
|
// _2_ and raw value 3_2_, the new conformed value should be 32_, not 3_2 (default behavior). That's in the case of
|
|
@@ -75,10 +71,10 @@ export default function conformToMask(rawValue, mask, config) {
|
|
|
75
71
|
// To do this, we want to compensate for all characters that were deleted
|
|
76
72
|
if (keepCharPositions === true && !isAddition) {
|
|
77
73
|
// We will be storing the new placeholder characters in this variable.
|
|
78
|
-
|
|
74
|
+
let compensatingPlaceholderChars = '';
|
|
79
75
|
|
|
80
76
|
// For every character that was deleted from a placeholder position, we add a placeholder char
|
|
81
|
-
for (
|
|
77
|
+
for (let i = indexOfFirstChange; i < indexOfLastChange; i++) {
|
|
82
78
|
if (placeholder[i] === placeholderChar) {
|
|
83
79
|
compensatingPlaceholderChars += placeholderChar;
|
|
84
80
|
}
|
|
@@ -93,35 +89,35 @@ export default function conformToMask(rawValue, mask, config) {
|
|
|
93
89
|
// Convert `rawValue` string to an array, and mark characters based on whether they are newly added or have
|
|
94
90
|
// existed in the previous conformed value. Identifying new and old characters is needed for `conformToMask`
|
|
95
91
|
// to work if it is configured to keep character positions.
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
};
|
|
101
|
-
});
|
|
92
|
+
const rawValueArr = rawValue.split('').map((char, i) => ({
|
|
93
|
+
char,
|
|
94
|
+
isNew: i >= indexOfFirstChange && i < indexOfLastChange
|
|
95
|
+
}));
|
|
102
96
|
|
|
103
97
|
// The loop below removes masking characters from user input. For example, for mask
|
|
104
98
|
// `00 (111)`, the placeholder would be `00 (___)`. If user input is `00 (234)`, the loop below
|
|
105
99
|
// would remove all characters but `234` from the `rawValueArr`. The rest of the algorithm
|
|
106
100
|
// then would lay `234` on top of the available placeholder positions in the mask.
|
|
107
|
-
for (
|
|
108
|
-
|
|
101
|
+
for (let i = rawValueLength - 1; i >= 0; i--) {
|
|
102
|
+
const {
|
|
103
|
+
char
|
|
104
|
+
} = rawValueArr[i];
|
|
109
105
|
if (char !== placeholderChar) {
|
|
110
|
-
|
|
111
|
-
if (char === placeholder[shouldOffset ?
|
|
112
|
-
rawValueArr.splice(
|
|
106
|
+
const shouldOffset = i >= indexOfFirstChange && previousConformedValueLength === maskLength;
|
|
107
|
+
if (char === placeholder[shouldOffset ? i - editDistance : i]) {
|
|
108
|
+
rawValueArr.splice(i, 1);
|
|
113
109
|
}
|
|
114
110
|
}
|
|
115
111
|
}
|
|
116
112
|
|
|
117
113
|
// This is the variable that we will be filling with characters as we figure them out
|
|
118
114
|
// in the algorithm below
|
|
119
|
-
|
|
120
|
-
|
|
115
|
+
let conformedValue = '';
|
|
116
|
+
let someCharsRejected = false;
|
|
121
117
|
|
|
122
118
|
// Ok, so first we loop through the placeholder looking for placeholder characters to fill up.
|
|
123
|
-
placeholderLoop: for (
|
|
124
|
-
|
|
119
|
+
placeholderLoop: for (let i = 0; i < placeholderLength; i++) {
|
|
120
|
+
const charInPlaceholder = placeholder[i];
|
|
125
121
|
|
|
126
122
|
// We see one. Let's find out what we can put in it.
|
|
127
123
|
if (charInPlaceholder === placeholderChar) {
|
|
@@ -131,10 +127,10 @@ export default function conformToMask(rawValue, mask, config) {
|
|
|
131
127
|
// or we find at least one character that we can map.
|
|
132
128
|
while (rawValueArr.length > 0) {
|
|
133
129
|
// Let's retrieve the first user character in the queue of characters we have left
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
130
|
+
const {
|
|
131
|
+
char: rawValueChar,
|
|
132
|
+
isNew
|
|
133
|
+
} = rawValueArr.shift();
|
|
138
134
|
|
|
139
135
|
// If the character we got from the user input is a placeholder character (which happens
|
|
140
136
|
// regularly because user input could be something like (540) 90_-____, which includes
|
|
@@ -148,7 +144,7 @@ export default function conformToMask(rawValue, mask, config) {
|
|
|
148
144
|
|
|
149
145
|
// Else if, the character we got from the user input is not a placeholder, let's see
|
|
150
146
|
// if the current position in the mask can accept it.
|
|
151
|
-
} else if (mask[
|
|
147
|
+
} else if (mask[i].test(rawValueChar)) {
|
|
152
148
|
// we map the character differently based on whether we are keeping character positions or not.
|
|
153
149
|
// If any of the conditions below are met, we simply map the raw value character to the
|
|
154
150
|
// placeholder position.
|
|
@@ -162,20 +158,20 @@ export default function conformToMask(rawValue, mask, config) {
|
|
|
162
158
|
// For example, for mask `1111`, previous conformed value `_2__`, raw value `942_2__`. We can map the
|
|
163
159
|
// `9`, to the first available placeholder position, but then, there are no more spots available for the
|
|
164
160
|
// `4` and `2`. So, we discard them and end up with a conformed value of `92__`.
|
|
165
|
-
|
|
166
|
-
|
|
161
|
+
const rawValueArrLength = rawValueArr.length;
|
|
162
|
+
let indexOfNextAvailablePlaceholderChar = null;
|
|
167
163
|
|
|
168
164
|
// Let's loop through the remaining raw value characters. We are looking for either a suitable spot, ie,
|
|
169
165
|
// a placeholder character or a non-suitable spot, ie, a non-placeholder character that is not new.
|
|
170
166
|
// If we see a suitable spot first, we store its position and exit the loop. If we see a non-suitable
|
|
171
167
|
// spot first, we exit the loop and our `indexOfNextAvailablePlaceholderChar` will stay as `null`.
|
|
172
|
-
for (
|
|
173
|
-
|
|
168
|
+
for (let i = 0; i < rawValueArrLength; i++) {
|
|
169
|
+
const charData = rawValueArr[i];
|
|
174
170
|
if (charData.char !== placeholderChar && charData.isNew === false) {
|
|
175
171
|
break;
|
|
176
172
|
}
|
|
177
173
|
if (charData.char === placeholderChar) {
|
|
178
|
-
indexOfNextAvailablePlaceholderChar =
|
|
174
|
+
indexOfNextAvailablePlaceholderChar = i;
|
|
179
175
|
break;
|
|
180
176
|
}
|
|
181
177
|
}
|
|
@@ -190,7 +186,7 @@ export default function conformToMask(rawValue, mask, config) {
|
|
|
190
186
|
// If `indexOfNextAvailablePlaceholderChar` is `null`, that means the character is blocked. We have to
|
|
191
187
|
// discard it.
|
|
192
188
|
} else {
|
|
193
|
-
|
|
189
|
+
i--;
|
|
194
190
|
}
|
|
195
191
|
}
|
|
196
192
|
|
|
@@ -208,7 +204,7 @@ export default function conformToMask(rawValue, mask, config) {
|
|
|
208
204
|
//
|
|
209
205
|
// That is, for mask `(111)` and user input `2`, we want to return `(2`, not `(2__)`.
|
|
210
206
|
if (suppressGuide === false) {
|
|
211
|
-
conformedValue += placeholder.substr(
|
|
207
|
+
conformedValue += placeholder.substr(i, placeholderLength);
|
|
212
208
|
}
|
|
213
209
|
|
|
214
210
|
// And we break
|
|
@@ -228,12 +224,12 @@ export default function conformToMask(rawValue, mask, config) {
|
|
|
228
224
|
// That's why the logic below finds the last filled placeholder character, and removes everything
|
|
229
225
|
// from that point on.
|
|
230
226
|
if (suppressGuide && isAddition === false) {
|
|
231
|
-
|
|
227
|
+
let indexOfLastFilledPlaceholderChar = null;
|
|
232
228
|
|
|
233
229
|
// Find the last filled placeholder position and substring from there
|
|
234
|
-
for (
|
|
235
|
-
if (placeholder[
|
|
236
|
-
indexOfLastFilledPlaceholderChar =
|
|
230
|
+
for (let i = 0; i < conformedValue.length; i++) {
|
|
231
|
+
if (placeholder[i] === placeholderChar) {
|
|
232
|
+
indexOfLastFilledPlaceholderChar = i;
|
|
237
233
|
}
|
|
238
234
|
}
|
|
239
235
|
if (indexOfLastFilledPlaceholderChar !== null) {
|
|
@@ -246,9 +242,9 @@ export default function conformToMask(rawValue, mask, config) {
|
|
|
246
242
|
}
|
|
247
243
|
}
|
|
248
244
|
return {
|
|
249
|
-
conformedValue
|
|
245
|
+
conformedValue,
|
|
250
246
|
meta: {
|
|
251
|
-
someCharsRejected
|
|
247
|
+
someCharsRejected
|
|
252
248
|
}
|
|
253
249
|
};
|
|
254
250
|
}
|