@hi-ui/check-select 4.0.0-beta.5 → 4.0.0-beta.50

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.
Files changed (546) hide show
  1. package/README.md +25 -25
  2. package/lib/cjs/CheckSelect.js +105 -92
  3. package/lib/cjs/context.js +0 -1
  4. package/lib/cjs/hooks/use-data.js +0 -1
  5. package/lib/cjs/hooks/use-flatten-data.js +0 -1
  6. package/lib/cjs/index.js +0 -1
  7. package/lib/cjs/styles/index.scss.js +2 -3
  8. package/lib/cjs/use-check-select.js +18 -17
  9. package/lib/cjs/utils/index.js +52 -0
  10. package/lib/esm/CheckSelect.js +90 -77
  11. package/lib/esm/context.js +0 -1
  12. package/lib/esm/hooks/use-data.js +0 -1
  13. package/lib/esm/hooks/use-flatten-data.js +0 -1
  14. package/lib/esm/index.js +0 -1
  15. package/lib/esm/styles/index.scss.js +3 -5
  16. package/lib/esm/use-check-select.js +19 -18
  17. package/lib/esm/utils/index.js +45 -0
  18. package/lib/types/CheckSelect.d.ts +8 -12
  19. package/lib/types/context.d.ts +4 -2
  20. package/lib/types/index.d.ts +1 -0
  21. package/lib/types/types.d.ts +9 -7
  22. package/lib/types/use-check-select.d.ts +7 -7
  23. package/lib/types/utils/index.d.ts +10 -0
  24. package/package.json +27 -27
  25. package/lib/cjs/CheckSelect.js.map +0 -1
  26. package/lib/cjs/_virtual/_commonjsHelpers.js +0 -17
  27. package/lib/cjs/_virtual/_commonjsHelpers.js.map +0 -1
  28. package/lib/cjs/_virtual/_nodeUtil.js_commonjs-module +0 -19
  29. package/lib/cjs/_virtual/_nodeUtil.js_commonjs-module.map +0 -1
  30. package/lib/cjs/_virtual/isBuffer.js_commonjs-module +0 -19
  31. package/lib/cjs/_virtual/isBuffer.js_commonjs-module.map +0 -1
  32. package/lib/cjs/context.js.map +0 -1
  33. package/lib/cjs/hooks/use-data.js.map +0 -1
  34. package/lib/cjs/hooks/use-flatten-data.js.map +0 -1
  35. package/lib/cjs/index.js.map +0 -1
  36. package/lib/cjs/node_modules/lodash/_DataView.js +0 -27
  37. package/lib/cjs/node_modules/lodash/_DataView.js.map +0 -1
  38. package/lib/cjs/node_modules/lodash/_Hash.js +0 -58
  39. package/lib/cjs/node_modules/lodash/_Hash.js.map +0 -1
  40. package/lib/cjs/node_modules/lodash/_ListCache.js +0 -58
  41. package/lib/cjs/node_modules/lodash/_ListCache.js.map +0 -1
  42. package/lib/cjs/node_modules/lodash/_Map.js +0 -27
  43. package/lib/cjs/node_modules/lodash/_Map.js.map +0 -1
  44. package/lib/cjs/node_modules/lodash/_MapCache.js +0 -58
  45. package/lib/cjs/node_modules/lodash/_MapCache.js.map +0 -1
  46. package/lib/cjs/node_modules/lodash/_Promise.js +0 -27
  47. package/lib/cjs/node_modules/lodash/_Promise.js.map +0 -1
  48. package/lib/cjs/node_modules/lodash/_Set.js +0 -27
  49. package/lib/cjs/node_modules/lodash/_Set.js.map +0 -1
  50. package/lib/cjs/node_modules/lodash/_SetCache.js +0 -49
  51. package/lib/cjs/node_modules/lodash/_SetCache.js.map +0 -1
  52. package/lib/cjs/node_modules/lodash/_Stack.js +0 -55
  53. package/lib/cjs/node_modules/lodash/_Stack.js.map +0 -1
  54. package/lib/cjs/node_modules/lodash/_Symbol.js +0 -24
  55. package/lib/cjs/node_modules/lodash/_Symbol.js.map +0 -1
  56. package/lib/cjs/node_modules/lodash/_Uint8Array.js +0 -24
  57. package/lib/cjs/node_modules/lodash/_Uint8Array.js.map +0 -1
  58. package/lib/cjs/node_modules/lodash/_WeakMap.js +0 -27
  59. package/lib/cjs/node_modules/lodash/_WeakMap.js.map +0 -1
  60. package/lib/cjs/node_modules/lodash/_arrayFilter.js +0 -44
  61. package/lib/cjs/node_modules/lodash/_arrayFilter.js.map +0 -1
  62. package/lib/cjs/node_modules/lodash/_arrayIncludes.js +0 -36
  63. package/lib/cjs/node_modules/lodash/_arrayIncludes.js.map +0 -1
  64. package/lib/cjs/node_modules/lodash/_arrayIncludesWith.js +0 -40
  65. package/lib/cjs/node_modules/lodash/_arrayIncludesWith.js.map +0 -1
  66. package/lib/cjs/node_modules/lodash/_arrayLikeKeys.js +0 -75
  67. package/lib/cjs/node_modules/lodash/_arrayLikeKeys.js.map +0 -1
  68. package/lib/cjs/node_modules/lodash/_arrayMap.js +0 -39
  69. package/lib/cjs/node_modules/lodash/_arrayMap.js.map +0 -1
  70. package/lib/cjs/node_modules/lodash/_arrayPush.js +0 -38
  71. package/lib/cjs/node_modules/lodash/_arrayPush.js.map +0 -1
  72. package/lib/cjs/node_modules/lodash/_arraySome.js +0 -41
  73. package/lib/cjs/node_modules/lodash/_arraySome.js.map +0 -1
  74. package/lib/cjs/node_modules/lodash/_assocIndexOf.js +0 -42
  75. package/lib/cjs/node_modules/lodash/_assocIndexOf.js.map +0 -1
  76. package/lib/cjs/node_modules/lodash/_baseFindIndex.js +0 -42
  77. package/lib/cjs/node_modules/lodash/_baseFindIndex.js.map +0 -1
  78. package/lib/cjs/node_modules/lodash/_baseGet.js +0 -45
  79. package/lib/cjs/node_modules/lodash/_baseGet.js.map +0 -1
  80. package/lib/cjs/node_modules/lodash/_baseGetAllKeys.js +0 -41
  81. package/lib/cjs/node_modules/lodash/_baseGetAllKeys.js.map +0 -1
  82. package/lib/cjs/node_modules/lodash/_baseGetTag.js +0 -50
  83. package/lib/cjs/node_modules/lodash/_baseGetTag.js.map +0 -1
  84. package/lib/cjs/node_modules/lodash/_baseHasIn.js +0 -30
  85. package/lib/cjs/node_modules/lodash/_baseHasIn.js.map +0 -1
  86. package/lib/cjs/node_modules/lodash/_baseIndexOf.js +0 -41
  87. package/lib/cjs/node_modules/lodash/_baseIndexOf.js.map +0 -1
  88. package/lib/cjs/node_modules/lodash/_baseIsArguments.js +0 -39
  89. package/lib/cjs/node_modules/lodash/_baseIsArguments.js.map +0 -1
  90. package/lib/cjs/node_modules/lodash/_baseIsEqual.js +0 -51
  91. package/lib/cjs/node_modules/lodash/_baseIsEqual.js.map +0 -1
  92. package/lib/cjs/node_modules/lodash/_baseIsEqualDeep.js +0 -118
  93. package/lib/cjs/node_modules/lodash/_baseIsEqualDeep.js.map +0 -1
  94. package/lib/cjs/node_modules/lodash/_baseIsMatch.js +0 -84
  95. package/lib/cjs/node_modules/lodash/_baseIsMatch.js.map +0 -1
  96. package/lib/cjs/node_modules/lodash/_baseIsNaN.js +0 -29
  97. package/lib/cjs/node_modules/lodash/_baseIsNaN.js.map +0 -1
  98. package/lib/cjs/node_modules/lodash/_baseIsNative.js +0 -70
  99. package/lib/cjs/node_modules/lodash/_baseIsNative.js.map +0 -1
  100. package/lib/cjs/node_modules/lodash/_baseIsTypedArray.js +0 -70
  101. package/lib/cjs/node_modules/lodash/_baseIsTypedArray.js.map +0 -1
  102. package/lib/cjs/node_modules/lodash/_baseIteratee.js +0 -61
  103. package/lib/cjs/node_modules/lodash/_baseIteratee.js.map +0 -1
  104. package/lib/cjs/node_modules/lodash/_baseKeys.js +0 -54
  105. package/lib/cjs/node_modules/lodash/_baseKeys.js.map +0 -1
  106. package/lib/cjs/node_modules/lodash/_baseMatches.js +0 -47
  107. package/lib/cjs/node_modules/lodash/_baseMatches.js.map +0 -1
  108. package/lib/cjs/node_modules/lodash/_baseMatchesProperty.js +0 -63
  109. package/lib/cjs/node_modules/lodash/_baseMatchesProperty.js.map +0 -1
  110. package/lib/cjs/node_modules/lodash/_baseProperty.js +0 -31
  111. package/lib/cjs/node_modules/lodash/_baseProperty.js.map +0 -1
  112. package/lib/cjs/node_modules/lodash/_basePropertyDeep.js +0 -35
  113. package/lib/cjs/node_modules/lodash/_basePropertyDeep.js.map +0 -1
  114. package/lib/cjs/node_modules/lodash/_baseTimes.js +0 -38
  115. package/lib/cjs/node_modules/lodash/_baseTimes.js.map +0 -1
  116. package/lib/cjs/node_modules/lodash/_baseToString.js +0 -65
  117. package/lib/cjs/node_modules/lodash/_baseToString.js.map +0 -1
  118. package/lib/cjs/node_modules/lodash/_baseUnary.js +0 -31
  119. package/lib/cjs/node_modules/lodash/_baseUnary.js.map +0 -1
  120. package/lib/cjs/node_modules/lodash/_baseUniq.js +0 -105
  121. package/lib/cjs/node_modules/lodash/_baseUniq.js.map +0 -1
  122. package/lib/cjs/node_modules/lodash/_cacheHas.js +0 -30
  123. package/lib/cjs/node_modules/lodash/_cacheHas.js.map +0 -1
  124. package/lib/cjs/node_modules/lodash/_castPath.js +0 -47
  125. package/lib/cjs/node_modules/lodash/_castPath.js.map +0 -1
  126. package/lib/cjs/node_modules/lodash/_coreJsData.js +0 -24
  127. package/lib/cjs/node_modules/lodash/_coreJsData.js.map +0 -1
  128. package/lib/cjs/node_modules/lodash/_createSet.js +0 -41
  129. package/lib/cjs/node_modules/lodash/_createSet.js.map +0 -1
  130. package/lib/cjs/node_modules/lodash/_equalArrays.js +0 -106
  131. package/lib/cjs/node_modules/lodash/_equalArrays.js.map +0 -1
  132. package/lib/cjs/node_modules/lodash/_equalByTag.js +0 -144
  133. package/lib/cjs/node_modules/lodash/_equalByTag.js.map +0 -1
  134. package/lib/cjs/node_modules/lodash/_equalObjects.js +0 -110
  135. package/lib/cjs/node_modules/lodash/_equalObjects.js.map +0 -1
  136. package/lib/cjs/node_modules/lodash/_freeGlobal.js +0 -26
  137. package/lib/cjs/node_modules/lodash/_freeGlobal.js.map +0 -1
  138. package/lib/cjs/node_modules/lodash/_getAllKeys.js +0 -39
  139. package/lib/cjs/node_modules/lodash/_getAllKeys.js.map +0 -1
  140. package/lib/cjs/node_modules/lodash/_getMapData.js +0 -35
  141. package/lib/cjs/node_modules/lodash/_getMapData.js.map +0 -1
  142. package/lib/cjs/node_modules/lodash/_getMatchData.js +0 -45
  143. package/lib/cjs/node_modules/lodash/_getMatchData.js.map +0 -1
  144. package/lib/cjs/node_modules/lodash/_getNative.js +0 -38
  145. package/lib/cjs/node_modules/lodash/_getNative.js.map +0 -1
  146. package/lib/cjs/node_modules/lodash/_getRawTag.js +0 -67
  147. package/lib/cjs/node_modules/lodash/_getRawTag.js.map +0 -1
  148. package/lib/cjs/node_modules/lodash/_getSymbols.js +0 -51
  149. package/lib/cjs/node_modules/lodash/_getSymbols.js.map +0 -1
  150. package/lib/cjs/node_modules/lodash/_getTag.js +0 -93
  151. package/lib/cjs/node_modules/lodash/_getTag.js.map +0 -1
  152. package/lib/cjs/node_modules/lodash/_getValue.js +0 -30
  153. package/lib/cjs/node_modules/lodash/_getValue.js.map +0 -1
  154. package/lib/cjs/node_modules/lodash/_hasPath.js +0 -70
  155. package/lib/cjs/node_modules/lodash/_hasPath.js.map +0 -1
  156. package/lib/cjs/node_modules/lodash/_hashClear.js +0 -34
  157. package/lib/cjs/node_modules/lodash/_hashClear.js.map +0 -1
  158. package/lib/cjs/node_modules/lodash/_hashDelete.js +0 -34
  159. package/lib/cjs/node_modules/lodash/_hashDelete.js.map +0 -1
  160. package/lib/cjs/node_modules/lodash/_hashGet.js +0 -51
  161. package/lib/cjs/node_modules/lodash/_hashGet.js.map +0 -1
  162. package/lib/cjs/node_modules/lodash/_hashHas.js +0 -42
  163. package/lib/cjs/node_modules/lodash/_hashHas.js.map +0 -1
  164. package/lib/cjs/node_modules/lodash/_hashSet.js +0 -42
  165. package/lib/cjs/node_modules/lodash/_hashSet.js.map +0 -1
  166. package/lib/cjs/node_modules/lodash/_isIndex.js +0 -41
  167. package/lib/cjs/node_modules/lodash/_isIndex.js.map +0 -1
  168. package/lib/cjs/node_modules/lodash/_isKey.js +0 -53
  169. package/lib/cjs/node_modules/lodash/_isKey.js.map +0 -1
  170. package/lib/cjs/node_modules/lodash/_isKeyable.js +0 -33
  171. package/lib/cjs/node_modules/lodash/_isKeyable.js.map +0 -1
  172. package/lib/cjs/node_modules/lodash/_isMasked.js +0 -40
  173. package/lib/cjs/node_modules/lodash/_isMasked.js.map +0 -1
  174. package/lib/cjs/node_modules/lodash/_isPrototype.js +0 -34
  175. package/lib/cjs/node_modules/lodash/_isPrototype.js.map +0 -1
  176. package/lib/cjs/node_modules/lodash/_isStrictComparable.js +0 -34
  177. package/lib/cjs/node_modules/lodash/_isStrictComparable.js.map +0 -1
  178. package/lib/cjs/node_modules/lodash/_listCacheClear.js +0 -30
  179. package/lib/cjs/node_modules/lodash/_listCacheClear.js.map +0 -1
  180. package/lib/cjs/node_modules/lodash/_listCacheDelete.js +0 -57
  181. package/lib/cjs/node_modules/lodash/_listCacheDelete.js.map +0 -1
  182. package/lib/cjs/node_modules/lodash/_listCacheGet.js +0 -37
  183. package/lib/cjs/node_modules/lodash/_listCacheGet.js.map +0 -1
  184. package/lib/cjs/node_modules/lodash/_listCacheHas.js +0 -35
  185. package/lib/cjs/node_modules/lodash/_listCacheHas.js.map +0 -1
  186. package/lib/cjs/node_modules/lodash/_listCacheSet.js +0 -46
  187. package/lib/cjs/node_modules/lodash/_listCacheSet.js.map +0 -1
  188. package/lib/cjs/node_modules/lodash/_mapCacheClear.js +0 -44
  189. package/lib/cjs/node_modules/lodash/_mapCacheClear.js.map +0 -1
  190. package/lib/cjs/node_modules/lodash/_mapCacheDelete.js +0 -37
  191. package/lib/cjs/node_modules/lodash/_mapCacheDelete.js.map +0 -1
  192. package/lib/cjs/node_modules/lodash/_mapCacheGet.js +0 -35
  193. package/lib/cjs/node_modules/lodash/_mapCacheGet.js.map +0 -1
  194. package/lib/cjs/node_modules/lodash/_mapCacheHas.js +0 -35
  195. package/lib/cjs/node_modules/lodash/_mapCacheHas.js.map +0 -1
  196. package/lib/cjs/node_modules/lodash/_mapCacheSet.js +0 -40
  197. package/lib/cjs/node_modules/lodash/_mapCacheSet.js.map +0 -1
  198. package/lib/cjs/node_modules/lodash/_mapToArray.js +0 -34
  199. package/lib/cjs/node_modules/lodash/_mapToArray.js.map +0 -1
  200. package/lib/cjs/node_modules/lodash/_matchesStrictComparable.js +0 -37
  201. package/lib/cjs/node_modules/lodash/_matchesStrictComparable.js.map +0 -1
  202. package/lib/cjs/node_modules/lodash/_memoizeCapped.js +0 -45
  203. package/lib/cjs/node_modules/lodash/_memoizeCapped.js.map +0 -1
  204. package/lib/cjs/node_modules/lodash/_nativeCreate.js +0 -24
  205. package/lib/cjs/node_modules/lodash/_nativeCreate.js.map +0 -1
  206. package/lib/cjs/node_modules/lodash/_nativeKeys.js +0 -24
  207. package/lib/cjs/node_modules/lodash/_nativeKeys.js.map +0 -1
  208. package/lib/cjs/node_modules/lodash/_nodeUtil.js +0 -48
  209. package/lib/cjs/node_modules/lodash/_nodeUtil.js.map +0 -1
  210. package/lib/cjs/node_modules/lodash/_objectToString.js +0 -39
  211. package/lib/cjs/node_modules/lodash/_objectToString.js.map +0 -1
  212. package/lib/cjs/node_modules/lodash/_overArg.js +0 -32
  213. package/lib/cjs/node_modules/lodash/_overArg.js.map +0 -1
  214. package/lib/cjs/node_modules/lodash/_root.js +0 -29
  215. package/lib/cjs/node_modules/lodash/_root.js.map +0 -1
  216. package/lib/cjs/node_modules/lodash/_setCacheAdd.js +0 -37
  217. package/lib/cjs/node_modules/lodash/_setCacheAdd.js.map +0 -1
  218. package/lib/cjs/node_modules/lodash/_setCacheHas.js +0 -31
  219. package/lib/cjs/node_modules/lodash/_setCacheHas.js.map +0 -1
  220. package/lib/cjs/node_modules/lodash/_setToArray.js +0 -34
  221. package/lib/cjs/node_modules/lodash/_setToArray.js.map +0 -1
  222. package/lib/cjs/node_modules/lodash/_stackClear.js +0 -34
  223. package/lib/cjs/node_modules/lodash/_stackClear.js.map +0 -1
  224. package/lib/cjs/node_modules/lodash/_stackDelete.js +0 -34
  225. package/lib/cjs/node_modules/lodash/_stackDelete.js.map +0 -1
  226. package/lib/cjs/node_modules/lodash/_stackGet.js +0 -31
  227. package/lib/cjs/node_modules/lodash/_stackGet.js.map +0 -1
  228. package/lib/cjs/node_modules/lodash/_stackHas.js +0 -31
  229. package/lib/cjs/node_modules/lodash/_stackHas.js.map +0 -1
  230. package/lib/cjs/node_modules/lodash/_stackSet.js +0 -61
  231. package/lib/cjs/node_modules/lodash/_stackSet.js.map +0 -1
  232. package/lib/cjs/node_modules/lodash/_strictIndexOf.js +0 -41
  233. package/lib/cjs/node_modules/lodash/_strictIndexOf.js.map +0 -1
  234. package/lib/cjs/node_modules/lodash/_stringToPath.js +0 -49
  235. package/lib/cjs/node_modules/lodash/_stringToPath.js.map +0 -1
  236. package/lib/cjs/node_modules/lodash/_toKey.js +0 -41
  237. package/lib/cjs/node_modules/lodash/_toKey.js.map +0 -1
  238. package/lib/cjs/node_modules/lodash/_toSource.js +0 -45
  239. package/lib/cjs/node_modules/lodash/_toSource.js.map +0 -1
  240. package/lib/cjs/node_modules/lodash/eq.js +0 -54
  241. package/lib/cjs/node_modules/lodash/eq.js.map +0 -1
  242. package/lib/cjs/node_modules/lodash/get.js +0 -52
  243. package/lib/cjs/node_modules/lodash/get.js.map +0 -1
  244. package/lib/cjs/node_modules/lodash/hasIn.js +0 -55
  245. package/lib/cjs/node_modules/lodash/hasIn.js.map +0 -1
  246. package/lib/cjs/node_modules/lodash/identity.js +0 -38
  247. package/lib/cjs/node_modules/lodash/identity.js.map +0 -1
  248. package/lib/cjs/node_modules/lodash/isArguments.js +0 -57
  249. package/lib/cjs/node_modules/lodash/isArguments.js.map +0 -1
  250. package/lib/cjs/node_modules/lodash/isArray.js +0 -42
  251. package/lib/cjs/node_modules/lodash/isArray.js.map +0 -1
  252. package/lib/cjs/node_modules/lodash/isArrayLike.js +0 -54
  253. package/lib/cjs/node_modules/lodash/isArrayLike.js.map +0 -1
  254. package/lib/cjs/node_modules/lodash/isBuffer.js +0 -57
  255. package/lib/cjs/node_modules/lodash/isBuffer.js.map +0 -1
  256. package/lib/cjs/node_modules/lodash/isFunction.js +0 -59
  257. package/lib/cjs/node_modules/lodash/isFunction.js.map +0 -1
  258. package/lib/cjs/node_modules/lodash/isLength.js +0 -51
  259. package/lib/cjs/node_modules/lodash/isLength.js.map +0 -1
  260. package/lib/cjs/node_modules/lodash/isObject.js +0 -51
  261. package/lib/cjs/node_modules/lodash/isObject.js.map +0 -1
  262. package/lib/cjs/node_modules/lodash/isObjectLike.js +0 -48
  263. package/lib/cjs/node_modules/lodash/isObjectLike.js.map +0 -1
  264. package/lib/cjs/node_modules/lodash/isSymbol.js +0 -51
  265. package/lib/cjs/node_modules/lodash/isSymbol.js.map +0 -1
  266. package/lib/cjs/node_modules/lodash/isTypedArray.js +0 -51
  267. package/lib/cjs/node_modules/lodash/isTypedArray.js.map +0 -1
  268. package/lib/cjs/node_modules/lodash/keys.js +0 -60
  269. package/lib/cjs/node_modules/lodash/keys.js.map +0 -1
  270. package/lib/cjs/node_modules/lodash/memoize.js +0 -94
  271. package/lib/cjs/node_modules/lodash/memoize.js.map +0 -1
  272. package/lib/cjs/node_modules/lodash/noop.js +0 -33
  273. package/lib/cjs/node_modules/lodash/noop.js.map +0 -1
  274. package/lib/cjs/node_modules/lodash/property.js +0 -57
  275. package/lib/cjs/node_modules/lodash/property.js.map +0 -1
  276. package/lib/cjs/node_modules/lodash/stubArray.js +0 -40
  277. package/lib/cjs/node_modules/lodash/stubArray.js.map +0 -1
  278. package/lib/cjs/node_modules/lodash/stubFalse.js +0 -35
  279. package/lib/cjs/node_modules/lodash/stubFalse.js.map +0 -1
  280. package/lib/cjs/node_modules/lodash/toString.js +0 -47
  281. package/lib/cjs/node_modules/lodash/toString.js.map +0 -1
  282. package/lib/cjs/node_modules/lodash/uniqBy.js +0 -52
  283. package/lib/cjs/node_modules/lodash/uniqBy.js.map +0 -1
  284. package/lib/cjs/styles/index.scss.js.map +0 -1
  285. package/lib/cjs/use-check-select.js.map +0 -1
  286. package/lib/esm/CheckSelect.js.map +0 -1
  287. package/lib/esm/_virtual/_commonjsHelpers.js +0 -12
  288. package/lib/esm/_virtual/_commonjsHelpers.js.map +0 -1
  289. package/lib/esm/_virtual/_nodeUtil.js_commonjs-module +0 -14
  290. package/lib/esm/_virtual/_nodeUtil.js_commonjs-module.map +0 -1
  291. package/lib/esm/_virtual/isBuffer.js_commonjs-module +0 -14
  292. package/lib/esm/_virtual/isBuffer.js_commonjs-module.map +0 -1
  293. package/lib/esm/context.js.map +0 -1
  294. package/lib/esm/hooks/use-data.js.map +0 -1
  295. package/lib/esm/hooks/use-flatten-data.js.map +0 -1
  296. package/lib/esm/index.js.map +0 -1
  297. package/lib/esm/node_modules/lodash/_DataView.js +0 -19
  298. package/lib/esm/node_modules/lodash/_DataView.js.map +0 -1
  299. package/lib/esm/node_modules/lodash/_Hash.js +0 -47
  300. package/lib/esm/node_modules/lodash/_Hash.js.map +0 -1
  301. package/lib/esm/node_modules/lodash/_ListCache.js +0 -47
  302. package/lib/esm/node_modules/lodash/_ListCache.js.map +0 -1
  303. package/lib/esm/node_modules/lodash/_Map.js +0 -19
  304. package/lib/esm/node_modules/lodash/_Map.js.map +0 -1
  305. package/lib/esm/node_modules/lodash/_MapCache.js +0 -47
  306. package/lib/esm/node_modules/lodash/_MapCache.js.map +0 -1
  307. package/lib/esm/node_modules/lodash/_Promise.js +0 -19
  308. package/lib/esm/node_modules/lodash/_Promise.js.map +0 -1
  309. package/lib/esm/node_modules/lodash/_Set.js +0 -19
  310. package/lib/esm/node_modules/lodash/_Set.js.map +0 -1
  311. package/lib/esm/node_modules/lodash/_SetCache.js +0 -40
  312. package/lib/esm/node_modules/lodash/_SetCache.js.map +0 -1
  313. package/lib/esm/node_modules/lodash/_Stack.js +0 -43
  314. package/lib/esm/node_modules/lodash/_Stack.js.map +0 -1
  315. package/lib/esm/node_modules/lodash/_Symbol.js +0 -17
  316. package/lib/esm/node_modules/lodash/_Symbol.js.map +0 -1
  317. package/lib/esm/node_modules/lodash/_Uint8Array.js +0 -17
  318. package/lib/esm/node_modules/lodash/_Uint8Array.js.map +0 -1
  319. package/lib/esm/node_modules/lodash/_WeakMap.js +0 -19
  320. package/lib/esm/node_modules/lodash/_WeakMap.js.map +0 -1
  321. package/lib/esm/node_modules/lodash/_arrayFilter.js +0 -39
  322. package/lib/esm/node_modules/lodash/_arrayFilter.js.map +0 -1
  323. package/lib/esm/node_modules/lodash/_arrayIncludes.js +0 -29
  324. package/lib/esm/node_modules/lodash/_arrayIncludes.js.map +0 -1
  325. package/lib/esm/node_modules/lodash/_arrayIncludesWith.js +0 -35
  326. package/lib/esm/node_modules/lodash/_arrayIncludesWith.js.map +0 -1
  327. package/lib/esm/node_modules/lodash/_arrayLikeKeys.js +0 -62
  328. package/lib/esm/node_modules/lodash/_arrayLikeKeys.js.map +0 -1
  329. package/lib/esm/node_modules/lodash/_arrayMap.js +0 -34
  330. package/lib/esm/node_modules/lodash/_arrayMap.js.map +0 -1
  331. package/lib/esm/node_modules/lodash/_arrayPush.js +0 -33
  332. package/lib/esm/node_modules/lodash/_arrayPush.js.map +0 -1
  333. package/lib/esm/node_modules/lodash/_arraySome.js +0 -36
  334. package/lib/esm/node_modules/lodash/_arraySome.js.map +0 -1
  335. package/lib/esm/node_modules/lodash/_assocIndexOf.js +0 -35
  336. package/lib/esm/node_modules/lodash/_assocIndexOf.js.map +0 -1
  337. package/lib/esm/node_modules/lodash/_baseFindIndex.js +0 -37
  338. package/lib/esm/node_modules/lodash/_baseFindIndex.js.map +0 -1
  339. package/lib/esm/node_modules/lodash/_baseGet.js +0 -37
  340. package/lib/esm/node_modules/lodash/_baseGet.js.map +0 -1
  341. package/lib/esm/node_modules/lodash/_baseGetAllKeys.js +0 -33
  342. package/lib/esm/node_modules/lodash/_baseGetAllKeys.js.map +0 -1
  343. package/lib/esm/node_modules/lodash/_baseGetTag.js +0 -41
  344. package/lib/esm/node_modules/lodash/_baseGetTag.js.map +0 -1
  345. package/lib/esm/node_modules/lodash/_baseHasIn.js +0 -25
  346. package/lib/esm/node_modules/lodash/_baseHasIn.js.map +0 -1
  347. package/lib/esm/node_modules/lodash/_baseIndexOf.js +0 -32
  348. package/lib/esm/node_modules/lodash/_baseIndexOf.js.map +0 -1
  349. package/lib/esm/node_modules/lodash/_baseIsArguments.js +0 -31
  350. package/lib/esm/node_modules/lodash/_baseIsArguments.js.map +0 -1
  351. package/lib/esm/node_modules/lodash/_baseIsEqual.js +0 -43
  352. package/lib/esm/node_modules/lodash/_baseIsEqual.js.map +0 -1
  353. package/lib/esm/node_modules/lodash/_baseIsEqualDeep.js +0 -103
  354. package/lib/esm/node_modules/lodash/_baseIsEqualDeep.js.map +0 -1
  355. package/lib/esm/node_modules/lodash/_baseIsMatch.js +0 -76
  356. package/lib/esm/node_modules/lodash/_baseIsMatch.js.map +0 -1
  357. package/lib/esm/node_modules/lodash/_baseIsNaN.js +0 -24
  358. package/lib/esm/node_modules/lodash/_baseIsNaN.js.map +0 -1
  359. package/lib/esm/node_modules/lodash/_baseIsNative.js +0 -60
  360. package/lib/esm/node_modules/lodash/_baseIsNative.js.map +0 -1
  361. package/lib/esm/node_modules/lodash/_baseIsTypedArray.js +0 -61
  362. package/lib/esm/node_modules/lodash/_baseIsTypedArray.js.map +0 -1
  363. package/lib/esm/node_modules/lodash/_baseIteratee.js +0 -50
  364. package/lib/esm/node_modules/lodash/_baseIteratee.js.map +0 -1
  365. package/lib/esm/node_modules/lodash/_baseKeys.js +0 -46
  366. package/lib/esm/node_modules/lodash/_baseKeys.js.map +0 -1
  367. package/lib/esm/node_modules/lodash/_baseMatches.js +0 -38
  368. package/lib/esm/node_modules/lodash/_baseMatches.js.map +0 -1
  369. package/lib/esm/node_modules/lodash/_baseMatchesProperty.js +0 -50
  370. package/lib/esm/node_modules/lodash/_baseMatchesProperty.js.map +0 -1
  371. package/lib/esm/node_modules/lodash/_baseProperty.js +0 -26
  372. package/lib/esm/node_modules/lodash/_baseProperty.js.map +0 -1
  373. package/lib/esm/node_modules/lodash/_basePropertyDeep.js +0 -28
  374. package/lib/esm/node_modules/lodash/_basePropertyDeep.js.map +0 -1
  375. package/lib/esm/node_modules/lodash/_baseTimes.js +0 -33
  376. package/lib/esm/node_modules/lodash/_baseTimes.js.map +0 -1
  377. package/lib/esm/node_modules/lodash/_baseToString.js +0 -55
  378. package/lib/esm/node_modules/lodash/_baseToString.js.map +0 -1
  379. package/lib/esm/node_modules/lodash/_baseUnary.js +0 -26
  380. package/lib/esm/node_modules/lodash/_baseUnary.js.map +0 -1
  381. package/lib/esm/node_modules/lodash/_baseUniq.js +0 -93
  382. package/lib/esm/node_modules/lodash/_baseUniq.js.map +0 -1
  383. package/lib/esm/node_modules/lodash/_cacheHas.js +0 -25
  384. package/lib/esm/node_modules/lodash/_cacheHas.js.map +0 -1
  385. package/lib/esm/node_modules/lodash/_castPath.js +0 -37
  386. package/lib/esm/node_modules/lodash/_castPath.js.map +0 -1
  387. package/lib/esm/node_modules/lodash/_coreJsData.js +0 -17
  388. package/lib/esm/node_modules/lodash/_coreJsData.js.map +0 -1
  389. package/lib/esm/node_modules/lodash/_createSet.js +0 -32
  390. package/lib/esm/node_modules/lodash/_createSet.js.map +0 -1
  391. package/lib/esm/node_modules/lodash/_equalArrays.js +0 -97
  392. package/lib/esm/node_modules/lodash/_equalArrays.js.map +0 -1
  393. package/lib/esm/node_modules/lodash/_equalByTag.js +0 -132
  394. package/lib/esm/node_modules/lodash/_equalByTag.js.map +0 -1
  395. package/lib/esm/node_modules/lodash/_equalObjects.js +0 -103
  396. package/lib/esm/node_modules/lodash/_equalObjects.js.map +0 -1
  397. package/lib/esm/node_modules/lodash/_freeGlobal.js +0 -18
  398. package/lib/esm/node_modules/lodash/_freeGlobal.js.map +0 -1
  399. package/lib/esm/node_modules/lodash/_getAllKeys.js +0 -30
  400. package/lib/esm/node_modules/lodash/_getAllKeys.js.map +0 -1
  401. package/lib/esm/node_modules/lodash/_getMapData.js +0 -28
  402. package/lib/esm/node_modules/lodash/_getMapData.js.map +0 -1
  403. package/lib/esm/node_modules/lodash/_getMatchData.js +0 -37
  404. package/lib/esm/node_modules/lodash/_getMatchData.js.map +0 -1
  405. package/lib/esm/node_modules/lodash/_getNative.js +0 -30
  406. package/lib/esm/node_modules/lodash/_getNative.js.map +0 -1
  407. package/lib/esm/node_modules/lodash/_getRawTag.js +0 -60
  408. package/lib/esm/node_modules/lodash/_getRawTag.js.map +0 -1
  409. package/lib/esm/node_modules/lodash/_getSymbols.js +0 -43
  410. package/lib/esm/node_modules/lodash/_getSymbols.js.map +0 -1
  411. package/lib/esm/node_modules/lodash/_getTag.js +0 -80
  412. package/lib/esm/node_modules/lodash/_getTag.js.map +0 -1
  413. package/lib/esm/node_modules/lodash/_getValue.js +0 -25
  414. package/lib/esm/node_modules/lodash/_getValue.js.map +0 -1
  415. package/lib/esm/node_modules/lodash/_hasPath.js +0 -58
  416. package/lib/esm/node_modules/lodash/_hasPath.js.map +0 -1
  417. package/lib/esm/node_modules/lodash/_hashClear.js +0 -27
  418. package/lib/esm/node_modules/lodash/_hashClear.js.map +0 -1
  419. package/lib/esm/node_modules/lodash/_hashDelete.js +0 -29
  420. package/lib/esm/node_modules/lodash/_hashDelete.js.map +0 -1
  421. package/lib/esm/node_modules/lodash/_hashGet.js +0 -44
  422. package/lib/esm/node_modules/lodash/_hashGet.js.map +0 -1
  423. package/lib/esm/node_modules/lodash/_hashHas.js +0 -35
  424. package/lib/esm/node_modules/lodash/_hashHas.js.map +0 -1
  425. package/lib/esm/node_modules/lodash/_hashSet.js +0 -35
  426. package/lib/esm/node_modules/lodash/_hashSet.js.map +0 -1
  427. package/lib/esm/node_modules/lodash/_isIndex.js +0 -36
  428. package/lib/esm/node_modules/lodash/_isIndex.js.map +0 -1
  429. package/lib/esm/node_modules/lodash/_isKey.js +0 -45
  430. package/lib/esm/node_modules/lodash/_isKey.js.map +0 -1
  431. package/lib/esm/node_modules/lodash/_isKeyable.js +0 -28
  432. package/lib/esm/node_modules/lodash/_isKeyable.js.map +0 -1
  433. package/lib/esm/node_modules/lodash/_isMasked.js +0 -33
  434. package/lib/esm/node_modules/lodash/_isMasked.js.map +0 -1
  435. package/lib/esm/node_modules/lodash/_isPrototype.js +0 -29
  436. package/lib/esm/node_modules/lodash/_isPrototype.js.map +0 -1
  437. package/lib/esm/node_modules/lodash/_isStrictComparable.js +0 -27
  438. package/lib/esm/node_modules/lodash/_isStrictComparable.js.map +0 -1
  439. package/lib/esm/node_modules/lodash/_listCacheClear.js +0 -25
  440. package/lib/esm/node_modules/lodash/_listCacheClear.js.map +0 -1
  441. package/lib/esm/node_modules/lodash/_listCacheDelete.js +0 -50
  442. package/lib/esm/node_modules/lodash/_listCacheDelete.js.map +0 -1
  443. package/lib/esm/node_modules/lodash/_listCacheGet.js +0 -30
  444. package/lib/esm/node_modules/lodash/_listCacheGet.js.map +0 -1
  445. package/lib/esm/node_modules/lodash/_listCacheHas.js +0 -28
  446. package/lib/esm/node_modules/lodash/_listCacheHas.js.map +0 -1
  447. package/lib/esm/node_modules/lodash/_listCacheSet.js +0 -39
  448. package/lib/esm/node_modules/lodash/_listCacheSet.js.map +0 -1
  449. package/lib/esm/node_modules/lodash/_mapCacheClear.js +0 -35
  450. package/lib/esm/node_modules/lodash/_mapCacheClear.js.map +0 -1
  451. package/lib/esm/node_modules/lodash/_mapCacheDelete.js +0 -30
  452. package/lib/esm/node_modules/lodash/_mapCacheDelete.js.map +0 -1
  453. package/lib/esm/node_modules/lodash/_mapCacheGet.js +0 -28
  454. package/lib/esm/node_modules/lodash/_mapCacheGet.js.map +0 -1
  455. package/lib/esm/node_modules/lodash/_mapCacheHas.js +0 -28
  456. package/lib/esm/node_modules/lodash/_mapCacheHas.js.map +0 -1
  457. package/lib/esm/node_modules/lodash/_mapCacheSet.js +0 -33
  458. package/lib/esm/node_modules/lodash/_mapCacheSet.js.map +0 -1
  459. package/lib/esm/node_modules/lodash/_mapToArray.js +0 -29
  460. package/lib/esm/node_modules/lodash/_mapToArray.js.map +0 -1
  461. package/lib/esm/node_modules/lodash/_matchesStrictComparable.js +0 -32
  462. package/lib/esm/node_modules/lodash/_matchesStrictComparable.js.map +0 -1
  463. package/lib/esm/node_modules/lodash/_memoizeCapped.js +0 -38
  464. package/lib/esm/node_modules/lodash/_memoizeCapped.js.map +0 -1
  465. package/lib/esm/node_modules/lodash/_nativeCreate.js +0 -17
  466. package/lib/esm/node_modules/lodash/_nativeCreate.js.map +0 -1
  467. package/lib/esm/node_modules/lodash/_nativeKeys.js +0 -17
  468. package/lib/esm/node_modules/lodash/_nativeKeys.js.map +0 -1
  469. package/lib/esm/node_modules/lodash/_nodeUtil.js +0 -45
  470. package/lib/esm/node_modules/lodash/_nodeUtil.js.map +0 -1
  471. package/lib/esm/node_modules/lodash/_objectToString.js +0 -34
  472. package/lib/esm/node_modules/lodash/_objectToString.js.map +0 -1
  473. package/lib/esm/node_modules/lodash/_overArg.js +0 -27
  474. package/lib/esm/node_modules/lodash/_overArg.js.map +0 -1
  475. package/lib/esm/node_modules/lodash/_root.js +0 -22
  476. package/lib/esm/node_modules/lodash/_root.js.map +0 -1
  477. package/lib/esm/node_modules/lodash/_setCacheAdd.js +0 -32
  478. package/lib/esm/node_modules/lodash/_setCacheAdd.js.map +0 -1
  479. package/lib/esm/node_modules/lodash/_setCacheHas.js +0 -26
  480. package/lib/esm/node_modules/lodash/_setCacheHas.js.map +0 -1
  481. package/lib/esm/node_modules/lodash/_setToArray.js +0 -29
  482. package/lib/esm/node_modules/lodash/_setToArray.js.map +0 -1
  483. package/lib/esm/node_modules/lodash/_stackClear.js +0 -27
  484. package/lib/esm/node_modules/lodash/_stackClear.js.map +0 -1
  485. package/lib/esm/node_modules/lodash/_stackDelete.js +0 -29
  486. package/lib/esm/node_modules/lodash/_stackDelete.js.map +0 -1
  487. package/lib/esm/node_modules/lodash/_stackGet.js +0 -26
  488. package/lib/esm/node_modules/lodash/_stackGet.js.map +0 -1
  489. package/lib/esm/node_modules/lodash/_stackHas.js +0 -26
  490. package/lib/esm/node_modules/lodash/_stackHas.js.map +0 -1
  491. package/lib/esm/node_modules/lodash/_stackSet.js +0 -52
  492. package/lib/esm/node_modules/lodash/_stackSet.js.map +0 -1
  493. package/lib/esm/node_modules/lodash/_strictIndexOf.js +0 -36
  494. package/lib/esm/node_modules/lodash/_strictIndexOf.js.map +0 -1
  495. package/lib/esm/node_modules/lodash/_stringToPath.js +0 -42
  496. package/lib/esm/node_modules/lodash/_stringToPath.js.map +0 -1
  497. package/lib/esm/node_modules/lodash/_toKey.js +0 -34
  498. package/lib/esm/node_modules/lodash/_toKey.js.map +0 -1
  499. package/lib/esm/node_modules/lodash/_toSource.js +0 -40
  500. package/lib/esm/node_modules/lodash/_toSource.js.map +0 -1
  501. package/lib/esm/node_modules/lodash/eq.js +0 -49
  502. package/lib/esm/node_modules/lodash/eq.js.map +0 -1
  503. package/lib/esm/node_modules/lodash/get.js +0 -45
  504. package/lib/esm/node_modules/lodash/get.js.map +0 -1
  505. package/lib/esm/node_modules/lodash/hasIn.js +0 -47
  506. package/lib/esm/node_modules/lodash/hasIn.js.map +0 -1
  507. package/lib/esm/node_modules/lodash/identity.js +0 -33
  508. package/lib/esm/node_modules/lodash/identity.js.map +0 -1
  509. package/lib/esm/node_modules/lodash/isArguments.js +0 -49
  510. package/lib/esm/node_modules/lodash/isArguments.js.map +0 -1
  511. package/lib/esm/node_modules/lodash/isArray.js +0 -37
  512. package/lib/esm/node_modules/lodash/isArray.js.map +0 -1
  513. package/lib/esm/node_modules/lodash/isArrayLike.js +0 -46
  514. package/lib/esm/node_modules/lodash/isArrayLike.js.map +0 -1
  515. package/lib/esm/node_modules/lodash/isBuffer.js +0 -53
  516. package/lib/esm/node_modules/lodash/isBuffer.js.map +0 -1
  517. package/lib/esm/node_modules/lodash/isFunction.js +0 -51
  518. package/lib/esm/node_modules/lodash/isFunction.js.map +0 -1
  519. package/lib/esm/node_modules/lodash/isLength.js +0 -46
  520. package/lib/esm/node_modules/lodash/isLength.js.map +0 -1
  521. package/lib/esm/node_modules/lodash/isObject.js +0 -46
  522. package/lib/esm/node_modules/lodash/isObject.js.map +0 -1
  523. package/lib/esm/node_modules/lodash/isObjectLike.js +0 -43
  524. package/lib/esm/node_modules/lodash/isObjectLike.js.map +0 -1
  525. package/lib/esm/node_modules/lodash/isSymbol.js +0 -43
  526. package/lib/esm/node_modules/lodash/isSymbol.js.map +0 -1
  527. package/lib/esm/node_modules/lodash/isTypedArray.js +0 -41
  528. package/lib/esm/node_modules/lodash/isTypedArray.js.map +0 -1
  529. package/lib/esm/node_modules/lodash/keys.js +0 -51
  530. package/lib/esm/node_modules/lodash/keys.js.map +0 -1
  531. package/lib/esm/node_modules/lodash/memoize.js +0 -87
  532. package/lib/esm/node_modules/lodash/memoize.js.map +0 -1
  533. package/lib/esm/node_modules/lodash/noop.js +0 -28
  534. package/lib/esm/node_modules/lodash/noop.js.map +0 -1
  535. package/lib/esm/node_modules/lodash/property.js +0 -47
  536. package/lib/esm/node_modules/lodash/property.js.map +0 -1
  537. package/lib/esm/node_modules/lodash/stubArray.js +0 -35
  538. package/lib/esm/node_modules/lodash/stubArray.js.map +0 -1
  539. package/lib/esm/node_modules/lodash/stubFalse.js +0 -30
  540. package/lib/esm/node_modules/lodash/stubFalse.js.map +0 -1
  541. package/lib/esm/node_modules/lodash/toString.js +0 -40
  542. package/lib/esm/node_modules/lodash/toString.js.map +0 -1
  543. package/lib/esm/node_modules/lodash/uniqBy.js +0 -44
  544. package/lib/esm/node_modules/lodash/uniqBy.js.map +0 -1
  545. package/lib/esm/styles/index.scss.js.map +0 -1
  546. package/lib/esm/use-check-select.js.map +0 -1
