tntd 3.0.40 → 3.0.41-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1088) hide show
  1. package/es/_util/context.js +11 -16
  2. package/es/_util/defaultRenderEmpty.js +13 -36
  3. package/es/_util/hooks/useFlexGapSupport.js +10 -27
  4. package/es/_util/hooks/useForceUpdate.js +6 -24
  5. package/es/_util/motion.js +33 -51
  6. package/es/_util/reactNode.js +13 -24
  7. package/es/_util/responsiveObserve.js +56 -68
  8. package/es/_util/styleChecker.js +26 -39
  9. package/es/_util/type.js +3 -18
  10. package/es/_util/warning.js +6 -19
  11. package/es/actions/index.js +11 -32
  12. package/es/affix/index.js +5 -24
  13. package/es/affix/style/index.js +3 -4
  14. package/es/alert/alert.js +48 -82
  15. package/es/alert/index.js +5 -23
  16. package/es/alert/style/index.js +3 -4
  17. package/es/anchor/index.js +5 -24
  18. package/es/anchor/style/index.js +5 -5
  19. package/es/array-input/index.js +183 -364
  20. package/es/auth-context/index.js +3 -10
  21. package/es/auto-complete/index.js +5 -24
  22. package/es/auto-complete/style/index.js +6 -6
  23. package/es/avatar/index.js +5 -24
  24. package/es/avatar/style/index.js +3 -4
  25. package/es/back-top/index.js +5 -24
  26. package/es/back-top/style/index.js +3 -4
  27. package/es/badge/index.js +5 -24
  28. package/es/badge/style/index.js +3 -4
  29. package/es/breadcrumb/index.js +5 -24
  30. package/es/breadcrumb/style/index.js +5 -6
  31. package/es/button/button.js +36 -73
  32. package/es/button/index.js +6 -22
  33. package/es/button/style/index.js +3 -4
  34. package/es/calendar/index.js +5 -24
  35. package/es/calendar/style/index.js +6 -6
  36. package/es/card/card.js +22 -45
  37. package/es/card/index.js +5 -21
  38. package/es/card/style/index.js +7 -7
  39. package/es/carousel/index.js +5 -24
  40. package/es/carousel/style/index.js +3 -4
  41. package/es/cascader/cascader.js +25 -47
  42. package/es/cascader/index.js +6 -25
  43. package/es/cascader/style/index.js +6 -6
  44. package/es/check-card/group.js +144 -226
  45. package/es/check-card/index.js +115 -168
  46. package/es/checkbox/checkbox.js +32 -61
  47. package/es/checkbox/index.js +6 -25
  48. package/es/checkbox/style/index.js +3 -4
  49. package/es/col/index.js +5 -24
  50. package/es/col/style/index.js +5 -4
  51. package/es/collapse/index.js +6 -25
  52. package/es/collapse/style/index.js +3 -4
  53. package/es/color-picker/ColorPicker.js +89 -155
  54. package/es/color-picker/index.js +11 -21
  55. package/es/columns/index.js +35 -78
  56. package/es/columns/style/index.js +2 -1
  57. package/es/comment/index.js +5 -24
  58. package/es/comment/style/index.js +3 -4
  59. package/es/config-provider/DisabledContext.js +7 -19
  60. package/es/config-provider/SizeContext.js +5 -21
  61. package/es/config-provider/config-provider.js +3 -13
  62. package/es/config-provider/index.js +6 -36
  63. package/es/config-provider/style/index.js +2 -3
  64. package/es/connect/index.js +24 -42
  65. package/es/date-picker/DatePicker.js +48 -123
  66. package/es/date-picker/index.js +11 -16
  67. package/es/date-picker/style/index.js +8 -7
  68. package/es/descriptions/descriptions.js +73 -140
  69. package/es/descriptions/index.js +6 -22
  70. package/es/descriptions/style/index.js +3 -4
  71. package/es/development-login/LoginModal.js +54 -112
  72. package/es/development-login/index.js +11 -44
  73. package/es/divider/index.js +5 -24
  74. package/es/divider/style/index.js +3 -4
  75. package/es/drawer/drawer.js +73 -144
  76. package/es/drawer/index.js +6 -23
  77. package/es/drawer/style/index.js +5 -5
  78. package/es/dropdown/index.js +5 -24
  79. package/es/dropdown/style/index.js +5 -5
  80. package/es/dropdown/style/index.less +1 -0
  81. package/es/ellipsis/Svg/CopySVG.js +17 -71
  82. package/es/ellipsis/Svg/TickSVG.js +12 -49
  83. package/es/ellipsis/index.js +112 -181
  84. package/es/empty/empty.js +57 -89
  85. package/es/empty/empty.stories.js +14 -20
  86. package/es/empty/index.js +6 -22
  87. package/es/empty/style/index.js +3 -4
  88. package/es/exception/exception.js +25 -46
  89. package/es/exception/index.js +5 -21
  90. package/es/form/form.js +58 -95
  91. package/es/form/index.js +5 -21
  92. package/es/form/style/index.js +5 -5
  93. package/es/form/style/index.less +5 -5
  94. package/es/grid/index.js +5 -24
  95. package/es/grid/style/index.js +3 -4
  96. package/es/grid-v4/RowContext.js +4 -9
  97. package/es/grid-v4/col.js +70 -92
  98. package/es/grid-v4/hooks/useBreakpoint.js +18 -27
  99. package/es/grid-v4/index.js +10 -27
  100. package/es/grid-v4/row.js +132 -174
  101. package/es/grid-v4/style/index.js +3 -3
  102. package/es/handle/index.js +103 -171
  103. package/es/handle-icon/index.js +147 -212
  104. package/es/icon/IconFont.js +50 -58
  105. package/es/icon/components/Icon.js +75 -130
  106. package/es/icon/components/index.js +2 -13
  107. package/es/icon/components/utils.js +68 -107
  108. package/es/icon/index.js +91 -118
  109. package/es/icon/style/index.js +4 -5
  110. package/es/icon/twoTonePrimaryColor.js +10 -17
  111. package/es/icon/utils.js +63 -68
  112. package/es/icon-list/index.js +120 -7
  113. package/es/icon-old/index.js +5 -24
  114. package/es/icon-old/style/index.js +3 -4
  115. package/es/img/Contain.js +41 -68
  116. package/es/img/Cover.js +75 -116
  117. package/es/img/index.js +35 -74
  118. package/es/index.js +112 -727
  119. package/es/index.js.map +1 -1
  120. package/es/input/index.js +6 -22
  121. package/es/input/input.js +62 -97
  122. package/es/input/style/index.js +5 -5
  123. package/es/input-number/index.js +6 -25
  124. package/es/input-number/inputNumber.js +26 -51
  125. package/es/input-number/style/index.js +3 -4
  126. package/es/label/index.js +111 -131
  127. package/es/layout/index.js +5 -24
  128. package/es/layout/style/index.js +3 -4
  129. package/es/list/index.js +5 -24
  130. package/es/list/style/index.js +8 -8
  131. package/es/loading-button/index.js +30 -58
  132. package/es/locale/default.js +6 -12
  133. package/es/locale/en_US.js +78 -85
  134. package/es/locale/index.js +4 -38
  135. package/es/locale/zh_CN.js +71 -77
  136. package/es/locale-provider/index.js +8 -27
  137. package/es/locale-provider/style/index.js +2 -3
  138. package/es/mentions/index.js +5 -24
  139. package/es/mentions/style/index.js +5 -5
  140. package/es/menu/index.js +5 -24
  141. package/es/menu/style/index.js +6 -5
  142. package/es/message/index.js +6 -25
  143. package/es/message/style/index.js +3 -4
  144. package/es/modal/index.js +5 -21
  145. package/es/modal/modal.js +70 -170
  146. package/es/modal/style/index.js +6 -6
  147. package/es/notification/assets/index.js +3 -20
  148. package/es/notification/assets/svg-error-tip.js +33 -152
  149. package/es/notification/assets/svg-success-tip.js +37 -169
  150. package/es/notification/index.js +5 -23
  151. package/es/notification/notification.js +23 -104
  152. package/es/notification/style/index.js +3 -4
  153. package/es/page/Box.js +36 -64
  154. package/es/page/index.js +92 -145
  155. package/es/page/utils.js +14 -22
  156. package/es/page-container/index.js +10 -22
  157. package/es/page-header/index.js +5 -24
  158. package/es/page-header/style/index.js +5 -5
  159. package/es/page-loading/index.js +24 -33
  160. package/es/pagination/index.js +5 -24
  161. package/es/pagination/style/index.js +5 -5
  162. package/es/popconfirm/index.js +5 -24
  163. package/es/popconfirm/popconfirm.js +29 -59
  164. package/es/popconfirm/style/index.js +7 -6
  165. package/es/popover/index.js +5 -24
  166. package/es/popover/popover.js +25 -52
  167. package/es/popover/style/index.js +6 -5
  168. package/es/prev-locale.js +90 -104
  169. package/es/preview-text/index.js +183 -264
  170. package/es/progress/index.js +5 -24
  171. package/es/progress/progress.js +83 -143
  172. package/es/progress/style/index.js +3 -4
  173. package/es/query-form/Field/Checkbox.js +19 -27
  174. package/es/query-form/Field/Checkbox.js.map +1 -1
  175. package/es/query-form/Field/Composition/FieldPopover.js +215 -410
  176. package/es/query-form/Field/Composition/FieldPopover.js.map +1 -1
  177. package/es/query-form/Field/Composition/Select.js +84 -249
  178. package/es/query-form/Field/Composition/SelectInput.js +11 -0
  179. package/es/query-form/Field/Composition/SelectInput.js.map +1 -0
  180. package/es/query-form/Field/Composition/ValueTag.js +77 -232
  181. package/es/query-form/Field/Composition/ValueTag.js.map +1 -1
  182. package/es/query-form/Field/Composition/index.js +208 -409
  183. package/es/query-form/Field/Composition/index.js.map +1 -1
  184. package/es/query-form/Field/Composition/utils.js +116 -160
  185. package/es/query-form/Field/Composition/utils.js.map +1 -1
  186. package/es/query-form/Field/Select.js +43 -79
  187. package/es/query-form/Field/SelectInput.js +51 -87
  188. package/es/query-form/Field/SelectInput.js.map +1 -1
  189. package/es/query-form/Field/fieldsMap.js +47 -52
  190. package/es/query-form/Field/fieldsMap.js.map +1 -1
  191. package/es/query-form/Field/index.js +70 -141
  192. package/es/query-form/Field/index.js.map +1 -1
  193. package/es/query-form/createActions.js +47 -54
  194. package/es/query-form/index.js +165 -381
  195. package/es/query-form/index.js.map +1 -1
  196. package/es/query-form/index.less +26 -60
  197. package/es/query-form/useForm.js +7 -13
  198. package/es/query-list-scene/List.js +272 -359
  199. package/es/query-list-scene/List.js.map +1 -1
  200. package/es/query-list-scene/QueryForm.js +114 -156
  201. package/es/query-list-scene/QueryForm.js.map +1 -1
  202. package/es/query-list-scene/QueryListScene.js +26 -63
  203. package/es/query-list-scene/Title.js +5 -15
  204. package/es/query-list-scene/Toolbar.js +17 -30
  205. package/es/query-list-scene/createActions.js +61 -80
  206. package/es/query-list-scene/index.js +21 -26
  207. package/es/query-list-scene/index.js.map +1 -1
  208. package/es/query-list-scene/useActions.js +7 -13
  209. package/es/radio/index.js +6 -25
  210. package/es/radio/radio.js +33 -63
  211. package/es/radio/style/index.js +3 -4
  212. package/es/rate/index.js +5 -24
  213. package/es/rate/style/index.js +5 -5
  214. package/es/render-empty/index.js +3 -8
  215. package/es/render-empty/render-empty.js +17 -29
  216. package/es/result/index.js +5 -24
  217. package/es/result/style/index.js +3 -4
  218. package/es/row/index.js +5 -24
  219. package/es/row/style/index.js +5 -4
  220. package/es/scroll-bar/Bar.js +47 -167
  221. package/es/scroll-bar/Context.js +6 -16
  222. package/es/scroll-bar/ScrollBar.js +62 -128
  223. package/es/scroll-bar/Thumb.js +106 -200
  224. package/es/scroll-bar/index.js +4 -14
  225. package/es/scroll-bar/util.js +27 -65
  226. package/es/segmented/index.js +43 -69
  227. package/es/select/index.js +6 -23
  228. package/es/select/select.js +40 -63
  229. package/es/select/style/index.js +5 -5
  230. package/es/skeleton/index.js +5 -24
  231. package/es/skeleton/style/index.js +3 -4
  232. package/es/slider/index.js +5 -24
  233. package/es/slider/style/index.js +5 -5
  234. package/es/spin/index.js +6 -22
  235. package/es/spin/spin.js +21 -34
  236. package/es/spin/style/index.js +3 -4
  237. package/es/statistic/index.js +5 -24
  238. package/es/statistic/style/index.js +3 -4
  239. package/es/steps/index.js +6 -22
  240. package/es/steps/steps.js +52 -101
  241. package/es/steps/style/index.js +11 -4
  242. package/es/style/index.js +2 -3
  243. package/es/style/v2-compatible-reset.js +2 -3
  244. package/es/svg-components/illustration-403.js +61 -218
  245. package/es/svg-components/illustration-404.js +78 -302
  246. package/es/svg-components/illustration-500.js +86 -333
  247. package/es/svg-components/illustration-empty.js +18 -66
  248. package/es/svg-components/illustration-failure.js +39 -124
  249. package/es/svg-components/illustration-no-access.js +38 -126
  250. package/es/svg-components/illustration-no-chart.js +40 -146
  251. package/es/svg-components/illustration-no-result.js +35 -104
  252. package/es/svg-components/illustration-offline.js +41 -179
  253. package/es/svg-components/illustration-success.js +46 -149
  254. package/es/svg-components/index.js +11 -76
  255. package/es/switch/index.js +4 -23
  256. package/es/switch/style/index.js +4 -5
  257. package/es/switch/switch.js +36 -67
  258. package/es/table/assets/image-loading-background.js +20 -57
  259. package/es/table/assets/image-loading.js +8 -38
  260. package/es/table/constants.js +2 -7
  261. package/es/table/context.js +3 -8
  262. package/es/table/hooks/index.js +3 -27
  263. package/es/table/hooks/use-column-setting.js +19 -39
  264. package/es/table/hooks/use-column-setting.js.map +1 -1
  265. package/es/table/hooks/use-expand-fixed.js +82 -106
  266. package/es/table/index.js +7 -23
  267. package/es/table/resizableTable/index.js +78 -110
  268. package/es/table/resizableTable/index.js.map +1 -1
  269. package/es/table/resizableTable/index.less +9 -1
  270. package/es/table/style/index.js +11 -10
  271. package/es/table/table-hoc.js +24 -28
  272. package/es/table/table.js +206 -262
  273. package/es/table/table.js.map +1 -1
  274. package/es/table/table.stories.js +366 -586
  275. package/es/table/utils.js +56 -37
  276. package/es/table-container/index.js +11 -25
  277. package/es/tabs/index.js +6 -22
  278. package/es/tabs/style/index.js +3 -4
  279. package/es/tabs/tabPane.js +2 -1
  280. package/es/tabs/tabs.js +58 -92
  281. package/es/tabs-container/index.js +10 -22
  282. package/es/tag/index.js +6 -22
  283. package/es/tag/style/index.js +3 -4
  284. package/es/tag/tag.js +123 -165
  285. package/es/time-picker/TimePicker.js +26 -53
  286. package/es/time-picker/index.js +7 -13
  287. package/es/time-picker/style/index.js +3 -4
  288. package/es/timeline/index.js +5 -24
  289. package/es/timeline/style/index.js +3 -4
  290. package/es/title/index.js +28 -62
  291. package/es/tntd-action/Action.js +75 -138
  292. package/es/tntd-action/index.js +62 -82
  293. package/es/tntd-cascader/AntdCascader/component/DisabledContext.js +7 -19
  294. package/es/tntd-cascader/AntdCascader/component/FormItemInputContext.js +3 -11
  295. package/es/tntd-cascader/AntdCascader/component/SizeContext.js +3 -11
  296. package/es/tntd-cascader/AntdCascader/component/context.js +11 -16
  297. package/es/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js +13 -31
  298. package/es/tntd-cascader/AntdCascader/component/getIcons.js +51 -79
  299. package/es/tntd-cascader/AntdCascader/component/useCompactItemContext.js +24 -32
  300. package/es/tntd-cascader/AntdCascader/config/utils.js +21 -29
  301. package/es/tntd-cascader/AntdCascader/config/warning.js +12 -20
  302. package/es/tntd-cascader/AntdCascader/index.js +136 -214
  303. package/es/tntd-cascader/AntdCascader/interface.js +5 -15
  304. package/es/tntd-cascader/index.js +2 -13
  305. package/es/tntd-cascader/rc-cascader/Cascader.js +262 -330
  306. package/es/tntd-cascader/rc-cascader/OptionList/Checkbox.js +14 -31
  307. package/es/tntd-cascader/rc-cascader/OptionList/Column.js +140 -211
  308. package/es/tntd-cascader/rc-cascader/OptionList/Column.js.map +1 -1
  309. package/es/tntd-cascader/rc-cascader/OptionList/index.js +138 -225
  310. package/es/tntd-cascader/rc-cascader/OptionList/useActive.js +23 -41
  311. package/es/tntd-cascader/rc-cascader/OptionList/useKeyboard.js +141 -180
  312. package/es/tntd-cascader/rc-cascader/context.js +4 -13
  313. package/es/tntd-cascader/rc-cascader/hooks/useDisplayValues.js +41 -64
  314. package/es/tntd-cascader/rc-cascader/hooks/useEntities.js +27 -41
  315. package/es/tntd-cascader/rc-cascader/hooks/useMissingValues.js +19 -28
  316. package/es/tntd-cascader/rc-cascader/hooks/useRefFunc.js +10 -19
  317. package/es/tntd-cascader/rc-cascader/hooks/useSearchConfig.js +25 -33
  318. package/es/tntd-cascader/rc-cascader/hooks/useSearchOptions.js +43 -76
  319. package/es/tntd-cascader/rc-cascader/index.js +3 -9
  320. package/es/tntd-cascader/rc-cascader/index.less +2 -2
  321. package/es/tntd-cascader/rc-cascader/utils/commonUtil.js +36 -53
  322. package/es/tntd-cascader/rc-cascader/utils/treeUtil.js +36 -44
  323. package/es/tntd-cascader/rc-cascader/utils/warningPropsUtil.js +25 -35
  324. package/es/tntd-form/ErrorList.js +50 -101
  325. package/es/tntd-form/Form.js +110 -168
  326. package/es/tntd-form/FormItem/ItemHolder.js +126 -149
  327. package/es/tntd-form/FormItem/index.js +226 -289
  328. package/es/tntd-form/FormItemInput.js +36 -89
  329. package/es/tntd-form/FormItemLabel.js +70 -99
  330. package/es/tntd-form/FormList.js +32 -51
  331. package/es/tntd-form/context.js +32 -46
  332. package/es/tntd-form/hooks/useDebounce.js +14 -31
  333. package/es/tntd-form/hooks/useForm.js +31 -59
  334. package/es/tntd-form/hooks/useFormInstance.js +7 -13
  335. package/es/tntd-form/hooks/useFormItemStatus.js +9 -18
  336. package/es/tntd-form/hooks/useFrameState.js +37 -55
  337. package/es/tntd-form/hooks/useItemRef.js +18 -27
  338. package/es/tntd-form/index.js +17 -26
  339. package/es/tntd-form/interface.js +3 -7
  340. package/es/tntd-form/style/index.js +6 -6
  341. package/es/tntd-form/util.js +17 -21
  342. package/es/tntd-form/validateMessagesContext.js +3 -8
  343. package/es/tntd-icon/fonts/iconfont.js +53 -36
  344. package/es/tntd-icon/index.js +21 -40
  345. package/es/tntd-layout/ActionsContext.js +3 -8
  346. package/es/tntd-layout/AppList.js +199 -175
  347. package/es/tntd-layout/Application.js +86 -77
  348. package/es/tntd-layout/Avatar.js +110 -102
  349. package/es/tntd-layout/CompatibleLanguage.js +155 -130
  350. package/es/tntd-layout/EnterpriseLayout/Avatar.js +120 -118
  351. package/es/tntd-layout/EnterpriseLayout/Language.js +64 -74
  352. package/es/tntd-layout/EnterpriseLayout/Theme.js +78 -72
  353. package/es/tntd-layout/EnterpriseLayout/index.js +13 -28
  354. package/es/tntd-layout/GlobalNavigation/NavigationPopup.js +251 -285
  355. package/es/tntd-layout/GlobalNavigation/index.js +90 -110
  356. package/es/tntd-layout/Header.js +106 -78
  357. package/es/tntd-layout/HeaderActions.js +81 -106
  358. package/es/tntd-layout/HeaderNavs.js +80 -76
  359. package/es/tntd-layout/HeaderTabs.js +289 -222
  360. package/es/tntd-layout/Iconfont.js +4 -12
  361. package/es/tntd-layout/Language.js +51 -71
  362. package/es/tntd-layout/Layout.js +146 -216
  363. package/es/tntd-layout/Logo.js +115 -71
  364. package/es/tntd-layout/OrgAppList.js +363 -240
  365. package/es/tntd-layout/SideMenu.js +383 -269
  366. package/es/tntd-layout/Theme.js +68 -77
  367. package/es/tntd-layout/createActions.js +31 -46
  368. package/es/tntd-layout/images/index.js +62 -67
  369. package/es/tntd-layout/index.js +77 -135
  370. package/es/tntd-layout/paaslayout/CompactSideMenu.js +156 -132
  371. package/es/tntd-layout/paaslayout/Header.js +50 -53
  372. package/es/tntd-layout/paaslayout/Logo.js +23 -16
  373. package/es/tntd-layout/paaslayout/SideMenu.js +121 -132
  374. package/es/tntd-layout/paaslayout/index.js +117 -208
  375. package/es/tntd-layout/storage.js +24 -58
  376. package/es/tntd-modal/index.js +37 -97
  377. package/es/tntd-rc-select/_util/DisabledContext.js +7 -19
  378. package/es/tntd-rc-select/_util/FormItemInputContext.js +3 -11
  379. package/es/tntd-rc-select/_util/PurePanel.js +52 -87
  380. package/es/tntd-rc-select/_util/SizeContext.js +3 -11
  381. package/es/tntd-rc-select/_util/context.js +11 -16
  382. package/es/tntd-rc-select/_util/defaultRenderEmpty.js +13 -36
  383. package/es/tntd-rc-select/_util/getIcons.js +51 -82
  384. package/es/tntd-rc-select/_util/interface.js +5 -15
  385. package/es/tntd-rc-select/_util/motion.js +33 -51
  386. package/es/tntd-rc-select/_util/type.js +3 -18
  387. package/es/tntd-rc-select/_util/useCompactItemContext.js +24 -32
  388. package/es/tntd-rc-select/_util/warning.js +12 -20
  389. package/es/tntd-rc-select/index.js +98 -153
  390. package/es/tntd-reference/AHref/index.js +34 -43
  391. package/es/tntd-reference/ReferenceBatchCheck/index.js +96 -164
  392. package/es/tntd-reference/ReferenceBatchDrawer/index.js +58 -124
  393. package/es/tntd-reference/ReferenceCheck/index.js +71 -125
  394. package/es/tntd-reference/ReferenceDrawer/index.js +43 -91
  395. package/es/tntd-reference/ReferenceInfo/index.js +91 -161
  396. package/es/tntd-reference/index.js +14 -20
  397. package/es/tntd-second-page/index.js +29 -62
  398. package/es/tntd-select/DropDownWrap.js +54 -101
  399. package/es/tntd-select/index.js +524 -651
  400. package/es/tntd-select/index.js.map +1 -1
  401. package/es/tntd-virtual-tree/index.js +199 -307
  402. package/es/tntd-virtual-tree/index.js.map +1 -1
  403. package/es/tntd-virtual-tree/utils.js +183 -263
  404. package/es/tntd-virtual-tree-select/index.js +125 -206
  405. package/es/tntd-virtual-tree-select/utils.js +40 -69
  406. package/es/tooltip/index.js +6 -25
  407. package/es/tooltip/style/index.js +4 -5
  408. package/es/tooltip/tooltip.js +25 -50
  409. package/es/transfer/index.js +5 -24
  410. package/es/transfer/style/index.js +8 -8
  411. package/es/tree/index.js +5 -24
  412. package/es/tree/style/index.js +3 -4
  413. package/es/tree-select/index.js +9 -30
  414. package/es/tree-select/style/index.js +7 -6
  415. package/es/typography/index.js +5 -24
  416. package/es/typography/style/index.js +6 -6
  417. package/es/upload/index.js +116 -220
  418. package/es/upload/style/index.js +6 -6
  419. package/es/upload/svg/UploadSVG.js +14 -44
  420. package/es/utils/checkAuth.js +21 -34
  421. package/es/utils/findMenuInfoByPath.js +32 -41
  422. package/es/utils/index.js +73 -137
  423. package/es/utils/lang.js +121 -84
  424. package/es/version/index.js +5 -24
  425. package/es/version/style/index.js +3 -3
  426. package/es/water-mark/index.js +90 -131
  427. package/lib/_util/context.js +16 -19
  428. package/lib/_util/defaultRenderEmpty.js +39 -69
  429. package/lib/_util/defaultRenderEmpty.js.map +1 -1
  430. package/lib/_util/hooks/useFlexGapSupport.js +33 -98
  431. package/lib/_util/hooks/useForceUpdate.js +29 -94
  432. package/lib/_util/motion.js +36 -50
  433. package/lib/_util/reactNode.js +37 -50
  434. package/lib/_util/responsiveObserve.js +58 -94
  435. package/lib/_util/styleChecker.js +32 -41
  436. package/lib/_util/type.js +6 -16
  437. package/lib/_util/warning.js +30 -48
  438. package/lib/actions/index.js +14 -34
  439. package/lib/affix/index.d.ts +2 -2
  440. package/lib/affix/index.js +21 -52
  441. package/lib/affix/index.js.map +1 -1
  442. package/lib/affix/style/index.js +3 -2
  443. package/lib/alert/alert.d.ts +3 -3
  444. package/lib/alert/alert.js +77 -133
  445. package/lib/alert/alert.js.map +1 -1
  446. package/lib/alert/index.d.ts +1 -1
  447. package/lib/alert/index.js +22 -25
  448. package/lib/alert/index.js.map +1 -1
  449. package/lib/alert/style/index.js +3 -2
  450. package/lib/anchor/index.d.ts +2 -2
  451. package/lib/anchor/index.js +21 -52
  452. package/lib/anchor/index.js.map +1 -1
  453. package/lib/anchor/style/index.js +4 -2
  454. package/lib/array-input/index.js +210 -466
  455. package/lib/array-input/index.js.map +1 -1
  456. package/lib/auth-context/index.js +4 -9
  457. package/lib/auto-complete/index.d.ts +2 -2
  458. package/lib/auto-complete/index.js +21 -52
  459. package/lib/auto-complete/index.js.map +1 -1
  460. package/lib/auto-complete/style/index.js +4 -2
  461. package/lib/avatar/index.d.ts +2 -2
  462. package/lib/avatar/index.js +21 -52
  463. package/lib/avatar/index.js.map +1 -1
  464. package/lib/avatar/style/index.js +3 -2
  465. package/lib/back-top/index.d.ts +2 -2
  466. package/lib/back-top/index.js +21 -52
  467. package/lib/back-top/index.js.map +1 -1
  468. package/lib/back-top/style/index.js +3 -2
  469. package/lib/badge/index.d.ts +2 -2
  470. package/lib/badge/index.js +21 -52
  471. package/lib/badge/index.js.map +1 -1
  472. package/lib/badge/style/index.js +3 -2
  473. package/lib/breadcrumb/index.d.ts +2 -2
  474. package/lib/breadcrumb/index.js +21 -52
  475. package/lib/breadcrumb/index.js.map +1 -1
  476. package/lib/breadcrumb/style/index.js +3 -2
  477. package/lib/button/button.d.ts +3 -3
  478. package/lib/button/button.js +65 -124
  479. package/lib/button/button.js.map +1 -1
  480. package/lib/button/index.js +19 -19
  481. package/lib/button/style/index.js +3 -2
  482. package/lib/calendar/index.d.ts +2 -2
  483. package/lib/calendar/index.js +21 -52
  484. package/lib/calendar/index.js.map +1 -1
  485. package/lib/calendar/style/index.js +4 -2
  486. package/lib/card/card.d.ts +3 -3
  487. package/lib/card/card.js +51 -73
  488. package/lib/card/card.js.map +1 -1
  489. package/lib/card/index.js +19 -19
  490. package/lib/card/style/index.js +4 -2
  491. package/lib/carousel/index.d.ts +2 -2
  492. package/lib/carousel/index.js +21 -52
  493. package/lib/carousel/index.js.map +1 -1
  494. package/lib/carousel/style/index.js +3 -2
  495. package/lib/cascader/cascader.d.ts +3 -3
  496. package/lib/cascader/cascader.js +53 -79
  497. package/lib/cascader/cascader.js.map +1 -1
  498. package/lib/cascader/index.js +21 -52
  499. package/lib/cascader/style/index.js +4 -2
  500. package/lib/check-card/group.js +172 -309
  501. package/lib/check-card/index.js +141 -262
  502. package/lib/checkbox/check.png +0 -0
  503. package/lib/checkbox/checkbox.d.ts +3 -3
  504. package/lib/checkbox/checkbox.js +60 -93
  505. package/lib/checkbox/checkbox.js.map +1 -1
  506. package/lib/checkbox/index.js +21 -52
  507. package/lib/checkbox/style/index.js +3 -2
  508. package/lib/col/index.d.ts +2 -2
  509. package/lib/col/index.js +21 -52
  510. package/lib/col/index.js.map +1 -1
  511. package/lib/col/style/index.js +5 -2
  512. package/lib/collapse/index.d.ts +2 -2
  513. package/lib/collapse/index.js +23 -54
  514. package/lib/collapse/index.js.map +1 -1
  515. package/lib/collapse/style/index.js +3 -2
  516. package/lib/color-picker/ColorPicker.js +115 -248
  517. package/lib/color-picker/index.js +13 -21
  518. package/lib/color-picker/index.js.map +1 -1
  519. package/lib/columns/index.js +42 -82
  520. package/lib/columns/style/index.js +2 -1
  521. package/lib/comment/index.d.ts +2 -2
  522. package/lib/comment/index.js +21 -52
  523. package/lib/comment/index.js.map +1 -1
  524. package/lib/comment/style/index.js +3 -2
  525. package/lib/config-provider/DisabledContext.js +32 -48
  526. package/lib/config-provider/SizeContext.js +29 -49
  527. package/lib/config-provider/config-provider.d.ts +1 -1
  528. package/lib/config-provider/config-provider.js +8 -16
  529. package/lib/config-provider/config-provider.js.map +1 -1
  530. package/lib/config-provider/index.d.ts +3 -3
  531. package/lib/config-provider/index.js +23 -65
  532. package/lib/config-provider/index.js.map +1 -1
  533. package/lib/config-provider/style/index.js +3 -2
  534. package/lib/connect/index.js +29 -41
  535. package/lib/date-picker/DatePicker.d.ts +3 -3
  536. package/lib/date-picker/DatePicker.js +71 -157
  537. package/lib/date-picker/DatePicker.js.map +1 -1
  538. package/lib/date-picker/index.d.ts +1 -1
  539. package/lib/date-picker/index.js +12 -14
  540. package/lib/date-picker/index.js.map +1 -1
  541. package/lib/date-picker/style/index.js +5 -2
  542. package/lib/descriptions/descriptions.d.ts +4 -4
  543. package/lib/descriptions/descriptions.js +102 -191
  544. package/lib/descriptions/descriptions.js.map +1 -1
  545. package/lib/descriptions/index.js +22 -22
  546. package/lib/descriptions/index.js.map +1 -1
  547. package/lib/descriptions/style/index.js +3 -2
  548. package/lib/development-login/LoginModal.js +80 -206
  549. package/lib/development-login/index.js +35 -116
  550. package/lib/divider/index.d.ts +2 -2
  551. package/lib/divider/index.js +21 -52
  552. package/lib/divider/index.js.map +1 -1
  553. package/lib/divider/style/index.js +3 -2
  554. package/lib/drawer/drawer.d.ts +2 -2
  555. package/lib/drawer/drawer.js +100 -195
  556. package/lib/drawer/drawer.js.map +1 -1
  557. package/lib/drawer/index.d.ts +1 -1
  558. package/lib/drawer/index.js +19 -20
  559. package/lib/drawer/index.js.map +1 -1
  560. package/lib/drawer/style/index.js +4 -2
  561. package/lib/dropdown/index.d.ts +2 -2
  562. package/lib/dropdown/index.js +21 -52
  563. package/lib/dropdown/index.js.map +1 -1
  564. package/lib/dropdown/style/index.js +4 -2
  565. package/lib/dropdown/style/index.less +1 -0
  566. package/lib/ellipsis/Svg/CopySVG.js +21 -74
  567. package/lib/ellipsis/Svg/TickSVG.js +16 -52
  568. package/lib/ellipsis/index.js +140 -258
  569. package/lib/empty/empty.d.ts +2 -2
  570. package/lib/empty/empty.js +75 -140
  571. package/lib/empty/empty.js.map +1 -1
  572. package/lib/empty/empty.stories.js +19 -28
  573. package/lib/empty/index.js +19 -19
  574. package/lib/empty/style/index.js +3 -2
  575. package/lib/exception/exception.js +31 -49
  576. package/lib/exception/exception.js.map +1 -1
  577. package/lib/exception/index.js +18 -18
  578. package/lib/form/form.d.ts +4 -4
  579. package/lib/form/form.js +86 -145
  580. package/lib/form/form.js.map +1 -1
  581. package/lib/form/index.js +19 -19
  582. package/lib/form/style/index.js +4 -2
  583. package/lib/form/style/index.less +5 -5
  584. package/lib/grid/index.d.ts +2 -2
  585. package/lib/grid/index.js +21 -52
  586. package/lib/grid/index.js.map +1 -1
  587. package/lib/grid/style/index.js +3 -2
  588. package/lib/grid-v4/RowContext.js +5 -8
  589. package/lib/grid-v4/col.js +96 -144
  590. package/lib/grid-v4/hooks/useBreakpoint.js +22 -30
  591. package/lib/grid-v4/index.js +15 -29
  592. package/lib/grid-v4/row.js +158 -268
  593. package/lib/grid-v4/style/index.js +4 -2
  594. package/lib/handle/index.js +129 -204
  595. package/lib/handle/index.js.map +1 -1
  596. package/lib/handle-icon/index.js +151 -215
  597. package/lib/handle-icon/index.js.map +1 -1
  598. package/lib/icon/IconFont.js +77 -91
  599. package/lib/icon/components/Icon.js +98 -224
  600. package/lib/icon/components/index.js +8 -16
  601. package/lib/icon/components/utils.js +94 -154
  602. package/lib/icon/index.js +117 -188
  603. package/lib/icon/index.js.map +1 -1
  604. package/lib/icon/style/index.js +3 -2
  605. package/lib/icon/twoTonePrimaryColor.js +15 -18
  606. package/lib/icon/utils.js +68 -67
  607. package/lib/icon-list/index.js +121 -6
  608. package/lib/icon-old/index.d.ts +2 -2
  609. package/lib/icon-old/index.js +21 -52
  610. package/lib/icon-old/index.js.map +1 -1
  611. package/lib/icon-old/style/index.js +3 -2
  612. package/lib/img/Contain.js +45 -71
  613. package/lib/img/Cover.js +79 -192
  614. package/lib/img/index.js +61 -149
  615. package/lib/index.d.ts +1 -0
  616. package/lib/index.d.ts.map +1 -1
  617. package/lib/index.js +222 -729
  618. package/lib/index.js.map +1 -1
  619. package/lib/input/index.js +18 -18
  620. package/lib/input/input.d.ts +5 -5
  621. package/lib/input/input.js +93 -153
  622. package/lib/input/input.js.map +1 -1
  623. package/lib/input/style/index.js +4 -2
  624. package/lib/input-number/index.js +21 -52
  625. package/lib/input-number/inputNumber.d.ts +3 -3
  626. package/lib/input-number/inputNumber.js +54 -83
  627. package/lib/input-number/inputNumber.js.map +1 -1
  628. package/lib/input-number/style/index.js +3 -2
  629. package/lib/label/index.d.ts +2 -2
  630. package/lib/label/index.js +138 -182
  631. package/lib/label/index.js.map +1 -1
  632. package/lib/layout/index.d.ts +2 -2
  633. package/lib/layout/index.js +21 -52
  634. package/lib/layout/index.js.map +1 -1
  635. package/lib/layout/style/index.js +3 -2
  636. package/lib/list/index.d.ts +2 -2
  637. package/lib/list/index.js +21 -52
  638. package/lib/list/index.js.map +1 -1
  639. package/lib/list/style/index.js +4 -2
  640. package/lib/loading-button/index.js +56 -133
  641. package/lib/locale/default.js +10 -15
  642. package/lib/locale/default.js.map +1 -1
  643. package/lib/locale/en_US.js +82 -88
  644. package/lib/locale/en_US.js.map +1 -1
  645. package/lib/locale/index.js +18 -36
  646. package/lib/locale/zh_CN.js +75 -80
  647. package/lib/locale/zh_CN.js.map +1 -1
  648. package/lib/locale-provider/index.d.ts +2 -2
  649. package/lib/locale-provider/index.js +25 -56
  650. package/lib/locale-provider/index.js.map +1 -1
  651. package/lib/locale-provider/style/index.js +3 -2
  652. package/lib/mentions/index.d.ts +2 -2
  653. package/lib/mentions/index.js +21 -52
  654. package/lib/mentions/index.js.map +1 -1
  655. package/lib/mentions/style/index.js +4 -2
  656. package/lib/menu/index.d.ts +2 -2
  657. package/lib/menu/index.js +21 -52
  658. package/lib/menu/index.js.map +1 -1
  659. package/lib/menu/style/index.js +5 -2
  660. package/lib/message/index.d.ts +2 -2
  661. package/lib/message/index.js +21 -52
  662. package/lib/message/index.js.map +1 -1
  663. package/lib/message/style/index.js +3 -2
  664. package/lib/modal/index.js +20 -20
  665. package/lib/modal/index.js.map +1 -1
  666. package/lib/modal/modal.d.ts +4 -4
  667. package/lib/modal/modal.js +99 -202
  668. package/lib/modal/modal.js.map +1 -1
  669. package/lib/modal/style/index.js +4 -2
  670. package/lib/notification/assets/index.js +10 -23
  671. package/lib/notification/assets/svg-error-tip.js +56 -181
  672. package/lib/notification/assets/svg-success-tip.js +60 -198
  673. package/lib/notification/index.d.ts +1 -1
  674. package/lib/notification/index.js +22 -25
  675. package/lib/notification/index.js.map +1 -1
  676. package/lib/notification/notification.d.ts +2 -2
  677. package/lib/notification/notification.js +40 -137
  678. package/lib/notification/notification.js.map +1 -1
  679. package/lib/notification/style/index.js +3 -2
  680. package/lib/page/Box.js +40 -67
  681. package/lib/page/index.js +95 -192
  682. package/lib/page/utils.js +18 -21
  683. package/lib/page-container/index.js +13 -24
  684. package/lib/page-header/index.d.ts +2 -2
  685. package/lib/page-header/index.js +21 -52
  686. package/lib/page-header/index.js.map +1 -1
  687. package/lib/page-header/style/index.js +4 -2
  688. package/lib/page-loading/index.js +27 -35
  689. package/lib/page-loading/index.js.map +1 -1
  690. package/lib/page-loading/loading.gif +0 -0
  691. package/lib/pagination/index.d.ts +2 -2
  692. package/lib/pagination/index.js +21 -52
  693. package/lib/pagination/index.js.map +1 -1
  694. package/lib/pagination/style/index.js +4 -2
  695. package/lib/popconfirm/index.js +21 -52
  696. package/lib/popconfirm/popconfirm.d.ts +2 -2
  697. package/lib/popconfirm/popconfirm.js +46 -92
  698. package/lib/popconfirm/popconfirm.js.map +1 -1
  699. package/lib/popconfirm/style/index.js +5 -2
  700. package/lib/popover/index.js +22 -53
  701. package/lib/popover/popover.d.ts +2 -2
  702. package/lib/popover/popover.js +42 -85
  703. package/lib/popover/popover.js.map +1 -1
  704. package/lib/popover/style/index.js +5 -2
  705. package/lib/prev-locale.js +94 -103
  706. package/lib/preview-text/index.d.ts +5 -5
  707. package/lib/preview-text/index.js +209 -296
  708. package/lib/preview-text/index.js.map +1 -1
  709. package/lib/progress/index.js +21 -52
  710. package/lib/progress/progress.d.ts +2 -2
  711. package/lib/progress/progress.js +100 -172
  712. package/lib/progress/progress.js.map +1 -1
  713. package/lib/progress/style/index.js +3 -2
  714. package/lib/query-form/Field/Checkbox.js +23 -30
  715. package/lib/query-form/Field/Checkbox.js.map +1 -1
  716. package/lib/query-form/Field/Composition/FieldPopover.js +241 -408
  717. package/lib/query-form/Field/Composition/FieldPopover.js.map +1 -1
  718. package/lib/query-form/Field/Composition/Select.js +110 -247
  719. package/lib/query-form/Field/Composition/SelectInput.d.ts +3 -0
  720. package/lib/query-form/Field/Composition/SelectInput.d.ts.map +1 -0
  721. package/lib/query-form/Field/Composition/SelectInput.js +40 -0
  722. package/lib/query-form/Field/Composition/SelectInput.js.map +1 -0
  723. package/lib/query-form/Field/Composition/ValueTag.d.ts.map +1 -1
  724. package/lib/query-form/Field/Composition/ValueTag.js +103 -229
  725. package/lib/query-form/Field/Composition/ValueTag.js.map +1 -1
  726. package/lib/query-form/Field/Composition/index.d.ts +2 -0
  727. package/lib/query-form/Field/Composition/index.js +233 -406
  728. package/lib/query-form/Field/Composition/index.js.map +1 -1
  729. package/lib/query-form/Field/Composition/utils.d.ts +1 -1
  730. package/lib/query-form/Field/Composition/utils.d.ts.map +1 -1
  731. package/lib/query-form/Field/Composition/utils.js +124 -155
  732. package/lib/query-form/Field/Composition/utils.js.map +1 -1
  733. package/lib/query-form/Field/Select.js +68 -172
  734. package/lib/query-form/Field/SelectInput.d.ts.map +1 -1
  735. package/lib/query-form/Field/SelectInput.js +77 -181
  736. package/lib/query-form/Field/SelectInput.js.map +1 -1
  737. package/lib/query-form/Field/fieldsMap.d.ts +7 -4
  738. package/lib/query-form/Field/fieldsMap.d.ts.map +1 -1
  739. package/lib/query-form/Field/fieldsMap.js +53 -55
  740. package/lib/query-form/Field/fieldsMap.js.map +1 -1
  741. package/lib/query-form/Field/index.d.ts.map +1 -1
  742. package/lib/query-form/Field/index.js +96 -238
  743. package/lib/query-form/Field/index.js.map +1 -1
  744. package/lib/query-form/createActions.js +51 -57
  745. package/lib/query-form/index.d.ts +1 -36
  746. package/lib/query-form/index.d.ts.map +1 -1
  747. package/lib/query-form/index.js +190 -478
  748. package/lib/query-form/index.js.map +1 -1
  749. package/lib/query-form/index.less +26 -60
  750. package/lib/query-form/useForm.js +11 -15
  751. package/lib/query-list-scene/List.d.ts.map +1 -1
  752. package/lib/query-list-scene/List.js +299 -450
  753. package/lib/query-list-scene/List.js.map +1 -1
  754. package/lib/query-list-scene/QueryForm.d.ts +5 -4
  755. package/lib/query-list-scene/QueryForm.d.ts.map +1 -1
  756. package/lib/query-list-scene/QueryForm.js +118 -225
  757. package/lib/query-list-scene/QueryForm.js.map +1 -1
  758. package/lib/query-list-scene/QueryListScene.js +30 -138
  759. package/lib/query-list-scene/Title.js +9 -18
  760. package/lib/query-list-scene/Toolbar.js +21 -60
  761. package/lib/query-list-scene/createActions.js +65 -83
  762. package/lib/query-list-scene/index.d.ts.map +1 -1
  763. package/lib/query-list-scene/index.js +25 -28
  764. package/lib/query-list-scene/index.js.map +1 -1
  765. package/lib/query-list-scene/useActions.js +11 -15
  766. package/lib/radio/index.js +21 -52
  767. package/lib/radio/radio.d.ts +3 -3
  768. package/lib/radio/radio.js +61 -95
  769. package/lib/radio/radio.js.map +1 -1
  770. package/lib/radio/style/index.js +3 -2
  771. package/lib/rate/index.d.ts +2 -2
  772. package/lib/rate/index.js +21 -52
  773. package/lib/rate/index.js.map +1 -1
  774. package/lib/rate/style/index.js +4 -2
  775. package/lib/render-empty/index.js +4 -7
  776. package/lib/render-empty/render-empty.js +22 -31
  777. package/lib/result/index.d.ts +2 -2
  778. package/lib/result/index.js +21 -52
  779. package/lib/result/index.js.map +1 -1
  780. package/lib/result/style/index.js +3 -2
  781. package/lib/row/index.d.ts +2 -2
  782. package/lib/row/index.js +21 -52
  783. package/lib/row/index.js.map +1 -1
  784. package/lib/row/style/index.js +5 -2
  785. package/lib/scroll-bar/Bar.js +73 -165
  786. package/lib/scroll-bar/Context.js +10 -15
  787. package/lib/scroll-bar/ScrollBar.js +88 -126
  788. package/lib/scroll-bar/Thumb.js +133 -198
  789. package/lib/scroll-bar/index.js +7 -12
  790. package/lib/scroll-bar/util.js +30 -64
  791. package/lib/segmented/index.d.ts +1 -1
  792. package/lib/segmented/index.js +69 -121
  793. package/lib/select/index.d.ts +1 -1
  794. package/lib/select/index.js +19 -20
  795. package/lib/select/index.js.map +1 -1
  796. package/lib/select/select.d.ts +2 -2
  797. package/lib/select/select.js +67 -115
  798. package/lib/select/select.js.map +1 -1
  799. package/lib/select/style/index.js +4 -2
  800. package/lib/skeleton/index.d.ts +2 -2
  801. package/lib/skeleton/index.js +21 -52
  802. package/lib/skeleton/index.js.map +1 -1
  803. package/lib/skeleton/style/index.js +3 -2
  804. package/lib/slider/index.d.ts +2 -2
  805. package/lib/slider/index.js +21 -52
  806. package/lib/slider/index.js.map +1 -1
  807. package/lib/slider/style/index.js +4 -2
  808. package/lib/spin/index.js +19 -19
  809. package/lib/spin/spin.d.ts +2 -2
  810. package/lib/spin/spin.js +49 -68
  811. package/lib/spin/spin.js.map +1 -1
  812. package/lib/spin/style/index.js +3 -2
  813. package/lib/statistic/index.d.ts +2 -2
  814. package/lib/statistic/index.js +21 -52
  815. package/lib/statistic/index.js.map +1 -1
  816. package/lib/statistic/style/index.js +3 -2
  817. package/lib/steps/index.js +20 -20
  818. package/lib/steps/steps.d.ts +3 -3
  819. package/lib/steps/steps.js +70 -152
  820. package/lib/steps/steps.js.map +1 -1
  821. package/lib/steps/style/index.js +11 -2
  822. package/lib/style/index.js +3 -2
  823. package/lib/style/v2-compatible-reset.js +3 -2
  824. package/lib/svg-components/illustration-403.js +84 -247
  825. package/lib/svg-components/illustration-404.js +101 -331
  826. package/lib/svg-components/illustration-500.js +109 -362
  827. package/lib/svg-components/illustration-empty.js +41 -95
  828. package/lib/svg-components/illustration-failure.js +62 -153
  829. package/lib/svg-components/illustration-no-access.js +61 -155
  830. package/lib/svg-components/illustration-no-chart.js +63 -175
  831. package/lib/svg-components/illustration-no-result.js +58 -133
  832. package/lib/svg-components/illustration-offline.js +64 -208
  833. package/lib/svg-components/illustration-success.js +69 -178
  834. package/lib/svg-components/index.js +26 -79
  835. package/lib/switch/index.js +21 -52
  836. package/lib/switch/style/index.js +3 -2
  837. package/lib/switch/switch.d.ts +3 -3
  838. package/lib/switch/switch.js +66 -96
  839. package/lib/switch/switch.js.map +1 -1
  840. package/lib/table/assets/image-loading-background.js +43 -86
  841. package/lib/table/assets/image-loading.js +31 -67
  842. package/lib/table/constants.js +3 -5
  843. package/lib/table/context.js +4 -6
  844. package/lib/table/hooks/index.js +17 -25
  845. package/lib/table/hooks/use-column-setting.d.ts +2 -1
  846. package/lib/table/hooks/use-column-setting.d.ts.map +1 -1
  847. package/lib/table/hooks/use-column-setting.js +21 -79
  848. package/lib/table/hooks/use-column-setting.js.map +1 -1
  849. package/lib/table/hooks/use-expand-fixed.js +79 -474
  850. package/lib/table/index.js +19 -19
  851. package/lib/table/resizableTable/index.d.ts +3 -0
  852. package/lib/table/resizableTable/index.d.ts.map +1 -1
  853. package/lib/table/resizableTable/index.js +104 -204
  854. package/lib/table/resizableTable/index.js.map +1 -1
  855. package/lib/table/resizableTable/index.less +9 -1
  856. package/lib/table/style/index.js +5 -2
  857. package/lib/table/table-hoc.d.ts +3 -3
  858. package/lib/table/table-hoc.js +29 -31
  859. package/lib/table/table-hoc.js.map +1 -1
  860. package/lib/table/table.d.ts +3 -3
  861. package/lib/table/table.d.ts.map +1 -1
  862. package/lib/table/table.js +235 -357
  863. package/lib/table/table.js.map +1 -1
  864. package/lib/table/table.stories.js +377 -620
  865. package/lib/table/utils.d.ts +1 -1
  866. package/lib/table/utils.js +62 -39
  867. package/lib/table/utils.js.map +1 -1
  868. package/lib/table-container/index.js +14 -27
  869. package/lib/tabs/index.js +19 -19
  870. package/lib/tabs/style/index.js +3 -2
  871. package/lib/tabs/tabPane.js +2 -1
  872. package/lib/tabs/tabs.d.ts +3 -3
  873. package/lib/tabs/tabs.js +87 -143
  874. package/lib/tabs/tabs.js.map +1 -1
  875. package/lib/tabs-container/index.js +13 -24
  876. package/lib/tag/index.js +20 -20
  877. package/lib/tag/style/index.js +3 -2
  878. package/lib/tag/tag.d.ts +4 -4
  879. package/lib/tag/tag.js +151 -215
  880. package/lib/tag/tag.js.map +1 -1
  881. package/lib/time-picker/TimePicker.d.ts +2 -2
  882. package/lib/time-picker/TimePicker.js +43 -86
  883. package/lib/time-picker/TimePicker.js.map +1 -1
  884. package/lib/time-picker/index.d.ts +1 -1
  885. package/lib/time-picker/index.js +9 -14
  886. package/lib/time-picker/style/index.js +3 -2
  887. package/lib/timeline/index.d.ts +2 -2
  888. package/lib/timeline/index.js +21 -52
  889. package/lib/timeline/index.js.map +1 -1
  890. package/lib/timeline/style/index.js +3 -2
  891. package/lib/title/index.js +31 -64
  892. package/lib/tntd-action/Action.js +100 -211
  893. package/lib/tntd-action/Action.js.map +1 -1
  894. package/lib/tntd-action/index.js +88 -156
  895. package/lib/tntd-cascader/AntdCascader/component/DisabledContext.js +32 -48
  896. package/lib/tntd-cascader/AntdCascader/component/FormItemInputContext.js +26 -39
  897. package/lib/tntd-cascader/AntdCascader/component/SizeContext.js +26 -39
  898. package/lib/tntd-cascader/AntdCascader/component/context.js +16 -19
  899. package/lib/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js +39 -64
  900. package/lib/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js.map +1 -1
  901. package/lib/tntd-cascader/AntdCascader/component/getIcons.js +78 -112
  902. package/lib/tntd-cascader/AntdCascader/component/useCompactItemContext.js +51 -83
  903. package/lib/tntd-cascader/AntdCascader/config/utils.js +29 -58
  904. package/lib/tntd-cascader/AntdCascader/config/warning.js +35 -49
  905. package/lib/tntd-cascader/AntdCascader/index.js +162 -284
  906. package/lib/tntd-cascader/AntdCascader/interface.js +7 -13
  907. package/lib/tntd-cascader/img/no-data-s.png +0 -0
  908. package/lib/tntd-cascader/index.js +8 -16
  909. package/lib/tntd-cascader/rc-cascader/Cascader.js +288 -413
  910. package/lib/tntd-cascader/rc-cascader/OptionList/Checkbox.js +40 -82
  911. package/lib/tntd-cascader/rc-cascader/OptionList/Column.d.ts.map +1 -1
  912. package/lib/tntd-cascader/rc-cascader/OptionList/Column.js +167 -280
  913. package/lib/tntd-cascader/rc-cascader/OptionList/Column.js.map +1 -1
  914. package/lib/tntd-cascader/rc-cascader/OptionList/index.js +164 -327
  915. package/lib/tntd-cascader/rc-cascader/OptionList/useActive.js +49 -116
  916. package/lib/tntd-cascader/rc-cascader/OptionList/useKeyboard.js +167 -263
  917. package/lib/tntd-cascader/rc-cascader/context.js +27 -42
  918. package/lib/tntd-cascader/rc-cascader/hooks/useDisplayValues.js +64 -111
  919. package/lib/tntd-cascader/rc-cascader/hooks/useEntities.js +50 -70
  920. package/lib/tntd-cascader/rc-cascader/hooks/useMissingValues.js +42 -57
  921. package/lib/tntd-cascader/rc-cascader/hooks/useRefFunc.js +33 -47
  922. package/lib/tntd-cascader/rc-cascader/hooks/useSearchConfig.js +51 -65
  923. package/lib/tntd-cascader/rc-cascader/hooks/useSearchOptions.js +66 -141
  924. package/lib/tntd-cascader/rc-cascader/index.js +7 -12
  925. package/lib/tntd-cascader/rc-cascader/index.less +2 -2
  926. package/lib/tntd-cascader/rc-cascader/utils/commonUtil.js +38 -46
  927. package/lib/tntd-cascader/rc-cascader/utils/treeUtil.js +39 -42
  928. package/lib/tntd-cascader/rc-cascader/utils/warningPropsUtil.js +30 -37
  929. package/lib/tntd-form/ErrorList.js +77 -171
  930. package/lib/tntd-form/Form.js +139 -262
  931. package/lib/tntd-form/FormItem/ItemHolder.js +152 -242
  932. package/lib/tntd-form/FormItem/index.js +251 -371
  933. package/lib/tntd-form/FormItemInput.js +62 -122
  934. package/lib/tntd-form/FormItemLabel.js +96 -151
  935. package/lib/tntd-form/FormList.js +58 -84
  936. package/lib/tntd-form/context.js +61 -79
  937. package/lib/tntd-form/hooks/useDebounce.js +37 -101
  938. package/lib/tntd-form/hooks/useForm.js +57 -133
  939. package/lib/tntd-form/hooks/useFormInstance.js +8 -11
  940. package/lib/tntd-form/hooks/useFormItemStatus.js +13 -21
  941. package/lib/tntd-form/hooks/useFrameState.js +63 -129
  942. package/lib/tntd-form/hooks/useItemRef.js +41 -55
  943. package/lib/tntd-form/index.js +42 -58
  944. package/lib/tntd-form/interface.js +4 -6
  945. package/lib/tntd-form/style/index.js +4 -2
  946. package/lib/tntd-form/util.js +19 -18
  947. package/lib/tntd-form/validateMessagesContext.js +4 -7
  948. package/lib/tntd-icon/fonts/iconfont.js +53 -36
  949. package/lib/tntd-icon/index.js +25 -41
  950. package/lib/tntd-layout/ActionsContext.js +4 -7
  951. package/lib/tntd-layout/AppList.js +222 -253
  952. package/lib/tntd-layout/Application.js +109 -155
  953. package/lib/tntd-layout/Avatar.js +134 -139
  954. package/lib/tntd-layout/CompatibleLanguage.js +177 -207
  955. package/lib/tntd-layout/EnterpriseLayout/Avatar.js +145 -156
  956. package/lib/tntd-layout/EnterpriseLayout/Language.js +88 -153
  957. package/lib/tntd-layout/EnterpriseLayout/Theme.js +100 -149
  958. package/lib/tntd-layout/EnterpriseLayout/index.js +17 -31
  959. package/lib/tntd-layout/GlobalNavigation/NavigationPopup.js +272 -361
  960. package/lib/tntd-layout/GlobalNavigation/index.js +112 -195
  961. package/lib/tntd-layout/Header.js +130 -115
  962. package/lib/tntd-layout/HeaderActions.js +107 -145
  963. package/lib/tntd-layout/HeaderNavs.js +105 -155
  964. package/lib/tntd-layout/HeaderTabs.js +312 -318
  965. package/lib/tntd-layout/Iconfont.js +8 -15
  966. package/lib/tntd-layout/Language.js +75 -150
  967. package/lib/tntd-layout/Layout.js +167 -292
  968. package/lib/tntd-layout/Logo.js +139 -108
  969. package/lib/tntd-layout/OrgAppList.js +383 -315
  970. package/lib/tntd-layout/SideMenu.js +406 -347
  971. package/lib/tntd-layout/Theme.js +90 -154
  972. package/lib/tntd-layout/createActions.js +35 -49
  973. package/lib/tntd-layout/images/avatar/empty.png +0 -0
  974. package/lib/tntd-layout/images/avatar/female1.png +0 -0
  975. package/lib/tntd-layout/images/avatar/female2.png +0 -0
  976. package/lib/tntd-layout/images/avatar/female3.png +0 -0
  977. package/lib/tntd-layout/images/avatar/female4.png +0 -0
  978. package/lib/tntd-layout/images/avatar/female5.png +0 -0
  979. package/lib/tntd-layout/images/avatar/female6.png +0 -0
  980. package/lib/tntd-layout/images/avatar/male1.png +0 -0
  981. package/lib/tntd-layout/images/avatar/male2.png +0 -0
  982. package/lib/tntd-layout/images/avatar/male3.png +0 -0
  983. package/lib/tntd-layout/images/avatar/male4.png +0 -0
  984. package/lib/tntd-layout/images/avatar/male5.png +0 -0
  985. package/lib/tntd-layout/images/avatar/male6.png +0 -0
  986. package/lib/tntd-layout/images/index.js +67 -70
  987. package/lib/tntd-layout/index.js +96 -168
  988. package/lib/tntd-layout/paaslayout/CompactSideMenu.js +179 -210
  989. package/lib/tntd-layout/paaslayout/Header.js +74 -90
  990. package/lib/tntd-layout/paaslayout/Logo.js +27 -25
  991. package/lib/tntd-layout/paaslayout/SideMenu.js +146 -212
  992. package/lib/tntd-layout/paaslayout/index.js +139 -285
  993. package/lib/tntd-layout/storage.js +46 -65
  994. package/lib/tntd-modal/index.js +62 -190
  995. package/lib/tntd-rc-select/_util/DisabledContext.js +32 -48
  996. package/lib/tntd-rc-select/_util/FormItemInputContext.js +26 -39
  997. package/lib/tntd-rc-select/_util/PurePanel.js +78 -161
  998. package/lib/tntd-rc-select/_util/SizeContext.js +26 -39
  999. package/lib/tntd-rc-select/_util/context.js +16 -19
  1000. package/lib/tntd-rc-select/_util/defaultRenderEmpty.js +39 -69
  1001. package/lib/tntd-rc-select/_util/defaultRenderEmpty.js.map +1 -1
  1002. package/lib/tntd-rc-select/_util/getIcons.js +78 -115
  1003. package/lib/tntd-rc-select/_util/interface.js +7 -13
  1004. package/lib/tntd-rc-select/_util/motion.js +36 -50
  1005. package/lib/tntd-rc-select/_util/type.js +6 -16
  1006. package/lib/tntd-rc-select/_util/useCompactItemContext.js +51 -83
  1007. package/lib/tntd-rc-select/_util/warning.js +35 -49
  1008. package/lib/tntd-rc-select/img/no-data-s.png +0 -0
  1009. package/lib/tntd-rc-select/index.js +125 -206
  1010. package/lib/tntd-reference/AHref/index.js +38 -46
  1011. package/lib/tntd-reference/ReferenceBatchCheck/index.js +99 -166
  1012. package/lib/tntd-reference/ReferenceBatchDrawer/index.js +83 -198
  1013. package/lib/tntd-reference/ReferenceCheck/index.js +74 -127
  1014. package/lib/tntd-reference/ReferenceDrawer/index.js +68 -165
  1015. package/lib/tntd-reference/ReferenceInfo/index.js +93 -162
  1016. package/lib/tntd-reference/index.js +18 -23
  1017. package/lib/tntd-second-page/index.js +32 -63
  1018. package/lib/tntd-second-page/index.js.map +1 -1
  1019. package/lib/tntd-select/DropDownWrap.js +78 -188
  1020. package/lib/tntd-select/index.d.ts +1 -1
  1021. package/lib/tntd-select/index.d.ts.map +1 -1
  1022. package/lib/tntd-select/index.js +550 -744
  1023. package/lib/tntd-select/index.js.map +1 -1
  1024. package/lib/tntd-virtual-tree/index.js +230 -395
  1025. package/lib/tntd-virtual-tree/index.js.map +1 -1
  1026. package/lib/tntd-virtual-tree/utils.js +196 -327
  1027. package/lib/tntd-virtual-tree-select/index.js +151 -281
  1028. package/lib/tntd-virtual-tree-select/utils.js +46 -86
  1029. package/lib/tooltip/index.js +22 -53
  1030. package/lib/tooltip/style/index.js +3 -2
  1031. package/lib/tooltip/tooltip.d.ts +2 -2
  1032. package/lib/tooltip/tooltip.js +42 -83
  1033. package/lib/tooltip/tooltip.js.map +1 -1
  1034. package/lib/transfer/index.d.ts +2 -2
  1035. package/lib/transfer/index.js +21 -52
  1036. package/lib/transfer/index.js.map +1 -1
  1037. package/lib/transfer/style/index.js +4 -2
  1038. package/lib/tree/index.d.ts +2 -2
  1039. package/lib/tree/index.js +21 -52
  1040. package/lib/tree/index.js.map +1 -1
  1041. package/lib/tree/style/index.js +3 -2
  1042. package/lib/tree-select/index.d.ts +4 -4
  1043. package/lib/tree-select/index.js +26 -58
  1044. package/lib/tree-select/index.js.map +1 -1
  1045. package/lib/tree-select/style/index.js +5 -2
  1046. package/lib/typography/index.d.ts +2 -2
  1047. package/lib/typography/index.js +21 -52
  1048. package/lib/typography/index.js.map +1 -1
  1049. package/lib/typography/style/index.js +4 -2
  1050. package/lib/upload/index.d.ts +2 -2
  1051. package/lib/upload/index.js +143 -340
  1052. package/lib/upload/index.js.map +1 -1
  1053. package/lib/upload/style/index.js +4 -2
  1054. package/lib/upload/svg/UploadSVG.js +18 -47
  1055. package/lib/utils/checkAuth.js +24 -37
  1056. package/lib/utils/findMenuInfoByPath.js +35 -40
  1057. package/lib/utils/index.js +96 -153
  1058. package/lib/utils/lang.js +129 -87
  1059. package/lib/version/index.d.ts +2 -2
  1060. package/lib/version/index.js +21 -52
  1061. package/lib/version/index.js.map +1 -1
  1062. package/lib/version/style/index.js +4 -2
  1063. package/lib/water-mark/index.js +118 -206
  1064. package/package.json +3 -2
  1065. package/es/checkbox/checkbox-group.js +0 -16
  1066. package/es/checkbox/checkbox-group.js.map +0 -1
  1067. package/es/radio/radio-group.js +0 -16
  1068. package/es/radio/radio-group.js.map +0 -1
  1069. package/es/table/total-shower.js +0 -20
  1070. package/es/table/total-shower.js.map +0 -1
  1071. package/es/utils/simple-template.js +0 -19
  1072. package/es/utils/simple-template.js.map +0 -1
  1073. package/lib/checkbox/checkbox-group.d.ts +0 -8
  1074. package/lib/checkbox/checkbox-group.d.ts.map +0 -1
  1075. package/lib/checkbox/checkbox-group.js +0 -16
  1076. package/lib/checkbox/checkbox-group.js.map +0 -1
  1077. package/lib/radio/radio-group.d.ts +0 -8
  1078. package/lib/radio/radio-group.d.ts.map +0 -1
  1079. package/lib/radio/radio-group.js +0 -16
  1080. package/lib/radio/radio-group.js.map +0 -1
  1081. package/lib/table/total-shower.d.ts +0 -9
  1082. package/lib/table/total-shower.d.ts.map +0 -1
  1083. package/lib/table/total-shower.js +0 -20
  1084. package/lib/table/total-shower.js.map +0 -1
  1085. package/lib/utils/simple-template.d.ts +0 -9
  1086. package/lib/utils/simple-template.d.ts.map +0 -1
  1087. package/lib/utils/simple-template.js +0 -19
  1088. package/lib/utils/simple-template.js.map +0 -1
