@hi-ui/check-tree-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 (530) hide show
  1. package/lib/cjs/CheckTreeSelect.js +82 -56
  2. package/lib/cjs/hooks/use-check.js +92 -0
  3. package/lib/cjs/index.js +0 -1
  4. package/lib/cjs/styles/index.scss.js +2 -3
  5. package/lib/cjs/utils/index.js +162 -0
  6. package/lib/esm/CheckTreeSelect.js +79 -55
  7. package/lib/esm/hooks/use-check.js +82 -0
  8. package/lib/esm/index.js +0 -1
  9. package/lib/esm/styles/index.scss.js +3 -5
  10. package/lib/esm/utils/index.js +153 -0
  11. package/lib/types/CheckTreeSelect.d.ts +29 -24
  12. package/lib/types/hooks/use-check.d.ts +11 -0
  13. package/lib/types/index.d.ts +1 -0
  14. package/lib/types/types.d.ts +36 -13
  15. package/lib/types/utils/index.d.ts +13 -0
  16. package/package.json +22 -19
  17. package/lib/cjs/CheckTreeSelect.js.map +0 -1
  18. package/lib/cjs/_virtual/_commonjsHelpers.js +0 -17
  19. package/lib/cjs/_virtual/_commonjsHelpers.js.map +0 -1
  20. package/lib/cjs/_virtual/_nodeUtil.js_commonjs-module +0 -19
  21. package/lib/cjs/_virtual/_nodeUtil.js_commonjs-module.map +0 -1
  22. package/lib/cjs/_virtual/isBuffer.js_commonjs-module +0 -19
  23. package/lib/cjs/_virtual/isBuffer.js_commonjs-module.map +0 -1
  24. package/lib/cjs/index.js.map +0 -1
  25. package/lib/cjs/node_modules/lodash/_DataView.js +0 -27
  26. package/lib/cjs/node_modules/lodash/_DataView.js.map +0 -1
  27. package/lib/cjs/node_modules/lodash/_Hash.js +0 -58
  28. package/lib/cjs/node_modules/lodash/_Hash.js.map +0 -1
  29. package/lib/cjs/node_modules/lodash/_ListCache.js +0 -58
  30. package/lib/cjs/node_modules/lodash/_ListCache.js.map +0 -1
  31. package/lib/cjs/node_modules/lodash/_Map.js +0 -27
  32. package/lib/cjs/node_modules/lodash/_Map.js.map +0 -1
  33. package/lib/cjs/node_modules/lodash/_MapCache.js +0 -58
  34. package/lib/cjs/node_modules/lodash/_MapCache.js.map +0 -1
  35. package/lib/cjs/node_modules/lodash/_Promise.js +0 -27
  36. package/lib/cjs/node_modules/lodash/_Promise.js.map +0 -1
  37. package/lib/cjs/node_modules/lodash/_Set.js +0 -27
  38. package/lib/cjs/node_modules/lodash/_Set.js.map +0 -1
  39. package/lib/cjs/node_modules/lodash/_SetCache.js +0 -49
  40. package/lib/cjs/node_modules/lodash/_SetCache.js.map +0 -1
  41. package/lib/cjs/node_modules/lodash/_Stack.js +0 -55
  42. package/lib/cjs/node_modules/lodash/_Stack.js.map +0 -1
  43. package/lib/cjs/node_modules/lodash/_Symbol.js +0 -24
  44. package/lib/cjs/node_modules/lodash/_Symbol.js.map +0 -1
  45. package/lib/cjs/node_modules/lodash/_Uint8Array.js +0 -24
  46. package/lib/cjs/node_modules/lodash/_Uint8Array.js.map +0 -1
  47. package/lib/cjs/node_modules/lodash/_WeakMap.js +0 -27
  48. package/lib/cjs/node_modules/lodash/_WeakMap.js.map +0 -1
  49. package/lib/cjs/node_modules/lodash/_arrayFilter.js +0 -44
  50. package/lib/cjs/node_modules/lodash/_arrayFilter.js.map +0 -1
  51. package/lib/cjs/node_modules/lodash/_arrayIncludes.js +0 -36
  52. package/lib/cjs/node_modules/lodash/_arrayIncludes.js.map +0 -1
  53. package/lib/cjs/node_modules/lodash/_arrayIncludesWith.js +0 -40
  54. package/lib/cjs/node_modules/lodash/_arrayIncludesWith.js.map +0 -1
  55. package/lib/cjs/node_modules/lodash/_arrayLikeKeys.js +0 -75
  56. package/lib/cjs/node_modules/lodash/_arrayLikeKeys.js.map +0 -1
  57. package/lib/cjs/node_modules/lodash/_arrayMap.js +0 -39
  58. package/lib/cjs/node_modules/lodash/_arrayMap.js.map +0 -1
  59. package/lib/cjs/node_modules/lodash/_arrayPush.js +0 -38
  60. package/lib/cjs/node_modules/lodash/_arrayPush.js.map +0 -1
  61. package/lib/cjs/node_modules/lodash/_arraySome.js +0 -41
  62. package/lib/cjs/node_modules/lodash/_arraySome.js.map +0 -1
  63. package/lib/cjs/node_modules/lodash/_assocIndexOf.js +0 -42
  64. package/lib/cjs/node_modules/lodash/_assocIndexOf.js.map +0 -1
  65. package/lib/cjs/node_modules/lodash/_baseFindIndex.js +0 -42
  66. package/lib/cjs/node_modules/lodash/_baseFindIndex.js.map +0 -1
  67. package/lib/cjs/node_modules/lodash/_baseGet.js +0 -45
  68. package/lib/cjs/node_modules/lodash/_baseGet.js.map +0 -1
  69. package/lib/cjs/node_modules/lodash/_baseGetAllKeys.js +0 -41
  70. package/lib/cjs/node_modules/lodash/_baseGetAllKeys.js.map +0 -1
  71. package/lib/cjs/node_modules/lodash/_baseGetTag.js +0 -50
  72. package/lib/cjs/node_modules/lodash/_baseGetTag.js.map +0 -1
  73. package/lib/cjs/node_modules/lodash/_baseHasIn.js +0 -30
  74. package/lib/cjs/node_modules/lodash/_baseHasIn.js.map +0 -1
  75. package/lib/cjs/node_modules/lodash/_baseIndexOf.js +0 -41
  76. package/lib/cjs/node_modules/lodash/_baseIndexOf.js.map +0 -1
  77. package/lib/cjs/node_modules/lodash/_baseIsArguments.js +0 -39
  78. package/lib/cjs/node_modules/lodash/_baseIsArguments.js.map +0 -1
  79. package/lib/cjs/node_modules/lodash/_baseIsEqual.js +0 -51
  80. package/lib/cjs/node_modules/lodash/_baseIsEqual.js.map +0 -1
  81. package/lib/cjs/node_modules/lodash/_baseIsEqualDeep.js +0 -118
  82. package/lib/cjs/node_modules/lodash/_baseIsEqualDeep.js.map +0 -1
  83. package/lib/cjs/node_modules/lodash/_baseIsMatch.js +0 -84
  84. package/lib/cjs/node_modules/lodash/_baseIsMatch.js.map +0 -1
  85. package/lib/cjs/node_modules/lodash/_baseIsNaN.js +0 -29
  86. package/lib/cjs/node_modules/lodash/_baseIsNaN.js.map +0 -1
  87. package/lib/cjs/node_modules/lodash/_baseIsNative.js +0 -70
  88. package/lib/cjs/node_modules/lodash/_baseIsNative.js.map +0 -1
  89. package/lib/cjs/node_modules/lodash/_baseIsTypedArray.js +0 -70
  90. package/lib/cjs/node_modules/lodash/_baseIsTypedArray.js.map +0 -1
  91. package/lib/cjs/node_modules/lodash/_baseIteratee.js +0 -61
  92. package/lib/cjs/node_modules/lodash/_baseIteratee.js.map +0 -1
  93. package/lib/cjs/node_modules/lodash/_baseKeys.js +0 -54
  94. package/lib/cjs/node_modules/lodash/_baseKeys.js.map +0 -1
  95. package/lib/cjs/node_modules/lodash/_baseMatches.js +0 -47
  96. package/lib/cjs/node_modules/lodash/_baseMatches.js.map +0 -1
  97. package/lib/cjs/node_modules/lodash/_baseMatchesProperty.js +0 -63
  98. package/lib/cjs/node_modules/lodash/_baseMatchesProperty.js.map +0 -1
  99. package/lib/cjs/node_modules/lodash/_baseProperty.js +0 -31
  100. package/lib/cjs/node_modules/lodash/_baseProperty.js.map +0 -1
  101. package/lib/cjs/node_modules/lodash/_basePropertyDeep.js +0 -35
  102. package/lib/cjs/node_modules/lodash/_basePropertyDeep.js.map +0 -1
  103. package/lib/cjs/node_modules/lodash/_baseTimes.js +0 -38
  104. package/lib/cjs/node_modules/lodash/_baseTimes.js.map +0 -1
  105. package/lib/cjs/node_modules/lodash/_baseToString.js +0 -65
  106. package/lib/cjs/node_modules/lodash/_baseToString.js.map +0 -1
  107. package/lib/cjs/node_modules/lodash/_baseUnary.js +0 -31
  108. package/lib/cjs/node_modules/lodash/_baseUnary.js.map +0 -1
  109. package/lib/cjs/node_modules/lodash/_baseUniq.js +0 -105
  110. package/lib/cjs/node_modules/lodash/_baseUniq.js.map +0 -1
  111. package/lib/cjs/node_modules/lodash/_cacheHas.js +0 -30
  112. package/lib/cjs/node_modules/lodash/_cacheHas.js.map +0 -1
  113. package/lib/cjs/node_modules/lodash/_castPath.js +0 -47
  114. package/lib/cjs/node_modules/lodash/_castPath.js.map +0 -1
  115. package/lib/cjs/node_modules/lodash/_coreJsData.js +0 -24
  116. package/lib/cjs/node_modules/lodash/_coreJsData.js.map +0 -1
  117. package/lib/cjs/node_modules/lodash/_createSet.js +0 -41
  118. package/lib/cjs/node_modules/lodash/_createSet.js.map +0 -1
  119. package/lib/cjs/node_modules/lodash/_equalArrays.js +0 -106
  120. package/lib/cjs/node_modules/lodash/_equalArrays.js.map +0 -1
  121. package/lib/cjs/node_modules/lodash/_equalByTag.js +0 -144
  122. package/lib/cjs/node_modules/lodash/_equalByTag.js.map +0 -1
  123. package/lib/cjs/node_modules/lodash/_equalObjects.js +0 -110
  124. package/lib/cjs/node_modules/lodash/_equalObjects.js.map +0 -1
  125. package/lib/cjs/node_modules/lodash/_freeGlobal.js +0 -26
  126. package/lib/cjs/node_modules/lodash/_freeGlobal.js.map +0 -1
  127. package/lib/cjs/node_modules/lodash/_getAllKeys.js +0 -39
  128. package/lib/cjs/node_modules/lodash/_getAllKeys.js.map +0 -1
  129. package/lib/cjs/node_modules/lodash/_getMapData.js +0 -35
  130. package/lib/cjs/node_modules/lodash/_getMapData.js.map +0 -1
  131. package/lib/cjs/node_modules/lodash/_getMatchData.js +0 -45
  132. package/lib/cjs/node_modules/lodash/_getMatchData.js.map +0 -1
  133. package/lib/cjs/node_modules/lodash/_getNative.js +0 -38
  134. package/lib/cjs/node_modules/lodash/_getNative.js.map +0 -1
  135. package/lib/cjs/node_modules/lodash/_getRawTag.js +0 -67
  136. package/lib/cjs/node_modules/lodash/_getRawTag.js.map +0 -1
  137. package/lib/cjs/node_modules/lodash/_getSymbols.js +0 -51
  138. package/lib/cjs/node_modules/lodash/_getSymbols.js.map +0 -1
  139. package/lib/cjs/node_modules/lodash/_getTag.js +0 -93
  140. package/lib/cjs/node_modules/lodash/_getTag.js.map +0 -1
  141. package/lib/cjs/node_modules/lodash/_getValue.js +0 -30
  142. package/lib/cjs/node_modules/lodash/_getValue.js.map +0 -1
  143. package/lib/cjs/node_modules/lodash/_hasPath.js +0 -70
  144. package/lib/cjs/node_modules/lodash/_hasPath.js.map +0 -1
  145. package/lib/cjs/node_modules/lodash/_hashClear.js +0 -34
  146. package/lib/cjs/node_modules/lodash/_hashClear.js.map +0 -1
  147. package/lib/cjs/node_modules/lodash/_hashDelete.js +0 -34
  148. package/lib/cjs/node_modules/lodash/_hashDelete.js.map +0 -1
  149. package/lib/cjs/node_modules/lodash/_hashGet.js +0 -51
  150. package/lib/cjs/node_modules/lodash/_hashGet.js.map +0 -1
  151. package/lib/cjs/node_modules/lodash/_hashHas.js +0 -42
  152. package/lib/cjs/node_modules/lodash/_hashHas.js.map +0 -1
  153. package/lib/cjs/node_modules/lodash/_hashSet.js +0 -42
  154. package/lib/cjs/node_modules/lodash/_hashSet.js.map +0 -1
  155. package/lib/cjs/node_modules/lodash/_isIndex.js +0 -41
  156. package/lib/cjs/node_modules/lodash/_isIndex.js.map +0 -1
  157. package/lib/cjs/node_modules/lodash/_isKey.js +0 -53
  158. package/lib/cjs/node_modules/lodash/_isKey.js.map +0 -1
  159. package/lib/cjs/node_modules/lodash/_isKeyable.js +0 -33
  160. package/lib/cjs/node_modules/lodash/_isKeyable.js.map +0 -1
  161. package/lib/cjs/node_modules/lodash/_isMasked.js +0 -40
  162. package/lib/cjs/node_modules/lodash/_isMasked.js.map +0 -1
  163. package/lib/cjs/node_modules/lodash/_isPrototype.js +0 -34
  164. package/lib/cjs/node_modules/lodash/_isPrototype.js.map +0 -1
  165. package/lib/cjs/node_modules/lodash/_isStrictComparable.js +0 -34
  166. package/lib/cjs/node_modules/lodash/_isStrictComparable.js.map +0 -1
  167. package/lib/cjs/node_modules/lodash/_listCacheClear.js +0 -30
  168. package/lib/cjs/node_modules/lodash/_listCacheClear.js.map +0 -1
  169. package/lib/cjs/node_modules/lodash/_listCacheDelete.js +0 -57
  170. package/lib/cjs/node_modules/lodash/_listCacheDelete.js.map +0 -1
  171. package/lib/cjs/node_modules/lodash/_listCacheGet.js +0 -37
  172. package/lib/cjs/node_modules/lodash/_listCacheGet.js.map +0 -1
  173. package/lib/cjs/node_modules/lodash/_listCacheHas.js +0 -35
  174. package/lib/cjs/node_modules/lodash/_listCacheHas.js.map +0 -1
  175. package/lib/cjs/node_modules/lodash/_listCacheSet.js +0 -46
  176. package/lib/cjs/node_modules/lodash/_listCacheSet.js.map +0 -1
  177. package/lib/cjs/node_modules/lodash/_mapCacheClear.js +0 -44
  178. package/lib/cjs/node_modules/lodash/_mapCacheClear.js.map +0 -1
  179. package/lib/cjs/node_modules/lodash/_mapCacheDelete.js +0 -37
  180. package/lib/cjs/node_modules/lodash/_mapCacheDelete.js.map +0 -1
  181. package/lib/cjs/node_modules/lodash/_mapCacheGet.js +0 -35
  182. package/lib/cjs/node_modules/lodash/_mapCacheGet.js.map +0 -1
  183. package/lib/cjs/node_modules/lodash/_mapCacheHas.js +0 -35
  184. package/lib/cjs/node_modules/lodash/_mapCacheHas.js.map +0 -1
  185. package/lib/cjs/node_modules/lodash/_mapCacheSet.js +0 -40
  186. package/lib/cjs/node_modules/lodash/_mapCacheSet.js.map +0 -1
  187. package/lib/cjs/node_modules/lodash/_mapToArray.js +0 -34
  188. package/lib/cjs/node_modules/lodash/_mapToArray.js.map +0 -1
  189. package/lib/cjs/node_modules/lodash/_matchesStrictComparable.js +0 -37
  190. package/lib/cjs/node_modules/lodash/_matchesStrictComparable.js.map +0 -1
  191. package/lib/cjs/node_modules/lodash/_memoizeCapped.js +0 -45
  192. package/lib/cjs/node_modules/lodash/_memoizeCapped.js.map +0 -1
  193. package/lib/cjs/node_modules/lodash/_nativeCreate.js +0 -24
  194. package/lib/cjs/node_modules/lodash/_nativeCreate.js.map +0 -1
  195. package/lib/cjs/node_modules/lodash/_nativeKeys.js +0 -24
  196. package/lib/cjs/node_modules/lodash/_nativeKeys.js.map +0 -1
  197. package/lib/cjs/node_modules/lodash/_nodeUtil.js +0 -48
  198. package/lib/cjs/node_modules/lodash/_nodeUtil.js.map +0 -1
  199. package/lib/cjs/node_modules/lodash/_objectToString.js +0 -39
  200. package/lib/cjs/node_modules/lodash/_objectToString.js.map +0 -1
  201. package/lib/cjs/node_modules/lodash/_overArg.js +0 -32
  202. package/lib/cjs/node_modules/lodash/_overArg.js.map +0 -1
  203. package/lib/cjs/node_modules/lodash/_root.js +0 -29
  204. package/lib/cjs/node_modules/lodash/_root.js.map +0 -1
  205. package/lib/cjs/node_modules/lodash/_setCacheAdd.js +0 -37
  206. package/lib/cjs/node_modules/lodash/_setCacheAdd.js.map +0 -1
  207. package/lib/cjs/node_modules/lodash/_setCacheHas.js +0 -31
  208. package/lib/cjs/node_modules/lodash/_setCacheHas.js.map +0 -1
  209. package/lib/cjs/node_modules/lodash/_setToArray.js +0 -34
  210. package/lib/cjs/node_modules/lodash/_setToArray.js.map +0 -1
  211. package/lib/cjs/node_modules/lodash/_stackClear.js +0 -34
  212. package/lib/cjs/node_modules/lodash/_stackClear.js.map +0 -1
  213. package/lib/cjs/node_modules/lodash/_stackDelete.js +0 -34
  214. package/lib/cjs/node_modules/lodash/_stackDelete.js.map +0 -1
  215. package/lib/cjs/node_modules/lodash/_stackGet.js +0 -31
  216. package/lib/cjs/node_modules/lodash/_stackGet.js.map +0 -1
  217. package/lib/cjs/node_modules/lodash/_stackHas.js +0 -31
  218. package/lib/cjs/node_modules/lodash/_stackHas.js.map +0 -1
  219. package/lib/cjs/node_modules/lodash/_stackSet.js +0 -61
  220. package/lib/cjs/node_modules/lodash/_stackSet.js.map +0 -1
  221. package/lib/cjs/node_modules/lodash/_strictIndexOf.js +0 -41
  222. package/lib/cjs/node_modules/lodash/_strictIndexOf.js.map +0 -1
  223. package/lib/cjs/node_modules/lodash/_stringToPath.js +0 -49
  224. package/lib/cjs/node_modules/lodash/_stringToPath.js.map +0 -1
  225. package/lib/cjs/node_modules/lodash/_toKey.js +0 -41
  226. package/lib/cjs/node_modules/lodash/_toKey.js.map +0 -1
  227. package/lib/cjs/node_modules/lodash/_toSource.js +0 -45
  228. package/lib/cjs/node_modules/lodash/_toSource.js.map +0 -1
  229. package/lib/cjs/node_modules/lodash/eq.js +0 -54
  230. package/lib/cjs/node_modules/lodash/eq.js.map +0 -1
  231. package/lib/cjs/node_modules/lodash/get.js +0 -52
  232. package/lib/cjs/node_modules/lodash/get.js.map +0 -1
  233. package/lib/cjs/node_modules/lodash/hasIn.js +0 -55
  234. package/lib/cjs/node_modules/lodash/hasIn.js.map +0 -1
  235. package/lib/cjs/node_modules/lodash/identity.js +0 -38
  236. package/lib/cjs/node_modules/lodash/identity.js.map +0 -1
  237. package/lib/cjs/node_modules/lodash/isArguments.js +0 -57
  238. package/lib/cjs/node_modules/lodash/isArguments.js.map +0 -1
  239. package/lib/cjs/node_modules/lodash/isArray.js +0 -42
  240. package/lib/cjs/node_modules/lodash/isArray.js.map +0 -1
  241. package/lib/cjs/node_modules/lodash/isArrayLike.js +0 -54
  242. package/lib/cjs/node_modules/lodash/isArrayLike.js.map +0 -1
  243. package/lib/cjs/node_modules/lodash/isBuffer.js +0 -57
  244. package/lib/cjs/node_modules/lodash/isBuffer.js.map +0 -1
  245. package/lib/cjs/node_modules/lodash/isFunction.js +0 -59
  246. package/lib/cjs/node_modules/lodash/isFunction.js.map +0 -1
  247. package/lib/cjs/node_modules/lodash/isLength.js +0 -51
  248. package/lib/cjs/node_modules/lodash/isLength.js.map +0 -1
  249. package/lib/cjs/node_modules/lodash/isObject.js +0 -51
  250. package/lib/cjs/node_modules/lodash/isObject.js.map +0 -1
  251. package/lib/cjs/node_modules/lodash/isObjectLike.js +0 -48
  252. package/lib/cjs/node_modules/lodash/isObjectLike.js.map +0 -1
  253. package/lib/cjs/node_modules/lodash/isSymbol.js +0 -51
  254. package/lib/cjs/node_modules/lodash/isSymbol.js.map +0 -1
  255. package/lib/cjs/node_modules/lodash/isTypedArray.js +0 -51
  256. package/lib/cjs/node_modules/lodash/isTypedArray.js.map +0 -1
  257. package/lib/cjs/node_modules/lodash/keys.js +0 -60
  258. package/lib/cjs/node_modules/lodash/keys.js.map +0 -1
  259. package/lib/cjs/node_modules/lodash/memoize.js +0 -94
  260. package/lib/cjs/node_modules/lodash/memoize.js.map +0 -1
  261. package/lib/cjs/node_modules/lodash/noop.js +0 -33
  262. package/lib/cjs/node_modules/lodash/noop.js.map +0 -1
  263. package/lib/cjs/node_modules/lodash/property.js +0 -57
  264. package/lib/cjs/node_modules/lodash/property.js.map +0 -1
  265. package/lib/cjs/node_modules/lodash/stubArray.js +0 -40
  266. package/lib/cjs/node_modules/lodash/stubArray.js.map +0 -1
  267. package/lib/cjs/node_modules/lodash/stubFalse.js +0 -35
  268. package/lib/cjs/node_modules/lodash/stubFalse.js.map +0 -1
  269. package/lib/cjs/node_modules/lodash/toString.js +0 -47
  270. package/lib/cjs/node_modules/lodash/toString.js.map +0 -1
  271. package/lib/cjs/node_modules/lodash/uniqBy.js +0 -52
  272. package/lib/cjs/node_modules/lodash/uniqBy.js.map +0 -1
  273. package/lib/cjs/styles/index.scss.js.map +0 -1
  274. package/lib/esm/CheckTreeSelect.js.map +0 -1
  275. package/lib/esm/_virtual/_commonjsHelpers.js +0 -12
  276. package/lib/esm/_virtual/_commonjsHelpers.js.map +0 -1
  277. package/lib/esm/_virtual/_nodeUtil.js_commonjs-module +0 -14
  278. package/lib/esm/_virtual/_nodeUtil.js_commonjs-module.map +0 -1
  279. package/lib/esm/_virtual/isBuffer.js_commonjs-module +0 -14
  280. package/lib/esm/_virtual/isBuffer.js_commonjs-module.map +0 -1
  281. package/lib/esm/index.js.map +0 -1
  282. package/lib/esm/node_modules/lodash/_DataView.js +0 -19
  283. package/lib/esm/node_modules/lodash/_DataView.js.map +0 -1
  284. package/lib/esm/node_modules/lodash/_Hash.js +0 -47
  285. package/lib/esm/node_modules/lodash/_Hash.js.map +0 -1
  286. package/lib/esm/node_modules/lodash/_ListCache.js +0 -47
  287. package/lib/esm/node_modules/lodash/_ListCache.js.map +0 -1
  288. package/lib/esm/node_modules/lodash/_Map.js +0 -19
  289. package/lib/esm/node_modules/lodash/_Map.js.map +0 -1
  290. package/lib/esm/node_modules/lodash/_MapCache.js +0 -47
  291. package/lib/esm/node_modules/lodash/_MapCache.js.map +0 -1
  292. package/lib/esm/node_modules/lodash/_Promise.js +0 -19
  293. package/lib/esm/node_modules/lodash/_Promise.js.map +0 -1
  294. package/lib/esm/node_modules/lodash/_Set.js +0 -19
  295. package/lib/esm/node_modules/lodash/_Set.js.map +0 -1
  296. package/lib/esm/node_modules/lodash/_SetCache.js +0 -40
  297. package/lib/esm/node_modules/lodash/_SetCache.js.map +0 -1
  298. package/lib/esm/node_modules/lodash/_Stack.js +0 -43
  299. package/lib/esm/node_modules/lodash/_Stack.js.map +0 -1
  300. package/lib/esm/node_modules/lodash/_Symbol.js +0 -17
  301. package/lib/esm/node_modules/lodash/_Symbol.js.map +0 -1
  302. package/lib/esm/node_modules/lodash/_Uint8Array.js +0 -17
  303. package/lib/esm/node_modules/lodash/_Uint8Array.js.map +0 -1
  304. package/lib/esm/node_modules/lodash/_WeakMap.js +0 -19
  305. package/lib/esm/node_modules/lodash/_WeakMap.js.map +0 -1
  306. package/lib/esm/node_modules/lodash/_arrayFilter.js +0 -39
  307. package/lib/esm/node_modules/lodash/_arrayFilter.js.map +0 -1
  308. package/lib/esm/node_modules/lodash/_arrayIncludes.js +0 -29
  309. package/lib/esm/node_modules/lodash/_arrayIncludes.js.map +0 -1
  310. package/lib/esm/node_modules/lodash/_arrayIncludesWith.js +0 -35
  311. package/lib/esm/node_modules/lodash/_arrayIncludesWith.js.map +0 -1
  312. package/lib/esm/node_modules/lodash/_arrayLikeKeys.js +0 -62
  313. package/lib/esm/node_modules/lodash/_arrayLikeKeys.js.map +0 -1
  314. package/lib/esm/node_modules/lodash/_arrayMap.js +0 -34
  315. package/lib/esm/node_modules/lodash/_arrayMap.js.map +0 -1
  316. package/lib/esm/node_modules/lodash/_arrayPush.js +0 -33
  317. package/lib/esm/node_modules/lodash/_arrayPush.js.map +0 -1
  318. package/lib/esm/node_modules/lodash/_arraySome.js +0 -36
  319. package/lib/esm/node_modules/lodash/_arraySome.js.map +0 -1
  320. package/lib/esm/node_modules/lodash/_assocIndexOf.js +0 -35
  321. package/lib/esm/node_modules/lodash/_assocIndexOf.js.map +0 -1
  322. package/lib/esm/node_modules/lodash/_baseFindIndex.js +0 -37
  323. package/lib/esm/node_modules/lodash/_baseFindIndex.js.map +0 -1
  324. package/lib/esm/node_modules/lodash/_baseGet.js +0 -37
  325. package/lib/esm/node_modules/lodash/_baseGet.js.map +0 -1
  326. package/lib/esm/node_modules/lodash/_baseGetAllKeys.js +0 -33
  327. package/lib/esm/node_modules/lodash/_baseGetAllKeys.js.map +0 -1
  328. package/lib/esm/node_modules/lodash/_baseGetTag.js +0 -41
  329. package/lib/esm/node_modules/lodash/_baseGetTag.js.map +0 -1
  330. package/lib/esm/node_modules/lodash/_baseHasIn.js +0 -25
  331. package/lib/esm/node_modules/lodash/_baseHasIn.js.map +0 -1
  332. package/lib/esm/node_modules/lodash/_baseIndexOf.js +0 -32
  333. package/lib/esm/node_modules/lodash/_baseIndexOf.js.map +0 -1
  334. package/lib/esm/node_modules/lodash/_baseIsArguments.js +0 -31
  335. package/lib/esm/node_modules/lodash/_baseIsArguments.js.map +0 -1
  336. package/lib/esm/node_modules/lodash/_baseIsEqual.js +0 -43
  337. package/lib/esm/node_modules/lodash/_baseIsEqual.js.map +0 -1
  338. package/lib/esm/node_modules/lodash/_baseIsEqualDeep.js +0 -103
  339. package/lib/esm/node_modules/lodash/_baseIsEqualDeep.js.map +0 -1
  340. package/lib/esm/node_modules/lodash/_baseIsMatch.js +0 -76
  341. package/lib/esm/node_modules/lodash/_baseIsMatch.js.map +0 -1
  342. package/lib/esm/node_modules/lodash/_baseIsNaN.js +0 -24
  343. package/lib/esm/node_modules/lodash/_baseIsNaN.js.map +0 -1
  344. package/lib/esm/node_modules/lodash/_baseIsNative.js +0 -60
  345. package/lib/esm/node_modules/lodash/_baseIsNative.js.map +0 -1
  346. package/lib/esm/node_modules/lodash/_baseIsTypedArray.js +0 -61
  347. package/lib/esm/node_modules/lodash/_baseIsTypedArray.js.map +0 -1
  348. package/lib/esm/node_modules/lodash/_baseIteratee.js +0 -50
  349. package/lib/esm/node_modules/lodash/_baseIteratee.js.map +0 -1
  350. package/lib/esm/node_modules/lodash/_baseKeys.js +0 -46
  351. package/lib/esm/node_modules/lodash/_baseKeys.js.map +0 -1
  352. package/lib/esm/node_modules/lodash/_baseMatches.js +0 -38
  353. package/lib/esm/node_modules/lodash/_baseMatches.js.map +0 -1
  354. package/lib/esm/node_modules/lodash/_baseMatchesProperty.js +0 -50
  355. package/lib/esm/node_modules/lodash/_baseMatchesProperty.js.map +0 -1
  356. package/lib/esm/node_modules/lodash/_baseProperty.js +0 -26
  357. package/lib/esm/node_modules/lodash/_baseProperty.js.map +0 -1
  358. package/lib/esm/node_modules/lodash/_basePropertyDeep.js +0 -28
  359. package/lib/esm/node_modules/lodash/_basePropertyDeep.js.map +0 -1
  360. package/lib/esm/node_modules/lodash/_baseTimes.js +0 -33
  361. package/lib/esm/node_modules/lodash/_baseTimes.js.map +0 -1
  362. package/lib/esm/node_modules/lodash/_baseToString.js +0 -55
  363. package/lib/esm/node_modules/lodash/_baseToString.js.map +0 -1
  364. package/lib/esm/node_modules/lodash/_baseUnary.js +0 -26
  365. package/lib/esm/node_modules/lodash/_baseUnary.js.map +0 -1
  366. package/lib/esm/node_modules/lodash/_baseUniq.js +0 -93
  367. package/lib/esm/node_modules/lodash/_baseUniq.js.map +0 -1
  368. package/lib/esm/node_modules/lodash/_cacheHas.js +0 -25
  369. package/lib/esm/node_modules/lodash/_cacheHas.js.map +0 -1
  370. package/lib/esm/node_modules/lodash/_castPath.js +0 -37
  371. package/lib/esm/node_modules/lodash/_castPath.js.map +0 -1
  372. package/lib/esm/node_modules/lodash/_coreJsData.js +0 -17
  373. package/lib/esm/node_modules/lodash/_coreJsData.js.map +0 -1
  374. package/lib/esm/node_modules/lodash/_createSet.js +0 -32
  375. package/lib/esm/node_modules/lodash/_createSet.js.map +0 -1
  376. package/lib/esm/node_modules/lodash/_equalArrays.js +0 -97
  377. package/lib/esm/node_modules/lodash/_equalArrays.js.map +0 -1
  378. package/lib/esm/node_modules/lodash/_equalByTag.js +0 -132
  379. package/lib/esm/node_modules/lodash/_equalByTag.js.map +0 -1
  380. package/lib/esm/node_modules/lodash/_equalObjects.js +0 -103
  381. package/lib/esm/node_modules/lodash/_equalObjects.js.map +0 -1
  382. package/lib/esm/node_modules/lodash/_freeGlobal.js +0 -18
  383. package/lib/esm/node_modules/lodash/_freeGlobal.js.map +0 -1
  384. package/lib/esm/node_modules/lodash/_getAllKeys.js +0 -30
  385. package/lib/esm/node_modules/lodash/_getAllKeys.js.map +0 -1
  386. package/lib/esm/node_modules/lodash/_getMapData.js +0 -28
  387. package/lib/esm/node_modules/lodash/_getMapData.js.map +0 -1
  388. package/lib/esm/node_modules/lodash/_getMatchData.js +0 -37
  389. package/lib/esm/node_modules/lodash/_getMatchData.js.map +0 -1
  390. package/lib/esm/node_modules/lodash/_getNative.js +0 -30
  391. package/lib/esm/node_modules/lodash/_getNative.js.map +0 -1
  392. package/lib/esm/node_modules/lodash/_getRawTag.js +0 -60
  393. package/lib/esm/node_modules/lodash/_getRawTag.js.map +0 -1
  394. package/lib/esm/node_modules/lodash/_getSymbols.js +0 -43
  395. package/lib/esm/node_modules/lodash/_getSymbols.js.map +0 -1
  396. package/lib/esm/node_modules/lodash/_getTag.js +0 -80
  397. package/lib/esm/node_modules/lodash/_getTag.js.map +0 -1
  398. package/lib/esm/node_modules/lodash/_getValue.js +0 -25
  399. package/lib/esm/node_modules/lodash/_getValue.js.map +0 -1
  400. package/lib/esm/node_modules/lodash/_hasPath.js +0 -58
  401. package/lib/esm/node_modules/lodash/_hasPath.js.map +0 -1
  402. package/lib/esm/node_modules/lodash/_hashClear.js +0 -27
  403. package/lib/esm/node_modules/lodash/_hashClear.js.map +0 -1
  404. package/lib/esm/node_modules/lodash/_hashDelete.js +0 -29
  405. package/lib/esm/node_modules/lodash/_hashDelete.js.map +0 -1
  406. package/lib/esm/node_modules/lodash/_hashGet.js +0 -44
  407. package/lib/esm/node_modules/lodash/_hashGet.js.map +0 -1
  408. package/lib/esm/node_modules/lodash/_hashHas.js +0 -35
  409. package/lib/esm/node_modules/lodash/_hashHas.js.map +0 -1
  410. package/lib/esm/node_modules/lodash/_hashSet.js +0 -35
  411. package/lib/esm/node_modules/lodash/_hashSet.js.map +0 -1
  412. package/lib/esm/node_modules/lodash/_isIndex.js +0 -36
  413. package/lib/esm/node_modules/lodash/_isIndex.js.map +0 -1
  414. package/lib/esm/node_modules/lodash/_isKey.js +0 -45
  415. package/lib/esm/node_modules/lodash/_isKey.js.map +0 -1
  416. package/lib/esm/node_modules/lodash/_isKeyable.js +0 -28
  417. package/lib/esm/node_modules/lodash/_isKeyable.js.map +0 -1
  418. package/lib/esm/node_modules/lodash/_isMasked.js +0 -33
  419. package/lib/esm/node_modules/lodash/_isMasked.js.map +0 -1
  420. package/lib/esm/node_modules/lodash/_isPrototype.js +0 -29
  421. package/lib/esm/node_modules/lodash/_isPrototype.js.map +0 -1
  422. package/lib/esm/node_modules/lodash/_isStrictComparable.js +0 -27
  423. package/lib/esm/node_modules/lodash/_isStrictComparable.js.map +0 -1
  424. package/lib/esm/node_modules/lodash/_listCacheClear.js +0 -25
  425. package/lib/esm/node_modules/lodash/_listCacheClear.js.map +0 -1
  426. package/lib/esm/node_modules/lodash/_listCacheDelete.js +0 -50
  427. package/lib/esm/node_modules/lodash/_listCacheDelete.js.map +0 -1
  428. package/lib/esm/node_modules/lodash/_listCacheGet.js +0 -30
  429. package/lib/esm/node_modules/lodash/_listCacheGet.js.map +0 -1
  430. package/lib/esm/node_modules/lodash/_listCacheHas.js +0 -28
  431. package/lib/esm/node_modules/lodash/_listCacheHas.js.map +0 -1
  432. package/lib/esm/node_modules/lodash/_listCacheSet.js +0 -39
  433. package/lib/esm/node_modules/lodash/_listCacheSet.js.map +0 -1
  434. package/lib/esm/node_modules/lodash/_mapCacheClear.js +0 -35
  435. package/lib/esm/node_modules/lodash/_mapCacheClear.js.map +0 -1
  436. package/lib/esm/node_modules/lodash/_mapCacheDelete.js +0 -30
  437. package/lib/esm/node_modules/lodash/_mapCacheDelete.js.map +0 -1
  438. package/lib/esm/node_modules/lodash/_mapCacheGet.js +0 -28
  439. package/lib/esm/node_modules/lodash/_mapCacheGet.js.map +0 -1
  440. package/lib/esm/node_modules/lodash/_mapCacheHas.js +0 -28
  441. package/lib/esm/node_modules/lodash/_mapCacheHas.js.map +0 -1
  442. package/lib/esm/node_modules/lodash/_mapCacheSet.js +0 -33
  443. package/lib/esm/node_modules/lodash/_mapCacheSet.js.map +0 -1
  444. package/lib/esm/node_modules/lodash/_mapToArray.js +0 -29
  445. package/lib/esm/node_modules/lodash/_mapToArray.js.map +0 -1
  446. package/lib/esm/node_modules/lodash/_matchesStrictComparable.js +0 -32
  447. package/lib/esm/node_modules/lodash/_matchesStrictComparable.js.map +0 -1
  448. package/lib/esm/node_modules/lodash/_memoizeCapped.js +0 -38
  449. package/lib/esm/node_modules/lodash/_memoizeCapped.js.map +0 -1
  450. package/lib/esm/node_modules/lodash/_nativeCreate.js +0 -17
  451. package/lib/esm/node_modules/lodash/_nativeCreate.js.map +0 -1
  452. package/lib/esm/node_modules/lodash/_nativeKeys.js +0 -17
  453. package/lib/esm/node_modules/lodash/_nativeKeys.js.map +0 -1
  454. package/lib/esm/node_modules/lodash/_nodeUtil.js +0 -45
  455. package/lib/esm/node_modules/lodash/_nodeUtil.js.map +0 -1
  456. package/lib/esm/node_modules/lodash/_objectToString.js +0 -34
  457. package/lib/esm/node_modules/lodash/_objectToString.js.map +0 -1
  458. package/lib/esm/node_modules/lodash/_overArg.js +0 -27
  459. package/lib/esm/node_modules/lodash/_overArg.js.map +0 -1
  460. package/lib/esm/node_modules/lodash/_root.js +0 -22
  461. package/lib/esm/node_modules/lodash/_root.js.map +0 -1
  462. package/lib/esm/node_modules/lodash/_setCacheAdd.js +0 -32
  463. package/lib/esm/node_modules/lodash/_setCacheAdd.js.map +0 -1
  464. package/lib/esm/node_modules/lodash/_setCacheHas.js +0 -26
  465. package/lib/esm/node_modules/lodash/_setCacheHas.js.map +0 -1
  466. package/lib/esm/node_modules/lodash/_setToArray.js +0 -29
  467. package/lib/esm/node_modules/lodash/_setToArray.js.map +0 -1
  468. package/lib/esm/node_modules/lodash/_stackClear.js +0 -27
  469. package/lib/esm/node_modules/lodash/_stackClear.js.map +0 -1
  470. package/lib/esm/node_modules/lodash/_stackDelete.js +0 -29
  471. package/lib/esm/node_modules/lodash/_stackDelete.js.map +0 -1
  472. package/lib/esm/node_modules/lodash/_stackGet.js +0 -26
  473. package/lib/esm/node_modules/lodash/_stackGet.js.map +0 -1
  474. package/lib/esm/node_modules/lodash/_stackHas.js +0 -26
  475. package/lib/esm/node_modules/lodash/_stackHas.js.map +0 -1
  476. package/lib/esm/node_modules/lodash/_stackSet.js +0 -52
  477. package/lib/esm/node_modules/lodash/_stackSet.js.map +0 -1
  478. package/lib/esm/node_modules/lodash/_strictIndexOf.js +0 -36
  479. package/lib/esm/node_modules/lodash/_strictIndexOf.js.map +0 -1
  480. package/lib/esm/node_modules/lodash/_stringToPath.js +0 -42
  481. package/lib/esm/node_modules/lodash/_stringToPath.js.map +0 -1
  482. package/lib/esm/node_modules/lodash/_toKey.js +0 -34
  483. package/lib/esm/node_modules/lodash/_toKey.js.map +0 -1
  484. package/lib/esm/node_modules/lodash/_toSource.js +0 -40
  485. package/lib/esm/node_modules/lodash/_toSource.js.map +0 -1
  486. package/lib/esm/node_modules/lodash/eq.js +0 -49
  487. package/lib/esm/node_modules/lodash/eq.js.map +0 -1
  488. package/lib/esm/node_modules/lodash/get.js +0 -45
  489. package/lib/esm/node_modules/lodash/get.js.map +0 -1
  490. package/lib/esm/node_modules/lodash/hasIn.js +0 -47
  491. package/lib/esm/node_modules/lodash/hasIn.js.map +0 -1
  492. package/lib/esm/node_modules/lodash/identity.js +0 -33
  493. package/lib/esm/node_modules/lodash/identity.js.map +0 -1
  494. package/lib/esm/node_modules/lodash/isArguments.js +0 -49
  495. package/lib/esm/node_modules/lodash/isArguments.js.map +0 -1
  496. package/lib/esm/node_modules/lodash/isArray.js +0 -37
  497. package/lib/esm/node_modules/lodash/isArray.js.map +0 -1
  498. package/lib/esm/node_modules/lodash/isArrayLike.js +0 -46
  499. package/lib/esm/node_modules/lodash/isArrayLike.js.map +0 -1
  500. package/lib/esm/node_modules/lodash/isBuffer.js +0 -53
  501. package/lib/esm/node_modules/lodash/isBuffer.js.map +0 -1
  502. package/lib/esm/node_modules/lodash/isFunction.js +0 -51
  503. package/lib/esm/node_modules/lodash/isFunction.js.map +0 -1
  504. package/lib/esm/node_modules/lodash/isLength.js +0 -46
  505. package/lib/esm/node_modules/lodash/isLength.js.map +0 -1
  506. package/lib/esm/node_modules/lodash/isObject.js +0 -46
  507. package/lib/esm/node_modules/lodash/isObject.js.map +0 -1
  508. package/lib/esm/node_modules/lodash/isObjectLike.js +0 -43
  509. package/lib/esm/node_modules/lodash/isObjectLike.js.map +0 -1
  510. package/lib/esm/node_modules/lodash/isSymbol.js +0 -43
  511. package/lib/esm/node_modules/lodash/isSymbol.js.map +0 -1
  512. package/lib/esm/node_modules/lodash/isTypedArray.js +0 -41
  513. package/lib/esm/node_modules/lodash/isTypedArray.js.map +0 -1
  514. package/lib/esm/node_modules/lodash/keys.js +0 -51
  515. package/lib/esm/node_modules/lodash/keys.js.map +0 -1
  516. package/lib/esm/node_modules/lodash/memoize.js +0 -87
  517. package/lib/esm/node_modules/lodash/memoize.js.map +0 -1
  518. package/lib/esm/node_modules/lodash/noop.js +0 -28
  519. package/lib/esm/node_modules/lodash/noop.js.map +0 -1
  520. package/lib/esm/node_modules/lodash/property.js +0 -47
  521. package/lib/esm/node_modules/lodash/property.js.map +0 -1
  522. package/lib/esm/node_modules/lodash/stubArray.js +0 -35
  523. package/lib/esm/node_modules/lodash/stubArray.js.map +0 -1
  524. package/lib/esm/node_modules/lodash/stubFalse.js +0 -30
  525. package/lib/esm/node_modules/lodash/stubFalse.js.map +0 -1
  526. package/lib/esm/node_modules/lodash/toString.js +0 -40
  527. package/lib/esm/node_modules/lodash/toString.js.map +0 -1
  528. package/lib/esm/node_modules/lodash/uniqBy.js +0 -44
  529. package/lib/esm/node_modules/lodash/uniqBy.js.map +0 -1
  530. package/lib/esm/styles/index.scss.js.map +0 -1
