@qsxy/element-plus-react 1.0.0-next.10 → 1.0.0-next.11

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 (398) hide show
  1. package/dist/Avatar/Avatar.js +73 -72
  2. package/dist/Avatar/index.js +1 -39
  3. package/dist/Avatar/typings.js +1 -17
  4. package/dist/Badge/Badge.d.ts +2 -2
  5. package/dist/Badge/Badge.js +63 -60
  6. package/dist/Badge/index.js +1 -39
  7. package/dist/Badge/typings.d.ts +1 -1
  8. package/dist/Badge/typings.js +1 -17
  9. package/dist/Breadcrumb/Breadcrumb.js +23 -50
  10. package/dist/Breadcrumb/BreadcrumbItem.js +45 -51
  11. package/dist/Breadcrumb/index.js +2 -42
  12. package/dist/Breadcrumb/typings.js +1 -17
  13. package/dist/Button/Button.js +132 -105
  14. package/dist/Button/ButtonGroup.js +29 -48
  15. package/dist/Button/ButtonGroupContext.js +2 -30
  16. package/dist/Button/index.js +2 -42
  17. package/dist/Button/typings.d.ts +4 -2
  18. package/dist/Button/typings.js +1 -17
  19. package/dist/Button/useButtonCustomStyle.d.ts +4 -0
  20. package/dist/Button/useButtonCustomStyle.js +65 -0
  21. package/dist/Calendar/Calendar.js +310 -237
  22. package/dist/Calendar/CalendarContext.js +3 -27
  23. package/dist/Calendar/DatePanel.js +191 -158
  24. package/dist/Calendar/DateRangePanel.js +140 -125
  25. package/dist/Calendar/Footer.js +41 -51
  26. package/dist/Calendar/Header.js +83 -65
  27. package/dist/Calendar/MonthPanel.js +138 -124
  28. package/dist/Calendar/MonthRangePanel.js +137 -124
  29. package/dist/Calendar/ShortCuts.js +21 -40
  30. package/dist/Calendar/WeekPanel.js +213 -145
  31. package/dist/Calendar/YearPanel.js +150 -125
  32. package/dist/Calendar/YearRangePanel.js +138 -128
  33. package/dist/Calendar/index.js +4 -47
  34. package/dist/Calendar/typings.js +1 -17
  35. package/dist/Calendar/util.js +26 -68
  36. package/dist/Card/Card.js +36 -46
  37. package/dist/Card/index.js +1 -39
  38. package/dist/Card/typings.js +1 -17
  39. package/dist/Carousel/Carousel.js +202 -166
  40. package/dist/Carousel/CarouselContext.js +14 -42
  41. package/dist/Carousel/CarouselItem.js +55 -71
  42. package/dist/Carousel/hooks/useCarousel.js +263 -238
  43. package/dist/Carousel/hooks/useCarouselItem.js +136 -132
  44. package/dist/Carousel/index.js +2 -42
  45. package/dist/Carousel/typings.js +1 -17
  46. package/dist/Cascader/Cascader.js +693 -569
  47. package/dist/Cascader/CascaderContext.js +9 -45
  48. package/dist/Cascader/CascaderDropdown.js +90 -77
  49. package/dist/Cascader/CascaderMenu.js +101 -114
  50. package/dist/Cascader/Utils.js +6 -33
  51. package/dist/Cascader/index.js +1 -39
  52. package/dist/Cascader/typings.d.ts +1 -1
  53. package/dist/Cascader/typings.js +1 -17
  54. package/dist/Cascader/useCascader.js +648 -458
  55. package/dist/Checkbox/Checkbox.d.ts +3 -3
  56. package/dist/Checkbox/Checkbox.js +136 -161
  57. package/dist/Checkbox/CheckboxButton.js +132 -157
  58. package/dist/Checkbox/index.js +2 -42
  59. package/dist/Checkbox/typings.d.ts +1 -1
  60. package/dist/Checkbox/typings.js +1 -17
  61. package/dist/CheckboxGroup/CheckboxGroup.js +133 -112
  62. package/dist/CheckboxGroup/CheckboxGroupContext.js +2 -30
  63. package/dist/CheckboxGroup/index.js +2 -42
  64. package/dist/Col/Col.js +53 -72
  65. package/dist/Col/index.js +1 -39
  66. package/dist/Col/typings.js +1 -17
  67. package/dist/Collapse/Collapse.js +36 -45
  68. package/dist/Collapse/CollapseContext.js +3 -31
  69. package/dist/Collapse/CollapseItem.js +88 -73
  70. package/dist/Collapse/CollapseTransition.js +29 -67
  71. package/dist/Collapse/index.js +2 -42
  72. package/dist/Collapse/typings.js +1 -17
  73. package/dist/ColorPicker/AlphaSlider.js +117 -99
  74. package/dist/ColorPicker/ColorPicker.d.ts +1 -1
  75. package/dist/ColorPicker/ColorPicker.js +233 -189
  76. package/dist/ColorPicker/HueSlider.js +102 -96
  77. package/dist/ColorPicker/Predefine.js +65 -66
  78. package/dist/ColorPicker/SvPanel.js +95 -81
  79. package/dist/ColorPicker/color.js +301 -213
  80. package/dist/ColorPicker/draggable.js +30 -48
  81. package/dist/ColorPicker/index.js +1 -39
  82. package/dist/ColorPicker/typings.js +1 -17
  83. package/dist/ColorPicker/util.js +23 -60
  84. package/dist/ConfigProvider/ConfigProvider.js +4 -28
  85. package/dist/ConfigProvider/index.js +1 -39
  86. package/dist/DatePicker/DatePicker.d.ts +3 -3
  87. package/dist/DatePicker/DatePicker.js +251 -227
  88. package/dist/DatePicker/DateRangePicker.d.ts +3 -3
  89. package/dist/DatePicker/DateRangePicker.js +279 -276
  90. package/dist/DatePicker/index.js +2 -39
  91. package/dist/DatePicker/main.d.ts +2 -2
  92. package/dist/DatePicker/main.js +21 -44
  93. package/dist/DatePicker/typings.d.ts +24 -17
  94. package/dist/DatePicker/typings.js +1 -17
  95. package/dist/DateTimePicker/DateTimePicker.d.ts +3 -5
  96. package/dist/DateTimePicker/DateTimePicker.js +286 -215
  97. package/dist/DateTimePicker/index.js +1 -39
  98. package/dist/DateTimePicker/typings.d.ts +10 -13
  99. package/dist/DateTimePicker/typings.js +1 -17
  100. package/dist/DateTimePicker/util.js +5 -35
  101. package/dist/Descriptions/Descriptions.js +83 -63
  102. package/dist/Descriptions/DescriptionsCell.js +67 -79
  103. package/dist/Descriptions/DescriptionsContext.js +4 -32
  104. package/dist/Descriptions/DescriptionsItem.js +4 -27
  105. package/dist/Descriptions/DescriptionsRow.js +42 -44
  106. package/dist/Descriptions/index.js +2 -42
  107. package/dist/Descriptions/typings.js +1 -17
  108. package/dist/Dialog/Dialog.js +224 -176
  109. package/dist/Dialog/DialogBody.js +52 -59
  110. package/dist/Dialog/DialogContext.js +6 -44
  111. package/dist/Dialog/DialogFooter.js +21 -45
  112. package/dist/Dialog/DialogHeader.js +44 -50
  113. package/dist/Dialog/index.js +1 -39
  114. package/dist/Dialog/typings.d.ts +1 -1
  115. package/dist/Dialog/typings.js +1 -17
  116. package/dist/Dialog/useDraggable.js +52 -79
  117. package/dist/Divider/Divider.d.ts +3 -3
  118. package/dist/Divider/Divider.js +38 -44
  119. package/dist/Divider/index.js +1 -39
  120. package/dist/Drawer/Drawer.js +144 -136
  121. package/dist/Drawer/DrawerBody.js +35 -57
  122. package/dist/Drawer/DrawerContext.js +13 -44
  123. package/dist/Drawer/DrawerFooter.js +22 -43
  124. package/dist/Drawer/DrawerHeader.js +41 -48
  125. package/dist/Drawer/index.js +1 -39
  126. package/dist/Drawer/typings.js +1 -17
  127. package/dist/Dropdown/Dropdown.js +89 -107
  128. package/dist/Dropdown/DropdownContext.js +5 -43
  129. package/dist/Dropdown/DropdownItem.js +40 -60
  130. package/dist/Dropdown/DropdownMenu.js +28 -56
  131. package/dist/Dropdown/index.js +3 -45
  132. package/dist/Dropdown/typings.js +1 -17
  133. package/dist/Empty/Empty.js +32 -53
  134. package/dist/Empty/ImgEmpty.js +115 -117
  135. package/dist/Empty/index.js +1 -39
  136. package/dist/Form/FieldContext.js +8 -37
  137. package/dist/Form/Form.js +167 -162
  138. package/dist/Form/FormContext.js +58 -97
  139. package/dist/Form/FormItem.js +620 -352
  140. package/dist/Form/FormItemContext.js +3 -31
  141. package/dist/Form/List.js +121 -104
  142. package/dist/Form/ListContext.js +3 -27
  143. package/dist/Form/index.js +3 -45
  144. package/dist/Form/typings.d.ts +25 -4
  145. package/dist/Form/typings.js +1 -17
  146. package/dist/Form/useForm.js +830 -690
  147. package/dist/Form/useWatch.js +64 -79
  148. package/dist/Form/utils/NameMap.js +98 -69
  149. package/dist/Form/utils/asyncUtil.js +9 -37
  150. package/dist/Form/utils/classUtil.js +26 -48
  151. package/dist/Form/utils/cloneDeep.js +8 -29
  152. package/dist/Form/utils/get.js +6 -30
  153. package/dist/Form/utils/messages.js +25 -53
  154. package/dist/Form/utils/set.js +31 -44
  155. package/dist/Form/utils/typeUtil.js +3 -31
  156. package/dist/Form/utils/util.js +18 -55
  157. package/dist/Form/utils/validateUtil.js +284 -159
  158. package/dist/Form/utils/valueUtil.js +102 -107
  159. package/dist/Icon/Icon.js +39 -63
  160. package/dist/Icon/IconList/Check.js +25 -65
  161. package/dist/Icon/IconList/Close.js +23 -52
  162. package/dist/Icon/IconList/Delete.js +25 -65
  163. package/dist/Icon/IconList/Down.js +25 -65
  164. package/dist/Icon/IconList/Eye.js +25 -65
  165. package/dist/Icon/IconList/EyeClose.js +25 -65
  166. package/dist/Icon/IconList/Left.js +25 -65
  167. package/dist/Icon/IconList/Link.js +19 -55
  168. package/dist/Icon/IconList/More.js +25 -65
  169. package/dist/Icon/IconList/Question.js +25 -65
  170. package/dist/Icon/IconList/Right.js +25 -65
  171. package/dist/Icon/IconList/Search.js +25 -65
  172. package/dist/Icon/IconList/Up.js +25 -65
  173. package/dist/Icon/IconList/Upload.js +25 -65
  174. package/dist/Icon/IconList/index.js +14 -68
  175. package/dist/Icon/index.js +2 -42
  176. package/dist/Icon/typings.js +1 -17
  177. package/dist/Input/Input.js +334 -358
  178. package/dist/Input/InputGroup.js +27 -43
  179. package/dist/Input/InputRange.js +295 -308
  180. package/dist/Input/TextArea.js +129 -120
  181. package/dist/Input/index.js +3 -45
  182. package/dist/Input/typings.js +1 -17
  183. package/dist/InputNumber/InputNumber.js +219 -203
  184. package/dist/InputNumber/index.js +1 -39
  185. package/dist/InputNumber/typings.d.ts +1 -1
  186. package/dist/InputNumber/typings.js +1 -17
  187. package/dist/Link/Link.js +43 -60
  188. package/dist/Link/index.js +1 -39
  189. package/dist/Link/typings.js +1 -17
  190. package/dist/Loading/Loading.js +93 -66
  191. package/dist/Loading/index.js +1 -39
  192. package/dist/Loading/typings.js +1 -17
  193. package/dist/Message/Main.js +41 -66
  194. package/dist/Message/Message.js +167 -130
  195. package/dist/Message/index.js +68 -88
  196. package/dist/Message/typings.js +1 -17
  197. package/dist/MessageBox/Main.js +43 -68
  198. package/dist/MessageBox/MessageBox.js +253 -202
  199. package/dist/MessageBox/index.js +74 -79
  200. package/dist/MessageBox/typings.js +1 -17
  201. package/dist/Notification/Main.js +41 -66
  202. package/dist/Notification/Notification.js +148 -131
  203. package/dist/Notification/index.js +76 -92
  204. package/dist/Notification/typings.js +1 -17
  205. package/dist/Pagination/Options.js +104 -99
  206. package/dist/Pagination/Pager.js +30 -61
  207. package/dist/Pagination/Pagination.js +462 -380
  208. package/dist/Pagination/index.js +1 -39
  209. package/dist/Pagination/typings.js +1 -17
  210. package/dist/Pagination/util.js +10 -41
  211. package/dist/Popconfirm/Popconfirm.js +108 -116
  212. package/dist/Popconfirm/index.js +1 -39
  213. package/dist/Popconfirm/typings.js +1 -17
  214. package/dist/Popover/Popover.js +87 -89
  215. package/dist/Popover/index.js +1 -39
  216. package/dist/Popover/typings.js +1 -17
  217. package/dist/Popper/Popper.js +172 -149
  218. package/dist/Popper/index.js +1 -39
  219. package/dist/Popper/popperOptions.js +79 -90
  220. package/dist/Popper/typings.js +1 -17
  221. package/dist/Progress/Progress.js +186 -155
  222. package/dist/Progress/index.js +1 -39
  223. package/dist/Progress/typings.js +1 -17
  224. package/dist/Radio/Radio.js +158 -117
  225. package/dist/Radio/RadioButton.js +127 -117
  226. package/dist/Radio/index.js +1 -39
  227. package/dist/Radio/typings.js +1 -17
  228. package/dist/RadioGroup/RadioGroup.js +63 -78
  229. package/dist/RadioGroup/index.js +1 -39
  230. package/dist/RadioGroup/typings.js +1 -17
  231. package/dist/Row/Row.js +41 -62
  232. package/dist/Row/RowContext.js +3 -31
  233. package/dist/Row/index.js +2 -42
  234. package/dist/Row/typings.js +1 -17
  235. package/dist/Scrollbar/Scrollbar.js +172 -133
  236. package/dist/Scrollbar/Thumb.js +108 -96
  237. package/dist/Scrollbar/index.js +1 -39
  238. package/dist/Scrollbar/typings.d.ts +11 -2
  239. package/dist/Scrollbar/typings.js +1 -17
  240. package/dist/Scrollbar/util.js +24 -51
  241. package/dist/Select/Option.js +50 -75
  242. package/dist/Select/OptionGroup.js +31 -47
  243. package/dist/Select/Select.js +25 -48
  244. package/dist/Select/SelectContext.js +8 -46
  245. package/dist/Select/SelectCore.js +449 -377
  246. package/dist/Select/SelectDropdown.js +200 -160
  247. package/dist/Select/index.js +2 -42
  248. package/dist/Select/typings.d.ts +1 -1
  249. package/dist/Select/typings.js +1 -17
  250. package/dist/Skeleton/PlaceholderGraph.js +39 -45
  251. package/dist/Skeleton/PlaceholderGrid.js +55 -67
  252. package/dist/Skeleton/PlaceholderParagraph.js +51 -52
  253. package/dist/Skeleton/Skeleton.js +8 -42
  254. package/dist/Skeleton/index.js +1 -39
  255. package/dist/Switch/Switch.js +177 -154
  256. package/dist/Switch/index.js +1 -39
  257. package/dist/Switch/typings.js +1 -17
  258. package/dist/Table/Colgroup.js +17 -41
  259. package/dist/Table/Table.js +246 -188
  260. package/dist/Table/TableBody.js +265 -200
  261. package/dist/Table/TableCell.js +461 -320
  262. package/dist/Table/TableColumn.js +9 -43
  263. package/dist/Table/TableContext.js +44 -63
  264. package/dist/Table/TableHeader.js +112 -102
  265. package/dist/Table/TableHeaderCell.js +211 -158
  266. package/dist/Table/hooks/useResize.js +69 -83
  267. package/dist/Table/hooks/useScroll.js +88 -114
  268. package/dist/Table/hooks/useSelection.js +145 -110
  269. package/dist/Table/hooks/useTable.js +411 -309
  270. package/dist/Table/index.js +2 -42
  271. package/dist/Table/treeUtil.js +99 -77
  272. package/dist/Table/typings.js +1 -17
  273. package/dist/Table/util.js +168 -109
  274. package/dist/Tabs/TabPane.js +51 -53
  275. package/dist/Tabs/Tabs.js +277 -178
  276. package/dist/Tabs/TabsContext.js +4 -32
  277. package/dist/Tabs/index.js +2 -42
  278. package/dist/Tabs/typings.js +1 -17
  279. package/dist/Tag/Tag.js +75 -74
  280. package/dist/Tag/index.js +1 -39
  281. package/dist/Tag/typings.js +1 -17
  282. package/dist/TimeLine/TimeLine.js +13 -42
  283. package/dist/TimeLine/TimeLineItem.js +66 -54
  284. package/dist/TimeLine/index.js +2 -42
  285. package/dist/TimeLine/typings.js +1 -17
  286. package/dist/TimePicker/TimePicker.d.ts +1 -4
  287. package/dist/TimePicker/TimePicker.js +275 -215
  288. package/dist/TimePicker/TimePickerPanel.js +62 -71
  289. package/dist/TimePicker/TimePickerRange.d.ts +4 -4
  290. package/dist/TimePicker/TimePickerRange.js +371 -334
  291. package/dist/TimePicker/TimeRangePanel.js +182 -165
  292. package/dist/TimePicker/TimeSpinnerPanel.js +321 -267
  293. package/dist/TimePicker/index.d.ts +2 -3
  294. package/dist/TimePicker/index.js +1 -42
  295. package/dist/TimePicker/main.d.ts +9 -0
  296. package/dist/TimePicker/main.js +17 -0
  297. package/dist/TimePicker/typings.d.ts +29 -24
  298. package/dist/TimePicker/typings.js +1 -17
  299. package/dist/TimePicker/useTimePicker.js +62 -65
  300. package/dist/TimePicker/util.js +8 -40
  301. package/dist/Tooltip/Tooltip.js +172 -180
  302. package/dist/Tooltip/TooltipContext.js +8 -46
  303. package/dist/Tooltip/index.js +2 -42
  304. package/dist/Tooltip/typings.js +1 -17
  305. package/dist/Transfer/List.js +290 -241
  306. package/dist/Transfer/ListBody.js +92 -106
  307. package/dist/Transfer/ListItem.js +38 -51
  308. package/dist/Transfer/Transfer.js +323 -280
  309. package/dist/Transfer/index.js +1 -39
  310. package/dist/Transfer/interface.js +1 -17
  311. package/dist/Transfer/operation.js +35 -48
  312. package/dist/Transfer/search.js +30 -62
  313. package/dist/Transfer/typings/index.js +1 -17
  314. package/dist/Transfer/typings/list.js +1 -17
  315. package/dist/Transfer/typings/listBody.js +2 -30
  316. package/dist/Transition/Transition.js +271 -234
  317. package/dist/Transition/TransitionGroup.js +136 -88
  318. package/dist/Transition/TransitionGroupContext.js +2 -26
  319. package/dist/Transition/childMapping.js +84 -71
  320. package/dist/Transition/index.js +2 -42
  321. package/dist/Transition/util.d.ts +0 -1
  322. package/dist/Transition/util.js +6 -47
  323. package/dist/Tree/DirectoryTree.js +146 -118
  324. package/dist/Tree/DropIndicator.js +15 -45
  325. package/dist/Tree/Indent.js +23 -54
  326. package/dist/Tree/MotionTreeNode.js +94 -95
  327. package/dist/Tree/NodeList.js +228 -221
  328. package/dist/Tree/RCTree.js +969 -702
  329. package/dist/Tree/Tree.js +64 -79
  330. package/dist/Tree/TreeNode.js +254 -255
  331. package/dist/Tree/contextTypes.js +8 -42
  332. package/dist/Tree/index.js +4 -48
  333. package/dist/Tree/typings.js +1 -17
  334. package/dist/Tree/useUnmount.js +21 -41
  335. package/dist/Tree/util.js +156 -134
  336. package/dist/Tree/utils/conductUtil.js +113 -104
  337. package/dist/Tree/utils/dictUtil.js +50 -78
  338. package/dist/Tree/utils/diffUtil.js +26 -43
  339. package/dist/Tree/utils/dropIndicator.js +23 -51
  340. package/dist/Tree/utils/iconUtil.js +44 -51
  341. package/dist/Tree/utils/keyUtil.js +2 -26
  342. package/dist/Tree/utils/motion.js +34 -72
  343. package/dist/Tree/utils/pickAttrs.js +30 -58
  344. package/dist/Tree/utils/treeUtil.js +263 -203
  345. package/dist/TreeSelect/TreeSelect.js +521 -459
  346. package/dist/TreeSelect/Utils.js +15 -36
  347. package/dist/TreeSelect/index.js +1 -39
  348. package/dist/TreeSelect/typings.d.ts +1 -1
  349. package/dist/TreeSelect/typings.js +1 -17
  350. package/dist/Upload/Upload.js +106 -109
  351. package/dist/Upload/UploadContent.js +227 -182
  352. package/dist/Upload/UploadContext.js +5 -33
  353. package/dist/Upload/UploadDrag.js +77 -97
  354. package/dist/Upload/UploadList.js +104 -73
  355. package/dist/Upload/ajax.js +45 -71
  356. package/dist/Upload/index.js +1 -39
  357. package/dist/Upload/typings.js +34 -36
  358. package/dist/Upload/use-handlers.js +182 -126
  359. package/dist/Util/Math.js +81 -78
  360. package/dist/Util/PopupManager.js +5 -27
  361. package/dist/Util/base.js +101 -171
  362. package/dist/Util/genFileId.js +3 -29
  363. package/dist/Util/index.js +6 -51
  364. package/dist/Util/resize-event.js +31 -54
  365. package/dist/Util/shallowEqual.js +30 -28
  366. package/dist/Util/treeUtils.js +68 -64
  367. package/dist/config/Constants.js +17 -47
  368. package/dist/display.css +1 -0
  369. package/dist/hooks/animationPropsUtils.js +25 -49
  370. package/dist/hooks/htmlPropsUtils.js +54 -121
  371. package/dist/hooks/index.js +14 -73
  372. package/dist/hooks/popperPropsUtils.js +25 -67
  373. package/dist/hooks/prefix.js +22 -55
  374. package/dist/hooks/treePropsUtils.js +24 -103
  375. package/dist/hooks/useChildrenInstance.js +51 -60
  376. package/dist/hooks/useClassNames.d.ts +2 -0
  377. package/dist/hooks/useClassNames.js +279 -197
  378. package/dist/hooks/useClickOutside.js +37 -62
  379. package/dist/hooks/useCommonProps.js +17 -53
  380. package/dist/hooks/useComponentWillMount.js +4 -28
  381. package/dist/hooks/useControlled.js +31 -37
  382. package/dist/hooks/useForceUpdate.js +16 -34
  383. package/dist/hooks/useUpdateEffect.js +6 -29
  384. package/dist/index.css +1 -57810
  385. package/dist/index.d.ts +0 -2
  386. package/dist/index.js +69 -237
  387. package/dist/theme-chalk/common/index.js +1 -2
  388. package/dist/theme-chalk/common/index.scss +2 -2
  389. package/dist/theme-chalk/date-picker/index.scss +1 -1
  390. package/dist/theme-chalk/display.scss +46 -0
  391. package/dist/theme-chalk/form/index.scss +21 -2
  392. package/dist/types/common.js +1 -17
  393. package/dist/types/type.js +16 -28
  394. package/package.json +6 -1
  395. package/theme-chalk/common/index.scss +2 -2
  396. package/theme-chalk/date-picker/index.scss +1 -1
  397. package/theme-chalk/display.scss +46 -0
  398. package/theme-chalk/form/index.scss +21 -2