@@ -8,27 +8,27 @@
8
8
  * LICENSE file in the root directory of this source tree.
9
9
  */
10
10
  import { __rest } from 'tslib';
11
- import React, { forwardRef, useCallback, useState, useMemo, useRef } from 'react';
11
+ import React, { forwardRef, useCallback, useMemo, useState, useRef } from 'react';
12
12
  import { getPrefixCls, cx } from '@hi-ui/classname';
13
13
  import { __DEV__ } from '@hi-ui/env';
14
14
  import { useCheckSelect } from './use-check-select.js';
15
15
  import { UpOutlined, DownOutlined } from '@hi-ui/icons';
16
16
  import { CheckSelectProvider, useCheckSelectContext } from './context.js';
17
- import { useLatestCallback, useLatestRef } from '@hi-ui/use-latest';
17
+ import { useLatestRef } from '@hi-ui/use-latest';
18
18
  import Checkbox from '@hi-ui/checkbox';
19
19
  import { TagInputMock } from '@hi-ui/tag-input';
20
20
  import { isUndef, isFunction, isArrayNonEmpty } from '@hi-ui/type-assertion';
21
- import VirtualList from 'rc-virtual-list';
21
+ import VirtualList, { useCheckInVirtual } from '@hi-ui/virtual-list';
22
22
  import { Picker } from '@hi-ui/picker';
