rsuite 5.1.0 → 5.2.3
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/Button/styles/index.less +7 -1
- package/CHANGELOG.md +45 -0
- package/PanelGroup/styles/index.less +12 -12
- package/README.md +3 -45
- package/Sidenav/styles/index.less +4 -0
- package/Slider/styles/index.less +20 -14
- package/Toggle/styles/index.less +48 -27
- package/Toggle/styles/mixin.less +16 -14
- package/cjs/@types/common.d.ts +8 -2
- package/cjs/Affix/Affix.js +3 -3
- package/cjs/Animation/Collapse.js +9 -7
- package/cjs/Animation/Transition.js +4 -2
- package/cjs/AutoComplete/AutoComplete.d.ts +2 -2
- package/cjs/AutoComplete/AutoComplete.js +7 -4
- package/cjs/Calendar/TimeDropdown.js +5 -3
- package/cjs/Cascader/Cascader.d.ts +1 -1
- package/cjs/Cascader/DropdownMenu.js +6 -5
- package/cjs/CheckTreePicker/CheckTreeNode.d.ts +1 -1
- package/cjs/CheckTreePicker/CheckTreePicker.d.ts +1 -1
- package/cjs/CheckTreePicker/utils.d.ts +1 -1
- package/cjs/CheckTreePicker/utils.js +7 -6
- package/cjs/Checkbox/Checkbox.d.ts +3 -3
- package/cjs/CheckboxGroup/CheckboxGroup.js +2 -2
- package/cjs/CheckboxGroup/CheckboxGroupContext.d.ts +1 -1
- package/cjs/DOMHelper/index.d.ts +12 -27
- package/cjs/DOMHelper/index.js +4 -3
- package/cjs/DOMHelper/isElement.d.ts +2 -0
- package/cjs/DOMHelper/isElement.js +11 -0
- package/cjs/DatePicker/DatePicker.d.ts +3 -3
- package/cjs/DateRangePicker/Calendar.d.ts +1 -1
- package/cjs/DateRangePicker/DateRangePicker.d.ts +2 -2
- package/cjs/Disclosure/Disclosure.d.ts +1 -1
- package/cjs/Disclosure/DisclosureContext.d.ts +1 -1
- package/cjs/Dropdown/DropdownItem.d.ts +1 -1
- package/cjs/Dropdown/DropdownItem.js +16 -19
- package/cjs/Dropdown/DropdownMenu.d.ts +2 -2
- package/cjs/Dropdown/useRenderDropdownItem.d.ts +2 -0
- package/cjs/Dropdown/useRenderDropdownItem.js +26 -0
- package/cjs/Form/Form.d.ts +1 -1
- package/cjs/FormControl/FormControl.d.ts +9 -3
- package/cjs/Input/Input.d.ts +2 -1
- package/cjs/InputNumber/InputNumber.js +2 -2
- package/cjs/InputPicker/InputPicker.js +3 -3
- package/cjs/List/helper/useSortHelper.js +11 -6
- package/cjs/MaskedInput/MaskedInput.d.ts +5 -42
- package/cjs/MaskedInput/MaskedInput.js +9 -63
- package/cjs/MaskedInput/TextMask.d.ts +43 -0
- package/cjs/MaskedInput/TextMask.js +80 -0
- package/cjs/Menu/Menu.js +46 -34
- package/cjs/Menu/MenuItem.d.ts +1 -1
- package/cjs/Menu/MenuItem.js +16 -12
- package/cjs/Menu/Menubar.d.ts +1 -1
- package/cjs/Message/Message.js +13 -11
- package/cjs/Modal/Modal.js +5 -3
- package/cjs/Modal/utils.js +15 -14
- package/cjs/Notification/Notification.js +6 -3
- package/cjs/Overlay/Modal.js +14 -11
- package/cjs/Overlay/ModalManager.js +19 -7
- package/cjs/Overlay/OverlayTrigger.js +2 -2
- package/cjs/Overlay/Position.js +27 -17
- package/cjs/Overlay/positionUtils.js +16 -8
- package/cjs/Panel/Panel.d.ts +1 -1
- package/cjs/Picker/DropdownMenu.js +10 -6
- package/cjs/Picker/DropdownMenuCheckItem.d.ts +3 -3
- package/cjs/Picker/PickerOverlay.js +5 -3
- package/cjs/Picker/PickerToggle.d.ts +6 -0
- package/cjs/Picker/PickerToggle.js +16 -8
- package/cjs/Picker/SearchBar.d.ts +1 -1
- package/cjs/Picker/utils.d.ts +2 -2
- package/cjs/Radio/Radio.d.ts +1 -1
- package/cjs/RadioGroup/RadioGroup.d.ts +1 -1
- package/cjs/RadioGroup/RadioGroup.js +2 -2
- package/cjs/RangeSlider/RangeSlider.js +9 -5
- package/cjs/Rate/Character.js +2 -2
- package/cjs/Rate/Rate.js +3 -1
- package/cjs/Ripple/Ripple.js +6 -7
- package/cjs/Sidenav/SidenavDropdownItem.d.ts +1 -1
- package/cjs/Sidenav/SidenavDropdownItem.js +17 -10
- package/cjs/Sidenav/SidenavDropdownMenu.d.ts +1 -1
- package/cjs/Slider/Graduated.js +1 -1
- package/cjs/Slider/Handle.js +10 -5
- package/cjs/Slider/ProgressBar.js +1 -1
- package/cjs/Slider/Slider.js +9 -5
- package/cjs/Toggle/Toggle.d.ts +3 -6
- package/cjs/Toggle/Toggle.js +32 -27
- package/cjs/Tree/Tree.d.ts +3 -3
- package/cjs/TreePicker/TreeNode.d.ts +1 -1
- package/cjs/TreePicker/TreeNode.js +2 -2
- package/cjs/TreePicker/TreePicker.d.ts +1 -1
- package/cjs/Uploader/Uploader.d.ts +4 -4
- package/cjs/locales/fa_IR.js +8 -8
- package/cjs/utils/BrowserDetection.js +1 -1
- package/cjs/utils/index.d.ts +1 -0
- package/cjs/utils/index.js +7 -2
- package/cjs/utils/scrollTopAnimation.js +5 -5
- package/cjs/utils/treeUtils.d.ts +2 -2
- package/cjs/utils/useElementResize.d.ts +1 -1
- package/cjs/utils/useElementResize.js +11 -6
- package/cjs/utils/useEventListener.js +4 -2
- package/cjs/utils/useIsMounted.d.ts +2 -0
- package/cjs/utils/useIsMounted.js +22 -0
- package/cjs/utils/usePortal.js +2 -2
- package/cjs/utils/useRootClose.js +10 -10
- package/dist/rsuite-rtl.css +194 -119
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +194 -119
- package/dist/rsuite.js +703 -504
- 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 +9 -0
- package/dist/rsuite.min.js.map +1 -1
- package/esm/@types/common.d.ts +8 -2
- package/esm/Affix/Affix.js +1 -1
- package/esm/Animation/Collapse.js +2 -1
- package/esm/Animation/Transition.js +3 -2
- package/esm/AutoComplete/AutoComplete.d.ts +2 -2
- package/esm/AutoComplete/AutoComplete.js +8 -5
- package/esm/Calendar/TimeDropdown.js +2 -1
- package/esm/Cascader/Cascader.d.ts +1 -1
- package/esm/Cascader/DropdownMenu.js +4 -3
- package/esm/CheckTreePicker/CheckTreeNode.d.ts +1 -1
- package/esm/CheckTreePicker/CheckTreePicker.d.ts +1 -1
- package/esm/CheckTreePicker/utils.d.ts +1 -1
- package/esm/CheckTreePicker/utils.js +7 -6
- package/esm/Checkbox/Checkbox.d.ts +3 -3
- package/esm/CheckboxGroup/CheckboxGroup.js +2 -2
- package/esm/CheckboxGroup/CheckboxGroupContext.d.ts +1 -1
- package/esm/DOMHelper/index.d.ts +12 -27
- package/esm/DOMHelper/index.js +2 -3
- package/esm/DOMHelper/isElement.d.ts +2 -0
- package/esm/DOMHelper/isElement.js +5 -0
- package/esm/DatePicker/DatePicker.d.ts +3 -3
- package/esm/DateRangePicker/Calendar.d.ts +1 -1
- package/esm/DateRangePicker/DateRangePicker.d.ts +2 -2
- package/esm/Disclosure/Disclosure.d.ts +1 -1
- package/esm/Disclosure/DisclosureContext.d.ts +1 -1
- package/esm/Dropdown/DropdownItem.d.ts +1 -1
- package/esm/Dropdown/DropdownItem.js +15 -19
- package/esm/Dropdown/DropdownMenu.d.ts +2 -2
- package/esm/Dropdown/useRenderDropdownItem.d.ts +2 -0
- package/esm/Dropdown/useRenderDropdownItem.js +18 -0
- package/esm/Form/Form.d.ts +1 -1
- package/esm/FormControl/FormControl.d.ts +9 -3
- package/esm/Input/Input.d.ts +2 -1
- package/esm/InputNumber/InputNumber.js +2 -2
- package/esm/InputPicker/InputPicker.js +2 -2
- package/esm/List/helper/useSortHelper.js +8 -4
- package/esm/MaskedInput/MaskedInput.d.ts +5 -42
- package/esm/MaskedInput/MaskedInput.js +9 -63
- package/esm/MaskedInput/TextMask.d.ts +43 -0
- package/esm/MaskedInput/TextMask.js +67 -0
- package/esm/Menu/Menu.js +46 -36
- package/esm/Menu/MenuItem.d.ts +1 -1
- package/esm/Menu/MenuItem.js +16 -12
- package/esm/Menu/Menubar.d.ts +1 -1
- package/esm/Message/Message.js +15 -13
- package/esm/Modal/Modal.js +3 -2
- package/esm/Modal/utils.js +14 -12
- package/esm/Notification/Notification.js +7 -4
- package/esm/Overlay/Modal.js +11 -8
- package/esm/Overlay/ModalManager.js +6 -1
- package/esm/Overlay/OverlayTrigger.js +1 -1
- package/esm/Overlay/Position.js +20 -11
- package/esm/Overlay/positionUtils.js +5 -1
- package/esm/Panel/Panel.d.ts +1 -1
- package/esm/Picker/DropdownMenu.js +3 -1
- package/esm/Picker/DropdownMenuCheckItem.d.ts +3 -3
- package/esm/Picker/PickerOverlay.js +2 -1
- package/esm/Picker/PickerToggle.d.ts +6 -0
- package/esm/Picker/PickerToggle.js +15 -8
- package/esm/Picker/SearchBar.d.ts +1 -1
- package/esm/Picker/utils.d.ts +2 -2
- package/esm/Radio/Radio.d.ts +1 -1
- package/esm/RadioGroup/RadioGroup.d.ts +1 -1
- package/esm/RadioGroup/RadioGroup.js +2 -2
- package/esm/RangeSlider/RangeSlider.js +4 -2
- package/esm/Rate/Character.js +2 -2
- package/esm/Rate/Rate.js +2 -1
- package/esm/Ripple/Ripple.js +4 -3
- package/esm/Sidenav/SidenavDropdownItem.d.ts +1 -1
- package/esm/Sidenav/SidenavDropdownItem.js +16 -10
- package/esm/Sidenav/SidenavDropdownMenu.d.ts +1 -1
- package/esm/Slider/Graduated.js +1 -1
- package/esm/Slider/Handle.js +5 -2
- package/esm/Slider/ProgressBar.js +1 -1
- package/esm/Slider/Slider.js +4 -2
- package/esm/Toggle/Toggle.d.ts +3 -6
- package/esm/Toggle/Toggle.js +34 -29
- package/esm/Tree/Tree.d.ts +3 -3
- package/esm/TreePicker/TreeNode.d.ts +1 -1
- package/esm/TreePicker/TreeNode.js +1 -1
- package/esm/TreePicker/TreePicker.d.ts +1 -1
- package/esm/Uploader/Uploader.d.ts +4 -4
- package/esm/locales/fa_IR.js +8 -8
- package/esm/utils/BrowserDetection.js +1 -1
- package/esm/utils/index.d.ts +1 -0
- package/esm/utils/index.js +2 -1
- package/esm/utils/scrollTopAnimation.js +2 -2
- package/esm/utils/treeUtils.d.ts +2 -2
- package/esm/utils/useElementResize.d.ts +1 -1
- package/esm/utils/useElementResize.js +12 -5
- package/esm/utils/useEventListener.js +1 -1
- package/esm/utils/useIsMounted.d.ts +2 -0
- package/esm/utils/useIsMounted.js +16 -0
- package/esm/utils/usePortal.js +2 -2
- package/esm/utils/useRootClose.js +8 -6
- package/package.json +5 -5
- package/styles/plugins/palette.js +10 -1
package/esm/Toggle/Toggle.js
CHANGED
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
import React, { useCallback } from 'react';
|
|
3
|
+
import React, { useCallback, useRef } from 'react';
|
|
4
4
|
import PropTypes from 'prop-types';
|
|
5
5
|
import { useClassNames, useControlled, useCustom } from '../utils';
|
|
6
6
|
import Plaintext from '../Plaintext';
|
|
7
7
|
import Loader from '../Loader';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* fixme: Should contain an input[type=checkbox]
|
|
11
|
-
*/
|
|
12
8
|
var Toggle = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
13
9
|
var _props$as = props.as,
|
|
14
10
|
Component = _props$as === void 0 ? 'span' : _props$as,
|
|
@@ -21,7 +17,7 @@ var Toggle = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
21
17
|
checkedChildren = props.checkedChildren,
|
|
22
18
|
unCheckedChildren = props.unCheckedChildren,
|
|
23
19
|
_props$classPrefix = props.classPrefix,
|
|
24
|
-
classPrefix = _props$classPrefix === void 0 ? '
|
|
20
|
+
classPrefix = _props$classPrefix === void 0 ? 'toggle' : _props$classPrefix,
|
|
25
21
|
checkedProp = props.checked,
|
|
26
22
|
defaultChecked = props.defaultChecked,
|
|
27
23
|
size = props.size,
|
|
@@ -29,6 +25,8 @@ var Toggle = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
29
25
|
onChange = props.onChange,
|
|
30
26
|
rest = _objectWithoutPropertiesLoose(props, ["as", "disabled", "readOnly", "loading", "plaintext", "className", "checkedChildren", "unCheckedChildren", "classPrefix", "checked", "defaultChecked", "size", "locale", "onChange"]);
|
|
31
27
|
|
|
28
|
+
var inputRef = useRef();
|
|
29
|
+
|
|
32
30
|
var _useControlled = useControlled(checkedProp, defaultChecked),
|
|
33
31
|
checked = _useControlled[0],
|
|
34
32
|
setChecked = _useControlled[1];
|
|
@@ -48,48 +46,49 @@ var Toggle = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
48
46
|
}));
|
|
49
47
|
var inner = checked ? checkedChildren : unCheckedChildren;
|
|
50
48
|
var label = checked ? locale.on : locale.off;
|
|
51
|
-
var
|
|
49
|
+
var handleInputChange = useCallback(function (e) {
|
|
52
50
|
if (disabled || readOnly) {
|
|
53
51
|
return;
|
|
54
52
|
}
|
|
55
53
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
if (event.key !== ' ') {
|
|
61
|
-
return;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
handleChange(event);
|
|
65
|
-
event.preventDefault();
|
|
66
|
-
}, [handleChange]);
|
|
54
|
+
var checked = e.target.checked;
|
|
55
|
+
setChecked(checked);
|
|
56
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(checked, e);
|
|
57
|
+
}, [disabled, readOnly, setChecked, onChange]);
|
|
67
58
|
|
|
68
59
|
if (plaintext) {
|
|
69
60
|
return /*#__PURE__*/React.createElement(Plaintext, null, inner || label);
|
|
70
61
|
}
|
|
71
62
|
|
|
72
|
-
return /*#__PURE__*/React.createElement(
|
|
63
|
+
return /*#__PURE__*/React.createElement("label", _extends({
|
|
64
|
+
ref: ref,
|
|
65
|
+
className: classes
|
|
66
|
+
}, rest), /*#__PURE__*/React.createElement("input", {
|
|
67
|
+
ref: inputRef,
|
|
68
|
+
type: "checkbox",
|
|
69
|
+
checked: checked,
|
|
70
|
+
disabled: disabled,
|
|
71
|
+
readOnly: readOnly,
|
|
72
|
+
onChange: handleInputChange,
|
|
73
|
+
className: prefix('input'),
|
|
73
74
|
role: "switch",
|
|
74
75
|
"aria-checked": checked,
|
|
75
76
|
"aria-disabled": disabled,
|
|
76
77
|
"aria-label": typeof inner === 'string' ? inner : label,
|
|
77
|
-
"aria-busy": loading || undefined
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
className: classes,
|
|
82
|
-
onClick: handleChange,
|
|
83
|
-
onKeyDown: handleKeyDown
|
|
84
|
-
}), /*#__PURE__*/React.createElement("span", {
|
|
78
|
+
"aria-busy": loading || undefined
|
|
79
|
+
}), /*#__PURE__*/React.createElement(Component, {
|
|
80
|
+
className: prefix('presentation')
|
|
81
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
85
82
|
className: prefix('inner')
|
|
86
83
|
}, inner), loading && /*#__PURE__*/React.createElement(Loader, {
|
|
87
84
|
className: prefix('loader')
|
|
88
|
-
}));
|
|
85
|
+
})));
|
|
89
86
|
});
|
|
90
87
|
Toggle.displayName = 'Toggle';
|
|
91
88
|
Toggle.propTypes = {
|
|
92
89
|
disabled: PropTypes.bool,
|
|
90
|
+
readOnly: PropTypes.bool,
|
|
91
|
+
plaintext: PropTypes.bool,
|
|
93
92
|
checked: PropTypes.bool,
|
|
94
93
|
defaultChecked: PropTypes.bool,
|
|
95
94
|
checkedChildren: PropTypes.node,
|
|
@@ -97,6 +96,12 @@ Toggle.propTypes = {
|
|
|
97
96
|
loading: PropTypes.bool,
|
|
98
97
|
classPrefix: PropTypes.string,
|
|
99
98
|
className: PropTypes.string,
|
|
100
|
-
onChange: PropTypes.func
|
|
99
|
+
onChange: PropTypes.func,
|
|
100
|
+
as: PropTypes.elementType,
|
|
101
|
+
size: PropTypes.oneOf(['sm', 'md', 'lg']),
|
|
102
|
+
locale: PropTypes.shape({
|
|
103
|
+
on: PropTypes.string,
|
|
104
|
+
off: PropTypes.string
|
|
105
|
+
})
|
|
101
106
|
};
|
|
102
107
|
export default Toggle;
|
package/esm/Tree/Tree.d.ts
CHANGED
|
@@ -23,7 +23,7 @@ export interface TreeDragProps<ItemDataType = Record<string, any>> {
|
|
|
23
23
|
/** Whether the node can be dragged */
|
|
24
24
|
draggable?: boolean;
|
|
25
25
|
/** Called when scrolling */
|
|
26
|
-
onScroll?: (event: React.SyntheticEvent
|
|
26
|
+
onScroll?: (event: React.SyntheticEvent) => void;
|
|
27
27
|
/** Called when node drag start */
|
|
28
28
|
onDragStart?: (nodeData: ItemDataType, e: React.DragEvent) => void;
|
|
29
29
|
/** Called when node drag enter */
|
|
@@ -61,7 +61,7 @@ export interface TreeBaseProps<ValueType = string | number, ItemDataType = Recor
|
|
|
61
61
|
/** Callback function for data change */
|
|
62
62
|
onExpand?: (expandItemValues: ItemDataType[], activeNode: ItemDataType, concat: (data: ItemDataType[], children: React.ReactNode) => ItemDataType[]) => void;
|
|
63
63
|
/** Callback function after selecting tree node */
|
|
64
|
-
onSelect?: (activeNode: ItemDataType, value: ValueType, event: React.SyntheticEvent
|
|
64
|
+
onSelect?: (activeNode: ItemDataType, value: ValueType, event: React.SyntheticEvent) => void;
|
|
65
65
|
/** Custom Render tree Node */
|
|
66
66
|
renderTreeNode?: (nodeData: ItemDataType) => React.ReactNode;
|
|
67
67
|
/** Custom Render icon */
|
|
@@ -69,7 +69,7 @@ export interface TreeBaseProps<ValueType = string | number, ItemDataType = Recor
|
|
|
69
69
|
/** callback fired when search */
|
|
70
70
|
onSearch?: (searchKeyword: string, event: React.KeyboardEvent<HTMLInputElement>) => void;
|
|
71
71
|
/** Called when clean */
|
|
72
|
-
onClean?: (event: React.SyntheticEvent
|
|
72
|
+
onClean?: (event: React.SyntheticEvent) => void;
|
|
73
73
|
/** Custom search rules. */
|
|
74
74
|
searchBy?: (keyword: string, label: React.ReactNode, item: any) => boolean;
|
|
75
75
|
/** Customizing the Rendering Menu list */
|
|
@@ -22,7 +22,7 @@ export interface TreeNodeProps extends WithAsProps {
|
|
|
22
22
|
classPrefix?: string;
|
|
23
23
|
style?: React.CSSProperties;
|
|
24
24
|
onExpand?: (nodeData: any) => void;
|
|
25
|
-
onSelect?: (nodeData: any, event: React.SyntheticEvent
|
|
25
|
+
onSelect?: (nodeData: any, event: React.SyntheticEvent) => void;
|
|
26
26
|
onRenderTreeIcon?: (nodeData: any) => React.ReactNode;
|
|
27
27
|
onRenderTreeNode?: (nodeData: any) => React.ReactNode;
|
|
28
28
|
onDragStart?: (data: any, event: React.DragEvent<any>) => void;
|
|
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
3
|
import React, { forwardRef, useCallback, useContext } from 'react';
|
|
4
4
|
import PropTypes from 'prop-types';
|
|
5
|
-
import
|
|
5
|
+
import hasClass from 'dom-lib/hasClass';
|
|
6
6
|
import ArrowDown from '@rsuite/icons/legacy/ArrowDown';
|
|
7
7
|
import Spinner from '@rsuite/icons/legacy/Spinner';
|
|
8
8
|
import TreeContext from '../Tree/TreeContext';
|
|
@@ -22,7 +22,7 @@ export interface TreePickerProps<T = number | string> extends TreeBaseProps<T, I
|
|
|
22
22
|
/** Custom render selected items */
|
|
23
23
|
renderValue?: (value: T, selectedItems: ItemDataType, selectedElement: React.ReactNode) => React.ReactNode;
|
|
24
24
|
/** Called when scrolling */
|
|
25
|
-
onScroll?: (event: React.SyntheticEvent
|
|
25
|
+
onScroll?: (event: React.SyntheticEvent) => void;
|
|
26
26
|
}
|
|
27
27
|
declare const TreePicker: PickerComponent<TreePickerProps>;
|
|
28
28
|
export default TreePicker;
|
|
@@ -82,13 +82,13 @@ export interface UploaderProps extends WithAsProps {
|
|
|
82
82
|
/** In the file list, for uploading failed files, click the callback function to upload */
|
|
83
83
|
onReupload?: (file: FileType) => void;
|
|
84
84
|
/** In the file list, click the callback function for the uploaded file */
|
|
85
|
-
onPreview?: (file: FileType, event: React.SyntheticEvent
|
|
85
|
+
onPreview?: (file: FileType, event: React.SyntheticEvent) => void;
|
|
86
86
|
/** Upload callback function with erro */
|
|
87
|
-
onError?: (status: any, file: FileType, event: React.SyntheticEvent
|
|
87
|
+
onError?: (status: any, file: FileType, event: React.SyntheticEvent, xhr: XMLHttpRequest) => void;
|
|
88
88
|
/** callback function after successful upload */
|
|
89
|
-
onSuccess?: (response: any, file: FileType, event: React.SyntheticEvent
|
|
89
|
+
onSuccess?: (response: any, file: FileType, event: React.SyntheticEvent, xhr: XMLHttpRequest) => void;
|
|
90
90
|
/** Callback functions that upload progress change */
|
|
91
|
-
onProgress?: (percent: number, file: FileType, event: React.SyntheticEvent
|
|
91
|
+
onProgress?: (percent: number, file: FileType, event: React.SyntheticEvent, xhr: XMLHttpRequest) => void;
|
|
92
92
|
/** In the file list, click the callback function to delete a file */
|
|
93
93
|
onRemove?: (file: FileType) => void;
|
|
94
94
|
/** Custom render file information */
|
package/esm/locales/fa_IR.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import faIR from 'date-fns/locale/fa-IR';
|
|
3
3
|
var Calendar = {
|
|
4
|
-
sunday: '
|
|
5
|
-
monday: '
|
|
6
|
-
tuesday: '
|
|
7
|
-
wednesday: '
|
|
8
|
-
thursday: '
|
|
9
|
-
friday: '
|
|
10
|
-
saturday: '
|
|
11
|
-
ok: '
|
|
4
|
+
sunday: 'ی',
|
|
5
|
+
monday: 'د',
|
|
6
|
+
tuesday: 'س',
|
|
7
|
+
wednesday: 'چ',
|
|
8
|
+
thursday: 'پ',
|
|
9
|
+
friday: 'ج',
|
|
10
|
+
saturday: 'ش',
|
|
11
|
+
ok: 'تایید',
|
|
12
12
|
today: 'امروز',
|
|
13
13
|
yesterday: 'دیروز',
|
|
14
14
|
hours: 'ساعت',
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// from http://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser
|
|
2
|
-
import canUseDOM from 'dom-lib/
|
|
2
|
+
import canUseDOM from 'dom-lib/canUseDOM'; // Internet Explorer 6-11
|
|
3
3
|
|
|
4
4
|
export var isIE = function isIE() {
|
|
5
5
|
return canUseDOM && /MSIE |Trident\/|Edge\//.test(window.navigator.userAgent);
|
package/esm/utils/index.d.ts
CHANGED
|
@@ -39,3 +39,4 @@ export { default as useEventCallback } from './useEventCallback';
|
|
|
39
39
|
export { default as useUpdatedRef } from './useUpdatedRef';
|
|
40
40
|
export { default as useWillUnmount } from './useWillUnmount';
|
|
41
41
|
export { default as useUpdateEffect } from './useUpdateEffect';
|
|
42
|
+
export { default as useIsMounted } from './useIsMounted';
|
package/esm/utils/index.js
CHANGED
|
@@ -41,4 +41,5 @@ export { default as stringToObject } from './stringToObject';
|
|
|
41
41
|
export { default as useEventCallback } from './useEventCallback';
|
|
42
42
|
export { default as useUpdatedRef } from './useUpdatedRef';
|
|
43
43
|
export { default as useWillUnmount } from './useWillUnmount';
|
|
44
|
-
export { default as useUpdateEffect } from './useUpdateEffect';
|
|
44
|
+
export { default as useUpdateEffect } from './useUpdateEffect';
|
|
45
|
+
export { default as useIsMounted } from './useIsMounted';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import requestAnimationFramePolyfill from 'dom-lib/
|
|
1
|
+
import scrollTop from 'dom-lib/scrollTop';
|
|
2
|
+
import requestAnimationFramePolyfill from 'dom-lib/requestAnimationFramePolyfill';
|
|
3
3
|
export default function scrollTopAnimation(target, nextTop, animation, callback) {
|
|
4
4
|
if (animation === void 0) {
|
|
5
5
|
animation = true;
|
package/esm/utils/treeUtils.d.ts
CHANGED
|
@@ -210,7 +210,7 @@ interface TreeSearchProps {
|
|
|
210
210
|
searchKeyword: string;
|
|
211
211
|
data: ItemDataType[];
|
|
212
212
|
searchBy: (keyword: any, label: any, item: any) => boolean;
|
|
213
|
-
callback?: (keyword: string, data: ItemDataType[], event: React.SyntheticEvent
|
|
213
|
+
callback?: (keyword: string, data: ItemDataType[], event: React.SyntheticEvent) => void;
|
|
214
214
|
}
|
|
215
215
|
/**
|
|
216
216
|
* A hook that handles tree search filter options
|
|
@@ -221,7 +221,7 @@ export declare function useTreeSearch(props: TreeSearchProps): {
|
|
|
221
221
|
filteredData: ItemDataType[];
|
|
222
222
|
setFilteredData: (data: ItemDataType[], searchKeyword: string) => void;
|
|
223
223
|
setSearchKeyword: React.Dispatch<React.SetStateAction<string>>;
|
|
224
|
-
handleSearch: (searchKeyword: string, event: React.SyntheticEvent
|
|
224
|
+
handleSearch: (searchKeyword: string, event: React.SyntheticEvent) => void;
|
|
225
225
|
};
|
|
226
226
|
export declare function useGetTreeNodeChildren(treeData: ItemDataType[], valueKey: string, childrenKey: string): {
|
|
227
227
|
data: ItemDataType[];
|
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* @param eventTarget The target to listen for events on
|
|
6
6
|
* @param listener An event handler
|
|
7
7
|
*/
|
|
8
|
-
export default function useElementResize(eventTarget:
|
|
8
|
+
export default function useElementResize(eventTarget: Element | (() => Element), listener: ResizeObserverCallback): void;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { useEffect } from 'react';
|
|
2
|
-
import
|
|
1
|
+
import { useEffect, useRef } from 'react';
|
|
2
|
+
import { ResizeObserver } from '@juggle/resize-observer';
|
|
3
3
|
/**
|
|
4
4
|
* Attach the event handler directly to the specified DOM element,
|
|
5
5
|
* and it will be triggered when the size of the DOM element is changed.
|
|
@@ -9,11 +9,18 @@ import bindElementResize, { unbind } from 'element-resize-event';
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
export default function useElementResize(eventTarget, listener) {
|
|
12
|
+
var resizeObserver = useRef();
|
|
12
13
|
useEffect(function () {
|
|
13
|
-
|
|
14
|
-
|
|
14
|
+
if (!resizeObserver.current) {
|
|
15
|
+
var target = typeof eventTarget === 'function' ? eventTarget() : eventTarget;
|
|
16
|
+
resizeObserver.current = new ResizeObserver(listener);
|
|
17
|
+
resizeObserver.current.observe(target);
|
|
18
|
+
}
|
|
19
|
+
|
|
15
20
|
return function () {
|
|
16
|
-
|
|
21
|
+
var _resizeObserver$curre;
|
|
22
|
+
|
|
23
|
+
(_resizeObserver$curre = resizeObserver.current) === null || _resizeObserver$curre === void 0 ? void 0 : _resizeObserver$curre.disconnect();
|
|
17
24
|
};
|
|
18
25
|
}, [eventTarget, listener]);
|
|
19
26
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { useCallback, useEffect, useRef } from 'react';
|
|
2
|
+
|
|
3
|
+
function useIsMounted() {
|
|
4
|
+
var isMounted = useRef(false);
|
|
5
|
+
useEffect(function () {
|
|
6
|
+
isMounted.current = true;
|
|
7
|
+
return function () {
|
|
8
|
+
isMounted.current = false;
|
|
9
|
+
};
|
|
10
|
+
}, []);
|
|
11
|
+
return useCallback(function () {
|
|
12
|
+
return isMounted.current;
|
|
13
|
+
}, []);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export default useIsMounted;
|
package/esm/utils/usePortal.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useRef, useEffect, useCallback } from 'react';
|
|
2
2
|
import { createPortal } from 'react-dom';
|
|
3
|
-
import
|
|
3
|
+
import canUseDOM from 'dom-lib/canUseDOM';
|
|
4
4
|
|
|
5
5
|
function usePortal(props) {
|
|
6
6
|
if (props === void 0) {
|
|
@@ -10,7 +10,7 @@ function usePortal(props) {
|
|
|
10
10
|
var _props = props,
|
|
11
11
|
id = _props.id,
|
|
12
12
|
container = _props.container;
|
|
13
|
-
var rootElemRef = useRef(
|
|
13
|
+
var rootElemRef = useRef(canUseDOM ? document.body : null);
|
|
14
14
|
useEffect(function () {
|
|
15
15
|
var containerElement = typeof container === 'function' ? container() : container; // Look for existing target dom element to append to
|
|
16
16
|
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { useEffect, useCallback } from 'react';
|
|
2
|
-
import
|
|
2
|
+
import contains from 'dom-lib/contains';
|
|
3
|
+
import ownerDocument from 'dom-lib/ownerDocument';
|
|
4
|
+
import on from 'dom-lib/on';
|
|
3
5
|
import { getDOMNode, KEY_VALUES } from './';
|
|
4
6
|
|
|
5
7
|
function isLeftClickEvent(event) {
|
|
@@ -31,12 +33,12 @@ function useRootClose(onRootClose, _ref) {
|
|
|
31
33
|
var triggerElement = getDOMNode(triggerTarget);
|
|
32
34
|
var overlayElement = getDOMNode(overlayTarget); // Check if the clicked element is a trigger.
|
|
33
35
|
|
|
34
|
-
if (triggerElement &&
|
|
36
|
+
if (triggerElement && contains(triggerElement, event.target)) {
|
|
35
37
|
return;
|
|
36
38
|
} // Check if the clicked element is a overlay.
|
|
37
39
|
|
|
38
40
|
|
|
39
|
-
if (overlayElement &&
|
|
41
|
+
if (overlayElement && contains(overlayElement, event.target)) {
|
|
40
42
|
return;
|
|
41
43
|
}
|
|
42
44
|
|
|
@@ -49,9 +51,9 @@ function useRootClose(onRootClose, _ref) {
|
|
|
49
51
|
useEffect(function () {
|
|
50
52
|
var currentTarget = getDOMNode(triggerTarget);
|
|
51
53
|
if (disabled || !currentTarget) return;
|
|
52
|
-
var doc =
|
|
53
|
-
var onDocumentMouseDownListener =
|
|
54
|
-
var onDocumentKeyupListener =
|
|
54
|
+
var doc = ownerDocument(currentTarget);
|
|
55
|
+
var onDocumentMouseDownListener = on(doc, 'mousedown', handleDocumentMouseDown, true);
|
|
56
|
+
var onDocumentKeyupListener = on(doc, 'keyup', handleDocumentKeyUp);
|
|
55
57
|
return function () {
|
|
56
58
|
onDocumentMouseDownListener === null || onDocumentMouseDownListener === void 0 ? void 0 : onDocumentMouseDownListener.off();
|
|
57
59
|
onDocumentKeyupListener === null || onDocumentKeyupListener === void 0 ? void 0 : onDocumentKeyupListener.off();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rsuite",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.2.3",
|
|
4
4
|
"description": "A suite of react components",
|
|
5
5
|
"main": "cjs/index.js",
|
|
6
6
|
"module": "esm/index.js",
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"@babel/runtime": "^7.8.4",
|
|
28
|
+
"@juggle/resize-observer": "^3.3.1",
|
|
28
29
|
"@rsuite/icons": "^1.0.2",
|
|
29
30
|
"@types/chai": "^4.2.18",
|
|
30
31
|
"@types/lodash": "^4.14.134",
|
|
@@ -32,13 +33,12 @@
|
|
|
32
33
|
"@types/react-virtualized": "^9.21.11",
|
|
33
34
|
"classnames": "^2.3.1",
|
|
34
35
|
"date-fns": "^2.13.0",
|
|
35
|
-
"dom-lib": "^
|
|
36
|
-
"element-resize-event": "^3.0.6",
|
|
36
|
+
"dom-lib": "^3.0.0",
|
|
37
37
|
"lodash": "^4.17.11",
|
|
38
38
|
"prop-types": "^15.7.2",
|
|
39
39
|
"react-virtualized": "^9.22.3",
|
|
40
|
-
"rsuite-table": "^5.
|
|
41
|
-
"schema-typed": "^2.0.
|
|
40
|
+
"rsuite-table": "^5.2.1",
|
|
41
|
+
"schema-typed": "^2.0.2"
|
|
42
42
|
},
|
|
43
43
|
"peerDependencies": {
|
|
44
44
|
"react": ">=16.8.0",
|
|
@@ -1353,7 +1353,16 @@ module.exports = {
|
|
|
1353
1353
|
* @param colorNumber
|
|
1354
1354
|
*/
|
|
1355
1355
|
functions.add('palette', function (color, colorNumber) {
|
|
1356
|
-
const
|
|
1356
|
+
const {
|
|
1357
|
+
rgb: [r, g, b],
|
|
1358
|
+
alpha: a
|
|
1359
|
+
} = color;
|
|
1360
|
+
const hsv = tinycolor({
|
|
1361
|
+
r,
|
|
1362
|
+
g,
|
|
1363
|
+
b,
|
|
1364
|
+
a
|
|
1365
|
+
}).toHsv();
|
|
1357
1366
|
const index = COLOR_NUMBER_SET.indexOf('' + colorNumber.value);
|
|
1358
1367
|
if (index === -1 || index === PRIMARY_INDEX) {
|
|
1359
1368
|
return less.color(color.rgb);
|