rsuite 5.23.3 → 5.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/Sidenav/styles/index.less +7 -2
- package/cjs/AutoComplete/AutoComplete.d.ts +2 -0
- package/cjs/AutoComplete/AutoComplete.js +4 -1
- package/cjs/Calendar/MonthDropdown.d.ts +1 -0
- package/cjs/Calendar/MonthDropdown.js +14 -10
- package/cjs/DatePicker/DatePicker.d.ts +5 -1
- package/cjs/DatePicker/DatePicker.js +17 -1
- package/cjs/Dropdown/Dropdown.d.ts +2 -0
- package/cjs/Dropdown/Dropdown.js +3 -0
- package/cjs/Dropdown/DropdownItem.d.ts +5 -1
- package/cjs/Dropdown/DropdownItem.js +7 -7
- package/cjs/Dropdown/DropdownSeparator.d.ts +14 -0
- package/cjs/Dropdown/DropdownSeparator.js +48 -0
- package/cjs/Sidenav/ExpandedSidenavDropdownMenu.js +3 -2
- package/cjs/utils/deprecatePropType.d.ts +9 -0
- package/cjs/utils/deprecatePropType.js +27 -0
- package/dist/rsuite-rtl.css +5 -3
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +5 -3
- package/dist/rsuite.js +18 -7
- package/dist/rsuite.js.map +1 -1
- package/dist/rsuite.min.css +1 -1
- package/dist/rsuite.min.css.map +1 -1
- package/dist/rsuite.min.js +1 -1
- package/dist/rsuite.min.js.map +1 -1
- package/esm/AutoComplete/AutoComplete.d.ts +2 -0
- package/esm/AutoComplete/AutoComplete.js +4 -1
- package/esm/Calendar/MonthDropdown.d.ts +1 -0
- package/esm/Calendar/MonthDropdown.js +12 -9
- package/esm/DatePicker/DatePicker.d.ts +5 -1
- package/esm/DatePicker/DatePicker.js +16 -1
- package/esm/Dropdown/Dropdown.d.ts +2 -0
- package/esm/Dropdown/Dropdown.js +2 -0
- package/esm/Dropdown/DropdownItem.d.ts +5 -1
- package/esm/Dropdown/DropdownItem.js +5 -7
- package/esm/Dropdown/DropdownSeparator.d.ts +14 -0
- package/esm/Dropdown/DropdownSeparator.js +35 -0
- package/esm/Sidenav/ExpandedSidenavDropdownMenu.js +3 -2
- package/esm/utils/deprecatePropType.d.ts +9 -0
- package/esm/utils/deprecatePropType.js +25 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
# [5.24.0](https://github.com/rsuite/rsuite/compare/v5.23.3...v5.24.0) (2022-12-30)
|
|
2
|
+
|
|
3
|
+
### Bug Fixes
|
|
4
|
+
|
|
5
|
+
- **AutoComplete:** fix AutoComplete size property not working ([#2990](https://github.com/rsuite/rsuite/issues/2990)) ([add665b](https://github.com/rsuite/rsuite/commit/add665b82b9d2cbd21e07576bf77f74e18991e21))
|
|
6
|
+
- **DatePicker:** fix inconsistency between month selectable state and ok button clickable state ([#2984](https://github.com/rsuite/rsuite/issues/2984)) ([70e6aba](https://github.com/rsuite/rsuite/commit/70e6aba0b7a3216c9f8b59b033826e55bebac1a1))
|
|
7
|
+
- **Sidenav:** fix Sidenav multilevel Nav.Menu arrow icon exception ([#2986](https://github.com/rsuite/rsuite/issues/2986)) ([87f6748](https://github.com/rsuite/rsuite/commit/87f67482b60eae4ed445246fe3e6ac9b0cad0385))
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
- **Dropdown:** add Dropdown.Separator component ([#2979](https://github.com/rsuite/rsuite/issues/2979)) ([db6fcbb](https://github.com/rsuite/rsuite/commit/db6fcbbd88961e3506f6b2d2146cf43717d1e1db))
|
|
12
|
+
|
|
1
13
|
## [5.23.3](https://github.com/rsuite/rsuite/compare/v5.23.2...v5.23.3) (2022-12-16)
|
|
2
14
|
|
|
3
15
|
### Bug Fixes
|
|
@@ -76,14 +76,19 @@
|
|
|
76
76
|
top: @sidenav-children-padding-vertical;
|
|
77
77
|
// width: auto;
|
|
78
78
|
// height: @sidenav-dropdown-toggle-caret-width;
|
|
79
|
-
transform: rotate(90deg);
|
|
79
|
+
// transform: rotate(90deg);
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
// Expanded submenu toggle icon
|
|
84
|
-
.rs-dropdown-item-expand
|
|
84
|
+
.rs-dropdown-item-expand-icon {
|
|
85
85
|
transform: rotate(270deg);
|
|
86
86
|
}
|
|
87
|
+
|
|
88
|
+
// Collapse submenu toggle icon
|
|
89
|
+
.rs-dropdown-item-collapse-icon {
|
|
90
|
+
transform: rotate(90deg);
|
|
91
|
+
}
|
|
87
92
|
}
|
|
88
93
|
|
|
89
94
|
.high-contrast-mode({
|
|
@@ -9,6 +9,8 @@ export interface AutoCompleteProps<T = ValueType> extends WithAsProps, FormContr
|
|
|
9
9
|
placement?: TypeAttributes.Placement;
|
|
10
10
|
/** When set to false, the Enter key selection function is invalid */
|
|
11
11
|
selectOnEnter?: boolean;
|
|
12
|
+
/** A component can have different sizes */
|
|
13
|
+
size?: TypeAttributes.Size;
|
|
12
14
|
/** Open the menu and control it */
|
|
13
15
|
open?: boolean;
|
|
14
16
|
/** Placeholder text */
|
|
@@ -52,6 +52,7 @@ var AutoComplete = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
52
52
|
valueProp = props.value,
|
|
53
53
|
open = props.open,
|
|
54
54
|
style = props.style,
|
|
55
|
+
size = props.size,
|
|
55
56
|
menuClassName = props.menuClassName,
|
|
56
57
|
id = props.id,
|
|
57
58
|
renderMenu = props.renderMenu,
|
|
@@ -65,7 +66,7 @@ var AutoComplete = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
65
66
|
onFocus = props.onFocus,
|
|
66
67
|
onBlur = props.onBlur,
|
|
67
68
|
onMenuFocus = props.onMenuFocus,
|
|
68
|
-
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "disabled", "className", "placement", "selectOnEnter", "classPrefix", "defaultValue", "menuAutoWidth", "data", "value", "open", "style", "menuClassName", "id", "renderMenu", "renderMenuItem", "onSelect", "filterBy", "onKeyDown", "onChange", "onClose", "onOpen", "onFocus", "onBlur", "onMenuFocus"]);
|
|
69
|
+
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "disabled", "className", "placement", "selectOnEnter", "classPrefix", "defaultValue", "menuAutoWidth", "data", "value", "open", "style", "size", "menuClassName", "id", "renderMenu", "renderMenuItem", "onSelect", "filterBy", "onKeyDown", "onChange", "onClose", "onOpen", "onFocus", "onBlur", "onMenuFocus"]);
|
|
69
70
|
var datalist = (0, _utils3.transformData)(data);
|
|
70
71
|
|
|
71
72
|
var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue),
|
|
@@ -231,6 +232,7 @@ var AutoComplete = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
231
232
|
id: id,
|
|
232
233
|
disabled: disabled,
|
|
233
234
|
value: value,
|
|
235
|
+
size: size,
|
|
234
236
|
onBlur: handleInputBlur,
|
|
235
237
|
onFocus: handleInputFocus,
|
|
236
238
|
onChange: handleChange,
|
|
@@ -260,6 +262,7 @@ AutoComplete.propTypes = (0, _extends2.default)({}, _utils2.animationPropTypes,
|
|
|
260
262
|
renderMenu: _propTypes.default.func,
|
|
261
263
|
renderMenuItem: _propTypes.default.func,
|
|
262
264
|
style: _propTypes.default.object,
|
|
265
|
+
size: _propTypes.default.oneOf(['lg', 'md', 'sm', 'xs']),
|
|
263
266
|
open: _propTypes.default.bool,
|
|
264
267
|
selectOnEnter: _propTypes.default.bool,
|
|
265
268
|
filterBy: _propTypes.default.func
|
|
@@ -22,5 +22,6 @@ export interface RowProps {
|
|
|
22
22
|
/** Style object to be applied to row (to position it); */
|
|
23
23
|
style?: React.CSSProperties;
|
|
24
24
|
}
|
|
25
|
+
export declare function isEveryDateInMonth(year: number, month: number, predicate: (date: Date) => boolean): boolean;
|
|
25
26
|
declare const MonthDropdown: RsRefForwardingComponent<'div', MonthDropdownProps>;
|
|
26
27
|
export default MonthDropdown;
|
|
@@ -5,6 +5,7 @@ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWild
|
|
|
5
5
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
6
6
|
|
|
7
7
|
exports.__esModule = true;
|
|
8
|
+
exports.isEveryDateInMonth = isEveryDateInMonth;
|
|
8
9
|
exports.default = void 0;
|
|
9
10
|
|
|
10
11
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
@@ -25,6 +26,18 @@ var _CalendarContext = require("./CalendarContext");
|
|
|
25
26
|
|
|
26
27
|
var monthMap = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];
|
|
27
28
|
|
|
29
|
+
function isEveryDateInMonth(year, month, predicate) {
|
|
30
|
+
var days = _utils.DateUtils.getDaysInMonth(new Date(year, month));
|
|
31
|
+
|
|
32
|
+
for (var i = 1; i <= days; i++) {
|
|
33
|
+
if (!predicate(new Date(year, month, i))) {
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
return true;
|
|
39
|
+
}
|
|
40
|
+
|
|
28
41
|
var MonthDropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
29
42
|
var _props$as = props.as,
|
|
30
43
|
Component = _props$as === void 0 ? 'div' : _props$as,
|
|
@@ -60,16 +73,7 @@ var MonthDropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
60
73
|
}, [limitEndYear, startYear, thisYear]);
|
|
61
74
|
var isMonthDisabled = (0, _react.useCallback)(function (year, month) {
|
|
62
75
|
if (disabledMonth) {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
for (var i = 1; i <= days; i++) {
|
|
67
|
-
if (!disabledMonth(new Date(year, month, i))) {
|
|
68
|
-
return false;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
return true;
|
|
76
|
+
return isEveryDateInMonth(year, month, disabledMonth);
|
|
73
77
|
}
|
|
74
78
|
|
|
75
79
|
return false;
|
|
@@ -29,7 +29,11 @@ export interface DatePickerProps extends PickerBaseProps<DatePickerLocale>, Form
|
|
|
29
29
|
showMeridian?: boolean;
|
|
30
30
|
/** one tap to select */
|
|
31
31
|
oneTap?: boolean;
|
|
32
|
-
/**
|
|
32
|
+
/**
|
|
33
|
+
* Whether to disable a date on the calendar view
|
|
34
|
+
*
|
|
35
|
+
* @returns date should be disabled (not selectable)
|
|
36
|
+
*/
|
|
33
37
|
disabledDate?: (date?: Date) => boolean;
|
|
34
38
|
/** Disabled hours */
|
|
35
39
|
disabledHours?: (hour: number, date: Date) => boolean;
|
|
@@ -29,6 +29,8 @@ var _CalendarContainer = _interopRequireDefault(require("../Calendar/CalendarCon
|
|
|
29
29
|
|
|
30
30
|
var _useCalendarDate2 = _interopRequireDefault(require("../Calendar/useCalendarDate"));
|
|
31
31
|
|
|
32
|
+
var _MonthDropdown = require("../Calendar/MonthDropdown");
|
|
33
|
+
|
|
32
34
|
var _Toolbar = _interopRequireDefault(require("./Toolbar"));
|
|
33
35
|
|
|
34
36
|
var _Stack = _interopRequireDefault(require("../Stack"));
|
|
@@ -336,6 +338,20 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
336
338
|
|
|
337
339
|
return allowDate || allowTime;
|
|
338
340
|
}, [disabledDateProp, props]);
|
|
341
|
+
/**
|
|
342
|
+
* Whether "OK" button is disabled
|
|
343
|
+
*
|
|
344
|
+
* - If format is date, disable ok button if selected date is disabled
|
|
345
|
+
* - If format is month, disable ok button if all dates in the month of selected date are disabled
|
|
346
|
+
*/
|
|
347
|
+
|
|
348
|
+
var isOKButtonDisabled = (0, _react.useCallback)(function (selectedDate) {
|
|
349
|
+
if (_utils.DateUtils.shouldRenderMonth(formatStr) && !_utils.DateUtils.shouldRenderDate(formatStr)) {
|
|
350
|
+
return (0, _MonthDropdown.isEveryDateInMonth)(selectedDate.getFullYear(), selectedDate.getMonth(), disabledToolbarHandle);
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
return disabledToolbarHandle(selectedDate);
|
|
354
|
+
}, [disabledToolbarHandle, formatStr]);
|
|
339
355
|
var calendarProps = (0, _react.useMemo)(function () {
|
|
340
356
|
return (0, _mapValues.default)((0, _pick.default)(props, _utils.DateUtils.calendarOnlyProps), function (disabledOrHiddenTimeFunc) {
|
|
341
357
|
return function (next, date) {
|
|
@@ -406,7 +422,7 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
406
422
|
locale: locale,
|
|
407
423
|
ranges: bottomRanges,
|
|
408
424
|
calendarDate: calendarDate,
|
|
409
|
-
disabledOkBtn:
|
|
425
|
+
disabledOkBtn: isOKButtonDisabled,
|
|
410
426
|
disabledShortcut: disabledToolbarHandle,
|
|
411
427
|
onClickShortcut: handleShortcutPageDate,
|
|
412
428
|
onOk: handleOK,
|
|
@@ -4,6 +4,7 @@ import { TypeAttributes, WithAsProps, RsRefForwardingComponent } from '../@types
|
|
|
4
4
|
import { IconProps } from '@rsuite/icons/lib/Icon';
|
|
5
5
|
import DropdownItem from './DropdownItem';
|
|
6
6
|
import Button from '../Button';
|
|
7
|
+
import DropdownSeparator from './DropdownSeparator';
|
|
7
8
|
export declare type DropdownTrigger = 'click' | 'hover' | 'contextMenu';
|
|
8
9
|
export interface DropdownProps<T = any> extends WithAsProps, Omit<React.HTMLAttributes<HTMLElement>, 'onSelect' | 'title'> {
|
|
9
10
|
/** Define the title as a submenu */
|
|
@@ -58,6 +59,7 @@ export interface DropdownComponent extends RsRefForwardingComponent<'div', Dropd
|
|
|
58
59
|
} & React.ComponentProps<ToggleAs>, context: any): JSX.Element | null;
|
|
59
60
|
Item: typeof DropdownItem;
|
|
60
61
|
Menu: typeof DropdownMenu;
|
|
62
|
+
Separator: typeof DropdownSeparator;
|
|
61
63
|
}
|
|
62
64
|
/**
|
|
63
65
|
* The <Dropdown> API
|
package/cjs/Dropdown/Dropdown.js
CHANGED
|
@@ -43,6 +43,8 @@ var _warnOnce = _interopRequireDefault(require("../utils/warnOnce"));
|
|
|
43
43
|
|
|
44
44
|
var _Nav = _interopRequireDefault(require("../Nav"));
|
|
45
45
|
|
|
46
|
+
var _DropdownSeparator = _interopRequireDefault(require("./DropdownSeparator"));
|
|
47
|
+
|
|
46
48
|
/**
|
|
47
49
|
* The <Dropdown> API
|
|
48
50
|
* When used inside <Sidenav>, renders a <TreeviewRootItem>;
|
|
@@ -186,6 +188,7 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
186
188
|
|
|
187
189
|
Dropdown.Item = _DropdownItem.default;
|
|
188
190
|
Dropdown.Menu = _DropdownMenu.default;
|
|
191
|
+
Dropdown.Separator = _DropdownSeparator.default;
|
|
189
192
|
Dropdown.displayName = 'Dropdown';
|
|
190
193
|
Dropdown.propTypes = {
|
|
191
194
|
activeKey: _propTypes.default.any,
|
|
@@ -8,7 +8,11 @@ export interface DropdownMenuItemProps<T = any> extends WithAsProps, Omit<React.
|
|
|
8
8
|
children?: React.ReactNode;
|
|
9
9
|
/** You can use a custom element for this component */
|
|
10
10
|
as?: React.ElementType;
|
|
11
|
-
/**
|
|
11
|
+
/**
|
|
12
|
+
* Whether to display the divider
|
|
13
|
+
*
|
|
14
|
+
* @deprecated Use dedicated <Dropdown.Separator> component instead
|
|
15
|
+
*/
|
|
12
16
|
divider?: boolean;
|
|
13
17
|
/** Disable the current option */
|
|
14
18
|
disabled?: boolean;
|
|
@@ -11,11 +11,13 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
11
11
|
|
|
12
12
|
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
13
13
|
|
|
14
|
+
var _pick2 = _interopRequireDefault(require("lodash/pick"));
|
|
15
|
+
|
|
14
16
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
17
|
|
|
16
18
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
17
19
|
|
|
18
|
-
var _deprecatePropType =
|
|
20
|
+
var _deprecatePropType = _interopRequireWildcard(require("../utils/deprecatePropType"));
|
|
19
21
|
|
|
20
22
|
var _MenuItem = _interopRequireDefault(require("../Menu/MenuItem"));
|
|
21
23
|
|
|
@@ -37,6 +39,8 @@ var _warnOnce = _interopRequireDefault(require("../utils/warnOnce"));
|
|
|
37
39
|
|
|
38
40
|
var _Nav = _interopRequireDefault(require("../Nav"));
|
|
39
41
|
|
|
42
|
+
var _DropdownSeparator = _interopRequireDefault(require("./DropdownSeparator"));
|
|
43
|
+
|
|
40
44
|
/**
|
|
41
45
|
* The <Dropdown.Item> API
|
|
42
46
|
* When used inside <Sidenav>, renders a <TreeviewItem>
|
|
@@ -106,11 +110,7 @@ var DropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
106
110
|
}
|
|
107
111
|
|
|
108
112
|
if (divider) {
|
|
109
|
-
return
|
|
110
|
-
ref: ref,
|
|
111
|
-
role: 'separator',
|
|
112
|
-
className: merge(prefix('divider'), className)
|
|
113
|
-
}, restProps));
|
|
113
|
+
return /*#__PURE__*/_react.default.createElement(_DropdownSeparator.default, (0, _pick2.default)(props, ['data-testid']));
|
|
114
114
|
}
|
|
115
115
|
|
|
116
116
|
if (panel) {
|
|
@@ -159,7 +159,7 @@ var DropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
159
159
|
DropdownItem.displayName = 'Dropdown.Item';
|
|
160
160
|
DropdownItem.propTypes = {
|
|
161
161
|
as: _propTypes.default.elementType,
|
|
162
|
-
divider: _propTypes.default.bool,
|
|
162
|
+
divider: (0, _deprecatePropType.deprecatePropTypeNew)(_propTypes.default.bool, 'Use Dropdown.Separator component instead.'),
|
|
163
163
|
panel: _propTypes.default.bool,
|
|
164
164
|
trigger: _propTypes.default.oneOfType([_propTypes.default.array, _propTypes.default.oneOf(['click', 'hover'])]),
|
|
165
165
|
open: (0, _deprecatePropType.default)(_propTypes.default.bool),
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { RsRefForwardingComponent, WithAsProps } from '../@types/common';
|
|
3
|
+
export interface DropdownSeparatorProps extends WithAsProps, React.HTMLAttributes<HTMLElement> {
|
|
4
|
+
/** You can use a custom element for this component */
|
|
5
|
+
as?: React.ElementType;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* The <Dropdown.Separator> API
|
|
9
|
+
*
|
|
10
|
+
* Renders a non-focusable and non-interactive `separator`
|
|
11
|
+
* Per ARIA APG https://www.w3.org/WAI/ARIA/apg/patterns/menu/
|
|
12
|
+
*/
|
|
13
|
+
declare const DropdownSeparator: RsRefForwardingComponent<'li', DropdownSeparatorProps>;
|
|
14
|
+
export default DropdownSeparator;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
|
|
10
|
+
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
11
|
+
|
|
12
|
+
var _react = _interopRequireDefault(require("react"));
|
|
13
|
+
|
|
14
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
15
|
+
|
|
16
|
+
var _utils = require("../utils");
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* The <Dropdown.Separator> API
|
|
20
|
+
*
|
|
21
|
+
* Renders a non-focusable and non-interactive `separator`
|
|
22
|
+
* Per ARIA APG https://www.w3.org/WAI/ARIA/apg/patterns/menu/
|
|
23
|
+
*/
|
|
24
|
+
var DropdownSeparator = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
25
|
+
var _props$classPrefix = props.classPrefix,
|
|
26
|
+
classPrefix = _props$classPrefix === void 0 ? 'dropdown-item-divider' : _props$classPrefix,
|
|
27
|
+
className = props.className,
|
|
28
|
+
_props$as = props.as,
|
|
29
|
+
Component = _props$as === void 0 ? 'li' : _props$as,
|
|
30
|
+
restProps = (0, _objectWithoutPropertiesLoose2.default)(props, ["classPrefix", "className", "as"]);
|
|
31
|
+
|
|
32
|
+
var _useClassNames = (0, _utils.useClassNames)(classPrefix),
|
|
33
|
+
merge = _useClassNames.merge,
|
|
34
|
+
withClassPrefix = _useClassNames.withClassPrefix;
|
|
35
|
+
|
|
36
|
+
return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
|
|
37
|
+
ref: ref,
|
|
38
|
+
role: "separator",
|
|
39
|
+
className: merge(withClassPrefix(), className)
|
|
40
|
+
}, restProps));
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
DropdownSeparator.displayName = 'Dropdown.Separator';
|
|
44
|
+
DropdownSeparator.propTypes = {
|
|
45
|
+
as: _propTypes.default.elementType
|
|
46
|
+
};
|
|
47
|
+
var _default = DropdownSeparator;
|
|
48
|
+
exports.default = _default;
|
|
@@ -37,7 +37,7 @@ var _Ripple = _interopRequireDefault(require("../Ripple"));
|
|
|
37
37
|
|
|
38
38
|
var _Disclosure = _interopRequireDefault(require("../Disclosure/Disclosure"));
|
|
39
39
|
|
|
40
|
-
var _templateObject
|
|
40
|
+
var _templateObject;
|
|
41
41
|
|
|
42
42
|
/**
|
|
43
43
|
* Tree View Node
|
|
@@ -99,6 +99,7 @@ var ExpandedSidenavDropdownMenu = /*#__PURE__*/_react.default.forwardRef(functio
|
|
|
99
99
|
// open,
|
|
100
100
|
disabled: disabled
|
|
101
101
|
}));
|
|
102
|
+
var iconClasses = merge(className, prefix('toggle-icon'), prefix((open ? 'expand' : 'collapse') + "-icon"));
|
|
102
103
|
return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
|
|
103
104
|
ref: ref
|
|
104
105
|
}, rest, {
|
|
@@ -112,7 +113,7 @@ var ExpandedSidenavDropdownMenu = /*#__PURE__*/_react.default.forwardRef(functio
|
|
|
112
113
|
}, (0, _omit.default)(buttonProps, ['open'])), icon && /*#__PURE__*/_react.default.cloneElement(icon, {
|
|
113
114
|
className: prefix('menu-icon')
|
|
114
115
|
}), title, /*#__PURE__*/_react.default.createElement(Icon, {
|
|
115
|
-
className:
|
|
116
|
+
className: iconClasses
|
|
116
117
|
}), /*#__PURE__*/_react.default.createElement(_Ripple.default, null));
|
|
117
118
|
}), /*#__PURE__*/_react.default.createElement(_Disclosure.default.Content, null, function (_ref2) {
|
|
118
119
|
var open = _ref2.open;
|
|
@@ -1,2 +1,11 @@
|
|
|
1
1
|
import * as PropTypes from 'prop-types';
|
|
2
|
+
/**
|
|
3
|
+
* Prints deprecation message when user uses a deprecated prop
|
|
4
|
+
*
|
|
5
|
+
* @deprecated Use {@link deprecatePropTypeNew} which prints clearer messages.
|
|
6
|
+
*/
|
|
2
7
|
export default function deprecatePropType<T extends PropTypes.Validator<any>>(propType: T, explanation?: string): typeof propType;
|
|
8
|
+
/**
|
|
9
|
+
* Prints deprecation message when user uses a deprecated prop
|
|
10
|
+
*/
|
|
11
|
+
export declare function deprecatePropTypeNew<T extends PropTypes.Validator<any>>(propType: T, explanation?: string): typeof propType;
|
|
@@ -4,10 +4,17 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
|
|
5
5
|
exports.__esModule = true;
|
|
6
6
|
exports.default = deprecatePropType;
|
|
7
|
+
exports.deprecatePropTypeNew = deprecatePropTypeNew;
|
|
7
8
|
|
|
8
9
|
var _warnOnce = _interopRequireDefault(require("./warnOnce"));
|
|
9
10
|
|
|
10
11
|
// Ref: https://github.com/thefrontside/deprecated-prop-type/blob/master/deprecated.js
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Prints deprecation message when user uses a deprecated prop
|
|
15
|
+
*
|
|
16
|
+
* @deprecated Use {@link deprecatePropTypeNew} which prints clearer messages.
|
|
17
|
+
*/
|
|
11
18
|
function deprecatePropType(propType, explanation) {
|
|
12
19
|
return function validate(props, propName, componentName) {
|
|
13
20
|
// Note ...rest here
|
|
@@ -20,6 +27,26 @@ function deprecatePropType(propType, explanation) {
|
|
|
20
27
|
rest[_key - 3] = arguments[_key];
|
|
21
28
|
}
|
|
22
29
|
|
|
30
|
+
return propType.apply(void 0, [props, propName, componentName].concat(rest)); // and here
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Prints deprecation message when user uses a deprecated prop
|
|
35
|
+
*/
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
function deprecatePropTypeNew(propType, explanation) {
|
|
39
|
+
return function validate(props, propName, componentName) {
|
|
40
|
+
// Note ...rest here
|
|
41
|
+
if (props[propName] != null) {
|
|
42
|
+
var message = "[rsuite] \"" + propName + "\" property of " + componentName + " component has been deprecated.\n" + explanation;
|
|
43
|
+
(0, _warnOnce.default)(message);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
for (var _len2 = arguments.length, rest = new Array(_len2 > 3 ? _len2 - 3 : 0), _key2 = 3; _key2 < _len2; _key2++) {
|
|
47
|
+
rest[_key2 - 3] = arguments[_key2];
|
|
48
|
+
}
|
|
49
|
+
|
|
23
50
|
return propType.apply(void 0, [props, propName, componentName].concat(rest)); // and here
|
|
24
51
|
};
|
|
25
52
|
}
|
package/dist/rsuite-rtl.css
CHANGED
|
@@ -13184,13 +13184,15 @@ textarea.rs-picker-menu .rs-picker-search-bar .rs-picker-search-bar-input {
|
|
|
13184
13184
|
position: absolute;
|
|
13185
13185
|
left: 20px;
|
|
13186
13186
|
top: 11px;
|
|
13187
|
-
-webkit-transform: rotate(-90deg);
|
|
13188
|
-
transform: rotate(-90deg);
|
|
13189
13187
|
}
|
|
13190
|
-
.rs-sidenav-nav > .rs-dropdown .rs-dropdown-item-expand
|
|
13188
|
+
.rs-sidenav-nav > .rs-dropdown .rs-dropdown-item-expand-icon {
|
|
13191
13189
|
-webkit-transform: rotate(-270deg);
|
|
13192
13190
|
transform: rotate(-270deg);
|
|
13193
13191
|
}
|
|
13192
|
+
.rs-sidenav-nav > .rs-dropdown .rs-dropdown-item-collapse-icon {
|
|
13193
|
+
-webkit-transform: rotate(-90deg);
|
|
13194
|
+
transform: rotate(-90deg);
|
|
13195
|
+
}
|
|
13194
13196
|
.rs-theme-high-contrast .rs-sidenav-nav .rs-dropdown-toggle,
|
|
13195
13197
|
.rs-theme-high-contrast .rs-sidenav-nav .rs-dropdown-menu {
|
|
13196
13198
|
border: none;
|