@@ -8,21 +8,23 @@
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, useMemo, useState } from 'react';
11
+ import React, { forwardRef, useCallback, useMemo } from 'react';
12
12
  import { getPrefixCls, cx } from '@hi-ui/classname';
13
13
  import { __DEV__ } from '@hi-ui/env';
14
- import { useToggle } from '@hi-ui/use-toggle';
14
+ import { useUncontrolledToggle } from '@hi-ui/use-toggle';
15
15
  import { Tree } from '@hi-ui/tree';
16
16
  import { useUncontrolledState } from '@hi-ui/use-uncontrolled-state';
17
17
  import { Picker } from '@hi-ui/picker';
18
- import { flattenTree } from '@hi-ui/tree-utils';
18
+ import { baseFlattenTree } from '@hi-ui/tree-utils';
19
19
  import { isUndef, isArrayNonEmpty } from '@hi-ui/type-assertion';
20
- import uniqBy_1 from './node_modules/lodash/uniqBy.js';
20
+ import { uniqBy } from '@hi-ui/array-utils';
21
21
  import { Highlighter } from '@hi-ui/highlighter';
22
22
  import { TagInputMock } from '@hi-ui/tag-input';
23
23
  import { UpOutlined, DownOutlined } from '@hi-ui/icons';
24
24
  import { useLocaleContext } from '@hi-ui/locale-context';
