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
|
@@ -29,6 +29,8 @@ var _NavContext = _interopRequireDefault(require("../Nav/NavContext"));
|
|
|
29
29
|
|
|
30
30
|
var _DropdownContext = _interopRequireDefault(require("../Dropdown/DropdownContext"));
|
|
31
31
|
|
|
32
|
+
var _useRenderDropdownItem = require("../Dropdown/useRenderDropdownItem");
|
|
33
|
+
|
|
32
34
|
/**
|
|
33
35
|
* Tree View Node
|
|
34
36
|
* @see https://www.w3.org/TR/wai-aria-practices-1.2/#TreeView
|
|
@@ -78,34 +80,39 @@ var SidenavDropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props
|
|
|
78
80
|
var menuitemEventHandlers = {
|
|
79
81
|
onClick: (0, _utils.createChainedFunction)(handleClick, onClick)
|
|
80
82
|
};
|
|
83
|
+
var renderDropdownItem = (0, _useRenderDropdownItem.useRenderDropdownItem)(Component);
|
|
81
84
|
|
|
82
85
|
if (divider) {
|
|
83
|
-
return
|
|
86
|
+
return renderDropdownItem((0, _extends2.default)({
|
|
84
87
|
ref: ref,
|
|
85
|
-
role:
|
|
88
|
+
role: 'separator',
|
|
86
89
|
style: style,
|
|
87
90
|
className: merge(prefix('divider'), className)
|
|
88
91
|
}, rest));
|
|
89
92
|
}
|
|
90
93
|
|
|
91
94
|
if (panel) {
|
|
92
|
-
return
|
|
95
|
+
return renderDropdownItem((0, _extends2.default)({
|
|
93
96
|
ref: ref,
|
|
94
|
-
role:
|
|
97
|
+
role: 'none presentation',
|
|
95
98
|
style: style,
|
|
96
99
|
className: merge(prefix('panel'), className)
|
|
97
|
-
}, rest
|
|
100
|
+
}, rest, {
|
|
101
|
+
children: children
|
|
102
|
+
}));
|
|
98
103
|
}
|
|
99
104
|
|
|
100
|
-
return
|
|
105
|
+
return renderDropdownItem((0, _extends2.default)({
|
|
101
106
|
ref: ref
|
|
102
107
|
}, rest, {
|
|
103
108
|
style: style,
|
|
104
109
|
className: classes,
|
|
105
|
-
|
|
106
|
-
}, menuitemEventHandlers
|
|
107
|
-
|
|
108
|
-
|
|
110
|
+
'aria-current': selected || undefined
|
|
111
|
+
}, menuitemEventHandlers, {
|
|
112
|
+
children: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, icon && /*#__PURE__*/_react.default.cloneElement(icon, {
|
|
113
|
+
className: prefix('menu-icon')
|
|
114
|
+
}), children, /*#__PURE__*/_react.default.createElement(_Ripple.default, null))
|
|
115
|
+
}), _SafeAnchor.default);
|
|
109
116
|
});
|
|
110
117
|
|
|
111
118
|
SidenavDropdownItem.displayName = 'Sidenav.Dropdown.Item';
|
|
@@ -15,7 +15,7 @@ export interface SidenavDropdownMenuProps<T = any> extends WithAsProps, Omit<Rea
|
|
|
15
15
|
/** Whether the submenu is expanded, used in Sidenav. */
|
|
16
16
|
expanded?: boolean;
|
|
17
17
|
/** Select the callback function for the current option */
|
|
18
|
-
onSelect?: (eventKey: T, event: React.SyntheticEvent
|
|
18
|
+
onSelect?: (eventKey: T, event: React.SyntheticEvent) => void;
|
|
19
19
|
title?: React.ReactNode;
|
|
20
20
|
}
|
|
21
21
|
/**
|
package/cjs/Slider/Graduated.js
CHANGED
|
@@ -77,7 +77,7 @@ var Graduated = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
77
77
|
return /*#__PURE__*/_react.default.createElement(Component, {
|
|
78
78
|
ref: ref,
|
|
79
79
|
className: classes
|
|
80
|
-
}, /*#__PURE__*/_react.default.createElement("
|
|
80
|
+
}, /*#__PURE__*/_react.default.createElement("ol", null, graduatedItems));
|
|
81
81
|
});
|
|
82
82
|
|
|
83
83
|
Graduated.displayName = 'Graduated';
|
package/cjs/Slider/Handle.js
CHANGED
|
@@ -15,7 +15,11 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
15
15
|
|
|
16
16
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
17
17
|
|
|
18
|
-
var
|
|
18
|
+
var _DOMMouseMoveTracker = _interopRequireDefault(require("dom-lib/DOMMouseMoveTracker"));
|
|
19
|
+
|
|
20
|
+
var _addStyle = _interopRequireDefault(require("dom-lib/addStyle"));
|
|
21
|
+
|
|
22
|
+
var _getWidth = _interopRequireDefault(require("dom-lib/getWidth"));
|
|
19
23
|
|
|
20
24
|
var _Tooltip = _interopRequireDefault(require("../Tooltip"));
|
|
21
25
|
|
|
@@ -56,7 +60,7 @@ var Handle = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
56
60
|
|
|
57
61
|
var rootRef = (0, _react.useRef)();
|
|
58
62
|
var horizontalKey = rtl ? 'right' : 'left';
|
|
59
|
-
var direction = vertical ? '
|
|
63
|
+
var direction = vertical ? 'bottom' : horizontalKey;
|
|
60
64
|
var styles = (0, _extends3.default)({}, style, (_extends2 = {}, _extends2[direction] = position + "%", _extends2));
|
|
61
65
|
|
|
62
66
|
var _useClassNames = (0, _utils.useClassNames)(classPrefix),
|
|
@@ -78,8 +82,8 @@ var Handle = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
78
82
|
var tooltipElement = tooltipRef.current;
|
|
79
83
|
|
|
80
84
|
if (tooltip && tooltipElement) {
|
|
81
|
-
var width = (0,
|
|
82
|
-
(0,
|
|
85
|
+
var width = (0, _getWidth.default)(tooltipElement);
|
|
86
|
+
(0, _addStyle.default)(tooltipElement, 'left', "-" + width / 2 + "px");
|
|
83
87
|
}
|
|
84
88
|
}, [tooltip]);
|
|
85
89
|
var handleDragMove = (0, _react.useCallback)(function (_deltaX, _deltaY, event) {
|
|
@@ -96,7 +100,7 @@ var Handle = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
96
100
|
onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(event, rootRef.current.dataset);
|
|
97
101
|
}, [onDragEnd, releaseMouseMoves]);
|
|
98
102
|
var getMouseMoveTracker = (0, _react.useCallback)(function () {
|
|
99
|
-
return mouseMoveTracker.current || new
|
|
103
|
+
return mouseMoveTracker.current || new _DOMMouseMoveTracker.default(handleDragMove, handleDragEnd, document.body);
|
|
100
104
|
}, [handleDragEnd, handleDragMove]);
|
|
101
105
|
var handleMouseDown = (0, _react.useCallback)(function (event) {
|
|
102
106
|
var _mouseMoveTracker$cur3, _rootRef$current;
|
|
@@ -135,6 +139,7 @@ var Handle = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
135
139
|
ref: tooltipRef,
|
|
136
140
|
className: merge(prefix('tooltip'), 'placement-top')
|
|
137
141
|
}, renderTooltip ? renderTooltip(value) : value), /*#__PURE__*/_react.default.createElement(_Input.default, (0, _extends3.default)({
|
|
142
|
+
tabIndex: -1,
|
|
138
143
|
value: value
|
|
139
144
|
}, rest)), children);
|
|
140
145
|
});
|
|
@@ -35,7 +35,7 @@ var ProgressBar = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
35
35
|
|
|
36
36
|
var sizeKey = vertical ? 'height' : 'width';
|
|
37
37
|
var dirKey = rtl ? 'right' : 'left';
|
|
38
|
-
var startKey = vertical ? '
|
|
38
|
+
var startKey = vertical ? 'bottom' : dirKey;
|
|
39
39
|
var styles = (0, _extends3.default)({}, style, (_extends2 = {}, _extends2[startKey] = start + "%", _extends2[sizeKey] = end - start + "%", _extends2));
|
|
40
40
|
var classes = merge(className, withClassPrefix());
|
|
41
41
|
return /*#__PURE__*/_react.default.createElement(Component, {
|
package/cjs/Slider/Slider.js
CHANGED
|
@@ -15,7 +15,11 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
15
15
|
|
|
16
16
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
17
17
|
|
|
18
|
-
var
|
|
18
|
+
var _getWidth = _interopRequireDefault(require("dom-lib/getWidth"));
|
|
19
|
+
|
|
20
|
+
var _getHeight = _interopRequireDefault(require("dom-lib/getHeight"));
|
|
21
|
+
|
|
22
|
+
var _getOffset = _interopRequireDefault(require("dom-lib/getOffset"));
|
|
19
23
|
|
|
20
24
|
var _ProgressBar = _interopRequireDefault(require("./ProgressBar"));
|
|
21
25
|
|
|
@@ -129,11 +133,11 @@ var Slider = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
129
133
|
}, [max, min, step]); // Get the height of the progress bar
|
|
130
134
|
|
|
131
135
|
var getBarHeight = (0, _react.useCallback)(function () {
|
|
132
|
-
return barRef.current ? (0,
|
|
136
|
+
return barRef.current ? (0, _getHeight.default)(barRef.current) : 0;
|
|
133
137
|
}, []); // Get the width of the progress bar
|
|
134
138
|
|
|
135
139
|
var getBarWidth = (0, _react.useCallback)(function () {
|
|
136
|
-
return barRef.current ? (0,
|
|
140
|
+
return barRef.current ? (0, _getWidth.default)(barRef.current) : 0;
|
|
137
141
|
}, []);
|
|
138
142
|
var getValueByOffset = (0, _react.useCallback)(function (offset) {
|
|
139
143
|
var value = 0;
|
|
@@ -157,8 +161,8 @@ var Slider = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
157
161
|
*/
|
|
158
162
|
|
|
159
163
|
var getValueByPosition = (0, _react.useCallback)(function (event) {
|
|
160
|
-
var barOffset = (0,
|
|
161
|
-
var offset = vertical ?
|
|
164
|
+
var barOffset = (0, _getOffset.default)(barRef.current);
|
|
165
|
+
var offset = vertical ? barOffset.top + barOffset.height - event.pageY : event.pageX - barOffset.left;
|
|
162
166
|
var offsetValue = rtl && !vertical ? barOffset.width - offset : offset;
|
|
163
167
|
return getValueByOffset(offsetValue) + min;
|
|
164
168
|
}, [getValueByOffset, min, rtl, vertical]);
|
package/cjs/Toggle/Toggle.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { WithAsProps, TypeAttributes } from '../@types/common';
|
|
2
|
+
import { WithAsProps, TypeAttributes, RsRefForwardingComponent } from '../@types/common';
|
|
3
3
|
import { ToggleLocale } from '../locales';
|
|
4
4
|
export interface ToggleProps extends WithAsProps {
|
|
5
5
|
/** Wheather to disabled toggle */
|
|
@@ -23,10 +23,7 @@ export interface ToggleProps extends WithAsProps {
|
|
|
23
23
|
/** Custom locale */
|
|
24
24
|
locale?: ToggleLocale;
|
|
25
25
|
/** Callback function when state changes */
|
|
26
|
-
onChange?: (checked: boolean, event: React.
|
|
26
|
+
onChange?: (checked: boolean, event: React.ChangeEvent<HTMLInputElement>) => void;
|
|
27
27
|
}
|
|
28
|
-
|
|
29
|
-
* fixme: Should contain an input[type=checkbox]
|
|
30
|
-
*/
|
|
31
|
-
declare const Toggle: React.ForwardRefExoticComponent<ToggleProps & React.RefAttributes<unknown>>;
|
|
28
|
+
declare const Toggle: RsRefForwardingComponent<'label', ToggleProps>;
|
|
32
29
|
export default Toggle;
|
package/cjs/Toggle/Toggle.js
CHANGED
|
@@ -21,9 +21,6 @@ var _Plaintext = _interopRequireDefault(require("../Plaintext"));
|
|
|
21
21
|
|
|
22
22
|
var _Loader = _interopRequireDefault(require("../Loader"));
|
|
23
23
|
|
|
24
|
-
/**
|
|
25
|
-
* fixme: Should contain an input[type=checkbox]
|
|
26
|
-
*/
|
|
27
24
|
var Toggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
28
25
|
var _props$as = props.as,
|
|
29
26
|
Component = _props$as === void 0 ? 'span' : _props$as,
|
|
@@ -36,13 +33,14 @@ var Toggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
36
33
|
checkedChildren = props.checkedChildren,
|
|
37
34
|
unCheckedChildren = props.unCheckedChildren,
|
|
38
35
|
_props$classPrefix = props.classPrefix,
|
|
39
|
-
classPrefix = _props$classPrefix === void 0 ? '
|
|
36
|
+
classPrefix = _props$classPrefix === void 0 ? 'toggle' : _props$classPrefix,
|
|
40
37
|
checkedProp = props.checked,
|
|
41
38
|
defaultChecked = props.defaultChecked,
|
|
42
39
|
size = props.size,
|
|
43
40
|
localeProp = props.locale,
|
|
44
41
|
onChange = props.onChange,
|
|
45
42
|
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "disabled", "readOnly", "loading", "plaintext", "className", "checkedChildren", "unCheckedChildren", "classPrefix", "checked", "defaultChecked", "size", "locale", "onChange"]);
|
|
43
|
+
var inputRef = (0, _react.useRef)();
|
|
46
44
|
|
|
47
45
|
var _useControlled = (0, _utils.useControlled)(checkedProp, defaultChecked),
|
|
48
46
|
checked = _useControlled[0],
|
|
@@ -63,49 +61,50 @@ var Toggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
63
61
|
}));
|
|
64
62
|
var inner = checked ? checkedChildren : unCheckedChildren;
|
|
65
63
|
var label = checked ? locale.on : locale.off;
|
|
66
|
-
var
|
|
64
|
+
var handleInputChange = (0, _react.useCallback)(function (e) {
|
|
67
65
|
if (disabled || readOnly) {
|
|
68
66
|
return;
|
|
69
67
|
}
|
|
70
68
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
if (event.key !== ' ') {
|
|
76
|
-
return;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
handleChange(event);
|
|
80
|
-
event.preventDefault();
|
|
81
|
-
}, [handleChange]);
|
|
69
|
+
var checked = e.target.checked;
|
|
70
|
+
setChecked(checked);
|
|
71
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(checked, e);
|
|
72
|
+
}, [disabled, readOnly, setChecked, onChange]);
|
|
82
73
|
|
|
83
74
|
if (plaintext) {
|
|
84
75
|
return /*#__PURE__*/_react.default.createElement(_Plaintext.default, null, inner || label);
|
|
85
76
|
}
|
|
86
77
|
|
|
87
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
78
|
+
return /*#__PURE__*/_react.default.createElement("label", (0, _extends2.default)({
|
|
79
|
+
ref: ref,
|
|
80
|
+
className: classes
|
|
81
|
+
}, rest), /*#__PURE__*/_react.default.createElement("input", {
|
|
82
|
+
ref: inputRef,
|
|
83
|
+
type: "checkbox",
|
|
84
|
+
checked: checked,
|
|
85
|
+
disabled: disabled,
|
|
86
|
+
readOnly: readOnly,
|
|
87
|
+
onChange: handleInputChange,
|
|
88
|
+
className: prefix('input'),
|
|
88
89
|
role: "switch",
|
|
89
90
|
"aria-checked": checked,
|
|
90
91
|
"aria-disabled": disabled,
|
|
91
92
|
"aria-label": typeof inner === 'string' ? inner : label,
|
|
92
|
-
"aria-busy": loading || undefined
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
className: classes,
|
|
97
|
-
onClick: handleChange,
|
|
98
|
-
onKeyDown: handleKeyDown
|
|
99
|
-
}), /*#__PURE__*/_react.default.createElement("span", {
|
|
93
|
+
"aria-busy": loading || undefined
|
|
94
|
+
}), /*#__PURE__*/_react.default.createElement(Component, {
|
|
95
|
+
className: prefix('presentation')
|
|
96
|
+
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
100
97
|
className: prefix('inner')
|
|
101
98
|
}, inner), loading && /*#__PURE__*/_react.default.createElement(_Loader.default, {
|
|
102
99
|
className: prefix('loader')
|
|
103
|
-
}));
|
|
100
|
+
})));
|
|
104
101
|
});
|
|
105
102
|
|
|
106
103
|
Toggle.displayName = 'Toggle';
|
|
107
104
|
Toggle.propTypes = {
|
|
108
105
|
disabled: _propTypes.default.bool,
|
|
106
|
+
readOnly: _propTypes.default.bool,
|
|
107
|
+
plaintext: _propTypes.default.bool,
|
|
109
108
|
checked: _propTypes.default.bool,
|
|
110
109
|
defaultChecked: _propTypes.default.bool,
|
|
111
110
|
checkedChildren: _propTypes.default.node,
|
|
@@ -113,7 +112,13 @@ Toggle.propTypes = {
|
|
|
113
112
|
loading: _propTypes.default.bool,
|
|
114
113
|
classPrefix: _propTypes.default.string,
|
|
115
114
|
className: _propTypes.default.string,
|
|
116
|
-
onChange: _propTypes.default.func
|
|
115
|
+
onChange: _propTypes.default.func,
|
|
116
|
+
as: _propTypes.default.elementType,
|
|
117
|
+
size: _propTypes.default.oneOf(['sm', 'md', 'lg']),
|
|
118
|
+
locale: _propTypes.default.shape({
|
|
119
|
+
on: _propTypes.default.string,
|
|
120
|
+
off: _propTypes.default.string
|
|
121
|
+
})
|
|
117
122
|
};
|
|
118
123
|
var _default = Toggle;
|
|
119
124
|
exports.default = _default;
|
package/cjs/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;
|
|
@@ -15,7 +15,7 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
15
15
|
|
|
16
16
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
17
17
|
|
|
18
|
-
var
|
|
18
|
+
var _hasClass = _interopRequireDefault(require("dom-lib/hasClass"));
|
|
19
19
|
|
|
20
20
|
var _ArrowDown = _interopRequireDefault(require("@rsuite/icons/legacy/ArrowDown"));
|
|
21
21
|
|
|
@@ -94,7 +94,7 @@ var TreeNode = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
94
94
|
}
|
|
95
95
|
|
|
96
96
|
if (event.target instanceof HTMLElement) {
|
|
97
|
-
if ((0,
|
|
97
|
+
if ((0, _hasClass.default)(event.target.parentNode, prefix('expand-icon-wrapper'))) {
|
|
98
98
|
return;
|
|
99
99
|
}
|
|
100
100
|
}
|
|
@@ -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/cjs/locales/fa_IR.js
CHANGED
|
@@ -10,14 +10,14 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
10
10
|
var _faIR = _interopRequireDefault(require("date-fns/locale/fa-IR"));
|
|
11
11
|
|
|
12
12
|
var Calendar = {
|
|
13
|
-
sunday: '
|
|
14
|
-
monday: '
|
|
15
|
-
tuesday: '
|
|
16
|
-
wednesday: '
|
|
17
|
-
thursday: '
|
|
18
|
-
friday: '
|
|
19
|
-
saturday: '
|
|
20
|
-
ok: '
|
|
13
|
+
sunday: 'ی',
|
|
14
|
+
monday: 'د',
|
|
15
|
+
tuesday: 'س',
|
|
16
|
+
wednesday: 'چ',
|
|
17
|
+
thursday: 'پ',
|
|
18
|
+
friday: 'ج',
|
|
19
|
+
saturday: 'ش',
|
|
20
|
+
ok: 'تایید',
|
|
21
21
|
today: 'امروز',
|
|
22
22
|
yesterday: 'دیروز',
|
|
23
23
|
hours: 'ساعت',
|
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
exports.__esModule = true;
|
|
6
6
|
exports.isEdge = exports.isIE11 = exports.isIE10 = exports.isIE = void 0;
|
|
7
7
|
|
|
8
|
-
var _canUseDOM = _interopRequireDefault(require("dom-lib/
|
|
8
|
+
var _canUseDOM = _interopRequireDefault(require("dom-lib/canUseDOM"));
|
|
9
9
|
|
|
10
10
|
// from http://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser
|
|
11
11
|
// Internet Explorer 6-11
|
package/cjs/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/cjs/utils/index.js
CHANGED
|
@@ -40,13 +40,14 @@ var _exportNames = {
|
|
|
40
40
|
useUpdatedRef: true,
|
|
41
41
|
useWillUnmount: true,
|
|
42
42
|
useUpdateEffect: true,
|
|
43
|
+
useIsMounted: true,
|
|
43
44
|
defaultClassPrefix: true,
|
|
44
45
|
getClassNamePrefix: true,
|
|
45
46
|
globalKey: true,
|
|
46
47
|
DateUtils: true,
|
|
47
48
|
TypeChecker: true
|
|
48
49
|
};
|
|
49
|
-
exports.TypeChecker = exports.DateUtils = exports.globalKey = exports.getClassNamePrefix = exports.defaultClassPrefix = exports.useUpdateEffect = exports.useWillUnmount = exports.useUpdatedRef = exports.useEventCallback = exports.stringToObject = exports.getSafeRegExpString = exports.useRootClose = exports.useControlled = exports.useTimeout = exports.createComponent = exports.usePortal = exports.useCustom = exports.useElementResize = exports.useEventListener = exports.useClassNames = exports.appendTooltip = exports.scrollTopAnimation = exports.reactToString = exports.composeFunctions = exports.shallowEqualArray = exports.shallowEqual = exports.mergeRefs = exports.getDOMNode = exports.placementPolyfill = exports.clone = exports.getDataGroupBy = exports.previewFile = exports.ajaxUpload = exports.tplTransform = exports.ReactChildren = exports.isOneOf = exports.createChainedFunction = exports.prefix = exports.guid = void 0;
|
|
50
|
+
exports.TypeChecker = exports.DateUtils = exports.globalKey = exports.getClassNamePrefix = exports.defaultClassPrefix = exports.useIsMounted = exports.useUpdateEffect = exports.useWillUnmount = exports.useUpdatedRef = exports.useEventCallback = exports.stringToObject = exports.getSafeRegExpString = exports.useRootClose = exports.useControlled = exports.useTimeout = exports.createComponent = exports.usePortal = exports.useCustom = exports.useElementResize = exports.useEventListener = exports.useClassNames = exports.appendTooltip = exports.scrollTopAnimation = exports.reactToString = exports.composeFunctions = exports.shallowEqualArray = exports.shallowEqual = exports.mergeRefs = exports.getDOMNode = exports.placementPolyfill = exports.clone = exports.getDataGroupBy = exports.previewFile = exports.ajaxUpload = exports.tplTransform = exports.ReactChildren = exports.isOneOf = exports.createChainedFunction = exports.prefix = exports.guid = void 0;
|
|
50
51
|
|
|
51
52
|
var _BrowserDetection = require("./BrowserDetection");
|
|
52
53
|
|
|
@@ -229,4 +230,8 @@ exports.useWillUnmount = _useWillUnmount.default;
|
|
|
229
230
|
|
|
230
231
|
var _useUpdateEffect = _interopRequireDefault(require("./useUpdateEffect"));
|
|
231
232
|
|
|
232
|
-
exports.useUpdateEffect = _useUpdateEffect.default;
|
|
233
|
+
exports.useUpdateEffect = _useUpdateEffect.default;
|
|
234
|
+
|
|
235
|
+
var _useIsMounted = _interopRequireDefault(require("./useIsMounted"));
|
|
236
|
+
|
|
237
|
+
exports.useIsMounted = _useIsMounted.default;
|
|
@@ -5,19 +5,19 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
exports.__esModule = true;
|
|
6
6
|
exports.default = scrollTopAnimation;
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _scrollTop = _interopRequireDefault(require("dom-lib/scrollTop"));
|
|
9
9
|
|
|
10
|
-
var _requestAnimationFramePolyfill = _interopRequireDefault(require("dom-lib/
|
|
10
|
+
var _requestAnimationFramePolyfill = _interopRequireDefault(require("dom-lib/requestAnimationFramePolyfill"));
|
|
11
11
|
|
|
12
12
|
function scrollTopAnimation(target, nextTop, animation, callback) {
|
|
13
13
|
if (animation === void 0) {
|
|
14
14
|
animation = true;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
var top = (0,
|
|
17
|
+
var top = (0, _scrollTop.default)(target);
|
|
18
18
|
|
|
19
19
|
var step = function step() {
|
|
20
|
-
(0,
|
|
20
|
+
(0, _scrollTop.default)(target, top > nextTop ? nextTop : top);
|
|
21
21
|
|
|
22
22
|
if (top <= nextTop) {
|
|
23
23
|
(0, _requestAnimationFramePolyfill.default)(step);
|
|
@@ -30,6 +30,6 @@ function scrollTopAnimation(target, nextTop, animation, callback) {
|
|
|
30
30
|
if (animation) {
|
|
31
31
|
(0, _requestAnimationFramePolyfill.default)(step);
|
|
32
32
|
} else {
|
|
33
|
-
(0,
|
|
33
|
+
(0, _scrollTop.default)(target, nextTop);
|
|
34
34
|
}
|
|
35
35
|
}
|
package/cjs/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,13 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
4
|
-
|
|
5
3
|
exports.__esModule = true;
|
|
6
4
|
exports.default = useElementResize;
|
|
7
5
|
|
|
8
6
|
var _react = require("react");
|
|
9
7
|
|
|
10
|
-
var
|
|
8
|
+
var _resizeObserver = require("@juggle/resize-observer");
|
|
11
9
|
|
|
12
10
|
/**
|
|
13
11
|
* Attach the event handler directly to the specified DOM element,
|
|
@@ -17,11 +15,18 @@ var _elementResizeEvent = _interopRequireWildcard(require("element-resize-event"
|
|
|
17
15
|
* @param listener An event handler
|
|
18
16
|
*/
|
|
19
17
|
function useElementResize(eventTarget, listener) {
|
|
18
|
+
var resizeObserver = (0, _react.useRef)();
|
|
20
19
|
(0, _react.useEffect)(function () {
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
if (!resizeObserver.current) {
|
|
21
|
+
var target = typeof eventTarget === 'function' ? eventTarget() : eventTarget;
|
|
22
|
+
resizeObserver.current = new _resizeObserver.ResizeObserver(listener);
|
|
23
|
+
resizeObserver.current.observe(target);
|
|
24
|
+
}
|
|
25
|
+
|
|
23
26
|
return function () {
|
|
24
|
-
|
|
27
|
+
var _resizeObserver$curre;
|
|
28
|
+
|
|
29
|
+
(_resizeObserver$curre = resizeObserver.current) === null || _resizeObserver$curre === void 0 ? void 0 : _resizeObserver$curre.disconnect();
|
|
25
30
|
};
|
|
26
31
|
}, [eventTarget, listener]);
|
|
27
32
|
}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
3
5
|
exports.__esModule = true;
|
|
4
6
|
exports.default = useEventListener;
|
|
5
7
|
|
|
6
8
|
var _react = require("react");
|
|
7
9
|
|
|
8
|
-
var
|
|
10
|
+
var _on = _interopRequireDefault(require("dom-lib/on"));
|
|
9
11
|
|
|
10
12
|
/**
|
|
11
13
|
* Attach the event handler directly to the specified DOM element.
|
|
@@ -22,7 +24,7 @@ function useEventListener(eventTarget, event, listener, capture) {
|
|
|
22
24
|
|
|
23
25
|
(0, _react.useEffect)(function () {
|
|
24
26
|
var target = typeof eventTarget === 'function' ? eventTarget() : eventTarget;
|
|
25
|
-
var controller = target ? (0,
|
|
27
|
+
var controller = target ? (0, _on.default)(target, event, listener, capture) : null;
|
|
26
28
|
return function () {
|
|
27
29
|
controller === null || controller === void 0 ? void 0 : controller.off();
|
|
28
30
|
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.default = void 0;
|
|
5
|
+
|
|
6
|
+
var _react = require("react");
|
|
7
|
+
|
|
8
|
+
function useIsMounted() {
|
|
9
|
+
var isMounted = (0, _react.useRef)(false);
|
|
10
|
+
(0, _react.useEffect)(function () {
|
|
11
|
+
isMounted.current = true;
|
|
12
|
+
return function () {
|
|
13
|
+
isMounted.current = false;
|
|
14
|
+
};
|
|
15
|
+
}, []);
|
|
16
|
+
return (0, _react.useCallback)(function () {
|
|
17
|
+
return isMounted.current;
|
|
18
|
+
}, []);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
var _default = useIsMounted;
|
|
22
|
+
exports.default = _default;
|
package/cjs/utils/usePortal.js
CHANGED
|
@@ -9,7 +9,7 @@ var _react = require("react");
|
|
|
9
9
|
|
|
10
10
|
var _reactDom = require("react-dom");
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _canUseDOM = _interopRequireDefault(require("dom-lib/canUseDOM"));
|
|
13
13
|
|
|
14
14
|
function usePortal(props) {
|
|
15
15
|
if (props === void 0) {
|
|
@@ -19,7 +19,7 @@ function usePortal(props) {
|
|
|
19
19
|
var _props = props,
|
|
20
20
|
id = _props.id,
|
|
21
21
|
container = _props.container;
|
|
22
|
-
var rootElemRef = (0, _react.useRef)(
|
|
22
|
+
var rootElemRef = (0, _react.useRef)(_canUseDOM.default ? document.body : null);
|
|
23
23
|
(0, _react.useEffect)(function () {
|
|
24
24
|
var containerElement = typeof container === 'function' ? container() : container; // Look for existing target dom element to append to
|
|
25
25
|
|