@@ -1,316 +1,208 @@
1
- "use strict";
2
-
3
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports["default"] = void 0;
8
- var _uniq2 = _interopRequireDefault(require("lodash/uniq"));
9
- var _react = _interopRequireWildcard(require("react"));
10
- var _rcVirtualList = _interopRequireDefault(require("rc-virtual-list"));
11
- var _icon = _interopRequireDefault(require("../icon"));
12
- var _ellipsis = _interopRequireDefault(require("../ellipsis"));
13
- var _empty = _interopRequireDefault(require("../empty"));
14
- var _checkbox = _interopRequireDefault(require("../checkbox"));
15
- var _utils = require("./utils");
16
- var _prevLocale = require("../prev-locale");
17
- require("./index.less");
18
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
19
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
20
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
21
- function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
22
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
23
- function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
24
- function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
25
- function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
26
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
27
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
28
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
29
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
30
- function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } /*
1
+ /*
31
2
  * @Descripttion: 基于antd3 tree 部分api实现的tree,增加了虚拟滚动
32
3
  * @Author: 郑泳健
33
4
  * @Date: 2024-07-31 14:46:55
34
5
  * @LastEditors: 郑泳健
35
6
  * @LastEditTime: 2024-11-15 10:52:13
36
7
  */
37
- var VirtualTree = function VirtualTree(_ref) {
38
- var _ref$indent = _ref.indent,
39
- indent = _ref$indent === void 0 ? 24 : _ref$indent,
40
- isOrg = _ref.isOrg,
41
- showPrefixIcon = _ref.showPrefixIcon,
42
- value = _ref.value,
43
- _ref$itemHeight = _ref.itemHeight,
44
- itemHeight = _ref$itemHeight === void 0 ? 32 : _ref$itemHeight,
45
- height = _ref.height,
46
- filterKey = _ref.filterKey,
47
- treeData = _ref.treeData,
48
- checkable = _ref.checkable,
49
- checkStrictly = _ref.checkStrictly,
50
- checkedKeys = _ref.checkedKeys,
51
- _ref$defaultExpandAll = _ref.defaultExpandAll,
52
- defaultExpandAll = _ref$defaultExpandAll === void 0 ? true : _ref$defaultExpandAll,
53
- expandedKeys = _ref.expandedKeys,
54
- fieldNames = _ref.fieldNames,
55
- titleRender = _ref.titleRender,
56
- onCheck = _ref.onCheck,
57
- onExpand = _ref.onExpand,
58
- onSelect = _ref.onSelect;
59
- var ref = _react["default"].useRef(null);
60
- var expandChangedRef = (0, _react.useRef)(0);
61
- var checkedChangeRef = (0, _react.useRef)(0);
62
- // 展开的节点列表
63
- var _useState = (0, _react.useState)([]),
64
- _useState2 = _slicedToArray(_useState, 2),
65
- expandedList = _useState2[0],
66
- setExpandedList = _useState2[1];
67
- // checked 节点列表
68
- var _useState3 = (0, _react.useState)([]),
69
- _useState4 = _slicedToArray(_useState3, 2),
70
- checkedList = _useState4[0],
71
- setCheckedList = _useState4[1];
72
- // 当前被选中的节点
73
- var _useState5 = (0, _react.useState)(undefined),
74
- _useState6 = _slicedToArray(_useState5, 2),
75
- choosedValue = _useState6[0],
76
- setChoosedValue = _useState6[1];
77
- (0, _react.useEffect)(function () {
78
- if (!checkable) {
79
- setChoosedValue(value);
80
- }
81
- }, [value, checkable]);
82
- /** 给每个节点增加属性keys,值为其下面所有节点的集合 */
83
- var treeDataWithKeys = (0, _react.useMemo)(function () {
84
- return (0, _utils.addTreeNodeAttrs)(treeData, fieldNames);
85
- }, [treeData, fieldNames]);
86
- /** 默认是否全部展开 */
87
- var mergeDefaultExpandAll = (0, _react.useMemo)(function () {
88
- if (Array.isArray(expandedKeys)) {
89
- return false;
90
- }
91
- return defaultExpandAll;
92
- }, [defaultExpandAll, expandedKeys]);
93
- /** 获取到所有选中的节点,因为checkedKeys可能传入的是最后一级 */
94
- (0, _react.useEffect)(function () {
95
- // 非第一次
96
- if (checkedChangeRef.current > 0) {
97
- setCheckedList(checkedKeys);
98
- return;
99
- }
100
- if (checkable) {
101
- // 如果是受控
102
- if (checkStrictly) {
103
- setCheckedList((0, _uniq2["default"])(Array.isArray(checkedKeys) ? checkedKeys : []));
104
- return;
105
- }
106
- var transCheckedKeys = Array.isArray(checkedKeys) ? checkedKeys.reduce(function (total, item) {
107
- total.push(item);
108
- var _ref2 = (0, _utils.findNodeDetail)(treeDataWithKeys, item) || {},
109
- needCheckedChildrenValues = _ref2.needCheckedChildrenValues;
110
- total = [].concat(_toConsumableArray(total), _toConsumableArray(needCheckedChildrenValues));
111
- return total;
112
- }, []) : [];
113
- var _checkedKeys = (0, _utils.getFullCheckedKeys)(treeDataWithKeys, transCheckedKeys);
114
- setCheckedList((0, _uniq2["default"])(_checkedKeys));
115
- }
116
- }, [treeDataWithKeys, checkStrictly, checkable, checkedKeys]);
117
- (0, _react.useEffect)(function () {
118
- setExpandedList(expandedKeys);
119
- }, [expandedKeys]);
120
- /** 初始化获取到所有展开的节点,因为初始化expandedKeys可能传入的是最后一级 */
121
- (0, _react.useEffect)(function () {
122
- if (expandChangedRef.current === 0) {
123
- // 展开的节点
124
- var transExpandedKeys = Array.isArray(expandedKeys) ? expandedKeys : [];
125
- var _expandedKeys = (0, _utils.getFullExpandedKeys)(treeDataWithKeys, transExpandedKeys, mergeDefaultExpandAll);
126
- setExpandedList(_expandedKeys);
127
- }
128
- }, [treeDataWithKeys, expandedKeys, mergeDefaultExpandAll]);
129
- /** 最终渲染的数据 */
130
- var renderData = (0, _react.useMemo)(function () {
131
- return (0, _utils.flatTreeData)(treeDataWithKeys, filterKey, expandedList);
132
- }, [treeDataWithKeys, filterKey, expandedList]);
133
- /** 切换展开/收起 */
134
- var handleToggle = function handleToggle(item) {
135
- expandChangedRef.current++;
136
- var _ref3 = item || {},
137
- value = _ref3.value;
138
- var bool = Array.isArray(expandedList) ? expandedList.includes(value) : false;
139
- if (bool) {
140
- var list = Array.isArray(expandedList) ? expandedList.filter(function (i) {
141
- return i !== value;
142
- }) : [];
143
- if (onExpand) {
144
- onExpand((0, _uniq2["default"])(list), {
145
- node: item,
146
- expanded: !bool
147
- });
148
- return;
149
- }
150
- setExpandedList((0, _uniq2["default"])(list));
151
- } else {
152
- var arr = (0, _uniq2["default"])([].concat(_toConsumableArray(expandedList), [value]));
153
- if (onExpand) {
154
- onExpand(arr, {
155
- node: item,
156
- expanded: !bool
157
- });
158
- return;
159
- }
160
- setExpandedList(arr);
161
- }
162
- };
163
- var handleCheck = function handleCheck(item, isChecked) {
164
- var _value = item.value,
165
- children = item.children,
166
- disabled = item.disabled;
167
- if (disabled) {
168
- return;
169
- }
170
- checkedChangeRef.current++;
171
- // 需要增删的子节点
172
- var itemChildrenValues = Array.isArray(children) && !!children.length ? item.needCheckedChildrenValues : [];
173
- if (isChecked) {
174
- // 需要删除的父节点
175
- var itemParentValues = Array.isArray(item.needCheckedSiblingsValue) ? item.needCheckedSiblingsValue.map(function (i) {
176
- return i.key;
177
- }) : [];
178
- // 当前节点所有的父节点
179
- var delList = checkStrictly ? [_value] : [].concat(_toConsumableArray(itemChildrenValues), _toConsumableArray(itemParentValues), [_value]);
180
- var _checkedList = checkedList.filter(function (i) {
181
- return !delList.includes(i);
182
- });
183
- if (onCheck) {
184
- onCheck === null || onCheck === void 0 ? void 0 : onCheck((0, _uniq2["default"])(_checkedList), item, !isChecked);
185
- return;
186
- }
187
- setCheckedList((0, _uniq2["default"])(_checkedList));
188
- } else {
189
- // 递归循环其上级是否也要被选中
190
- var _itemParentValues = (0, _utils.getNodeParentChoosed)(item.needCheckedSiblingsValue, [].concat(_toConsumableArray(checkedList), _toConsumableArray(itemChildrenValues), [_value]));
191
- var addList = checkStrictly ? [_value] : [].concat(_toConsumableArray(itemChildrenValues), _toConsumableArray(_itemParentValues), [_value]);
192
- var _checkedList2 = [].concat(_toConsumableArray(checkedList), _toConsumableArray(addList));
193
- if (onCheck) {
194
- onCheck === null || onCheck === void 0 ? void 0 : onCheck((0, _uniq2["default"])(_checkedList2), item, !isChecked);
195
- return;
196
- }
197
- setCheckedList((0, _uniq2["default"])(_checkedList2));
198
- }
199
- };
200
- var handleChoosed = function handleChoosed(item) {
201
- if (item.disabled) {
202
- return;
203
- }
204
- setChoosedValue(item.value);
205
- if (!checkable) {
206
- onSelect === null || onSelect === void 0 ? void 0 : onSelect(item.value);
207
- }
208
- };
209
- var renderOrgItem = function renderOrgItem(item, lang) {
210
- var mapResult = {
211
- 1: {
212
- cn: '职能部门',
213
- en: 'Func. Dept.',
214
- icon: 'crowd'
215
- },
216
- 2: {
217
- icon: 'corporation'
218
- }
8
+ import React, { useState, useMemo, useEffect, useRef } from 'react';
9
+ import List from 'rc-virtual-list';
10
+ import { uniq } from 'lodash';
11
+ import Icon from '../icon';
12
+ import Ellipsis from '../ellipsis';
13
+ import Empty from '../empty';
14
+ import Checkbox from '../checkbox';
15
+ import { flatTreeData, findNodeDetail, getFullExpandedKeys, getFullCheckedKeys, getNodeParentChoosed, addTreeNodeAttrs, getIndeterminate } from './utils';
16
+ import { getLanguage } from '../prev-locale';
17
+ import './index.less';
18
+ const VirtualTree = ({ indent = 24, isOrg, showPrefixIcon, value, itemHeight = 32, height, filterKey, treeData, checkable, checkStrictly, checkedKeys, defaultExpandAll = true, expandedKeys, fieldNames, titleRender, onCheck, onExpand, onSelect }) => {
19
+ const ref = React.useRef(null);
20
+ const expandChangedRef = useRef(0);
21
+ const checkedChangeRef = useRef(0);
22
+ // 展开的节点列表
23
+ const [expandedList, setExpandedList] = useState([]);
24
+ // checked 节点列表
25
+ const [checkedList, setCheckedList] = useState([]);
26
+ // 当前被选中的节点
27
+ const [choosedValue, setChoosedValue] = useState(undefined);
28
+ useEffect(() => {
29
+ if (!checkable) {
30
+ setChoosedValue(value);
31
+ }
32
+ }, [value, checkable]);
33
+ /** 给每个节点增加属性keys,值为其下面所有节点的集合 */
34
+ const treeDataWithKeys = useMemo(() => {
35
+ return addTreeNodeAttrs(treeData, fieldNames);
36
+ }, [treeData, fieldNames]);
37
+ /** 默认是否全部展开 */
38
+ const mergeDefaultExpandAll = useMemo(() => {
39
+ if (Array.isArray(expandedKeys)) {
40
+ return false;
41
+ }
42
+ return defaultExpandAll;
43
+ }, [defaultExpandAll, expandedKeys]);
44
+ /** 获取到所有选中的节点,因为checkedKeys可能传入的是最后一级 */
45
+ useEffect(() => {
46
+ // 非第一次
47
+ if (checkedChangeRef.current > 0) {
48
+ setCheckedList(checkedKeys);
49
+ return;
50
+ }
51
+ if (checkable) {
52
+ // 如果是受控
53
+ if (checkStrictly) {
54
+ setCheckedList(uniq(Array.isArray(checkedKeys) ? checkedKeys : []));
55
+ return;
56
+ }
57
+ const transCheckedKeys = Array.isArray(checkedKeys)
58
+ ? checkedKeys.reduce((total, item) => {
59
+ total.push(item);
60
+ const { needCheckedChildrenValues } = findNodeDetail(treeDataWithKeys, item) || {};
61
+ total = [...total, ...needCheckedChildrenValues];
62
+ return total;
63
+ }, [])
64
+ : [];
65
+ const _checkedKeys = getFullCheckedKeys(treeDataWithKeys, transCheckedKeys);
66
+ setCheckedList(uniq(_checkedKeys));
67
+ }
68
+ }, [treeDataWithKeys, checkStrictly, checkable, checkedKeys]);
69
+ useEffect(() => {
70
+ setExpandedList(expandedKeys);
71
+ }, [expandedKeys]);
72
+ /** 初始化获取到所有展开的节点,因为初始化expandedKeys可能传入的是最后一级 */
73
+ useEffect(() => {
74
+ if (expandChangedRef.current === 0) {
75
+ // 展开的节点
76
+ const transExpandedKeys = Array.isArray(expandedKeys) ? expandedKeys : [];
77
+ const _expandedKeys = getFullExpandedKeys(treeDataWithKeys, transExpandedKeys, mergeDefaultExpandAll);
78
+ setExpandedList(_expandedKeys);
79
+ }
80
+ }, [treeDataWithKeys, expandedKeys, mergeDefaultExpandAll]);
81
+ /** 最终渲染的数据 */
82
+ const renderData = useMemo(() => {
83
+ return flatTreeData(treeDataWithKeys, filterKey, expandedList);
84
+ }, [treeDataWithKeys, filterKey, expandedList]);
85
+ /** 切换展开/收起 */
86
+ const handleToggle = (item) => {
87
+ expandChangedRef.current++;
88
+ const { value } = item || {};
89
+ const bool = Array.isArray(expandedList) ? expandedList.includes(value) : false;
90
+ if (bool) {
91
+ const list = Array.isArray(expandedList) ? expandedList.filter((i) => i !== value) : [];
92
+ if (onExpand) {
93
+ onExpand(uniq(list), { node: item, expanded: !bool });
94
+ return;
95
+ }
96
+ setExpandedList(uniq(list));
97
+ }
98
+ else {
99
+ const arr = uniq([...expandedList, value]);
100
+ if (onExpand) {
101
+ onExpand(arr, { node: item, expanded: !bool });
102
+ return;
103
+ }
104
+ setExpandedList(arr);
105
+ }
219
106
  };
220
- var result = mapResult[item === null || item === void 0 ? void 0 : item.orgAttribute] || {};
221
- return _react["default"].createElement("div", {
222
- className: "org-item-wrapper"
223
- }, showPrefixIcon ? _react["default"].createElement(_icon["default"], {
224
- type: result === null || result === void 0 ? void 0 : result['icon'],
225
- style: {
226
- marginTop: 3,
227
- marginRight: 4
228
- }
229
- }) : '', _react["default"].createElement(_ellipsis["default"], {
230
- title: item.title,
231
- widthLimit: '100%'
232
- }), String(item.orgAttribute) === '1' && _react["default"].createElement("span", {
233
- className: "org-functional-departemt-marker"
234
- }, result[lang] || '职能部门'));
235
- };
236
- var defaultRenderItem = function defaultRenderItem(item) {
237
- var isOrg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
238
- if (isOrg) {
239
- return renderOrgItem(item, (0, _prevLocale.getLanguage)());
240
- }
241
- return _react["default"].createElement(_ellipsis["default"], {
242
- title: item.title,
243
- widthLimit: '100%'
244
- });
245
- };
246
- var adjustHeight = (0, _react.useMemo)(function () {
247
- if (Array.isArray(renderData)) {
248
- if (renderData.length >= 10) {
249
- return height;
250
- }
251
- return itemHeight * renderData.length;
252
- }
253
- return 100;
254
- }, [renderData, itemHeight, height]);
255
- return _react["default"].createElement("div", {
256
- className: "tntd-virtual-tree"
257
- }, !Array.isArray(renderData) || !renderData.length ? _react["default"].createElement(_empty["default"], {
258
- size: "small"
259
- }) : _react["default"].createElement(_rcVirtualList["default"], {
260
- ref: ref,
261
- height: adjustHeight || 300,
262
- itemHeight: itemHeight,
263
- data: renderData,
264
- itemKey: 'value'
265
- }, function (item) {
266
- var indexLevel = item.indexLevel,
267
- children = item.children,
268
- disabled = item.disabled;
269
- var bool = Array.isArray(expandedList) ? expandedList.includes(item.value) : false;
270
- // 当前节点半选状态
271
- var indeterminateStatus = (0, _utils.getIndeterminate)(item, checkedList);
272
- // 当前节点是否被选中
273
- var checkedBingo = Array.isArray(checkedList) ? checkedList.includes(item.value) : false;
274
- var isChecked = !checkStrictly || disabled ? checkedBingo && !indeterminateStatus : checkedBingo;
275
- var hasChild = Array.isArray(children) && !!children.length;
276
- var checkBoxAttrs = {
277
- className: "".concat(disabled ? 'tntd-virtual-tree-checkbox-disabled' : ''),
278
- onChange: function onChange() {
279
- return handleCheck(item, isChecked);
280
- },
281
- checked: isChecked,
282
- disabled: disabled
107
+ const handleCheck = (item, isChecked) => {
108
+ const { value: _value, children, disabled } = item;
109
+ if (disabled) {
110
+ return;
111
+ }
112
+ checkedChangeRef.current++;
113
+ // 需要增删的子节点
114
+ const itemChildrenValues = Array.isArray(children) && !!children.length ? item.needCheckedChildrenValues : [];
115
+ if (isChecked) {
116
+ // 需要删除的父节点
117
+ const itemParentValues = Array.isArray(item.needCheckedSiblingsValue) ? item.needCheckedSiblingsValue.map((i) => i.key) : [];
118
+ // 当前节点所有的父节点
119
+ const delList = checkStrictly ? [_value] : [...itemChildrenValues, ...itemParentValues, _value];
120
+ const _checkedList = checkedList.filter((i) => !delList.includes(i));
121
+ if (onCheck) {
122
+ onCheck === null || onCheck === void 0 ? void 0 : onCheck(uniq(_checkedList), item, !isChecked);
123
+ return;
124
+ }
125
+ setCheckedList(uniq(_checkedList));
126
+ }
127
+ else {
128
+ // 递归循环其上级是否也要被选中
129
+ const itemParentValues = getNodeParentChoosed(item.needCheckedSiblingsValue, [...checkedList, ...itemChildrenValues, _value]);
130
+ const addList = checkStrictly ? [_value] : [...itemChildrenValues, ...itemParentValues, _value];
131
+ const _checkedList = [...checkedList, ...addList];
132
+ if (onCheck) {
133
+ onCheck === null || onCheck === void 0 ? void 0 : onCheck(uniq(_checkedList), item, !isChecked);
134
+ return;
135
+ }
136
+ setCheckedList(uniq(_checkedList));
137
+ }
283
138
  };
284
- // 状态没有半选模式
285
- if (!checkStrictly) {
286
- checkBoxAttrs.indeterminate = indeterminateStatus;
287
- }
288
- return _react["default"].createElement("div", {
289
- className: "tntd-virtual-tree-item ".concat(disabled ? 'tntd-virtual-tree-item_disabled' : '', " ").concat(choosedValue === item.value ? 'tntd-virtual-tree-item_active' : ''),
290
- key: item.value
291
- }, _react["default"].createElement("div", {
292
- style: {
293
- paddingLeft: indexLevel !== 0 ? indexLevel * indent - 4 : 0,
294
- width: '100%'
295
- }
296
- }, _react["default"].createElement("div", {
297
- className: "tntd-virtual-tree-item-expand-icon"
298
- }, hasChild ? _react["default"].createElement(_icon["default"], {
299
- type: bool ? 'caret-down' : 'caret-right',
300
- onClick: function onClick() {
301
- return handleToggle(item);
302
- }
303
- }) : ''), checkable ? _react["default"].createElement("div", {
304
- className: "tntd-virtual-tree-item-checkbox"
305
- }, _react["default"].createElement(_checkbox["default"], Object.assign({}, checkBoxAttrs))) : '', _react["default"].createElement("div", {
306
- className: "tntd-virtual-tree-title",
307
- style: {
308
- marginLeft: isOrg && !hasChild ? 0 : 0
309
- },
310
- onClick: function onClick() {
311
- return handleChoosed(item);
312
- }
313
- }, titleRender ? titleRender(item) : defaultRenderItem(item, isOrg))));
314
- }));
139
+ const handleChoosed = (item) => {
140
+ if (item.disabled) {
141
+ return;
142
+ }
143
+ setChoosedValue(item.value);
144
+ if (!checkable) {
145
+ onSelect === null || onSelect === void 0 ? void 0 : onSelect(item.value);
146
+ }
147
+ };
148
+ const renderOrgItem = (item, lang) => {
149
+ const mapResult = {
150
+ 1: {
151
+ cn: '职能部门',
152
+ en: 'Func. Dept.',
153
+ icon: 'crowd'
154
+ },
155
+ 2: {
156
+ icon: 'corporation'
157
+ }
158
+ };
159
+ const result = mapResult[item === null || item === void 0 ? void 0 : item.orgAttribute] || {};
160
+ return (React.createElement("div", { className: "org-item-wrapper" },
161
+ showPrefixIcon ? React.createElement(Icon, { type: result === null || result === void 0 ? void 0 : result['icon'], style: { marginTop: 3, marginRight: 4 } }) : '',
162
+ React.createElement(Ellipsis, { title: item.title, widthLimit: '100%' }),
163
+ String(item.orgAttribute) === '1' && React.createElement("span", { className: "org-functional-departemt-marker" }, result[lang] || '职能部门')));
164
+ };
165
+ const defaultRenderItem = (item, isOrg = true) => {
166
+ if (isOrg) {
167
+ return renderOrgItem(item, getLanguage());
168
+ }
169
+ return React.createElement(Ellipsis, { title: item.title, widthLimit: '100%' });
170
+ };
171
+ const adjustHeight = useMemo(() => {
172
+ if (Array.isArray(renderData)) {
173
+ if (renderData.length >= 10) {
174
+ return height;
175
+ }
176
+ return itemHeight * renderData.length;
177
+ }
178
+ return 100;
179
+ }, [renderData, itemHeight, height]);
180
+ return (React.createElement("div", { className: "tntd-virtual-tree" }, !Array.isArray(renderData) || !renderData.length ? (React.createElement(Empty, { size: "small" })) : (React.createElement(List, { ref: ref, height: adjustHeight || 300, itemHeight: itemHeight, data: renderData, itemKey: 'value' }, (item) => {
181
+ const { indexLevel, children, disabled } = item;
182
+ const bool = Array.isArray(expandedList) ? expandedList.includes(item.value) : false;
183
+ // 当前节点半选状态
184
+ const indeterminateStatus = getIndeterminate(item, checkedList);
185
+ // 当前节点是否被选中
186
+ const checkedBingo = Array.isArray(checkedList) ? checkedList.includes(item.value) : false;
187
+ const isChecked = !checkStrictly || disabled ? checkedBingo && !indeterminateStatus : checkedBingo;
188
+ const hasChild = Array.isArray(children) && !!children.length;
189
+ const checkBoxAttrs = {
190
+ className: `${disabled ? 'tntd-virtual-tree-checkbox-disabled' : ''}`,
191
+ onChange: () => handleCheck(item, isChecked),
192
+ checked: isChecked,
193
+ disabled
194
+ };
195
+ // 状态没有半选模式
196
+ if (!checkStrictly) {
197
+ checkBoxAttrs.indeterminate = indeterminateStatus;
198
+ }
199
+ return (React.createElement("div", { className: `tntd-virtual-tree-item ${disabled ? 'tntd-virtual-tree-item_disabled' : ''} ${choosedValue === item.value ? 'tntd-virtual-tree-item_active' : ''}`, key: item.value },
200
+ React.createElement("div", { style: { paddingLeft: indexLevel !== 0 ? indexLevel * indent - 4 : 0, width: '100%' } },
201
+ React.createElement("div", { className: "tntd-virtual-tree-item-expand-icon" }, hasChild ? (React.createElement(Icon, { type: bool ? 'caret-down' : 'caret-right', onClick: () => handleToggle(item) })) : ('')),
202
+ checkable ? (React.createElement("div", { className: "tntd-virtual-tree-item-checkbox" },
203
+ React.createElement(Checkbox, Object.assign({}, checkBoxAttrs)))) : (''),
204
+ React.createElement("div", { className: `tntd-virtual-tree-title`, onClick: () => handleChoosed(item) }, titleRender ? titleRender(item) : defaultRenderItem(item, isOrg)))));
205
+ }))));
315
206
  };
316
- var _default = exports["default"] = VirtualTree;
207
+ export default VirtualTree;
208
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tntd-virtual-tree/index.jsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * @Descripttion: 基于antd3 tree 部分api实现的tree,增加了虚拟滚动\n * @Author: 郑泳健\n * @Date: 2024-07-31 14:46:55\n * @LastEditors: 郑泳健\n * @LastEditTime: 2024-11-15 10:52:13\n */\nimport React, { useState, useMemo, useEffect, useRef } from 'react';\nimport List from 'rc-virtual-list';\nimport { uniq } from 'lodash';\nimport Icon from '../icon';\nimport Ellipsis from '../ellipsis';\nimport Empty from '../empty';\nimport Checkbox from '../checkbox';\nimport {\n flatTreeData,\n findNodeDetail,\n getFullExpandedKeys,\n getFullCheckedKeys,\n getNodeParentChoosed,\n addTreeNodeAttrs,\n getIndeterminate\n} from './utils';\nimport { getLanguage } from '../prev-locale';\nimport './index.less';\n\nconst VirtualTree = ({\n indent = 24,\n isOrg,\n showPrefixIcon,\n value,\n itemHeight = 32,\n height,\n filterKey,\n treeData,\n checkable,\n checkStrictly,\n checkedKeys,\n defaultExpandAll = true,\n expandedKeys,\n fieldNames,\n titleRender,\n onCheck,\n onExpand,\n onSelect\n}) => {\n const ref = React.useRef(null);\n const expandChangedRef = useRef(0);\n const checkedChangeRef = useRef(0);\n // 展开的节点列表\n const [expandedList, setExpandedList] = useState([]);\n // checked 节点列表\n const [checkedList, setCheckedList] = useState([]);\n // 当前被选中的节点\n const [choosedValue, setChoosedValue] = useState(undefined);\n\n useEffect(() => {\n if (!checkable) {\n setChoosedValue(value);\n }\n }, [value, checkable]);\n\n /** 给每个节点增加属性keys,值为其下面所有节点的集合 */\n const treeDataWithKeys = useMemo(() => {\n return addTreeNodeAttrs(treeData, fieldNames);\n }, [treeData, fieldNames]);\n\n /** 默认是否全部展开 */\n const mergeDefaultExpandAll = useMemo(() => {\n if (Array.isArray(expandedKeys)) {\n return false;\n }\n\n return defaultExpandAll;\n }, [defaultExpandAll, expandedKeys]);\n\n /** 获取到所有选中的节点,因为checkedKeys可能传入的是最后一级 */\n useEffect(() => {\n // 非第一次\n if (checkedChangeRef.current > 0) {\n setCheckedList(checkedKeys);\n return;\n }\n\n if (checkable) {\n // 如果是受控\n if (checkStrictly) {\n setCheckedList(uniq(Array.isArray(checkedKeys) ? checkedKeys : []));\n return;\n }\n const transCheckedKeys = Array.isArray(checkedKeys)\n ? checkedKeys.reduce((total, item) => {\n total.push(item);\n const { needCheckedChildrenValues } = findNodeDetail(treeDataWithKeys, item) || {};\n total = [...total, ...needCheckedChildrenValues];\n return total;\n }, [])\n : [];\n const _checkedKeys = getFullCheckedKeys(treeDataWithKeys, transCheckedKeys);\n setCheckedList(uniq(_checkedKeys));\n }\n }, [treeDataWithKeys, checkStrictly, checkable, checkedKeys]);\n\n useEffect(() => {\n setExpandedList(expandedKeys);\n }, [expandedKeys]);\n\n /** 初始化获取到所有展开的节点,因为初始化expandedKeys可能传入的是最后一级 */\n useEffect(() => {\n if (expandChangedRef.current === 0) {\n // 展开的节点\n const transExpandedKeys = Array.isArray(expandedKeys) ? expandedKeys : [];\n const _expandedKeys = getFullExpandedKeys(treeDataWithKeys, transExpandedKeys, mergeDefaultExpandAll);\n setExpandedList(_expandedKeys);\n }\n }, [treeDataWithKeys, expandedKeys, mergeDefaultExpandAll]);\n\n /** 最终渲染的数据 */\n const renderData = useMemo(() => {\n return flatTreeData(treeDataWithKeys, filterKey, expandedList);\n }, [treeDataWithKeys, filterKey, expandedList]);\n\n /** 切换展开/收起 */\n const handleToggle = (item) => {\n expandChangedRef.current++;\n const { value } = item || {};\n const bool = Array.isArray(expandedList) ? expandedList.includes(value) : false;\n if (bool) {\n const list = Array.isArray(expandedList) ? expandedList.filter((i) => i !== value) : [];\n if (onExpand) {\n onExpand(uniq(list), { node: item, expanded: !bool });\n return;\n }\n setExpandedList(uniq(list));\n } else {\n const arr = uniq([...expandedList, value]);\n if (onExpand) {\n onExpand(arr, { node: item, expanded: !bool });\n return;\n }\n setExpandedList(arr);\n }\n };\n\n const handleCheck = (item, isChecked) => {\n const { value: _value, children, disabled } = item;\n if (disabled) {\n return;\n }\n checkedChangeRef.current++;\n // 需要增删的子节点\n const itemChildrenValues = Array.isArray(children) && !!children.length ? item.needCheckedChildrenValues : [];\n if (isChecked) {\n // 需要删除的父节点\n const itemParentValues = Array.isArray(item.needCheckedSiblingsValue) ? item.needCheckedSiblingsValue.map((i) => i.key) : [];\n // 当前节点所有的父节点\n const delList = checkStrictly ? [_value] : [...itemChildrenValues, ...itemParentValues, _value];\n const _checkedList = checkedList.filter((i) => !delList.includes(i));\n if (onCheck) {\n onCheck?.(uniq(_checkedList), item, !isChecked);\n return;\n }\n\n setCheckedList(uniq(_checkedList));\n } else {\n // 递归循环其上级是否也要被选中\n const itemParentValues = getNodeParentChoosed(item.needCheckedSiblingsValue, [...checkedList, ...itemChildrenValues, _value]);\n const addList = checkStrictly ? [_value] : [...itemChildrenValues, ...itemParentValues, _value];\n const _checkedList = [...checkedList, ...addList];\n\n if (onCheck) {\n onCheck?.(uniq(_checkedList), item, !isChecked);\n return;\n }\n setCheckedList(uniq(_checkedList));\n }\n };\n\n const handleChoosed = (item) => {\n if (item.disabled) {\n return;\n }\n setChoosedValue(item.value);\n if (!checkable) {\n onSelect?.(item.value);\n }\n };\n\n const renderOrgItem = (item, lang) => {\n const mapResult = {\n 1: {\n cn: '职能部门',\n en: 'Func. Dept.',\n icon: 'crowd'\n },\n 2: {\n icon: 'corporation'\n }\n };\n\n const result = mapResult[item?.orgAttribute] || {};\n\n return (\n <div className=\"org-item-wrapper\">\n {showPrefixIcon ? <Icon type={result?.['icon']} style={{ marginTop: 3, marginRight: 4 }} /> : ''}\n <Ellipsis title={item.title} widthLimit={'100%'} />\n {String(item.orgAttribute) === '1' && <span className=\"org-functional-departemt-marker\">{result[lang] || '职能部门'}</span>}\n </div>\n );\n };\n\n const defaultRenderItem = (item, isOrg = true) => {\n if (isOrg) {\n return renderOrgItem(item, getLanguage());\n }\n return <Ellipsis title={item.title} widthLimit={'100%'} />;\n };\n\n const adjustHeight = useMemo(() => {\n if (Array.isArray(renderData)) {\n if (renderData.length >= 10) {\n return height;\n }\n return itemHeight * renderData.length;\n }\n return 100;\n }, [renderData, itemHeight, height]);\n\n return (\n <div className=\"tntd-virtual-tree\">\n {!Array.isArray(renderData) || !renderData.length ? (\n <Empty size=\"small\" />\n ) : (\n <List ref={ref} height={adjustHeight || 300} itemHeight={itemHeight} data={renderData} itemKey={'value'}>\n {(item) => {\n const { indexLevel, children, disabled } = item;\n const bool = Array.isArray(expandedList) ? expandedList.includes(item.value) : false;\n // 当前节点半选状态\n const indeterminateStatus = getIndeterminate(item, checkedList);\n // 当前节点是否被选中\n const checkedBingo = Array.isArray(checkedList) ? checkedList.includes(item.value) : false;\n const isChecked = !checkStrictly || disabled ? checkedBingo && !indeterminateStatus : checkedBingo;\n const hasChild = Array.isArray(children) && !!children.length\n const checkBoxAttrs = {\n className: `${disabled ? 'tntd-virtual-tree-checkbox-disabled' : ''}`,\n onChange: () => handleCheck(item, isChecked),\n checked: isChecked,\n disabled\n };\n // 状态没有半选模式\n if (!checkStrictly) {\n checkBoxAttrs.indeterminate = indeterminateStatus;\n }\n return (\n <div\n className={`tntd-virtual-tree-item ${disabled ? 'tntd-virtual-tree-item_disabled' : ''} ${\n choosedValue === item.value ? 'tntd-virtual-tree-item_active' : ''\n }`}\n key={item.value}>\n <div style={{ paddingLeft: indexLevel !== 0 ? indexLevel * indent - 4 : 0, width: '100%' }}>\n <div className=\"tntd-virtual-tree-item-expand-icon\">\n {hasChild ? (\n <Icon type={bool ? 'caret-down' : 'caret-right'} onClick={() => handleToggle(item)} />\n ) : (\n ''\n )}\n </div>\n\n {checkable ? (\n <div className=\"tntd-virtual-tree-item-checkbox\">\n <Checkbox {...checkBoxAttrs} />\n </div>\n ) : (\n ''\n )}\n\n <div className={`tntd-virtual-tree-title`} style={{ marginLeft: isOrg && !hasChild ? 0: 0 }} onClick={() => handleChoosed(item)}>\n {titleRender ? titleRender(item) : defaultRenderItem(item, isOrg)}\n </div>\n </div>\n </div>\n );\n }}\n </List>\n )}\n </div>\n );\n};\n\nexport default VirtualTree;\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tntd-virtual-tree/index.jsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * @Descripttion: 基于antd3 tree 部分api实现的tree,增加了虚拟滚动\n * @Author: 郑泳健\n * @Date: 2024-07-31 14:46:55\n * @LastEditors: 郑泳健\n * @LastEditTime: 2024-11-15 10:52:13\n */\nimport React, { useState, useMemo, useEffect, useRef } from 'react';\nimport List from 'rc-virtual-list';\nimport { uniq } from 'lodash';\nimport Icon from '../icon';\nimport Ellipsis from '../ellipsis';\nimport Empty from '../empty';\nimport Checkbox from '../checkbox';\nimport {\n flatTreeData,\n findNodeDetail,\n getFullExpandedKeys,\n getFullCheckedKeys,\n getNodeParentChoosed,\n addTreeNodeAttrs,\n getIndeterminate\n} from './utils';\nimport { getLanguage } from '../prev-locale';\nimport './index.less';\n\nconst VirtualTree = ({\n indent = 24,\n isOrg,\n showPrefixIcon,\n value,\n itemHeight = 32,\n height,\n filterKey,\n treeData,\n checkable,\n checkStrictly,\n checkedKeys,\n defaultExpandAll = true,\n expandedKeys,\n fieldNames,\n titleRender,\n onCheck,\n onExpand,\n onSelect\n}) => {\n const ref = React.useRef(null);\n const expandChangedRef = useRef(0);\n const checkedChangeRef = useRef(0);\n // 展开的节点列表\n const [expandedList, setExpandedList] = useState([]);\n // checked 节点列表\n const [checkedList, setCheckedList] = useState([]);\n // 当前被选中的节点\n const [choosedValue, setChoosedValue] = useState(undefined);\n\n useEffect(() => {\n if (!checkable) {\n setChoosedValue(value);\n }\n }, [value, checkable]);\n\n /** 给每个节点增加属性keys,值为其下面所有节点的集合 */\n const treeDataWithKeys = useMemo(() => {\n return addTreeNodeAttrs(treeData, fieldNames);\n }, [treeData, fieldNames]);\n\n /** 默认是否全部展开 */\n const mergeDefaultExpandAll = useMemo(() => {\n if (Array.isArray(expandedKeys)) {\n return false;\n }\n\n return defaultExpandAll;\n }, [defaultExpandAll, expandedKeys]);\n\n /** 获取到所有选中的节点,因为checkedKeys可能传入的是最后一级 */\n useEffect(() => {\n // 非第一次\n if (checkedChangeRef.current > 0) {\n setCheckedList(checkedKeys);\n return;\n }\n\n if (checkable) {\n // 如果是受控\n if (checkStrictly) {\n setCheckedList(uniq(Array.isArray(checkedKeys) ? checkedKeys : []));\n return;\n }\n const transCheckedKeys = Array.isArray(checkedKeys)\n ? checkedKeys.reduce((total, item) => {\n total.push(item);\n const { needCheckedChildrenValues } = findNodeDetail(treeDataWithKeys, item) || {};\n total = [...total, ...needCheckedChildrenValues];\n return total;\n }, [])\n : [];\n const _checkedKeys = getFullCheckedKeys(treeDataWithKeys, transCheckedKeys);\n setCheckedList(uniq(_checkedKeys));\n }\n }, [treeDataWithKeys, checkStrictly, checkable, checkedKeys]);\n\n useEffect(() => {\n setExpandedList(expandedKeys);\n }, [expandedKeys]);\n\n /** 初始化获取到所有展开的节点,因为初始化expandedKeys可能传入的是最后一级 */\n useEffect(() => {\n if (expandChangedRef.current === 0) {\n // 展开的节点\n const transExpandedKeys = Array.isArray(expandedKeys) ? expandedKeys : [];\n const _expandedKeys = getFullExpandedKeys(treeDataWithKeys, transExpandedKeys, mergeDefaultExpandAll);\n setExpandedList(_expandedKeys);\n }\n }, [treeDataWithKeys, expandedKeys, mergeDefaultExpandAll]);\n\n /** 最终渲染的数据 */\n const renderData = useMemo(() => {\n return flatTreeData(treeDataWithKeys, filterKey, expandedList);\n }, [treeDataWithKeys, filterKey, expandedList]);\n\n /** 切换展开/收起 */\n const handleToggle = (item) => {\n expandChangedRef.current++;\n const { value } = item || {};\n const bool = Array.isArray(expandedList) ? expandedList.includes(value) : false;\n if (bool) {\n const list = Array.isArray(expandedList) ? expandedList.filter((i) => i !== value) : [];\n if (onExpand) {\n onExpand(uniq(list), { node: item, expanded: !bool });\n return;\n }\n setExpandedList(uniq(list));\n } else {\n const arr = uniq([...expandedList, value]);\n if (onExpand) {\n onExpand(arr, { node: item, expanded: !bool });\n return;\n }\n setExpandedList(arr);\n }\n };\n\n const handleCheck = (item, isChecked) => {\n const { value: _value, children, disabled } = item;\n if (disabled) {\n return;\n }\n checkedChangeRef.current++;\n // 需要增删的子节点\n const itemChildrenValues = Array.isArray(children) && !!children.length ? item.needCheckedChildrenValues : [];\n if (isChecked) {\n // 需要删除的父节点\n const itemParentValues = Array.isArray(item.needCheckedSiblingsValue) ? item.needCheckedSiblingsValue.map((i) => i.key) : [];\n // 当前节点所有的父节点\n const delList = checkStrictly ? [_value] : [...itemChildrenValues, ...itemParentValues, _value];\n const _checkedList = checkedList.filter((i) => !delList.includes(i));\n if (onCheck) {\n onCheck?.(uniq(_checkedList), item, !isChecked);\n return;\n }\n\n setCheckedList(uniq(_checkedList));\n } else {\n // 递归循环其上级是否也要被选中\n const itemParentValues = getNodeParentChoosed(item.needCheckedSiblingsValue, [...checkedList, ...itemChildrenValues, _value]);\n const addList = checkStrictly ? [_value] : [...itemChildrenValues, ...itemParentValues, _value];\n const _checkedList = [...checkedList, ...addList];\n\n if (onCheck) {\n onCheck?.(uniq(_checkedList), item, !isChecked);\n return;\n }\n setCheckedList(uniq(_checkedList));\n }\n };\n\n const handleChoosed = (item) => {\n if (item.disabled) {\n return;\n }\n setChoosedValue(item.value);\n if (!checkable) {\n onSelect?.(item.value);\n }\n };\n\n const renderOrgItem = (item, lang) => {\n const mapResult = {\n 1: {\n cn: '职能部门',\n en: 'Func. Dept.',\n icon: 'crowd'\n },\n 2: {\n icon: 'corporation'\n }\n };\n\n const result = mapResult[item?.orgAttribute] || {};\n\n return (\n <div className=\"org-item-wrapper\">\n {showPrefixIcon ? <Icon type={result?.['icon']} style={{ marginTop: 3, marginRight: 4 }} /> : ''}\n <Ellipsis title={item.title} widthLimit={'100%'} />\n {String(item.orgAttribute) === '1' && <span className=\"org-functional-departemt-marker\">{result[lang] || '职能部门'}</span>}\n </div>\n );\n };\n\n const defaultRenderItem = (item, isOrg = true) => {\n if (isOrg) {\n return renderOrgItem(item, getLanguage());\n }\n return <Ellipsis title={item.title} widthLimit={'100%'} />;\n };\n\n const adjustHeight = useMemo(() => {\n if (Array.isArray(renderData)) {\n if (renderData.length >= 10) {\n return height;\n }\n return itemHeight * renderData.length;\n }\n return 100;\n }, [renderData, itemHeight, height]);\n\n return (\n <div className=\"tntd-virtual-tree\">\n {!Array.isArray(renderData) || !renderData.length ? (\n <Empty size=\"small\" />\n ) : (\n <List ref={ref} height={adjustHeight || 300} itemHeight={itemHeight} data={renderData} itemKey={'value'}>\n {(item) => {\n const { indexLevel, children, disabled } = item;\n const bool = Array.isArray(expandedList) ? expandedList.includes(item.value) : false;\n // 当前节点半选状态\n const indeterminateStatus = getIndeterminate(item, checkedList);\n // 当前节点是否被选中\n const checkedBingo = Array.isArray(checkedList) ? checkedList.includes(item.value) : false;\n const isChecked = !checkStrictly || disabled ? checkedBingo && !indeterminateStatus : checkedBingo;\n const hasChild = Array.isArray(children) && !!children.length\n const checkBoxAttrs = {\n className: `${disabled ? 'tntd-virtual-tree-checkbox-disabled' : ''}`,\n onChange: () => handleCheck(item, isChecked),\n checked: isChecked,\n disabled\n };\n // 状态没有半选模式\n if (!checkStrictly) {\n checkBoxAttrs.indeterminate = indeterminateStatus;\n }\n return (\n <div\n className={`tntd-virtual-tree-item ${disabled ? 'tntd-virtual-tree-item_disabled' : ''} ${\n choosedValue === item.value ? 'tntd-virtual-tree-item_active' : ''\n }`}\n key={item.value}>\n <div style={{ paddingLeft: indexLevel !== 0 ? indexLevel * indent - 4 : 0, width: '100%' }}>\n <div className=\"tntd-virtual-tree-item-expand-icon\">\n {hasChild ? (\n <Icon type={bool ? 'caret-down' : 'caret-right'} onClick={() => handleToggle(item)} />\n ) : (\n ''\n )}\n </div>\n\n {checkable ? (\n <div className=\"tntd-virtual-tree-item-checkbox\">\n <Checkbox {...checkBoxAttrs} />\n </div>\n ) : (\n ''\n )}\n\n <div className={`tntd-virtual-tree-title`} onClick={() => handleChoosed(item)}>\n {titleRender ? titleRender(item) : defaultRenderItem(item, isOrg)}\n </div>\n </div>\n </div>\n );\n }}\n </List>\n )}\n </div>\n );\n};\n\nexport default VirtualTree;\n"]}