23
- import uniqBy_1 from './node_modules/lodash/uniqBy.js';
23
+ import { uniqBy, times } from '@hi-ui/array-utils';
24
24
  import { Highlighter } from '@hi-ui/highlighter';
25
- import { useToggle } from '@hi-ui/use-toggle';
26
- import { times } from '@hi-ui/times';
25
+ import { useUncontrolledToggle } from '@hi-ui/use-toggle';
27
26
  import { callAllFuncs } from '@hi-ui/func-utils';
28
27
  import { useLocaleContext } from '@hi-ui/locale-context';
29
28
  import { useAsyncSearch, useTreeCustomSearch, useFilterSearch, useSearchMode } from '@hi-ui/use-search-mode';
30
29
  import '@hi-ui/use-children';
31
30
  import { flattenData } from './hooks/use-flatten-data.js';
31
+ import { getAllCheckedStatus, isCheckableOption, isOption } from './utils/index.js';
32
32
  var _role = 'check-select';
33
33
 
34
34
  var _prefix = getPrefixCls(_role);
@@ -60,6 +60,9 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
60
60
  itemHeight = _a$itemHeight === void 0 ? 40 : _a$itemHeight,
61
61
  _a$virtual = _a.virtual,
62
62
  virtual = _a$virtual === void 0 ? true : _a$virtual,
