@hi-ui/hiui 3.9.0-rc.8 → 4.0.0-beta.1

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 (544) hide show
  1. package/README.md +5 -79
  2. package/lib/cjs/index.js +576 -0
  3. package/lib/cjs/index.js.map +1 -0
  4. package/lib/esm/index.js +66 -0
  5. package/lib/esm/index.js.map +1 -0
  6. package/lib/types/index.d.ts +56 -0
  7. package/package.json +101 -184
  8. package/CHANGELOG.md +0 -330
  9. package/es/_util/EventEmitter.js +0 -56
  10. package/es/_util/SwitchVersion.js +0 -40
  11. package/es/_util/depreactedPropsCompat.js +0 -58
  12. package/es/_util/deprecatedPropsCheck.js +0 -21
  13. package/es/_util/index.js +0 -31
  14. package/es/_util/warning.js +0 -19
  15. package/es/alert/Alert.js +0 -129
  16. package/es/alert/__tests__/index.test.js +0 -84
  17. package/es/alert/index.d.ts +0 -18
  18. package/es/alert/index.js +0 -20
  19. package/es/alert/style/index.css +0 -1
  20. package/es/alert/style/index.js +0 -3
  21. package/es/badge/Badge.js +0 -94
  22. package/es/badge/__tests__/index.test.js +0 -82
  23. package/es/badge/index.d.ts +0 -15
  24. package/es/badge/index.js +0 -22
  25. package/es/badge/style/index.css +0 -1
  26. package/es/badge/style/index.js +0 -3
  27. package/es/base-css/index.js +0 -3
  28. package/es/base-css/style/index.css +0 -1
  29. package/es/base-css/style/index.js +0 -3
  30. package/es/breadcrumb/__tests__/index.test.js +0 -61
  31. package/es/breadcrumb/index.d.ts +0 -19
  32. package/es/breadcrumb/index.js +0 -72
  33. package/es/breadcrumb/style/index.css +0 -1
  34. package/es/breadcrumb/style/index.js +0 -3
  35. package/es/button/Button.js +0 -158
  36. package/es/button/ButtonGroup.js +0 -63
  37. package/es/button/IconLoading.js +0 -27
  38. package/es/button/__tests__/index.test.js +0 -221
  39. package/es/button/index.d.ts +0 -26
  40. package/es/button/index.js +0 -19
  41. package/es/button/style/index.css +0 -1
  42. package/es/button/style/index.js +0 -3
  43. package/es/card/CoverCard.js +0 -41
  44. package/es/card/NormalCard.js +0 -46
  45. package/es/card/SimpleCard.js +0 -32
  46. package/es/card/__tests__/index.test.js +0 -180
  47. package/es/card/index.d.ts +0 -18
  48. package/es/card/index.js +0 -75
  49. package/es/card/style/index.css +0 -1
  50. package/es/card/style/index.js +0 -3
  51. package/es/carousel/__tests__/index.test.js +0 -104
  52. package/es/carousel/index.d.ts +0 -13
  53. package/es/carousel/index.js +0 -242
  54. package/es/carousel/style/index.css +0 -1
  55. package/es/carousel/style/index.js +0 -3
  56. package/es/cascader/Cascader.js +0 -530
  57. package/es/cascader/Menu.js +0 -147
  58. package/es/cascader/__tests__/index.test.js +0 -393
  59. package/es/cascader/img/empty.png +0 -0
  60. package/es/cascader/index.d.ts +0 -36
  61. package/es/cascader/index.js +0 -15
  62. package/es/cascader/style/cascader.css +0 -1
  63. package/es/cascader/style/index.js +0 -5
  64. package/es/cascader/style/menu.css +0 -1
  65. package/es/cascader/utils.js +0 -216
  66. package/es/charts/hi-echarts-theme-default.json +0 -502
  67. package/es/charts/index.d.ts +0 -12
  68. package/es/charts/index.js +0 -32
  69. package/es/checkbox/Checkbox.js +0 -145
  70. package/es/checkbox/Group.js +0 -198
  71. package/es/checkbox/__tests__/index.test.js +0 -226
  72. package/es/checkbox/checkbox-legacy/Base.js +0 -216
  73. package/es/checkbox/checkbox-legacy/CheckBox.js +0 -161
  74. package/es/checkbox/checkbox-legacy/common.js +0 -47
  75. package/es/checkbox/checkbox-legacy/index.js +0 -15
  76. package/es/checkbox/checkbox-legacy/style/index.css +0 -1
  77. package/es/checkbox/checkbox-legacy/style/index.js +0 -3
  78. package/es/checkbox/index.d.ts +0 -35
  79. package/es/checkbox/index.js +0 -38
  80. package/es/checkbox/style/index.css +0 -1
  81. package/es/checkbox/style/index.js +0 -3
  82. package/es/collapse/Panel.js +0 -135
  83. package/es/collapse/__tests__/index.test.js +0 -111
  84. package/es/collapse/index.d.ts +0 -24
  85. package/es/collapse/index.js +0 -197
  86. package/es/collapse/style/index.css +0 -1
  87. package/es/collapse/style/index.js +0 -3
  88. package/es/context/index.d.ts +0 -3
  89. package/es/context/index.js +0 -120
  90. package/es/counter/Counter.js +0 -369
  91. package/es/counter/__tests__/index.test.js +0 -134
  92. package/es/counter/counter-legacy/index.js +0 -271
  93. package/es/counter/index.d.ts +0 -13
  94. package/es/counter/index.js +0 -29
  95. package/es/counter/style/index.css +0 -1
  96. package/es/counter/style/index.js +0 -3
  97. package/es/date-picker/BasePicker.js +0 -325
  98. package/es/date-picker/TimePicker.d.ts +0 -23
  99. package/es/date-picker/TimePicker.js +0 -211
  100. package/es/date-picker/__tests__/index.test.js +0 -957
  101. package/es/date-picker/components/Calender.js +0 -274
  102. package/es/date-picker/components/Header.js +0 -98
  103. package/es/date-picker/components/Input.js +0 -103
  104. package/es/date-picker/components/Panel.js +0 -145
  105. package/es/date-picker/components/PickerIcon.js +0 -33
  106. package/es/date-picker/components/RangePanel.js +0 -353
  107. package/es/date-picker/components/Root.js +0 -128
  108. package/es/date-picker/components/Time.js +0 -258
  109. package/es/date-picker/components/TimeList.js +0 -193
  110. package/es/date-picker/components/TimePanel.js +0 -67
  111. package/es/date-picker/components/TimePeriodPanel.js +0 -78
  112. package/es/date-picker/constants.js +0 -54
  113. package/es/date-picker/context.js +0 -15
  114. package/es/date-picker/hooks/index.js +0 -47
  115. package/es/date-picker/hooks/useAltData.js +0 -112
  116. package/es/date-picker/hooks/useCalenderData.js +0 -371
  117. package/es/date-picker/hooks/useDate.js +0 -46
  118. package/es/date-picker/hooks/useFormat.js +0 -27
  119. package/es/date-picker/hooks/usePlaceholder.js +0 -43
  120. package/es/date-picker/hooks/useTimePeriodData.js +0 -29
  121. package/es/date-picker/index.d.ts +0 -61
  122. package/es/date-picker/index.js +0 -31
  123. package/es/date-picker/style/index.css +0 -1
  124. package/es/date-picker/style/index.js +0 -3
  125. package/es/date-picker/style/timepicker.css +0 -1
  126. package/es/date-picker/style/timepicker.js +0 -3
  127. package/es/date-picker/toLunar.js +0 -172
  128. package/es/date-picker/utils.js +0 -347
  129. package/es/drawer/index.d.ts +0 -18
  130. package/es/drawer/index.js +0 -133
  131. package/es/drawer/style/index.css +0 -1
  132. package/es/drawer/style/index.js +0 -3
  133. package/es/dropdown/Dropdown.js +0 -239
  134. package/es/dropdown/DropdownButton.js +0 -105
  135. package/es/dropdown/DropdownMenu.js +0 -119
  136. package/es/dropdown/DropdownMenuItem.js +0 -176
  137. package/es/dropdown/__tests__/index.test.js +0 -313
  138. package/es/dropdown/index.d.ts +0 -29
  139. package/es/dropdown/index.js +0 -88
  140. package/es/dropdown/style/index.css +0 -1
  141. package/es/dropdown/style/index.js +0 -3
  142. package/es/dropdown/tests/index.test.js +0 -76
  143. package/es/dropdown/utils.js +0 -35
  144. package/es/ficon/index.js +0 -56
  145. package/es/ficon/style/_fa/font-awesome.css +0 -1
  146. package/es/ficon/style/fonts/FontAwesome.otf +0 -0
  147. package/es/ficon/style/fonts/fontawesome-webfont.eot +0 -0
  148. package/es/ficon/style/fonts/fontawesome-webfont.svg +0 -2671
  149. package/es/ficon/style/fonts/fontawesome-webfont.ttf +0 -0
  150. package/es/ficon/style/fonts/fontawesome-webfont.woff +0 -0
  151. package/es/ficon/style/fonts/fontawesome-webfont.woff2 +0 -0
  152. package/es/ficon/style/index.css +0 -1
  153. package/es/ficon/style/index.js +0 -3
  154. package/es/filter/index.d.ts +0 -18
  155. package/es/filter/index.js +0 -146
  156. package/es/filter/style/index.css +0 -1
  157. package/es/filter/style/index.js +0 -3
  158. package/es/form/Form.js +0 -425
  159. package/es/form/FormContext.js +0 -15
  160. package/es/form/FormReducer.js +0 -144
  161. package/es/form/Item.js +0 -557
  162. package/es/form/List.js +0 -127
  163. package/es/form/Reset.js +0 -41
  164. package/es/form/SchemaForm.js +0 -129
  165. package/es/form/Submit.js +0 -39
  166. package/es/form/__tests__/index.test.js +0 -575
  167. package/es/form/form-legacy/form-v2/Form.js +0 -175
  168. package/es/form/form-legacy/form-v2/Item.js +0 -283
  169. package/es/form/form-legacy/form-v2/__tests__/index.test.js +0 -575
  170. package/es/form/form-legacy/form-v2/index.js +0 -27
  171. package/es/form/form-legacy/form-v2/style/index.css +0 -1
  172. package/es/form/form-legacy/form-v2/style/index.js +0 -3
  173. package/es/form/hooks/useForm.js +0 -48
  174. package/es/form/hooks/useFormInstance.js +0 -46
  175. package/es/form/index.d.ts +0 -80
  176. package/es/form/index.js +0 -47
  177. package/es/form/style/index.css +0 -1
  178. package/es/form/style/index.js +0 -3
  179. package/es/form/test.js +0 -52
  180. package/es/form/utils.js +0 -77
  181. package/es/grid/__tests__/index.test.js +0 -100
  182. package/es/grid/index.d.ts +0 -38
  183. package/es/grid/index.js +0 -178
  184. package/es/grid/style/index.css +0 -1
  185. package/es/grid/style/index.js +0 -3
  186. package/es/hi-base-table/index.d.ts +0 -675
  187. package/es/hi-base-table/index.js +0 -226
  188. package/es/hi-base-table/style/hiui-basetable-theme.css +0 -1
  189. package/es/hi-base-table/style/index.js +0 -3
  190. package/es/hi-request/axios.d.ts +0 -5
  191. package/es/hi-request/axios.js +0 -40
  192. package/es/hi-request/download.d.ts +0 -5
  193. package/es/hi-request/download.js +0 -30
  194. package/es/hi-request/index.d.ts +0 -4
  195. package/es/hi-request/index.js +0 -4
  196. package/es/hi-request/jsonp.d.ts +0 -5
  197. package/es/hi-request/jsonp.js +0 -66
  198. package/es/hi-request/mixin.d.ts +0 -3
  199. package/es/hi-request/mixin.js +0 -42
  200. package/es/hi-request/type.d.ts +0 -69
  201. package/es/hi-request/type.js +0 -0
  202. package/es/hi-request/upload.d.ts +0 -5
  203. package/es/hi-request/upload.js +0 -23
  204. package/es/hi-request/utils.d.ts +0 -1
  205. package/es/hi-request/utils.js +0 -3
  206. package/es/icon/iconfont.js +0 -48
  207. package/es/icon/index.d.ts +0 -13
  208. package/es/icon/index.js +0 -101
  209. package/es/icon/style/index.css +0 -1
  210. package/es/icon/style/index.js +0 -3
  211. package/es/index.d.ts +0 -95
  212. package/es/index.js +0 -58
  213. package/es/input/Input.js +0 -420
  214. package/es/input/__tests__/index.test.js +0 -377
  215. package/es/input/index.d.ts +0 -27
  216. package/es/input/index.js +0 -44
  217. package/es/input/input-legacy/index.js +0 -349
  218. package/es/input/input-legacy/util.js +0 -176
  219. package/es/input/style/index.css +0 -1
  220. package/es/input/style/index.js +0 -5
  221. package/es/input/util.js +0 -191
  222. package/es/lib/withDragDropContext.js +0 -16
  223. package/es/list/IconText.js +0 -40
  224. package/es/list/Item.js +0 -63
  225. package/es/list/index.d.ts +0 -30
  226. package/es/list/index.js +0 -159
  227. package/es/list/style/index.css +0 -1
  228. package/es/list/style/index.js +0 -3
  229. package/es/loading/Loading.js +0 -185
  230. package/es/loading/__tests__/index.test.js +0 -110
  231. package/es/loading/index.d.ts +0 -24
  232. package/es/loading/index.js +0 -18
  233. package/es/loading/style/index.css +0 -1
  234. package/es/loading/style/index.js +0 -3
  235. package/es/locales/en-US.js +0 -138
  236. package/es/locales/index.js +0 -25
  237. package/es/locales/zh-CN.js +0 -141
  238. package/es/locales/zh-Hant-HK.js +0 -141
  239. package/es/locales/zh-Hant-TW.js +0 -141
  240. package/es/menu/Item.js +0 -100
  241. package/es/menu/Menu.js +0 -420
  242. package/es/menu/SubMenu.js +0 -218
  243. package/es/menu/Title.js +0 -84
  244. package/es/menu/__tests__/index.test.js +0 -275
  245. package/es/menu/index.d.ts +0 -26
  246. package/es/menu/index.js +0 -24
  247. package/es/menu/style/index.css +0 -1
  248. package/es/menu/style/index.js +0 -3
  249. package/es/message/__tests__/index.test.js +0 -71
  250. package/es/message/index.d.ts +0 -18
  251. package/es/message/index.js +0 -70
  252. package/es/message/style/index.css +0 -1
  253. package/es/message/style/index.js +0 -5
  254. package/es/modal/__tests__/index.test.js +0 -178
  255. package/es/modal/index.d.ts +0 -33
  256. package/es/modal/index.js +0 -312
  257. package/es/modal/style/index.css +0 -1
  258. package/es/modal/style/index.js +0 -3
  259. package/es/notice/Notice.js +0 -138
  260. package/es/notice/NoticeContainer.js +0 -109
  261. package/es/notice/__tests__/index.test.js +0 -174
  262. package/es/notice/index.js +0 -66
  263. package/es/notice/style/index.css +0 -1
  264. package/es/notice/style/index.js +0 -5
  265. package/es/notification/HandleNotification/index.js +0 -220
  266. package/es/notification/HandleNotification/style/index.css +0 -1
  267. package/es/notification/HandleNotification/style/index.js +0 -5
  268. package/es/notification/__tests__/index.test.js +0 -114
  269. package/es/notification/index.d.ts +0 -25
  270. package/es/notification/index.js +0 -87
  271. package/es/notification/style/index.css +0 -1
  272. package/es/notification/style/index.js +0 -5
  273. package/es/pagination/Pager.js +0 -57
  274. package/es/pagination/Pagination.js +0 -538
  275. package/es/pagination/__tests__/index.test.js +0 -244
  276. package/es/pagination/index.d.ts +0 -20
  277. package/es/pagination/index.js +0 -18
  278. package/es/pagination/style/index.css +0 -1
  279. package/es/pagination/style/index.js +0 -5
  280. package/es/popover/__tests__/index.test.js +0 -152
  281. package/es/popover/index.d.ts +0 -14
  282. package/es/popover/index.js +0 -220
  283. package/es/popover/style/index.css +0 -1
  284. package/es/popover/style/index.js +0 -3
  285. package/es/popper/Overlay.js +0 -246
  286. package/es/popper/Portal.js +0 -42
  287. package/es/popper/index.js +0 -90
  288. package/es/popper/style/index.css +0 -1
  289. package/es/popper/style/index.js +0 -3
  290. package/es/popper/utils/popper.js +0 -311
  291. package/es/popper/utils/positionUtils.js +0 -314
  292. package/es/popper/utils/useClickOutside.js +0 -37
  293. package/es/popper/utils/useWaitForDOMRef.js +0 -56
  294. package/es/preview/index.d.ts +0 -16
  295. package/es/preview/index.js +0 -442
  296. package/es/preview/style/index.css +0 -1
  297. package/es/preview/style/index.js +0 -3
  298. package/es/progress/BarProgress.js +0 -157
  299. package/es/progress/CircleProgress.js +0 -49
  300. package/es/progress/DashboardProgress.js +0 -60
  301. package/es/progress/Progress.js +0 -111
  302. package/es/progress/__tests__/index.test.js +0 -131
  303. package/es/progress/index.d.ts +0 -18
  304. package/es/progress/index.js +0 -15
  305. package/es/progress/style/index.css +0 -1
  306. package/es/progress/style/index.js +0 -3
  307. package/es/radio/Group.js +0 -280
  308. package/es/radio/Radio.js +0 -167
  309. package/es/radio/__tests__/index.test.js +0 -128
  310. package/es/radio/index.d.ts +0 -32
  311. package/es/radio/index.js +0 -31
  312. package/es/radio/radio-legacy/__test__/index.test.js +0 -79
  313. package/es/radio/radio-legacy/index.js +0 -218
  314. package/es/radio/radio-legacy/style/index.css +0 -1
  315. package/es/radio/radio-legacy/style/index.js +0 -3
  316. package/es/radio/style/index.css +0 -1
  317. package/es/radio/style/index.js +0 -3
  318. package/es/rate/Icons.js +0 -294
  319. package/es/rate/Rate.js +0 -316
  320. package/es/rate/__tests__/index.test.js +0 -124
  321. package/es/rate/index.d.ts +0 -22
  322. package/es/rate/index.js +0 -15
  323. package/es/rate/style/index.css +0 -1
  324. package/es/rate/style/index.js +0 -3
  325. package/es/rich-text-editor/index.d.ts +0 -8
  326. package/es/rich-text-editor/index.js +0 -67
  327. package/es/rich-text-editor/style/index.css +0 -1
  328. package/es/rich-text-editor/style/index.js +0 -9
  329. package/es/search/index.d.ts +0 -23
  330. package/es/search/index.js +0 -264
  331. package/es/search/searchDropdown.js +0 -111
  332. package/es/search/style/index.css +0 -1
  333. package/es/search/style/index.js +0 -3
  334. package/es/select/MultipleInput.js +0 -163
  335. package/es/select/Select.js +0 -775
  336. package/es/select/SelectDropdown.js +0 -341
  337. package/es/select/SelectInput.js +0 -31
  338. package/es/select/SingleInput.js +0 -94
  339. package/es/select/__tests__/index.test.js +0 -505
  340. package/es/select/common.js +0 -19
  341. package/es/select/index.d.ts +0 -65
  342. package/es/select/index.js +0 -32
  343. package/es/select/select-legacy/select-v1/Option.js +0 -81
  344. package/es/select/select-legacy/select-v1/Select.js +0 -706
  345. package/es/select/select-legacy/select-v1/SelectDropdown.js +0 -160
  346. package/es/select/select-legacy/select-v1/SelectInput.js +0 -308
  347. package/es/select/select-legacy/select-v1/common.js +0 -19
  348. package/es/select/select-legacy/select-v1/index.js +0 -16
  349. package/es/select/select-legacy/select-v2/Select.js +0 -756
  350. package/es/select/select-legacy/select-v2/SelectDropdown.js +0 -322
  351. package/es/select/select-legacy/select-v2/SelectInput.js +0 -331
  352. package/es/select/select-legacy/select-v2/__tests__/index.test.js +0 -505
  353. package/es/select/select-legacy/select-v2/common.js +0 -19
  354. package/es/select/select-legacy/select-v2/index.js +0 -15
  355. package/es/select/select-legacy/select-v2/style/index.css +0 -1
  356. package/es/select/select-legacy/select-v2/style/index.js +0 -9
  357. package/es/select/select-legacy/select-v2/style/select-dropdown.css +0 -1
  358. package/es/select/select-legacy/select-v2/style/select-input.css +0 -1
  359. package/es/select/style/index.css +0 -1
  360. package/es/select/style/index.js +0 -9
  361. package/es/select/style/select-dropdown.css +0 -1
  362. package/es/select/style/select-input.css +0 -1
  363. package/es/select/utils.js +0 -72
  364. package/es/select-tree/SelectTreeHook.js +0 -788
  365. package/es/select-tree/components/Trigger.js +0 -85
  366. package/es/select-tree/components/tree/LoadingIcon.js +0 -38
  367. package/es/select-tree/components/tree/NavTree.js +0 -229
  368. package/es/select-tree/components/tree/TreeNode.js +0 -167
  369. package/es/select-tree/components/tree/context.js +0 -15
  370. package/es/select-tree/components/tree/index.js +0 -80
  371. package/es/select-tree/components/tree/style/index.css +0 -1
  372. package/es/select-tree/components/tree/style/index.js +0 -3
  373. package/es/select-tree/components/tree/util.js +0 -621
  374. package/es/select-tree/index.d.ts +0 -47
  375. package/es/select-tree/index.js +0 -15
  376. package/es/select-tree/keyEvents.js +0 -121
  377. package/es/select-tree/style/index.css +0 -1
  378. package/es/select-tree/style/index.js +0 -3
  379. package/es/slider/index.d.ts +0 -22
  380. package/es/slider/index.js +0 -491
  381. package/es/slider/style/index.css +0 -1
  382. package/es/slider/style/index.js +0 -3
  383. package/es/stepper/Stepper.js +0 -158
  384. package/es/stepper/__tests__/index.test.js +0 -161
  385. package/es/stepper/index.d.ts +0 -16
  386. package/es/stepper/index.js +0 -33
  387. package/es/stepper/style/index.css +0 -1
  388. package/es/stepper/style/index.js +0 -3
  389. package/es/style/icon/diyIcon.css +0 -1
  390. package/es/style/icon/index.css +0 -1
  391. package/es/switch/__tests__/index.test.js +0 -68
  392. package/es/switch/index.d.ts +0 -13
  393. package/es/switch/index.js +0 -21
  394. package/es/switch/style/index.css +0 -1
  395. package/es/switch/style/index.js +0 -3
  396. package/es/switch/switch-legacy/__tests__/index.test.js +0 -68
  397. package/es/switch/switch-legacy/index.js +0 -128
  398. package/es/switch/switch-legacy/style/index.css +0 -1
  399. package/es/switch/switch-legacy/style/index.js +0 -3
  400. package/es/switch/switch.js +0 -76
  401. package/es/table/AdvanceHeader/CustomFilter.js +0 -73
  402. package/es/table/AdvanceHeader/Sorter.js +0 -72
  403. package/es/table/AdvanceHeader/index.js +0 -41
  404. package/es/table/AdvanceHeader/select/index.js +0 -720
  405. package/es/table/AdvanceHeader/select/style/index.css +0 -1
  406. package/es/table/AdvanceHeader/select/style/index.js +0 -5
  407. package/es/table/AdvanceHeader/style/index.css +0 -1
  408. package/es/table/AdvanceHeader/style/index.js +0 -3
  409. package/es/table/BodyTable.js +0 -261
  410. package/es/table/Cell.js +0 -193
  411. package/es/table/ColumnMenu.js +0 -148
  412. package/es/table/Expandcol.js +0 -48
  413. package/es/table/HeaderTable.js +0 -359
  414. package/es/table/Indent.js +0 -27
  415. package/es/table/LoadingIcon.js +0 -38
  416. package/es/table/Row.js +0 -261
  417. package/es/table/SettingMenu.js +0 -205
  418. package/es/table/Table.js +0 -697
  419. package/es/table/context.js +0 -15
  420. package/es/table/hooks/useClickOutside.js +0 -23
  421. package/es/table/index.d.ts +0 -108
  422. package/es/table/index.js +0 -21
  423. package/es/table/style/Table.css +0 -1
  424. package/es/table/style/index.css +0 -1
  425. package/es/table/style/index.js +0 -3
  426. package/es/table/style/reset.css +0 -1
  427. package/es/table/style/variable.css +0 -0
  428. package/es/table/table-legacy/table-v2/Body.js +0 -298
  429. package/es/table/table-legacy/table-v2/ClickOuterside.js +0 -99
  430. package/es/table/table-legacy/table-v2/Footer.js +0 -174
  431. package/es/table/table-legacy/table-v2/Header.js +0 -319
  432. package/es/table/table-legacy/table-v2/TableContent.js +0 -105
  433. package/es/table/table-legacy/table-v2/__tests__/index.test.js +0 -129
  434. package/es/table/table-legacy/table-v2/checkbox/index.js +0 -98
  435. package/es/table/table-legacy/table-v2/checkbox/style/index.css +0 -1
  436. package/es/table/table-legacy/table-v2/checkbox/style/index.js +0 -3
  437. package/es/table/table-legacy/table-v2/index.js +0 -1466
  438. package/es/table/table-legacy/table-v2/menu/index.js +0 -110
  439. package/es/table/table-legacy/table-v2/prefix.js +0 -20
  440. package/es/table/table-legacy/table-v2/style/Table.css +0 -1
  441. package/es/table/table-legacy/table-v2/style/index.css +0 -1
  442. package/es/table/table-legacy/table-v2/style/index.js +0 -3
  443. package/es/table/table-legacy/table-v2/tool.js +0 -129
  444. package/es/table/util.js +0 -320
  445. package/es/tabs/ItemDropdown.js +0 -158
  446. package/es/tabs/TabItem.js +0 -116
  447. package/es/tabs/TabPane.js +0 -64
  448. package/es/tabs/Tabs.js +0 -576
  449. package/es/tabs/__tests__/index.test.js +0 -333
  450. package/es/tabs/hooks/useTabItems.js +0 -77
  451. package/es/tabs/hooks/useTranslate.js +0 -71
  452. package/es/tabs/index.d.ts +0 -47
  453. package/es/tabs/index.js +0 -38
  454. package/es/tabs/style/animate.css +0 -1
  455. package/es/tabs/style/index.css +0 -1
  456. package/es/tabs/style/index.js +0 -3
  457. package/es/tabs/tabs-legacy/ItemDropdown.js +0 -166
  458. package/es/tabs/tabs-legacy/TabPane.js +0 -74
  459. package/es/tabs/tabs-legacy/Tabs.js +0 -295
  460. package/es/tabs/tabs-legacy/index.js +0 -18
  461. package/es/tabs/tabs-legacy/style/index.css +0 -1
  462. package/es/tabs/tabs-legacy/style/index.js +0 -3
  463. package/es/tag/TagGroup.js +0 -235
  464. package/es/tag/TagItem.js +0 -116
  465. package/es/tag/__tests__/index.test.js +0 -46
  466. package/es/tag/index.d.ts +0 -32
  467. package/es/tag/index.js +0 -18
  468. package/es/tag/style/index.css +0 -1
  469. package/es/tag/style/index.js +0 -3
  470. package/es/timeline/__tests__/index.test.js +0 -198
  471. package/es/timeline/index.d.ts +0 -18
  472. package/es/timeline/index.js +0 -264
  473. package/es/timeline/style/index.css +0 -1
  474. package/es/timeline/style/index.js +0 -3
  475. package/es/tooltip/__tests__/index.test.js +0 -170
  476. package/es/tooltip/index.d.ts +0 -19
  477. package/es/tooltip/index.js +0 -210
  478. package/es/tooltip/style/index.css +0 -1
  479. package/es/tooltip/style/index.js +0 -3
  480. package/es/transfer/Item.js +0 -192
  481. package/es/transfer/Transfer.js +0 -562
  482. package/es/transfer/__tests__/index.test.js +0 -210
  483. package/es/transfer/img/switch.png +0 -0
  484. package/es/transfer/img/warning.png +0 -0
  485. package/es/transfer/index.d.ts +0 -25
  486. package/es/transfer/index.js +0 -16
  487. package/es/transfer/style/index.css +0 -1
  488. package/es/transfer/style/index.js +0 -3
  489. package/es/tree/BaseTree.js +0 -209
  490. package/es/tree/IconLoading.js +0 -38
  491. package/es/tree/Switcher.js +0 -42
  492. package/es/tree/Tree.js +0 -610
  493. package/es/tree/TreeNode.js +0 -326
  494. package/es/tree/context.js +0 -15
  495. package/es/tree/customTreeNode.js +0 -140
  496. package/es/tree/hooks/useCheckable.js +0 -153
  497. package/es/tree/hooks/useClickOutside.js +0 -26
  498. package/es/tree/hooks/useExpand.js +0 -46
  499. package/es/tree/hooks/useFlatData.js +0 -61
  500. package/es/tree/hooks/useSelect.js +0 -47
  501. package/es/tree/index.d.ts +0 -67
  502. package/es/tree/index.js +0 -21
  503. package/es/tree/style/index.css +0 -1
  504. package/es/tree/style/index.js +0 -3
  505. package/es/tree/tree-legacy/tree-v1/Tree.js +0 -333
  506. package/es/tree/tree-legacy/tree-v1/TreeDivider.js +0 -25
  507. package/es/tree/tree-legacy/tree-v1/TreeItem.js +0 -329
  508. package/es/tree/tree-legacy/tree-v1/TreeNode.js +0 -715
  509. package/es/tree/tree-legacy/tree-v1/index.js +0 -13
  510. package/es/tree/tree-legacy/tree-v1/style/index.css +0 -1
  511. package/es/tree/tree-legacy/tree-v1/style/index.js +0 -3
  512. package/es/tree/tree-legacy/tree-v1/util.js +0 -434
  513. package/es/tree/tree-legacy/tree-v2/IconLoading.js +0 -38
  514. package/es/tree/tree-legacy/tree-v2/Modal.js +0 -71
  515. package/es/tree/tree-legacy/tree-v2/Tree.js +0 -347
  516. package/es/tree/tree-legacy/tree-v2/TreeDivider.js +0 -25
  517. package/es/tree/tree-legacy/tree-v2/TreeItem.js +0 -439
  518. package/es/tree/tree-legacy/tree-v2/TreeNode.js +0 -909
  519. package/es/tree/tree-legacy/tree-v2/__tests__/index.test.js +0 -603
  520. package/es/tree/tree-legacy/tree-v2/index.js +0 -20
  521. package/es/tree/tree-legacy/tree-v2/style/index.css +0 -1
  522. package/es/tree/tree-legacy/tree-v2/style/index.js +0 -3
  523. package/es/tree/tree-legacy/tree-v2/util.js +0 -195
  524. package/es/tree/util.js +0 -131
  525. package/es/upload/AvatarUpload.js +0 -293
  526. package/es/upload/DragUpload.js +0 -194
  527. package/es/upload/FileSelect.js +0 -47
  528. package/es/upload/NormalUpload.js +0 -146
  529. package/es/upload/PictureListUpload.js +0 -147
  530. package/es/upload/PictureUpload.js +0 -233
  531. package/es/upload/Preview.js +0 -441
  532. package/es/upload/__tests__/index.test.js +0 -760
  533. package/es/upload/hooks/useUpload.js +0 -274
  534. package/es/upload/index.d.ts +0 -42
  535. package/es/upload/index.js +0 -44
  536. package/es/upload/request.js +0 -118
  537. package/es/upload/style/index.css +0 -1
  538. package/es/upload/style/index.js +0 -5
  539. package/es/upload/style/preview.css +0 -1
  540. package/es/upload/style/preview.js +0 -3
  541. package/es/upload/util.js +0 -55
  542. package/es/watermark/index.d.ts +0 -12
  543. package/es/watermark/index.js +0 -110
  544. package/es/watermark/watermark.js +0 -252