25
+ import { callAllFuncs } from '@hi-ui/func-utils';
25
26
  import { useAsyncSearch, useTreeCustomSearch, useFilterSearch, useHighlightSearch, useSearchMode } from '@hi-ui/use-search-mode';
27
+ import { useCheck } from './hooks/use-check.js';
26
28
  var TREE_SELECT_PREFIX = getPrefixCls('check-tree-select');
27
29
  var DEFAULT_DATA = [];
28
30
  var DEFAULT_VALUE = [];
@@ -41,9 +43,13 @@ var CheckTreeSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
41
43
  dataSource = _a.dataSource,
42
44
  _a$disabled = _a.disabled,
43
45
  disabled = _a$disabled === void 0 ? false : _a$disabled,
46
+ visible = _a.visible,
47
+ onOpen = _a.onOpen,
48
+ onClose = _a.onClose,
44
49
  _a$fieldNames = _a.fieldNames,
45
50
  fieldNames = _a$fieldNames === void 0 ? DEFAULT_FIELD_NAMES : _a$fieldNames,
46
- checkedMode = _a.checkedMode,
51
+ _a$checkedMode = _a.checkedMode,
52
+ checkedMode = _a$checkedMode === void 0 ? 'ALL' : _a$checkedMode,
47
53
  _a$defaultExpandAll = _a.defaultExpandAll,
