@douyinfe/semi-ui 2.19.1-alpha.1 → 2.19.2-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (846) hide show
  1. package/dist/css/semi.css +88 -148
  2. package/dist/css/semi.min.css +1 -1
  3. package/dist/umd/semi-ui.js +327 -128
  4. package/dist/umd/semi-ui.js.map +1 -1
  5. package/dist/umd/semi-ui.min.js +1 -1
  6. package/dist/umd/semi-ui.min.js.map +1 -1
  7. package/lib/cjs/_base/base.css +1 -0
  8. package/lib/cjs/anchor/index.d.ts +4 -0
  9. package/lib/cjs/anchor/index.js +36 -1
  10. package/lib/cjs/anchor/link.d.ts +2 -0
  11. package/lib/cjs/anchor/link.js +8 -2
  12. package/lib/cjs/avatar/index.d.ts +1 -0
  13. package/lib/cjs/avatar/index.js +2 -1
  14. package/lib/cjs/button/Button.d.ts +1 -1
  15. package/lib/cjs/button/buttonGroup.d.ts +1 -0
  16. package/lib/cjs/button/buttonGroup.js +42 -3
  17. package/lib/cjs/button/index.d.ts +2 -1
  18. package/lib/cjs/button/index.js +1 -0
  19. package/lib/cjs/checkbox/checkbox.d.ts +1 -0
  20. package/lib/cjs/checkbox/checkbox.js +19 -10
  21. package/lib/cjs/checkbox/checkboxGroup.js +2 -1
  22. package/lib/cjs/dropdown/index.js +5 -1
  23. package/lib/cjs/form/baseForm.d.ts +1 -1
  24. package/lib/cjs/form/field.d.ts +1 -1
  25. package/lib/cjs/popconfirm/index.d.ts +4 -2
  26. package/lib/cjs/popconfirm/index.js +49 -31
  27. package/lib/cjs/radio/radio.d.ts +1 -0
  28. package/lib/cjs/radio/radio.js +22 -13
  29. package/lib/cjs/radio/radioGroup.js +1 -1
  30. package/lib/cjs/tag/group.js +14 -12
  31. package/lib/cjs/tag/index.d.ts +1 -1
  32. package/lib/cjs/tag/index.js +1 -1
  33. package/lib/cjs/tooltip/index.js +2 -2
  34. package/lib/cjs/typography/base.d.ts +1 -1
  35. package/lib/cjs/typography/paragraph.d.ts +1 -1
  36. package/lib/cjs/typography/text.d.ts +1 -1
  37. package/lib/cjs/typography/title.d.ts +2 -2
  38. package/lib/es/_base/base.css +1 -0
  39. package/lib/es/anchor/index.d.ts +4 -0
  40. package/lib/es/anchor/index.js +35 -1
  41. package/lib/es/anchor/link.d.ts +2 -0
  42. package/lib/es/anchor/link.js +8 -2
  43. package/lib/es/avatar/index.d.ts +1 -0
  44. package/lib/es/avatar/index.js +2 -1
  45. package/lib/es/button/Button.d.ts +1 -1
  46. package/lib/es/button/buttonGroup.d.ts +1 -0
  47. package/lib/es/button/buttonGroup.js +41 -1
  48. package/lib/es/button/index.d.ts +2 -1
  49. package/lib/es/button/index.js +1 -0
  50. package/lib/es/checkbox/checkbox.d.ts +1 -0
  51. package/lib/es/checkbox/checkbox.js +19 -10
  52. package/lib/es/checkbox/checkboxGroup.js +2 -1
  53. package/lib/es/dropdown/index.js +7 -1
  54. package/lib/es/form/baseForm.d.ts +1 -1
  55. package/lib/es/form/field.d.ts +1 -1
  56. package/lib/es/popconfirm/index.d.ts +4 -2
  57. package/lib/es/popconfirm/index.js +49 -31
  58. package/lib/es/radio/radio.d.ts +1 -0
  59. package/lib/es/radio/radio.js +22 -13
  60. package/lib/es/radio/radioGroup.js +1 -1
  61. package/lib/es/tag/group.js +14 -12
  62. package/lib/es/tag/index.d.ts +1 -1
  63. package/lib/es/tag/index.js +1 -1
  64. package/lib/es/tooltip/index.js +2 -2
  65. package/lib/es/typography/base.d.ts +1 -1
  66. package/lib/es/typography/paragraph.d.ts +1 -1
  67. package/lib/es/typography/text.d.ts +1 -1
  68. package/lib/es/typography/title.d.ts +2 -2
  69. package/package.json +12 -8
  70. package/_base/_story/a11y.jsx +0 -1302
  71. package/_base/_story/a11y.scss +0 -48
  72. package/_base/_story/index.scss +0 -11
  73. package/_base/_story/index.stories.js +0 -116
  74. package/_base/_story/index.stories.tsx +0 -55
  75. package/_base/base.scss +0 -3
  76. package/_base/base.ts +0 -36
  77. package/_base/baseComponent.tsx +0 -79
  78. package/_base/reactUtils.ts +0 -43
  79. package/_portal/_story/portal.stories.js +0 -13
  80. package/_portal/index.tsx +0 -113
  81. package/_test_/utils/dom/index.js +0 -9
  82. package/_test_/utils/function/index.js +0 -1
  83. package/_test_/utils/function/sleep.js +0 -9
  84. package/_test_/utils/index.js +0 -4
  85. package/_test_/utils/table/index.js +0 -310
  86. package/_test_/utils/tooltip/index.js +0 -39
  87. package/_utils/hooks/usePrevFocus.ts +0 -17
  88. package/_utils/index.ts +0 -198
  89. package/anchor/__test__/anchor.test.js +0 -60
  90. package/anchor/_story/anchor.stories.js +0 -288
  91. package/anchor/_story/anchor.stories.tsx +0 -165
  92. package/anchor/anchor-context.ts +0 -13
  93. package/anchor/index.tsx +0 -300
  94. package/anchor/link.tsx +0 -161
  95. package/autoComplete/__test__/autoComplete.test.js +0 -456
  96. package/autoComplete/_story/CustomTrigger/index.jsx +0 -106
  97. package/autoComplete/_story/autoComplete.stories.js +0 -348
  98. package/autoComplete/_story/autoComplete.stories.tsx +0 -87
  99. package/autoComplete/index.tsx +0 -504
  100. package/autoComplete/option.tsx +0 -164
  101. package/avatar/__test__/avatar.test.js +0 -363
  102. package/avatar/__test__/avatarGroup.test.js +0 -193
  103. package/avatar/_story/Demo.tsx +0 -22
  104. package/avatar/_story/avatar.stories.js +0 -248
  105. package/avatar/_story/avatar.stories.tsx +0 -7
  106. package/avatar/avatarGroup.tsx +0 -93
  107. package/avatar/index.tsx +0 -236
  108. package/avatar/interface.ts +0 -51
  109. package/backtop/__test__/backtop.test.js +0 -49
  110. package/backtop/_story/backtop.stories.js +0 -37
  111. package/backtop/_story/backtop.stories.tsx +0 -30
  112. package/backtop/index.tsx +0 -117
  113. package/badge/__test__/badge.test.js +0 -123
  114. package/badge/_story/Demo.tsx +0 -16
  115. package/badge/_story/badge.stories.js +0 -123
  116. package/badge/_story/badge.stories.tsx +0 -8
  117. package/badge/index.tsx +0 -91
  118. package/banner/__test__/banner.test.js +0 -58
  119. package/banner/_story/Demo.tsx +0 -14
  120. package/banner/_story/banner.stories.js +0 -106
  121. package/banner/_story/banner.stories.tsx +0 -8
  122. package/banner/index.tsx +0 -174
  123. package/breadcrumb/__test__/breadcrumb.test.js +0 -219
  124. package/breadcrumb/_story/Demo.tsx +0 -24
  125. package/breadcrumb/_story/breadcrumb.stories.js +0 -331
  126. package/breadcrumb/_story/breadcrumb.stories.tsx +0 -45
  127. package/breadcrumb/bread-context.tsx +0 -13
  128. package/breadcrumb/index.tsx +0 -302
  129. package/breadcrumb/item.tsx +0 -215
  130. package/button/Button.tsx +0 -133
  131. package/button/__test__/button.test.js +0 -71
  132. package/button/_story/Demo.tsx +0 -51
  133. package/button/_story/button.stories.js +0 -293
  134. package/button/_story/button.stories.tsx +0 -10
  135. package/button/buttonGroup.tsx +0 -56
  136. package/button/index.tsx +0 -38
  137. package/button/splitButtonGroup.tsx +0 -30
  138. package/calendar/__test__/calendar.test.js +0 -182
  139. package/calendar/_story/Demo.tsx +0 -20
  140. package/calendar/_story/calendar.stories.js +0 -560
  141. package/calendar/_story/calendar.stories.tsx +0 -5
  142. package/calendar/dayCalendar.tsx +0 -191
  143. package/calendar/dayCol.tsx +0 -156
  144. package/calendar/index.tsx +0 -63
  145. package/calendar/interface.ts +0 -43
  146. package/calendar/monthCalendar.tsx +0 -400
  147. package/calendar/rangeCalendar.tsx +0 -270
  148. package/calendar/timeCol.tsx +0 -64
  149. package/calendar/weekCalendar.tsx +0 -271
  150. package/card/__test__/card.test.js +0 -202
  151. package/card/_story/card.stories.js +0 -562
  152. package/card/_story/card.stories.tsx +0 -103
  153. package/card/cardGroup.tsx +0 -64
  154. package/card/index.tsx +0 -249
  155. package/card/meta.tsx +0 -73
  156. package/carousel/CarouselArrow.tsx +0 -64
  157. package/carousel/CarouselIndicator.tsx +0 -83
  158. package/carousel/__test__/carousel.test.js +0 -159
  159. package/carousel/_story/carousel.stories.js +0 -486
  160. package/carousel/index.tsx +0 -293
  161. package/carousel/interface.ts +0 -63
  162. package/cascader/__test__/cascader.test.js +0 -1356
  163. package/cascader/_story/CustomTrigger/index.jsx +0 -63
  164. package/cascader/_story/Demo.tsx +0 -63
  165. package/cascader/_story/cascader.stories.js +0 -1585
  166. package/cascader/_story/cascader.stories.tsx +0 -6
  167. package/cascader/index.tsx +0 -999
  168. package/cascader/item.tsx +0 -328
  169. package/checkbox/__test__/checkbox.test.js +0 -85
  170. package/checkbox/__test__/checkboxGroup.test.js +0 -180
  171. package/checkbox/_story/Demo.tsx +0 -27
  172. package/checkbox/_story/checkbox.stories.js +0 -1022
  173. package/checkbox/_story/checkbox.stories.tsx +0 -8
  174. package/checkbox/checkbox.tsx +0 -290
  175. package/checkbox/checkboxGroup.tsx +0 -197
  176. package/checkbox/checkboxInner.tsx +0 -129
  177. package/checkbox/context.ts +0 -14
  178. package/checkbox/index.tsx +0 -19
  179. package/collapse/__test__/collapse.test.js +0 -168
  180. package/collapse/_story/Demo.tsx +0 -28
  181. package/collapse/_story/accordion.stories.js +0 -143
  182. package/collapse/_story/accordion.stories.tsx +0 -8
  183. package/collapse/collapse-context.tsx +0 -18
  184. package/collapse/index.tsx +0 -120
  185. package/collapse/item.tsx +0 -163
  186. package/collapsible/_story/Demo.tsx +0 -41
  187. package/collapsible/_story/Nested/index.js +0 -101
  188. package/collapsible/_story/collapsible.stories.js +0 -588
  189. package/collapsible/_story/collapsible.stories.tsx +0 -7
  190. package/collapsible/index.tsx +0 -165
  191. package/configProvider/_story/ChangeTimeZone/index.js +0 -183
  192. package/configProvider/_story/GetPopupContainer/index.js +0 -194
  193. package/configProvider/_story/RTLDirection/RTLForm.jsx +0 -313
  194. package/configProvider/_story/RTLDirection/RTLTable.jsx +0 -94
  195. package/configProvider/_story/RTLDirection/RTLWrapper.tsx +0 -27
  196. package/configProvider/_story/configProvider.stories.js +0 -30
  197. package/configProvider/_story/configProvider.stories.tsx +0 -27
  198. package/configProvider/context.tsx +0 -14
  199. package/configProvider/index.tsx +0 -48
  200. package/datePicker/__test__/datePicker.test.js +0 -1065
  201. package/datePicker/_story/AllTypes/index.js +0 -19
  202. package/datePicker/_story/AutoSwitchDate/index.jsx +0 -14
  203. package/datePicker/_story/Autofocus/index.js +0 -11
  204. package/datePicker/_story/BetterRangePicker/index.jsx +0 -172
  205. package/datePicker/_story/Callbacks/index.jsx +0 -24
  206. package/datePicker/_story/ControlledDemo/index.js +0 -149
  207. package/datePicker/_story/CustomTrigger/index.jsx +0 -36
  208. package/datePicker/_story/Cycled/index.jsx +0 -11
  209. package/datePicker/_story/DateOffset/index.js +0 -83
  210. package/datePicker/_story/DatePickerSlot/index.jsx +0 -83
  211. package/datePicker/_story/DatePickerSlot/index.scss +0 -7
  212. package/datePicker/_story/DatePickerTimeZone/index.jsx +0 -27
  213. package/datePicker/_story/Density/index.jsx +0 -69
  214. package/datePicker/_story/DisabledDate/index.js +0 -189
  215. package/datePicker/_story/ExceptionDemo/index.js +0 -20
  216. package/datePicker/_story/Multiple/index.jsx +0 -24
  217. package/datePicker/_story/NeedConfirm/index.jsx +0 -94
  218. package/datePicker/_story/OnChangeWithDateFirst/index.jsx +0 -37
  219. package/datePicker/_story/OverPopover/index.jsx +0 -22
  220. package/datePicker/_story/RenderDate/index.js +0 -31
  221. package/datePicker/_story/RenderFullDate/index.js +0 -78
  222. package/datePicker/_story/RenderFullDate/index.scss +0 -23
  223. package/datePicker/_story/SyncSwitchMonth/index.js +0 -45
  224. package/datePicker/_story/TimePickerOpts/index.jsx +0 -16
  225. package/datePicker/_story/datePicker.stories.js +0 -1016
  226. package/datePicker/_story/datePicker.stories.tsx +0 -230
  227. package/datePicker/_story/v2/AutoFillTime.jsx +0 -37
  228. package/datePicker/_story/v2/FixDefaultPickerValue.jsx +0 -31
  229. package/datePicker/_story/v2/FixInputRangeFocus.jsx +0 -25
  230. package/datePicker/_story/v2/FixTriggerRender.tsx +0 -36
  231. package/datePicker/_story/v2/InputFormat.jsx +0 -29
  232. package/datePicker/_story/v2/InputFormatConfirm.jsx +0 -44
  233. package/datePicker/_story/v2/InputFormatDisabled.jsx +0 -27
  234. package/datePicker/_story/v2/InsetInput.jsx +0 -104
  235. package/datePicker/_story/v2/InsetInputE2E.jsx +0 -69
  236. package/datePicker/_story/v2/PanelOpen.jsx +0 -39
  237. package/datePicker/_story/v2/YearButton.jsx +0 -17
  238. package/datePicker/_story/v2/index.js +0 -11
  239. package/datePicker/dateInput.tsx +0 -455
  240. package/datePicker/datePicker.tsx +0 -796
  241. package/datePicker/footer.tsx +0 -29
  242. package/datePicker/index.tsx +0 -86
  243. package/datePicker/insetInput.tsx +0 -76
  244. package/datePicker/month.tsx +0 -395
  245. package/datePicker/monthsGrid.tsx +0 -649
  246. package/datePicker/navigation.tsx +0 -150
  247. package/datePicker/quickControl.tsx +0 -101
  248. package/datePicker/yearAndMonth.tsx +0 -254
  249. package/descriptions/__test__/descriptions.test.js +0 -193
  250. package/descriptions/_story/Demo.tsx +0 -36
  251. package/descriptions/_story/descriptions.stories.js +0 -145
  252. package/descriptions/_story/descriptions.stories.tsx +0 -6
  253. package/descriptions/descriptions-context.ts +0 -11
  254. package/descriptions/index.tsx +0 -82
  255. package/descriptions/item.tsx +0 -66
  256. package/divider/__test__/divider.test.js +0 -72
  257. package/divider/_story/Demo.tsx +0 -16
  258. package/divider/_story/divider.stories.js +0 -41
  259. package/divider/_story/divider.stories.tsx +0 -8
  260. package/divider/index.tsx +0 -76
  261. package/dropdown/__test__/dropdown.test.js +0 -308
  262. package/dropdown/_story/AutoClose/index.js +0 -120
  263. package/dropdown/_story/DisabledItem/index.js +0 -31
  264. package/dropdown/_story/InHoverElements/index.js +0 -25
  265. package/dropdown/_story/InHoverElements/index.scss +0 -16
  266. package/dropdown/_story/MultiDropdown/index.js +0 -34
  267. package/dropdown/_story/WrapAvatar/index.jsx +0 -10
  268. package/dropdown/_story/dropdown.stories.js +0 -331
  269. package/dropdown/_story/dropdown.stories.tsx +0 -28
  270. package/dropdown/_story/inTable/index.js +0 -194
  271. package/dropdown/context.ts +0 -13
  272. package/dropdown/dropdownDivider.tsx +0 -23
  273. package/dropdown/dropdownItem.tsx +0 -106
  274. package/dropdown/dropdownMenu.tsx +0 -51
  275. package/dropdown/dropdownTitle.tsx +0 -37
  276. package/dropdown/index.tsx +0 -257
  277. package/empty/__test__/empty.test.js +0 -63
  278. package/empty/_story/Demo.tsx +0 -10
  279. package/empty/_story/empty.stories.js +0 -53
  280. package/empty/_story/empty.stories.tsx +0 -8
  281. package/empty/index.tsx +0 -135
  282. package/form/__test__/arrayField.test.js +0 -204
  283. package/form/__test__/baseForm/baseForm.test.js +0 -628
  284. package/form/__test__/baseForm/onChange.test.js +0 -144
  285. package/form/__test__/errorMessage.test.js +0 -59
  286. package/form/__test__/field.test.js +0 -426
  287. package/form/__test__/formApi.test.js +0 -604
  288. package/form/__test__/group.test.js +0 -108
  289. package/form/__test__/hoc.test.js +0 -24
  290. package/form/__test__/label.test.js +0 -69
  291. package/form/__test__/section.test.js +0 -49
  292. package/form/__test__/slot.test.js +0 -108
  293. package/form/_story/Debug/bugDemo.jsx +0 -219
  294. package/form/_story/Debug/childDidMount.jsx +0 -30
  295. package/form/_story/Debug/myRadio.jsx +0 -32
  296. package/form/_story/DynamicField/arrayFieldDemo.jsx +0 -320
  297. package/form/_story/DynamicField/nestArrayField.jsx +0 -159
  298. package/form/_story/FieldProps/bigNumberFieldPath.jsx +0 -73
  299. package/form/_story/FieldProps/convert.jsx +0 -100
  300. package/form/_story/FieldProps/fieldRef.jsx +0 -74
  301. package/form/_story/FieldProps/helpAndExtra.jsx +0 -136
  302. package/form/_story/FieldProps/labelOptional.jsx +0 -30
  303. package/form/_story/FieldProps/pureField.jsx +0 -0
  304. package/form/_story/FieldProps/rulesUpdateDemo.js +0 -116
  305. package/form/_story/FormApi/arrayDemo.jsx +0 -94
  306. package/form/_story/FormApi/formApiDemo.jsx +0 -83
  307. package/form/_story/FormApi/resetDemo.jsx +0 -41
  308. package/form/_story/FormApi/setValuesDemo.jsx +0 -133
  309. package/form/_story/FormSubmit/index.tsx +0 -45
  310. package/form/_story/HOC/displayName.jsx +0 -19
  311. package/form/_story/HOC/withFieldDemo.jsx +0 -216
  312. package/form/_story/Hook/hookDemo.jsx +0 -195
  313. package/form/_story/Layout/layoutDemo.jsx +0 -348
  314. package/form/_story/Layout/modalFormDemo.jsx +0 -94
  315. package/form/_story/Layout/slotDemo.jsx +0 -126
  316. package/form/_story/Performance/performanceDemo.jsx +0 -440
  317. package/form/_story/Performance/selectUseReactNode.jsx +0 -110
  318. package/form/_story/Reference/inform.test.js +0 -110
  319. package/form/_story/Validate/validateDemo.jsx +0 -421
  320. package/form/_story/demo.jsx +0 -433
  321. package/form/_story/form.stories.js +0 -440
  322. package/form/_story/form.stories.tsx +0 -191
  323. package/form/arrayField.tsx +0 -200
  324. package/form/baseForm.tsx +0 -300
  325. package/form/context.tsx +0 -18
  326. package/form/errorMessage.tsx +0 -91
  327. package/form/field.tsx +0 -79
  328. package/form/group.tsx +0 -93
  329. package/form/hoc/withField.tsx +0 -604
  330. package/form/hoc/withFormApi.tsx +0 -11
  331. package/form/hoc/withFormState.tsx +0 -11
  332. package/form/hooks/index.ts +0 -12
  333. package/form/hooks/useArrayFieldState.tsx +0 -9
  334. package/form/hooks/useFieldApi.tsx +0 -21
  335. package/form/hooks/useFieldState.tsx +0 -18
  336. package/form/hooks/useFormApi.tsx +0 -7
  337. package/form/hooks/useFormState.tsx +0 -9
  338. package/form/hooks/useFormUpdater.tsx +0 -6
  339. package/form/hooks/useStateWithGetter.ts +0 -13
  340. package/form/index.tsx +0 -40
  341. package/form/interface.ts +0 -134
  342. package/form/label.tsx +0 -96
  343. package/form/section.tsx +0 -38
  344. package/form/slot.tsx +0 -167
  345. package/getBabelConfig.js +0 -25
  346. package/grid/__test__/calculateGutter.test.js +0 -50
  347. package/grid/_story/demo.scss +0 -23
  348. package/grid/_story/grid.stories.js +0 -290
  349. package/grid/_story/grid.stories.tsx +0 -15
  350. package/grid/col.tsx +0 -135
  351. package/grid/index.tsx +0 -7
  352. package/grid/row.tsx +0 -178
  353. package/gulpfile.js +0 -119
  354. package/iconButton/_story/iconButton.stories.tsx +0 -16
  355. package/iconButton/index.tsx +0 -134
  356. package/icons/_story/Others/add-template-icon.jsx +0 -0
  357. package/icons/_story/Others/add-template-icon.svg +0 -10
  358. package/icons/_story/Others/hangup.svg +0 -3
  359. package/icons/_story/Others/index.js +0 -24
  360. package/icons/_story/Others/xianglin.svg +0 -3
  361. package/icons/_story/icon.stories.js +0 -63
  362. package/icons/_story/icon.stories.tsx +0 -46
  363. package/icons/index.tsx +0 -5
  364. package/index.ts +0 -97
  365. package/input/__test__/input.test.js +0 -285
  366. package/input/__test__/textArea.test.js +0 -172
  367. package/input/_story/Demo.tsx +0 -33
  368. package/input/_story/TextareaDemo.tsx +0 -27
  369. package/input/_story/input.scss +0 -0
  370. package/input/_story/input.stories.js +0 -961
  371. package/input/_story/input.stories.tsx +0 -11
  372. package/input/index.tsx +0 -515
  373. package/input/inputGroup.tsx +0 -127
  374. package/input/textarea.tsx +0 -339
  375. package/inputNumber/__test__/inputNumber.test.js +0 -434
  376. package/inputNumber/_story/input.stories.tsx +0 -17
  377. package/inputNumber/_story/inputNumber.scss +0 -10
  378. package/inputNumber/_story/inputNumber.stories.js +0 -767
  379. package/inputNumber/index.tsx +0 -518
  380. package/layout/Sider.tsx +0 -122
  381. package/layout/__test__/layout.test.js +0 -51
  382. package/layout/_story/layout.stories.js +0 -305
  383. package/layout/_story/layout.stories.tsx +0 -13
  384. package/layout/index.tsx +0 -129
  385. package/layout/layout-context.ts +0 -18
  386. package/list/__test__/list.test.js +0 -264
  387. package/list/_story/list.stories.js +0 -920
  388. package/list/_story/list.stories.tsx +0 -26
  389. package/list/index.tsx +0 -186
  390. package/list/item.tsx +0 -113
  391. package/list/list-context.ts +0 -15
  392. package/locale/README.md +0 -53
  393. package/locale/_story/locale.stories.js +0 -221
  394. package/locale/_story/locale.stories.tsx +0 -57
  395. package/locale/context.tsx +0 -5
  396. package/locale/interface.ts +0 -155
  397. package/locale/localeConsumer.tsx +0 -58
  398. package/locale/localeProvider.tsx +0 -35
  399. package/locale/source/ar.ts +0 -159
  400. package/locale/source/de.ts +0 -159
  401. package/locale/source/en_GB.ts +0 -159
  402. package/locale/source/en_US.ts +0 -159
  403. package/locale/source/es.ts +0 -163
  404. package/locale/source/fr.ts +0 -159
  405. package/locale/source/id_ID.ts +0 -160
  406. package/locale/source/it.ts +0 -159
  407. package/locale/source/ja_JP.ts +0 -160
  408. package/locale/source/ko_KR.ts +0 -160
  409. package/locale/source/ms_MY.ts +0 -159
  410. package/locale/source/pt_BR.ts +0 -167
  411. package/locale/source/ru_RU.ts +0 -162
  412. package/locale/source/th_TH.ts +0 -163
  413. package/locale/source/tr_TR.ts +0 -159
  414. package/locale/source/vi_VN.ts +0 -162
  415. package/locale/source/zh_CN.ts +0 -160
  416. package/locale/source/zh_TW.ts +0 -160
  417. package/modal/ConfirmModal.tsx +0 -89
  418. package/modal/Modal.tsx +0 -417
  419. package/modal/ModalContent.tsx +0 -337
  420. package/modal/__test__/confirm.test.js +0 -203
  421. package/modal/__test__/modal.test.js +0 -324
  422. package/modal/_story/CollapsibleInModal/index.jsx +0 -100
  423. package/modal/_story/DynamicContext/context.js +0 -8
  424. package/modal/_story/DynamicContext/index.jsx +0 -30
  425. package/modal/_story/__snapshots__/modal.stories.tsx.snap +0 -203
  426. package/modal/_story/modal.stories.js +0 -343
  427. package/modal/_story/modal.stories.tsx +0 -41
  428. package/modal/confirm.tsx +0 -120
  429. package/modal/index.tsx +0 -13
  430. package/modal/useModal/HookModal.tsx +0 -63
  431. package/modal/useModal/index.tsx +0 -80
  432. package/motions/Rotate.tsx +0 -64
  433. package/navigation/CollapseButton.tsx +0 -47
  434. package/navigation/Footer.tsx +0 -74
  435. package/navigation/Header.tsx +0 -82
  436. package/navigation/Item.tsx +0 -293
  437. package/navigation/OpenIconTransition.tsx +0 -58
  438. package/navigation/README.md +0 -10
  439. package/navigation/SubNav.tsx +0 -389
  440. package/navigation/SubNavTransition.tsx +0 -58
  441. package/navigation/__test__/navigation.test.js +0 -274
  442. package/navigation/_story/AutoOpen/index.js +0 -69
  443. package/navigation/_story/ControlledSelectedKeys/index.js +0 -78
  444. package/navigation/_story/DisabledNav/index.js +0 -46
  445. package/navigation/_story/ItemsChange/index.js +0 -41
  446. package/navigation/_story/LinkNav/index.jsx +0 -90
  447. package/navigation/_story/MountUnmount/index.js +0 -57
  448. package/navigation/_story/WithChildren/index.js +0 -119
  449. package/navigation/_story/WithRouter/index.js +0 -111
  450. package/navigation/_story/navigation.stories.js +0 -330
  451. package/navigation/_story/navigation.stories.tsx +0 -101
  452. package/navigation/index.tsx +0 -427
  453. package/navigation/nav-context.ts +0 -30
  454. package/notification/NoticeTransition.tsx +0 -68
  455. package/notification/__test__/notification.test.js +0 -325
  456. package/notification/_story/Demo.tsx +0 -29
  457. package/notification/_story/notification.stories.js +0 -225
  458. package/notification/_story/notification.stories.tsx +0 -6
  459. package/notification/_story/useNotification/context.js +0 -3
  460. package/notification/_story/useNotification/index.jsx +0 -43
  461. package/notification/index.tsx +0 -267
  462. package/notification/notice.tsx +0 -204
  463. package/notification/useNotification/HookNotice.tsx +0 -36
  464. package/notification/useNotification/index.tsx +0 -94
  465. package/overflowList/__test__/overflowList.test.js +0 -31
  466. package/overflowList/_story/Demo.tsx +0 -36
  467. package/overflowList/_story/overflowList.stories.js +0 -400
  468. package/overflowList/_story/overflowList.stories.tsx +0 -7
  469. package/overflowList/index.tsx +0 -279
  470. package/overflowList/intersectionObserver.tsx +0 -94
  471. package/pagination/__test__/pagination.test.js +0 -255
  472. package/pagination/_story/pagination.stories.js +0 -159
  473. package/pagination/_story/pagination.stories.tsx +0 -11
  474. package/pagination/index.tsx +0 -476
  475. package/popconfirm/__test__/popconfirm.test.js +0 -131
  476. package/popconfirm/_story/DynamicDisable/index.jsx +0 -25
  477. package/popconfirm/_story/InTable/index.js +0 -75
  478. package/popconfirm/_story/ShowArrow/index.jsx +0 -141
  479. package/popconfirm/_story/TitlePopconfirm/index.js +0 -130
  480. package/popconfirm/_story/TypesConfirm/index.jsx +0 -121
  481. package/popconfirm/_story/popconfirm.stories.js +0 -170
  482. package/popconfirm/_story/popconfirm.stories.tsx +0 -20
  483. package/popconfirm/index.tsx +0 -249
  484. package/popover/Arrow.tsx +0 -66
  485. package/popover/__test__/popover.test.js +0 -52
  486. package/popover/_story/ArrowPointAtCenter/index.jsx +0 -138
  487. package/popover/_story/BtnClose/index.jsx +0 -80
  488. package/popover/_story/NestedPopover/index.js +0 -41
  489. package/popover/_story/PopRight/index.js +0 -25
  490. package/popover/_story/PopRight/index.scss +0 -25
  491. package/popover/_story/SelectInPopover/index.jsx +0 -38
  492. package/popover/_story/popover.stories.js +0 -684
  493. package/popover/_story/popover.stories.tsx +0 -53
  494. package/popover/index.tsx +0 -182
  495. package/progress/__test__/progress.test.js +0 -127
  496. package/progress/_story/progress.stories.js +0 -71
  497. package/progress/_story/progress.stories.tsx +0 -11
  498. package/progress/index.tsx +0 -283
  499. package/radio/__test__/radio.test.jsx +0 -91
  500. package/radio/__test__/radioGroup.test.jsx +0 -207
  501. package/radio/_story/Demo.tsx +0 -34
  502. package/radio/_story/radio.scss +0 -4
  503. package/radio/_story/radio.stories.js +0 -892
  504. package/radio/_story/radio.stories.tsx +0 -7
  505. package/radio/context.ts +0 -25
  506. package/radio/index.tsx +0 -12
  507. package/radio/radio.tsx +0 -320
  508. package/radio/radioGroup.tsx +0 -240
  509. package/radio/radioInner.tsx +0 -151
  510. package/rating/__test__/rating.test.js +0 -247
  511. package/rating/_story/rating.stories.js +0 -108
  512. package/rating/_story/rating.stories.tsx +0 -11
  513. package/rating/index.tsx +0 -345
  514. package/rating/item.tsx +0 -233
  515. package/resizeObserver/index.tsx +0 -115
  516. package/scripts/compileDist.js +0 -52
  517. package/scripts/compileLib.js +0 -13
  518. package/scripts/compileScss.js +0 -25
  519. package/scrollList/__test__/scrollList.test.js +0 -226
  520. package/scrollList/_story/ScrollList/index.js +0 -69
  521. package/scrollList/_story/SingleWheelList/index.js +0 -72
  522. package/scrollList/_story/WheelList/index.js +0 -119
  523. package/scrollList/_story/scrolllist.stories.js +0 -33
  524. package/scrollList/_story/scrolllist.stories.tsx +0 -131
  525. package/scrollList/index.tsx +0 -81
  526. package/scrollList/scrollItem.tsx +0 -540
  527. package/select/__test__/select.test.js +0 -1323
  528. package/select/_story/CustomTrigger/index.jsx +0 -21
  529. package/select/_story/select.scss +0 -51
  530. package/select/_story/select.stories.js +0 -2988
  531. package/select/_story/select.stories.tsx +0 -195
  532. package/select/index.tsx +0 -1239
  533. package/select/option.tsx +0 -166
  534. package/select/optionGroup.tsx +0 -42
  535. package/select/utils.tsx +0 -76
  536. package/select/virtualRow.tsx +0 -13
  537. package/sideSheet/SideSheetContent.tsx +0 -177
  538. package/sideSheet/SideSheetTransition.tsx +0 -104
  539. package/sideSheet/__test__/sideSheet.test.js +0 -319
  540. package/sideSheet/_story/sideSheet.stories.js +0 -379
  541. package/sideSheet/_story/sideSheet.stories.tsx +0 -48
  542. package/sideSheet/index.tsx +0 -270
  543. package/skeleton/__test__/skeleton.test.js +0 -32
  544. package/skeleton/_story/skeleton.stories.js +0 -82
  545. package/skeleton/_story/skeleton.stories.tsx +0 -61
  546. package/skeleton/index.tsx +0 -62
  547. package/skeleton/item.tsx +0 -82
  548. package/slider/__test__/__snapshots__/slider.test.js.snap +0 -5
  549. package/slider/__test__/slider.test.js +0 -164
  550. package/slider/_story/Demo.scss +0 -3
  551. package/slider/_story/Demo.tsx +0 -28
  552. package/slider/_story/slider.stories.js +0 -428
  553. package/slider/_story/slider.stories.tsx +0 -7
  554. package/slider/index.tsx +0 -635
  555. package/space/__test__/space.test.js +0 -99
  556. package/space/_story/space.stories.js +0 -254
  557. package/space/_story/space.stories.tsx +0 -26
  558. package/space/index.tsx +0 -95
  559. package/space/utils.ts +0 -24
  560. package/spin/__test__/spin.test.js +0 -46
  561. package/spin/_story/Demo.tsx +0 -10
  562. package/spin/_story/spin.stories.js +0 -92
  563. package/spin/_story/spin.stories.tsx +0 -6
  564. package/spin/icon.tsx +0 -55
  565. package/spin/index.tsx +0 -137
  566. package/steps/__test__/steps.test.js +0 -372
  567. package/steps/_story/steps.stories.js +0 -306
  568. package/steps/_story/steps.stories.tsx +0 -17
  569. package/steps/basicStep.tsx +0 -141
  570. package/steps/basicSteps.tsx +0 -111
  571. package/steps/context.ts +0 -7
  572. package/steps/fillStep.tsx +0 -128
  573. package/steps/fillSteps.tsx +0 -98
  574. package/steps/index.tsx +0 -69
  575. package/steps/navStep.tsx +0 -74
  576. package/steps/navSteps.tsx +0 -74
  577. package/steps/step.tsx +0 -37
  578. package/switch/__test__/switch.test.js +0 -128
  579. package/switch/_story/switch.stories.js +0 -161
  580. package/switch/_story/switch.stories.tsx +0 -124
  581. package/switch/index.tsx +0 -185
  582. package/table/Body/BaseRow.tsx +0 -400
  583. package/table/Body/ExpandedRow.tsx +0 -157
  584. package/table/Body/SectionRow.tsx +0 -202
  585. package/table/Body/index.tsx +0 -859
  586. package/table/ColGroup.tsx +0 -66
  587. package/table/Column.tsx +0 -17
  588. package/table/ColumnFilter.tsx +0 -210
  589. package/table/ColumnSelection.tsx +0 -91
  590. package/table/ColumnShape.ts +0 -33
  591. package/table/ColumnSorter.tsx +0 -81
  592. package/table/CustomExpandIcon.tsx +0 -100
  593. package/table/HeadTable.tsx +0 -120
  594. package/table/ResizableHeaderCell.tsx +0 -44
  595. package/table/ResizableTable.tsx +0 -176
  596. package/table/Table.tsx +0 -1413
  597. package/table/TableCell.tsx +0 -367
  598. package/table/TableContextProvider.tsx +0 -53
  599. package/table/TableHeader.tsx +0 -183
  600. package/table/TableHeaderRow.tsx +0 -196
  601. package/table/TablePagination.tsx +0 -52
  602. package/table/__test__/table.test.js +0 -1952
  603. package/table/_story/BetterScrollbar.tsx +0 -115
  604. package/table/_story/ChildrenData/index.js +0 -251
  605. package/table/_story/ChildrenDataInnerSelected/index.js +0 -221
  606. package/table/_story/ChildrenDataSelected/index.js +0 -247
  607. package/table/_story/ControlledPagination/index.jsx +0 -232
  608. package/table/_story/ControlledSortOrder/index.jsx +0 -85
  609. package/table/_story/CustomComponents/index.js +0 -101
  610. package/table/_story/CustomExpandIcons/index.js +0 -97
  611. package/table/_story/CustomFilterDropdownItem/index.jsx +0 -98
  612. package/table/_story/DefaultSortOrder.tsx +0 -120
  613. package/table/_story/Demos/columnRender.jsx +0 -131
  614. package/table/_story/Demos/controlledPagination.jsx +0 -125
  615. package/table/_story/Demos/customFilter.jsx +0 -110
  616. package/table/_story/Demos/default.jsx +0 -82
  617. package/table/_story/Demos/dynamic.jsx +0 -594
  618. package/table/_story/Demos/expand.jsx +0 -114
  619. package/table/_story/Demos/filterAndSorter.jsx +0 -102
  620. package/table/_story/Demos/fixed.jsx +0 -117
  621. package/table/_story/Demos/fullRender.jsx +0 -131
  622. package/table/_story/Demos/group.jsx +0 -109
  623. package/table/_story/Demos/headerMerge.jsx +0 -121
  624. package/table/_story/Demos/headerMergeJSX.jsx +0 -83
  625. package/table/_story/Demos/infiniteScroll.jsx +0 -118
  626. package/table/_story/Demos/onRow.jsx +0 -114
  627. package/table/_story/Demos/pagination.jsx +0 -101
  628. package/table/_story/Demos/resizable copy.jsx +0 -102
  629. package/table/_story/Demos/resizable.jsx +0 -183
  630. package/table/_story/Demos/rowSelection.jsx +0 -130
  631. package/table/_story/Demos/sortTree.jsx +0 -218
  632. package/table/_story/Demos/sortable.jsx +0 -183
  633. package/table/_story/Demos/span.jsx +0 -155
  634. package/table/_story/Demos/tree.jsx +0 -109
  635. package/table/_story/Demos/treeSelect.jsx +0 -196
  636. package/table/_story/Demos/virtualized.jsx +0 -103
  637. package/table/_story/Demos/zebra.jsx +0 -124
  638. package/table/_story/DragableTable/index.jsx +0 -156
  639. package/table/_story/DragableTable/index.scss +0 -7
  640. package/table/_story/DynamicFilters/data.json +0 -105
  641. package/table/_story/DynamicFilters/index.js +0 -78
  642. package/table/_story/DynamicTable/index.jsx +0 -569
  643. package/table/_story/EventTable/index.jsx +0 -76
  644. package/table/_story/Expand/index.js +0 -85
  645. package/table/_story/ExpandAllGroupRows/index.jsx +0 -90
  646. package/table/_story/ExpandAllRows/index.jsx +0 -111
  647. package/table/_story/ExpandRowByClick.jsx +0 -77
  648. package/table/_story/FilterWithNewDataTable/index.jsx +0 -108
  649. package/table/_story/FixAllColumnsWithoutWidth.tsx +0 -52
  650. package/table/_story/FixRenderReturnProps.jsx +0 -105
  651. package/table/_story/FixedExpandedRows/index.js +0 -105
  652. package/table/_story/FixedGroups/index.js +0 -80
  653. package/table/_story/FixedTable/index.js +0 -92
  654. package/table/_story/FnTable/index.js +0 -103
  655. package/table/_story/FullRender/index.jsx +0 -135
  656. package/table/_story/GroupedCols/index.jsx +0 -83
  657. package/table/_story/GroupedColsFixed/index.jsx +0 -95
  658. package/table/_story/GroupedColsFixedJSX/index.jsx +0 -122
  659. package/table/_story/GroupedColsFixedVirtualized/index.jsx +0 -107
  660. package/table/_story/GroupedColsFixedVirtualizedGroups/index.jsx +0 -110
  661. package/table/_story/GroupedRows/index.js +0 -83
  662. package/table/_story/GroupedRowsFixed/index.js +0 -81
  663. package/table/_story/InSideSheet/index.jsx +0 -90
  664. package/table/_story/InfiniteScroll/index.js +0 -115
  665. package/table/_story/JSXAsyncData/index.jsx +0 -47
  666. package/table/_story/JSXColumnPropColumn.jsx +0 -57
  667. package/table/_story/JSXColumnsComplex.jsx +0 -174
  668. package/table/_story/JSXColumnsNest.tsx +0 -74
  669. package/table/_story/JSXColumnsSmiple.jsx +0 -53
  670. package/table/_story/JSXFixedTable/index.js +0 -224
  671. package/table/_story/JSXTitles/index.js +0 -55
  672. package/table/_story/LinkedScroll/index.jsx +0 -137
  673. package/table/_story/LinkedScroll/index.scss +0 -0
  674. package/table/_story/MassiveColumns/index.jsx +0 -109
  675. package/table/_story/MassiveColumns/index.scss +0 -9
  676. package/table/_story/ModalTable/index.jsx +0 -228
  677. package/table/_story/PagintaionTable/index.js +0 -123
  678. package/table/_story/Perf/Render/complex.jsx +0 -191
  679. package/table/_story/Perf/Render/context.jsx +0 -72
  680. package/table/_story/Perf/Render/controlledSelection.jsx +0 -103
  681. package/table/_story/Perf/Render/index.jsx +0 -95
  682. package/table/_story/Perf/Render/onRow.jsx +0 -112
  683. package/table/_story/Perf/Render/resizableSelection.jsx +0 -193
  684. package/table/_story/Perf/Virtualized/index.jsx +0 -71
  685. package/table/_story/Perf/index.js +0 -8
  686. package/table/_story/RTL/AlignScrollBar.jsx +0 -17
  687. package/table/_story/RTL/index.js +0 -2
  688. package/table/_story/RenderPagination/index.jsx +0 -161
  689. package/table/_story/ResizableColumns/index.jsx +0 -95
  690. package/table/_story/ResizableColumns/index.scss +0 -30
  691. package/table/_story/ResizableTable/index.jsx +0 -85
  692. package/table/_story/ScrollBar/index.jsx +0 -71
  693. package/table/_story/SelectedRows/index.js +0 -137
  694. package/table/_story/TableSpan/index.jsx +0 -117
  695. package/table/_story/TabsTable/index.jsx +0 -78
  696. package/table/_story/TestClone/index.js +0 -0
  697. package/table/_story/VirtualTableOnCell/index.jsx +0 -84
  698. package/table/_story/VirtualizedDynamicData/index.jsx +0 -111
  699. package/table/_story/VirtualizedGroupedRows/index.jsx +0 -135
  700. package/table/_story/VirtualizedNotFixed/index.js +0 -89
  701. package/table/_story/VritualizedDataSelected/index.js +0 -273
  702. package/table/_story/WarnColumnWithoutDataIndex.tsx +0 -71
  703. package/table/_story/WithSideSheet/index.js +0 -82
  704. package/table/_story/data/big.json +0 -8205
  705. package/table/_story/data/big2.json +0 -42271
  706. package/table/_story/table.stories.js +0 -596
  707. package/table/_story/table.stories.tsx +0 -382
  708. package/table/_story/v2/FixedColumnsChange/index.jsx +0 -104
  709. package/table/_story/v2/FixedExpandedRow/index.jsx +0 -95
  710. package/table/_story/v2/FixedFilter/index.tsx +0 -106
  711. package/table/_story/v2/FixedHeaderMerge/index.jsx +0 -98
  712. package/table/_story/v2/FixedMemoryLeak/index.jsx +0 -33
  713. package/table/_story/v2/FixedOnHeaderRow/index.jsx +0 -137
  714. package/table/_story/v2/FixedResizable/index.jsx +0 -114
  715. package/table/_story/v2/FixedSorter/index.tsx +0 -102
  716. package/table/_story/v2/FixedVirtualizedEmpty.tsx +0 -76
  717. package/table/_story/v2/FixedZIndex/index.jsx +0 -87
  718. package/table/_story/v2/defaultFilteredValue.tsx +0 -114
  719. package/table/_story/v2/index.js +0 -12
  720. package/table/_story/v2/radioRowSelection.tsx +0 -107
  721. package/table/_story/virtualized/index.js +0 -92
  722. package/table/_story/virtualizedFixed/index.js +0 -131
  723. package/table/getColumns.tsx +0 -34
  724. package/table/index.tsx +0 -44
  725. package/table/interface.ts +0 -321
  726. package/table/table-context.ts +0 -32
  727. package/table/utils.ts +0 -123
  728. package/tabs/TabBar.tsx +0 -264
  729. package/tabs/TabPane.tsx +0 -128
  730. package/tabs/TabPaneTransition.tsx +0 -67
  731. package/tabs/__test__/tabs.test.js +0 -208
  732. package/tabs/_story/Demo.tsx +0 -39
  733. package/tabs/_story/search.jsx +0 -37
  734. package/tabs/_story/tabs.stories.js +0 -905
  735. package/tabs/_story/tabs.stories.tsx +0 -6
  736. package/tabs/index.tsx +0 -302
  737. package/tabs/interface.ts +0 -87
  738. package/tabs/tabs-context.ts +0 -6
  739. package/tag/_story/Demo.tsx +0 -22
  740. package/tag/_story/tag.stories.js +0 -290
  741. package/tag/_story/tag.stories.tsx +0 -6
  742. package/tag/group.tsx +0 -136
  743. package/tag/index.tsx +0 -163
  744. package/tag/interface.ts +0 -56
  745. package/tagInput/__test__/tagInput.test.js +0 -398
  746. package/tagInput/_story/tagInput.stories.js +0 -445
  747. package/tagInput/_story/tagInput.stories.tsx +0 -24
  748. package/tagInput/index.tsx +0 -612
  749. package/timePicker/Combobox.tsx +0 -336
  750. package/timePicker/PanelShape.ts +0 -8
  751. package/timePicker/TimeInput.tsx +0 -207
  752. package/timePicker/TimePicker.tsx +0 -550
  753. package/timePicker/TimeShape.ts +0 -19
  754. package/timePicker/__test__/timePicker.test.js +0 -322
  755. package/timePicker/_story/Callbacks/index.jsx +0 -24
  756. package/timePicker/_story/CustomTrigger/index.jsx +0 -35
  757. package/timePicker/_story/DisabledTime/index.jsx +0 -17
  758. package/timePicker/_story/timepicker.stories.js +0 -301
  759. package/timePicker/_story/timepicker.stories.tsx +0 -18
  760. package/timePicker/index.tsx +0 -47
  761. package/timeline/__test__/timeline.test.js +0 -253
  762. package/timeline/_story/timeline.stories.js +0 -235
  763. package/timeline/_story/timeline.stories.tsx +0 -15
  764. package/timeline/index.tsx +0 -97
  765. package/timeline/item.tsx +0 -83
  766. package/toast/ToastTransition.tsx +0 -43
  767. package/toast/__test__/toast-command-call.test.js +0 -63
  768. package/toast/__test__/toast.test.js +0 -104
  769. package/toast/_story/Demo.tsx +0 -22
  770. package/toast/_story/toast.stories.js +0 -139
  771. package/toast/_story/toast.stories.tsx +0 -7
  772. package/toast/index.tsx +0 -234
  773. package/toast/toast.tsx +0 -152
  774. package/toast/useToast/HookToast.tsx +0 -35
  775. package/toast/useToast/index.tsx +0 -79
  776. package/tooltip/ArrowBoundingShape.ts +0 -8
  777. package/tooltip/TooltipStyledTransition.tsx +0 -31
  778. package/tooltip/TriangleArrow.tsx +0 -12
  779. package/tooltip/TriangleArrowVertical.tsx +0 -12
  780. package/tooltip/__test__/tooltip.test.js +0 -364
  781. package/tooltip/_story/ArrowPointAtCenter/index.jsx +0 -137
  782. package/tooltip/_story/ContainerPosition/index.jsx +0 -15
  783. package/tooltip/_story/ContainerPosition/index.scss +0 -10
  784. package/tooltip/_story/CustomContainer/index.jsx +0 -39
  785. package/tooltip/_story/DangerousHtml/index.js +0 -30
  786. package/tooltip/_story/Edge/index.js +0 -16
  787. package/tooltip/_story/InTable/index.jsx +0 -86
  788. package/tooltip/_story/Safari/autoAdjust.js +0 -23
  789. package/tooltip/_story/ScrollDemo/index.js +0 -65
  790. package/tooltip/_story/story.scss +0 -50
  791. package/tooltip/_story/tooltip.stories.js +0 -1099
  792. package/tooltip/_story/tooltip.stories.tsx +0 -54
  793. package/tooltip/index.tsx +0 -737
  794. package/transfer/__test__/transfer.test.js +0 -324
  795. package/transfer/_story/transfer.scss +0 -124
  796. package/transfer/_story/transfer.stories.js +0 -787
  797. package/transfer/_story/transfer.stories.tsx +0 -80
  798. package/transfer/index.tsx +0 -667
  799. package/tree/__test__/autosizer.test.js +0 -102
  800. package/tree/__test__/tree.test.js +0 -927
  801. package/tree/__test__/treeMultiple.test.js +0 -687
  802. package/tree/__test__/treeNodeProps.test.js +0 -192
  803. package/tree/_story/BigData.jsx +0 -58
  804. package/tree/_story/Demo.tsx +0 -72
  805. package/tree/_story/bigDataGen.jsx +0 -98
  806. package/tree/_story/data.js +0 -3
  807. package/tree/_story/tree.stories.js +0 -2550
  808. package/tree/_story/tree.stories.tsx +0 -7
  809. package/tree/autoSizer.tsx +0 -86
  810. package/tree/collapse.tsx +0 -144
  811. package/tree/index.tsx +0 -798
  812. package/tree/interface.ts +0 -148
  813. package/tree/nodeList.tsx +0 -88
  814. package/tree/treeContext.tsx +0 -49
  815. package/tree/treeNode.tsx +0 -443
  816. package/tree/treeUtil.tsx +0 -14
  817. package/treeSelect/__test__/treeMultiple.test.js +0 -775
  818. package/treeSelect/__test__/treeSelect.test.js +0 -968
  819. package/treeSelect/_story/CustomTrigger/index.jsx +0 -47
  820. package/treeSelect/_story/Demo.tsx +0 -83
  821. package/treeSelect/_story/treeSelect.stories.js +0 -1658
  822. package/treeSelect/_story/treeSelect.stories.tsx +0 -7
  823. package/treeSelect/index.tsx +0 -1417
  824. package/trigger/__test__/trigger.test.js +0 -17
  825. package/trigger/index.tsx +0 -45
  826. package/tsconfig.json +0 -33
  827. package/typography/__test__/typography.test.js +0 -75
  828. package/typography/_story/typography.stories.js +0 -637
  829. package/typography/_story/typography.stories.tsx +0 -175
  830. package/typography/base.tsx +0 -634
  831. package/typography/copyable.tsx +0 -144
  832. package/typography/index.tsx +0 -24
  833. package/typography/interface.ts +0 -27
  834. package/typography/paragraph.tsx +0 -77
  835. package/typography/text.tsx +0 -68
  836. package/typography/title.tsx +0 -74
  837. package/typography/typography.tsx +0 -41
  838. package/typography/util.tsx +0 -140
  839. package/upload/__test__/dragUpload.test.js +0 -122
  840. package/upload/__test__/upload.test.js +0 -947
  841. package/upload/_story/upload.stories.js +0 -1111
  842. package/upload/_story/upload.stories.tsx +0 -16
  843. package/upload/fileCard.tsx +0 -283
  844. package/upload/index.tsx +0 -721
  845. package/upload/interface.ts +0 -64
  846. package/webpack.config.js +0 -96