@@ -1,775 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
-
14
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
15
-
16
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
-
18
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
19
-
20
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
21
-
22
- var _react = _interopRequireWildcard(require("react"));
23
-
24
- var _classnames = _interopRequireDefault(require("classnames"));
25
-
26
- var _lodash = _interopRequireWildcard(require("lodash"));
27
-
28
- var _popper = _interopRequireDefault(require("../popper"));
29
-
30
- var _SelectInput = _interopRequireDefault(require("./SelectInput"));
31
-
32
- var _SelectDropdown = _interopRequireDefault(require("./SelectDropdown"));
33
-
34
- var _context = _interopRequireDefault(require("../context"));
35
-
36
- var _index = _interopRequireDefault(require("../hi-request/index"));
37
-
38
- var _utils = require("./utils");
39
-
40
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
41
-
42
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
43
-
44
- var InternalSelect = function InternalSelect(props) {
45
- var data = props.data,
46
- type = props.type,
47
- showCheckAll = props.showCheckAll,
48
- showJustSelected = props.showJustSelected,
49
- className = props.className,
50
- disabled = props.disabled,
51
- clearable = props.clearable,
52
- style = props.style,
53
- children = props.children,
54
- optionWidth = props.optionWidth,
55
- render = props.render,
56
- multipleWrap = props.multipleWrap,
57
- onFocus = props.onFocus,
58
- onBlur = props.onBlur,
59
- dataSource = props.dataSource,
60
- filterOption = props.filterOption,
61
- theme = props.theme,
62
- localeDatas = props.localeDatas,
63
- preventOverflow = props.preventOverflow,
64
- placement = props.placement,
65
- onSearch = props.onSearch,
66
- propsonChange = props.onChange,
67
- onOverlayScroll = props.onOverlayScroll,
68
- value = props.value,
69
- defaultValue = props.defaultValue,
70
- autoload = props.autoload,
71
- propsSearchable = props.searchable,
72
- fieldNames = props.fieldNames,
73
- overlayClassName = props.overlayClassName,
74
- setOverlayContainer = props.setOverlayContainer,
75
- _props$bordered = props.bordered,
76
- bordered = _props$bordered === void 0 ? true : _props$bordered,
77
- _props$overlayClickOu = props.overlayClickOutSideEventName,
78
- overlayClickOutSideEventName = _props$overlayClickOu === void 0 ? 'click' : _props$overlayClickOu,
79
- renderExtraFooter = props.renderExtraFooter;
80
- var selectInputContainer = (0, _react.useRef)();
81
- var autoloadFlag = (0, _react.useRef)(autoload); // 多选情况下,需要记录是否进行了筛选
82
-
83
- var historyData = (0, _react.useRef)([]);
84
-
85
- var _useState = (0, _react.useState)(data),
86
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
87
- dropdownItems = _useState2[0],
88
- setDropdownItems = _useState2[1];
89
-
90
- var _useState3 = (0, _react.useState)(false),
91
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
92
- isGroup = _useState4[0],
93
- setIsGroup = _useState4[1];
94
-
95
- var _useState5 = (0, _react.useState)(0),
96
- _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
97
- focusedIndex = _useState6[0],
98
- setFocusedIndex = _useState6[1];
99
-
100
- var _useState7 = (0, _react.useState)(false),
101
- _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
102
- isFocus = _useState8[0],
103
- setIsFouces = _useState8[1];
104
-
105
- var SelectWrapper = (0, _react.useRef)();
106
- var targetByKeyDown = (0, _react.useRef)(false);
107
- var CancelToken = _index["default"].CancelToken;
108
- var cancel; // 存储问题
109
-
110
- var _useState9 = (0, _react.useState)([]),
111
- _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
112
- cacheSelectItem = _useState10[0],
113
- setCacheSelectItem = _useState10[1]; // value 有可能是0的情况
114
-
115
-
116
- var _useState11 = (0, _react.useState)((0, _utils.resetSelectedItems)(value === undefined ? defaultValue : value, _lodash["default"].cloneDeep(data), (0, _utils.transKeys)(fieldNames, 'id'))),
117
- _useState12 = (0, _slicedToArray2["default"])(_useState11, 2),
118
- selectedItems = _useState12[0],
119
- setSelectedItems = _useState12[1];
120
-
121
- var _useState13 = (0, _react.useState)(false),
122
- _useState14 = (0, _slicedToArray2["default"])(_useState13, 2),
123
- dropdownShow = _useState14[0],
124
- setDropdownShow = _useState14[1]; // 搜索关键字
125
-
126
-
127
- var _useState15 = (0, _react.useState)(''),
128
- _useState16 = (0, _slicedToArray2["default"])(_useState15, 2),
129
- keyword = _useState16[0],
130
- setKeyword = _useState16[1];
131
-
132
- var _useState17 = (0, _react.useState)(false),
133
- _useState18 = (0, _slicedToArray2["default"])(_useState17, 2),
134
- loading = _useState18[0],
135
- setLoading = _useState18[1];
136
-
137
- var _useState19 = (0, _react.useState)(dataSource ? true : propsSearchable),
138
- _useState20 = (0, _slicedToArray2["default"])(_useState19, 2),
139
- searchable = _useState20[0],
140
- setSearchable = _useState20[1];
141
-
142
- (0, _react.useEffect)(function () {
143
- // 处理默认值的问题
144
- var selectedItems = (0, _utils.resetSelectedItems)(value === undefined ? defaultValue : value, _lodash["default"].uniqBy(cacheSelectItem.concat(dropdownItems), (0, _utils.transKeys)(fieldNames, 'id')), (0, _utils.transKeys)(fieldNames, 'id'));
145
-
146
- if (dataSource) {
147
- // 在异步多选的时候时候才需要进行值的记录
148
- type === 'multiple' && setCacheSelectItem(selectedItems);
149
- autoload && remoteSearch();
150
- }
151
-
152
- resetFocusedIndex();
153
- }, []);
154
- (0, _react.useEffect)(function () {
155
- historyData.current = _lodash["default"].cloneDeep(data);
156
- }, [data]);
157
- (0, _react.useEffect)(function () {
158
- if (dropdownItems && dropdownItems.length) {
159
- setIsGroup(dropdownItems.every(function (item) {
160
- return item.children && item.children.length > 0;
161
- }));
162
- }
163
-
164
- historyData.current = (0, _utils.uniqBy)(data.concat(dropdownItems, historyData.current), (0, _utils.transKeys)(fieldNames, 'id'));
165
- }, [dropdownItems, data]);
166
- (0, _react.useEffect)(function () {
167
- resetFocusedIndex();
168
- }, [keyword, isGroup]);
169
- (0, _react.useEffect)(function () {
170
- var dataSourcePropsSearchable = typeof propsSearchable !== 'undefined' ? propsSearchable : true; // 在存在dataSource的时候,默认searchable为true
171
-
172
- setSearchable(dataSource ? dataSourcePropsSearchable : propsSearchable);
173
- }, [propsSearchable]);
174
- (0, _react.useEffect)(function () {
175
- setIsFouces(dropdownShow);
176
- }, [dropdownShow]);
177
- (0, _react.useEffect)(function () {
178
- if (value !== undefined) {
179
- // 处理默认值的问题
180
- var _selectedItems2 = (0, _utils.resetSelectedItems)(value, (0, _utils.uniqBy)(cacheSelectItem.concat(dropdownItems), (0, _utils.transKeys)(fieldNames, 'id')), (0, _utils.transKeys)(fieldNames, 'id'));
181
-
182
- setSelectedItems(_selectedItems2);
183
- resetFocusedIndex();
184
- }
185
- }, [value, cacheSelectItem]);
186
- (0, _react.useEffect)(function () {
187
- var _data = _lodash["default"].cloneDeep(data);
188
-
189
- var selectedItems = (0, _utils.resetSelectedItems)(value === undefined ? defaultValue : value, historyData.current, (0, _utils.transKeys)(fieldNames, 'id'));
190
- setSelectedItems(selectedItems);
191
-
192
- if (dataSource && type === 'multiple') {
193
- setCacheSelectItem(selectedItems);
194
- !dropdownShow && searchable && setDropdownItems(selectedItems);
195
- } else {
196
- if (dataSource) {
197
- searchable && setDropdownItems(_data);
198
- } else {
199
- setDropdownItems(_data);
200
- }
201
- }
202
- }, [data, value]);
203
- var localeDatasProps = (0, _react.useCallback)(function (key) {
204
- if (props[key]) {
205
- return props[key];
206
- } else {
207
- return localeDatas.select[key];
208
- }
209
- }, [props]); // 改变的回调
210
-
211
- var onChange = (0, _react.useCallback)(function (selectedItems, changedItems, callback) {
212
- if (value === undefined) {
213
- setSelectedItems(selectedItems);
214
- callback();
215
- } // 调用用户的select
216
-
217
-
218
- var selectedIds = selectedItems.map(function (item) {
219
- return item[(0, _utils.transKeys)(fieldNames, 'id')];
220
- });
221
- propsonChange && propsonChange(selectedIds, changedItems, selectedItems);
222
- }, [propsonChange]); // 选中某一项
223
-
224
- var onClickOption = (0, _react.useCallback)(function (item, index) {
225
- if (!item || item[(0, _utils.transKeys)(fieldNames, 'disabled')]) return;
226
-
227
- var _selectedItems = _lodash["default"].cloneDeep(selectedItems);
228
-
229
- if (type === 'multiple') {
230
- // 获取元素索引
231
- var itemIndex = _selectedItems.findIndex(function (sItem) {
232
- return sItem[(0, _utils.transKeys)(fieldNames, 'id')] === item[(0, _utils.transKeys)(fieldNames, 'id')];
233
- });
234
-
235
- if (itemIndex === -1) {
236
- _selectedItems.push(item);
237
- } else {
238
- _selectedItems.splice(itemIndex, 1);
239
- } // 在受控情况下
240
-
241
-
242
- if (_lodash["default"].isEqual(cacheSelectItem, selectedItems) && dataSource) {
243
- setCacheSelectItem(_selectedItems);
244
- }
245
- } else {
246
- _selectedItems = [item];
247
- }
248
-
249
- onChange(_selectedItems, item, function () {
250
- setFocusedIndex(index);
251
- });
252
- type !== 'multiple' && hideDropdown();
253
- }, [type, selectedItems, onChange, dropdownShow, cacheSelectItem]); // 收起下拉框
254
-
255
- var hideDropdown = (0, _react.useCallback)(function () {
256
- if (dropdownShow) {
257
- setKeyword('');
258
- setDropdownShow(false);
259
-
260
- if (onBlur) {
261
- onBlur();
262
- }
263
- } // 多选具有默认值的话打开的话应该显示选中的值
264
-
265
-
266
- if (dataSource && type === 'multiple' && !autoloadFlag.current) {
267
- setCacheSelectItem(selectedItems);
268
- setDropdownItems(selectedItems);
269
- }
270
- }, [dropdownShow, selectedItems, dataSource, type, onBlur]); // 获取分组的数据 以及下标
271
-
272
- var getGroupDropdownItems = (0, _react.useCallback)(function (focusedIndex, group, direction) {
273
- var _focusedIndex = focusedIndex;
274
- var _group = group;
275
- !isNaN(Number(_focusedIndex)) && (_focusedIndex = '0-0');
276
-
277
- var focusedGroup = _focusedIndex.split('-');
278
-
279
- var l = dropdownItems.length;
280
- var _dropdownItems = [];
281
-
282
- if (focusedGroup[1] / 1 === 0 && group !== undefined) {
283
- if (!dropdownItems[group]) {
284
- _group = l - 1;
285
- }
286
-
287
- _dropdownItems = dropdownItems[group] ? dropdownItems[group][(0, _utils.transKeys)(fieldNames, 'children')] : dropdownItems[direction === 'down' ? 0 : l - 1][(0, _utils.transKeys)(fieldNames, 'children')];
288
- focusedGroup[1] = direction === 'down' ? -1 : _dropdownItems.length;
289
- } else {
290
- _dropdownItems = dropdownItems[focusedGroup[0]] && dropdownItems[focusedGroup[0]][(0, _utils.transKeys)(fieldNames, 'children')] || [];
291
- _group = focusedGroup[0];
292
- }
293
-
294
- return {
295
- _dropdownItems: _dropdownItems,
296
- _focusedIndex: focusedGroup[1],
297
- group: _group
298
- };
299
- }, [focusedIndex, dropdownItems, fieldNames]); // 方向键的回调
300
-
301
- var moveFocusedIndex = (0, _react.useCallback)(function (direction) {
302
- targetByKeyDown.current = true;
303
- var _focusedIndex = focusedIndex;
304
- var _dropdownItems = dropdownItems;
305
- var group = 0;
306
-
307
- if (isGroup) {
308
- var groupDropdownItems = getGroupDropdownItems(_focusedIndex);
309
- _dropdownItems = groupDropdownItems._dropdownItems;
310
- _focusedIndex = groupDropdownItems._focusedIndex;
311
- group = groupDropdownItems.group;
312
- }
313
-
314
- var everyIsDisabled = _dropdownItems.every(function (item) {
315
- return item[(0, _utils.transKeys)(fieldNames, 'disabled')];
316
- }); // 防止出现所有的选项都为 disabled
317
-
318
-
319
- if (!everyIsDisabled) {
320
- if (direction === 'up') {
321
- if (isGroup) {
322
- if (_focusedIndex / 1 === 0) {
323
- var _groupDropdownItems = getGroupDropdownItems(_focusedIndex, --group);
324
-
325
- _dropdownItems = _groupDropdownItems._dropdownItems;
326
- _focusedIndex = _groupDropdownItems._focusedIndex;
327
- group = _groupDropdownItems.group; // 二次校验分组后的是否都是不可点击
328
-
329
- if (_dropdownItems.every(function (item) {
330
- return item[(0, _utils.transKeys)(fieldNames, 'disabled')];
331
- })) {
332
- return;
333
- }
334
- }
335
- } else {
336
- _focusedIndex === 0 && (_focusedIndex = _dropdownItems.length);
337
- }
338
-
339
- _focusedIndex--;
340
-
341
- while (_dropdownItems[_focusedIndex] && _dropdownItems[_focusedIndex].disabled) {
342
- _focusedIndex === 0 && (_focusedIndex = _dropdownItems.length);
343
- _focusedIndex--;
344
- }
345
- } else {
346
- if (isGroup) {
347
- if (_focusedIndex / 1 === _dropdownItems.length - 1) {
348
- group++;
349
-
350
- var _groupDropdownItems2 = getGroupDropdownItems(group + '-0', group, direction);
351
-
352
- _dropdownItems = _groupDropdownItems2._dropdownItems;
353
- _focusedIndex = _groupDropdownItems2._focusedIndex;
354
- group = _groupDropdownItems2.group; // 二次校验分组后的是否都是不可点击
355
-
356
- if (_dropdownItems.every(function (item) {
357
- return item[(0, _utils.transKeys)(fieldNames, 'disabled')];
358
- })) {
359
- return;
360
- }
361
- }
362
- } else {
363
- _focusedIndex === _dropdownItems.length - 1 && (_focusedIndex = -1);
364
- }
365
-
366
- _focusedIndex++;
367
-
368
- while (_dropdownItems[_focusedIndex] && _dropdownItems[_focusedIndex].disabled) {
369
- _focusedIndex === _dropdownItems.length - 1 && (_focusedIndex = -1);
370
- _focusedIndex++;
371
- }
372
- }
373
- }
374
-
375
- setFocusedIndex(isGroup ? group + '-' + _focusedIndex : _focusedIndex);
376
- }, [focusedIndex, dropdownItems, fieldNames, targetByKeyDown.current]); // 点击回车选中
377
-
378
- var onEnterSelect = (0, _react.useCallback)(function () {
379
- var focusedGroup = isGroup && focusedIndex.split('-');
380
- var item = isGroup ? dropdownItems[focusedGroup[0]][(0, _utils.transKeys)(fieldNames, 'children')][focusedGroup[1]] : dropdownItems[focusedIndex];
381
- onClickOption(item, focusedIndex);
382
- }, [dropdownItems, focusedIndex, onClickOption]); // 按键操作
383
-
384
- var handleKeyDown = (0, _react.useCallback)(function (evt) {
385
- if (dropdownShow && !disabled) {
386
- evt.stopPropagation();
387
-
388
- if (evt.keyCode === 38) {
389
- evt.preventDefault();
390
- moveFocusedIndex('up');
391
- }
392
-
393
- if (evt.keyCode === 40) {
394
- evt.preventDefault();
395
- moveFocusedIndex('down');
396
- }
397
-
398
- if (evt.keyCode === 13) {
399
- // enter
400
- onEnterSelect();
401
- } // esc
402
-
403
-
404
- if (evt.keyCode === 27) {
405
- setDropdownShow(false);
406
- }
407
-
408
- if (evt.keyCode === 32 && !document.activeElement.classList.value.includes('hi-select__dropdown__searchbar--input')) {
409
- evt.preventDefault();
410
- setDropdownShow(!dropdownShow);
411
- }
412
- }
413
- }, [onEnterSelect, moveFocusedIndex, targetByKeyDown.current]); // 对关键字的校验 对数据的过滤
414
-
415
- var matchFilter = (0, _react.useCallback)(function (item) {
416
- var shouldMatch = dataSource || !searchable || !keyword;
417
-
418
- if (typeof filterOption === 'function') {
419
- return shouldMatch || filterOption(keyword, item);
420
- }
421
-
422
- return shouldMatch || String(item[(0, _utils.transKeys)(fieldNames, 'id')] || '').includes(keyword) || String(item[(0, _utils.transKeys)(fieldNames, 'title')] || '').includes(keyword);
423
- }, [dataSource, searchable, keyword, filterOption]);
424
- var remoteSearch = (0, _react.useCallback)(function (keyword) {
425
- var resultMayBePromise = typeof dataSource === 'function' ? dataSource(keyword) : dataSource;
426
- if ((0, _lodash.isNil)(resultMayBePromise)) return;
427
-
428
- if (Array.isArray(resultMayBePromise)) {
429
- setDropdownItems(resultMayBePromise);
430
- return;
431
- }
432
-
433
- if (resultMayBePromise.toString() === '[object Promise]') {
434
- setLoading(true);
435
- resultMayBePromise.then(function (res) {
436
- setLoading(false);
437
- if ((0, _lodash.isNil)(res)) return;
438
- setDropdownItems(Array.isArray(res) ? res : []);
439
- }, function () {
440
- setLoading(false);
441
- setDropdownItems([]);
442
- });
443
- return;
444
- } // 传入对象, 调用接口
445
-
446
-
447
- HiRequestSearch(resultMayBePromise, keyword);
448
- }, [dataSource, keyword]);
449
- var HiRequestSearch = (0, _react.useCallback)(function (_dataSource, keyword) {
450
- var url = _dataSource.url,
451
- _dataSource$method = _dataSource.method,
452
- method = _dataSource$method === void 0 ? 'GET' : _dataSource$method,
453
- transformResponse = _dataSource.transformResponse,
454
- headers = _dataSource.headers,
455
- _dataSource$data = _dataSource.data,
456
- data = _dataSource$data === void 0 ? {} : _dataSource$data,
457
- _dataSource$params = _dataSource.params,
458
- params = _dataSource$params === void 0 ? {} : _dataSource$params,
459
- key = _dataSource.key,
460
- error = _dataSource.error,
461
- credentials = _dataSource.credentials,
462
- _dataSource$withCrede = _dataSource.withCredentials,
463
- withCredentials = _dataSource$withCrede === void 0 ? false : _dataSource$withCrede,
464
- options = (0, _objectWithoutProperties2["default"])(_dataSource, ["url", "method", "transformResponse", "headers", "data", "params", "key", "error", "credentials", "withCredentials"]); // 处理Key
465
-
466
- options.params = key && keyword ? _objectSpread((0, _defineProperty2["default"])({}, key, keyword), params) : params;
467
-
468
- var _withCredentials = withCredentials || credentials === 'include'; // 取消上一次的请求
469
-
470
-
471
- var CANCEL_STATE = 'Cancel';
472
- typeof cancel === 'function' && cancel(CANCEL_STATE);
473
- (0, _index["default"])(_objectSpread({
474
- url: url,
475
- method: method,
476
- data: data,
477
- cancelToken: new CancelToken(function (c) {
478
- cancel = c;
479
- }),
480
- withCredentials: _withCredentials,
481
- error: error,
482
- beforeRequest: function beforeRequest(config) {
483
- setLoading(true);
484
- return config;
485
- },
486
- errorCallback: function errorCallback(err) {
487
- var _err$message = err.message,
488
- message = _err$message === void 0 ? 'normal' : _err$message;
489
- setLoading(message === CANCEL_STATE);
490
- error && error(err);
491
- }
492
- }, options)).then(function (response) {
493
- if (!response) {
494
- setLoading(false);
495
- return;
496
- }
497
-
498
- var _response$message = response.message,
499
- message = _response$message === void 0 ? 'normal' : _response$message;
500
-
501
- if (message !== CANCEL_STATE) {
502
- setLoading(false);
503
- var dataItems = transformResponse && transformResponse(response.data, response);
504
-
505
- if (Array.isArray(dataItems)) {
506
- setDropdownItems(dataItems);
507
- } else {
508
- console.error('transformResponse return data is not array');
509
- }
510
- }
511
- }, function (error) {
512
- throw error;
513
- });
514
- }, []); // 过滤筛选项
515
-
516
- var onFilterItems = (0, _react.useCallback)(function (keyword) {
517
- setKeyword(keyword);
518
-
519
- if (typeof onSearch === 'function') {
520
- onSearch(keyword);
521
- return;
522
- }
523
-
524
- if (dataSource && searchable) {
525
- remoteSearch(keyword);
526
- }
527
-
528
- if (dataSource && searchable && keyword === '' && selectedItems.length > 0) {
529
- setDropdownItems(cacheSelectItem);
530
- }
531
- }, [dataSource, cacheSelectItem, keyword, selectedItems, searchable, onSearch, remoteSearch, autoload]); // 重置下标
532
-
533
- var resetFocusedIndex = function resetFocusedIndex() {
534
- var _dropdownItems = dropdownItems || [];
535
-
536
- var _focusedIndex = 0;
537
- var groupIndex = 0;
538
-
539
- if (isGroup) {
540
- _dropdownItems = dropdownItems[groupIndex][(0, _utils.transKeys)(fieldNames, 'children')];
541
- _focusedIndex = 0;
542
- }
543
-
544
- while (_dropdownItems[_focusedIndex] && _dropdownItems[_focusedIndex].disabled && _focusedIndex < _dropdownItems.length) {
545
- _focusedIndex++;
546
- }
547
-
548
- if (typeof value !== 'undefined' || typeof defaultValue !== 'undefined') {
549
- (function () {
550
- var _value = value || defaultValue;
551
-
552
- if (!(0, _lodash.isArray)(_value)) {
553
- _value = [_value];
554
- }
555
-
556
- _focusedIndex = 0;
557
-
558
- if (isGroup) {
559
- var _isValid = false;
560
-
561
- while (groupIndex < dropdownItems.length && !_isValid) {
562
- _dropdownItems = dropdownItems[groupIndex][(0, _utils.transKeys)(fieldNames, 'children')];
563
- _isValid = _dropdownItems && _dropdownItems.some(function (item, index) {
564
- if (type === 'single') {
565
- return item[(0, _utils.transKeys)(fieldNames, 'id')] === _value[0] && (_focusedIndex = index);
566
- } else {
567
- return _value.includes(item[(0, _utils.transKeys)(fieldNames, 'id')]) && (_focusedIndex = index);
568
- }
569
- });
570
- !_isValid && groupIndex++;
571
- }
572
- } else {
573
- var _isValid2 = false;
574
-
575
- _dropdownItems.forEach(function (item, index) {
576
- if (!_isValid2) {
577
- if (type === 'single') {
578
- item[(0, _utils.transKeys)(fieldNames, 'id')] === _value && (_focusedIndex = index);
579
- } else {
580
- if (_value.includes(item[(0, _utils.transKeys)(fieldNames, 'id')])) {
581
- _focusedIndex = index;
582
- _isValid2 = true;
583
- }
584
- }
585
- }
586
- });
587
- }
588
- })();
589
- }
590
-
591
- setFocusedIndex(isGroup ? groupIndex + '-' + _focusedIndex : _focusedIndex);
592
- }; // 全部删除
593
-
594
-
595
- var deleteAllItems = function deleteAllItems() {
596
- onChange([], type === 'multiple' ? selectedItems : selectedItems[0], function () {
597
- onFilterItems('');
598
- resetFocusedIndex();
599
- });
600
- setCacheSelectItem([]);
601
- dataSource && searchable && setDropdownItems([]);
602
- }; // 防抖
603
-
604
-
605
- var debouncedFilterItems = _lodash["default"].debounce(onFilterItems, 300); // 全选
606
-
607
-
608
- var checkAll = function checkAll(e, filterItems, isCheck) {
609
- // 全选
610
- e && e.stopPropagation();
611
-
612
- if (!isCheck) {
613
- onChange([], [], function () {});
614
- return;
615
- }
616
-
617
- var _selectedItems = (0, _toConsumableArray2["default"])(selectedItems);
618
-
619
- var changedItems = [];
620
- filterItems.forEach(function (filterItem) {
621
- var filterItemOrGroupChilds = (0, _lodash.isArray)(filterItem.children) ? filterItem.children : [filterItem];
622
- filterItemOrGroupChilds.forEach(function (item) {
623
- if (!item[(0, _utils.transKeys)(fieldNames, 'disabled')] && matchFilter(item)) {
624
- if (!_selectedItems.some(function (selectItem) {
625
- var key = (0, _utils.transKeys)(fieldNames, 'id');
626
- return selectItem[key] === item[key];
627
- })) {
628
- _selectedItems.push(item);
629
-
630
- changedItems.push(item);
631
- }
632
- }
633
- });
634
- });
635
- onChange(_selectedItems, changedItems, function () {});
636
- }; // input点击事件
637
-
638
-
639
- var handleInputClick = function handleInputClick() {
640
- if (dropdownShow) {
641
- hideDropdown();
642
- return;
643
- }
644
-
645
- if (disabled) {
646
- return;
647
- }
648
-
649
- !dropdownShow && setDropdownShow(true);
650
- };
651
-
652
- var placeholder = localeDatasProps('placeholder');
653
- var emptyContent = localeDatasProps('emptyContent');
654
- var searchPlaceholder = localeDatasProps('searchPlaceholder');
655
- var extraClass = {
656
- 'is-multiple': type === 'multiple',
657
- 'is-single': type === 'single'
658
- };
659
- var selectInputWidth = selectInputContainer.current ? selectInputContainer.current.getBoundingClientRect().width : null;
660
- return /*#__PURE__*/_react["default"].createElement("div", {
661
- className: (0, _classnames["default"])('hi-select', className, extraClass),
662
- style: style,
663
- tabIndex: "0",
664
- onKeyDown: handleKeyDown,
665
- ref: SelectWrapper
666
- }, /*#__PURE__*/_react["default"].createElement("div", {
667
- className: "hi-select__input-container",
668
- ref: selectInputContainer
669
- }, /*#__PURE__*/_react["default"].createElement(_SelectInput["default"], {
670
- theme: theme,
671
- mode: type,
672
- selectInputWidth: selectInputWidth,
673
- disabled: disabled,
674
- searchable: searchable // 要删除掉
675
- ,
676
- clearable: clearable,
677
- dropdownShow: dropdownShow,
678
- placeholder: placeholder,
679
- selectedItems: selectedItems || [],
680
- multipleMode: multipleWrap,
681
- cacheSelectItem: cacheSelectItem,
682
- onFocus: onFocus,
683
- onClickOption: onClickOption,
684
- onClear: deleteAllItems,
685
- fieldNames: fieldNames,
686
- isFocus: isFocus,
687
- value: value,
688
- bordered: bordered,
689
- onClick: function onClick() {
690
- handleInputClick();
691
- }
692
- })), children, /*#__PURE__*/_react["default"].createElement(_popper["default"], {
693
- show: dropdownShow,
694
- attachEle: selectInputContainer.current,
695
- zIndex: 1050,
696
- topGap: 5,
697
- leftGap: 0,
698
- overlayClassName: overlayClassName,
699
- overlayClickOutSideEventName: overlayClickOutSideEventName,
700
- setOverlayContainer: setOverlayContainer // 是否防止溢出功能 暂时不开放
701
- ,
702
- preventOverflow: preventOverflow // 自定义options的方向
703
- ,
704
- placement: placement || 'top-bottom-start',
705
- className: "hi-select__popper",
706
- onKeyDown: handleKeyDown,
707
- tabIndex: "-1",
708
- width: optionWidth,
709
- onClickOutside: function onClickOutside() {
710
- hideDropdown();
711
- }
712
- }, /*#__PURE__*/_react["default"].createElement(_SelectDropdown["default"], {
713
- emptyContent: emptyContent,
714
- renderExtraFooter: renderExtraFooter,
715
- fieldNames: fieldNames,
716
- localeMap: localeDatas.select || {},
717
- mode: type,
718
- onOverlayScroll: onOverlayScroll,
719
- targetByKeyDown: targetByKeyDown,
720
- searchPlaceholder: searchPlaceholder,
721
- theme: theme,
722
- onFocus: onFocus,
723
- isByRemoteSearch: dataSource,
724
- isByCustomSearch: onSearch,
725
- onSearch: debouncedFilterItems,
726
- searchable: searchable,
727
- showCheckAll: showCheckAll,
728
- checkAll: checkAll,
729
- loading: loading,
730
- autoloadFlag: autoloadFlag,
731
- focusedIndex: focusedIndex,
732
- setFocusedIndex: setFocusedIndex,
733
- showJustSelected: showJustSelected,
734
- filterOption: filterOption,
735
- matchFilter: matchFilter,
736
- isGroup: isGroup,
737
- show: dropdownShow,
738
- optionWidth: optionWidth,
739
- selectInputWidth: selectInputWidth,
740
- dropdownItems: dropdownItems,
741
- selectedItems: selectedItems,
742
- dropdownRender: render,
743
- onClickOption: onClickOption
744
- })));
745
- };
746
-
747
- InternalSelect.defaultProps = {
748
- data: [],
749
- type: 'single',
750
- fieldNames: {
751
- title: 'title',
752
- id: 'id',
753
- disabled: 'disabled',
754
- children: 'children'
755
- },
756
- multipleWrap: 'nowrap',
757
- disabled: false,
758
- clearable: true,
759
- autoload: false,
760
- showCheckAll: false,
761
- showJustSelected: false,
762
- open: true,
763
- onClick: function onClick() {},
764
- onBlur: function onBlur() {},
765
- onFocus: function onFocus() {}
766
- };
767
- var Select = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
768
- return /*#__PURE__*/_react["default"].createElement(InternalSelect, (0, _extends2["default"])({}, props, {
769
- innerRef: ref
770
- }));
771
- });
772
-
773
- var _default = (0, _context["default"])(Select);
774
-
775
- exports["default"] = _default;