63
+ visible = _a.visible,
64
+ onOpen = _a.onOpen,
65
+ onClose = _a.onClose,
63
66
  appearance = _a.appearance,
64
67
  invalid = _a.invalid,
65
68
  dataSource = _a.dataSource,
@@ -70,14 +73,19 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
70
73
  onSearchProp = _a.onSearch,
71
74
  _a$fieldNames = _a.fieldNames,
72
75
  fieldNames = _a$fieldNames === void 0 ? DEFAULT_FIELD_NAMES : _a$fieldNames,
73
- rest = __rest(_a, ["prefixCls", "role", "className", "children", "disabled", "clearable", "wrap", "showCheckAll", "showOnlyShowChecked", "placeholder", "displayRender", "onSelect", "height", "itemHeight", "virtual", "onOpen", "onClose", "appearance", "invalid", "dataSource", "filterOption", "searchable", "render", "renderExtraFooter", "onSearch", "fieldNames"]);
76
+ rest = __rest(_a, ["prefixCls", "role", "className", "children", "disabled", "clearable", "showCheckAll", "showOnlyShowChecked", "placeholder", "displayRender", "onSelect", "height", "itemHeight", "virtual", "visible", "onOpen", "onClose", "appearance", "invalid", "dataSource", "filterOption", "searchable", "render", "renderExtraFooter", "onSearch", "fieldNames"]);
74
77
 
