@hi-ui/check-select 4.4.4 → 4.6.0-alpha.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 CHANGED
@@ -1,5 +1,11 @@
1
1
  # @hi-ui/check-select
2
2
 
3
+ ## 4.5.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#2970](https://github.com/XiaoMi/hiui/pull/2970) [`657d180`](https://github.com/XiaoMi/hiui/commit/657d1802ac424e2498f9036047cc74a34659d5d6) Thanks [@xiamiao1121](https://github.com/xiamiao1121)! - feat: 支持按 Enter 键是否选中当前项功能,checkedOnEntered 默认为 true
8
+
3
9
  ## 4.4.4
4
10
 
5
11
  ### Patch Changes
@@ -79,6 +79,7 @@ var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
79
79
  appearance = _a.appearance,
80
80
  invalid = _a.invalid,
81
81
  dataSource = _a.dataSource,
82
+ searchOnInit = _a.searchOnInit,
82
83
  filterOption = _a.filterOption,
83
84
  searchableProp = _a.searchable,
84
85
  titleRender = _a.render,
@@ -86,6 +87,8 @@ var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
86
87
  onSearchProp = _a.onSearch,
87
88
  _a$fieldNames = _a.fieldNames,
88
89
  fieldNames = _a$fieldNames === void 0 ? DEFAULT_FIELD_NAMES : _a$fieldNames,
90
+ _a$checkedOnEntered = _a.checkedOnEntered,
91
+ checkedOnEntered = _a$checkedOnEntered === void 0 ? true : _a$checkedOnEntered,
89
92
  customRender = _a.customRender,
90
93
  tagInputProps = _a.tagInputProps,
91
94
  _a$size = _a.size,
@@ -94,7 +97,7 @@ var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
94
97
  suffix = _a.suffix,
95
98
  onKeyDownProp = _a.onKeyDown,
96
99
  keywordProp = _a.keyword,
97
- rest = tslib.__rest(_a, ["prefixCls", "role", "className", "children", "disabled", "clearable", "showCheckAll", "showOnlyShowChecked", "placeholder", "displayRender", "onSelect", "height", "itemHeight", "virtual", "visible", "onOpen", "onClose", "onClear", "appearance", "invalid", "dataSource", "filterOption", "searchable", "render", "renderExtraFooter", "onSearch", "fieldNames", "customRender", "tagInputProps", "size", "prefix", "suffix", "onKeyDown", "keyword"]);
100
+ rest = tslib.__rest(_a, ["prefixCls", "role", "className", "children", "disabled", "clearable", "showCheckAll", "showOnlyShowChecked", "placeholder", "displayRender", "onSelect", "height", "itemHeight", "virtual", "visible", "onOpen", "onClose", "onClear", "appearance", "invalid", "dataSource", "searchOnInit", "filterOption", "searchable", "render", "renderExtraFooter", "onSearch", "fieldNames", "checkedOnEntered", "customRender", "tagInputProps", "size", "prefix", "suffix", "onKeyDown", "keyword"]);
98
101
  var i18n = core.useLocaleContext();
99
102
  var placeholder = typeAssertion.isUndef(placeholderProp) ? i18n.get('checkSelect.placeholder') : placeholderProp;
100
103
  // ************************** Picker ************************* //
@@ -150,7 +153,8 @@ var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
150
153
  var _useSearchMode = useSearchMode.useSearchMode({
151
154
  searchable: searchableProp,
152
155
  keyword: keywordProp,
153
- strategies: [dataSourceStrategy, customSearchStrategy, filterSearchStrategy]
156
+ strategies: [dataSourceStrategy, customSearchStrategy, filterSearchStrategy],
157
+ searchOnInit: searchOnInit
154
158
  }),
155
159
  stateInSearch = _useSearchMode.state,
156
160
  searchable = _useSearchMode.searchable,
@@ -238,7 +242,7 @@ var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
238
242
  setFocusedIndex = _useState2[1];
