tntd 2.6.5 → 2.6.6

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 (751) hide show
  1. package/es/affix/index.js +2 -1
  2. package/es/alert/index.js +2 -1
  3. package/es/anchor/index.js +2 -1
  4. package/es/array-input/icon.js +6 -24
  5. package/es/array-input/index.js +119 -203
  6. package/es/auth-context/index.js +2 -1
  7. package/es/auto-complete/index.js +2 -1
  8. package/es/avatar/index.js +2 -1
  9. package/es/back-top/index.js +2 -1
  10. package/es/badge/index.js +2 -1
  11. package/es/breadcrumb/index.js +2 -1
  12. package/es/button/index.js +2 -1
  13. package/es/calendar/index.js +2 -1
  14. package/es/card/index.js +2 -1
  15. package/es/carousel/index.js +2 -1
  16. package/es/cascader/index.js +2 -1
  17. package/es/checkbox/index.js +2 -1
  18. package/es/col/index.js +2 -1
  19. package/es/collapse/index.js +2 -1
  20. package/es/color-picker/ColorPicker.js +80 -126
  21. package/es/color-picker/index.js +5 -8
  22. package/es/columns/index.js +30 -66
  23. package/es/columns/style/index.js +2 -1
  24. package/es/comment/index.js +2 -1
  25. package/es/config-provider/config-provider.js +2 -1
  26. package/es/config-provider/index.js +2 -1
  27. package/es/date-picker/index.js +2 -1
  28. package/es/descriptions/descriptions.js +30 -38
  29. package/es/descriptions/index.js +2 -1
  30. package/es/development-login/LoginModal.js +46 -81
  31. package/es/development-login/index.js +8 -17
  32. package/es/divider/index.js +2 -1
  33. package/es/drawer/drawer.js +20 -27
  34. package/es/drawer/index.js +2 -1
  35. package/es/dropdown/index.js +2 -1
  36. package/es/ellipsis/Svg/CopySVG.js +16 -63
  37. package/es/ellipsis/Svg/TickSVG.js +11 -41
  38. package/es/ellipsis/index.js +78 -115
  39. package/es/empty/empty.js +48 -58
  40. package/es/empty/empty.stories.js +6 -5
  41. package/es/empty/index.js +2 -1
  42. package/es/exception/exception.js +19 -32
  43. package/es/exception/index.js +2 -1
  44. package/es/form/index.js +2 -1
  45. package/es/handle/index.js +76 -110
  46. package/es/handle/index.js.map +1 -1
  47. package/es/icon/index.js +2 -1
  48. package/es/icon-list/index.js +120 -1
  49. package/es/img/Contain.js +39 -60
  50. package/es/img/Cover.js +72 -98
  51. package/es/img/index.js +32 -48
  52. package/es/index.js +2 -1
  53. package/es/input/index.js +2 -1
  54. package/es/input/input.js +52 -98
  55. package/es/input/input.js.map +1 -1
  56. package/es/input-number/index.js +2 -1
  57. package/es/label/index.js +98 -115
  58. package/es/layout/index.js +2 -1
  59. package/es/list/index.js +2 -1
  60. package/es/loading-button/index.js +28 -33
  61. package/es/locale/default.js +4 -3
  62. package/es/locale/en_US.js +31 -30
  63. package/es/locale/en_US.js.map +1 -1
  64. package/es/locale/index.js +2 -1
  65. package/es/locale/zh_CN.js +31 -30
  66. package/es/locale-provider/index.js +3 -2
  67. package/es/mention/index.js +2 -1
  68. package/es/mentions/index.js +2 -1
  69. package/es/menu/index.js +2 -1
  70. package/es/message/index.js +2 -1
  71. package/es/modal/index.js +2 -1
  72. package/es/modal/modal.js +17 -20
  73. package/es/notification/index.js +2 -1
  74. package/es/page/Box.js +33 -49
  75. package/es/page/index.js +84 -119
  76. package/es/page/utils.js +14 -12
  77. package/es/page-header/index.js +2 -1
  78. package/es/pagination/index.js +2 -1
  79. package/es/popconfirm/index.js +2 -1
  80. package/es/popover/index.js +2 -1
  81. package/es/prev-locale.js +49 -50
  82. package/es/prev-locale.js.map +1 -1
  83. package/es/progress/index.js +2 -1
  84. package/es/query-form/Field/Checkbox.js +17 -20
  85. package/es/query-form/Field/Select.js +39 -54
  86. package/es/query-form/Field/SelectInput.js +45 -63
  87. package/es/query-form/Field/fieldsMap.js +20 -19
  88. package/es/query-form/Field/index.js +66 -104
  89. package/es/query-form/createActions.js +46 -46
  90. package/es/query-form/index.js +247 -327
  91. package/es/query-form/index.js.map +1 -1
  92. package/es/query-form/useForm.js +4 -3
  93. package/es/query-list-scene/List.js +255 -321
  94. package/es/query-list-scene/QueryForm.js +94 -132
  95. package/es/query-list-scene/QueryListScene.js +21 -29
  96. package/es/query-list-scene/Title.js +4 -6
  97. package/es/query-list-scene/Toolbar.js +15 -21
  98. package/es/query-list-scene/createActions.js +60 -60
  99. package/es/query-list-scene/index.js +2 -1
  100. package/es/query-list-scene/useActions.js +4 -3
  101. package/es/radio/index.js +2 -1
  102. package/es/rate/index.js +2 -1
  103. package/es/render-empty/index.js +2 -1
  104. package/es/render-empty/render-empty.js +16 -19
  105. package/es/result/index.js +2 -1
  106. package/es/row/index.js +2 -1
  107. package/es/select/index.js +2 -1
  108. package/es/select/select.js +21 -26
  109. package/es/select/select.js.map +1 -1
  110. package/es/skeleton/index.js +2 -1
  111. package/es/slider/index.js +2 -1
  112. package/es/spin/index.js +2 -1
  113. package/es/statistic/index.js +2 -1
  114. package/es/steps/index.js +2 -1
  115. package/es/steps/steps.js +35 -51
  116. package/es/svg-components/illustration-403.js +58 -206
  117. package/es/svg-components/illustration-404.js +75 -290
  118. package/es/svg-components/illustration-500.js +83 -321
  119. package/es/svg-components/illustration-empty.js +15 -54
  120. package/es/svg-components/illustration-failure.js +36 -112
  121. package/es/svg-components/illustration-no-access.js +35 -114
  122. package/es/svg-components/illustration-no-chart.js +37 -134
  123. package/es/svg-components/illustration-no-result.js +32 -92
  124. package/es/svg-components/illustration-offline.js +43 -131
  125. package/es/svg-components/illustration-success.js +43 -137
  126. package/es/svg-components/index.js +2 -1
  127. package/es/switch/index.js +2 -1
  128. package/es/table/assets/image-loading-background.js +17 -45
  129. package/es/table/assets/image-loading.js +5 -26
  130. package/es/table/constants.js +2 -1
  131. package/es/table/context.js +2 -1
  132. package/es/table/hooks/index.js +2 -1
  133. package/es/table/hooks/use-column-setting.js +16 -13
  134. package/es/table/index.js +2 -1
  135. package/es/table/table.js +55 -80
  136. package/es/table/table.stories.js +139 -148
  137. package/es/table/utils.js +18 -17
  138. package/es/tabs/index.js +2 -1
  139. package/es/tag/index.js +2 -1
  140. package/es/time-picker/index.js +2 -1
  141. package/es/timeline/index.js +2 -1
  142. package/es/title/index.js +20 -34
  143. package/es/tntd-cascader/AntdCascader/component/DisabledContext.js +5 -9
  144. package/es/tntd-cascader/AntdCascader/component/FormItemInputContext.js +2 -1
  145. package/es/tntd-cascader/AntdCascader/component/SizeContext.js +2 -1
  146. package/es/tntd-cascader/AntdCascader/component/context.js +7 -5
  147. package/es/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js +10 -22
  148. package/es/tntd-cascader/AntdCascader/component/getIcons.js +50 -72
  149. package/es/tntd-cascader/AntdCascader/component/useCompactItemContext.js +20 -22
  150. package/es/tntd-cascader/AntdCascader/config/utils.js +18 -17
  151. package/es/tntd-cascader/AntdCascader/config/warning.js +10 -9
  152. package/es/tntd-cascader/AntdCascader/index.js +118 -189
  153. package/es/tntd-cascader/AntdCascader/interface.js +2 -1
  154. package/es/tntd-cascader/index.js +2 -1
  155. package/es/tntd-cascader/rc-cascader/Cascader.js +239 -256
  156. package/es/tntd-cascader/rc-cascader/OptionList/Checkbox.js +11 -21
  157. package/es/tntd-cascader/rc-cascader/OptionList/Column.js +116 -175
  158. package/es/tntd-cascader/rc-cascader/OptionList/index.js +128 -180
  159. package/es/tntd-cascader/rc-cascader/OptionList/useActive.js +19 -22
  160. package/es/tntd-cascader/rc-cascader/OptionList/useKeyboard.js +137 -144
  161. package/es/tntd-cascader/rc-cascader/context.js +2 -1
  162. package/es/tntd-cascader/rc-cascader/hooks/useDisplayValues.js +37 -44
  163. package/es/tntd-cascader/rc-cascader/hooks/useEntities.js +24 -25
  164. package/es/tntd-cascader/rc-cascader/hooks/useMissingValues.js +17 -15
  165. package/es/tntd-cascader/rc-cascader/hooks/useRefFunc.js +8 -7
  166. package/es/tntd-cascader/rc-cascader/hooks/useSearchConfig.js +21 -20
  167. package/es/tntd-cascader/rc-cascader/hooks/useSearchOptions.js +41 -51
  168. package/es/tntd-cascader/rc-cascader/index.js +2 -1
  169. package/es/tntd-cascader/rc-cascader/utils/commonUtil.js +27 -33
  170. package/es/tntd-cascader/rc-cascader/utils/treeUtil.js +32 -29
  171. package/es/tntd-cascader/rc-cascader/utils/warningPropsUtil.js +23 -26
  172. package/es/tntd-form/TntdForm/components/Item.js +30 -42
  173. package/es/tntd-form/TntdForm/components/ItemComp.js +158 -167
  174. package/es/tntd-form/TntdForm/components/ItemComp.js.map +1 -1
  175. package/es/tntd-form/TntdForm/components/List.js +78 -89
  176. package/es/tntd-form/TntdForm/index.js +33 -38
  177. package/es/tntd-form/TntdForm/interface.js +2 -1
  178. package/es/tntd-form/TntdForm/store.js +2 -1
  179. package/es/tntd-form/TntdForm/utils.js +168 -158
  180. package/es/tntd-form/index.js +2 -1
  181. package/es/tntd-icon/fonts/iconfont.js +53 -36
  182. package/es/tntd-icon/index.js +17 -23
  183. package/es/tntd-layout/ActionsContext.js +2 -1
  184. package/es/tntd-layout/AppList.js +77 -135
  185. package/es/tntd-layout/Application.js +29 -42
  186. package/es/tntd-layout/Avatar.js +42 -80
  187. package/es/tntd-layout/CompatibleLanguage.js +56 -93
  188. package/es/tntd-layout/EnterpriseLayout/Avatar.js +47 -93
  189. package/es/tntd-layout/EnterpriseLayout/Language.js +34 -56
  190. package/es/tntd-layout/EnterpriseLayout/Theme.js +24 -45
  191. package/es/tntd-layout/EnterpriseLayout/index.js +9 -17
  192. package/es/tntd-layout/GlobalNavigation/NavigationPopup.js +153 -212
  193. package/es/tntd-layout/GlobalNavigation/index.js +50 -84
  194. package/es/tntd-layout/Header.js +26 -59
  195. package/es/tntd-layout/HeaderActions.js +34 -83
  196. package/es/tntd-layout/HeaderNavs.js +35 -46
  197. package/es/tntd-layout/HeaderTabs.js +140 -176
  198. package/es/tntd-layout/Iconfont.js +2 -1
  199. package/es/tntd-layout/Language.js +33 -55
  200. package/es/tntd-layout/Layout.js +78 -176
  201. package/es/tntd-layout/Logo.js +40 -52
  202. package/es/tntd-layout/OrgAppList.js +139 -208
  203. package/es/tntd-layout/SideMenu.js +160 -230
  204. package/es/tntd-layout/Theme.js +29 -47
  205. package/es/tntd-layout/createActions.js +29 -28
  206. package/es/tntd-layout/images/index.js +32 -31
  207. package/es/tntd-layout/index.js +60 -92
  208. package/es/tntd-layout/paaslayout/CompactSideMenu.js +65 -109
  209. package/es/tntd-layout/paaslayout/Header.js +14 -37
  210. package/es/tntd-layout/paaslayout/Logo.js +3 -2
  211. package/es/tntd-layout/paaslayout/SideMenu.js +63 -109
  212. package/es/tntd-layout/paaslayout/index.js +79 -159
  213. package/es/tntd-layout/storage.js +11 -18
  214. package/es/tntd-modal/index.js +32 -73
  215. package/es/tntd-second-page/index.js +24 -47
  216. package/es/tntd-select/DropDownWrap.js +52 -73
  217. package/es/tntd-select/index.js +498 -585
  218. package/es/tooltip/index.js +2 -1
  219. package/es/transfer/index.js +2 -1
  220. package/es/tree/index.js +2 -1
  221. package/es/tree-select/index.js +2 -1
  222. package/es/typography/index.js +2 -1
  223. package/es/upload/index.js +2 -1
  224. package/es/utils/checkAuth.js +21 -24
  225. package/es/utils/findMenuInfoByPath.js +30 -33
  226. package/es/utils/index.js +59 -65
  227. package/es/version/index.js +2 -1
  228. package/lib/affix/index.d.ts +3 -3
  229. package/lib/affix/index.js +19 -24
  230. package/lib/affix/index.js.map +1 -1
  231. package/lib/alert/index.d.ts +3 -3
  232. package/lib/alert/index.js +19 -24
  233. package/lib/alert/index.js.map +1 -1
  234. package/lib/anchor/index.d.ts +3 -3
  235. package/lib/anchor/index.js +19 -24
  236. package/lib/anchor/index.js.map +1 -1
  237. package/lib/array-input/icon.js +12 -33
  238. package/lib/array-input/index.js +146 -254
  239. package/lib/array-input/index.js.map +1 -1
  240. package/lib/auth-context/index.js +4 -10
  241. package/lib/auto-complete/index.d.ts +3 -3
  242. package/lib/auto-complete/index.js +19 -24
  243. package/lib/auto-complete/index.js.map +1 -1
  244. package/lib/avatar/index.d.ts +3 -3
  245. package/lib/avatar/index.js +19 -24
  246. package/lib/avatar/index.js.map +1 -1
  247. package/lib/back-top/index.d.ts +3 -3
  248. package/lib/back-top/index.js +19 -24
  249. package/lib/back-top/index.js.map +1 -1
  250. package/lib/badge/index.d.ts +3 -3
  251. package/lib/badge/index.js +19 -24
  252. package/lib/badge/index.js.map +1 -1
  253. package/lib/breadcrumb/index.d.ts +3 -3
  254. package/lib/breadcrumb/index.js +19 -24
  255. package/lib/breadcrumb/index.js.map +1 -1
  256. package/lib/button/index.d.ts +3 -3
  257. package/lib/button/index.js +19 -24
  258. package/lib/button/index.js.map +1 -1
  259. package/lib/calendar/index.d.ts +3 -3
  260. package/lib/calendar/index.js +19 -24
  261. package/lib/calendar/index.js.map +1 -1
  262. package/lib/card/index.d.ts +3 -3
  263. package/lib/card/index.js +19 -24
  264. package/lib/card/index.js.map +1 -1
  265. package/lib/carousel/index.d.ts +3 -3
  266. package/lib/carousel/index.js +19 -24
  267. package/lib/carousel/index.js.map +1 -1
  268. package/lib/cascader/index.d.ts +3 -3
  269. package/lib/cascader/index.js +19 -24
  270. package/lib/cascader/index.js.map +1 -1
  271. package/lib/checkbox/index.d.ts +3 -3
  272. package/lib/checkbox/index.js +19 -24
  273. package/lib/checkbox/index.js.map +1 -1
  274. package/lib/col/index.d.ts +3 -3
  275. package/lib/col/index.js +19 -24
  276. package/lib/col/index.js.map +1 -1
  277. package/lib/collapse/index.d.ts +3 -3
  278. package/lib/collapse/index.js +20 -25
  279. package/lib/collapse/index.js.map +1 -1
  280. package/lib/color-picker/ColorPicker.js +109 -156
  281. package/lib/color-picker/ColorPicker.js.map +1 -1
  282. package/lib/color-picker/index.js +14 -18
  283. package/lib/color-picker/index.js.map +1 -1
  284. package/lib/columns/index.js +41 -81
  285. package/lib/columns/style/index.js +2 -1
  286. package/lib/comment/index.d.ts +3 -3
  287. package/lib/comment/index.js +19 -24
  288. package/lib/comment/index.js.map +1 -1
  289. package/lib/config-provider/config-provider.d.ts +1 -1
  290. package/lib/config-provider/config-provider.js +8 -12
  291. package/lib/config-provider/config-provider.js.map +1 -1
  292. package/lib/config-provider/index.d.ts +3 -3
  293. package/lib/config-provider/index.js +19 -24
  294. package/lib/config-provider/index.js.map +1 -1
  295. package/lib/date-picker/index.d.ts +3 -3
  296. package/lib/date-picker/index.js +19 -24
  297. package/lib/date-picker/index.js.map +1 -1
  298. package/lib/descriptions/descriptions.d.ts +4 -4
  299. package/lib/descriptions/descriptions.d.ts.map +1 -1
  300. package/lib/descriptions/descriptions.js +51 -64
  301. package/lib/descriptions/descriptions.js.map +1 -1
  302. package/lib/descriptions/index.d.ts +1 -1
  303. package/lib/descriptions/index.js +18 -23
  304. package/lib/descriptions/index.js.map +1 -1
  305. package/lib/development-login/LoginModal.js +75 -110
  306. package/lib/development-login/LoginModal.js.map +1 -1
  307. package/lib/development-login/index.js +31 -42
  308. package/lib/development-login/index.js.map +1 -1
  309. package/lib/divider/index.d.ts +3 -3
  310. package/lib/divider/index.js +19 -24
  311. package/lib/divider/index.js.map +1 -1
  312. package/lib/drawer/drawer.d.ts +1 -1
  313. package/lib/drawer/drawer.js +30 -41
  314. package/lib/drawer/drawer.js.map +1 -1
  315. package/lib/drawer/index.d.ts +2 -2
  316. package/lib/drawer/index.js +16 -22
  317. package/lib/drawer/index.js.map +1 -1
  318. package/lib/dropdown/index.d.ts +3 -3
  319. package/lib/dropdown/index.js +19 -24
  320. package/lib/dropdown/index.js.map +1 -1
  321. package/lib/ellipsis/Svg/CopySVG.js +20 -70
  322. package/lib/ellipsis/Svg/TickSVG.js +15 -48
  323. package/lib/ellipsis/index.js +111 -146
  324. package/lib/ellipsis/index.js.map +1 -1
  325. package/lib/empty/empty.d.ts +2 -2
  326. package/lib/empty/empty.js +71 -90
  327. package/lib/empty/empty.js.map +1 -1
  328. package/lib/empty/empty.stories.js +18 -19
  329. package/lib/empty/index.d.ts +1 -1
  330. package/lib/empty/index.js +16 -21
  331. package/lib/empty/index.js.map +1 -1
  332. package/lib/exception/exception.js +31 -46
  333. package/lib/exception/exception.js.map +1 -1
  334. package/lib/exception/index.js +15 -20
  335. package/lib/exception/index.js.map +1 -1
  336. package/lib/form/index.d.ts +3 -3
  337. package/lib/form/index.js +19 -24
  338. package/lib/form/index.js.map +1 -1
  339. package/lib/handle/index.d.ts.map +1 -1
  340. package/lib/handle/index.js +105 -140
  341. package/lib/handle/index.js.map +1 -1
  342. package/lib/icon/index.d.ts +3 -3
  343. package/lib/icon/index.js +19 -24
  344. package/lib/icon/index.js.map +1 -1
  345. package/lib/icon-list/index.js +121 -7
  346. package/lib/img/Contain.js +44 -69
  347. package/lib/img/Cover.js +78 -117
  348. package/lib/img/index.js +56 -74
  349. package/lib/img/index.js.map +1 -1
  350. package/lib/index.js +186 -621
  351. package/lib/input/index.d.ts +1 -1
  352. package/lib/input/index.js +16 -21
  353. package/lib/input/index.js.map +1 -1
  354. package/lib/input/input.d.ts +9 -18
  355. package/lib/input/input.d.ts.map +1 -1
  356. package/lib/input/input.js +61 -91
  357. package/lib/input/input.js.map +1 -1
  358. package/lib/input-number/index.d.ts +3 -3
  359. package/lib/input-number/index.js +19 -24
  360. package/lib/input-number/index.js.map +1 -1
  361. package/lib/label/index.d.ts +2 -2
  362. package/lib/label/index.js +133 -134
  363. package/lib/label/index.js.map +1 -1
  364. package/lib/layout/index.d.ts +3 -3
  365. package/lib/layout/index.js +19 -24
  366. package/lib/layout/index.js.map +1 -1
  367. package/lib/list/index.d.ts +3 -3
  368. package/lib/list/index.js +19 -24
  369. package/lib/list/index.js.map +1 -1
  370. package/lib/loading-button/index.js +51 -58
  371. package/lib/loading-button/index.js.map +1 -1
  372. package/lib/locale/default.js +10 -12
  373. package/lib/locale/default.js.map +1 -1
  374. package/lib/locale/en_US.js +36 -38
  375. package/lib/locale/en_US.js.map +1 -1
  376. package/lib/locale/index.js +15 -37
  377. package/lib/locale/index.js.map +1 -1
  378. package/lib/locale/zh_CN.js +36 -38
  379. package/lib/locale/zh_CN.js.map +1 -1
  380. package/lib/locale-provider/index.d.ts +3 -3
  381. package/lib/locale-provider/index.js +22 -27
  382. package/lib/locale-provider/index.js.map +1 -1
  383. package/lib/mention/index.d.ts +3 -3
  384. package/lib/mention/index.js +19 -24
  385. package/lib/mention/index.js.map +1 -1
  386. package/lib/mentions/index.d.ts +3 -3
  387. package/lib/mentions/index.js +19 -24
  388. package/lib/mentions/index.js.map +1 -1
  389. package/lib/menu/index.d.ts +3 -3
  390. package/lib/menu/index.js +19 -24
  391. package/lib/menu/index.js.map +1 -1
  392. package/lib/message/index.d.ts +3 -3
  393. package/lib/message/index.js +19 -24
  394. package/lib/message/index.js.map +1 -1
  395. package/lib/modal/index.d.ts +1 -1
  396. package/lib/modal/index.js +18 -23
  397. package/lib/modal/index.js.map +1 -1
  398. package/lib/modal/modal.d.ts +9 -9
  399. package/lib/modal/modal.js +45 -53
  400. package/lib/modal/modal.js.map +1 -1
  401. package/lib/notification/index.d.ts +3 -3
  402. package/lib/notification/index.js +19 -24
  403. package/lib/notification/index.js.map +1 -1
  404. package/lib/page/Box.js +40 -66
  405. package/lib/page/index.js +95 -147
  406. package/lib/page/utils.js +16 -22
  407. package/lib/page-header/index.d.ts +3 -3
  408. package/lib/page-header/index.js +19 -24
  409. package/lib/page-header/index.js.map +1 -1
  410. package/lib/pagination/index.d.ts +3 -3
  411. package/lib/pagination/index.js +19 -24
  412. package/lib/pagination/index.js.map +1 -1
  413. package/lib/popconfirm/index.d.ts +3 -3
  414. package/lib/popconfirm/index.js +19 -24
  415. package/lib/popconfirm/index.js.map +1 -1
  416. package/lib/popover/index.d.ts +3 -3
  417. package/lib/popover/index.js +19 -24
  418. package/lib/popover/index.js.map +1 -1
  419. package/lib/prev-locale.d.ts +1 -1
  420. package/lib/prev-locale.d.ts.map +1 -1
  421. package/lib/prev-locale.js +54 -67
  422. package/lib/prev-locale.js.map +1 -1
  423. package/lib/progress/index.d.ts +3 -3
  424. package/lib/progress/index.js +19 -24
  425. package/lib/progress/index.js.map +1 -1
  426. package/lib/query-form/Field/Checkbox.js +22 -28
  427. package/lib/query-form/Field/Select.js +64 -79
  428. package/lib/query-form/Field/Select.js.map +1 -1
  429. package/lib/query-form/Field/SelectInput.js +69 -85
  430. package/lib/query-form/Field/SelectInput.js.map +1 -1
  431. package/lib/query-form/Field/fieldsMap.d.ts +2 -2
  432. package/lib/query-form/Field/fieldsMap.js +32 -34
  433. package/lib/query-form/Field/index.d.ts +0 -6
  434. package/lib/query-form/Field/index.d.ts.map +1 -1
  435. package/lib/query-form/Field/index.js +91 -139
  436. package/lib/query-form/Field/index.js.map +1 -1
  437. package/lib/query-form/createActions.js +50 -53
  438. package/lib/query-form/index.d.ts +0 -9
  439. package/lib/query-form/index.d.ts.map +1 -1
  440. package/lib/query-form/index.js +282 -377
  441. package/lib/query-form/index.js.map +1 -1
  442. package/lib/query-form/useForm.js +11 -11
  443. package/lib/query-list-scene/List.d.ts +0 -13
  444. package/lib/query-list-scene/List.d.ts.map +1 -1
  445. package/lib/query-list-scene/List.js +285 -360
  446. package/lib/query-list-scene/List.js.map +1 -1
  447. package/lib/query-list-scene/QueryForm.d.ts +0 -3
  448. package/lib/query-list-scene/QueryForm.d.ts.map +1 -1
  449. package/lib/query-list-scene/QueryForm.js +103 -161
  450. package/lib/query-list-scene/QueryListScene.d.ts +0 -1
  451. package/lib/query-list-scene/QueryListScene.d.ts.map +1 -1
  452. package/lib/query-list-scene/QueryListScene.js +31 -66
  453. package/lib/query-list-scene/Title.js +9 -15
  454. package/lib/query-list-scene/Toolbar.js +20 -31
  455. package/lib/query-list-scene/createActions.js +64 -79
  456. package/lib/query-list-scene/index.js +24 -28
  457. package/lib/query-list-scene/useActions.js +11 -11
  458. package/lib/radio/index.d.ts +3 -3
  459. package/lib/radio/index.js +19 -24
  460. package/lib/radio/index.js.map +1 -1
  461. package/lib/rate/index.d.ts +3 -3
  462. package/lib/rate/index.js +19 -24
  463. package/lib/rate/index.js.map +1 -1
  464. package/lib/render-empty/index.js +4 -8
  465. package/lib/render-empty/render-empty.js +22 -28
  466. package/lib/render-empty/render-empty.js.map +1 -1
  467. package/lib/result/index.d.ts +3 -3
  468. package/lib/result/index.js +19 -24
  469. package/lib/result/index.js.map +1 -1
  470. package/lib/row/index.d.ts +3 -3
  471. package/lib/row/index.js +19 -24
  472. package/lib/row/index.js.map +1 -1
  473. package/lib/select/index.d.ts +2 -2
  474. package/lib/select/index.js +16 -22
  475. package/lib/select/index.js.map +1 -1
  476. package/lib/select/select.d.ts +7 -9
  477. package/lib/select/select.d.ts.map +1 -1
  478. package/lib/select/select.js +30 -39
  479. package/lib/select/select.js.map +1 -1
  480. package/lib/skeleton/index.d.ts +3 -3
  481. package/lib/skeleton/index.js +19 -24
  482. package/lib/skeleton/index.js.map +1 -1
  483. package/lib/slider/index.d.ts +3 -3
  484. package/lib/slider/index.js +19 -24
  485. package/lib/slider/index.js.map +1 -1
  486. package/lib/spin/index.d.ts +3 -3
  487. package/lib/spin/index.js +19 -24
  488. package/lib/spin/index.js.map +1 -1
  489. package/lib/statistic/index.d.ts +3 -3
  490. package/lib/statistic/index.js +19 -24
  491. package/lib/statistic/index.js.map +1 -1
  492. package/lib/steps/index.d.ts +1 -1
  493. package/lib/steps/index.js +16 -21
  494. package/lib/steps/index.js.map +1 -1
  495. package/lib/steps/steps.d.ts +3 -3
  496. package/lib/steps/steps.js +55 -72
  497. package/lib/steps/steps.js.map +1 -1
  498. package/lib/svg-components/illustration-403.d.ts +1 -1
  499. package/lib/svg-components/illustration-403.js +80 -217
  500. package/lib/svg-components/illustration-403.js.map +1 -1
  501. package/lib/svg-components/illustration-404.d.ts +1 -1
  502. package/lib/svg-components/illustration-404.js +97 -301
  503. package/lib/svg-components/illustration-404.js.map +1 -1
  504. package/lib/svg-components/illustration-500.d.ts +1 -1
  505. package/lib/svg-components/illustration-500.js +105 -332
  506. package/lib/svg-components/illustration-500.js.map +1 -1
  507. package/lib/svg-components/illustration-empty.d.ts +1 -1
  508. package/lib/svg-components/illustration-empty.js +37 -65
  509. package/lib/svg-components/illustration-empty.js.map +1 -1
  510. package/lib/svg-components/illustration-failure.d.ts +1 -1
  511. package/lib/svg-components/illustration-failure.js +58 -123
  512. package/lib/svg-components/illustration-failure.js.map +1 -1
  513. package/lib/svg-components/illustration-no-access.d.ts +1 -1
  514. package/lib/svg-components/illustration-no-access.js +57 -125
  515. package/lib/svg-components/illustration-no-access.js.map +1 -1
  516. package/lib/svg-components/illustration-no-chart.d.ts +1 -1
  517. package/lib/svg-components/illustration-no-chart.js +59 -145
  518. package/lib/svg-components/illustration-no-chart.js.map +1 -1
  519. package/lib/svg-components/illustration-no-result.d.ts +1 -1
  520. package/lib/svg-components/illustration-no-result.js +54 -103
  521. package/lib/svg-components/illustration-no-result.js.map +1 -1
  522. package/lib/svg-components/illustration-offline.d.ts +1 -1
  523. package/lib/svg-components/illustration-offline.js +65 -142
  524. package/lib/svg-components/illustration-offline.js.map +1 -1
  525. package/lib/svg-components/illustration-success.d.ts +1 -1
  526. package/lib/svg-components/illustration-success.js +65 -148
  527. package/lib/svg-components/illustration-success.js.map +1 -1
  528. package/lib/svg-components/index.js +26 -75
  529. package/lib/switch/index.d.ts +3 -3
  530. package/lib/switch/index.js +19 -24
  531. package/lib/switch/index.js.map +1 -1
  532. package/lib/table/assets/image-loading-background.d.ts +1 -1
  533. package/lib/table/assets/image-loading-background.js +39 -56
  534. package/lib/table/assets/image-loading-background.js.map +1 -1
  535. package/lib/table/assets/image-loading.d.ts +1 -1
  536. package/lib/table/assets/image-loading.js +27 -37
  537. package/lib/table/assets/image-loading.js.map +1 -1
  538. package/lib/table/constants.js +3 -6
  539. package/lib/table/context.js +4 -7
  540. package/lib/table/hooks/index.js +13 -15
  541. package/lib/table/hooks/index.js.map +1 -1
  542. package/lib/table/hooks/use-column-setting.d.ts +1 -1
  543. package/lib/table/hooks/use-column-setting.js +20 -37
  544. package/lib/table/hooks/use-column-setting.js.map +1 -1
  545. package/lib/table/index.d.ts +1 -1
  546. package/lib/table/index.js +16 -21
  547. package/lib/table/index.js.map +1 -1
  548. package/lib/table/table.d.ts +3 -3
  549. package/lib/table/table.js +90 -114
  550. package/lib/table/table.js.map +1 -1
  551. package/lib/table/table.stories.js +154 -182
  552. package/lib/table/utils.d.ts +1 -1
  553. package/lib/table/utils.js +25 -24
  554. package/lib/table/utils.js.map +1 -1
  555. package/lib/tabs/index.d.ts +3 -3
  556. package/lib/tabs/index.js +19 -24
  557. package/lib/tabs/index.js.map +1 -1
  558. package/lib/tag/index.d.ts +3 -3
  559. package/lib/tag/index.js +19 -24
  560. package/lib/tag/index.js.map +1 -1
  561. package/lib/time-picker/index.d.ts +3 -3
  562. package/lib/time-picker/index.js +19 -24
  563. package/lib/time-picker/index.js.map +1 -1
  564. package/lib/timeline/index.d.ts +3 -3
  565. package/lib/timeline/index.js +19 -24
  566. package/lib/timeline/index.js.map +1 -1
  567. package/lib/title/index.js +26 -45
  568. package/lib/tntd-cascader/AntdCascader/component/DisabledContext.js +27 -18
  569. package/lib/tntd-cascader/AntdCascader/component/DisabledContext.js.map +1 -1
  570. package/lib/tntd-cascader/AntdCascader/component/FormItemInputContext.js +22 -9
  571. package/lib/tntd-cascader/AntdCascader/component/FormItemInputContext.js.map +1 -1
  572. package/lib/tntd-cascader/AntdCascader/component/SizeContext.js +22 -9
  573. package/lib/tntd-cascader/AntdCascader/component/SizeContext.js.map +1 -1
  574. package/lib/tntd-cascader/AntdCascader/component/context.js +16 -18
  575. package/lib/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js +35 -36
  576. package/lib/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js.map +1 -1
  577. package/lib/tntd-cascader/AntdCascader/component/getIcons.js +71 -81
  578. package/lib/tntd-cascader/AntdCascader/component/getIcons.js.map +1 -1
  579. package/lib/tntd-cascader/AntdCascader/component/useCompactItemContext.js +46 -31
  580. package/lib/tntd-cascader/AntdCascader/component/useCompactItemContext.js.map +1 -1
  581. package/lib/tntd-cascader/AntdCascader/config/utils.d.ts +1 -1
  582. package/lib/tntd-cascader/AntdCascader/config/utils.js +27 -29
  583. package/lib/tntd-cascader/AntdCascader/config/warning.js +31 -19
  584. package/lib/tntd-cascader/AntdCascader/config/warning.js.map +1 -1
  585. package/lib/tntd-cascader/AntdCascader/index.js +158 -216
  586. package/lib/tntd-cascader/AntdCascader/index.js.map +1 -1
  587. package/lib/tntd-cascader/AntdCascader/interface.js +6 -13
  588. package/lib/tntd-cascader/img/no-data-s.png +0 -0
  589. package/lib/tntd-cascader/index.js +8 -12
  590. package/lib/tntd-cascader/rc-cascader/Cascader.js +280 -325
  591. package/lib/tntd-cascader/rc-cascader/Cascader.js.map +1 -1
  592. package/lib/tntd-cascader/rc-cascader/OptionList/Checkbox.js +37 -30
  593. package/lib/tntd-cascader/rc-cascader/OptionList/Checkbox.js.map +1 -1
  594. package/lib/tntd-cascader/rc-cascader/OptionList/Column.js +148 -198
  595. package/lib/tntd-cascader/rc-cascader/OptionList/Column.js.map +1 -1
  596. package/lib/tntd-cascader/rc-cascader/OptionList/index.js +159 -223
  597. package/lib/tntd-cascader/rc-cascader/OptionList/index.js.map +1 -1
  598. package/lib/tntd-cascader/rc-cascader/OptionList/useActive.js +44 -40
  599. package/lib/tntd-cascader/rc-cascader/OptionList/useActive.js.map +1 -1
  600. package/lib/tntd-cascader/rc-cascader/OptionList/useKeyboard.js +162 -179
  601. package/lib/tntd-cascader/rc-cascader/OptionList/useKeyboard.js.map +1 -1
  602. package/lib/tntd-cascader/rc-cascader/context.js +23 -11
  603. package/lib/tntd-cascader/rc-cascader/context.js.map +1 -1
  604. package/lib/tntd-cascader/rc-cascader/hooks/useDisplayValues.js +59 -62
  605. package/lib/tntd-cascader/rc-cascader/hooks/useDisplayValues.js.map +1 -1
  606. package/lib/tntd-cascader/rc-cascader/hooks/useEntities.js +45 -39
  607. package/lib/tntd-cascader/rc-cascader/hooks/useEntities.js.map +1 -1
  608. package/lib/tntd-cascader/rc-cascader/hooks/useMissingValues.js +37 -26
  609. package/lib/tntd-cascader/rc-cascader/hooks/useMissingValues.js.map +1 -1
  610. package/lib/tntd-cascader/rc-cascader/hooks/useRefFunc.js +29 -16
  611. package/lib/tntd-cascader/rc-cascader/hooks/useRefFunc.js.map +1 -1
  612. package/lib/tntd-cascader/rc-cascader/hooks/useSearchConfig.js +47 -30
  613. package/lib/tntd-cascader/rc-cascader/hooks/useSearchConfig.js.map +1 -1
  614. package/lib/tntd-cascader/rc-cascader/hooks/useSearchOptions.js +61 -75
  615. package/lib/tntd-cascader/rc-cascader/hooks/useSearchOptions.js.map +1 -1
  616. package/lib/tntd-cascader/rc-cascader/index.js +7 -9
  617. package/lib/tntd-cascader/rc-cascader/utils/commonUtil.js +38 -49
  618. package/lib/tntd-cascader/rc-cascader/utils/treeUtil.js +39 -42
  619. package/lib/tntd-cascader/rc-cascader/utils/warningPropsUtil.js +30 -34
  620. package/lib/tntd-form/TntdForm/components/Item.js +57 -55
  621. package/lib/tntd-form/TntdForm/components/Item.js.map +1 -1
  622. package/lib/tntd-form/TntdForm/components/ItemComp.js +186 -203
  623. package/lib/tntd-form/TntdForm/components/ItemComp.js.map +1 -1
  624. package/lib/tntd-form/TntdForm/components/List.js +107 -118
  625. package/lib/tntd-form/TntdForm/components/List.js.map +1 -1
  626. package/lib/tntd-form/TntdForm/index.js +63 -61
  627. package/lib/tntd-form/TntdForm/index.js.map +1 -1
  628. package/lib/tntd-form/TntdForm/interface.js +2 -4
  629. package/lib/tntd-form/TntdForm/store.js +7 -8
  630. package/lib/tntd-form/TntdForm/utils.js +184 -182
  631. package/lib/tntd-form/index.js +8 -12
  632. package/lib/tntd-icon/fonts/iconfont.js +53 -36
  633. package/lib/tntd-icon/index.js +25 -40
  634. package/lib/tntd-layout/ActionsContext.js +4 -8
  635. package/lib/tntd-layout/AppList.js +220 -173
  636. package/lib/tntd-layout/AppList.js.map +1 -1
  637. package/lib/tntd-layout/Application.js +107 -75
  638. package/lib/tntd-layout/Application.js.map +1 -1
  639. package/lib/tntd-layout/Avatar.js +131 -100
  640. package/lib/tntd-layout/Avatar.js.map +1 -1
  641. package/lib/tntd-layout/CompatibleLanguage.js +176 -128
  642. package/lib/tntd-layout/CompatibleLanguage.js.map +1 -1
  643. package/lib/tntd-layout/EnterpriseLayout/Avatar.js +142 -117
  644. package/lib/tntd-layout/EnterpriseLayout/Avatar.js.map +1 -1
  645. package/lib/tntd-layout/EnterpriseLayout/Language.js +86 -73
  646. package/lib/tntd-layout/EnterpriseLayout/Language.js.map +1 -1
  647. package/lib/tntd-layout/EnterpriseLayout/Theme.js +98 -69
  648. package/lib/tntd-layout/EnterpriseLayout/Theme.js.map +1 -1
  649. package/lib/tntd-layout/EnterpriseLayout/index.js +17 -28
  650. package/lib/tntd-layout/GlobalNavigation/NavigationPopup.js +272 -283
  651. package/lib/tntd-layout/GlobalNavigation/NavigationPopup.js.map +1 -1
  652. package/lib/tntd-layout/GlobalNavigation/index.js +111 -108
  653. package/lib/tntd-layout/GlobalNavigation/index.js.map +1 -1
  654. package/lib/tntd-layout/Header.js +132 -77
  655. package/lib/tntd-layout/Header.js.map +1 -1
  656. package/lib/tntd-layout/HeaderActions.js +102 -105
  657. package/lib/tntd-layout/HeaderActions.js.map +1 -1
  658. package/lib/tntd-layout/HeaderNavs.js +103 -78
  659. package/lib/tntd-layout/HeaderNavs.js.map +1 -1
  660. package/lib/tntd-layout/HeaderTabs.js +312 -224
  661. package/lib/tntd-layout/HeaderTabs.js.map +1 -1
  662. package/lib/tntd-layout/Iconfont.js +7 -11
  663. package/lib/tntd-layout/Language.js +72 -69
  664. package/lib/tntd-layout/Language.js.map +1 -1
  665. package/lib/tntd-layout/Layout.js +167 -214
  666. package/lib/tntd-layout/Layout.js.map +1 -1
  667. package/lib/tntd-layout/Logo.js +140 -69
  668. package/lib/tntd-layout/Logo.js.map +1 -1
  669. package/lib/tntd-layout/OrgAppList.js +384 -238
  670. package/lib/tntd-layout/OrgAppList.js.map +1 -1
  671. package/lib/tntd-layout/SideMenu.js +404 -269
  672. package/lib/tntd-layout/SideMenu.js.map +1 -1
  673. package/lib/tntd-layout/Theme.js +89 -75
  674. package/lib/tntd-layout/Theme.js.map +1 -1
  675. package/lib/tntd-layout/createActions.js +34 -45
  676. package/lib/tntd-layout/images/avatar/empty.png +0 -0
  677. package/lib/tntd-layout/images/avatar/female1.png +0 -0
  678. package/lib/tntd-layout/images/avatar/female2.png +0 -0
  679. package/lib/tntd-layout/images/avatar/female3.png +0 -0
  680. package/lib/tntd-layout/images/avatar/female4.png +0 -0
  681. package/lib/tntd-layout/images/avatar/female5.png +0 -0
  682. package/lib/tntd-layout/images/avatar/female6.png +0 -0
  683. package/lib/tntd-layout/images/avatar/male1.png +0 -0
  684. package/lib/tntd-layout/images/avatar/male2.png +0 -0
  685. package/lib/tntd-layout/images/avatar/male3.png +0 -0
  686. package/lib/tntd-layout/images/avatar/male4.png +0 -0
  687. package/lib/tntd-layout/images/avatar/male5.png +0 -0
  688. package/lib/tntd-layout/images/avatar/male6.png +0 -0
  689. package/lib/tntd-layout/images/index.js +66 -68
  690. package/lib/tntd-layout/index.js +91 -137
  691. package/lib/tntd-layout/index.js.map +1 -1
  692. package/lib/tntd-layout/paaslayout/CompactSideMenu.js +178 -131
  693. package/lib/tntd-layout/paaslayout/CompactSideMenu.js.map +1 -1
  694. package/lib/tntd-layout/paaslayout/Header.js +75 -51
  695. package/lib/tntd-layout/paaslayout/Header.js.map +1 -1
  696. package/lib/tntd-layout/paaslayout/Logo.js +30 -15
  697. package/lib/tntd-layout/paaslayout/SideMenu.js +143 -131
  698. package/lib/tntd-layout/paaslayout/SideMenu.js.map +1 -1
  699. package/lib/tntd-layout/paaslayout/index.js +137 -205
  700. package/lib/tntd-layout/paaslayout/index.js.map +1 -1
  701. package/lib/tntd-layout/storage.js +30 -58
  702. package/lib/tntd-modal/index.js +58 -98
  703. package/lib/tntd-modal/index.js.map +1 -1
  704. package/lib/tntd-second-page/index.js +33 -60
  705. package/lib/tntd-second-page/index.js.map +1 -1
  706. package/lib/tntd-select/DropDownWrap.d.ts +0 -10
  707. package/lib/tntd-select/DropDownWrap.d.ts.map +1 -1
  708. package/lib/tntd-select/DropDownWrap.js +74 -102
  709. package/lib/tntd-select/DropDownWrap.js.map +1 -1
  710. package/lib/tntd-select/index.d.ts +2 -13
  711. package/lib/tntd-select/index.d.ts.map +1 -1
  712. package/lib/tntd-select/index.js +532 -629
  713. package/lib/tntd-select/index.js.map +1 -1
  714. package/lib/tooltip/index.d.ts +3 -3
  715. package/lib/tooltip/index.js +19 -24
  716. package/lib/tooltip/index.js.map +1 -1
  717. package/lib/transfer/index.d.ts +3 -3
  718. package/lib/transfer/index.js +19 -24
  719. package/lib/transfer/index.js.map +1 -1
  720. package/lib/tree/index.d.ts +3 -3
  721. package/lib/tree/index.js +19 -24
  722. package/lib/tree/index.js.map +1 -1
  723. package/lib/tree-select/index.d.ts +3 -3
  724. package/lib/tree-select/index.js +19 -24
  725. package/lib/tree-select/index.js.map +1 -1
  726. package/lib/typography/index.d.ts +3 -3
  727. package/lib/typography/index.js +19 -24
  728. package/lib/typography/index.js.map +1 -1
  729. package/lib/upload/index.d.ts +3 -3
  730. package/lib/upload/index.js +19 -24
  731. package/lib/upload/index.js.map +1 -1
  732. package/lib/utils/checkAuth.js +23 -34
  733. package/lib/utils/findMenuInfoByPath.js +34 -41
  734. package/lib/utils/index.js +76 -117
  735. package/lib/utils/index.js.map +1 -1
  736. package/lib/version/index.d.ts +3 -3
  737. package/lib/version/index.js +19 -24
  738. package/lib/version/index.js.map +1 -1
  739. package/package.json +2 -2
  740. package/es/label/label.js +0 -140
  741. package/es/label/label.js.map +0 -1
  742. package/es/label/label.test.js +0 -12
  743. package/es/label/label.test.js.map +0 -1
  744. package/lib/label/label.d.ts +0 -52
  745. package/lib/label/label.d.ts.map +0 -1
  746. package/lib/label/label.js +0 -150
  747. package/lib/label/label.js.map +0 -1
  748. package/lib/label/label.test.d.ts +0 -2
  749. package/lib/label/label.test.d.ts.map +0 -1
  750. package/lib/label/label.test.js +0 -14
  751. package/lib/label/label.test.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Column.js","sourceRoot":"","sources":["../../../../src/tntd-cascader/rc-cascader/OptionList/Column.tsx"],"names":[],"mappings":"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","sourcesContent":["// @ts-nocheck\nimport * as React from 'react'\nimport classNames from 'classnames'\nimport { isLeaf, toPathKey } from '../utils/commonUtil'\nimport CascaderContext from '../context'\nimport Checkbox from './Checkbox'\nimport type { DefaultOptionType, SingleValueType } from '../Cascader'\nimport { SEARCH_MARK } from '../hooks/useSearchOptions'\nimport List, { ListRef } from 'rc-virtual-list'\nimport type { RenderItem } from '../context'\n\nexport const FIX_LABEL = '__cascader_fix_label__'\n\nexport interface ColumnProps {\n prefixCls: string\n multiple?: boolean\n options: DefaultOptionType[]\n /** Current Column opened item key */\n activeValue?: React.Key\n /** The value path before current column */\n prevValuePath: React.Key[]\n onToggleOpen: (open: boolean) => void\n onSelect: (valuePath: SingleValueType, leaf: boolean) => void\n onActive: (valuePath: SingleValueType) => void\n checkedSet: Set<React.Key>\n halfCheckedSet: Set<React.Key>\n loadingKeys: React.Key[]\n isSelectable: (option: DefaultOptionType) => boolean\n renderItem?: (item: RenderItem) => React.ReactNode\n searchValue?: string\n level?: number\n dropdownVisible?: boolean\n optionHeight?: number\n}\n\nexport default function Column({\n prefixCls,\n multiple,\n options,\n activeValue,\n prevValuePath,\n onToggleOpen,\n onSelect,\n onActive,\n checkedSet,\n halfCheckedSet,\n loadingKeys,\n isSelectable,\n renderItem,\n searchValue,\n level,\n dropdownVisible,\n optionHeight,\n}: ColumnProps) {\n const ref = React.useRef<ListRef>(null)\n const menuPrefixCls = `${prefixCls}-menu ${prefixCls}-menu-${level}`\n const menuItemPrefixCls = `${prefixCls}-menu-item`\n\n const {\n fieldNames,\n changeOnSelect,\n expandTrigger,\n expandIcon,\n loadingIcon,\n dropdownMenuColumnStyle,\n } = React.useContext(CascaderContext)\n\n const hoverOpen = expandTrigger === 'hover'\n\n /** 单选情况下滚动到相应的位置 */\n React.useEffect(() => {\n let timer = null\n if (ref.current && ref.current.scrollTo && !multiple && dropdownVisible) {\n const index = options.findIndex((it) => it[fieldNames.value] === activeValue)\n\n if (index > 0 && !isNaN(index)) {\n timer = window.setTimeout(() => {\n ref.current.scrollTo((optionHeight || 36) * index)\n }, 5)\n }\n }\n\n return () => {\n if (timer) {\n window.clearTimeout(timer)\n }\n timer = null\n }\n }, [multiple, activeValue, options, fieldNames, dropdownVisible, optionHeight])\n\n // ============================ Option ============================\n const optionInfoList = React.useMemo(\n () =>\n options.map((option) => {\n const { disabled } = option\n const searchOptions = option[SEARCH_MARK]\n const label = option[FIX_LABEL] ?? option[fieldNames.label]\n const value = option[fieldNames.value]\n\n const isMergedLeaf = isLeaf(option, fieldNames)\n\n // Get real value of option. Search option is different way.\n const fullPath = searchOptions\n ? // @ts-ignore\n searchOptions.map((opt) => opt[fieldNames.value])\n : [...prevValuePath, value]\n const fullPathKey = toPathKey(fullPath)\n\n const isLoading = loadingKeys.includes(fullPathKey)\n\n // >>>>> checked\n const checked = checkedSet.has(fullPathKey)\n\n // >>>>> halfChecked\n const halfChecked = halfCheckedSet.has(fullPathKey)\n\n return {\n disabled,\n label,\n value,\n isLeaf: isMergedLeaf,\n isLoading,\n checked,\n halfChecked,\n option,\n fullPath,\n fullPathKey,\n }\n }),\n [options, checkedSet, fieldNames, halfCheckedSet, loadingKeys, prevValuePath]\n )\n // ============================ Render ============================\n return (\n <ul className={menuPrefixCls} role=\"menu\">\n <List\n className={\n optionInfoList[0].fullPathKey === '__EMPTY__' || !!searchValue\n ? 'rc-virtual-list-full'\n : ''\n }\n data={optionInfoList}\n height={180}\n itemHeight={optionHeight || 36}\n itemKey=\"value\"\n ref={ref}\n >\n {({\n disabled,\n label,\n value,\n isLeaf: isMergedLeaf,\n isLoading,\n checked,\n halfChecked,\n option,\n fullPath,\n fullPathKey,\n }) => {\n // >>>>> Open\n const triggerOpenPath = () => {\n if (!disabled && (!hoverOpen || !isMergedLeaf)) {\n onActive(fullPath)\n }\n }\n\n // >>>>> Selection\n const triggerSelect = () => {\n if (isSelectable(option)) {\n onSelect(fullPath, isMergedLeaf)\n }\n }\n\n // >>>>> Title\n let title: string\n if (typeof option.title === 'string') {\n title = option.title\n } else if (typeof label === 'string') {\n title = label\n }\n return (\n <li\n key={fullPathKey}\n className={classNames(menuItemPrefixCls, {\n [`${menuItemPrefixCls}-expand`]: !isMergedLeaf,\n [`${menuItemPrefixCls}-active`]: activeValue === value,\n [`${menuItemPrefixCls}-disabled`]: disabled,\n [`${menuItemPrefixCls}-loading`]: isLoading,\n })}\n style={dropdownMenuColumnStyle}\n role=\"menuitemcheckbox\"\n // @ts-ignore\n title={title}\n aria-checked={checked}\n data-path-key={fullPathKey}\n onClick={() => {\n triggerOpenPath()\n if (!multiple || isMergedLeaf) {\n triggerSelect()\n }\n }}\n onDoubleClick={() => {\n if (changeOnSelect) {\n onToggleOpen(false)\n }\n }}\n onMouseEnter={() => {\n if (hoverOpen) {\n triggerOpenPath()\n }\n }}\n onMouseDown={(e) => {\n // Prevent selector from blurring\n e.preventDefault()\n }}\n >\n {multiple && (\n <Checkbox\n prefixCls={`${prefixCls}-checkbox`}\n checked={checked}\n halfChecked={halfChecked}\n disabled={disabled}\n onClick={(e: React.MouseEvent<HTMLSpanElement>) => {\n e.stopPropagation()\n triggerSelect()\n }}\n />\n )}\n <div className={`${menuItemPrefixCls}-content`}>\n {optionInfoList[0].fullPathKey !== '__EMPTY__' && renderItem\n ? renderItem(option, level)\n : label}\n </div>\n {!isLoading && expandIcon && !isMergedLeaf && (\n <div className={`${menuItemPrefixCls}-expand-icon`}>{expandIcon}</div>\n )}\n {isLoading && loadingIcon && (\n <div className={`${menuItemPrefixCls}-loading-icon`}>{loadingIcon}</div>\n )}\n </li>\n )\n }}\n </List>\n </ul>\n )\n}\n"]}
