@aloudata/aloudata-design 3.1.6 → 3.2.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (824) hide show
  1. package/README.md +43 -1
  2. package/dist/AMenu/index.d.ts +1 -1
  3. package/dist/AMenu/index.js +71 -41
  4. package/dist/AMenu/index.js.map +1 -1
  5. package/dist/AMenu.js +2 -0
  6. package/dist/AProgress/index.d.ts +1 -1
  7. package/dist/AProgress/index.js +201 -68
  8. package/dist/AProgress/index.js.map +1 -1
  9. package/dist/AProgress.js +2 -0
  10. package/dist/Alert/index.d.ts +1 -1
  11. package/dist/Alert/index.js +108 -41
  12. package/dist/Alert/index.js.map +1 -1
  13. package/dist/Alert.js +2 -0
  14. package/dist/App/index.js +67 -9
  15. package/dist/App/index.js.map +1 -1
  16. package/dist/App.js +2 -0
  17. package/dist/Avatar/component/Avatar/helper.d.ts +2 -2
  18. package/dist/Avatar/component/Avatar/helper.js.map +1 -1
  19. package/dist/Avatar/component/Avatar/index.d.ts +1 -1
  20. package/dist/Avatar/component/Avatar/index.js +164 -59
  21. package/dist/Avatar/component/Avatar/index.js.map +1 -1
  22. package/dist/Avatar/component/Avatar/type.d.ts +0 -1
  23. package/dist/Avatar/component/Avatar/type.js.map +1 -1
  24. package/dist/Avatar/component/Avatar.js +2 -0
  25. package/dist/Avatar/index.d.ts +1 -1
  26. package/dist/Avatar/index.js +103 -30
  27. package/dist/Avatar/index.js.map +1 -1
  28. package/dist/Avatar.js +2 -0
  29. package/dist/Badge/index.d.ts +1 -1
  30. package/dist/Badge/index.js +153 -34
  31. package/dist/Badge/index.js.map +1 -1
  32. package/dist/Badge.js +2 -0
  33. package/dist/Breadcrumb/index.d.ts +1 -1
  34. package/dist/Breadcrumb/index.js +81 -28
  35. package/dist/Breadcrumb/index.js.map +1 -1
  36. package/dist/Breadcrumb.js +2 -0
  37. package/dist/Button/index.d.ts +3 -2
  38. package/dist/Button/index.js +238 -57
  39. package/dist/Button/index.js.map +1 -1
  40. package/dist/Button.js +2 -0
  41. package/dist/Card/index.d.ts +3 -3
  42. package/dist/Card/index.js +180 -54
  43. package/dist/Card/index.js.map +1 -1
  44. package/dist/Card.js +2 -0
  45. package/dist/Carousel/index.js +232 -92
  46. package/dist/Carousel/index.js.map +1 -1
  47. package/dist/Carousel.js +2 -0
  48. package/dist/Checkbox/component/CheckboxGroup/index.d.ts +1 -1
  49. package/dist/Checkbox/component/CheckboxGroup.js +2 -0
  50. package/dist/Checkbox/index.d.ts +3 -2
  51. package/dist/Checkbox/index.js +311 -107
  52. package/dist/Checkbox/index.js.map +1 -1
  53. package/dist/Checkbox/type.d.ts +0 -1
  54. package/dist/Checkbox.js +2 -0
  55. package/dist/Col/index.d.ts +1 -1
  56. package/dist/Col/index.js +106 -43
  57. package/dist/Col/index.js.map +1 -1
  58. package/dist/Col.js +2 -0
  59. package/dist/Collapse/index.d.ts +1 -1
  60. package/dist/Collapse/index.js +439 -159
  61. package/dist/Collapse/index.js.map +1 -1
  62. package/dist/Collapse.js +2 -0
  63. package/dist/ColorPicker/ComplexColorPicker/ColorAlphaInput.d.ts +1 -1
  64. package/dist/ColorPicker/ComplexColorPicker/ColorAlphaInput.js +68 -19
  65. package/dist/ColorPicker/ComplexColorPicker/ColorAlphaInput.js.map +1 -1
  66. package/dist/ColorPicker/ComplexColorPicker/ColorHexInput.d.ts +1 -1
  67. package/dist/ColorPicker/ComplexColorPicker/ColorHexInput.js +52 -17
  68. package/dist/ColorPicker/ComplexColorPicker/ColorHexInput.js.map +1 -1
  69. package/dist/ColorPicker/ComplexColorPicker/ColorHsbInput.d.ts +1 -1
  70. package/dist/ColorPicker/ComplexColorPicker/ColorHsbInput.js +159 -44
  71. package/dist/ColorPicker/ComplexColorPicker/ColorHsbInput.js.map +1 -1
  72. package/dist/ColorPicker/ComplexColorPicker/ColorInput.d.ts +2 -2
  73. package/dist/ColorPicker/ComplexColorPicker/ColorInput.js +130 -48
  74. package/dist/ColorPicker/ComplexColorPicker/ColorInput.js.map +1 -1
  75. package/dist/ColorPicker/ComplexColorPicker/ColorRgbInput.d.ts +1 -1
  76. package/dist/ColorPicker/ComplexColorPicker/ColorRgbInput.js +147 -41
  77. package/dist/ColorPicker/ComplexColorPicker/ColorRgbInput.js.map +1 -1
  78. package/dist/ColorPicker/ComplexColorPicker/ColorSteppers.d.ts +1 -1
  79. package/dist/ColorPicker/ComplexColorPicker/ColorSteppers.js +56 -14
  80. package/dist/ColorPicker/ComplexColorPicker/ColorSteppers.js.map +1 -1
  81. package/dist/ColorPicker/ComplexColorPicker/index.d.ts +3 -2
  82. package/dist/ColorPicker/ComplexColorPicker/index.js +113 -50
  83. package/dist/ColorPicker/ComplexColorPicker/index.js.map +1 -1
  84. package/dist/ColorPicker/ComplexColorPicker.js +2 -0
  85. package/dist/ColorPicker/color.js.map +1 -1
  86. package/dist/ColorPicker/constant.js.map +1 -1
  87. package/dist/ColorPicker/hooks/useColor.d.ts +2 -2
  88. package/dist/ColorPicker/hooks/useColor.js +37 -10
  89. package/dist/ColorPicker/hooks/useColor.js.map +1 -1
  90. package/dist/ColorPicker/index.d.ts +1 -1
  91. package/dist/ColorPicker/index.js +341 -117
  92. package/dist/ColorPicker/index.js.map +1 -1
  93. package/dist/ColorPicker/interface.d.ts +3 -3
  94. package/dist/ColorPicker/interface.js.map +1 -1
  95. package/dist/ColorPicker/util.js.map +1 -1
  96. package/dist/ColorPicker.js +2 -0
  97. package/dist/ConfigProvider/DisabledContext.d.ts +0 -1
  98. package/dist/ConfigProvider/DisabledContext.js.map +1 -1
  99. package/dist/ConfigProvider/getUserList.d.ts +48 -1
  100. package/dist/ConfigProvider/getUserList.js +1 -0
  101. package/dist/ConfigProvider/getUserList.js.map +1 -1
  102. package/dist/ConfigProvider/hooks/useGetUserList.d.ts +12 -5
  103. package/dist/ConfigProvider/hooks/useGetUserList.js +26 -7
  104. package/dist/ConfigProvider/hooks/useGetUserList.js.map +1 -1
  105. package/dist/ConfigProvider/index.d.ts +9 -5
  106. package/dist/ConfigProvider/index.js +101 -33
  107. package/dist/ConfigProvider/index.js.map +1 -1
  108. package/dist/ConfigProvider/sizeContext.js +16 -4
  109. package/dist/ConfigProvider/sizeContext.js.map +1 -1
  110. package/dist/ConfigProvider.js +2 -0
  111. package/dist/DataPreviewTable/components/Body/Cell.d.ts +2 -2
  112. package/dist/DataPreviewTable/components/Body/Cell.js +95 -32
  113. package/dist/DataPreviewTable/components/Body/Cell.js.map +1 -1
  114. package/dist/DataPreviewTable/components/Body/Error.d.ts +1 -1
  115. package/dist/DataPreviewTable/components/Body/Error.js.map +1 -1
  116. package/dist/DataPreviewTable/components/Body/index.d.ts +2 -2
  117. package/dist/DataPreviewTable/components/Body/index.js +76 -40
  118. package/dist/DataPreviewTable/components/Body/index.js.map +1 -1
  119. package/dist/DataPreviewTable/components/Body.js +2 -0
  120. package/dist/DataPreviewTable/components/DragBar/Mask.d.ts +2 -1
  121. package/dist/DataPreviewTable/components/DragBar/Mask.js +43 -22
  122. package/dist/DataPreviewTable/components/DragBar/Mask.js.map +1 -1
  123. package/dist/DataPreviewTable/components/DragBar/index.d.ts +1 -1
  124. package/dist/DataPreviewTable/components/DragBar/index.js +79 -29
  125. package/dist/DataPreviewTable/components/DragBar/index.js.map +1 -1
  126. package/dist/DataPreviewTable/components/DragBar.js +2 -0
  127. package/dist/DataPreviewTable/components/Header/index.d.ts +3 -2
  128. package/dist/DataPreviewTable/components/Header/index.js +60 -12
  129. package/dist/DataPreviewTable/components/Header/index.js.map +1 -1
  130. package/dist/DataPreviewTable/components/Header.js +2 -0
  131. package/dist/DataPreviewTable/constant.js.map +1 -1
  132. package/dist/DataPreviewTable/hooks/useDirection.d.ts +2 -2
  133. package/dist/DataPreviewTable/hooks/useDirection.js +253 -148
  134. package/dist/DataPreviewTable/hooks/useDirection.js.map +1 -1
  135. package/dist/DataPreviewTable/index.d.ts +1 -1
  136. package/dist/DataPreviewTable/index.js +3 -3
  137. package/dist/DataPreviewTable/index.js.map +1 -1
  138. package/dist/DataPreviewTable/interface.js.map +1 -1
  139. package/dist/DataPreviewTable/utils/findRange.js.map +1 -1
  140. package/dist/DataPreviewTable/utils/getColumnRange.d.ts +2 -2
  141. package/dist/DataPreviewTable/utils/getColumnRange.js.map +1 -1
  142. package/dist/DataPreviewTable/utils/getRowRange.d.ts +2 -2
  143. package/dist/DataPreviewTable/utils/getRowRange.js.map +1 -1
  144. package/dist/DataPreviewTable/utils/getTableLayout.d.ts +1 -1
  145. package/dist/DataPreviewTable/utils/getTableLayout.js.map +1 -1
  146. package/dist/DataPreviewTable.js +2 -0
  147. package/dist/DatePicker/index.d.ts +4 -3
  148. package/dist/DatePicker/index.js +350 -86
  149. package/dist/DatePicker/index.js.map +1 -1
  150. package/dist/DatePicker.js +2 -0
  151. package/dist/Divider/index.d.ts +2 -1
  152. package/dist/Divider/index.js +44 -8
  153. package/dist/Divider/index.js.map +1 -1
  154. package/dist/Divider.js +2 -0
  155. package/dist/DoubleCircleIcon/index.d.ts +2 -2
  156. package/dist/DoubleCircleIcon.js +2 -0
  157. package/dist/Drawer/index.d.ts +1 -1
  158. package/dist/Drawer/index.js +336 -122
  159. package/dist/Drawer/index.js.map +1 -1
  160. package/dist/Drawer.js +2 -0
  161. package/dist/Dropdown/index.d.ts +9 -4
  162. package/dist/Dropdown/index.js +53 -40
  163. package/dist/Dropdown/index.js.map +1 -1
  164. package/dist/Dropdown.js +2 -0
  165. package/dist/Empty/image/Data.d.ts +2 -1
  166. package/dist/Empty/image/Data.js +297 -234
  167. package/dist/Empty/image/Data.js.map +1 -1
  168. package/dist/Empty/image/Search.d.ts +2 -1
  169. package/dist/Empty/image/Search.js +14 -7
  170. package/dist/Empty/image/Search.js.map +1 -1
  171. package/dist/Empty/image/SearchSmall.d.ts +2 -1
  172. package/dist/Empty/image/SearchSmall.js +35 -23
  173. package/dist/Empty/image/SearchSmall.js.map +1 -1
  174. package/dist/Empty/image/User.d.ts +2 -1
  175. package/dist/Empty/image/User.js +277 -224
  176. package/dist/Empty/image/User.js.map +1 -1
  177. package/dist/Empty/image/WorkBook.d.ts +2 -1
  178. package/dist/Empty/image/WorkBook.js +254 -206
  179. package/dist/Empty/image/WorkBook.js.map +1 -1
  180. package/dist/Empty/index.js.map +1 -1
  181. package/dist/Empty.js +2 -0
  182. package/dist/Form/FormItemContext.d.ts +0 -1
  183. package/dist/Form/FormItemContext.js.map +1 -1
  184. package/dist/Form/hooks/useFormItemStatus.d.ts +1 -1
  185. package/dist/Form/index.d.ts +35 -19
  186. package/dist/Form/index.js +635 -186
  187. package/dist/Form/index.js.map +1 -1
  188. package/dist/Form.js +2 -0
  189. package/dist/HighlightText/index.d.ts +1 -1
  190. package/dist/HighlightText/index.js +83 -13
  191. package/dist/HighlightText/index.js.map +1 -1
  192. package/dist/HighlightText.js +2 -0
  193. package/dist/Icon/components/AlertTriangleDuotone.d.ts +1 -1
  194. package/dist/Icon/components/AlertTriangleDuotone.js +81 -20
  195. package/dist/Icon/components/AlertTriangleDuotone.js.map +1 -1
  196. package/dist/Icon/components/AlertTriangleLine.d.ts +1 -1
  197. package/dist/Icon/components/AlertTriangleLine.js +81 -20
  198. package/dist/Icon/components/AlertTriangleLine.js.map +1 -1
  199. package/dist/Icon/components/ArrowDownFill.d.ts +1 -1
  200. package/dist/Icon/components/ArrowDownFill.js +81 -20
  201. package/dist/Icon/components/ArrowDownFill.js.map +1 -1
  202. package/dist/Icon/components/ArrowDownLightLine.d.ts +1 -1
  203. package/dist/Icon/components/ArrowDownLightLine.js +81 -20
  204. package/dist/Icon/components/ArrowDownLightLine.js.map +1 -1
  205. package/dist/Icon/components/ArrowDownRightFill.d.ts +1 -1
  206. package/dist/Icon/components/ArrowDownRightFill.js +81 -20
  207. package/dist/Icon/components/ArrowDownRightFill.js.map +1 -1
  208. package/dist/Icon/components/ArrowRightLightLine.d.ts +1 -1
  209. package/dist/Icon/components/ArrowRightLightLine.js +81 -20
  210. package/dist/Icon/components/ArrowRightLightLine.js.map +1 -1
  211. package/dist/Icon/components/AttentionCircleFill.d.ts +1 -1
  212. package/dist/Icon/components/AttentionCircleFill.js +81 -20
  213. package/dist/Icon/components/AttentionCircleFill.js.map +1 -1
  214. package/dist/Icon/components/AttentionTriangleFill.d.ts +1 -1
  215. package/dist/Icon/components/AttentionTriangleFill.js +81 -20
  216. package/dist/Icon/components/AttentionTriangleFill.js.map +1 -1
  217. package/dist/Icon/components/AttentionTriangleLightLine.d.ts +1 -1
  218. package/dist/Icon/components/AttentionTriangleLightLine.js +81 -20
  219. package/dist/Icon/components/AttentionTriangleLightLine.js.map +1 -1
  220. package/dist/Icon/components/CancelCircleDuotone.d.ts +1 -1
  221. package/dist/Icon/components/CancelCircleDuotone.js +92 -23
  222. package/dist/Icon/components/CancelCircleDuotone.js.map +1 -1
  223. package/dist/Icon/components/CancelledCircleFill.d.ts +1 -1
  224. package/dist/Icon/components/CancelledCircleFill.js +81 -20
  225. package/dist/Icon/components/CancelledCircleFill.js.map +1 -1
  226. package/dist/Icon/components/CheckCircleDuotone.d.ts +1 -1
  227. package/dist/Icon/components/CheckCircleDuotone.js +92 -23
  228. package/dist/Icon/components/CheckCircleDuotone.js.map +1 -1
  229. package/dist/Icon/components/CheckCircleFill.d.ts +1 -1
  230. package/dist/Icon/components/CheckCircleFill.js +81 -20
  231. package/dist/Icon/components/CheckCircleFill.js.map +1 -1
  232. package/dist/Icon/components/CheckCircleLightLine.d.ts +1 -1
  233. package/dist/Icon/components/CheckCircleLightLine.js +97 -25
  234. package/dist/Icon/components/CheckCircleLightLine.js.map +1 -1
  235. package/dist/Icon/components/CheckLightLine.d.ts +1 -1
  236. package/dist/Icon/components/CheckLightLine.js +81 -20
  237. package/dist/Icon/components/CheckLightLine.js.map +1 -1
  238. package/dist/Icon/components/ChevronDownLine.d.ts +1 -1
  239. package/dist/Icon/components/ChevronDownLine.js +81 -20
  240. package/dist/Icon/components/ChevronDownLine.js.map +1 -1
  241. package/dist/Icon/components/ChevronLeftLine.d.ts +1 -1
  242. package/dist/Icon/components/ChevronLeftLine.js +81 -20
  243. package/dist/Icon/components/ChevronLeftLine.js.map +1 -1
  244. package/dist/Icon/components/ChevronRightLine.d.ts +1 -1
  245. package/dist/Icon/components/ChevronRightLine.js +81 -20
  246. package/dist/Icon/components/ChevronRightLine.js.map +1 -1
  247. package/dist/Icon/components/CircleLightLine.d.ts +1 -1
  248. package/dist/Icon/components/CircleLightLine.js +97 -25
  249. package/dist/Icon/components/CircleLightLine.js.map +1 -1
  250. package/dist/Icon/components/CloseCircleFill.d.ts +1 -1
  251. package/dist/Icon/components/CloseCircleFill.js +81 -20
  252. package/dist/Icon/components/CloseCircleFill.js.map +1 -1
  253. package/dist/Icon/components/CloseCircleLightLine.d.ts +1 -1
  254. package/dist/Icon/components/CloseCircleLightLine.js +81 -20
  255. package/dist/Icon/components/CloseCircleLightLine.js.map +1 -1
  256. package/dist/Icon/components/CloseCircleRightFill.d.ts +1 -1
  257. package/dist/Icon/components/CloseCircleRightFill.js +81 -20
  258. package/dist/Icon/components/CloseCircleRightFill.js.map +1 -1
  259. package/dist/Icon/components/CloseLLine.d.ts +1 -1
  260. package/dist/Icon/components/CloseLLine.js +81 -20
  261. package/dist/Icon/components/CloseLLine.js.map +1 -1
  262. package/dist/Icon/components/CloseLightLine.d.ts +1 -1
  263. package/dist/Icon/components/CloseLightLine.js +81 -20
  264. package/dist/Icon/components/CloseLightLine.js.map +1 -1
  265. package/dist/Icon/components/CloseMLine.d.ts +1 -1
  266. package/dist/Icon/components/CloseMLine.js +81 -20
  267. package/dist/Icon/components/CloseMLine.js.map +1 -1
  268. package/dist/Icon/components/DangerFill.d.ts +1 -1
  269. package/dist/Icon/components/DangerFill.js +81 -20
  270. package/dist/Icon/components/DangerFill.js.map +1 -1
  271. package/dist/Icon/components/DragLightLine.d.ts +1 -1
  272. package/dist/Icon/components/DragLightLine.js +81 -20
  273. package/dist/Icon/components/DragLightLine.js.map +1 -1
  274. package/dist/Icon/components/DragLine.d.ts +1 -1
  275. package/dist/Icon/components/DragLine.js +81 -20
  276. package/dist/Icon/components/DragLine.js.map +1 -1
  277. package/dist/Icon/components/Ellipsis.d.ts +1 -1
  278. package/dist/Icon/components/Ellipsis.js +81 -20
  279. package/dist/Icon/components/Ellipsis.js.map +1 -1
  280. package/dist/Icon/components/EyeOffLine.d.ts +1 -1
  281. package/dist/Icon/components/EyeOffLine.js +81 -20
  282. package/dist/Icon/components/EyeOffLine.js.map +1 -1
  283. package/dist/Icon/components/EyeOnLine.d.ts +1 -1
  284. package/dist/Icon/components/EyeOnLine.js +107 -31
  285. package/dist/Icon/components/EyeOnLine.js.map +1 -1
  286. package/dist/Icon/components/FoldDownFill.d.ts +1 -1
  287. package/dist/Icon/components/FoldDownFill.js +87 -21
  288. package/dist/Icon/components/FoldDownFill.js.map +1 -1
  289. package/dist/Icon/components/FoldUpFill.d.ts +1 -1
  290. package/dist/Icon/components/FoldUpFill.js +87 -21
  291. package/dist/Icon/components/FoldUpFill.js.map +1 -1
  292. package/dist/Icon/components/InProgressFill.d.ts +1 -1
  293. package/dist/Icon/components/InProgressFill.js +77 -19
  294. package/dist/Icon/components/InProgressFill.js.map +1 -1
  295. package/dist/Icon/components/InfoCircleDuotone.d.ts +1 -1
  296. package/dist/Icon/components/InfoCircleDuotone.js +81 -20
  297. package/dist/Icon/components/InfoCircleDuotone.js.map +1 -1
  298. package/dist/Icon/components/InfoCircleLine.d.ts +1 -1
  299. package/dist/Icon/components/InfoCircleLine.js +81 -20
  300. package/dist/Icon/components/InfoCircleLine.js.map +1 -1
  301. package/dist/Icon/components/InformationCircleFill.d.ts +1 -1
  302. package/dist/Icon/components/InformationCircleFill.js +81 -20
  303. package/dist/Icon/components/InformationCircleFill.js.map +1 -1
  304. package/dist/Icon/components/InformationCircleLightLine.d.ts +1 -1
  305. package/dist/Icon/components/InformationCircleLightLine.js +97 -25
  306. package/dist/Icon/components/InformationCircleLightLine.js.map +1 -1
  307. package/dist/Icon/components/Loading2Line.d.ts +1 -1
  308. package/dist/Icon/components/Loading2Line.js +81 -20
  309. package/dist/Icon/components/Loading2Line.js.map +1 -1
  310. package/dist/Icon/components/LoadingDuotone.d.ts +1 -1
  311. package/dist/Icon/components/LoadingDuotone.js +96 -24
  312. package/dist/Icon/components/LoadingDuotone.js.map +1 -1
  313. package/dist/Icon/components/LoadingLine.d.ts +1 -1
  314. package/dist/Icon/components/LoadingLine.js +81 -20
  315. package/dist/Icon/components/LoadingLine.js.map +1 -1
  316. package/dist/Icon/components/MoreVerticalLine.d.ts +1 -1
  317. package/dist/Icon/components/MoreVerticalLine.js +81 -20
  318. package/dist/Icon/components/MoreVerticalLine.js.map +1 -1
  319. package/dist/Icon/components/SearchLine.d.ts +1 -1
  320. package/dist/Icon/components/SearchLine.js +81 -20
  321. package/dist/Icon/components/SearchLine.js.map +1 -1
  322. package/dist/Icon/components/SignLightLine.d.ts +1 -1
  323. package/dist/Icon/components/SignLightLine.js +81 -20
  324. package/dist/Icon/components/SignLightLine.js.map +1 -1
  325. package/dist/Icon/components/SortAscendingOrderColor.d.ts +1 -1
  326. package/dist/Icon/components/SortAscendingOrderColor.js +88 -22
  327. package/dist/Icon/components/SortAscendingOrderColor.js.map +1 -1
  328. package/dist/Icon/components/SortColor.d.ts +1 -1
  329. package/dist/Icon/components/SortColor.js +81 -20
  330. package/dist/Icon/components/SortColor.js.map +1 -1
  331. package/dist/Icon/components/SortDescendingOrderColor.d.ts +1 -1
  332. package/dist/Icon/components/SortDescendingOrderColor.js +88 -22
  333. package/dist/Icon/components/SortDescendingOrderColor.js.map +1 -1
  334. package/dist/Icon/components/TimesLightLine.d.ts +1 -1
  335. package/dist/Icon/components/TimesLightLine.js +81 -20
  336. package/dist/Icon/components/TimesLightLine.js.map +1 -1
  337. package/dist/Icon/components/TrashLightLine.d.ts +1 -1
  338. package/dist/Icon/components/TrashLightLine.js +97 -25
  339. package/dist/Icon/components/TrashLightLine.js.map +1 -1
  340. package/dist/Icon/components/TriangleLightLine.d.ts +1 -1
  341. package/dist/Icon/components/TriangleLightLine.js +81 -20
  342. package/dist/Icon/components/TriangleLightLine.js.map +1 -1
  343. package/dist/Icon/components/User.d.ts +1 -1
  344. package/dist/Icon/components/User.js +85 -21
  345. package/dist/Icon/components/User.js.map +1 -1
  346. package/dist/Icon/components/UserGroup.d.ts +1 -1
  347. package/dist/Icon/components/UserGroup.js +85 -21
  348. package/dist/Icon/components/UserGroup.js.map +1 -1
  349. package/dist/Icon.d.ts +0 -1
  350. package/dist/Icon.js +1 -0
  351. package/dist/IconButton/index.d.ts +6 -5
  352. package/dist/IconButton/index.js +303 -73
  353. package/dist/IconButton/index.js.map +1 -1
  354. package/dist/IconButton.js +2 -0
  355. package/dist/Input/components/Input/index.d.ts +1 -1
  356. package/dist/Input/components/Input/index.js +407 -108
  357. package/dist/Input/components/Input/index.js.map +1 -1
  358. package/dist/Input/components/Input.js +2 -0
  359. package/dist/Input/components/Password/index.d.ts +1 -1
  360. package/dist/Input/components/Password/index.js +71 -10
  361. package/dist/Input/components/Password/index.js.map +1 -1
  362. package/dist/Input/components/Password.js +2 -0
  363. package/dist/Input/components/TextArea/index.d.ts +2 -2
  364. package/dist/Input/components/TextArea/index.js +323 -67
  365. package/dist/Input/components/TextArea/index.js.map +1 -1
  366. package/dist/Input/components/TextArea.js +2 -0
  367. package/dist/Input/index.js.map +1 -1
  368. package/dist/Input/privateSemanticOwner.d.ts +2 -2
  369. package/dist/Input.js +2 -0
  370. package/dist/InputNumber/index.d.ts +2 -1
  371. package/dist/InputNumber/index.js +13 -13
  372. package/dist/InputNumber/index.js.map +1 -1
  373. package/dist/InputNumber/type.d.ts +0 -1
  374. package/dist/InputNumber.js +2 -0
  375. package/dist/InputSearch/index.d.ts +1 -1
  376. package/dist/InputSearch/index.js +213 -78
  377. package/dist/InputSearch/index.js.map +1 -1
  378. package/dist/InputSearch.js +2 -0
  379. package/dist/Layout/index.js +115 -28
  380. package/dist/Layout/index.js.map +1 -1
  381. package/dist/Layout.js +2 -0
  382. package/dist/List/Item.js +105 -21
  383. package/dist/List/Item.js.map +1 -1
  384. package/dist/List/index.d.ts +2 -2
  385. package/dist/List/index.js +11 -11
  386. package/dist/List/index.js.map +1 -1
  387. package/dist/List.js +2 -0
  388. package/dist/LogicTree/DisplayLogicTree.d.ts +1 -1
  389. package/dist/LogicTree/DisplayLogicTree.js +17 -6
  390. package/dist/LogicTree/DisplayLogicTree.js.map +1 -1
  391. package/dist/LogicTree/components/DisplayLogicItem/index.d.ts +2 -2
  392. package/dist/LogicTree/components/DisplayLogicItem/index.js +124 -38
  393. package/dist/LogicTree/components/DisplayLogicItem/index.js.map +1 -1
  394. package/dist/LogicTree/components/DisplayLogicItem.d.ts +0 -1
  395. package/dist/LogicTree/components/DisplayLogicItem.js +1 -0
  396. package/dist/LogicTree/components/LogicItem/index.d.ts +4 -3
  397. package/dist/LogicTree/components/LogicItem/index.js +60 -58
  398. package/dist/LogicTree/components/LogicItem/index.js.map +1 -1
  399. package/dist/LogicTree/components/LogicItem.js +2 -0
  400. package/dist/LogicTree/helper.js.map +1 -1
  401. package/dist/LogicTree/index.d.ts +1 -1
  402. package/dist/LogicTree/index.js +205 -66
  403. package/dist/LogicTree/index.js.map +1 -1
  404. package/dist/LogicTree/type.js.map +1 -1
  405. package/dist/LogicTree.js +2 -0
  406. package/dist/MemberPicker/components/MemberSelection.d.ts +2 -2
  407. package/dist/MemberPicker/components/MemberSelection.js +4 -4
  408. package/dist/MemberPicker/components/MemberSelection.js.map +1 -1
  409. package/dist/MemberPicker/components/MultipleOption.d.ts +5 -3
  410. package/dist/MemberPicker/components/MultipleOption.js +178 -42
  411. package/dist/MemberPicker/components/MultipleOption.js.map +1 -1
  412. package/dist/MemberPicker/components/NickLabel.d.ts +6 -1
  413. package/dist/MemberPicker/components/NickLabel.js +70 -11
  414. package/dist/MemberPicker/components/NickLabel.js.map +1 -1
  415. package/dist/MemberPicker/components/Panel.d.ts +8 -4
  416. package/dist/MemberPicker/components/Panel.js +202 -103
  417. package/dist/MemberPicker/components/Panel.js.map +1 -1
  418. package/dist/MemberPicker/components/PanelWrapper.d.ts +4 -4
  419. package/dist/MemberPicker/components/PanelWrapper.js +197 -82
  420. package/dist/MemberPicker/components/PanelWrapper.js.map +1 -1
  421. package/dist/MemberPicker/components/SearchFeedback.d.ts +8 -0
  422. package/dist/MemberPicker/components/SearchFeedback.js +76 -0
  423. package/dist/MemberPicker/components/SearchFeedback.js.map +1 -0
  424. package/dist/MemberPicker/components/SelectedMemberTags.d.ts +4 -4
  425. package/dist/MemberPicker/components/SelectedMemberTags.js +148 -64
  426. package/dist/MemberPicker/components/SelectedMemberTags.js.map +1 -1
  427. package/dist/MemberPicker/components/SelectorFooter.d.ts +2 -2
  428. package/dist/MemberPicker/components/SelectorFooter.js +42 -22
  429. package/dist/MemberPicker/components/SelectorFooter.js.map +1 -1
  430. package/dist/MemberPicker/components/SingleOption.d.ts +5 -3
  431. package/dist/MemberPicker/components/SingleOption.js +157 -36
  432. package/dist/MemberPicker/components/SingleOption.js.map +1 -1
  433. package/dist/MemberPicker/components/UserGroupSelection.d.ts +5 -2
  434. package/dist/MemberPicker/components/UserGroupSelection.js +335 -155
  435. package/dist/MemberPicker/components/UserGroupSelection.js.map +1 -1
  436. package/dist/MemberPicker/dialog/DialogColumns.d.ts +5 -0
  437. package/dist/MemberPicker/dialog/DialogColumns.js +119 -0
  438. package/dist/MemberPicker/dialog/DialogColumns.js.map +1 -0
  439. package/dist/MemberPicker/dialog/DialogContent.d.ts +3 -0
  440. package/dist/MemberPicker/dialog/DialogContent.js +270 -0
  441. package/dist/MemberPicker/dialog/DialogContent.js.map +1 -0
  442. package/dist/MemberPicker/dialog/MemberOption.d.ts +16 -0
  443. package/dist/MemberPicker/dialog/MemberOption.js +269 -0
  444. package/dist/MemberPicker/dialog/MemberOption.js.map +1 -0
  445. package/dist/MemberPicker/dialog/MemberPickerDialog.d.ts +11 -0
  446. package/dist/MemberPicker/dialog/MemberPickerDialog.js +19 -0
  447. package/dist/MemberPicker/dialog/MemberPickerDialog.js.map +1 -0
  448. package/dist/MemberPicker/dialog/SelectedMemberPanel.d.ts +12 -0
  449. package/dist/MemberPicker/dialog/SelectedMemberPanel.js +77 -0
  450. package/dist/MemberPicker/dialog/SelectedMemberPanel.js.map +1 -0
  451. package/dist/MemberPicker/dialog/UserCandidatePanel.d.ts +13 -0
  452. package/dist/MemberPicker/dialog/UserCandidatePanel.js +168 -0
  453. package/dist/MemberPicker/dialog/UserCandidatePanel.js.map +1 -0
  454. package/dist/MemberPicker/dialog/UserGroupCandidatePanel.d.ts +13 -0
  455. package/dist/MemberPicker/dialog/UserGroupCandidatePanel.js +312 -0
  456. package/dist/MemberPicker/dialog/UserGroupCandidatePanel.js.map +1 -0
  457. package/dist/MemberPicker/dialog/helper.d.ts +20 -0
  458. package/dist/MemberPicker/dialog/helper.js +61 -0
  459. package/dist/MemberPicker/dialog/helper.js.map +1 -0
  460. package/dist/MemberPicker/dialog/types.d.ts +41 -0
  461. package/dist/MemberPicker/dialog/types.js +7 -0
  462. package/dist/MemberPicker/dialog/types.js.map +1 -0
  463. package/dist/MemberPicker/dialog/useDialogLocale.d.ts +103 -0
  464. package/dist/MemberPicker/dialog/useDialogLocale.js +20 -0
  465. package/dist/MemberPicker/dialog/useDialogLocale.js.map +1 -0
  466. package/dist/MemberPicker/dialog/useMemberPickerDraft.d.ts +27 -0
  467. package/dist/MemberPicker/dialog/useMemberPickerDraft.js +95 -0
  468. package/dist/MemberPicker/dialog/useMemberPickerDraft.js.map +1 -0
  469. package/dist/MemberPicker/dialog/useUserGroupCandidates.d.ts +29 -0
  470. package/dist/MemberPicker/dialog/useUserGroupCandidates.js +443 -0
  471. package/dist/MemberPicker/dialog/useUserGroupCandidates.js.map +1 -0
  472. package/dist/MemberPicker/index.d.ts +2 -0
  473. package/dist/MemberPicker/index.js +100 -76
  474. package/dist/MemberPicker/index.js.map +1 -1
  475. package/dist/MemberPicker/interface.d.ts +4 -4
  476. package/dist/MemberPicker/interface.js.map +1 -1
  477. package/dist/MemberPicker/tests/mockPort.d.ts +2 -2
  478. package/dist/MemberPicker/useMemberSearch.d.ts +8 -0
  479. package/dist/MemberPicker/useMemberSearch.js +92 -0
  480. package/dist/MemberPicker/useMemberSearch.js.map +1 -0
  481. package/dist/MemberPicker/utils/getUsersWithUserId.d.ts +2 -2
  482. package/dist/MemberPicker/utils/getUsersWithUserId.js.map +1 -1
  483. package/dist/MemberPicker/utils/index.d.ts +4 -3
  484. package/dist/MemberPicker/utils/index.js.map +1 -1
  485. package/dist/MemberPicker/utils.d.ts +0 -1
  486. package/dist/MemberPicker/utils.js +1 -0
  487. package/dist/MemberPicker.js +2 -0
  488. package/dist/Menu/index.d.ts +3 -1
  489. package/dist/Menu/index.js +237 -87
  490. package/dist/Menu/index.js.map +1 -1
  491. package/dist/Menu.js +2 -0
  492. package/dist/Modal/index.d.ts +2 -2
  493. package/dist/Modal/index.js +152 -90
  494. package/dist/Modal/index.js.map +1 -1
  495. package/dist/Modal.js +2 -0
  496. package/dist/OverflowCount/index.d.ts +2 -2
  497. package/dist/OverflowCount/index.js +173 -77
  498. package/dist/OverflowCount/index.js.map +1 -1
  499. package/dist/OverflowCount.js +2 -0
  500. package/dist/Pagination/PageSizeChanger.js +77 -22
  501. package/dist/Pagination/PageSizeChanger.js.map +1 -1
  502. package/dist/Pagination/index.d.ts +2 -1
  503. package/dist/Pagination/index.js +7 -7
  504. package/dist/Pagination/index.js.map +1 -1
  505. package/dist/Pagination/types.d.ts +0 -1
  506. package/dist/Pagination.js +2 -0
  507. package/dist/Popconfirm/index.d.ts +2 -2
  508. package/dist/Popconfirm/index.js +7 -7
  509. package/dist/Popconfirm/index.js.map +1 -1
  510. package/dist/Popconfirm.js +2 -0
  511. package/dist/Popover/index.d.ts +1 -1
  512. package/dist/Popover/index.js +1 -1
  513. package/dist/Popover/index.js.map +1 -1
  514. package/dist/Popover.js +2 -0
  515. package/dist/Progress/index.js +91 -28
  516. package/dist/Progress/index.js.map +1 -1
  517. package/dist/Progress.js +2 -0
  518. package/dist/Radio/components/Group/index.d.ts +2 -2
  519. package/dist/Radio/components/Group/index.js.map +1 -1
  520. package/dist/Radio/components/Group.js +2 -0
  521. package/dist/Radio/components/Radio/index.d.ts +3 -2
  522. package/dist/Radio/components/Radio/index.js +112 -46
  523. package/dist/Radio/components/Radio/index.js.map +1 -1
  524. package/dist/Radio/components/Radio.js +2 -0
  525. package/dist/Radio/index.js.map +1 -1
  526. package/dist/Radio.js +2 -0
  527. package/dist/RenameInput/index.d.ts +2 -2
  528. package/dist/RenameInput/index.js +248 -75
  529. package/dist/RenameInput/index.js.map +1 -1
  530. package/dist/RenameInput.js +2 -0
  531. package/dist/Result/index.d.ts +7 -7
  532. package/dist/Result/index.js +172 -60
  533. package/dist/Result/index.js.map +1 -1
  534. package/dist/Result/noFound.js +37 -11
  535. package/dist/Result/noFound.js.map +1 -1
  536. package/dist/Result/serverError.js +37 -11
  537. package/dist/Result/serverError.js.map +1 -1
  538. package/dist/Result/unauthorized.js +38 -11
  539. package/dist/Result/unauthorized.js.map +1 -1
  540. package/dist/Result.js +2 -0
  541. package/dist/Row/index.d.ts +1 -1
  542. package/dist/Row/index.js +86 -20
  543. package/dist/Row/index.js.map +1 -1
  544. package/dist/Row.js +2 -0
  545. package/dist/ScrollArea/index.d.ts +1 -1
  546. package/dist/ScrollArea/index.js +144 -32
  547. package/dist/ScrollArea/index.js.map +1 -1
  548. package/dist/ScrollArea.js +2 -0
  549. package/dist/Select/BaseSelect.d.ts +2 -2
  550. package/dist/Select/BaseSelect.js +49 -37
  551. package/dist/Select/BaseSelect.js.map +1 -1
  552. package/dist/Select/SelectTrigger.d.ts +2 -2
  553. package/dist/Select/SelectTrigger.js.map +1 -1
  554. package/dist/Select/Selector/FixedOverflow.d.ts +1 -1
  555. package/dist/Select/Selector/FixedOverflow.js +213 -84
  556. package/dist/Select/Selector/FixedOverflow.js.map +1 -1
  557. package/dist/Select/Selector/MultipleResponsiveSelectedSection.d.ts +4 -4
  558. package/dist/Select/Selector/MultipleResponsiveSelectedSection.js +90 -29
  559. package/dist/Select/Selector/MultipleResponsiveSelectedSection.js.map +1 -1
  560. package/dist/Select/Selector/MultipleSelector.d.ts +5 -5
  561. package/dist/Select/Selector/MultipleSelector.js +241 -82
  562. package/dist/Select/Selector/MultipleSelector.js.map +1 -1
  563. package/dist/Select/Selector/index.d.ts +5 -5
  564. package/dist/Select/Selector/index.js +64 -13
  565. package/dist/Select/Selector/index.js.map +1 -1
  566. package/dist/Select/Selector.js +2 -0
  567. package/dist/Select/components/OptionCollection.d.ts +3 -2
  568. package/dist/Select/components/OptionCollection.js +131 -40
  569. package/dist/Select/components/OptionCollection.js.map +1 -1
  570. package/dist/Select/components/PopupContent.d.ts +2 -2
  571. package/dist/Select/components/PopupContent.js +41 -11
  572. package/dist/Select/components/PopupContent.js.map +1 -1
  573. package/dist/Select/components/SearchBox.d.ts +1 -1
  574. package/dist/Select/components/SearchBox.js +32 -11
  575. package/dist/Select/components/SearchBox.js.map +1 -1
  576. package/dist/Select/components/Suffix.d.ts +2 -2
  577. package/dist/Select/components/Suffix.js +96 -32
  578. package/dist/Select/components/Suffix.js.map +1 -1
  579. package/dist/Select/hooks/useCache.d.ts +1 -1
  580. package/dist/Select/hooks/useCache.js.map +1 -1
  581. package/dist/Select/hooks/useDisplayMenu.d.ts +1 -1
  582. package/dist/Select/hooks/useDisplayMenu.js.map +1 -1
  583. package/dist/Select/hooks/useOptions.d.ts +1 -1
  584. package/dist/Select/hooks/useOptions.js +34 -15
  585. package/dist/Select/hooks/useOptions.js.map +1 -1
  586. package/dist/Select/index.js +348 -167
  587. package/dist/Select/index.js.map +1 -1
  588. package/dist/Select/interface.d.ts +2 -2
  589. package/dist/Select/utils/commonUtil.d.ts +1 -1
  590. package/dist/Select/utils/commonUtil.js.map +1 -1
  591. package/dist/Select/utils/getWidthStyle.js.map +1 -1
  592. package/dist/Select/utils/valueUtil.d.ts +2 -2
  593. package/dist/Select/utils/valueUtil.js +1 -1
  594. package/dist/Select/utils/valueUtil.js.map +1 -1
  595. package/dist/Select.js +2 -0
  596. package/dist/Skeleton/index.d.ts +2 -2
  597. package/dist/Skeleton/index.js +255 -58
  598. package/dist/Skeleton/index.js.map +1 -1
  599. package/dist/Skeleton.js +2 -0
  600. package/dist/Slider/index.d.ts +1 -1
  601. package/dist/Slider/index.js +257 -57
  602. package/dist/Slider/index.js.map +1 -1
  603. package/dist/Slider.js +2 -0
  604. package/dist/Space/CompactContext.d.ts +2 -2
  605. package/dist/Space/CompactContext.js +1 -1
  606. package/dist/Space/CompactContext.js.map +1 -1
  607. package/dist/Space/index.d.ts +3 -3
  608. package/dist/Space/index.js +162 -30
  609. package/dist/Space/index.js.map +1 -1
  610. package/dist/Space.js +2 -0
  611. package/dist/Spin/CustomIcon/index.d.ts +2 -2
  612. package/dist/Spin/CustomIcon/index.js +95 -12
  613. package/dist/Spin/CustomIcon/index.js.map +1 -1
  614. package/dist/Spin/CustomIcon.js +2 -0
  615. package/dist/Spin/index.d.ts +1 -1
  616. package/dist/Spin/index.js +156 -51
  617. package/dist/Spin/index.js.map +1 -1
  618. package/dist/Spin.js +2 -0
  619. package/dist/StatusLight/index.d.ts +1 -1
  620. package/dist/StatusLight/index.js +118 -45
  621. package/dist/StatusLight/index.js.map +1 -1
  622. package/dist/StatusLight.js +2 -0
  623. package/dist/Steps/components/CustomDot/index.d.ts +1 -1
  624. package/dist/Steps/components/CustomDot/index.js.map +1 -1
  625. package/dist/Steps/components/CustomDot.d.ts +0 -1
  626. package/dist/Steps/components/CustomDot.js +1 -0
  627. package/dist/Steps/components/ProcessIcon/index.d.ts +2 -1
  628. package/dist/Steps/components/ProcessIcon/index.js +177 -46
  629. package/dist/Steps/components/ProcessIcon/index.js.map +1 -1
  630. package/dist/Steps/components/ProcessIcon.d.ts +0 -1
  631. package/dist/Steps/components/ProcessIcon.js +1 -0
  632. package/dist/Steps/components/Step/index.d.ts +2 -2
  633. package/dist/Steps/components/Step/index.js +46 -17
  634. package/dist/Steps/components/Step/index.js.map +1 -1
  635. package/dist/Steps/components/Step.d.ts +0 -1
  636. package/dist/Steps/components/Step.js +1 -0
  637. package/dist/Steps/index.d.ts +3 -3
  638. package/dist/Steps/index.js +160 -105
  639. package/dist/Steps/index.js.map +1 -1
  640. package/dist/Steps.js +2 -0
  641. package/dist/Switch/index.js +159 -49
  642. package/dist/Switch/index.js.map +1 -1
  643. package/dist/Switch/test.d.ts +0 -1
  644. package/dist/Switch/test.js +1 -0
  645. package/dist/Switch.js +2 -0
  646. package/dist/Table/components/Cell.d.ts +2 -1
  647. package/dist/Table/components/Cell.js +29 -6
  648. package/dist/Table/components/Cell.js.map +1 -1
  649. package/dist/Table/components/DndWrapper.js +11 -2
  650. package/dist/Table/components/DndWrapper.js.map +1 -1
  651. package/dist/Table/components/ErrorBoundary.js.map +1 -1
  652. package/dist/Table/components/ExpandCell.d.ts +3 -3
  653. package/dist/Table/components/ExpandCell.js +139 -43
  654. package/dist/Table/components/ExpandCell.js.map +1 -1
  655. package/dist/Table/components/Footer/index.d.ts +5 -4
  656. package/dist/Table/components/Footer/index.js +130 -61
  657. package/dist/Table/components/Footer/index.js.map +1 -1
  658. package/dist/Table/components/Footer.js +2 -0
  659. package/dist/Table/components/Header.d.ts +2 -1
  660. package/dist/Table/components/Header.js.map +1 -1
  661. package/dist/Table/helper.d.ts +13 -13
  662. package/dist/Table/helper.js.map +1 -1
  663. package/dist/Table/hooks/useExpandable.d.ts +2 -2
  664. package/dist/Table/hooks/useExpandable.js +178 -64
  665. package/dist/Table/hooks/useExpandable.js.map +1 -1
  666. package/dist/Table/hooks/useFixed.js.map +1 -1
  667. package/dist/Table/hooks/useRowDnd.d.ts +1 -1
  668. package/dist/Table/hooks/useRowDnd.js +5 -5
  669. package/dist/Table/hooks/useRowDnd.js.map +1 -1
  670. package/dist/Table/hooks/useRowSelection.d.ts +1 -1
  671. package/dist/Table/hooks/useRowSelection.js +307 -129
  672. package/dist/Table/hooks/useRowSelection.js.map +1 -1
  673. package/dist/Table/hooks/useScroll.d.ts +3 -3
  674. package/dist/Table/hooks/useScroll.js +92 -45
  675. package/dist/Table/hooks/useScroll.js.map +1 -1
  676. package/dist/Table/index.d.ts +2 -2
  677. package/dist/Table/index.js +78 -78
  678. package/dist/Table/index.js.map +1 -1
  679. package/dist/Table/tests/helper.d.ts +1 -1
  680. package/dist/Table/types.d.ts +2 -2
  681. package/dist/Table.js +2 -0
  682. package/dist/Tabs/TabPane.d.ts +2 -2
  683. package/dist/Tabs/TabPane.js +13 -4
  684. package/dist/Tabs/TabPane.js.map +1 -1
  685. package/dist/Tabs/index.d.ts +2 -2
  686. package/dist/Tabs/index.js +677 -252
  687. package/dist/Tabs/index.js.map +1 -1
  688. package/dist/Tabs.js +2 -0
  689. package/dist/Tag/index.d.ts +1 -1
  690. package/dist/Tag/index.js +243 -77
  691. package/dist/Tag/index.js.map +1 -1
  692. package/dist/Tag.js +2 -0
  693. package/dist/TextLink/index.d.ts +1 -1
  694. package/dist/TextLink/index.js +60 -8
  695. package/dist/TextLink/index.js.map +1 -1
  696. package/dist/TextLink.js +2 -0
  697. package/dist/Tooltip/index.d.ts +1 -1
  698. package/dist/Tooltip/index.js +31 -10
  699. package/dist/Tooltip/index.js.map +1 -1
  700. package/dist/Tooltip.js +2 -0
  701. package/dist/Tour/index.d.ts +1 -1
  702. package/dist/Tour/index.js +234 -76
  703. package/dist/Tour/index.js.map +1 -1
  704. package/dist/Tour.js +2 -0
  705. package/dist/Tree/DirectoryTree.d.ts +1 -1
  706. package/dist/Tree/DirectoryTree.js +6 -6
  707. package/dist/Tree/DirectoryTree.js.map +1 -1
  708. package/dist/Tree/Tree.d.ts +1 -1
  709. package/dist/Tree/Tree2.js +24 -24
  710. package/dist/Tree/Tree2.js.map +1 -1
  711. package/dist/Tree/index.d.ts +2 -2
  712. package/dist/Tree/index.js.map +1 -1
  713. package/dist/Tree/utils/composeAllowDrop.d.ts +1 -1
  714. package/dist/Tree/utils/composeAllowDrop.js.map +1 -1
  715. package/dist/Tree/utils/dictUtil.d.ts +1 -1
  716. package/dist/Tree/utils/dictUtil.js.map +1 -1
  717. package/dist/Tree/utils/dropIndicator.d.ts +2 -1
  718. package/dist/Tree/utils/dropIndicator.js.map +1 -1
  719. package/dist/Tree/utils/iconUtil.d.ts +1 -1
  720. package/dist/Tree/utils/iconUtil.js +82 -24
  721. package/dist/Tree/utils/iconUtil.js.map +1 -1
  722. package/dist/Tree.js +2 -0
  723. package/dist/Typography/index.js +75 -27
  724. package/dist/Typography/index.js.map +1 -1
  725. package/dist/Typography.js +2 -0
  726. package/dist/Upload/index.d.ts +4 -4
  727. package/dist/Upload/index.js +278 -133
  728. package/dist/Upload/index.js.map +1 -1
  729. package/dist/Upload.js +2 -0
  730. package/dist/User/index.d.ts +1 -1
  731. package/dist/User/index.js +79 -12
  732. package/dist/User/index.js.map +1 -1
  733. package/dist/User.js +2 -0
  734. package/dist/Watermark/index.d.ts +1 -1
  735. package/dist/Watermark/index.js +108 -47
  736. package/dist/Watermark/index.js.map +1 -1
  737. package/dist/Watermark.js +2 -0
  738. package/dist/_utils/dialogAccessibility.js +98 -54
  739. package/dist/_utils/dialogAccessibility.js.map +1 -1
  740. package/dist/_utils/floatingLayer.d.ts +1 -1
  741. package/dist/_utils/floatingLayer.js +41 -14
  742. package/dist/_utils/floatingLayer.js.map +1 -1
  743. package/dist/_utils/formControlSemanticOwner.js.map +1 -1
  744. package/dist/_utils/getUniqId.js.map +1 -1
  745. package/dist/_utils/hooks/useControlledState.d.ts +1 -1
  746. package/dist/_utils/hooks/useId.js +1 -1
  747. package/dist/_utils/hooks/useId.js.map +1 -1
  748. package/dist/_utils/motion.js.map +1 -1
  749. package/dist/_utils/overlayCoordinator.d.ts +1 -1
  750. package/dist/_utils/overlayCoordinator.js +23 -7
  751. package/dist/_utils/overlayCoordinator.js.map +1 -1
  752. package/dist/_utils/prefixCls.d.ts +3 -1
  753. package/dist/_utils/prefixCls.js.map +1 -1
  754. package/dist/_utils/reactNode.d.ts +3 -3
  755. package/dist/_utils/reactNode.js +3 -1
  756. package/dist/_utils/reactNode.js.map +1 -1
  757. package/dist/_utils/statusUtils.d.ts +1 -1
  758. package/dist/_utils/weakRefFallback.js.map +1 -1
  759. package/dist/aloudata-design.css +1 -1
  760. package/dist/governance/semantic.d.ts +1 -1
  761. package/dist/index.d.ts +4 -1
  762. package/dist/index.js +3 -3
  763. package/dist/lib/utils.js.map +1 -1
  764. package/dist/locale/default.d.ts +30 -2
  765. package/dist/locale/default.js.map +1 -1
  766. package/dist/locale/en_US.d.ts +30 -1
  767. package/dist/locale/en_US.js +30 -1
  768. package/dist/locale/en_US.js.map +1 -1
  769. package/dist/locale/zh_CN.d.ts +30 -1
  770. package/dist/locale/zh_CN.js +31 -2
  771. package/dist/locale/zh_CN.js.map +1 -1
  772. package/dist/message/index.js.map +1 -1
  773. package/dist/message.js +2 -0
  774. package/dist/notification/index.js.map +1 -1
  775. package/dist/notification.js +2 -0
  776. package/dist/theme/contract/baselineResolvedTokenValueManifest.d.ts +1 -1
  777. package/dist/theme/contract/controlStateColorArtifact.d.ts +1 -1
  778. package/dist/theme/contract/focusRingArtifact.d.ts +1 -1
  779. package/dist/theme/contract/shadowGeneratorSpecification.d.ts +1 -1
  780. package/dist/theme/contract/tokenCssBridge.d.ts +1 -1
  781. package/dist/theme/contract/tokenOutputContract.d.ts +1 -1
  782. package/dist/theme/contract/tokenOutputContract.js.map +1 -1
  783. package/dist/theme/generator/baselineTokenValueDelivery.d.ts +1 -1
  784. package/dist/theme/generator/generatorDiff.d.ts +1 -1
  785. package/dist/theme/generator/minimalAcceptedColorValues.d.ts +1 -1
  786. package/dist/theme/generator/neutralSourceResolver.d.ts +2 -2
  787. package/dist/theme/generator/neutralSourceValues.d.ts +3 -3
  788. package/dist/theme/governance/migrationMappingRegistry.js.map +1 -1
  789. package/dist/theme/governance/reviewGate.js.map +1 -1
  790. package/dist/theme/governance/semanticGovernanceContract.d.ts +1 -1
  791. package/dist/theme/governance/semanticGovernanceContract.js.map +1 -1
  792. package/dist/theme/governance/validateMigrationMapping.js.map +1 -1
  793. package/dist/theme/neutralSourceContract.js.map +1 -1
  794. package/dist/theme/runtime/colorValueMode/generated/darkBaselineDeclarations.d.ts +1 -1
  795. package/dist/theme/runtime/colorValueMode/generated/darkBaselineDeclarations.js.map +1 -1
  796. package/dist/theme/runtime/colorValueMode/generated/slateDarkDeclarations.d.ts +1 -1
  797. package/dist/theme/runtime/colorValueMode/generated/slateLightDeclarations.d.ts +1 -1
  798. package/dist/theme/runtime/colorValueMode/generated/stoneDarkDeclarations.d.ts +1 -1
  799. package/dist/theme/runtime/colorValueMode/generated/stoneLightDeclarations.d.ts +1 -1
  800. package/dist/theme/runtime/colorValueMode/generated/v3BaselineDeclarations.d.ts +1 -1
  801. package/dist/theme/runtime/colorValueMode/generated/v3BaselineDeclarations.js.map +1 -1
  802. package/dist/theme/runtime/colorValueMode/index.js.map +1 -1
  803. package/dist/theme/runtime/colorValueMode/legacyNeutralCompatibility.d.ts +1 -1
  804. package/dist/theme/runtime/colorValueMode/legacyNeutralCompatibility.js.map +1 -1
  805. package/dist/theme/runtime/colorValueMode/registry.d.ts +1 -1
  806. package/dist/theme/runtime/colorValueMode/registry.js.map +1 -1
  807. package/dist/theme/runtime/colorValueMode.d.ts +0 -1
  808. package/dist/theme/runtime/colorValueMode.js +1 -0
  809. package/dist/theme/runtime/createTheme.js.map +1 -1
  810. package/dist/theme/runtime/defaultTheme.js.map +1 -1
  811. package/dist/theme/runtime/initAldTheme.js.map +1 -1
  812. package/dist/theme/runtime/integrationController.d.ts +1 -1
  813. package/dist/theme/runtime/neutralSource/index.d.ts +2 -2
  814. package/dist/theme/runtime/neutralSource/index.js.map +1 -1
  815. package/dist/theme/runtime/neutralSource.d.ts +0 -1
  816. package/dist/theme/runtime/neutralSource.js +1 -0
  817. package/dist/theme/runtime/runtimeAdapter.d.ts +1 -1
  818. package/dist/theme/runtime/themeToCssVars.js.map +1 -1
  819. package/dist/theme/runtime/tokenMap.js.map +1 -1
  820. package/dist/theme/typography.d.ts +0 -1
  821. package/dist/theme/typography.js +1 -0
  822. package/dist/theme.d.ts +0 -1
  823. package/dist/theme.js +1 -0
  824. package/package.json +54 -25
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useUserGroupCandidates.js","names":["useDialogLocale","useCallback","useEffect","useMemo","useRef","useState","ConfigProvider","IUserGroup","MemberGroupPageRequest","MemberGroupPage","hasMoreGroupPages","mergeGroupPages","ROOT_GROUP_CACHE_KEY","IGroupLevelCache","IGroupSearchState","GROUP_PAGE_SIZE","SEARCH_DEBOUNCE_MS","ROOT_BREADCRUMB_INDEX","createEmptyLevel","parentGroupId","items","pageNumber","hasMore","scrollTop","loadingMore","loadMoreError","createEmptySearchState","keyword","loading","error","getLevelKey","IUserGroupCandidatesResult","breadcrumbPath","pathWarningCode","truncated","setKeyword","enterGroup","group","returnToBreadcrumb","index","loadMore","retry","retryLoadMore","updateScrollTop","useUserGroupCandidates","t","getMemberPickerGroupPage","getNextLevelGroup","getNextLevelGroupWithMeta","useGetUserList","queryUserGroupsPage","request","Promise","params","result","data","pager","Error","MemberPickerDialog","missingGroupSource","setBreadcrumbPath","breadcrumbPathRef","levelsByParent","setLevelsByParent","Map","levelsByParentRef","activeParentGroupIdRef","undefined","treeLoading","setTreeLoading","treeError","setTreeError","setKeywordState","keywordRef","searchState","setSearchState","searchStateRef","requestVersionRef","mountedRef","searchEffectInitializedRef","updateLevels","updater","levels","currentLevels","nextLevels","current","cancelTreePagination","Array","from","key","level","updateSearchState","state","currentState","nextState","isCurrentRequest","version","loadTreeFirstPage","pageSize","then","page","previousLevel","get","set","catch","normalizedKeyword","trim","activeKey","has","timer","window","setTimeout","clearTimeout","updateCurrentLevel","nextBreadcrumbPath","groupId","nextKey","currentPath","nextPath","slice","length","targetKey","loadTreeMore","nextPageNumber","currentLevel","loadSearchMore","currentSearch","nextKeyword","isSearching"],"sources":["../../../src/MemberPicker/dialog/useUserGroupCandidates.ts"],"sourcesContent":["import useDialogLocale from './useDialogLocale';\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport ConfigProvider from '../../ConfigProvider';\nimport type {\n IUserGroup,\n MemberGroupPageRequest,\n MemberGroupPage,\n} from '../../ConfigProvider/getUserList';\nimport { hasMoreGroupPages, mergeGroupPages } from './helper';\nimport {\n ROOT_GROUP_CACHE_KEY,\n type IGroupLevelCache,\n type IGroupSearchState,\n} from './types';\n\nconst GROUP_PAGE_SIZE = 100;\nconst SEARCH_DEBOUNCE_MS = 300;\nconst ROOT_BREADCRUMB_INDEX = -1;\n\nconst createEmptyLevel = (parentGroupId?: string): IGroupLevelCache => ({\n parentGroupId,\n items: [],\n pageNumber: 0,\n hasMore: false,\n scrollTop: 0,\n loadingMore: false,\n loadMoreError: false,\n});\n\nconst createEmptySearchState = (keyword = ''): IGroupSearchState => ({\n keyword,\n items: [],\n pageNumber: 0,\n hasMore: false,\n loading: false,\n loadingMore: false,\n error: false,\n loadMoreError: false,\n});\n\nconst getLevelKey = (parentGroupId?: string): string =>\n parentGroupId ?? ROOT_GROUP_CACHE_KEY;\n\nexport interface IUserGroupCandidatesResult {\n breadcrumbPath: IUserGroup[];\n items: IUserGroup[];\n keyword: string;\n pathWarningCode?: string | null;\n truncated?: boolean;\n loading: boolean;\n loadingMore: boolean;\n error: boolean;\n loadMoreError: boolean;\n hasMore: boolean;\n /** 当前层已保存的滚动位置,供候选面板在层级切换后恢复。 */\n scrollTop: number;\n setKeyword: (keyword: string) => void;\n enterGroup: (group: IUserGroup, scrollTop: number) => void;\n returnToBreadcrumb: (index: number, scrollTop: number) => void;\n loadMore: () => void;\n retry: () => void;\n retryLoadMore: () => void;\n updateScrollTop: (scrollTop: number) => void;\n}\n\n/**\n * 管理受限用户组树与跨层搜索。\n *\n * 树层级缓存和搜索结果分别持有;所有异步响应都受版本号保护,关闭弹窗、\n * 换词、清空或切换层级后,旧响应只能结束自身,不能覆盖当前界面。\n */\nexport function useUserGroupCandidates(): IUserGroupCandidatesResult {\n const t = useDialogLocale();\n const {\n getMemberPickerGroupPage,\n getNextLevelGroup,\n getNextLevelGroupWithMeta,\n } = ConfigProvider.useGetUserList();\n const queryUserGroupsPage = useCallback(\n async (request: MemberGroupPageRequest): Promise<MemberGroupPage> => {\n if (getMemberPickerGroupPage) return getMemberPickerGroupPage(request);\n const params = {\n parentGroupId: request.parentGroupId,\n keyword: request.keyword ?? '',\n };\n if (getNextLevelGroupWithMeta) {\n const result = await getNextLevelGroupWithMeta(params);\n // 旧接口没有页码能力:保留截断提示,不反复获取同一页。\n return {\n data: result.items,\n pageNumber: request.pager.pageNumber,\n hasMore: false,\n pathWarningCode: result.pathWarningCode,\n truncated: result.hasMore,\n };\n }\n if (getNextLevelGroup)\n return {\n data: await getNextLevelGroup(params),\n pageNumber: request.pager.pageNumber,\n hasMore: false,\n };\n throw new Error(t.MemberPickerDialog.missingGroupSource);\n },\n [\n getMemberPickerGroupPage,\n getNextLevelGroup,\n getNextLevelGroupWithMeta,\n t.MemberPickerDialog.missingGroupSource,\n ],\n );\n const [breadcrumbPath, setBreadcrumbPath] = useState<IUserGroup[]>([]);\n const breadcrumbPathRef = useRef<IUserGroup[]>([]);\n const [levelsByParent, setLevelsByParent] = useState<\n Map<string, IGroupLevelCache>\n >(new Map());\n const levelsByParentRef = useRef(levelsByParent);\n const activeParentGroupIdRef = useRef<string | undefined>(undefined);\n const [treeLoading, setTreeLoading] = useState(true);\n const [treeError, setTreeError] = useState(false);\n const [keyword, setKeywordState] = useState('');\n const keywordRef = useRef('');\n const [searchState, setSearchState] = useState<IGroupSearchState>(() =>\n createEmptySearchState(),\n );\n const searchStateRef = useRef(searchState);\n const requestVersionRef = useRef(0);\n const mountedRef = useRef(true);\n const searchEffectInitializedRef = useRef(false);\n\n const updateLevels = useCallback(\n (\n updater: (\n levels: Map<string, IGroupLevelCache>,\n ) => Map<string, IGroupLevelCache>,\n ) => {\n setLevelsByParent((currentLevels) => {\n const nextLevels = updater(currentLevels);\n levelsByParentRef.current = nextLevels;\n return nextLevels;\n });\n },\n [],\n );\n\n // 切层或转搜索会废弃当前请求,同时释放缓存层的分页锁,返回该层仍可继续加载。\n const cancelTreePagination = useCallback(() => {\n updateLevels(\n (levels) =>\n new Map(\n Array.from(levels, ([key, level]) => [\n key,\n level.loadingMore ? { ...level, loadingMore: false } : level,\n ]),\n ),\n );\n }, [updateLevels]);\n\n const updateSearchState = useCallback(\n (updater: (state: IGroupSearchState) => IGroupSearchState) => {\n setSearchState((currentState) => {\n const nextState = updater(currentState);\n searchStateRef.current = nextState;\n return nextState;\n });\n },\n [],\n );\n\n const isCurrentRequest = useCallback(\n (version: number): boolean =>\n mountedRef.current && requestVersionRef.current === version,\n [],\n );\n\n const loadTreeFirstPage = useCallback(\n (parentGroupId?: string) => {\n const version = requestVersionRef.current + 1;\n requestVersionRef.current = version;\n setTreeLoading(true);\n setTreeError(false);\n queryUserGroupsPage({\n parentGroupId,\n keyword: undefined,\n pager: { pageNumber: 1, pageSize: GROUP_PAGE_SIZE },\n })\n .then((page) => {\n if (!isCurrentRequest(version)) {\n return;\n }\n updateLevels((currentLevels) => {\n const key = getLevelKey(parentGroupId);\n const previousLevel = currentLevels.get(key);\n return new Map(currentLevels).set(key, {\n parentGroupId,\n items: [...page.data],\n pageNumber: page.pageNumber,\n hasMore: hasMoreGroupPages(page),\n pathWarningCode: page.pathWarningCode,\n truncated: page.truncated,\n scrollTop: previousLevel?.scrollTop ?? 0,\n loadingMore: false,\n loadMoreError: false,\n });\n });\n setTreeLoading(false);\n })\n .catch(() => {\n if (!isCurrentRequest(version)) {\n return;\n }\n setTreeLoading(false);\n setTreeError(true);\n });\n },\n [isCurrentRequest, queryUserGroupsPage, updateLevels],\n );\n\n useEffect(() => {\n mountedRef.current = true;\n loadTreeFirstPage();\n return () => {\n mountedRef.current = false;\n requestVersionRef.current += 1;\n };\n }, [loadTreeFirstPage]);\n\n useEffect(() => {\n if (!searchEffectInitializedRef.current) {\n searchEffectInitializedRef.current = true;\n return undefined;\n }\n\n const normalizedKeyword = keyword.trim();\n cancelTreePagination();\n const version = requestVersionRef.current + 1;\n requestVersionRef.current = version;\n if (!normalizedKeyword) {\n updateSearchState(() => createEmptySearchState(keyword));\n const activeKey = getLevelKey(activeParentGroupIdRef.current);\n if (!levelsByParentRef.current.has(activeKey)) {\n loadTreeFirstPage(activeParentGroupIdRef.current);\n } else {\n setTreeLoading(false);\n setTreeError(false);\n }\n return undefined;\n }\n\n updateSearchState(() => ({\n ...createEmptySearchState(normalizedKeyword),\n loading: true,\n }));\n const timer = window.setTimeout(() => {\n queryUserGroupsPage({\n parentGroupId: undefined,\n keyword: normalizedKeyword,\n pager: { pageNumber: 1, pageSize: GROUP_PAGE_SIZE },\n })\n .then((page) => {\n if (!isCurrentRequest(version)) {\n return;\n }\n updateSearchState((currentState) => ({\n ...currentState,\n keyword: normalizedKeyword,\n items: [...page.data],\n pageNumber: page.pageNumber,\n hasMore: hasMoreGroupPages(page),\n pathWarningCode: page.pathWarningCode,\n truncated: page.truncated,\n loading: false,\n error: false,\n }));\n })\n .catch(() => {\n if (!isCurrentRequest(version)) {\n return;\n }\n updateSearchState((currentState) => ({\n ...currentState,\n loading: false,\n error: true,\n }));\n });\n }, SEARCH_DEBOUNCE_MS);\n\n return () => window.clearTimeout(timer);\n }, [\n cancelTreePagination,\n isCurrentRequest,\n keyword,\n loadTreeFirstPage,\n queryUserGroupsPage,\n updateSearchState,\n ]);\n\n const updateCurrentLevel = useCallback(\n (updater: (level: IGroupLevelCache) => IGroupLevelCache) => {\n const parentGroupId = activeParentGroupIdRef.current;\n const key = getLevelKey(parentGroupId);\n updateLevels((currentLevels) => {\n const level = currentLevels.get(key) ?? createEmptyLevel(parentGroupId);\n return new Map(currentLevels).set(key, updater(level));\n });\n },\n [updateLevels],\n );\n\n const updateScrollTop = useCallback(\n (scrollTop: number) => {\n updateCurrentLevel((level) => ({ ...level, scrollTop }));\n },\n [updateCurrentLevel],\n );\n\n const enterGroup = useCallback(\n (group: IUserGroup, scrollTop: number) => {\n updateScrollTop(scrollTop);\n cancelTreePagination();\n const nextBreadcrumbPath = [...breadcrumbPathRef.current, group];\n breadcrumbPathRef.current = nextBreadcrumbPath;\n setBreadcrumbPath(nextBreadcrumbPath);\n activeParentGroupIdRef.current = group.groupId;\n const nextKey = getLevelKey(group.groupId);\n requestVersionRef.current += 1;\n if (levelsByParentRef.current.has(nextKey)) {\n setTreeLoading(false);\n setTreeError(false);\n return;\n }\n loadTreeFirstPage(group.groupId);\n },\n [cancelTreePagination, loadTreeFirstPage, updateScrollTop],\n );\n\n const returnToBreadcrumb = useCallback(\n (index: number, scrollTop: number) => {\n updateScrollTop(scrollTop);\n cancelTreePagination();\n const currentPath = breadcrumbPathRef.current;\n const nextPath =\n index === ROOT_BREADCRUMB_INDEX ? [] : currentPath.slice(0, index + 1);\n const parentGroupId = nextPath[nextPath.length - 1]?.groupId;\n breadcrumbPathRef.current = nextPath;\n setBreadcrumbPath(nextPath);\n activeParentGroupIdRef.current = parentGroupId;\n requestVersionRef.current += 1;\n const targetKey = getLevelKey(parentGroupId);\n if (levelsByParentRef.current.has(targetKey)) {\n setTreeLoading(false);\n setTreeError(false);\n return;\n }\n loadTreeFirstPage(parentGroupId);\n },\n [cancelTreePagination, loadTreeFirstPage, updateScrollTop],\n );\n\n const loadTreeMore = useCallback(() => {\n const parentGroupId = activeParentGroupIdRef.current;\n const key = getLevelKey(parentGroupId);\n const level = levelsByParentRef.current.get(key);\n if (!level || !level.hasMore || level.loadingMore) {\n return;\n }\n const nextPageNumber = level.pageNumber + 1;\n const version = requestVersionRef.current + 1;\n requestVersionRef.current = version;\n updateCurrentLevel((currentLevel) => ({\n ...currentLevel,\n loadingMore: true,\n loadMoreError: false,\n }));\n queryUserGroupsPage({\n parentGroupId,\n keyword: undefined,\n pager: { pageNumber: nextPageNumber, pageSize: GROUP_PAGE_SIZE },\n })\n .then((page) => {\n if (!isCurrentRequest(version)) {\n return;\n }\n updateCurrentLevel((currentLevel) => ({\n ...currentLevel,\n items: mergeGroupPages(currentLevel.items, page.data),\n pageNumber: page.pageNumber,\n hasMore: hasMoreGroupPages(page),\n pathWarningCode: currentLevel.pathWarningCode || page.pathWarningCode,\n truncated: currentLevel.truncated || page.truncated,\n loadingMore: false,\n loadMoreError: false,\n }));\n })\n .catch(() => {\n if (!isCurrentRequest(version)) {\n return;\n }\n updateCurrentLevel((currentLevel) => ({\n ...currentLevel,\n loadingMore: false,\n loadMoreError: true,\n }));\n });\n }, [isCurrentRequest, queryUserGroupsPage, updateCurrentLevel]);\n\n const loadSearchMore = useCallback(() => {\n const currentSearch = searchStateRef.current;\n const normalizedKeyword = keywordRef.current.trim();\n if (\n !normalizedKeyword ||\n currentSearch.loading ||\n !currentSearch.hasMore ||\n currentSearch.loadingMore\n ) {\n return;\n }\n const nextPageNumber = currentSearch.pageNumber + 1;\n const version = requestVersionRef.current + 1;\n requestVersionRef.current = version;\n updateSearchState((state) => ({\n ...state,\n loadingMore: true,\n loadMoreError: false,\n }));\n queryUserGroupsPage({\n parentGroupId: undefined,\n keyword: normalizedKeyword,\n pager: { pageNumber: nextPageNumber, pageSize: GROUP_PAGE_SIZE },\n })\n .then((page) => {\n if (!isCurrentRequest(version)) {\n return;\n }\n updateSearchState((state) => ({\n ...state,\n items: mergeGroupPages(state.items, page.data),\n pageNumber: page.pageNumber,\n hasMore: hasMoreGroupPages(page),\n pathWarningCode: state.pathWarningCode || page.pathWarningCode,\n truncated: state.truncated || page.truncated,\n loadingMore: false,\n loadMoreError: false,\n }));\n })\n .catch(() => {\n if (!isCurrentRequest(version)) {\n return;\n }\n updateSearchState((state) => ({\n ...state,\n loadingMore: false,\n loadMoreError: true,\n }));\n });\n }, [isCurrentRequest, queryUserGroupsPage, updateSearchState]);\n\n const setKeyword = useCallback((nextKeyword: string) => {\n keywordRef.current = nextKeyword;\n setKeywordState(nextKeyword);\n }, []);\n\n const isSearching = keyword.trim().length > 0;\n const loadMore = useCallback(() => {\n if (keywordRef.current.trim()) {\n loadSearchMore();\n return;\n }\n loadTreeMore();\n }, [loadSearchMore, loadTreeMore]);\n\n const retry = useCallback(() => {\n const normalizedKeyword = keywordRef.current.trim();\n if (normalizedKeyword) {\n const version = requestVersionRef.current + 1;\n requestVersionRef.current = version;\n updateSearchState((state) => ({\n ...state,\n loading: true,\n loadingMore: false,\n loadMoreError: false,\n hasMore: false,\n error: false,\n }));\n queryUserGroupsPage({\n parentGroupId: undefined,\n keyword: normalizedKeyword,\n pager: { pageNumber: 1, pageSize: GROUP_PAGE_SIZE },\n })\n .then((page) => {\n if (!isCurrentRequest(version)) {\n return;\n }\n updateSearchState((state) => ({\n ...state,\n items: [...page.data],\n pageNumber: page.pageNumber,\n hasMore: hasMoreGroupPages(page),\n pathWarningCode: page.pathWarningCode,\n truncated: page.truncated,\n loading: false,\n error: false,\n }));\n })\n .catch(() => {\n if (!isCurrentRequest(version)) {\n return;\n }\n updateSearchState((state) => ({\n ...state,\n loading: false,\n error: true,\n }));\n });\n return;\n }\n loadTreeFirstPage(activeParentGroupIdRef.current);\n }, [\n isCurrentRequest,\n loadTreeFirstPage,\n queryUserGroupsPage,\n updateSearchState,\n ]);\n\n const currentLevel = useMemo(\n () => levelsByParent.get(getLevelKey(activeParentGroupIdRef.current)),\n [levelsByParent],\n );\n\n return {\n breadcrumbPath,\n pathWarningCode: isSearching\n ? searchState.pathWarningCode\n : currentLevel?.pathWarningCode,\n truncated: isSearching ? searchState.truncated : currentLevel?.truncated,\n items: isSearching ? searchState.items : currentLevel?.items ?? [],\n keyword,\n loading: isSearching ? searchState.loading : treeLoading,\n loadingMore: isSearching\n ? searchState.loadingMore\n : currentLevel?.loadingMore ?? false,\n error: isSearching ? searchState.error : treeError,\n loadMoreError: isSearching\n ? searchState.loadMoreError\n : currentLevel?.loadMoreError ?? false,\n hasMore: isSearching ? searchState.hasMore : currentLevel?.hasMore ?? false,\n scrollTop: currentLevel?.scrollTop ?? 0,\n setKeyword,\n enterGroup,\n returnToBreadcrumb,\n loadMore,\n retry,\n retryLoadMore: loadMore,\n updateScrollTop,\n };\n}\n"],"mappings":";;;;;;AAeA,IAAMe,kBAAkB;AACxB,IAAMC,qBAAqB;AAC3B,IAAMC,wBAAwB;AAE9B,IAAMC,oBAAoBC,mBAA8C;CACtEA;CACAC,OAAO,EAAE;CACTC,YAAY;CACZC,SAAS;CACTC,WAAW;CACXC,aAAa;CACbC,eAAe;CAChB;AAED,IAAMC,0BAA0BC,UAAU,QAA2B;CACnEA;CACAP,OAAO,EAAE;CACTC,YAAY;CACZC,SAAS;CACTM,SAAS;CACTJ,aAAa;CACbK,OAAO;CACPJ,eAAe;CAChB;AAED,IAAMK,eAAeX,kBACnBA,iBAAAA;;;;;;;AA8BF,SAAgByB,yBAAqD;CACnE,MAAMC,IAAI7C,iBAAiB;CAC3B,MAAM,EACJ8C,0BACAC,mBACAC,8BACE1C,wBAAe2C,gBAAgB;CACnC,MAAMC,sBAAsBjD,YAC1B,OAAOkD,YAA8D;AACnE,MAAIL,yBAA0B,QAAOA,yBAAyBK,QAAQ;EACtE,MAAME,SAAS;GACblC,eAAegC,QAAQhC;GACvBQ,SAASwB,QAAQxB,WAAW;GAC7B;AACD,MAAIqB,2BAA2B;GAC7B,MAAMM,SAAS,MAAMN,0BAA0BK,OAAO;AAEtD,UAAO;IACLE,MAAMD,OAAOlC;IACbC,YAAY8B,QAAQK,MAAMnC;IAC1BC,SAAS;IACTW,iBAAiBqB,OAAOrB;IACxBC,WAAWoB,OAAOhC;IACnB;;AAEH,MAAIyB,kBACF,QAAO;GACLQ,MAAM,MAAMR,kBAAkBM,OAAO;GACrChC,YAAY8B,QAAQK,MAAMnC;GAC1BC,SAAS;GACV;AACH,QAAM,IAAImC,MAAMZ,EAAEa,mBAAmBC,mBAAmB;IAE1D;EACEb;EACAC;EACAC;EACAH,EAAEa,mBAAmBC;EAEzB,CAAC;CACD,MAAM,CAAC3B,gBAAgB4B,qBAAqBvD,SAAuB,EAAE,CAAC;CACtE,MAAMwD,oBAAoBzD,OAAqB,EAAE,CAAC;CAClD,MAAM,CAAC0D,gBAAgBC,qBAAqB1D,yBAE1C,IAAI2D,KAAK,CAAC;CACZ,MAAMC,oBAAoB7D,OAAO0D,eAAe;CAChD,MAAMI,yBAAyB9D,OAA2B+D,OAAU;CACpE,MAAM,CAACC,aAAaC,kBAAkBhE,SAAS,KAAK;CACpD,MAAM,CAACiE,WAAWC,gBAAgBlE,SAAS,MAAM;CACjD,MAAM,CAACsB,SAAS6C,mBAAmBnE,SAAS,GAAG;CAC/C,MAAMoE,aAAarE,OAAO,GAAG;CAC7B,MAAM,CAACsE,aAAaC,kBAAkBtE,eACpCqB,wBACF,CAAC;CACD,MAAMkD,iBAAiBxE,OAAOsE,YAAY;CAC1C,MAAMG,oBAAoBzE,OAAO,EAAE;CACnC,MAAM0E,aAAa1E,OAAO,KAAK;CAC/B,MAAM2E,6BAA6B3E,OAAO,MAAM;CAEhD,MAAM4E,eAAe/E,aAEjBgF,YAGG;AACHlB,qBAAmBoB,kBAAkB;GACnC,MAAMC,aAAaH,QAAQE,cAAc;AACzClB,qBAAkBoB,UAAUD;AAC5B,UAAOA;IACP;IAEJ,EACF,CAAC;CAGD,MAAME,uBAAuBrF,kBAAkB;AAC7C+E,gBACGE,WACC,IAAIlB,IACFuB,MAAMC,KAAKN,SAAS,CAACO,KAAKC,WAAW,CACnCD,KACAC,MAAMlE,cAAc;GAAE,GAAGkE;GAAOlE,aAAa;GAAO,GAAGkE,MACxD,CACH,CACJ,CAAC;IACA,CAACV,aAAa,CAAC;CAElB,MAAMW,oBAAoB1F,aACvBgF,cAA6D;AAC5DN,kBAAgBkB,iBAAiB;GAC/B,MAAMC,YAAYb,UAAQY,aAAa;AACvCjB,kBAAeS,UAAUS;AACzB,UAAOA;IACP;IAEJ,EACF,CAAC;CAED,MAAMC,mBAAmB9F,aACtB+F,YACClB,WAAWO,WAAWR,kBAAkBQ,YAAYW,SACtD,EACF,CAAC;CAED,MAAMC,oBAAoBhG,aACvBkB,kBAA2B;EAC1B,MAAM6E,YAAUnB,kBAAkBQ,UAAU;AAC5CR,oBAAkBQ,UAAUW;AAC5B3B,iBAAe,KAAK;AACpBE,eAAa,MAAM;AACnBrB,sBAAoB;GAClB/B;GACAQ,SAASwC;GACTX,OAAO;IAAEnC,YAAY;IAAG6E,UAAUnF;IAAgB;GACnD,CAAC,CACCoF,MAAMC,SAAS;AACd,OAAI,CAACL,iBAAiBC,UAAQ,CAC5B;AAEFhB,iBAAcG,oBAAkB;IAC9B,MAAMM,QAAM3D,YAAYX,cAAc;IACtC,MAAMkF,gBAAgBlB,gBAAcmB,IAAIb,MAAI;AAC5C,WAAO,IAAIzB,IAAImB,gBAAc,CAACoB,IAAId,OAAK;KACrCtE;KACAC,OAAO,CAAC,GAAGgF,KAAK7C,KAAK;KACrBlC,YAAY+E,KAAK/E;KACjBC,SAASZ,kBAAkB0F,KAAK;KAChCnE,iBAAiBmE,KAAKnE;KACtBC,WAAWkE,KAAKlE;KAChBX,WAAW8E,eAAe9E,aAAa;KACvCC,aAAa;KACbC,eAAe;KAChB,CAAC;KACF;AACF4C,kBAAe,MAAM;IACrB,CACDmC,YAAY;AACX,OAAI,CAACT,iBAAiBC,UAAQ,CAC5B;AAEF3B,kBAAe,MAAM;AACrBE,gBAAa,KAAK;IAClB;IAEN;EAACwB;EAAkB7C;EAAqB8B;EAC1C,CAAC;AAED9E,iBAAgB;AACd4E,aAAWO,UAAU;AACrBY,qBAAmB;AACnB,eAAa;AACXnB,cAAWO,UAAU;AACrBR,qBAAkBQ,WAAW;;IAE9B,CAACY,kBAAkB,CAAC;AAEvB/F,iBAAgB;AACd,MAAI,CAAC6E,2BAA2BM,SAAS;AACvCN,8BAA2BM,UAAU;AACrC;;EAGF,MAAMoB,oBAAoB9E,QAAQ+E,MAAM;AACxCpB,wBAAsB;EACtB,MAAMU,YAAUnB,kBAAkBQ,UAAU;AAC5CR,oBAAkBQ,UAAUW;AAC5B,MAAI,CAACS,mBAAmB;AACtBd,2BAAwBjE,uBAAuBC,QAAQ,CAAC;GACxD,MAAMgF,YAAY7E,YAAYoC,uBAAuBmB,QAAQ;AAC7D,OAAI,CAACpB,kBAAkBoB,QAAQuB,IAAID,UAAU,CAC3CV,mBAAkB/B,uBAAuBmB,QAAQ;QAC5C;AACLhB,mBAAe,MAAM;AACrBE,iBAAa,MAAM;;AAErB;;AAGFoB,2BAAyB;GACvB,GAAGjE,uBAAuB+E,kBAAkB;GAC5C7E,SAAS;GACV,EAAE;EACH,MAAMiF,QAAQC,OAAOC,iBAAiB;AACpC7D,uBAAoB;IAClB/B,eAAegD;IACfxC,SAAS8E;IACTjD,OAAO;KAAEnC,YAAY;KAAG6E,UAAUnF;KAAgB;IACnD,CAAC,CACCoF,MAAMC,WAAS;AACd,QAAI,CAACL,iBAAiBC,UAAQ,CAC5B;AAEFL,uBAAmBE,oBAAkB;KACnC,GAAGA;KACHlE,SAAS8E;KACTrF,OAAO,CAAC,GAAGgF,OAAK7C,KAAK;KACrBlC,YAAY+E,OAAK/E;KACjBC,SAASZ,kBAAkB0F,OAAK;KAChCnE,iBAAiBmE,OAAKnE;KACtBC,WAAWkE,OAAKlE;KAChBN,SAAS;KACTC,OAAO;KACR,EAAE;KACH,CACD2E,YAAY;AACX,QAAI,CAACT,iBAAiBC,UAAQ,CAC5B;AAEFL,uBAAmBE,oBAAkB;KACnC,GAAGA;KACHjE,SAAS;KACTC,OAAO;KACR,EAAE;KACH;KACHb,mBAAmB;AAEtB,eAAa8F,OAAOE,aAAaH,MAAM;IACtC;EACDvB;EACAS;EACApE;EACAsE;EACA/C;EACAyC;EACD,CAAC;CAEF,MAAMsB,qBAAqBhH,aACxBgF,cAA2D;EAC1D,MAAM9D,kBAAgB+C,uBAAuBmB;EAC7C,MAAMI,QAAM3D,YAAYX,gBAAc;AACtC6D,gBAAcG,oBAAkB;GAC9B,MAAMO,UAAQP,gBAAcmB,IAAIb,MAAI,IAAIvE,iBAAiBC,gBAAc;AACvE,UAAO,IAAI6C,IAAImB,gBAAc,CAACoB,IAAId,OAAKR,UAAQS,QAAM,CAAC;IACtD;IAEJ,CAACV,aACH,CAAC;CAED,MAAMrC,kBAAkB1C,aACrBsB,cAAsB;AACrB0F,sBAAoBvB,aAAW;GAAE,GAAGA;GAAOnE;GAAW,EAAE;IAE1D,CAAC0F,mBACH,CAAC;CAED,MAAM7E,aAAanC,aAChBoC,OAAmBd,gBAAsB;AACxCoB,kBAAgBpB,YAAU;AAC1B+D,wBAAsB;EACtB,MAAM4B,qBAAqB,CAAC,GAAGrD,kBAAkBwB,SAAShD,MAAM;AAChEwB,oBAAkBwB,UAAU6B;AAC5BtD,oBAAkBsD,mBAAmB;AACrChD,yBAAuBmB,UAAUhD,MAAM8E;EACvC,MAAMC,UAAUtF,YAAYO,MAAM8E,QAAQ;AAC1CtC,oBAAkBQ,WAAW;AAC7B,MAAIpB,kBAAkBoB,QAAQuB,IAAIQ,QAAQ,EAAE;AAC1C/C,kBAAe,MAAM;AACrBE,gBAAa,MAAM;AACnB;;AAEF0B,oBAAkB5D,MAAM8E,QAAQ;IAElC;EAAC7B;EAAsBW;EAAmBtD;EAC5C,CAAC;CAED,MAAML,qBAAqBrC,aACxBsC,OAAehB,gBAAsB;AACpCoB,kBAAgBpB,YAAU;AAC1B+D,wBAAsB;EACtB,MAAM+B,cAAcxD,kBAAkBwB;EACtC,MAAMiC,WACJ/E,UAAUtB,wBAAwB,EAAE,GAAGoG,YAAYE,MAAM,GAAGhF,QAAQ,EAAE;EACxE,MAAMpB,kBAAgBmG,SAASA,SAASE,SAAS,IAAIL;AACrDtD,oBAAkBwB,UAAUiC;AAC5B1D,oBAAkB0D,SAAS;AAC3BpD,yBAAuBmB,UAAUlE;AACjC0D,oBAAkBQ,WAAW;EAC7B,MAAMoC,YAAY3F,YAAYX,gBAAc;AAC5C,MAAI8C,kBAAkBoB,QAAQuB,IAAIa,UAAU,EAAE;AAC5CpD,kBAAe,MAAM;AACrBE,gBAAa,MAAM;AACnB;;AAEF0B,oBAAkB9E,gBAAc;IAElC;EAACmE;EAAsBW;EAAmBtD;EAC5C,CAAC;CAED,MAAM+E,eAAezH,kBAAkB;EACrC,MAAMkB,kBAAgB+C,uBAAuBmB;EAC7C,MAAMI,QAAM3D,YAAYX,gBAAc;EACtC,MAAMuE,UAAQzB,kBAAkBoB,QAAQiB,IAAIb,MAAI;AAChD,MAAI,CAACC,WAAS,CAACA,QAAMpE,WAAWoE,QAAMlE,YACpC;EAEF,MAAMmG,iBAAiBjC,QAAMrE,aAAa;EAC1C,MAAM2E,YAAUnB,kBAAkBQ,UAAU;AAC5CR,oBAAkBQ,UAAUW;AAC5BiB,sBAAoBW,kBAAkB;GACpC,GAAGA;GACHpG,aAAa;GACbC,eAAe;GAChB,EAAE;AACHyB,sBAAoB;GAClB/B,eAAAA;GACAQ,SAASwC;GACTX,OAAO;IAAEnC,YAAYsG;IAAgBzB,UAAUnF;IAAgB;GAChE,CAAC,CACCoF,MAAMC,WAAS;AACd,OAAI,CAACL,iBAAiBC,UAAQ,CAC5B;AAEFiB,uBAAoBW,oBAAkB;IACpC,GAAGA;IACHxG,OAAOT,gBAAgBiH,eAAaxG,OAAOgF,OAAK7C,KAAK;IACrDlC,YAAY+E,OAAK/E;IACjBC,SAASZ,kBAAkB0F,OAAK;IAChCnE,iBAAiB2F,eAAa3F,mBAAmBmE,OAAKnE;IACtDC,WAAW0F,eAAa1F,aAAakE,OAAKlE;IAC1CV,aAAa;IACbC,eAAe;IAChB,EAAE;IACH,CACD+E,YAAY;AACX,OAAI,CAACT,iBAAiBC,UAAQ,CAC5B;AAEFiB,uBAAoBW,oBAAkB;IACpC,GAAGA;IACHpG,aAAa;IACbC,eAAe;IAChB,EAAE;IACH;IACH;EAACsE;EAAkB7C;EAAqB+D;EAAmB,CAAC;CAE/D,MAAMY,iBAAiB5H,kBAAkB;EACvC,MAAM6H,gBAAgBlD,eAAeS;EACrC,MAAMoB,sBAAoBhC,WAAWY,QAAQqB,MAAM;AACnD,MACE,CAACD,uBACDqB,cAAclG,WACd,CAACkG,cAAcxG,WACfwG,cAActG,YAEd;EAEF,MAAMmG,mBAAiBG,cAAczG,aAAa;EAClD,MAAM2E,YAAUnB,kBAAkBQ,UAAU;AAC5CR,oBAAkBQ,UAAUW;AAC5BL,qBAAmBC,WAAW;GAC5B,GAAGA;GACHpE,aAAa;GACbC,eAAe;GAChB,EAAE;AACHyB,sBAAoB;GAClB/B,eAAegD;GACfxC,SAAS8E;GACTjD,OAAO;IAAEnC,YAAYsG;IAAgBzB,UAAUnF;IAAgB;GAChE,CAAC,CACCoF,MAAMC,WAAS;AACd,OAAI,CAACL,iBAAiBC,UAAQ,CAC5B;AAEFL,sBAAmBC,aAAW;IAC5B,GAAGA;IACHxE,OAAOT,gBAAgBiF,QAAMxE,OAAOgF,OAAK7C,KAAK;IAC9ClC,YAAY+E,OAAK/E;IACjBC,SAASZ,kBAAkB0F,OAAK;IAChCnE,iBAAiB2D,QAAM3D,mBAAmBmE,OAAKnE;IAC/CC,WAAW0D,QAAM1D,aAAakE,OAAKlE;IACnCV,aAAa;IACbC,eAAe;IAChB,EAAE;IACH,CACD+E,YAAY;AACX,OAAI,CAACT,iBAAiBC,UAAQ,CAC5B;AAEFL,sBAAmBC,aAAW;IAC5B,GAAGA;IACHpE,aAAa;IACbC,eAAe;IAChB,EAAE;IACH;IACH;EAACsE;EAAkB7C;EAAqByC;EAAkB,CAAC;CAE9D,MAAMxD,aAAalC,aAAa8H,gBAAwB;AACtDtD,aAAWY,UAAU0C;AACrBvD,kBAAgBuD,YAAY;IAC3B,EAAE,CAAC;CAEN,MAAMC,cAAcrG,QAAQ+E,MAAM,CAACc,SAAS;CAC5C,MAAMhF,WAAWvC,kBAAkB;AACjC,MAAIwE,WAAWY,QAAQqB,MAAM,EAAE;AAC7BmB,mBAAgB;AAChB;;AAEFH,gBAAc;IACb,CAACG,gBAAgBH,aAAa,CAAC;CAElC,MAAMjF,QAAQxC,kBAAkB;EAC9B,MAAMwG,sBAAoBhC,WAAWY,QAAQqB,MAAM;AACnD,MAAID,qBAAmB;GACrB,MAAMT,YAAUnB,kBAAkBQ,UAAU;AAC5CR,qBAAkBQ,UAAUW;AAC5BL,sBAAmBC,aAAW;IAC5B,GAAGA;IACHhE,SAAS;IACTJ,aAAa;IACbC,eAAe;IACfH,SAAS;IACTO,OAAO;IACR,EAAE;AACHqB,uBAAoB;IAClB/B,eAAegD;IACfxC,SAAS8E;IACTjD,OAAO;KAAEnC,YAAY;KAAG6E,UAAUnF;KAAgB;IACnD,CAAC,CACCoF,MAAMC,WAAS;AACd,QAAI,CAACL,iBAAiBC,UAAQ,CAC5B;AAEFL,uBAAmBC,aAAW;KAC5B,GAAGA;KACHxE,OAAO,CAAC,GAAGgF,OAAK7C,KAAK;KACrBlC,YAAY+E,OAAK/E;KACjBC,SAASZ,kBAAkB0F,OAAK;KAChCnE,iBAAiBmE,OAAKnE;KACtBC,WAAWkE,OAAKlE;KAChBN,SAAS;KACTC,OAAO;KACR,EAAE;KACH,CACD2E,YAAY;AACX,QAAI,CAACT,iBAAiBC,UAAQ,CAC5B;AAEFL,uBAAmBC,aAAW;KAC5B,GAAGA;KACHhE,SAAS;KACTC,OAAO;KACR,EAAE;KACH;AACJ;;AAEFoE,oBAAkB/B,uBAAuBmB,QAAQ;IAChD;EACDU;EACAE;EACA/C;EACAyC;EACD,CAAC;CAEF,MAAMiC,iBAAezH,cACb2D,eAAewC,IAAIxE,YAAYoC,uBAAuBmB,QAAQ,CAAC,EACrE,CAACvB,eACH,CAAC;AAED,QAAO;EACL9B;EACAC,iBAAiB+F,cACbtD,YAAYzC,kBACZ2F,gBAAc3F;EAClBC,WAAW8F,cAActD,YAAYxC,YAAY0F,gBAAc1F;EAC/Dd,OAAO4G,cAActD,YAAYtD,QAAQwG,gBAAcxG,SAAS,EAAE;EAClEO;EACAC,SAASoG,cAActD,YAAY9C,UAAUwC;EAC7C5C,aAAawG,cACTtD,YAAYlD,cACZoG,gBAAcpG,eAAe;EACjCK,OAAOmG,cAActD,YAAY7C,QAAQyC;EACzC7C,eAAeuG,cACXtD,YAAYjD,gBACZmG,gBAAcnG,iBAAiB;EACnCH,SAAS0G,cAActD,YAAYpD,UAAUsG,gBAActG,WAAW;EACtEC,WAAWqG,gBAAcrG,aAAa;EACtCY;EACAC;EACAE;EACAE;EACAC;EACAC,eAAeF;EACfG;EACD"}
@@ -1,7 +1,9 @@
1
+ import { default as MemberPickerDialog } from './dialog/MemberPickerDialog.js';
1
2
  import { default as React } from 'react';
2
3
  import { default as MemberPanel } from './components/PanelWrapper.js';
3
4
  import { IMemberPickerProps } from './interface.js';
4
5
  declare const MemberSelector: React.FC<IMemberPickerProps> & {
5
6
  MemberPanel: typeof MemberPanel;
7
+ Dialog: typeof MemberPickerDialog;
6
8
  };
7
9
  export default MemberSelector;
@@ -1,12 +1,15 @@
1
1
  import { cn } from "../lib/utils.js";
2
2
  import Avatar from "../Avatar/index.js";
3
+ import DisabledContext from "../ConfigProvider/DisabledContext.js";
3
4
  import { LocaleContext, getTranslator } from "../locale/default.js";
4
5
  import { EUserType } from "../ConfigProvider/getUserList.js";
5
6
  import AldCustomConfigProvider from "../ConfigProvider/index.js";
6
7
  import Select_default from "../Select/index.js";
7
- /* empty css */
8
- import message from "../message/index.js";
9
8
  import { EMemberPicker } from "./interface.js";
9
+ import SearchFeedback from "./components/SearchFeedback.js";
10
+ import MemberPickerDialog from "./dialog/MemberPickerDialog.js";
11
+ import useMemberSearch from "./useMemberSearch.js";
12
+ /* empty css */
10
13
  import { getId } from "./utils/index.js";
11
14
  import { isUser, isUserGroup } from "./utils/getUsersWithUserId.js";
12
15
  import Panel from "./components/Panel.js";
@@ -14,7 +17,7 @@ import PanelWrapper from "./components/PanelWrapper.js";
14
17
  import React, { useCallback, useContext, useEffect, useMemo, useRef, useState } from "react";
15
18
  import { jsx, jsxs } from "react/jsx-runtime";
16
19
  import _ from "lodash";
17
- import { usePrevious, useRequest } from "ahooks";
20
+ import { usePrevious } from "ahooks";
18
21
  //#region src/MemberPicker/index.tsx
19
22
  var DEFAULT_MULTIPLE_DROPDOWN_WIDTH = 480;
20
23
  var Component = (props) => {
@@ -22,10 +25,13 @@ var Component = (props) => {
22
25
  const t = getTranslator(locale);
23
26
  const { value, type = EMemberPicker.USER, onChange, multiple, dropdownWidth, open, onOpenChange, placeholder = t.MemberPicker.select, className, allowClear, disabled, onClear, size, prefix: propPrefix, lockedIds = [], footer, onCancel, filterItem, mode: propsMode, renderItem, renderSelectedTag, "data-testid": dataTestId, "aria-label": ariaLabel, ...restProps } = props;
24
27
  const allowOverlap = props.allowOverlap ?? false;
25
- const { getUsersByIds, getUsersByKeywords } = AldCustomConfigProvider.useGetUserList();
28
+ const { getUsersByIds, getUsersByKeywords, getUsersByKeywordsWithMeta, getNextLevelGroup, getNextLevelGroupWithMeta } = AldCustomConfigProvider.useGetUserList();
29
+ const inheritedDisabled = useContext(DisabledContext);
30
+ const isDisabled = disabled ?? inheritedDisabled;
31
+ const usesDialog = !!multiple;
32
+ const usesGroupQuery = (type === EMemberPicker.GROUP || !getUsersByKeywords && !getUsersByKeywordsWithMeta) && !!(getNextLevelGroup || getNextLevelGroupWithMeta);
26
33
  const [selectedUserList, setSelectedUserList] = useState([]);
27
34
  const prevValue = usePrevious(value);
28
- const [searchUserList, setSearchUserList] = useState([]);
29
35
  const [searchString, setSearchString] = useState("");
30
36
  const [dropdownContentWidth, setDropdownContentWidth] = useState(dropdownWidth);
31
37
  const selectOwnerRef = useRef(null);
@@ -36,25 +42,20 @@ var Component = (props) => {
36
42
  }, []);
37
43
  const [dropdownOpen, setDropdownOpen] = useState(!!open);
38
44
  const queryByKeywords = useMemo(() => {
45
+ if (getUsersByKeywordsWithMeta) return getUsersByKeywordsWithMeta;
39
46
  if (getUsersByKeywords) return getUsersByKeywords;
40
47
  return (_params = {}) => Promise.reject({ message: t.MemberPicker.pleaseConfigGetUserByKeywordsMethod });
41
- }, [getUsersByKeywords, t.MemberPicker.pleaseConfigGetUserByKeywordsMethod]);
48
+ }, [
49
+ getUsersByKeywords,
50
+ getUsersByKeywordsWithMeta,
51
+ t.MemberPicker.pleaseConfigGetUserByKeywordsMethod
52
+ ]);
42
53
  const queryByIds = useMemo(() => {
43
54
  if (getUsersByIds) return getUsersByIds;
44
- return (_params = {}) => Promise.reject({ message: t.MemberPicker.pleaseConfigGetUserByIdsMethod });
55
+ return (_params_0 = {}) => Promise.reject({ message: t.MemberPicker.pleaseConfigGetUserByIdsMethod });
45
56
  }, [getUsersByIds, t.MemberPicker.pleaseConfigGetUserByIdsMethod]);
46
- const { loading, run } = useRequest(() => queryByKeywords(searchString), {
47
- refreshDeps: [searchString],
48
- manual: true,
49
- cacheKey: "member-selector",
50
- cacheTime: 1e3 * 60 * 2,
51
- onSuccess: (result) => {
52
- setSearchUserList(result);
53
- },
54
- onError: (error) => {
55
- message.error(error.message);
56
- }
57
- });
57
+ const { result: searchResult, loading, failed, retry } = useMemberSearch(queryByKeywords, searchString, dropdownOpen && !usesGroupQuery && !usesDialog);
58
+ const searchUserList = searchResult.items;
58
59
  const totalUserList = useMemo(() => {
59
60
  const totalUsers = searchUserList.concat(selectedUserList.filter((item) => {
60
61
  return ((item.type === EUserType.USER ? item.nickname : item.name) || "").toUpperCase().includes(searchString.trim().toUpperCase());
@@ -62,8 +63,8 @@ var Component = (props) => {
62
63
  return _.uniqBy(totalUsers, (data) => {
63
64
  if (data.type === EUserType.USER) return data.userId;
64
65
  return data.groupId;
65
- }).filter((item) => {
66
- if (filterItem) return filterItem(item);
66
+ }).filter((item_0) => {
67
+ if (filterItem) return filterItem(item_0);
67
68
  return true;
68
69
  });
69
70
  }, [
@@ -72,14 +73,6 @@ var Component = (props) => {
72
73
  searchUserList,
73
74
  selectedUserList
74
75
  ]);
75
- useEffect(() => {
76
- if (!dropdownOpen) return;
77
- run();
78
- }, [
79
- dropdownOpen,
80
- run,
81
- searchString
82
- ]);
83
76
  useEffect(() => {
84
77
  if (_.isEqual(value, prevValue)) return;
85
78
  if (Array.isArray(value) && (isUser(value[0]) || isUserGroup(value[0]))) setSelectedUserList(value);
@@ -94,17 +87,17 @@ var Component = (props) => {
94
87
  if (!Array.isArray(value)) param = [value];
95
88
  else param = value;
96
89
  queryByIds(param).then((result) => {
97
- const valueNotInResult = param.filter((item) => {
98
- if (item.type === EUserType.USER) return result.filter(isUser).every((user) => user.userId !== item.userId);
99
- return result.filter(isUserGroup).every((user) => user.groupId !== item.groupId);
100
- }).map((item) => {
101
- if (item.type === EUserType.USER) return {
90
+ const valueNotInResult = param.filter((item_1) => {
91
+ if (item_1.type === EUserType.USER) return result.filter(isUser).every((user) => user.userId !== item_1.userId);
92
+ return result.filter(isUserGroup).every((user_0) => user_0.groupId !== item_1.groupId);
93
+ }).map((item_2) => {
94
+ if (item_2.type === EUserType.USER) return {
102
95
  type: EUserType.USER,
103
- userId: item.userId
96
+ userId: item_2.userId
104
97
  };
105
98
  return {
106
99
  type: EUserType.USER_GROUP,
107
- groupId: item.groupId
100
+ groupId: item_2.groupId
108
101
  };
109
102
  });
110
103
  setSelectedUserList([...result, ...valueNotInResult]);
@@ -148,10 +141,16 @@ var Component = (props) => {
148
141
  };
149
142
  }
150
143
  }, [triggerRef, dropdownContentWidth]);
151
- const onDropdownOpenChange = useCallback((open) => {
152
- setDropdownOpen(open);
153
- onOpenChange?.(open);
154
- }, [onOpenChange]);
144
+ const onDropdownOpenChange = useCallback((open_0) => {
145
+ if (isDisabled) return;
146
+ if (!usesDialog || typeof props.open !== "boolean") setDropdownOpen(open_0);
147
+ onOpenChange?.(open_0);
148
+ }, [
149
+ isDisabled,
150
+ usesDialog,
151
+ props.open,
152
+ onOpenChange
153
+ ]);
155
154
  const mode = useMemo(() => {
156
155
  if (multiple === true) {
157
156
  if (typeof propsMode === "object") return {
@@ -181,49 +180,49 @@ var Component = (props) => {
181
180
  listboxId,
182
181
  selectOpen
183
182
  ]);
184
- return /* @__PURE__ */ jsx("div", {
183
+ return /* @__PURE__ */ jsxs("div", {
185
184
  ref: selectOwnerRef,
186
185
  style: { display: "contents" },
187
- children: /* @__PURE__ */ jsx(Select_default, {
186
+ children: [/* @__PURE__ */ jsx(Select_default, {
188
187
  prefix: propPrefix,
189
188
  ...restProps,
190
189
  "data-testid": dataTestId,
191
190
  "aria-label": ariaLabel,
192
- showSearch: true,
191
+ showSearch: !usesDialog,
193
192
  searchValue: searchString,
194
193
  onSearch: onSearchValueChange,
195
194
  "aria-controls": listboxId,
196
195
  "aria-activedescendant": selectOpen ? activeMemberId : void 0,
197
196
  size,
198
197
  className: cn("ald-member-picker-select", className),
199
- value: selectedUserList.map((item) => {
200
- if (item.type === EUserType.USER_GROUP) return item.groupId;
201
- else return item.userId;
198
+ value: selectedUserList.map((item_3) => {
199
+ if (item_3.type === EUserType.USER_GROUP) return item_3.groupId;
200
+ else return item_3.userId;
202
201
  }),
203
- onChange: (value) => {
204
- if (_.isEmpty(value)) {
202
+ onChange: (value_0) => {
203
+ if (_.isEmpty(value_0)) {
205
204
  setSelectedUserList([]);
206
205
  if (multiple) onChange?.([]);
207
206
  else onChange?.();
208
207
  } else {
209
- const valueList = Array.isArray(value) ? value : [value];
208
+ const valueList = Array.isArray(value_0) ? value_0 : [value_0];
210
209
  if (multiple) {
211
- const users = valueList.map((item) => {
212
- return totalUserList.find((user) => {
213
- if (user.type === EUserType.USER) return user.userId === item;
214
- return user.groupId === item;
210
+ const users_0 = valueList.map((item_4) => {
211
+ return totalUserList.find((user_1) => {
212
+ if (user_1.type === EUserType.USER) return user_1.userId === item_4;
213
+ return user_1.groupId === item_4;
215
214
  });
216
215
  }).filter(Boolean);
217
- setSelectedUserList(users);
218
- onChange?.(users);
216
+ setSelectedUserList(users_0);
217
+ onChange?.(users_0);
219
218
  } else {
220
- const user = totalUserList.find((user) => {
221
- if (user.type === EUserType.USER) return user.userId === value;
222
- return user.groupId === value;
219
+ const user_4 = totalUserList.find((user_3) => {
220
+ if (user_3.type === EUserType.USER) return user_3.userId === value_0;
221
+ return user_3.groupId === value_0;
223
222
  });
224
- if (user) {
225
- setSelectedUserList([user]);
226
- onChange?.(user);
223
+ if (user_4) {
224
+ setSelectedUserList([user_4]);
225
+ onChange?.(user_4);
227
226
  } else {
228
227
  setSelectedUserList([]);
229
228
  onChange?.();
@@ -231,7 +230,7 @@ var Component = (props) => {
231
230
  }
232
231
  }
233
232
  },
234
- disabled,
233
+ disabled: isDisabled,
235
234
  allowClear,
236
235
  onClear: () => {
237
236
  setSelectedUserList([]);
@@ -241,35 +240,35 @@ var Component = (props) => {
241
240
  },
242
241
  popupClassName: cn("ald-member-picker-popup", allowOverlap && "ald-member-picker-popup-adaptive", props.popupClassName),
243
242
  mode,
244
- options: selectedUserList.map((item) => {
245
- if (item.type === EUserType.USER_GROUP) return {
246
- label: item.name || item.groupId,
247
- value: item.groupId,
243
+ options: selectedUserList.map((item_5) => {
244
+ if (item_5.type === EUserType.USER_GROUP) return {
245
+ label: item_5.name || item_5.groupId,
246
+ value: item_5.groupId,
248
247
  tag: /* @__PURE__ */ jsxs("div", {
249
248
  className: "ald-member-picker-tag",
250
249
  children: [/* @__PURE__ */ jsx(Avatar, {
251
250
  type: "team",
252
251
  size: 20,
253
- children: item.name || item.groupId
254
- }), item.name || item.groupId]
252
+ children: item_5.name || item_5.groupId
253
+ }), item_5.name || item_5.groupId]
255
254
  })
256
255
  };
257
256
  return {
258
- label: item.nickname || item.name || item.userId,
259
- value: item.userId,
257
+ label: item_5.nickname || item_5.name || item_5.userId,
258
+ value: item_5.userId,
260
259
  tag: /* @__PURE__ */ jsxs("div", {
261
260
  className: "ald-member-picker-tag",
262
261
  children: [/* @__PURE__ */ jsx(Avatar, {
263
262
  size: 20,
264
- src: item.photo,
265
- type: item.type === EUserType.USER ? "user" : "team",
266
- children: item.nickname || item.name || item.userId
267
- }), item.nickname || item.name || item.userId]
263
+ src: item_5.photo,
264
+ type: item_5.type === EUserType.USER ? "user" : "team",
265
+ children: item_5.nickname || item_5.name || item_5.userId
266
+ }), item_5.nickname || item_5.name || item_5.userId]
268
267
  })
269
268
  };
270
269
  }),
271
270
  optionLabelProp: multiple ? "label" : "tag",
272
- open: selectOpen,
271
+ open: usesDialog ? false : selectOpen,
273
272
  onOpenChange: onDropdownOpenChange,
274
273
  popupMatchSelectWidth: panelWidth,
275
274
  allowOverlap,
@@ -282,6 +281,15 @@ var Component = (props) => {
282
281
  "aria-label": "Member selection results",
283
282
  className: cn({ "ald-member-picker-popup-body": allowOverlap }),
284
283
  children: /* @__PURE__ */ jsx(Panel, {
284
+ active: dropdownOpen,
285
+ searchFailed: failed,
286
+ useProvidedGroupSearch: type === EMemberPicker.BOTH && !usesGroupQuery,
287
+ searchFeedback: !usesGroupQuery && /* @__PURE__ */ jsx(SearchFeedback, {
288
+ failed,
289
+ hasMore: searchResult.hasMore,
290
+ pathWarningCode: searchResult.pathWarningCode,
291
+ retry
292
+ }),
285
293
  type,
286
294
  footer,
287
295
  value: selectedUserList,
@@ -302,11 +310,27 @@ var Component = (props) => {
302
310
  })
303
311
  });
304
312
  }
305
- })
313
+ }), usesDialog && !isDisabled && /* @__PURE__ */ jsx(MemberPickerDialog, {
314
+ open: selectOpen,
315
+ value: value ?? selectedUserList,
316
+ type,
317
+ lockedIds,
318
+ filterItem,
319
+ renderItem,
320
+ renderSelectedTag,
321
+ onChange: (members) => {
322
+ setSelectedUserList(members);
323
+ if (props.multiple) props.onChange?.(members);
324
+ },
325
+ footer,
326
+ onCancel,
327
+ onClose: () => onDropdownOpenChange(false)
328
+ })]
306
329
  });
307
330
  };
308
331
  var MemberSelector = Component;
309
332
  MemberSelector.MemberPanel = PanelWrapper;
333
+ MemberSelector.Dialog = MemberPickerDialog;
310
334
  //#endregion
311
335
  export { MemberSelector as default };
312
336
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/MemberPicker/index.tsx"],"sourcesContent":["import { usePrevious, useRequest } from 'ahooks';\nimport { cn } from '../lib/utils';\nimport _ from 'lodash';\nimport React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport Avatar from '../Avatar';\nimport ConfigProvider from '../ConfigProvider';\nimport './member-picker.css';\nimport {\n EUserType,\n IUser,\n IUserGroup,\n TUser,\n} from '../ConfigProvider/getUserList';\nimport { LocaleContext, getTranslator } from '../locale/default';\nimport message from '../message';\nimport Panel from './components/Panel';\nimport MemberPanel from './components/PanelWrapper';\nimport {\n EMemberPicker,\n IMemberPickerProps,\n TUserGroupValue,\n TUserValue,\n} from './interface';\nimport { getId } from './utils';\nimport { isUser, isUserGroup } from './utils/getUsersWithUserId';\nimport Select from '../Select';\nimport { Mode } from '../Select/BaseSelect';\n\nconst DEFAULT_MULTIPLE_DROPDOWN_WIDTH = 480;\n\nconst Component: React.FC<IMemberPickerProps> = (props) => {\n const { locale } = useContext(LocaleContext);\n const t = getTranslator(locale);\n\n const {\n value,\n type = EMemberPicker.USER,\n onChange,\n multiple,\n dropdownWidth,\n open,\n onOpenChange,\n placeholder = t.MemberPicker.select,\n className,\n allowClear,\n disabled,\n onClear,\n size,\n prefix: propPrefix,\n lockedIds = [],\n footer,\n onCancel,\n filterItem,\n mode: propsMode,\n renderItem,\n renderSelectedTag,\n 'data-testid': dataTestId,\n 'aria-label': ariaLabel,\n ...restProps\n } = props;\n const allowOverlap = props.allowOverlap ?? false;\n const { getUsersByIds, getUsersByKeywords } = ConfigProvider.useGetUserList();\n const [selectedUserList, setSelectedUserList] = useState<TUser>([]);\n const prevValue = usePrevious(value);\n const [searchUserList, setSearchUserList] = useState<TUser>([]);\n const [searchString, setSearchString] = useState<string>('');\n const [dropdownContentWidth, setDropdownContentWidth] =\n useState(dropdownWidth);\n const selectOwnerRef = useRef<HTMLDivElement>(null);\n // 单选默认浮窗跟触发器等宽(true),调用方传 dropdownWidth 时用具体数字;\n // 多选默认 480,单条记录只有 头像+nickname 时触发器太窄装不下选中标签,故固定值。\n const panelWidth: number | boolean =\n dropdownWidth ?? (multiple ? DEFAULT_MULTIPLE_DROPDOWN_WIDTH : true);\n\n const triggerRef = useRef<HTMLDivElement>(null);\n const onSearchValueChange = useCallback((v: string) => {\n setSearchString(v);\n }, []);\n const [dropdownOpen, setDropdownOpen] = useState<boolean>(!!open);\n const queryByKeywords = useMemo(() => {\n if (getUsersByKeywords) {\n return getUsersByKeywords;\n }\n\n return (_params = {}) =>\n Promise.reject({\n message: t.MemberPicker.pleaseConfigGetUserByKeywordsMethod,\n });\n }, [getUsersByKeywords, t.MemberPicker.pleaseConfigGetUserByKeywordsMethod]);\n const queryByIds = useMemo(() => {\n if (getUsersByIds) {\n return getUsersByIds;\n }\n\n return (_params = {}) =>\n Promise.reject({\n message: t.MemberPicker.pleaseConfigGetUserByIdsMethod,\n });\n }, [getUsersByIds, t.MemberPicker.pleaseConfigGetUserByIdsMethod]);\n const { loading, run } = useRequest(() => queryByKeywords(searchString), {\n refreshDeps: [searchString],\n manual: true,\n cacheKey: 'member-selector',\n cacheTime: 1000 * 60 * 2, // 2分钟内不重复请求\n onSuccess: (result) => {\n setSearchUserList(result);\n },\n onError: (error) => {\n message.error(error.message);\n },\n });\n\n const totalUserList: TUser = useMemo(() => {\n const totalUsers = searchUserList.concat(\n selectedUserList.filter((item) => {\n const name =\n (item.type === EUserType.USER ? item.nickname : item.name) || '';\n\n return name.toUpperCase().includes(searchString.trim().toUpperCase());\n }),\n );\n\n return _.uniqBy(totalUsers, (data: IUser | IUserGroup) => {\n if (data.type === EUserType.USER) return data.userId;\n\n return data.groupId;\n }).filter((item) => {\n if (filterItem) {\n return filterItem(item);\n }\n\n return true;\n });\n }, [filterItem, searchString, searchUserList, selectedUserList]);\n\n useEffect(() => {\n if (!dropdownOpen) return;\n run();\n }, [dropdownOpen, run, searchString]);\n\n useEffect(() => {\n if (_.isEqual(value, prevValue)) {\n return;\n }\n if (Array.isArray(value) && (isUser(value[0]) || isUserGroup(value[0]))) {\n setSelectedUserList(value as TUser);\n } else if (isUser(value) || isUserGroup(value)) {\n setSelectedUserList([value]);\n } else {\n let param: Array<TUserValue | TUserGroupValue> = [];\n if (!value) return;\n if (Array.isArray(value) && value.length === 0) {\n setSelectedUserList([]);\n\n return;\n }\n if (!Array.isArray(value)) {\n param = [value];\n } else {\n param = value;\n }\n queryByIds(param).then((result) => {\n // 如果用户已被删除,则需要展示出id\n const valueNotInResult: TUser = param\n .filter((item) => {\n if (item.type === EUserType.USER) {\n return result\n .filter(isUser)\n .every((user) => user.userId !== item.userId);\n }\n\n return result\n .filter(isUserGroup)\n .every((user) => user.groupId !== item.groupId);\n })\n .map((item) => {\n if (item.type === EUserType.USER) {\n return {\n type: EUserType.USER,\n userId: item.userId,\n } as IUser;\n }\n\n return {\n type: EUserType.USER_GROUP,\n groupId: item.groupId,\n } as IUserGroup;\n });\n\n setSelectedUserList([...result, ...valueNotInResult]);\n });\n }\n }, [value, queryByIds, prevValue]);\n\n const onSelectedChange = useCallback(\n (users: TUser) => {\n if (multiple) {\n setSelectedUserList(users);\n onChange?.(users);\n } else {\n setSelectedUserList(users);\n onChange?.(users[0]);\n }\n setDropdownOpen(false);\n },\n [multiple, onChange, setDropdownOpen],\n );\n\n useEffect(() => {\n if (typeof open === 'boolean') {\n setDropdownOpen(open);\n }\n }, [open]);\n\n useEffect(() => {\n if (!dropdownContentWidth) {\n const resizeEle = triggerRef.current;\n if (!resizeEle) return;\n const resizeObserver = new ResizeObserver((entries) => {\n for (const entry of entries) {\n const { width } = entry.contentRect;\n setDropdownContentWidth(width);\n }\n });\n resizeObserver.observe(resizeEle);\n\n return () => {\n resizeObserver.unobserve(resizeEle);\n };\n }\n }, [triggerRef, dropdownContentWidth]);\n const onDropdownOpenChange = useCallback(\n (open: boolean) => {\n setDropdownOpen(open);\n onOpenChange?.(open);\n },\n [onOpenChange],\n );\n const mode = useMemo(() => {\n if (multiple === true) {\n if (typeof propsMode === 'object')\n return {\n ...(propsMode || {}),\n type: 'multiple',\n responsive: _.isNil(propsMode.responsive)\n ? true\n : propsMode.responsive,\n } as Mode;\n return {\n type: 'multiple',\n responsive: true,\n } as Mode;\n }\n\n return multiple ? (multiple as Mode) : propsMode;\n }, [multiple, propsMode]);\n\n const selectOpen = typeof open === 'boolean' ? open : dropdownOpen;\n const listboxId = `ald-member-picker-listbox-${React.useId().replace(\n /:/g,\n '',\n )}`;\n const activeMember = totalUserList[0];\n const activeMemberId = activeMember\n ? `ald-member-picker-option-${getId(activeMember)}`\n : undefined;\n\n useEffect(() => {\n const owner = selectOwnerRef.current?.querySelector<HTMLElement>(\n '[role=\"combobox\"], input',\n );\n if (!owner) return;\n owner.setAttribute('aria-controls', listboxId);\n if (selectOpen && activeMemberId) {\n owner.setAttribute('aria-activedescendant', activeMemberId);\n } else {\n owner.removeAttribute('aria-activedescendant');\n }\n }, [activeMemberId, listboxId, selectOpen]);\n\n return (\n <div ref={selectOwnerRef} style={{ display: 'contents' }}>\n <Select\n prefix={propPrefix}\n {...restProps}\n data-testid={dataTestId}\n aria-label={ariaLabel}\n showSearch\n searchValue={searchString}\n onSearch={onSearchValueChange}\n aria-controls={listboxId}\n aria-activedescendant={selectOpen ? activeMemberId : undefined}\n size={size}\n className={cn('ald-member-picker-select', className)}\n value={selectedUserList.map((item) => {\n if (item.type === EUserType.USER_GROUP) {\n return item.groupId;\n } else {\n return item.userId;\n }\n })}\n onChange={(value) => {\n if (_.isEmpty(value)) {\n setSelectedUserList([]);\n if (multiple) {\n onChange?.([]);\n } else {\n onChange?.();\n }\n } else {\n const valueList = Array.isArray(value) ? value : [value];\n if (multiple) {\n const users = valueList\n .map((item) => {\n const user = totalUserList.find((user) => {\n if (user.type === EUserType.USER) {\n return user.userId === item;\n }\n\n return user.groupId === item;\n });\n\n return user;\n })\n .filter(Boolean) as TUser;\n setSelectedUserList(users);\n onChange?.(users);\n } else {\n const user = totalUserList.find((user) => {\n if (user.type === EUserType.USER) {\n return user.userId === value;\n }\n\n return user.groupId === value;\n });\n if (user) {\n setSelectedUserList([user]);\n onChange?.(user);\n } else {\n setSelectedUserList([]);\n onChange?.();\n }\n }\n }\n }}\n disabled={disabled}\n allowClear={allowClear}\n onClear={() => {\n setSelectedUserList([]);\n if (multiple) {\n onChange?.([]);\n } else {\n onChange?.();\n }\n onClear?.();\n }}\n popupClassName={cn(\n 'ald-member-picker-popup',\n allowOverlap && 'ald-member-picker-popup-adaptive',\n props.popupClassName,\n )}\n mode={mode}\n options={selectedUserList.map((item) => {\n if (item.type === EUserType.USER_GROUP)\n return {\n label: item.name || item.groupId,\n value: item.groupId,\n tag: (\n <div className={'ald-member-picker-tag'}>\n <Avatar type=\"team\" size={20}>\n {item.name || item.groupId}\n </Avatar>\n {item.name || item.groupId}\n </div>\n ),\n };\n\n return {\n label: item.nickname || item.name || item.userId,\n value: item.userId,\n tag: (\n <div className={'ald-member-picker-tag'}>\n <Avatar\n size={20}\n src={item.photo}\n type={item.type === EUserType.USER ? 'user' : 'team'}\n >\n {item.nickname || item.name || item.userId}\n </Avatar>\n {item.nickname || item.name || item.userId}\n </div>\n ),\n };\n })}\n optionLabelProp={multiple ? 'label' : 'tag'}\n open={selectOpen}\n onOpenChange={onDropdownOpenChange}\n popupMatchSelectWidth={panelWidth}\n allowOverlap={allowOverlap}\n placeholder={placeholder}\n dropdownRender={() => {\n return (\n <div\n ref={triggerRef}\n id={listboxId}\n role=\"group\"\n aria-label=\"Member selection results\"\n className={cn({\n 'ald-member-picker-popup-body': allowOverlap,\n })}\n >\n <Panel\n type={type}\n footer={footer}\n value={selectedUserList}\n dataList={totalUserList}\n lockedIds={lockedIds}\n multiple={!!multiple}\n loading={loading}\n dropdownWidth={dropdownContentWidth}\n onSearchValueChange={onSearchValueChange}\n onChange={onSelectedChange}\n onCancel={() => {\n onCancel?.();\n setDropdownOpen(false);\n }}\n renderItem={renderItem}\n renderSelectedTag={renderSelectedTag}\n searchValue={searchString}\n ></Panel>\n </div>\n );\n }}\n ></Select>\n </div>\n );\n};\n\nconst MemberSelector = Component as React.FC<IMemberPickerProps> & {\n MemberPanel: typeof MemberPanel;\n};\n\nMemberSelector.MemberPanel = MemberPanel;\nexport default MemberSelector;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["MemberPickerDialog","DisabledContext","useMemberSearch","SearchFeedback","usePrevious","cn","_","React","useCallback","useContext","useEffect","useMemo","useRef","useState","Avatar","ConfigProvider","EUserType","IUser","IUserGroup","TUser","LocaleContext","getTranslator","Panel","MemberPanel","EMemberPicker","IMemberPickerProps","TUserGroupValue","TUserValue","getId","isUser","isUserGroup","Select","Mode","DEFAULT_MULTIPLE_DROPDOWN_WIDTH","Component","FC","props","locale","t","value","type","USER","onChange","multiple","dropdownWidth","open","onOpenChange","placeholder","MemberPicker","select","className","allowClear","disabled","onClear","size","prefix","propPrefix","lockedIds","footer","onCancel","filterItem","mode","propsMode","renderItem","renderSelectedTag","dataTestId","ariaLabel","restProps","allowOverlap","getUsersByIds","getUsersByKeywords","getUsersByKeywordsWithMeta","getNextLevelGroup","getNextLevelGroupWithMeta","useGetUserList","inheritedDisabled","isDisabled","usesDialog","usesGroupQuery","GROUP","selectedUserList","setSelectedUserList","prevValue","searchString","setSearchString","dropdownContentWidth","setDropdownContentWidth","selectOwnerRef","HTMLDivElement","panelWidth","triggerRef","onSearchValueChange","v","dropdownOpen","setDropdownOpen","queryByKeywords","_params","Promise","reject","message","pleaseConfigGetUserByKeywordsMethod","queryByIds","pleaseConfigGetUserByIdsMethod","result","searchResult","loading","failed","retry","searchUserList","items","totalUserList","totalUsers","concat","filter","item","name","nickname","toUpperCase","includes","trim","uniqBy","data","userId","groupId","isEqual","Array","isArray","param","length","then","valueNotInResult","every","user","map","USER_GROUP","onSelectedChange","users","resizeEle","current","resizeObserver","ResizeObserver","entries","entry","width","contentRect","observe","unobserve","onDropdownOpenChange","responsive","isNil","selectOpen","listboxId","useId","replace","activeMember","activeMemberId","undefined","owner","querySelector","HTMLElement","setAttribute","removeAttribute","display","isEmpty","valueList","find","Boolean","popupClassName","label","tag","photo","BOTH","hasMore","pathWarningCode","members","MemberSelector","Dialog"],"sources":["../../src/MemberPicker/index.tsx"],"sourcesContent":["import MemberPickerDialog from './dialog/MemberPickerDialog';\nimport DisabledContext from '../ConfigProvider/DisabledContext';\nimport useMemberSearch from './useMemberSearch';\nimport SearchFeedback from './components/SearchFeedback';\nimport { usePrevious } from 'ahooks';\nimport { cn } from '../lib/utils';\nimport _ from 'lodash';\nimport React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport Avatar from '../Avatar';\nimport ConfigProvider from '../ConfigProvider';\nimport './member-picker.css';\nimport {\n EUserType,\n IUser,\n IUserGroup,\n TUser,\n} from '../ConfigProvider/getUserList';\nimport { LocaleContext, getTranslator } from '../locale/default';\nimport Panel from './components/Panel';\nimport MemberPanel from './components/PanelWrapper';\nimport {\n EMemberPicker,\n IMemberPickerProps,\n TUserGroupValue,\n TUserValue,\n} from './interface';\nimport { getId } from './utils';\nimport { isUser, isUserGroup } from './utils/getUsersWithUserId';\nimport Select from '../Select';\nimport { Mode } from '../Select/BaseSelect';\n\nconst DEFAULT_MULTIPLE_DROPDOWN_WIDTH = 480;\n\nconst Component: React.FC<IMemberPickerProps> = (props) => {\n const { locale } = useContext(LocaleContext);\n const t = getTranslator(locale);\n\n const {\n value,\n type = EMemberPicker.USER,\n onChange,\n multiple,\n dropdownWidth,\n open,\n onOpenChange,\n placeholder = t.MemberPicker.select,\n className,\n allowClear,\n disabled,\n onClear,\n size,\n prefix: propPrefix,\n lockedIds = [],\n footer,\n onCancel,\n filterItem,\n mode: propsMode,\n renderItem,\n renderSelectedTag,\n 'data-testid': dataTestId,\n 'aria-label': ariaLabel,\n ...restProps\n } = props;\n const allowOverlap = props.allowOverlap ?? false;\n const {\n getUsersByIds,\n getUsersByKeywords,\n getUsersByKeywordsWithMeta,\n getNextLevelGroup,\n getNextLevelGroupWithMeta,\n } = ConfigProvider.useGetUserList();\n const inheritedDisabled = useContext(DisabledContext);\n const isDisabled = disabled ?? inheritedDisabled;\n // 呈现方式由选择模式唯一决定,多选使用弹窗,单选保持浮窗。\n const usesDialog = !!multiple;\n const usesGroupQuery =\n (type === EMemberPicker.GROUP ||\n (!getUsersByKeywords && !getUsersByKeywordsWithMeta)) &&\n !!(getNextLevelGroup || getNextLevelGroupWithMeta);\n const [selectedUserList, setSelectedUserList] = useState<TUser>([]);\n const prevValue = usePrevious(value);\n const [searchString, setSearchString] = useState<string>('');\n const [dropdownContentWidth, setDropdownContentWidth] =\n useState(dropdownWidth);\n const selectOwnerRef = useRef<HTMLDivElement>(null);\n // 单选默认浮窗跟触发器等宽(true),调用方传 dropdownWidth 时用具体数字;\n // 多选默认 480,单条记录只有 头像+nickname 时触发器太窄装不下选中标签,故固定值。\n const panelWidth: number | boolean =\n dropdownWidth ?? (multiple ? DEFAULT_MULTIPLE_DROPDOWN_WIDTH : true);\n\n const triggerRef = useRef<HTMLDivElement>(null);\n const onSearchValueChange = useCallback((v: string) => {\n setSearchString(v);\n }, []);\n const [dropdownOpen, setDropdownOpen] = useState<boolean>(!!open);\n const queryByKeywords = useMemo(() => {\n if (getUsersByKeywordsWithMeta) return getUsersByKeywordsWithMeta;\n if (getUsersByKeywords) {\n return getUsersByKeywords;\n }\n\n return (_params = {}) =>\n Promise.reject({\n message: t.MemberPicker.pleaseConfigGetUserByKeywordsMethod,\n });\n }, [\n getUsersByKeywords,\n getUsersByKeywordsWithMeta,\n t.MemberPicker.pleaseConfigGetUserByKeywordsMethod,\n ]);\n const queryByIds = useMemo(() => {\n if (getUsersByIds) {\n return getUsersByIds;\n }\n\n return (_params = {}) =>\n Promise.reject({\n message: t.MemberPicker.pleaseConfigGetUserByIdsMethod,\n });\n }, [getUsersByIds, t.MemberPicker.pleaseConfigGetUserByIdsMethod]);\n const {\n result: searchResult,\n loading,\n failed,\n retry,\n } = useMemberSearch<IUser | IUserGroup>(\n queryByKeywords,\n searchString,\n dropdownOpen && !usesGroupQuery && !usesDialog,\n );\n const searchUserList = searchResult.items;\n\n const totalUserList: TUser = useMemo(() => {\n const totalUsers = searchUserList.concat(\n selectedUserList.filter((item) => {\n const name =\n (item.type === EUserType.USER ? item.nickname : item.name) || '';\n\n return name.toUpperCase().includes(searchString.trim().toUpperCase());\n }),\n );\n\n return _.uniqBy(totalUsers, (data: IUser | IUserGroup) => {\n if (data.type === EUserType.USER) return data.userId;\n\n return data.groupId;\n }).filter((item) => {\n if (filterItem) {\n return filterItem(item);\n }\n\n return true;\n });\n }, [filterItem, searchString, searchUserList, selectedUserList]);\n\n useEffect(() => {\n if (_.isEqual(value, prevValue)) {\n return;\n }\n if (Array.isArray(value) && (isUser(value[0]) || isUserGroup(value[0]))) {\n setSelectedUserList(value as TUser);\n } else if (isUser(value) || isUserGroup(value)) {\n setSelectedUserList([value]);\n } else {\n let param: Array<TUserValue | TUserGroupValue> = [];\n if (!value) return;\n if (Array.isArray(value) && value.length === 0) {\n setSelectedUserList([]);\n\n return;\n }\n if (!Array.isArray(value)) {\n param = [value];\n } else {\n param = value;\n }\n queryByIds(param).then((result) => {\n // 如果用户已被删除,则需要展示出id\n const valueNotInResult: TUser = param\n .filter((item) => {\n if (item.type === EUserType.USER) {\n return result\n .filter(isUser)\n .every((user) => user.userId !== item.userId);\n }\n\n return result\n .filter(isUserGroup)\n .every((user) => user.groupId !== item.groupId);\n })\n .map((item) => {\n if (item.type === EUserType.USER) {\n return {\n type: EUserType.USER,\n userId: item.userId,\n } as IUser;\n }\n\n return {\n type: EUserType.USER_GROUP,\n groupId: item.groupId,\n } as IUserGroup;\n });\n\n setSelectedUserList([...result, ...valueNotInResult]);\n });\n }\n }, [value, queryByIds, prevValue]);\n\n const onSelectedChange = useCallback(\n (users: TUser) => {\n if (multiple) {\n setSelectedUserList(users);\n onChange?.(users);\n } else {\n setSelectedUserList(users);\n onChange?.(users[0]);\n }\n setDropdownOpen(false);\n },\n [multiple, onChange, setDropdownOpen],\n );\n\n useEffect(() => {\n if (typeof open === 'boolean') {\n setDropdownOpen(open);\n }\n }, [open]);\n\n useEffect(() => {\n if (!dropdownContentWidth) {\n const resizeEle = triggerRef.current;\n if (!resizeEle) return;\n const resizeObserver = new ResizeObserver((entries) => {\n for (const entry of entries) {\n const { width } = entry.contentRect;\n setDropdownContentWidth(width);\n }\n });\n resizeObserver.observe(resizeEle);\n\n return () => {\n resizeObserver.unobserve(resizeEle);\n };\n }\n }, [triggerRef, dropdownContentWidth]);\n const onDropdownOpenChange = useCallback(\n (open: boolean) => {\n if (isDisabled) return;\n if (!usesDialog || typeof props.open !== 'boolean') setDropdownOpen(open);\n onOpenChange?.(open);\n },\n [isDisabled, usesDialog, props.open, onOpenChange],\n );\n const mode = useMemo(() => {\n if (multiple === true) {\n if (typeof propsMode === 'object')\n return {\n ...(propsMode || {}),\n type: 'multiple',\n responsive: _.isNil(propsMode.responsive)\n ? true\n : propsMode.responsive,\n } as Mode;\n return {\n type: 'multiple',\n responsive: true,\n } as Mode;\n }\n\n return multiple ? (multiple as Mode) : propsMode;\n }, [multiple, propsMode]);\n\n const selectOpen = typeof open === 'boolean' ? open : dropdownOpen;\n const listboxId = `ald-member-picker-listbox-${React.useId().replace(\n /:/g,\n '',\n )}`;\n const activeMember = totalUserList[0];\n const activeMemberId = activeMember\n ? `ald-member-picker-option-${getId(activeMember)}`\n : undefined;\n\n useEffect(() => {\n const owner = selectOwnerRef.current?.querySelector<HTMLElement>(\n '[role=\"combobox\"], input',\n );\n if (!owner) return;\n owner.setAttribute('aria-controls', listboxId);\n if (selectOpen && activeMemberId) {\n owner.setAttribute('aria-activedescendant', activeMemberId);\n } else {\n owner.removeAttribute('aria-activedescendant');\n }\n }, [activeMemberId, listboxId, selectOpen]);\n\n return (\n <div ref={selectOwnerRef} style={{ display: 'contents' }}>\n <Select\n prefix={propPrefix}\n {...restProps}\n data-testid={dataTestId}\n aria-label={ariaLabel}\n showSearch={!usesDialog}\n searchValue={searchString}\n onSearch={onSearchValueChange}\n aria-controls={listboxId}\n aria-activedescendant={selectOpen ? activeMemberId : undefined}\n size={size}\n className={cn('ald-member-picker-select', className)}\n value={selectedUserList.map((item) => {\n if (item.type === EUserType.USER_GROUP) {\n return item.groupId;\n } else {\n return item.userId;\n }\n })}\n onChange={(value) => {\n if (_.isEmpty(value)) {\n setSelectedUserList([]);\n if (multiple) {\n onChange?.([]);\n } else {\n onChange?.();\n }\n } else {\n const valueList = Array.isArray(value) ? value : [value];\n if (multiple) {\n const users = valueList\n .map((item) => {\n const user = totalUserList.find((user) => {\n if (user.type === EUserType.USER) {\n return user.userId === item;\n }\n\n return user.groupId === item;\n });\n\n return user;\n })\n .filter(Boolean) as TUser;\n setSelectedUserList(users);\n onChange?.(users);\n } else {\n const user = totalUserList.find((user) => {\n if (user.type === EUserType.USER) {\n return user.userId === value;\n }\n\n return user.groupId === value;\n });\n if (user) {\n setSelectedUserList([user]);\n onChange?.(user);\n } else {\n setSelectedUserList([]);\n onChange?.();\n }\n }\n }\n }}\n disabled={isDisabled}\n allowClear={allowClear}\n onClear={() => {\n setSelectedUserList([]);\n if (multiple) {\n onChange?.([]);\n } else {\n onChange?.();\n }\n onClear?.();\n }}\n popupClassName={cn(\n 'ald-member-picker-popup',\n allowOverlap && 'ald-member-picker-popup-adaptive',\n props.popupClassName,\n )}\n mode={mode}\n options={selectedUserList.map((item) => {\n if (item.type === EUserType.USER_GROUP)\n return {\n label: item.name || item.groupId,\n value: item.groupId,\n tag: (\n <div className={'ald-member-picker-tag'}>\n <Avatar type=\"team\" size={20}>\n {item.name || item.groupId}\n </Avatar>\n {item.name || item.groupId}\n </div>\n ),\n };\n\n return {\n label: item.nickname || item.name || item.userId,\n value: item.userId,\n tag: (\n <div className={'ald-member-picker-tag'}>\n <Avatar\n size={20}\n src={item.photo}\n type={item.type === EUserType.USER ? 'user' : 'team'}\n >\n {item.nickname || item.name || item.userId}\n </Avatar>\n {item.nickname || item.name || item.userId}\n </div>\n ),\n };\n })}\n optionLabelProp={multiple ? 'label' : 'tag'}\n open={usesDialog ? false : selectOpen}\n onOpenChange={onDropdownOpenChange}\n popupMatchSelectWidth={panelWidth}\n allowOverlap={allowOverlap}\n placeholder={placeholder}\n dropdownRender={() => {\n return (\n <div\n ref={triggerRef}\n id={listboxId}\n role=\"group\"\n aria-label=\"Member selection results\"\n className={cn({\n 'ald-member-picker-popup-body': allowOverlap,\n })}\n >\n <Panel\n active={dropdownOpen}\n searchFailed={failed}\n useProvidedGroupSearch={\n type === EMemberPicker.BOTH && !usesGroupQuery\n }\n searchFeedback={\n !usesGroupQuery && (\n <SearchFeedback\n failed={failed}\n hasMore={searchResult.hasMore}\n pathWarningCode={searchResult.pathWarningCode}\n retry={retry}\n />\n )\n }\n type={type}\n footer={footer}\n value={selectedUserList}\n dataList={totalUserList}\n lockedIds={lockedIds}\n multiple={!!multiple}\n loading={loading}\n dropdownWidth={dropdownContentWidth}\n onSearchValueChange={onSearchValueChange}\n onChange={onSelectedChange}\n onCancel={() => {\n onCancel?.();\n setDropdownOpen(false);\n }}\n renderItem={renderItem}\n renderSelectedTag={renderSelectedTag}\n searchValue={searchString}\n ></Panel>\n </div>\n );\n }}\n ></Select>\n {usesDialog && !isDisabled && (\n <MemberPickerDialog\n open={selectOpen}\n value={value ?? selectedUserList}\n type={type}\n lockedIds={lockedIds}\n filterItem={filterItem}\n renderItem={renderItem}\n renderSelectedTag={renderSelectedTag}\n onChange={(members) => {\n setSelectedUserList(members);\n if (props.multiple) props.onChange?.(members);\n }}\n footer={footer}\n onCancel={onCancel}\n onClose={() => onDropdownOpenChange(false)}\n />\n )}\n </div>\n );\n};\n\nconst MemberSelector = Component as React.FC<IMemberPickerProps> & {\n MemberPanel: typeof MemberPanel;\n Dialog: typeof MemberPickerDialog;\n};\n\nMemberSelector.MemberPanel = MemberPanel;\nMemberSelector.Dialog = MemberPickerDialog;\nexport default MemberSelector;\n"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { ReactNode } from 'react';
2
- import { IUser, IUserGroup, TUser } from '../ConfigProvider/getUserList';
3
- import { ISelectProps } from '../Select/interface';
4
- import { RequiredProperties } from '../_utils/type';
5
- import { Mode } from '../Select/BaseSelect';
2
+ import { IUser, IUserGroup, TUser } from '../ConfigProvider/getUserList.js';
3
+ import { ISelectProps } from '../Select/interface.js';
4
+ import { RequiredProperties } from '../_utils/type.js';
5
+ import { Mode } from '../Select/BaseSelect.js';
6
6
  export type TUserValue = RequiredProperties<IUser, 'type' | 'userId'>;
7
7
  export type TUserGroupValue = RequiredProperties<IUserGroup, 'type' | 'groupId'>;
8
8
  export type TMemberPickerValue = TUserValue | TUserGroupValue | Array<TUserValue | TUserGroupValue>;
@@ -1 +1 @@
1
- {"version":3,"file":"interface.js","names":[],"sources":["../../src/MemberPicker/interface.ts"],"sourcesContent":["import { ReactNode } from 'react';\nimport { IUser, IUserGroup, TUser } from '../ConfigProvider/getUserList';\nimport { ISelectProps } from '../Select/interface';\nimport { RequiredProperties } from '../_utils/type';\nimport { Mode } from '../Select/BaseSelect';\n\nexport type TUserValue = RequiredProperties<IUser, 'type' | 'userId'>;\nexport type TUserGroupValue = RequiredProperties<\n IUserGroup,\n 'type' | 'groupId'\n>;\n\nexport type TMemberPickerValue =\n | TUserValue\n | TUserGroupValue\n | Array<TUserValue | TUserGroupValue>;\n\nexport enum EMemberPicker {\n GROUP = 'GROUP',\n USER = 'USER',\n BOTH = 'BOTH',\n}\n\nexport interface IBaseMemberSelectorProps extends Omit<ISelectProps, 'type'> {\n value?: TMemberPickerValue;\n dropdownWidth?: number;\n open?: boolean;\n onOpenChange?: (open: boolean) => void;\n type?: EMemberPicker;\n lockedIds?: Array<TUserValue | TUserGroupValue>;\n footer?: ReactNode;\n onCancel?: () => void;\n filterItem?: (item: IUser | IUserGroup) => boolean;\n renderItem?: (\n item: IUser | IUserGroup,\n context: {\n isSelected: boolean;\n disabled: boolean;\n onClick: () => void;\n onNextLevel?: () => void;\n originNode: ReactNode;\n },\n ) => ReactNode;\n renderSelectedTag?: (\n user: IUser | IUserGroup,\n originNode: ReactNode,\n ) => ReactNode;\n}\n\nexport interface IMultipleMemberSelectorProps extends IBaseMemberSelectorProps {\n multiple: true | Mode;\n onChange?(v: TUser): void;\n}\n\nexport interface ISingleMemberSelectorProps extends IBaseMemberSelectorProps {\n multiple?: false;\n onChange?(v?: IUser | IUserGroup): void;\n}\n\nexport type IMemberPickerProps =\n | IMultipleMemberSelectorProps\n | ISingleMemberSelectorProps;\n\nexport type { IUser };\n"],"mappings":";AAiBA,IAAY,gBAAL,yBAAA,eAAA;AACL,eAAA,WAAA;AACA,eAAA,UAAA;AACA,eAAA,UAAA;;KACD"}
1
+ {"version":3,"file":"interface.js","names":["ReactNode","IUser","IUserGroup","TUser","ISelectProps","RequiredProperties","Mode","TUserValue","TUserGroupValue","TMemberPickerValue","Array","EMemberPicker","GROUP","USER","BOTH","IBaseMemberSelectorProps","Omit","value","dropdownWidth","open","onOpenChange","type","lockedIds","footer","onCancel","filterItem","item","renderItem","context","isSelected","disabled","onClick","onNextLevel","originNode","renderSelectedTag","user","IMultipleMemberSelectorProps","multiple","onChange","v","ISingleMemberSelectorProps","IMemberPickerProps"],"sources":["../../src/MemberPicker/interface.ts"],"sourcesContent":["import { ReactNode } from 'react';\nimport { IUser, IUserGroup, TUser } from '../ConfigProvider/getUserList';\nimport { ISelectProps } from '../Select/interface';\nimport { RequiredProperties } from '../_utils/type';\nimport { Mode } from '../Select/BaseSelect';\n\nexport type TUserValue = RequiredProperties<IUser, 'type' | 'userId'>;\nexport type TUserGroupValue = RequiredProperties<\n IUserGroup,\n 'type' | 'groupId'\n>;\n\nexport type TMemberPickerValue =\n | TUserValue\n | TUserGroupValue\n | Array<TUserValue | TUserGroupValue>;\n\nexport enum EMemberPicker {\n GROUP = 'GROUP',\n USER = 'USER',\n BOTH = 'BOTH',\n}\n\nexport interface IBaseMemberSelectorProps extends Omit<ISelectProps, 'type'> {\n value?: TMemberPickerValue;\n dropdownWidth?: number;\n open?: boolean;\n onOpenChange?: (open: boolean) => void;\n type?: EMemberPicker;\n lockedIds?: Array<TUserValue | TUserGroupValue>;\n footer?: ReactNode;\n onCancel?: () => void;\n filterItem?: (item: IUser | IUserGroup) => boolean;\n renderItem?: (\n item: IUser | IUserGroup,\n context: {\n isSelected: boolean;\n disabled: boolean;\n onClick: () => void;\n onNextLevel?: () => void;\n originNode: ReactNode;\n },\n ) => ReactNode;\n renderSelectedTag?: (\n user: IUser | IUserGroup,\n originNode: ReactNode,\n ) => ReactNode;\n}\n\nexport interface IMultipleMemberSelectorProps extends IBaseMemberSelectorProps {\n multiple: true | Mode;\n onChange?(v: TUser): void;\n}\n\nexport interface ISingleMemberSelectorProps extends IBaseMemberSelectorProps {\n multiple?: false;\n onChange?(v?: IUser | IUserGroup): void;\n}\n\nexport type IMemberPickerProps =\n | IMultipleMemberSelectorProps\n | ISingleMemberSelectorProps;\n\nexport type { IUser };\n"],"mappings":";AAiBA,IAAYW,gBAAL,yBAAA,eAAA;AACLC,eAAAA,WAAAA;AACAC,eAAAA,UAAAA;AACAC,eAAAA,UAAAA;;KACF"}
@@ -1,5 +1,5 @@
1
- import { IUser, TUser } from '../../ConfigProvider/getUserList';
2
- import { TUserGroupValue, TUserValue } from '../interface';
1
+ import { IUser, TUser } from '../../ConfigProvider/getUserList.js';
2
+ import { TUserGroupValue, TUserValue } from '../interface.js';
3
3
  export declare function genUserListByKeywords(keywords: string): TUser;
4
4
  export declare function genUserListByIds(ids: string[]): IUser[];
5
5
  export declare const getUserByIds: (ids: Array<TUserValue | TUserGroupValue>) => Promise<IUser[]>;
@@ -0,0 +1,8 @@
1
+ import { MemberSearchResult } from '../ConfigProvider/getUserList.js';
2
+ /** 搜索状态只属于当前组件和当前请求;关闭、换关键字后拒绝旧响应回写。 */
3
+ export default function useMemberSearch<T>(query: (keyword: string) => Promise<T[] | MemberSearchResult<T>>, keyword: string, enabled?: boolean): {
4
+ result: MemberSearchResult<T>;
5
+ loading: boolean;
6
+ failed: boolean;
7
+ retry: () => void;
8
+ };