@@ -1,2550 +0,0 @@
1
- import React, { useRef, useState, useCallback } from 'react';
2
- import { cloneDeep, difference, isEqual } from 'lodash';
3
- import { IconEdit, IconMapPin, IconMore } from '@douyinfe/semi-icons';
4
- import Tree from '../index';
5
- import AutoSizer from '../autoSizer';
6
- import { Button, ButtonGroup, Input, Popover, Toast, Space, Select, Switch } from '../../index';
7
- import BigTree from './BigData';
8
- import testData from './data';
9
- const TreeNode = Tree.TreeNode;
10
-
11
- export default {
12
- title: 'Tree'
13
- }
14
-
15
- const treeChildren = [
16
- {
17
- label: '北京',
18
- value: 'beijing',
19
- key: 'beijing',
20
- },
21
- {
22
- label: '上海',
23
- value: 'shanghai',
24
- key: 'shanghai',
25
- },
26
- ];
27
-
28
- const treeData1 = [
29
- {
30
- label: '亚洲',
31
- value: 'yazhou',
32
- key: 'yazhou',
33
- children: [
34
- {
35
- label: '中国',
36
- value: 'zhongguo',
37
- key: 'zhongguo',
38
- disabled: true,
39
- children: treeChildren,
40
- },
41
- {
42
- label: '日本',
43
- value: 'riben',
44
- key: 'riben',
45
- children: [
46
- {
47
- label: '东京',
48
- value: 'dongjing',
49
- key: 'dongjing',
50
- },
51
- {
52
- label: '大阪',
53
- value: 'daban',
54
- key: 'daban',
55
- },
56
- ],
57
- },
58
- ],
59
- },
60
- {
61
- label: '北美洲',
62
- value: 'beimeizhou',
63
- key: 'beimeizhou',
64
- children: [
65
- {
66
- label: '美国',
67
- value: 'meiguo',
68
- key: 'meiguo',
69
- },
70
- {
71
- label: '加拿大',
72
- value: 'jianada',
73
- key: 'jianada',
74
- },
75
- ],
76
- },
77
- ];
78
-
79
- const treeDataWithoutValue = [
80
- {
81
- label: '亚洲',
82
- key: 'yazhou',
83
- children: [
84
- {
85
- label: '中国',
86
- key: 'zhongguo',
87
- disabled: true,
88
- children: treeChildren,
89
- },
90
- {
91
- label: '日本',
92
- key: 'riben',
93
- children: [
94
- {
95
- label: '东京',
96
- key: 'dongjing',
97
- },
98
- {
99
- label: '大阪',
100
- key: 'daban',
101
- },
102
- ],
103
- },
104
- ],
105
- },
106
- {
107
- label: '北美洲',
108
- key: 'beimeizhou',
109
- children: [
110
- {
111
- label: '美国',
112
- key: 'meiguo',
113
- },
114
- {
115
- label: '加拿大',
116
- key: 'jianada',
117
- },
118
- ],
119
- },
120
- ];
121
-
122
- const treeDataWithIcon = [
123
- {
124
- label: 'Asia',
125
- value: 'Asia',
126
- key: '0',
127
- icon: <IconMapPin style={{ color: 'var(--semi-color-text-2)' }} />,
128
- children: [
129
- {
130
- label: 'China',
131
- value: 'China',
132
- key: '0-0',
133
- icon: <IconMapPin style={{ color: 'var(--semi-color-text-2)' }} />,
134
- },
135
- {
136
- label: 'Japan',
137
- value: 'Japan',
138
- key: '0-1',
139
- icon: <IconMapPin style={{ color: 'var(--semi-color-text-2)' }} />,
140
- },
141
- ],
142
- },
143
- ];
144
-
145
- let opts = {
146
- content: 'Hi, Bytedance dance dance',
147
- duration: 3,
148
- };
149
-
150
- const treeDataWithNode = [
151
- {
152
- label: (
153
- <span>
154
- <span style={{ marginRight: 30 }}>亚洲</span>
155
- <Button
156
- style={{ zIndex: 2 }}
157
- onClick={e => {
158
- Toast.info(opts);
159
- e.stopPropagation();
160
- }}
161
- >
162
- Display Toast
163
- </Button>
164
- </span>
165
- ),
166
- value: 'yazhou',
167
- key: 'yazhou',
168
- children: [
169
- {
170
- label: '中国',
171
- value: 'zhongguo',
172
- key: 'zhongguo',
173
- children: [
174
- {
175
- label: '北京',
176
- value: 'beijing',
177
- key: 'beijing',
178
- },
179
- {
180
- label: '上海',
181
- value: 'shanghai',
182
- key: 'shanghai',
183
- },
184
- ],
185
- },
186
- {
187
- label: '日本',
188
- value: 'riben',
189
- key: 'riben',
190
- },
191
- ],
192
- },
193
- {
194
- label: '北美洲',
195
- value: 'beimeizhou',
196
- key: 'beimeizhou',
197
- children: [
198
- {
199
- label: '美国',
200
- value: 'meiguo',
201
- key: 'meiguo',
202
- },
203
- {
204
- label: '加拿大',
205
- value: 'jianada',
206
- key: 'jianada',
207
- },
208
- ],
209
- },
210
- ];
211
-
212
- const treeJson = {
213
- Node1: {
214
- Child1: '0-0-1',
215
- Child2: '0-0-2',
216
- },
217
- Node2: '0-1',
218
- };
219
-
220
- const benchmarkSet = size => {
221
- console.time('benchmarkSet');
222
- var set = new Set();
223
- for (var i = 0; i < size; i++) set.add(i);
224
- for (var i = 0; i < size; i++) set.has(i);
225
- console.timeEnd('benchmarkSet');
226
- };
227
-
228
- const benchmarkArr = size => {
229
- console.time('benchmarkArr');
230
- var arr = [];
231
- for (var i = 0; i < size; i++) arr.push(i);
232
- for (var i = 0; i < size; i++) arr.indexOf(i);
233
- console.timeEnd('benchmarkArr');
234
- };
235
-
236
- export const BenchMark = () => {
237
- const size = 100000;
238
- benchmarkSet(size);
239
- benchmarkArr(size);
240
- return <div>check console please</div>;
241
- };
242
-
243
- BenchMark.story = {
244
- name: 'bench mark',
245
- };
246
-
247
- export const SimpleTree = () => (
248
- <Tree
249
- treeData={treeData1}
250
- // onExpand={(e, { expanded, node }) => console.log('expand', e, expanded, node)}
251
- // onSelect={(e, bool, node) => console.log('select', e, bool, node)}
252
- // onChange={e => console.log('change', e)}
253
- onContextMenu={(e, node) => console.log(e.currentTarget, node)}
254
- onDoubleClick={(e, node) => console.log(e, node)}
255
- motion={true}
256
- />
257
- );
258
-
259
- SimpleTree.story = {
260
- name: 'simple tree',
261
- };
262
-
263
- export const MultipleTree = () => (
264
- <Tree
265
- treeData={treeData1}
266
- multiple
267
- labelInValue
268
- // onExpand={(e, { expanded, node }) => console.log('expand', e, expanded, node)}
269
- // onSelect={(e, bool) => console.log('select', e, bool)}
270
- onContextMenu={(e, node) => console.log(e, node)}
271
- onDoubleClick={(e, node) => console.log(e, node)}
272
- onChange={e => console.log('change', e)}
273
- />
274
- );
275
-
276
- MultipleTree.story = {
277
- name: 'multiple tree',
278
- };
279
-
280
- export const SearchableTree = () => (
281
- <Tree
282
- treeData={treeData1}
283
- filterTreeNode
284
- treeNodeFilterProp="value"
285
- multiple
286
- searchStyle={{ width: '300px' }}
287
- />
288
- );
289
-
290
- SearchableTree.story = {
291
- name: 'searchable tree',
292
- };
293
-
294
- export const DisabledTree = () => (
295
- <Tree treeData={treeData1} defaultValue={['dongjing', 'daban']} multiple disabled />
296
- );
297
-
298
- DisabledTree.story = {
299
- name: 'disabled tree',
300
- };
301
-
302
- export const DefaultTree = () => (
303
- <div>
304
- <Tree treeData={treeData1} defaultValue={['zhongguo']} />
305
- <br />
306
- <Tree
307
- treeData={treeData1}
308
- multiple
309
- defaultValue={['shanghai', 'dongjing', 'beijing', 'daban']}
310
- onChange={e => console.log(e)}
311
- onSelect={e => console.log(e)}
312
- />
313
- </div>
314
- );
315
-
316
- DefaultTree.story = {
317
- name: 'default tree',
318
- };
319
-
320
- export const ExpandAction = () => (
321
- <div>
322
- <Tree treeData={treeData1} defaultValue={['zhongguo']} />
323
- <br />
324
- <Tree
325
- treeData={treeData1}
326
- //multiple
327
- defaultValue={['shanghai', 'dongjing', 'beijing', 'daban']}
328
- expandAction="click"
329
- onDoubleClick={e => console.log(e.detail)}
330
- />
331
- <br />
332
- <Tree
333
- treeData={treeData1}
334
- multiple
335
- defaultValue={['shanghai', 'dongjing', 'beijing', 'daban']}
336
- expandAction="doubleClick"
337
- />
338
- </div>
339
- );
340
-
341
- ExpandAction.story = {
342
- name: 'expandAction',
343
- };
344
-
345
- class Demo extends React.Component {
346
- constructor() {
347
- super();
348
- this.state = {
349
- value: 'shanghai',
350
- };
351
- }
352
-
353
- onChange(value) {
354
- this.setState({ value });
355
- }
356
-
357
- render() {
358
- return (
359
- <Tree
360
- style={{ width: 300 }}
361
- dropdownStyle={{ maxHeight: 400, overflow: 'auto' }}
362
- treeData={treeData1}
363
- value={this.state.value}
364
- placeholder="Please select"
365
- onChange={e => this.onChange(e)}
366
- />
367
- );
368
- }
369
- }
370
-
371
- export const ControlledComponentSingle = () => <Demo />;
372
-
373
- ControlledComponentSingle.story = {
374
- name: 'controlled Component single',
375
- };
376
-
377
- class Demo2 extends React.Component {
378
- constructor() {
379
- super();
380
- this.state = {
381
- value: ['shanghai', 'beijing', 'zhongguo'],
382
- };
383
- }
384
-
385
- onChange(value) {
386
- console.log(value);
387
- this.setState({ value });
388
- }
389
-
390
- render() {
391
- console.log(this.state.value);
392
- return (
393
- <Tree
394
- style={{ width: 300 }}
395
- multiple
396
- dropdownStyle={{ maxHeight: 200, overflow: 'auto' }}
397
- treeData={treeData1}
398
- value={this.state.value}
399
- placeholder="Please select"
400
- onChange={e => this.onChange(e)}
401
- />
402
- );
403
- }
404
- }
405
-
406
- export const ControlledComponentMultiple = () => <Demo2 />;
407
-
408
- ControlledComponentMultiple.story = {
409
- name: 'controlled Component multiple',
410
- };
411
-
412
- export const JsonTree = () => (
413
- <div>
414
- <Tree
415
- treeDataSimpleJson={treeJson}
416
- onChange={e => console.log('change', e)}
417
- onSelect={e => console.log('select', e)}
418
- />
419
- <br />
420
- <Tree
421
- treeDataSimpleJson={treeJson}
422
- multiple
423
- onChange={e => console.log(e)}
424
- onSelect={e => console.log(e)}
425
- />
426
- </div>
427
- );
428
-
429
- JsonTree.story = {
430
- name: 'json tree',
431
- };
432
-
433
- export const IconTree = () => (
434
- <div>
435
- <Tree treeData={treeDataWithIcon} />
436
- <br />
437
- <Tree treeData={treeDataWithIcon} multiple blockNode />
438
- </div>
439
- );
440
-
441
- IconTree.story = {
442
- name: 'icon tree',
443
- };
444
-
445
- export const DirectoryTree = () => <Tree treeData={treeData1} directory multiple blockNode />;
446
-
447
- DirectoryTree.story = {
448
- name: 'directory tree',
449
- };
450
-
451
- const button = (
452
- <ButtonGroup size="small" theme="borderless">
453
- <Button
454
- onClick={e => {
455
- Toast.info(opts);
456
- e.stopPropagation();
457
- }}
458
- >
459
- 提示
460
- </Button>
461
- <Button>点击</Button>
462
- </ButtonGroup>
463
- );
464
-
465
- const style = {
466
- display: 'flex',
467
- justifyContent: 'space-between',
468
- alignItems: 'center',
469
- };
470
-
471
- const treeDataWithNode2 = [
472
- {
473
- label: (
474
- <div style={style}>
475
- <span>亚洲</span>
476
- <ButtonGroup size="small" theme="borderless">
477
- {button}
478
- </ButtonGroup>
479
- </div>
480
- ),
481
- value: 'yazhou',
482
- key: 'yazhou',
483
- children: [
484
- {
485
- label: (
486
- <div style={style}>
487
- <span>中国</span>
488
- {button}
489
- </div>
490
- ),
491
- value: 'zhongguo',
492
- key: 'zhongguo',
493
- children: [
494
- {
495
- label: (
496
- <div style={style}>
497
- <span>test</span>
498
- {button}
499
- </div>
500
- ),
501
- value: 'test',
502
- key: 'test',
503
- },
504
- ],
505
- },
506
- {
507
- label: (
508
- <div style={style}>
509
- <span>日本</span>
510
- {button}
511
- </div>
512
- ),
513
- value: 'riben',
514
- key: 'riben',
515
- },
516
- ],
517
- },
518
- ];
519
-
520
- export const TreeLabelUsingNode = () => (
521
- <div>
522
- <Tree treeData={treeDataWithNode2} blockNode defaultExpandAll />
523
- </div>
524
- );
525
-
526
- TreeLabelUsingNode.story = {
527
- name: 'tree label using node',
528
- };
529
-
530
- const treeDataTest = [
531
- {
532
- value: '一级标签1',
533
- label: '一级标签1',
534
- id: 1,
535
- key: '1',
536
- },
537
- ];
538
-
539
- class TagSideSheet2 extends React.Component {
540
- constructor() {
541
- super();
542
- this.state = {
543
- tagList: [],
544
- visibles: false,
545
- };
546
- this.onVisible = this.onVisible.bind(this);
547
- this.renderLabel = this.renderLabel.bind(this);
548
- this.transLabel = this.transLabel.bind(this);
549
- }
550
-
551
- componentDidMount() {
552
- let tagList = [...treeDataTest];
553
- this.setState({
554
- tagList,
555
- });
556
- }
557
-
558
- onVisible(visibles) {
559
- this.setState({
560
- visibles,
561
- });
562
- }
563
-
564
- renderLabel(item) {
565
- const { visibles } = this.state;
566
- console.log('rendering label', visibles);
567
- return (
568
- <Popover trigger="custom" position="bottomLeft" visible={visibles} content={'测试popover'}>
569
- <Button
570
- icon={<IconEdit />}
571
- onClick={e => {
572
- e.stopPropagation();
573
- this.onVisible(!visibles);
574
- }}
575
- >
576
- {item.label}
577
- </Button>
578
- </Popover>
579
- );
580
- }
581
-
582
- transLabel(list) {
583
- // list = cloneDeep(list);
584
- list.forEach(item => {
585
- item.label = this.renderLabel(item);
586
- // item.key += Math.random().toString().slice(0, 5);
587
- });
588
- return list;
589
- }
590
-
591
- render() {
592
- const { tagList = [] } = this.state;
593
- const transformedTags = this.transLabel(cloneDeep(tagList));
594
- console.log('transformedTags', transformedTags, treeDataTest);
595
- return <Tree treeData={transformedTags} />;
596
- }
597
- }
598
-
599
- export const TreeLabelUsingPopover = () => <TagSideSheet2 />;
600
-
601
- TreeLabelUsingPopover.story = {
602
- name: 'tree label using popover',
603
- };
604
-
605
- export const DefaultExpandKeysTree = () => (
606
- <>
607
- <Tree treeData={treeData1} defaultExpandedKeys={['zhongguo', 'beimeizhou']} blockNode />
608
- <Tree treeData={treeData1} defaultExpandAll blockNode />
609
- <Tree treeData={treeData1} defaultExpandAll multiple blockNode />
610
- </>
611
- );
612
-
613
- DefaultExpandKeysTree.story = {
614
- name: 'defaultExpandKeys tree',
615
- };
616
-
617
- export const LabelInValueTree = () => (
618
- <>
619
- <Tree treeData={treeData1} labelInValue onChange={e => console.log(e)} />
620
- <Tree treeData={treeData1} labelInValue onChange={e => console.log(e)} multiple />
621
- <Tree treeData={treeDataWithIcon} labelInValue onChange={e => console.log(e)} multiple />
622
- </>
623
- );
624
-
625
- LabelInValueTree.story = {
626
- name: 'labelInValue tree',
627
- };
628
-
629
- class Test extends React.Component {
630
- constructor() {
631
- super();
632
- this.state = {
633
- loading: false,
634
- };
635
- }
636
-
637
- componentDidMount() {
638
- setTimeout(() => {
639
- console.log('set loading');
640
- this.setState({ loading: true });
641
- }, 5000);
642
- }
643
-
644
- render() {
645
- const treeDataWithNode2 = [
646
- {
647
- label: (
648
- <div style={style}>
649
- <span>亚洲</span>
650
- <ButtonGroup size="small" theme="borderless">
651
- {button}
652
- </ButtonGroup>
653
- </div>
654
- ),
655
- value: 'yazhou',
656
- key: 'yazhou',
657
- children: [
658
- {
659
- label: (
660
- <div style={style}>
661
- <span>中国</span>
662
- {button}
663
- </div>
664
- ),
665
- value: 'zhongguo',
666
- key: 'zhongguo',
667
- children: [
668
- {
669
- label: (
670
- <div style={style}>
671
- <span>test</span>
672
- {button}
673
- </div>
674
- ),
675
- value: 'test',
676
- key: 'test',
677
- },
678
- ],
679
- },
680
- {
681
- label: (
682
- <div style={style}>
683
- <span>日本</span>
684
- {button}
685
- </div>
686
- ),
687
- value: 'riben',
688
- key: 'riben',
689
- },
690
- ],
691
- },
692
- ];
693
- return <Tree treeData={treeDataWithNode2} />;
694
- }
695
- }
696
-
697
- export const SetStateAfter5S = () => <Test />;
698
-
699
- SetStateAfter5S.story = {
700
- name: 'setState after 5s',
701
- };
702
-
703
- class DemoExpandedKeys extends React.Component {
704
- constructor() {
705
- super();
706
- this.state = {
707
- expand: ['zhongguo', 'beimeizhou'],
708
- };
709
- }
710
-
711
- onExpand(expand) {
712
- console.log(expand);
713
- this.setState({ expand });
714
- }
715
-
716
- render() {
717
- return (
718
- <Tree
719
- style={{ width: 300 }}
720
- dropdownStyle={{ maxHeight: 400, overflow: 'auto' }}
721
- treeData={treeData1}
722
- expandedKeys={this.state.expand}
723
- placeholder="Please select"
724
- onExpand={(e, rest) => this.onExpand(e, rest)}
725
- />
726
- );
727
- }
728
- }
729
-
730
- class DemoExpandeKeysMulti extends React.Component {
731
- constructor() {
732
- super();
733
- this.state = {
734
- expand: ['zhongguo'],
735
- };
736
- }
737
-
738
- onExpand(expand) {
739
- console.log(expand);
740
- this.setState({ expand });
741
- }
742
-
743
- render() {
744
- return (
745
- <Tree
746
- style={{ width: 300 }}
747
- multiple
748
- dropdownStyle={{ maxHeight: 400, overflow: 'auto' }}
749
- treeData={treeData1}
750
- expandedKeys={this.state.expand}
751
- placeholder="Please select"
752
- onExpand={e => this.onExpand(e)}
753
- />
754
- );
755
- }
756
- }
757
-
758
- export const ExpandedKeys = () => (
759
- <>
760
- <DemoExpandedKeys />
761
- <br />
762
- <DemoExpandeKeysMulti />
763
- </>
764
- );
765
-
766
- ExpandedKeys.story = {
767
- name: 'expandedKeys',
768
- };
769
-
770
- class DmExpandedKeys extends React.Component {
771
- constructor() {
772
- super();
773
- this.state = {
774
- treeData: [
775
- {
776
- key: '0',
777
- label: 'item-0',
778
- value: '0',
779
- },
780
- ],
781
- };
782
- this.add = this.add.bind(this);
783
- }
784
-
785
- add() {
786
- let itemLength = Math.floor(Math.random() * 5) + 1;
787
- let treeData = new Array(itemLength).fill(0).map((v, i) => {
788
- let length = Math.floor(Math.random() * 3);
789
- let children = new Array(length).fill(0).map((cv, ci) => {
790
- let child = {
791
- key: `${i}-${ci}`,
792
- label: `Leaf-${i}-${ci}`,
793
- value: `${i}-${ci}`,
794
- };
795
- return child;
796
- });
797
- let item = {
798
- key: `${i}`,
799
- label: `Item-${i}`,
800
- value: `${i}`,
801
- children,
802
- };
803
- return item;
804
- });
805
- this.setState({ treeData });
806
- }
807
-
808
- render() {
809
- const { treeData } = this.state;
810
- return (
811
- <>
812
- <Tree treeData={this.state.treeData} expandedKeys={['0', '1']} />
813
- <br />
814
- <Button onClick={this.add}>动态改变数据</Button>
815
- </>
816
- );
817
- }
818
- }
819
-
820
- export const DynamicExpandKeys = () => (
821
- <>
822
- <DmExpandedKeys />
823
- </>
824
- );
825
-
826
- DynamicExpandKeys.story = {
827
- name: 'dynamic expandKeys',
828
- };
829
-
830
- class DmSelectedKeys extends React.Component {
831
- constructor() {
832
- super();
833
- this.state = {
834
- treeData: [
835
- {
836
- key: '0',
837
- label: 'item-0',
838
- value: '0',
839
- },
840
- ],
841
- };
842
- this.add = this.add.bind(this);
843
- }
844
-
845
- add() {
846
- let itemLength = Math.floor(Math.random() * 5) + 1;
847
- let treeData = new Array(itemLength).fill(0).map((v, i) => {
848
- let length = Math.floor(Math.random() * 3);
849
- let children = new Array(length).fill(0).map((cv, ci) => {
850
- let child = {
851
- key: `${i}-${ci}`,
852
- label: `Leaf-${i}-${ci}`,
853
- value: `${i}-${ci}`,
854
- };
855
- return child;
856
- });
857
- let item = {
858
- key: `${i}`,
859
- label: `Item-${i}`,
860
- value: `${i}`,
861
- children,
862
- };
863
- return item;
864
- });
865
- this.setState({ treeData });
866
- }
867
-
868
- render() {
869
- const { treeData } = this.state;
870
- return (
871
- <>
872
- <Tree treeData={treeData} value={['0-0']} onChange={e => console.log(e)} />
873
- <br />
874
- <Button onClick={this.add}>动态改变数据</Button>
875
- </>
876
- );
877
- }
878
- }
879
-
880
- export const DynamicSelectedKey = () => (
881
- <>
882
- <DmSelectedKeys />
883
- </>
884
- );
885
-
886
- DynamicSelectedKey.story = {
887
- name: 'dynamic selectedKey',
888
- };
889
-
890
- export const LargeAmountOfData = () => (
891
- <>
892
- <BigTree />
893
- </>
894
- );
895
-
896
- LargeAmountOfData.story = {
897
- name: 'large amount of data',
898
- };
899
-
900
- export const Autosizer = () => (
901
- <div
902
- style={{
903
- boxSizing: 'border-box',
904
- height: 400,
905
- width: 200,
906
- }}
907
- >
908
- <div
909
- style={{
910
- boxSizing: 'border-box',
911
- height: '50%',
912
- width: 200,
913
- }}
914
- >
915
- <AutoSizer
916
- // defaultHeight={defaultHeight}
917
- // defaultWidth={defaultWidth}
918
- >
919
- {({ height, width }) => (
920
- <div
921
- style={{
922
- width: width,
923
- height: height,
924
- }}
925
- >
926
- {`width:${width}, height:${height}`}
927
- </div>
928
- )}
929
- </AutoSizer>
930
- </div>
931
- </div>
932
- );
933
-
934
- Autosizer.story = {
935
- name: 'autosizer',
936
- };
937
-
938
- const MotionCustomLabelDemo = () => {
939
- const treeData = [
940
- {
941
- label: '亚洲',
942
- value: 'Asia',
943
- key: '0',
944
- children: [
945
- {
946
- label: '中国',
947
- value: 'China',
948
- key: '0-0',
949
- children: [
950
- {
951
- label: '北京',
952
- value: 'Beijing',
953
- key: '0-0-0',
954
- },
955
- {
956
- label: '上海',
957
- value: 'Shanghai',
958
- key: '0-0-1',
959
- },
960
- ],
961
- },
962
- ],
963
- },
964
- {
965
- label: '北美洲',
966
- value: 'North America',
967
- key: '1',
968
- },
969
- ];
970
-
971
- const [hoverKey, setHoverKey] = useState();
972
- const cusLabel = (list = []) => {
973
- const recusive = (list = []) => {
974
- if (!list.length) {
975
- return;
976
- }
977
- list.forEach(item => {
978
- const { type, label, key } = item;
979
- item.label = (
980
- <div onMouseEnter={() => setHoverKey(key)}>
981
- {label}
982
- {hoverKey === key ? <IconMore /> : null}
983
- </div>
984
- );
985
- recusive(item.children);
986
- });
987
- };
988
- recusive(list);
989
- return list;
990
- };
991
- return <Tree treeData={cusLabel(treeData)} defaultExpandAll />;
992
- };
993
-
994
- export const MotionCustomLabel = () => <MotionCustomLabelDemo />;
995
-
996
- MotionCustomLabel.story = {
997
- name: 'motion custom label',
998
- };
999
-
1000
- const AutoParentDemo = () => {
1001
- const [expandedKeys, setExpandedKeys] = useState(['beimeizhou']);
1002
- const [selectedKeys, setSelectedKeys] = useState(['beimeizhou']);
1003
- const [autoExpandParent, setAutoExpandParent] = useState(true);
1004
-
1005
- const onExpand = expandedKeys => {
1006
- console.log('onExpand', expandedKeys);
1007
- // if not set autoExpandParent to false, if children expanded, parent can not collapse.
1008
- // or, you can remove all expanded children keys.
1009
- setExpandedKeys(expandedKeys);
1010
- setAutoExpandParent(false);
1011
- };
1012
-
1013
- const onSelect = (selectedKeys, info) => {
1014
- console.log('onSelect:', info);
1015
- setSelectedKeys(selectedKeys);
1016
- };
1017
-
1018
- return (
1019
- <div>
1020
- <Button
1021
- onClick={() => {
1022
- setSelectedKeys(['riben']);
1023
- setExpandedKeys(['riben']);
1024
- setAutoExpandParent(true);
1025
- }}
1026
- >
1027
- Update
1028
- </Button>
1029
- <Tree
1030
- onExpand={onExpand}
1031
- expandedKeys={expandedKeys}
1032
- autoExpandParent={autoExpandParent}
1033
- onChange={onSelect}
1034
- value={selectedKeys}
1035
- treeData={treeData1}
1036
- multiple
1037
- />
1038
- </div>
1039
- );
1040
- };
1041
-
1042
- export const AutoExpandParent = () => (
1043
- <>
1044
- <AutoParentDemo />
1045
- </>
1046
- );
1047
-
1048
- AutoExpandParent.story = {
1049
- name: 'autoExpandParent',
1050
- };
1051
-
1052
- const findDescendantKeys = node => {
1053
- let res = [node.key];
1054
- const findChild = item => {
1055
- if (!item) return;
1056
- const { children } = item;
1057
-
1058
- if (children && children.length) {
1059
- children.forEach(child => {
1060
- res.push(child.key);
1061
- findChild(child);
1062
- });
1063
- }
1064
- };
1065
- findChild(node);
1066
- return res;
1067
- };
1068
-
1069
- class DyTreeWithExpandControlled extends React.Component {
1070
- constructor() {
1071
- super();
1072
- this.state = {
1073
- treeData: [
1074
- {
1075
- key: '0',
1076
- label: 'item-0',
1077
- value: '0',
1078
- },
1079
- ],
1080
- expandedKeys: [],
1081
- autoExpandParent: false,
1082
- inputValue: '',
1083
- collapsedKeys: new Set([]),
1084
- };
1085
- }
1086
-
1087
- componentDidUpdate(prevProps, prevState) {
1088
- if (
1089
- !isEqual(prevState.treeData, this.state.treeData) ||
1090
- !isEqual(prevState.inputValue, this.state.inputValue)
1091
- ) {
1092
- const { treeData, inputValue, collapsedKeys } = this.state;
1093
- let filteredKeys = [];
1094
-
1095
- const findFilteredKey = arr => {
1096
- arr.forEach(item => {
1097
- if (item.label.indexOf(inputValue) > -1) {
1098
- filteredKeys.push(item.key);
1099
- }
1100
- if (item.children) {
1101
- findFilteredKey(item.children);
1102
- }
1103
- });
1104
- };
1105
- findFilteredKey(treeData);
1106
- const expanded = difference(filteredKeys, [...collapsedKeys]);
1107
- this.setState({
1108
- expandedKeys: expanded,
1109
- autoExpandParent: true,
1110
- });
1111
- }
1112
- }
1113
-
1114
- add = () => {
1115
- let itemLength = Math.floor(Math.random() * 5) + 1;
1116
- let treeData = new Array(itemLength).fill(0).map((v, i) => {
1117
- let length = Math.floor(Math.random() * 3) + 1;
1118
- let children = new Array(length).fill(0).map((cv, ci) => {
1119
- let child = {
1120
- key: `${i}-${ci}`,
1121
- label: `Leaf-${i}-${ci}`,
1122
- value: `${i}-${ci}`,
1123
- };
1124
- return child;
1125
- });
1126
- let item = {
1127
- key: `${i}`,
1128
- label: `Item-${i}`,
1129
- value: `${i}`,
1130
- children,
1131
- };
1132
- return item;
1133
- });
1134
- this.setState({ treeData });
1135
- };
1136
-
1137
- search = val => {
1138
- this.setState({ inputValue: val });
1139
- };
1140
-
1141
- onExpand = (keys, { expanded, node }) => {
1142
- let collapsed = this.state.collapsedKeys;
1143
- let desKeys = findDescendantKeys(node);
1144
- if (!expanded) {
1145
- desKeys.forEach(key => collapsed.add(key));
1146
- } else {
1147
- desKeys.forEach(key => collapsed.has(key) && collapsed.delete(key));
1148
- }
1149
- this.setState({
1150
- expandedKeys: keys,
1151
- autoExpandParent: false,
1152
- collapsedKeys: collapsed,
1153
- });
1154
- };
1155
-
1156
- render() {
1157
- const { treeData, expandedKeys, autoExpandParent } = this.state;
1158
- return (
1159
- <div>
1160
- <Tree
1161
- treeData={treeData}
1162
- filterTreeNode
1163
- autoExpandParent={autoExpandParent}
1164
- expandedKeys={expandedKeys}
1165
- onSearch={this.search}
1166
- onExpand={this.onExpand}
1167
- />
1168
- <br />
1169
- <Button onClick={this.add} style={{ margin: 20 }}>
1170
- 动态改变数据
1171
- </Button>
1172
- </div>
1173
- );
1174
- }
1175
- }
1176
-
1177
- export const DynamicTreeDataWithSearchValueAndControlledExpand = () => (
1178
- <DyTreeWithExpandControlled />
1179
- );
1180
-
1181
- DynamicTreeDataWithSearchValueAndControlledExpand.story = {
1182
- name: 'dynamic treeData with searchValue and controlled expand',
1183
- };
1184
-
1185
- const CusSearchRender = () => {
1186
- const [inputValue, setInputValue] = useState('');
1187
- const ref = useRef();
1188
-
1189
- const setValue = value => {
1190
- setInputValue(value);
1191
- ref.current.search(value);
1192
- };
1193
-
1194
- return (
1195
- <Tree
1196
- ref={ref}
1197
- treeData={treeData1}
1198
- filterTreeNode
1199
- showFilteredOnly
1200
- searchRender={({ prefix, placeholder }) => (
1201
- <Input
1202
- prefix={prefix}
1203
- placeholder={placeholder}
1204
- value={inputValue}
1205
- onChange={value => setValue(value)}
1206
- />
1207
- )}
1208
- />
1209
- );
1210
- };
1211
-
1212
- export const _CusSearchRender = () => (
1213
- <>
1214
- <CusSearchRender />
1215
- </>
1216
- );
1217
-
1218
- _CusSearchRender.story = {
1219
- name: 'CusSearchRender',
1220
- };
1221
-
1222
- const RefSearch = () => {
1223
- const ref = useRef();
1224
- const treeData = [
1225
- {
1226
- label: 'Asia',
1227
- value: 'Asia',
1228
- key: '0',
1229
- children: [
1230
- {
1231
- label: 'China',
1232
- value: 'China',
1233
- key: '0-0',
1234
- children: [
1235
- {
1236
- label: 'Beijing',
1237
- value: 'Beijing',
1238
- key: '0-0-0',
1239
- },
1240
- {
1241
- label: 'Shanghai',
1242
- value: 'Shanghai',
1243
- key: '0-0-1',
1244
- },
1245
- ],
1246
- },
1247
- {
1248
- label: 'Japan',
1249
- value: 'Japan',
1250
- key: '0-1',
1251
- children: [
1252
- {
1253
- label: 'Osaka',
1254
- value: 'Osaka',
1255
- key: '0-1-0',
1256
- },
1257
- ],
1258
- },
1259
- ],
1260
- },
1261
- {
1262
- label: 'North America',
1263
- value: 'North America',
1264
- key: '1',
1265
- children: [
1266
- {
1267
- label: 'United States',
1268
- value: 'United States',
1269
- key: '1-0',
1270
- },
1271
- {
1272
- label: 'Canada',
1273
- value: 'Canada',
1274
- key: '1-1',
1275
- },
1276
- ],
1277
- },
1278
- ];
1279
- return (
1280
- <div>
1281
- <Input aria-label='filter tree' onChange={v => ref.current.search(v)} />
1282
- <Tree
1283
- treeData={treeData}
1284
- defaultValue="Shanghai"
1285
- blockNode={false}
1286
- ref={ref}
1287
- filterTreeNode
1288
- searchRender={() => null}
1289
- />
1290
- </div>
1291
- );
1292
- };
1293
-
1294
- export const _RefSearch = () => (
1295
- <>
1296
- <RefSearch />
1297
- </>
1298
- );
1299
-
1300
- _RefSearch.story = {
1301
- name: 'RefSearch',
1302
- };
1303
-
1304
- const initTreeDate = [
1305
- {
1306
- label: 'Expand to load',
1307
- key: '0',
1308
- },
1309
- {
1310
- label: 'Expand to load',
1311
- key: '1',
1312
- },
1313
- {
1314
- label: 'Tree Node',
1315
- key: '2',
1316
- isLeaf: true,
1317
- },
1318
- ];
1319
-
1320
- function updateTreeData(list, key, children) {
1321
- return list.map(node => {
1322
- if (node.key === key) {
1323
- return { ...node, children };
1324
- }
1325
- if (node.children) {
1326
- return { ...node, children: updateTreeData(node.children, key, children) };
1327
- }
1328
-
1329
- return node;
1330
- });
1331
- }
1332
-
1333
- const LoadingTreeDemo = () => {
1334
- const [treeData, setTreeData] = useState(initTreeDate);
1335
-
1336
- function onLoadData({ key, children }) {
1337
- return new Promise(resolve => {
1338
- if (children) {
1339
- resolve();
1340
- return;
1341
- }
1342
-
1343
- setTimeout(() => {
1344
- setTreeData(origin =>
1345
- updateTreeData(origin, key, [
1346
- {
1347
- label: 'Child Node',
1348
- key: `${key}-0`,
1349
- },
1350
- {
1351
- label: 'Child Node',
1352
- key: `${key}-1`,
1353
- },
1354
- ])
1355
- );
1356
- resolve();
1357
- }, 1000);
1358
- });
1359
- }
1360
-
1361
- return <Tree loadData={onLoadData} treeData={cloneDeep(treeData)} />;
1362
- };
1363
-
1364
- export const Loading = () => (
1365
- <>
1366
- <LoadingTreeDemo />
1367
- </>
1368
- );
1369
-
1370
- Loading.story = {
1371
- name: 'loading',
1372
- };
1373
-
1374
- const LoadingWithSearch = () => {
1375
- const [treeData, setTreeData] = useState(initTreeDate);
1376
-
1377
- function onLoadData({ key, children }) {
1378
- return new Promise(resolve => {
1379
- if (children) {
1380
- resolve();
1381
- return;
1382
- }
1383
-
1384
- setTimeout(() => {
1385
- setTreeData(origin =>
1386
- updateTreeData(origin, key, [
1387
- {
1388
- label: 'Child Node',
1389
- key: `${key}-0`,
1390
- },
1391
- {
1392
- label: 'Child Node',
1393
- key: `${key}-1`,
1394
- },
1395
- ])
1396
- );
1397
- resolve();
1398
- }, 1000);
1399
- });
1400
- }
1401
-
1402
- return <Tree loadData={onLoadData} treeData={cloneDeep(treeData)} filterTreeNode />;
1403
- };
1404
-
1405
- export const _LoadingWithSearch = () => (
1406
- <>
1407
- <LoadingWithSearch />
1408
- </>
1409
- );
1410
-
1411
- _LoadingWithSearch.story = {
1412
- name: 'Loading with search',
1413
- };
1414
-
1415
- const DisabledStrictly = () => {
1416
- return (
1417
- <>
1418
- <span> disable shanghai(checked), China </span>
1419
- <Tree
1420
- treeData={[
1421
- {
1422
- label: 'Asia',
1423
- value: 'Asia',
1424
- key: '0',
1425
- children: [
1426
- {
1427
- label: 'China',
1428
- value: 'China',
1429
- key: '0-0',
1430
- disabled: true,
1431
- children: [
1432
- {
1433
- label: 'Beijing',
1434
- value: 'Beijing',
1435
- key: '0-0-0',
1436
- },
1437
- {
1438
- label: 'Shanghai',
1439
- value: 'Shanghai',
1440
- key: '0-0-1',
1441
- disabled: true,
1442
- },
1443
- ],
1444
- },
1445
- {
1446
- label: 'Japan',
1447
- value: 'Japan',
1448
- key: '0-1',
1449
- children: [
1450
- {
1451
- label: 'Osaka',
1452
- value: 'Osaka',
1453
- key: '0-1-0',
1454
- },
1455
- ],
1456
- },
1457
- ],
1458
- },
1459
- ]}
1460
- defaultValue="Shanghai"
1461
- multiple
1462
- defaultExpandAll
1463
- disableStrictly
1464
- />
1465
- <br />
1466
- <span> disable shanghai(checked), beijing(checked) </span>
1467
- <Tree
1468
- treeData={[
1469
- {
1470
- label: 'Asia',
1471
- value: 'Asia',
1472
- key: '0',
1473
- children: [
1474
- {
1475
- label: 'China',
1476
- value: 'China',
1477
- key: '0-0',
1478
- children: [
1479
- {
1480
- label: 'Beijing',
1481
- value: 'Beijing',
1482
- key: '0-0-0',
1483
- disabled: true,
1484
- },
1485
- {
1486
- label: 'Shanghai',
1487
- value: 'Shanghai',
1488
- key: '0-0-1',
1489
- disabled: true,
1490
- },
1491
- ],
1492
- },
1493
- {
1494
- label: 'Japan',
1495
- value: 'Japan',
1496
- key: '0-1',
1497
- children: [
1498
- {
1499
- label: 'Osaka',
1500
- value: 'Osaka',
1501
- key: '0-1-0',
1502
- },
1503
- ],
1504
- },
1505
- ],
1506
- },
1507
- ]}
1508
- defaultValue={['Shanghai', 'Beijing']}
1509
- multiple
1510
- defaultExpandAll
1511
- disableStrictly
1512
- />
1513
- <span> disable shanghai(checked) </span>
1514
- <Tree
1515
- treeData={[
1516
- {
1517
- label: 'Asia',
1518
- value: 'Asia',
1519
- key: '0',
1520
- children: [
1521
- {
1522
- label: 'China',
1523
- value: 'China',
1524
- key: '0-0',
1525
- children: [
1526
- {
1527
- label: 'Beijing',
1528
- value: 'Beijing',
1529
- key: '0-0-0',
1530
- },
1531
- {
1532
- label: 'Shanghai',
1533
- value: 'Shanghai',
1534
- key: '0-0-1',
1535
- disabled: true,
1536
- },
1537
- ],
1538
- },
1539
- {
1540
- label: 'Japan',
1541
- value: 'Japan',
1542
- key: '0-1',
1543
- children: [
1544
- {
1545
- label: 'Osaka',
1546
- value: 'Osaka',
1547
- key: '0-1-0',
1548
- },
1549
- ],
1550
- },
1551
- ],
1552
- },
1553
- ]}
1554
- defaultValue={['Shanghai']}
1555
- multiple
1556
- defaultExpandAll
1557
- disableStrictly
1558
- />
1559
- <br />
1560
- <span> disable shanghai </span>
1561
- <Tree
1562
- treeData={[
1563
- {
1564
- label: 'Asia',
1565
- value: 'Asia',
1566
- key: '0',
1567
- children: [
1568
- {
1569
- label: 'China',
1570
- value: 'China',
1571
- key: '0-0',
1572
- children: [
1573
- {
1574
- label: 'Beijing',
1575
- value: 'Beijing',
1576
- key: '0-0-0',
1577
- },
1578
- {
1579
- label: 'Chengdu',
1580
- value: 'Chengdu',
1581
- key: '0-0-2',
1582
- },
1583
- {
1584
- label: 'Shanghai',
1585
- value: 'Shanghai',
1586
- key: '0-0-1',
1587
- disabled: true,
1588
- },
1589
- ],
1590
- },
1591
- {
1592
- label: 'Japan',
1593
- value: 'Japan',
1594
- key: '0-1',
1595
- children: [
1596
- {
1597
- label: 'Osaka',
1598
- value: 'Osaka',
1599
- key: '0-1-0',
1600
- },
1601
- ],
1602
- },
1603
- ],
1604
- },
1605
- ]}
1606
- multiple
1607
- defaultExpandAll
1608
- disableStrictly
1609
- />
1610
- <span> disable China(checked) - Shanghai </span>
1611
- <Tree
1612
- treeData={[
1613
- {
1614
- label: 'Asia',
1615
- value: 'Asia',
1616
- key: '0',
1617
- children: [
1618
- {
1619
- label: 'China',
1620
- value: 'China',
1621
- key: '0-0',
1622
- disabled: true,
1623
- children: [
1624
- {
1625
- label: 'Beijing',
1626
- value: 'Beijing',
1627
- key: '0-0-0',
1628
- },
1629
- {
1630
- label: 'Shanghai',
1631
- value: 'Shanghai',
1632
- key: '0-0-1',
1633
- disabled: true,
1634
- },
1635
- ],
1636
- },
1637
- {
1638
- label: 'Japan',
1639
- value: 'Japan',
1640
- key: '0-1',
1641
- children: [
1642
- {
1643
- label: 'Osaka',
1644
- value: 'Osaka',
1645
- key: '0-1-0',
1646
- },
1647
- ],
1648
- },
1649
- ],
1650
- },
1651
- ]}
1652
- defaultValue="China"
1653
- multiple
1654
- defaultExpandAll
1655
- disableStrictly
1656
- />
1657
- <span> disable China </span>
1658
- <Tree
1659
- treeData={[
1660
- {
1661
- label: 'Asia',
1662
- value: 'Asia',
1663
- key: '0',
1664
- children: [
1665
- {
1666
- label: 'China',
1667
- value: 'China',
1668
- key: '0-0',
1669
- disabled: true,
1670
- children: [
1671
- {
1672
- label: 'Beijing',
1673
- value: 'Beijing',
1674
- key: '0-0-0',
1675
- },
1676
- {
1677
- label: 'Shanghai',
1678
- value: 'Shanghai',
1679
- key: '0-0-1',
1680
- },
1681
- ],
1682
- },
1683
- {
1684
- label: 'Japan',
1685
- value: 'Japan',
1686
- key: '0-1',
1687
- children: [
1688
- {
1689
- label: 'Osaka',
1690
- value: 'Osaka',
1691
- key: '0-1-0',
1692
- },
1693
- ],
1694
- },
1695
- ],
1696
- },
1697
- ]}
1698
- multiple
1699
- defaultExpandAll
1700
- disableStrictly
1701
- />
1702
- </>
1703
- );
1704
- };
1705
-
1706
- export const DisableStrictly = () => <DisabledStrictly />;
1707
-
1708
- DisableStrictly.story = {
1709
- name: 'disableStrictly',
1710
- };
1711
-
1712
- const ActionTree = () => {
1713
- let initData = [
1714
- {
1715
- label: 'Asia',
1716
- value: 'Asia',
1717
- key: 'asia',
1718
- children: [
1719
- {
1720
- label: 0,
1721
- value: `${0}`,
1722
- key: `${0}`,
1723
- },
1724
- {
1725
- label: 1,
1726
- value: `${1}`,
1727
- key: `${1}`,
1728
- },
1729
- {
1730
- label: 2,
1731
- value: `${2}`,
1732
- key: `${2}`,
1733
- },
1734
- {
1735
- label: 3,
1736
- value: `${3}`,
1737
- key: `${3}`,
1738
- },
1739
- {
1740
- label: 4,
1741
- value: `${4}`,
1742
- key: `${4}`,
1743
- },
1744
- ],
1745
- },
1746
- ];
1747
-
1748
- const [data, setData] = useState(initData);
1749
-
1750
- const remove = key => {
1751
- let ind = data[0].children.findIndex(item => item.key === key);
1752
- if (ind >= 0) {
1753
- let items = cloneDeep(data);
1754
- items[0].children.splice(ind, 1);
1755
- setData(items);
1756
- }
1757
- };
1758
-
1759
- return (
1760
- <Tree
1761
- treeData={cloneDeep(data)}
1762
- renderLabel={(label, data) => (
1763
- <div>
1764
- {label}
1765
- <Button onClick={() => remove(data.key)}>remove</Button>
1766
- </div>
1767
- )}
1768
- />
1769
- );
1770
- };
1771
-
1772
- export const DeleteOrAddChildNode = () => <ActionTree />;
1773
-
1774
- DeleteOrAddChildNode.story = {
1775
- name: 'Delete or Add Child Node',
1776
- };
1777
-
1778
- const MutipleHLTree = () => {
1779
- const [selected, setSelected] = useState(new Set());
1780
- const [selectedThroughParent, setSelectedThroughParent] = useState(new Set());
1781
-
1782
- const findDescendantKeys = node => {
1783
- let res = [node.key];
1784
- const findChild = item => {
1785
- if (!item) return;
1786
- const { children } = item;
1787
-
1788
- if (children && children.length) {
1789
- children.forEach(child => {
1790
- res.push(child.key);
1791
- findChild(child);
1792
- });
1793
- }
1794
- };
1795
- findChild(node);
1796
- return res;
1797
- };
1798
-
1799
- const handleSelect = (key, bool, node) => {
1800
- setSelected(new Set([key]));
1801
- const descendantKeys = findDescendantKeys(node);
1802
- setSelectedThroughParent(new Set(descendantKeys));
1803
- };
1804
-
1805
- const renderLabel = ({ className, data, onClick, expandIcon }) => {
1806
- const { label, icon, key } = data;
1807
- const isLeaf = !(data.children && data.children.length);
1808
- const style = {
1809
- backgroundColor: selected.has(key)
1810
- ? 'rgba(var(--semi-blue-0), 1)'
1811
- : selectedThroughParent.has(key)
1812
- ? 'rgba(var(--semi-blue-0), .5)'
1813
- : 'transparent',
1814
- };
1815
- return (
1816
- <li className={className} role="treeitem" onClick={onClick} style={style}>
1817
- {isLeaf ? null : expandIcon}
1818
- {icon ? icon : null}
1819
- <span>{label}</span>
1820
- </li>
1821
- );
1822
- };
1823
-
1824
- const treeStyle = {
1825
- width: 260,
1826
- height: 420,
1827
- border: '1px solid var(--semi-color-border)',
1828
- };
1829
- return (
1830
- <Tree
1831
- treeData={treeData1}
1832
- renderFullLabel={renderLabel}
1833
- onSelect={handleSelect}
1834
- style={treeStyle}
1835
- />
1836
- );
1837
- };
1838
-
1839
- export const RenderOuterLable = () => <MutipleHLTree />;
1840
-
1841
- RenderOuterLable.story = {
1842
- name: 'renderOuterLable',
1843
- };
1844
-
1845
- export const TreeWithoutValueProps = () => (
1846
- <Tree
1847
- treeData={treeDataWithoutValue}
1848
- value="meiguo"
1849
- defaultExpandAll
1850
- onChange={(...args) => console.log(args)}
1851
- />
1852
- );
1853
-
1854
- TreeWithoutValueProps.story = {
1855
- name: 'tree without value props',
1856
- };
1857
-
1858
- const DnDTree = () => {
1859
- const initialData = [
1860
- {
1861
- label: 'Asia',
1862
- value: 'Asia',
1863
- key: '0',
1864
- children: [
1865
- {
1866
- label: 'China',
1867
- value: 'China',
1868
- key: '0-0',
1869
- children: [
1870
- {
1871
- label: 'Beijing',
1872
- value: 'Beijing',
1873
- key: '0-0-0',
1874
- },
1875
- {
1876
- label: 'Shanghai',
1877
- value: 'Shanghai',
1878
- key: '0-0-1',
1879
- },
1880
- ],
1881
- },
1882
- {
1883
- label: 'Japan',
1884
- value: 'Japan',
1885
- key: '0-1',
1886
- children: [
1887
- {
1888
- label: 'Osaka',
1889
- value: 'Osaka',
1890
- key: '0-1-0',
1891
- },
1892
- ],
1893
- },
1894
- ],
1895
- },
1896
- {
1897
- label: 'North America',
1898
- value: 'North America',
1899
- key: '1',
1900
- children: [
1901
- {
1902
- label: 'United States',
1903
- value: 'United States',
1904
- key: '1-0',
1905
- },
1906
- {
1907
- label: 'Canada',
1908
- value: 'Canada',
1909
- key: '1-1',
1910
- },
1911
- ],
1912
- },
1913
- {
1914
- label: 'Europe',
1915
- value: 'Europe',
1916
- key: '2',
1917
- },
1918
- ];
1919
-
1920
- const [treeData, setTreeData] = useState(initialData);
1921
-
1922
- // const [expandedKeys, setExpandedKeys] = useState(['zhongguo']);
1923
-
1924
- function onDragEnter(info) {
1925
- console.log(info);
1926
- // if in controlled expandedKeys mode
1927
- // setExpandedKeys(info.expandedKeys)
1928
- }
1929
-
1930
- function onDrop(info) {
1931
- const { dropToGap, node, dragNode } = info;
1932
- const dropKey = node.key;
1933
- const dragKey = dragNode.key;
1934
- const dropPos = node.pos.split('-');
1935
- const dropPosition = info.dropPosition - Number(dropPos[dropPos.length - 1]);
1936
- const data = [...treeData];
1937
- const loop = (data, key, callback) => {
1938
- data.forEach((item, ind, arr) => {
1939
- if (item.key === key) return callback(item, ind, arr);
1940
- if (item.children) return loop(item.children, key, callback);
1941
- });
1942
- };
1943
-
1944
- let dragObj;
1945
- loop(data, dragKey, (item, ind, arr) => {
1946
- arr.splice(ind, 1);
1947
- dragObj = item;
1948
- });
1949
-
1950
- if (!dropToGap) {
1951
- // inset into the dropPosition
1952
- loop(data, dropKey, (item, ind, arr) => {
1953
- item.children = item.children || [];
1954
- item.children.push(dragObj);
1955
- });
1956
- } else if (dropPosition === 1 && node.children && node.expanded) {
1957
- // has children && expanded and drop into the node bottom gap
1958
- // insert to the top 这里我们添加在头部,可以是任意位置
1959
- loop(data, dropKey, item => {
1960
- item.children = item.children || [];
1961
- item.children.unshift(dragObj);
1962
- });
1963
- } else {
1964
- let dropNodeInd;
1965
- let dropNodePosArr;
1966
- loop(data, dropKey, (item, ind, arr) => {
1967
- dropNodePosArr = arr;
1968
- dropNodeInd = ind;
1969
- });
1970
- if (dropPosition === -1) {
1971
- // insert to top
1972
- dropNodePosArr.splice(dropNodeInd, 0, dragObj);
1973
- } else {
1974
- // insert to bottom
1975
- dropNodePosArr.splice(dropNodeInd + 1, 0, dragObj);
1976
- }
1977
- }
1978
- setTreeData(data);
1979
- }
1980
-
1981
- return (
1982
- <Tree
1983
- treeData={treeData}
1984
- draggable
1985
- //expandedKeys={expandedKeys}
1986
- onDragEnter={onDragEnter}
1987
- onDrop={onDrop}
1988
- />
1989
- );
1990
- };
1991
-
1992
- export const DraggableTree = () => <DnDTree />;
1993
-
1994
- DraggableTree.story = {
1995
- name: 'draggable Tree',
1996
- };
1997
-
1998
- const TestTree = () => {
1999
- return (
2000
- <Tree
2001
- treeData={testData}
2002
- // motion={false}
2003
- style={{ height: '100%' }}
2004
- filterTreeNode
2005
- expandAction="click"
2006
- showFilteredOnly
2007
- />
2008
- );
2009
- };
2010
-
2011
- export const Draggable = () => <TestTree />;
2012
-
2013
- Draggable.story = {
2014
- name: 'draggable',
2015
- };
2016
-
2017
- export const RenderFullLabelWithDraggable = () => {
2018
- const [selected, setSelected] = useState(new Set());
2019
- const [selectedThroughParent, setSelectedThroughParent] = useState(new Set());
2020
- const defaultTreeData = [
2021
- {
2022
- label: '黑色固定按钮',
2023
- key: 'fix-btn-0',
2024
- },
2025
- {
2026
- label: '模块',
2027
- key: 'module-0',
2028
- children: [
2029
- {
2030
- label: '可自由摆放的组件',
2031
- key: 'free-compo-0',
2032
- },
2033
- {
2034
- label: '分栏容器',
2035
- key: 'split-col-0',
2036
- children: [
2037
- {
2038
- label: '按钮组件',
2039
- key: 'btn-0',
2040
- },
2041
- {
2042
- label: '按钮组件',
2043
- key: 'btn-1',
2044
- },
2045
- ],
2046
- },
2047
- ],
2048
- },
2049
- {
2050
- label: '模块',
2051
- key: 'module-1',
2052
- children: [
2053
- {
2054
- label: '自定义组件',
2055
- key: 'cus-0',
2056
- },
2057
- ],
2058
- },
2059
- ];
2060
- const [treeData, setTreeData] = useState(defaultTreeData);
2061
-
2062
- const onDrop = info => {
2063
- const { dropToGap, node, dragNode } = info;
2064
- const dropKey = node.key;
2065
- const dragKey = dragNode.key;
2066
- const dropPos = node.pos.split('-');
2067
- const dropPosition = info.dropPosition - Number(dropPos[dropPos.length - 1]);
2068
-
2069
- const data = [...treeData];
2070
- const loop = (data, key, callback) => {
2071
- data.forEach((item, ind, arr) => {
2072
- if (item.key === key) return callback(item, ind, arr);
2073
- if (item.children) return loop(item.children, key, callback);
2074
- });
2075
- };
2076
-
2077
- let dragObj;
2078
- loop(data, dragKey, (item, ind, arr) => {
2079
- arr.splice(ind, 1);
2080
- dragObj = item;
2081
- });
2082
-
2083
- if (!dropToGap) {
2084
- loop(data, dropKey, (item, ind, arr) => {
2085
- item.children = item.children || [];
2086
- item.children.push(dragObj);
2087
- });
2088
- } else if (dropPosition === 1 && node.children && node.expanded) {
2089
- loop(data, dropKey, item => {
2090
- item.children = item.children || [];
2091
- item.children.unshift(dragObj);
2092
- });
2093
- } else {
2094
- let dropNodeInd;
2095
- let dropNodePosArr;
2096
- loop(data, dropKey, (item, ind, arr) => {
2097
- dropNodePosArr = arr;
2098
- dropNodeInd = ind;
2099
- });
2100
- if (dropPosition === -1) {
2101
- dropNodePosArr.splice(dropNodeInd, 0, dragObj);
2102
- } else {
2103
- dropNodePosArr.splice(dropNodeInd + 1, 0, dragObj);
2104
- }
2105
- }
2106
- setTreeData(data);
2107
- };
2108
-
2109
- const findDescendantKeys = node => {
2110
- let res = [node.key];
2111
- const findChild = item => {
2112
- if (!item) return;
2113
- const { children } = item;
2114
-
2115
- if (children && children.length) {
2116
- children.forEach(child => {
2117
- res.push(child.key);
2118
- findChild(child);
2119
- });
2120
- }
2121
- };
2122
- findChild(node);
2123
- return res;
2124
- };
2125
-
2126
- const handleSelect = (key, bool, node) => {
2127
- setSelected(new Set([key]));
2128
- const descendantKeys = findDescendantKeys(node);
2129
- setSelectedThroughParent(new Set(descendantKeys));
2130
- };
2131
-
2132
- const renderLabel = ({ className, data, onClick, expandIcon }) => {
2133
- const { label, icon, key } = data;
2134
- const isLeaf = !(data.children && data.children.length);
2135
- const style = {
2136
- backgroundColor: selected.has(key)
2137
- ? 'rgba(var(--semi-blue-0), 1)'
2138
- : selectedThroughParent.has(key)
2139
- ? 'rgba(var(--semi-blue-0), .5)'
2140
- : 'transparent',
2141
- };
2142
- return (
2143
- <li className={className} role="treeitem" onClick={onClick} style={style}>
2144
- {isLeaf ? <span style={{ width: 24 }}></span> : expandIcon}
2145
- {icon ? icon : null}
2146
- <span>{label}</span>
2147
- </li>
2148
- );
2149
- };
2150
-
2151
- const treeStyle = {
2152
- height: 420,
2153
- border: '1px solid var(--semi-color-border)',
2154
- };
2155
-
2156
- return (
2157
- <Tree
2158
- treeData={treeData}
2159
- draggable
2160
- onDrop={onDrop}
2161
- renderFullLabel={renderLabel}
2162
- onSelect={handleSelect}
2163
- style={treeStyle}
2164
- defaultExpandAll
2165
- />
2166
- );
2167
- };
2168
-
2169
- RenderFullLabelWithDraggable.story = {
2170
- name: 'renderFullLabel with draggable',
2171
- };
2172
-
2173
- export const CheckRelationDemo = () => {
2174
- const treeData = [
2175
- {
2176
- label: 'Asia',
2177
- value: 'Asia',
2178
- key: '0',
2179
- children: [
2180
- {
2181
- label: 'China',
2182
- value: 'China',
2183
- key: '0-0',
2184
- children: [
2185
- {
2186
- label: 'Beijing',
2187
- value: 'Beijing',
2188
- key: '0-0-0',
2189
- },
2190
- {
2191
- label: 'Shanghai',
2192
- value: 'Shanghai',
2193
- key: '0-0-1',
2194
- },
2195
- {
2196
- label: 'Chengdu',
2197
- value: 'Chengdu',
2198
- key: '0-0-2',
2199
- },
2200
- ],
2201
- },
2202
- {
2203
- label: 'Japan',
2204
- value: 'Japan',
2205
- key: '0-1',
2206
- children: [
2207
- {
2208
- label: 'Osaka',
2209
- value: 'Osaka',
2210
- key: '0-1-0'
2211
- }
2212
- ]
2213
- },
2214
- ],
2215
- },
2216
- {
2217
- label: 'North America',
2218
- value: 'North America',
2219
- key: '1',
2220
- children: [
2221
- {
2222
- label: 'United States',
2223
- value: 'United States',
2224
- key: '1-0'
2225
- },
2226
- {
2227
- label: 'Canada',
2228
- value: 'Canada',
2229
- key: '1-1'
2230
- }
2231
- ]
2232
- }
2233
- ];
2234
- const [value, setValue] = useState('China');
2235
- const [value2, setValue2] = useState();
2236
- const [value3, setValue3] = useState();
2237
- const style = {
2238
- width: 260,
2239
- height: 420,
2240
- border: '1px solid var(--semi-color-border)'
2241
- };
2242
- const handleChange = value => {
2243
- console.log(value);
2244
- setValue(value);
2245
- };
2246
- const handleChange2 = value => {
2247
- console.log(value);
2248
- setValue2(value);
2249
- };
2250
- const handleChange3 = value => {
2251
- console.log(value);
2252
- setValue3(value);
2253
- };
2254
- return (
2255
- <>
2256
- <div>checkRelation='unRelated'</div>
2257
- <Tree
2258
- treeData={treeData}
2259
- multiple
2260
- checkRelation='unRelated'
2261
- defaultExpandAll
2262
- style={style}
2263
- />
2264
- <br /><br />
2265
- <div>checkRelation='unRelated' + 中国节点为 disabled</div>
2266
- <Tree
2267
- treeData={treeData1}
2268
- multiple
2269
- checkRelation='unRelated'
2270
- defaultExpandAll
2271
- style={style}
2272
- />
2273
- <br /><br />
2274
- <div>checkRelation='unRelated' + 中国节点为 disabled + 严格禁用</div>
2275
- <Tree
2276
- treeData={treeData1}
2277
- multiple
2278
- checkRelation='unRelated'
2279
- defaultExpandAll
2280
- disableStrictly
2281
- style={style}
2282
- />
2283
- <br /><br />
2284
- <div>checkRelation='unRelated' + defaultValue 为 China</div>
2285
- <Tree
2286
- treeData={treeData}
2287
- multiple
2288
- checkRelation='unRelated'
2289
- defaultExpandAll
2290
- style={style}
2291
- defaultValue='China'
2292
- />
2293
- <br /><br />
2294
- <div>checkRelation='unRelated' + 受控 + value 初始为 China</div>
2295
- <Tree
2296
- treeData={treeData}
2297
- multiple
2298
- checkRelation='unRelated'
2299
- defaultExpandAll
2300
- style={style}
2301
- value={value}
2302
- onChange={handleChange}
2303
- />
2304
- <br /><br />
2305
- <div>checkRelation='unRelated' + 受控 + onChangeWithObject</div>
2306
- <Tree
2307
- treeData={treeData}
2308
- multiple
2309
- checkRelation='unRelated'
2310
- defaultExpandAll
2311
- style={style}
2312
- value={value2}
2313
- onChangeWithObject
2314
- onChange={handleChange2}
2315
- />
2316
- <br /><br />
2317
- <div>checkRelation='unRelated' + 受控 + leafOnly,此时 leafOnly 失效</div>
2318
- <Tree
2319
- leafOnly
2320
- treeData={treeData}
2321
- multiple
2322
- checkRelation='unRelated'
2323
- defaultExpandAll
2324
- style={style}
2325
- value={value3}
2326
- onChange={handleChange3}
2327
- />
2328
- <br /><br />
2329
- <div>checkRelation='unRelated' + onSelect </div>
2330
- <Tree
2331
- treeData={treeData}
2332
- multiple
2333
- checkRelation='unRelated'
2334
- defaultExpandAll
2335
- style={style}
2336
- onSelect={(value,status,node)=>console.log('select', value, status, node)}
2337
- />
2338
- </>
2339
- );
2340
- };
2341
-
2342
- export const ValueImpactExpansionWithDynamicTreeData = () => {
2343
- const json = {
2344
- "Node0": {
2345
- "Child Node0-0": '0-0',
2346
- "Child Node0-1": '0-1',
2347
- },
2348
- "Node1": {
2349
- "Child Node1-0": '1-0',
2350
- "Child Node1-1": '1-1',
2351
- }
2352
- }
2353
- const json2 = {
2354
- "Updated Node0": {
2355
- "Updated Child Node0-0": {
2356
- 'Updated Child Node0-0-0':'0-0'
2357
- },
2358
- "Updated Child Node0-1": '0-1',
2359
- },
2360
- "Updated Node1": {
2361
- "Updated Child Node1-0": '1-0',
2362
- "Updated Child Node1-1": '1-1',
2363
- }
2364
- }
2365
- const style = {
2366
- width: 260,
2367
- height: 420,
2368
- border: '1px solid var(--color-border)'
2369
- }
2370
- const [value, setValue] = useState('0-0')
2371
- const [tree, setTree] = useState(json);
2372
- const handleValueButtonClick = () => {
2373
- if (value === '0-0') {
2374
- setValue('1-0');
2375
- } else {
2376
- setValue('0-0');
2377
- }
2378
- }
2379
- const handleTreeDataButtonClick = () => {
2380
- if(isEqual(tree, json)){
2381
- setTree(json2);
2382
- } else {
2383
- setTree(json);
2384
- }
2385
- }
2386
- return (
2387
- <>
2388
- <div>value 受控时,当 treeData/treeDataSimpleJson 改变时,应该根据 value 自动展开</div>
2389
- <Tree
2390
- value={value}
2391
- treeDataSimpleJson={tree}
2392
- style={style}
2393
- onChange={v => setValue(v)}
2394
- />
2395
- <Space>
2396
- <Button onClick={handleValueButtonClick}>改变 value</Button>
2397
- <Button onClick={handleTreeDataButtonClick}>改变 TreeData</Button>
2398
- </Space>
2399
- </>
2400
- )
2401
- }
2402
-
2403
- class DemoV extends React.Component {
2404
- constructor() {
2405
- super();
2406
- this.state = {
2407
- gData: [],
2408
- total: 0,
2409
- align: 'center',
2410
- scrollKey: '',
2411
- expandAll: false,
2412
- };
2413
- this.onGen = this.onGen.bind(this);
2414
- this.onScroll = this.onScroll.bind(this);
2415
- this.onInputChange = this.onInputChange.bind(this);
2416
- this.onInputBlur = this.onInputBlur.bind(this);
2417
- this.onSelectChange = this.onSelectChange.bind(this);
2418
- this.treeRef = React.createRef();
2419
- }
2420
-
2421
- generateData(x = 5, y = 4, z = 3, gData = []) {
2422
- // x:每一级下的节点总数。y:每级节点里有y个节点、存在子节点。z:树的level层级数(0表示一级)
2423
- function _loop(_level, _preKey, _tns) {
2424
- const preKey = _preKey || '0';
2425
- const tns = _tns || gData;
2426
-
2427
- const children = [];
2428
- for (let i = 0; i < x; i++) {
2429
- const key = `${preKey}-${i}`;
2430
- tns.push({ label: `${key}-标签`, key: `${key}-key`, value: `${key}-value` });
2431
- if (i < y) {
2432
- children.push(key);
2433
- }
2434
- }
2435
- if (_level < 0) {
2436
- return tns;
2437
- }
2438
- const __level = _level - 1;
2439
- children.forEach((key, index) => {
2440
- tns[index].children = [];
2441
- return _loop(__level, key, tns[index].children);
2442
- });
2443
-
2444
- return null;
2445
- }
2446
- _loop(z);
2447
-
2448
- function calcTotal(x, y, z) {
2449
- const rec = n => (n >= 0 ? x * y ** n-- + rec(n) : 0);
2450
- return rec(z + 1);
2451
- }
2452
- return { gData, total: calcTotal(x, y, z) };
2453
- }
2454
-
2455
- onGen() {
2456
- const { gData, total } = this.generateData();
2457
- this.setState({
2458
- gData,
2459
- total
2460
- });
2461
- };
2462
-
2463
- onScroll(scrollKey, align) {
2464
- this.treeRef?.current.scrollTo({ key: scrollKey, align});
2465
- }
2466
-
2467
- onInputChange(value) {
2468
- this.setState({
2469
- scrollKey: value,
2470
- })
2471
- }
2472
-
2473
- onInputBlur(e) {
2474
- const { value } = e.target;
2475
- this.onScroll(value, this.state.align);
2476
- }
2477
-
2478
- onSelectChange(align){
2479
- this.setState({
2480
- align: align,
2481
- })
2482
- this.onScroll(this.state.scrollKey, align);
2483
- }
2484
-
2485
- render() {
2486
- const style = {
2487
- width: 260,
2488
- border: '1px solid var(--semi-color-border)'
2489
- };
2490
- return (
2491
- <div style={{ padding: '0 20px' }}>
2492
- <Button onClick={this.onGen}>生成数据: </Button>
2493
- <span>共 {this.state.total} 个节点</span>
2494
- <br/>
2495
- <br/>
2496
- <div style={{ display: 'flex', alignItems: 'center', }}>
2497
- <span>defaultExpandAll</span>
2498
- <Switch onChange={(value) => {
2499
- this.setState({
2500
- expandAll: value,
2501
- })
2502
- }}/>
2503
- </div>
2504
- <br/>
2505
- <span>跳转的key:</span>
2506
- <Input
2507
- placeholder={'格式:x-x-key'}
2508
- style={{ width: 180, marginRight: 20 }}
2509
- onChange={this.onInputChange}
2510
- onBlur={this.onInputBlur}
2511
- ></Input>
2512
- <span>scroll align:</span>
2513
- <Select
2514
- defaultValue='center'
2515
- style={{ width: 180 }}
2516
- optionList={['center', 'start', 'end', 'smart', 'auto'].map(item => ({
2517
- value: item,
2518
- label: item,
2519
- }))}
2520
- onChange={this.onSelectChange}
2521
- >
2522
- </Select>
2523
- <br />
2524
- <br />
2525
- {this.state.gData.length ? (
2526
- <Tree
2527
- key={`key-${this.state.expandAll}`}
2528
- ref={this.treeRef}
2529
- defaultExpandAll={this.state.expandAll}
2530
- treeData={this.state.gData}
2531
- filterTreeNode
2532
- showFilteredOnly
2533
- style={style}
2534
- virtualize={{
2535
- // if set height for tree, it will fill 100%
2536
- height: 300,
2537
- itemSize: 28,
2538
- }}
2539
- />
2540
- ) : null}
2541
- </div>
2542
- );
2543
- }
2544
- }
2545
-
2546
- export const virtualizeTree = () => <DemoV />;
2547
-
2548
- virtualizeTree.story = {
2549
- name: 'virtualize tree',
2550
- };