rsuite 5.48.1 → 5.50.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 +27 -0
- package/Cascader/styles/index.less +5 -4
- package/DatePicker/styles/index.less +18 -11
- package/DateRangeInput/package.json +7 -0
- package/DateRangePicker/styles/index.less +20 -0
- package/Dropdown/styles/index.less +5 -4
- package/Dropdown/styles/mixin.less +0 -11
- package/InputGroup/styles/index.less +1 -0
- package/Picker/styles/index.less +51 -24
- package/Picker/styles/mixin.less +17 -13
- package/README.md +34 -24
- package/Sidenav/styles/index.less +2 -0
- package/TagInput/styles/index.less +1 -1
- package/cjs/AutoComplete/AutoComplete.js +25 -26
- package/cjs/Calendar/Calendar.d.ts +5 -1
- package/cjs/Calendar/CalendarContainer.d.ts +7 -1
- package/cjs/Calendar/CalendarContainer.js +11 -4
- package/cjs/Calendar/CalendarHeader.js +2 -0
- package/cjs/Calendar/MonthDropdown.js +7 -2
- package/cjs/Calendar/MonthDropdownItem.js +2 -2
- package/cjs/Calendar/Table.js +6 -1
- package/cjs/Calendar/TimeDropdown.js +17 -10
- package/cjs/Calendar/types.d.ts +1 -0
- package/cjs/Cascader/Cascader.js +46 -48
- package/cjs/CheckPicker/CheckPicker.d.ts +2 -2
- package/cjs/CheckPicker/CheckPicker.js +33 -36
- package/cjs/CheckTreePicker/CheckTreePicker.js +61 -64
- package/cjs/CustomProvider/CustomProvider.d.ts +13 -0
- package/cjs/CustomProvider/CustomProvider.js +2 -2
- package/cjs/DateInput/DateField.d.ts +9 -31
- package/cjs/DateInput/DateField.js +61 -12
- package/cjs/DateInput/DateInput.d.ts +7 -2
- package/cjs/DateInput/DateInput.js +74 -92
- package/cjs/DateInput/index.d.ts +4 -0
- package/cjs/DateInput/index.js +19 -1
- package/cjs/DateInput/useDateInputState.d.ts +7 -31
- package/cjs/DateInput/useDateInputState.js +39 -15
- package/cjs/DateInput/useIsFocused.d.ts +7 -0
- package/cjs/DateInput/useIsFocused.js +28 -0
- package/cjs/DateInput/useKeyboardInputEvent.d.ts +10 -0
- package/cjs/DateInput/useKeyboardInputEvent.js +44 -0
- package/cjs/DateInput/utils.d.ts +23 -1
- package/cjs/DateInput/utils.js +155 -51
- package/cjs/DatePicker/DatePicker.d.ts +25 -8
- package/cjs/DatePicker/DatePicker.js +208 -241
- package/cjs/DatePicker/Toolbar.js +5 -22
- package/cjs/DatePicker/utils.d.ts +5 -1
- package/cjs/DatePicker/utils.js +17 -1
- package/cjs/DateRangeInput/DateRangeInput.d.ts +29 -0
- package/cjs/DateRangeInput/DateRangeInput.js +244 -0
- package/cjs/DateRangeInput/index.d.ts +3 -0
- package/cjs/DateRangeInput/index.js +9 -0
- package/cjs/DateRangeInput/utils.d.ts +61 -0
- package/cjs/DateRangeInput/utils.js +146 -0
- package/cjs/DateRangePicker/Calendar.js +24 -23
- package/cjs/DateRangePicker/DateRangePicker.d.ts +18 -4
- package/cjs/DateRangePicker/DateRangePicker.js +251 -203
- package/cjs/DateRangePicker/types.d.ts +11 -3
- package/cjs/DateRangePicker/utils.d.ts +2 -1
- package/cjs/DateRangePicker/utils.js +7 -5
- package/cjs/FormControl/FormControl.d.ts +11 -1
- package/cjs/FormControl/FormControl.js +6 -5
- package/cjs/Input/Input.d.ts +11 -0
- package/cjs/Input/Input.js +11 -8
- package/cjs/InputPicker/InputPicker.js +62 -63
- package/cjs/MultiCascader/MultiCascader.js +40 -42
- package/cjs/Overlay/OverlayTrigger.d.ts +3 -0
- package/cjs/Overlay/OverlayTrigger.js +5 -0
- package/cjs/Picker/PickerIndicator.d.ts +10 -0
- package/cjs/Picker/PickerIndicator.js +49 -0
- package/cjs/Picker/PickerLabel.d.ts +9 -0
- package/cjs/Picker/PickerLabel.js +23 -0
- package/cjs/Picker/PickerToggle.d.ts +17 -22
- package/cjs/Picker/PickerToggle.js +52 -177
- package/cjs/Picker/index.d.ts +3 -0
- package/cjs/Picker/index.js +10 -1
- package/cjs/Picker/usePickerRef.d.ts +19 -0
- package/cjs/Picker/usePickerRef.js +88 -0
- package/cjs/Picker/utils.d.ts +5 -9
- package/cjs/Picker/utils.js +22 -89
- package/cjs/SelectPicker/SelectPicker.d.ts +2 -2
- package/cjs/SelectPicker/SelectPicker.js +39 -42
- package/cjs/TreePicker/TreePicker.js +72 -75
- package/cjs/index.d.ts +2 -0
- package/cjs/index.js +3 -1
- package/cjs/locales/index.d.ts +2 -2
- package/cjs/utils/constants.d.ts +2 -1
- package/cjs/utils/constants.js +1 -0
- package/cjs/utils/dateUtils.d.ts +0 -1
- package/cjs/utils/dateUtils.js +0 -6
- package/cjs/utils/getStringLength.d.ts +2 -0
- package/cjs/utils/getStringLength.js +18 -0
- package/cjs/utils/index.d.ts +3 -0
- package/cjs/utils/index.js +11 -2
- package/cjs/utils/useCustom.js +1 -1
- package/cjs/utils/useIsomorphicLayoutEffect.d.ts +3 -0
- package/cjs/utils/useIsomorphicLayoutEffect.js +9 -0
- package/dist/rsuite-no-reset-rtl.css +140 -207
- package/dist/rsuite-no-reset-rtl.min.css +1 -1
- package/dist/rsuite-no-reset-rtl.min.css.map +1 -1
- package/dist/rsuite-no-reset.css +140 -207
- package/dist/rsuite-no-reset.min.css +1 -1
- package/dist/rsuite-no-reset.min.css.map +1 -1
- package/dist/rsuite-rtl.css +140 -75
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +140 -75
- package/dist/rsuite.js +4833 -258
- 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.js +28 -29
- package/esm/Calendar/Calendar.d.ts +5 -1
- package/esm/Calendar/CalendarContainer.d.ts +7 -1
- package/esm/Calendar/CalendarContainer.js +12 -5
- package/esm/Calendar/CalendarHeader.js +2 -0
- package/esm/Calendar/MonthDropdown.js +7 -2
- package/esm/Calendar/MonthDropdownItem.js +2 -2
- package/esm/Calendar/Table.js +6 -1
- package/esm/Calendar/TimeDropdown.js +17 -10
- package/esm/Calendar/types.d.ts +1 -0
- package/esm/Cascader/Cascader.js +49 -51
- package/esm/CheckPicker/CheckPicker.d.ts +2 -2
- package/esm/CheckPicker/CheckPicker.js +36 -39
- package/esm/CheckTreePicker/CheckTreePicker.js +64 -67
- package/esm/CustomProvider/CustomProvider.d.ts +13 -0
- package/esm/CustomProvider/CustomProvider.js +3 -3
- package/esm/DateInput/DateField.d.ts +9 -31
- package/esm/DateInput/DateField.js +61 -12
- package/esm/DateInput/DateInput.d.ts +7 -2
- package/esm/DateInput/DateInput.js +77 -95
- package/esm/DateInput/index.d.ts +4 -0
- package/esm/DateInput/index.js +4 -0
- package/esm/DateInput/useDateInputState.d.ts +7 -31
- package/esm/DateInput/useDateInputState.js +41 -18
- package/esm/DateInput/useIsFocused.d.ts +7 -0
- package/esm/DateInput/useIsFocused.js +22 -0
- package/esm/DateInput/useKeyboardInputEvent.d.ts +10 -0
- package/esm/DateInput/useKeyboardInputEvent.js +38 -0
- package/esm/DateInput/utils.d.ts +23 -1
- package/esm/DateInput/utils.js +150 -51
- package/esm/DatePicker/DatePicker.d.ts +25 -8
- package/esm/DatePicker/DatePicker.js +211 -244
- package/esm/DatePicker/Toolbar.js +5 -22
- package/esm/DatePicker/utils.d.ts +5 -1
- package/esm/DatePicker/utils.js +16 -1
- package/esm/DateRangeInput/DateRangeInput.d.ts +29 -0
- package/esm/DateRangeInput/DateRangeInput.js +237 -0
- package/esm/DateRangeInput/index.d.ts +3 -0
- package/esm/DateRangeInput/index.js +3 -0
- package/esm/DateRangeInput/utils.d.ts +61 -0
- package/esm/DateRangeInput/utils.js +137 -0
- package/esm/DateRangePicker/Calendar.js +25 -23
- package/esm/DateRangePicker/DateRangePicker.d.ts +18 -4
- package/esm/DateRangePicker/DateRangePicker.js +253 -205
- package/esm/DateRangePicker/types.d.ts +11 -3
- package/esm/DateRangePicker/utils.d.ts +2 -1
- package/esm/DateRangePicker/utils.js +7 -5
- package/esm/FormControl/FormControl.d.ts +11 -1
- package/esm/FormControl/FormControl.js +4 -3
- package/esm/Input/Input.d.ts +11 -0
- package/esm/Input/Input.js +12 -9
- package/esm/InputPicker/InputPicker.js +64 -65
- package/esm/MultiCascader/MultiCascader.js +43 -45
- package/esm/Overlay/OverlayTrigger.d.ts +3 -0
- package/esm/Overlay/OverlayTrigger.js +5 -0
- package/esm/Picker/PickerIndicator.d.ts +10 -0
- package/esm/Picker/PickerIndicator.js +43 -0
- package/esm/Picker/PickerLabel.d.ts +9 -0
- package/esm/Picker/PickerLabel.js +17 -0
- package/esm/Picker/PickerToggle.d.ts +17 -22
- package/esm/Picker/PickerToggle.js +54 -179
- package/esm/Picker/index.d.ts +3 -0
- package/esm/Picker/index.js +3 -0
- package/esm/Picker/usePickerRef.d.ts +19 -0
- package/esm/Picker/usePickerRef.js +82 -0
- package/esm/Picker/utils.d.ts +5 -9
- package/esm/Picker/utils.js +24 -90
- package/esm/SelectPicker/SelectPicker.d.ts +2 -2
- package/esm/SelectPicker/SelectPicker.js +42 -45
- package/esm/TreePicker/TreePicker.js +75 -78
- package/esm/index.d.ts +2 -0
- package/esm/index.js +1 -0
- package/esm/locales/index.d.ts +2 -2
- package/esm/utils/constants.d.ts +2 -1
- package/esm/utils/constants.js +1 -0
- package/esm/utils/dateUtils.d.ts +0 -1
- package/esm/utils/dateUtils.js +0 -5
- package/esm/utils/getStringLength.d.ts +2 -0
- package/esm/utils/getStringLength.js +13 -0
- package/esm/utils/index.d.ts +3 -0
- package/esm/utils/index.js +4 -1
- package/esm/utils/useCustom.js +2 -2
- package/esm/utils/useIsomorphicLayoutEffect.d.ts +3 -0
- package/esm/utils/useIsomorphicLayoutEffect.js +4 -0
- package/package.json +1 -1
- package/styles/color-modes/dark.less +1 -0
- package/styles/color-modes/high-contrast.less +1 -0
- package/styles/color-modes/light.less +1 -0
- package/styles/mixins/combobox.less +10 -0
- package/styles/normalize.less +230 -231
|
@@ -34,6 +34,7 @@ var CalendarContainer = /*#__PURE__*/_react.default.forwardRef(function (props,
|
|
|
34
34
|
hoverRangeValue = props.hoverRangeValue,
|
|
35
35
|
_props$isoWeek = props.isoWeek,
|
|
36
36
|
isoWeek = _props$isoWeek === void 0 ? false : _props$isoWeek,
|
|
37
|
+
targetId = props.targetId,
|
|
37
38
|
limitEndYear = props.limitEndYear,
|
|
38
39
|
limitStartYear = props.limitStartYear,
|
|
39
40
|
locale = props.locale,
|
|
@@ -46,7 +47,7 @@ var CalendarContainer = /*#__PURE__*/_react.default.forwardRef(function (props,
|
|
|
46
47
|
onToggleMeridian = props.onToggleMeridian,
|
|
47
48
|
onToggleMonthDropdown = props.onToggleMonthDropdown,
|
|
48
49
|
onToggleTimeDropdown = props.onToggleTimeDropdown,
|
|
49
|
-
|
|
50
|
+
calendarDateProp = props.calendarDate,
|
|
50
51
|
cellClassName = props.cellClassName,
|
|
51
52
|
renderCell = props.renderCell,
|
|
52
53
|
renderTitle = props.renderTitle,
|
|
@@ -54,7 +55,7 @@ var CalendarContainer = /*#__PURE__*/_react.default.forwardRef(function (props,
|
|
|
54
55
|
showMeridian = props.showMeridian,
|
|
55
56
|
showWeekNumbers = props.showWeekNumbers,
|
|
56
57
|
inline = props.inline,
|
|
57
|
-
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "className", "classPrefix", "dateRange", "disabledBackward", "defaultState", "disabledDate", "disabledForward", "format", "hoverRangeValue", "isoWeek", "limitEndYear", "limitStartYear", "locale", "onChangeMonth", "onChangeTime", "onMouseMove", "onMoveBackward", "onMoveForward", "onSelect", "onToggleMeridian", "onToggleMonthDropdown", "onToggleTimeDropdown", "calendarDate", "cellClassName", "renderCell", "renderTitle", "renderToolbar", "showMeridian", "showWeekNumbers", "inline"]);
|
|
58
|
+
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "className", "classPrefix", "dateRange", "disabledBackward", "defaultState", "disabledDate", "disabledForward", "format", "hoverRangeValue", "isoWeek", "targetId", "limitEndYear", "limitStartYear", "locale", "onChangeMonth", "onChangeTime", "onMouseMove", "onMoveBackward", "onMoveForward", "onSelect", "onToggleMeridian", "onToggleMonthDropdown", "onToggleTimeDropdown", "calendarDate", "cellClassName", "renderCell", "renderTitle", "renderToolbar", "showMeridian", "showWeekNumbers", "inline"]);
|
|
58
59
|
var _useClassNames = (0, _utils.useClassNames)(classPrefix),
|
|
59
60
|
withClassPrefix = _useClassNames.withClassPrefix,
|
|
60
61
|
merge = _useClassNames.merge,
|
|
@@ -64,6 +65,9 @@ var CalendarContainer = /*#__PURE__*/_react.default.forwardRef(function (props,
|
|
|
64
65
|
reset = _useCalendarState.reset,
|
|
65
66
|
openMonth = _useCalendarState.openMonth,
|
|
66
67
|
openTime = _useCalendarState.openTime;
|
|
68
|
+
var calendarDate = (0, _react.useMemo)(function () {
|
|
69
|
+
return (0, _dateUtils.isValid)(calendarDateProp) ? calendarDateProp : new Date();
|
|
70
|
+
}, [calendarDateProp]);
|
|
67
71
|
var isDisabledDate = (0, _react.useCallback)(function (date) {
|
|
68
72
|
var _disabledDate;
|
|
69
73
|
return (_disabledDate = disabledDate === null || disabledDate === void 0 ? void 0 : disabledDate(date)) !== null && _disabledDate !== void 0 ? _disabledDate : false;
|
|
@@ -129,6 +133,7 @@ var CalendarContainer = /*#__PURE__*/_react.default.forwardRef(function (props,
|
|
|
129
133
|
hoverRangeValue: hoverRangeValue,
|
|
130
134
|
inSameMonth: inSameThisMonthDate,
|
|
131
135
|
isoWeek: isoWeek,
|
|
136
|
+
targetId: targetId,
|
|
132
137
|
locale: locale,
|
|
133
138
|
onChangeMonth: handleChangeMonth,
|
|
134
139
|
onChangeTime: onChangeTime,
|
|
@@ -139,10 +144,12 @@ var CalendarContainer = /*#__PURE__*/_react.default.forwardRef(function (props,
|
|
|
139
144
|
showWeekNumbers: showWeekNumbers,
|
|
140
145
|
inline: inline
|
|
141
146
|
};
|
|
142
|
-
}, [calendarDate, dateRange, format, handleChangeMonth, hoverRangeValue, inSameThisMonthDate, inline, isDisabledDate, isoWeek, locale, onChangeTime, onMouseMove, onSelect, cellClassName, renderCell, showWeekNumbers]);
|
|
147
|
+
}, [calendarDate, dateRange, format, handleChangeMonth, hoverRangeValue, inSameThisMonthDate, inline, isDisabledDate, isoWeek, targetId, locale, onChangeTime, onMouseMove, onSelect, cellClassName, renderCell, showWeekNumbers]);
|
|
143
148
|
return /*#__PURE__*/_react.default.createElement(_CalendarContext.CalendarProvider, {
|
|
144
149
|
value: contextValue
|
|
145
|
-
}, /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
|
|
150
|
+
}, /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
|
|
151
|
+
"data-testid": "calendar"
|
|
152
|
+
}, (0, _dateUtils.omitHideDisabledProps)(rest), {
|
|
146
153
|
className: calendarClasses,
|
|
147
154
|
ref: ref
|
|
148
155
|
}), /*#__PURE__*/_react.default.createElement(_CalendarHeader.default, {
|
|
@@ -128,6 +128,7 @@ var CalendarHeader = /*#__PURE__*/_react.default.forwardRef(function (props, ref
|
|
|
128
128
|
}), hasMonth && monthToolbar, showTime && /*#__PURE__*/_react.default.createElement("div", {
|
|
129
129
|
className: prefix('time-toolbar')
|
|
130
130
|
}, /*#__PURE__*/_react.default.createElement(_Button.default, (0, _extends2.default)({}, btnProps, {
|
|
131
|
+
"aria-label": "Select time",
|
|
131
132
|
className: timeTitleClasses,
|
|
132
133
|
onClick: onToggleTimeDropdown,
|
|
133
134
|
disabled: disableSelectTime
|
|
@@ -135,6 +136,7 @@ var CalendarHeader = /*#__PURE__*/_react.default.forwardRef(function (props, ref
|
|
|
135
136
|
date: date,
|
|
136
137
|
formatStr: getTimeFormat()
|
|
137
138
|
})), showMeridian && /*#__PURE__*/_react.default.createElement(_Button.default, (0, _extends2.default)({}, btnProps, {
|
|
139
|
+
"aria-label": "Toggle meridian",
|
|
138
140
|
className: prefix('meridian'),
|
|
139
141
|
onClick: onToggleMeridian,
|
|
140
142
|
disabled: disableSelectTime
|
|
@@ -42,7 +42,8 @@ var MonthDropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
42
42
|
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "className", "classPrefix", "limitStartYear", "limitEndYear", "show", "height", "width", "disabledMonth"]);
|
|
43
43
|
var _useCalendarContext = (0, _CalendarContext.useCalendarContext)(),
|
|
44
44
|
_useCalendarContext$d = _useCalendarContext.date,
|
|
45
|
-
date = _useCalendarContext$d === void 0 ? new Date() : _useCalendarContext$d
|
|
45
|
+
date = _useCalendarContext$d === void 0 ? new Date() : _useCalendarContext$d,
|
|
46
|
+
targetId = _useCalendarContext.targetId;
|
|
46
47
|
var _useClassNames = (0, _utils.useClassNames)(classPrefix),
|
|
47
48
|
prefix = _useClassNames.prefix,
|
|
48
49
|
merge = _useClassNames.merge,
|
|
@@ -76,6 +77,7 @@ var MonthDropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
76
77
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
77
78
|
className: rowClassName,
|
|
78
79
|
role: "row",
|
|
80
|
+
"aria-label": "" + year,
|
|
79
81
|
style: style
|
|
80
82
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
81
83
|
className: titleClassName,
|
|
@@ -99,7 +101,10 @@ var MonthDropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
99
101
|
var initialItemIndex = _utils.DateUtils.getYear(date) - startYear;
|
|
100
102
|
var initialScrollOffset = itemSize * initialItemIndex;
|
|
101
103
|
return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
|
|
102
|
-
role: "
|
|
104
|
+
role: "grid",
|
|
105
|
+
"aria-label": "Select month",
|
|
106
|
+
tabIndex: -1,
|
|
107
|
+
id: targetId ? targetId + "-" + classPrefix : undefined
|
|
103
108
|
}, rest, {
|
|
104
109
|
ref: ref,
|
|
105
110
|
className: classes
|
|
@@ -61,8 +61,8 @@ var MonthDropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props,
|
|
|
61
61
|
return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
|
|
62
62
|
key: month,
|
|
63
63
|
role: "gridcell",
|
|
64
|
-
"aria-selected": active
|
|
65
|
-
"aria-disabled": disabled
|
|
64
|
+
"aria-selected": active,
|
|
65
|
+
"aria-disabled": disabled,
|
|
66
66
|
"aria-label": ariaLabel,
|
|
67
67
|
tabIndex: active ? 0 : -1,
|
|
68
68
|
ref: ref,
|
package/cjs/Calendar/Table.js
CHANGED
|
@@ -11,6 +11,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
11
11
|
var _TableRow = _interopRequireDefault(require("./TableRow"));
|
|
12
12
|
var _TableHeaderRow = _interopRequireDefault(require("./TableHeaderRow"));
|
|
13
13
|
var _utils = require("../utils");
|
|
14
|
+
var _CalendarContext = require("./CalendarContext");
|
|
14
15
|
var Table = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
15
16
|
var _props$as = props.as,
|
|
16
17
|
Component = _props$as === void 0 ? 'div' : _props$as,
|
|
@@ -24,8 +25,12 @@ var Table = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
24
25
|
merge = _useClassNames.merge,
|
|
25
26
|
withClassPrefix = _useClassNames.withClassPrefix;
|
|
26
27
|
var classes = merge(className, withClassPrefix());
|
|
28
|
+
var _useCalendarContext = (0, _CalendarContext.useCalendarContext)(),
|
|
29
|
+
targetId = _useCalendarContext.targetId;
|
|
27
30
|
return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
|
|
28
|
-
role: "grid"
|
|
31
|
+
role: "grid",
|
|
32
|
+
tabIndex: -1,
|
|
33
|
+
id: targetId ? targetId + "-" + classPrefix : undefined
|
|
29
34
|
}, rest, {
|
|
30
35
|
ref: ref,
|
|
31
36
|
className: classes
|
|
@@ -98,7 +98,8 @@ var TimeDropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
98
98
|
locale = _useCalendarContext.locale,
|
|
99
99
|
format = _useCalendarContext.format,
|
|
100
100
|
date = _useCalendarContext.date,
|
|
101
|
-
onSelect = _useCalendarContext.onChangeTime
|
|
101
|
+
onSelect = _useCalendarContext.onChangeTime,
|
|
102
|
+
targetId = _useCalendarContext.targetId;
|
|
102
103
|
var rowRef = (0, _react.useRef)(null);
|
|
103
104
|
(0, _react.useEffect)(function () {
|
|
104
105
|
var time = getTime({
|
|
@@ -149,24 +150,26 @@ var TimeDropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
149
150
|
});
|
|
150
151
|
items.push( /*#__PURE__*/_react.default.createElement("li", {
|
|
151
152
|
key: i,
|
|
152
|
-
role: "
|
|
153
|
-
}, /*#__PURE__*/_react.default.createElement("a", {
|
|
154
|
-
role: "button",
|
|
155
|
-
className: itemClasses,
|
|
153
|
+
role: "option",
|
|
156
154
|
tabIndex: -1,
|
|
155
|
+
"aria-label": i + " " + type,
|
|
156
|
+
"aria-selected": active === i,
|
|
157
|
+
"aria-disabled": disabled,
|
|
157
158
|
"data-key": type + "-" + i,
|
|
158
159
|
onClick: !disabled ? (0, _partial.default)(handleClick, type, i) : undefined
|
|
160
|
+
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
161
|
+
className: itemClasses
|
|
159
162
|
}, showMeridian && type === 'hours' && i === 0 ? '12' : i)));
|
|
160
163
|
}
|
|
161
164
|
}
|
|
162
165
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
163
|
-
className: prefix('column')
|
|
164
|
-
role: "listitem"
|
|
166
|
+
className: prefix('column')
|
|
165
167
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
166
168
|
className: prefix('column-title')
|
|
167
169
|
}, locale === null || locale === void 0 ? void 0 : locale[type]), /*#__PURE__*/_react.default.createElement("ul", {
|
|
168
170
|
"data-type": type,
|
|
169
|
-
role: "
|
|
171
|
+
role: "listbox",
|
|
172
|
+
"aria-label": "Select " + type
|
|
170
173
|
}, items));
|
|
171
174
|
};
|
|
172
175
|
var time = getTime({
|
|
@@ -174,9 +177,13 @@ var TimeDropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
174
177
|
date: date,
|
|
175
178
|
showMeridian: showMeridian
|
|
176
179
|
});
|
|
177
|
-
var classes = merge(className, rootPrefix(classPrefix)
|
|
180
|
+
var classes = merge(className, rootPrefix(classPrefix), {
|
|
181
|
+
show: show
|
|
182
|
+
});
|
|
178
183
|
return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
|
|
179
|
-
role: "
|
|
184
|
+
role: "group",
|
|
185
|
+
tabIndex: -1,
|
|
186
|
+
id: targetId ? targetId + "-" + classPrefix : undefined
|
|
180
187
|
}, _utils.DateUtils.omitHideDisabledProps(rest), {
|
|
181
188
|
ref: ref,
|
|
182
189
|
className: classes
|
package/cjs/Calendar/types.d.ts
CHANGED
|
@@ -16,6 +16,7 @@ export interface CalendarInnerContextValue {
|
|
|
16
16
|
cellClassName?: (date: Date) => string | undefined;
|
|
17
17
|
showWeekNumbers?: boolean;
|
|
18
18
|
inline?: boolean;
|
|
19
|
+
targetId?: string;
|
|
19
20
|
}
|
|
20
21
|
export interface CalendarContextValue extends CalendarInnerContextValue {
|
|
21
22
|
locale: CalendarLocale;
|
package/cjs/Cascader/Cascader.js
CHANGED
|
@@ -82,10 +82,12 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
82
82
|
var _useState = (0, _react.useState)(false),
|
|
83
83
|
active = _useState[0],
|
|
84
84
|
setActive = _useState[1];
|
|
85
|
-
var
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
85
|
+
var _usePickerRef = (0, _Picker.usePickerRef)(ref),
|
|
86
|
+
trigger = _usePickerRef.trigger,
|
|
87
|
+
root = _usePickerRef.root,
|
|
88
|
+
target = _usePickerRef.target,
|
|
89
|
+
overlay = _usePickerRef.overlay,
|
|
90
|
+
searchInput = _usePickerRef.searchInput;
|
|
89
91
|
var _ref = (0, _utils2.useControlled)(valueProp, defaultValue),
|
|
90
92
|
value = _ref[0],
|
|
91
93
|
setValue = _ref[1];
|
|
@@ -126,11 +128,6 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
126
128
|
columnsToDisplay = _usePaths.columnsToDisplay,
|
|
127
129
|
pathTowardsActiveItem = _usePaths.pathTowardsActiveItem,
|
|
128
130
|
pathTowardsSelectedItem = _usePaths.pathTowardsSelectedItem;
|
|
129
|
-
(0, _Picker.usePublicMethods)(ref, {
|
|
130
|
-
triggerRef: triggerRef,
|
|
131
|
-
overlayRef: overlayRef,
|
|
132
|
-
targetRef: targetRef
|
|
133
|
-
});
|
|
134
131
|
var _useCustom = (0, _utils2.useCustom)('Picker', overrideLocale),
|
|
135
132
|
locale = _useCustom.locale,
|
|
136
133
|
rtl = _useCustom.rtl;
|
|
@@ -145,7 +142,7 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
145
142
|
var _useState3 = (0, _react.useState)(''),
|
|
146
143
|
searchKeyword = _useState3[0],
|
|
147
144
|
setSearchKeyword = _useState3[1];
|
|
148
|
-
var someKeyword =
|
|
145
|
+
var someKeyword = function someKeyword(item, keyword) {
|
|
149
146
|
if (item[labelKey].match(new RegExp((0, _utils2.getSafeRegExpString)(keyword || searchKeyword), 'i'))) {
|
|
150
147
|
return true;
|
|
151
148
|
}
|
|
@@ -154,8 +151,8 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
154
151
|
return true;
|
|
155
152
|
}
|
|
156
153
|
return false;
|
|
157
|
-
}
|
|
158
|
-
var getSearchResult =
|
|
154
|
+
};
|
|
155
|
+
var getSearchResult = function getSearchResult(keyword) {
|
|
159
156
|
var items = [];
|
|
160
157
|
var result = flattenedData.filter(function (item) {
|
|
161
158
|
if (!parentSelectable && item[childrenKey]) {
|
|
@@ -172,7 +169,7 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
172
169
|
}
|
|
173
170
|
}
|
|
174
171
|
return items;
|
|
175
|
-
}
|
|
172
|
+
};
|
|
176
173
|
|
|
177
174
|
// Used to hover the focuse item when trigger `onKeydown`
|
|
178
175
|
var _useFocusItemValue = (0, _Picker.useFocusItemValue)(value, {
|
|
@@ -181,7 +178,7 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
181
178
|
valueKey: valueKey,
|
|
182
179
|
defaultLayer: pathTowardsSelectedItem !== null && pathTowardsSelectedItem !== void 0 && pathTowardsSelectedItem.length ? pathTowardsSelectedItem.length - 1 : 0,
|
|
183
180
|
target: function target() {
|
|
184
|
-
return
|
|
181
|
+
return overlay.current;
|
|
185
182
|
},
|
|
186
183
|
getParent: function getParent(item) {
|
|
187
184
|
return parentMap.get(item);
|
|
@@ -197,7 +194,7 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
197
194
|
setLayer = _useFocusItemValue.setLayer,
|
|
198
195
|
setKeys = _useFocusItemValue.setKeys,
|
|
199
196
|
onFocusItem = _useFocusItemValue.onKeyDown;
|
|
200
|
-
var handleSearch = (0,
|
|
197
|
+
var handleSearch = (0, _utils2.useEventCallback)(function (value, event) {
|
|
201
198
|
var items = getSearchResult(value);
|
|
202
199
|
setSearchKeyword(value);
|
|
203
200
|
onSearch === null || onSearch === void 0 ? void 0 : onSearch(value, event);
|
|
@@ -210,37 +207,37 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
210
207
|
setLayer(0);
|
|
211
208
|
setKeys([]);
|
|
212
209
|
}
|
|
213
|
-
}
|
|
214
|
-
var handleEntered = (0,
|
|
215
|
-
if (!
|
|
210
|
+
});
|
|
211
|
+
var handleEntered = (0, _utils2.useEventCallback)(function () {
|
|
212
|
+
if (!target.current) {
|
|
216
213
|
return;
|
|
217
214
|
}
|
|
218
215
|
onOpen === null || onOpen === void 0 ? void 0 : onOpen();
|
|
219
216
|
setActive(true);
|
|
220
|
-
}
|
|
221
|
-
var handleExited = (0,
|
|
222
|
-
if (!
|
|
217
|
+
});
|
|
218
|
+
var handleExited = (0, _utils2.useEventCallback)(function () {
|
|
219
|
+
if (!target.current) {
|
|
223
220
|
return;
|
|
224
221
|
}
|
|
225
222
|
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
226
223
|
setActive(false);
|
|
227
224
|
setSearchKeyword('');
|
|
228
|
-
}
|
|
229
|
-
var handleClose = (0,
|
|
230
|
-
var
|
|
231
|
-
(
|
|
225
|
+
});
|
|
226
|
+
var handleClose = (0, _utils2.useEventCallback)(function () {
|
|
227
|
+
var _trigger$current, _target$current, _target$current$focus;
|
|
228
|
+
(_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : _trigger$current.close();
|
|
232
229
|
|
|
233
230
|
// The focus is on the trigger button after closing
|
|
234
|
-
(
|
|
235
|
-
}
|
|
236
|
-
var handleClean = (0,
|
|
237
|
-
if (disabled || !
|
|
231
|
+
(_target$current = target.current) === null || _target$current === void 0 ? void 0 : (_target$current$focus = _target$current.focus) === null || _target$current$focus === void 0 ? void 0 : _target$current$focus.call(_target$current);
|
|
232
|
+
});
|
|
233
|
+
var handleClean = (0, _utils2.useEventCallback)(function (event) {
|
|
234
|
+
if (disabled || !target.current) {
|
|
238
235
|
return;
|
|
239
236
|
}
|
|
240
237
|
setValue(null);
|
|
241
238
|
onChange === null || onChange === void 0 ? void 0 : onChange(null, event);
|
|
242
|
-
}
|
|
243
|
-
var handleMenuPressEnter = (0,
|
|
239
|
+
});
|
|
240
|
+
var handleMenuPressEnter = (0, _utils2.useEventCallback)(function (event) {
|
|
244
241
|
var focusItem = (0, _treeUtils.findNodeOfTree)(data, function (item) {
|
|
245
242
|
return item[valueKey] === focusItemValue;
|
|
246
243
|
});
|
|
@@ -256,20 +253,20 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
256
253
|
}
|
|
257
254
|
handleClose();
|
|
258
255
|
}
|
|
259
|
-
}
|
|
256
|
+
});
|
|
260
257
|
var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends3.default)({
|
|
261
258
|
toggle: !focusItemValue || !active,
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
259
|
+
trigger: trigger,
|
|
260
|
+
target: target,
|
|
261
|
+
overlay: overlay,
|
|
262
|
+
searchInput: searchInput,
|
|
266
263
|
active: active,
|
|
267
264
|
onExit: handleClean,
|
|
268
265
|
onMenuKeyDown: onFocusItem,
|
|
269
266
|
onMenuPressEnter: handleMenuPressEnter
|
|
270
267
|
}, rest));
|
|
271
|
-
var handleSelect = function
|
|
272
|
-
var _node$childrenKey,
|
|
268
|
+
var handleSelect = (0, _utils2.useEventCallback)(function (node, cascadePaths, isLeafNode, event) {
|
|
269
|
+
var _node$childrenKey, _trigger$current2;
|
|
273
270
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event);
|
|
274
271
|
setActiveItem(node);
|
|
275
272
|
var nextValue = node[valueKey];
|
|
@@ -307,20 +304,20 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
307
304
|
}
|
|
308
305
|
|
|
309
306
|
// Update menu position
|
|
310
|
-
(
|
|
311
|
-
};
|
|
307
|
+
(_trigger$current2 = trigger.current) === null || _trigger$current2 === void 0 ? void 0 : _trigger$current2.updatePosition();
|
|
308
|
+
});
|
|
312
309
|
|
|
313
310
|
/**
|
|
314
311
|
* The search structure option is processed after being selected.
|
|
315
312
|
*/
|
|
316
|
-
var handleSearchRowSelect = function
|
|
313
|
+
var handleSearchRowSelect = (0, _utils2.useEventCallback)(function (node, nodes, event) {
|
|
317
314
|
var nextValue = node[valueKey];
|
|
318
315
|
handleClose();
|
|
319
316
|
setSearchKeyword('');
|
|
320
317
|
setValue(nextValue);
|
|
321
318
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, nodes, event);
|
|
322
319
|
onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);
|
|
323
|
-
};
|
|
320
|
+
});
|
|
324
321
|
var renderSearchRow = function renderSearchRow(item, key) {
|
|
325
322
|
var regx = new RegExp((0, _utils2.getSafeRegExpString)(searchKeyword), 'ig');
|
|
326
323
|
var nodes = (0, _treeUtils.getPathTowardsItem)(item, function (item) {
|
|
@@ -397,16 +394,16 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
397
394
|
inline: inline
|
|
398
395
|
}));
|
|
399
396
|
return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {
|
|
400
|
-
ref: (0, _utils2.mergeRefs)(
|
|
397
|
+
ref: (0, _utils2.mergeRefs)(overlay, speakerRef),
|
|
401
398
|
className: classes,
|
|
402
399
|
style: styles,
|
|
403
|
-
target:
|
|
400
|
+
target: trigger,
|
|
404
401
|
onKeyDown: onPickerKeyDown
|
|
405
402
|
}, searchable && /*#__PURE__*/_react.default.createElement(_Picker.SearchBar, {
|
|
406
403
|
placeholder: locale === null || locale === void 0 ? void 0 : locale.searchPlaceholder,
|
|
407
404
|
onChange: handleSearch,
|
|
408
405
|
value: searchKeyword,
|
|
409
|
-
inputRef:
|
|
406
|
+
inputRef: searchInput
|
|
410
407
|
}), renderSearchResultPanel(), searchKeyword === '' && /*#__PURE__*/_react.default.createElement(_DropdownMenu.default, {
|
|
411
408
|
id: id ? id + "-listbox" : undefined,
|
|
412
409
|
menuWidth: menuWidth,
|
|
@@ -465,17 +462,18 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
465
462
|
}
|
|
466
463
|
return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {
|
|
467
464
|
pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),
|
|
468
|
-
ref:
|
|
465
|
+
ref: trigger,
|
|
469
466
|
placement: placement,
|
|
470
467
|
onEntered: (0, _utils2.createChainedFunction)(handleEntered, onEnter),
|
|
471
468
|
onExited: (0, _utils2.createChainedFunction)(handleExited, onExited),
|
|
472
469
|
speaker: renderDropdownMenu
|
|
473
470
|
}, /*#__PURE__*/_react.default.createElement(Component, {
|
|
474
471
|
className: classes,
|
|
475
|
-
style: style
|
|
472
|
+
style: style,
|
|
473
|
+
ref: root
|
|
476
474
|
}, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends3.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {
|
|
477
475
|
id: id,
|
|
478
|
-
ref:
|
|
476
|
+
ref: target,
|
|
479
477
|
as: toggleAs,
|
|
480
478
|
appearance: appearance,
|
|
481
479
|
disabled: disabled,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { PickerLocale } from '../locales';
|
|
3
3
|
import { PickerHandle, PickerToggleProps } from '../Picker';
|
|
4
4
|
import { ItemDataType, FormControlPickerProps } from '../@types/common';
|
|
@@ -12,7 +12,7 @@ export interface CheckPickerProps<T> extends FormControlPickerProps<T[], PickerL
|
|
|
12
12
|
}
|
|
13
13
|
export interface CheckPickerComponent {
|
|
14
14
|
<T>(props: CheckPickerProps<T> & {
|
|
15
|
-
ref?: Ref<PickerHandle>;
|
|
15
|
+
ref?: React.Ref<PickerHandle>;
|
|
16
16
|
}): JSX.Element | null;
|
|
17
17
|
displayName?: string;
|
|
18
18
|
propTypes?: React.WeakValidationMap<CheckPickerProps<any>>;
|
|
@@ -86,11 +86,13 @@ var CheckPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
86
86
|
onClose = props.onClose,
|
|
87
87
|
onOpen = props.onOpen,
|
|
88
88
|
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "appearance", "classPrefix", "countable", "data", "disabledItemValues", "valueKey", "labelKey", "searchable", "virtualized", "cleanable", "placement", "menuAutoWidth", "menuMaxHeight", "menuClassName", "menuStyle", "locale", "placeholder", "disabled", "toggleAs", "style", "sticky", "value", "defaultValue", "groupBy", "listProps", "id", "sort", "searchBy", "renderMenuItem", "renderMenuGroup", "renderValue", "renderExtraFooter", "renderMenu", "onGroupTitleClick", "onSearch", "onEnter", "onEntered", "onExited", "onClean", "onChange", "onSelect", "onClose", "onOpen"]);
|
|
89
|
-
var
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
89
|
+
var _usePickerRef = (0, _Picker.usePickerRef)(ref),
|
|
90
|
+
trigger = _usePickerRef.trigger,
|
|
91
|
+
root = _usePickerRef.root,
|
|
92
|
+
target = _usePickerRef.target,
|
|
93
|
+
overlay = _usePickerRef.overlay,
|
|
94
|
+
list = _usePickerRef.list,
|
|
95
|
+
searchInput = _usePickerRef.searchInput;
|
|
94
96
|
var _useCustom = (0, _utils.useCustom)('Picker', overrideLocale),
|
|
95
97
|
locale = _useCustom.locale;
|
|
96
98
|
var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue || []),
|
|
@@ -100,18 +102,18 @@ var CheckPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
100
102
|
data: data,
|
|
101
103
|
valueKey: valueKey,
|
|
102
104
|
target: function target() {
|
|
103
|
-
return
|
|
105
|
+
return overlay.current;
|
|
104
106
|
}
|
|
105
107
|
}),
|
|
106
108
|
focusItemValue = _useFocusItemValue.focusItemValue,
|
|
107
109
|
setFocusItemValue = _useFocusItemValue.setFocusItemValue,
|
|
108
110
|
onFocusItem = _useFocusItemValue.onKeyDown;
|
|
109
|
-
var handleSearchCallback = (0,
|
|
111
|
+
var handleSearchCallback = (0, _utils.useEventCallback)(function (searchKeyword, filteredData, event) {
|
|
110
112
|
var _filteredData$;
|
|
111
113
|
// The first option after filtering is the focus.
|
|
112
114
|
setFocusItemValue(filteredData === null || filteredData === void 0 ? void 0 : (_filteredData$ = filteredData[0]) === null || _filteredData$ === void 0 ? void 0 : _filteredData$[valueKey]);
|
|
113
115
|
onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);
|
|
114
|
-
}
|
|
116
|
+
});
|
|
115
117
|
|
|
116
118
|
// Use search keywords to filter options.
|
|
117
119
|
var _useSearch = (0, _Picker.useSearch)(data, {
|
|
@@ -145,17 +147,17 @@ var CheckPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
145
147
|
}
|
|
146
148
|
setStickyItems(nextStickyItems);
|
|
147
149
|
};
|
|
148
|
-
var handleChangeValue = (0,
|
|
150
|
+
var handleChangeValue = (0, _utils.useEventCallback)(function (value, event) {
|
|
149
151
|
onChange === null || onChange === void 0 ? void 0 : onChange(value, event);
|
|
150
|
-
}
|
|
151
|
-
var handleClean = (0,
|
|
152
|
+
});
|
|
153
|
+
var handleClean = (0, _utils.useEventCallback)(function (event) {
|
|
152
154
|
if (disabled || !cleanable) {
|
|
153
155
|
return;
|
|
154
156
|
}
|
|
155
157
|
setValue([]);
|
|
156
158
|
onClean === null || onClean === void 0 ? void 0 : onClean(event);
|
|
157
159
|
handleChangeValue([], event);
|
|
158
|
-
}
|
|
160
|
+
});
|
|
159
161
|
var handleMenuPressEnter = function handleMenuPressEnter(event) {
|
|
160
162
|
var nextValue = (0, _clone.default)(value);
|
|
161
163
|
if (!focusItemValue) {
|
|
@@ -179,10 +181,10 @@ var CheckPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
179
181
|
};
|
|
180
182
|
var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({
|
|
181
183
|
toggle: !focusItemValue || !active,
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
184
|
+
trigger: trigger,
|
|
185
|
+
target: target,
|
|
186
|
+
overlay: overlay,
|
|
187
|
+
searchInput: searchInput,
|
|
186
188
|
active: active,
|
|
187
189
|
onExit: handleClean,
|
|
188
190
|
onMenuKeyDown: onFocusItem,
|
|
@@ -192,10 +194,10 @@ var CheckPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
192
194
|
setFocusItemValue(null);
|
|
193
195
|
}
|
|
194
196
|
}, rest));
|
|
195
|
-
var handleSelect = (0,
|
|
197
|
+
var handleSelect = (0, _utils.useEventCallback)(function (nextItemValue, item, event) {
|
|
196
198
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(nextItemValue, item, event);
|
|
197
|
-
}
|
|
198
|
-
var handleItemSelect = (0,
|
|
199
|
+
});
|
|
200
|
+
var handleItemSelect = (0, _utils.useEventCallback)(function (nextItemValue, item, event, checked) {
|
|
199
201
|
var nextValue = (0, _clone.default)(value);
|
|
200
202
|
if (checked) {
|
|
201
203
|
nextValue.push(nextItemValue);
|
|
@@ -208,22 +210,16 @@ var CheckPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
208
210
|
setFocusItemValue(nextItemValue);
|
|
209
211
|
handleSelect(nextValue, item, event);
|
|
210
212
|
handleChangeValue(nextValue, event);
|
|
211
|
-
}
|
|
212
|
-
var handleEntered = (0,
|
|
213
|
+
});
|
|
214
|
+
var handleEntered = (0, _utils.useEventCallback)(function () {
|
|
213
215
|
setActive(true);
|
|
214
216
|
onOpen === null || onOpen === void 0 ? void 0 : onOpen();
|
|
215
|
-
}
|
|
216
|
-
var handleExited = (0,
|
|
217
|
+
});
|
|
218
|
+
var handleExited = (0, _utils.useEventCallback)(function () {
|
|
217
219
|
resetSearch();
|
|
218
220
|
setFocusItemValue(null);
|
|
219
221
|
setActive(false);
|
|
220
222
|
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
221
|
-
}, [onClose, setFocusItemValue, resetSearch]);
|
|
222
|
-
(0, _Picker.usePublicMethods)(ref, {
|
|
223
|
-
triggerRef: triggerRef,
|
|
224
|
-
overlayRef: overlayRef,
|
|
225
|
-
targetRef: targetRef,
|
|
226
|
-
listRef: listRef
|
|
227
223
|
});
|
|
228
224
|
var selectedItems = data.filter(function (item) {
|
|
229
225
|
return value === null || value === void 0 ? void 0 : value.some(function (val) {
|
|
@@ -287,7 +283,7 @@ var CheckPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
287
283
|
var menu = items.length || filteredStickyItems.length ? /*#__PURE__*/_react.default.createElement(_Picker.DropdownMenu, {
|
|
288
284
|
id: id ? id + "-listbox" : undefined,
|
|
289
285
|
listProps: listProps,
|
|
290
|
-
listRef:
|
|
286
|
+
listRef: list,
|
|
291
287
|
disabledItemValues: disabledItemValues,
|
|
292
288
|
valueKey: valueKey,
|
|
293
289
|
labelKey: labelKey,
|
|
@@ -310,17 +306,17 @@ var CheckPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
310
306
|
className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["none"])))
|
|
311
307
|
}, locale === null || locale === void 0 ? void 0 : locale.noResultsText);
|
|
312
308
|
return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {
|
|
313
|
-
ref: (0, _utils.mergeRefs)(
|
|
309
|
+
ref: (0, _utils.mergeRefs)(overlay, speakerRef),
|
|
314
310
|
autoWidth: menuAutoWidth,
|
|
315
311
|
className: classes,
|
|
316
312
|
style: styles,
|
|
317
313
|
onKeyDown: onPickerKeyDown,
|
|
318
|
-
target:
|
|
314
|
+
target: trigger
|
|
319
315
|
}, searchable && /*#__PURE__*/_react.default.createElement(_Picker.SearchBar, {
|
|
320
316
|
placeholder: locale === null || locale === void 0 ? void 0 : locale.searchPlaceholder,
|
|
321
317
|
onChange: handleSearch,
|
|
322
318
|
value: searchKeyword,
|
|
323
|
-
inputRef:
|
|
319
|
+
inputRef: searchInput
|
|
324
320
|
}), renderMenu ? renderMenu(menu) : menu, renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());
|
|
325
321
|
};
|
|
326
322
|
var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {
|
|
@@ -335,7 +331,7 @@ var CheckPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
335
331
|
usedClassNamePropKeys = _usePickerClassName[1];
|
|
336
332
|
return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {
|
|
337
333
|
pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),
|
|
338
|
-
ref:
|
|
334
|
+
ref: trigger,
|
|
339
335
|
placement: placement,
|
|
340
336
|
onEnter: (0, _utils.createChainedFunction)(initStickyItems, onEnter),
|
|
341
337
|
onEntered: (0, _utils.createChainedFunction)(handleEntered, onEntered),
|
|
@@ -343,10 +339,11 @@ var CheckPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
343
339
|
speaker: renderDropdownMenu
|
|
344
340
|
}, /*#__PURE__*/_react.default.createElement(Component, {
|
|
345
341
|
className: classes,
|
|
346
|
-
style: style
|
|
342
|
+
style: style,
|
|
343
|
+
ref: root
|
|
347
344
|
}, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {
|
|
348
345
|
id: id,
|
|
349
|
-
ref:
|
|
346
|
+
ref: target,
|
|
350
347
|
appearance: appearance,
|
|
351
348
|
disabled: disabled,
|
|
352
349
|
onClean: handleClean,
|