@@ -1,103 +1,121 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
-
29
- // src/Transfer/Transfer.tsx
30
- var Transfer_exports = {};
31
- __export(Transfer_exports, {
32
- default: () => Transfer_default
33
- });
34
- module.exports = __toCommonJS(Transfer_exports);
35
- var import_classnames = __toESM(require("classnames"));
36
- var import_react = __toESM(require("react"));
37
- var import_Empty = require("../Empty");
38
- var import_Util = require("../Util");
39
- var import_hooks = require("../hooks");
40
- var import_List = __toESM(require("./List"));
41
- var import_operation = __toESM(require("./operation"));
42
- var Transfer = (props) => {
43
- props = (0, import_Util.mergeDefaultProps)(
44
- {
45
- data: [],
46
- titles: ["Source", "Target"],
47
- locale: {},
48
- filterable: false,
49
- listStyle: {}
50
- },
51
- props
52
- );
53
- const {
54
- className,
55
- disabled,
56
- operations = [],
57
- filterable,
58
- footer,
59
- style,
60
- listStyle,
61
- operationStyle,
62
- filterMethod,
63
- render,
64
- children,
65
- showSelectAll,
66
- pagination,
67
- titles,
68
- data = [],
69
- selectedKeys,
70
- selectAllLabels = [],
71
- onChange,
72
- onScroll,
73
- classPrefix = "transfer"
74
- } = props;
75
- const { b, is } = (0, import_hooks.useClassNames)(classPrefix);
76
- const fieldNames = (0, import_react.useMemo)(() => {
77
- return { key: "key", title: "label", disabled: "disabled", ...props.fieldNames };
1
+ var _templateObject, _templateObject2;
2
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
3
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
4
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
5
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
6
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
7
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
8
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
10
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
11
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
12
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
13
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
15
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
17
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
18
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
19
+ import classNames from 'classnames';
20
+ import React, { useCallback, useEffect, useMemo, useState } from 'react';
21
+ import { Empty } from "../Empty";
22
+ import { mergeDefaultProps } from "../Util";
23
+ import { useClassNames, useControlled } from "../hooks";
24
+ import List from "./List";
25
+ import Operation from "./operation";
26
+ var Transfer = function Transfer(props) {
27
+ var _props$defaultValue, _selectedKeys$filter, _selectedKeys$filter2;
28
+ // @ts-ignore
29
+ props = mergeDefaultProps({
30
+ data: [],
31
+ titles: ['Source', 'Target'],
32
+ locale: {},
33
+ filterable: false,
34
+ listStyle: {}
35
+ }, props);
36
+ var _props = props,
37
+ className = _props.className,
38
+ disabled = _props.disabled,
39
+ _props$operations = _props.operations,
40
+ operations = _props$operations === void 0 ? [] : _props$operations,
41
+ filterable = _props.filterable,
42
+ footer = _props.footer,
43
+ style = _props.style,
44
+ listStyle = _props.listStyle,
45
+ operationStyle = _props.operationStyle,
46
+ filterMethod = _props.filterMethod,
47
+ render = _props.render,
48
+ children = _props.children,
49
+ showSelectAll = _props.showSelectAll,
50
+ pagination = _props.pagination,
51
+ titles = _props.titles,
52
+ _props$data = _props.data,
53
+ data = _props$data === void 0 ? [] : _props$data,
54
+ selectedKeys = _props.selectedKeys,
55
+ _props$selectAllLabel = _props.selectAllLabels,
56
+ selectAllLabels = _props$selectAllLabel === void 0 ? [] : _props$selectAllLabel,
57
+ onChange = _props.onChange,
58
+ onScroll = _props.onScroll,
59
+ _props$classPrefix = _props.classPrefix,
60
+ classPrefix = _props$classPrefix === void 0 ? 'transfer' : _props$classPrefix;
61
+ var _useClassNames = useClassNames(classPrefix),
62
+ b = _useClassNames.b,
63
+ is = _useClassNames.is;
64
+ var fieldNames = useMemo(function () {
65
+ return _objectSpread({
66
+ key: 'key',
67
+ title: 'label',
68
+ disabled: 'disabled'
69
+ }, props.fieldNames);
78
70
  }, [props.fieldNames]);
79
- const [value, setValue] = (0, import_hooks.useControlled)(props.value, props.defaultValue ?? []);
80
- const [sourceSelectedKeys, setSourceSelectedKeys] = (0, import_react.useState)((selectedKeys == null ? void 0 : selectedKeys.filter((key) => data.some((item) => item[fieldNames.key] === key) && !value.includes(key))) ?? []);
81
- const [targetSelectedKeys, setTargetSelectedKeys] = (0, import_react.useState)((selectedKeys == null ? void 0 : selectedKeys.filter((key) => value.includes(key))) ?? []);
82
- (0, import_react.useEffect)(() => {
71
+ var _useControlled = useControlled(props.value, (_props$defaultValue = props.defaultValue) !== null && _props$defaultValue !== void 0 ? _props$defaultValue : []),
72
+ _useControlled2 = _slicedToArray(_useControlled, 2),
73
+ value = _useControlled2[0],
74
+ setValue = _useControlled2[1];
75
+ var _useState = useState((_selectedKeys$filter = selectedKeys === null || selectedKeys === void 0 ? void 0 : selectedKeys.filter(function (key) {
76
+ return data.some(function (item) {
77
+ return item[fieldNames.key] === key;
78
+ }) && !value.includes(key);
79
+ })) !== null && _selectedKeys$filter !== void 0 ? _selectedKeys$filter : []),
80
+ _useState2 = _slicedToArray(_useState, 2),
81
+ sourceSelectedKeys = _useState2[0],
82
+ setSourceSelectedKeys = _useState2[1];
83
+ var _useState3 = useState((_selectedKeys$filter2 = selectedKeys === null || selectedKeys === void 0 ? void 0 : selectedKeys.filter(function (key) {
84
+ return value.includes(key);
85
+ })) !== null && _selectedKeys$filter2 !== void 0 ? _selectedKeys$filter2 : []),
86
+ _useState4 = _slicedToArray(_useState3, 2),
87
+ targetSelectedKeys = _useState4[0],
88
+ setTargetSelectedKeys = _useState4[1];
89
+ useEffect(function () {
83
90
  if (selectedKeys) {
84
- const mergedTargetKeys = value || [];
85
- setSourceSelectedKeys(selectedKeys.filter((key) => data.some((item) => item[fieldNames.key] === key) && !mergedTargetKeys.includes(key)));
86
- setTargetSelectedKeys(selectedKeys.filter((key) => mergedTargetKeys.includes(key)));
91
+ var mergedTargetKeys = value || [];
92
+ setSourceSelectedKeys(selectedKeys.filter(function (key) {
93
+ return data.some(function (item) {
94
+ return item[fieldNames.key] === key;
95
+ }) && !mergedTargetKeys.includes(key);
96
+ }));
97
+ setTargetSelectedKeys(selectedKeys.filter(function (key) {
98
+ return mergedTargetKeys.includes(key);
99
+ }));
87
100
  }
101
+ // eslint-disable-next-line react-hooks/exhaustive-deps
88
102
  }, [selectedKeys]);
89
- const mergedPagination = (0, import_react.useMemo)(() => !children && pagination, [children, pagination]);
90
- const separateDataSource = (0, import_react.useMemo)(() => {
91
- const leftDataSource = [];
92
- const rightDataSource = new Array(value.length);
93
- data.forEach((item) => {
103
+ var mergedPagination = useMemo(function () {
104
+ return !children && pagination;
105
+ }, [children, pagination]);
106
+ var separateDataSource = useMemo(function () {
107
+ var leftDataSource = [];
108
+ var rightDataSource = new Array(value.length);
109
+ data.forEach(function (item) {
94
110
  if (!item.key) {
95
- item = {
96
- ...item,
111
+ item = _objectSpread(_objectSpread({}, item), {}, {
97
112
  key: item[fieldNames.key]
98
- };
113
+ });
99
114
  }
100
- const indexOfKey = value.indexOf(item.key);
115
+
116
+ // rightDataSource should be ordered by targetKeys
117
+ // leftDataSource should be ordered by data
118
+ var indexOfKey = value.indexOf(item.key);
101
119
  if (indexOfKey !== -1) {
102
120
  rightDataSource[indexOfKey] = item;
103
121
  } else {
@@ -105,203 +123,228 @@ var Transfer = (props) => {
105
123
  }
106
124
  });
107
125
  return {
108
- leftDataSource,
109
- rightDataSource
126
+ leftDataSource: leftDataSource,
127
+ rightDataSource: rightDataSource
110
128
  };
111
129
  }, [data, fieldNames.key, value]);
112
- const handleListStyle = (0, import_react.useCallback)((_listStyle, direction) => {
113
- if (typeof _listStyle === "function") {
114
- return _listStyle({ direction });
130
+ var handleListStyle = useCallback(function (_listStyle, direction) {
131
+ if (typeof _listStyle === 'function') {
132
+ return _listStyle({
133
+ direction: direction
134
+ });
115
135
  }
116
136
  return _listStyle;
117
137
  }, []);
118
- const setStateKeys = (0, import_react.useCallback)(
119
- (direction, keys) => {
120
- if (direction === "left") {
121
- const result = typeof keys === "function" ? keys(sourceSelectedKeys || []) : keys;
122
- setSourceSelectedKeys(result);
123
- return;
124
- } else {
125
- setTargetSelectedKeys(typeof keys === "function" ? keys(targetSelectedKeys || []) : keys);
126
- }
127
- },
128
- [sourceSelectedKeys, targetSelectedKeys]
129
- );
130
- const handleSelectChange = (0, import_react.useCallback)(
131
- (direction, holder) => {
132
- const { onSelectChange } = props;
133
- if (direction === "left") {
134
- onSelectChange == null ? void 0 : onSelectChange(holder, targetSelectedKeys);
138
+ var setStateKeys = useCallback(function (direction, keys) {
139
+ if (direction === 'left') {
140
+ var result = typeof keys === 'function' ? keys(sourceSelectedKeys || []) : keys;
141
+ setSourceSelectedKeys(result);
142
+ return;
143
+ } else {
144
+ setTargetSelectedKeys(typeof keys === 'function' ? keys(targetSelectedKeys || []) : keys);
145
+ }
146
+ }, [sourceSelectedKeys, targetSelectedKeys]);
147
+ var handleSelectChange = useCallback(function (direction, holder) {
148
+ var _props2 = props,
149
+ onSelectChange = _props2.onSelectChange;
150
+ // if (!onSelectChange) {
151
+ // return;
152
+ // }
153
+
154
+ if (direction === 'left') {
155
+ onSelectChange === null || onSelectChange === void 0 || onSelectChange(holder, targetSelectedKeys);
156
+ } else {
157
+ onSelectChange === null || onSelectChange === void 0 || onSelectChange(sourceSelectedKeys, holder);
158
+ }
159
+ }, [props, sourceSelectedKeys, targetSelectedKeys]);
160
+ var moveTo = useCallback(function (direction) {
161
+ var moveKeys = direction === 'right' ? sourceSelectedKeys : targetSelectedKeys;
162
+ // filter the disabled options
163
+ var newMoveKeys = moveKeys.filter(function (key) {
164
+ return !data.some(function (_data) {
165
+ return !!(key === _data[fieldNames.key] && _data[fieldNames.disabled]);
166
+ });
167
+ });
168
+ // move items to target box
169
+ var newTargetKeys = direction === 'right' ? newMoveKeys.concat(value) : value.filter(function (targetKey) {
170
+ return newMoveKeys.indexOf(targetKey) === -1;
171
+ });
172
+
173
+ // empty checked keys
174
+ var oppositeDirection = direction === 'right' ? 'left' : 'right';
175
+ setStateKeys(oppositeDirection, []);
176
+ handleSelectChange(oppositeDirection, []);
177
+ setValue(newTargetKeys);
178
+ onChange === null || onChange === void 0 || onChange(newTargetKeys, direction, newMoveKeys);
179
+ }, [sourceSelectedKeys, targetSelectedKeys, value, setStateKeys, handleSelectChange, setValue, onChange, data, fieldNames.key, fieldNames.disabled]);
180
+ var moveToLeft = useCallback(function () {
181
+ return moveTo('left');
182
+ }, [moveTo]);
183
+ var moveToRight = useCallback(function () {
184
+ return moveTo('right');
185
+ }, [moveTo]);
186
+
187
+ /**
188
+ *
189
+ * @param direction 方向
190
+ * @param _selectedKeys 传入的keys
191
+ * @param check 是否选中
192
+ * @param overWrite 是否忽略check参数,直接使用_selectedKeys
193
+ */
194
+ var onItemSelectAll = useCallback(function (direction, _selectedKeys, check, overWrite) {
195
+ setStateKeys(direction, function (prevKeys) {
196
+ var mergedCheckedKeys = [];
197
+ if (overWrite) {
198
+ mergedCheckedKeys = _selectedKeys;
135
199
  } else {
136
- onSelectChange == null ? void 0 : onSelectChange(sourceSelectedKeys, holder);
137
- }
138
- },
139
- [props, sourceSelectedKeys, targetSelectedKeys]
140
- );
141
- const moveTo = (0, import_react.useCallback)(
142
- (direction) => {
143
- const moveKeys = direction === "right" ? sourceSelectedKeys : targetSelectedKeys;
144
- const newMoveKeys = moveKeys.filter((key) => !data.some((_data) => !!(key === _data[fieldNames.key] && _data[fieldNames.disabled])));
145
- const newTargetKeys = direction === "right" ? newMoveKeys.concat(value) : value.filter((targetKey) => newMoveKeys.indexOf(targetKey) === -1);
146
- const oppositeDirection = direction === "right" ? "left" : "right";
147
- setStateKeys(oppositeDirection, []);
148
- handleSelectChange(oppositeDirection, []);
149
- setValue(newTargetKeys);
150
- onChange == null ? void 0 : onChange(newTargetKeys, direction, newMoveKeys);
151
- },
152
- [sourceSelectedKeys, targetSelectedKeys, value, setStateKeys, handleSelectChange, setValue, onChange, data, fieldNames.key, fieldNames.disabled]
153
- );
154
- const moveToLeft = (0, import_react.useCallback)(() => moveTo("left"), [moveTo]);
155
- const moveToRight = (0, import_react.useCallback)(() => moveTo("right"), [moveTo]);
156
- const onItemSelectAll = (0, import_react.useCallback)(
157
- (direction, _selectedKeys, check, overWrite) => {
158
- setStateKeys(direction, (prevKeys) => {
159
- let mergedCheckedKeys = [];
160
- if (overWrite) {
161
- mergedCheckedKeys = _selectedKeys;
200
+ if (check) {
201
+ // Merge current keys with origin key
202
+ mergedCheckedKeys = Array.from(new Set([].concat(_toConsumableArray(prevKeys), _toConsumableArray(_selectedKeys))));
162
203
  } else {
163
- if (check) {
164
- mergedCheckedKeys = Array.from(/* @__PURE__ */ new Set([...prevKeys, ..._selectedKeys]));
165
- } else {
166
- mergedCheckedKeys = prevKeys.filter((key) => _selectedKeys.indexOf(key) === -1);
167
- }
204
+ // Remove current keys from origin keys
205
+ mergedCheckedKeys = prevKeys.filter(function (key) {
206
+ return _selectedKeys.indexOf(key) === -1;
207
+ });
168
208
  }
169
- handleSelectChange(direction, mergedCheckedKeys);
170
- return mergedCheckedKeys;
171
- });
172
- },
173
- [handleSelectChange, setStateKeys]
174
- );
175
- const onLeftItemSelectAll = (0, import_react.useCallback)(
176
- (_selectedKeys, checkAll, overWrite) => onItemSelectAll("left", _selectedKeys, checkAll, overWrite),
177
- [onItemSelectAll]
178
- );
179
- const onRightItemSelectAll = (0, import_react.useCallback)(
180
- (_selectedKeys, checkAll, overWrite) => onItemSelectAll("right", _selectedKeys, checkAll, overWrite),
181
- [onItemSelectAll]
182
- );
183
- const handleFilter = (0, import_react.useCallback)(
184
- (direction, e) => {
185
- const { onSearch } = props;
186
- onSearch == null ? void 0 : onSearch(direction, e.target.value);
187
- },
188
- [props]
189
- );
190
- const handleLeftFilter = (0, import_react.useCallback)((e) => handleFilter("left", e), [handleFilter]);
191
- const handleRightFilter = (0, import_react.useCallback)((e) => handleFilter("right", e), [handleFilter]);
192
- const handleClear = (0, import_react.useCallback)(
193
- (direction) => {
194
- const { onSearch } = props;
195
- onSearch == null ? void 0 : onSearch(direction, "");
196
- },
197
- [props]
198
- );
199
- const handleLeftClear = (0, import_react.useCallback)(() => handleClear("left"), [handleClear]);
200
- const handleRightClear = (0, import_react.useCallback)(() => handleClear("right"), [handleClear]);
201
- const onItemSelect = (0, import_react.useCallback)(
202
- (direction, selectedKey, checked) => {
203
- const holder = direction === "left" ? [...sourceSelectedKeys] : [...targetSelectedKeys];
204
- const index = holder.indexOf(selectedKey);
205
- if (index > -1) {
206
- holder.splice(index, 1);
207
- }
208
- if (checked) {
209
- holder.push(selectedKey);
210
209
  }
211
- handleSelectChange(direction, holder);
212
- if (!props.selectedKeys) {
213
- setStateKeys(direction, holder);
214
- }
215
- },
216
- [handleSelectChange, props.selectedKeys, setStateKeys, sourceSelectedKeys, targetSelectedKeys]
217
- );
218
- const onLeftItemSelect = (0, import_react.useCallback)((selectedKey, checked) => onItemSelect("left", selectedKey, checked), [onItemSelect]);
219
- const onRightItemSelect = (0, import_react.useCallback)((selectedKey, checked) => onItemSelect("right", selectedKey, checked), [onItemSelect]);
220
- const onRightItemRemove = (0, import_react.useCallback)(
221
- (_selectedKeys) => {
222
- setStateKeys("right", []);
223
- setValue(value.filter((key) => !_selectedKeys.includes(key)));
224
- onChange == null ? void 0 : onChange(
225
- value.filter((key) => !_selectedKeys.includes(key)),
226
- "left",
227
- [..._selectedKeys]
228
- );
229
- },
230
- [onChange, setStateKeys, setValue, value]
231
- );
232
- const handleScroll = (0, import_react.useCallback)(
233
- (direction, e) => {
234
- onScroll == null ? void 0 : onScroll(direction, e);
235
- },
236
- [onScroll]
237
- );
238
- const handleLeftScroll = (0, import_react.useCallback)((e) => handleScroll("left", e), [handleScroll]);
239
- const handleRightScroll = (0, import_react.useCallback)((e) => handleScroll("right", e), [handleScroll]);
240
- return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)(b(), { [b`customize-list`]: !!children }, is({ disabled }), className), style }, /* @__PURE__ */ import_react.default.createElement(
241
- import_List.default,
242
- {
243
- titleText: titles[0],
244
- data: separateDataSource.leftDataSource,
245
- filterOption: filterMethod,
246
- style: handleListStyle(listStyle, "left"),
247
- checkedKeys: sourceSelectedKeys,
248
- handleFilter: handleLeftFilter,
249
- handleClear: handleLeftClear,
250
- onItemSelect: onLeftItemSelect,
251
- onItemSelectAll: onLeftItemSelectAll,
252
- render,
253
- showSearch: filterable,
254
- renderList: children,
255
- footer,
256
- onScroll: handleLeftScroll,
257
- disabled,
258
- direction: "left",
259
- showSelectAll,
260
- selectAllLabel: selectAllLabels[0],
261
- pagination: mergedPagination,
262
- notFoundContent: /* @__PURE__ */ import_react.default.createElement(import_Empty.Empty, { imageSize: 50 }),
263
- fieldNames
210
+ handleSelectChange(direction, mergedCheckedKeys);
211
+ return mergedCheckedKeys;
212
+ });
213
+ }, [handleSelectChange, setStateKeys]);
214
+ var onLeftItemSelectAll = useCallback(function (_selectedKeys, checkAll, overWrite) {
215
+ return onItemSelectAll('left', _selectedKeys, checkAll, overWrite);
216
+ }, [onItemSelectAll]);
217
+ var onRightItemSelectAll = useCallback(function (_selectedKeys, checkAll, overWrite) {
218
+ return onItemSelectAll('right', _selectedKeys, checkAll, overWrite);
219
+ }, [onItemSelectAll]);
220
+ var handleFilter = useCallback(function (direction, e) {
221
+ var _props3 = props,
222
+ onSearch = _props3.onSearch;
223
+ onSearch === null || onSearch === void 0 || onSearch(direction, e.target.value);
224
+ }, [props]);
225
+ var handleLeftFilter = useCallback(function (e) {
226
+ return handleFilter('left', e);
227
+ }, [handleFilter]);
228
+ var handleRightFilter = useCallback(function (e) {
229
+ return handleFilter('right', e);
230
+ }, [handleFilter]);
231
+ var handleClear = useCallback(function (direction) {
232
+ var _props4 = props,
233
+ onSearch = _props4.onSearch;
234
+ onSearch === null || onSearch === void 0 || onSearch(direction, '');
235
+ }, [props]);
236
+ var handleLeftClear = useCallback(function () {
237
+ return handleClear('left');
238
+ }, [handleClear]);
239
+ var handleRightClear = useCallback(function () {
240
+ return handleClear('right');
241
+ }, [handleClear]);
242
+ var onItemSelect = useCallback(function (direction, selectedKey, checked) {
243
+ var holder = direction === 'left' ? _toConsumableArray(sourceSelectedKeys) : _toConsumableArray(targetSelectedKeys);
244
+ var index = holder.indexOf(selectedKey);
245
+ if (index > -1) {
246
+ holder.splice(index, 1);
264
247
  }
265
- ), /* @__PURE__ */ import_react.default.createElement(
266
- import_operation.default,
267
- {
268
- className: b`operation`,
269
- rightActive: sourceSelectedKeys.length > 0,
270
- rightArrowText: operations[0],
271
- moveToRight,
272
- leftActive: targetSelectedKeys.length > 0,
273
- leftArrowText: operations[1],
274
- moveToLeft,
275
- style: operationStyle,
276
- disabled
248
+ if (checked) {
249
+ holder.push(selectedKey);
277
250
  }
278
- ), /* @__PURE__ */ import_react.default.createElement(
279
- import_List.default,
280
- {
281
- titleText: titles[1],
282
- data: separateDataSource.rightDataSource,
283
- filterOption: filterMethod,
284
- style: handleListStyle(listStyle, "right"),
285
- checkedKeys: targetSelectedKeys,
286
- handleFilter: handleRightFilter,
287
- handleClear: handleRightClear,
288
- onItemSelect: onRightItemSelect,
289
- onItemSelectAll: onRightItemSelectAll,
290
- onItemRemove: onRightItemRemove,
291
- render,
292
- showSearch: filterable,
293
- renderList: children,
294
- footer,
295
- onScroll: handleRightScroll,
296
- disabled,
297
- direction: "right",
298
- showSelectAll,
299
- selectAllLabel: selectAllLabels[1],
300
- pagination: mergedPagination,
301
- notFoundContent: /* @__PURE__ */ import_react.default.createElement(import_Empty.Empty, { imageSize: 50 }),
302
- fieldNames
251
+ handleSelectChange(direction, holder);
252
+ if (!props.selectedKeys) {
253
+ setStateKeys(direction, holder);
303
254
  }
304
- ));
255
+ }, [handleSelectChange, props.selectedKeys, setStateKeys, sourceSelectedKeys, targetSelectedKeys]);
256
+ var onLeftItemSelect = useCallback(function (selectedKey, checked) {
257
+ return onItemSelect('left', selectedKey, checked);
258
+ }, [onItemSelect]);
259
+ var onRightItemSelect = useCallback(function (selectedKey, checked) {
260
+ return onItemSelect('right', selectedKey, checked);
261
+ }, [onItemSelect]);
262
+ var onRightItemRemove = useCallback(function (_selectedKeys) {
263
+ setStateKeys('right', []);
264
+ setValue(value.filter(function (key) {
265
+ return !_selectedKeys.includes(key);
266
+ }));
267
+ onChange === null || onChange === void 0 || onChange(value.filter(function (key) {
268
+ return !_selectedKeys.includes(key);
269
+ }), 'left', _toConsumableArray(_selectedKeys));
270
+ }, [onChange, setStateKeys, setValue, value]);
271
+ var handleScroll = useCallback(function (direction, e) {
272
+ onScroll === null || onScroll === void 0 || onScroll(direction, e);
273
+ }, [onScroll]);
274
+ var handleLeftScroll = useCallback(function (e) {
275
+ return handleScroll('left', e);
276
+ }, [handleScroll]);
277
+ var handleRightScroll = useCallback(function (e) {
278
+ return handleScroll('right', e);
279
+ }, [handleScroll]);
280
+ return /*#__PURE__*/React.createElement("div", {
281
+ className: classNames(b(), _defineProperty({}, b(_templateObject || (_templateObject = _taggedTemplateLiteral(["customize-list"]))), !!children), is({
282
+ disabled: disabled
283
+ }), className),
284
+ style: style
285
+ }, /*#__PURE__*/React.createElement(List, {
286
+ titleText: titles[0],
287
+ data: separateDataSource.leftDataSource,
288
+ filterOption: filterMethod,
289
+ style: handleListStyle(listStyle, 'left'),
290
+ checkedKeys: sourceSelectedKeys,
291
+ handleFilter: handleLeftFilter,
292
+ handleClear: handleLeftClear,
293
+ onItemSelect: onLeftItemSelect,
294
+ onItemSelectAll: onLeftItemSelectAll,
295
+ render: render,
296
+ showSearch: filterable,
297
+ renderList: children,
298
+ footer: footer,
299
+ onScroll: handleLeftScroll,
300
+ disabled: disabled,
301
+ direction: 'left',
302
+ showSelectAll: showSelectAll,
303
+ selectAllLabel: selectAllLabels[0],
304
+ pagination: mergedPagination,
305
+ notFoundContent: /*#__PURE__*/React.createElement(Empty, {
306
+ imageSize: 50
307
+ }),
308
+ fieldNames: fieldNames
309
+ // {...omit(props, ['data', 'onScroll'])}
310
+ }), /*#__PURE__*/React.createElement(Operation, {
311
+ className: b(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["operation"]))),
312
+ rightActive: sourceSelectedKeys.length > 0,
313
+ rightArrowText: operations[0],
314
+ moveToRight: moveToRight,
315
+ leftActive: targetSelectedKeys.length > 0,
316
+ leftArrowText: operations[1],
317
+ moveToLeft: moveToLeft,
318
+ style: operationStyle,
319
+ disabled: disabled
320
+ }), /*#__PURE__*/React.createElement(List, {
321
+ titleText: titles[1],
322
+ data: separateDataSource.rightDataSource,
323
+ filterOption: filterMethod,
324
+ style: handleListStyle(listStyle, 'right'),
325
+ checkedKeys: targetSelectedKeys,
326
+ handleFilter: handleRightFilter,
327
+ handleClear: handleRightClear,
328
+ onItemSelect: onRightItemSelect,
329
+ onItemSelectAll: onRightItemSelectAll,
330
+ onItemRemove: onRightItemRemove,
331
+ render: render,
332
+ showSearch: filterable,
333
+ renderList: children,
334
+ footer: footer,
335
+ onScroll: handleRightScroll,
336
+ disabled: disabled,
337
+ direction: 'right',
338
+ showSelectAll: showSelectAll,
339
+ selectAllLabel: selectAllLabels[1],
340
+ pagination: mergedPagination,
341
+ notFoundContent: /*#__PURE__*/React.createElement(Empty, {
342
+ imageSize: 50
343
+ }),
344
+ fieldNames: fieldNames
345
+ // {...omit(props, ['data', 'onScroll'])}
346
+ // {...locale}
347
+ }));
305
348
  };
306
- Transfer.displayName = "Transfer";
307
- var Transfer_default = Transfer;
349
+ Transfer.displayName = 'Transfer';
350
+ export default Transfer;