48
54
  defaultExpandAll = _a$defaultExpandAll === void 0 ? false : _a$defaultExpandAll,
49
55
  expandedIdsProp = _a.expandedIds,
@@ -59,20 +65,28 @@ var CheckTreeSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
59
65
  onLoadChildren = _a.onLoadChildren,
60
66
  titleRender = _a.render,
61
67
  filterOption = _a.filterOption,
68
+ onSearchProp = _a.onSearch,
62
69
  clearable = _a.clearable,
63
70
  invalid = _a.invalid,
64
71
  displayRender = _a.displayRender,
65
72
  placeholderProp = _a.placeholder,
66
73
  appearance = _a.appearance,
67
- rest = __rest(_a, ["prefixCls", "role", "className", "data", "dataSource", "disabled", "fieldNames", "checkedMode", "defaultExpandAll", "expandedIds", "defaultExpandedIds", "onExpand", "defaultValue", "value", "onChange", "searchable", "searchMode", "onLoadChildren", "render", "filterOption", "clearable", "invalid", "displayRender", "placeholder", "appearance"]);
74
+ virtual = _a.virtual,
75
+ itemHeight = _a.itemHeight,
76
+ height = _a.height,
77
+ rest = __rest(_a, ["prefixCls", "role", "className", "data", "dataSource", "disabled", "visible", "onOpen", "onClose", "fieldNames", "checkedMode", "defaultExpandAll", "expandedIds", "defaultExpandedIds", "onExpand", "defaultValue", "value", "onChange", "searchable", "searchMode", "onLoadChildren", "render", "filterOption", "onSearch", "clearable", "invalid", "displayRender", "placeholder", "appearance", "virtual", "itemHeight", "height"]);
68
78
 