239
243
  var handleKeyDown = useLatest.useLatestCallback(function (evt) {
240
244
  var key = evt.key;
241
- if (key === 'Enter') {
245
+ if (key === 'Enter' && checkedOnEntered) {
242
246
  var focusedItem = showData[focusedIndex];
243
247
  if (focusedItem) {
244
248
  onSelect(focusedItem, !isCheckedId(focusedItem.id));
@@ -65,6 +65,7 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
65
65
  appearance = _a.appearance,
66
66
  invalid = _a.invalid,
67
67
  dataSource = _a.dataSource,
68
+ searchOnInit = _a.searchOnInit,
68
69
  filterOption = _a.filterOption,
69
70
  searchableProp = _a.searchable,
70
71
  titleRender = _a.render,
@@ -72,6 +73,8 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
72
73
  onSearchProp = _a.onSearch,
73
74
  _a$fieldNames = _a.fieldNames,
74
75
  fieldNames = _a$fieldNames === void 0 ? DEFAULT_FIELD_NAMES : _a$fieldNames,
76
+ _a$checkedOnEntered = _a.checkedOnEntered,
77
+ checkedOnEntered = _a$checkedOnEntered === void 0 ? true : _a$checkedOnEntered,
75
78
  customRender = _a.customRender,
76
79
  tagInputProps = _a.tagInputProps,
77
80
  _a$size = _a.size,
@@ -80,7 +83,7 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
80
83
  suffix = _a.suffix,
81
84
  onKeyDownProp = _a.onKeyDown,
82
85
  keywordProp = _a.keyword,
83
- rest = __rest(_a, ["prefixCls", "role", "className", "children", "disabled", "clearable", "showCheckAll", "showOnlyShowChecked", "placeholder", "displayRender", "onSelect", "height", "itemHeight", "virtual", "visible", "onOpen", "onClose", "onClear", "appearance", "invalid", "dataSource", "filterOption", "searchable", "render", "renderExtraFooter", "onSearch", "fieldNames", "customRender", "tagInputProps", "size", "prefix", "suffix", "onKeyDown", "keyword"]);
86
+ rest = __rest(_a, ["prefixCls", "role", "className", "children", "disabled", "clearable", "showCheckAll", "showOnlyShowChecked", "placeholder", "displayRender", "onSelect", "height", "itemHeight", "virtual", "visible", "onOpen", "onClose", "onClear", "appearance", "invalid", "dataSource", "searchOnInit", "filterOption", "searchable", "render", "renderExtraFooter", "onSearch", "fieldNames", "checkedOnEntered", "customRender", "tagInputProps", "size", "prefix", "suffix", "onKeyDown", "keyword"]);
84
87
  var i18n = useLocaleContext();
85
88
  var placeholder = isUndef(placeholderProp) ? i18n.get('checkSelect.placeholder') : placeholderProp;
86
89
  // ************************** Picker ************************* //
@@ -136,7 +139,8 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
136
139
  var _useSearchMode = useSearchMode({
137
140
  searchable: searchableProp,
138
141
  keyword: keywordProp,
139
- strategies: [dataSourceStrategy, customSearchStrategy, filterSearchStrategy]
142
+ strategies: [dataSourceStrategy, customSearchStrategy, filterSearchStrategy],
143
+ searchOnInit: searchOnInit
140
144
  }),
141
145
  stateInSearch = _useSearchMode.state,
142
146
  searchable = _useSearchMode.searchable,
@@ -224,7 +228,7 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
224
228
  setFocusedIndex = _useState2[1];
225
229
  var handleKeyDown = useLatestCallback(function (evt) {
226
230
  var key = evt.key;
227
- if (key === 'Enter') {
231
+ if (key === 'Enter' && checkedOnEntered) {
228
232
  var focusedItem = showData[focusedIndex];
229
233
  if (focusedItem) {
230
234
  onSelect(focusedItem, !isCheckedId(focusedItem.id));
@@ -70,6 +70,10 @@ export interface CheckSelectProps extends Omit<PickerProps, 'trigger' | 'scrolla
70
70
  * 异步加载数据
71
71
  */
72
72
  dataSource?: UseDataSource<CheckSelectMergedItem[]>;
73
+ /**
74
+ * 初始化时执行一次搜索,仅在 dataSource 不为空时有效
75
+ */
76
+ searchOnInit?: boolean;
73
77
  /**
74
78
  * 自定义下拉菜单底部渲染
75
79
  */
@@ -102,6 +106,10 @@ export interface CheckSelectProps extends Omit<PickerProps, 'trigger' | 'scrolla
102
106
  * 是否开启查看仅已选功能
103
107
  */
104
108
  showOnlyShowChecked?: boolean;
109
+ /**
110
+ * 按Enter键是否选中当前项
111
+ */
112
+ checkedOnEntered?: boolean;
105
113
  /**
106
114
  * 自定义渲染选中的内容
107
115
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hi-ui/check-select",
3
- "version": "4.4.4",
3
+ "version": "4.6.0-alpha.0",
4
4
  "description": "A sub-package for @hi-ui/hiui.",
5
5
  "keywords": [],
6
6
  "author": "HiUI <mi-hiui@xiaomi.com>",