75
78
  var i18n = useLocaleContext();
76
79
  var placeholder = isUndef(placeholderProp) ? i18n.get('checkSelect.placeholder') : placeholderProp; // ************************** Picker ************************* //
77
80
 
78
- var _useToggle = useToggle(),
79
- menuVisible = _useToggle[0],
80
- menuVisibleAction = _useToggle[1];
81
+ var _useUncontrolledToggl = useUncontrolledToggle({
82
+ visible: visible,
83
+ disabled: disabled,
84
+ onOpen: onOpen,
85
+ onClose: onClose
86
+ }),
87
+ menuVisible = _useUncontrolledToggl[0],
88
+ menuVisibleAction = _useUncontrolledToggl[1];
81
89
 
82
90
  var displayRender = useCallback(function (item) {
83
91
  if (isFunction(displayRenderProp)) {
@@ -85,34 +93,20 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
85
93
  }
86
94
 
87
95
  return item.title;
88
- }, [displayRenderProp]); // 搜索时临时选中缓存数据
89
-
90
- var _useState = useState([]),
91
- selectedItems = _useState[0],
92
- setSelectedItems = _useState[1];
93
-
94
- var onSelect = useLatestCallback(function (value, item, shouldChecked) {
95
- onSelectProp === null || onSelectProp === void 0 ? void 0 : onSelectProp(value, item, shouldChecked);
96
-
97
- if (shouldChecked) {
98
- // TODO:as useCheckList
99
- setSelectedItems(function (prev) {
100
- return [].concat(prev, [item]);
101
- });
102
- }
103
- });
96
+ }, [displayRenderProp]);
104
97
 
105
98
  var _b = useCheckSelect(Object.assign(Object.assign({}, rest), {
106
99
  children: children,
107
100
  fieldNames: fieldNames,
108
- onSelect: onSelect
101
+ onSelect: onSelectProp
109
102
  })),
110
103
  rootProps = _b.rootProps,