69
79
  var i18n = useLocaleContext();
70
80
  var placeholder = isUndef(placeholderProp) ? i18n.get('checkTreeSelect.placeholder') : placeholderProp;
71
81
 
72
- var _useToggle = useToggle(),
73
- menuVisible = _useToggle[0],
74
- menuVisibleAction = _useToggle[1]; // const [viewSelected, setViewSelected] = useState(false)
75
-
82
+ var _useUncontrolledToggl = useUncontrolledToggle({
83
+ visible: visible,
84
+ disabled: disabled,
85
+ onOpen: onOpen,
86
+ onClose: onClose
87
+ }),
88
+ menuVisible = _useUncontrolledToggl[0],
89
+ menuVisibleAction = _useUncontrolledToggl[1];
76
90
  /**
77
91
  * 转换对象
78
92
  */
@@ -82,11 +96,22 @@ var CheckTreeSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
82
96
  return node[fieldNames[key] || key];
83
97
  }, [fieldNames]);
84
98
  var flattedData = useMemo(function () {
85
- return flattenTree(data, function (node) {
86
- node.id = getKeyFields(node.raw, 'id'); // @ts-ignore
87
-
88
- node.title = getKeyFields(node.raw, 'title');
89
- return node;
99
+ return baseFlattenTree({
100
+ tree: data,
101
+ childrenFieldName: function childrenFieldName(node) {
102
+ return getKeyFields(node, 'children');
103
+ },
104
+ transform: function transform(node) {
105
+ var _a, _b;
106
+
107
+ var flattedNode = node;
108
+ var raw = node.raw;
109
+ flattedNode.id = getKeyFields(raw, 'id');
110
+ flattedNode.title = getKeyFields(raw, 'title');
111
+ flattedNode.disabled = (_a = getKeyFields(raw, 'disabled')) !== null && _a !== void 0 ? _a : false;
112
+ flattedNode.isLeaf = (_b = getKeyFields(raw, 'isLeaf')) !== null && _b !== void 0 ? _b : false;
113
+ return flattedNode;
114
+ }
90
115
  });
91
116
  }, [data, getKeyFields]); // TODO: 抽离展开hook
92
117
  // TODO: onLoadChildren 和 defaultExpandAll 共存时
@@ -104,34 +129,27 @@ var CheckTreeSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
104
129
  expandedIds = _useUncontrolledState[0],
105
130
  tryChangeExpandedIds = _useUncontrolledState[1];
106
131
 
107
- var _useUncontrolledState2 = useUncontrolledState(defaultValue, valueProp, onChange),
108
- value = _useUncontrolledState2[0],
109
- tryChangeValue = _useUncontrolledState2[1]; // 搜索时临时选中缓存数据
110
-
111
-
112
- var _useState = useState([]),
113
- selectedItems = _useState[0],
114
- setSelectedItems = _useState[1];
115
-
116
- var onSelect = useCallback(function (checkedIds, option) {
117
- tryChangeValue(checkedIds, option); // 存取异步选中数据
118
-
119
- setSelectedItems(function (prev) {
120
- var next = [].concat(prev);
121
- var targetNode = option.targetNode,
122
- checked = option.checked;
123
-
124
- if (checked) {
125
- next.push(targetNode);
126
- } else {
127
- next.filter(function (item) {
128
- return item.id !== targetNode.id;
129
- });
130
- }
131
-
132
- return next;
133
- });
134
- }, [tryChangeValue]); // ************************** 异步搜索 ************************* //
132
+ var _useCheck = useCheck(checkedMode, disabled, flattedData, defaultValue, valueProp, onChange),
133
+ value = _useCheck[0],
134
+ tryChangeValue = _useCheck[1],
135
+ onNodeCheck = _useCheck[2],
136
+ checkedNodes = _useCheck[3],
137
+ parsedCheckedIds = _useCheck[4];
138
+
139
+ var onCheck = useCallback(function (checkedIds, option) {
140
+ var targetNode = option.targetNode,
141
+ checked = option.checked;
142
+ onNodeCheck(targetNode, checked);
143
+ }, [onNodeCheck]);
144
+ var onValueChange = useCallback(function (values, targetItem, shouldChecked) {
145
+ // 清空
146
+ if (values.length === 0) {
147
+ tryChangeValue([], null, shouldChecked, []);
148
+ } else {
149
+ // 操作单个
150
+ onNodeCheck(targetItem[0], shouldChecked);
151
+ }
152
+ }, [tryChangeValue, onNodeCheck]); // ************************** 异步搜索 ************************* //
135
153
  // const { loading, hasError, loadRemoteData } = useDataSource({ dataSource, validate: isArray })
136
154
 
137
155
  var _b = useAsyncSearch({
@@ -197,9 +215,9 @@ var CheckTreeSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
197
215
  }; // 下拉菜单不能合并(因为树形数据,不知道是第几级)
198
216
 
199
217
  var mergedData = useMemo(function () {
200
- var nextData = selectedItems.concat(flattedData);
201
- return uniqBy_1(nextData, 'id');
202
- }, [selectedItems, flattedData]);
218
+ var nextData = checkedNodes.concat(flattedData);
219
+ return uniqBy(nextData, 'id');
220
+ }, [checkedNodes, flattedData]);
203
221
  var cls = cx(prefixCls, className); // 过滤掉未选中的数据
204
222
  // const tagList = useMemo(() => {
205
223
  // // @ts-ignore
@@ -223,7 +241,7 @@ var CheckTreeSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
223
241
  // onChange={tryChangeValue}
224
242
  // data={mergedData}
225
243
  searchable: searchable,
226
- onSearch: onSearch,
244
+ onSearch: callAllFuncs(onSearchProp, onSearch),
227
245
  loading: loading,
228
246
  trigger: /*#__PURE__*/React.createElement(TagInputMock // ref={targetElementRef}
229
247
  // onClick={openMenu}
@@ -240,22 +258,29 @@ var CheckTreeSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
240
258
  focused: menuVisible,
241
259
  appearance: appearance,
242
260
  value: value,
243
- onChange: tryChangeValue,
261
+ onChange: onValueChange,
244
262
  data: mergedData,
245
263
  // @ts-ignore
246
264
  invalid: invalid
247
265
  })