1
+ {"version":3,"file":"Column.js","sourceRoot":"","sources":["../../../../src/tntd-cascader/rc-cascader/OptionList/Column.tsx"],"names":[],"mappings":"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","sourcesContent":["// @ts-nocheck\nimport * as React from 'react'\nimport classNames from 'classnames'\nimport { isLeaf, toPathKey } from '../utils/commonUtil'\nimport CascaderContext from '../context'\nimport Checkbox from './Checkbox'\nimport type { DefaultOptionType, SingleValueType } from '../Cascader'\nimport { SEARCH_MARK } from '../hooks/useSearchOptions'\nimport List, { ListRef } from 'rc-virtual-list'\nimport type { RenderItem } from '../context'\n\nexport const FIX_LABEL = '__cascader_fix_label__'\n\nexport interface ColumnProps {\n prefixCls: string\n multiple?: boolean\n options: DefaultOptionType[]\n /** Current Column opened item key */\n activeValue?: React.Key\n /** The value path before current column */\n prevValuePath: React.Key[]\n onToggleOpen: (open: boolean) => void\n onSelect: (valuePath: SingleValueType, leaf: boolean) => void\n onActive: (valuePath: SingleValueType) => void\n checkedSet: Set<React.Key>\n halfCheckedSet: Set<React.Key>\n loadingKeys: React.Key[]\n isSelectable: (option: DefaultOptionType) => boolean\n renderItem?: (item: RenderItem) => React.ReactNode\n searchValue?: string\n level?: number\n dropdownVisible?: boolean\n optionHeight?: number\n}\n\nexport default function Column({\n prefixCls,\n multiple,\n options,\n activeValue,\n prevValuePath,\n onToggleOpen,\n onSelect,\n onActive,\n checkedSet,\n halfCheckedSet,\n loadingKeys,\n isSelectable,\n renderItem,\n searchValue,\n level,\n dropdownVisible,\n optionHeight,\n}: ColumnProps) {\n const ref = React.useRef<ListRef>(null)\n const menuPrefixCls = `${prefixCls}-menu ${prefixCls}-menu-${level}`\n const menuItemPrefixCls = `${prefixCls}-menu-item`\n\n const {\n fieldNames,\n changeOnSelect,\n expandTrigger,\n expandIcon,\n loadingIcon,\n dropdownMenuColumnStyle,\n } = React.useContext(CascaderContext)\n\n const hoverOpen = expandTrigger === 'hover'\n\n /** 单选情况下滚动到相应的位置 */\n React.useEffect(() => {\n let timer = null\n if (ref.current && ref.current.scrollTo && !multiple && dropdownVisible) {\n const index = options.findIndex((it) => it[fieldNames.value] === activeValue)\n\n if (index > 0 && !isNaN(index)) {\n timer = window.setTimeout(() => {\n ref.current.scrollTo((optionHeight || 36) * index)\n }, 5)\n }\n }\n\n return () => {\n if (timer) {\n window.clearTimeout(timer)\n }\n timer = null\n }\n }, [multiple, activeValue, options, fieldNames, dropdownVisible, optionHeight])\n\n // ============================ Option ============================\n const optionInfoList = React.useMemo(\n () =>\n options.map((option) => {\n const { disabled } = option\n const searchOptions = option[SEARCH_MARK]\n const label = option[FIX_LABEL] ?? option[fieldNames.label]\n const value = option[fieldNames.value]\n\n const isMergedLeaf = isLeaf(option, fieldNames)\n\n // Get real value of option. Search option is different way.\n const fullPath = searchOptions\n ? // @ts-ignore\n searchOptions.map((opt) => opt[fieldNames.value])\n : [...prevValuePath, value]\n const fullPathKey = toPathKey(fullPath)\n\n const isLoading = loadingKeys.includes(fullPathKey)\n\n // >>>>> checked\n const checked = checkedSet.has(fullPathKey)\n\n // >>>>> halfChecked\n const halfChecked = halfCheckedSet.has(fullPathKey)\n\n return {\n disabled,\n label,\n value,\n isLeaf: isMergedLeaf,\n isLoading,\n checked,\n halfChecked,\n option,\n fullPath,\n fullPathKey,\n }\n }),\n [options, checkedSet, fieldNames, halfCheckedSet, loadingKeys, prevValuePath]\n )\n // ============================ Render ============================\n return (\n <ul className={menuPrefixCls} role=\"menu\">\n <List\n className={\n optionInfoList[0].fullPathKey === '__EMPTY__' || !!searchValue\n ? 'rc-virtual-list-full'\n : ''\n }\n data={optionInfoList}\n height={180}\n itemHeight={optionHeight || 36}\n itemKey=\"value\"\n ref={ref}\n >\n {({\n disabled,\n label,\n value,\n isLeaf: isMergedLeaf,\n isLoading,\n checked,\n halfChecked,\n option,\n fullPath,\n fullPathKey,\n }) => {\n // >>>>> Open\n const triggerOpenPath = () => {\n if (!disabled && (!hoverOpen || !isMergedLeaf)) {\n onActive(fullPath)\n }\n }\n\n // >>>>> Selection\n const triggerSelect = () => {\n if (isSelectable(option)) {\n onSelect(fullPath, isMergedLeaf)\n }\n }\n\n // >>>>> Title\n let title: string\n if (typeof option.title === 'string') {\n title = option.title\n } else if (typeof label === 'string') {\n title = label\n }\n return (\n <li\n key={fullPathKey}\n className={classNames(menuItemPrefixCls, {\n [`${menuItemPrefixCls}-expand`]: !isMergedLeaf,\n [`${menuItemPrefixCls}-active`]: activeValue === value,\n [`${menuItemPrefixCls}-disabled`]: disabled,\n [`${menuItemPrefixCls}-loading`]: isLoading,\n })}\n style={dropdownMenuColumnStyle}\n role=\"menuitemcheckbox\"\n // @ts-ignore\n title={title}\n aria-checked={checked}\n data-path-key={fullPathKey}\n onClick={() => {\n triggerOpenPath()\n if (!multiple || isMergedLeaf) {\n triggerSelect()\n }\n }}\n onDoubleClick={() => {\n if (changeOnSelect) {\n onToggleOpen(false)\n }\n }}\n onMouseEnter={() => {\n if (hoverOpen) {\n triggerOpenPath()\n }\n }}\n onMouseDown={(e) => {\n // Prevent selector from blurring\n e.preventDefault()\n }}\n >\n {multiple && (\n <Checkbox\n prefixCls={`${prefixCls}-checkbox`}\n checked={checked}\n halfChecked={halfChecked}\n disabled={disabled}\n onClick={(e: React.MouseEvent<HTMLSpanElement>) => {\n e.stopPropagation()\n triggerSelect()\n }}\n />\n )}\n <div className={`${menuItemPrefixCls}-content`}>\n {optionInfoList[0].fullPathKey !== '__EMPTY__' && renderItem\n ? renderItem(option, level)\n : label}\n </div>\n {!isLoading && expandIcon && !isMergedLeaf && (\n <div className={`${menuItemPrefixCls}-expand-icon`}>{expandIcon}</div>\n )}\n {isLoading && loadingIcon && (\n <div className={`${menuItemPrefixCls}-loading-icon`}>{loadingIcon}</div>\n )}\n </li>\n )\n }}\n </List>\n </ul>\n )\n}\n"]}
@@ -1,229 +1,165 @@
1
1
  "use strict";