111
104
  context = __rest(_b, ["rootProps"]);
112
105
 
113
106
  var value = context.value,
114
107
  tryChangeValue = context.tryChangeValue,
115
- flattedData = context.flattedData; // ************************** 搜索 ************************* //
108
+ flattedData = context.flattedData,
109
+ checkedItems = context.checkedItems; // ************************** 搜索 ************************* //
116
110
 
117
111
  var _c = useAsyncSearch({
118
112
  dataSource: dataSource,
@@ -168,67 +162,79 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
168
162
  var shouldUseSearch = !!searchValue && !hasError;
169
163
  var showData = useMemo(function () {
170
164
  return shouldUseSearch ? stateInSearch.data : flattedData;
171
- }, [shouldUseSearch, flattedData, stateInSearch.data]); // 下拉菜单不能合并(因为树形数据,不知道是第几级)
165
+ }, [shouldUseSearch, flattedData, stateInSearch.data]); // 根据 id 进行合并,注意必须是扁平数据
172
166
 
173
167
  var mergedData = useMemo(function () {
174
- var nextData = selectedItems.concat(flattedData);
175
- return uniqBy_1(nextData, 'id');
176
- }, [selectedItems, flattedData]);
168
+ var nextData = checkedItems.concat(flattedData);
169
+ return uniqBy(nextData, 'id');
170
+ }, [checkedItems, flattedData]);
177
171
 
178
- var _useState2 = useState(null),
179
- filterItems = _useState2[0],
180
- setFilterItems = _useState2[1];
172
+ var _useState = useState(null),
173
+ filterItems = _useState[0],
174
+ setFilterItems = _useState[1];
181
175
 
182
176
  var dropdownItems = filterItems || showData;
177
+ var activeExpandable = showOnlyShowChecked && !!filterItems && menuVisible;
183
178
 
184
179
  var _useMemo = useMemo(function () {
185
- var dropdownIds = dropdownItems.filter(function (item) {
186
- return !('groupTitle' in item);
187
- }).map(function (_ref) {
188
- var id = _ref.id;
189
- return id;
190
- });
191
- var dropdownIdsSet = new Set(dropdownIds);
192
- var hasValue = false;
193
- value.forEach(function (id) {
194
- if (dropdownIdsSet.has(id)) {
195
- hasValue = true;
196
- dropdownIdsSet["delete"](id);
197
- }
198
- });
199
- return [hasValue && dropdownIdsSet.size === 0, hasValue && dropdownIdsSet.size > 0];
180
+ return getAllCheckedStatus(dropdownItems, value, isOption);
200
181
  }, [dropdownItems, value]),
201
- allChecked = _useMemo[0],
202
- indeterminate = _useMemo[1];
182
+ showAllChecked = _useMemo[0],
183
+ showIndeterminate = _useMemo[1];
203
184
 
204
- var toggleCheckAll = useCallback(function (showChecked) {
205
- var checkedItems = mergedData.filter(function (item) {
206
- return value.includes(item.id);
207
- });
208
- var items = dropdownItems.filter(function (item) {
209
- return !('groupTitle' in item);
185
+ var valueLatestRef = useLatestRef(value);
186
+ var toggleCheckAll = useCallback(function () {
187
+ var value = valueLatestRef.current;
188
+
189
+ var _getAllCheckedStatus = getAllCheckedStatus(dropdownItems, value, isCheckableOption),
190
+ currentAllChecked = _getAllCheckedStatus[0];
191
+
192
+ var shouldChecked = !currentAllChecked; // 当前页的数据选项
193
+
194
+ var items = dropdownItems.filter(isCheckableOption);
195
+ var targetIds = items.map(function (_ref) {
196
+ var id = _ref.id;
197
+ return id;
210
198
  });
199
+ var allData = uniqBy(items.concat(mergedData), 'id');
211
200
 
212
- if (showChecked) {
213
- tryChangeValue(items.map(function (_ref2) {
201
+ if (shouldChecked) {
202
+ var nextCheckedIds = Array.from(new Set(value.concat(targetIds)));
203
+ var changedIds = nextCheckedIds.filter(function (id) {
204
+ return !value.includes(id);
205
+ });
206
+ var changedItems = allData.filter(function (_ref2) {
214
207
  var id = _ref2.id;
215
- return id;
216
- }), checkedItems, showChecked);
208
+ return changedIds.includes(id);
209
+ });
210
+ tryChangeValue(nextCheckedIds, changedItems, shouldChecked);
217
211
  } else {
218
- tryChangeValue([], checkedItems, showChecked);
212
+ var _nextCheckedIds = value.filter(function (id) {
213
+ return !targetIds.includes(id);
214
+ });
215
+
216
+ var _changedIds = value.filter(function (id) {
217
+ return !_nextCheckedIds.includes(id);
218
+ });
219
+
220
+ var _changedItems = allData.filter(function (_ref3) {
221
+ var id = _ref3.id;
222
+ return _changedIds.includes(id);
223
+ }); // items
224
+
225
+
226
+ tryChangeValue(_nextCheckedIds, _changedItems, shouldChecked);
219
227
  }
220
- }, [dropdownItems, mergedData, value, tryChangeValue]);
228
+ }, [dropdownItems, mergedData, valueLatestRef, tryChangeValue]);
221
229
 
222
230
  var renderDefaultFooter = function renderDefaultFooter() {
223
231
  var extra = renderExtraFooter ? renderExtraFooter() : null;
224
232
 
225
233
  if (showCheckAll) {
226
234
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Checkbox, {
227
- indeterminate: indeterminate,
228
- checked: allChecked,
229
- onChange: function onChange(evt) {
230
- toggleCheckAll(evt.target.checked);
231
- }
235
+ indeterminate: showIndeterminate,
236
+ checked: showAllChecked,
237
+ onChange: toggleCheckAll
232
238
  }, i18n.get('checkSelect.checkAll')), extra);
233
239
  }
234
240
 
@@ -236,6 +242,16 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
236
242
  };
237
243
 
238
244
  var expandedViewRef = useRef('normal');
245
+ var virtualListProps = {
246
+ height: height,
247
+ itemHeight: itemHeight,
248
+ virtual: virtual,
249
+ data: dropdownItems
250
+ };
251
+
252
+ var _useCheckInVirtual = useCheckInVirtual(virtualListProps),
253
+ inVirtual = _useCheckInVirtual.inVirtual;
254
+
239
255
  var cls = cx(prefixCls, className, prefixCls + "--" + (menuVisible ? 'open' : 'closed'));
240
256
  return /*#__PURE__*/React.createElement(CheckSelectProvider, {
241
257
  value: context
@@ -248,6 +264,7 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
248
264
  onOpen: menuVisibleAction.on,
249
265
  onClose: menuVisibleAction.off,
250
266
  searchable: searchable,
267
+ scrollable: !inVirtual,
251
268
  onSearch: callAllFuncs(onSearchProp, onSearch),
252
269
  loading: loading,
253
270
  footer: renderDefaultFooter(),
@@ -285,6 +302,7 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
285
302
  expandedViewRef.current = 'normal';
286
303
  },
287
304
  expandable: showOnlyShowChecked,
305
+ activeExpandable: activeExpandable,
288
306
  onExpand: function onExpand(evt) {
289
307
  if (!showOnlyShowChecked) return;
290
308
  if (disabled) return; // 阻止冒泡触发外层 onClick
@@ -308,14 +326,10 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
308
326
  expandedViewRef.current = 'onlyChecked';
309
327
  }
310
328
  })
