@hi-ui/check-select 5.0.0-experimental.0 → 5.0.0-experimental.2
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 +443 -0
- package/lib/cjs/CheckSelect.js +67 -9
- package/lib/esm/CheckSelect.js +67 -9
- package/lib/types/CheckSelect.d.ts +7 -2
- package/lib/types/context.d.ts +12 -5
- package/package.json +13 -12
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,443 @@
|
|
|
1
|
+
# @hi-ui/check-select
|
|
2
|
+
|
|
3
|
+
## 5.0.0-experimental.2
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 59cef699f: feat: 组件语义化样式改造,增加 styles 和 classNames 属性 (5.0)
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- eb17c4697: style: 修复 UI/样式问题 (5.0)
|
|
12
|
+
- Updated dependencies [7f204c892]
|
|
13
|
+
- Updated dependencies [eb17c4697]
|
|
14
|
+
- Updated dependencies [eb17c4697]
|
|
15
|
+
- Updated dependencies [c407744fe]
|
|
16
|
+
- Updated dependencies [59cef699f]
|
|
17
|
+
- @hi-ui/icons@5.0.0-experimental.1
|
|
18
|
+
- @hi-ui/core@5.0.0-experimental.1
|
|
19
|
+
- @hi-ui/checkbox@5.0.0-experimental.1
|
|
20
|
+
- @hi-ui/highlighter@5.0.0-experimental.1
|
|
21
|
+
- @hi-ui/input@5.0.0-experimental.2
|
|
22
|
+
- @hi-ui/picker@5.0.0-experimental.2
|
|
23
|
+
- @hi-ui/popper@5.0.0-experimental.1
|
|
24
|
+
- @hi-ui/tag-input@5.0.0-experimental.2
|
|
25
|
+
- @hi-ui/virtual-list@5.0.0-experimental.1
|
|
26
|
+
- @hi-ui/use-merge-semantic@5.0.0-experimental.0
|
|
27
|
+
|
|
28
|
+
## 5.0.0-experimental.1
|
|
29
|
+
|
|
30
|
+
### Minor Changes
|
|
31
|
+
|
|
32
|
+
- b27483796: feat(picker, select, check-select): add creatableInSearchVisible prop to control visibility of creation entry based on search results (5.0)
|
|
33
|
+
|
|
34
|
+
### Patch Changes
|
|
35
|
+
|
|
36
|
+
- 8f23e9322: style: 表单类组件统一调整后缀颜色、placeholder 颜色 (5.0)
|
|
37
|
+
- 发布 hiui experimental 版本
|
|
38
|
+
- Updated dependencies [8f23e9322]
|
|
39
|
+
- Updated dependencies [b27483796]
|
|
40
|
+
- Updated dependencies [900c6c2f0]
|
|
41
|
+
- Updated dependencies
|
|
42
|
+
- @hi-ui/input@5.0.0-experimental.1
|
|
43
|
+
- @hi-ui/picker@5.0.0-experimental.1
|
|
44
|
+
- @hi-ui/tag-input@5.0.0-experimental.1
|
|
45
|
+
|
|
46
|
+
## 5.0.0-experimental.0
|
|
47
|
+
|
|
48
|
+
### Major Changes
|
|
49
|
+
|
|
50
|
+
- 8f3aa85e4: feat: 组件的 package.json 中的 exports 统一加上 types 配置 (5.0)
|
|
51
|
+
|
|
52
|
+
### Minor Changes
|
|
53
|
+
|
|
54
|
+
- b9989e482: feat(picker): 增加 clearSearchOnClosed api 默认是 false (5.0)
|
|
55
|
+
- f1ab51725: <br>
|
|
56
|
+
- feat(picker): 下拉选择类组件增加 xs 尺寸 (5.0)
|
|
57
|
+
- feat(input): 输入框组件增加 xs 尺寸 (5.0)
|
|
58
|
+
- 6dca7795c: feat: 下拉选择组件增加 showIndicator 参数 & 修改 appearance 中的 unset 样式 (5.0)
|
|
59
|
+
- 77d969c2e: feat: 下拉选择类组件 appearance 参数增加 contained 类型 (5.0)
|
|
60
|
+
- 58ad82e94: feat: 输入框和选择器组件增加 borderless 形态 (5.0)
|
|
61
|
+
- cb7b794d0: feat(select): 增加 creatableInSearch、createTitle 参数,支持在搜索无结果时可创建选项 (5.0)
|
|
62
|
+
|
|
63
|
+
### Patch Changes
|
|
64
|
+
|
|
65
|
+
- 1662753e0: style: fix ui bug (5.0)
|
|
66
|
+
- cf89262c7: style(picker): 移除 picker 组件中的 \_\_text 样式定义 (5.0)
|
|
67
|
+
- cb9d8f6db: fix(tag-input): 修复 contained 模式下 displayRender 设置无效问题 (5.0)
|
|
68
|
+
- be5a59325: style: 修改样式问题 (5.0)
|
|
69
|
+
- 79ea480f3: feat(global-context): 增加 size api 全局配置 (5.0)
|
|
70
|
+
- 2e56529f7: styles: 主题定制功能完善&&样式变量化写法改造&&兼容 RTL (5.0)
|
|
71
|
+
- eb718e940: fix: 修改组件问题 (5.0)
|
|
72
|
+
- 95abba983: fix: 修改 UI 问题 (5.0)
|
|
73
|
+
- de8d058dc: perf: 对下拉选择类组件的 customRender 的内容增加 memoization 以优化性能 (5.0)
|
|
74
|
+
- 5210770d9: feat(picker): add header api (5.0)
|
|
75
|
+
- 33da3144e: build: 将 package.json 中 exports 配置中的 types 配置放在最上面 (5.0)
|
|
76
|
+
- e7b64347e: style(tag-input): 增加 flex-wrap 属性以优化标签换行展示 (5.0)
|
|
77
|
+
- 7f3abee55: style: fix ui bug (5.0)
|
|
78
|
+
- 0a4e90dbd: <br>
|
|
79
|
+
- style(tag-input): 间距调整 (5.0)
|
|
80
|
+
- style(select): 选择类组件选项圆角改为 4px (5.0)
|
|
81
|
+
- style(picker): 搜索框样式调整 (5.0)
|
|
82
|
+
- 4a31cea53: style: 统一调整选择类组件 hover 时的背景色 (5.0)
|
|
83
|
+
- 99801c2d1: fix: 修复 UI 问题 (5.0)
|
|
84
|
+
- Updated dependencies [0b34e1c15]
|
|
85
|
+
- Updated dependencies [da2e63a14]
|
|
86
|
+
- Updated dependencies [1e226cd66]
|
|
87
|
+
- Updated dependencies [cce71cdfa]
|
|
88
|
+
- Updated dependencies [b9989e482]
|
|
89
|
+
- Updated dependencies [1662753e0]
|
|
90
|
+
- Updated dependencies [122d1d859]
|
|
91
|
+
- Updated dependencies [f1ab51725]
|
|
92
|
+
- Updated dependencies [41552be0b]
|
|
93
|
+
- Updated dependencies [8c0ee78f0]
|
|
94
|
+
- Updated dependencies [9b34d99bc]
|
|
95
|
+
- Updated dependencies [8f3aa85e4]
|
|
96
|
+
- Updated dependencies [f4fc0ef30]
|
|
97
|
+
- Updated dependencies [cb9d8f6db]
|
|
98
|
+
- Updated dependencies [ec4c7faa2]
|
|
99
|
+
- Updated dependencies [29cae09ea]
|
|
100
|
+
- Updated dependencies [fd4c20bbd]
|
|
101
|
+
- Updated dependencies [be5a59325]
|
|
102
|
+
- Updated dependencies [71fc15e5c]
|
|
103
|
+
- Updated dependencies [f8acad4e1]
|
|
104
|
+
- Updated dependencies [79ea480f3]
|
|
105
|
+
- Updated dependencies [2e56529f7]
|
|
106
|
+
- Updated dependencies [277c5033a]
|
|
107
|
+
- Updated dependencies [4e0ed3a31]
|
|
108
|
+
- Updated dependencies [95abba983]
|
|
109
|
+
- Updated dependencies [4a31cea53]
|
|
110
|
+
- Updated dependencies [976ec929d]
|
|
111
|
+
- Updated dependencies [f1ab51725]
|
|
112
|
+
- Updated dependencies [6dca7795c]
|
|
113
|
+
- Updated dependencies [7b956b1eb]
|
|
114
|
+
- Updated dependencies [5210770d9]
|
|
115
|
+
- Updated dependencies [e2d184e74]
|
|
116
|
+
- Updated dependencies [77d969c2e]
|
|
117
|
+
- Updated dependencies [9ecf354ba]
|
|
118
|
+
- Updated dependencies [e42e2badf]
|
|
119
|
+
- Updated dependencies [33da3144e]
|
|
120
|
+
- Updated dependencies [e7b64347e]
|
|
121
|
+
- Updated dependencies [7f3abee55]
|
|
122
|
+
- Updated dependencies [6fcda9bf2]
|
|
123
|
+
- Updated dependencies [0a4e90dbd]
|
|
124
|
+
- Updated dependencies [58ad82e94]
|
|
125
|
+
- Updated dependencies [a0f0c9d6b]
|
|
126
|
+
- Updated dependencies [f2be367e9]
|
|
127
|
+
- Updated dependencies [1972fd16a]
|
|
128
|
+
- Updated dependencies [99801c2d1]
|
|
129
|
+
- Updated dependencies [86910f5e2]
|
|
130
|
+
- Updated dependencies [cb7b794d0]
|
|
131
|
+
- @hi-ui/picker@5.0.0-experimental.0
|
|
132
|
+
- @hi-ui/input@5.0.0-experimental.0
|
|
133
|
+
- @hi-ui/popper@5.0.0-experimental.0
|
|
134
|
+
- @hi-ui/tag-input@5.0.0-experimental.0
|
|
135
|
+
- @hi-ui/icons@5.0.0-experimental.0
|
|
136
|
+
- @hi-ui/virtual-list@5.0.0-experimental.0
|
|
137
|
+
- @hi-ui/core@5.0.0-experimental.0
|
|
138
|
+
- @hi-ui/use-check@5.0.0-experimental.0
|
|
139
|
+
- @hi-ui/use-children@5.0.0-experimental.0
|
|
140
|
+
- @hi-ui/use-data-source@5.0.0-experimental.0
|
|
141
|
+
- @hi-ui/use-id@5.0.0-experimental.0
|
|
142
|
+
- @hi-ui/use-latest@5.0.0-experimental.0
|
|
143
|
+
- @hi-ui/use-search-mode@5.0.0-experimental.0
|
|
144
|
+
- @hi-ui/use-toggle@5.0.0-experimental.0
|
|
145
|
+
- @hi-ui/use-uncontrolled-state@5.0.0-experimental.0
|
|
146
|
+
- @hi-ui/checkbox@5.0.0-experimental.0
|
|
147
|
+
- @hi-ui/highlighter@5.0.0-experimental.0
|
|
148
|
+
- @hi-ui/array-utils@5.0.0-experimental.0
|
|
149
|
+
- @hi-ui/classname@5.0.0-experimental.0
|
|
150
|
+
- @hi-ui/dom-utils@5.0.0-experimental.0
|
|
151
|
+
- @hi-ui/env@5.0.0-experimental.0
|
|
152
|
+
- @hi-ui/func-utils@5.0.0-experimental.0
|
|
153
|
+
- @hi-ui/times@5.0.0-experimental.0
|
|
154
|
+
- @hi-ui/tree-utils@5.0.0-experimental.0
|
|
155
|
+
- @hi-ui/type-assertion@5.0.0-experimental.0
|
|
156
|
+
|
|
157
|
+
## 4.6.5
|
|
158
|
+
|
|
159
|
+
### Patch Changes
|
|
160
|
+
|
|
161
|
+
- [#3450](https://github.com/XiaoMi/hiui/pull/3450) [`0cea4d7`](https://github.com/XiaoMi/hiui/commit/0cea4d75c771b5db56f520821b53864051c33594) Thanks [@zyprepare](https://github.com/zyprepare)! - fix(tag-input): ensure at least one tag is displayed when container width is insufficient (#3449)
|
|
162
|
+
|
|
163
|
+
- Updated dependencies [[`0cea4d7`](https://github.com/XiaoMi/hiui/commit/0cea4d75c771b5db56f520821b53864051c33594)]:
|
|
164
|
+
- @hi-ui/tag-input@4.1.5
|
|
165
|
+
|
|
166
|
+
## 4.6.4
|
|
167
|
+
|
|
168
|
+
### Patch Changes
|
|
169
|
+
|
|
170
|
+
- [#3196](https://github.com/XiaoMi/hiui/pull/3196) [`80a909d2d`](https://github.com/XiaoMi/hiui/commit/80a909d2dae99d68d71f2ec6f4b210080d032ec0) Thanks [@KEH3](https://github.com/KEH3)! - fix(popper): ref 中增加更新位置方法解决上游组件弹窗被遮挡问题 (#3195)
|
|
171
|
+
|
|
172
|
+
- [#3208](https://github.com/XiaoMi/hiui/pull/3208) [`36086f4c8`](https://github.com/XiaoMi/hiui/commit/36086f4c8ab11728dd4d0bb34b4d9301c6068452) Thanks [@zyprepare](https://github.com/zyprepare)! - fix(select): 修复多级分组下分组标题左间距不对问题 (#3207)
|
|
173
|
+
|
|
174
|
+
- Updated dependencies [[`80a909d2d`](https://github.com/XiaoMi/hiui/commit/80a909d2dae99d68d71f2ec6f4b210080d032ec0)]:
|
|
175
|
+
- @hi-ui/picker@4.1.8
|
|
176
|
+
- @hi-ui/popper@4.1.7
|
|
177
|
+
|
|
178
|
+
## 4.6.3
|
|
179
|
+
|
|
180
|
+
### Patch Changes
|
|
181
|
+
|
|
182
|
+
- [#3126](https://github.com/XiaoMi/hiui/pull/3126) [`6173495f3`](https://github.com/XiaoMi/hiui/commit/6173495f3a09ed8fce6ebdf1a99a50ffdc394952) Thanks [@zyprepare](https://github.com/zyprepare)! - fix(check-select): 增强 mergedCheckedItems 逻辑以支持自定义渲染函数,并修复 getAllCheckedStatus 函数对非数组值的处理 (#3124)
|
|
183
|
+
|
|
184
|
+
- Updated dependencies [[`b97a8f8`](https://github.com/XiaoMi/hiui/commit/b97a8f81664b023237791769e0fd62b90956fc90)]:
|
|
185
|
+
- @hi-ui/popper@4.1.6
|
|
186
|
+
|
|
187
|
+
## 4.6.2
|
|
188
|
+
|
|
189
|
+
### Patch Changes
|
|
190
|
+
|
|
191
|
+
- [#3114](https://github.com/XiaoMi/hiui/pull/3114) [`8ddcda3`](https://github.com/XiaoMi/hiui/commit/8ddcda36864ef1ad6679a413f660cfcc7f55e8a3) Thanks [@zyprepare](https://github.com/zyprepare)! - fix(check-select): 修复 customRender 回调中的 value 值无法显示初始值问题 (#3113)
|
|
192
|
+
|
|
193
|
+
## 4.6.1
|
|
194
|
+
|
|
195
|
+
### Patch Changes
|
|
196
|
+
|
|
197
|
+
- [#3096](https://github.com/XiaoMi/hiui/pull/3096) [`3aff5eee7`](https://github.com/XiaoMi/hiui/commit/3aff5eee7ab4e1734fa2800d5154e8ebe24bbe00) Thanks [@zyprepare](https://github.com/zyprepare)! - perf(tag-input): 优化 wrap 模式下设置 displayRender 卡顿问题 (#3094)
|
|
198
|
+
|
|
199
|
+
- Updated dependencies [[`3aff5eee7`](https://github.com/XiaoMi/hiui/commit/3aff5eee7ab4e1734fa2800d5154e8ebe24bbe00), [`414c96a86`](https://github.com/XiaoMi/hiui/commit/414c96a86c6311c5b103733749092108cad03760), [`13b169670`](https://github.com/XiaoMi/hiui/commit/13b16967026f8389cc66315d376ef77029f4ba2b), [`bf2179191`](https://github.com/XiaoMi/hiui/commit/bf21791917f96c0b33b6a74539650bc56aba1d99)]:
|
|
200
|
+
- @hi-ui/tag-input@4.1.3
|
|
201
|
+
- @hi-ui/highlighter@4.1.0
|
|
202
|
+
- @hi-ui/input@4.3.0
|
|
203
|
+
|
|
204
|
+
## 4.6.0
|
|
205
|
+
|
|
206
|
+
### Minor Changes
|
|
207
|
+
|
|
208
|
+
- [#3015](https://github.com/XiaoMi/hiui/pull/3015) [`b2d784b23`](https://github.com/XiaoMi/hiui/commit/b2d784b23682e70cbc7b09e3396f51fda02e2223) Thanks [@zyprepare](https://github.com/zyprepare)! - feat(select): Add searchOnInit api (#3004)
|
|
209
|
+
feat(check-select): Add searchOnInit api (#3004)
|
|
210
|
+
|
|
211
|
+
### Patch Changes
|
|
212
|
+
|
|
213
|
+
- Updated dependencies [[`b2d784b23`](https://github.com/XiaoMi/hiui/commit/b2d784b23682e70cbc7b09e3396f51fda02e2223)]:
|
|
214
|
+
- @hi-ui/use-search-mode@4.2.0
|
|
215
|
+
|
|
216
|
+
## 4.5.0
|
|
217
|
+
|
|
218
|
+
### Minor Changes
|
|
219
|
+
|
|
220
|
+
- [#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
|
|
221
|
+
|
|
222
|
+
## 4.4.4
|
|
223
|
+
|
|
224
|
+
### Patch Changes
|
|
225
|
+
|
|
226
|
+
- [#2828](https://github.com/XiaoMi/hiui/pull/2828) [`b8679ce3e`](https://github.com/XiaoMi/hiui/commit/b8679ce3e7fab435fd126901e6e8b23268bcf712) Thanks [@xiamiao1121](https://github.com/xiamiao1121)! - fix: 修复异步搜索中,搜索结果中关键字没有高亮显示问题
|
|
227
|
+
|
|
228
|
+
- Updated dependencies [[`3afbf239e`](https://github.com/XiaoMi/hiui/commit/3afbf239e816ede48d6a85cbd99b6b099b8c8eb3)]:
|
|
229
|
+
- @hi-ui/env@4.0.7
|
|
230
|
+
|
|
231
|
+
## 4.4.3
|
|
232
|
+
|
|
233
|
+
### Patch Changes
|
|
234
|
+
|
|
235
|
+
- [#2795](https://github.com/XiaoMi/hiui/pull/2795) [`234687ee0`](https://github.com/XiaoMi/hiui/commit/234687ee0ea4de16faaf771ea6a599bc43971249) Thanks [@xiamiao1121](https://github.com/xiamiao1121)! - fix: 修复 onClear 设置后没触发问题
|
|
236
|
+
|
|
237
|
+
## 4.4.2
|
|
238
|
+
|
|
239
|
+
### Patch Changes
|
|
240
|
+
|
|
241
|
+
- [#2791](https://github.com/XiaoMi/hiui/pull/2791) [`1a00f9fc4`](https://github.com/XiaoMi/hiui/commit/1a00f9fc4a44619059d7852e846b54fedbd56715) Thanks [@zyprepare](https://github.com/zyprepare)! - build: style-inject(node 环境下有问题) 替换为 @hi-ui/style-inject
|
|
242
|
+
|
|
243
|
+
- Updated dependencies [[`1a00f9fc4`](https://github.com/XiaoMi/hiui/commit/1a00f9fc4a44619059d7852e846b54fedbd56715)]:
|
|
244
|
+
- @hi-ui/env@4.0.5
|
|
245
|
+
- @hi-ui/icons@4.0.19
|
|
246
|
+
- @hi-ui/checkbox@4.0.10
|
|
247
|
+
- @hi-ui/highlighter@4.0.9
|
|
248
|
+
- @hi-ui/input@4.1.1
|
|
249
|
+
- @hi-ui/picker@4.1.6
|
|
250
|
+
- @hi-ui/popper@4.1.5
|
|
251
|
+
- @hi-ui/tag-input@4.1.1
|
|
252
|
+
- @hi-ui/virtual-list@4.0.8
|
|
253
|
+
- @hi-ui/array-utils@4.0.5
|
|
254
|
+
- @hi-ui/classname@4.0.5
|
|
255
|
+
|
|
256
|
+
## 4.4.1
|
|
257
|
+
|
|
258
|
+
### Patch Changes
|
|
259
|
+
|
|
260
|
+
- [#2771](https://github.com/XiaoMi/hiui/pull/2771) [`eee27bd5f`](https://github.com/XiaoMi/hiui/commit/eee27bd5f81a89169c1c2dc993b9100731cafcbd) Thanks [@zyprepare](https://github.com/zyprepare)! - fix: 修复 keyword 受控时搜索结果有误的问题
|
|
261
|
+
|
|
262
|
+
## 4.4.0
|
|
263
|
+
|
|
264
|
+
### Minor Changes
|
|
265
|
+
|
|
266
|
+
- [#2746](https://github.com/XiaoMi/hiui/pull/2746) [`b3a13135c`](https://github.com/XiaoMi/hiui/commit/b3a13135c77e75291d5864ff7fcf63ddb2ff46b8) Thanks [@zyprepare](https://github.com/zyprepare)! - feat: add prefix api
|
|
267
|
+
|
|
268
|
+
### Patch Changes
|
|
269
|
+
|
|
270
|
+
- Updated dependencies [[`a9b9c93fc`](https://github.com/XiaoMi/hiui/commit/a9b9c93fc3a3fea60d14052a5afeef9daf7efa1b), [`b3a13135c`](https://github.com/XiaoMi/hiui/commit/b3a13135c77e75291d5864ff7fcf63ddb2ff46b8), [`ca008e4ae`](https://github.com/XiaoMi/hiui/commit/ca008e4ae9753bc1f11efcdcbf09121d1ef07b56)]:
|
|
271
|
+
- @hi-ui/input@4.1.0
|
|
272
|
+
- @hi-ui/tag-input@4.1.0
|
|
273
|
+
- @hi-ui/tree-utils@4.1.6
|
|
274
|
+
|
|
275
|
+
## 4.3.6
|
|
276
|
+
|
|
277
|
+
### Patch Changes
|
|
278
|
+
|
|
279
|
+
- [#2682](https://github.com/XiaoMi/hiui/pull/2682) [`41765fbed`](https://github.com/XiaoMi/hiui/commit/41765fbed0b3b9c8a574a0d7358b2d3f876162c5) Thanks [@zyprepare](https://github.com/zyprepare)! - fix: 下拉框盒模型设置为 content-box
|
|
280
|
+
|
|
281
|
+
- Updated dependencies [[`ba6e0265d`](https://github.com/XiaoMi/hiui/commit/ba6e0265da07964423d3a684dd068dcf50865dbc), [`41765fbed`](https://github.com/XiaoMi/hiui/commit/41765fbed0b3b9c8a574a0d7358b2d3f876162c5)]:
|
|
282
|
+
- @hi-ui/popper@4.1.4
|
|
283
|
+
- @hi-ui/picker@4.1.5
|
|
284
|
+
|
|
285
|
+
## 4.3.5
|
|
286
|
+
|
|
287
|
+
### Patch Changes
|
|
288
|
+
|
|
289
|
+
- build: rollup2 构建
|
|
290
|
+
- Updated dependencies
|
|
291
|
+
- @hi-ui/core@4.0.8
|
|
292
|
+
- @hi-ui/use-check@4.0.5
|
|
293
|
+
- @hi-ui/use-children@4.0.4
|
|
294
|
+
- @hi-ui/use-data-source@4.0.4
|
|
295
|
+
- @hi-ui/use-latest@4.0.4
|
|
296
|
+
- @hi-ui/use-search-mode@4.1.4
|
|
297
|
+
- @hi-ui/use-toggle@4.0.4
|
|
298
|
+
- @hi-ui/use-uncontrolled-state@4.0.4
|
|
299
|
+
- @hi-ui/icons@4.0.18
|
|
300
|
+
- @hi-ui/checkbox@4.0.8
|
|
301
|
+
- @hi-ui/highlighter@4.0.8
|
|
302
|
+
- @hi-ui/input@4.0.13
|
|
303
|
+
- @hi-ui/picker@4.1.4
|
|
304
|
+
- @hi-ui/popper@4.1.3
|
|
305
|
+
- @hi-ui/tag-input@4.0.10
|
|
306
|
+
- @hi-ui/virtual-list@4.0.7
|
|
307
|
+
- @hi-ui/array-utils@4.0.4
|
|
308
|
+
- @hi-ui/classname@4.0.4
|
|
309
|
+
- @hi-ui/dom-utils@4.0.7
|
|
310
|
+
- @hi-ui/env@4.0.4
|
|
311
|
+
- @hi-ui/func-utils@4.0.4
|
|
312
|
+
- @hi-ui/times@4.0.4
|
|
313
|
+
- @hi-ui/tree-utils@4.1.4
|
|
314
|
+
- @hi-ui/type-assertion@4.0.4
|
|
315
|
+
|
|
316
|
+
## 4.3.4
|
|
317
|
+
|
|
318
|
+
### Patch Changes
|
|
319
|
+
|
|
320
|
+
- fix: 修复 rollup3 打包 cjs 模块问题
|
|
321
|
+
- Updated dependencies
|
|
322
|
+
- @hi-ui/env@4.0.3
|
|
323
|
+
- @hi-ui/core@4.0.7
|
|
324
|
+
- @hi-ui/use-check@4.0.4
|
|
325
|
+
- @hi-ui/use-children@4.0.3
|
|
326
|
+
- @hi-ui/use-data-source@4.0.3
|
|
327
|
+
- @hi-ui/use-latest@4.0.3
|
|
328
|
+
- @hi-ui/use-search-mode@4.1.3
|
|
329
|
+
- @hi-ui/use-toggle@4.0.3
|
|
330
|
+
- @hi-ui/use-uncontrolled-state@4.0.3
|
|
331
|
+
- @hi-ui/icons@4.0.17
|
|
332
|
+
- @hi-ui/checkbox@4.0.7
|
|
333
|
+
- @hi-ui/highlighter@4.0.7
|
|
334
|
+
- @hi-ui/input@4.0.12
|
|
335
|
+
- @hi-ui/picker@4.1.3
|
|
336
|
+
- @hi-ui/popper@4.1.2
|
|
337
|
+
- @hi-ui/tag-input@4.0.9
|
|
338
|
+
- @hi-ui/virtual-list@4.0.6
|
|
339
|
+
- @hi-ui/array-utils@4.0.3
|
|
340
|
+
- @hi-ui/classname@4.0.3
|
|
341
|
+
- @hi-ui/dom-utils@4.0.6
|
|
342
|
+
- @hi-ui/func-utils@4.0.3
|
|
343
|
+
- @hi-ui/times@4.0.3
|
|
344
|
+
- @hi-ui/tree-utils@4.1.3
|
|
345
|
+
- @hi-ui/type-assertion@4.0.3
|
|
346
|
+
|
|
347
|
+
## 4.3.3
|
|
348
|
+
|
|
349
|
+
### Patch Changes
|
|
350
|
+
|
|
351
|
+
- [#2672](https://github.com/XiaoMi/hiui/pull/2672) [`1ebe27830`](https://github.com/XiaoMi/hiui/commit/1ebe2783098b3a8cd980bd10076d67635463800e) Thanks [@zyprepare](https://github.com/zyprepare)! - build: 升级到 rollup3,重新构建发布组件
|
|
352
|
+
|
|
353
|
+
- Updated dependencies [[`1ebe27830`](https://github.com/XiaoMi/hiui/commit/1ebe2783098b3a8cd980bd10076d67635463800e)]:
|
|
354
|
+
- @hi-ui/core@4.0.6
|
|
355
|
+
- @hi-ui/use-check@4.0.3
|
|
356
|
+
- @hi-ui/use-children@4.0.2
|
|
357
|
+
- @hi-ui/use-data-source@4.0.2
|
|
358
|
+
- @hi-ui/use-latest@4.0.2
|
|
359
|
+
- @hi-ui/use-search-mode@4.1.2
|
|
360
|
+
- @hi-ui/use-toggle@4.0.2
|
|
361
|
+
- @hi-ui/use-uncontrolled-state@4.0.2
|
|
362
|
+
- @hi-ui/icons@4.0.16
|
|
363
|
+
- @hi-ui/checkbox@4.0.6
|
|
364
|
+
- @hi-ui/highlighter@4.0.6
|
|
365
|
+
- @hi-ui/input@4.0.11
|
|
366
|
+
- @hi-ui/picker@4.1.2
|
|
367
|
+
- @hi-ui/popper@4.1.1
|
|
368
|
+
- @hi-ui/tag-input@4.0.8
|
|
369
|
+
- @hi-ui/virtual-list@4.0.5
|
|
370
|
+
- @hi-ui/array-utils@4.0.2
|
|
371
|
+
- @hi-ui/classname@4.0.2
|
|
372
|
+
- @hi-ui/dom-utils@4.0.5
|
|
373
|
+
- @hi-ui/env@4.0.2
|
|
374
|
+
- @hi-ui/func-utils@4.0.2
|
|
375
|
+
- @hi-ui/times@4.0.2
|
|
376
|
+
- @hi-ui/tree-utils@4.1.2
|
|
377
|
+
- @hi-ui/type-assertion@4.0.2
|
|
378
|
+
|
|
379
|
+
## 4.3.2
|
|
380
|
+
|
|
381
|
+
### Patch Changes
|
|
382
|
+
|
|
383
|
+
- [#2633](https://github.com/XiaoMi/hiui/pull/2633) [`4f7c8c906`](https://github.com/XiaoMi/hiui/commit/4f7c8c9063d9b72068a2db5fa614eed130aafd0f) Thanks [@aqiusen](https://github.com/aqiusen)! - CheckSelect dataSource 下搜索框增加防抖操作
|
|
384
|
+
|
|
385
|
+
- Updated dependencies [[`45cbe7bd9`](https://github.com/XiaoMi/hiui/commit/45cbe7bd9ddeaadfc8ff520a2448a0dade6be51c)]:
|
|
386
|
+
- @hi-ui/use-search-mode@4.1.1
|
|
387
|
+
|
|
388
|
+
## 4.3.1
|
|
389
|
+
|
|
390
|
+
### Patch Changes
|
|
391
|
+
|
|
392
|
+
- [#2612](https://github.com/XiaoMi/hiui/pull/2612) [`832360b54`](https://github.com/XiaoMi/hiui/commit/832360b54231983148858b12707087c6b6fbac87) Thanks [@zyprepare](https://github.com/zyprepare)! - fix: 修改下拉菜单高度为 32px
|
|
393
|
+
|
|
394
|
+
## 4.3.0
|
|
395
|
+
|
|
396
|
+
### Minor Changes
|
|
397
|
+
|
|
398
|
+
- [#2600](https://github.com/XiaoMi/hiui/pull/2600) [`03ecca72b`](https://github.com/XiaoMi/hiui/commit/03ecca72bac72a1b042e96599b68c3317f0c3236) Thanks [@zyprepare](https://github.com/zyprepare)! - feat: add size api
|
|
399
|
+
|
|
400
|
+
## 4.2.0
|
|
401
|
+
|
|
402
|
+
### Minor Changes
|
|
403
|
+
|
|
404
|
+
- [#2531](https://github.com/XiaoMi/hiui/pull/2531) [`0a9d90ac5`](https://github.com/XiaoMi/hiui/commit/0a9d90ac53bdf66aa2b83b698b58d2cdeb98d912) Thanks [@zyprepare](https://github.com/zyprepare)! - feat: 增加 tagInputProps API,支持显示内容高度自适应
|
|
405
|
+
|
|
406
|
+
### Patch Changes
|
|
407
|
+
|
|
408
|
+
- [#2567](https://github.com/XiaoMi/hiui/pull/2567) [`bd5940eba`](https://github.com/XiaoMi/hiui/commit/bd5940eba7d7a80aa676f37bb804ea27544864d2) Thanks [@zyprepare](https://github.com/zyprepare)! - feat: 支持回车选中值
|
|
409
|
+
|
|
410
|
+
- Updated dependencies [[`bd5940eba`](https://github.com/XiaoMi/hiui/commit/bd5940eba7d7a80aa676f37bb804ea27544864d2), [`0a9d90ac5`](https://github.com/XiaoMi/hiui/commit/0a9d90ac53bdf66aa2b83b698b58d2cdeb98d912)]:
|
|
411
|
+
- @hi-ui/picker@4.1.1
|
|
412
|
+
- @hi-ui/popper@4.0.5
|
|
413
|
+
- @hi-ui/tag-input@4.0.6
|
|
414
|
+
|
|
415
|
+
## 4.1.3
|
|
416
|
+
|
|
417
|
+
### Patch Changes
|
|
418
|
+
|
|
419
|
+
- [#2482](https://github.com/XiaoMi/hiui/pull/2482) [`3301a290f`](https://github.com/XiaoMi/hiui/commit/3301a290fa9bd8b8717e24ef69ed832aa392b11e) Thanks [@zyprepare](https://github.com/zyprepare)! - fix: 数据改变后显示一次滚动条
|
|
420
|
+
|
|
421
|
+
- Updated dependencies [[`6980d058f`](https://github.com/XiaoMi/hiui/commit/6980d058f165b309695d10248d7511bd05bee457)]:
|
|
422
|
+
- @hi-ui/input@4.0.9
|
|
423
|
+
|
|
424
|
+
## 4.1.2
|
|
425
|
+
|
|
426
|
+
### Patch Changes
|
|
427
|
+
|
|
428
|
+
- [#2411](https://github.com/XiaoMi/hiui/pull/2411) [`f7d1257ad`](https://github.com/XiaoMi/hiui/commit/f7d1257ad2006fd40cabb2d16f1fde77677f3117) Thanks [@zyprepare](https://github.com/zyprepare)! - 体验优化: 大数据列表中,打开下拉列表时有一次滚动条提示
|
|
429
|
+
|
|
430
|
+
- Updated dependencies [[`f7d1257ad`](https://github.com/XiaoMi/hiui/commit/f7d1257ad2006fd40cabb2d16f1fde77677f3117)]:
|
|
431
|
+
- @hi-ui/icons@4.0.6
|
|
432
|
+
|
|
433
|
+
## 4.1.1
|
|
434
|
+
|
|
435
|
+
### Patch Changes
|
|
436
|
+
|
|
437
|
+
- [#2334](https://github.com/XiaoMi/hiui/pull/2334) [`c9e6f4ad6`](https://github.com/XiaoMi/hiui/commit/c9e6f4ad6c1050b86bee5db681214d39830305c7) Thanks [@zyprepare](https://github.com/zyprepare)! - 修复问题:设置 loading 无效果
|
|
438
|
+
|
|
439
|
+
## 4.1.0
|
|
440
|
+
|
|
441
|
+
### Minor Changes
|
|
442
|
+
|
|
443
|
+
- [#2304](https://github.com/XiaoMi/hiui/pull/2304) [`feaec9a67`](https://github.com/XiaoMi/hiui/commit/feaec9a67a05e315f6f3370115eaf0c8c418faf7) Thanks [@zyprepare](https://github.com/zyprepare)! - 增加 customRender api
|
package/lib/cjs/CheckSelect.js
CHANGED
|
@@ -26,6 +26,7 @@ var tagInput = require('@hi-ui/tag-input');
|
|
|
26
26
|
var typeAssertion = require('@hi-ui/type-assertion');
|
|
27
27
|
var VirtualList = require('@hi-ui/virtual-list');
|
|
28
28
|
var picker = require('@hi-ui/picker');
|
|
29
|
+
var useMergeSemantic = require('@hi-ui/use-merge-semantic');
|
|
29
30
|
var domUtils = require('@hi-ui/dom-utils');
|
|
30
31
|
var arrayUtils = require('@hi-ui/array-utils');
|
|
31
32
|
var highlighter = require('@hi-ui/highlighter');
|
|
@@ -104,10 +105,28 @@ var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
104
105
|
_a$showIndicator = _a.showIndicator,
|
|
105
106
|
showIndicator = _a$showIndicator === void 0 ? true : _a$showIndicator,
|
|
106
107
|
renderExtraHeader = _a.renderExtraHeader,
|
|
107
|
-
|
|
108
|
+
classNamesProp = _a.classNames,
|
|
109
|
+
stylesProp = _a.styles,
|
|
110
|
+
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", "onItemCreate", "creatableInSearch", "fieldNames", "checkedOnEntered", "customRender", "tagInputProps", "size", "prefix", "suffix", "onKeyDown", "keyword", "clearSearchOnClosed", "label", "showIndicator", "renderExtraHeader", "classNames", "styles"]);
|
|
108
111
|
var _useGlobalContext = core.useGlobalContext(),
|
|
109
|
-
globalSize = _useGlobalContext.size
|
|
112
|
+
globalSize = _useGlobalContext.size,
|
|
113
|
+
checkSelectConfig = _useGlobalContext.checkSelect;
|
|
110
114
|
var size = (_b = sizeProp !== null && sizeProp !== void 0 ? sizeProp : globalSize) !== null && _b !== void 0 ? _b : 'md';
|
|
115
|
+
var _useMergeSemantic = useMergeSemantic.useMergeSemantic({
|
|
116
|
+
classNamesList: [checkSelectConfig === null || checkSelectConfig === void 0 ? void 0 : checkSelectConfig.classNames, classNamesProp],
|
|
117
|
+
stylesList: [checkSelectConfig === null || checkSelectConfig === void 0 ? void 0 : checkSelectConfig.styles, stylesProp],
|
|
118
|
+
info: {
|
|
119
|
+
props: Object.assign(Object.assign({}, rest), {
|
|
120
|
+
disabled: disabled,
|
|
121
|
+
searchable: searchableProp,
|
|
122
|
+
visible: visible,
|
|
123
|
+
size: size,
|
|
124
|
+
appearance: appearance
|
|
125
|
+
})
|
|
126
|
+
}
|
|
127
|
+
}),
|
|
128
|
+
classNames = _useMergeSemantic.classNames,
|
|
129
|
+
styles = _useMergeSemantic.styles;
|
|
111
130
|
// ************************** 国际化 ************************* //
|
|
112
131
|
var i18n = core.useLocaleContext();
|
|
113
132
|
var placeholder = typeAssertion.isUndef(placeholderProp) ? i18n.get('checkSelect.placeholder') : placeholderProp;
|
|
@@ -200,6 +219,18 @@ var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
200
219
|
var nextData = checkedItems.concat(flattedData);
|
|
201
220
|
return arrayUtils.uniqBy(nextData, 'id');
|
|
202
221
|
}, [checkedItems, flattedData]);
|
|
222
|
+
// 仅当有关键字搜索且(无结果 或 关键字与搜索结果无全匹配)时显示创建入口
|
|
223
|
+
var creatableInSearchVisible = React.useMemo(function () {
|
|
224
|
+
if (!creatableInSearch || !(searchValue === null || searchValue === void 0 ? void 0 : searchValue.trim())) return false;
|
|
225
|
+
var optionItems = showData.filter(function (item) {
|
|
226
|
+
return !('groupTitle' in item);
|
|
227
|
+
});
|
|
228
|
+
if (optionItems.length === 0) return true;
|
|
229
|
+
var hasFullMatch = optionItems.some(function (item) {
|
|
230
|
+
return String(item.title).trim() === searchValue.trim();
|
|
231
|
+
});
|
|
232
|
+
return !hasFullMatch;
|
|
233
|
+
}, [creatableInSearch, searchValue, showData]);
|
|
203
234
|
var mergedCheckedItems = React.useMemo(function () {
|
|
204
235
|
if (typeof customRender !== 'function') {
|
|
205
236
|
return [];
|
|
@@ -336,12 +367,30 @@ var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
336
367
|
}
|
|
337
368
|
}
|
|
338
369
|
}, [menuVisible, showData]);
|
|
370
|
+
var pickerSemanticKeys = ['root', 'container', 'panel', 'header', 'search', 'body', 'footer', 'loading', 'empty', 'creator'];
|
|
371
|
+
var pickerClassNames = pickerSemanticKeys.reduce(function (acc, key) {
|
|
372
|
+
if ((classNames === null || classNames === void 0 ? void 0 : classNames[key]) !== undefined) {
|
|
373
|
+
acc[key] = classNames[key];
|
|
374
|
+
}
|
|
375
|
+
return acc;
|
|
376
|
+
}, {});
|
|
377
|
+
var pickerStyles = pickerSemanticKeys.reduce(function (acc, key) {
|
|
378
|
+
if (styles === null || styles === void 0 ? void 0 : styles[key]) {
|
|
379
|
+
acc[key] = styles[key];
|
|
380
|
+
}
|
|
381
|
+
return acc;
|
|
382
|
+
}, {});
|
|
339
383
|
return /*#__PURE__*/React__default["default"].createElement(context.CheckSelectProvider, {
|
|
340
|
-
value: context$1
|
|
384
|
+
value: Object.assign(Object.assign({}, context$1), {
|
|
385
|
+
classNames: classNames,
|
|
386
|
+
styles: styles
|
|
387
|
+
})
|
|
341
388
|
}, /*#__PURE__*/React__default["default"].createElement(picker.Picker, Object.assign({
|
|
342
389
|
ref: ref,
|
|
343
390
|
innerRef: pickerInnerRef,
|
|
344
|
-
className: cls
|
|
391
|
+
className: cls,
|
|
392
|
+
classNames: pickerClassNames,
|
|
393
|
+
styles: pickerStyles
|
|
345
394
|
}, rootProps, {
|
|
346
395
|
visible: menuVisible,
|
|
347
396
|
disabled: disabled,
|
|
@@ -356,6 +405,7 @@ var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
356
405
|
loading: rest.loading !== undefined ? rest.loading : loading,
|
|
357
406
|
footer: renderDefaultFooter(),
|
|
358
407
|
creatableInSearch: creatableInSearch,
|
|
408
|
+
creatableInSearchVisible: creatableInSearchVisible,
|
|
359
409
|
onCreate: handleCreate,
|
|
360
410
|
header: renderExtraHeader === null || renderExtraHeader === void 0 ? void 0 : renderExtraHeader(),
|
|
361
411
|
trigger: customRender ? customRenderContent : ( /*#__PURE__*/React__default["default"].createElement(tagInput.TagInputMock, Object.assign({
|
|
@@ -458,7 +508,9 @@ var CheckSelectOption = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
458
508
|
rest = tslib.__rest(_a, ["prefixCls", "className", "children", "option", "onClick", "titleRender", "depth", "focused"]);
|
|
459
509
|
var _useCheckSelectContex = context.useCheckSelectContext(),
|
|
460
510
|
isCheckedId = _useCheckSelectContex.isCheckedId,
|
|
461
|
-
onSelect = _useCheckSelectContex.onSelect
|
|
511
|
+
onSelect = _useCheckSelectContex.onSelect,
|
|
512
|
+
classNames = _useCheckSelectContex.classNames,
|
|
513
|
+
styles = _useCheckSelectContex.styles;
|
|
462
514
|
var id = option.id,
|
|
463
515
|
_option$disabled = option.disabled,
|
|
464
516
|
disabled = _option$disabled === void 0 ? false : _option$disabled;
|
|
@@ -467,7 +519,7 @@ var CheckSelectOption = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
467
519
|
disabled: disabled,
|
|
468
520
|
checked: checked
|
|
469
521
|
}));
|
|
470
|
-
var cls = classname.cx(prefixCls, className, checked && prefixCls + "--checked", disabled && prefixCls + "--disabled", focused && prefixCls + "--focused");
|
|
522
|
+
var cls = classname.cx(prefixCls, className, classNames === null || classNames === void 0 ? void 0 : classNames.option, checked && prefixCls + "--checked", disabled && prefixCls + "--disabled", focused && prefixCls + "--focused");
|
|
471
523
|
var handleOptionCheck = React.useCallback(function (evt) {
|
|
472
524
|
onSelect(option, !checked);
|
|
473
525
|
onClick === null || onClick === void 0 ? void 0 : onClick(evt);
|
|
@@ -484,7 +536,8 @@ var CheckSelectOption = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
484
536
|
}, [prefixCls]);
|
|
485
537
|
return /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
486
538
|
ref: ref,
|
|
487
|
-
className: cls
|
|
539
|
+
className: cls,
|
|
540
|
+
style: styles === null || styles === void 0 ? void 0 : styles.option
|
|
488
541
|
}, rest, {
|
|
489
542
|
onClick: handleOptionCheck
|
|
490
543
|
}), renderTitle(eventNodeRef.current, titleRender));
|
|
@@ -501,12 +554,17 @@ var CheckSelectOptionGroup = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
501
554
|
className = _a.className,
|
|
502
555
|
label = _a.label,
|
|
503
556
|
rest = tslib.__rest(_a, ["prefixCls", "className", "label", "depth"]);
|
|
504
|
-
var
|
|
557
|
+
var _useCheckSelectContex2 = context.useCheckSelectContext(),
|
|
558
|
+
classNames = _useCheckSelectContex2.classNames,
|
|
559
|
+
styles = _useCheckSelectContex2.styles;
|
|
560
|
+
var cls = classname.cx(prefixCls, className, classNames === null || classNames === void 0 ? void 0 : classNames.optionGroup);
|
|
561
|
+
var groupStyle = styles === null || styles === void 0 ? void 0 : styles.optionGroup;
|
|
505
562
|
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
506
563
|
className: prefixCls + "__divider"
|
|
507
564
|
}), /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
508
565
|
ref: ref,
|
|
509
|
-
className: cls
|
|
566
|
+
className: cls,
|
|
567
|
+
style: groupStyle
|
|
510
568
|
}, rest), /*#__PURE__*/React__default["default"].createElement("span", null, label)));
|
|
511
569
|
});
|
|
512
570
|
// @ts-ignore
|
package/lib/esm/CheckSelect.js
CHANGED
|
@@ -20,6 +20,7 @@ import { TagInputMock } from '@hi-ui/tag-input';
|
|
|
20
20
|
import { isUndef, isFunction, isArrayNonEmpty } from '@hi-ui/type-assertion';
|
|
21
21
|
import VirtualList, { useCheckInVirtual } from '@hi-ui/virtual-list';
|
|
22
22
|
import { Picker } from '@hi-ui/picker';
|
|
23
|
+
import { useMergeSemantic } from '@hi-ui/use-merge-semantic';
|
|
23
24
|
import { mockDefaultHandlers } from '@hi-ui/dom-utils';
|
|
24
25
|
import { uniqBy } from '@hi-ui/array-utils';
|
|
25
26
|
import { Highlighter } from '@hi-ui/highlighter';
|
|
@@ -90,10 +91,28 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
90
91
|
_a$showIndicator = _a.showIndicator,
|
|
91
92
|
showIndicator = _a$showIndicator === void 0 ? true : _a$showIndicator,
|
|
92
93
|
renderExtraHeader = _a.renderExtraHeader,
|
|
93
|
-
|
|
94
|
+
classNamesProp = _a.classNames,
|
|
95
|
+
stylesProp = _a.styles,
|
|
96
|
+
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", "onItemCreate", "creatableInSearch", "fieldNames", "checkedOnEntered", "customRender", "tagInputProps", "size", "prefix", "suffix", "onKeyDown", "keyword", "clearSearchOnClosed", "label", "showIndicator", "renderExtraHeader", "classNames", "styles"]);
|
|
94
97
|
var _useGlobalContext = useGlobalContext(),
|
|
95
|
-
globalSize = _useGlobalContext.size
|
|
98
|
+
globalSize = _useGlobalContext.size,
|
|
99
|
+
checkSelectConfig = _useGlobalContext.checkSelect;
|
|
96
100
|
var size = (_b = sizeProp !== null && sizeProp !== void 0 ? sizeProp : globalSize) !== null && _b !== void 0 ? _b : 'md';
|
|
101
|
+
var _useMergeSemantic = useMergeSemantic({
|
|
102
|
+
classNamesList: [checkSelectConfig === null || checkSelectConfig === void 0 ? void 0 : checkSelectConfig.classNames, classNamesProp],
|
|
103
|
+
stylesList: [checkSelectConfig === null || checkSelectConfig === void 0 ? void 0 : checkSelectConfig.styles, stylesProp],
|
|
104
|
+
info: {
|
|
105
|
+
props: Object.assign(Object.assign({}, rest), {
|
|
106
|
+
disabled: disabled,
|
|
107
|
+
searchable: searchableProp,
|
|
108
|
+
visible: visible,
|
|
109
|
+
size: size,
|
|
110
|
+
appearance: appearance
|
|
111
|
+
})
|
|
112
|
+
}
|
|
113
|
+
}),
|
|
114
|
+
classNames = _useMergeSemantic.classNames,
|
|
115
|
+
styles = _useMergeSemantic.styles;
|
|
97
116
|
// ************************** 国际化 ************************* //
|
|
98
117
|
var i18n = useLocaleContext();
|
|
99
118
|
var placeholder = isUndef(placeholderProp) ? i18n.get('checkSelect.placeholder') : placeholderProp;
|
|
@@ -186,6 +205,18 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
186
205
|
var nextData = checkedItems.concat(flattedData);
|
|
187
206
|
return uniqBy(nextData, 'id');
|
|
188
207
|
}, [checkedItems, flattedData]);
|
|
208
|
+
// 仅当有关键字搜索且(无结果 或 关键字与搜索结果无全匹配)时显示创建入口
|
|
209
|
+
var creatableInSearchVisible = useMemo(function () {
|
|
210
|
+
if (!creatableInSearch || !(searchValue === null || searchValue === void 0 ? void 0 : searchValue.trim())) return false;
|
|
211
|
+
var optionItems = showData.filter(function (item) {
|
|
212
|
+
return !('groupTitle' in item);
|
|
213
|
+
});
|
|
214
|
+
if (optionItems.length === 0) return true;
|
|
215
|
+
var hasFullMatch = optionItems.some(function (item) {
|
|
216
|
+
return String(item.title).trim() === searchValue.trim();
|
|
217
|
+
});
|
|
218
|
+
return !hasFullMatch;
|
|
219
|
+
}, [creatableInSearch, searchValue, showData]);
|
|
189
220
|
var mergedCheckedItems = useMemo(function () {
|
|
190
221
|
if (typeof customRender !== 'function') {
|
|
191
222
|
return [];
|
|
@@ -322,12 +353,30 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
322
353
|
}
|
|
323
354
|
}
|
|
324
355
|
}, [menuVisible, showData]);
|
|
356
|
+
var pickerSemanticKeys = ['root', 'container', 'panel', 'header', 'search', 'body', 'footer', 'loading', 'empty', 'creator'];
|
|
357
|
+
var pickerClassNames = pickerSemanticKeys.reduce(function (acc, key) {
|
|
358
|
+
if ((classNames === null || classNames === void 0 ? void 0 : classNames[key]) !== undefined) {
|
|
359
|
+
acc[key] = classNames[key];
|
|
360
|
+
}
|
|
361
|
+
return acc;
|
|
362
|
+
}, {});
|
|
363
|
+
var pickerStyles = pickerSemanticKeys.reduce(function (acc, key) {
|
|
364
|
+
if (styles === null || styles === void 0 ? void 0 : styles[key]) {
|
|
365
|
+
acc[key] = styles[key];
|
|
366
|
+
}
|
|
367
|
+
return acc;
|
|
368
|
+
}, {});
|
|
325
369
|
return /*#__PURE__*/React.createElement(CheckSelectProvider, {
|
|
326
|
-
value: context
|
|
370
|
+
value: Object.assign(Object.assign({}, context), {
|
|
371
|
+
classNames: classNames,
|
|
372
|
+
styles: styles
|
|
373
|
+
})
|
|
327
374
|
}, /*#__PURE__*/React.createElement(Picker, Object.assign({
|
|
328
375
|
ref: ref,
|
|
329
376
|
innerRef: pickerInnerRef,
|
|
330
|
-
className: cls
|
|
377
|
+
className: cls,
|
|
378
|
+
classNames: pickerClassNames,
|
|
379
|
+
styles: pickerStyles
|
|
331
380
|
}, rootProps, {
|
|
332
381
|
visible: menuVisible,
|
|
333
382
|
disabled: disabled,
|
|
@@ -342,6 +391,7 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
342
391
|
loading: rest.loading !== undefined ? rest.loading : loading,
|
|
343
392
|
footer: renderDefaultFooter(),
|
|
344
393
|
creatableInSearch: creatableInSearch,
|
|
394
|
+
creatableInSearchVisible: creatableInSearchVisible,
|
|
345
395
|
onCreate: handleCreate,
|
|
346
396
|
header: renderExtraHeader === null || renderExtraHeader === void 0 ? void 0 : renderExtraHeader(),
|
|
347
397
|
trigger: customRender ? customRenderContent : ( /*#__PURE__*/React.createElement(TagInputMock, Object.assign({
|
|
@@ -444,7 +494,9 @@ var CheckSelectOption = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
444
494
|
rest = __rest(_a, ["prefixCls", "className", "children", "option", "onClick", "titleRender", "depth", "focused"]);
|
|
445
495
|
var _useCheckSelectContex = useCheckSelectContext(),
|
|
446
496
|
isCheckedId = _useCheckSelectContex.isCheckedId,
|
|
447
|
-
onSelect = _useCheckSelectContex.onSelect
|
|
497
|
+
onSelect = _useCheckSelectContex.onSelect,
|
|
498
|
+
classNames = _useCheckSelectContex.classNames,
|
|
499
|
+
styles = _useCheckSelectContex.styles;
|
|
448
500
|
var id = option.id,
|
|
449
501
|
_option$disabled = option.disabled,
|
|
450
502
|
disabled = _option$disabled === void 0 ? false : _option$disabled;
|
|
@@ -453,7 +505,7 @@ var CheckSelectOption = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
453
505
|
disabled: disabled,
|
|
454
506
|
checked: checked
|
|
455
507
|
}));
|
|
456
|
-
var cls = cx(prefixCls, className, checked && prefixCls + "--checked", disabled && prefixCls + "--disabled", focused && prefixCls + "--focused");
|
|
508
|
+
var cls = cx(prefixCls, className, classNames === null || classNames === void 0 ? void 0 : classNames.option, checked && prefixCls + "--checked", disabled && prefixCls + "--disabled", focused && prefixCls + "--focused");
|
|
457
509
|
var handleOptionCheck = useCallback(function (evt) {
|
|
458
510
|
onSelect(option, !checked);
|
|
459
511
|
onClick === null || onClick === void 0 ? void 0 : onClick(evt);
|
|
@@ -470,7 +522,8 @@ var CheckSelectOption = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
470
522
|
}, [prefixCls]);
|
|
471
523
|
return /*#__PURE__*/React.createElement("div", Object.assign({
|
|
472
524
|
ref: ref,
|
|
473
|
-
className: cls
|
|
525
|
+
className: cls,
|
|
526
|
+
style: styles === null || styles === void 0 ? void 0 : styles.option
|
|
474
527
|
}, rest, {
|
|
475
528
|
onClick: handleOptionCheck
|
|
476
529
|
}), renderTitle(eventNodeRef.current, titleRender));
|
|
@@ -487,12 +540,17 @@ var CheckSelectOptionGroup = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
487
540
|
className = _a.className,
|
|
488
541
|
label = _a.label,
|
|
489
542
|
rest = __rest(_a, ["prefixCls", "className", "label", "depth"]);
|
|
490
|
-
var
|
|
543
|
+
var _useCheckSelectContex2 = useCheckSelectContext(),
|
|
544
|
+
classNames = _useCheckSelectContex2.classNames,
|
|
545
|
+
styles = _useCheckSelectContex2.styles;
|
|
546
|
+
var cls = cx(prefixCls, className, classNames === null || classNames === void 0 ? void 0 : classNames.optionGroup);
|
|
547
|
+
var groupStyle = styles === null || styles === void 0 ? void 0 : styles.optionGroup;
|
|
491
548
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
492
549
|
className: prefixCls + "__divider"
|
|
493
550
|
}), /*#__PURE__*/React.createElement("div", Object.assign({
|
|
494
551
|
ref: ref,
|
|
495
|
-
className: cls
|
|
552
|
+
className: cls,
|
|
553
|
+
style: groupStyle
|
|
496
554
|
}, rest), /*#__PURE__*/React.createElement("span", null, label)));
|
|
497
555
|
});
|
|
498
556
|
// @ts-ignore
|
|
@@ -3,13 +3,18 @@ import { UseCheckSelectProps } from './use-check-select';
|
|
|
3
3
|
import type { HiBaseHTMLProps, HiBaseSizeEnum } from '@hi-ui/core';
|
|
4
4
|
import { CheckSelectAppearanceEnum, CheckSelectDataItem, CheckSelectItemEventData, CheckSelectMergedItem } from './types';
|
|
5
5
|
import { TagInputMockProps } from '@hi-ui/tag-input';
|
|
6
|
-
import { PickerProps } from '@hi-ui/picker';
|
|
6
|
+
import { PickerProps, PickerSemanticName } from '@hi-ui/picker';
|
|
7
|
+
import type { ComponentSemantic, SemanticClassNamesType, SemanticStylesType } from '@hi-ui/use-merge-semantic';
|
|
7
8
|
import { UseDataSource } from '@hi-ui/use-data-source';
|
|
8
9
|
/**
|
|
9
10
|
* 多项选择器
|
|
10
11
|
*/
|
|
11
12
|
export declare const CheckSelect: React.ForwardRefExoticComponent<CheckSelectProps & React.RefAttributes<HTMLDivElement | null>>;
|
|
12
|
-
export
|
|
13
|
+
export type CheckSelectSemanticName = PickerSemanticName | 'option' | 'optionGroup';
|
|
14
|
+
export type CheckSelectSemanticClassNames = SemanticClassNamesType<CheckSelectProps, CheckSelectSemanticName>;
|
|
15
|
+
export type CheckSelectSemanticStyles = SemanticStylesType<CheckSelectProps, CheckSelectSemanticName>;
|
|
16
|
+
export type CheckSelectSemantic = ComponentSemantic<CheckSelectSemanticClassNames, CheckSelectSemanticStyles>;
|
|
17
|
+
export interface CheckSelectProps extends Omit<PickerProps, 'trigger' | 'scrollable' | 'header' | 'footer' | 'classNames' | 'styles'>, UseCheckSelectProps, CheckSelectSemantic {
|
|
13
18
|
/**
|
|
14
19
|
* 设置虚拟滚动容器的可视高度。暂不对外暴露
|
|
15
20
|
* @private
|
package/lib/types/context.d.ts
CHANGED
|
@@ -1,20 +1,27 @@
|
|
|
1
|
-
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export declare const CheckSelectProvider: React.Provider<(Omit<{
|
|
2
3
|
rootProps: {};
|
|
3
4
|
data: any[];
|
|
4
5
|
flattedData: import("packages/utils/tree-utils/lib/types/types").BaseFlattedTreeNodeData<any, any>[];
|
|
5
|
-
value:
|
|
6
|
+
value: React.ReactText[];
|
|
6
7
|
tryChangeValue: (value: React.ReactText[], item: import("./types").CheckSelectItemEventData | import("./types").CheckSelectItemEventData[], shouldChecked: boolean) => void;
|
|
7
8
|
onSelect: (targetItem: import("packages/hooks/use-check/lib/types").UseCheckItem, shouldChecked: boolean) => void;
|
|
8
9
|
isCheckedId: (id: React.ReactText) => boolean;
|
|
9
10
|
checkedItems: import("./types").CheckSelectItemEventData[];
|
|
10
|
-
}, "rootProps">
|
|
11
|
+
}, "rootProps"> & {
|
|
12
|
+
classNames?: Partial<Record<string, string>>;
|
|
13
|
+
styles?: Partial<Record<string, React.CSSProperties>>;
|
|
14
|
+
}) | null>;
|
|
11
15
|
export declare const useCheckSelectContext: () => Omit<{
|
|
12
16
|
rootProps: {};
|
|
13
17
|
data: any[];
|
|
14
18
|
flattedData: import("packages/utils/tree-utils/lib/types/types").BaseFlattedTreeNodeData<any, any>[];
|
|
15
|
-
value:
|
|
19
|
+
value: React.ReactText[];
|
|
16
20
|
tryChangeValue: (value: React.ReactText[], item: import("./types").CheckSelectItemEventData | import("./types").CheckSelectItemEventData[], shouldChecked: boolean) => void;
|
|
17
21
|
onSelect: (targetItem: import("packages/hooks/use-check/lib/types").UseCheckItem, shouldChecked: boolean) => void;
|
|
18
22
|
isCheckedId: (id: React.ReactText) => boolean;
|
|
19
23
|
checkedItems: import("./types").CheckSelectItemEventData[];
|
|
20
|
-
}, "rootProps"
|
|
24
|
+
}, "rootProps"> & {
|
|
25
|
+
classNames?: Partial<Record<string, string>>;
|
|
26
|
+
styles?: Partial<Record<string, React.CSSProperties>>;
|
|
27
|
+
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hi-ui/check-select",
|
|
3
|
-
"version": "5.0.0-experimental.
|
|
3
|
+
"version": "5.0.0-experimental.2",
|
|
4
4
|
"description": "A sub-package for @hi-ui/hiui.",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"author": "HiUI <mi-hiui@xiaomi.com>",
|
|
@@ -45,17 +45,17 @@
|
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
47
|
"@hi-ui/array-utils": "^5.0.0-experimental.0",
|
|
48
|
-
"@hi-ui/checkbox": "^5.0.0-experimental.
|
|
48
|
+
"@hi-ui/checkbox": "^5.0.0-experimental.1",
|
|
49
49
|
"@hi-ui/classname": "^5.0.0-experimental.0",
|
|
50
50
|
"@hi-ui/dom-utils": "^5.0.0-experimental.0",
|
|
51
51
|
"@hi-ui/env": "^5.0.0-experimental.0",
|
|
52
52
|
"@hi-ui/func-utils": "^5.0.0-experimental.0",
|
|
53
|
-
"@hi-ui/highlighter": "^5.0.0-experimental.
|
|
54
|
-
"@hi-ui/icons": "^5.0.0-experimental.
|
|
55
|
-
"@hi-ui/input": "^5.0.0-experimental.
|
|
56
|
-
"@hi-ui/picker": "^5.0.0-experimental.
|
|
57
|
-
"@hi-ui/popper": "^5.0.0-experimental.
|
|
58
|
-
"@hi-ui/tag-input": "^5.0.0-experimental.
|
|
53
|
+
"@hi-ui/highlighter": "^5.0.0-experimental.1",
|
|
54
|
+
"@hi-ui/icons": "^5.0.0-experimental.1",
|
|
55
|
+
"@hi-ui/input": "^5.0.0-experimental.2",
|
|
56
|
+
"@hi-ui/picker": "^5.0.0-experimental.2",
|
|
57
|
+
"@hi-ui/popper": "^5.0.0-experimental.1",
|
|
58
|
+
"@hi-ui/tag-input": "^5.0.0-experimental.2",
|
|
59
59
|
"@hi-ui/times": "^5.0.0-experimental.0",
|
|
60
60
|
"@hi-ui/tree-utils": "^5.0.0-experimental.0",
|
|
61
61
|
"@hi-ui/type-assertion": "^5.0.0-experimental.0",
|
|
@@ -67,16 +67,17 @@
|
|
|
67
67
|
"@hi-ui/use-search-mode": "^5.0.0-experimental.0",
|
|
68
68
|
"@hi-ui/use-toggle": "^5.0.0-experimental.0",
|
|
69
69
|
"@hi-ui/use-uncontrolled-state": "^5.0.0-experimental.0",
|
|
70
|
-
"@hi-ui/virtual-list": "^5.0.0-experimental.
|
|
70
|
+
"@hi-ui/virtual-list": "^5.0.0-experimental.1",
|
|
71
|
+
"@hi-ui/use-merge-semantic": "^5.0.0-experimental.0"
|
|
71
72
|
},
|
|
72
73
|
"peerDependencies": {
|
|
73
|
-
"@hi-ui/core": ">=5.0.0-experimental.
|
|
74
|
+
"@hi-ui/core": ">=5.0.0-experimental.1",
|
|
74
75
|
"react": ">=16.8.6",
|
|
75
76
|
"react-dom": ">=16.8.6"
|
|
76
77
|
},
|
|
77
78
|
"devDependencies": {
|
|
78
|
-
"@hi-ui/core": "^5.0.0-experimental.
|
|
79
|
-
"@hi-ui/core-css": "^5.0.0-experimental.
|
|
79
|
+
"@hi-ui/core": "^5.0.0-experimental.1",
|
|
80
|
+
"@hi-ui/core-css": "^5.0.0-experimental.2",
|
|
80
81
|
"react": "^17.0.1",
|
|
81
82
|
"react-dom": "^17.0.1"
|
|
82
83
|
}
|