2
-
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
6
13
  });
7
- exports["default"] = void 0;
8
- var _classnames = _interopRequireDefault(require("classnames"));
9
- var _rcSelect = require("rc-select");
10
- var React = _interopRequireWildcard(require("react"));
11
- var _context = _interopRequireDefault(require("../context"));
12
- var _commonUtil = require("../utils/commonUtil");
13
- var _treeUtil = require("../utils/treeUtil");
14
- var _Column = _interopRequireWildcard(require("./Column"));
15
- var _useActive3 = _interopRequireDefault(require("./useActive"));
16
- var _useKeyboard = _interopRequireDefault(require("./useKeyboard"));
17
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
20
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
22
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
23
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
24
- 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."); }
25
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
26
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
27
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
28
- 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."); }
29
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
30
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
31
- function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) { ; } } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
32
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
33
- var RefOptionList = React.forwardRef(function (props, ref) {
34
- var _ref3, _classNames;
35
- var _a, _b;
36
- var _useBaseProps = (0, _rcSelect.useBaseProps)(),
37
- prefixCls = _useBaseProps.prefixCls,
38
- multiple = _useBaseProps.multiple,
39
- searchValue = _useBaseProps.searchValue,
40
- toggleOpen = _useBaseProps.toggleOpen,
41
- notFoundContent = _useBaseProps.notFoundContent,
42
- direction = _useBaseProps.direction,
43
- optionHeight = _useBaseProps.optionHeight;
44
- var containerRef = React.useRef();
45
- var rtl = direction === 'rtl';
46
- var _React$useContext = React.useContext(_context["default"]),
47
- options = _React$useContext.options,
48
- values = _React$useContext.values,
49
- halfValues = _React$useContext.halfValues,
50
- fieldNames = _React$useContext.fieldNames,
51
- changeOnSelect = _React$useContext.changeOnSelect,
52
- onSelect = _React$useContext.onSelect,
53
- searchOptions = _React$useContext.searchOptions,
54
- dropdownPrefixCls = _React$useContext.dropdownPrefixCls,
55
- loadData = _React$useContext.loadData,
56
- expandTrigger = _React$useContext.expandTrigger,
57
- renderItem = _React$useContext.renderItem,
58
- dropdownVisible = _React$useContext.dropdownVisible;
59
- var mergedPrefixCls = dropdownPrefixCls || prefixCls;
60
- // ========================= loadData =========================
61
- var _React$useState = React.useState([]),
62
- _React$useState2 = _slicedToArray(_React$useState, 2),
63
- loadingKeys = _React$useState2[0],
64
- setLoadingKeys = _React$useState2[1];
65
- var internalLoadData = function internalLoadData(valueCells) {
66
- // Do not load when search
67
- if (!loadData || searchValue) {
68
- return;
69
- }
70
- var optionList = (0, _treeUtil.toPathOptions)(valueCells, options, fieldNames);
71
- var rawOptions = optionList.map(function (_ref) {
72
- var option = _ref.option;
73
- return option;
74
- });
75
- var lastOption = rawOptions[rawOptions.length - 1];
76
- if (lastOption && !(0, _commonUtil.isLeaf)(lastOption, fieldNames)) {
77
- var pathKey = (0, _commonUtil.toPathKey)(valueCells);
78
- setLoadingKeys(function (keys) {
79
- return [].concat(_toConsumableArray(keys), [pathKey]);
80
- });
81
- loadData(rawOptions);
82
- }
83
- };
84
- // zombieJ: This is bad. We should make this same as `rc-tree` to use Promise instead.
85
- React.useEffect(function () {
86
- if (loadingKeys.length) {
87
- loadingKeys.forEach(function (loadingKey) {
88
- var valueStrCells = (0, _commonUtil.toPathValueStr)(loadingKey);
89
- var optionList = (0, _treeUtil.toPathOptions)(valueStrCells, options, fieldNames, true).map(function (_ref2) {
90
- var option = _ref2.option;
91
- return option;
92
- });
93
- var lastOption = optionList[optionList.length - 1];
94
- if (!lastOption || lastOption[fieldNames.children] || (0, _commonUtil.isLeaf)(lastOption, fieldNames)) {
95
- setLoadingKeys(function (keys) {
96
- return keys.filter(function (key) {
97
- return key !== loadingKey;
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ /* eslint-disable default-case */
26
+ // @ts-nocheck
27
+ const classnames_1 = __importDefault(require("classnames"));
28
+ const rc_select_1 = require("rc-select");
29
+ const React = __importStar(require("react"));
30
+ const context_1 = __importDefault(require("../context"));
31
+ const commonUtil_1 = require("../utils/commonUtil");
32
+ const treeUtil_1 = require("../utils/treeUtil");
33
+ const Column_1 = __importStar(require("./Column"));
34
+ const useActive_1 = __importDefault(require("./useActive"));
35
+ const useKeyboard_1 = __importDefault(require("./useKeyboard"));
36
+ const RefOptionList = React.forwardRef((props, ref) => {
37
+ var _a, _b;
38
+ const { prefixCls, multiple, searchValue, toggleOpen, notFoundContent, direction, optionHeight } = (0, rc_select_1.useBaseProps)();
39
+ const containerRef = React.useRef();
40
+ const rtl = direction === 'rtl';
41
+ const { options, values, halfValues, fieldNames, changeOnSelect, onSelect, searchOptions, dropdownPrefixCls, loadData, expandTrigger, renderItem, dropdownVisible, } = React.useContext(context_1.default);
42
+ const mergedPrefixCls = dropdownPrefixCls || prefixCls;
43
+ // ========================= loadData =========================
44
+ const [loadingKeys, setLoadingKeys] = React.useState([]);
45
+ const internalLoadData = (valueCells) => {
46
+ // Do not load when search
47
+ if (!loadData || searchValue) {
48
+ return;
49
+ }
50
+ const optionList = (0, treeUtil_1.toPathOptions)(valueCells, options, fieldNames);
51
+ const rawOptions = optionList.map(({ option }) => option);
52
+ const lastOption = rawOptions[rawOptions.length - 1];
53
+ if (lastOption && !(0, commonUtil_1.isLeaf)(lastOption, fieldNames)) {
54
+ const pathKey = (0, commonUtil_1.toPathKey)(valueCells);
55
+ setLoadingKeys((keys) => [...keys, pathKey]);
56
+ loadData(rawOptions);
57
+ }
58
+ };
59
+ // zombieJ: This is bad. We should make this same as `rc-tree` to use Promise instead.
60
+ React.useEffect(() => {
61
+ if (loadingKeys.length) {
62
+ loadingKeys.forEach((loadingKey) => {
63
+ const valueStrCells = (0, commonUtil_1.toPathValueStr)(loadingKey);
64
+ const optionList = (0, treeUtil_1.toPathOptions)(valueStrCells, options, fieldNames, true).map(({ option }) => option);
65
+ const lastOption = optionList[optionList.length - 1];
66
+ if (!lastOption || lastOption[fieldNames.children] || (0, commonUtil_1.isLeaf)(lastOption, fieldNames)) {
67
+ setLoadingKeys((keys) => keys.filter((key) => key !== loadingKey));
68
+ }
98
69
  });
99
- });
100
70
  }
101
- });
102
- }
103
- }, [options, loadingKeys, fieldNames]);
104
- // ========================== Values ==========================
105
- var checkedSet = React.useMemo(function () {
106
- return new Set((0, _commonUtil.toPathKeys)(values));
107
- }, [values]);
108
- var halfCheckedSet = React.useMemo(function () {
109
- return new Set((0, _commonUtil.toPathKeys)(halfValues));
110
- }, [halfValues]);
111
- // ====================== Accessibility =======================
112
- var _useActive = (0, _useActive3["default"])(),
113
- _useActive2 = _slicedToArray(_useActive, 2),
114
- activeValueCells = _useActive2[0],
115
- setActiveValueCells = _useActive2[1];
116
- // =========================== Path ===========================
117
- var onPathOpen = function onPathOpen(nextValueCells) {
118
- setActiveValueCells(nextValueCells);
119
- // Trigger loadData
120
- internalLoadData(nextValueCells);
121
- };
122
- var isSelectable = function isSelectable(option) {
123
- var disabled = option.disabled;
124
- var isMergedLeaf = (0, _commonUtil.isLeaf)(option, fieldNames);
125
- return !disabled && (isMergedLeaf || changeOnSelect || multiple);
126
- };
127
- var onPathSelect = function onPathSelect(valuePath, leaf) {
128
- var fromKeyboard = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
129
- onSelect(valuePath);
130
- if (!multiple && (leaf || changeOnSelect && (expandTrigger === 'hover' || fromKeyboard))) {
131
- toggleOpen(false);
132
- }
133
- };
134
- // ========================== Option ==========================
135
- var mergedOptions = React.useMemo(function () {
136
- if (searchValue) {
137
- return searchOptions;
138
- }
139
- return options;
140
- }, [searchValue, searchOptions, options]);
141
- // ========================== Column ==========================
142
- var optionColumns = React.useMemo(function () {
143
- var optionList = [{
144
- options: mergedOptions
145
- }];
146
- var currentList = mergedOptions;
147
- var _loop = function _loop(i) {
148
- var activeValueCell = activeValueCells[i];
149
- var currentOption = currentList.find(function (option) {
150
- return option[fieldNames.value] === activeValueCell;
151
- });
152
- var subOptions = currentOption === null || currentOption === void 0 ? void 0 : currentOption[fieldNames.children];
153
- if (!(subOptions === null || subOptions === void 0 ? void 0 : subOptions.length)) {
154
- return "break";
155
- }
156
- currentList = subOptions;
157
- optionList.push({
158
- options: subOptions
159
- });
71
+ }, [options, loadingKeys, fieldNames]);
72
+ // ========================== Values ==========================
73
+ const checkedSet = React.useMemo(() => new Set((0, commonUtil_1.toPathKeys)(values)), [values]);
74
+ const halfCheckedSet = React.useMemo(() => new Set((0, commonUtil_1.toPathKeys)(halfValues)), [halfValues]);
75
+ // ====================== Accessibility =======================
76
+ const [activeValueCells, setActiveValueCells] = (0, useActive_1.default)();
77
+ // =========================== Path ===========================
78
+ const onPathOpen = (nextValueCells) => {
79
+ setActiveValueCells(nextValueCells);
80
+ // Trigger loadData
81
+ internalLoadData(nextValueCells);
82
+ };
83
+ const isSelectable = (option) => {
84
+ const { disabled } = option;
85
+ const isMergedLeaf = (0, commonUtil_1.isLeaf)(option, fieldNames);
86
+ return !disabled && (isMergedLeaf || changeOnSelect || multiple);
87
+ };
88
+ const onPathSelect = (valuePath, leaf, fromKeyboard = false) => {
89
+ onSelect(valuePath);
90
+ if (!multiple && (leaf || (changeOnSelect && (expandTrigger === 'hover' || fromKeyboard)))) {
91
+ toggleOpen(false);
92
+ }
160
93
  };
161
- for (var i = 0; i < activeValueCells.length; i += 1) {
162
- var _ret = _loop(i);
163
- if (_ret === "break") break;
164
- }
165
- return optionList;
166
- }, [mergedOptions, activeValueCells, fieldNames]);
167
- // ========================= Keyboard =========================
168
- var onKeyboardSelect = function onKeyboardSelect(selectValueCells, option) {
169
- if (isSelectable(option)) {
170
- onPathSelect(selectValueCells, (0, _commonUtil.isLeaf)(option, fieldNames), true);
171
- }
172
- };
173
- (0, _useKeyboard["default"])(ref, mergedOptions, fieldNames, activeValueCells, onPathOpen, onKeyboardSelect);
174
- // >>>>> Active Scroll
175
- React.useEffect(function () {
176
- var _a;
177
- for (var i = 0; i < activeValueCells.length; i += 1) {
178
- var cellPath = activeValueCells.slice(0, i + 1);
179
- var cellKeyPath = (0, _commonUtil.toPathKey)(cellPath);
180
- var ele = (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.querySelector("li[data-path-key=\"".concat(cellKeyPath.replace(/\\{0,2}"/g, '\\"'), "\"]") // matches unescaped double quotes
181
- );
182
- if (ele) {
183
- (0, _commonUtil.scrollIntoParentView)(ele);
184
- }
185
- }
186
- }, [activeValueCells]);
187
- // ========================== Render ==========================
188
- // >>>>> Empty
189
- var isEmpty = !((_b = (_a = optionColumns[0]) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.length);
190
- var emptyList = [(_ref3 = {}, _defineProperty(_ref3, fieldNames.value, '__EMPTY__'), _defineProperty(_ref3, _Column.FIX_LABEL, notFoundContent), _defineProperty(_ref3, "disabled", true), _ref3)];
191
- var columnProps = Object.assign(Object.assign({}, props), {
192
- multiple: !isEmpty && multiple,
193
- onSelect: onPathSelect,
194
- onActive: onPathOpen,
195
- onToggleOpen: toggleOpen,
196
- checkedSet: checkedSet,
197
- halfCheckedSet: halfCheckedSet,
198
- loadingKeys: loadingKeys,
199
- isSelectable: isSelectable
200
- });
201
- // >>>>> Columns
202
- var mergedOptionColumns = isEmpty ? [{
203
- options: emptyList
204
- }] : optionColumns;
205
- var columnNodes = mergedOptionColumns.map(function (col, index) {
206
- var prevValuePath = activeValueCells.slice(0, index);
207
- var activeValue = activeValueCells[index];
208
- return React.createElement(_Column["default"], Object.assign({
209
- key: index,
210
- level: index,
211
- optionHeight: optionHeight,
212
- dropdownVisible: dropdownVisible
213
- }, columnProps, {
214
- prefixCls: mergedPrefixCls,
215
- options: col.options,
216
- searchValue: searchValue,
217
- prevValuePath: prevValuePath,
218
- activeValue: activeValue,
219
- renderItem: renderItem
220
- }));
221
- });
222
- // >>>>> Render
223
- return React.createElement("div", {
224
- className: (0, _classnames["default"])("".concat(mergedPrefixCls, "-menus"), (_classNames = {}, _defineProperty(_classNames, "".concat(mergedPrefixCls, "-menu-empty"), isEmpty), _defineProperty(_classNames, "".concat(mergedPrefixCls, "-rtl"), rtl), _classNames)),
225
- ref: containerRef
226
- }, columnNodes);
94
+ // ========================== Option ==========================
95
+ const mergedOptions = React.useMemo(() => {
96
+ if (searchValue) {
97
+ return searchOptions;
98
+ }
99
+ return options;
100
+ }, [searchValue, searchOptions, options]);
101
+ // ========================== Column ==========================
102
+ const optionColumns = React.useMemo(() => {
103
+ const optionList = [{ options: mergedOptions }];
104
+ let currentList = mergedOptions;
105
+ for (let i = 0; i < activeValueCells.length; i += 1) {
106
+ const activeValueCell = activeValueCells[i];
107
+ const currentOption = currentList.find((option) => option[fieldNames.value] === activeValueCell);
108
+ const subOptions = currentOption === null || currentOption === void 0 ? void 0 : currentOption[fieldNames.children];
109
+ if (!(subOptions === null || subOptions === void 0 ? void 0 : subOptions.length)) {
110
+ break;
111
+ }
112
+ currentList = subOptions;
113
+ optionList.push({ options: subOptions });
114
+ }
115
+ return optionList;
116
+ }, [mergedOptions, activeValueCells, fieldNames]);
117
+ // ========================= Keyboard =========================
118
+ const onKeyboardSelect = (selectValueCells, option) => {
119
+ if (isSelectable(option)) {
120
+ onPathSelect(selectValueCells, (0, commonUtil_1.isLeaf)(option, fieldNames), true);
121
+ }
122
+ };
123
+ (0, useKeyboard_1.default)(ref, mergedOptions, fieldNames, activeValueCells, onPathOpen, onKeyboardSelect);
124
+ // >>>>> Active Scroll
125
+ React.useEffect(() => {
126
+ var _a;
127
+ for (let i = 0; i < activeValueCells.length; i += 1) {
128
+ const cellPath = activeValueCells.slice(0, i + 1);
129
+ const cellKeyPath = (0, commonUtil_1.toPathKey)(cellPath);
130
+ const ele = (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.querySelector(`li[data-path-key="${cellKeyPath.replace(/\\{0,2}"/g, '\\"')}"]` // matches unescaped double quotes
131
+ );
132
+ if (ele) {
133
+ (0, commonUtil_1.scrollIntoParentView)(ele);
134
+ }
135
+ }
136
+ }, [activeValueCells]);
137
+ // ========================== Render ==========================
138
+ // >>>>> Empty
139
+ const isEmpty = !((_b = (_a = optionColumns[0]) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.length);
140
+ const emptyList = [
141
+ {
142
+ [fieldNames.value]: '__EMPTY__',
143
+ [Column_1.FIX_LABEL]: notFoundContent,
144
+ disabled: true,
145
+ },
146
+ ];
147
+ const columnProps = Object.assign(Object.assign({}, props), { multiple: !isEmpty && multiple, onSelect: onPathSelect, onActive: onPathOpen, onToggleOpen: toggleOpen, checkedSet,
148
+ halfCheckedSet,
149
+ loadingKeys,
150
+ isSelectable });
151
+ // >>>>> Columns
152
+ const mergedOptionColumns = isEmpty ? [{ options: emptyList }] : optionColumns;
153
+ const columnNodes = mergedOptionColumns.map((col, index) => {
154
+ const prevValuePath = activeValueCells.slice(0, index);
155
+ const activeValue = activeValueCells[index];
156
+ return (React.createElement(Column_1.default, Object.assign({ key: index, level: index, optionHeight: optionHeight, dropdownVisible: dropdownVisible }, columnProps, { prefixCls: mergedPrefixCls, options: col.options, searchValue: searchValue, prevValuePath: prevValuePath, activeValue: activeValue, renderItem: renderItem })));
157
+ });
158
+ // >>>>> Render
159
+ return (React.createElement("div", { className: (0, classnames_1.default)(`${mergedPrefixCls}-menus`, {
160
+ [`${mergedPrefixCls}-menu-empty`]: isEmpty,
161
+ [`${mergedPrefixCls}-rtl`]: rtl,
162
+ }), ref: containerRef }, columnNodes));
227
163
  });
228
- var _default = RefOptionList;
229
- exports["default"] = _default;
164
+ exports.default = RefOptionList;
165
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/tntd-cascader/rc-cascader/OptionList/index.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable default-case */\n// @ts-nocheck\nimport classNames from 'classnames'\nimport { useBaseProps } from 'rc-select'\nimport type { RefOptionListProps } from 'rc-select/lib/OptionList'\nimport * as React from 'react'\nimport type { DefaultOptionType, SingleValueType } from '../Cascader'\nimport CascaderContext from '../context'\nimport {\n isLeaf,\n scrollIntoParentView,\n toPathKey,\n toPathKeys,\n toPathValueStr,\n} from '../utils/commonUtil'\nimport { toPathOptions } from '../utils/treeUtil'\nimport Column, { FIX_LABEL } from './Column'\nimport useActive from './useActive'\nimport useKeyboard from './useKeyboard'\n\nconst RefOptionList = React.forwardRef<RefOptionListProps>((props, ref) => {\n const { prefixCls, multiple, searchValue, toggleOpen, notFoundContent, direction, optionHeight } =\n useBaseProps()\n\n const containerRef = React.useRef<HTMLDivElement>()\n const rtl = direction === 'rtl'\n\n const {\n options,\n values,\n halfValues,\n fieldNames,\n changeOnSelect,\n onSelect,\n searchOptions,\n dropdownPrefixCls,\n loadData,\n expandTrigger,\n renderItem,\n dropdownVisible,\n } = React.useContext(CascaderContext)\n\n const mergedPrefixCls = dropdownPrefixCls || prefixCls\n\n // ========================= loadData =========================\n const [loadingKeys, setLoadingKeys] = React.useState([])\n\n const internalLoadData = (valueCells: React.Key[]) => {\n // Do not load when search\n if (!loadData || searchValue) {\n return\n }\n\n const optionList = toPathOptions(valueCells, options, fieldNames)\n const rawOptions = optionList.map(({ option }) => option)\n const lastOption = rawOptions[rawOptions.length - 1]\n\n if (lastOption && !isLeaf(lastOption, fieldNames)) {\n const pathKey = toPathKey(valueCells)\n\n setLoadingKeys((keys) => [...keys, pathKey])\n\n loadData(rawOptions)\n }\n }\n\n // zombieJ: This is bad. We should make this same as `rc-tree` to use Promise instead.\n React.useEffect(() => {\n if (loadingKeys.length) {\n loadingKeys.forEach((loadingKey) => {\n const valueStrCells = toPathValueStr(loadingKey)\n const optionList = toPathOptions(valueStrCells, options, fieldNames, true).map(\n ({ option }) => option\n )\n const lastOption = optionList[optionList.length - 1]\n\n if (!lastOption || lastOption[fieldNames.children] || isLeaf(lastOption, fieldNames)) {\n setLoadingKeys((keys) => keys.filter((key) => key !== loadingKey))\n }\n })\n }\n }, [options, loadingKeys, fieldNames])\n\n // ========================== Values ==========================\n const checkedSet = React.useMemo(() => new Set(toPathKeys(values)), [values])\n const halfCheckedSet = React.useMemo(() => new Set(toPathKeys(halfValues)), [halfValues])\n\n // ====================== Accessibility =======================\n const [activeValueCells, setActiveValueCells] = useActive()\n\n // =========================== Path ===========================\n const onPathOpen = (nextValueCells: React.Key[]) => {\n setActiveValueCells(nextValueCells)\n\n // Trigger loadData\n internalLoadData(nextValueCells)\n }\n\n const isSelectable = (option: DefaultOptionType) => {\n const { disabled } = option\n\n const isMergedLeaf = isLeaf(option, fieldNames)\n return !disabled && (isMergedLeaf || changeOnSelect || multiple)\n }\n\n const onPathSelect = (valuePath: SingleValueType, leaf: boolean, fromKeyboard = false) => {\n onSelect(valuePath)\n\n if (!multiple && (leaf || (changeOnSelect && (expandTrigger === 'hover' || fromKeyboard)))) {\n toggleOpen(false)\n }\n }\n\n // ========================== Option ==========================\n const mergedOptions = React.useMemo(() => {\n if (searchValue) {\n return searchOptions\n }\n\n return options\n }, [searchValue, searchOptions, options])\n\n // ========================== Column ==========================\n const optionColumns = React.useMemo(() => {\n const optionList = [{ options: mergedOptions }]\n let currentList = mergedOptions\n\n for (let i = 0; i < activeValueCells.length; i += 1) {\n const activeValueCell = activeValueCells[i]\n const currentOption = currentList.find(\n (option) => option[fieldNames.value] === activeValueCell\n )\n\n const subOptions = currentOption?.[fieldNames.children]\n if (!subOptions?.length) {\n break\n }\n\n currentList = subOptions\n optionList.push({ options: subOptions })\n }\n\n return optionList\n }, [mergedOptions, activeValueCells, fieldNames])\n\n // ========================= Keyboard =========================\n const onKeyboardSelect = (selectValueCells: SingleValueType, option: DefaultOptionType) => {\n if (isSelectable(option)) {\n onPathSelect(selectValueCells, isLeaf(option, fieldNames), true)\n }\n }\n\n useKeyboard(ref, mergedOptions, fieldNames, activeValueCells, onPathOpen, onKeyboardSelect)\n\n // >>>>> Active Scroll\n React.useEffect(() => {\n for (let i = 0; i < activeValueCells.length; i += 1) {\n const cellPath = activeValueCells.slice(0, i + 1)\n const cellKeyPath = toPathKey(cellPath)\n const ele = containerRef.current?.querySelector<HTMLElement>(\n `li[data-path-key=\"${cellKeyPath.replace(/\\\\{0,2}\"/g, '\\\\\"')}\"]` // matches unescaped double quotes\n )\n if (ele) {\n scrollIntoParentView(ele)\n }\n }\n }, [activeValueCells])\n\n // ========================== Render ==========================\n // >>>>> Empty\n const isEmpty = !optionColumns[0]?.options?.length\n\n const emptyList: DefaultOptionType[] = [\n {\n [fieldNames.value as 'value']: '__EMPTY__',\n [FIX_LABEL as 'label']: notFoundContent,\n disabled: true,\n },\n ]\n\n const columnProps = {\n ...props,\n multiple: !isEmpty && multiple,\n onSelect: onPathSelect,\n onActive: onPathOpen,\n onToggleOpen: toggleOpen,\n checkedSet,\n halfCheckedSet,\n loadingKeys,\n isSelectable,\n }\n\n // >>>>> Columns\n const mergedOptionColumns = isEmpty ? [{ options: emptyList }] : optionColumns\n\n const columnNodes: React.ReactElement[] = mergedOptionColumns.map((col, index) => {\n const prevValuePath = activeValueCells.slice(0, index)\n const activeValue = activeValueCells[index]\n\n return (\n <Column\n key={index}\n level={index}\n optionHeight={optionHeight}\n dropdownVisible={dropdownVisible}\n {...columnProps}\n prefixCls={mergedPrefixCls}\n options={col.options}\n searchValue={searchValue}\n prevValuePath={prevValuePath}\n activeValue={activeValue}\n renderItem={renderItem}\n />\n )\n })\n\n // >>>>> Render\n return (\n <div\n className={classNames(`${mergedPrefixCls}-menus`, {\n [`${mergedPrefixCls}-menu-empty`]: isEmpty,\n [`${mergedPrefixCls}-rtl`]: rtl,\n })}\n ref={containerRef}\n >\n {columnNodes}\n </div>\n )\n})\n\nexport default RefOptionList\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/tntd-cascader/rc-cascader/OptionList/index.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable default-case */\n// @ts-nocheck\nimport classNames from 'classnames'\nimport { useBaseProps } from 'rc-select'\nimport type { RefOptionListProps } from 'rc-select/lib/OptionList'\nimport * as React from 'react'\nimport type { DefaultOptionType, SingleValueType } from '../Cascader'\nimport CascaderContext from '../context'\nimport {\n isLeaf,\n scrollIntoParentView,\n toPathKey,\n toPathKeys,\n toPathValueStr,\n} from '../utils/commonUtil'\nimport { toPathOptions } from '../utils/treeUtil'\nimport Column, { FIX_LABEL } from './Column'\nimport useActive from './useActive'\nimport useKeyboard from './useKeyboard'\n\nconst RefOptionList = React.forwardRef<RefOptionListProps>((props, ref) => {\n const { prefixCls, multiple, searchValue, toggleOpen, notFoundContent, direction, optionHeight } =\n useBaseProps()\n\n const containerRef = React.useRef<HTMLDivElement>()\n const rtl = direction === 'rtl'\n\n const {\n options,\n values,\n halfValues,\n fieldNames,\n changeOnSelect,\n onSelect,\n searchOptions,\n dropdownPrefixCls,\n loadData,\n expandTrigger,\n renderItem,\n dropdownVisible,\n } = React.useContext(CascaderContext)\n\n const mergedPrefixCls = dropdownPrefixCls || prefixCls\n\n // ========================= loadData =========================\n const [loadingKeys, setLoadingKeys] = React.useState([])\n\n const internalLoadData = (valueCells: React.Key[]) => {\n // Do not load when search\n if (!loadData || searchValue) {\n return\n }\n\n const optionList = toPathOptions(valueCells, options, fieldNames)\n const rawOptions = optionList.map(({ option }) => option)\n const lastOption = rawOptions[rawOptions.length - 1]\n\n if (lastOption && !isLeaf(lastOption, fieldNames)) {\n const pathKey = toPathKey(valueCells)\n\n setLoadingKeys((keys) => [...keys, pathKey])\n\n loadData(rawOptions)\n }\n }\n\n // zombieJ: This is bad. We should make this same as `rc-tree` to use Promise instead.\n React.useEffect(() => {\n if (loadingKeys.length) {\n loadingKeys.forEach((loadingKey) => {\n const valueStrCells = toPathValueStr(loadingKey)\n const optionList = toPathOptions(valueStrCells, options, fieldNames, true).map(\n ({ option }) => option\n )\n const lastOption = optionList[optionList.length - 1]\n\n if (!lastOption || lastOption[fieldNames.children] || isLeaf(lastOption, fieldNames)) {\n setLoadingKeys((keys) => keys.filter((key) => key !== loadingKey))\n }\n })\n }\n }, [options, loadingKeys, fieldNames])\n\n // ========================== Values ==========================\n const checkedSet = React.useMemo(() => new Set(toPathKeys(values)), [values])\n const halfCheckedSet = React.useMemo(() => new Set(toPathKeys(halfValues)), [halfValues])\n\n // ====================== Accessibility =======================\n const [activeValueCells, setActiveValueCells] = useActive()\n\n // =========================== Path ===========================\n const onPathOpen = (nextValueCells: React.Key[]) => {\n setActiveValueCells(nextValueCells)\n\n // Trigger loadData\n internalLoadData(nextValueCells)\n }\n\n const isSelectable = (option: DefaultOptionType) => {\n const { disabled } = option\n\n const isMergedLeaf = isLeaf(option, fieldNames)\n return !disabled && (isMergedLeaf || changeOnSelect || multiple)\n }\n\n const onPathSelect = (valuePath: SingleValueType, leaf: boolean, fromKeyboard = false) => {\n onSelect(valuePath)\n\n if (!multiple && (leaf || (changeOnSelect && (expandTrigger === 'hover' || fromKeyboard)))) {\n toggleOpen(false)\n }\n }\n\n // ========================== Option ==========================\n const mergedOptions = React.useMemo(() => {\n if (searchValue) {\n return searchOptions\n }\n\n return options\n }, [searchValue, searchOptions, options])\n\n // ========================== Column ==========================\n const optionColumns = React.useMemo(() => {\n const optionList = [{ options: mergedOptions }]\n let currentList = mergedOptions\n\n for (let i = 0; i < activeValueCells.length; i += 1) {\n const activeValueCell = activeValueCells[i]\n const currentOption = currentList.find(\n (option) => option[fieldNames.value] === activeValueCell\n )\n\n const subOptions = currentOption?.[fieldNames.children]\n if (!subOptions?.length) {\n break\n }\n\n currentList = subOptions\n optionList.push({ options: subOptions })\n }\n\n return optionList\n }, [mergedOptions, activeValueCells, fieldNames])\n\n // ========================= Keyboard =========================\n const onKeyboardSelect = (selectValueCells: SingleValueType, option: DefaultOptionType) => {\n if (isSelectable(option)) {\n onPathSelect(selectValueCells, isLeaf(option, fieldNames), true)\n }\n }\n\n useKeyboard(ref, mergedOptions, fieldNames, activeValueCells, onPathOpen, onKeyboardSelect)\n\n // >>>>> Active Scroll\n React.useEffect(() => {\n for (let i = 0; i < activeValueCells.length; i += 1) {\n const cellPath = activeValueCells.slice(0, i + 1)\n const cellKeyPath = toPathKey(cellPath)\n const ele = containerRef.current?.querySelector<HTMLElement>(\n `li[data-path-key=\"${cellKeyPath.replace(/\\\\{0,2}\"/g, '\\\\\"')}\"]` // matches unescaped double quotes\n )\n if (ele) {\n scrollIntoParentView(ele)\n }\n }\n }, [activeValueCells])\n\n // ========================== Render ==========================\n // >>>>> Empty\n const isEmpty = !optionColumns[0]?.options?.length\n\n const emptyList: DefaultOptionType[] = [\n {\n [fieldNames.value as 'value']: '__EMPTY__',\n [FIX_LABEL as 'label']: notFoundContent,\n disabled: true,\n },\n ]\n\n const columnProps = {\n ...props,\n multiple: !isEmpty && multiple,\n onSelect: onPathSelect,\n onActive: onPathOpen,\n onToggleOpen: toggleOpen,\n checkedSet,\n halfCheckedSet,\n loadingKeys,\n isSelectable,\n }\n\n // >>>>> Columns\n const mergedOptionColumns = isEmpty ? [{ options: emptyList }] : optionColumns\n\n const columnNodes: React.ReactElement[] = mergedOptionColumns.map((col, index) => {\n const prevValuePath = activeValueCells.slice(0, index)\n const activeValue = activeValueCells[index]\n\n return (\n <Column\n key={index}\n level={index}\n optionHeight={optionHeight}\n dropdownVisible={dropdownVisible}\n {...columnProps}\n prefixCls={mergedPrefixCls}\n options={col.options}\n searchValue={searchValue}\n prevValuePath={prevValuePath}\n activeValue={activeValue}\n renderItem={renderItem}\n />\n )\n })\n\n // >>>>> Render\n return (\n <div\n className={classNames(`${mergedPrefixCls}-menus`, {\n [`${mergedPrefixCls}-menu-empty`]: isEmpty,\n [`${mergedPrefixCls}-rtl`]: rtl,\n })}\n ref={containerRef}\n >\n {columnNodes}\n </div>\n )\n})\n\nexport default RefOptionList\n"]}