248
- }), isArrayNonEmpty(treeProps.data) ? /*#__PURE__*/React.createElement(Tree, Object.assign({
266
+ }), isArrayNonEmpty(treeProps.data) ?
267
+ /*#__PURE__*/
268
+ // 只做渲染,不做逻辑处理(比如搜索过滤后,check操作的是对过滤后的data操作,这是不符合预期的)
269
+ React.createElement(Tree, Object.assign({
249
270
  className: prefixCls + "__tree",
250
271
  selectable: false,
251
272
  checkable: true,
252
273
  checkOnSelect: true,
253
- checkedMode: checkedMode,
254
- checkedIds: value,
255
- onCheck: onSelect,
274
+ checkedMode: checkedMode === 'SEPARATE' ? 'SEPARATE' : 'ALL',
275
+ checkedIds: parsedCheckedIds,
276
+ onCheck: onCheck,
256
277
  // TODO: 支持 fieldNames
257
- // 禁用时被选中的样式处理
258
- onLoadChildren: onLoadChildren
278
+ // @ts-ignore
279
+ onLoadChildren: onLoadChildren,
280
+ fieldNames: fieldNames,
281
+ virtual: virtual,
282
+ itemHeight: itemHeight,
283
+ height: height
259
284
  }, treeProps)) : null);
260
285
  });
261
286
 
@@ -316,4 +341,3 @@ var getSemiCheckedIdsWithSet = function getSemiCheckedIdsWithSet(flattedData, is
316
341
  };
317
342
 
318
343
  export { CheckTreeSelect, getSemiCheckedIdsWithSet };