311
- }), isArrayNonEmpty(dropdownItems) ? /*#__PURE__*/React.createElement(VirtualList, {
329
+ }), isArrayNonEmpty(dropdownItems) ? /*#__PURE__*/React.createElement(VirtualList, Object.assign({
312
330
  itemKey: "id",
313
- fullHeight: false,
314
- height: height,
315
- itemHeight: itemHeight,
316
- virtual: virtual,
317
- data: dropdownItems
318
- }, function (node) {
331
+ fullHeight: false
332
+ }, virtualListProps), function (node) {
319
333
  /* 反向 map,搜索删选数据时会对数据进行处理 */
320
334
  return 'groupTitle' in node ? /*#__PURE__*/React.createElement(CheckSelectOptionGroup, {
321
335
  label: node.groupTitle
@@ -433,4 +447,3 @@ var renderIndent = function renderIndent(prefixCls, depth) {
433
447
  };
434
448
 
435
449
  export { CheckSelect, CheckSelectOption, CheckSelectOptionGroup };
436
- //# sourceMappingURL=CheckSelect.js.map
@@ -22,4 +22,3 @@ var useCheckSelectContext = function useCheckSelectContext() {
22
22
  };
23
23
 
24
24
  export { CheckSelectProvider, useCheckSelectContext };
25
- //# sourceMappingURL=context.js.map
@@ -91,4 +91,3 @@ var parseOptionGroup = function parseOptionGroup(node) {
91
91
  };
92
92
 
93
93
  export { parseChildren, useData };
94
- //# sourceMappingURL=use-data.js.map
@@ -66,4 +66,3 @@ var flattenData = function flattenData(_ref2) {
66
66
  };
67
67
 
68
68
  export { flattenData, useFlattenData };
69
- //# sourceMappingURL=use-flatten-data.js.map
package/lib/esm/index.js CHANGED
@@ -9,4 +9,3 @@
9
9
  */
10
10
  import './styles/index.scss.js';
11
11
  export { CheckSelect, CheckSelectOption, CheckSelectOptionGroup, CheckSelect as default } from './CheckSelect.js';
12
- //# sourceMappingURL=index.js.map
@@ -7,11 +7,9 @@
7
7
  * This source code is licensed under the MIT license found in the
8
8
  * LICENSE file in the root directory of this source tree.
9
9
  */
10
- var css_248z = "@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n.hi-v4-check-select-option {\n margin-top: 4px;\n margin-top: var(--hi-v4-spacing-2, 4px);\n margin-bottom: 4px;\n margin-bottom: var(--hi-v4-spacing-2, 4px);\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n width: 100%;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n position: relative;\n border-radius: 4px;\n border-radius: var(--hi-v4-border-radius-normal, 4px);\n cursor: pointer;\n font-size: 0.875rem;\n font-size: var(--hi-v4-text-size-normal, 0.875rem);\n font-weight: 400;\n font-weight: var(--hi-v4-text-weight-normal, 400);\n color: #1f2733;\n color: var(--hi-v4-color-gray-700, #1f2733);\n line-height: 1.25rem;\n line-height: var(--hi-v4-text-lineheight-sm, 1.25rem); }\n.hi-v4-check-select-option__indent {\n display: inline-block;\n width: 16px;\n height: 100%; }\n.hi-v4-check-select-option__title {\n display: inline-block;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n width: 100%;\n padding: 6px;\n padding: var(--hi-v4-spacing-3, 6px);\n font-size: inherit;\n font-weight: inherit;\n color: inherit;\n line-height: inherit; }\n.hi-v4-check-select-option:hover {\n background-color: #f2f4f7;\n background-color: var(--hi-v4-color-gray-100, #f2f4f7); }\n.hi-v4-check-select-option--focused {\n background-color: #f2f4f7;\n background-color: var(--hi-v4-color-gray-100, #f2f4f7); }\n.hi-v4-check-select-option--disabled {\n cursor: not-allowed;\n color: #929aa6;\n color: var(--hi-v4-color-gray-500, #929aa6); }\n.hi-v4-check-select-option-group {\n display: inline-block;\n margin-top: 12px;\n margin-top: var(--hi-v4-spacing-6, 12px);\n margin-bottom: 4px;\n margin-bottom: var(--hi-v4-spacing-2, 4px);\n padding: 6px 0 6px 6px;\n padding: var(--hi-v4-spacing-3, 6px) 0 var(--hi-v4-spacing-3, 6px) var(--hi-v4-spacing-3, 6px);\n font-size: 0.875rem;\n font-size: var(--hi-v4-text-size-normal, 0.875rem);\n font-weight: 400;\n font-weight: var(--hi-v4-text-weight-normal, 400);\n color: #929aa6;\n color: var(--hi-v4-color-gray-500, #929aa6);\n line-height: 1.25rem;\n line-height: var(--hi-v4-text-lineheight-sm, 1.25rem); }\n.hi-v4-check-select-option-group:first-child {\n margin-top: 4px;\n margin-top: var(--hi-v4-spacing-2, 4px); }\n";
11
-
12
- var __styleInject__ = require('style-inject/dist/style-inject.es.js')["default"];
10
+ import __styleInject__ from 'inject-head-style';
11
+ var css_248z = ".hi-v4-check-select-option {margin-top: var(--hi-v4-spacing-2, 4px);margin-bottom: var(--hi-v4-spacing-2, 4px);-webkit-box-sizing: border-box;box-sizing: border-box;width: 100%;display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-align: center;-ms-flex-align: center;align-items: center;position: relative;border-radius: var(--hi-v4-border-radius-md, 4px);cursor: pointer;font-size: var(--hi-v4-text-size-md, 0.875rem);font-weight: var(--hi-v4-text-weight-normal, 400);color: var(--hi-v4-color-gray-700, #1f2733);line-height: var(--hi-v4-text-lineheight-sm, 1.25rem); }.hi-v4-check-select-option__indent {display: inline-block;width: 16px;height: 100%; }.hi-v4-check-select-option__title {display: inline-block;-webkit-box-sizing: border-box;box-sizing: border-box;width: 100%;padding: var(--hi-v4-spacing-3, 6px);font-size: inherit;font-weight: inherit;color: inherit;line-height: inherit; }.hi-v4-check-select-option:hover {background-color: var(--hi-v4-color-gray-100, #f2f4f7); }.hi-v4-check-select-option--focused {background-color: var(--hi-v4-color-gray-100, #f2f4f7); }.hi-v4-check-select-option--disabled {cursor: not-allowed;color: var(--hi-v4-color-gray-500, #929aa6); }.hi-v4-check-select-option-group {display: inline-block;margin-top: var(--hi-v4-spacing-6, 12px);margin-bottom: var(--hi-v4-spacing-2, 4px);padding: var(--hi-v4-spacing-3, 6px) 0 var(--hi-v4-spacing-3, 6px) var(--hi-v4-spacing-3, 6px);font-size: var(--hi-v4-text-size-md, 0.875rem);font-weight: var(--hi-v4-text-weight-normal, 400);color: var(--hi-v4-color-gray-500, #929aa6);line-height: var(--hi-v4-text-lineheight-sm, 1.25rem); }.hi-v4-check-select-option-group:first-child {margin-top: var(--hi-v4-spacing-2, 4px); }";
13
12
 
14
13
  __styleInject__(css_248z);
15
14
 
16
- export default css_248z;
17
- //# sourceMappingURL=index.scss.js.map
15
+ export { css_248z as default };
@@ -8,9 +8,9 @@
8
8
  * LICENSE file in the root directory of this source tree.
9
9
  */
10
10
  import { __rest } from 'tslib';
11
- import { useRef, useCallback } from 'react';
11
+ import { useRef, useState, useCallback } from 'react';
12
12
  import { useUncontrolledState } from '@hi-ui/use-uncontrolled-state';
13
- import uniqBy_1 from './node_modules/lodash/uniqBy.js';
13
+ import { uniqBy } from '@hi-ui/array-utils';
14
14
  import { useCheck } from '@hi-ui/use-check';
15
15
  import { useLatestRef, useLatestCallback } from '@hi-ui/use-latest';
16
16
  import { useData } from './hooks/use-data.js';
@@ -49,33 +49,34 @@ var useCheckSelect = function useCheckSelect(_a) {
49
49
  tryChangeValue = _useUncontrolledState[1];
50
50
 
51
51
  var onSelectLatest = useLatestCallback(onSelect);
52
- var selectedItemsRef = useRef([]);
52
+ var usedItemsRef = useRef([]); // 扁平化的选中数据,可能包括异步临时选中缓存数据
53
+
54
+ var _useState = useState([]),
55
+ checkedItems = _useState[0],
56
+ setCheckedItems = _useState[1];
57
+
53
58
  var proxyTryChangeValue = useCallback(function (value, item, shouldChecked) {
54
59
  var changedItems = item;
55
60
 
56
61
  if (!Array.isArray(item)) {
57
62
  changedItems = [item];
58
-
59
- if (shouldChecked) {
60
- selectedItemsRef.current.push(item);
61
- }
62
-
63
63
  onSelectLatest(value, item, shouldChecked);
64
64
  }
65
65
 
66
- var selectedItems = uniqBy_1([].concat(changedItems, selectedItemsRef.current, flattedDataRef.current), 'id'); // 调用用户的select
66
+ var usedItems = uniqBy([].concat(changedItems, usedItemsRef.current, flattedDataRef.current), 'id');
67
+ usedItemsRef.current = usedItems; // 使用最新的value
67
68
 
68
- var checkedItems = selectedItems // 使用最新的value
69
- .filter(function (item) {
69
+ var nextCheckedItems = usedItems.filter(function (item) {
70
70
  return value.includes(item.id);
71
- }).map(function (item) {
72
- return 'raw' in item ? item.raw : item;
73
71
  });
74
- tryChangeValue(value, // TODO: 处理脏数据
72
+ setCheckedItems(nextCheckedItems);
73
+ tryChangeValue(value, // 处理脏数据
75
74
  changedItems.map(function (item) {
76
75
  return 'raw' in item ? item.raw : item;
77
- }), checkedItems);
78
- }, [tryChangeValue, onSelectLatest, flattedDataRef, selectedItemsRef]);
76
+ }), nextCheckedItems.map(function (item) {
77
+ return 'raw' in item ? item.raw : item;
78
+ }));
79
+ }, [tryChangeValue, onSelectLatest, flattedDataRef, usedItemsRef]);
79
80
 
80
81
  var _useCheckDefault = useCheck({
81
82
  disabled: disabled,
@@ -93,7 +94,8 @@ var useCheckSelect = function useCheckSelect(_a) {
93
94
  value: value,
94
95
  tryChangeValue: proxyTryChangeValue,
95
96
  onSelect: onOptionCheck,
96
- isCheckedId: isCheckedId
97
+ isCheckedId: isCheckedId,
98
+ checkedItems: checkedItems
97
99
  };
98
100
  };
99
101
 
@@ -102,4 +104,3 @@ var allowCheck = function allowCheck(option) {
102
104
  };
103
105
 
104
106
  export { useCheckSelect };
105
- //# sourceMappingURL=use-check-select.js.map
@@ -0,0 +1,45 @@
1
+ /** @LICENSE
2
+ * @hi-ui/check-select
3
+ * https://github.com/XiaoMi/hiui/tree/master/packages/ui/check-select#readme
4
+ *
5
+ * Copyright (c) HIUI <mi-hiui@xiaomi.com>.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE file in the root directory of this source tree.
9
+ */
10
+
11
+ /**
12
+ * 判断选项是否进行可选操作
13
+ */
14
+ var isCheckableOption = function isCheckableOption(item) {
15
+ if ('groupTitle' in item) return false;
16
+ if (item.disabled) return false;
17
+ return true;
18
+ };
19
+ /**
20
+ * 判断选项为
21
+ */
22
+
23
+
24
+ var isOption = function isOption(item) {
25
+ if ('groupTitle' in item) return false;
26
+ return true;
27
+ };
28
+
29
+ var getAllCheckedStatus = function getAllCheckedStatus(dropdownItems, values, filterFunc) {
30
+ var dropdownIds = dropdownItems.filter(filterFunc).map(function (_ref) {
31
+ var id = _ref.id;
32
+ return id;
33
+ });
34
+ var dropdownIdsSet = new Set(dropdownIds);
35
+ var hasValue = false;
36
+ values.forEach(function (id) {
37
+ if (dropdownIdsSet.has(id)) {
38
+ hasValue = true;
39
+ dropdownIdsSet["delete"](id);
40
+ }
41
+ });
42
+ return [hasValue && dropdownIdsSet.size === 0, hasValue && dropdownIdsSet.size > 0];
43
+ };
44
+
45
+ export { getAllCheckedStatus, isCheckableOption, isOption };
@@ -1,14 +1,14 @@
1
1
  import React from 'react';
2
2
  import { UseCheckSelectProps } from './use-check-select';
3
- import type { HiBaseAppearanceEnum, HiBaseHTMLProps } from '@hi-ui/core';
4
- import { CheckSelectDataItem, CheckSelectEventData } from './types';
3
+ import type { HiBaseHTMLProps } from '@hi-ui/core';
4
+ import { CheckSelectAppearanceEnum, CheckSelectDataItem, CheckSelectItemEventData, CheckSelectMergedItem } from './types';
5
5
  import { PickerProps } from '@hi-ui/picker';
6
6
  import { UseDataSource } from '@hi-ui/use-data-source';
7
7
  /**
8
8
  * TODO: What is CheckSelect
9
9
  */
10
10
  export declare const CheckSelect: React.ForwardRefExoticComponent<CheckSelectProps & React.RefAttributes<HTMLDivElement | null>>;
11
- export interface CheckSelectProps extends Omit<PickerProps, 'trigger'>, UseCheckSelectProps {
11
+ export interface CheckSelectProps extends Omit<PickerProps, 'trigger' | 'scrollable'>, UseCheckSelectProps {
12
12
  /**
13
13
  * 设置虚拟滚动容器的可视高度。暂不对外暴露
14
14
  * @private
@@ -31,10 +31,6 @@ export interface CheckSelectProps extends Omit<PickerProps, 'trigger'>, UseCheck
31
31
  * 是否可清空
32
32
  */
33
33
  clearable?: boolean;
34
- /**
35
- * 是否开启换行全展示
36
- */
37
- wrap?: boolean;
38
34
  /**
39
35
  * 是否点击清理 tags
40
36
  */
@@ -46,11 +42,11 @@ export interface CheckSelectProps extends Omit<PickerProps, 'trigger'>, UseCheck
46
42
  /**
47
43
  * 自定义渲染节点的 title 内容
48
44
  */
49
- render?: (item: CheckSelectEventData) => React.ReactNode;
45
+ render?: (item: CheckSelectItemEventData) => React.ReactNode;
50
46
  /**
51
47
  * 自定义选择后触发器所展示的内容,只在 title 为字符串时有效
52
48
  */
53
- displayRender?: (option: CheckSelectEventData) => React.ReactNode;
49
+ displayRender?: (option: CheckSelectItemEventData) => React.ReactNode;
54
50
  /**
55
51
  * 触发器输入框占位符
56
52
  */
@@ -58,7 +54,7 @@ export interface CheckSelectProps extends Omit<PickerProps, 'trigger'>, UseCheck
58
54
  /**
59
55
  * 设置展现形式
60
56
  */
61
- appearance?: HiBaseAppearanceEnum;
57
+ appearance?: CheckSelectAppearanceEnum;
62
58
  /**
63
59
  * 节点搜索模式,仅在mode=normal模式下生效
64
60
  */
@@ -72,7 +68,7 @@ export interface CheckSelectProps extends Omit<PickerProps, 'trigger'>, UseCheck
72
68
  /**
73
69
  * 异步加载数据
74
70
  */
75
- dataSource?: UseDataSource<CheckSelectDataItem>;
71
+ dataSource?: UseDataSource<CheckSelectMergedItem[]>;
76
72
  /**
77
73
  * 自定义下拉菜单底部渲染
78
74
  */
@@ -94,7 +90,7 @@ export interface CheckSelectProps extends Omit<PickerProps, 'trigger'>, UseCheck
94
90
  */
95
91
  onClose?: () => void;
96
92
  /**
97
- * 是否开启全选功能
93
+ * 是否开启全选功能,需要对数据全量操作。异步数据场景暂不支持,可自行渲染弹层底部实现
98
94
  */
99
95
  showCheckAll?: boolean;
100
96
  /**
@@ -4,16 +4,18 @@ export declare const CheckSelectProvider: import("react").Provider<Omit<{
4
4
  data: any[];
5
5
  flattedData: import("packages/utils/tree-utils/lib/types/types").BaseFlattedTreeNodeData<any, any>[];
6
6
  value: import("react").ReactText[];
7
- tryChangeValue: (value: import("react").ReactText[], item: import("./types").CheckSelectEventData | import("./types").CheckSelectEventData[], shouldChecked: boolean) => void;
7
+ tryChangeValue: (value: import("react").ReactText[], item: import("./types").CheckSelectItemEventData | import("./types").CheckSelectItemEventData[], shouldChecked: boolean) => void;
8
8
  onSelect: (targetItem: import("packages/hooks/use-check/lib/types").UseCheckItem, shouldChecked: boolean) => void;
9
9
  isCheckedId: (id: import("react").ReactText) => boolean;
10
+ checkedItems: import("./types").CheckSelectItemEventData[];
10
11
  }, "rootProps"> | null>;
11
12
  export declare const useCheckSelectContext: () => Omit<{
12
13
  rootProps: {};
13
14
  data: any[];
14
15
  flattedData: import("packages/utils/tree-utils/lib/types/types").BaseFlattedTreeNodeData<any, any>[];
15
16
  value: import("react").ReactText[];
16
- tryChangeValue: (value: import("react").ReactText[], item: import("./types").CheckSelectEventData | import("./types").CheckSelectEventData[], shouldChecked: boolean) => void;
17
+ tryChangeValue: (value: import("react").ReactText[], item: import("./types").CheckSelectItemEventData | import("./types").CheckSelectItemEventData[], shouldChecked: boolean) => void;
17
18
  onSelect: (targetItem: import("packages/hooks/use-check/lib/types").UseCheckItem, shouldChecked: boolean) => void;
18
19
  isCheckedId: (id: import("react").ReactText) => boolean;
20
+ checkedItems: import("./types").CheckSelectItemEventData[];
19
21
  }, "rootProps">;
@@ -1,3 +1,4 @@
1
1
  import './styles/index.scss';
2
2
  export * from './CheckSelect';
3
3
  export { CheckSelect as default } from './CheckSelect';
4
+ export * from './types';
@@ -1,29 +1,30 @@
1
1
  import React from 'react';
2
+ import type { HiBaseAppearanceEnum } from '@hi-ui/core';
2
3
  export interface CheckSelectDataItem {
3
4
  /**
4
- * 节点唯一 id
5
+ * 选择项值,唯一 id
5
6
  */
6
7
  id?: React.ReactText;
7
8
  /**
8
- * 节点标题
9
+ * 选项标题
9
10
  */
10
11
  title?: React.ReactNode;
11
12
  /**
12
- * 是否禁用该节点
13
+ * 是否禁用该选项
13
14
  */
14
15
  disabled?: boolean;
15
16
  }
16
17
  export interface CheckSelectGroupDataItem {
17
18
  /**
18
- * 节点组标题
19
+ * 选项组标题
19
20
  */
20
21
  groupTitle?: React.ReactNode;
21
22
  /**
22
- * 是否禁用该节点
23
+ * 组选项列表
23
24
  */
24
25
  children?: CheckSelectDataItem[];
25
26
  }
26
- export declare type CheckSelectMergedItem = CheckSelectDataItem & CheckSelectGroupDataItem;
27
+ export declare type CheckSelectMergedItem = CheckSelectDataItem | CheckSelectGroupDataItem;
27
28
  export interface CheckSelectRequiredProps {
28
29
  checked: boolean;
29
30
  focused: boolean;
@@ -46,5 +47,6 @@ export interface FlattedCheckSelectDataItem extends CheckSelectDataItem {
46
47
  */
47
48
  parent?: FlattedCheckSelectDataItem;
48
49
  }
49
- export interface CheckSelectEventData extends FlattedCheckSelectDataItem, CheckSelectRequiredProps {
50
+ export interface CheckSelectItemEventData extends FlattedCheckSelectDataItem, CheckSelectRequiredProps {
50
51
  }
52
+ export declare type CheckSelectAppearanceEnum = HiBaseAppearanceEnum | undefined;
@@ -1,14 +1,14 @@
1
1
  import React from 'react';
2
- import { CheckSelectDataItem, CheckSelectEventData } from './types';
3
- import { HiBaseFieldNames } from '@hi-ui/core';
2
+ import { CheckSelectDataItem, CheckSelectItemEventData, CheckSelectMergedItem } from './types';
4
3
  export declare const useCheckSelect: ({ data: dataProp, children, disabled, value: valueProp, defaultValue, onChange: onChangeProp, onSelect, fieldNames, ...rest }: UseCheckSelectProps) => {
5
4
  rootProps: {};
6
5
  data: any[];
7
6
  flattedData: import("packages/utils/tree-utils/lib/types/types").BaseFlattedTreeNodeData<any, any>[];
8
7
  value: React.ReactText[];
9
- tryChangeValue: (value: React.ReactText[], item: CheckSelectEventData | CheckSelectEventData[], shouldChecked: boolean) => void;
8
+ tryChangeValue: (value: React.ReactText[], item: CheckSelectItemEventData | CheckSelectItemEventData[], shouldChecked: boolean) => void;
10
9
  onSelect: (targetItem: import("@hi-ui/use-check").UseCheckItem, shouldChecked: boolean) => void;
11
10
  isCheckedId: (id: React.ReactText) => boolean;
11
+ checkedItems: CheckSelectItemEventData[];
12
12
  };
13
13
  export interface UseCheckSelectProps {
14
14
  /**
@@ -25,12 +25,12 @@ export interface UseCheckSelectProps {
25
25
  * changedItems: 变更的选项集合
26
26
  * checkedItems:所有选中项的选项集合
27
27
  */
28
- onChange?: (value: React.ReactText[], changedItems?: CheckSelectDataItem[], checkedItems?: CheckSelectDataItem[]) => void;
28
+ onChange?: (value: React.ReactText[], changedItems: CheckSelectDataItem[], checkedItems: CheckSelectDataItem[]) => void;
29
29
  /**
30
30
  * 选中值时回调。暂不对外暴露
31
31
  * @private
32
32
  */
33
- onSelect?: (value: React.ReactText[], targetOption: CheckSelectEventData, shouldChecked: boolean) => void;
33
+ onSelect?: (value: React.ReactText[], targetOption: CheckSelectItemEventData, shouldChecked: boolean) => void;
34
34
  /**
35
35
  * 是否禁止使用
36
36
  */
@@ -38,7 +38,7 @@ export interface UseCheckSelectProps {
38
38
  /**
39
39
  * 选项数据
40
40
  */
41
- data?: CheckSelectDataItem[];
41
+ data?: CheckSelectMergedItem[];
42
42
  /**
43
43
  * JSX 子节点
44
44
  */
@@ -46,6 +46,6 @@ export interface UseCheckSelectProps {
46
46
  /**
47
47
  * 设置 data 中 id, title, disabled, children 对应的 key
48
48
  */
49
- fieldNames?: HiBaseFieldNames;
49
+ fieldNames?: Record<string, string>;
50
50
  }
51
51
  export declare type UseSelectReturn = ReturnType<typeof useCheckSelect>;
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ /**
3
+ * 判断选项是否进行可选操作
4
+ */
5
+ export declare const isCheckableOption: (item: any) => boolean;
6
+ /**
7
+ * 判断选项为
8
+ */
9
+ export declare const isOption: (item: any) => boolean;
10
+ export declare const getAllCheckedStatus: (dropdownItems: any[], values: React.ReactText[], filterFunc: (item: any) => boolean) => boolean[];