rsuite 5.2.3 → 5.2.4
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 +10 -0
- package/Table/styles/index.less +0 -4
- package/cjs/Carousel/Carousel.d.ts +1 -1
- package/cjs/CheckTreePicker/CheckTreePicker.js +6 -3
- package/cjs/DateRangePicker/Calendar.d.ts +2 -1
- package/cjs/DateRangePicker/Calendar.js +26 -5
- package/cjs/DateRangePicker/DateRangePicker.d.ts +2 -0
- package/cjs/DateRangePicker/DateRangePicker.js +25 -3
- package/cjs/Picker/VirtualizedList.d.ts +29 -2
- package/cjs/Picker/utils.d.ts +6 -14
- package/cjs/Picker/utils.js +54 -33
- package/cjs/TreePicker/TreePicker.js +6 -3
- package/dist/rsuite-rtl.css +0 -3
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +0 -3
- package/dist/rsuite.js +10 -10
- 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/Carousel/Carousel.d.ts +1 -1
- package/esm/CheckTreePicker/CheckTreePicker.js +6 -3
- package/esm/DateRangePicker/Calendar.d.ts +2 -1
- package/esm/DateRangePicker/Calendar.js +27 -5
- package/esm/DateRangePicker/DateRangePicker.d.ts +2 -0
- package/esm/DateRangePicker/DateRangePicker.js +23 -3
- package/esm/Picker/VirtualizedList.d.ts +29 -2
- package/esm/Picker/utils.d.ts +6 -14
- package/esm/Picker/utils.js +54 -33
- package/esm/TreePicker/TreePicker.js +6 -3
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,13 @@
|
|
|
1
|
+
## [5.2.4](https://github.com/rsuite/rsuite/compare/v5.2.3...v5.2.4) (2021-12-03)
|
|
2
|
+
|
|
3
|
+
### Bug Fixes
|
|
4
|
+
|
|
5
|
+
- **Carousel:** make onSelect prop optional ([#2170](https://github.com/rsuite/rsuite/issues/2170)) ([c4d7a63](https://github.com/rsuite/rsuite/commit/c4d7a63f4ec71ebb05d92b04bd26ebe547609dd0))
|
|
6
|
+
- **DateRangePicker:** fix DateRangePicker cannot switch am/pm ([#2171](https://github.com/rsuite/rsuite/issues/2171)) ([4c55db9](https://github.com/rsuite/rsuite/commit/4c55db9a3a96927589d4366ece1f329c011ccb0f))
|
|
7
|
+
- **pickers:** fix custom input in Picker cannot be focused ([#2176](https://github.com/rsuite/rsuite/issues/2176)) ([8a94bd6](https://github.com/rsuite/rsuite/commit/8a94bd6f9640995e017716fe69b68912c55e4c86))
|
|
8
|
+
- **Table:** fix the column of grouping cannot be centered ([#2168](https://github.com/rsuite/rsuite/issues/2168)) ([4fbe460](https://github.com/rsuite/rsuite/commit/4fbe460da4e9744eee8589233b305b7e15295e41))
|
|
9
|
+
- **tree:** expose methods for tree that can scroll the list ([#2178](https://github.com/rsuite/rsuite/issues/2178)) ([0a6f9ee](https://github.com/rsuite/rsuite/commit/0a6f9ee57ed33477472f2ad41c06d5242d3d62d5))
|
|
10
|
+
|
|
1
11
|
## [5.2.3](https://github.com/rsuite/rsuite/compare/v5.2.2...v5.2.3) (2021-11-26)
|
|
2
12
|
|
|
3
13
|
### Bug Fixes
|
package/Table/styles/index.less
CHANGED
|
@@ -10,7 +10,7 @@ export interface CarouselProps extends WithAsProps {
|
|
|
10
10
|
/** Button shape */
|
|
11
11
|
shape?: 'dot' | 'bar';
|
|
12
12
|
/** Callback fired when the active item changes */
|
|
13
|
-
onSelect
|
|
13
|
+
onSelect?: (index: number, event: React.ChangeEvent<HTMLInputElement>) => void;
|
|
14
14
|
/** Callback fired when a slide transition starts */
|
|
15
15
|
onSlideStart?: (index: number, event: React.ChangeEvent<HTMLInputElement>) => void;
|
|
16
16
|
/** Callback fired when a slide transition ends */
|
|
@@ -434,10 +434,13 @@ var CheckTreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
434
434
|
}
|
|
435
435
|
}, [childrenKey, expandItemValues, getChildren, loadChildren, onExpand, setExpandItemValues, valueKey]);
|
|
436
436
|
(0, _Picker.usePublicMethods)(ref, {
|
|
437
|
+
rootRef: inline ? treeViewRef : null,
|
|
437
438
|
triggerRef: triggerRef,
|
|
438
439
|
overlayRef: overlayRef,
|
|
439
|
-
targetRef: targetRef
|
|
440
|
-
|
|
440
|
+
targetRef: targetRef,
|
|
441
|
+
listRef: listRef,
|
|
442
|
+
inline: inline
|
|
443
|
+
});
|
|
441
444
|
var handleClean = (0, _react.useCallback)(function (event) {
|
|
442
445
|
var target = event.target; // exclude searchBar
|
|
443
446
|
|
|
@@ -655,7 +658,7 @@ var CheckTreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
655
658
|
}, style) : {};
|
|
656
659
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
657
660
|
id: id ? id + "-listbox" : undefined,
|
|
658
|
-
ref:
|
|
661
|
+
ref: treeViewRef,
|
|
659
662
|
role: "tree",
|
|
660
663
|
"aria-multiselectable": true,
|
|
661
664
|
className: classes,
|
|
@@ -3,7 +3,7 @@ import { CalendarProps as CalendarCoreProps } from '../Calendar/Calendar';
|
|
|
3
3
|
import { ValueType } from './types';
|
|
4
4
|
import { RsRefForwardingComponent, WithAsProps } from '../@types/common';
|
|
5
5
|
import { DatePickerLocale } from '../locales';
|
|
6
|
-
declare type OmitCalendarCoreTypes = 'disabledDate' | 'onSelect' | 'onMouseMove' | 'calendarDate';
|
|
6
|
+
declare type OmitCalendarCoreTypes = 'disabledDate' | 'onSelect' | 'onMouseMove' | 'calendarDate' | 'onToggleMeridian';
|
|
7
7
|
export interface CalendarProps extends WithAsProps, Omit<CalendarCoreProps, OmitCalendarCoreTypes> {
|
|
8
8
|
calendarDate?: ValueType;
|
|
9
9
|
disabledDate?: (date: Date, selectValue: ValueType, type: string) => boolean;
|
|
@@ -15,6 +15,7 @@ export interface CalendarProps extends WithAsProps, Omit<CalendarCoreProps, Omit
|
|
|
15
15
|
locale?: DatePickerLocale;
|
|
16
16
|
onChangeCalendarDate?: (index: number, date: Date) => void;
|
|
17
17
|
onChangeCalendarTime?: (index: number, date: Date) => void;
|
|
18
|
+
onToggleMeridian: (index: number, event: React.MouseEvent) => void;
|
|
18
19
|
onMouseMove?: (date: Date) => void;
|
|
19
20
|
onSelect?: (date: Date, event?: React.SyntheticEvent) => void;
|
|
20
21
|
showOneCalendar?: boolean;
|
|
@@ -21,6 +21,14 @@ var _Calendar = _interopRequireWildcard(require("../Calendar/Calendar"));
|
|
|
21
21
|
|
|
22
22
|
var _utils = require("../utils");
|
|
23
23
|
|
|
24
|
+
/**
|
|
25
|
+
* Omit the time in the date, which is used to compare and judge the date.
|
|
26
|
+
* eg: isAfter/isBefore
|
|
27
|
+
*/
|
|
28
|
+
function omitTime(date) {
|
|
29
|
+
return new Date(date.getFullYear(), date.getMonth(), date.getDate());
|
|
30
|
+
}
|
|
31
|
+
|
|
24
32
|
var Calendar = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
25
33
|
var _props$as = props.as,
|
|
26
34
|
Component = _props$as === void 0 ? _Calendar.default : _props$as,
|
|
@@ -34,10 +42,11 @@ var Calendar = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
34
42
|
limitEndYear = props.limitEndYear,
|
|
35
43
|
onChangeCalendarDate = props.onChangeCalendarDate,
|
|
36
44
|
onChangeCalendarTime = props.onChangeCalendarTime,
|
|
45
|
+
onToggleMeridian = props.onToggleMeridian,
|
|
37
46
|
showOneCalendar = props.showOneCalendar,
|
|
38
47
|
_props$value = props.value,
|
|
39
48
|
value = _props$value === void 0 ? [] : _props$value,
|
|
40
|
-
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "calendarDate", "format", "disabledDate", "index", "limitEndYear", "onChangeCalendarDate", "onChangeCalendarTime", "showOneCalendar", "value"]);
|
|
49
|
+
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "calendarDate", "format", "disabledDate", "index", "limitEndYear", "onChangeCalendarDate", "onChangeCalendarTime", "onToggleMeridian", "showOneCalendar", "value"]);
|
|
41
50
|
|
|
42
51
|
var _useState = (0, _react.useState)(),
|
|
43
52
|
calendarState = _useState[0],
|
|
@@ -56,6 +65,9 @@ var Calendar = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
56
65
|
var handleChangePageTime = (0, _react.useCallback)(function (nextPageDate) {
|
|
57
66
|
onChangeCalendarTime(index, nextPageDate);
|
|
58
67
|
}, [index, onChangeCalendarTime]);
|
|
68
|
+
var handleToggleMeridian = (0, _react.useCallback)(function (event) {
|
|
69
|
+
onToggleMeridian(index, event);
|
|
70
|
+
}, [index, onToggleMeridian]);
|
|
59
71
|
var toggleMonthDropdown = (0, _react.useCallback)(function () {
|
|
60
72
|
setCalendarState(calendarState === _Calendar.CalendarState.DROP_MONTH ? undefined : _Calendar.CalendarState.DROP_MONTH);
|
|
61
73
|
}, [calendarState]);
|
|
@@ -75,22 +87,30 @@ var Calendar = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
75
87
|
onMoveBackward === null || onMoveBackward === void 0 ? void 0 : onMoveBackward((0, _dateUtils.addMonths)(getCalendarDate(), -1));
|
|
76
88
|
}, [getCalendarDate, onMoveBackward]);
|
|
77
89
|
var disabledBackward = (0, _react.useCallback)(function () {
|
|
78
|
-
|
|
79
|
-
|
|
90
|
+
// Do not disable the Backward button on the first calendar.
|
|
80
91
|
if (index === 0) {
|
|
81
92
|
return false;
|
|
82
93
|
}
|
|
83
94
|
|
|
95
|
+
var startDate = (0, _dateUtils.setDate)((0, _dateUtils.addMonths)(calendarDate[0], 1), 1);
|
|
96
|
+
var endDate = (0, _dateUtils.setDate)(omitTime(calendarDate[1]), 1);
|
|
97
|
+
var after = (0, _dateUtils.isAfter)(endDate, startDate);
|
|
84
98
|
return !after;
|
|
85
99
|
}, [calendarDate, index]);
|
|
86
100
|
var disabledForward = (0, _react.useCallback)(function () {
|
|
87
|
-
|
|
88
|
-
|
|
101
|
+
// If only one calendar is displayed, do not disable
|
|
102
|
+
if (showOneCalendar) {
|
|
103
|
+
return false;
|
|
104
|
+
} // Do not disable the Forward button on the second calendar.
|
|
105
|
+
|
|
89
106
|
|
|
90
107
|
if (index === 1) {
|
|
91
108
|
return false;
|
|
92
109
|
}
|
|
93
110
|
|
|
111
|
+
var startDate = (0, _dateUtils.setDate)((0, _dateUtils.addMonths)(omitTime(calendarDate[0]), 1), 1);
|
|
112
|
+
var endDate = (0, _dateUtils.setDate)(omitTime(calendarDate[1]), 1);
|
|
113
|
+
var after = (0, _dateUtils.isAfter)(endDate, startDate);
|
|
94
114
|
return !after;
|
|
95
115
|
}, [calendarDate, index, showOneCalendar]);
|
|
96
116
|
var disabledMonth = (0, _react.useCallback)(function (date) {
|
|
@@ -126,6 +146,7 @@ var Calendar = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
126
146
|
onMoveForward: handleMoveForward,
|
|
127
147
|
onToggleMonthDropdown: toggleMonthDropdown,
|
|
128
148
|
onToggleTimeDropdown: toggleTimeDropdown,
|
|
149
|
+
onToggleMeridian: handleToggleMeridian,
|
|
129
150
|
calendarDate: getCalendarDate(),
|
|
130
151
|
ref: ref
|
|
131
152
|
}));
|
|
@@ -19,6 +19,8 @@ export interface DateRangePickerProps extends PickerBaseProps, FormControlBasePr
|
|
|
19
19
|
showWeekNumbers?: boolean;
|
|
20
20
|
/** Show only one calendar select */
|
|
21
21
|
showOneCalendar?: boolean;
|
|
22
|
+
/** Meridian format */
|
|
23
|
+
showMeridian?: boolean;
|
|
22
24
|
/** Set default date for calendar */
|
|
23
25
|
defaultCalendarValue?: ValueType;
|
|
24
26
|
/** The character that separates two dates */
|
|
@@ -78,6 +78,7 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
78
78
|
_props$showOneCalenda = props.showOneCalendar,
|
|
79
79
|
showOneCalendar = _props$showOneCalenda === void 0 ? false : _props$showOneCalenda,
|
|
80
80
|
showWeekNumbers = props.showWeekNumbers,
|
|
81
|
+
showMeridian = props.showMeridian,
|
|
81
82
|
style = props.style,
|
|
82
83
|
toggleAs = props.toggleAs,
|
|
83
84
|
valueProp = props.value,
|
|
@@ -90,7 +91,7 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
90
91
|
onOk = props.onOk,
|
|
91
92
|
onOpen = props.onOpen,
|
|
92
93
|
onSelect = props.onSelect,
|
|
93
|
-
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "classPrefix", "className", "appearance", "cleanable", "character", "defaultCalendarValue", "defaultValue", "disabled", "disabledDate", "format", "hoverRange", "isoWeek", "limitEndYear", "locale", "menuClassName", "menuStyle", "oneTap", "placeholder", "placement", "ranges", "renderValue", "showOneCalendar", "showWeekNumbers", "style", "toggleAs", "value", "onChange", "onClean", "onClose", "onEnter", "onEntered", "onExited", "onOk", "onOpen", "onSelect"]);
|
|
94
|
+
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "classPrefix", "className", "appearance", "cleanable", "character", "defaultCalendarValue", "defaultValue", "disabled", "disabledDate", "format", "hoverRange", "isoWeek", "limitEndYear", "locale", "menuClassName", "menuStyle", "oneTap", "placeholder", "placement", "ranges", "renderValue", "showOneCalendar", "showWeekNumbers", "showMeridian", "style", "toggleAs", "value", "onChange", "onClean", "onClose", "onEnter", "onEntered", "onExited", "onOk", "onOpen", "onSelect"]);
|
|
94
95
|
|
|
95
96
|
var _useClassNames = (0, _utils.useClassNames)(classPrefix),
|
|
96
97
|
merge = _useClassNames.merge,
|
|
@@ -370,6 +371,24 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
370
371
|
});
|
|
371
372
|
handleChangeCalendarDate(index, date);
|
|
372
373
|
}, [handleChangeCalendarDate]);
|
|
374
|
+
/**
|
|
375
|
+
* The callback triggered when PM/AM is switched.
|
|
376
|
+
*/
|
|
377
|
+
|
|
378
|
+
var handleToggleMeridian = (0, _react.useCallback)(function (index) {
|
|
379
|
+
var next = Array.from(calendarDate);
|
|
380
|
+
var clonedDate = new Date(next[index].valueOf());
|
|
381
|
+
|
|
382
|
+
var hours = _utils.DateUtils.getHours(clonedDate);
|
|
383
|
+
|
|
384
|
+
var nextHours = hours >= 12 ? hours - 12 : hours + 12;
|
|
385
|
+
next[index] = _utils.DateUtils.setHours(clonedDate, nextHours);
|
|
386
|
+
setCalendarDate(next); // If the value already exists, update the value again.
|
|
387
|
+
|
|
388
|
+
if (selectValue.length === 2) {
|
|
389
|
+
setSelectValue(next);
|
|
390
|
+
}
|
|
391
|
+
}, [calendarDate, selectValue]);
|
|
373
392
|
/**
|
|
374
393
|
* Toolbar operation callback function
|
|
375
394
|
*/
|
|
@@ -535,10 +554,12 @@ var DateRangePicker = /*#__PURE__*/_react.default.forwardRef(function (props, re
|
|
|
535
554
|
showOneCalendar: showOneCalendar,
|
|
536
555
|
showWeekNumbers: showWeekNumbers,
|
|
537
556
|
value: selectValue,
|
|
557
|
+
showMeridian: showMeridian,
|
|
538
558
|
onChangeCalendarDate: handleChangeCalendarDate,
|
|
539
559
|
onChangeCalendarTime: handleChangeCalendarTime,
|
|
540
560
|
onMouseMove: handleMouseMove,
|
|
541
|
-
onSelect: handleSelectValueChange
|
|
561
|
+
onSelect: handleSelectValueChange,
|
|
562
|
+
onToggleMeridian: handleToggleMeridian
|
|
542
563
|
};
|
|
543
564
|
return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {
|
|
544
565
|
className: classes,
|
|
@@ -634,11 +655,12 @@ DateRangePicker.propTypes = (0, _extends2.default)({}, _Picker.pickerPropTypes,
|
|
|
634
655
|
isoWeek: _propTypes.default.bool,
|
|
635
656
|
oneTap: _propTypes.default.bool,
|
|
636
657
|
limitEndYear: _propTypes.default.number,
|
|
637
|
-
showWeekNumbers: _propTypes.default.bool,
|
|
638
658
|
onChange: _propTypes.default.func,
|
|
639
659
|
onOk: _propTypes.default.func,
|
|
640
660
|
disabledDate: _propTypes.default.func,
|
|
641
661
|
onSelect: _propTypes.default.func,
|
|
662
|
+
showWeekNumbers: _propTypes.default.bool,
|
|
663
|
+
showMeridian: _propTypes.default.bool,
|
|
642
664
|
showOneCalendar: _propTypes.default.bool
|
|
643
665
|
});
|
|
644
666
|
var _default = DateRangePicker;
|
|
@@ -1,9 +1,36 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { ListProps, ListRowProps } from 'react-virtualized/dist/commonjs/List';
|
|
3
3
|
import { AutoSizerProps } from 'react-virtualized/dist/commonjs/AutoSizer';
|
|
4
|
+
import type { Alignment } from 'react-virtualized';
|
|
4
5
|
export interface ListInstance {
|
|
5
|
-
|
|
6
|
-
|
|
6
|
+
/**
|
|
7
|
+
* Forcefully re-render the inner Grid component.
|
|
8
|
+
*/
|
|
9
|
+
forceUpdateGrid(): void;
|
|
10
|
+
/**
|
|
11
|
+
* Gets offset for a given row and alignment.
|
|
12
|
+
*/
|
|
13
|
+
getOffsetForRow(params: {
|
|
14
|
+
alignment?: Alignment;
|
|
15
|
+
index?: number;
|
|
16
|
+
}): number;
|
|
17
|
+
/**
|
|
18
|
+
* Pre-measure all rows in a List.
|
|
19
|
+
*/
|
|
20
|
+
measureAllRows(): void;
|
|
21
|
+
/**
|
|
22
|
+
* Recompute row heights and offsets after the specified index (defaults to 0).
|
|
23
|
+
*/
|
|
24
|
+
recomputeRowHeights(index?: number): void;
|
|
25
|
+
/**
|
|
26
|
+
* Scroll to the specified offset. Useful for animating position changes.
|
|
27
|
+
*/
|
|
28
|
+
scrollToPosition(scrollTop?: number): void;
|
|
29
|
+
/**
|
|
30
|
+
* Ensure row is visible. This method can be used to safely scroll back to a cell
|
|
31
|
+
* that a user has scrolled away from even if it was previously scrolled to.
|
|
32
|
+
*/
|
|
33
|
+
scrollToRow(index?: number): void;
|
|
7
34
|
}
|
|
8
35
|
export type { ListProps, AutoSizerProps, ListRowProps };
|
|
9
36
|
export declare const List: React.ComponentType<ListProps>;
|
package/cjs/Picker/utils.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { OverlayTriggerInstance } from './PickerToggleTrigger';
|
|
3
3
|
import { TypeAttributes, ItemDataType } from '../@types/common';
|
|
4
|
+
import { ListInstance } from './VirtualizedList';
|
|
4
5
|
interface NodeKeys {
|
|
5
6
|
valueKey: string;
|
|
6
7
|
childrenKey: string;
|
|
@@ -103,25 +104,16 @@ export declare function useSearch(props: SearchProps): {
|
|
|
103
104
|
checkShouldDisplay: (item: ItemDataType, keyword?: string) => boolean;
|
|
104
105
|
handleSearch: (searchKeyword: string, event: React.SyntheticEvent) => void;
|
|
105
106
|
};
|
|
106
|
-
interface
|
|
107
|
+
interface PickerDependentParameters {
|
|
107
108
|
triggerRef?: React.RefObject<OverlayTriggerInstance>;
|
|
108
|
-
rootRef?: React.RefObject<
|
|
109
|
+
rootRef?: React.RefObject<any>;
|
|
109
110
|
overlayRef?: React.RefObject<HTMLElement>;
|
|
110
111
|
targetRef?: React.RefObject<HTMLElement>;
|
|
112
|
+
listRef?: React.RefObject<ListInstance>;
|
|
113
|
+
inline?: boolean;
|
|
111
114
|
}
|
|
112
115
|
/**
|
|
113
116
|
* A hook of the exposed method of Picker
|
|
114
|
-
*
|
|
115
|
-
* {
|
|
116
|
-
* root: Element;
|
|
117
|
-
* overlay: Element;
|
|
118
|
-
* target?: Element;
|
|
119
|
-
* updatePosition:() => void;
|
|
120
|
-
* open:() => void;
|
|
121
|
-
* close:() => void;
|
|
122
|
-
* }
|
|
123
|
-
* @param ref
|
|
124
|
-
* @param params
|
|
125
117
|
*/
|
|
126
|
-
export declare function usePublicMethods(ref: any,
|
|
118
|
+
export declare function usePublicMethods(ref: any, parmas: PickerDependentParameters): void;
|
|
127
119
|
export {};
|
package/cjs/Picker/utils.js
CHANGED
|
@@ -405,9 +405,15 @@ var useToggleKeyDownEvent = function useToggleKeyDownEvent(props) {
|
|
|
405
405
|
|
|
406
406
|
|
|
407
407
|
if (event.key.length === 1 && /\w/.test(event.key)) {
|
|
408
|
-
var
|
|
408
|
+
var _event$target;
|
|
409
409
|
|
|
410
|
-
|
|
410
|
+
// Exclude Input
|
|
411
|
+
// eg: <SelectPicker renderExtraFooter={() => <Input />} />
|
|
412
|
+
if (((_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.tagName) !== 'INPUT') {
|
|
413
|
+
var _searchInputRef$curre;
|
|
414
|
+
|
|
415
|
+
(_searchInputRef$curre = searchInputRef.current) === null || _searchInputRef$curre === void 0 ? void 0 : _searchInputRef$curre.focus();
|
|
416
|
+
}
|
|
411
417
|
}
|
|
412
418
|
}
|
|
413
419
|
|
|
@@ -486,23 +492,14 @@ function useSearch(props) {
|
|
|
486
492
|
|
|
487
493
|
/**
|
|
488
494
|
* A hook of the exposed method of Picker
|
|
489
|
-
*
|
|
490
|
-
* {
|
|
491
|
-
* root: Element;
|
|
492
|
-
* overlay: Element;
|
|
493
|
-
* target?: Element;
|
|
494
|
-
* updatePosition:() => void;
|
|
495
|
-
* open:() => void;
|
|
496
|
-
* close:() => void;
|
|
497
|
-
* }
|
|
498
|
-
* @param ref
|
|
499
|
-
* @param params
|
|
500
495
|
*/
|
|
501
|
-
function usePublicMethods(ref,
|
|
502
|
-
var triggerRef =
|
|
503
|
-
overlayRef =
|
|
504
|
-
targetRef =
|
|
505
|
-
rootRef =
|
|
496
|
+
function usePublicMethods(ref, parmas) {
|
|
497
|
+
var triggerRef = parmas.triggerRef,
|
|
498
|
+
overlayRef = parmas.overlayRef,
|
|
499
|
+
targetRef = parmas.targetRef,
|
|
500
|
+
rootRef = parmas.rootRef,
|
|
501
|
+
listRef = parmas.listRef,
|
|
502
|
+
inline = parmas.inline;
|
|
506
503
|
var handleOpen = (0, _react.useCallback)(function () {
|
|
507
504
|
var _triggerRef$current3;
|
|
508
505
|
|
|
@@ -518,10 +515,9 @@ function usePublicMethods(ref, _ref, disabled) {
|
|
|
518
515
|
|
|
519
516
|
(_triggerRef$current5 = triggerRef.current) === null || _triggerRef$current5 === void 0 ? void 0 : _triggerRef$current5.updatePosition();
|
|
520
517
|
}, [triggerRef]);
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
(0, _react.useImperativeHandle)(ref, function () {
|
|
518
|
+
(0, _react.useImperativeHandle)(ref, function () {
|
|
519
|
+
// Tree and CheckTree
|
|
520
|
+
if (inline) {
|
|
525
521
|
return {
|
|
526
522
|
get root() {
|
|
527
523
|
var _triggerRef$current6;
|
|
@@ -529,18 +525,43 @@ function usePublicMethods(ref, _ref, disabled) {
|
|
|
529
525
|
return rootRef !== null && rootRef !== void 0 && rootRef.current ? rootRef === null || rootRef === void 0 ? void 0 : rootRef.current : (_triggerRef$current6 = triggerRef.current) === null || _triggerRef$current6 === void 0 ? void 0 : _triggerRef$current6.root;
|
|
530
526
|
},
|
|
531
527
|
|
|
532
|
-
get
|
|
533
|
-
|
|
534
|
-
|
|
528
|
+
get list() {
|
|
529
|
+
if (!(listRef !== null && listRef !== void 0 && listRef.current)) {
|
|
530
|
+
throw new Error('The list is not found, please set `virtualized` for the component.');
|
|
531
|
+
}
|
|
535
532
|
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
},
|
|
533
|
+
return listRef === null || listRef === void 0 ? void 0 : listRef.current;
|
|
534
|
+
}
|
|
539
535
|
|
|
540
|
-
updatePosition: handleUpdatePosition,
|
|
541
|
-
open: handleOpen,
|
|
542
|
-
close: handleClose
|
|
543
536
|
};
|
|
544
|
-
}
|
|
545
|
-
|
|
537
|
+
}
|
|
538
|
+
|
|
539
|
+
return {
|
|
540
|
+
get root() {
|
|
541
|
+
var _triggerRef$current7;
|
|
542
|
+
|
|
543
|
+
return rootRef !== null && rootRef !== void 0 && rootRef.current ? rootRef === null || rootRef === void 0 ? void 0 : rootRef.current : (_triggerRef$current7 = triggerRef.current) === null || _triggerRef$current7 === void 0 ? void 0 : _triggerRef$current7.root;
|
|
544
|
+
},
|
|
545
|
+
|
|
546
|
+
get overlay() {
|
|
547
|
+
return overlayRef.current;
|
|
548
|
+
},
|
|
549
|
+
|
|
550
|
+
get target() {
|
|
551
|
+
return targetRef === null || targetRef === void 0 ? void 0 : targetRef.current;
|
|
552
|
+
},
|
|
553
|
+
|
|
554
|
+
get list() {
|
|
555
|
+
if (!(listRef !== null && listRef !== void 0 && listRef.current)) {
|
|
556
|
+
throw new Error("\n The list is not found.\n 1.Please set virtualized for the component.\n 2.Please confirm whether the picker is open.\n ");
|
|
557
|
+
}
|
|
558
|
+
|
|
559
|
+
return listRef === null || listRef === void 0 ? void 0 : listRef.current;
|
|
560
|
+
},
|
|
561
|
+
|
|
562
|
+
updatePosition: handleUpdatePosition,
|
|
563
|
+
open: handleOpen,
|
|
564
|
+
close: handleClose
|
|
565
|
+
};
|
|
566
|
+
});
|
|
546
567
|
}
|
|
@@ -437,10 +437,13 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
437
437
|
(_targetRef$current2 = targetRef.current) === null || _targetRef$current2 === void 0 ? void 0 : _targetRef$current2.focus();
|
|
438
438
|
}, [activeNode, setSearchKeyword, valueKey]);
|
|
439
439
|
(0, _Picker.usePublicMethods)(ref, {
|
|
440
|
+
rootRef: inline ? treeViewRef : null,
|
|
440
441
|
triggerRef: triggerRef,
|
|
441
442
|
overlayRef: overlayRef,
|
|
442
|
-
targetRef: targetRef
|
|
443
|
-
|
|
443
|
+
targetRef: targetRef,
|
|
444
|
+
listRef: listRef,
|
|
445
|
+
inline: inline
|
|
446
|
+
});
|
|
444
447
|
var handleFocusItem = (0, _react.useCallback)(function (key) {
|
|
445
448
|
var focusableItems = (0, _treeUtils.getFocusableItems)(filteredData, {
|
|
446
449
|
disabledItemValues: disabledItemValues,
|
|
@@ -650,7 +653,7 @@ var TreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
650
653
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
651
654
|
role: "tree",
|
|
652
655
|
id: id ? id + "-listbox" : undefined,
|
|
653
|
-
ref:
|
|
656
|
+
ref: treeViewRef,
|
|
654
657
|
className: classes,
|
|
655
658
|
style: styles,
|
|
656
659
|
onKeyDown: inline ? handleTreeKeyDown : undefined
|
package/dist/rsuite-rtl.css
CHANGED
|
@@ -13880,9 +13880,6 @@ textarea.rs-picker-menu .rs-picker-search-bar .rs-picker-search-bar-input {
|
|
|
13880
13880
|
border-left: 1px solid #f2f2f5;
|
|
13881
13881
|
border-left: 1px solid var(--rs-border-secondary);
|
|
13882
13882
|
}
|
|
13883
|
-
.rs-table-column-group-cell-content {
|
|
13884
|
-
display: table-cell;
|
|
13885
|
-
}
|
|
13886
13883
|
.rs-table-cell-expand-wrapper {
|
|
13887
13884
|
margin-left: 10px;
|
|
13888
13885
|
display: inline-block;
|