319
- //# sourceMappingURL=CheckTreeSelect.js.map
@@ -0,0 +1,82 @@
1
+ /** @LICENSE
2
+ * @hi-ui/check-tree-select
3
+ * https://github.com/XiaoMi/hiui/tree/master/packages/ui/check-tree-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
+ import { useState, useMemo, useCallback } from 'react';
11
+ import { useUncontrolledState } from '@hi-ui/use-uncontrolled-state';
12
+ import { useCascadeCheck } from '@hi-ui/use-check';
13
+ import { parseCheckDataDirty, processCheckedIds } from '../utils/index.js';
14
+ /**
15
+ * 用于 tree 组件复选的 hook
16
+ */
17
+
18
+ var useCheck = function useCheck(checkedMode, disabled, flattedData, defaultCheckedIds, checkedIdsProp, onCheck) {
19
+ // 搜索时临时选中缓存数据
20
+ var _useState = useState([]),
21
+ checkedNodes = _useState[0],
22
+ setCheckedNodes = _useState[1];
23
+
24
+ var _useUncontrolledState = useUncontrolledState(defaultCheckedIds, checkedIdsProp, function (checkedIds, checkedNode, checked, semiCheckedIds) {
25
+ var nextCheckedNodes = flattedData.filter(function (item) {
26
+ return checkedIds.includes(item.id);
27
+ });
28
+ setCheckedNodes(nextCheckedNodes);
29
+ onCheck === null || onCheck === void 0 ? void 0 : onCheck(checkedIds, {
30
+ checkedNodes: nextCheckedNodes.map(function (item) {
31
+ return item.raw;
32
+ }),
33
+ targetNode: checkedNode,
34
+ semiCheckedIds: semiCheckedIds,
35
+ checked: checked
36
+ });
37
+ }),
38
+ checkedIds = _useUncontrolledState[0],
39
+ trySetCheckedIds = _useUncontrolledState[1]; // 入口数据处理
40
+
41
+
42
+ var parsedCheckedIds = useMemo(function () {
43
+ return parseCheckDataDirty(checkedMode, checkedIds, flattedData, allowCheck);
44
+ }, [checkedMode, checkedIds, flattedData]);
45
+ var cascaded = checkedMode !== 'SEPARATE';
46
+
47
+ var _useCascadeCheck = useCascadeCheck({
48
+ cascaded: cascaded,
49
+ disabled: disabled,
50
+ flattedData: flattedData,
51
+ checkedIds: parsedCheckedIds,
52
+ onCheck: function onCheck(checkedIds, checkedNode, checked, semiCheckedIds) {
53
+ // 出口数据处理
54
+ var processedIds = processCheckedIds(checkedMode, checkedIds, flattedData, allowCheck);
55
+ trySetCheckedIds(processedIds, checkedNode, checked, semiCheckedIds);
56
+ },
57
+ allowCheck: allowCheck
58
+ }),
59
+ onNodeCheck = _useCascadeCheck[0];
60
+
61
+ var proxyOnNodeCheck = useCallback(function (target, shouldChecked) {
62
+ // 保证 target 来源于原数据自身,而不是tree内部
63
+ var targetNode = flattedData.find(function (item) {
64
+ return item.id === target.id;
65
+ });
66
+
67
+ if (targetNode) {
68
+ onNodeCheck(targetNode, shouldChecked);
69
+ }
70
+ }, [onNodeCheck, flattedData]);
71
+ return [checkedIds, trySetCheckedIds, proxyOnNodeCheck, checkedNodes, parsedCheckedIds];
72
+ };
73
+
74
+ var allowCheck = function allowCheck(targetItem) {
75
+ if (targetItem.disabled) {
76
+ return false;
77
+ }
78
+
79
+ return true;
80
+ };
81
+
82
+ export { useCheck };
package/lib/esm/index.js CHANGED
@@ -9,4 +9,3 @@
9
9
  */
10
10
  import './styles/index.scss.js';
11
11
  export { CheckTreeSelect, CheckTreeSelect as default, getSemiCheckedIdsWithSet } from './CheckTreeSelect.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";
11
-
12
- var __styleInject__ = require('style-inject/dist/style-inject.es.js')["default"];
10
+ import __styleInject__ from 'inject-head-style';
11
+ var css_248z = "";
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 };
@@ -0,0 +1,153 @@
1
+ /** @LICENSE
2
+ * @hi-ui/check-tree-select
3
+ * https://github.com/XiaoMi/hiui/tree/master/packages/ui/check-tree-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
+ import { fFindNodeById, getNodeAncestors, findNestedChildren } from '@hi-ui/tree-utils';
11
+ import { isArrayNonEmpty } from '@hi-ui/type-assertion';
12
+ /**
13
+ * 处理选中的回显数据
14
+ *
15
+ * @param checkedIds 当前所有被选中的节点 ID 集合
16
+ * @param nodeEntries 所有数据的Map 集合
17
+ * @param type 数据回显方式
18
+ */
19
+
20
+ var processCheckedIds = function processCheckedIds(type, checkedIds, flattenData, allowCheck) {
21
+ var keySet = new Set(checkedIds);
22
+
23
+ switch (type) {
24
+ case 'CHILD':
25
+ return checkedIds.filter(function (id) {
26
+ var node = fFindNodeById(flattenData, id);
27
+
28
+ if (node) {
29
+ var children = node.children;
30
+
31
+ if (isArrayNonEmpty(children)) {
32
+ if (children.filter(allowCheck).every(function (node) {
33
+ return keySet.has(node.id);
34
+ })) {
35
+ return false;
36
+ }
37
+ }
38
+ } // 没有孩子节点,保留
39
+
40
+
41
+ return true;
42
+ });
43
+
44
+ case 'PARENT':
45
+ return checkedIds.filter(function (id) {
46
+ var node = fFindNodeById(flattenData, id);
47
+
48
+ if (node) {
49
+ // 向上递归遍历是否被勾选
50
+ var ancestors = getNodeAncestors(node);
51
+
52
+ if (ancestors.some(function (parent) {
53
+ return keySet.has(parent.id);
54
+ })) {
55
+ return false;
56
+ }
57
+ }
58
+
59
+ return true;
60
+ });
61
+ }
62
+
63
+ return checkedIds;
64
+ };
65
+ /**
66
+ * 根据传入的 checkedIds 解析全选/半选数据
67
+ */
68
+
69
+
70
+ var parseCheckDataDirty = function parseCheckDataDirty(type, checkedIds, flattenData, allowCheck) {
71
+ switch (type) {
72
+ case 'CHILD':
73
+ case 'PARENT':
74
+ return dirtyCheck(checkedIds, flattenData, allowCheck);
75
+ }
76
+
77
+ return checkedIds;
78
+ };
79
+
80
+ function dirtyCheck(checkedIds, flattenData, allowCheck) {
81
+ var nodeEntities = flattenData.reduce(function (prev, cur) {
82
+ prev[cur.id] = cur;
83
+ return prev;
84
+ }, {});
85
+ var checkedIdsSet = new Set(checkedIds.filter(function (id) {
86
+ return !!nodeEntities[id];
87
+ }));
88
+ var depthEntities = new Map();
89
+ var maxDepth = 0; // Convert entities by depth for calculation
90
+
91
+ Object.keys(nodeEntities).forEach(function (id) {
92
+ var entity = nodeEntities[id];
93
+ var depth = entity.depth;
94
+ var depthSet = depthEntities.get(depth);
95
+
96
+ if (!depthSet) {
97
+ depthSet = new Set();
98
+ depthEntities.set(depth, depthSet);
99
+ }
100
+
101
+ depthSet.add(entity);
102
+ maxDepth = Math.max(maxDepth, depth);
103
+ });
104
+ return fillCheck(checkedIdsSet, depthEntities, nodeEntities, maxDepth, allowCheck);
105
+ }
106
+ /**
107
+ * 对 checkedIds 级联遗漏选项 id 填充
108
+ *
109
+ * 1. 把所有嵌套孩子节点 allowCheck 的都标记为 checked
110
+ * 2. 祖先节点从下至上维护 checked 状态
111
+ */
112
+
113
+
114
+ function fillCheck(checkedIds, depthEntities, nodeEntities, maxDepth, allowCheck) {
115
+ var checkedIdsSet = new Set(checkedIds);
116
+ checkedIdsSet.forEach(function (id) {
117
+ var checkedNode = nodeEntities[id];
118
+ var nestedChildren = findNestedChildren(checkedNode, allowCheck);
119
+ nestedChildren.forEach(function (child) {
120
+ checkedIdsSet.add(child.id);
121
+ });
122
+ }); // 缓存中间结果,优化查询
123
+
124
+ var visitedIds = new Map();
125
+
126
+ for (var depth = maxDepth - 1; depth >= 0; --depth) {
127
+ var entities = depthEntities.get(depth);
128
+ entities === null || entities === void 0 ? void 0 : entities.forEach(function (entity) {
129
+ var id = entity.id,
130
+ children = entity.children;
131
+ if (visitedIds.has(id)) return;
132
+
133
+ if (isArrayNonEmpty(children)) {
134
+ var shouldChecked = !children.some(function (child) {
135
+ if (visitedIds.has(child.id)) {
136
+ return !visitedIds.get(child.id);
137
+ }
138
+
139
+ return !checkedIdsSet.has(child.id);
140
+ });
141
+ visitedIds.set(id, shouldChecked);
142
+
143
+ if (shouldChecked && allowCheck(entity)) {
144
+ checkedIdsSet.add(id);
145
+ }
146
+ }
147
+ });
148
+ }
149
+
150
+ return Array.from(checkedIdsSet);
151
+ }
152
+
153
+ export { parseCheckDataDirty, processCheckedIds };
@@ -1,13 +1,12 @@
1
1
  import React from 'react';
2
- import { DataSourceFunc, FieldNames, CheckTreeSelectDataItem, CheckTreeSelectDataSource } from './types';
3
- import { FlattedTreeNodeData, TreeNodeEventData } from '@hi-ui/tree';
2
+ import { CheckTreeSelectDataItem, CheckTreeSelectItemEventData, CheckTreeSelectAppearanceEnum } from './types';
3
+ import { FlattedTreeNodeData } from '@hi-ui/tree';
4
4
  import { PickerProps } from '@hi-ui/picker';
5
- import { HiBaseAppearanceEnum } from '@hi-ui/core';
6
5
  /**
7
6
  * TODO: What is CheckTreeSelect
8
7
  */
9
8
  export declare const CheckTreeSelect: React.ForwardRefExoticComponent<CheckTreeSelectProps & React.RefAttributes<HTMLDivElement | null>>;
10
- export interface CheckTreeSelectProps extends Omit<PickerProps, 'data' | 'onChange' | 'value' | 'trigger'> {
9
+ export interface CheckTreeSelectProps extends Omit<PickerProps, 'data' | 'onChange' | 'value' | 'trigger' | 'scrollable'> {
11
10
  /**
12
11
  * 展示数据
13
12
  */
@@ -15,18 +14,15 @@ export interface CheckTreeSelectProps extends Omit<PickerProps, 'data' | 'onChan
15
14
  /**
16
15
  * 设置 data 中 id, title, disabled, children 对应的 key (3.0 新增) object - { title: 'title', id: 'id',disabled:'disabled', children: 'children'}
17
16
  */
18
- fieldNames?: FieldNames;
17
+ fieldNames?: Record<string, string>;
19
18
  /**
20
- * 数据回显模式 string
21
- * ALL: 所有被选中节点,不区分父子节点
19
+ * 多选数据交互时回填、回显模式
22
20
  * PARENT: 当所有子节点被选中时将只保留父节点
23
- * CHILD: 仅显示子节点
21
+ * ALL: 所有被选中节点,不区分父子节点(不支持异步数据加载勾选checkbox)
22
+ * CHILD: 仅显示子节点(不支持异步数据加载勾选checkbox)
23
+ * SEPARATE:父子完全独立受控
24
24
  */
25
- checkedMode?: 'ALL' | 'PARENT' | 'CHILD';
26
- /**
27
- * 数据选择类型
28
- */
29
- type?: 'single' | 'multiple';
25
+ checkedMode?: 'ALL' | 'PARENT' | 'CHILD' | 'SEPARATE';
30
26
  /**
31
27
  * 是否有边框
32
28
  */
@@ -80,19 +76,14 @@ export interface CheckTreeSelectProps extends Omit<PickerProps, 'data' | 'onChan
80
76
  /**
81
77
  * 自定义渲染节点的 title 内容
82
78
  */
83
- render?: (node: TreeNodeEventData) => React.ReactNode;
79
+ render?: (node: CheckTreeSelectItemEventData) => React.ReactNode;
84
80
  /**
85
81
  * 点击异步加载子项
86
82
  */
87
- onLoadChildren?: (node: TreeNodeEventData) => void | Promise<CheckTreeSelectDataItem[] | void>;
83
+ onLoadChildren?: (node: CheckTreeSelectItemEventData) => void | Promise<CheckTreeSelectDataItem[] | void>;
88
84
  /**
89
- * 从远端获取数据,初始时是否自动加载
85
+ * 异步加载数据。暂不对外暴露
90
86
  */
91
- autoload?: boolean;
92
- /**
93
- * 异步加载数据
94
- */
95
- dataSource?: DataSourceFunc | CheckTreeSelectDataSource | Promise<CheckTreeSelectDataItem[]>;
96
87
  /**
97
88
  * 没有选项时的提示
98
89
  */
@@ -109,13 +100,13 @@ export interface CheckTreeSelectProps extends Omit<PickerProps, 'data' | 'onChan
109
100
  * 选中时触发
110
101
  * checkedIds: 选中项 ID 集合
111
102
  * checkedNodes: 选中项数据项集合
112
- * targetNode: 当前操作节点
103
+ * targetNode: 当前操作节点,清空时为 null
113
104
  * checked: 当前操作是否为选中操作
114
105
  */
115
106
  onChange?: (checkedIds: React.ReactText[], options: {
116
107
  checkedNodes: CheckTreeSelectDataItem[];
117
108
  semiCheckedIds: React.ReactText[];
118
- targetNode: TreeNodeEventData;
109
+ targetNode: CheckTreeSelectItemEventData | null;
119
110
  checked: boolean;
120
111
  }) => void;
121
112
  /**
@@ -125,7 +116,21 @@ export interface CheckTreeSelectProps extends Omit<PickerProps, 'data' | 'onChan
125
116
  /**
126
117
  * 设置展现形式
127
118
  */
128
- appearance?: HiBaseAppearanceEnum;
119
+ appearance?: CheckTreeSelectAppearanceEnum;
120
+ /**
121
+ * 设置虚拟滚动容器的可视高度。暂不对外暴露
122
+ * @private
123
+ */
124
+ height?: number;
125
+ /**
126
+ * 设置虚拟列表每项的固定高度。暂不对外暴露
127
+ * @private
128
+ */
129
+ itemHeight?: number;
130
+ /**
131
+ * 设置 `true` 开启虚拟滚动
132
+ */
133
+ virtual?: boolean;
129
134
  }
130
135
  /**
131
136
  * 在 checkedIdsSet 为数据合法的情况下,查找所有的半选中态的节点 ids
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import { FlattedCheckTreeSelectDataItem, CheckTreeSelectItemEventData, CheckTreeSelectDataItem } from '../types';
3
+ /**
4
+ * 用于 tree 组件复选的 hook
5
+ */
6
+ export declare const useCheck: (checkedMode: string, disabled: boolean, flattedData: FlattedCheckTreeSelectDataItem[], defaultCheckedIds: React.ReactText[], checkedIdsProp?: React.ReactText[] | undefined, onCheck?: ((checkedIds: React.ReactText[], options: {
7
+ checkedNodes: CheckTreeSelectDataItem[];
8
+ semiCheckedIds: React.ReactText[];
9
+ targetNode: CheckTreeSelectItemEventData;
10
+ checked: boolean;
11
+ }) => void) | undefined) => readonly [React.ReactText[], (stateOrFunction: React.SetStateAction<React.ReactText[]>, ...args: any[]) => void, (target: FlattedCheckTreeSelectDataItem, shouldChecked: boolean) => void, FlattedCheckTreeSelectDataItem[], React.ReactText[]];
@@ -1,3 +1,4 @@
1
1
  import './styles/index.scss';
2
2
  export * from './CheckTreeSelect';
3
3
  export { CheckTreeSelect as default } from './CheckTreeSelect';
4
+ export * from './types';
@@ -1,21 +1,49 @@
1
+ import type { HiBaseAppearanceEnum, HiBaseDataItem } from '@hi-ui/core';
1
2
  import React from 'react';
2
- export interface CheckTreeSelectDataItem {
3
+ import { TreeNodeEventData } from '@hi-ui/tree';
4
+ export interface CheckTreeSelectDataItem extends HiBaseDataItem {
3
5
  /**
4
6
  * 节点唯一 id
5
7
  */
6
- id: React.ReactText;
8
+ id?: React.ReactText;
7
9
  /**
8
10
  * 节点标题
9
11
  */
10
- title: React.ReactNode;
12
+ title?: React.ReactNode;
11
13
  /**
12
- * 子级数据
14
+ * 子级数据列表
13
15
  */
14
16
  children?: CheckTreeSelectDataItem[];
15
17
  /**
16
- * 是否禁用
18
+ * 是否禁用该节点
17
19
  */
18
20
  disabled?: boolean;
21
+ /**
22
+ * 是否为叶子节点,当 children 为空数组也表示为叶子结点
23
+ */
24
+ isLeaf?: boolean;
25
+ }
26
+ export interface FlattedCheckTreeSelectDataItem extends CheckTreeSelectDataItem {
27
+ /**
28
+ * 节点唯一 id
29
+ */
30
+ id: React.ReactText;
31
+ /**
32
+ * 该节点的子节点列表
33
+ */
34
+ children?: FlattedCheckTreeSelectDataItem[];
35
+ /**
36
+ * 关联用户传入的原始数据对象
37
+ */
38
+ raw: CheckTreeSelectDataItem;
39
+ /**
40
+ * 该节点的层级,从 0(顶层)开始
41
+ */
42
+ depth: number;
43
+ /**
44
+ * 该节点的父节点
45
+ */
46
+ parent?: FlattedCheckTreeSelectDataItem;
19
47
  }
20
48
  export interface CheckTreeSelectDataSource<T = any> {
21
49
  /**
@@ -47,11 +75,6 @@ export interface CheckTreeSelectDataSource<T = any> {
47
75
  */
48
76
  transformResponse?: (response: object) => T;
49
77
  }
50
- export declare type FilterOptionFunc = (keyword: string, item: CheckTreeSelectDataItem) => boolean;
51
- export declare type DataSourceFunc = (keyword: string) => CheckTreeSelectDataSource;
52
- export declare type FieldNames = {
53
- id?: string;
54
- title?: string;
55
- disabled?: string;
56
- children?: string;
57
- };
78
+ export interface CheckTreeSelectItemEventData extends TreeNodeEventData {
79
+ }
80
+ export declare type CheckTreeSelectAppearanceEnum = HiBaseAppearanceEnum | undefined;